/** * overwrite existing filelist-file */ function resetFiles() { global $SETTINGS; // write empty settings to file storeSettings(array(), $SETTINGS['files_file'], "FILES"); // all settings are okay for now, so go on return '<p>Your filelist ' . $SETTINGS['files_file'] . ' is reseted now!<br/>' . '<a href="' . $SETTINGS[PSNG_SCRIPT] . '">You can now create your personal google sitemap</a></p>'; }
/** * */ function writeSitemapUserinput() { // TODO add deselected files from user into "blacklist" in temp directory global $SETTINGS, $openFile_error, $_REQUEST, $LAYOUT; $LAYOUT->setTitle('Writing sitemap'); $gsg = new GsgXml($SETTINGS[PSNG_WEBSITE]); // create the sitemap file $filesGot = $_REQUEST['FILE']; $files = array(); foreach ($filesGot as $key => $value) { $files[$key] = array(); $files[$key][PSNG_FILE_ENABLED] = isset($value[PSNG_FILE_ENABLED]) ? '1' : ''; $files[$key][PSNG_FILE_URL] = $value[PSNG_FILE_URL]; $files[$key][PSNG_LASTMOD] = $value[PSNG_LASTMOD]; $files[$key][PSNG_CHANGEFREQ] = $value[PSNG_CHANGEFREQ]; $files[$key][PSNG_PRIORITY] = $value[PSNG_PRIORITY]; } if ($SETTINGS[PSNG_STORE_FILELIST] != '') { $res = storeSettings($files, $SETTINGS[PSNG_FILE_FILES], "FILES"); if (!is_null($res)) { $LAYOUT->addWarning($res, 'Filelist-Cache could not be written to file ' . $SETTINGS[PSNG_FILE_FILES] . '!'); } else { $LAYOUT->addSuccess('', 'Filelist-Cache written to file ' . $SETTINGS[PSNG_FILE_FILES] . '!'); } } writeSitemap($files); return TRUE; //header('Content-type: application/xml; charset="utf-8"',TRUE); }
/** * extract settings from passed user values */ function getSettings() { global $_REQUEST, $SETTINGS, $LAYOUT; $LAYOUT->setTitle("Store settings"); // TODO check values we got from user // put user values into settings array $SETTINGS[PSNG_WEBSITE] = $_REQUEST[PSNG_WEBSITE]; if (substr($SETTINGS[PSNG_WEBSITE], 0, 4) != "http") { // user hasn't put a http in front of the url of the website $SETTINGS[PSNG_WEBSITE] = "http://" . $SETTINGS[PSNG_WEBSITE]; } // TODO test this, if it's working with e.g. http://enarion.net if (substr($SETTINGS[PSNG_WEBSITE], -1) != '/' && substr($SETTINGS[PSNG_WEBSITE], -1) != "\\") { $SETTINGS[PSNG_WEBSITE] .= '/'; } $SETTINGS[PSNG_PAGEROOT] = addslashes($_REQUEST[PSNG_PAGEROOT]); if (substr($SETTINGS[PSNG_PAGEROOT], -1) != '/' && substr($SETTINGS[PSNG_PAGEROOT], -1) != "\\") { $SETTINGS[PSNG_PAGEROOT] .= '/'; } // sitemap is the file after the website-part of the sitemap_url /* $sitemap = str_replace($SETTINGS[PSNG_WEBSITE], '', $_REQUEST[PSNG_SITEMAP_URL]); $SETTINGS[PSNG_SITEMAP_FILE] = substr($SETTINGS[PSNG_PAGEROOT],0,strlen($SETTINGS[PSNG_PAGEROOT])) . $sitemap; $SETTINGS[PSNG_SITEMAP_URL] = $SETTINGS[PSNG_WEBSITE] . $sitemap; */ $SETTINGS[PSNG_SITEMAP_FILE] = $_REQUEST[PSNG_SITEMAP_FILE]; $SETTINGS[PSNG_TXTSITEMAP_FILE] = $_REQUEST[PSNG_TXTSITEMAP_FILE]; $SETTINGS[PSNG_SITEMAP_URL] = $_REQUEST[PSNG_SITEMAP_FILE]; if (isset($_REQUEST[PSNG_TIMEOUT])) { $SETTINGS[PSNG_TIMEOUT] = PSNG_TIMEOUT_FORCE; if ($_REQUEST[PSNG_TIMEOUT_TIME_DURATION] != $SETTINGS[PSNG_TIMEOUT_TIME_DURATION]) { $SETTINGS[PSNG_TIMEOUT_TIME_DURATION] = $_REQUEST[PSNG_TIMEOUT_TIME_DURATION]; $SETTINGS[PSNG_TIMEOUT_TIME_DEADLINE] = $SETTINGS[PSNG_TIMEOUT_TIME_START] + $SETTINGS[PSNG_TIMEOUT_TIME_DURATION] - $SETTINGS[PSNG_TIMEOUT_TIME_SHUTDOWN] - 1; } } else { $SETTINGS[PSNG_TIMEOUT] = PSNG_TIMEOUT_NONE; } if (isset($_REQUEST[PSNG_CRAWLER_URL])) { $SETTINGS[PSNG_CRAWLER_URL] = $_REQUEST[PSNG_CRAWLER_URL]; } if (isset($_REQUEST[PSNG_SCAN_LOCAL])) { $SETTINGS[PSNG_SCAN_LOCAL] = TRUE; } else { $SETTINGS[PSNG_SCAN_LOCAL] = FALSE; } if (isset($_REQUEST[PSNG_SCAN_WEBSITE])) { $SETTINGS[PSNG_SCAN_WEBSITE] = TRUE; } else { $SETTINGS[PSNG_SCAN_WEBSITE] = FALSE; } if (isset($_REQUEST[PSNG_PINGGOOGLE])) { $SETTINGS[PSNG_PINGGOOGLE] = TRUE; } else { $SETTINGS[PSNG_PINGGOOGLE] = FALSE; } if (isset($_REQUEST[PSNG_SCAN_WEBSITE])) { $SETTINGS[PSNG_SCAN_WEBSITE] = TRUE; } else { $SETTINGS[PSNG_SCAN_WEBSITE] = FALSE; } if (isset($_REQUEST[PSNG_SCAN_WEBSITE_LEVEL])) { $SETTINGS[PSNG_SCAN_WEBSITE_LEVEL] = $_REQUEST[PSNG_SCAN_WEBSITE_LEVEL]; } else { $SETTINGS[PSNG_SCAN_WEBSITE_LEVEL] = 0; } $SETTINGS[PSNG_EDITRESULT] = $_REQUEST[PSNG_EDITRESULT] != '' ? PSNG_EDITRESULT_TRUE : PSNG_EDITRESULT_FALSE; $SETTINGS[PSNG_STORE_FILELIST] = $_REQUEST[PSNG_STORE_FILELIST]; $SETTINGS[PSNG_LASTMOD] = $_REQUEST[PSNG_LASTMOD]; $SETTINGS[PSNG_LASTMOD_TIMEFORMAT] = $_REQUEST[PSNG_LASTMOD_TIMEFORMAT]; $SETTINGS[PSNG_CHANGEFREQ] = $_REQUEST[PSNG_CHANGEFREQ]; $SETTINGS[PSNG_CHANGEFREQ_FIXED] = $_REQUEST[PSNG_CHANGEFREQ_FIXED]; $SETTINGS[PSNG_PRIORITY] = $_REQUEST[PSNG_PRIORITY]; $SETTINGS[PSNG_PRIORITY_FIXED] = $_REQUEST[PSNG_PRIORITY_FIXED]; if ($_REQUEST[PSNG_DISALLOW_DIR] != "") { $SETTINGS[PSNG_DISALLOW_DIR] = toArray($_REQUEST[PSNG_DISALLOW_DIR]); } if ($_REQUEST[PSNG_DISALLOW_FILE] != "") { $SETTINGS[PSNG_DISALLOW_FILE] = toArray($_REQUEST[PSNG_DISALLOW_FILE]); } if ($_REQUEST[PSNG_DISALLOW_KEY] != "") { $SETTINGS[PSNG_DISALLOW_KEY] = toArray($_REQUEST[PSNG_DISALLOW_KEY]); } $tmp = array(); foreach ($SETTINGS[PSNG_DISALLOW_DIR] as $k => $v) { if ($v != '') { $tmp[] = $v; } } $SETTINGS[PSNG_DISALLOW_DIR] = $tmp; $tmp = array(); foreach ($SETTINGS[PSNG_DISALLOW_FILE] as $k => $v) { if ($v != '') { $tmp[] = $v; } } $SETTINGS[PSNG_DISALLOW_FILE] = $tmp; $tmp = array(); foreach ($SETTINGS[PSNG_DISALLOW_KEY] as $k => $v) { if ($v != '') { $tmp[] = $v; } } $SETTINGS[PSNG_DISALLOW_KEY] = $tmp; $SETTINGS[PSNG_COMPRESS_SITEMAP] = isset($_REQUEST[PSNG_COMPRESS_SITEMAP]) ? TRUE : FALSE; // TODO maybe try to open sitemap file // store settings in session $_SESSION[PSNG_SETTINGS] = $SETTINGS; // write settings to file $res = storeSettings($SETTINGS, $SETTINGS[PSNG_FILE_SETTINGS], "SETTINGS"); if (!is_null($res)) { $LAYOUT->addWarning($res, 'Settings could not be written to file ' . $SETTINGS[PSNG_FILE_SETTINGS] . '!'); } else { $LAYOUT->addSuccess('', 'Settings written to file ' . $SETTINGS[PSNG_FILE_SETTINGS] . '!'); } debug($SETTINGS, 'Got and computed settings'); return TRUE; }
} } $jres = array(); if ($result) { $lang_install = $_SESSION["lang_install"]; $lang_arr = Lang::getLanguageList("language"); foreach ($lang_arr as $language) { if (!in_array($language, $lang_install)) { $qtxt = "DELETE FROM core_lang_language WHERE lang_code='" . $language . "'"; $q = mysql_query($qtxt); } } // Create the admin user registerAdminUser(); // Store settings storeSettings(); // Add roles addInstallerRoles(); $jres['result'] = true; $jres['text'] = false; } else { $jres['result'] = false; $jres['text'] = $text; } require_once _base_ . '/lib/lib.json.php'; $json = new Services_JSON(); ob_clean(); echo $json->encode($jres); mysql_close($db); session_write_close(); // -------------------------------------------------------------------------------