From 6d5518a7b701a3aab673598a5b0eb9f94c1c7251 Mon Sep 17 00:00:00 2001 From: Flatlogic Bot Date: Fri, 27 Feb 2026 17:45:49 +0000 Subject: [PATCH] Autosave: 20260227-174549 --- charity-settings.php | 117 +++++++++++++++++ db/migrations/003_add_fields_to_profiles.sql | 10 ++ includes/header.php | 7 +- profile.php | 129 ++++++------------- uploads/charity/favicon_1772214262.jpg | Bin 0 -> 24875 bytes uploads/charity/favicon_1772214275.jpg | Bin 0 -> 24875 bytes uploads/charity/logo_1772214243.jpg | Bin 0 -> 24875 bytes 7 files changed, 172 insertions(+), 91 deletions(-) create mode 100644 charity-settings.php create mode 100644 db/migrations/003_add_fields_to_profiles.sql create mode 100644 uploads/charity/favicon_1772214262.jpg create mode 100644 uploads/charity/favicon_1772214275.jpg create mode 100644 uploads/charity/logo_1772214243.jpg diff --git a/charity-settings.php b/charity-settings.php new file mode 100644 index 0000000..63c0164 --- /dev/null +++ b/charity-settings.php @@ -0,0 +1,117 @@ +query("SELECT * FROM charity_settings WHERE id = 1"); +$charity = $stmt->fetch(); + +if ($_SERVER['REQUEST_METHOD'] === 'POST') { + $charity_name = $_POST['charity_name']; + $charity_email = $_POST['charity_email']; + $charity_phone = $_POST['charity_phone']; + $charity_address = $_POST['charity_address']; + $charity_logo = $charity['charity_logo']; + $charity_favicon = $charity['charity_favicon']; + + $upload_dir = 'uploads/charity/'; + if (!is_dir($upload_dir)) mkdir($upload_dir, 0775, true); + + // Handle Logo Upload + if (isset($_FILES['charity_logo']) && $_FILES['charity_logo']['error'] === UPLOAD_ERR_OK) { + $file_ext = pathinfo($_FILES['charity_logo']['name'], PATHINFO_EXTENSION); + $new_logo = 'logo_' . time() . '.' . $file_ext; + if (move_uploaded_file($_FILES['charity_logo']['tmp_name'], $upload_dir . $new_logo)) { + $charity_logo = $upload_dir . $new_logo; + } + } + + // Handle Favicon Upload + if (isset($_FILES['charity_favicon']) && $_FILES['charity_favicon']['error'] === UPLOAD_ERR_OK) { + $file_ext = pathinfo($_FILES['charity_favicon']['name'], PATHINFO_EXTENSION); + $new_favicon = 'favicon_' . time() . '.' . $file_ext; + if (move_uploaded_file($_FILES['charity_favicon']['tmp_name'], $upload_dir . $new_favicon)) { + $charity_favicon = $upload_dir . $new_favicon; + } + } + + $stmt = db()->prepare("UPDATE charity_settings SET charity_name = ?, charity_email = ?, charity_phone = ?, charity_address = ?, charity_logo = ?, charity_favicon = ? WHERE id = 1"); + $stmt->execute([$charity_name, $charity_email, $charity_phone, $charity_address, $charity_logo, $charity_favicon]); + $success_msg = 'تم تحديث إعدادات الجمعية بنجاح'; + + // Refresh charity data + $stmt = db()->query("SELECT * FROM charity_settings WHERE id = 1"); + $charity = $stmt->fetch(); +} +?> + +
+
+

إعدادات الجمعية

+
+ + +
+ + +
+
+

بيانات الجمعية

+
+
+
+ + +
+
+ + +
+
+ +
+ + +
+ +
+ + +
+ +
+
+ + + +
+ Logo +
+ +
+
+ + + +
+ Favicon +
+ +
+
+ + +
+
+
+
+ + diff --git a/db/migrations/003_add_fields_to_profiles.sql b/db/migrations/003_add_fields_to_profiles.sql new file mode 100644 index 0000000..7ae59ef --- /dev/null +++ b/db/migrations/003_add_fields_to_profiles.sql @@ -0,0 +1,10 @@ +-- Migration: Add extra fields to User and Charity Profiles +ALTER TABLE users +ADD COLUMN email VARCHAR(255) DEFAULT NULL AFTER full_name, +ADD COLUMN phone VARCHAR(50) DEFAULT NULL AFTER email, +ADD COLUMN address TEXT DEFAULT NULL AFTER phone; + +ALTER TABLE charity_settings +ADD COLUMN charity_email VARCHAR(255) DEFAULT NULL AFTER charity_name, +ADD COLUMN charity_phone VARCHAR(50) DEFAULT NULL AFTER charity_email, +ADD COLUMN charity_address TEXT DEFAULT NULL AFTER charity_phone; diff --git a/includes/header.php b/includes/header.php index 4f6fbb6..7ce0fbe 100644 --- a/includes/header.php +++ b/includes/header.php @@ -156,6 +156,11 @@ if (isLoggedIn()) { إدارة المستخدمين +