dbxapp 4.1.3
CMS, Shop, Workflows und modulare Geschäftsanwendungen
Loading...
Searching...
No Matches

Zentrale Laufzeit-API von dbXapp. More...

Inheritance diagram for dbxApi:
dbxMissingLogTestApi

Public Member Functions

 get_current_owner ()
 Liefert das aktuell aktive Owner-Objekt.
 run_owner ($owner, string $method='run',... $args)
 Fuehrt eine Methode in einem Owner-Kontext aus.
 get_system_obj (string $class, string $use='')
 Laedt ein Systemobjekt aus dbx/include und bevorzugt den myX-Override.
 editor_file_path (string $file)
 Liefert einen projekt-relativen Dateipfad fuer Editor-Marker.
 register_editor_file (string $kind, string $file)
 Registriert eine im aktuellen Request genutzte Editor-Datei.
 get_editor_files ()
 Liefert die im aktuellen Request registrierten Editor-Dateien.
 editor_marker (string $kind, string $file)
 Erzeugt einen HTML-Kommentar fuer den Frontend-Dateieditor.
 get_modul_obj (string $class)
 Laedt und startet den Kontext fuer ein Hauptmodul.
 get_include_obj (string $class, string $modul='', string $use='')
 Laedt eine Include-Klasse aus einem Modul.
 use_system_class ($class)
 Bindet eine Systemklasse aus dbx/include ein, ohne ein Objekt zu erzeugen.
 get_system_var (string $varname, $default='', string $rules=' *')
 Liest eine globale Systemvariable des aktuellen Requests.
 set_system_var (string $varname, $value)
 Setzt eine globale Systemvariable fuer den aktuellen Request.
 get_modul_var ($varname, $default='', $rules='alphanum')
 Liest eine Variable der aktuell aktiven Modulinstanz.
 set_modul_var ($varname, $value=null, $check_protected=true)
 Setzt eine Variable der aktuell aktiven Modulinstanz.
 get_request_var (string $varname, $default='', string $rules='parameter')
 Liest GET/POST über die Request-Systemklasse und validiert den Wert.
 get_config (string $modul='dbx', string $key='', $default=null)
 Laedt die Konfiguration eines Moduls.

Public Attributes

array $editor_files = array()
 Dateien, die im aktuellen Request fuer den Editor markiert werden.

Detailed Description

Zentrale Laufzeit-API von dbXapp.

Diese Klasse ersetzt die frueher breit genutzten globalen dbx_*-Funktionen. Anwendungscode soll ueber die globale Singleton-Funktion dbx() arbeiten:

Beispiel:

$db = dbx()->get_system_obj('dbxDB');
$value = dbx()->get_request_var('dbx_run1', 'run');
dbx()->set_system_var('dbx_ajax', 1);
dbx()
Liefert die zentrale dbXapp-API als Singleton.
Definition dbxApi.php:2805

Wirkung:

  • Systemobjekte werden zentral geladen und gecacht.
  • Projektweite myX-Overrides werden automatisch bevorzugt.
  • Request-, System-, Modul- und Sessionzustand bleiben an einer API gebuendelt.

Definition at line 39 of file dbxApi.php.

Member Function Documentation

◆ editor_file_path()

dbxApi::editor_file_path ( string $file)

Liefert einen projekt-relativen Dateipfad fuer Editor-Marker.

Parameters
string$fileAbsoluter oder relativer Dateipfad.
Returns
string Projekt-relativer Pfad.

Definition at line 215 of file dbxApi.php.

References $base, and $file.

◆ editor_marker()

dbxApi::editor_marker ( string $kind,
string $file )

Erzeugt einen HTML-Kommentar fuer den Frontend-Dateieditor.

Die Marker werden nur im passenden dbx_edit-Modus ausgegeben:

  • 4 = FD
  • 5 = DD
  • 6 = Modul-/Include-Class
  • 7 = myX-Systemklasse
  • 8 = config.php
Parameters
string$kindMarker-Typ: fd, dd, class, sysclass oder config.
string$fileAbsoluter oder projekt-relativer Dateipfad.
Returns
string HTML-Kommentar oder leerer String.

Definition at line 269 of file dbxApi.php.

References $file, $mode, and get_system_var().

◆ get_config()

dbxApi::get_config ( string $modul = 'dbx',
string $key = '',
$default = null )

Laedt die Konfiguration eines Moduls.

Beispiel:

