إضافة المواقع 🌍

إليك لمحة سريعة عن بعض أعمال النموذج الأولي التي أقوم بها.

سأعمل على توفير وصول مبكر لهذا العمل للممولين الحاليين والسابقين لفترة محددة (بغض النظر عن مستوى الرعاية).

في المستقبل، سأوفر وصولاً مبكرًا لبعض الميزات الجديدة مقابل 7 دولارات شهريًا للممولين الأفراد أو المجتمعات الصغيرة، و40 دولارًا شهريًا للشركات.

5 إعجابات

تم إرسال الدعوات الأولية للوصول المبكر للتو إلى الرعاة الحاليين. وسأوسع نطاق ذلك ليشمل الرعاة السابقين قريبًا، وسيظل هذا الوصول متاحًا لفترة، وبعد ذلك سيكون من الضروري الحفاظ على مستوى أدنى من الرعاية.

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

ستتم ترحيل الميزات إلى المستودع العام على أساس كل حالة على حدة وبعد فترة تأخير…

3 إعجابات

لقد قمت للتو بتنفيذ ميزة تحديد موقع المستخدم الآلية الرائعة، والتي تتضمن إعداد Maxmind بشكل صحيح. تم ذلك على مثيل جديد.

ملف app.yml الجديد رائع وخفيف، لكنه لم يعد يتضمن متغيرات البيئة الخاصة بـ Maxmind كتعليق.

إذا كان الهدف هو جعل هذا الأمر أكثر سهولة لمسؤولي الأنظمة الذين يديرون استضافاتهم بأنفسهم ولديهم ثقة أقل، فقد نحتاج إلى شرح واضح — مع توجيههم إلى هذا الموضوع:


أيضًا - مسألة تجربة مستخدم بسيطة

يظهر رابط غير مرغوب فيه (في رأيي على الأقل) إلى الخريطة في الشريط الجانبي، ولا يتم التحكم فيه عبر أي إعدادات. لقد قمت بإخفاؤه على النحو التالي:

// إخفاء رابط خريطة المستخدمين
.sidebar-sections li[data-list-item-name="users map"] {
    display: none;
}

ربح حان الوقت لإلغاء دعم كل من هذا الرابط ورابط خريطة المواضيع (الذي يتم التحكم فيه عبر الإعدادات)؟ يمكن الآن إضافتهما بسهولة عبر واجهة المستخدم القياسية إذا رغب المسؤول في ذلك.

إعجاب واحد (1)

الروابط التي يضيفها المسؤول إلى الشريط الجانبي غير قابلة للترجمة حاليًا. لذا، بالنسبة لمجتمع قد يفضل مستخدموه لغات واجهة مختلفة، يوفر الإضافة الذي يضيف الرابط إلى الشريط الجانبي خيارًا لترجمتها وعرضها بعدة لغات.

إعجابَين (2)

لاحظت أنه لا يمكنني تمكين تحديد الموقع الجغرافي للمواضيع ضمن فئة معينة

لا يقترح حفظ التعديلات :thinking: (أنا أستخدم الإصدار 2026.5.0-latest)

إعجاب واحد (1)

تم إصلاح هذا الأمر الآن.

يجب نشر الإصلاح إلى إصدارات الوصول المبكر والإصدار العام للمستودع، مع مجموعة كاملة من إصلاحات التوافق.

كجزء من هذا العمل، قمت بزيادة الفرق بين الإصدارين.

يحتوي إصدار الوصول المبكر المخصص للراعيين المؤهلين على الميزات التالية التي يفتقر إليها الإصدار العام لمواقع Locations حاليًا:

العنوان الوصف
كوكب خريطة المستخدمين يضيف عرضًا ثلاثي الأبعاد تفاعليًا لكوكب خريطة المستخدمين، مع وضع الرموز التعبيرية حسب الموقع، وتدوير السحب/اللمس، وتقريب، وإعادة ضبط، والتركيز على البحث، والنقر على بطاقات المستخدمين، وتعيين الخرائط التفاعلي الدائم.
شاشة توقف الكوكب شاشة توقف تجريبية اختيارية في وضع الخمول تعرض كوكبًا ثلاثي الأبعاد دوارًا مع رموز تعبيرية للمستخدمين أسفل الرأس.
فلاتر محسنة لخريطة المستخدمين يضيف عناصر تحكم للحد من النتائج، ونوع البحث، ومصطلح البحث، وتصفية المجموعات على خريطة المستخدمين.
فلتر المواضيع القريبة يضيف فلتر تجريبيًا لقائمة المواضيع القريبة بناءً على المسافة من موقع المستخدم الحالي.
البحث عن موقع المستخدم بناءً على عنوان IP يقدر ويخزن مواقع المستخدمين تلقائيًا من بيانات عنوان IP، مع وضع تشغيل قابل للتكوين، والدقة، وفترة التبريد، وحل GeoNames، وسلوك التجاوز إذا كان موجودًا، وتسجيل التصحيح.

هذا يعني أن الإصدار العام المدعوم قد تم تخفيضه قليلاً. أخشى أن هذا ضروري لضمان حصول راعيي على فائدة كافية.

إذا كنت ترغب في هذه الميزات الإضافية، فكر في رعايةي وتأكد من اختيار مستوى شهري يشمل الوصول المبكر. ستمنحك رعايةي على المستوى المناسب الوصول إلى إصدار الوصول المبكر خلال 24 ساعة.

3 إعجابات

