سكربت MyAds متقدم للشبكات الاجتماعية وتبادل الإعلانات بين أصحاب المواقع

mrghozzi

عضو جديد
عضو انكور
سكربت PHP متقدم للشبكات الاجتماعية وتبادل الإعلانات بين أصحاب المواقع، يعمل الآن بواسطة إطار عمل Laravel 12.


MYADS

  • اسم البرنامج: MYADS
  • المبرمج: MrGhozzi
  • إطار العمل: Laravel 12+



🚀 المميزات الجديدة​


  • سوق الخدمات (Services Marketplace): نظام احترافي لنشر طلبات الخدمات، تلقي عروض الأسعار، تتبع التنفيذ، ونظام تقييم متبادل.
  • نظام الفوترة والاشتراكات (Billing System): دعم العضويات المدفوعة مع بوابات دفع متكاملة (Stripe, PayPal, Bank Transfer) وإدارة كاملة للطلبات.
  • منصة المطورين (Developer Platform): دعم كامل لبروتوكول OAuth 2.0 لإتاحة بناء تطبيقات خارجية متكاملة مع المنصة.
  • جناح الأمان المتقدم: نظام حظر IP، مراقبة جلسات الأعضاء النشطة مع إمكانية الإنهاء عن بعد، وتشفير اختياري للرسائل الخاصة.
  • محرك SEO متكامل: لوحة تحكم مركزية لـ SEO، توليد خرائط الموقع (Sitemaps) الضخمة، وإحصائيات مفصلة للزيارات والزواحف.
  • إدارة البريد الذكية: إمكانية تعديل إعدادات SMTP والبريد مباشرة من قاعدة البيانات عبر لوحة التحكم.



🚀 المميزات الأساسية​


👤 الأعضاء​


  • تبادل الإعلانات: تبادل الزيارات، الإعلانات النصية، و البنرات الإعلانية، و الإعلانات الذكية (Smart Ads).
  • شبكة اجتماعية: نظام ملف شخصي كامل، نظام متابعة، ورسائل خاصة مشفرة، ومنشورات تفاعلية (نص، صور، روابط).
  • المتجر (Marketplace): متجر لتحميل السكربتات، الإضافات، والقوالب مع دعم التحديثات.
  • المجتمع: منتدى متطور، مجموعات متخصصة، و قاعدة معرفية (Wiki) تدعم Markdown.
  • نظام النقاط (PTS): نظام مكافآت متكامل (Gamification) مع أوسمة (Badges) ومهام يومية (Quests).

🛠 الإدارة​


  • لوحة تحكم Duralux: واجهة إدارة احترافية مع إحصائيات حية ورسوم بيانية (Chart.js).
  • نظام الإضافات والقوالب: تثبيت وتحديث الإضافات والقوالب بنقرة واحدة مباشرة من المتجر الرسمي.
  • تنبيهات الإدارة: نظام تنبيهات مركزي في لوحة التحكم لمتابعة طلبات الفوترة، البلاغات، والتحديثات.
  • التحكم والخصوصية: إدارة كاملة للأعضاء، الخصوصية (GDPR)، المحتوى، والتعليقات.



⚡ التقنيات المستخدمة​


  • الخلفية (Backend): Laravel 12 (PHP 8.2+)
  • قاعدة البيانات: MySQL / MariaDB (UTF8mb4)
  • الواجهة (Frontend): Bootstrap 5, Vanilla JS, IntersectionObserver, StackEdit (Markdown).
  • الأمان: تشفير Bcrypt/Argon2، حماية CSRF/XSS، وتشفير البيانات الحساسة (AES-256).


بعض الأمثلة

1777067447818.png 1777067503538.png 1777067544002.png 1777067585636.png 1777067625614.png 1777067675939.png 1777067701663.png 1777067727311.png


💾 التحميل​

مباشر من github : https://github.com/mrghozzi/myads/releases
أو من موقع ADStn : https://www.adstn.ovh/store/myads


⚙️ التثبيت​


