contao/test — Issue #1565: Neuer Hook in cron.php
Author: importer
Created: 2011-11-29 08:09:20+00:00
State: open
Labels: Feature, frontend

Ich (und nach vorsichtiger Umfrage bei anderen Entwicklern von denen auch Einige) haette gerne einen weiteren HOOK in cron.php, mit dem ich feiner granuliert Aktionen starten kann.

Da ich nicht weiss wie lange eine Aktion bei mir dauert (recht intensive Aktionen per XMLRPC etc.) brauche ich die Moeglichkeit oefters aufgerufen zu werden.
Das handling, ob ueberhaupt und wenn ja, was zu tun ist, wuerde dann die jeweilige Extension entscheiden.
Aktuell sind wir IMO ein wenig zu statisch, wenn ich naemlich aktuell einen cronjob wegen maximaler Scriptlaufzeit sich im Vorfeld beenden lasse um spaeter weiter zu machen, dann ist dieses spaeter aud mind. eine Stunde begrenzt.
Nehmen wir an, ich moechte eine Aktion starten, welche auf einem Server 60 Sekunden laeuft und der Server hat eine max. Script runtime von 20 Sekunden, so muss ich 3 Stunden warten, bis die Aktion erfolgt ist.

Da die Aktionen im Hintergrund passieren sollen sehe ich hierbei cron.php als den richtigen Platz an.
Der Hook sollte IMO nicht selbst geloggt werden, da ansonsten das log jeden Seitenaufruf beinhalten wuerde.

Ich schlage daher folgenden HOOK im Anschluss an die "normalen" vor.
cron.php ab Zeile:110

```
if (count($GLOBALS['TL_CRON']['custom']))
{
foreach ($GLOBALS['TL_CRON']['custom'] as $callback)
{
$this->import($callback[0]);
$this->$callback[0]->$callback[1]();
}
}
```

PS: bin mir nun unsicher ob das eher Framework oder Frontend ist, da cron.php aber eine Frontendapplikation und keine Bibliothek des Frameworks ist, doch eher Frontend.

--- _Originally created by xtra on February 15th, 2010, at 08:23am (ID 1565)_