صفحة مراجعة · لا تغيّر شيئاً على الموقع

نموذج «حدّ الإعلانات النشطة» للأفراد

هذا هو النموذج البديل للإعلانات المجانية: بدل «محفظة عملات»، يُسمح لكل فرد بعدد محدّد من الإعلانات النشطة في نفس الوقت (الحد الحالي في الإعدادات = 8). لتنشر إعلاناً جديداً بعد امتلاء الحد، تبيع أو تحذف إعلاناً لتفريغ مكان.

100%

مبنيّ ومنشور

8 / 8

البنود محسومة (LM-4 = نتركه محايداً)

6 / 6

القرارات محسومة — لا مفتوح

الخلاصة: كل بنود المراجعة صارت محسومة ومنشورة — المحرّك (الخادم)، لوحة التحكم، وصفحات الحساب الفردي. ما بقي إلا هذه الصفحة كسجلّ لما تقرّر.
✅ الحالة (٢٤ يوليو): LM-1 · LM-2 · LM-3 · LM-5 · LM-6 · LM-7 · LM-8 نُفّذت ومنشورة، وLM-4 = نتركه محايداً (LM-4b). صفحة «إعلاناتي» صارت تشبه «معرض السيارات» (شريط سعة + تبويبات كبسولة + تبويب «إعلانات غير نشطة»، بلا تحديد جماعي/CSV)، والأسماء الجديدة + صياغة «أكّد بيع سيارة» + رِعشات التحميل — كلها عولجت. القاعدة الموحّدة للنشر (مجاني + مدفوع دائماً؛ والمجاني يظهر باهت مع رسالته لو مافي رصيد/مكان) منشورة في كل القوائم. كل القرارات Q1–Q6 محسومة.

1ما هو جاهز بالفعل

حتى لا نعيد بناء ما هو مبني — كل بند تحقّقنا منه في الكود الحقيقي.

  • تمالمحرّك (الخادم) يفهم النموذجين. عند النشر، الخادم يعدّ إعلاناتك النشطة، ويسمح إن كنت تحت الحد، ويرفض إن وصلت الحد — بدون أي «عملات». مضبوط ومحمي.
  • تمالإعلان «الزائد عن الحد» يُحفظ ولا يُفقد. لو نشرت مجاناً وأنت على الحد، الإعلان يُحفظ ويصير «غير منشور» ويوصلك تنبيه «إعلانك جاهز — بانتظار مكان»، ويظهر أول ما يتفرّغ مكان.
  • تملوحة التحكم فيها الإعداد كامل. الأدمن يقدر يختار «المحفظة» أو «حدّ الإعلانات النشطة»، يحدّد الرقم، وفيه نافذة تأكيد تشرح أثر التبديل.
  • تمصفحة «نظرة عامة» فيها بطاقة جاهزة للنموذج. في وضع الحد، بدل بطاقة المحفظة تظهر بطاقة زرقاء مؤكّدة فيها ثلاثة أرقام: الحدّ · النشطة الآن · المتاح، وزر عند الامتلاء.
  • تم«إعلاناتي» يفهم الحد. إعادة نشر/إعادة تفعيل/استنساخ كلها تتحقّق من الحد وتُظهر رسالة صحيحة عند الوصول للحد.
  • تمنافذة النشر عند الوصول للحد. لو ضغطت نشر وأنت على الحد، تظهر رسالة واضحة «وصلت حدّ الإعلانات النشطة — احذف إعلاناً أو أكّد بيع سيارة» مع زر «إعلاناتي».
  • تمالمحفظة والرموز الترويجية تختفي تلقائياً. في وضع الحد، بطاقة هدية الترحيب وخانة «رمز ترويجي» تختفي (لا معنى لها بدون محفظة) — وهذا صحيح.
  • تمالتبديل لا يمسّ أرصدة أحد. قلب النموذج مجرد تغيير إعداد: كل الإعلانات النشطة تبقى نشطة، والأرصدة القديمة تبقى مجمّدة كما هي.

2التغييرات المقترحة

كل تغيير: أين · لماذا · الخيارات (مع محاسنها ومساوئها) · التوصية.

كل البنود صارت محسومة ومنشورة — لا خيارات مفتوحة. البطاقات تحت سجلّ لما تقرّر ونُفّذ (كل بطاقة تكتب «ما نُفّذ»). البند الوحيد بلا بناء: = نتركه محايداً (اخترتَ LM-4b).
دقّة الأرقام✅ نُفّذ ومنشوربطاقة النظرة العامة تعدّ الإعلانات بطريقة تختلف قليلاً عن المحرّك

أين: overview-ideas/freeads-designs.tsx (استعلام العدّ)