تثبيت جديد​


  1. المتطلبات: PHP 8.2+، MySQL 5.7+، إضافات (PDO, cURL, OpenSSL, BCMath).
  2. الرفع: قم برفع الملفات وتوجيه النطاق إلى مجلد public.
  3. المثبت: انتقل إلى your-domain.com/install واتبع الخطوات لإعداد قاعدة البيانات وحساب المدير.



🗺 خارطة الطريق​


  • ✅ التسجيل الاجتماعي: التكامل مع Facebook/Google.
  • ✅ بوابات الدفع: دمج PayPal/Stripe/التحويل البنكي.
  • ✅ API المطورين: إطلاق منصة المطورين مع OAuth 2.0.
  • ✅ محرك SEO: جناح كامل لتحسين الأرشفة والتحليلات.
  • ✅ نظام المجموعات المتقدم: تحسينات إضافية للمجموعات الخاصة والعامة.
  • 🔹 تطبيق الهاتف: واجهة API مخصصة لتطبيقات Flutter/React Native.
  • 🔹 الوقت الفعلي: دعم كامل للـ WebSockets للتنبيهات والدردشة الفورية.
 

المرفقات

التعديل الأخير بواسطة المشرف:
السكربت في تطور مذهل ومتعوب عليه ومليء بالابداع
يعطيك العافية اخي
ومرحبًا بك من جديد

رفعت السكربت بالمرفقات لحفظ الملفات من بعد اذنك
 
كاني بتصفح موقع تواصل اجتماعي
هذا ما يجب ان يتوجه له اصحاب السكربتات الكبيرة
دام عطاؤك
 
السكربت في تطور مذهل ومتعوب عليه ومليء بالابداع
يعطيك العافية اخي
ومرحبًا بك من جديد

رفعت السكربت بالمرفقات لحفظ الملفات من بعد اذنك
شكرا :love:

كاني بتصفح موقع تواصل اجتماعي
هذا ما يجب ان يتوجه له اصحاب السكربتات الكبيرة
دام عطاؤك
شكرا :love:
 
تحديث v4.3.1

إصدار صيانة — استقرار OAuth، تحسينات CSRF، وتكوين بريد المدير.

إعادة بناء نظام الرسائل​


  • ميزة: إعادة بناء كاملة لواجهة وحدة الرسائل لتصبح متجاوبة، حديثة، وذات تصميم موحد (_page.blade.php, messages.css)؛ مما يحسن تجربة القراءة على أجهزة الكمبيوتر والهواتف المحمولة.
  • ميزة: استبدال روابط التنقل التقليدية بين الصفحات بنظام التمرير اللانهائي (AJAX Infinite Scroll) لقائمة المحادثات في الشريط الجانبي (messages-app.js).
  • ميزة: إضافة منطق الدمج الذكي (Smart Merge) أثناء التحديث التلقائي في الخلفية؛ لدفع الرسائل الجديدة الواردة إلى الأعلى مع الحفاظ على سجل المحادثة الذي يتصفحه المستخدم حالياً، لضمان تنقل غير منقطع.
  • ميزة: دمج إشعار صوتي (pop.wav) يعمل تلقائياً عند استلام تنبيه برسالة جديدة، مع تحسين التحميل المسبق لتقليل قيود التشغيل التلقائي في المتصفحات.
  • ميزة: ترقية "منقي الرموز التعبيرية" (Emoji Picker) ليصبح منبثقاً بتصميم شبكي متجاوب ومتوافق مع سمة الموقع (Theme). تم توسيع المكتبة لتشمل مئات الرموز التعبيرية، وتطبيق فلتر دقيق للأعلام وفقاً لسياسات المنصة.
  • إصلاح: حل مشكلة تكرار الأسماء في الشريط الجانبي للتمرير اللانهائي عن طريق استخدام سمات data-name الفريدة لإزالة تكرار عناصر DOM، متجاوزاً بذلك عدم اتساق مفاتيح التشفير أثناء إعادة رندر AJAX.

