{"issue":{"created_at":"2011-11-29T06:04:24Z","state":"open","updated_at":"2011-11-29T06:04:30Z","user":{"gravatar_id":"e80c46e273aeef40f4fee102a03522cf","id":676671,"url":"https://api.github.com/users/computino","avatar_url":"https://secure.gravatar.com/avatar/e80c46e273aeef40f4fee102a03522cf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"computino"},"comments":6,"body":"Ich würde gerne bei getAllEvents eingreifen können um eigene Event-Filter sauber anzubringen. Der Aufruf ist meistens so mitten in compile() einer anderen Klasse eingesetzt, dass man nicht sauber ran kommt und damit viel Code kopieren muss. \n\nAusserdem steckt in getAllEvents soviel Logik, dass es wenig Sinn macht die Funktion selbst zu schreiben wenn man nur Kleinigkeiten anders machen möchte. (Wiederrum Codedoppelung und Updatesicherheit)\n\n```\n// Sort data\nforeach (array_keys($this->arrEvents) as $key)\n{\n    ksort($this->arrEvents[$key]);\n}\n\n// please insert HOOK here\n\nreturn $this->arrEvents;\n```\n\n--- _Originally created on December 12th, 2008, at 12:31pm (ID 341)_","assignee":{"gravatar_id":"87d2e5aefadcb310f9155df28c2b3582","id":1192057,"url":"https://api.github.com/users/leofeyer","avatar_url":"https://secure.gravatar.com/avatar/87d2e5aefadcb310f9155df28c2b3582?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"leofeyer"},"labels":[{"name":"calendar","color":"e6e6e6","url":"https://api.github.com/repos/contao/test/labels/calendar"},{"name":"Feature","color":"4183c4","url":"https://api.github.com/repos/contao/test/labels/Feature"}],"id":2378509,"number":341,"pull_request":{"patch_url":null,"html_url":null,"diff_url":null},"title":"Hook request: getAllEvents","closed_at":null,"html_url":"https://github.com/contao/test/issues/341","url":"https://api.github.com/repos/contao/test/issues/341","milestone":{"created_at":"2011-11-29T05:26:33Z","state":"open","closed_issues":24,"due_on":null,"creator":{"gravatar_id":"87d2e5aefadcb310f9155df28c2b3582","id":1192057,"url":"https://api.github.com/users/leofeyer","avatar_url":"https://secure.gravatar.com/avatar/87d2e5aefadcb310f9155df28c2b3582?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"leofeyer"},"number":1,"title":"2.7.0","description":"TYPOlight 2.7.0 (minor release)","url":"https://api.github.com/repos/contao/test/milestones/1","open_issues":1}},"action":"created","comment":{"created_at":"2011-11-29T06:04:30Z","updated_at":"2011-11-29T06:04:30Z","user":{"gravatar_id":"e80c46e273aeef40f4fee102a03522cf","id":676671,"url":"https://api.github.com/users/computino","avatar_url":"https://secure.gravatar.com/avatar/e80c46e273aeef40f4fee102a03522cf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","login":"computino"},"body":"Mir persönlich würde ja auch wunderbar der Hook für die Events reichen. Ich habe 2 konkrete Einsätze die aktuell in (Kunden-)Modulen verwendet werden:\na) das Event hat weitere Eigenschaften, die eventuell zum Ausschluss der Anzeige führen, da wird über das Array gelaufen und alle unpassenden aussortiert\nb) Sortierung und Anzeige nach Enddatum (hatten wir mal in einem anderen Ticket drüber gesprochen), hier wird einfach der key des Arrays gegen das Enddatum ausgetauscht und dann neu sortiert.\n\nBeide wären deutlich sauberer umsetzbar mit dem Hook nach Erzeugung des Arrays. Nirgendwo wird noch soviel Logik nachgereicht wie bei den Events (mit recurring usw.), darum greife ich lieber auf die \"fertigen\" Events im Array zu. Bei den meisten anderen Fällen würde ich eben das Query neu ausführen.\n\n--- _Originally created on January 22nd, 2009, at 06:09pm_","id":2915999,"url":"https://api.github.com/repos/contao/test/issues/comments/2915999"}}