diff --git a/admin/auth.php b/admin/auth.php new file mode 100644 index 0000000..b61bbee --- /dev/null +++ b/admin/auth.php @@ -0,0 +1,28 @@ + $admin_timeout)) { + session_unset(); + session_destroy(); + header('Location: ../login.php?timeout'); + exit(); +} + +// IP binding logic +if (isset($_SESSION['admin_ip_address']) && $_SESSION['admin_ip_address'] !== $_SERVER['REMOTE_ADDR']) { + session_unset(); + session_destroy(); + header('Location: ../login.php?ip_changed'); + exit(); +} + +$_SESSION['last_activity'] = time(); // Update last activity time diff --git a/admin/categories.php b/admin/categories.php index 06d720a..c95ed30 100644 --- a/admin/categories.php +++ b/admin/categories.php @@ -1,10 +1,5 @@ fetch()) { Categories Users Links + Settings diff --git a/admin/index.php b/admin/index.php index 147462f..5b98ac8 100644 --- a/admin/index.php +++ b/admin/index.php @@ -1,10 +1,5 @@ query("SELECT count(*) FROM categories")->fetchColumn(); Categories Users Links + Settings diff --git a/admin/links.php b/admin/links.php index bf27a83..268982c 100644 --- a/admin/links.php +++ b/admin/links.php @@ -1,10 +1,5 @@ query("SELECT sc.id, sc.name AS subcategory_name, c.name Categories Users Links + Settings diff --git a/admin/settings.php b/admin/settings.php new file mode 100644 index 0000000..6f1dc96 --- /dev/null +++ b/admin/settings.php @@ -0,0 +1,154 @@ + + + +
+ + +