إعدادات البريد (تعتمد على قاعدة البيانات)​


  • ميزة: ترحيل تكوين البريد من ملف .env الثابت إلى صفحة إدارة مخصصة تعتمد على قاعدة البيانات في المسار /admin/settings/mail؛ مما يسمح بتغيير إعدادات البريد في وقت التشغيل دون الحاجة لتعديل ملفات السيرفر.
  • إضافة: إنشاء جدول أحادي (Singleton) باسم mail_settings لتخزين بروتوكول البريد، المضيف، المنفذ، اسم المستخدم، كلمة المرور (مشفرة عبر Crypt)، التشفير، عنوان المرسل، واسم المرسل.
  • إضافة: إدخال MailConfigServiceProvider الذي يبدأ العمل مبكراً ليقوم بتجاوز إعدادات Laravel الافتراضية config('mail.*') من قاعدة البيانات، مع العودة التلقائية للإعدادات الافتراضية في config/mail.php في حال فقدان الجدول أو كونه فارغاً.
  • إضافة: بناء نموذج إدارة بتصميم Duralux مع ميزة التبديل الديناميكي لقسم SMTP عبر JavaScript (إظهار/إخفاء بناءً على المشغل المختار)، ومنطق "الحفاظ على كلمة المرور القديمة في حال ترك الحقل فارغاً"، والتحقق الشرطي من الحقول.
  • تنظيف: إزالة حقول SMTP القديمة من /admin/settings/system وحذف منطق الكتابة في ملف .env من AdminController::updateSystemSettings()، واستبدالها برابط يحول إلى الصفحة الجديدة المخصصة.
  • الأمن: يتم تخزين كلمة مرور البريد مشفرة في قاعدة البيانات باستخدام Crypt الخاص بـ Laravel ولا يتم عرضها أبداً في نموذج الإدارة؛ كما أن إرسال حقل كلمة مرور فارغ يحافظ على القيمة المخزنة الحالية.
  • التدويل (i18n): إضافة 18 مفتاح ترجمة لإعدادات البريد عبر جميع اللغات التسع المدعومة، مع ترجمة كاملة للعربية والفارسية.

الأداء والإحصائيات​


  • الأداء: استبدال استرجاع البيانات الكامل بنظام تقسيم الصفحات من جهة الخادم (Server-side Pagination) بواقع paginate(50) لجميع صفحات الإحصائيات (/state). هذا يزيل تأخير التحميل الكبير للمستخدمين الذين لديهم بيانات زيارات ضخمة مع الحفاظ على سهولة الوصول للبيانات التاريخية عبر روابط Bootstrap 5.
  • ميزة: تقديم نظام دقيق للتحكم في رؤية عنوان IP في لوحة تحكم إعدادات الإعلانات. يمكن للمديرين الآن تقييد رؤية عناوين IP للزوار في الإحصائيات لتكون متاحة لـ: الجميع، جميع الأعضاء المشتركين، خطط اشتراك محددة، المديرين فقط، أو تعطيلها تماماً للخصوصية.
  • إعادة هيكلة: فرض تنسيق تقسيم صفحات Bootstrap 5 عالمياً عبر AppServiceProvider لضمان اتساق بصري في جميع الوحدات، بما في ذلك وحدات الإحصائيات والرسائل المحدثة.
  • التدويل (i18n): إضافة مفاتيح ترجمة "رؤية عنوان IP" للغتين الإنجليزية والعربية لدعم خيارات الإدارة الجديدة.

