From 5c17a540eeee4adb7eccb9c5a9a871a12c2e897b Mon Sep 17 00:00:00 2001 From: Thayol Date: Tue, 29 Dec 2020 00:39:20 +0100 Subject: [PATCH] Finished settings --- index.php | 3 - libraries/optimizer.php | 8 ++ libraries/optimizer_settings.php | 48 ++++++++++++ libraries/osu_library.php | 2 +- macska.jpg | Bin 9453 -> 0 bytes main.php | 82 +++++++++++++++++--- splitter.php | 36 ++------- templates/main-browser-script.js | 30 ++++++- templates/main-browser-template-mapset.html | 2 +- templates/main.html | 9 ++- templates/notice-repack.txt | 1 + templates/settings-back-source.html | 1 + templates/settings.html | 11 +++ templates/style.css | 11 +++ templates/warn-repack.html | 6 ++ 15 files changed, 199 insertions(+), 51 deletions(-) create mode 100644 libraries/optimizer_settings.php delete mode 100644 macska.jpg create mode 100644 templates/notice-repack.txt create mode 100644 templates/settings-back-source.html create mode 100644 templates/settings.html create mode 100644 templates/warn-repack.html diff --git a/index.php b/index.php index bfd6e07..12c12b6 100644 --- a/index.php +++ b/index.php @@ -13,8 +13,5 @@ set_time_limit(298800); // the future ini_set('memory_limit', '1024M'); -// git does not like empty folders -if (!file_exists("session")) mkdir("session"); - // the entry point require "main.php"; \ No newline at end of file diff --git a/libraries/optimizer.php b/libraries/optimizer.php index 2573536..321c222 100644 --- a/libraries/optimizer.php +++ b/libraries/optimizer.php @@ -256,6 +256,14 @@ class optimizer } } + public static function repack_all(osu_library $library) : void + { + foreach ($library->get_library() as $key => $mapset) + { + self::repack($library, $mapset["key"]); + } + } + public static function repack(osu_library $library, string $key) : string { $path = $library->get_library()[$key]["path"] ?? ""; diff --git a/libraries/optimizer_settings.php b/libraries/optimizer_settings.php new file mode 100644 index 0000000..37af460 --- /dev/null +++ b/libraries/optimizer_settings.php @@ -0,0 +1,48 @@ +path = $path; + if (file_exists($path)) + { + $this->load(); + } + } + + public function load() + { + $raw = file_get_contents($this->path); + $json = json_decode($raw, true); + + $this->osu_path = $json["osu_folder"] ?? ""; + } + + public function save() + { + $json = array(); + $json["osu_path"] = $this->osu_path; + + $raw = json_encode($json); + file_put_contents($this->path); + } + + public function set_osu_path($path) : void + { + $sanitized = str_replace("\\", "/", $path); + $sanitized = rtrim($sanitized, "/"); + if (file_exists($path)) + { + $this->osu_path = $sanitized; + } + } + + public function get_osu_path() : string + { + return $this->osu_path; + } +} \ No newline at end of file diff --git a/libraries/osu_library.php b/libraries/osu_library.php index fe8973d..bfe4e78 100644 --- a/libraries/osu_library.php +++ b/libraries/osu_library.php @@ -178,7 +178,7 @@ class osu_library public function get_root() : string { - return $this->db["root"]; + return $this->db["root"] ?? ""; } public function set_root(string $root) : void diff --git a/macska.jpg b/macska.jpg deleted file mode 100644 index 4be5ef64ad2108cee1f5766af0ca660026f75701..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9453 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 xKX@!1s^vBa4TI5$)8(LriE~ba)e*n!Ax_kft diff --git a/main.php b/main.php index 23600de..5a9dcf8 100644 --- a/main.php +++ b/main.php @@ -1,23 +1,46 @@ is_loaded()) +if (isset($_GET["settings"]) || empty($settings->get_osu_path())) +{ + // $display = "start"; +} +else if (!empty($_GET["notice"])) +{ + $display = "notice"; + $notice = $_GET["notice"]; +} +else if (!empty($_GET["warn"]) && !empty($_GET["forward"])) +{ + $display = "warn"; + $forward = $_GET["forward"]; + $warn = $_GET["warn"]; +} +else if ($lib->is_loaded()) { $display = "main"; } @@ -28,28 +51,39 @@ function redirect($path) exit(0); // TERMINATE CURRENT SCRIPT! } -$te = new template_engine(); -if ($display == "main") +if (!empty($settings->get_osu_path())) { if (isset($_GET["rescan"])) { - $lib->rescan_library(json_decode(file_get_contents("session/settings.json"), true)["osu_folder"]); + $lib->rescan_library($settings->get_osu_path()); $lib->save_db(); redirect("./"); } if (isset($_GET["scan"])) { - $lib->scan_library(json_decode(file_get_contents("session/settings.json"), true)["osu_folder"]); + $lib->scan_library($settings->get_osu_path()); $lib->save_db(); redirect("./"); } +} - if (isset($_GET["repack"]) && !empty($_GET["key"])) +$te = new template_engine(); +if ($display == "main") +{ + if (isset($_GET["repack"])) { - $key = $_GET["key"]; - $dl = @optimizer::repack($lib, $key); - redirect("./" . $dl); + if (!empty($_GET["key"])) + { + $key = $_GET["key"]; + $dl = @optimizer::repack($lib, $key); + redirect("./" . $dl); + } + else if (isset($_GET["all"])) + { + @optimizer::repack_all($lib); + redirect("./?notice=repack"); + } } if (isset($_GET["blacken"])) @@ -95,6 +129,7 @@ if ($display == "main") } $options = array( + [ "./?settings", "Settings", "Go back to the setup/settings screen." ], [ "./?scan", "Scan", "Only scan for changes." ], [ "./?rescan", "Force rescan", "Fully rescan the library. (cached)" ], [ "./?blacken", "Remove backgrounds", "Replace the background files with 1x1 black images." ], @@ -104,6 +139,7 @@ if ($display == "main") [ "./?nohit", "Remove custom hitsounds", "Does not remove storyboard elements." ], [ "./?purify", "Remove junk files", "Remove everything that isn't referenced in .osu or .osb files." ], [ "./?nuke", "NUKE", "Remove everything that isn't .osu or a referenced audio/background file. Note: old/bad maps might lose vital elements!" ], + [ "./?warn=repack&forward=" . urlencode("./?repack&all"), "Repack all", "Repack all maps to .osz files. Note: you should not share exported maps; always use official osu! links." ], [ "./splitter.php?page=1", "Explore", "TBD" ], ); @@ -136,14 +172,36 @@ if ($display == "main") ]); } - echo $te->get_html(); - // dump($lib, "lib"); } +else if ($display == "notice") +{ + $notice_upper = strtoupper($notice); + $te->set_block_template("CONTENT", "NOTICE_{$notice_upper}"); +} +else if ($display == "warn") +{ + $warn_upper = strtoupper($warn); + $te->set_block("WARN_FORWARD_LINK", $forward); + $te->set_block_template("CONTENT", "WARN_{$warn_upper}"); +} else if ($display == "start") { + if (!empty($_POST["osu_folder"])) + { + $settings->set_osu_path($_POST["osu_folder"]); + $settings->save(); + redirect("./?scan"); + } + $te->set_block_template("CONTENT", "SETTINGS"); + if (!empty($settings->get_osu_path())) + { + $te->set_block_template("SETTINGS_BACK", "SETTINGS_BACK_SOURCE"); + } } + +echo $te->get_html(); // foreach ($lib->get_library() as $mapset) diff --git a/splitter.php b/splitter.php index 45a808b..5b8fdc5 100644 --- a/splitter.php +++ b/splitter.php @@ -52,36 +52,16 @@ if ($format == "html") else $difftext = "difficulties"; echo $value["id"] . ": " . $firstdiff["Metadata"]["Artist"] . " - " . $firstdiff["Metadata"]["Title"] . " (" . $diffcount . " {$difftext})\n"; } - // $proc_times = array(); - // foreach ($library as $key => $set) - // { - // $tiempo = 0; - // foreach ($set["difficulties"] as $map) - // { - // $tiempo += $map["parsing_time"]; - // } - // $proc_times[$key] = $tiempo; - // } - - // arsort($proc_times); - - // foreach ($proc_times as $key => $tiempo) - // { - // $value = $library[$key]; - // $firstdiff = $value["difficulties"][array_key_first($value["difficulties"])]; - // $diffcount = 0; - // foreach ($value["difficulties"] as $diff) - // { - // if ($diff["format"] != "storyboard") - // { - // $diffcount++; - // } - // } - // echo str_pad(round($tiempo, 5), 7, "0") . "s " . $value["id"] . ": " . $firstdiff["Metadata"]["Artist"] . " - " . $firstdiff["Metadata"]["Title"] . " (" . $diffcount . " difficulties)\n"; - // } } else // default to json in every other case { + $response = array( + "page" => $page, + "maxpage" => $maxpage, + "pagesize" => $pagesize, + "mapsets" => $partial_library ?? array(), + ); + header('Content-Type: application/json'); - echo json_encode($partial_library); + echo json_encode($response); } \ No newline at end of file diff --git a/templates/main-browser-script.js b/templates/main-browser-script.js index 52c7c1e..b0a8eb0 100644 --- a/templates/main-browser-script.js +++ b/templates/main-browser-script.js @@ -1,5 +1,6 @@ var xmlhttp = new XMLHttpRequest(); var page = 1; +var maxpage = 1; var url = "./splitter.php?format=json&page="; updateBrowser(); @@ -34,17 +35,38 @@ function nextPage() { updateBrowser(); } -function changeBrowser(mapsets) +function firstPage() { + page = 1; + updateBrowser(); +} + +function lastPage() { + page = maxpage; + updateBrowser(); +} + +function changeBrowser(response) { var browser = document.getElementById("browser"); - var output = "
Page " + page.toString() + "
"; + if (!response.page) + { + return; + } + + if (response.maxpage) + { + maxpage = response.maxpage; + } + + var output = "
Page " + page.toString() + "/" + response.maxpage.toString() + "
"; var mapsetTemplate = `{{ MAIN_BROWSER_TEMPLATE_MAPSET }}`; var template = `{{ MAIN_BROWSER_TEMPLATE_DIFFICULTY }}`; - for (var mapsetKey of Object.keys(mapsets)) + + for (var mapsetKey of Object.keys(response.mapsets)) { - var mapset = mapsets[mapsetKey]; + var mapset = response.mapsets[mapsetKey]; var subOutput = ""; var summary = true; diff --git a/templates/main-browser-template-mapset.html b/templates/main-browser-template-mapset.html index 5c68140..0679eda 100644 --- a/templates/main-browser-template-mapset.html +++ b/templates/main-browser-template-mapset.html @@ -2,5 +2,5 @@
\{\{ MAP_DIFFICULTIES \}\}
- REPACK + ↑ [ REPACK ] ↑ \ No newline at end of file diff --git a/templates/main.html b/templates/main.html index 1f42bcc..bdcb652 100644 --- a/templates/main.html +++ b/templates/main.html @@ -16,8 +16,13 @@

