getSettings(); $themes = $config->getThemes(); $template = "dash/settings.twig"; $member = Session::get("member"); $updated = new \Moment\Moment($settings["global"]["last_backup"]); $pageOptions = [ "title" => "Dash Settings", "private" => $settings["global"]["private"], "render" => $settings["global"]["renderOnSave"], "background" => $settings["global"]["background"], "member" => $member, "siteTitle" => $settings["global"]["title"], "baseUrl" => $settings["global"]["base_url"], "desc" => $settings["global"]["descriptions"], "lastBackup" => $updated->format("Y M D d"), "currentTheme" => $settings["global"]["theme"], "themes" => $themes, "apiStatus" => isset($settings["global"]["externalAPI"]) ? $settings["global"]["externalAPI"] : "false", "mailOption" => $settings["email"]["active"], "mailConfig" => $settings["email"], "status" => Session::active(), ]; } else { header("Location: /dashboard"); die(); } break; case "navigation": if (Session::active()) { $config = new Settings(); $settings = $config->getSettings(); $template = "dash/navigation.twig"; $pageOptions = [ "title" => "Edit Dash Navigation", "status" => Session::active(), "menu" => $settings["menu"], ]; } else { header("Location: /dashboard"); die(); } break; case "pages": if (Session::active()) { $currentPage = isset($args["fourth"]) ? $args["fourth"] : 1; $filter = isset($args["third"]) ? $args["third"] : "all"; $data = (new Book("../content/pages"))->getPages( $currentPage, 4, $filter ); $template = "dash/book.twig"; $pageOptions = [ "entryCount" => $data["entryCount"], "numOfPages" => $data["numOfPages"], "currentPage" => $currentPage, "filter" => $data["paginate"]["sort"], "stats" => $data["stats"], "pages" => $data["pages"], "paginate" => $data["paginate"], "status" => Session::active(), ]; } else { header("Location: /dashboard"); die(); } break; case "page": if (Session::active()) { $template = "dash/page-edit.twig"; $mode = $args["third"]; if ($mode == "edit") { $uuid = $args["fourth"]; $pageOptions = [ "title" => "Fipamo | Edit Page", "page" => (new Book("../content/pages"))->findPageById($uuid), "mode" => $mode, "token" => Session::get("form_token"), "status" => Session::active(), ]; } else { $pageOptions = [ "title" => "Fipamo | Create Page", "token" => Session::get("form_token"), "mode" => $mode, "status" => Session::active(), ]; } } else { header("Location: /dashboard"); die(); } break; case "logout": Session::kill(); header("Location: /dashboard"); die(); break; case "reset-password": $template = "dash/reset-password.twig"; $pageOptions = [ "title" => "Reset Password", ]; break; default: $template = "dash/start.twig"; if (Session::active()) { $pageOptions = [ "title" => "Welcome Back", "status" => Session::active(), "data" => (new Book("../content/pages"))->getPages(1, 4), ]; } else { $pageOptions = [ "title" => "Welcome to Fipamo", "status" => Session::active(), ]; } break; } } else { $template = "dash/init.twig"; $pageOptions = ["title" => "Fipamo Setup"]; } return $view->render($response, $template, $pageOptions); } }