From db285a4be28e6da35be65424b2f324dd04e9becf Mon Sep 17 00:00:00 2001 From: Georgi Nikolov Date: Sat, 25 Jan 2025 15:23:14 +0200 Subject: Handled the search url not existing --- controllers/archive.php | 36 ++++++++++++++++++++++++++++++++++++ views/archive/index.php | 6 ++++++ 2 files changed, 42 insertions(+) diff --git a/controllers/archive.php b/controllers/archive.php index a54387b..dc72045 100644 --- a/controllers/archive.php +++ b/controllers/archive.php @@ -8,3 +8,39 @@ function on_get() { } catch(Exception $e) {} } + +function applyCorrectProtocol($url, $protocol) : string { + if (str_contains($url, $protocol)) { + return $url; + } + return $protocol . $url; +} + +function doesWebsiteExist($url) : bool { + // Check if the site exists with https + $https_url = applyCorrectProtocol($url, "https://"); + if ($https_url != $url) { + $url_headers = @get_headers($https_url); + if ($url_headers && $url_headers[0] != 'HTTP/1.1 404 Not Found') { + return true; + } + } + + // Check if the site exists with http + $http_url = applyCorrectProtocol($url, "http://"); + if ($http_url != $url) { + $url_headers = @get_headers($http_url); + if ($url_headers && $url_headers[0] != 'HTTP/1.1 404 Not Found') { + return true; + } + } + + // Check if the site exists as is + // Will take effect when the user has entered the https/http protocol with the site + $url_headers = @get_headers($url); + if ($url_headers && $url_headers[0] != 'HTTP/1.1 404 Not Found') { + return true; + } + + return false; +} diff --git a/views/archive/index.php b/views/archive/index.php index 7aba050..d30ddf2 100644 --- a/views/archive/index.php +++ b/views/archive/index.php @@ -23,6 +23,12 @@ + +

"" Does not exist!

+

Submit another request or check the spelling of the site and try again

+ Go back! + +

"" hasn't been archived yet!

-- cgit v1.2.3