Browser

- [ Previous ]   - [ Next ] + +
diff --git a/templates/notice-repack.txt b/templates/notice-repack.txt new file mode 100644 index 0000000..9ffa775 --- /dev/null +++ b/templates/notice-repack.txt @@ -0,0 +1 @@ +Check your session/osz/ folder for the exported files. \ No newline at end of file diff --git a/templates/settings-back-source.html b/templates/settings-back-source.html new file mode 100644 index 0000000..c8d2d70 --- /dev/null +++ b/templates/settings-back-source.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/templates/settings.html b/templates/settings.html new file mode 100644 index 0000000..f653dea --- /dev/null +++ b/templates/settings.html @@ -0,0 +1,11 @@ +
+

SETTINGS

+
+ +
+

(Use a fully qualified real path preferably without symlinks. Relative paths are supported in theory, but try to use absolute paths.)

+ {{ SETTINGS_BACK }} + +
+
+
\ No newline at end of file diff --git a/templates/style.css b/templates/style.css index 82fd53f..ccac12b 100644 --- a/templates/style.css +++ b/templates/style.css @@ -110,4 +110,15 @@ details.mapset summary::-webkit-details-marker { .mapset[open] summary .map { background-color: #444444; +} +.warn h2 { + margin: 0; + text-align: center; +} +.warn { + max-width: 400px; + margin: auto; + margin-top: 30px; + border: 1px solid white; + padding: 10px; } \ No newline at end of file diff --git a/templates/warn-repack.html b/templates/warn-repack.html new file mode 100644 index 0000000..33e0d4c --- /dev/null +++ b/templates/warn-repack.html @@ -0,0 +1,6 @@ +
+

WARNING!

+

Repacking all beatmaps will take a LONG time. Are you sure you want to continue?

+

[ Yes ]    [ No ]

+

(The repacking will start after clicking the "yes" button. If you are unsure whether you clicked it, check your session/osz/ folder; there should be some .osz files already.)

+
\ No newline at end of file