البطاقة الزرقاء تعدّ الإعلانات «نشط» فقط، بينما المحرّك يعدّ النشطة وغير المنتهية. فلو عندك إعلان انتهت مدّته لكن لم يُكنس بعد (الكنس كل 24 ساعة)، البطاقة قد تقول «الحد مكتمل» بينما النشر يمرّ فعلاً — رقم لا يطابق الواقع.
ما نُفّذ: البطاقة الآن تقرأ نفس دالة العدّ التي تفرضها البوابة (liveCountIndi، تستبعد المنتهي غير المكنوس) — فالرقم المعروض لا يمكن أن يخالف ما يسمح به النشر. منشور.
زائد عن الحد✅ نُفّذ ومنشورالإعلانات «بانتظار مكان» بلا مكان واضح — وتلبس مصطلح المعارض

أين: listings-lab/core.tsx (تبويبات الأفراد + نص الصف)

لمّا يتفرّع إعلان فردي زائد عن الحد يصير «غير منشور». لكن الأفراد ما عندهم تبويب لهذه الحالة (تبويب «المخزون» للمعارض فقط)، فيظهر الإعلان تحت «الكل» فقط، وبنصّ المعارض «في المخزون — فعّله ليظهر» — و«المخزون» كلمة معرض لا معنى لها لفرد. والأسوأ: الإعلان الزائد عن الحد، والمنتظر للدفع، والمُغلق مجانياً — كلها تشترك في نفس الشارة «غير منشور» بلا تمييز السبب.
ما نُفّذ: الإصدار الخفيف (اعتمدتَه): صفحة «إعلاناتي» صارت تشبه «معرض السيارات» — شريط سعة (عدّاد المستخدمة/الشاغرة أو الرصيد) أعلى الصفحة، تبويب «إعلانات غير نشطة» للإعلانات الزائدة عن الحد، سبب واضح على الصف («الحد مكتمل — احذف إعلاناً أو أكّد بيع سيارة»)، وزر «تفعيل» يُعطَّل عند اكتمال الحد. + تسمية التبويبات الجديدة بمفردات المعارض. منشور.
واجهة النموذج✅ نُفّذ ومنشوربطاقة احتياطية عليها ملاحظة «قيد المراجعة»

أين: overview-ideas/wallet-designs.tsx (NonCredit)

بطاقة المحفظة فيها فرع احتياطي مكتوب بجانبه في الكود «مراجعته قادمة»، يظهر نصّاً ناقصاً في الحالة «مُغلق» (لا محفظة ولا حد). البطاقة الزرقاء المؤكّدة كان يُفترض أن تحلّ محلّه.
ما نُفّذ: حُذفت البطاقة الاحتياطية «قيد المراجعة» نهائياً. WalletRing صار يعرض بطاقة الرصيد فقط، وأي وضع غير المحفظة يُعرض عبر بطاقة الحد التي يملكها FreeAdsSlot — فلا يمكن أن يظهر نصّ ناقص للمستخدم. منشور.
واجهة النموذج✅ نُفّذ ومنشورشاشة اختيار الباقة ما تقول كم إعلان مجاني باقٍ لك

أين: عند بيع سيارة ← خطوة «باقة النشر» ← البطاقة المجانية

لمّا يبيع أحد سيارته ويوصل لخطوة اختيار الباقة، خيار «مجاني» المفروض يقول له كم إعلان مجاني باقٍ. اليوم في وضع الحد ما يقول شيء، ولو خلص حدّه يصير المربّع رمادياً بدون ما يشرح ليش — فيعرف السبب فقط بعد ما يضغط. المفروض نكتبها على البطاقة نفسها، مثل وضع المحفظة تماماً (اللي يكتب «رصيدك: N إعلان مجاني»).
ما نُفّذ: نُفّذ: البطاقة المجانية في خطوة الباقة صارت تكتب حالتها في وضع الحد — «باقٍ لك N من M» لو فيه مكان، و«وصلت حدّ الإعلانات المجانية — اختر باقة مدفوعة أو امسح أحد الإعلانات النشطة» لو مكتمل. منشور.
واجهة النموذج✅ نُفّذ ومنشورزر «اعرض سيارتك» ما يذكر إن النشر مجاني (في وضع الحد)

أين: صفحة الحساب ← شريط/زر «اعرض سيارتك»

الزر الكبير «اعرض سيارتك» في صفحة الحساب يقول «مجاناً» فقط في وضع المحفظة. في وضع الحد — حتى لو عندك أماكن فاضية — ما يذكر إن النشر مجاني، فنخفي أحلى ميزة على أبرز زر في الصفحة. ليس خطأ، بس فرصة ضائعة.
ما نُفّذ: القرار: LM-4b — نتركه محايداً. الشريط ما يتغيّر؛ القناة المجانية/المدفوعة تظهر الآن عند لحظة النشر في القائمة (القاعدة الموحّدة بالأسفل)، فما يحتاج نكررها على الزر.
تنظيف✅ نُفّذ ومنشورملاحظتان مكتوبتان داخل الكود تصفان شيئاً غير موجود

