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();
+}
+?>
+
+
+
+
إعدادات الجمعية
+
+
+
+
= $success_msg ?>
+
+
+
+
+
+
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()) {
إدارة المستخدمين
+
+
+ إعدادات الجمعية
+
+
@@ -172,4 +177,4 @@ if (isLoggedIn()) {
-
+
\ No newline at end of file
diff --git a/profile.php b/profile.php
index 874a6be..0db5a49 100644
--- a/profile.php
+++ b/profile.php
@@ -10,13 +10,12 @@ $stmt = db()->prepare("SELECT * FROM users WHERE id = ?");
$stmt->execute([$user_id]);
$user = $stmt->fetch();
-// Fetch charity settings
-$stmt = db()->query("SELECT * FROM charity_settings WHERE id = 1");
-$charity = $stmt->fetch();
-
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
if (isset($_POST['update_profile'])) {
$full_name = $_POST['full_name'];
+ $email = $_POST['email'];
+ $phone = $_POST['phone'];
+ $address = $_POST['address'];
$password = $_POST['password'];
$profile_image = $user['profile_image'];
@@ -36,11 +35,11 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') {
if (!empty($password)) {
$hashed_password = password_hash($password, PASSWORD_DEFAULT);
- $stmt = db()->prepare("UPDATE users SET full_name = ?, password = ?, profile_image = ? WHERE id = ?");
- $stmt->execute([$full_name, $hashed_password, $profile_image, $user_id]);
+ $stmt = db()->prepare("UPDATE users SET full_name = ?, email = ?, phone = ?, address = ?, password = ?, profile_image = ? WHERE id = ?");
+ $stmt->execute([$full_name, $email, $phone, $address, $hashed_password, $profile_image, $user_id]);
} else {
- $stmt = db()->prepare("UPDATE users SET full_name = ?, profile_image = ? WHERE id = ?");
- $stmt->execute([$full_name, $profile_image, $user_id]);
+ $stmt = db()->prepare("UPDATE users SET full_name = ?, email = ?, phone = ?, address = ?, profile_image = ? WHERE id = ?");
+ $stmt->execute([$full_name, $email, $phone, $address, $profile_image, $user_id]);
}
$success_msg = 'تم تحديث الملف الشخصي بنجاح';
// Refresh user data
@@ -48,118 +47,68 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$stmt->execute([$user_id]);
$user = $stmt->fetch();
}
-
- if (isset($_POST['update_charity']) && isAdmin()) {
- $charity_name = $_POST['charity_name'];
- $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_logo = ?, charity_favicon = ? WHERE id = 1");
- $stmt->execute([$charity_name, $charity_logo, $charity_favicon]);
- $success_msg = 'تم تحديث إعدادات الجمعية بنجاح';
-
- // Refresh charity data
- $stmt = db()->query("SELECT * FROM charity_settings WHERE id = 1");
- $charity = $stmt->fetch();
- }
}
?>
-
الملف الشخصي والإعدادات
+ الملف الشخصي
= $success_msg ?>
-
-
= $error_msg ?>
-
-
+
تعديل الملف الشخصي