diff --git a/internal/locale/translations/de_DE.json b/internal/locale/translations/de_DE.json index 214c987e..14325c50 100644 --- a/internal/locale/translations/de_DE.json +++ b/internal/locale/translations/de_DE.json @@ -114,9 +114,11 @@ "error.http_service_unavailable": "Die Webseite ist aufgrund eines Internal-Server-Fehlers derzeit nicht verfügbar. Das Problem liegt nicht bei Miniflux. Bitte versuchen Sie es später erneut.", "error.http_too_many_requests": "Miniflux hat zu viele Anfragen an diese Webseite gestellt. Bitte versuchen Sie es später erneut oder ändern Sie die Konfiguration der Anwendung.", "error.http_unexpected_status_code": "Die Webseite ist aufgrund eines eines unerwarteten HTTP-Fehlers derzeit nicht verfügbar: %d. Das Problem liegt nicht bei Miniflux. Bitte versuchen Sie es später erneut.", + "error.invalid_categories_sorting_order": "Ungültige Kategorie-Sortierreihenfolge.", "error.invalid_default_home_page": "Ungültige Standard-Startseite!", "error.invalid_display_mode": "Progressive-Web-App- (PWA-)Anzeigemodus", "error.invalid_entry_direction": "Ungültige Sortierreihenfolge.", + "error.invalid_entry_order": "Ungültige Sortierreihenfolge.", "error.invalid_feed_proxy_url": "Ungültige Proxy-URL.", "error.invalid_feed_url": "Ungültiger Feed-URL.", "error.invalid_gesture_nav": "Ungültige Gestennavigation.", diff --git a/internal/locale/translations/el_EL.json b/internal/locale/translations/el_EL.json index 42d07e3a..81a47176 100644 --- a/internal/locale/translations/el_EL.json +++ b/internal/locale/translations/el_EL.json @@ -114,9 +114,11 @@ "error.http_service_unavailable": "The website is not available at the moment due to an internal server error. The problem is not on Miniflux side. Please, try again later.", "error.http_too_many_requests": "Miniflux generated too many requests to this website. Please, try again later or change the application configuration.", "error.http_unexpected_status_code": "The website is not available at the moment due to an unexpected HTTP status code: %d. The problem is not on Miniflux side. Please, try again later.", + "error.invalid_categories_sorting_order": "Η κατηγορία δεν μπορεί να είναι κενή.", "error.invalid_default_home_page": "Μη έγκυρη προεπιλεγμένη αρχική σελίδα!", "error.invalid_display_mode": "Μη έγκυρη λειτουργία εμφάνισης εφαρμογών ιστού.", "error.invalid_entry_direction": "Μη έγκυρη κατεύθυνση ταξινόμησης άρθρων.", + "error.invalid_entry_order": "Η σειρά των καταχωρήσεων είναι μη έγκυρη.", "error.invalid_feed_proxy_url": "Invalid proxy URL.", "error.invalid_feed_url": "Μη έγκυρη διεύθυνση URL ροής.", "error.invalid_gesture_nav": "Μη έγκυρη πλοήγηση με χειρονομίες.", diff --git a/internal/locale/translations/en_US.json b/internal/locale/translations/en_US.json index 2b85ccfd..245e2e8c 100644 --- a/internal/locale/translations/en_US.json +++ b/internal/locale/translations/en_US.json @@ -114,9 +114,11 @@ "error.http_service_unavailable": "The website is not available at the moment due to an internal server error. The problem is not on Miniflux side. Please, try again later.", "error.http_too_many_requests": "Miniflux generated too many requests to this website. Please, try again later or change the application configuration.", "error.http_unexpected_status_code": "The website is not available at the moment due to an unexpected HTTP status code: %d. The problem is not on Miniflux side. Please, try again later.", + "error.invalid_categories_sorting_order": "Invalid categories sorting order.", "error.invalid_default_home_page": "Invalid default homepage!", "error.invalid_display_mode": "Invalid web app display mode.", "error.invalid_entry_direction": "Invalid entry direction.", + "error.invalid_entry_order": "Invalid entry order.", "error.invalid_feed_proxy_url": "Invalid proxy URL.", "error.invalid_feed_url": "Invalid feed URL.", "error.invalid_gesture_nav": "Invalid gesture navigation.", diff --git a/internal/locale/translations/es_ES.json b/internal/locale/translations/es_ES.json index 494e004c..68268707 100644 --- a/internal/locale/translations/es_ES.json +++ b/internal/locale/translations/es_ES.json @@ -114,9 +114,11 @@ "error.http_service_unavailable": "El sitio web no está disponible en estos momentos debido a un error interno del servidor. El problema no está en el lado de Miniflux. Por favor, inténtalo de nuevo más tarde.", "error.http_too_many_requests": "Miniflux generó demasiadas solicitudes a este sitio web. Por favor, inténtalo de nuevo más tarde o cambia la configuración de la aplicación.", "error.http_unexpected_status_code": "El sitio web no está disponible en este momento debido a un código de estado HTTP inesperado: %d. El problema no está en el lado de Miniflux. Por favor, inténtalo de nuevo más tarde.", + "error.invalid_categories_sorting_order": "Orden de clasificación de categorías no válido.", "error.invalid_default_home_page": "¡Página de inicio por defecto no válida!", "error.invalid_display_mode": "Modo de visualización de la aplicación web no válido.", "error.invalid_entry_direction": "Dirección de artículo no válida.", + "error.invalid_entry_order": "Orden de artículo no válido.", "error.invalid_feed_proxy_url": "Invalid proxy URL.", "error.invalid_feed_url": "URL de feed no válida.", "error.invalid_gesture_nav": "Navegación por gestos no válida.", diff --git a/internal/locale/translations/fi_FI.json b/internal/locale/translations/fi_FI.json index 65dc3ace..2498fb61 100644 --- a/internal/locale/translations/fi_FI.json +++ b/internal/locale/translations/fi_FI.json @@ -114,9 +114,11 @@ "error.http_service_unavailable": "The website is not available at the moment due to an internal server error. The problem is not on Miniflux side. Please, try again later.", "error.http_too_many_requests": "Miniflux generated too many requests to this website. Please, try again later or change the application configuration.", "error.http_unexpected_status_code": "The website is not available at the moment due to an unexpected HTTP status code: %d. The problem is not on Miniflux side. Please, try again later.", + "error.invalid_categories_sorting_order": "Virheellinen kategorioiden lajittelujärjestys.", "error.invalid_default_home_page": "Väärä oletusarvoinen kotisivu!", "error.invalid_display_mode": "Virheellinen verkkosovelluksen näyttötila.", "error.invalid_entry_direction": "Invalid entry direction.", + "error.invalid_entry_order": "Virheellinen artikkelin lajittelu.", "error.invalid_feed_proxy_url": "Invalid proxy URL.", "error.invalid_feed_url": "Virheellinen syötteen URL-osoite.", "error.invalid_gesture_nav": "Virheellinen ele-navigointi.", diff --git a/internal/locale/translations/fr_FR.json b/internal/locale/translations/fr_FR.json index 60b39407..843817b8 100644 --- a/internal/locale/translations/fr_FR.json +++ b/internal/locale/translations/fr_FR.json @@ -114,9 +114,11 @@ "error.http_service_unavailable": "Le site web n'est pas disponible pour le moment. Le problème ne vient pas de Miniflux. Veuillez réessayer plus tard.", "error.http_too_many_requests": "Miniflux a généré trop de requêtes vers ce site web. Veuillez réessayer plus tard ou changez la configuration de l'application.", "error.http_unexpected_status_code": "Le site web a répondu avec un code HTTP inattendu : %d. Le problème ne vient pas de Miniflux. Veuillez réessayer plus tard.", + "error.invalid_categories_sorting_order": "L'ordre de tri des catégories n'est pas valide.", "error.invalid_default_home_page": "Page d'accueil par défaut invalide !", "error.invalid_display_mode": "Mode d'affichage de l'application web non valide.", "error.invalid_entry_direction": "Ordre de trie non valide.", + "error.invalid_entry_order": "Ordre de tri non valide.", "error.invalid_feed_proxy_url": "L'URL du proxy n'est pas valide.", "error.invalid_feed_url": "URL de flux non valide.", "error.invalid_gesture_nav": "Navigation gestuelle non valide.", diff --git a/internal/locale/translations/hi_IN.json b/internal/locale/translations/hi_IN.json index cd90cd5e..51b6dcb6 100644 --- a/internal/locale/translations/hi_IN.json +++ b/internal/locale/translations/hi_IN.json @@ -114,9 +114,11 @@ "error.http_service_unavailable": "The website is not available at the moment due to an internal server error. The problem is not on Miniflux side. Please, try again later.", "error.http_too_many_requests": "Miniflux generated too many requests to this website. Please, try again later or change the application configuration.", "error.http_unexpected_status_code": "The website is not available at the moment due to an unexpected HTTP status code: %d. The problem is not on Miniflux side. Please, try again later.", + "error.invalid_categories_sorting_order": "अमान्य श्रेणी क्रम।", "error.invalid_default_home_page": "अमान्य डिफ़ॉल्ट मुखपृष्ठ!", "error.invalid_display_mode": "अमान्य वेब ऐप्लिकेशन प्रदर्शन मोड.", "error.invalid_entry_direction": "अमान्य प्रवेश दिशा।", + "error.invalid_entry_order": "अमान्य प्रविष्टि क्रम।", "error.invalid_feed_proxy_url": "Invalid proxy URL.", "error.invalid_feed_url": "दृष्टिकोण यूआरएल.", "error.invalid_gesture_nav": "अमान्य इशारा नेविगेशन।", diff --git a/internal/locale/translations/id_ID.json b/internal/locale/translations/id_ID.json index 998fc598..bceeff6f 100644 --- a/internal/locale/translations/id_ID.json +++ b/internal/locale/translations/id_ID.json @@ -112,9 +112,11 @@ "error.http_service_unavailable": "The website is not available at the moment due to an internal server error. The problem is not on Miniflux side. Please, try again later.", "error.http_too_many_requests": "Miniflux generated too many requests to this website. Please, try again later or change the application configuration.", "error.http_unexpected_status_code": "The website is not available at the moment due to an unexpected HTTP status code: %d. The problem is not on Miniflux side. Please, try again later.", + "error.invalid_categories_sorting_order": "Urutan penyortiran kategori tidak valid.", "error.invalid_default_home_page": "Beranda baku tidak valid!", "error.invalid_display_mode": "Mode tampilan aplikasi web tidak valid.", "error.invalid_entry_direction": "Urutan entri tidak valid.", + "error.invalid_entry_order": "Urutan entri tidak valid.", "error.invalid_feed_proxy_url": "Invalid proxy URL.", "error.invalid_feed_url": "URL umpan tidak valid.", "error.invalid_gesture_nav": "Navigasi gestur tidak valid.", diff --git a/internal/locale/translations/it_IT.json b/internal/locale/translations/it_IT.json index 2ea4a3e7..503cdaad 100644 --- a/internal/locale/translations/it_IT.json +++ b/internal/locale/translations/it_IT.json @@ -114,9 +114,11 @@ "error.http_service_unavailable": "The website is not available at the moment due to an internal server error. The problem is not on Miniflux side. Please, try again later.", "error.http_too_many_requests": "Miniflux generated too many requests to this website. Please, try again later or change the application configuration.", "error.http_unexpected_status_code": "The website is not available at the moment due to an unexpected HTTP status code: %d. The problem is not on Miniflux side. Please, try again later.", + "error.invalid_categories_sorting_order": "L'ordinamento delle categorie non è valido.", "error.invalid_default_home_page": "Pagina iniziale predefinita non valida!", "error.invalid_display_mode": "Modalità di visualizzazione web app non valida.", "error.invalid_entry_direction": "Ordinamento non valido.", + "error.invalid_entry_order": "L'ordinamento delle voci non è valido.", "error.invalid_feed_proxy_url": "Invalid proxy URL.", "error.invalid_feed_url": "URL del feed non valido.", "error.invalid_gesture_nav": "Navigazione gestuale non valida.", diff --git a/internal/locale/translations/ja_JP.json b/internal/locale/translations/ja_JP.json index cbd4b47c..49200485 100644 --- a/internal/locale/translations/ja_JP.json +++ b/internal/locale/translations/ja_JP.json @@ -112,9 +112,11 @@ "error.http_service_unavailable": "The website is not available at the moment due to an internal server error. The problem is not on Miniflux side. Please, try again later.", "error.http_too_many_requests": "Miniflux generated too many requests to this website. Please, try again later or change the application configuration.", "error.http_unexpected_status_code": "The website is not available at the moment due to an unexpected HTTP status code: %d. The problem is not on Miniflux side. Please, try again later.", + "error.invalid_categories_sorting_order": "カテゴリの表示順が無効です。", "error.invalid_default_home_page": "デフォルトのトップページが無効です", "error.invalid_display_mode": "Web アプリの表示モードが無効です。", "error.invalid_entry_direction": "記事の表示順が無効です。", + "error.invalid_entry_order": "記事の表示順が無効です。", "error.invalid_feed_proxy_url": "Invalid proxy URL.", "error.invalid_feed_url": "フィード URL が無効です。", "error.invalid_gesture_nav": "ジェスチャー ナビゲーションが無効です。", diff --git a/internal/locale/translations/nan_Latn_pehoeji.json b/internal/locale/translations/nan_Latn_pehoeji.json index e70a0993..368b7659 100644 --- a/internal/locale/translations/nan_Latn_pehoeji.json +++ b/internal/locale/translations/nan_Latn_pehoeji.json @@ -112,9 +112,11 @@ "error.http_service_unavailable": "Chit ê bāng-chām in-ūi in ka-kī lāi-pō͘ ū būn-tôe,m̄ sī Miniflux chia ê būn-tôe, chhiáⁿ tán--chi̍t-ē chiah koh chhì-khòaⁿ-māi.", "error.http_too_many_requests": "Miniflux tùi chit ê bāng-chām ê chhéng-kiû siuⁿ kè chōe, chhiáⁿ têng chhì-khòaⁿ-māi ah-sī tiâu-chéng thêng-sek siat-tēng.", "error.http_unexpected_status_code": "Chit ê bāng-chām chòe liáu chi̍t ê liāu-bōe-tio̍h ê HTTP chōng-thài bé: %d, chhiáⁿ tán--chi̍t-ē chiah koh chhì-khòaⁿ-māi.", + "error.invalid_categories_sorting_order": "Lūi-pia̍t ê chōe pái bô-hāu, chhiáⁿ tán-hāu %d hun-cheng āu koh chhì-khòaⁿ-māi.", "error.invalid_default_home_page": "Ū-siat chú-ia̍h ū būn-tôe!", "error.invalid_display_mode": "Ū būn-tôe ê su-li̍p bô͘-sek.", "error.invalid_entry_direction": "Ū būn-tôe ê su-li̍p hong-hiòng.", + "error.invalid_entry_order": "Siau-sit ê chōe pái bô-hāu, chhiáⁿ tán-hāu %d hun-cheng āu koh chhì-khòaⁿ-māi.", "error.invalid_feed_proxy_url": "Invalid proxy URL.", "error.invalid_feed_url": "Beh tēng ê siau-sit lâi-goân ê bāng-chí ū būn-tôe.", "error.invalid_gesture_nav": "Chhiú-sè tō-lám ū būn-tôe.", diff --git a/internal/locale/translations/nl_NL.json b/internal/locale/translations/nl_NL.json index d2ca2322..c5d3a864 100644 --- a/internal/locale/translations/nl_NL.json +++ b/internal/locale/translations/nl_NL.json @@ -114,9 +114,11 @@ "error.http_service_unavailable": "De website is momenteel niet beschikbaar vanwege een interne-server-fout. De oorzaak hiervan ligt niet bij Miniflux. Probeer het later nogmaals aub.", "error.http_too_many_requests": "Miniflux heeft te veel aanvragen gegenereerd voor deze website. Probeer het later nog eens of wijzig de applicatieconfiguratie.", "error.http_unexpected_status_code": "De website is momenteel niet beschikbaar vanwege een onverwachte HTTP-statuscode: %d. De oorzaak hiervan ligt niet bij Miniflux. Probeer het later nogmaals aub.", + "error.invalid_categories_sorting_order": "Ongeldige volgorde van categorieën.", "error.invalid_default_home_page": "Ongeldige startpagina!", "error.invalid_display_mode": "Ongeldige weergavemodus voor de webapp.", "error.invalid_entry_direction": "Ongeldige sorteervolgorde.", + "error.invalid_entry_order": "Ongeldige volgorde van artikelen.", "error.invalid_feed_proxy_url": "Invalid proxy URL.", "error.invalid_feed_url": "Ongeldige feed URL.", "error.invalid_gesture_nav": "Ongeldige gebarennavigatie.", diff --git a/internal/locale/translations/pl_PL.json b/internal/locale/translations/pl_PL.json index dd2c0225..a67e60c4 100644 --- a/internal/locale/translations/pl_PL.json +++ b/internal/locale/translations/pl_PL.json @@ -116,9 +116,11 @@ "error.http_service_unavailable": "Strona jest w tej chwili niedostępna z powodu wewnętrznego błędu serwera. Problem nie leży po stronie Miniflux. Spróbuj ponownie później.", "error.http_too_many_requests": "Miniflux wygenerował zbyt wiele żądań do tej witryny. Spróbuj ponownie później lub zmień konfigurację aplikacji.", "error.http_unexpected_status_code": "Strona jest w tej chwili niedostępna z powodu nieoczekiwanego kodu stanu HTTP: %d. Problem nie leży po stronie Miniflux. Spróbuj ponownie później.", + "error.invalid_categories_sorting_order": "Nieprawidłowa kategoria sortowania.", "error.invalid_default_home_page": "Nieprawidłowa domyślna strona główna!", "error.invalid_display_mode": "Nieprawidłowy tryb wyświetlania aplikacji sieciowej.", "error.invalid_entry_direction": "Nieprawidłowa kolejność sortowania.", + "error.invalid_entry_order": "Nieprawidłowa kolejność sortowania wpisów.", "error.invalid_feed_proxy_url": "Nieprawidłowy adres URL serwera proxy.", "error.invalid_feed_url": "Nieprawidłowy adres URL kanału.", "error.invalid_gesture_nav": "Nieprawidłowa nawigacja gestami.", diff --git a/internal/locale/translations/pt_BR.json b/internal/locale/translations/pt_BR.json index 196396ad..e5fedcaa 100644 --- a/internal/locale/translations/pt_BR.json +++ b/internal/locale/translations/pt_BR.json @@ -114,9 +114,11 @@ "error.http_service_unavailable": "The website is not available at the moment due to an internal server error. The problem is not on Miniflux side. Please, try again later.", "error.http_too_many_requests": "Miniflux generated too many requests to this website. Please, try again later or change the application configuration.", "error.http_unexpected_status_code": "The website is not available at the moment due to an unexpected HTTP status code: %d. The problem is not on Miniflux side. Please, try again later.", + "error.invalid_categories_sorting_order": "A ordem de classificação das categorias não é válida.", "error.invalid_default_home_page": "Página inicial por defeito inválida!", "error.invalid_display_mode": "Modo de exibição de aplicativo inválido da web.", "error.invalid_entry_direction": "Direção de entrada inválida.", + "error.invalid_entry_order": "A ordem de entrada é inválida.", "error.invalid_feed_proxy_url": "Invalid proxy URL.", "error.invalid_feed_url": "URL de feed inválido.", "error.invalid_gesture_nav": "Navegação por gestos inválida.", diff --git a/internal/locale/translations/ro_RO.json b/internal/locale/translations/ro_RO.json index 5fb95831..2907169c 100644 --- a/internal/locale/translations/ro_RO.json +++ b/internal/locale/translations/ro_RO.json @@ -116,9 +116,11 @@ "error.http_service_unavailable": "Acest site web nu este disponibil momentan din cauza unei erori generată de server. Problema nu este de la Miniflux. Vă rugăm să reîncercați mai târziu.", "error.http_too_many_requests": "Miniflux a generat prea multe solicitări pe acest site web. Vă rog, încercați mai tîrziu sau modificați configurațiile aplicației.", "error.http_unexpected_status_code": "Acest site web nu este disponibil momentan din cauza unei erori HTTP: %d. Problema nu este de la Miniflux. Vă rugăm să reîncercați mai târziu.", + "error.invalid_categories_sorting_order": "Ordinea de sortare a categoriilor nu este validă.", "error.invalid_default_home_page": "Pagină de start invalidă!", "error.invalid_display_mode": "Mod invalid de afișare în aplicația web.", "error.invalid_entry_direction": "Direcție invalidă ăn intrare.", + "error.invalid_entry_order": "Direcție de sortare invalidă.", "error.invalid_feed_proxy_url": "Invalid proxy URL.", "error.invalid_feed_url": "Adresa URL a fluxului este invalidă.", "error.invalid_gesture_nav": "Gest de navigare invalid.", diff --git a/internal/locale/translations/ru_RU.json b/internal/locale/translations/ru_RU.json index a95c6f68..bab4a8de 100644 --- a/internal/locale/translations/ru_RU.json +++ b/internal/locale/translations/ru_RU.json @@ -116,9 +116,11 @@ "error.http_service_unavailable": "The website is not available at the moment due to an internal server error. The problem is not on Miniflux side. Please, try again later.", "error.http_too_many_requests": "Miniflux generated too many requests to this website. Please, try again later or change the application configuration.", "error.http_unexpected_status_code": "The website is not available at the moment due to an unexpected HTTP status code: %d. The problem is not on Miniflux side. Please, try again later.", + "error.invalid_categories_sorting_order": "Недопустимый порядок сортировки категорий.", "error.invalid_default_home_page": "Недопустимая домашняя страница по умолчанию!", "error.invalid_display_mode": "Недопустимый режим отображения веб-приложения.", "error.invalid_entry_direction": "Недопустимая сортировка записей.", + "error.invalid_entry_order": "Недопустимый порядок статей.", "error.invalid_feed_proxy_url": "Invalid proxy URL.", "error.invalid_feed_url": "Недействительная ссылка подписки.", "error.invalid_gesture_nav": "Недопустимая навигация жестами.", diff --git a/internal/locale/translations/tr_TR.json b/internal/locale/translations/tr_TR.json index 0132ef16..9af3533a 100644 --- a/internal/locale/translations/tr_TR.json +++ b/internal/locale/translations/tr_TR.json @@ -114,9 +114,11 @@ "error.http_service_unavailable": "Dahili sunucu hatası nedeniyle web sitesi şu anda kullanılamıyor. Sorun Miniflux tarafında değil. Lütfen daha sonra tekrar deneyiniz.", "error.http_too_many_requests": "Miniflux bu web sitesine çok fazla istek oluşturdu. Lütfen daha sonra tekrar deneyin veya uygulama yapılandırmasını değiştirin.", "error.http_unexpected_status_code": "Beklenmeyen bir HTTP durum kodu nedeniyle bu websitesi şu anda kullanılamıyor: %d. Sorun Miniflux tarafında değil. Lütfen daha sonra tekrar deneyiniz.", + "error.invalid_categories_sorting_order": "Geçersiz kategori sıralama düzeni.", "error.invalid_default_home_page": "Geçersiz varsayılan ana sayfa!", "error.invalid_display_mode": "Geçersiz web uygulaması görüntüleme modu.", "error.invalid_entry_direction": "Geçersiz makele sıralaması.", + "error.invalid_entry_order": "Geçersiz makele sıralaması.", "error.invalid_feed_proxy_url": "Invalid proxy URL.", "error.invalid_feed_url": "Geçersiz besleme URL'si.", "error.invalid_gesture_nav": "Hareketle gezinme geçersiz.", diff --git a/internal/locale/translations/uk_UA.json b/internal/locale/translations/uk_UA.json index ef914630..60924e15 100644 --- a/internal/locale/translations/uk_UA.json +++ b/internal/locale/translations/uk_UA.json @@ -116,9 +116,11 @@ "error.http_service_unavailable": "The website is not available at the moment due to an internal server error. The problem is not on Miniflux side. Please, try again later.", "error.http_too_many_requests": "Miniflux generated too many requests to this website. Please, try again later or change the application configuration.", "error.http_unexpected_status_code": "The website is not available at the moment due to an unexpected HTTP status code: %d. The problem is not on Miniflux side. Please, try again later.", + "error.invalid_categories_sorting_order": "Недійсний порядок сортування категорій.", "error.invalid_default_home_page": "Недійсна домашня сторінка за замовчуванням!", "error.invalid_display_mode": "Недійсний режим відображення.", "error.invalid_entry_direction": "Недійсний напрямок запису.", + "error.invalid_entry_order": "Недійсний порядок запису.", "error.invalid_feed_proxy_url": "Invalid proxy URL.", "error.invalid_feed_url": "Недійсна URL-адреса стрічки.", "error.invalid_gesture_nav": "Недійсна навігація жестами.", diff --git a/internal/locale/translations/zh_CN.json b/internal/locale/translations/zh_CN.json index e7a79866..02c1ef60 100644 --- a/internal/locale/translations/zh_CN.json +++ b/internal/locale/translations/zh_CN.json @@ -112,9 +112,11 @@ "error.http_service_unavailable": "当前由于服务器内部错误导致该网站无法访问,问题不在 Miniflux,请稍后重试。", "error.http_too_many_requests": "Miniflux 对该网站请求过多次数,请稍后重试或修改应用配置项。", "error.http_unexpected_status_code": "当前由于意外的 HTTP 状态码:%d 导致该网站无法访问,问题不在 Miniflux,请稍后重试。", + "error.invalid_categories_sorting_order": "无效的分类排序", "error.invalid_default_home_page": "无效的默认主页!", "error.invalid_display_mode": "无效的网页应用显示模式。", "error.invalid_entry_direction": "无效的输入方向。", + "error.invalid_entry_order": "无效的条目排序", "error.invalid_feed_proxy_url": "Invalid proxy URL.", "error.invalid_feed_url": "订阅源的网址无效。", "error.invalid_gesture_nav": "手势导航无效。", diff --git a/internal/locale/translations/zh_TW.json b/internal/locale/translations/zh_TW.json index c009ea3b..82b165d0 100644 --- a/internal/locale/translations/zh_TW.json +++ b/internal/locale/translations/zh_TW.json @@ -112,9 +112,11 @@ "error.http_service_unavailable": "此網站目前因內部問題無法使用,問題不在 Miniflux,請稍後重試。", "error.http_too_many_requests": "Miniflux 對此網站的請求過多,請稍後重試或調整程式設定。", "error.http_unexpected_status_code": "此網站回應了意外的 HTTP 狀態碼:%d,請稍後重試。", + "error.invalid_categories_sorting_order": "無效的分類排序", "error.invalid_default_home_page": "預設主頁無效!", "error.invalid_display_mode": "無效的顯示模式。", "error.invalid_entry_direction": "無效的輸入方向。", + "error.invalid_entry_order": "無效的文章排序依據。", "error.invalid_feed_proxy_url": "Invalid proxy URL.", "error.invalid_feed_url": "訂閱網址無效。", "error.invalid_gesture_nav": "手勢導覽無效。", diff --git a/internal/ui/settings_update.go b/internal/ui/settings_update.go index b10e9ab2..e84f2b7f 100644 --- a/internal/ui/settings_update.go +++ b/internal/ui/settings_update.go @@ -76,22 +76,24 @@ func (h *handler) updateSettings(w http.ResponseWriter, r *http.Request) { } userModificationRequest := &model.UserModificationRequest{ - Username: model.OptionalString(settingsForm.Username), - Password: model.OptionalString(settingsForm.Password), - Theme: model.OptionalString(settingsForm.Theme), - Language: model.OptionalString(settingsForm.Language), - Timezone: model.OptionalString(settingsForm.Timezone), - EntryDirection: model.OptionalString(settingsForm.EntryDirection), - EntriesPerPage: model.OptionalNumber(settingsForm.EntriesPerPage), - DisplayMode: model.OptionalString(settingsForm.DisplayMode), - GestureNav: model.OptionalString(settingsForm.GestureNav), - DefaultReadingSpeed: model.OptionalNumber(settingsForm.DefaultReadingSpeed), - CJKReadingSpeed: model.OptionalNumber(settingsForm.CJKReadingSpeed), - DefaultHomePage: model.OptionalString(settingsForm.DefaultHomePage), - MediaPlaybackRate: model.OptionalNumber(settingsForm.MediaPlaybackRate), - BlockFilterEntryRules: model.OptionalString(settingsForm.BlockFilterEntryRules), - KeepFilterEntryRules: model.OptionalString(settingsForm.KeepFilterEntryRules), - ExternalFontHosts: model.OptionalString(settingsForm.ExternalFontHosts), + Username: model.OptionalString(settingsForm.Username), + Password: model.OptionalString(settingsForm.Password), + Theme: model.OptionalString(settingsForm.Theme), + Language: model.OptionalString(settingsForm.Language), + Timezone: model.OptionalString(settingsForm.Timezone), + EntryDirection: model.OptionalString(settingsForm.EntryDirection), + EntryOrder: model.OptionalString(settingsForm.EntryOrder), + EntriesPerPage: model.OptionalNumber(settingsForm.EntriesPerPage), + CategoriesSortingOrder: model.OptionalString(settingsForm.CategoriesSortingOrder), + DisplayMode: model.OptionalString(settingsForm.DisplayMode), + GestureNav: model.OptionalString(settingsForm.GestureNav), + DefaultReadingSpeed: model.OptionalNumber(settingsForm.DefaultReadingSpeed), + CJKReadingSpeed: model.OptionalNumber(settingsForm.CJKReadingSpeed), + DefaultHomePage: model.OptionalString(settingsForm.DefaultHomePage), + MediaPlaybackRate: model.OptionalNumber(settingsForm.MediaPlaybackRate), + BlockFilterEntryRules: model.OptionalString(settingsForm.BlockFilterEntryRules), + KeepFilterEntryRules: model.OptionalString(settingsForm.KeepFilterEntryRules), + ExternalFontHosts: model.OptionalString(settingsForm.ExternalFontHosts), } if validationErr := validator.ValidateUserModification(h.store, loggedUser.ID, userModificationRequest); validationErr != nil { diff --git a/internal/validator/user.go b/internal/validator/user.go index 1ee3d087..3d8fa368 100644 --- a/internal/validator/user.go +++ b/internal/validator/user.go @@ -74,12 +74,24 @@ func ValidateUserModification(store *storage.Storage, userID int64, changes *mod } } + if changes.EntryOrder != nil { + if err := ValidateEntryOrder(*changes.EntryOrder); err != nil { + return locale.NewLocalizedError("error.invalid_entry_order") + } + } + if changes.EntriesPerPage != nil { if err := validateEntriesPerPage(*changes.EntriesPerPage); err != nil { return err } } + if changes.CategoriesSortingOrder != nil { + if err := validateCategoriesSortingOrder(*changes.CategoriesSortingOrder); err != nil { + return err + } + } + if changes.DisplayMode != nil { if err := validateDisplayMode(*changes.DisplayMode); err != nil { return err @@ -214,6 +226,13 @@ func validateEntriesPerPage(entriesPerPage int) *locale.LocalizedError { return nil } +func validateCategoriesSortingOrder(order string) *locale.LocalizedError { + if order != "alphabetical" && order != "unread_count" { + return locale.NewLocalizedError("error.invalid_categories_sorting_order") + } + return nil +} + func validateDisplayMode(displayMode string) *locale.LocalizedError { if displayMode != "fullscreen" && displayMode != "standalone" && displayMode != "minimal-ui" && displayMode != "browser" { return locale.NewLocalizedError("error.invalid_display_mode")