الفواتير وبوابات الدفع​


  • ميزة: دمج Lemon Squeezy كبوابة دفع مدعومة بالكامل لنظام الاشتراكات والخطط المدفوعة، ومعالجة جلسات الدفع عبر JSON:API.
  • ميزة: إضافة تكوين ديناميكي لبوابة Lemon Squeezy في لوحة الإدارة (/admin/billing/gateways)، مع دعم إعداد معرف المتجر (Store ID)، معرف المنتج (Variant ID)، مفتاح API، وسر الـ Webhook.
  • ميزة: تنفيذ التحقق من Webhook باستخدام HMAC SHA256 (order_created) لإتمام دورة حياة الدفع بشكل آمن وغير متزامن.
  • ميزة: إضافة "أداة مزامنة التطوير المحلي" في صفحة تفاصيل الطلب بالمدير لمحاكاة Webhooks الخاصة بـ Lemon Squeezy والموافقة الفورية على الطلبات أثناء الاختبار المحلي.
  • إصلاح: إعادة هيكلة تدفق رابط العودة (Return URL) لـ Lemon Squeezy للبحث عن جلسات الدفع مباشرة عبر قاعدة البيانات المحلية، لتجاوز نقص الرموز الديناميكية لروابط إعادة التوجيه في Lemon Squeezy.
  • إصلاح: زيادة الحد الأقصى لطول مفاتيح API في إعدادات البوابة إلى 5,000 حرف لاستيعاب رموز Bearer الطويلة جداً الخاصة بـ Lemon Squeezy دون حدوث أخطاء 404.
  • إصلاح: تحديث منطق إخفاء مفتاح API (Masking) في إعدادات بوابة الاشتراك لاستخدام قناع ثابت (***) بدلاً من تكرار الرموز، مما يمنع مشاكل تمدد CSS في لوحة الإدارة.
  • التدويل (i18n): إضافة مفاتيح ترجمة بالإنجليزية والعربية لواجهة دمج Lemon Squeezy.

تحديثات الإدارة المرحلية​


  • ميزة: إعادة تصميم /admin/updates ليصبح مُحدّث AJAX مرحلي مع عرض تقدم مرئي لعمليات: التنزيل، الاستخراج، فحص سلامة الحزمة، وضع الصيانة، تثبيت الملفات، ترحيل قاعدة البيانات، والتنظيف.
  • الموثوقية: كل مرحلة تحديث تعمل الآن كطلب منفصل وتخزن حالة الجلسة في الخيارات (options)، مما يقلل الضغط على الاستضافات الضعيفة أو المشتركة مع ضمان استعادة وضع الصيانة عند الفشل.
  • الأمان: يتم استخراج حزم الإصدار في مستودع تخزين معزول، وفحصها للتأكد من سلامة مسارات ZIP، ومسحها بحثاً عن أي ترحيلات قاعدة بيانات تخريبية قبل نسخ أي ملفات للموقع الحي.

OAuth 2.0 والتكاملات​


  • إصلاح: حل مشكلة خطأ "انتهت صلاحية الصفحة" (419) أثناء تدفق تبادل رموز ADStn OAuth. تم استثناء مسار /oauth/token من فحص CSRF في bootstrap/app.php؛ مما يسمح بطلبات POST من خادم إلى خادم لاسترداد رموز الوصول دون الحاجة لرمز CSRF المرتبط بالجلسة.

المتجر والإضافات​


  • إصلاح: حل مشكلة عدم تتبع تنزيلات الإضافات (قوالب/إضافات برمجية) عبر API في عداد التنزيلات، وذلك من خلال الانتقال إلى مسارات تنزيل قابلة للتتبع.
  • تجربة المستخدم: تفعيل تنزيلات الضيوف للمنتجات المجانية في المتجر لدعم أدوات التثبيت التلقائي وتحسين الوصول العام للمصادر المجانية.

