script.js

Funktionen

formloader()

Über die Funktion formloader können dynamisch php Scripts (Formulare) geladen werden.

Diese script müssen entweder unter ../share/request/oder ../share/plugins/[PLUGINNAE]/request/ liegen und mit dem Prefix 'f_' beginnen.

Beim aufruf von formloader() können die Argumente mit übergeben werden. Hier ein Beispiel:

formloader(
'content',      // arguments[0]: über den Namen wird die auszuführende Datei ermittelt
                // In diesem Beispiel: ../share/request/f_content.php 
'update',       // arguments[1]: 'Funktion', die in der Zieldatei ausgeführt werden soll. Hier also ein Update
                // Dieses Argument wird als GET Parameter ($func) übergeben.
 10,            // arguments[2]: Wert, der in die Zieldatei übergeben wird.
                // Dieses Argument wird als GET Parameter ($val) übergeben.
 {              // arguments[3]: Array mit weiteren Parametern. Diese werden als GET-Parameter an die Zieldatei übergeben
     'key'   : 'value',    
     ... 
 },
 'pluginpath'   // arguments[4]: Wird das 4. Argument gesetzt, wird statt ../share/request/f_content.php der Pfad ../share/[pluginpath]/request/p_content.php aufgerufen. 
);

processor()

Über die Funktion processor können dynamisch php Scripts ausgeführt werden.

Diese script müssen entweder unter ../share/processors/oder ../share/plugins/[PLUGINNAE]/processors/ liegen und mit dem Prefix 'p_' beginnen.

Beim aufruf von processor() können die Argumente mit übergeben werden. Hier ein Beispiel:

processor(
'set',      // arguments[0]: über den Namen wird die auszuführende Datei ermittelt
            // In diesem Beispiel: ../share/processor/p_set.php 
'comments', // arguments[1]: 'Funktion', die in der Zieldatei ausgeführt werden soll 
            // Dieses Argument wird als GET Parameter ($func) übergeben.
 10,        // arguments[2]: Wert, der in die Zieldatei übergeben wird.
            // Dieses Argument wird als GET Parameter ($val) übergeben.
 {          // arguments[3]: Array mit weiteren Parametern. Diese werden als GET-Parameter an die Zieldatei übergeben
     'reload'   : false,            // Default = true. Soll die Seite beim Aufruf von process() nicht neu geladen werden muss reload = false gesetzt werden
     'callback' : innerHTML,        // callback: ist innerHTML gesetzt, wird ein HTML Element ersetzt. s. Erläuterungen unten.
     ...
 },
 'pluginpath'// arguments[4]: Wird das 4. Argument gesetzt, wird statt ../share/processor/p_set.php der Pfad ../share/[pluginpath]/processor/p_set.php aufgerufen. 
);

Erläuterungen:

Wird 'callback' : 'innerHTML' gesetzt, wird aus der Request-Antwort der Wert response.id genutzt, um das entsprechende Element zu ermitteln. Der Inhalt dieses Elements wird dann mit response.html ersetzt:

...
else if (callback === "innerHTML"){  //if callback == innerHTML is set, innerHTML of response.id is set
    response = JSON.parse(req.responseText);
    document.getElementById(response.id).innerHTML = response.html;
}

In der Folge werden hier mögliche Usecases beschrieben:

processor() - /share/processors/p_delete.php

processor('delete',     //-> /share/processors/p_delete.php
          'comment',    // Dieses Argument wird als GET Parameter ($val) übergeben, entspricht DB/Context.
          1234,         // id des zu löschenden Datensatzes
          {
          'reload':     'false',                    // kein Reload 
          'callback':   'replaceElementByID',       // callback Funktion für Antwort
          'element_Id': 'comment_1233'              // element_Id auf die die callback Funktion angewendet wird
          }
);

Last updated