Patch #1997 » watcher_personnel_queryFilter.patch
| app/models/query.rb (working copy) | ||
|---|---|---|
| 165 | 165 |
end |
| 166 | 166 |
@available_filters["assigned_to_id"] = { :type => :list_optional, :order => 4, :values => user_values } unless user_values.empty?
|
| 167 | 167 |
@available_filters["author_id"] = { :type => :list, :order => 5, :values => user_values } unless user_values.empty?
|
| 168 |
@available_filters["vf_watcher"] = { :type => :list, :order => 6, :values => user_values } unless user_values.empty?
|
|
| 169 |
@available_filters["vf_personnel"] = { :type => :list, :order => 7, :values => user_values } unless user_values.empty?
|
|
| 168 | 170 |
|
| 169 | 171 |
if project |
| 170 | 172 |
# project specific filters |
| 171 | 173 |
unless @project.issue_categories.empty? |
| 172 |
@available_filters["category_id"] = { :type => :list_optional, :order => 6, :values => @project.issue_categories.collect{|s| [s.name, s.id.to_s] } }
|
|
| 174 |
@available_filters["category_id"] = { :type => :list_optional, :order => 8, :values => @project.issue_categories.collect{|s| [s.name, s.id.to_s] } }
|
|
| 173 | 175 |
end |
| 174 | 176 |
unless @project.versions.empty? |
| 175 |
@available_filters["fixed_version_id"] = { :type => :list_optional, :order => 7, :values => @project.versions.sort.collect{|s| [s.name, s.id.to_s] } }
|
|
| 177 |
@available_filters["fixed_version_id"] = { :type => :list_optional, :order => 9, :values => @project.versions.sort.collect{|s| [s.name, s.id.to_s] } }
|
|
| 176 | 178 |
end |
| 177 | 179 |
unless @project.active_children.empty? |
| 178 |
@available_filters["subproject_id"] = { :type => :list_subprojects, :order => 13, :values => @project.active_children.collect{|s| [s.name, s.id.to_s] } }
|
|
| 180 |
@available_filters["subproject_id"] = { :type => :list_subprojects, :order => 15, :values => @project.active_children.collect{|s| [s.name, s.id.to_s] } }
|
|
| 179 | 181 |
end |
| 180 | 182 |
add_custom_fields_filters(@project.all_issue_custom_fields) |
| 181 | 183 |
else |
| ... | ... | |
| 297 | 299 |
db_field = 'value' |
| 298 | 300 |
is_custom_filter = true |
| 299 | 301 |
sql << "#{Issue.table_name}.id IN (SELECT #{Issue.table_name}.id FROM #{Issue.table_name} LEFT OUTER JOIN #{db_table} ON #{db_table}.customized_type='Issue' AND #{db_table}.customized_id=#{Issue.table_name}.id AND #{db_table}.custom_field_id=#{$1} WHERE "
|
| 302 |
elsif field == "vf_watcher" |
|
| 303 |
db_table = Watcher.table_name |
|
| 304 |
db_field = 'user_id' |
|
| 305 |
sql << "#{Issue.table_name}.id IN (SELECT #{db_table}.watchable_id FROM #{db_table} WHERE #{db_table}.watchable_type='Issue' AND "
|
|
| 306 |
elsif field == "vf_personnel" |
|
| 307 |
db_table = "ci" |
|
| 308 |
db_field = 'user_id' |
|
| 309 |
sql << "#{Issue.table_name}.id IN (SELECT distinct id from ( SELECT watchable_id id, user_id FROM #{Watcher.table_name} WHERE watchable_type='Issue' union select id, assigned_to_id from #{Issue.table_name} union select id, author_id from #{Issue.table_name} ) ci WHERE "
|
|
| 300 | 310 |
else |
| 301 | 311 |
# regular field |
| 302 | 312 |
db_table = Issue.table_name |
| ... | ... | |
| 305 | 315 |
end |
| 306 | 316 |
|
| 307 | 317 |
# "me" value subsitution |
| 308 |
if %w(assigned_to_id author_id).include?(field) |
|
| 318 |
if %w(assigned_to_id author_id vf_watcher vf_personnel).include?(field)
|
|
| 309 | 319 |
v.push(User.current.logged? ? User.current.id.to_s : "0") if v.delete("me")
|
| 310 | 320 |
end |
| 311 | 321 |
|
| lang/bg.yml (working copy) | ||
|---|---|---|
| 640 | 640 |
notice_unable_delete_version: Unable to delete version |
| 641 | 641 |
label_renamed: renamed |
| 642 | 642 |
label_copied: copied |
| 643 |
field_vf_watcher: Watcher |
|
| 644 |
field_vf_personnel: Personnel |
|
| lang/ca.yml (working copy) | ||
|---|---|---|
| 641 | 641 |
enumeration_issue_priorities: Prioritat dels assumptes |
| 642 | 642 |
enumeration_doc_categories: Categories del document |
| 643 | 643 |
enumeration_activities: Activitats (seguidor de temps) |
| 644 |
|
|
| 645 |
field_vf_watcher: Watcher |
|
| 646 |
field_vf_personnel: Personnel |
|
| lang/cs.yml (working copy) | ||
|---|---|---|
| 645 | 645 |
notice_unable_delete_version: Unable to delete version |
| 646 | 646 |
label_renamed: renamed |
| 647 | 647 |
label_copied: copied |
| 648 |
field_vf_watcher: Watcher |
|
| 649 |
field_vf_personnel: Personnel |
|
| lang/da.yml (working copy) | ||
|---|---|---|
| 641 | 641 |
enumeration_issue_priorities: Sagsprioriteter |
| 642 | 642 |
enumeration_doc_categories: Dokumentkategorier |
| 643 | 643 |
enumeration_activities: Aktiviteter (tidsregistrering) |
| 644 | ||
| 645 |
field_vf_watcher: Watcher |
|
| 646 |
field_vf_personnel: Personnel |
|
| lang/de.yml (working copy) | ||
|---|---|---|
| 641 | 641 |
enumeration_issue_priorities: Ticket-Prioritäten |
| 642 | 642 |
enumeration_doc_categories: Dokumentenkategorien |
| 643 | 643 |
enumeration_activities: Aktivitäten (Zeiterfassung) |
| 644 | ||
| 645 |
field_vf_watcher: Watcher |
|
| 646 |
field_vf_personnel: Personnel |
|
| lang/en.yml (working copy) | ||
|---|---|---|
| 641 | 641 |
enumeration_issue_priorities: Issue priorities |
| 642 | 642 |
enumeration_doc_categories: Document categories |
| 643 | 643 |
enumeration_activities: Activities (time tracking) |
| 644 | ||
| 645 |
field_vf_watcher: Watcher |
|
| 646 |
field_vf_personnel: Personnel |
|
| lang/es.yml (working copy) | ||
|---|---|---|
| 643 | 643 |
notice_unable_delete_version: Unable to delete version |
| 644 | 644 |
label_renamed: renamed |
| 645 | 645 |
label_copied: copied |
| 646 |
field_vf_watcher: Watcher |
|
| 647 |
field_vf_personnel: Personnel |
|
| lang/fi.yml (working copy) | ||
|---|---|---|
| 640 | 640 |
notice_unable_delete_version: Unable to delete version |
| 641 | 641 |
label_renamed: renamed |
| 642 | 642 |
label_copied: copied |
| 643 |
field_vf_watcher: Watcher |
|
| 644 |
field_vf_personnel: Personnel |
|
| lang/fr.yml (working copy) | ||
|---|---|---|
| 641 | 641 |
enumeration_doc_categories: Catégories des documents |
| 642 | 642 |
enumeration_activities: Activités (suivi du temps) |
| 643 | 643 |
notice_unable_delete_version: Unable to delete version |
| 644 |
field_vf_watcher: Watcher |
|
| 645 |
field_vf_personnel: Personnel |
|
| lang/he.yml (working copy) | ||
|---|---|---|
| 640 | 640 |
notice_unable_delete_version: Unable to delete version |
| 641 | 641 |
label_renamed: renamed |
| 642 | 642 |
label_copied: copied |
| 643 |
field_vf_watcher: Watcher |
|
| 644 |
field_vf_personnel: Personnel |
|
| lang/hu.yml (working copy) | ||
|---|---|---|
| 641 | 641 |
notice_unable_delete_version: A verziót nem lehet törölni |
| 642 | 642 |
label_renamed: átnevezve |
| 643 | 643 |
label_copied: lemásolva |
| 644 |
field_vf_watcher: Watcher |
|
| 645 |
field_vf_personnel: Personnel |
|
| lang/it.yml (working copy) | ||
|---|---|---|
| 640 | 640 |
notice_unable_delete_version: Impossibile cancellare la versione |
| 641 | 641 |
label_renamed: rinominato |
| 642 | 642 |
label_copied: copiato |
| 643 |
field_vf_watcher: Watcher |
|
| 644 |
field_vf_personnel: Personnel |
|
| lang/ja.yml (working copy) | ||
|---|---|---|
| 641 | 641 |
notice_unable_delete_version: Unable to delete version |
| 642 | 642 |
label_renamed: renamed |
| 643 | 643 |
label_copied: copied |
| 644 |
field_vf_watcher: Watcher |
|
| 645 |
field_vf_personnel: Personnel |
|
| lang/ko.yml (working copy) | ||
|---|---|---|
| 640 | 640 |
notice_unable_delete_version: 삭제 할 수 없는 버전 입니다. |
| 641 | 641 |
label_renamed: renamed |
| 642 | 642 |
label_copied: copied |
| 643 |
field_vf_watcher: Watcher |
|
| 644 |
field_vf_personnel: Personnel |
|
| lang/lt.yml (working copy) | ||
|---|---|---|
| 642 | 642 |
notice_unable_delete_version: Neimanoma panaikinti versiją |
| 643 | 643 |
label_renamed: pervardintas |
| 644 | 644 |
label_copied: nukopijuotas |
| 645 |
field_vf_watcher: Watcher |
|
| 646 |
field_vf_personnel: Personnel |
|
| lang/nl.yml (working copy) | ||
|---|---|---|
| 643 | 643 |
notice_unable_delete_version: Onmogelijk om deze versie te verwijderen. |
| 644 | 644 |
label_renamed: hernoemt |
| 645 | 645 |
label_copied: gekopieerd |
| 646 |
field_vf_watcher: Watcher |
|
| 647 |
field_vf_personnel: Personnel |
|
| lang/no.yml (working copy) | ||
|---|---|---|
| 641 | 641 |
notice_unable_delete_version: Unable to delete version |
| 642 | 642 |
label_renamed: renamed |
| 643 | 643 |
label_copied: copied |
| 644 |
field_vf_watcher: Watcher |
|
| 645 |
field_vf_personnel: Personnel |
|
| lang/pl.yml (working copy) | ||
|---|---|---|
| 1 |
# Keep this line to avoid problems with Windows Notepad UTF-8 (EF BB BF) idea... |
|
| 2 |
# PL translation by Mariusz@Olejnik.net, |
|
| 3 |
# Best regards from Lublin@Poland :-) |
|
| 4 | ||
| 1 | 5 |
_gloc_rule_default: '|n| n==1 ? "" : "_plural" ' |
| 2 | 6 | |
| 3 | 7 |
actionview_datehelper_select_day_prefix: |
| ... | ... | |
| 49 | 53 |
general_lang_name: 'Polski' |
| 50 | 54 |
general_csv_separator: ',' |
| 51 | 55 |
general_csv_decimal_separator: '.' |
| 52 |
general_csv_encoding: ISO-8859-2
|
|
| 53 |
general_pdf_encoding: ISO-8859-2
|
|
| 56 |
general_csv_encoding: UTF-8
|
|
| 57 |
general_pdf_encoding: UTF-8
|
|
| 54 | 58 |
general_day_names: Poniedziałek,Wtorek,Środa,Czwartek,Piątek,Sobota,Niedziela |
| 55 | 59 |
general_first_day_of_week: '1' |
| 56 | 60 | |
| ... | ... | |
| 63 | 67 |
notice_can_t_change_password: To konto ma zewnętrzne źródło identyfikacji. Nie możesz zmienić hasła. |
| 64 | 68 |
notice_account_lost_email_sent: Email z instrukcjami zmiany hasła został wysłany do Ciebie. |
| 65 | 69 |
notice_account_activated: Twoje konto zostało aktywowane. Możesz się zalogować. |
| 66 |
notice_successful_create: Udane stworzenie.
|
|
| 67 |
notice_successful_update: Udane poprawienie.
|
|
| 68 |
notice_successful_delete: Udane usunięcie.
|
|
| 70 |
notice_successful_create: Utworzenie zakończone sukcesem.
|
|
| 71 |
notice_successful_update: Uaktualnienie zakończone sukcesem.
|
|
| 72 |
notice_successful_delete: Usunięcie zakończone sukcesem.
|
|
| 69 | 73 |
notice_successful_connection: Udane nawiązanie połączenia. |
| 70 | 74 |
notice_file_not_found: Strona do której próbujesz się dostać nie istnieje lub została usunięta. |
| 71 | 75 |
notice_locking_conflict: Dane poprawione przez innego użytkownika. |
| ... | ... | |
| 313 | 317 |
label_query_new: Nowe zapytanie |
| 314 | 318 |
label_filter_add: Dodaj filtr |
| 315 | 319 |
label_filter_plural: Filtry |
| 316 |
label_equals: jest
|
|
| 317 |
label_not_equals: nie jest
|
|
| 318 |
label_in_less_than: w mniejszych od
|
|
| 319 |
label_in_more_than: w większych niż
|
|
| 320 |
label_equals: równa się
|
|
| 321 |
label_not_equals: różni się
|
|
| 322 |
label_in_less_than: mniejsze niż
|
|
| 323 |
label_in_more_than: większe niż
|
|
| 320 | 324 |
label_in: w |
| 321 | 325 |
label_today: dzisiaj |
| 322 | 326 |
label_less_than_ago: dni mniej |
| ... | ... | |
| 344 | 348 |
label_sort_lower: Do dołu |
| 345 | 349 |
label_sort_lowest: Przesuń na dół |
| 346 | 350 |
label_roadmap: Mapa |
| 347 |
label_roadmap_due_in: W czasie %s
|
|
| 351 |
label_roadmap_due_in: W czasie |
|
| 348 | 352 |
label_roadmap_no_issues: Brak zagadnień do tej wersji |
| 349 | 353 |
label_search: Szukaj |
| 350 | 354 |
label_result_plural: Rezultatów |
| ... | ... | |
| 617 | 621 |
label_overall_activity: Ogólna aktywność |
| 618 | 622 |
setting_default_projects_public: Nowe projekty są domyślnie publiczne |
| 619 | 623 |
error_scm_annotate: "Wpis nie istnieje lub nie można do niego dodawać adnotacji." |
| 620 |
label_planning: Planning |
|
| 621 |
text_subprojects_destroy_warning: 'Its subproject(s): %s will be also deleted.' |
|
| 622 |
label_and_its_subprojects: %s and its subprojects |
|
| 623 |
mail_body_reminder: "%d issue(s) that are assigned to you are due in the next %d days:" |
|
| 624 |
mail_subject_reminder: "%d issue(s) due in the next days" |
|
| 625 |
text_user_wrote: '%s wrote:' |
|
| 626 |
label_duplicated_by: duplicated by |
|
| 627 |
setting_enabled_scm: Enabled SCM |
|
| 628 |
text_enumeration_category_reassign_to: 'Reassign them to this value:' |
|
| 629 |
text_enumeration_destroy_question: '%d objects are assigned to this value.' |
|
| 630 |
label_incoming_emails: Incoming emails |
|
| 631 |
label_generate_key: Generate a key |
|
| 632 |
setting_mail_handler_api_enabled: Enable WS for incoming emails |
|
| 633 |
setting_mail_handler_api_key: API key |
|
| 634 |
text_email_delivery_not_configured: "Email delivery is not configured, and notifications are disabled.\nConfigure your SMTP server in config/email.yml and restart the application to enable them." |
|
| 635 |
field_parent_title: Parent page |
|
| 636 |
label_issue_watchers: Watchers |
|
| 637 |
setting_commit_logs_encoding: Commit messages encoding |
|
| 638 |
button_quote: Quote |
|
| 639 |
setting_sequential_project_identifiers: Generate sequential project identifiers |
|
| 640 |
notice_unable_delete_version: Unable to delete version |
|
| 641 |
label_renamed: renamed |
|
| 642 |
label_copied: copied |
|
| 624 |
label_planning: Planowanie |
|
| 625 |
text_subprojects_destroy_warning: 'Podprojekt(y): %s zostaną także usunięte.' |
|
| 626 |
label_and_its_subprojects: %s i podprojekty |
|
| 627 |
mail_body_reminder: "Wykaz przypisanych do Ciebie zagadnień, których termin wypada w ciągu następnych %d dni" |
|
| 628 |
mail_subject_reminder: "Uwaga na terminy, masz zagadnienia do obsłużenia w ciągu następnych %d dni!" |
|
| 629 |
text_user_wrote: '%s napisał:' |
|
| 630 |
label_duplicated_by: zdublikowane przez |
|
| 631 |
setting_enabled_scm: Dostępny SCM |
|
| 632 |
text_enumeration_category_reassign_to: 'Zmień przypisanie na tą wartość:' |
|
| 633 |
text_enumeration_destroy_question: '%d obiektów jest przypisana do tej wartości.' |
|
| 634 |
label_incoming_emails: Przygodząca poczta elektroniczna |
|
| 635 |
label_generate_key: Wygeneruj klucz |
|
| 636 |
setting_mail_handler_api_enabled: Uaktywnij usługi sieciowe (WebServices) dla poczty przychodzącej |
|
| 637 |
setting_mail_handler_api_key: Klucz API |
|
| 638 |
text_email_delivery_not_configured: "Dostarczanie poczty elektronicznej nie zostało skonfigurowane, więc powiadamianie jest nieaktywne.\nSkonfiguruj serwer SMTP w config/email.yml a następnie zrestartuj aplikację i uaktywnij to." |
|
| 639 |
field_parent_title: Strona rodzica |
|
| 640 |
label_issue_watchers: Obserwatorzy |
|
| 641 |
setting_commit_logs_encoding: Zatwierdź kodowanie wiadomości |
|
| 642 |
button_quote: Cytuj |
|
| 643 |
setting_sequential_project_identifiers: Generuj sekwencyjne identyfikatory projektów |
|
| 644 |
notice_unable_delete_version: Nie można usunąć wersji |
|
| 645 |
label_renamed: przemianowano |
|
| 646 |
label_copied: skopiowano |
|
| 647 |
field_vf_watcher: Obserwator |
|
| 648 |
field_vf_personnel: Personel |
|
| lang/pt-br.yml (working copy) | ||
|---|---|---|
| 641 | 641 |
notice_unable_delete_version: Não foi possível excluir a versão |
| 642 | 642 |
label_renamed: renomeado |
| 643 | 643 |
label_copied: copiado |
| 644 |
field_vf_watcher: Watcher |
|
| 645 |
field_vf_personnel: Personnel |
|
| lang/pt.yml (working copy) | ||
|---|---|---|
| 642 | 642 |
enumeration_issue_priorities: Prioridade de tarefas |
| 643 | 643 |
enumeration_doc_categories: Categorias de documentos |
| 644 | 644 |
enumeration_activities: Actividades (Contagem de tempo) |
| 645 | ||
| 646 |
field_vf_watcher: Watcher |
|
| 647 |
field_vf_personnel: Personnel |
|
| lang/ro.yml (working copy) | ||
|---|---|---|
| 640 | 640 |
notice_unable_delete_version: Unable to delete version |
| 641 | 641 |
label_renamed: renamed |
| 642 | 642 |
label_copied: copied |
| 643 |
field_vf_watcher: Watcher |
|
| 644 |
field_vf_personnel: Personnel |
|
| lang/ru.yml (working copy) | ||
|---|---|---|
| 672 | 672 |
text_user_wrote: '%s написал(а):' |
| 673 | 673 |
text_wiki_destroy_confirmation: Вы уверены, что хотите удалить данную Wiki и все содержимое? |
| 674 | 674 |
text_workflow_edit: Выберите роль и трекер для редактирования последовательности состояний |
| 675 | ||
| 675 |
field_vf_watcher: Watcher |
|
| 676 |
field_vf_personnel: Personnel |
|
| lang/sr.yml (working copy) | ||
|---|---|---|
| 641 | 641 |
notice_unable_delete_version: Unable to delete version |
| 642 | 642 |
label_renamed: renamed |
| 643 | 643 |
label_copied: copied |
| 644 |
field_vf_watcher: Watcher |
|
| 645 |
field_vf_personnel: Personnel |
|
| lang/sv.yml (working copy) | ||
|---|---|---|
| 641 | 641 |
notice_unable_delete_version: Unable to delete version |
| 642 | 642 |
label_renamed: renamed |
| 643 | 643 |
label_copied: copied |
| 644 |
field_vf_watcher: Watcher |
|
| 645 |
field_vf_personnel: Personnel |
|
| lang/th.yml (working copy) | ||
|---|---|---|
| 643 | 643 |
notice_unable_delete_version: Unable to delete version |
| 644 | 644 |
label_renamed: renamed |
| 645 | 645 |
label_copied: copied |
| 646 |
field_vf_watcher: Watcher |
|
| 647 |
field_vf_personnel: Personnel |
|
| lang/tr.yml (working copy) | ||
|---|---|---|
| 641 | 641 |
notice_unable_delete_version: Unable to delete version |
| 642 | 642 |
label_renamed: renamed |
| 643 | 643 |
label_copied: copied |
| 644 |
field_vf_watcher: Watcher |
|
| 645 |
field_vf_personnel: Personnel |
|
| lang/uk.yml (working copy) | ||
|---|---|---|
| 642 | 642 |
notice_unable_delete_version: Unable to delete version |
| 643 | 643 |
label_renamed: renamed |
| 644 | 644 |
label_copied: copied |
| 645 |
field_vf_watcher: Watcher |
|
| 646 |
field_vf_personnel: Personnel |
|
| lang/zh-tw.yml (working copy) | ||
|---|---|---|
| 641 | 641 |
enumeration_issue_priorities: 項目優先權 |
| 642 | 642 |
enumeration_doc_categories: 文件分類 |
| 643 | 643 |
enumeration_activities: 活動 (時間追蹤) |
| 644 |
field_vf_watcher: Watcher |
|
| 645 |
field_vf_personnel: Personnel |
|
| lang/zh.yml (working copy) | ||
|---|---|---|
| 641 | 641 |
enumeration_issue_priorities: 问题优先级 |
| 642 | 642 |
enumeration_doc_categories: 文档类别 |
| 643 | 643 |
enumeration_activities: 活动(时间跟踪) |
| 644 |
field_vf_watcher: Watcher |
|
| 645 |
field_vf_personnel: Personnel |
|