From d7cdb9431681f6d435b0249c55330352e9a89063 Mon Sep 17 00:00:00 2001
From: Valentin <43043885+itsmrval@users.noreply.github.com>
Date: Fri, 14 Jun 2024 10:48:27 +0200
Subject: [PATCH] fix(public) better structure
---
README.MD | 2 +-
components/account/main.php | 73 ++++++++++++++++++
components/admin/main.php | 73 ++++++++++++++++++
components/admin/modal.php | 33 ++++++++
components/admin/users_list.php | 30 +++++++
components/homepage/line.php | 2 +-
components/homepage/main.php | 4 +-
components/login/main.php | 2 +-
components/navigate/main.php | 4 +-
components/register/main.php | 2 -
.../structure}/footer.php | 0
.../structure}/header.php | 2 +-
{structure => components/structure}/main.php | 10 +--
.../structure}/navbar.php | 6 +-
index.php | 5 --
login.php | 4 -
navigate.php | 4 -
public/account.php | 4 +
public/admin.php | 4 +
{assets => public/assets}/css/login.css | 0
{assets => public/assets}/lines/1.svg | 0
{assets => public/assets}/lines/10.svg | 0
{assets => public/assets}/lines/11.svg | 0
{assets => public/assets}/lines/12.svg | 0
{assets => public/assets}/lines/13.svg | 0
{assets => public/assets}/lines/14.svg | 0
{assets => public/assets}/lines/2.svg | 0
{assets => public/assets}/lines/3.svg | 0
{assets => public/assets}/lines/4.svg | 0
{assets => public/assets}/lines/5.svg | 0
{assets => public/assets}/lines/6.svg | 0
{assets => public/assets}/lines/7.svg | 0
{assets => public/assets}/lines/7b.svg | 0
{assets => public/assets}/lines/8.svg | 0
{assets => public/assets}/lines/9.svg | 0
{assets => public/assets}/lines/m.svg | 0
{assets => public/assets}/logo/dark.png | Bin
{assets => public/assets}/logo/purple.png | Bin
public/index.php | 4 +
public/login.php | 4 +
logout.php => public/logout.php | 0
public/navigate.php | 4 +
public/register.php | 4 +
{endpoints => public}/updateFavorite.php | 4 +-
register.php | 4 -
45 files changed, 252 insertions(+), 36 deletions(-)
create mode 100644 components/account/main.php
create mode 100644 components/admin/main.php
create mode 100644 components/admin/modal.php
create mode 100644 components/admin/users_list.php
rename {structure => components/structure}/footer.php (100%)
rename {structure => components/structure}/header.php (94%)
rename {structure => components/structure}/main.php (76%)
rename {structure => components/structure}/navbar.php (81%)
delete mode 100644 index.php
delete mode 100644 login.php
delete mode 100644 navigate.php
create mode 100644 public/account.php
create mode 100644 public/admin.php
rename {assets => public/assets}/css/login.css (100%)
rename {assets => public/assets}/lines/1.svg (100%)
rename {assets => public/assets}/lines/10.svg (100%)
rename {assets => public/assets}/lines/11.svg (100%)
rename {assets => public/assets}/lines/12.svg (100%)
rename {assets => public/assets}/lines/13.svg (100%)
rename {assets => public/assets}/lines/14.svg (100%)
rename {assets => public/assets}/lines/2.svg (100%)
rename {assets => public/assets}/lines/3.svg (100%)
rename {assets => public/assets}/lines/4.svg (100%)
rename {assets => public/assets}/lines/5.svg (100%)
rename {assets => public/assets}/lines/6.svg (100%)
rename {assets => public/assets}/lines/7.svg (100%)
rename {assets => public/assets}/lines/7b.svg (100%)
rename {assets => public/assets}/lines/8.svg (100%)
rename {assets => public/assets}/lines/9.svg (100%)
rename {assets => public/assets}/lines/m.svg (100%)
rename {assets => public/assets}/logo/dark.png (100%)
rename {assets => public/assets}/logo/purple.png (100%)
create mode 100644 public/index.php
create mode 100644 public/login.php
rename logout.php => public/logout.php (100%)
create mode 100644 public/navigate.php
create mode 100644 public/register.php
rename {endpoints => public}/updateFavorite.php (91%)
delete mode 100644 register.php
diff --git a/README.MD b/README.MD
index 1c3ea05..5ef95db 100644
--- a/README.MD
+++ b/README.MD
@@ -23,7 +23,7 @@
-
+Note: This app is not intended for production use, but for personal or educational purposes.
### Built With
diff --git a/components/account/main.php b/components/account/main.php
new file mode 100644
index 0000000..62cf702
--- /dev/null
+++ b/components/account/main.php
@@ -0,0 +1,73 @@
+prepare("SELECT email, firstName, lastName FROM users WHERE id = ?");
+ $query->execute([$userId]);
+ return $query->fetch(PDO::FETCH_ASSOC);
+ } catch(PDOException $e) {
+ return null;
+ }
+}
+
+function updateUserDetails($userId, $email, $firstName, $lastName, $password = null) {
+ global $conn;
+ try {
+ if ($password) {
+ $query = $conn->prepare("UPDATE users SET email = ?, firstName = ?, lastName = ?, password = ? WHERE id = ?");
+ $hashedPassword = password_hash($password, PASSWORD_DEFAULT);
+ $query->execute([$email, $firstName, $lastName, $hashedPassword, $userId]);
+ } else {
+ $query = $conn->prepare("UPDATE users SET email = ?, firstName = ?, lastName = ? WHERE id = ?");
+ $query->execute([$email, $firstName, $lastName, $userId]);
+ }
+ return true;
+ } catch(PDOException $e) {
+ return false;
+ }
+}
+
+if ($_SERVER['REQUEST_METHOD'] === 'POST') {
+ $success = updateUserDetails($_SESSION['user_id'], $_POST['email'], $_POST['firstName'], $_POST['lastName'], $_POST['password']);
+
+ if ($success) {
+ $_SESSION['message'] = '
| # | +First Name | +Last Name | ++ | |
|---|---|---|---|---|
| + | + | + | + | + + | +