أين: داخل الكود فقط (لوحة التحكم + إعادة النشر) — تعليقات لا يراها المستخدم

فيه ملاحظتان مكتوبتان جوّا الكود (ما يراها المستخدم) تصفان سلوكاً غير موجود: وحدة تقول إن التبديل «يصفّر أرصدة المحافظ» — وهذا ما يصير، والثانية تصف حماية النشر بالعكس. ما تأثّر على الموقع إطلاقاً، بس تلخبط أي أحد يشتغل على الكود لاحقاً. التصحيح دقيقتان.
ما نُفّذ: نُفّذ: صُحّحت الملاحظتان لتطابقان الكود الفعلي (لا تصفير أرصدة؛ البوابة تفشل مغلقة). تنظيف داخلي بحت، ما يظهر منه شيء للمستخدم.
لوحة التحكم✅ نُفّذ ومنشورعند تشغيل الحد، لوحة التحكم ما تقول كم بائع بيتأثّر

أين: لوحة التحكم ← إعدادات الإعلانات المجانية ← نافذة تأكيد التبديل

لمّا تشغّل الحد وتختار الرقم، رسالة التأكيد تحذّر إن «اللي عنده إعلانات أكثر من الحد ما بيقدر ينشر» — بس بدون رقم. يعني تختار الرقم وأنت ما تشوف الأثر: ممكن 40 بائعاً يتوقّفون فجأة. الأفضل نعرض العدد قبل ما تأكّد.
ما نُفّذ: نُفّذ: نافذة تأكيد التبديل صارت تعرض كم فرد فوق الحد المختار قبل التثبيت (عدّ يطابق التطبيق تماماً)، ويتحدّث وأنت تغيّر الرقم. منشور.
التبديل✅ نُفّذ ومنشورعملات المحفظة القديمة تبقى مجمّدة — وترجع للحياة لو رجعنا لنموذج المحفظة

أين: سلوك التبديل بين النموذجين — قرار منتج

التبديل بين النموذجين ما يمسّ عملات أحد أبداً — بس تتجمّد. لو رجعت يوماً لنموذج المحفظة، العملات القديمة تصحى وتنصرف من جديد بالضبط مثل ما كانت. هذا آمن (ما نخسر بيانات)، بس هو قرار ضمني: أحد كان عنده 3 عملات قبل سنة ممكن يرجعله 3 إعلانات مجانية فجأة. وما فيه اليوم زر أدمن يصفّر المحافظ الخاملة.
ما نُفّذ: القرار: LM-7a — نبقيها مجمّدة ونوثّقها. نافذة التبديل صارت تكتب إن الأرصدة «تُجمّد وتعود كما هي لو رجعت لنموذج المحفظة» (بلا تصفير). منشور.

3ماذا يحدث عند التبديل بين النموذجين

ما يفعله الكود اليوم فعلاً — بلغة بسيطة.

محفظة ← حد

  • • كل الإعلانات النشطة الآن تبقى نشطة — لا يُحذف شيء.
  • • العملات تتجمّد (لا تُصرف ولا تُصفّر).
  • • من كان محظوراً لنفاد رصيده يصير قادراً على النشر فوراً (حتى الحد).
  • • بطاقة المحفظة وخانة الرمز الترويجي تختفي، وتظهر بطاقة الحد.

حد ← محفظة

  • • الإعلانات النشطة تبقى نشطة.
  • • العملات المجمّدة تعود قابلة للصرف كما كانت (انظر LM-7).
  • • من محفظته فارغة يحتاج رصيداً لينشر مجاناً (أو باقة مدفوعة).
  • • هدية الترحيب لا تُمنح ثانيةً لمن استلمها.

الحالة المهمّة: بائع فوق الحد

عند التبديل للحد، أي بائع عنده إعلانات نشطة أكثر من الحد الجديد (اليوم فيه بائع عنده 10 والحد 8): كل العشرة تبقى ظاهرة (المنع يخصّ الإعلانات الجديدة فقط)، لكنه لا يقدر ينشر جديداً حتى ينزل تحت الحد. صار الآن على صفحته ما يشرح ذلك — شريط السعة يُظهر «الحد مكتمل»، والصف يكتب السبب مع خطوة تفريغ المكان (نُفّذ ضمن LM-3).

4القرارات (كلها محسومة ✅)

كانت قرارات منتج تخصّك — صارت كلها محسومة الآن. هذا سجلّ لما تقرّر.

