From 1d8506bb935c2d58f4e729453b215467155f1c74 Mon Sep 17 00:00:00 2001 From: frederik Date: Sun, 13 Apr 2025 17:04:32 +0200 Subject: [PATCH] cleanup: consolidate duplicate code --- homepage/views.php | 100 +++++++++++++++------------------------------ 1 file changed, 32 insertions(+), 68 deletions(-) diff --git a/homepage/views.php b/homepage/views.php index 7ed5f7f..a137c78 100644 --- a/homepage/views.php +++ b/homepage/views.php @@ -113,6 +113,32 @@ function copyOutput(elem) {
";} if($_GET['view'] == "System Controls"){ @@ -155,86 +181,24 @@ if(isset($_GET['view'])){ if($_GET['view'] == "Advanced"){include('scripts/advanced.php');} if($_GET['view'] == "Included"){ ensure_authenticated(); - if(isset($_GET['species']) && isset($_GET['add'])){ - $file = './scripts/include_species_list.txt'; - $str = file_get_contents("$file"); - $str = preg_replace("/(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+/", "\n", $str); - file_put_contents("$file", "$str"); - if(isset($_GET['species'])){ - foreach ($_GET['species'] as $selectedOption) - file_put_contents("./scripts/include_species_list.txt", htmlspecialchars_decode($selectedOption, ENT_QUOTES)."\n", FILE_APPEND); - } - } elseif(isset($_GET['species']) && isset($_GET['del'])){ - $file = './scripts/include_species_list.txt'; - $str = file_get_contents("$file"); - $str = preg_replace('/^\h*\v+/m', '', $str); - file_put_contents("$file", "$str"); - foreach($_GET['species'] as $selectedOption) { - $content = file_get_contents("../BirdNET-Pi/include_species_list.txt"); - $newcontent = str_replace($selectedOption, "", "$content"); - $newcontent = str_replace(htmlspecialchars_decode($selectedOption, ENT_QUOTES), "", "$newcontent"); - file_put_contents("./scripts/include_species_list.txt", "$newcontent"); - } - $file = './scripts/include_species_list.txt'; - $str = file_get_contents("$file"); - $str = preg_replace('/^\h*\v+/m', '', $str); - file_put_contents("$file", "$str"); + if(isset($_GET['species']) && (isset($_GET['add']) or isset($_GET['del']))){ + update_species_list("./scripts/include_species_list.txt", $_GET['species'], isset($_GET['add'])); } $species_list="include"; include('./scripts/species_list.php'); } if($_GET['view'] == "Excluded"){ ensure_authenticated(); - if(isset($_GET['species']) && isset($_GET['add'])){ - $file = './scripts/exclude_species_list.txt'; - $str = file_get_contents("$file"); - $str = preg_replace("/(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+/", "\n", $str); - file_put_contents("$file", "$str"); - foreach ($_GET['species'] as $selectedOption) - file_put_contents("./scripts/exclude_species_list.txt", htmlspecialchars_decode($selectedOption, ENT_QUOTES)."\n", FILE_APPEND); - } elseif (isset($_GET['species']) && isset($_GET['del'])){ - $file = './scripts/exclude_species_list.txt'; - $str = file_get_contents("$file"); - $str = preg_replace('/^\h*\v+/m', '', $str); - file_put_contents("$file", "$str"); - foreach($_GET['species'] as $selectedOption) { - $content = file_get_contents("./scripts/exclude_species_list.txt"); - $newcontent = str_replace($selectedOption, "", "$content"); - $newcontent = str_replace(htmlspecialchars_decode($selectedOption, ENT_QUOTES), "", "$content"); - file_put_contents("./scripts/exclude_species_list.txt", "$newcontent"); - } - $file = './scripts/exclude_species_list.txt'; - $str = file_get_contents("$file"); - $str = preg_replace('/^\h*\v+/m', '', $str); - file_put_contents("$file", "$str"); + if(isset($_GET['species']) && (isset($_GET['add']) or isset($_GET['del']))){ + update_species_list("./scripts/exclude_species_list.txt", $_GET['species'], isset($_GET['add'])); } $species_list="exclude"; include('./scripts/species_list.php'); } if($_GET['view'] == "Whitelisted"){ ensure_authenticated(); - if(isset($_GET['species']) && isset($_GET['add'])){ - $file = './scripts/whitelist_species_list.txt'; - $str = file_get_contents("$file"); - $str = preg_replace("/(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+/", "\n", $str); - file_put_contents("$file", "$str"); - foreach ($_GET['species'] as $selectedOption) - file_put_contents("./scripts/whitelist_species_list.txt", htmlspecialchars_decode($selectedOption, ENT_QUOTES)."\n", FILE_APPEND); - } elseif (isset($_GET['species']) && isset($_GET['del'])){ - $file = './scripts/whitelist_species_list.txt'; - $str = file_get_contents("$file"); - $str = preg_replace('/^\h*\v+/m', '', $str); - file_put_contents("$file", "$str"); - foreach($_GET['species'] as $selectedOption) { - $content = file_get_contents("./scripts/whitelist_species_list.txt"); - $newcontent = str_replace($selectedOption, "", "$content"); - $newcontent = str_replace(htmlspecialchars_decode($selectedOption, ENT_QUOTES), "", "$content"); - file_put_contents("./scripts/whitelist_species_list.txt", "$newcontent"); - } - $file = './scripts/whitelist_species_list.txt'; - $str = file_get_contents("$file"); - $str = preg_replace('/^\h*\v+/m', '', $str); - file_put_contents("$file", "$str"); + if(isset($_GET['species']) && (isset($_GET['add']) or isset($_GET['del']))){ + update_species_list("./scripts/whitelist_species_list.txt", $_GET['species'], isset($_GET['add'])); } $species_list="whitelist"; include('./scripts/species_list.php');