Zipping Open Files","10") ); $theme = "default"; $lastOpenedFiles = ""; // --------------- // End of settings // --------------- // Update this settings file? if ($_POST["theme"] && $_SESSION['userLevel'] == 10) { $settingsFile = 'settings.php'; $settingsContents = file_get_contents($settingsFile); // Replace our lastOpenedFiles var with the the current $repPosStart = strpos($settingsContents,'$tabsIndent'); $repPosEnd = strpos($settingsContents,'$lastOpenedFiles'); // Prepare all our vars if ($_POST['tabsIndent']) {$tabsIndent = "true";} else {$tabsIndent = "false";}; if ($_POST['testcMVersion']) {$testcMVersion = "true";} else {$testcMVersion = "false";}; if ($_POST['openLastFiles']) {$openLastFiles = "true";} else {$openLastFiles = "false";}; if ($_POST['codeAssist']) {$codeAssist = "true";} else {$codeAssist = "false";}; if ($_POST['visibleTabs']) {$visibleTabs = "true";} else {$visibleTabs = "false";}; if ($_POST['lockedNav']) {$lockedNav = "true";} else {$lockedNav = "false";}; if ($_POST['accountPassword']!="") {$accountPassword = generateHash($_POST['accountPassword']);} else {$accountPassword = $_POST['oldPassword'];}; $restrictedFiles = 'array("'.str_replace(', ','","',$_POST['restrictedFiles']).'")'; $bannedFiles = 'array("'.str_replace(', ','","',$_POST['bannedFiles']).'")'; $allowedIPs = 'array("'.str_replace(', ','","',$_POST['allowedIPs']).'")'; $plugins = 'array('.PHP_EOL.' array('.PHP_EOL.' '.str_replace('====================','),'.PHP_EOL.' array(',$_POST['plugins']).'))'; $theme = $_POST['theme']; $settingsNew = '$tabsIndent = '.$tabsIndent.';'.PHP_EOL; $settingsNew .= '$testcMVersion = '.$testcMVersion.';'.PHP_EOL; $settingsNew .= '$openLastFiles = '.$openLastFiles.';'.PHP_EOL; $settingsNew .= '$codeAssist = '.$codeAssist.';'.PHP_EOL; $settingsNew .= '$visibleTabs = '.$visibleTabs.';'.PHP_EOL; $settingsNew .= '$lockedNav = '.$lockedNav.';'.PHP_EOL; $settingsNew .= '$accountPassword = "'.$accountPassword.'";'.PHP_EOL; $settingsNew .= '$restrictedFiles = '.$restrictedFiles.';'.PHP_EOL; $settingsNew .= '$bannedFiles = '.$bannedFiles.';'.PHP_EOL; $settingsNew .= '$allowedIPs = '.$allowedIPs.';'.PHP_EOL; $settingsNew .= '$plugins = '.$plugins.';'.PHP_EOL; $settingsNew .= '$theme = "'.$theme.'";'.PHP_EOL; // Compile our new settings $settingsContents = substr($settingsContents,0,$repPosStart).$settingsNew.substr($settingsContents,($repPosEnd),strlen($settingsContents)); // Now update this file $fh = fopen($settingsFile, 'w') or die("can't update settings file"); fwrite($fh, $settingsContents); fclose($fh); // OK, now this file is updated, update our current session with new arrays $_SESSION['restrictedFiles'] = $restrictedFiles = explode(", ",$_POST['restrictedFiles']); $_SESSION['bannedFiles'] = $bannedFiles = explode(", ",$_POST['bannedFiles']); $_SESSION['allowedIPs'] = $allowedIPs = explode(", ",$_POST['allowedIPs']); // Work out the theme to use now if ($theme=="default") {$themeURL="lib/editor.css";} else {$themeURL=$codeMirrorDir."/theme/".$theme.".css";}; // Do we need a file manager refresh? if ($_POST['changedFileSettings']=="true") {$refreshFM="true";} else {$refreshFM="false";}; // With all that worked out, we can now hide the settings screen and apply the new settings echo ""; } // Save the currently opened files for next time if ($_GET['saveFiles']) { if ($_SESSION['userLevel'] == 10) { $settingsFile = 'settings.php'; $settingsContents = file_get_contents($settingsFile); // Replace our lastOpenedFiles var with the the current $repPosStart = strpos($settingsContents,'lastOpenedFiles = "')+19; $repPosEnd = strpos($settingsContents,'";',$repPosStart)-$repPosStart; $settingsContents = substr($settingsContents,0,$repPosStart).$_GET['saveFiles'].substr($settingsContents,($repPosStart+$repPosEnd),strlen($settingsContents)); // Now update this file $fh = fopen($settingsFile, 'w') or die("can't update settings file"); fwrite($fh, $settingsContents); fclose($fh); } echo ''; } // Establish our user level if (!isset($_SESSION['userLevel'])) {$_SESSION['userLevel'] = 0;}; if(isset($_POST['loginPassword']) && generateHash($_POST['loginPassword'],$accountPassword)==$accountPassword) {$_SESSION['userLevel'] = 10;}; $_SESSION['userLevel'] = $_SESSION['userLevel']; if (!isset($_SESSION['restrictedFiles'])) {$_SESSION['restrictedFiles'] = $restrictedFiles;} if (!isset($_SESSION['bannedFiles'])) {$_SESSION['bannedFiles'] = $bannedFiles;} if (!isset($_SESSION['allowedIPs'])) {$_SESSION['allowedIPs'] = $allowedIPs;} // Determin our allowed IP addresses $allowedIP = false; for($i=0;$itop.window.location="/";'; }; // Establish our shortened URL, explode the path based on server type (Linux or Windows) if (strpos($_SERVER['DOCUMENT_ROOT'],"/")>-1) {$slashType = "/";} else {$slashType = "\\";}; $shortURLStarts = explode($slashType,$_SERVER['DOCUMENT_ROOT']); // Then clear item at the end if there is one, plus trailing slash // We end up with the directory name of the server root if ($shortURLStarts[count($shortURLStarts)-1]!="") {$trimArray=1;} else {$trimArray=2;} $shortURLStarts = $shortURLStarts[count($shortURLStarts)-$trimArray]; // If we're updating or calling from the index.php page, do/redo plugins & last opened files if (($_POST["theme"] && $_SESSION['userLevel'] == 10) || strpos($_SERVER['PHP_SELF'],"index.php")>0) { // If we're updating, we need to recreate the plugins array if ($_POST["theme"] && $_SESSION['userLevel'] == 10) { $plugins = array(); $pluginsArray = explode("====================",str_replace("\"","",str_replace("\r","",str_replace("\n","",$_POST['plugins'])))); for ($i=0;$i'.$plugins[$i][0].''; }; // If we're updating, replace the plugin display with our newly established one if ($_POST["theme"] && $_SESSION['userLevel'] == 10) { echo ""; } // Work out what plugins we'll need to set on a setInterval $onLoadExtras = ""; for ($i=0;$i ICE Coder - <?php echo $versionNo;?> :: Settings
0) { // If we're setting a password if (isset($_POST['accountPassword'])) { $password = generateHash($_POST['accountPassword']); $settingsFile = 'lib/settings.php'; $settingsContents = file_get_contents($settingsFile); // Replace our empty password with the one submitted by user $settingsContents = str_replace('$accountPassword = "";','$accountPassword = "'.$password.'";',$settingsContents); // Now update this file $fh = fopen($settingsFile, 'w') or die("can't update settings file"); fwrite($fh, $settingsContents); fclose($fh); // Set the session user level $_SESSION['userLevel'] = 10; // Finally, load again as now this file has changed and auto login header('Location: index.php'); } else { // We need to set the password header('Location: lib/settings.php?settings=set'); } } // If we're logging in, refresh the file manager and show icons if login is correct if(isset($_POST['loginPassword'])) { if(isset($_POST['loginPassword']) && generateHash($_POST['loginPassword'],$accountPassword)==$accountPassword) { $loginAttempt = 'loginOK'; } else { $loginAttempt = 'loginFailed'; } echo ""; } } ?>