الإشعارات وتفضيلات البريد الإلكتروني​


  • ميزة: إضافة صفحة مخصصة لـ إعدادات إشعارات البريد الإلكتروني (/settings/notification) تتيح للأعضاء تفعيل أو تعطيل تنبيهات البريد لأحداث محددة مثل: الرسائل الجديدة، التعليقات، المتابعات، الإشارات (Mentions)، إعادة النشر، التفاعلات، ردود المنتدى، وتحديثات المتجر.
  • المعمارية: إدخال نموذج UserNotificationSetting وجدول user_notification_settings لحفظ تفضيلات البريد الدقيقة للأعضاء.
  • المعمارية: توحيد إرسال الإشعارات عبر NotificationService لتقييم قواعد اشتراك العضو تلقائياً قبل إرسال أي بريد نظام (SystemNotificationMail).
  • إصلاح: حل مشكلة "خطأ خادم داخلي 500" أثناء عمليات المتابعة الناتجة عن فقدان Namespace لخدمة NotificationService المحقونة في ProfileController.
  • إصلاح: حل مشكلة "خطأ خادم داخلي 500" (بيانات طويلة جداً للعمود 'nurl') التي كانت تمنع حفظ إشعارات الرسائل الجديدة وتعطل إرسال البريد اللاحق، وذلك عبر تغيير نوع العمود nurl في جدول noti إلى TEXT.
  • الأمن: إشعارات البريد للرسائل الخاصة الجديدة تقوم الآن بإنشاء مفاتيح روابط مشفرة (/messages/{key}) بدلاً من معرفات رقمية قابلة للتخمين عند تفعيل تشفير الرسائل في /admin/security.
  • تجربة المستخدم: إضافة رابط إلغاء الاشتراك (Unsubscribe) في تذييل جميع رسائل إشعارات النظام، والذي يؤدي مباشرة إلى صفحة إعدادات إشعارات العضو.
  • التدويل (i18n): تعريب وترجمة واجهة إعدادات الإشعارات ووصف الأحداث بالكامل لجميع اللغات التسع المدعومة.

للتحديث​


 
  • Like
التفاعلات: Admin

إصدار v4.3.2​


إصدار ميزات جديد — مركز توثيق الإضافات، المصادقة الثنائية، إدارة ملفات Ads.txt، تحسين أداء البحث، الأرشفة الذكية، بوابة دفع Paddle، والصفحات القانونية.

الأمان والأداء​


  • ميزة: تنفيذ المصادقة الثنائية (2FA) عبر البريد الإلكتروني. يمكن للأعضاء الآن تفعيل طبقة حماية إضافية من إعدادات الخصوصية، مما يتطلب رمز تحقق فريد يتم إرساله إلى بريدهم الإلكتروني أثناء تسجيل الدخول.
  • ميزة: إضافة أكواد الاستعادة (Recovery Codes) للمصادقة الثنائية، مما يتيح للأعضاء استعادة الوصول إلى حساباتهم في حال فقدان الوصول إلى بريدهم الإلكتروني.
  • الأداء: ترقية البحث العام في بوابة المجتمع لاستخدام فهرسة MySQL FULLTEXT مع خاصية MATCH AGAINST (الوضع المنطقي - Boolean Mode)، مما أدى إلى تحسين سرعة البحث وذات الصلة بشكل كبير عبر المنشورات، مواضيع المنتدى، قوائم الدليل، المنتجات، والأخبار.
  • الأداء: تقديم نظام الأرشفة الذكية لمرات ظهور الإعلانات. يتم الآن نقل بيانات التتبع الضخمة تلقائياً إلى جداول أرشفة مخصصة بعد 30 يوماً عبر مهمة Artisan يومية (myads:archive-impressions)، مما يحافظ على خفة وسرعة جداول الخدمة النشطة.
  • التدويل (i18n): تعريب كامل لواجهة المصادقة الثنائية، وأكواد الاستعادة، وتلميحات الأمان عبر جميع اللغات التسع المدعومة، لضمان تجربة أمان متسقة لجميع الأعضاء.

