From d9c84896265f7c5c9dadbc5d01914f859c2894e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Oliver=20G=C3=BCnther?= Date: Tue, 17 Dec 2024 09:09:16 +0100 Subject: [PATCH 1/2] Allow deletion of users that favored projects https://community.openproject.org/work_packages/60171 --- app/workers/principals/delete_job.rb | 5 +++++ .../workers/principals/delete_job_integration_spec.rb | 11 +++++++++++ 2 files changed, 16 insertions(+) diff --git a/app/workers/principals/delete_job.rb b/app/workers/principals/delete_job.rb index 4df2dafba025..60a2c5fa2d75 100644 --- a/app/workers/principals/delete_job.rb +++ b/app/workers/principals/delete_job.rb @@ -66,6 +66,7 @@ def delete_associated(principal) delete_notifications(principal) delete_private_queries(principal) delete_tokens(principal) + delete_favorites(principal) end def delete_notifications(principal) @@ -77,6 +78,10 @@ def delete_private_queries(principal) CostQuery.where(user_id: principal.id, is_public: false).delete_all end + def delete_favorites(principal) + Favorite.where(user_id: principal.id).delete_all + end + def delete_tokens(principal) ::Token::Base.where(user_id: principal.id).destroy_all end diff --git a/spec/workers/principals/delete_job_integration_spec.rb b/spec/workers/principals/delete_job_integration_spec.rb index 17596286a579..2db3e9a989c0 100644 --- a/spec/workers/principals/delete_job_integration_spec.rb +++ b/spec/workers/principals/delete_job_integration_spec.rb @@ -475,6 +475,17 @@ it_behaves_like "cost_query handling" it_behaves_like "project query handling" it_behaves_like "mention rewriting" + + describe "favorites" do + before do + project.add_favoring_user(principal) + job + end + + it "removes the assigned_to association to the principal" do + expect(project.favoring_users.reload).to be_empty + end + end end context "with a group" do From cbd70ae27468e0ab399eeecd23c3b6bbffec3827 Mon Sep 17 00:00:00 2001 From: OpenProject Actions CI Date: Wed, 18 Dec 2024 03:16:35 +0000 Subject: [PATCH 2/2] update locales from crowdin [ci skip] --- config/locales/crowdin/js-ro.yml | 26 +++++++++---------- config/locales/crowdin/ro.yml | 10 +++---- modules/costs/config/locales/crowdin/ro.yml | 4 +-- modules/meeting/config/locales/crowdin/ro.yml | 10 +++---- .../reporting/config/locales/crowdin/ro.yml | 4 +-- .../storages/config/locales/crowdin/js-ro.yml | 2 +- .../config/locales/crowdin/js-ro.yml | 8 +++--- 7 files changed, 32 insertions(+), 32 deletions(-) diff --git a/config/locales/crowdin/js-ro.yml b/config/locales/crowdin/js-ro.yml index 6f51bae7e012..b9ffab63c936 100644 --- a/config/locales/crowdin/js-ro.yml +++ b/config/locales/crowdin/js-ro.yml @@ -246,7 +246,7 @@ ro: high_security: "Caracteristici de securitate" high_security_text: "Autentificare unică (SAML, OpenID Connect, CAS), grupuri LDAP." installation: "Suport pentru instalare" - installation_text: "Inginerii de software experimentați vă ghidează prin procesul complet de instalare și configurare în propria infrastructură." + installation_text: "Inginerii de software experimentați te ghidează prin procesul complet de instalare și configurare în propria infrastructură." premium_features: "Enterprise add-on-uri" premium_features_text: "Tablouri agile, temă și logo personalizate, grafice, fluxuri de lucru inteligente cu acțiuni personalizate, căutare în text complet pentru atașamentele pachetelor de lucru și câmpuri personalizate cu selectare multiplă." professional_support: "Suport profesional" @@ -499,8 +499,8 @@ ro: label_selected_filter_list: "Filtre selectate" label_show_attributes: "Afișați toate câmpurile" label_show_in_menu: "Vizualizați configurația în meniu" - label_sort_by: "Sortare după" - label_sorted_by: "sortare după" + label_sort_by: "Sortează după" + label_sorted_by: "sortează după" label_sort_higher: "Mută în sus" label_sort_lower: "Mută în jos" label_sorting: "Sortare" @@ -518,7 +518,7 @@ ro: label_up: "Sus" label_user_plural: "Utilizatori" label_activity_show_only_comments: "Arată doar activitățile cu comentarii" - label_activity_show_all: "Afișează toate activitățile" + label_activity_show_all: "Arată toate activitățile" label_total_progress: "%{percent} % Progres total" label_total_amount: "Total: %{amount}" label_updated_on: "actualizat la data de" @@ -919,7 +919,7 @@ ro: label_enable_multi_select: "Activare selecție multiplă" label_disable_multi_select: "Dezactivare selecție multiplă" label_filter_add: "Adaugă filtru" - label_filter_by_text: "Filtreaza dupa text" + label_filter_by_text: "Filtrează după text" label_options: "Opțiuni" label_column_multiselect: "Câmp desfășurat combinat: selectaţi cu săgețile, confirmați alegerea cu enter, ştergeţi cu backspace" message_error_during_bulk_delete: A apărut o eroare la ștergerea pachetelor de lucru. @@ -1021,7 +1021,7 @@ ro: query: column_names: "Coloane" group_by: "Grupare rezultate" - group: "Grupare după" + group: "Grupează după" group_by_disabled_by_hierarchy: "Gruparea este dezactivată deoarece modul ierarhic este activ." hierarchy_disabled_by_group_by: "Modul ierarhic este dezactivat deoarece rezultatele sunt grupate în %{column}." sort_ascending: "Ordonează ascendent" @@ -1032,7 +1032,7 @@ ro: insert_columns: "Inserează coloane" filters: "Filtre" display_sums: "Afişare totaluri" - confirm_edit_cancel: "Sunteți sigur că doriți să anulați editarea numelui acestei vizualizări? Titlul va fi setat la valoarea anterioară." + confirm_edit_cancel: "Ești sigur că vrei să anulezi editarea numelui acestei vizualizări? Titlul va fi setat la valoarea anterioară." click_to_edit_query_name: "Câmpul %s este gol. Click aici pentru a-l edita." rename_query_placeholder: "Vezi" star_text: "Marcați această vizualizare ca favorită și adăugați-o la bara laterală de vizualizări salvate din stânga." @@ -1074,7 +1074,7 @@ ro: description: "Nicio culoare" none: "Fără evidențiere" inline: "Evidențiați atributul (atributele) inline" - inline_all: "Afișați toate câmpurile" + inline_all: "Toate atributele" entire_row_by: "Întregul rând pe tipuri" status: "Stare" priority: "Prioritate" @@ -1105,8 +1105,8 @@ ro: settings: configure_view: "Configurează vizualizarea" columns: "Coloane" - sort_by: "Sortare după" - group_by: "Grupare după" + sort_by: "Sortează după" + group_by: "Grupează după" display_sums: "Afişare totaluri" display_hierarchy: "Afișați ierarhia" hide_hierarchy: "Ascundeți ierarhia" @@ -1116,7 +1116,7 @@ ro: export: "Exportă" visibility_settings: "Setări vizibilitate" share_calendar: "Subscribe to calendar" - page_settings: "Redenumire" + page_settings: "Redenumește vizualizare" delete: "Șterge" filter: "Filtrează" unselected_title: "Pachet de lucru" @@ -1156,7 +1156,7 @@ ro: button_save: "%{attribute}: Salvează" button_cancel: "%{attribute}: Anulare" button_save_all: "Salvează" - button_cancel_all: "Anulare" + button_cancel_all: "Anulează" link_formatting_help: "Ajutor pentru formatarea textului" btn_preview_enable: "Previzualizare" btn_preview_disable: "Dezactivare previzualizare" @@ -1288,7 +1288,7 @@ ro: include_projects: toggle_title: "Include proiecte" title: "Proiecte" - clear_selection: "Anulați selecția" + clear_selection: "Anulează selecția" apply: "Aplică" selected_filter: all: "Toate Proiectele" diff --git a/config/locales/crowdin/ro.yml b/config/locales/crowdin/ro.yml index facdea84ce95..1d1e6ef5e790 100644 --- a/config/locales/crowdin/ro.yml +++ b/config/locales/crowdin/ro.yml @@ -59,7 +59,7 @@ ro: main-menu-bg-selected-background: "Meniul principal când este selectat" main-menu-bg-hover-background: "Meniul principal la plutire" custom_colors: "Culori personalizate" - customize: "Personalizează-ți instalația OpenProject cu propriul logo și culori." + customize: "Personalizează-ți instalarea OpenProject cu propriul logo și culori." enterprise_notice: "Ca un 'Mulțumesc!' special pentru contribuția lor financiară la dezvoltarea OpenProject, acest mic add-on este disponibil doar pentru abonații la ediția Enterprise." enterprise_more_info: "Notă: logo-ul utilizat va fi accesibil publicului." manage_colors: "Modificați opțiunile de selecție ale culorilor" @@ -1537,7 +1537,7 @@ ro: button_print: "Tipărește" button_quote: "Citare" button_remove: Eliminare - button_rename: "Redenumire" + button_rename: "Redenumește" button_replace: "Înlocuiește" button_revoke: "Revocă" button_reply: "Răspuns" @@ -1773,7 +1773,7 @@ ro: form_configuration: description: "Personalizați configurația formularului cu aceste add-on-uri suplimentare:" add_groups: "Adaugă noi grupuri de atribut" - rename_groups: "Redenumirea grupurilor de atribute" + rename_groups: "Redenumește atribute grupuri" project_filters: description_html: "Filtrarea și sortarea pe câmpuri personalizate este un supliment al ediției Enterprise." enumeration_activities: "Activități de urmărire timp activate" @@ -2623,7 +2623,7 @@ ro: label_columns: "Coloane" label_sort: "Sortare" label_sort_ascending: "Ordonează ascendent" - label_sort_by: "Sortare după %{value}" + label_sort_by: "Sortează după %{value}" label_sorted_by: "sortate după %{value}" label_sort_descending: "Ordonează descendent" label_sort_higher: "Mută în sus" @@ -3096,7 +3096,7 @@ ro: permission_manage_wiki_menu: "Gestionare meniu wiki" permission_move_work_packages: "Mutare pachete de lucru" permission_protect_wiki_pages: "Protejare pagini wiki" - permission_rename_wiki_pages: "Redenumire pagini wiki" + permission_rename_wiki_pages: "Redenumește pagini wiki" permission_save_queries: "Salvați vizualizările" permission_search_project: "Caută proiect" permission_select_custom_fields: "Selectează câmpuri personalizate" diff --git a/modules/costs/config/locales/crowdin/ro.yml b/modules/costs/config/locales/crowdin/ro.yml index d49fc136eb72..d4f6711fe8c5 100644 --- a/modules/costs/config/locales/crowdin/ro.yml +++ b/modules/costs/config/locales/crowdin/ro.yml @@ -135,8 +135,8 @@ ro: permission_view_own_time_entries: "Vizualizează propriul timp consumat" project_module_costs: "Timp și costuri" setting_allow_tracking_start_and_end_times: "Allow users to track start and end time on time records" - setting_costs_currency: "Currency" - setting_costs_currency_format: "Format of currency" + setting_costs_currency: "Monedă" + setting_costs_currency_format: "Format monedă" setting_enforce_tracking_start_and_end_times: "Force users to set start and end time on time records" text_assign_time_and_cost_entries_to_project: "Atribuiți orele și costurile raportate la proiect" text_destroy_cost_entries_question: "%{cost_entries} au fost raportate pe pachetele de lucru pe care urmează să le ștergeți. Ce doriți să faceți?" diff --git a/modules/meeting/config/locales/crowdin/ro.yml b/modules/meeting/config/locales/crowdin/ro.yml index 7d8451737994..da438dc964ba 100644 --- a/modules/meeting/config/locales/crowdin/ro.yml +++ b/modules/meeting/config/locales/crowdin/ro.yml @@ -34,9 +34,9 @@ ro: notes: "Mențiuni" participants: "Participanţi" participant: - one: "1 Participant" - few: "%{count} Participants" - other: "%{count} Participants" + one: "1 participant" + few: "%{count} participanți" + other: "%{count} participanți" participants_attended: "Participanți" participants_invited: "Invitaţi" project: "Proiect" @@ -59,7 +59,7 @@ ro: meeting_agenda_item: "Agenda item" meeting_agenda: "Agendă" meeting_minutes: "Minute" - meeting_section: "Section" + meeting_section: "Secțiune" activity: filter: meeting: "Întâlniri" @@ -97,7 +97,7 @@ ro: label_meeting_minutes: "Minute" label_meeting_close: "Închide" label_meeting_open: "Deschis" - label_meeting_index_delete: "Delete" + label_meeting_index_delete: "Șterge" label_meeting_open_this_meeting: "Open this meeting" label_meeting_agenda_close: "Închideți ordinea de zi pentru a începe procesul-verbal" label_meeting_date_time: "Dată/Timp" diff --git a/modules/reporting/config/locales/crowdin/ro.yml b/modules/reporting/config/locales/crowdin/ro.yml index 16a9beb7458e..843909fe1ef6 100644 --- a/modules/reporting/config/locales/crowdin/ro.yml +++ b/modules/reporting/config/locales/crowdin/ro.yml @@ -23,7 +23,7 @@ ro: plugin_openproject_reporting: name: "OpenProject Reporting" description: "This plugin allows creating custom cost reports with filtering and grouping created by the OpenProject Time and costs plugin." - button_save_report_as: "Save report as..." + button_save_report_as: "Salvează raportul ca..." comments: "Comentariu" cost_reports_title: "Timp și costuri" label_cost_report: "Raport de cost" @@ -69,7 +69,7 @@ ro: label_filter_add: "Adaugă filtru" label_filter_plural: "Filtre" label_group_by: "Grupează după" - label_group_by_add: "Adaugă atributul Grupare-după" + label_group_by_add: "Adaugă atributul Grupează-după" label_inactive: "Inactiv" label_no: "Nu" label_none: "Sincronizați datele" diff --git a/modules/storages/config/locales/crowdin/js-ro.yml b/modules/storages/config/locales/crowdin/js-ro.yml index 352ea87d9662..d75f93896cac 100644 --- a/modules/storages/config/locales/crowdin/js-ro.yml +++ b/modules/storages/config/locales/crowdin/js-ro.yml @@ -81,7 +81,7 @@ ro: A apărut o eroare la conectarea fișierului încărcat recent '%{fileName}' la pachetul de lucru %{workPackageId}. tooltip: not_logged_in: "Please log in to the storage to access this file." - view_not_allowed: "Nu aveți permisiunea de a vedea acest fișier." + view_not_allowed: "Nu ai permisiune pentru a vedea acest fișier." not_found: "This file cannot be found." already_linked_file: "Acest fișier este deja legat la acest pachet de lucru." already_linked_directory: "Acest director este deja conectat la acest pachet de lucru." diff --git a/modules/team_planner/config/locales/crowdin/js-ro.yml b/modules/team_planner/config/locales/crowdin/js-ro.yml index a2f81212ad45..7735a2a24d25 100644 --- a/modules/team_planner/config/locales/crowdin/js-ro.yml +++ b/modules/team_planner/config/locales/crowdin/js-ro.yml @@ -10,10 +10,10 @@ ro: no_data: 'Adăugați persoane desemnate pentru a vă configura planificatorul echipei.' add_assignee: 'Executant' remove_assignee: 'Înlătură responsabil' - two_weeks: '2-săptămână' - one_week: '1-săptămână' - four_weeks: '4 săptămâni' - eight_weeks: '8 săptămâni' + two_weeks: 'două săptămâni' + one_week: 'o săptămână' + four_weeks: 'patru săptămâni' + eight_weeks: 'opt săptămâni' work_week: 'Săptămână de lucru' today: 'Azi' drag_here_to_remove: 'Trageți aici pentru a elimina responsabilul și a începe și a termina datele.'