folks = json_decode(file_get_contents("../config/folks.json"), true); $this->tags = json_decode(file_get_contents("../config/tags.json"), true); self::$settings = json_decode( file_get_contents("../config/settings.json"), true ); $_themes = glob("../content/themes/*", GLOB_ONLYDIR); foreach ($_themes as $theme) { array_push( $this->themes, json_decode(file_get_contents($theme . "/theme.json"), true) ); } } public static function sync($data) { $settings = self::$settings; $settings["global"]["base_url"] = $data["global"]["base_url"]; $settings["global"]["title"] = $data["global"]["title"]; $settings["global"]["descriptions"] = $data["global"]["descriptions"]; $settings["global"]["base_url"] = $data["global"]["base_url"]; $settings["global"]["private"] = $data["global"]["private"]; $settings["global"]["renderOnSave"] = $data["global"]["renderOnSave"]; $settings["global"]["theme"] = $data["global"]["theme"]; Member::updateData("handle", $data["member"]["handle"]); Member::updateData("email", $data["member"]["email"]); $settings["email"]["active"] = $data["email"]["active"]; $settings["email"]["smtp"] = $data["email"]["smtp"]; $settings["email"]["mailgun"] = $data["email"]["mailgun"]; DocTools::writeSettings("../config/settings.json", $settings); } public function getThemes() { return $this->themes; } public function getFolks($key = null) { if (isset($key)) { $member = Session::get("member"); $found = find($this->folks, ["handle" => $member["handle"]]); return $found[$key]; } else { return $this->folks; } } public function getSettings($key = null) { return self::$settings; } public static function updateGlobalData($key, $data) { $settings = self::$settings; $settings["global"][$key] = $data; DocTools::writeSettings("../config/settings.json", $settings); } public static function getCurrentIndex() { $settings = self::$settings; return $settings["library_stats"]["current_index"]; } public static function updateIndex() { $settings = self::$settings; $index = $settings["library_stats"]["current_index"]; $settings["library_stats"]["current_index"] = $index + 1; DocTools::writeSettings("../config/settings.json", $settings); } public static function updateMenu($body) { $settings = self::$settings; //$menu = $settings["menu"]; $item = [ "title" => $body["title"], "id" => $body["id"], "uuid" => $body["uuid"], "slug" => $body["slug"], "path" => $body["path"], ]; if ($body["menu"] == "true") { if (!find($settings["menu"], ["uuid" => $item["uuid"]])) { array_push($settings["menu"], $item); } } else { if (find($settings["menu"], ["uuid" => $item["uuid"]])) { pull($settings["menu"], $item); } } DocTools::writeSettings("../config/settings.json", $settings); } }