تبادل الإعلانات والتحليلات​


  • ميزة: تقديم الاستهداف الجغرافي للإعلانات، مما يسمح للمعلنين بتقييد ظهور إعلانات البانر والنصوص/الروابط لدول معينة عبر أداة اختيار دول متعددة في نماذج إنشاء وتعديل الإعلانات.
  • ميزة: تنفيذ خرائط حرارية للنقرات بالساعة. يمكن للمعلنين الآن تصور توزيع النقرات على مدار 24 ساعة عبر خريطة حرارية مصغرة تفاعلية ومتوافقة مع سمة الموقع (فاتح/داكن) في لوحة تحكم إدارة الإعلانات.
  • ميزة: إضافة اختبار A/B للبانرات والروابط باستخدام خوارزمية تحسين ذكية Epsilon-Greedy (80/20). يمكن للمعلنين تقديم "نسخة B" بديلة (صورة/نص)، ويقوم النظام تلقائياً بعرض النسخة الأفضل أداءً بشكل متكرر بناءً على نسبة النقر إلى الظهور (CTR) في الوقت الفعلي.
  • إصلاح: حل خطأ 500 Internal Server Error الحرج في AdsServingController الناتج عن التعامل غير الصحيح مع المجموعات (Collections) ومجموعات النتائج الفارغة أثناء اختيار الإعلان.
  • المعمارية: تقديم AdStatsService لتجميع بيانات النقرات الساعية و AdGeoService (كمكان محجوز) لتوسعات تحديد الموقع الجغرافي مستقبلاً.
  • واجهة المستخدم: تحسين جداول قائمة الإعلانات بعمود الأداء الجديد وخرائط حرارية تدعم "تلميحات الأدوات" (Tooltips) وتتكيف مع الوضعين الفاتح والداكن.

الفواتير وبوابات الدفع​


  • ميزة: دمج Paddle كبوابة دفع مدعومة بالكامل لنظام الاشتراكات والخطط المدفوعة، باستخدام واجهة برمجة تطبيقات معاملات Paddle (Transactions API) لجلسات الدفع المستضافة.
  • ميزة: إضافة تكوين ديناميكي لبوابة Paddle في لوحة الإدارة (/admin/billing/gateways)، مع دعم مفتاح API، ومعرف السعر (Price ID)، وسر الويب هوك (Webhook Secret)، والتبديل بين وضع الاختبار (Sandbox) والوضع المباشر.
  • ميزة: تنفيذ التحقق من توقيع الويب هوك الخاص بـ Paddle (رأس Paddle-Signature بتنسيق ts=...;h1=...) باستخدام HMAC SHA256، مع نافذة سماح مدتها 5 دقائق للحماية من هجمات إعادة التشغيل (Replay attacks).
  • ميزة: دعم أنواع أحداث الويب هوك transaction.completed و transaction.payment_failed و transaction.updated لتحديثات دورة حياة الطلب بشكل غير متزامن.
  • المعمارية: إضافة فئة PaddleGateway وتوسيع AbstractBillingGateway وتسجيلها في BillingGatewayRegistry جنباً إلى جنب مع Stripe و PayPal والتحويل البنكي و Lemon Squeezy.
  • المعمارية: يتم تخزين مفتاح API وسر الويب هوك لـ Paddle بشكل مشفر باستخدام إعدادات SubscriptionGatewaySettings مع تكوين الحقول السرية، بما يتوافق مع أنماط الأمان الموجودة.
  • التدويل (i18n): إضافة مفاتيح ترجمة خاصة بـ Paddle باللغتين الإنجليزية والعربية.

الصفحات القانونية​


  • ميزة: إضافة صفحة سياسة الاسترجاع الجديدة (/refund) كصفحة قانونية مخصصة، باتباع نفس النمط المعماري لصفحات الخصوصية والشروط.
  • إضافة: إنشاء دالة refund() في PageController مع دعم كامل لتحسين محركات البحث SEO (الوسوم الوصفية، الأوصاف، ومسارات التنقل).
  • إضافة: إنشاء قالب refund.blade.php بسمة لونية برتقالية/كهرمانية مميزة، مع دعم الوضع الداكن والتصميم المتجاوب.
  • إضافة: دمج رابط سياسة الاسترجاع في تذييل الموقع مع أيقونة مخصصة (fa-solid fa-rotate-left).
  • التدويل (i18n): إضافة 22 مفتاح ترجمة لسياسة الاسترجاع (المقدمة، الأهلية، العملية، الإطار الزمني، النزاعات، إلخ) عبر جميع اللغات التسع المدعومة.