$cache = dbx()->get_config('dbx', 'cache');
$config = dbx()->get_config('dbx');
if($resolved !==$expectedBase . 'files/test/') $config

Wirkung: Liest Modulkonfiguration aus Dateien/Cache und liefert entweder den kompletten Config-Array oder einen einzelnen Schluessel.

Parameters
string$modulModulname.
string$keyOptionaler Config-Schluessel.
mixed$defaultRueckgabewert, wenn der Schluessel nicht existiert.
Returns
mixed

Definition at line 620 of file dbxApi.php.

References $_SESSION, $config, get_base_dir(), os_path(), and register_editor_file().

◆ get_current_owner()

dbxApi::get_current_owner ( )

Liefert das aktuell aktive Owner-Objekt.

Returns
object|null

Definition at line 112 of file dbxApi.php.

◆ get_editor_files()

dbxApi::get_editor_files ( )

Liefert die im aktuellen Request registrierten Editor-Dateien.

Returns
array

Definition at line 251 of file dbxApi.php.

◆ get_include_obj()

dbxApi::get_include_obj ( string $class,
string $modul = '',
string $use = '' )

Laedt eine Include-Klasse aus einem Modul.

Beispiel:

$list = dbx()->get_include_obj('user_list', 'dbxUser_admin');
echo $list->run();

Wirkung:

  • setzt die Systemvariable dbx_inc,
  • nutzt ohne Modulparameter das aktuell aktive Modul,
  • laedt dbx/modules/<modul>/include/<class>.class.php.
Parameters
string$classInclude-Klassenname ohne .class.php.
string$modulOptionales Modul; leer bedeutet aktives Modul.
string$useWenn gesetzt, wird nur geladen, aber nicht instanziert.
Returns
object|null Instanz der Include-Klasse oder null im Nur-Laden-Modus.
Exceptions
ExceptionWenn die Klasse nicht geladen werden kann.

Definition at line 370 of file dbxApi.php.

References $class, get_system_var(), and if.

◆ get_modul_obj()

dbxApi::get_modul_obj ( string $class)

Laedt und startet den Kontext fuer ein Hauptmodul.

Wirkung:

  • erhoeht die aktive Modulinstanz-ID,
  • setzt dbx_activ_modul und dbx_modul,
  • laedt dbx/modules/<modul>/<modul>.class.php,
  • erzeugt die Modulklasse im Namespace \dbx<modul><modul>.

Beispiel:

$modul = dbx()->get_modul_obj('dbxAdmin');
echo $modul->run();
Parameters
string$classModulname.
Returns
object Instanz der Modulklasse.
Exceptions
ExceptionWenn die Modulklasse nicht geladen werden kann.

Definition at line 303 of file dbxApi.php.

References $class, get_system_var(), set_modul_var(), and set_system_var().

◆ get_modul_var()

dbxApi::get_modul_var ( $varname,
$default = '',
$rules = 'alphanum' )

Liest eine Variable der aktuell aktiven Modulinstanz.

Modulvariablen sind an dbx_activ_modul und dbx_activ_modul_id gebunden. Dadurch koennen mehrere Modul-/Include-Laeufe eigene Werte behalten.

Beispiel:

$action = dbx()->get_modul_var('dbx_run1', 'run');
Parameters
string$varnameName der Modulvariable.
mixed$defaultRueckgabe, wenn kein gueltiger Wert existiert.
string$rulesValidierungsregel.
Returns
mixed Validierter Wert oder Default.

Definition at line 519 of file dbxApi.php.

References $_GET, $_POST, $_SESSION, $rules, $value, dbx_validate_var(), and get_system_var().

◆ get_request_var()

dbxApi::get_request_var ( string $varname,
$default = '',
string $rules = 'parameter' )

Liest GET/POST über die Request-Systemklasse und validiert den Wert.

Definition at line 598 of file dbxApi.php.

References $rules, and get_system_obj().

◆ get_system_obj()

dbxApi::get_system_obj ( string $class,
string $use = '' )

Laedt ein Systemobjekt aus dbx/include und bevorzugt den myX-Override.

Wird z.B. dbxDB angefordert, erzeugt/laedt DBX bei Bedarf dbx/modules/myX/sysclass/myDB.class.php und instanziert myDB extends dbxDB. Das Objekt wird unter dem Originalnamen gecacht.

Beispiel:

