diff --git a/public/translations/ar/default.json b/public/translations/ar/default.json index d46db13d..09bb8261 100644 --- a/public/translations/ar/default.json +++ b/public/translations/ar/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "تجاهل", "board_address_unverified_warning": "لم يتم التحقق من عنوان هذه اللوحة. قد لا يكون مالك اللوحة مالكًا لهذا العنوان.", - "go_to_settings_to_import_mod_account": "انتقل إلى <1>الإعدادات لاستيراد حساب المشرف الخاص بك" + "go_to_settings_to_import_mod_account": "انتقل إلى <1>الإعدادات لاستيراد حساب المشرف الخاص بك", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/bn/default.json b/public/translations/bn/default.json index 46c92c64..d2e260af 100644 --- a/public/translations/bn/default.json +++ b/public/translations/bn/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "উপেক্ষা করুন", "board_address_unverified_warning": "এই বোর্ড ঠিকানাটি যাচাই করা হয়নি। বোর্ডের মালিক এই ঠিকানার মালিক নাও হতে পারেন।", - "go_to_settings_to_import_mod_account": "আপনার মড অ্যাকাউন্ট আমদানি করতে <1>সেটিংস-এ যান" + "go_to_settings_to_import_mod_account": "আপনার মড অ্যাকাউন্ট আমদানি করতে <1>সেটিংস-এ যান", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/cs/default.json b/public/translations/cs/default.json index 176bff10..875a23ed 100644 --- a/public/translations/cs/default.json +++ b/public/translations/cs/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Ignorovat", "board_address_unverified_warning": "Tato adresa nástěnky není ověřená. Vlastník nástěnky nemusí tuto adresu vlastnit.", - "go_to_settings_to_import_mod_account": "Přejděte do <1>nastavení a importujte svůj moderátorský účet" + "go_to_settings_to_import_mod_account": "Přejděte do <1>nastavení a importujte svůj moderátorský účet", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/da/default.json b/public/translations/da/default.json index 07417ebf..2d602418 100644 --- a/public/translations/da/default.json +++ b/public/translations/da/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Ignorer", "board_address_unverified_warning": "Denne boardadresse er ikke verificeret. Boardets ejer ejer muligvis ikke denne adresse.", - "go_to_settings_to_import_mod_account": "Gå til <1>indstillinger for at importere din mod-konto" + "go_to_settings_to_import_mod_account": "Gå til <1>indstillinger for at importere din mod-konto", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/de/default.json b/public/translations/de/default.json index 47338153..55a46467 100644 --- a/public/translations/de/default.json +++ b/public/translations/de/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Ignorieren", "board_address_unverified_warning": "Diese Board-Adresse ist nicht verifiziert. Der Board-Betreiber besitzt diese Adresse möglicherweise nicht.", - "go_to_settings_to_import_mod_account": "Gehe zu <1>Einstellungen, um dein Moderatorkonto zu importieren" + "go_to_settings_to_import_mod_account": "Gehe zu <1>Einstellungen, um dein Moderatorkonto zu importieren", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/el/default.json b/public/translations/el/default.json index 56f41b5f..154446c7 100644 --- a/public/translations/el/default.json +++ b/public/translations/el/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Παράβλεψη", "board_address_unverified_warning": "Αυτή η διεύθυνση board δεν έχει επαληθευτεί. Ο ιδιοκτήτης του board ενδέχεται να μην κατέχει αυτή τη διεύθυνση.", - "go_to_settings_to_import_mod_account": "Μεταβείτε στις <1>ρυθμίσεις για να εισαγάγετε τον λογαριασμό διαχειριστή σας" + "go_to_settings_to_import_mod_account": "Μεταβείτε στις <1>ρυθμίσεις για να εισαγάγετε τον λογαριασμό διαχειριστή σας", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/en/default.json b/public/translations/en/default.json index e3177493..904d375c 100644 --- a/public/translations/en/default.json +++ b/public/translations/en/default.json @@ -409,5 +409,6 @@ "media_failed_to_load_inline_unknown": "External image failed. Try VPN.", "directory_status_unavailable_reason": "check only available for top 5 boards", "modQueue.dismiss": "Dismiss", - "board_address_unverified_warning": "This board address is not verified. The board owner might not own this address." + "board_address_unverified_warning": "This board address is not verified. The board owner might not own this address.", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/es/default.json b/public/translations/es/default.json index 8fb4bac6..0438af00 100644 --- a/public/translations/es/default.json +++ b/public/translations/es/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Descartar", "board_address_unverified_warning": "Esta dirección del tablón no está verificada. Es posible que el propietario del tablón no sea dueño de esta dirección.", - "go_to_settings_to_import_mod_account": "Ve a <1>configuración para importar tu cuenta de moderador" + "go_to_settings_to_import_mod_account": "Ve a <1>configuración para importar tu cuenta de moderador", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/fa/default.json b/public/translations/fa/default.json index 17982d5c..864624a8 100644 --- a/public/translations/fa/default.json +++ b/public/translations/fa/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "نادیده گرفتن", "board_address_unverified_warning": "این نشانی برد تأیید نشده است. ممکن است مالک برد صاحب این نشانی نباشد.", - "go_to_settings_to_import_mod_account": "برای وارد کردن حساب مدیر خود به <1>تنظیمات بروید" + "go_to_settings_to_import_mod_account": "برای وارد کردن حساب مدیر خود به <1>تنظیمات بروید", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/fi/default.json b/public/translations/fi/default.json index c80e2b97..f78e1b8a 100644 --- a/public/translations/fi/default.json +++ b/public/translations/fi/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Ohita", "board_address_unverified_warning": "Tätä laudan osoitetta ei ole vahvistettu. Laudan omistaja ei välttämättä omista tätä osoitetta.", - "go_to_settings_to_import_mod_account": "Siirry <1>asetuksiin tuodaksesi moderaattoritilisi" + "go_to_settings_to_import_mod_account": "Siirry <1>asetuksiin tuodaksesi moderaattoritilisi", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/fil/default.json b/public/translations/fil/default.json index e7a55588..eb3c44ce 100644 --- a/public/translations/fil/default.json +++ b/public/translations/fil/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Huwag pansinin", "board_address_unverified_warning": "Hindi beripikado ang address ng board na ito. Maaaring hindi pag-aari ng may-ari ng board ang address na ito.", - "go_to_settings_to_import_mod_account": "Pumunta sa <1>mga setting para i-import ang iyong mod account" + "go_to_settings_to_import_mod_account": "Pumunta sa <1>mga setting para i-import ang iyong mod account", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/fr/default.json b/public/translations/fr/default.json index d84d541c..fad0ecbf 100644 --- a/public/translations/fr/default.json +++ b/public/translations/fr/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Ignorer", "board_address_unverified_warning": "Cette adresse de board n'est pas vérifiée. Le propriétaire du board pourrait ne pas posséder cette adresse.", - "go_to_settings_to_import_mod_account": "Allez dans les <1>paramètres pour importer votre compte de modération" + "go_to_settings_to_import_mod_account": "Allez dans les <1>paramètres pour importer votre compte de modération", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/he/default.json b/public/translations/he/default.json index 3ce84411..311d3a30 100644 --- a/public/translations/he/default.json +++ b/public/translations/he/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "התעלם", "board_address_unverified_warning": "כתובת הלוח הזו אינה מאומתת. ייתכן שבעל הלוח אינו הבעלים של הכתובת הזו.", - "go_to_settings_to_import_mod_account": "עבור אל <1>הגדרות כדי לייבא את חשבון המוד שלך" + "go_to_settings_to_import_mod_account": "עבור אל <1>הגדרות כדי לייבא את חשבון המוד שלך", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/hi/default.json b/public/translations/hi/default.json index a2a69720..2f329d73 100644 --- a/public/translations/hi/default.json +++ b/public/translations/hi/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "अनदेखा करें", "board_address_unverified_warning": "इस बोर्ड पते की पुष्टि नहीं हुई है। हो सकता है बोर्ड का मालिक इस पते का मालिक न हो।", - "go_to_settings_to_import_mod_account": "अपना मॉड खाता इम्पोर्ट करने के लिए <1>सेटिंग्स पर जाएं" + "go_to_settings_to_import_mod_account": "अपना मॉड खाता इम्पोर्ट करने के लिए <1>सेटिंग्स पर जाएं", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/hu/default.json b/public/translations/hu/default.json index e515c64a..a2dea09e 100644 --- a/public/translations/hu/default.json +++ b/public/translations/hu/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Mellőzés", "board_address_unverified_warning": "Ez a board-cím nincs ellenőrizve. Lehet, hogy a board tulajdonosa nem birtokolja ezt a címet.", - "go_to_settings_to_import_mod_account": "Lépj a <1>beállítások menübe a moderátori fiókod importálásához" + "go_to_settings_to_import_mod_account": "Lépj a <1>beállítások menübe a moderátori fiókod importálásához", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/id/default.json b/public/translations/id/default.json index 2011d142..7be60ad4 100644 --- a/public/translations/id/default.json +++ b/public/translations/id/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Abaikan", "board_address_unverified_warning": "Alamat board ini belum diverifikasi. Pemilik board mungkin tidak memiliki alamat ini.", - "go_to_settings_to_import_mod_account": "Buka <1>pengaturan untuk mengimpor akun mod Anda" + "go_to_settings_to_import_mod_account": "Buka <1>pengaturan untuk mengimpor akun mod Anda", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/it/default.json b/public/translations/it/default.json index 8656adb2..b1faf633 100644 --- a/public/translations/it/default.json +++ b/public/translations/it/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Ignora", "board_address_unverified_warning": "Questo indirizzo della board non è verificato. Il proprietario della board potrebbe non possedere questo indirizzo.", - "go_to_settings_to_import_mod_account": "Vai alle <1>impostazioni per importare il tuo account mod" + "go_to_settings_to_import_mod_account": "Vai alle <1>impostazioni per importare il tuo account mod", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/ja/default.json b/public/translations/ja/default.json index 01ca2a72..0f95d1d9 100644 --- a/public/translations/ja/default.json +++ b/public/translations/ja/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "無視", "board_address_unverified_warning": "このボードアドレスは検証されていません。ボード所有者がこのアドレスを所有していない可能性があります。", - "go_to_settings_to_import_mod_account": "モデレーターアカウントをインポートするには<1>設定に移動してください" + "go_to_settings_to_import_mod_account": "モデレーターアカウントをインポートするには<1>設定に移動してください", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/ko/default.json b/public/translations/ko/default.json index e92d422a..57838bcb 100644 --- a/public/translations/ko/default.json +++ b/public/translations/ko/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "무시", "board_address_unverified_warning": "이 보드 주소는 확인되지 않았습니다. 보드 소유자가 이 주소를 소유하지 않았을 수 있습니다.", - "go_to_settings_to_import_mod_account": "관리자 계정을 가져오려면 <1>설정으로 이동하세요" + "go_to_settings_to_import_mod_account": "관리자 계정을 가져오려면 <1>설정으로 이동하세요", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/mr/default.json b/public/translations/mr/default.json index da3ca9ce..a2efd368 100644 --- a/public/translations/mr/default.json +++ b/public/translations/mr/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "दुर्लक्ष करा", "board_address_unverified_warning": "हा बोर्ड पत्ता सत्यापित केलेला नाही. बोर्डचा मालक हा पत्ता मालक नसू शकतो.", - "go_to_settings_to_import_mod_account": "तुमचे मॉड खाते आयात करण्यासाठी <1>सेटिंग्ज वर जा" + "go_to_settings_to_import_mod_account": "तुमचे मॉड खाते आयात करण्यासाठी <1>सेटिंग्ज वर जा", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/nl/default.json b/public/translations/nl/default.json index 60574002..cc26c3f5 100644 --- a/public/translations/nl/default.json +++ b/public/translations/nl/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Negeren", "board_address_unverified_warning": "Dit boardadres is niet geverifieerd. De eigenaar van het board is mogelijk niet de eigenaar van dit adres.", - "go_to_settings_to_import_mod_account": "Ga naar <1>instellingen om je mod-account te importeren" + "go_to_settings_to_import_mod_account": "Ga naar <1>instellingen om je mod-account te importeren", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/no/default.json b/public/translations/no/default.json index 72305266..13d03828 100644 --- a/public/translations/no/default.json +++ b/public/translations/no/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Ignorer", "board_address_unverified_warning": "Denne board-adressen er ikke bekreftet. Board-eieren eier kanskje ikke denne adressen.", - "go_to_settings_to_import_mod_account": "Gå til <1>innstillinger for å importere modkontoen din" + "go_to_settings_to_import_mod_account": "Gå til <1>innstillinger for å importere modkontoen din", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/pl/default.json b/public/translations/pl/default.json index 640c141a..b6706118 100644 --- a/public/translations/pl/default.json +++ b/public/translations/pl/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Pomiń", "board_address_unverified_warning": "Ten adres boarda nie jest zweryfikowany. Właściciel boarda może nie być właścicielem tego adresu.", - "go_to_settings_to_import_mod_account": "Przejdź do <1>ustawień, aby zaimportować swoje konto moderatora" + "go_to_settings_to_import_mod_account": "Przejdź do <1>ustawień, aby zaimportować swoje konto moderatora", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/pt/default.json b/public/translations/pt/default.json index db08a4b0..61b35a10 100644 --- a/public/translations/pt/default.json +++ b/public/translations/pt/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Ignorar", "board_address_unverified_warning": "Este endereço do board não foi verificado. O proprietário do board pode não ser dono deste endereço.", - "go_to_settings_to_import_mod_account": "Vá para <1>configurações para importar sua conta de mod" + "go_to_settings_to_import_mod_account": "Vá para <1>configurações para importar sua conta de mod", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/ro/default.json b/public/translations/ro/default.json index 07c9dcf2..46813d93 100644 --- a/public/translations/ro/default.json +++ b/public/translations/ro/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Ignoră", "board_address_unverified_warning": "Această adresă de board nu este verificată. Proprietarul boardului s-ar putea să nu dețină această adresă.", - "go_to_settings_to_import_mod_account": "Accesează <1>setările pentru a importa contul tău de moderator" + "go_to_settings_to_import_mod_account": "Accesează <1>setările pentru a importa contul tău de moderator", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/ru/default.json b/public/translations/ru/default.json index 51933972..efd6759f 100644 --- a/public/translations/ru/default.json +++ b/public/translations/ru/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Скрыть", "board_address_unverified_warning": "Этот адрес доски не проверен. Владелец доски может не владеть этим адресом.", - "go_to_settings_to_import_mod_account": "Перейдите в <1>настройки, чтобы импортировать свой аккаунт модератора" + "go_to_settings_to_import_mod_account": "Перейдите в <1>настройки, чтобы импортировать свой аккаунт модератора", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/sq/default.json b/public/translations/sq/default.json index 289dfe5b..770df13f 100644 --- a/public/translations/sq/default.json +++ b/public/translations/sq/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Shpërfill", "board_address_unverified_warning": "Kjo adresë e board-it nuk është verifikuar. Pronari i board-it mund të mos e zotërojë këtë adresë.", - "go_to_settings_to_import_mod_account": "Shkoni te <1>parametrat për të importuar llogarinë tuaj të modit" + "go_to_settings_to_import_mod_account": "Shkoni te <1>parametrat për të importuar llogarinë tuaj të modit", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/sv/default.json b/public/translations/sv/default.json index 598fa5f0..2950e643 100644 --- a/public/translations/sv/default.json +++ b/public/translations/sv/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Avfärda", "board_address_unverified_warning": "Den här board-adressen är inte verifierad. Boardets ägare kanske inte äger den här adressen.", - "go_to_settings_to_import_mod_account": "Gå till <1>inställningar för att importera ditt modkonto" + "go_to_settings_to_import_mod_account": "Gå till <1>inställningar för att importera ditt modkonto", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/te/default.json b/public/translations/te/default.json index 316d4839..de6ba990 100644 --- a/public/translations/te/default.json +++ b/public/translations/te/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "విస్మరించు", "board_address_unverified_warning": "ఈ బోర్డ్ చిరునామా ధృవీకరించబడలేదు. బోర్డ్ యజమాని ఈ చిరునామాకు యజమాని కాకపోవచ్చు.", - "go_to_settings_to_import_mod_account": "మీ మోడ్ ఖాతాను దిగుమతి చేయడానికి <1>అమరికలుకి వెళ్లండి" + "go_to_settings_to_import_mod_account": "మీ మోడ్ ఖాతాను దిగుమతి చేయడానికి <1>అమరికలుకి వెళ్లండి", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/th/default.json b/public/translations/th/default.json index b1ece99e..fef64eb2 100644 --- a/public/translations/th/default.json +++ b/public/translations/th/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "มองข้าม", "board_address_unverified_warning": "ที่อยู่บอร์ดนี้ยังไม่ได้รับการยืนยัน เจ้าของบอร์ดอาจไม่ได้เป็นเจ้าของที่อยู่นี้", - "go_to_settings_to_import_mod_account": "ไปที่ <1>การตั้งค่า เพื่อนำเข้าบัญชีผู้ดูแลของคุณ" + "go_to_settings_to_import_mod_account": "ไปที่ <1>การตั้งค่า เพื่อนำเข้าบัญชีผู้ดูแลของคุณ", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/tr/default.json b/public/translations/tr/default.json index fbd329ee..a4a028aa 100644 --- a/public/translations/tr/default.json +++ b/public/translations/tr/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Yoksay", "board_address_unverified_warning": "Bu board adresi doğrulanmamış. Board sahibi bu adresin sahibi olmayabilir.", - "go_to_settings_to_import_mod_account": "Mod hesabınızı içe aktarmak için <1>ayarlara gidin" + "go_to_settings_to_import_mod_account": "Mod hesabınızı içe aktarmak için <1>ayarlara gidin", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/uk/default.json b/public/translations/uk/default.json index aaeb26a2..90523d49 100644 --- a/public/translations/uk/default.json +++ b/public/translations/uk/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Приховати", "board_address_unverified_warning": "Цю адресу дошки не перевірено. Власник дошки може не володіти цією адресою.", - "go_to_settings_to_import_mod_account": "Перейдіть до <1>налаштувань, щоб імпортувати свій обліковий запис модератора" + "go_to_settings_to_import_mod_account": "Перейдіть до <1>налаштувань, щоб імпортувати свій обліковий запис модератора", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/ur/default.json b/public/translations/ur/default.json index 080bffa0..6148d4fc 100644 --- a/public/translations/ur/default.json +++ b/public/translations/ur/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "نظر انداز کریں", "board_address_unverified_warning": "اس بورڈ کے پتے کی تصدیق نہیں ہوئی۔ ممکن ہے بورڈ کا مالک اس پتے کا مالک نہ ہو۔", - "go_to_settings_to_import_mod_account": "اپنا موڈ اکاؤنٹ درآمد کرنے کے لیے <1>ترتیبات پر جائیں" + "go_to_settings_to_import_mod_account": "اپنا موڈ اکاؤنٹ درآمد کرنے کے لیے <1>ترتیبات پر جائیں", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/vi/default.json b/public/translations/vi/default.json index 32a6b89f..536d146e 100644 --- a/public/translations/vi/default.json +++ b/public/translations/vi/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "Bỏ qua", "board_address_unverified_warning": "Địa chỉ bảng này chưa được xác minh. Chủ bảng có thể không sở hữu địa chỉ này.", - "go_to_settings_to_import_mod_account": "Vào <1>cài đặt để nhập tài khoản mod của bạn" + "go_to_settings_to_import_mod_account": "Vào <1>cài đặt để nhập tài khoản mod của bạn", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/public/translations/zh/default.json b/public/translations/zh/default.json index 98397d46..3e8c7842 100644 --- a/public/translations/zh/default.json +++ b/public/translations/zh/default.json @@ -390,5 +390,6 @@ "nothing_found": "Nothing Found", "modQueue.dismiss": "忽略", "board_address_unverified_warning": "此版面地址尚未验证。版主可能并不拥有此地址。", - "go_to_settings_to_import_mod_account": "前往<1>设置以导入您的版主账户" + "go_to_settings_to_import_mod_account": "前往<1>设置以导入您的版主账户", + "post_form_rules_faq_prompt": "Please read the Rules and FAQ before posting." } diff --git a/src/components/post-form/__tests__/post-form.test.tsx b/src/components/post-form/__tests__/post-form.test.tsx index 61c7cf1d..c0edd0fa 100644 --- a/src/components/post-form/__tests__/post-form.test.tsx +++ b/src/components/post-form/__tests__/post-form.test.tsx @@ -53,11 +53,30 @@ const testState = vi.hoisted(() => ({ uploadedFileName: 'picked.png' as string | null, })); -vi.mock('react-i18next', () => ({ - useTranslation: () => ({ - t: (key: string, options?: Record) => (options?.domain ? `${key}:${options.domain}` : key), - }), -})); +vi.mock('react-i18next', async () => { + const React = await vi.importActual('react'); + + return { + Trans: ({ i18nKey, components }: { components?: Record; i18nKey: string }) => { + if (i18nKey === 'post_form_rules_faq_prompt') { + return React.createElement( + React.Fragment, + {}, + 'Please read the ', + components?.rules ? React.cloneElement(components.rules, {}, 'Rules') : 'Rules', + ' and ', + components?.faq ? React.cloneElement(components.faq, {}, 'FAQ') : 'FAQ', + ' before posting.', + ); + } + + return i18nKey; + }, + useTranslation: () => ({ + t: (key: string, options?: Record) => (options?.domain ? `${key}:${options.domain}` : key), + }), + }; +}); vi.mock('react-router-dom', async () => { const actual = await vi.importActual('react-router-dom'); @@ -643,6 +662,27 @@ describe('PostForm', () => { expect(table?.textContent).toContain('file name.jpg'); }); + it('shows the rules and FAQ prompt below the file row with a board-specific rules link', async () => { + testState.resolvedCommunityAddress = 'music-posting.eth'; + + await renderPostForm('/mu'); + await clickByText(container, 'start_new_thread'); + + const table = container.querySelector('table'); + const rows = Array.from(table?.querySelectorAll('tr') || []); + const fileRowIndex = rows.findIndex((row) => row.querySelector('td')?.textContent === 'file'); + const promptRowIndex = rows.findIndex((row) => row.textContent === 'Please read the Rules and FAQ before posting.'); + const promptRow = rows[promptRowIndex]; + const links = Array.from(promptRow?.querySelectorAll('a') || []); + + expect(fileRowIndex).toBeGreaterThan(-1); + expect(promptRowIndex).toBe(fileRowIndex + 1); + expect(promptRow?.className).toBe('rules'); + expect(promptRow?.querySelector('ul')?.className).toBe('rules'); + expect(links.map((link) => link.textContent)).toEqual(['Rules', 'FAQ']); + expect(links.map((link) => link.getAttribute('href'))).toEqual(['/rules/mu', '/faq']); + }); + it('shortens long pasted file-link filenames next to the upload button', async () => { testState.uploadedFileName = null; diff --git a/src/components/post-form/post-form.module.css b/src/components/post-form/post-form.module.css index e9563781..bf3a30e8 100644 --- a/src/components/post-form/post-form.module.css +++ b/src/components/post-form/post-form.module.css @@ -182,6 +182,40 @@ font-weight: normal; } +.postFormTable :global(ul.rules) { + margin: 0px; + padding: 0px; + margin-top: 5px; +} + +.postFormTable :global(ul.rules > li) { + list-style: none; + font-size: 11px; +} + +.postFormTable :global(.rules > li::before) { + content: "\2022 \20"; +} + +.postFormTable :global(tr.rules td) { + border: 0px !important; + background-color: transparent !important; + font-weight: normal !important; + text-transform: none !important; +} + +.postFormTable :global(tr.rules a), +.postFormTable :global(tr.rules a:visited) { + color: var(--post-link-text-color); + text-decoration: none; +} + +.postFormTable :global(tr.rules a:hover), +.postFormTable :global(tr.rules a:visited:hover) { + color: var(--post-link-text-color-hover); + text-decoration: none; +} + .error { font-weight: bold; padding: 5px; diff --git a/src/components/post-form/post-form.tsx b/src/components/post-form/post-form.tsx index 176d9e64..7a1d7050 100644 --- a/src/components/post-form/post-form.tsx +++ b/src/components/post-form/post-form.tsx @@ -1,7 +1,7 @@ import { useEffect, useRef, useState } from 'react'; -import { useTranslation } from 'react-i18next'; +import { Trans, useTranslation } from 'react-i18next'; import type { TFunction } from 'i18next'; -import { useLocation, useNavigate, useParams } from 'react-router-dom'; +import { Link, useLocation, useNavigate, useParams } from 'react-router-dom'; import { Comment, setAccount, useAccount, useEditedComment } from '@bitsocial/bitsocial-react-hooks'; import getShortAddress from '../../lib/get-short-address'; import useCommunitiesPagesStore from '@bitsocial/bitsocial-react-hooks/dist/stores/communities-pages'; @@ -10,6 +10,7 @@ import { getExpiringMediaLinkAlert } from '../../lib/utils/media-link-validation import { truncateWithEllipsisInMiddle } from '../../lib/utils/string-utils'; import { getPublishURLFilename, isValidPublishURL, isValidURL } from '../../lib/utils/url-utils'; import { hasModQueueAccessRole } from '../../lib/utils/mod-access'; +import { getBoardPath } from '../../lib/utils/route-utils'; import { isAllView, isCatalogView, isModQueueView, isModView, isPostPageView, isSubscriptionsView } from '../../lib/utils/view-utils'; import { useAccountCommunityAddresses } from '../../hooks/use-account-community-addresses'; import { useDirectories, useDirectoryByAddress } from '../../hooks/use-directories'; @@ -132,6 +133,7 @@ interface PostFormFieldsProps { accountCommunityAddresses: string[]; subscriptions: string[]; communityAddress: string | undefined; + rulesPath: string; requirePostLinkIsMedia: boolean; showBbcodeToolbar: boolean; onBbcodePreviewToggle: () => void; @@ -171,6 +173,7 @@ const PostFormFields = ({ accountCommunityAddresses, subscriptions, communityAddress, + rulesPath, requirePostLinkIsMedia, showBbcodeToolbar, onBbcodePreviewToggle, @@ -313,6 +316,21 @@ const PostFormFields = ({ )} + + +
    +
  • + , + faq: , + }} + /> +
  • +
+ + {((isInPostView && showSpoilerForReply) || (!isInPostView && showSpoilerForPost)) && ( {t('options')} @@ -388,6 +406,7 @@ const PostFormTable = ({ closeForm, postCid }: { closeForm: () => void; postCid: const subscriptions = account?.subscriptions || []; const directories = useDirectories(); const directoryEntry = useDirectoryByAddress(effectiveBoardAddress); + const rulesPath = effectiveBoardAddress ? `/rules/${getBoardPath(effectiveBoardAddress, directories)}` : '/rules'; const showSpoilerForPost = directoryEntry?.features?.noSpoilers !== true; const showSpoilerForReply = directoryEntry?.features?.noSpoilerReplies !== true; const requirePostLinkIsMediaFeature = directoryEntry?.features?.requirePostLinkIsMedia; @@ -621,6 +640,7 @@ const PostFormTable = ({ closeForm, postCid }: { closeForm: () => void; postCid: accountCommunityAddresses={accountCommunityAddresses} subscriptions={subscriptions} communityAddress={communityAddress} + rulesPath={rulesPath} requirePostLinkIsMedia={requirePostLinkIsMedia} showBbcodeToolbar={showBbcodeToolbar} onBbcodePreviewToggle={handleBbcodePreviewToggle}