lastCallTime; dlog ("", "Calltime: ". date ("d.m.y H:i:s", time()) ); $g_app->lastCallTime=microtime(true); if ($g_app->lastCallTime!=null) { dlog("", "Timediff=" . sprintf("%f", microtime_diff($oldCallTime, $g_app->lastCallTime))); if (microtime_diff($oldCallTime, $g_app->lastCallTime)<0.9) { dlog("", "!!! WARNUNG: index.php mehrfach hintereinander aufgerufen! Timediff=" . sprintf("%f", microtime_diff($oldCallTime, $g_app->lastCallTime))); exit(); } } // Wenn der Benutzer eine andere Seite aufruft, als St_FileViewer_SaveEditedPage(GesperrteSeite) dann den Semaphor freigeben. // aaa Es können unterschiedliche Benutzer die gleiche Datei editieren. Semaphor nach einer Stunde wieder freigeben. // Wenn beim Speichern kein Semaphor mehr vorhanden: Warnung: Die datei könnte inzwischen von einem anderen Benutzer geändert worden sein. // if (get_class($g_app->sm->state) != "St_FileViewer_Edit" || $stat!="cont") // $g_app->fileEditSemaphor=""; // Empfangenen Parameter 'sw' entschluesseln: if ($g_app->isEncrypted==1 && empty($sw)==false) { $param = $g_app->crypt->decrypt(CRYPTKEY, $sw); $param=str_replace("YYQa", "&", $param); $param=str_replace("fYXQ", "=", $param); $param=str_replace("YZQd", " ", $param); $param=str_replace("YsQd", "+", $param); $myFilter = new InputFilter(); $param = $myFilter->process($param); $res = eregi("state=([^&]*)", $param, $ary ); if ($res==true) $stat = $ary[1]; $res = eregi("p0=([^&]*)" , $param, $ary ); if ($res==true) $p0 = $ary[1]; $res = eregi("p1=([^&]*)" , $param, $ary ); if ($res==true) $p1 = $ary[1]; $res = eregi("p2=([^&]*)" , $param, $ary ); if ($res==true) $p2 = $ary[1]; $res = eregi("user=([^&]*)" , $param, $ary ); if ($res==true) $user = $ary[1]; $res = eregi("pwd=([^&]*)" , $param, $ary ); if ($res==true) $pwd = $ary[1]; $res = eregi("s=([^&]*)" , $param, $ary ); if ($res==true) $s = $ary[1]; $res = eregi("tp=([^&]*)" , $param, $ary ); if ($res==true) $tp = $ary[1]; } // Die Parameter p1, p2, p3 im Array p zusammenfassen: $p=array($p0, $p1, $p2); // Die Kurzschreibweise, die im Parameter 's' uebergeben wird, aufloesen: // Format: s=State|p0|p1|user|pwd // Z.B. index.php?s=St_DirViewer_ViewAll|pages/BilderGindelalm||Gindel // index.php?s=St_ShowDownloadMsg|pages/P1000306.JPG if (empty($s)==false) { list($stat, $p0, $p1, $user, $pwd)=explode("|", $s); } // Layout-Template uebernehmen: $g_app->currentLayout=$tp; if ($g_app->getSessionIsNew()==true && empty($g_app->currentLayout)) { $stat=null; // führt dazu dass die Heimseite angezeigt wird. } dlog("", "*** Aufruf index\.php ***"); dlog("", " stat='$stat'"); dlog("", " p0='$p0'"); dlog("", " p1='$p1'"); dlog("", " p2='$p2'"); dlog("", " user='$user'"); dlog("", " pwd='$pwd'"); dlog("", " s='$s'"); dlog("", " tp='$tp'"); // Wenn noch kein User festgelegt wurde und wenn im Link auch kein User angegeben wurde: Default-User verwenden: if (empty($g_app->auth->username) && empty($user)) $user=DEFAULT_USER; // Wenn im Link ein User uebergeben wurde: authentifizieren. Wenn der aktuelle User dem gewünschten User entspricht, // dann wird die authentifizierung uebersprungen: if (empty($user)==false && $g_app->auth->username!=$user) { $res=$g_app->auth->verifyUser($user, $pwd); //Authentifizierung fehlgeschlagen und gegenwärtiger User entspicht nicht dem gewuenschten User: Login-Form anzeigen: if ($res!=1) { $stat=St_Auth_StartShowLoginFm; $p=array("", $user); } } //übler hack: if ($g_app->sm->templateReldirpath=='Template/CI_StartPage/') $p[0]='Pages/CI/Private/Start.html'; // Wenn kein State angegeben: Homecontent anzeigen: if (empty($stat)) $g_app->goHome(); // State abarbeiten: else $g_app->dispatch($stat, $p); // Ausgabe nach $content laden: $content=ob_get_contents(). ob_end_clean(); writeDebugFile("Original.txt", $content); $content = replaceLinkFunctionsWhichAreNotInTextArea($content); writeDebugFile("LinkFunctionsReplaced.txt", $content); $content = translateLanguage($content); $content = replaceUmlaute($content); //Folgendes Format muss für die Links eingehalten werden: , andernfalls wird dieser Link nicht verschluesselt. //Keine zusaetzlichen Leerzeichen! //Style-Angaben vor href, also ! //Den Code von Zeit zu Zeit auf 'a href =' oder 'a href= ' oder 'a href={' absuchen. // // URL( darf nicht gross geschrieben werden in: background:transparent url('Template/Default/Images/bg1b.jpg') // andernfalls wird das als Funktion zum uebersetzen ausgewertet: L(...) if ($g_app->isEncrypted==1) $content=encryptLinks($content); writeDebugFile("EncryptedLinks.txt", $content); echo $content; //-------------------------------------------------------------------------------------------------------- // //-------------------------------------------------------------------------------------------------------- function initStat(&$stat, &$p0) { dlog("", "index\.php: Neuinitialisierung"); $stat="St_FileViewer_View" ; $p0=""; } ?>