إدارة الوسائط​


  • ميزة: تقديم مدير وسائط شامل للمسؤولين في /admin/media ، مما يسمح بالإشراف الكامل على الملفات داخل مجلدات الرفع.
  • ميزة: تنفيذ فحص الملفات بشكل متكرر (Recursive) مع تصفية متقدمة حسب النوع (صور، فيديوهات، أرشيف، صوتيات، إلخ) وبحث فوري بالاسم أو المسار.
  • ميزة: إضافة نظام معاينة الصور باستخدام نافذة Bootstrap 5 المنبثقة، مما يوفر نظرة سريعة على أصول الصور مع إجراءات التحميل وإعادة التسمية المدمجة.
  • ميزة: عمليات آمنة على نظام الملفات تشمل إعادة التسمية مع تنقية المسارات والحذف النهائي للأصول غير المستخدمة.
  • المعمارية: إنشاء AdminMediaController لمركزية منطق الوسائط، مما يضمن تقييد عمليات الملفات بمسارات الرفع المسموح بها.
  • واجهة المستخدم: دمج أيقونات مخصصة لأنواع الملفات وقوائم إجراءات متجاوبة باستخدام نظام تصميم admin-duralux.

نظام الإضافات ومركز التوثيق​


  • ميزة: تحسين مركز توثيق الإضافات بدعم تلقائي للصور. يقوم النظام الآن بتقديم الأصول الداخلية للإضافات (صور، webp، إلخ) بشكل آمن ويعيد كتابة مسارات الصور النسبية في Markdown إلى روابط صالحة، مما يحل مشاكل عرض التوثيق.
  • المعمارية: إضافة مسار admin.plugins.asset ودالة pluginAsset() لتقديم الأصول بأمان من خارج جذر الويب مع التحقق من الامتدادات والحماية من تجاوز الدليل (Directory traversal).
  • المعمارية: تنفيذ منطق preg_replace_callback لمعالجة وربط لقطات الشاشة الداخلية للإضافات ديناميكياً داخل ملفات README.md و screenshots.md.

تحسين محركات البحث (SEO) وتفويض الإعلانات​


  • ميزة: إضافة إدارة ملفات Ads.txt و App-Ads.txt إلى لوحة الإدارة. يمكن للمسؤولين الآن إنشاء وتعديل ملفات التفويض هذه مباشرة عبر واجهة جديدة تحت قسم SEO.
  • المعمارية: تنفيذ الحفظ المزدوج (في الجذر ومجلد public/) لملفات ads.txt و app-ads.txt لضمان أقصى قدر من التوافق مع مختلف إعدادات الاستضافة وخوادم الويب.
  • المعمارية: تحديث ملف .htaccess في جذر المشروع للسماح صراحة بملفات .txt و .xml لضمان خدمتها بشكل صحيح.

المتجر والسوق​


  • إصلاح: حل مشكلة في صفحة إنشاء المتجر (/store/create) حيث كان محدد الفئات الفرعية الديناميكي (AJAX) يفشل في التحميل أو يظهر بشكل خاطئ داخل حقول الإدخال، مما يمنع اختيار أنواع السكربتات.
  • إصلاح: حل خطأ 500 Internal Server Error حرج في صفحة تعديل المنتج للمسؤول ناتج عن تداخل الأقواس وعدم اتساق الصيغة في قوالب Blade.
  • واجهة المستخدم: توحيد تخطيط نموذج تعديل المنتج لضمان وضع العناوين بشكل متسق واستجابة النموذج لجميع أنواع المنتجات (سكربتات، إضافات، قوالب).

الصيانة​


  • تحديث: ترقية مكتبة postcss من 8.5.6 إلى 8.5.14 لمعالجة الثغرات الأمنية في التبعيات.
  • تحديث: ترقية مكتبة axios من 1.15.0 إلى 1.15.2 لتحسين استقرار معالجة الطلبات في موجز المجتمع.
  • تحديث: ترقية phpseclib/phpseclib من 3.0.51 إلى 3.0.52 لضمان أحدث التصحيحات الأمنية واستقرار التشفير.
للتحديث

 
عودة
أعلى