Hilfe - Suche - Mitglieder - Kalender
Vollansicht: Autostarts vs. Events
Forum Sefrengo.org > Allgemeine Foren > Entwicklung
Tiggr
Hallo!

Scheinbar gibt es im Moment 2 Mechanismen in Sefrengo um Code automatisch ausführen zu lassen:

1.) Autostarts
Plugins können Code für einen Autostart registrieren, dieser wird ganz am Ende der Seitenbearbeitung von Sefrengo ausgeführt, er kann also nur die fertige Seite bearbeiten.

2.) Events
Sefrengo hat einen Eventmechanismus, auch wenn er nur wenig genutzt wird. In der DB kann man sich für Events registrieren, und mit $eventobject->fire('event', $args) kann man selber welche abfeuern.

Ich würde jetzt gerne auch Plugincode ganz zu begin der Seitenverarbeitung ausführen.

Frage: Wie mach ich das, ich muß dafür Sefrengo hacken, klar. Ich würde das gern so machen, dass es vielleicht auch in die offizielle Version einfließt.

Zum einen kann ich parallel zu den Autostarts was einfügen:

QUELLTEXT
// eventuelle Initialisierungen ausführen:
$a_location = ($is_frontend) ? 'frontend': 'backend';
if (is_array($cfg_cms['init'][$a_location])) {
    foreach($cfg_cms['init'][$a_location] as $value) {
        include_once $cfg_cms['cms_path'] .'plugins/'. $value;
    }
}
if (is_array($cfg_client['init'][$a_location])) {
    foreach($cfg_client['init'][$a_location] as $value) {
        include_once $cfg_cms['cms_path'] .'plugins/'. $value;
    }
}


Finde ich persönlich nicht gut! Ist mir zu speziell.

Ich denke ich sollte da ein Event abfeuern:

QUELLTEXT
include_once('inc/class.cms_event.php');
$event = new cms_event($val_ct);
$event->fire('sfstart', array());


Finde ich eleganter!

So, nun meine Fragen:

1.) Denkt ihr auch so?
2.) Könnte sowas offiziell in die index.php einfließen?
3.) Wäre es nicht sinnvoll und schlüssiger den jetzigen autostart-Mechanismus durch ein Event zu ersetzen?

Tschüss
Tiggr (aka Marcus)
bjoern
OK, Autostarts können gegen Events ersetzt werden. Mir ist wichtig, das die Events dann aber im Wiki entsprechend dokumentiert sind, so wie ich es bei den mip-forms und den cms:tags angefangen habe.

Da Du gefragt hattest, wie man mir helfen kann:
Alle anderen Events sind gar nicht dokumentiert und lausig getestet. Wenn Du Spaß dran hättest, da dran zu gehen, wäre das für das System eine große Bereicherung.

Ein Traum von mir ist auch noch, dass man Events unter einem neuen Menüpunkt (Administration->System->Events) im Backend verwalten und registrieren kann.
Tiggr
OK, ich schau mal, was ich machen kann...

Ich bin nur auch etwas knapp in der Zeit, hab zwei Drachen zur Deutschen Meisterschaft angemeldet, und es gibt noch keinen davon! :-( Und Beruf und Familie wollen auch beachtet werden.

Aber ich seh mal zu, was ich machen kann!

mfgt
bjoern
Keine Hektik, ich weiß, wie das mit der knappen Zeit ist, ehrenwort! tongue.gif biggrin.gif
Dieses ist eine vereinfachte Darstellung unseres Foreninhaltes. Um die detaillierte Vollansicht mit Formatierung und Bildern zu betrachten, bitte hier klicken.
Invision Power Board © 2001-2024 Invision Power Services, Inc.