VarChangelog in Modulen

Aus DeDi-Help

(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
Version vom 17:28, 1. Jul. 2005 (bearbeiten)
MaZderMind (Diskussion | Beiträge)
K (kleinere Fehler korigiert)
← Zum vorherigen Versionsunterschied
Aktuelle Version (09:37, 6. Okt. 2009) (bearbeiten) (Entfernen)
Eppi (Diskussion | Beiträge)

 
Zeile 1: Zeile 1:
-Des fteren berschreiben Module in der Konfiguration oder im Moduloutput wichtige Variablen, sodass entweder nachfolgende Module nicht korrekt ausgefhrt werden oder (in der Konfiguration) sich die angezeigte Werte verndern (z.B. wurde bei mir der Seitentitel immer auf 'Standard' gendert - ursache was der Newssystem-Teaser). Um solche Vernderungen aufspren zu knnen, habe ich folgende Codeschnipsel geschrieben.+Des öfteren überschreiben Module in der Konfiguration oder im Moduloutput wichtige Variablen, sodass entweder nachfolgende Module nicht korrekt ausgeführt werden oder (in der Konfiguration) sich die angezeigte Werte verändern (z.B. wurde bei mir der Seitentitel immer auf 'Standard' geändert - ursache was der Newssystem-Teaser). Um solche Veränderungen aufspüren zu können, habe ich folgende Codeschnipsel geschrieben.
-Einfach in die Frontendausgabe bzw. Backendkonfiguration ganz am Anfang und ganz am Ende einfgen und die Ausgabe im Frontend (bearbeitungsansicht) bzw. Modulkonfiguration berprfen. Es wird eine vollstndige Liste aller genderten oder neu angelegten Variablen mit ihren alten und neuen Werten angezeigt. Obiges Problem ('Standard') zeigte sich z.B. durch folgende Zeile: +Einfach in die Frontendausgabe bzw. Backendkonfiguration ganz am Anfang und ganz am Ende einfügen und die Ausgabe im Frontend (bearbeitungsansicht) bzw. Modulkonfiguration überprüfen. Es wird eine vollständige Liste aller geänderten oder neu angelegten Variablen mit ihren alten und neuen Werten angezeigt. Obiges Problem ('Standard') zeigte sich z.B. durch folgende Zeile:
Changed $title: 'Beispielseite: Bildergalerie' -> 'Standard' Changed $title: 'Beispielseite: Bildergalerie' -> 'Standard'
-Das Umbenennen der Variable $mod['title'] lste das Problem.+Das Umbenennen der Variable $mod['title'] löste das Problem.
Code am Anfang des Moduls: Code am Anfang des Moduls:

Aktuelle Version

Des öfteren überschreiben Module in der Konfiguration oder im Moduloutput wichtige Variablen, sodass entweder nachfolgende Module nicht korrekt ausgeführt werden oder (in der Konfiguration) sich die angezeigte Werte verändern (z.B. wurde bei mir der Seitentitel immer auf 'Standard' geändert - ursache was der Newssystem-Teaser). Um solche Veränderungen aufspüren zu können, habe ich folgende Codeschnipsel geschrieben. Einfach in die Frontendausgabe bzw. Backendkonfiguration ganz am Anfang und ganz am Ende einfügen und die Ausgabe im Frontend (bearbeitungsansicht) bzw. Modulkonfiguration überprüfen. Es wird eine vollständige Liste aller geänderten oder neu angelegten Variablen mit ihren alten und neuen Werten angezeigt. Obiges Problem ('Standard') zeigte sich z.B. durch folgende Zeile:

Changed $title: 'Beispielseite: Bildergalerie' -> 'Standard'

Das Umbenennen der Variable $mod['title'] löste das Problem.

Code am Anfang des Moduls:

<DEDIPHP>
/*  Var-Changelog */
$___debug_var_log = array_merge($GLOBALS, array());
</DEDIPHP>

Code am Ende des Moduls:

<DEDIPHP>
/*  Var-Changelog */
echo "<pre><strong>// Var-Changelog \\</strong>\n";
foreach($GLOBALS as $___n => $___v)
 if(!in_array($___n, array('___n', '___v', '___debug_var_log', 'GLOBALS'))) {
  if(isset($___debug_var_log[$___n])) {
   if($GLOBALS[$___n] !== $___debug_var_log[$___n])
    echo " Changed \$$___n: '$___debug_var_log[$___n]' -> '$GLOBALS[$___n]'\n";
  } else
    echo " Added   \$$___n: '$GLOBALS[$___n]'\n";
 }
echo "<strong>\\ Var-Changelog //</strong></pre>\n";
unset($___debug_var_log, $___n, $___v);
</DEDIPHP>
Persönliche Werkzeuge