1) { if (FALSE) //($PODBLOGGER_VERSION=="0.4") { $ADMIN_LANGUAGE = "deutsch"; updateValueInConfigFile("ADMIN_LANGUAGE"); } else { // print out selector
printHeadline(); print '
Welcome! Please choose a language ...'; print '
Willkommen! Bitte eine Sprache wählen ...'; print '

'; foreach ($langs as $lang) { print ''.strtoupper($lang)."
"; } print '
'; printEndline(""); exit(); } } else { //case== only one language is avalible $ADMIN_LANGUAGE = $langs[0]; updateValueInConfigFile("ADMIN_LANGUAGE"); write_weiterleitung("http://".HTTP_BASISADRESSE."installcheck.php"); } } else { print "ERROR: Keine Sprachdateien im Verzeichnis 'include' vorhanden / no language files in directory 'include'"; exit(); } } elseif (isset($_GET['language'])) { // switsch to selected language $ADMIN_LANGUAGE = $_GET['language']; updateValueInConfigFile("ADMIN_LANGUAGE"); write_weiterleitung("http://".HTTP_BASISADRESSE."installcheck.php"); } // maybe change also the Layout-Plugin to the selected language if ($LAYOUT_ID = languageLayoutExists($ADMIN_LANGUAGE)) updateValueInConfigFile("LAYOUT_ID"); // ------ TEST 1 - folder and file rights -------- // ----------------------------------------------- // check for folder and file rights in the systems Webspace $verzeichnisse = array(); //array_push($verzeichnisse, array("dir" => "", "chmod" => "777", "despription" => "podblogger-Installationsverzeichnis")); array_push($verzeichnisse, array("dir" => "uploadData/", "chmod" => "777", "despription" => "'uploadData'-Verzeichnis")); array_push($verzeichnisse, array("dir" => "publicData/", "chmod" => "777", "despription" => "'publicData'-Verzeichnis")); array_push($verzeichnisse, array("dir" => "podbloggerData/", "chmod" => "777", "despription" => "'podbloggerData'-Verzeichnis")); array_push($verzeichnisse, array("dir" => "podbloggerData/stats/", "chmod" => "777", "despription" => "'stats'-Unterverzeichnis im 'podbloggerData'-Hauptverzeichnis")); array_push($verzeichnisse, array("dir" => "podbloggerData/layoutConfigs/", "chmod" => "777", "despription" => "'layoutConfigs'-Unterverzeichnis im 'podbloggerData'-Hauptverzeichnis")); array_push($verzeichnisse, array("dir" => "podbloggerData/smarty_cache/", "chmod" => "777", "despription" => "'smarty_cache'-Unterverzeichnis im 'podbloggerData'-Hauptverzeichnis")); array_push($verzeichnisse, array("dir" => "podbloggerData/smarty_compile/", "chmod" => "777", "despription" => "'smarty_compile'-Unterverzeichnis im 'podbloggerData'-Hauptverzeichnis")); //check $verzeichniss_mit_problemen = array(); foreach($verzeichnisse as $verzeichnis) { //if ($verzeichnis['dir'] != "") @chmod($verzeichnis['dir'],$verzeichnis['chmod']); if (!checkVerzeichnis($verzeichnis['dir'])) { array_push($verzeichniss_mit_problemen,$verzeichnis); } } // if there are problems if (count($verzeichniss_mit_problemen) > 0) { printHeadline(); printBaiscinfoOnFirstRun(); print get_lang('installcheck_followingdirs').":
\n"; foreach($verzeichniss_mit_problemen as $verzeichnis) { print "- ".$verzeichnis['despription']." ".get_lang('installcheck_needrights').": ".$verzeichnis['chmod']."
"; } print "

".get_lang('installcheck_moreinfo')."

"; print ""; printEndline(menuButtonStr(get_lang('installcheck_checkagain1'), "installcheck.php")); exit(); } // ------ TEST 2 - IS password set? ------------ // --------------------------------------------- if ($ADMIN_PASSWORD=="") { // check if a password were set if ( isset($_POST['pass_new']) ) {$new_pass = htmlspecialchars($_POST['pass_new']);} else if ( isset($_GET['pass_new']) ) {$new_pass = htmlspecialchars($_GET['pass_new']);} if (!isset($new_pass)) { //printout password check printHeadline(); printBaiscinfoOnFirstRun(); print get_lang('installcheck_choosepass').":

\n
"; print "
 
"; print "".get_lang('installcheck_passinfo').""; print ""; printEndline(""); exit(); } else { //recheck password and save if it is ok if (strlen($new_pass) > 5) { $ADMIN_PASSWORD = $new_pass; updateValueInConfigFile("ADMIN_PASSWORD"); $_SESSION['admin'] = "ADMIN"; } else { printHeadline(); print_lang('installcheck_passlength'); printEndline(menuButtonStr(get_lang('installcheck_enternewpass'), "installcheck.php")); exit(); } } } /* // --------------------------------------------- // ------ TEST 3 - fopen-testen ---------------- // --------------------------------------------- // prüfen, ob fopen ignoriert werden soll if ( isset($_POST['fopen']) ) {$fopen_test = htmlspecialchars($_POST['fopen']);} else if ( isset($_GET['fopen']) ) {$fopen_test = htmlspecialchars($_GET['fopen']);} if (($UPLOADRELAIS_MODE != "off") && (!isset($fopen_test))) { // 1. Versuch - Internet: Ist Zugriff auf CGI-Upload-Relais Vermittlungstelle möglich ? if (@fopen(AUTO_RELAIS_SCRIPT,"r")) { $fopen_possible = TRUE; } else { // 2. Versuch - eigener Server : Ist Zugriff auf die eigene Indexseite möglich ? if (@fopen("http://".HTTP_BASISADRESSE."/index.php","r")) {$fopen_possible = TRUE;} else {$fopen_possible = FALSE;} } // Wenn kein Zugriff möglich war Fehlermeldung ausgeben ... if (!$fopen_possible) { printHeadline(); printBaiscinfoOnFirstRun(); print get_lang('installcheck_nofopen1')."

\n
"; print_lang('installcheck_nofopen'); print ""; printEndline(menuButtonStr(get_lang('installcheck_checkagain2'), "installcheck.php")." ".menuButtonStr(get_lang('installcheck_withoutCGI'), "installcheck.php?fopen=no")); exit(); } } else { if ($UPLOADRELAIS_MODE != "off") { // Der Benutzer will vorerst ohne Relais arbeiten (weil fopen nicht funktioniert) $UPLOADRELAIS_MODE = "off"; updateValueInConfigFile("UPLOADRELAIS_MODE"); } } // --------------------------------------------- // ------ TEST 3 - CGI-Uploadrelais-Konfig ----- // --------------------------------------------- // prüfen, ob fopen ignoriert werden soll if ( isset($_POST['relais']) ) {$relais_test = htmlspecialchars($_POST['relais']);} else if ( isset($_GET['relais']) ) {$relais_test = htmlspecialchars($_GET['relais']);} if (($UPLOADRELAIS_MODE == "auto") && (!isset($relais_test))) { if ($LOKAL_PERL == "TRUE") { // Testen, ob Perl im verzeichnis 'cgi-perl' funktioniert $perlantwort = "FALSE"; $fp = @fopen("http://".HTTP_BASISADRESSE."cgi-perl/download.cgi?request=perltest","r"); $perlantwort = @fread($fp,128); @fclose($fp); if ($perlantwort=="TRUE") { // Das lokale CGI-Upload-Relais funktioniert // lokale CGI-Upload-Relais in Konfig eintragen $UPLOADRELAIS_UP_ADRESS = "http://".HTTP_BASISADRESSE."cgi-perl/upload.cgi"; updateValueInConfigFile("UPLOADRELAIS_UP_ADRESS"); $UPLOADRELAIS_DOWN_ADRESS = "http://".HTTP_BASISADRESSE."cgi-perl/download.cgi"; updateValueInConfigFile("UPLOADRELAIS_DOWN_ADRESS"); } else { // Das lokale CGI-Upload-Relais hat nicht geantwortet // prüfen, ob podblogger auf einem localhost ausgeführt wird if ( (strstr(strtolower(HTTP_BASISADRESSE),'localhost') != FALSE) || (strstr(strtolower(HTTP_BASISADRESSE),'127.0.0.1') != FALSE)) { // podblogger wird auf einer localen Maschine ausgeführt // daher kann es nicht mit externen Upload-Relais kommunizieren printHeadline(); printBaiscinfoOnFirstRun(); print get_lang('installcheck_noCGI')."

"; print_lang('installcheck_nofopen'); print ""; printEndline(menuButtonStr(get_lang('installcheck_checkagain2'), "installcheck.php")." ".menuButtonStr(get_lang('installcheck_withoutCGI'), "installcheck.php?relais=no")); exit(); } // Versuchen externes CGI-Upload-Relais automatisch zu konfigurieren elseif ($relais = cgiRelais::getRelaisFromNet($PODBLOGGER_VERSION)) { // es konnte ein externes Relais von der Vermittlungsstelle geladen werden // externes CGI-Upload-Relais in Konfig eintragen $UPLOADRELAIS_UP_ADRESS = $relais->getHttpAdress_Uploadscript(); updateValueInConfigFile("UPLOADRELAIS_UP_ADRESS"); $UPLOADRELAIS_DOWN_ADRESS = $relais->getHttpAdress_Downloadscript(); updateValueInConfigFile("UPLOADRELAIS_DOWN_ADRESS"); // Lokales Perl deaktivieren $LOKAL_PERL = "FALSE"; updateValueInConfigFile("LOKAL_PERL"); } else { // es war keine Verbindung zur Relais-Vermittlungsstelle möglich printHeadline(); printBaiscinfoOnFirstRun(); print get_lang('installcheck_noAutoCGI')."

"; print "Das bedeutet: Ihr podblogger ist zwar einsatzfähig, doch kann es beim Einladen von großen MP3-Dateien (über 2MB) zu Problemen kommen.

". "- Wählen Sie die Option 'weiter', um podblogger ohne Upload-Erweiterung (CGI-Upload-Relais) zu verwenden.
". "- Wählen Sie die Option 'erneut versuchen', die automatische Konfiguration zu wiederholen.
"; print ""; printEndline(menuButtonStr(get_lang('installcheck_checkagain2'), "installcheck.php")." ".menuButtonStr(get_lang('installcheck_withoutCGI'), "installcheck.php?relais=no")); exit(); } } } } else { if ($UPLOADRELAIS_MODE == "auto") { // Der Benutzer will vorerst ohne Relais arbeiten $UPLOADRELAIS_MODE = "off"; updateValueInConfigFile("UPLOADRELAIS_MODE"); } // Lokales Perl deaktivieren $LOKAL_PERL = "FALSE"; updateValueInConfigFile("LOKAL_PERL"); } */ // ------ Update and convertig older files------ // --------------------------------------------- // If there are older aticle files ergo convert convert_mp3Inf(); // reset version number $PODBLOGGER_VERSION = "0.5"; updateValueInConfigFile("PODBLOGGER_VERSION"); // ------ finish ouput ------------------------- // --------------------------------------------- printHeadline(); print_lang('installcheck_done'); // mark that the finish output was printed $PODBLOGGER_STATUS = "READY"; updateValueInConfigFile("PODBLOGGER_STATUS"); $PODBLOGGER_NEXTSTEP = "DONE"; updateValueInConfigFile("PODBLOGGER_NEXTSTEP"); printEndline(menuButtonStr(get_lang('installcheck_tostartsite'), "index.php")." ".menuButtonStr(get_lang('installcheck_toadmin'), "admin.php?aktion=config&mode=menu")); // ------ FUNKTIONEN -------------------------- // -------------------------------------------- /** * Name:checkVerzeichnis($verzeichnispfad) * * Check if file and folder rights were set * return TRUE or FALSE */ function checkVerzeichnis($verzeichnispfad) { if ($fp = @fopen($verzeichnispfad."test.tst","w")) { //write test file read and delete fwrite($fp,"TEST"); fclose($fp); $fp = @fopen($verzeichnispfad."test.tst","r"); $text = @fread($fp,1024); @fclose($fp); @unlink($verzeichnispfad."test.tst"); // evaluate test if ($text == "TEST") { return TRUE; } } // If is negativ return FALSE; } /** * Name:convert_insertTemplates() * * Check if file and folder rights were set * return TRUE or FALSE */ // Konvertiert die alten mp3Inf-Dateien (Array) zu aktuellen article-Objekten function convert_insertTemplates() { return FALSE; } /** * Name:convert_mp3Inf() * * converts older mp3INF to article Objects */ function convert_mp3Inf() { // folder publicData $files = getFilesFromDirWithEnding("publicData","inf"); //print serialize($files); $i = 0; foreach ($files as $file) { $i++; article::convert_ArrayInf_2_ObjectInf("publicData/".$file, (article::createUniqueID())."old".$i); } // folder uploadData $files = getFilesFromDirWithEnding("uploadData","inf"); foreach ($files as $file) { $i++; article::convert_ArrayInf_2_ObjectInf("uploadData/".$file,article::createUniqueID().$i); } return TRUE; } /** * Name: printBaiscinfoOnFirstRun() * * when the podblogger is just installed or updatet this * function prints out the info text */ function printBaiscinfoOnFirstRun() { if ($GLOBALS['PODBLOGGER_NEXTSTEP'] == "INSTALLCHECK_FIRST") { if ($GLOBALS['PODBLOGGER_STATUS'] == "INSTALL") { // infotext fo the very first Install print_lang('installcheck_welcome1'); } elseif ($GLOBALS['PODBLOGGER_STATUS'] == "UPDATE") { // infotext for Update print_lang('installcheck_welcome2'); } // mark that infotext was printed $GLOBALS['PODBLOGGER_NEXTSTEP'] = "INSTALLCHECK"; updateValueInConfigFile("PODBLOGGER_NEXTSTEP"); } else { // start text if installcheck found another error print "".get_lang('installcheck_testdone').date("H:i:s").")

"; } } /** * Name: printHeadline() * * This funktion prints a html HEADLINE * */ function printHeadline() { ?> podblogger installcheck
Installcheck  



  programmed by
christian rotzoll
read() ) { if ($entry=="std_".$lang) return "std_".$lang; } return FALSE; } ?>