القاعدة الموحّدة للنشر (منشورة): في أي قائمة نشر (إعلان جديد · إعادة نشر · استنساخ)، لمّا يكون فيه نموذج مجاني شغّال تظهر القناة المجانية + المدفوعة دائماً. لو عندك رصيد/مكان يظهر المجاني ويُختار (مع العدّ). لو خلص يظهر المجاني باهتمع الرسالة: محفظة → «خلص رصيدك المجاني — اختر باقة مدفوعة»، حد → «وصلت حدّ الإعلانات المجانية — اختر باقة مدفوعة أو امسح أحد الإعلانات النشطة». (استثناء: إعادة نشر إعلان منتهٍ في وضع المحفظة مجانية بلا خصم.)

✅ محسومهل تحصل الإعلانات الزائدة عن الحد على تبويب خاص؟

اخترتَ التبويب المستقل — نُفّذ باسم «إعلانات غير نشطة» (يظهر في وضع الحد أو عند وجود إعلان محفوظ، ومعه سبب على كل صف وزر تفعيل).

  • تبويب مستقل للأفراد.
  • تبقى داخل «الكل» بصف موضّح للسبب فقط (بلا تبويب جديد).

✅ محسوملمّا يحاول أحد ينشر وهو وصل الحد — وش يصير؟

اخترتَ: القائمة تخبره إنه مافي رصيد مجاني وتعرض الباقات المدفوعة (القاعدة الموحّدة — منشورة). ولو نُشر زائد عن الحد من قناة ثانية يُحفظ في «إعلانات غير نشطة».

  • يُحفظ الإعلان ويوصله تنبيه (الحالي) — يقعد في «إعلانات غير نشطة» ويصير نشطاً أول ما يتفرّغ مكان.
  • منع مباشر — الإعلان ما يُنشأ أصلاً؛ لازم يفرّغ مكاناً أول.
  • مكان سماح — نسمح له بواحد فوق الحد (مثلاً +1).

✅ محسومعملات المحفظة لمّا نحوّل من محفظة ← حد (نفس LM-7):

= LM-7a — تبقى مجمّدة وتعود كما هي لو رجعت للمحفظة (بلا تصفير). موثّقة في نافذة التبديل.

  • تبقى مجمّدة وترجع لو رجعنا للمحفظة (الحالي).
  • تُصفّر كل المحافظ عند مغادرة المحفظة (موثّق، غير قابل للرجوع).
  • تنتهي بعد فترة خمول.

✅ محسوموش يُحتسب ضمن الحد؟

Q3a — النشط فقط وغير المنتهي (هذا سلوك النظام أصلاً، مثبّت الآن قراراً).

  • النشط فقط وغير المنتهي (الحالي).
  • يُحتسب «غير النشط/المحفوظ» أيضاً.
  • كل غير المنتهي (نشط + محفوظ + مسودة).

✅ محسومإعادة نشر إعلان منتهٍ في وضع الحد:

تتبع القاعدة الموحّدة: لو فيه مكان مجاني يظهر (مجاني + مدفوع)، ولو مكتمل يظهر إنه مكتمل + مدفوع. (وفي وضع المحفظة إعادة نشر المنتهي مجانية بلا خصم.) منشورة.

  • يُحتسب ضمن الحد (الحالي).
  • عودة مجانية لإعلان سبق أن كان نشطاً (ما يُحتسب).

✅ محسومالحد رقم واحد للجميع، أم يختلف بالشرائح؟

Q5a — رقم واحد عام للجميع، بلا شرائح. مثبّت.

  • رقم واحد عام (الحالي).
  • حدود حسب الشرائح (مثل شرائح أداة الإيداع الأربع).

5قواعد سألتزم بها

ما استقرّينا عليه في عمل المحفظة الأخير — حتى يكون عمل الحد بنفس الطابع.

  • أرقام لاتينية فقط عبر formatNum — لا أرقام عربية-هندية.
  • «إعلانات نشطة» هو المصطلح المعتمد للإعلانات الحيّة — لا «مباشرة» ولا «حيّة».
  • إعادة استخدام التصاميم المؤكّدة (البطاقة الزرقاء F-11)، لا اختراع جديد.
  • صياغة تفريغ المكان (المعتمدة 2026-07-24): «احذف إعلاناً أو أكّد بيع سيارة» — واضحة ومطابقة لزر «تم البيع».
  • جمع عربي صحيح عبر الدوال المشتركة (إعلان/إعلانات/إعلاناً).
  • تغيير مُصغّر ومحصور: نلمس فقط شاشات وضع الحد المذكورة، لا نعيد ترتيب غيرها.
  • قراءة الإعداد طازجاً عند نقاط المنع ليظهر تبديل الأدمن فوراً.
  • الفشل مغلقاً دائماً: لا نموذج فعّال ⇒ القناة المجانية مغلقة (مدفوع فقط).
  • التطبيق (الموبايل) دَين توافُق نلاحظه ولا نغيّره الآن — الموقع يقود.
🔧🧪