mirror of
https://github.com/icecoder/ICEcoder.git
synced 2026-03-03 07:13:59 +01:00
Overhaul setting previousFiles and last10Files to use class methods
This commit is contained in:
@@ -1,57 +1,41 @@
|
||||
<?php
|
||||
require_once dirname(__FILE__) . "/../classes/Settings.php";
|
||||
|
||||
$settingsClass = new \ICEcoder\Settings();
|
||||
|
||||
include_once("settings-common.php");
|
||||
$text = $_SESSION['text'];
|
||||
$t = $text['settings-save-current-files'];
|
||||
|
||||
// Save the currently opened files for next time
|
||||
if ($_SESSION['loggedIn'] && isset($_GET["saveFiles"]) && $_GET['saveFiles']) {
|
||||
$settingsContents = getData("../data/".$settingsFile);
|
||||
|
||||
// Replace our previousFiles var with the the current
|
||||
$repPosStart = strpos($settingsContents,'previousFiles" => "')+20;
|
||||
$repPosEnd = strpos($settingsContents,'",',$repPosStart)-$repPosStart;
|
||||
if (!$demoMode) {
|
||||
if ($_GET['saveFiles']!="CLEAR") {
|
||||
$saveFiles=$_GET['saveFiles'];
|
||||
$saveFilesArray = explode(",",$saveFiles);
|
||||
$saveFiles="";
|
||||
for ($i=0;$i<count($saveFilesArray);$i++) {
|
||||
$saveFilesArray[$i] = str_replace("/","|",$docRoot).$saveFilesArray[$i];
|
||||
$saveFiles .= $saveFilesArray[$i].",";
|
||||
$saveFilesArray = [];
|
||||
if ("CLEAR" !== $_GET['saveFiles']) {
|
||||
$saveFilesArray = explode(",", $_GET['saveFiles']);
|
||||
for ($i = 0; $i < count($saveFilesArray); $i++) {
|
||||
$saveFilesArray[$i] = str_replace("/", "|", $docRoot) . $saveFilesArray[$i];
|
||||
}
|
||||
$saveFiles = rtrim($saveFiles,",");
|
||||
} else {
|
||||
$saveFilesArray = array();
|
||||
$saveFiles = "";
|
||||
}
|
||||
$settingsContents = substr($settingsContents,0,$repPosStart).$saveFiles.substr($settingsContents,($repPosStart+$repPosEnd),strlen($settingsContents));
|
||||
// Now update the config file
|
||||
if (is_writeable("../data/".$settingsFile)) {
|
||||
$fh = fopen("../data/".$settingsFile, 'w');
|
||||
fwrite($fh, $settingsContents);
|
||||
fclose($fh);
|
||||
} else {
|
||||
if (false === $settingsClass->savePreviousFiles($settingsFile, $saveFilesArray)) {
|
||||
echo "<script>parent.parent.ICEcoder.message('".$t['Cannot update config...']." data/".$settingsFile." ".$t['and try again']."');</script>";
|
||||
}
|
||||
|
||||
// Update our last10Files var?
|
||||
$last10FilesArray = explode(",",$ICEcoder["last10Files"]);
|
||||
for ($i=0;$i<count($saveFilesArray);$i++) {
|
||||
$inLast10Files = in_array($saveFilesArray[$i],$last10FilesArray);
|
||||
if (!$inLast10Files && $saveFilesArray[$i] !="") {
|
||||
$repPosStart = strpos($settingsContents,'last10Files" => "')+18;
|
||||
$repPosEnd = strpos($settingsContents,'"',$repPosStart)-$repPosStart;
|
||||
$commaExtra = $ICEcoder["last10Files"]!="" ? "," : "";
|
||||
if (count($last10FilesArray)>=10) {$ICEcoder["last10Files"]=substr($ICEcoder["last10Files"],0,strrpos($ICEcoder["last10Files"],','));};
|
||||
$settingsContents = substr($settingsContents,0,$repPosStart).$saveFilesArray[$i].$commaExtra.$ICEcoder["last10Files"].substr($settingsContents,($repPosStart+$repPosEnd),strlen($settingsContents));
|
||||
for ($i = 0; $i < count($saveFilesArray); $i++) {
|
||||
$inLast10Files = in_array($saveFilesArray[$i], $ICEcoder["last10Files"]);
|
||||
if (false === $inLast10Files && "" !== $saveFilesArray[$i]) {
|
||||
$ICEcoder["last10Files"][] = $saveFilesArray[$i];
|
||||
echo "<script>console.log(".count($saveFilesArray).count($ICEcoder["last10Files"]).");</script>";
|
||||
if (10 <= count($ICEcoder["last10Files"])) {
|
||||
$ICEcoder["last10Files"] = array_slice($ICEcoder["last10Files"], 0, 10);
|
||||
};
|
||||
// Now update the config file
|
||||
if (is_writeable("../data/".$settingsFile)) {
|
||||
$fh = fopen("../data/".$settingsFile, 'w');
|
||||
fwrite($fh, $settingsContents);
|
||||
fclose($fh);
|
||||
} else {
|
||||
if (false === $settingsClass->saveLast10Files($settingsFile, $ICEcoder["last10Files"])) {
|
||||
echo "<script>parent.parent.ICEcoder.message('".$t['Cannot update config...']." data/".$settingsFile." ".$t['and try again']."');</script>";
|
||||
}
|
||||
} else {
|
||||
echo "<script>console.log(".$ICEcoder["last10Files"][$i].");</script>";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user