شكرًا لك @merefield على سرعتك :+1:.

إعجاب واحد (1)

لقد صادفتُ للتو إشعاراً بالتقاعد مع أحدث إصدار من Discourse:

[PLUGIN discourse-locations] إشعار بالتقاعد: استخدام api.modifyClass على model:composer أصبح قديماً. استخدم واجهات برمجة التطبيقات addModelField، وaddModelAccessor/addModelGetter/addModelSetter، وaddModelMethod، وaddModelSaveProperty، وaddModelCallback بدلاً من ذلك. [قديماً منذ Discourse 2026.8] [معرف التقاعد: discourse.modify-class-model]

حاولت مع صديخي الخيالي، لكنه يبدو فوق مهاراتي البرمجية البدائية… :see_no_evil_monkey:

إعجاب واحد (1)

لمعلوماتك:

[إدارة] يحتوي الإضافة 'discourse-locations' على كود يحتاج إلى تحديث. (id:discourse.modify-class-model)

لدي نفس المشكلة:

تم حل هذه المشكلة بفضل مساهمة من @cvx :folded_hands: (في الواقع منذ 5 أيام! :sweat_smile: )

طلبات السحب الأخيرة

طلب السحب الغرض الرئيسي الكاتب
#168 تحديث تبعيات Ruby وJavaScript لحل تنبيهات الأمان. angusmcleod
#169 استبدال استخدام Composer `modifyClass` الذي تم إهماله بواجهات برمجة تطبيقات امتداد النموذج الحديثة. cvx
#171 توسيع اختبارات Composer location-default وإصلاح مزامنة الموقع عند التبديل بين الفئات. merefield
#172 مزامنة أدوات التدقيق والتطوير الخاصة بالإضافة مع هيكلية إضافة Discourse الحالية. merefield
#173 ترقية مكتبة Ruby `json` من الإصدار 2.21.1 إلى 2.21.2 لإصلاح ثغرة استخدام بعد الإفراج. dependabot
#174 استعادة معالجة أخطاء بحث الموقع، ومنع طلبات الترميز الجغرافي الفارغة، وتحسين ضوابط الخريطة وتغطية الاختبارات الانحدارية. merefield

شكرًا لـ @angus و@cvx على مساهماتهما.

تم تطبيق هذا على كل من الإضافة المجانية وإضافة الوصول المبكر المخصصة للراعيين فقط.

بالإضافة إلى ذلك، تم نقل الكود المسؤول عن السماح لك بمناقشة مواقع المستخدمين مع Chatbot إلى “Locations Early Access” لتعزيز المزيد من القدرات الوظيفية الإضافية في مستودع الراعيين فقط.

5 إعجابات

اليوم، قمت بنقل عدة تحسينات غير وظيفية من مرحلة الوصول المبكر إلى الإضافة الرئيسية:

إعجابَين (2)

على غرار إضافة ملاحظات الإشارات المرجعية (Bookmark Notes Plugin)، أعيدت هيكلة Locations بحيث يتطلب استخدامها إضافة البرنامج الأساسي في جميع الأحوال، سواء كنت راعياً احترابياً أم لا.

كان هذا ضرورياً لتبسيط أعمال الصيانة. كما يُرسّخ هذا الإجراء الإصدار السابق المسمى بـ«الوصول المبكر» كإضافة مميزة مخصصة للراعيين.

يرجى استبدال أمر الاستنساخ القديم للوصول المبكر في ملف app.yml لديك بالأوامر التالية، مع إبقاء إضافة البرنامج الأساسي في المقدمة:

  git clone https://github.com/merefield/discourse-locations.git
  git clone https://YOUR_GITHUB_USERNAME:YOUR_TOKEN@github.com/merefield/discourse-locations-pro-ext.git

ثم أعد بناء Discourse بشكل طبيعي. ستُحفظ بيانات الموقع الموجودة لديك - لا يلزم أي هجرة يدوية.

يجب أن يستمر وصولك إلى مستودعك بعد إعادة التسمية. إذا واجهت مشكلة في الوصول أو التثبيت، فالرجاء إرسال رسالة لي وسأكون سعيداً بمساعدتك.

شكراً لدعمكم المستمر!

إعجاب واحد (1)

تمت إضافة هذا كحل مؤقت منذ فترة، لكن منذ ذلك الحين يبدو CSS الخاص بالرسائل الخاصة (PM) أكثر تشابهًا مع الموضوعات العادية، لذلك تم إزالته، وستحصل مجددًا على محاذاة جميلة لتسمية موقع المستخدم في الرسائل الخاصة، رائع!:

إعجاب واحد (1)

هل يوجد طريقة لحفظ مواقع مخصّصة؟ على سبيل المثال، كوخ جبالي بعيد يستخدمه عدد من الأشخاص، ولا توجد طريقة سهلة للبحث عنه حيث يتم تحديد الموقع عبر الإحداثيات وليس الاسم. لو كان هناك طريقة لحفظ مجموعة من إحداثيات خط العرض/خط الطول مع اسم مخصّص، لكان ذلك مفيدًا جدًا.

إعجاب واحد (1)

نعم. يمكنك حفظ الإحداثيات فقط في موضوع.

تأكد فقط من:

إذا قمت بإيقاف حقول الإدخال، يمكنك استخدام البحث العام ما دام أن الموقع لديه إدراج في مزود تحديد الموقع الجغرافي الخاص بك:

إعجاب واحد (1)