Sinterklaaslijstjes

Sinterklaas (of Kerst, als je dan kado'tjes danwel cadeaus uitwisselt, of hoe je je pakjesavond ook wilt noemen) is altijd een heel gedoe, zeker als je het met een grotere groep viert, en de mensen over het land verspreid wonen. Afgezien van het maken van een afspraak zijn er twee lastige zaken:

  • Het trekken van de lootjes (hoe zorg je bijvoorbeeld dat niemand zichzelf heeft, als je niet iedereen bij elkaar kunt roepen)
  • Het bijhouden van de verlanglijstjes (wie heeft waar welk lijstje nu weer gelaten)

Verlanglijstjes

SintLijst illustratieVoor dat laatste probleem is mijn internet-programma 'sintlijst' bedoeld. Het kan voor groepen mensen verlanglijstjes bijhouden (families verspreid over het land, of misschien ook schoolklassen), zodat iedereen bij elkaars lijstjes kan, en kan afstrepen zonder dat de eigenaar van het lijstje dat kan zien (het blijft dus een verrassing). Het programma kan:

  • Per persoon een verlanglijstje bijhouden (toevoegen, wijzigen, verwijderen)
  • Iedereen de mogelijkheid geven voor een persoonlijke boodschap (b.v. schrijf op wat je per sé niet wilt hebben)
  • Anoniem vragen per mail naar elkaar versturen, bijvoorbeeld als een kado niet duidelijk beschreven is
  • Bij anderen kado'tjes van de lijst strepen, zonder dat de eigenaar dit kan zien; anderen zien dat kado dan niet meer en zullen het dus niet ook kopen

en nog zo wat kleinigheden. Het geheel is overzichtelijk en met grote knoppen opgezet, om ook voor ouderen eenvoudig bruikbaar te zijn. Dus ook voor Opa's en Oma's!!!

Overigens, ook voor het trekken van de lootjes heb ik een mooi programma dat dit volgens extra regels kan uitvoeren (bijvoorbeeld niet dezelfde persoon trekken als vorig jaar), alleen heb ik dat nog niet op internet open gezet... Mocht er interesse zijn?

Thema's

Het programma kan verschillende thema's (of zo je wilt 'skins') aan, om eenvoudig een Sinterklaas-versie of Kerst-versie te hebben, of op verzoek zelfs een zelfgekozen achtergrond.

Een demo

Een demo van het programma is hier te vinden: SintLijst demo. In de demo kan je alles proberen, maar er worden geen echte wijzigingenSintLijst Xmas skin aangebracht (en ook bijvoorbeeld geen e-mails verstuurd, om misbruik als spam-zender te voorkomen).

Het beheer van een groep

Per groep van lijstjes is er een beheerder (administrator), die extra mogelijkheden heeft. Hij/zij kan bijvoorbeeld gebruikers toevoegen en verwijderen, wachtwoorden wijzigen, lijstjes wissen (bijvoorbeeld voor het volgende jaar), en email-adressen aanpassen (wat gewone gebruikers voor zichzelf overigens ook kunnen). Een beheerder heeft hiervoor een extra wachtwoord, dat hem toelaat tot de beheer-schermen.

Lootjes trekken

Ook voor het probleem van het lootjes trekken heb ik een programma'tje geschreven, dat met een aantal randvoorwaarden rekening houdt, zoals onder andere:

  • Nooit jezelf trekken
  • Ook niet je partner trekken (zodat je gezamenlijk surprises kunt maken) [optioneel]
  • Niet dezelfde trekken als vorig jaar [optioneel]
  • ...

Mocht daar belangstelling voor zijn, dan kan ik dit evt ook wel meer publiek maken, maar op dit moment gebruik ik het alleen zelf.SintLijst decoratie

Het programma

Het programma draait op mijn web server, en is een 'CGI script' geschreven in de programmeertaal Perl, gebruik makend van de technieken beschreven op mijn webpages over Perl/CGI programming. Ooit opgezet als een programma voor eigen familie, is het nu zo opgezet dat ik er meerdere groepen tegelijk mee kan helpen.

Revision history
v2.0.19: Add and test anonymous email facility
v2.0.21: Administrator section added
v2.0.23: Tables done via template; admin debugging
v2.0.24: Classes replaced by id in template; demo mode added; modify present
v2.0.25: Skins added; group name in config
v2.0.27: Option to put item back onto list
v2.0.28: Minor error in session check; LoginAs added; Odd/even colouring of table rows (zebra tables) using JavaScript
v2.0.29: Display message in initial screen if email not filled in yet; replaced sendmail() by MIME::Lite for future HTML mails
v2.0.30: Multi-user select in admin screen, logging of email activities, lc config file
v2.0.31: Better checks on simultaneous updates
v2.0.32: Connection to list of person to buy present for
v2.0.33: Random passwords for new users; updated explanation for administrator
# To do: Move all texts to template to ease translation (mainly done...)