Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
Clubphp
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
Clubphp
Commits
3be93f73
Commit
3be93f73
authored
Apr 07, 2026
by
Administrator
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update 1 files via Son of Anton
parent
791d1875
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
124 additions
and
36 deletions
+124
-36
show.php
app/Modules/Members/Views/show.php
+124
-36
No files found.
app/Modules/Members/Views/show.php
View file @
3be93f73
...
...
@@ -3,6 +3,7 @@
<?php
$__template
->
section
(
'page_actions'
);
?>
<a
href=
"/members/
<?=
(
int
)
$member
->
id
?>
/edit"
class=
"btn btn-outline"
>
✏️ تعديل
</a>
<a
href=
"/audit/entity/members/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-outline"
>
📜 سجل المراجعة
</a>
<a
href=
"/members"
class=
"btn btn-outline"
>
← العودة
</a>
<?php
$__template
->
endSection
();
?>
...
...
@@ -12,6 +13,7 @@
$statusLabel
=
$member
->
getStatusLabel
();
$statusColor
=
$member
->
getStatusColor
();
$isInitialPhase
=
in_array
(
$member
->
status
,
[
'potential'
,
'under_review'
,
'interview_scheduled'
,
'accepted'
,
'payment_pending'
]);
$isActive
=
(
$member
->
status
===
'active'
);
?>
<!-- ═══════════════════════════════════════ -->
...
...
@@ -107,11 +109,7 @@ $isInitialPhase = in_array($member->status, ['potential', 'under_review', 'inter
<?php
endif
;
?>
</td>
<td
style=
"padding:10px;text-align:left;font-weight:600;direction:ltr;
<?=
$item
[
'included'
]
?
'color:#9CA3AF;text-decoration:line-through;'
:
''
?>
"
>
<?php
if
(
$item
[
'included'
])
:
?>
<?=
money
(
$item
[
'amount'
])
?>
<?php
else
:
?>
<?=
money
(
$item
[
'amount'
])
?>
<?php
endif
;
?>
<?=
money
(
$item
[
'amount'
])
?>
</td>
<td
style=
"padding:10px;text-align:center;"
>
<?php
if
(
$item
[
'paid'
])
:
?>
...
...
@@ -158,7 +156,6 @@ $isInitialPhase = in_array($member->status, ['potential', 'under_review', 'inter
<?php
if
(
bccomp
(
$bill
[
'total_pending'
],
'0'
,
2
)
>
0
&&
in_array
(
$member
->
status
,
[
'accepted'
,
'payment_pending'
]))
:
?>
<div
style=
"padding:20px;background:#FFF7ED;border-top:2px solid #F59E0B;"
>
<h4
style=
"margin:0 0 15px;color:#D97706;"
>
💰 اختر طريقة السداد
</h4>
<div
style=
"display:grid;grid-template-columns:1fr 1fr;gap:20px;"
>
<!-- Cash Full -->
<div
style=
"background:#fff;border:2px solid #059669;border-radius:12px;padding:20px;"
>
...
...
@@ -170,14 +167,11 @@ $isInitialPhase = in_array($member->status, ['potential', 'under_review', 'inter
<input
type=
"hidden"
name=
"payment_type"
value=
"membership_fee"
>
<input
type=
"hidden"
name=
"amount"
value=
"
<?=
e
(
$bill
[
'total_pending'
])
?>
"
>
<select
name=
"payment_method"
class=
"form-select"
style=
"margin-bottom:10px;"
>
<option
value=
"cash"
>
نقدي
</option>
<option
value=
"visa"
>
فيزا
</option>
<option
value=
"bank_transfer"
>
تحويل بنكي
</option>
<option
value=
"cash"
>
نقدي
</option><option
value=
"visa"
>
فيزا
</option><option
value=
"bank_transfer"
>
تحويل بنكي
</option>
</select>
<button
type=
"submit"
class=
"btn btn-primary"
style=
"width:100%;background:#059669;border-color:#059669;"
onclick=
"return confirm('تأكيد دفع
<?=
money
(
$bill
[
'total_pending'
])
?>
؟')"
>
ادفع الآن
</button>
</form>
</div>
<!-- Installment -->
<div
style=
"background:#fff;border:2px solid #0284C7;border-radius:12px;padding:20px;"
>
<h5
style=
"margin:0 0 10px;color:#0284C7;"
>
📅 تقسيط
</h5>
...
...
@@ -192,15 +186,14 @@ $isInitialPhase = in_array($member->status, ['potential', 'under_review', 'inter
?>
<table
style=
"width:100%;font-size:13px;margin-bottom:10px;"
>
<tr><td
style=
"color:#6B7280;"
>
المقدم (25%)
</td><td
style=
"text-align:left;font-weight:600;"
>
<?=
money
(
$minDown
)
?>
</td></tr>
<tr><td
style=
"color:#6B7280;"
>
الباقي
</td><td
style=
"text-align:left;"
>
<?=
money
(
$remaining
)
?>
</td></tr>
<tr><td
style=
"color:#6B7280;"
>
الفائدة (22%)
</td><td
style=
"text-align:left;color:#D97706;"
>
<?=
money
(
$interest
)
?>
</td></tr>
<tr><td
style=
"color:#6B7280;"
>
القسط
الشهري
(~30 شهر)
</td><td
style=
"text-align:left;font-weight:600;"
>
<?=
money
(
$monthlyEst
)
?>
</td></tr>
<tr><td
style=
"color:#6B7280;"
>
القسط (~30 شهر)
</td><td
style=
"text-align:left;font-weight:600;"
>
<?=
money
(
$monthlyEst
)
?>
</td></tr>
</table>
<form
method=
"POST"
action=
"/members/
<?=
(
int
)
$member
->
id
?>
/pay-membership"
>
<?=
csrf_field
()
?>
<input
type=
"hidden"
name=
"payment_type"
value=
"down_payment"
>
<div
class=
"form-group"
style=
"margin-bottom:10px;"
>
<label
class=
"form-label"
style=
"font-size:12px;"
>
المقدم (
الحد الأدنى
<?=
money
(
$minDown
)
?>
)
</label>
<label
class=
"form-label"
style=
"font-size:12px;"
>
المقدم (
≥
<?=
money
(
$minDown
)
?>
)
</label>
<input
type=
"number"
name=
"amount"
value=
"
<?=
e
(
$minDown
)
?>
"
min=
"
<?=
e
(
$minDown
)
?>
"
step=
"0.01"
class=
"form-input"
style=
"direction:ltr;text-align:left;"
required
>
</div>
<div
class=
"form-group"
style=
"margin-bottom:10px;"
>
...
...
@@ -208,17 +201,14 @@ $isInitialPhase = in_array($member->status, ['potential', 'under_review', 'inter
<input
type=
"number"
name=
"installment_months"
value=
"30"
min=
"1"
max=
"30"
class=
"form-input"
style=
"direction:ltr;text-align:left;"
>
</div>
<select
name=
"payment_method"
class=
"form-select"
style=
"margin-bottom:10px;"
>
<option
value=
"cash"
>
نقدي
</option>
<option
value=
"visa"
>
فيزا
</option>
<option
value=
"bank_transfer"
>
تحويل بنكي
</option>
<option
value=
"cash"
>
نقدي
</option><option
value=
"visa"
>
فيزا
</option><option
value=
"bank_transfer"
>
تحويل
</option>
</select>
<button
type=
"submit"
class=
"btn btn-primary"
style=
"width:100%;background:#0284C7;border-color:#0284C7;"
onclick=
"return confirm('تأكيد دفع المقدم؟')"
>
ادفع المقدم
</button>
</form>
</div>
</div>
<div
style=
"margin-top:15px;padding:10px;background:#FEF2F2;border-radius:8px;font-size:12px;color:#DC2626;"
>
⚠️ مهلة السداد: 15 يوم من تاريخ القبول — بعدها تنتهي الاستمارة
ويجب شراء استمارة جديدة
⚠️ مهلة السداد: 15 يوم من تاريخ القبول — بعدها تنتهي الاستمارة
</div>
</div>
<?php
elseif
(
$formFilled
&&
in_array
(
$member
->
status
,
[
'under_review'
,
'interview_scheduled'
]))
:
?>
...
...
@@ -243,6 +233,8 @@ $isInitialPhase = in_array($member->status, ['potential', 'under_review', 'inter
<tr><td
style=
"padding:5px 0;color:#6B7280;"
>
المؤهل
</td><td
style=
"padding:5px 0;"
>
<?=
e
(
$qualificationName
)
?>
</td></tr>
<tr><td
style=
"padding:5px 0;color:#6B7280;"
>
الحالة الاجتماعية
</td><td
style=
"padding:5px 0;"
>
<?=
e
(
$member
->
marital_status
??
'—'
)
?>
</td></tr>
<?php
if
(
$member
->
email
)
:
?>
<tr><td
style=
"padding:5px 0;color:#6B7280;"
>
البريد
</td><td
style=
"padding:5px 0;direction:ltr;text-align:right;"
>
<?=
e
(
$member
->
email
)
?>
</td></tr>
<?php
endif
;
?>
<?php
if
(
$member
->
residence_address
)
:
?>
<tr><td
style=
"padding:5px 0;color:#6B7280;"
>
العنوان
</td><td
style=
"padding:5px 0;"
>
<?=
e
(
$member
->
residence_address
)
?>
</td></tr>
<?php
endif
;
?>
<?php
if
(
$member
->
occupation
)
:
?>
<tr><td
style=
"padding:5px 0;color:#6B7280;"
>
المهنة
</td><td
style=
"padding:5px 0;"
>
<?=
e
(
$member
->
occupation
)
?>
</td></tr>
<?php
endif
;
?>
</table>
</div>
</div>
...
...
@@ -253,27 +245,126 @@ $isInitialPhase = in_array($member->status, ['potential', 'under_review', 'inter
<div
style=
"background:#F0FDF4;padding:15px;border-radius:8px;text-align:center;"
><div
style=
"font-size:20px;font-weight:700;color:#059669;"
>
<?=
money
(
$member
->
membership_value
??
'0'
)
?>
</div><div
style=
"color:#6B7280;font-size:11px;"
>
قيمة العضوية
</div></div>
<div
style=
"background:#EFF6FF;padding:15px;border-radius:8px;text-align:center;"
><div
style=
"font-size:20px;font-weight:700;color:#0284C7;"
>
<?=
money
(
$bill
[
'total_paid'
])
?>
</div><div
style=
"color:#6B7280;font-size:11px;"
>
إجمالي المدفوع
</div></div>
</div>
<a
href=
"/payments/member/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-outline"
style=
"width:100%;text-align:center;margin-top:10px;"
>
📜 سجل المدفوعات
</a>
</div>
</div>
</div>
<!-- Quick Actions -->
<div
class=
"card"
style=
"margin-bottom:20px;padding:15px;"
>
<h4
style=
"margin:0 0 10px;color:#6B7280;font-size:13px;"
>
إجراءات سريعة
</h4>
<div
style=
"display:flex;gap:10px;flex-wrap:wrap;"
>
<?php
if
(
$bill
[
'form_fee_paid'
]
&&
!
$formFilled
)
:
?>
<a
href=
"/members/
<?=
(
int
)
$member
->
id
?>
/fill-form"
class=
"btn btn-primary"
>
📝 ملء الاستمارة
</a>
<?php
endif
;
?>
<!-- ═══════════════════════════════════════════════ -->
<!-- ALL ACTIONS — organized by category -->
<!-- ═══════════════════════════════════════════════ -->
<div
class=
"card"
style=
"margin-bottom:20px;"
>
<div
style=
"padding:15px 20px;border-bottom:1px solid #E5E7EB;"
>
<h3
style=
"margin:0;color:#0D7377;font-size:15px;"
>
⚡ الإجراءات
</h3>
</div>
<div
style=
"padding:15px 20px;"
>
<!-- Registration & Form -->
<?php
if
(
$bill
[
'form_fee_paid'
]
&&
!
$formFilled
)
:
?>
<div
style=
"margin-bottom:15px;"
>
<div
style=
"font-size:12px;color:#6B7280;font-weight:600;margin-bottom:8px;text-transform:uppercase;"
>
📋 الاستمارة
</div>
<div
style=
"display:flex;gap:8px;flex-wrap:wrap;"
>
<a
href=
"/members/
<?=
(
int
)
$member
->
id
?>
/fill-form"
class=
"btn btn-primary"
>
📝 ملء الاستمارة
</a>
</div>
</div>
<?php
endif
;
?>
<!-- Family Management -->
<?php
if
(
$formFilled
)
:
?>
<div
style=
"margin-bottom:15px;"
>
<div
style=
"font-size:12px;color:#6B7280;font-weight:600;margin-bottom:8px;text-transform:uppercase;"
>
👨👩👧👦 الأسرة
</div>
<div
style=
"display:flex;gap:8px;flex-wrap:wrap;"
>
<a
href=
"/members/
<?=
(
int
)
$member
->
id
?>
/spouses/create"
class=
"btn btn-sm btn-outline"
>
💍 إضافة زوج/ة
</a>
<a
href=
"/members/
<?=
(
int
)
$member
->
id
?>
/children/create"
class=
"btn btn-sm btn-outline"
>
👶 إضافة ابن/ة
</a>
<a
href=
"/members/
<?=
(
int
)
$member
->
id
?>
/temporary/create"
class=
"btn btn-sm btn-outline"
>
👤 إضافة عضو مؤقت
</a>
</div>
</div>
<?php
endif
;
?>
<!-- Interview & Review -->
<?php
if
(
in_array
(
$member
->
status
,
[
'under_review'
,
'interview_scheduled'
,
'potential'
]))
:
?>
<div
style=
"margin-bottom:15px;"
>
<div
style=
"font-size:12px;color:#6B7280;font-weight:600;margin-bottom:8px;text-transform:uppercase;"
>
🗓️ المقابلة والمراجعة
</div>
<div
style=
"display:flex;gap:8px;flex-wrap:wrap;"
>
<a
href=
"/interviews/schedule/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-sm btn-outline"
>
🗓️ تحديد مقابلة
</a>
</div>
</div>
<?php
endif
;
?>
<!-- Financial -->
<div
style=
"margin-bottom:15px;"
>
<div
style=
"font-size:12px;color:#6B7280;font-weight:600;margin-bottom:8px;text-transform:uppercase;"
>
💰 المالية
</div>
<div
style=
"display:flex;gap:8px;flex-wrap:wrap;"
>
<a
href=
"/payments/process/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-sm btn-outline"
>
💰 تسجيل دفعة
</a>
<a
href=
"/payments/member/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-sm btn-outline"
>
📜 سجل المدفوعات
</a>
<?php
if
(
$isActive
)
:
?>
<a
href=
"/installments/create/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-sm btn-outline"
>
📅 خطة تقسيط
</a>
<a
href=
"/subscriptions/member/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-sm btn-outline"
>
🔄 الاشتراكات
</a>
<?php
endif
;
?>
</div>
</div>
<!-- Documents & Carnet -->
<?php
if
(
$formFilled
)
:
?>
<a
href=
"/members/
<?=
(
int
)
$member
->
id
?>
/spouses/create"
class=
"btn btn-outline"
>
💍 إضافة زوجة
</a>
<a
href=
"/members/
<?=
(
int
)
$member
->
id
?>
/children/create"
class=
"btn btn-outline"
>
👶 إضافة ابن/ة
</a>
<a
href=
"/documents/upload/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-outline"
>
📁 رفع مستندات
</a>
<div
style=
"margin-bottom:15px;"
>
<div
style=
"font-size:12px;color:#6B7280;font-weight:600;margin-bottom:8px;text-transform:uppercase;"
>
📁 المستندات والكارنيه
</div>
<div
style=
"display:flex;gap:8px;flex-wrap:wrap;"
>
<a
href=
"/documents/upload/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-sm btn-outline"
>
📁 رفع مستندات
</a>
<a
href=
"/documents/member/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-sm btn-outline"
>
📂 عرض المستندات
</a>
<?php
if
(
$isActive
)
:
?>
<a
href=
"/carnets/issue/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-sm btn-outline"
>
🪪 إصدار كارنيه
</a>
<?php
endif
;
?>
</div>
</div>
<?php
endif
;
?>
<!-- Special Memberships (active members only) -->
<?php
if
(
$isActive
)
:
?>
<div
style=
"margin-bottom:15px;"
>
<div
style=
"font-size:12px;color:#6B7280;font-weight:600;margin-bottom:8px;text-transform:uppercase;"
>
🏅 عضويات خاصة
</div>
<div
style=
"display:flex;gap:8px;flex-wrap:wrap;"
>
<a
href=
"/seasonal/create/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-sm btn-outline"
>
☀️ عضوية موسمية
</a>
<a
href=
"/members/
<?=
(
int
)
$member
->
id
?>
/sports/create"
class=
"btn btn-sm btn-outline"
>
🏆 عضوية رياضية
</a>
<a
href=
"/members/
<?=
(
int
)
$member
->
id
?>
/honorary/create"
class=
"btn btn-sm btn-outline"
>
⭐ عضوية شرفية
</a>
<a
href=
"/members/
<?=
(
int
)
$member
->
id
?>
/foreign/create"
class=
"btn btn-sm btn-outline"
>
🌍 عضوية أجنبية
</a>
</div>
</div>
<?php
endif
;
?>
<?php
if
(
in_array
(
$member
->
status
,
[
'under_review'
,
'interview_scheduled'
]))
:
?>
<a
href=
"/interviews/schedule/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-outline"
>
🗓️ تحديد مقابلة
</a>
<!-- Violations & Fines (active members only) -->
<?php
if
(
$isActive
)
:
?>
<div
style=
"margin-bottom:15px;"
>
<div
style=
"font-size:12px;color:#6B7280;font-weight:600;margin-bottom:8px;text-transform:uppercase;"
>
⚠️ المخالفات والغرامات
</div>
<div
style=
"display:flex;gap:8px;flex-wrap:wrap;"
>
<a
href=
"/violations/create/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-sm btn-outline"
style=
"color:#DC2626;border-color:#DC2626;"
>
⚠️ تسجيل مخالفة
</a>
</div>
</div>
<?php
endif
;
?>
<?php
if
(
$member
->
status
===
'active'
)
:
?>
<a
href=
"/carnets/issue/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-outline"
>
🪪 إصدار كارنيه
</a>
<a
href=
"/payments/process/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-outline"
>
💰 تسجيل دفعة
</a>
<!-- Life Events (active members only) -->
<?php
if
(
$isActive
)
:
?>
<div
style=
"margin-bottom:15px;"
>
<div
style=
"font-size:12px;color:#6B7280;font-weight:600;margin-bottom:8px;text-transform:uppercase;"
>
🔀 التحويلات وأحداث الحياة
</div>
<div
style=
"display:flex;gap:8px;flex-wrap:wrap;"
>
<a
href=
"/transfers/create/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-sm btn-outline"
>
🔀 طلب تحويل/فصل
</a>
<a
href=
"/divorce/create/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-sm btn-outline"
>
💔 تسجيل طلاق
</a>
<a
href=
"/death/create/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-sm btn-outline"
style=
"color:#6B7280;"
>
🕊️ تسجيل وفاة
</a>
<a
href=
"/waiver/create/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-sm btn-outline"
>
📤 طلب تنازل
</a>
</div>
</div>
<?php
endif
;
?>
<!-- Archive & Audit -->
<div
style=
"margin-bottom:0;"
>
<div
style=
"font-size:12px;color:#6B7280;font-weight:600;margin-bottom:8px;text-transform:uppercase;"
>
🗄️ الأرشيف والمراجعة
</div>
<div
style=
"display:flex;gap:8px;flex-wrap:wrap;"
>
<a
href=
"/audit/entity/members/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-sm btn-outline"
>
📜 سجل المراجعة
</a>
<a
href=
"/archive/entity/members/
<?=
(
int
)
$member
->
id
?>
"
class=
"btn btn-sm btn-outline"
>
🗄️ اللقطات الأرشيفية
</a>
<?php
if
(
$member
->
membership_number
)
:
?>
<a
href=
"/archive/number-chain/
<?=
urlencode
(
$member
->
membership_number
)
?>
"
class=
"btn btn-sm btn-outline"
>
🔗 سلسلة رقم العضوية
</a>
<?php
endif
;
?>
</div>
</div>
</div>
</div>
...
...
@@ -292,11 +383,8 @@ $isInitialPhase = in_array($member->status, ['potential', 'under_review', 'inter
<td
style=
"direction:ltr;text-align:right;font-size:12px;"
>
<?=
e
(
$s
[
'national_id'
]
??
'—'
)
?>
</td>
<td
style=
"font-weight:600;"
>
<?php
$fee
=
$s
[
'addition_fee'
]
??
'0.00'
;
if
(
bccomp
(
$fee
,
'0'
,
2
)
<=
0
&&
(
int
)
$s
[
'spouse_order'
]
===
1
)
{
echo
'<span style="color:#059669;">مشمولة</span>'
;
}
else
{
echo
money
(
$fee
);
}
if
(
bccomp
(
$fee
,
'0'
,
2
)
<=
0
&&
(
int
)
$s
[
'spouse_order'
]
===
1
)
echo
'<span style="color:#059669;">مشمولة</span>'
;
else
echo
money
(
$fee
);
?>
</td>
<td><span
style=
"color:
<?=
$s
[
'status'
]
===
'active'
?
'#059669'
:
'#DC2626'
?>
;font-weight:600;"
>
●
<?=
$s
[
'status'
]
===
'active'
?
'نشط'
:
$s
[
'status'
]
?>
</span></td>
<td><a
href=
"/members/
<?=
(
int
)
$member
->
id
?>
/spouses/
<?=
(
int
)
$s
[
'id'
]
?>
"
class=
"btn btn-sm btn-outline"
>
عرض
</a></td>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment