Doodle workaround

Een ex-cursist vroeg me onlangs of er geen Doodle like modules bestaan in Drupal. Dit bleek niet het geval. Ooit moet er in Drupal 7 iets bestaan hebben (Make meeting Scheduler) maar toen al werd deze module niet onderhouden.

We moeten dus zelf aan de slag..

Eerst is er een inhoudstype dat de vergadering of activiteit zal bevatten, met natuurlijk de verschillende mogelijke data en een lijst met mogelijke deelnemers. Deze deelnemers zijn heb ik gelinkt aan ingelogde gebruikers. Logisch.

Als voorbeeld organiseren we een bezoek aan een kasteel met verschillende mogelijke data die we voorleggen aan enkele geïnteresseerden. Zij zullen moeten kiezen welke data ze vrij zijn, net zoals in Doodle.

Merk op dat ik slechts één datum ingeef per node. Dit is nodig om aan node referentie te kunnen doen straks. De gebruikers met een account kunnen wel veelvoudig worden ingezet.

Een mogelijk resultaat.



Dit houdt wel in dat we per mogelijke datum een node moeten maken. Geen paniek. Met Quick Node Clone kunnen we met één klik een node kopiëren. We kunnen zelfs instellen dat alles behalve de datum wordt gekloond.

Laat ook de nieuwe titel leeg.. Anders staat daar altijd Clone of.. voor.

OK. we hebben dus enkele nodes aangemaakt met elk een verschillend tijdstip.

Nu maken we een tweede inhoudstype aan om de gebruiker zijn/haar keuze te laten doen. Het is een referentie naar de activiteiten. 


We maken daarvoor een referentieview aan om makkelijk te kunnen kiezen. Deze view toont dus alle activiteiten.

Om enkel de activiteiten te tonen in deze view, waar de gebruiker werd voor uitgenodigd, moeten we een contextuele filter plaatsen.

We maken dat de ingelogde gebruiker enkel zijn eigen activiteiten of vergaderingen ziet.


Als je wilt kan je ook als administrator een uitzondering maken. Die ziet dan alles.

Zo werkt het dus. De ingelogde gebruiker ziet enkel waarvoor hij werd uitgenodigd.

Normaal gezien moet er voor elke node ook een titelveld worden ingevuld. Ik los dit op door  Automatic Entity Labels te gebruiken. Ik vervang de titel door de naam van de gebruiker. Het is een beetje idioot dat men zijn eigen naam nog eens moet invullen als je ingelogd bent.

Rest er ons nu enkel nog om een view te maken die alle bijdragen op een overzichtelijke manier toont. Een beetje groeperen toont bijvoorbeeld zo iets. Je ziet onmiddellijk welke datum er het best geschikt is. Dit is nu net de bedoeling van Doodle..

Wil je nog een mail sturen naar de mogelijke deelnemers? Dit kan. Als Rules wat beter werkt... intussen kan men men gebruik maken van het persoonlijk contactformulier om gebruikers te verwittigen. Het is geen perfecte nabootsing van Doodle, ik weet het, maar het werkt.