X-Git-Url: https://disinclined.org/git/?a=blobdiff_plain;f=includes%2Fcms.php;h=0f23b809a0fe5c7f9e3e57d77e2732d19e869946;hb=d75a756943bed249f77eebdb54df8a38c3803cd0;hp=955294185c47dfa2648b7dcc5fd9064422883fe0;hpb=bc994b51af187242bf4fda2c2abb364d7456907b;p=dylansserver.git diff --git a/includes/cms.php b/includes/cms.php index 9552941..0f23b80 100644 --- a/includes/cms.php +++ b/includes/cms.php @@ -31,13 +31,6 @@ abstract class cms { } } - protected function not_found() { - header("HTTP/1.0 404 Not Found"); - ob_end_clean(); - include("404.php"); - exit(); - } - public function query() { $args = func_get_args(); $statement = $this->db->prepare($args[0]); @@ -199,7 +192,7 @@ class project extends index { echo $text; echo ""; } else { - $this->not_found(); + throw new notFound(); } } } @@ -223,13 +216,13 @@ class page extends cms { if (isset($_GET['page']) && is_numeric($_GET['page'])) { $this->page = (int) $_GET['page']; } else { - $this->not_found(); + throw new notFound(); } if ($this->page > $this->number_of_pages) { - $this->not_found(); + throw new notFound(); } if ($this->page < 1) { - $this->not_found(); + throw new notFound(); } $this->offset = ($this->page - 1) * $this->notes_per_page; } @@ -290,7 +283,7 @@ class note extends cms { WHERE url = ?"; $results = $this->query($sql, "s", $_GET['note']); if ($results[0]["COUNT(*)"] != 1) { - $this->not_found(); + throw new notFound(); } } @@ -324,6 +317,15 @@ class note extends cms { } } +class notFound extends Exception { + public function __construct() { + header("HTTP/1.0 404 Not Found"); + ob_end_clean(); + include("404.php"); + exit(); + } +} + ## now actually do something: switch (cms::determine_type()) { case "index":