$db = dbx()->get_system_obj('dbxDB');
echo get_class($db); // myDB, wenn der Override existiert
Parameters
string$classOriginale Systemklasse, z.B. dbxDB oder dbxTPL.
string$useWenn gesetzt, wird nur geladen, aber nicht instanziert.
Returns
object|null Instanz des myX-Overrides oder der Originalklasse.
Exceptions
ExceptionWenn die Zielklasse nicht geladen werden kann.

Reimplemented in dbxMissingLogTestApi.

Definition at line 166 of file dbxApi.php.

References $_dbxCache, and $class.

Referenced by get_request_var().

◆ get_system_var()

dbxApi::get_system_var ( string $varname,
$default = '',
string $rules = '*' )

Liest eine globale Systemvariable des aktuellen Requests.

Systemvariablen beschreiben den Laufkontext, z.B. aktives Modul, Design, Sprache, Ajax-Status oder URLs. GET/POST kann den Wert liefern, wenn noch kein Sessionwert existiert.

Beispiel:

$ajax = dbx()->get_system_var('dbx_ajax', 0, 'int');
Parameters
string$varnameName der Systemvariable.
mixed$defaultRueckgabe, wenn kein gueltiger Wert existiert.
string$rulesValidierungsregel fuer dbx_validate_var().
Returns
mixed Validierter Wert oder Default.

Definition at line 454 of file dbxApi.php.

References $_GET, $_POST, $_SESSION, $rules, $value, and dbx_validate_var().

Referenced by editor_marker(), get_include_obj(), get_modul_obj(), get_modul_var(), and set_modul_var().

◆ register_editor_file()

dbxApi::register_editor_file ( string $kind,
string $file )

Registriert eine im aktuellen Request genutzte Editor-Datei.

Parameters
string$kindMarker-Typ: fd, dd, class, sysclass oder config.
string$fileAbsoluter oder projekt-relativer Dateipfad.
Returns
void

Definition at line 233 of file dbxApi.php.

References $file.

Referenced by get_config().

◆ run_owner()

dbxApi::run_owner ( $owner,
string $method = 'run',
... )

Fuehrt eine Methode in einem Owner-Kontext aus.

Beispiel:

$modul = dbx()->get_modul_obj('dbxAdmin');
echo dbx()->run_owner($modul, 'run', 'dashboard');
Parameters
object$ownerObjekt, das ausgefuehrt wird.
string$methodMethodenname, normalerweise run.
mixed$argsArgumente fuer die Methode.
Returns
mixed|null Rueckgabe der Methode oder null.

Definition at line 134 of file dbxApi.php.

References $method, and $owner.

◆ set_modul_var()

dbxApi::set_modul_var ( $varname,
$value = null,
$check_protected = true )

Setzt eine Variable der aktuell aktiven Modulinstanz.

Beispiel:

dbx()->set_modul_var('dbx_run2', 'edit');

Wirkung: Schreibt in den modulinstanzbezogenen Sessionbereich. Geschuetzte Modulvariablen werden standardmaessig nicht ueberschrieben.

Parameters
string$varnameName der Modulvariable.
mixed$valueNeuer Wert.
bool$check_protectedSchutzliste beachten.
Returns
void

Definition at line 569 of file dbxApi.php.

References $_SESSION, $value, dbx(), and get_system_var().

Referenced by get_modul_obj().

◆ set_system_var()

dbxApi::set_system_var ( string $varname,
$value )

Setzt eine globale Systemvariable fuer den aktuellen Request.

Beispiel:

dbx()->set_system_var('dbx_design', 'admin');

Wirkung: Veraendert den globalen Laufkontext in $_SESSION['dbx']['tmp'][0]['dbx'].

Parameters
string$varnameName der Systemvariable.
mixed$valueNeuer Wert.
Returns
void

Definition at line 498 of file dbxApi.php.

References $_SESSION, and $value.

Referenced by get_modul_obj().

◆ use_system_class()

dbxApi::use_system_class ( $class)

Bindet eine Systemklasse aus dbx/include ein, ohne ein Objekt zu erzeugen.

Beispiel:

dbx()->use_system_class('dbxValidator');
Parameters
string$classSystemklasse ohne .class.php.
Returns
void

Definition at line 426 of file dbxApi.php.

References $class, get_base_dir(), and os_path().

Member Data Documentation

◆ $editor_files

array dbxApi::$editor_files = array()

Dateien, die im aktuellen Request fuer den Editor markiert werden.

Definition at line 42 of file dbxApi.php.


The documentation for this class was generated from the following file: