جارٍ إنشاء نظام الجمعية وتفعيل البيئة الخاصة…
ر
رفاد
العودة للموقع
إنشاء جمعية جديدة — تفعيل فوري

أنشئ نظام جمعيتك خلال دقائق

املأ بيانات الجمعية، اختر الباقة المناسبة، وسيجري تفعيل النظام مباشرة للباقات المجانية، أو تحويلك إلى فاتورة دفع آمنة للباقات المدفوعة ثم تفعيل البيئة تلقائياً بعد السداد.

١
بيانات الجمعيةاسم الجهة + المسؤول + البريد
٢
اختيار الباقةنفس الأرقام المعتمدة في قاعدة المنصة
٣
تفعيل النظامرابط مستقل + مدير افتراضي + رسالة ترحيب
سيظهر هذا الاسم في لوحة الإدارة، وصفحة التبرع، ورسائل الترحيب.
يُنشأ لهذا المستخدم حساب مدير ابتدائي يمكنه استكمال الإعدادات وإضافة الفريق.
يُستخدم لإرسال بيانات الدخول ورسائل التفعيل والتنبيهات.
اختياري الآن، ومفيد لتجهيز التواصل والدعم لاحقاً.
.rafadapp.com
يسمح فقط بحروف إنجليزية صغيرة وأرقام وشرطة. سيتم حجزه كعنوان دائم لجمعيتك.
https://your-slug.rafadapp.com
ابدأ الآن
الأكثر طلباً
للنمو السريع
الأسعار والحدود الأساسية المعروضة هنا تُسحب من إعدادات المنصة نفسها، بحيث تبقى التسمية والسعة والفوترة متسقة بين صفحة التسجيل والتشغيل الفعلي.
الباقة التجريبية تُفعَّل مباشرة. الباقات المدفوعة تُحوَّل أولاً إلى فاتورة آمنة ثم تُفعَّل البيئة تلقائياً بعد تأكيد السداد.
ملخص ما سيحدث بعد التسجيل
حتى تكون التجربة احترافية وواضحة، هذه الخطوات تتم تلقائياً بمجرد إرسال الطلب.
الباقة المختارة حالياً
التجريبية
مجاناً14 يوم
200 تبرعالتبرعات
5 مستخدمالمستخدمون
2 مركبةالمركبات
بعد نجاح الإنشاء:
1) يُنشأ subdomain مستقل للجمعية.
2) يُنشأ حساب المدير الافتراضي باسم admin.
3) تُجهّز قاعدة البيانات الخاصة بالعميل وتُربط بالمنصة.
4) تصبح الجمعية جاهزة للدخول والتهيئة الأولية.
// الحل: استبدال [plan.id, plan])); function arabicToSlug(str) { const map = { 'ا':'a','أ':'a','إ':'a','آ':'a','ب':'b','ت':'t','ث':'th','ج':'j','ح':'h','خ':'kh', 'د':'d','ذ':'th','ر':'r','ز':'z','س':'s','ش':'sh','ص':'s','ض':'d','ط':'t','ظ':'z', 'ع':'a','غ':'gh','ف':'f','ق':'q','ك':'k','ل':'l','م':'m','ن':'n','ه':'h','و':'w', 'ي':'y','ة':'h','ى':'a','ئ':'y','ء':'a',' ':'-' }; return String(str || '') .toLowerCase() .split('') .map((ch) => map[ch] || (/^[a-z0-9-]$/.test(ch) ? ch : '')) .join('') .replace(/-+/g, '-') .replace(/^-|-$/g, '') .slice(0, 40); } function updateSlugPreview() { const safe = slugEl.value.trim() || 'your-slug'; slugPreviewEl.textContent = `https://${safe}.rafadapp.com`; } function formatLimit(value, suffix) { return Number(value) === -1 ? 'غير محدود' : `${value} ${suffix}`; } function formatPrice(plan) { if (!plan || Number(plan.price_monthly_halalas || 0) === 0) return 'مجاناً'; return `${Math.round(Number(plan.price_monthly_halalas || 0) / 100)} ر.س`; } function syncPlanSummary(planId) { const plan = planIndex[planId]; if (!plan) return; document.getElementById('selectedPlanName').textContent = plan.name_ar; document.getElementById('selectedPlanPrice').textContent = formatPrice(plan); document.getElementById('selectedPlanLabel').textContent = Number(plan.price_monthly_halalas || 0) === 0 ? '14 يوم' : 'شهرياً'; document.getElementById('selectedPlanDonations').textContent = formatLimit(plan.max_donations_month, 'تبرع'); document.getElementById('selectedPlanUsers').textContent = formatLimit(plan.max_users, 'مستخدم'); document.getElementById('selectedPlanVehicles').textContent = formatLimit(plan.max_vehicles, 'مركبة'); document.querySelectorAll('[data-plan-card]').forEach((el) => { el.classList.toggle('active', el.getAttribute('data-plan-card') === planId); }); } if (!slugManuallyEdited) { nameEl.addEventListener('input', () => { if (slugManuallyEdited) return; slugEl.value = arabicToSlug(nameEl.value); updateSlugPreview(); }); } slugEl.addEventListener('input', () => { slugManuallyEdited = true; slugEl.value = slugEl.value.toLowerCase().replace(/[^a-z0-9-]/g, '').replace(/-+/g, '-').slice(0, 63); updateSlugPreview(); }); document.querySelectorAll('input[name="plan"]').forEach((radio) => { radio.addEventListener('change', () => syncPlanSummary(radio.value)); }); document.querySelectorAll('[data-plan-card]').forEach((card) => { card.addEventListener('click', () => { const planId = card.getAttribute('data-plan-card'); const radio = document.getElementById(`plan_${planId}`); if (!radio) return; radio.checked = true; syncPlanSummary(planId); }); }); regForm.addEventListener('submit', () => { submitBtn.disabled = true; document.getElementById('loadingOverlay').classList.add('show'); }); updateSlugPreview(); const initiallyCheckedPlan = document.querySelector('input[name="plan"]:checked'); syncPlanSummary(initiallyCheckedPlan ? initiallyCheckedPlan.value : 'trial');