Project

General

Profile

Patch #43701 » Patch__override_search_limit_due_to_Redmine__Search__Tokenizer.patch

Jan Catrysse, 2026-01-21 15:00

View differences:

app/views/settings/_issues.html.erb (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → app/views/settings/_issues.html.erb (date 1769003808059)
25 25

  
26 26
<p><%= setting_text_field :issues_export_limit, :size => 6 %></p>
27 27

  
28
<p><%= setting_text_field :search_token_limit, :size => 6 %>
29
<em class="info"><%= l(:text_search_token_limit_info) %></em></p>
30

  
28 31
<p><%= setting_text_field :gantt_items_limit, :size => 6 %></p>
29 32

  
30 33
<p><%= setting_text_field :gantt_months_limit, :size => 6 %></p>
config/locales/ar.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/ar.yml (date 1769003808079)
1111 1111
  label_enable_notifications: Enable notifications
1112 1112
  label_disable_notifications: Disable notifications
1113 1113
  setting_search_results_per_page: Search results per page
1114
  setting_search_token_limit: "الحد الأقصى من الرموز المميزة لتصفية الكلمات الرئيسية"
1115
  text_search_token_limit_info: "استخدم 0 لعدد غير محدود من الرموز (قد يؤثر على الأداء)"
1114 1116
  label_blank_value: blank
1115 1117
  permission_copy_issues: Copy issues
1116 1118
  error_password_expired: Your password has expired or the administrator requires you
config/locales/az.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/az.yml (date 1769003808116)
1202 1202
  label_enable_notifications: Enable notifications
1203 1203
  label_disable_notifications: Disable notifications
1204 1204
  setting_search_results_per_page: Search results per page
1205
  setting_search_token_limit: "Filtr açar sözləri üçün maksimum işarələr"
1206
  text_search_token_limit_info: "Limitsiz token üçün 0 istifadə edin (performans təsir göstərə bilər)"
1205 1207
  label_blank_value: blank
1206 1208
  permission_copy_issues: Copy issues
1207 1209
  error_password_expired: Your password has expired or the administrator requires you
config/locales/bg.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/bg.yml (date 1769003808152)
515 515
  setting_email_domains_allowed: Разрешени имейл домейни
516 516
  setting_email_domains_denied: Забранени имейл домейни
517 517
  setting_search_results_per_page: Резултати от търсене на страница
518
  setting_search_token_limit: "Максимален брой токени за филтриране на ключови думи"
519
  text_search_token_limit_info: "Използвайте 0 за неограничени токени (може да повлияе на производителността)"
518 520
  setting_attachment_extensions_allowed: Позволени типове на файлове
519 521
  setting_attachment_extensions_denied: Разрешени типове на файлове
520 522
  setting_new_item_menu_tab: Меню-елемент за добавяне на нови обекти (+)
config/locales/bs.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/bs.yml (date 1769003808172)
1114 1114
  label_enable_notifications: Omogući notifikacije
1115 1115
  label_disable_notifications: Onemogući notifikacije
1116 1116
  setting_search_results_per_page: Broj rezultata po stranici
1117
  setting_search_token_limit: "Maksimalan broj tokena za ključne riječi filtera"
1118
  text_search_token_limit_info: "Koristite 0 za neograničene tokene (može utjecati na performanse)"
1117 1119
  label_blank_value: prazno
1118 1120
  permission_copy_issues: Kopiraj tikete
1119 1121
  error_password_expired: Vaša šifra je istekla i administrator od vas traži njenu promjenu.
config/locales/ca.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/ca.yml (date 1769003808195)
1108 1108
  label_enable_notifications: "Activar notificacions"
1109 1109
  label_disable_notifications: "Desactivar notificacions"
1110 1110
  setting_search_results_per_page: "Cercar resultats per pàgina"
1111
  setting_search_token_limit: "Nombre màxim de fitxes per a paraules clau de filtre"
1112
  text_search_token_limit_info: "Utilitzeu 0 per a fitxes il·limitades (pot afectar el rendiment)"
1111 1113
  label_blank_value: "blanc"
1112 1114
  permission_copy_issues: "Copiar incidència"
1113 1115
  error_password_expired: "La teva contrasenya ha expirat, és necessari canviar-la"
config/locales/cs.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/cs.yml (date 1769003808242)
1111 1111
  label_enable_notifications: Povolit notifikace
1112 1112
  label_disable_notifications: Zakázat notifikace
1113 1113
  setting_search_results_per_page: Vyhledaných výsledků na stránku
1114
  setting_search_token_limit: "Maximální počet tokenů pro klíčová slova filtru"
1115
  text_search_token_limit_info: "Použijte 0 pro neomezený počet tokenů (může ovlivnit výkon)"
1114 1116
  label_blank_value: prázdný
1115 1117
  permission_copy_issues: Kopírovat úkoly
1116 1118
  error_password_expired: Platnost vašeho hesla vypršela a administrátor vás žádá o jeho změnu.
config/locales/da.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/da.yml (date 1769003808264)
1128 1128
  label_enable_notifications: Enable notifications
1129 1129
  label_disable_notifications: Disable notifications
1130 1130
  setting_search_results_per_page: Search results per page
1131
  setting_search_token_limit: "Maksimalt antal tokens for filtersøgeord"
1132
  text_search_token_limit_info: "Brug 0 for ubegrænsede tokens (kan påvirke ydeevnen)"
1131 1133
  label_blank_value: blank
1132 1134
  permission_copy_issues: Copy issues
1133 1135
  error_password_expired: Your password has expired or the administrator requires you
config/locales/de.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/de.yml (date 1769003808286)
1173 1173
  label_enable_notifications: Benachrichtigungen aktivieren
1174 1174
  label_disable_notifications: Benachrichtigungen deaktivieren
1175 1175
  setting_search_results_per_page: Suchergebnisse pro Seite
1176
  setting_search_token_limit: "Maximale Token für Filterschlüsselwörter"
1177
  text_search_token_limit_info: "Verwenden Sie 0 für unbegrenzte Token (kann sich auf die Leistung auswirken)"
1176 1178
  label_blank_value: leer
1177 1179
  permission_copy_issues: Tickets kopieren
1178 1180
  error_password_expired: Ihr Passwort ist abgelaufen oder der Administrator verlangt eine Passwortänderung.
config/locales/el.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/el.yml (date 1769003808312)
1111 1111
  label_enable_notifications: Enable notifications
1112 1112
  label_disable_notifications: Disable notifications
1113 1113
  setting_search_results_per_page: Search results per page
1114
  setting_search_token_limit: "Μέγιστα διακριτικά για λέξεις-κλειδιά φιλτραρίσματος"
1115
  text_search_token_limit_info: "Χρησιμοποιήστε το 0 για απεριόριστα διακριτικά (μπορεί να επηρεάσει την απόδοση)"
1114 1116
  label_blank_value: blank
1115 1117
  permission_copy_issues: Copy issues
1116 1118
  error_password_expired: Your password has expired or the administrator requires you
config/locales/en.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/en.yml (date 1769003808339)
516 516
  setting_email_domains_allowed: Allowed email domains
517 517
  setting_email_domains_denied: Disallowed email domains
518 518
  setting_search_results_per_page: Search results per page
519
  setting_search_token_limit: "Maximum tokens for filter keywords"
520
  text_search_token_limit_info: "Use 0 for unlimited tokens (may impact performance)"
519 521
  setting_attachment_extensions_allowed: Allowed extensions
520 522
  setting_attachment_extensions_denied: Disallowed extensions
521 523
  setting_new_item_menu_tab: Project menu tab for creating new objects
config/locales/en-GB.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/en-GB.yml (date 1769003808362)
1118 1118
  label_enable_notifications: Enable notifications
1119 1119
  label_disable_notifications: Disable notifications
1120 1120
  setting_search_results_per_page: Search results per page
1121
  setting_search_token_limit: "Maximum tokens for filter keywords"
1122
  text_search_token_limit_info: "Use 0 for unlimited tokens (may impact performance)"
1121 1123
  label_blank_value: blank
1122 1124
  permission_copy_issues: Copy issues
1123 1125
  error_password_expired: Your password has expired or the administrator requires you
config/locales/es.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/es.yml (date 1769003808392)
1146 1146
  label_enable_notifications: Permitir Notificaciones
1147 1147
  label_disable_notifications: No Permitir Notificaciones
1148 1148
  setting_search_results_per_page: Buscar resultados por página
1149
  setting_search_token_limit: "Tokens máximos para palabras clave de filtro"
1150
  text_search_token_limit_info: "Utilice 0 para tokens ilimitados (puede afectar el rendimiento)"
1149 1151
  label_blank_value: blanco
1150 1152
  permission_copy_issues: Copiar petición
1151 1153
  error_password_expired: Tu contraseña ha expirado o tu administrador requiere que la cambies.
config/locales/es-PA.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/es-PA.yml (date 1769003808418)
1148 1148
  label_enable_notifications: Permitir Notificaciones
1149 1149
  label_disable_notifications: No Permitir Notificaciones
1150 1150
  setting_search_results_per_page: Buscar resultados por página
1151
  setting_search_token_limit: "Tokens máximos para palabras clave de filtro"
1152
  text_search_token_limit_info: "Utilice 0 para tokens ilimitados (puede afectar el rendimiento)"
1151 1153
  label_blank_value: blanco
1152 1154
  permission_copy_issues: Copiar incidencias
1153 1155
  error_password_expired: Tu contraseña ha expirado o tu administrador requiere que la cambies.
config/locales/et.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/et.yml (date 1769003808447)
1118 1118
  label_enable_notifications: "Saada teavitusi" 
1119 1119
  label_disable_notifications: "Ära saada teavitusi"
1120 1120
  setting_search_results_per_page: "Otsitulemusi lehe kohta"
1121
  setting_search_token_limit: "Maksimaalne lubade arv filtri märksõnade jaoks"
1122
  text_search_token_limit_info: "Kasutage piiramatute märkide jaoks 0 (võib mõjutada jõudlust)"
1121 1123
  label_blank_value: "tühi"
1122 1124
  permission_copy_issues: "Kopeeri teemad"
1123 1125
  error_password_expired: "Su parool on aegunud või administraator nõuab sult selle vahetamist"
config/locales/eu.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/eu.yml (date 1769003808468)
1112 1112
  label_enable_notifications: Enable notifications
1113 1113
  label_disable_notifications: Disable notifications
1114 1114
  setting_search_results_per_page: Search results per page
1115
  setting_search_token_limit: "Iragazki-hitzetarako gehienezko tokenak"
1116
  text_search_token_limit_info: "Erabili 0 token mugagabeetarako (errendimenduan eragina izan dezake)"
1115 1117
  label_blank_value: blank
1116 1118
  permission_copy_issues: Copy issues
1117 1119
  error_password_expired: Your password has expired or the administrator requires you
config/locales/fa.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/fa.yml (date 1769003808501)
512 512
  setting_email_domains_allowed: دامنه‌های مجاز برای نشانی رایانامه
513 513
  setting_email_domains_denied: دامنه‌های غیرمجاز برای نشانی رایانامه
514 514
  setting_search_results_per_page: تعداد نتایج جستجو در صفحه
515
  setting_search_token_limit: "حداکثر توکن برای فیلتر کردن کلمات کلیدی"
516
  text_search_token_limit_info: "از 0 برای توکن های نامحدود استفاده کنید (ممکن است بر عملکرد تأثیر بگذارد)"
515 517
  setting_attachment_extensions_allowed: پسوندهای مجاز
516 518
  setting_attachment_extensions_denied: پسوندهای غیرمجاز
517 519
  setting_new_item_menu_tab: منوی پروژه برای ساخت اجزاء جدید
config/locales/fi.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/fi.yml (date 1769003808533)
1129 1129
  label_enable_notifications: Enable notifications
1130 1130
  label_disable_notifications: Disable notifications
1131 1131
  setting_search_results_per_page: Search results per page
1132
  setting_search_token_limit: "Suodattimen avainsanojen enimmäismäärä"
1133
  text_search_token_limit_info: "Käytä 0 rajoittamattomille tunnuksille (voi vaikuttaa suorituskykyyn)"
1132 1134
  label_blank_value: blank
1133 1135
  permission_copy_issues: Copy issues
1134 1136
  error_password_expired: Your password has expired or the administrator requires you
config/locales/fr.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/fr.yml (date 1769003808566)
467 467
  setting_link_copied_issue: Lier les demandes lors de la copie
468 468
  setting_max_additional_emails: Nombre maximal d'adresses email additionnelles
469 469
  setting_search_results_per_page: Résultats de recherche affichés par page
470
  setting_search_token_limit: "Nombre maximal de jetons pour les mots-clés de filtre"
471
  text_search_token_limit_info: "Utilisez 0 pour un nombre illimité de jetons (peut avoir un impact sur les performances)"
470 472
  setting_attachment_extensions_allowed: Extensions autorisées
471 473
  setting_attachment_extensions_denied: Extensions non autorisées
472 474
  setting_sys_api_key: Clé de protection de l'API
config/locales/gl.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/gl.yml (date 1769003808594)
1120 1120
  label_enable_notifications: Activar notificacións
1121 1121
  label_disable_notifications: Desactivar notificacións
1122 1122
  setting_search_results_per_page: Resultados da busca por páxina
1123
  setting_search_token_limit: "Fichas máximas para palabras clave de filtro"
1124
  text_search_token_limit_info: "Usa 0 para tokens ilimitados (pode afectar o rendemento)"
1123 1125
  label_blank_value: En branco
1124 1126
  permission_copy_issues: Copiar peticións
1125 1127
  error_password_expired: A túa contrasinal caducou ou o administrador obrígate
config/locales/he.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/he.yml (date 1769003808628)
1116 1116
  label_enable_notifications: Enable notifications
1117 1117
  label_disable_notifications: Disable notifications
1118 1118
  setting_search_results_per_page: Search results per page
1119
  setting_search_token_limit: "מקסימום אסימונים עבור מילות מפתח מסנן"
1120
  text_search_token_limit_info: "השתמש ב-0 עבור אסימונים ללא הגבלה (עשוי להשפיע על הביצועים)"
1119 1121
  label_blank_value: blank
1120 1122
  permission_copy_issues: Copy issues
1121 1123
  error_password_expired: Your password has expired or the administrator requires you
config/locales/hr.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/hr.yml (date 1769003808687)
1108 1108
  label_enable_notifications: Enable notifications
1109 1109
  label_disable_notifications: Disable notifications
1110 1110
  setting_search_results_per_page: Search results per page
1111
  setting_search_token_limit: "Maksimalan broj tokena za ključne riječi filtra"
1112
  text_search_token_limit_info: "Koristite 0 za neograničene tokene (može utjecati na izvedbu)"
1111 1113
  label_blank_value: blank
1112 1114
  permission_copy_issues: Copy issues
1113 1115
  error_password_expired: Your password has expired or the administrator requires you
config/locales/hu.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/hu.yml (date 1769003808731)
1119 1119
  label_enable_notifications: Értesítések engedélyezése
1120 1120
  label_disable_notifications: Értesítések letiltása
1121 1121
  setting_search_results_per_page: Találati eredmények száma oldalanként
1122
  setting_search_token_limit: "Maximális tokenek a szűrő kulcsszavaihoz"
1123
  text_search_token_limit_info: "Használjon 0-t korlátlan számú tokenhez (befolyásolhatja a teljesítményt)"
1122 1124
  label_blank_value: üres
1123 1125
  permission_copy_issues: Feladatok másolása
1124 1126
  error_password_expired: "A jelszava lejárt, vagy az adminisztrátor kérte a megváltoztatását."
config/locales/id.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/id.yml (date 1769003808756)
1113 1113
  label_enable_notifications: Enable notifications
1114 1114
  label_disable_notifications: Disable notifications
1115 1115
  setting_search_results_per_page: Search results per page
1116
  setting_search_token_limit: "Token maksimum untuk kata kunci filter"
1117
  text_search_token_limit_info: "Gunakan 0 untuk token tanpa batas (dapat memengaruhi kinerja)"
1116 1118
  label_blank_value: blank
1117 1119
  permission_copy_issues: Copy issues
1118 1120
  error_password_expired: Your password has expired or the administrator requires you
config/locales/it.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/it.yml (date 1769003808797)
529 529
  setting_email_domains_allowed: Domini di posta elettronica consentiti
530 530
  setting_email_domains_denied: Domini di posta elettronica non consentiti
531 531
  setting_search_results_per_page: Risultati per pagina
532
  setting_search_token_limit: "Token massimi per le parole chiave del filtro"
533
  text_search_token_limit_info: "Utilizza 0 per token illimitati (potrebbe influire sulle prestazioni)"
532 534
  setting_attachment_extensions_allowed: Estensioni abilitate
533 535
  setting_attachment_extensions_denied: Estensioni disabilitate
534 536
  setting_new_item_menu_tab: Scheda di creazione oggetti nel menu del progetto
config/locales/ja.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/ja.yml (date 1769003808834)
1140 1140
  label_enable_notifications: 通知を有効にする
1141 1141
  label_disable_notifications: 通知を無効にする
1142 1142
  setting_search_results_per_page: ページごとの検索結果表示件数
1143
  setting_search_token_limit: "フィルタキーワードの最大トークン"
1144
  text_search_token_limit_info: "トークンを無制限にするには 0 を使用します (パフォーマンスに影響を与える可能性があります)"
1143 1145
  label_blank_value: 空
1144 1146
  permission_copy_issues: チケットのコピー
1145 1147
  error_password_expired: パスワードの有効期限が過ぎたか、システム管理者より変更を求められています。
config/locales/ko.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/ko.yml (date 1769003808882)
1148 1148
  label_enable_notifications: 알림 켜기
1149 1149
  label_disable_notifications: 알림 끄기
1150 1150
  setting_search_results_per_page: 페이지당 검색 결과
1151
  setting_search_token_limit: "필터 키워드의 최대 토큰"
1152
  text_search_token_limit_info: "토큰을 무제한으로 사용하려면 0을 사용하세요(성능에 영향을 미칠 수 있음)."
1151 1153
  label_blank_value: blank
1152 1154
  permission_copy_issues: 일감 복사
1153 1155
  error_password_expired: 암호가 만료되었거나 관리자가 변경하도록 설정하였습니다.
config/locales/lt.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/lt.yml (date 1769003808931)
447 447
  setting_link_copied_issue: Susieti darbus kopijavimo metu
448 448
  setting_max_additional_emails: Maksimalus skaičius papildomų elektronikių laiškų adresų
449 449
  setting_search_results_per_page: Paieškos rezultatai puslapyje
450
  setting_search_token_limit: "Maksimalus filtro raktinių žodžių prieigos raktų skaičius"
451
  text_search_token_limit_info: "Naudokite 0 neribotam žetonų kiekiui (gali turėti įtakos našumui)"
450 452
  setting_attachment_extensions_allowed: Leistini plėtiniai
451 453
  setting_attachment_extensions_denied: Neleistini plėtiniai
452 454

  
config/locales/lv.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/lv.yml (date 1769003808977)
1105 1105
  label_enable_notifications: Enable notifications
1106 1106
  label_disable_notifications: Disable notifications
1107 1107
  setting_search_results_per_page: Search results per page
1108
  setting_search_token_limit: "Maksimālais marķieru skaits filtra atslēgvārdiem"
1109
  text_search_token_limit_info: "Izmantojiet 0 neierobežotiem marķieriem (var ietekmēt veiktspēju)"
1108 1110
  label_blank_value: blank
1109 1111
  permission_copy_issues: Copy issues
1110 1112
  error_password_expired: Your password has expired or the administrator requires you
config/locales/mk.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/mk.yml (date 1769003809017)
1111 1111
  label_enable_notifications: Enable notifications
1112 1112
  label_disable_notifications: Disable notifications
1113 1113
  setting_search_results_per_page: Search results per page
1114
  setting_search_token_limit: "Максимални токени за филтрирање на клучни зборови"
1115
  text_search_token_limit_info: "Користете 0 за неограничени токени (може да влијае на перформансите)"
1114 1116
  label_blank_value: blank
1115 1117
  permission_copy_issues: Copy issues
1116 1118
  error_password_expired: Your password has expired or the administrator requires you
config/locales/mn.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/mn.yml (date 1769003809058)
1111 1111
  label_enable_notifications: Enable notifications
1112 1112
  label_disable_notifications: Disable notifications
1113 1113
  setting_search_results_per_page: Search results per page
1114
  setting_search_token_limit: "Шүүлтүүрийн түлхүүр үгсэд зориулсан хамгийн их жетон"
1115
  text_search_token_limit_info: "Хязгааргүй тэмдэгтийн хувьд 0-г ашиглана уу (гүйцэтгэлд нөлөөлж болзошгүй)"
1114 1116
  label_blank_value: blank
1115 1117
  permission_copy_issues: Copy issues
1116 1118
  error_password_expired: Your password has expired or the administrator requires you
config/locales/nl.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/nl.yml (date 1769003809079)
1090 1090
  label_enable_notifications: Notificaties inschakelen
1091 1091
  label_disable_notifications: Notificaties uitschakelen
1092 1092
  setting_search_results_per_page: Zoekresultaten per pagina
1093
  setting_search_token_limit: "Maximale tokens voor filterzoekwoorden"
1094
  text_search_token_limit_info: "Gebruik 0 voor onbeperkte tokens (kan van invloed zijn op de prestaties)"
1093 1095
  label_blank_value: leeg
1094 1096
  permission_copy_issues: Issues kopiëren
1095 1097
  error_password_expired: Uw wachtwoord is verlopen of moet gewijzigd worden op vraag van een beheerder.
config/locales/no.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/no.yml (date 1769003809121)
1102 1102
  label_enable_notifications: Enable notifications
1103 1103
  label_disable_notifications: Disable notifications
1104 1104
  setting_search_results_per_page: Search results per page
1105
  setting_search_token_limit: "Maksimalt antall tokens for filtersøkeord"
1106
  text_search_token_limit_info: "Bruk 0 for ubegrensede tokens (kan påvirke ytelsen)"
1105 1107
  label_blank_value: blank
1106 1108
  permission_copy_issues: Copy issues
1107 1109
  error_password_expired: Your password has expired or the administrator requires you
config/locales/pl.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/pl.yml (date 1769003809150)
517 517
  setting_email_domains_allowed: Dozwolone domeny adresów e-mail
518 518
  setting_email_domains_denied: Niedozwolone domeny adresów e-mail
519 519
  setting_search_results_per_page: Limit wyników wyszukiwania na stronie
520
  setting_search_token_limit: "Maksymalna liczba tokenów dla słów kluczowych filtra"
521
  text_search_token_limit_info: "Użyj 0, aby uzyskać nieograniczoną liczbę tokenów (może mieć wpływ na wydajność)"
520 522
  setting_attachment_extensions_allowed: Dozwolone rozszerzenia
521 523
  setting_attachment_extensions_denied: Niedozwolone rozszerzenia
522 524
  setting_new_item_menu_tab: Zakładka w menu do tworzenia nowych obiektów
config/locales/pt.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/pt.yml (date 1769003809201)
1113 1113
  label_enable_notifications: Ativar notificações
1114 1114
  label_disable_notifications: Desativar notificações
1115 1115
  setting_search_results_per_page: Resultados de pesquisa por página
1116
  setting_search_token_limit: "Máximo de tokens para palavras-chave de filtro"
1117
  text_search_token_limit_info: "Use 0 para tokens ilimitados (pode afetar o desempenho)"
1116 1118
  label_blank_value: vazio
1117 1119
  permission_copy_issues: Copiar tarefas
1118 1120
  error_password_expired: A sua palavra-chave expirou ou o administrador exige que a altere.
config/locales/pt-BR.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/pt-BR.yml (date 1769003809244)
1131 1131
  label_enable_notifications: Habilitar notificações
1132 1132
  label_disable_notifications: Desabilitar notificações
1133 1133
  setting_search_results_per_page: Resultados de pesquisa por página
1134
  setting_search_token_limit: "Máximo de tokens para palavras-chave de filtro"
1135
  text_search_token_limit_info: "Use 0 para tokens ilimitados (pode afetar o desempenho)"
1134 1136
  label_blank_value: Branco
1135 1137
  permission_copy_issues: Copiar tarefas
1136 1138
  error_password_expired: Sua senha expirou ou requer atualização
config/locales/ro.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/ro.yml (date 1769003809278)
1106 1106
  label_enable_notifications: Enable notifications
1107 1107
  label_disable_notifications: Disable notifications
1108 1108
  setting_search_results_per_page: Search results per page
1109
  setting_search_token_limit: "Numărul maxim de simboluri pentru cuvintele cheie de filtrare"
1110
  text_search_token_limit_info: "Utilizați 0 pentru jetoane nelimitate (poate afecta performanța)"
1109 1111
  label_blank_value: blank
1110 1112
  permission_copy_issues: Copy issues
1111 1113
  error_password_expired: Your password has expired or the administrator requires you
config/locales/ru.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/ru.yml (date 1769003809312)
1211 1211
  label_enable_notifications: Включить уведомления
1212 1212
  label_disable_notifications: Выключить уведомления
1213 1213
  setting_search_results_per_page: Количество найденных результатов на страницу
1214
  setting_search_token_limit: "Максимальное количество токенов для ключевых слов фильтра"
1215
  text_search_token_limit_info: "Используйте 0 для неограниченного количества токенов (может повлиять на производительность)."
1214 1216
  label_blank_value: пусто
1215 1217
  permission_copy_issues: Копирование задач
1216 1218
  error_password_expired: Время действия вашего пароля истекло или администратор потребовал сменить его.
config/locales/sk.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/sk.yml (date 1769003809356)
1100 1100
  label_enable_notifications: Enable notifications
1101 1101
  label_disable_notifications: Disable notifications
1102 1102
  setting_search_results_per_page: Search results per page
1103
  setting_search_token_limit: "Maximálny počet tokenov pre kľúčové slová filtra"
1104
  text_search_token_limit_info: "Použite 0 pre neobmedzený počet tokenov (môže ovplyvniť výkon)"
1103 1105
  label_blank_value: blank
1104 1106
  permission_copy_issues: Copy issues
1105 1107
  error_password_expired: Your password has expired or the administrator requires you
config/locales/sl.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/sl.yml (date 1769003809394)
1111 1111
  label_enable_notifications: Enable notifications
1112 1112
  label_disable_notifications: Disable notifications
1113 1113
  setting_search_results_per_page: Search results per page
1114
  setting_search_token_limit: "Največje število žetonov za ključne besede filtra"
1115
  text_search_token_limit_info: "Uporabite 0 za neomejene žetone (lahko vpliva na zmogljivost)"
1114 1116
  label_blank_value: blank
1115 1117
  permission_copy_issues: Copy issues
1116 1118
  error_password_expired: Your password has expired or the administrator requires you
config/locales/sq.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/sq.yml (date 1769003809417)
490 490
  setting_email_domains_allowed: Përkatësi email të lejuara
491 491
  setting_email_domains_denied: Përkatësi email të palejuara
492 492
  setting_search_results_per_page: Përfundime kërkimi për faqe
493
  setting_search_token_limit: "Shenjat maksimale për filtrimin e fjalëve kyçe"
494
  text_search_token_limit_info: "Përdorni 0 për shenja të pakufizuara (mund të ndikojë në performancën)"
493 495
  setting_attachment_extensions_allowed: Zgjatime të lejuara
494 496
  setting_attachment_extensions_denied: Zgjatime të palejuara
495 497
  setting_new_item_menu_tab: Skedë menuje projekti për krijim objektesh të rinj
config/locales/sr.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/sr.yml (date 1769003809444)
1112 1112
  label_enable_notifications: Enable notifications
1113 1113
  label_disable_notifications: Disable notifications
1114 1114
  setting_search_results_per_page: Search results per page
1115
  setting_search_token_limit: "Максималан број токена за кључне речи филтера"
1116
  text_search_token_limit_info: "Користите 0 за неограничене токене (може утицати на перформансе)"
1115 1117
  label_blank_value: blank
1116 1118
  permission_copy_issues: Copy issues
1117 1119
  error_password_expired: Your password has expired or the administrator requires you
config/locales/sr-YU.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/sr-YU.yml (date 1769003809473)
1113 1113
  label_enable_notifications: Enable notifications
1114 1114
  label_disable_notifications: Disable notifications
1115 1115
  setting_search_results_per_page: Search results per page
1116
  setting_search_token_limit: "Максималан број токена за кључне речи филтера"
1117
  text_search_token_limit_info: "Користите 0 за неограничене токене (може утицати на перформансе)"
1116 1118
  label_blank_value: blank
1117 1119
  permission_copy_issues: Copy issues
1118 1120
  error_password_expired: Your password has expired or the administrator requires you
config/locales/sv.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/sv.yml (date 1769003809507)
1143 1143
  label_enable_notifications: Aktivera aviseringar
1144 1144
  label_disable_notifications: Avaktivera aviseringar
1145 1145
  setting_search_results_per_page: Sökresultat per sida
1146
  setting_search_token_limit: "Maximalt antal tokens för filtersökord"
1147
  text_search_token_limit_info: "Använd 0 för obegränsade tokens (kan påverka prestandan)"
1146 1148
  label_blank_value: blank
1147 1149
  permission_copy_issues: Kopiera ärenden
1148 1150
  error_password_expired: Ditt lösenord har gått ut eller administratören kräver att du ändrar det.
config/locales/ta-IN.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/ta-IN.yml (date 1769003809534)
1116 1116
  label_enable_notifications: அறிவிப்புகளை இயக்கு
1117 1117
  label_disable_notifications: அறிவிப்புகளை முடக்கு
1118 1118
  setting_search_results_per_page: ஒரு பக்கத்திற்கு தேடல் முடிவுகள்
1119
  setting_search_token_limit: "வடிகட்டி முக்கிய வார்த்தைகளுக்கான அதிகபட்ச டோக்கன்கள்"
1120
  text_search_token_limit_info: "வரம்பற்ற டோக்கன்களுக்கு 0 ஐப் பயன்படுத்தவும் (செயல்திறனை பாதிக்கலாம்)"
1119 1121
  label_blank_value: வெற்று
1120 1122
  permission_copy_issues: சிக்கல்களை நகலெடுக்கவும்
1121 1123
  error_password_expired: உங்கள் கடவுச்சொல் காலாவதியானது அல்லது நிர்வாகி உங்களுக்குத் தேவை
config/locales/th.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/th.yml (date 1769003809560)
1107 1107
  label_enable_notifications: Enable notifications
1108 1108
  label_disable_notifications: Disable notifications
1109 1109
  setting_search_results_per_page: Search results per page
1110
  setting_search_token_limit: "โทเค็นสูงสุดสำหรับคำหลักกรอง"
1111
  text_search_token_limit_info: "ใช้ 0 สำหรับโทเค็นไม่จำกัด (อาจส่งผลต่อประสิทธิภาพ)"
1110 1112
  label_blank_value: blank
1111 1113
  permission_copy_issues: Copy issues
1112 1114
  error_password_expired: Your password has expired or the administrator requires you
config/locales/tr.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/tr.yml (date 1769003809583)
1119 1119
  label_enable_notifications: Bildirimleri aç
1120 1120
  label_disable_notifications: Bildirimleri kapat
1121 1121
  setting_search_results_per_page: Sayfa başına arama sonucu sayısı
1122
  setting_search_token_limit: "Filtre anahtar kelimeleri için maksimum belirteçler"
1123
  text_search_token_limit_info: "Sınırsız jeton için 0 kullanın (performansı etkileyebilir)"
1122 1124
  label_blank_value: boş
1123 1125
  permission_copy_issues: İşleri kopyala
1124 1126
  error_password_expired: Parolanızın süresi dolmuş veya yönetici parolanızı değiştirmenizi
config/locales/uk.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/uk.yml (date 1769003809608)
1114 1114
  label_enable_notifications: Увімкнути сповіщення
1115 1115
  label_disable_notifications: Вимкнути сповіщення
1116 1116
  setting_search_results_per_page: Кількість знайдених результатів на сторінку
1117
  setting_search_token_limit: "Максимальна кількість токенів для ключових слів фільтра"
1118
  text_search_token_limit_info: "Використовуйте 0 для необмеженої кількості токенів (може вплинути на продуктивність)"
1117 1119
  label_blank_value: пусто
1118 1120
  permission_copy_issues: Копіювання задач
1119 1121
  error_password_expired: Термін дії вашого паролю закінчився або адміністратор запросив поміняти його.
config/locales/vi.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/vi.yml (date 1769003809642)
1158 1158
  label_enable_notifications: Bật thông báo
1159 1159
  label_disable_notifications: Vô hiệu hóa thông báo
1160 1160
  setting_search_results_per_page: Kết quả tìm kiếm trên mỗi trang
1161
  setting_search_token_limit: "Mã thông báo tối đa cho từ khóa lọc"
1162
  text_search_token_limit_info: "Sử dụng 0 để nhận mã thông báo không giới hạn (có thể ảnh hưởng đến hiệu suất)"
1161 1163
  label_blank_value: trống
1162 1164
  permission_copy_issues: Sao chép vấn đề
1163 1165
  error_password_expired: Mật khẩu của bạn đã hết hạn hoặc quản trị viên yêu cầu bạn thay đổi nó.
config/locales/zh.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/zh.yml (date 1769003809679)
1109 1109
  label_enable_notifications: 启用通知
1110 1110
  label_disable_notifications: 禁用通知
1111 1111
  setting_search_results_per_page: 每一页的搜索结果数
1112
  setting_search_token_limit: "过滤关键字的最大标记数"
1113
  text_search_token_limit_info: "使用 0 表示无限令牌(可能会影响性能)"
1112 1114
  label_blank_value: 空白
1113 1115
  permission_copy_issues: 复制问题
1114 1116
  error_password_expired: 您的密码已经过期或是管理员要求您修改密码.
config/locales/zh-TW.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/locales/zh-TW.yml (date 1769003809722)
540 540
  setting_link_copied_issue: 複製時連結議題
541 541
  setting_max_additional_emails: 其他電子郵件地址的最大值
542 542
  setting_search_results_per_page: 每一頁的搜尋結果數目
543
  setting_search_token_limit: "過濾關鍵字的最大標記數"
544
  text_search_token_limit_info: "使用 0 表示無限令牌(可能會影響性能)"
543 545
  setting_attachment_extensions_allowed: 允許使用的附檔名
544 546
  setting_attachment_extensions_denied: 禁止使用的副檔名
545 547
  setting_new_item_menu_tab: 建立新物件的專案功能分頁
config/settings.yml (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → config/settings.yml (date 1769003809750)
93 93
  default: '25,50,100'
94 94
search_results_per_page:
95 95
  default: 10
96
search_token_limit:
97
  format: int
98
  # Use 0 for unlimited tokens (may impact performance on large queries)
99
  default: 5
96 100
mail_from:
97 101
  default: redmine@example.net
98 102
plain_text_mail:
lib/redmine/search.rb (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → lib/redmine/search.rb (date 1769003809784)
127 127
    end
128 128

  
129 129
    class Tokenizer
130
      def initialize(question)
130
      def initialize(question, max_tokens: nil)
131 131
        @question = question.to_s
132
        @max_tokens = max_tokens
132 133
      end
133 134

  
134 135
      def tokens
......
141 142
        end
142 143
        # tokens must be at least 2 characters long
143 144
        # but for Chinese characters (Chinese HANZI/Japanese KANJI), tokens can be one character
144
        # no more than 5 tokens to search for
145
        tokens.uniq.select{|w| w.length > 1 || w =~ /\p{Han}/}.first 5
145
        # no more than max_tokens to search for
146
        tokens = tokens.uniq.select{|w| w.length > 1 || w =~ /\p{Han}/}
147
        max_tokens ? tokens.first(max_tokens) : tokens
148
      end
149

  
150
      private
151

  
152
      def max_tokens
153
        limit = (@max_tokens.nil? ? Setting.search_token_limit : @max_tokens).to_i
154
        return if limit <= 0
155

  
156
        limit
146 157
      end
147 158
    end
148 159

  
test/unit/lib/redmine/search_test.rb (revision 71de111e4f41dcd33be148be2241f5d49a73faa5) → test/unit/lib/redmine/search_test.rb (date 1769003809813)
35 35
    value = '"phrase one" "phrase two"'
36 36
    assert_equal ["phrase one", "phrase two"], Redmine::Search::Tokenizer.new(value).tokens
37 37
  end
38

  
39
  def test_tokenize_respects_search_token_limit_setting
40
    value = "one two three four five six"
41
    with_settings :search_token_limit => '10' do
42
      assert_equal %w[one two three four five six], Redmine::Search::Tokenizer.new(value).tokens
43
    end
44
  end
45

  
46
  def test_tokenize_allows_unlimited_tokens
47
    value = "one two three four five six"
48
    with_settings :search_token_limit => '0' do
49
      assert_equal %w[one two three four five six], Redmine::Search::Tokenizer.new(value).tokens
50
    end
51
  end
38 52
end
    (1-1/1)