Hier wird die Backend - Ablaufsteuerung für Framework ALAF erklärt:
Das Backend wird aufgerufen, indem in der URL der Skriptaufruf admin.php enthalten ist:
Nr | php-skript | aktion / funktion |
---|---|---|
1 | admin.php | include 'mainfile.php'; |
1.1 | mainfile.php | Konstanten definieren (z.B. DS, ALAF_SYSTEM_DIR, ALAF_SYSTEM_CLASS_DIR, ...) |
1.2 | mainfile.php |
error_reporting ( E_ALL ^ E_NOTICE ); // Alle Fehler ausser E_NOTICE melden |
1.3 | mainfile.php |
Prüfung, ob Konfigurationsdatei 'config.php' vorhanden: Sonst die() |
1.4 | mainfile.php |
/* System-Funktionen laden und API's einbinden */ require_once (ALAF_SYSTEM_DIR . DS . 'af_system.php'); |
1.4.1 | af_system.php | Hier stehen nur Satzstatus-Konstanten und Systemfunktionen! |
1.5 | mainfile.php |
// Basisklasse für das Framework laden: load_class ( 'af_base' ); |
1.5.1 | af_base.php | Basis-Klasse: liest die config.php in die Basis-Klasse af_base |
1.6 | mainfile.php | Setzt die länderspezifischen und Zeitzonenspezifischen Einstellungen |
1.7 | mainfile.php |
/* Fehlerbehandlung und Debugmethoden aktivieren */ load_class ( 'af_debug', false ); af_debug::init (); |
1.8 | mainfile.php |
/* Session einbinden (Start erfolgt in af_engine::start() */ $afSessionLifetime = af_base::get_afConfig('afSessionLifetime'); $afSessionLifetime = (isset ( $afSessionLifetime )) ? $afSessionLifetime : 30; define ( "AF_COOKIE_LIFETIME", $afSessionLifetime * 24 * 60 * 60 ); define ( "AF_SESSION_LIFETIME", $afSessionLifetime * 24 * 60 * 60 ); // Standard 6 Stunden /* die Sessionlifetime für nicht-User / nicht-Admins in Sekunden */ define ( 'AF_SESSION_LIFETIME_NOUSER', '1440' ); require_once (ALAF_SYSTEM_DIR . DS . 'af_session.php'); |
1.9 | mainfile.php |
/* Referer aktualisieren */ afReferer(); |
2 | admin.php |
// Framework-Engine starten: load_class ( 'af_engine', 'admin' ); af_engine::start (); |
3 | admin.php |
// Admin-Klasse af_admin (statisch) instanzieren require_once (ALAF_ADMIN_DIR . DS . 'admin_functions.php'); // Admin: Ablauf-Steuerung: echo af_admin::run (); |
3.1 | admin/admin_functions.php | AF_IS_USER und AF_IS_ADMIN - Konstanten setzen |
3.2 | admin/admin_functions.php |
// Userstatistik aktualisieren: self::update_userstat (); |
3.3 | admin/admin_functions.php | admin-Modul(e) ermitteln und durchlaufen... |
3.4 | admin/admin_functions.php |
// Menü, helptab und newentries erstellen und in die af_engine uebergeben: self::admin_build_sidemenubar ( self::$__op ); self::admin_build_helptab (); self::admin_get_newentries (); |
3.5 | admin/admin_functions.php |
/* Template "admin/templates/adminpage.html" aufbereiten und ausgeben
*/ return self::$_template->fetch ( 'adminpage.html' ); |
4 | admin.php |
// Letzte Aktion: Ausgabe erzeugen: af_engine::final_output (); // Schliesst den Ausgabepuffer und gibt den Seiteninhalt aus! |
4.1 | class: af_engine |
// Theme-Dateien einlesen und Theme-Funktion zum Ersetzen der Schlüsselworte aufrufen: include_once (ALAF_THEMES_DIR . DS . self::$__config ['themename'] . DS . 'theme.php'); include_once (ALAF_THEMES_DIR . DS . self::$__config ['themename'] . DS . 'theme.functions.php'); $export = self::fetch_with_theme (); |
4.2 | class: af_engine |
function fetch_with_theme() /* HTML-Grundgerüst aus den af_engine - Variablen erstellen:
*/ /* Theme einlesen - es wird nur der Body- Bereich verwendet! */"themeordner/theme.html" // Löschen der Blöcke:
// Die Platzhalter aus dem theme ersetzen: if (function_exists ( 'theme_define_placeholders' )) { $parts = theme_define_placeholders (); ... } // Ersetzung der Template-Platzhalter für den Content und die Side-Bar:
// Skript-Code für das Ende hinzufügen
|