إضافة Locations 🌍

|||
-|-|-|
:information_source: | ملخص | يتيح لك ربط المواقع المحددة جغرافيًا بالمواضيع وعرضها على خريطة جميلة. كما يسمح للمستخدمين بتسجيل مواقعهم وعرضها بشكل جماعي على خريطة مركزية للمستخدمين على موقعك.
:hammer_and_wrench: | رابط المستودع | GitHub - merefield/discourse-locations: Tools for handling locations in Discourse · GitHub
:open_book: | دليل التثبيت | كيفية تثبيت الإضافات في Discourse
:heart: | الرعاية | يرجى التفكير في أن تصبح راعيًا مستمرًا لعملي في المصادر المفتوحة بمستوى يناسب مواردك واحتياجاتك أو احتياجات مؤسستك لضمان حصول هذه الإضافة على الصيانة التي تستحقها وتستمر في العمل لموقعك في المستقبل.

هل تستمتع بهذه الإضافة؟ يرجى وضع :star: لها على GitHub

التوثيق

اعرض ملف README على المستودع

الدعم

أنا لا أقدم أي دعم مضمون مجانًا. يمكنني تقديم الدعم للشركات أو المؤسسات التي تشترك في أحد مستويات الرعاية الشهرية الذهبية أو البلاتينية.

هناك خيار لاصطياد الأخطاء لمرة واحدة.

وهناك فرصة رعاية حالية مرتبطة بتحسينات خريطة المستخدم:

110 إعجابات
OpenStreet maps embedding
Events Plugin :calendar:
Learn how to build Discourse plugins by helping me
Suitability of Discourse for Discussion on Page
Locations dropdown (Google maybe?)
Enable tagging only in some categories
My 2nd Discourse forum, 2 years after the first one
How to add custom fields to models
2020: The Year in Review
Events Plugin :calendar:
Listing users by group - ERROR: missing FROM-clause entry for table "groups"
2021: The Year in Review
A "Votes" option for the top menu in main page
Forum Completely Broken 2.8.5
It's Time We Talked About Tags
Who use event plugin in their discourse community?
Automated map
Configure plugin Custom Wizard for autoposting
2022: The Year in Review
Show a modal dialog after clicking toolbar button via a plugin
Must have plugins and components for Discourse?
Getting a 500 error on the mobile for bookmark and some category pages
Get aggregate user location data from IP addresses?
Could a List of Recommended Topics Be Added to the Top Menu?
2023: The Year in Review
¿Cómo encuentro a una persona en Discourse?
New Theme: Tag-Pages Navigation
Is it possible to add a location and display them on a map?
Generating an ical to use with a custom map
Remove overriding of cmd/ctrl-f
Locate a feature like the one shown in the photo
Usercard Redesign Experiment
2024: The Year in Review
Migrated my old custom-built trail-journal/blog to Discourse
Newly created topic shown location based on device
Alternative post templates
What happens next?
Discourse-events 'this.router' error
请教关于MaxMind 错误日志问题
National Flags
How minimal is your forum?
Layouts Plugin
Suggestions on how I can have hundreds of small groups (e.g. streets in a town)?
Problème accès aux onglets des paramètres des catégories
Discourse.fontawesome-6-upgrade needs updating
Locations plugin modifications
Traditional multi level hierarchy vs flat discourse hierarchy
More options to filter users on users page
Project ideas for Google Summer of Code 2018
Traditional multi level hierarchy vs flat discourse hierarchy
Any way to display Location below the name in posts?
Topic List Previews (legacy)
Developing with Discourse
Calendar plugin features to make it really useful for us
Learn how to build Discourse plugins by helping me
Developing
Discourse-common asset availability: difference between development and production?
2018: The Year in Review
Object instead of users due to locations plugin
Inserting a date with Paris timezone gives me Berlin
Failed building stable due to 3rd party plugin
Events Plugin :calendar:
How to make a topic filter based on current user group and topic location
2019: The Year in Review
United states map
Fig - Native Discourse client for iOS
Loading slider issues
Job exception: undefined method `name' for
A plugin to "check" a portion of a post before it can be posted

أنا جديد جدًا في هذه التكنولوجيا. قمت بتثبيت الإضافة (أرى أمر الخريطة في قائمة الهامبرغر ولدي حقل الموقع في صفحة ملفي الشخصي (مع عمل مرجعية جغرافية باستخدام nominatim) لكن…

لا أرى زر “إضافة موقع” في المحرر.

هذه هي تكويني:

وهذا هو نافذة المحرر:

وأخيرًا، هذه هي الطريقة التي قمت بها بتثبيت الإضافة:

hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-math.git
          - git clone https://github.com/paviliondev/discourse-events.git
          - git clone https://github.com/paviliondev/discourse-locations.git
          - git clone https://github.com/davidtaylorhq/discourse-whos-online.git
          - git clone https://github.com/discourse/twitter-profile-link.git
          - git clone https://github.com/discourse/discourse-tooltips.git

لقد جربت مع locale= en مع نفس النتائج.

إعجابَين (2)

حسناً، حسناً، تصحيح: يعمل الإضافة كما هو متوقع في ملف المستخدم.

وفقاً للخريطة، أنا شخص متوفى لأن الخريطة تشير إلى نقطة في وسط أكبر مقبرة في مونتريال:

13 إعجابًا

يجب تفعيله لكل فئة ترغب في استخدامه فيها أيضًا.

6 إعجابات

شكرًا لك! لقد نجح الأمر.

بالمناسبة، كانت علامة الصح “مفعّلة” افتراضيًا، ولكن! يجب عليك إظهار لوحة الإعدادات، وإلغاء تحديد المربع ثم تحديده مجددًا لكي تعمل الميزة فعليًا.

4 إعجابات

سعيد لأنك نجحت في تشغيله. لقد مرّ وقت طويل منذ أن استخدمت هذه الإضافة، لذا كان ذلك مجرد تخمين مني.

3 إعجابات

@angus لاحظت هذه المشكلة مؤخرًا عندما لا يدخل المستخدمون موقعهم في ملفهم الشخصي:

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

ربما يتعلق الأمر بمن حذفوا موقعهم من ملفهم الشخصي؟ أو ربما يكون السلسلة الفارغة مثل “” بدلاً من NULL؟ :thinking:

3 إعجابات

يبدو أن التحديث الأخير أزال الموقع من بطاقة المستخدم تمامًا.

بطاقة المستخدم:
user-card

ملف المستخدم:

3 إعجابات

من المرجح جدًا أن يكون السبب في هذا التغيير الأساسي:

5 إعجابات

@omarfilip @david شكرًا لكما على هذه المعلومة :+1:t2:

@angus هل يمكنك تعديل هذا؟

4 إعجابات

@david @Richie شكرًا لكم، تم تحديث هذه الإضافة لدعم التغيير.

تنبيه سريع: ستنتقل هذه الإضافة قريبًا إلى جدول التحديثات نفسه الذي تتبعه الإضافات الرئيسية الأخرى في Pavilion. وهذا يعني أنها سيتم مواءمتها مع نواة Discourse الأحدث في الأسبوع الأول من كل شهر. تفاصيل أكثر خاصة بهذه الإضافة ستُتبع لاحقًا، لكن راجع المزيد هنا:

5 إعجابات

شكرًا لك على الإصلاح السريع، أنجوس.

4 إعجابات

مرحبًا @angus، تم تأكيد أن المواقع تظهر الآن على بطاقة المستخدم، لكننا لا نزال نواجه المشكلة التي تظهر فيها أيقونة دبوس الخريطة وأيقونة الخريطة لبعض المستخدمين حتى لو لم يتم إدخال موقع لهم:

وعلى صفحة ملفهم الشخصي الكاملة:

4 إعجابات

لا يمكنني تشغيل تطبيق Discourse حاليًا بسبب إضافة المواقع. سأرفق سجل الأخطاء أدناه، ويعمل التطبيق إذا قمت بإلغاء التعليق على إضافة المواقع في ملف app.yml. هل يمكن لأحد أن يعطي الأولوية لهذه المشكلة ويصلحها؟

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

السجل
5: from /var/www/discourse/plugins/discourse-layouts/plugin.rb:49:in `block in activate!'
4: from /var/www/discourse/lib/discourse_event.rb:13:in `trigger'
3: from /usr/local/lib/ruby/2.6.0/set.rb:338:in `each'
2: from /usr/local/lib/ruby/2.6.0/set.rb:338:in `each_key'
1: from /var/www/discourse/lib/discourse_event.rb:14:in `block in trigger'
/var/www/discourse/plugins/discourse-locations/plugin.rb:234:in `block in activate!': uninitialized constant DiscourseLayouts::WidgetHelper
Did you mean?  DiscourseLayouts::WidgetSerializer (NameError)

** إضافة غير متوافقة **

لا يمكنك بناء Discourse بسبب أخطاء في الإضافة الموجودة في
/var/www/discourse/plugins/discourse-locations

يرجى محاولة إزالة هذه الإضافة وإعادة البناء مرة أخرى!
I, [2020-04-25T20:32:06.399307 #1]  INFO -- : gem install icalendar -v 2.4.1 -i /var/www/discourse/plugins/discourse-events/gems/2.6.5 --no-document --ignore-dependencies --no-user-install
HEADS UP! iCalendar 2.0 غير متوافق مع الإصدارات 1.x. يرجى مراجعة ملف README للتعرف على بناء الجملة الجديد

HEADS UP! icalendar 2.2.0 ينتقل إلى التحليل غير الصارم كإعداد افتراضي. يرجى مراجعة ملف README إذا كنت
تعتمد على التحليل الصارم للحصول على معلومات حول كيفية تمكينه.

مطلوب ActiveSupport لدعم TimeWithZone، لكنه ليس مطلوبًا للاستخدام العام.
Successfully installed icalendar-2.4.1
1 gem installed
gem install geocoder -v 1.4.4 -i /var/www/discourse/plugins/discourse-locations/gems/2.6.5 --no-document --ignore-dependencies --no-user-install
Successfully installed geocoder-1.4.4
1 gem installed

I, [2020-04-25T20:32:06.400580 #1]  INFO -- : Terminating async processes
I, [2020-04-25T20:32:06.400773 #1]  INFO -- : Sending INT to HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/10/bin/postmaster -D /etc/postgresql/10/main pid: 50
I, [2020-04-25T20:32:06.400979 #1]  INFO -- : Sending TERM to exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 167
167:signal-handler (1587846726) Received SIGTERM scheduling shutdown...
2020-04-25 20:32:06.401 UTC [50] LOG:  received fast shutdown request
2020-04-25 20:32:06.403 UTC [50] LOG:  aborting any active transactions
2020-04-25 20:32:06.406 UTC [50] LOG:  worker process: logical replication launcher (PID 59) exited with exit code 1
167:M 25 Apr 2020 20:32:06.406 # User requested shutdown...
167:M 25 Apr 2020 20:32:06.406 * Saving the final RDB snapshot before exiting.
2020-04-25 20:32:06.409 UTC [54] LOG:  shutting down
2020-04-25 20:32:06.439 UTC [50] LOG:  database system is shut down
167:M 25 Apr 2020 20:32:06.502 * DB saved on disk
167:M 25 Apr 2020 20:32:06.502 # Redis is now ready to exit, bye bye...


FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' failed with return #<Process::Status: pid 13098 exit 1>
Location of failure: /pups/lib/pups/exec_command.rb:112:in `spawn'
exec failed with the params {"cd"=>"$home", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
b5a02d7f9df6b6a9dc160e269de30eef49bb0aeaf5dcb1b712bab5e6edad4030
** فشل التمهيد ** يرجى التمرير للأعلى والبحث عن رسائل الخطأ السابقة، فقد يكون هناك أكثر من خطأ.
قد يساعد ./discourse-doctor في تشخيص المشكلة.
root@discuss:/var/discourse#
3 إعجابات

@k4rtik شكرًا لتقريرك، ونعتذر عن التأثير الذي تعرضت له. نشأ مشكلتك بسبب:

  1. تم تحديث مكون الإضافات (layouts plugin) قبل يومين.
  2. كان مكون الإضافات للمواقع (locations plugin) يدعم الإصدار الحالي من مكون الإضافات التخطيطي.
  3. تستخدم كلا المكونين.
  4. قمت بتحديث نظام Discourse الخاص بك بين التحديث الأولي لمكون الإضافات التخطيطي وإضافة الدعم لمكون الإضافات للمواقع.

لقد قمت بتحديث مكون الإضافات للمواقع لدعم الإصدار الجديد من مكون الإضافات التخطيطي: Update to support layouts v0.2 · merefield/discourse-locations@52aec30 · GitHub. عند التحديث الآن مع تثبيت كلا المكونين، ستعمل بشكل صحيح. @Richie هذا سيحل مشكلتك: Add include? to geo_json in user_card serializer · merefield/discourse-locations@5185063 · GitHub

للأسف، وجود فرع “اختبارات ناجحة” (tests-passed branch) في المكون الإضافي لن يساعد كثيرًا في هذه الحالة بالذات، أو في جزء لا يستهان به من حالات عدم التوافق الأخرى بين المكونات الإضافية. يقوم الأشخاص بالتحديث بترددات مختلفة ولديهم العديد من التوليفات المختلفة للتخصيصات.

مع ذلك، نحن نبدأ باتخاذ بعض الخطوات لمعالجة هذه المشكلة. نحن نتجه نحو جدولة ضمان أن تكون المكونات الإضافية المفتوحة المصدر الأساسية لشركة Pavilion (هذا المكون، والفعاليات، ومعاينات قائمة المواضيع، إلخ) محدثة مع Discourse كل 24 ساعة خلال أول 5 أيام من كل شهر، بدءًا من 1 إلى 5 مايو.

هذا يمنحك نافذة آمنة لتحديث جميع المكونات الإضافية على try.thepavilion.io بالإضافة إلى Discourse نفسه، مع يقين أكبر بأن:

  1. لن تواجه تعارضات بين المكون الإضافي وDiscourse، وإذا حدثت فسيتم معالجتها خلال أقل من 24 ساعة.

  2. لن تواجه أي مشاكل بسبب التغييرات في المكون الإضافي نفسه. أي تغييرات محتملة قد تكسر التوافق في المكون الإضافي نفسه ستحدث خارج هذه النافذة.

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

قد يتم توسيع هذه القائمة بمرور الوقت. لمزيد من التفاصيل: https://try.thepavilion.io.

إذا كان لديك أي أسئلة حول هذا، فلا تتردد في مراسلتي عبر الرسائل الخاصة، أو التواصل معنا عبر thepavilion.io.

8 إعجابات

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

إعجابَين (2)

@angus تم التأكيد - تم حل المشكلة :clap:t2:

شكرًا مجددًا لدعمكم المستمر لهذا الإضافة :smiley:

4 إعجابات

مرحبًا @angus، لقد رأيت إشعارًا يشير إلى أن أول منشور في هذا الموضوع تم تعديله.

يبدو أن موقع المستودع قد انتقل.

هل يجب علينا جميعًا تحديث إعدادات discourse إلى الموقع الجديد، أم أن الموقع الحالي/القديم سيظل مُحدَّثًا؟

هل نحتاج إلى إعادة بناء أي شيء بعد تغيير موقع مصدر الإضافة؟

3 إعجابات

مرحبًا @Richie، يمكنك الاستمرار في استخدام الرابط القديم GitHub - merefield/discourse-locations: Tools for handling locations in Discourse · GitHub. يمكنك الانتظار لتحديثه عندما تتاح لك فرصة طبيعية، أي عندما تضطر لإعادة بناء موقعك لسبب آخر.

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

سيتم تعديل المنشور الأول بشكل أكبر في الأسابيع القادمة. سأقوم بكتابة بعض التوثيق لهذا على thepavilion.io، ووصفًا أقصر هنا على meta.

4 إعجابات

ممتاز، لم أكن أعرف ذلك :+1:t2:

شكرًا مرة أخرى على الدعم!

3 إعجابات