diff --git a/app/controllers/application.rb b/app/controllers/application.rb index d21d0bd..238239c 100644 --- a/app/controllers/application.rb +++ b/app/controllers/application.rb @@ -16,6 +16,7 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. require 'uri' +require 'cgi' class ApplicationController < ActionController::Base layout 'base' @@ -81,7 +82,7 @@ class ApplicationController < ActionController::Base def require_login if !User.current.logged? - redirect_to :controller => "account", :action => "login", :back_url => request.request_uri + redirect_to :controller => "account", :action => "login", :back_url => (request.relative_url_root + request.request_uri) return false end true @@ -123,7 +124,7 @@ class ApplicationController < ActionController::Base end def redirect_back_or_default(default) - back_url = params[:back_url] + back_url = CGI.unescape(params[:back_url].to_s) if !back_url.blank? uri = URI.parse(back_url) # do not redirect user to another host diff --git a/app/controllers/timelog_controller.rb b/app/controllers/timelog_controller.rb index 897a50f..c333c02 100644 --- a/app/controllers/timelog_controller.rb +++ b/app/controllers/timelog_controller.rb @@ -194,7 +194,7 @@ class TimelogController < ApplicationController @time_entry.attributes = params[:time_entry] if request.post? and @time_entry.save flash[:notice] = l(:notice_successful_update) - redirect_to(params[:back_url].blank? ? {:action => 'details', :project_id => @time_entry.project} : params[:back_url]) + redirect_back_or_default :action => 'details', :project_id => @time_entry.project return end end diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index cc26127..c3701b3 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -100,6 +100,19 @@ module ApplicationHelper @time_format ||= (Setting.time_format.blank? ? l(:general_fmt_time) : Setting.time_format) include_date ? local.strftime("#{@date_format} #{@time_format}") : local.strftime(@time_format) end + + def distance_of_date_in_words(from_date, to_date = 0) + from_date = from_date.to_date if from_date.respond_to?(:to_date) + to_date = to_date.to_date if to_date.respond_to?(:to_date) + distance_in_days = (to_date - from_date).abs + lwr(:actionview_datehelper_time_in_words_day, distance_in_days) + end + + def due_date_distance_in_words(date) + if date + l((date < Date.today ? :label_roadmap_overdue : :label_roadmap_due_in), distance_of_date_in_words(Date.today, date)) + end + end # Truncates and returns the string as a single line def truncate_single_line(string, *args) diff --git a/app/models/auth_source_ldap.rb b/app/models/auth_source_ldap.rb index 655ffd6..6203a7c 100644 --- a/app/models/auth_source_ldap.rb +++ b/app/models/auth_source_ldap.rb @@ -25,6 +25,8 @@ class AuthSourceLdap < AuthSource validates_length_of :attr_login, :attr_firstname, :attr_lastname, :attr_mail, :maximum => 30, :allow_nil => true validates_numericality_of :port, :only_integer => true + before_validation :strip_ldap_attributes + def after_initialize self.port = 389 if self.port == 0 end @@ -71,7 +73,14 @@ class AuthSourceLdap < AuthSource "LDAP" end -private + private + + def strip_ldap_attributes + [:attr_login, :attr_firstname, :attr_lastname, :attr_mail].each do |attr| + write_attribute(attr, read_attribute(attr).strip) unless read_attribute(attr).nil? + end + end + def initialize_ldap_con(ldap_user, ldap_password) options = { :host => self.host, :port => self.port, diff --git a/app/models/version.rb b/app/models/version.rb index dc618af..e379f4b 100644 --- a/app/models/version.rb +++ b/app/models/version.rb @@ -24,7 +24,7 @@ class Version < ActiveRecord::Base validates_presence_of :name validates_uniqueness_of :name, :scope => [:project_id] validates_length_of :name, :maximum => 60 - validates_format_of :effective_date, :with => /^\d{4}-\d{2}-\d{2}$/, :message => :activerecord_error_not_a_date, :allow_nil => true + validates_format_of :effective_date, :with => /^\d{4}-\d{2}-\d{2}$/, :message => 'activerecord_error_not_a_date', :allow_nil => true def start_date effective_date diff --git a/app/views/versions/_overview.rhtml b/app/views/versions/_overview.rhtml index d3aa6b1..377e917 100644 --- a/app/views/versions/_overview.rhtml +++ b/app/views/versions/_overview.rhtml @@ -1,9 +1,7 @@ <% if version.completed? %>
<%= format_date(version.effective_date) %>
-<% elsif version.overdue? %> -<%= l(:label_roadmap_overdue, distance_of_time_in_words(Time.now, version.effective_date)) %> (<%= format_date(version.effective_date) %>)
<% elsif version.effective_date %> -<%=l(:label_roadmap_due_in)%> <%= distance_of_time_in_words Time.now, version.effective_date %> (<%= format_date(version.effective_date) %>)
+<%= due_date_distance_in_words(version.effective_date) %> (<%= format_date(version.effective_date) %>)
<% end %><%=h version.description %>
diff --git a/db/migrate/097_add_wiew_wiki_edits_permission.rb b/db/migrate/097_add_view_wiki_edits_permission.rb similarity index 91% rename from db/migrate/097_add_wiew_wiki_edits_permission.rb rename to db/migrate/097_add_view_wiki_edits_permission.rb index 0f87ada..3e4b26b 100644 --- a/db/migrate/097_add_wiew_wiki_edits_permission.rb +++ b/db/migrate/097_add_view_wiki_edits_permission.rb @@ -1,4 +1,4 @@ -class AddWiewWikiEditsPermission < ActiveRecord::Migration +class AddViewWikiEditsPermission < ActiveRecord::Migration def self.up Role.find(:all).each do |r| r.add_permission!(:view_wiki_edits) if r.has_permission?(:view_wiki_pages) diff --git a/lang/bg.yml b/lang/bg.yml index e072ad9..f8d2e5e 100644 --- a/lang/bg.yml +++ b/lang/bg.yml @@ -352,7 +352,7 @@ label_sort_higher: Премести по-горе label_sort_lower: Премести по-долу label_sort_lowest: Премести най-долу label_roadmap: Пътна карта -label_roadmap_due_in: Излиза след +label_roadmap_due_in: Излиза след %s label_roadmap_overdue: %s закъснение label_roadmap_no_issues: Няма задачи за тази версия label_search: Търсене diff --git a/lang/ca.yml b/lang/ca.yml index 895f213..30348b0 100644 --- a/lang/ca.yml +++ b/lang/ca.yml @@ -413,7 +413,7 @@ label_sort_higher: Mou cap amunt label_sort_lower: Mou cap avall label_sort_lowest: Mou a la part inferior label_roadmap: Planificació -label_roadmap_due_in: Venç en +label_roadmap_due_in: Venç en %s label_roadmap_overdue: %s tard label_roadmap_no_issues: No hi ha assumptes per a aquesta versió label_search: Cerca diff --git a/lang/cs.yml b/lang/cs.yml index 51486ae..cf2cb09 100644 --- a/lang/cs.yml +++ b/lang/cs.yml @@ -409,7 +409,7 @@ label_sort_higher: Přesunout nahoru label_sort_lower: Přesunout dolů label_sort_lowest: Přesunout na konec label_roadmap: Plán -label_roadmap_due_in: Zbývá +label_roadmap_due_in: Zbývá %s label_roadmap_overdue: %s pozdě label_roadmap_no_issues: Pro tuto verzi nejsou žádné úkoly label_search: Hledat diff --git a/lang/da.yml b/lang/da.yml index 631d589..0ee1b25 100644 --- a/lang/da.yml +++ b/lang/da.yml @@ -418,7 +418,7 @@ label_sort_higher: Flyt op label_sort_lower: Flyt ned label_sort_lowest: Flyt til bunden label_roadmap: Plan -label_roadmap_due_in: Deadline +label_roadmap_due_in: Deadline %s label_roadmap_overdue: %s forsinket label_roadmap_no_issues: Ingen sager i denne version label_search: Søg diff --git a/lang/de.yml b/lang/de.yml index 7ee1425..7aa2d97 100644 --- a/lang/de.yml +++ b/lang/de.yml @@ -19,10 +19,10 @@ actionview_datehelper_time_in_words_second_less_than: weniger als einer Sekunde actionview_datehelper_time_in_words_second_less_than_plural: weniger als %d Sekunden actionview_instancetag_blank_option: Bitte auswählen -activerecord_error_inclusion: ist nicht inbegriffen +activerecord_error_inclusion: ist nicht in der Liste enthalten activerecord_error_exclusion: ist reserviert activerecord_error_invalid: ist unzulässig -activerecord_error_confirmation: Bestätigung nötig +activerecord_error_confirmation: passt nicht zur Bestätigung activerecord_error_accepted: muss angenommen werden activerecord_error_empty: darf nicht leer sein activerecord_error_blank: darf nicht leer sein @@ -77,6 +77,7 @@ notice_failed_to_save_issues: "%d von %d ausgewählten Tickets konnte(n) nicht g notice_no_issue_selected: "Kein Ticket ausgewählt! Bitte wählen Sie die Tickets, die Sie bearbeiten möchten." notice_account_pending: "Ihr Konto wurde erstellt und wartet jetzt auf die Genehmigung des Administrators." notice_default_data_loaded: Die Standard-Konfiguration wurde erfolgreich geladen. +notice_unable_delete_version: Die Version konnte nicht gelöscht werden error_can_t_load_default_data: "Die Standard-Konfiguration konnte nicht geladen werden: %s" error_scm_not_found: Eintrag und/oder Revision besteht nicht im Projektarchiv. @@ -92,6 +93,8 @@ mail_body_account_information_external: Sie können sich mit Ihrem Konto "%s" an mail_body_account_information: Ihre Konto-Informationen mail_subject_account_activation_request: Antrag auf %s Kontoaktivierung mail_body_account_activation_request: 'Ein neuer Benutzer (%s) hat sich registriert. Sein Konto wartet auf Ihre Genehmigung:' +mail_subject_reminder: "%d Tickets müssen in den nächsten Tagen abgegeben werden" +mail_body_reminder: "%d Tickets, die Ihnen zugewiesen sind, müssen in den nächsten %d Tagen abgegeben werden:" gui_validation_error: 1 Fehler gui_validation_error_plural: %d Fehler @@ -180,6 +183,7 @@ field_time_zone: Zeitzone field_searchable: Durchsuchbar field_default_value: Standardwert field_comments_sorting: Kommentare anzeigen +field_parent_title: Übergeordnete Seite setting_app_title: Applikations-Titel setting_app_subtitle: Applikations-Untertitel @@ -206,12 +210,17 @@ setting_time_format: Zeitformat setting_cross_project_issue_relations: Ticket-Beziehungen zwischen Projekten erlauben setting_issue_list_default_columns: Default-Spalten in der Ticket-Auflistung setting_repositories_encodings: Kodierungen der Projektarchive +setting_commit_logs_encoding: Kodierung der Log-Meldungen setting_emails_footer: E-Mail-Fußzeile setting_protocol: Protokoll setting_per_page_options: Objekte pro Seite setting_user_format: Benutzer-Anzeigeformat setting_activity_days_default: Anzahl Tage pro Seite der Projekt-Aktivität setting_display_subprojects_issues: Tickets von Unterprojekten im Hauptprojekt anzeigen +setting_enabled_scm: Aktivierte Versionskontrollsysteme +setting_mail_handler_api_enabled: Abruf eingehender E-Mails aktivieren +setting_mail_handler_api_key: API-Schlüssel +setting_sequential_project_identifiers: Fortlaufende Projektkennungen generieren project_module_issue_tracking: Ticket-Verfolgung project_module_time_tracking: Zeiterfassung @@ -292,6 +301,7 @@ label_auth_source: Authentifizierungs-Modus label_auth_source_new: Neuer Authentifizierungs-Modus label_auth_source_plural: Authentifizierungs-Arten label_subproject_plural: Unterprojekte +label_and_its_subprojects: %s und dessen Unterprojekte label_min_max_length: Länge (Min. - Max.) label_list: Liste label_date: Datum @@ -395,6 +405,8 @@ label_revision_plural: Revisionen label_associated_revisions: Zugehörige Revisionen label_added: hinzugefügt label_modified: geändert +label_copied: kopiert +label_renamed: umbenannt label_deleted: gelöscht label_latest_revision: Aktuellste Revision label_latest_revision_plural: Aktuellste Revisionen @@ -446,6 +458,7 @@ label_relation_new: Neue Beziehung label_relation_delete: Beziehung löschen label_relates_to: Beziehung mit label_duplicates: Duplikat von +label_duplicated_by: Dupliziert durch label_blocks: Blockiert label_blocked_by: Blockiert durch label_precedes: Vorgänger von @@ -511,6 +524,9 @@ label_preferences: Präferenzen label_chronological_order: in zeitlicher Reihenfolge label_reverse_chronological_order: in umgekehrter zeitlicher Reihenfolge label_planning: Terminplanung +label_incoming_emails: Eingehende E-Mails +label_generate_key: Generieren +label_issue_watchers: Beobachter button_login: Anmelden button_submit: OK @@ -549,6 +565,7 @@ button_copy: Kopieren button_annotate: Annotieren button_update: Aktualisieren button_configure: Konfigurieren +button_quote: Zitieren status_active: aktiv status_registered: angemeldet @@ -558,6 +575,7 @@ text_select_mail_notifications: Bitte wählen Sie die Aktionen aus, für die ein text_regexp_info: z. B. ^[A-Z0-9]+$ text_min_max_length_info: 0 heißt keine Beschränkung text_project_destroy_confirmation: Sind Sie sicher, dass sie das Projekt löschen wollen? +text_subprojects_destroy_warning: 'Dessen Unterprojekte (%s) werden ebenfalls gelöscht.' text_workflow_edit: Workflow zum Bearbeiten auswählen text_are_you_sure: Sind Sie sicher? text_journal_changed: geändert von %s zu %s @@ -593,6 +611,10 @@ text_destroy_time_entries_question: Es wurden bereits %.02f Stunden auf dieses T text_destroy_time_entries: Gebuchte Aufwände löschen text_assign_time_entries_to_project: Gebuchte Aufwände dem Projekt zuweisen text_reassign_time_entries: 'Gebuchte Aufwände diesem Ticket zuweisen:' +text_user_wrote: '%s schrieb:' +text_enumeration_destroy_question: '%d Objekte sind diesem Wert zugeordnet.' +text_enumeration_category_reassign_to: 'Die Objekte stattdessen diesem Wert zuordnen:' +text_email_delivery_not_configured: "Der SMTP-Server ist nicht konfiguriert und Mailbenachrichtigungen sind ausgeschaltet.\nNehmen Sie die Einstellungen für Ihren SMTP-Server in config/email.yml vor und starten Sie die Applikation neu." default_role_manager: Manager default_role_developper: Entwickler @@ -619,25 +641,3 @@ default_activity_development: Entwicklung enumeration_issue_priorities: Ticket-Prioritäten enumeration_doc_categories: Dokumentenkategorien enumeration_activities: Aktivitäten (Zeiterfassung) -text_subprojects_destroy_warning: 'Its subproject(s): %s will be also deleted.' -label_and_its_subprojects: %s and its subprojects -mail_body_reminder: "%d issue(s) that are assigned to you are due in the next %d days:" -mail_subject_reminder: "%d issue(s) due in the next days" -text_user_wrote: '%s wrote:' -label_duplicated_by: duplicated by -setting_enabled_scm: Enabled SCM -text_enumeration_category_reassign_to: 'Reassign them to this value:' -text_enumeration_destroy_question: '%d objects are assigned to this value.' -label_incoming_emails: Incoming emails -label_generate_key: Generate a key -setting_mail_handler_api_enabled: Enable WS for incoming emails -setting_mail_handler_api_key: API key -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." -field_parent_title: Parent page -label_issue_watchers: Watchers -setting_commit_logs_encoding: Commit messages encoding -button_quote: Quote -setting_sequential_project_identifiers: Generate sequential project identifiers -notice_unable_delete_version: Unable to delete version -label_renamed: renamed -label_copied: copied diff --git a/lang/en.yml b/lang/en.yml index 5ad1e55..8a73a39 100644 --- a/lang/en.yml +++ b/lang/en.yml @@ -418,7 +418,7 @@ label_sort_higher: Move up label_sort_lower: Move down label_sort_lowest: Move to bottom label_roadmap: Roadmap -label_roadmap_due_in: Due in +label_roadmap_due_in: Due in %s label_roadmap_overdue: %s late label_roadmap_no_issues: No issues for this version label_search: Search diff --git a/lang/es.yml b/lang/es.yml index 320a169..ae367d8 100644 --- a/lang/es.yml +++ b/lang/es.yml @@ -344,7 +344,7 @@ label_sort_higher: Subir label_sort_lower: Bajar label_sort_lowest: Último label_roadmap: Roadmap -label_roadmap_due_in: Finaliza en +label_roadmap_due_in: Finaliza en %s label_roadmap_no_issues: No hay peticiones para esta versión label_search: Búsqueda label_result: %d resultado diff --git a/lang/fi.yml b/lang/fi.yml index 1953fdf..225563b 100644 --- a/lang/fi.yml +++ b/lang/fi.yml @@ -373,7 +373,7 @@ label_sort_higher: Siirrä ylös label_sort_lower: Siirrä alas label_sort_lowest: Siirrä alimmaiseksi label_roadmap: Roadmap -label_roadmap_due_in: Määräaika +label_roadmap_due_in: Määräaika %s label_roadmap_overdue: %s myöhässä label_roadmap_no_issues: Ei tapahtumia tälle versiolle label_search: Haku diff --git a/lang/fr.yml b/lang/fr.yml index eb52d5a..b640780 100644 --- a/lang/fr.yml +++ b/lang/fr.yml @@ -417,7 +417,7 @@ label_sort_higher: Remonter label_sort_lower: Descendre label_sort_lowest: Descendre en dernier label_roadmap: Roadmap -label_roadmap_due_in: Echéance dans +label_roadmap_due_in: Echéance dans %s label_roadmap_overdue: En retard de %s label_roadmap_no_issues: Aucune demande pour cette version label_search: Recherche diff --git a/lang/he.yml b/lang/he.yml index 7a6c62e..07962d2 100644 --- a/lang/he.yml +++ b/lang/he.yml @@ -357,7 +357,7 @@ label_sort_higher: הזז למעלה label_sort_lower: הזז למטה label_sort_lowest: הזז לתחתית label_roadmap: מפת הדרכים -label_roadmap_due_in: נגמר בעוד +label_roadmap_due_in: %s נגמר בעוד label_roadmap_overdue: %s מאחר label_roadmap_no_issues: אין נושאים לגירסא זו label_search: חפש diff --git a/lang/hu.yml b/lang/hu.yml index ad150b5..3a3d18a 100644 --- a/lang/hu.yml +++ b/lang/hu.yml @@ -407,7 +407,7 @@ label_sort_higher: Eggyel feljebb label_sort_lower: Eggyel lejjebb label_sort_lowest: Az aljára label_roadmap: Életút -label_roadmap_due_in: Elkészültéig várhatóan még +label_roadmap_due_in: Elkészültéig várhatóan még %s label_roadmap_overdue: %s késésben label_roadmap_no_issues: Nincsenek feladatok ehhez a verzióhoz label_search: Keresés diff --git a/lang/it.yml b/lang/it.yml index 2591358..bca7556 100644 --- a/lang/it.yml +++ b/lang/it.yml @@ -147,7 +147,7 @@ field_attr_lastname: Attributo cognome field_attr_mail: Attributo e-mail field_onthefly: Creazione utenza "al volo" field_start_date: Inizio -field_done_ratio: %% completo +field_done_ratio: %% completato field_auth_source: Modalità di autenticazione field_hide_mail: Nascondi il mio indirizzo di e-mail field_comments: Commento @@ -346,13 +346,13 @@ label_latest_revision: Ultima versione label_latest_revision_plural: Ultime versioni label_view_revisions: Mostra versioni label_max_size: Dimensione massima -label_on: 'on' +label_on: su label_sort_highest: Sposta in cima label_sort_higher: Su label_sort_lower: Giù label_sort_lowest: Sposta in fondo label_roadmap: Roadmap -label_roadmap_due_in: Da ultimare in +label_roadmap_due_in: Da ultimare in %s label_roadmap_overdue: %s late label_roadmap_no_issues: Nessuna segnalazione per questa versione label_search: Ricerca @@ -361,15 +361,15 @@ label_all_words: Tutte le parole label_wiki: Wiki label_wiki_edit: Modifica Wiki label_wiki_edit_plural: Modfiche wiki -label_wiki_page: Wiki page -label_wiki_page_plural: Wiki pages -label_index_by_title: Index by title -label_index_by_date: Index by date +label_wiki_page: Pagina Wiki +label_wiki_page_plural: Pagine Wiki +label_index_by_title: Ordina per titolo +label_index_by_date: Ordina per data label_current_version: Versione corrente label_preview: Anteprima label_feed_plural: Feed label_changes_details: Particolari di tutti i cambiamenti -label_issue_tracking: tracking delle segnalazioni +label_issue_tracking: Tracking delle segnalazioni label_spent_time: Tempo impiegato label_f_hour: %.2f ora label_f_hour_plural: %.2f ore @@ -485,7 +485,7 @@ text_comma_separated: Valori multipli permessi (separati da virgola). text_issues_ref_in_commit_messages: Referencing and fixing issues in commit messages text_issue_added: "E' stata segnalata l'anomalia %s da %s." text_issue_updated: "L'anomalia %s e' stata aggiornata da %s." -text_wiki_destroy_confirmation: Are you sure you want to delete this wiki and all its content ? +text_wiki_destroy_confirmation: Sicuro di voler cancellare questo wiki e tutti i suoi contenuti? text_issue_category_destroy_question: Alcune segnalazioni (%d) risultano assegnate a questa categoria. Cosa vuoi fare ? text_issue_category_destroy_assignments: Rimuovi gli assegnamenti a questa categoria text_issue_category_reassign_to: Riassegna segnalazioni a questa categoria @@ -535,7 +535,7 @@ label_user_mail_option_selected: "Solo per gli eventi relativi ai progetti selez label_user_mail_option_all: "Per ogni evento relativo ad uno dei miei progetti" label_user_mail_option_none: "Solo per argomenti che osservo o che mi riguardano" setting_emails_footer: Piè di pagina e-mail -label_float: Float +label_float: Decimale button_copy: Copia mail_body_account_information_external: Puoi utilizzare il tuo account "%s" per accedere al sistema. mail_body_account_information: Le informazioni riguardanti il tuo account @@ -633,10 +633,10 @@ setting_mail_handler_api_enabled: Abilita WS per le e-mail in arrivo setting_mail_handler_api_key: chiave API text_email_delivery_not_configured: "La consegna via e-mail non è configurata e le notifiche sono disabilitate.\nConfigura il tuo server SMTP in config/email.yml e riavvia l'applicazione per abilitarle." field_parent_title: Parent page -label_issue_watchers: Watchers -setting_commit_logs_encoding: Commit messages encoding -button_quote: Quote -setting_sequential_project_identifiers: Generate sequential project identifiers -notice_unable_delete_version: Unable to delete version -label_renamed: renamed -label_copied: copied +label_issue_watchers: Osservatori +setting_commit_logs_encoding: Codifica dei messaggi di commit +button_quote: Quota +setting_sequential_project_identifiers: Genera progetti con identificativi in sequenza +notice_unable_delete_version: Impossibile cancellare la versione +label_renamed: rinominato +label_copied: copiato diff --git a/lang/ja.yml b/lang/ja.yml index c38c2ef..4e46212 100644 --- a/lang/ja.yml +++ b/lang/ja.yml @@ -353,7 +353,7 @@ label_sort_higher: 上へ label_sort_lower: 下へ label_sort_lowest: 一番下へ label_roadmap: ロードマップ -label_roadmap_due_in: 期日まで +label_roadmap_due_in: 期日まで %s label_roadmap_overdue: %s late label_roadmap_no_issues: このバージョンに向けてのチケットはありません label_search: 検索 diff --git a/lang/ko.yml b/lang/ko.yml index 27adf16..c23ea71 100644 --- a/lang/ko.yml +++ b/lang/ko.yml @@ -359,7 +359,7 @@ label_sort_higher: 위로 label_sort_lower: 아래로 label_sort_lowest: 최하단으로 label_roadmap: 로드맵 -label_roadmap_due_in: 기한 +label_roadmap_due_in: 기한 %s label_roadmap_overdue: %s 지연 label_roadmap_no_issues: 이버전에 해당하는 이슈 없음 label_search: 검색 diff --git a/lang/lt.yml b/lang/lt.yml index 5110a6b..f29c28c 100644 --- a/lang/lt.yml +++ b/lang/lt.yml @@ -371,7 +371,7 @@ label_sort_higher: Perkelti į viršų label_sort_lower: Perkelti žemyn label_sort_lowest: Perkelti į apačią label_roadmap: Veiklos grafikas -label_roadmap_due_in: Baigiasi po +label_roadmap_due_in: Baigiasi po %s label_roadmap_overdue: %s vėluojama label_roadmap_no_issues: Jokio darbo šiai versijai nėra label_search: Ieškoti diff --git a/lang/nl.yml b/lang/nl.yml index 10d02cc..8fd96d1 100644 --- a/lang/nl.yml +++ b/lang/nl.yml @@ -352,7 +352,7 @@ label_sort_higher: Verplaats naar boven label_sort_lower: Verplaats naar beneden label_sort_lowest: Verplaats naar eind label_roadmap: Roadmap -label_roadmap_due_in: Voldaan in +label_roadmap_due_in: Voldaan in %s label_roadmap_overdue: %s overtijd label_roadmap_no_issues: Geen issues voor deze versie label_search: Zoeken diff --git a/lang/no.yml b/lang/no.yml index 2b78826..8cd6952 100644 --- a/lang/no.yml +++ b/lang/no.yml @@ -410,7 +410,7 @@ label_sort_higher: Flytt opp label_sort_lower: Flytt ned label_sort_lowest: Flytt til bunnen label_roadmap: Veikart -label_roadmap_due_in: Frist om +label_roadmap_due_in: Frist om %s label_roadmap_overdue: %s over fristen label_roadmap_no_issues: Ingen saker for denne versjonen label_search: Søk diff --git a/lang/pl.yml b/lang/pl.yml index 6bdac48..5003db7 100644 --- a/lang/pl.yml +++ b/lang/pl.yml @@ -344,7 +344,7 @@ label_sort_higher: Do góry label_sort_lower: Do dołu label_sort_lowest: Przesuń na dół label_roadmap: Mapa -label_roadmap_due_in: W czasie +label_roadmap_due_in: W czasie %s label_roadmap_no_issues: Brak zagadnień do tej wersji label_search: Szukaj label_result_plural: Rezultatów diff --git a/lang/pt-br.yml b/lang/pt-br.yml index a4bbefe..3e314af 100644 --- a/lang/pt-br.yml +++ b/lang/pt-br.yml @@ -415,7 +415,7 @@ label_sort_higher: Mover para cima label_sort_lower: Mover para baixo label_sort_lowest: Mover para o fim label_roadmap: Planejamento -label_roadmap_due_in: Previsto para +label_roadmap_due_in: Previsto para %s label_roadmap_overdue: %s atrasado label_roadmap_no_issues: Sem tickets para esta versão label_search: Busca diff --git a/lang/pt.yml b/lang/pt.yml index 98cde78..e968ef3 100644 --- a/lang/pt.yml +++ b/lang/pt.yml @@ -17,24 +17,24 @@ actionview_datehelper_time_in_words_minute_plural: %d minutos actionview_datehelper_time_in_words_minute_single: 1 minuto actionview_datehelper_time_in_words_second_less_than: menos de um segundo actionview_datehelper_time_in_words_second_less_than_plural: menos de %d segundos -actionview_instancetag_blank_option: Selecione +actionview_instancetag_blank_option: Seleccione activerecord_error_inclusion: não existe na lista activerecord_error_exclusion: já existe na lista activerecord_error_invalid: é inválido -activerecord_error_confirmation: não confere com sua confirmação -activerecord_error_accepted: deve ser aceito +activerecord_error_confirmation: não está de acordo com sua confirmação +activerecord_error_accepted: deve ser aceite activerecord_error_empty: não pode ser vazio activerecord_error_blank: não pode estar em branco activerecord_error_too_long: é muito longo activerecord_error_too_short: é muito curto activerecord_error_wrong_length: possui o comprimento errado -activerecord_error_taken: já foi usado em outro registro +activerecord_error_taken: já foi usado em outro registo activerecord_error_not_a_number: não é um número activerecord_error_not_a_date: não é uma data válida activerecord_error_greater_than_start_date: deve ser maior que a data inicial -activerecord_error_not_same_project: não pertence ao mesmo projeto -activerecord_error_circular_dependency: Este relaão pode criar uma dependência circular +activerecord_error_not_same_project: não pertence ao mesmo projecto +activerecord_error_circular_dependency: Esta relação pode criar uma dependência circular general_fmt_age: %d ano general_fmt_age_plural: %d anos @@ -54,33 +54,33 @@ general_pdf_encoding: ISO-8859-1 general_day_names: Segunda,Terça,Quarta,Quinta,Sexta,Sábado,Domingo general_first_day_of_week: '1' -notice_account_updated: Conta foi atualizada com sucesso. -notice_account_invalid_creditentials: Usuário ou senha inválidos. -notice_account_password_updated: Senha foi alterada com sucesso. -notice_account_wrong_password: Senha errada. -notice_account_register_done: Conta foi criada com sucesso. -notice_account_unknown_email: Usuário desconhecido. -notice_can_t_change_password: Esta conta usa autenticação externa. E impossível trocar a senha. -notice_account_lost_email_sent: Um email com as instruções para escolher uma nova senha foi enviado para você. -notice_account_activated: Sua conta foi ativada. Você pode logar agora +notice_account_updated: Conta actualizada com sucesso. +notice_account_invalid_creditentials: Utilizador ou palavra-chave inválidos. +notice_account_password_updated: Palavra-chave foi alterada com sucesso. +notice_account_wrong_password: Palavra-chave errada. +notice_account_register_done: Conta criada com sucesso. +notice_account_unknown_email: Utilizador desconhecido. +notice_can_t_change_password: Esta conta utiliza autenticação externa. Não é possível alterar a palavra-chave. +notice_account_lost_email_sent: Foi enviado e-mail com as instruções para criar uma nova palavra-chave. +notice_account_activated: Conta foi activada. Pode ligar-se agora notice_successful_create: Criado com sucesso. notice_successful_update: Alterado com sucesso. notice_successful_delete: Apagado com sucesso. -notice_successful_connection: Conectado com sucesso. -notice_file_not_found: A página que você está tentando acessar não existe ou foi excluída. -notice_locking_conflict: Os dados foram atualizados por um outro usuário. -notice_not_authorized: Você não está autorizado a acessar esta página. -notice_email_sent: An email was sent to %s -notice_email_error: An error occurred while sending mail (%s) -notice_feeds_access_key_reseted: Your RSS access key was reseted. +notice_successful_connection: Ligado com sucesso. +notice_file_not_found: A página que está a tentar aceder não existe ou foi eliminada. +notice_locking_conflict: Os dados foram actualizados por outro utilizador. +notice_not_authorized: Não está autorizado a visualizar esta página. +notice_email_sent: Foi enviado um e-mail para %s +notice_email_error: Ocorreu um erro ao enviar o e-mail (%s) +notice_feeds_access_key_reseted: A sua chave RSS foi inicializada. error_scm_not_found: "A entrada e/ou a revisão não existem no repositório." -error_scm_command_failed: "An error occurred when trying to access the repository: %s" +error_scm_command_failed: "Ocorreu um erro ao tentar aceder ao repositorio: %s" -mail_subject_lost_password: Sua senha do %s. -mail_body_lost_password: 'Para mudar sua senha, clique no link abaixo:' -mail_subject_register: Ativação de conta do %s. -mail_body_register: 'Para ativar sua conta, clique no link abaixo:' +mail_subject_lost_password: Palavra-chave do %s. +mail_body_lost_password: 'Para mudar a palavra-chave, clique no link abaixo:' +mail_subject_register: Activação de conta do %s. +mail_body_register: 'Para activar a conta, clique no link abaixo:' gui_validation_error: 1 erro gui_validation_error_plural: %d erros @@ -91,7 +91,7 @@ field_summary: Sumário field_is_required: Obrigatório field_firstname: Primeiro nome field_lastname: Último nome -field_mail: Email +field_mail: E-mail field_filename: Arquivo field_filesize: Tamanho field_downloads: Downloads @@ -99,7 +99,7 @@ field_author: Autor field_created_on: Criado field_updated_on: Alterado field_field_format: Formato -field_is_for_all: Para todos os projetos +field_is_for_all: Para todos os projectos field_possible_values: Possíveis valores field_regexp: Expressão regular field_min_length: Tamanho mínimo @@ -107,33 +107,33 @@ field_max_length: Tamanho máximo field_value: Valor field_category: Categoria field_title: Título -field_project: Projeto +field_project: Projecto field_issue: Tarefa -field_status: Status +field_status: Estado field_notes: Notas field_is_closed: Tarefa fechada -field_is_default: Status padrão +field_is_default: Estado padrão field_tracker: Tipo field_subject: Assunto field_due_date: Data final -field_assigned_to: Atribuído para +field_assigned_to: Atribuído a field_priority: Prioridade -field_fixed_version: Target version -field_user: Usuário +field_fixed_version: Versão +field_user: Utilizador field_role: Regra field_homepage: Página inicial field_is_public: Público -field_parent: Sub-projeto de +field_parent: Subprojecto de field_is_in_chlog: Tarefas mostradas no changelog field_is_in_roadmap: Tarefas mostradas no roadmap -field_login: Login -field_mail_notification: Notificações por email +field_login: Utilizador +field_mail_notification: Notificações por e-mail field_admin: Administrador -field_last_login_on: Última conexão +field_last_login_on: Último acesso field_language: Língua field_effective_date: Data -field_password: Senha -field_new_password: Nova senha +field_password: Palavra-chave +field_new_password: Nova palavra-chave field_password_confirmation: Confirmação field_version: Versão field_type: Tipo @@ -141,60 +141,60 @@ field_host: Servidor field_port: Porta field_account: Conta field_base_dn: Base DN -field_attr_login: Atributo login +field_attr_login: Atributo utilizador field_attr_firstname: Atributo primeiro nome field_attr_lastname: Atributo último nome -field_attr_mail: Atributo email -field_onthefly: Criação de usuário sob-demanda +field_attr_mail: Atributo e-mail +field_onthefly: Criação de utilizadores sob demanda field_start_date: Início field_done_ratio: %% Terminado field_auth_source: Modo de autenticação -field_hide_mail: Esconda meu email +field_hide_mail: Esconder endereço de e-mail field_comments: Comentário field_url: URL field_start_page: Página inicial -field_subproject: Sub-projeto +field_subproject: Subprojecto field_hours: Horas -field_activity: Atividade +field_activity: Actividade field_spent_on: Data field_identifier: Identificador field_is_filter: Usado como filtro field_issue_to_id: Tarefa relacionada field_delay: Atraso -field_assignable: Issues can be assigned to this role -field_redirect_existing_links: Redirect existing links -field_estimated_hours: Estimated time +field_assignable: As tarefas não podem ser associados a esta regra +field_redirect_existing_links: Redireccionar as hiperligações +field_estimated_hours: Estimativa de horas field_default_value: Padrão setting_app_title: Título da aplicação -setting_app_subtitle: Sub-título da aplicação +setting_app_subtitle: Subtítulo da aplicação setting_welcome_text: Texto de boas-vindas setting_default_language: Linguagem padrão setting_login_required: Autenticação obrigatória setting_self_registration: Registro permitido setting_attachment_max_size: Tamanho máximo do anexo setting_issues_export_limit: Limite de exportação das tarefas -setting_mail_from: Email enviado de +setting_mail_from: E-mail enviado de setting_host_name: Servidor setting_text_formatting: Formato do texto setting_wiki_compression: Compactação do histórico do Wiki setting_feeds_limit: Limite do Feed setting_autofetch_changesets: Buscar automaticamente commits -setting_sys_api_enabled: Ativa WS para gerenciamento do repositório -setting_commit_ref_keywords: Palavras-chave de referôncia +setting_sys_api_enabled: Activar Web Service para gestão do repositório +setting_commit_ref_keywords: Palavras-chave de referência setting_commit_fix_keywords: Palavras-chave fixas -setting_autologin: Autologin -setting_date_format: Date format -setting_cross_project_issue_relations: Allow cross-project issue relations +setting_autologin: Acesso automático +setting_date_format: Formato da data +setting_cross_project_issue_relations: Permitir relações de tarefas de projectos diferentes -label_user: Usuário -label_user_plural: Usuários -label_user_new: Novo usuário -label_project: Projeto -label_project_new: Novo projeto -label_project_plural: Projetos -label_project_all: All Projects -label_project_latest: Últimos projetos +label_user: Utilizador +label_user_plural: Utilizadores +label_user_new: Novo utilizador +label_project: Projecto +label_project_new: Novo projecto +label_project_plural: Projectos +label_project_all: Todos os projectos +label_project_latest: Últimos projectos label_issue: Tarefa label_issue_new: Nova tarefa label_issue_plural: Tarefas @@ -213,9 +213,9 @@ label_tracker: Tipo label_tracker_plural: Tipos label_tracker_new: Novo tipo label_workflow: Workflow -label_issue_status: Status da tarefa -label_issue_status_plural: Status das tarefas -label_issue_status_new: Novo status +label_issue_status: Estado da tarefa +label_issue_status_plural: Estado das tarefas +label_issue_status_new: Novo estado label_issue_category: Categoria da tarefa label_issue_category_plural: Categorias das tarefas label_issue_category_new: Nova categoria @@ -226,32 +226,32 @@ label_enumerations: Enumeração label_enumeration_new: Novo valor label_information: Informação label_information_plural: Informações -label_please_login: Efetue login -label_register: Registre-se -label_password_lost: Perdi a senha +label_please_login: Efectuar acesso +label_register: Registe-se +label_password_lost: Perdi a palavra-chave label_home: Página inicial -label_my_page: Minha página +label_my_page: Página pessoal label_my_account: Minha conta -label_my_projects: Meus projetos +label_my_projects: Meus projectos label_administration: Administração -label_login: Login -label_logout: Logout +label_login: Entrar +label_logout: Sair label_help: Ajuda label_reported_issues: Tarefas reportadas -label_assigned_to_me_issues: Tarefas atribuídas à mim -label_last_login: Útima conexão +label_assigned_to_me_issues: Tarefas atribuídas +label_last_login: Último acesso label_last_updates: Última alteração label_last_updates_plural: %d Últimas alterações -label_registered_on: Registrado em -label_activity: Atividade +label_registered_on: Registado em +label_activity: Actividade label_new: Novo -label_logged_as: Logado como +label_logged_as: Ligado como label_environment: Ambiente label_authentication: Autenticação label_auth_source: Modo de autenticação label_auth_source_new: Novo modo de autenticação label_auth_source_plural: Modos de autenticação -label_subproject_plural: Sub-projetos +label_subproject_plural: Subprojectos label_min_max_length: Tamanho min-max label_list: Lista label_date: Data @@ -264,7 +264,7 @@ label_attribute_plural: Atributos label_download: %d Download label_download_plural: %d Downloads label_no_data: Sem dados para mostrar -label_change_status: Mudar status +label_change_status: Mudar estado label_history: Histórico label_attachment: Arquivo label_attachment_new: Novo arquivo @@ -286,15 +286,15 @@ label_version_plural: Versões label_confirmation: Confirmação label_export_to: Exportar para label_read: Ler... -label_public_projects: Projetos públicos +label_public_projects: Projectos públicos label_open_issues: Aberto label_open_issues_plural: Abertos label_closed_issues: Fechado label_closed_issues_plural: Fechados label_total: Total label_permissions: Permissões -label_current_status: Status atual -label_new_statuses_allowed: Novo status permitido +label_current_status: Estado actual +label_new_statuses_allowed: Novo estado permitido label_all: todos label_none: nenhum label_next: Próximo @@ -309,7 +309,7 @@ label_gantt: Gantt label_internal: Interno label_last_changes: últimas %d mudanças label_change_view_all: Mostrar todas as mudanças -label_personalize_page: Personalizar esta página +label_personalize_page: Personalizar página label_comment: Comentário label_comment_plural: Comentários label_comment_add: Adicionar comentário @@ -326,7 +326,7 @@ label_in_less_than: é maior que label_in_more_than: é menor que label_in: em label_today: hoje -label_this_week: this week +label_this_week: esta semana label_less_than_ago: faz menos de label_more_than_ago: faz mais de label_ago: dias atrás @@ -341,7 +341,7 @@ label_revision: Revisão label_revision_plural: Revisões label_added: adicionado label_modified: modificado -label_deleted: deletado +label_deleted: apagado label_latest_revision: Última revisão label_latest_revision_plural: Últimas revisões label_view_revisions: Ver revisões @@ -353,20 +353,20 @@ label_sort_lower: Mover para baixo label_sort_lowest: Mover para o fim label_roadmap: Roadmap label_roadmap_due_in: Termina em -label_roadmap_overdue: %s late +label_roadmap_overdue: %s atrasado label_roadmap_no_issues: Sem tarefas para essa versão -label_search: Busca +label_search: Procurar label_result_plural: Resultados label_all_words: Todas as palavras label_wiki: Wiki -label_wiki_edit: Wiki edit -label_wiki_edit_plural: Wiki edits -label_wiki_page: Wiki page -label_wiki_page_plural: Wiki pages -label_index_by_title: Index by title -label_index_by_date: Index by date -label_current_version: Versão atual -label_preview: Prévia +label_wiki_edit: Editar Wiki +label_wiki_edit_plural: Editar Wiki's +label_wiki_page: Página de Wiki +label_wiki_page_plural: Páginas de Wiki +label_index_by_title: Índice por título +label_index_by_date: Índice por data +label_current_version: Versão actual +label_preview: Pré-visualizar label_feed_plural: Feeds label_changes_details: Detalhes de todas as mudanças label_issue_tracking: Tarefas @@ -386,10 +386,10 @@ label_copy_workflow_from: Copiar workflow de label_permissions_report: Relatório de permissões label_watched_issues: Tarefas observadas label_related_issues: tarefas relacionadas -label_applied_status: Status aplicado +label_applied_status: Estado aplicado label_loading: Carregando... label_relation_new: Nova relação -label_relation_delete: Deletar relação +label_relation_delete: Apagar relação label_relates_to: relacionado à label_duplicates: duplicadas label_blocks: bloqueios @@ -398,38 +398,38 @@ label_precedes: procede label_follows: segue label_end_to_start: fim ao início label_end_to_end: fim ao fim -label_start_to_start: ínícia ao inícia -label_start_to_end: inícia ao fim -label_stay_logged_in: Rester connecté -label_disabled: désactivé -label_show_completed_versions: Voire les versions passées -label_me: me +label_start_to_start: início ao início +label_start_to_end: início ao fim +label_stay_logged_in: Guardar sessão +label_disabled: desactivar +label_show_completed_versions: Ver as versões completas +label_me: Eu label_board: Forum -label_board_new: New forum -label_board_plural: Forums -label_topic_plural: Topics -label_message_plural: Messages -label_message_last: Last message -label_message_new: New message -label_reply_plural: Replies -label_send_information: Send account information to the user -label_year: Year -label_month: Month -label_week: Week -label_date_from: From -label_date_to: To -label_language_based: Language based -label_sort_by: Sort by %s -label_send_test_email: Send a test email -label_feeds_access_key_created_on: RSS access key created %s ago -label_module_plural: Modules -label_added_time_by: Added by %s %s ago -label_updated_time: Updated %s ago -label_jump_to_a_project: Jump to a project... +label_board_new: Novo forum +label_board_plural: Foruns +label_topic_plural: Topicos +label_message_plural: Mensagens +label_message_last: Ultima mensagem +label_message_new: Nova mensagem +label_reply_plural: Respostas +label_send_information: Enviar dados da conta para o utilizador +label_year: Ano +label_month: Mês +label_week: Semana +label_date_from: De +label_date_to: Para +label_language_based: Baseado na língua +label_sort_by: Ordenar por %s +label_send_test_email: Enviar e-mail de teste +label_feeds_access_key_created_on: Chave RSS criada à %s atrás +label_module_plural: Módulos +label_added_time_by: Adicionado por %s %s atrás +label_updated_time: Actualizado %s atrás +label_jump_to_a_project: Ir para o projecto... -button_login: Login +button_login: Entrar button_submit: Enviar -button_save: Salvar +button_save: Guardar button_check_all: Marcar todos button_uncheck_all: Desmarcar todos button_delete: Apagar @@ -448,195 +448,195 @@ button_view: Ver button_move: Mover button_back: Voltar button_cancel: Cancelar -button_activate: Ativar +button_activate: Activar button_sort: Ordenar button_log_time: Tempo de trabalho button_rollback: Voltar para esta versão button_watch: Observar button_unwatch: Não observar -button_reply: Reply -button_archive: Archive -button_unarchive: Unarchive -button_reset: Reset -button_rename: Rename +button_reply: Responder +button_archive: Arquivar +button_unarchive: Desarquivar +button_reset: Reinicializar +button_rename: Renomear -status_active: ativo +status_active: activo status_registered: registrado status_locked: bloqueado -text_select_mail_notifications: Selecionar ações para ser enviada uma notificação por email +text_select_mail_notifications: Seleccionar as acções que originam uma notificação por e-mail text_regexp_info: ex. ^[A-Z0-9]+$ text_min_max_length_info: 0 siginifica sem restrição -text_project_destroy_confirmation: Você tem certeza que deseja deletar este projeto e todos os dados relacionados? -text_workflow_edit: Selecione uma regra e um tipo de tarefa para editar o workflow -text_are_you_sure: Você tem certeza ? +text_project_destroy_confirmation: Você tem certeza que deseja apagar este projecto e todos os dados relacionados? +text_workflow_edit: Seleccione uma regra e um tipo de tarefa para editar o workflow +text_are_you_sure: Você tem certeza? text_journal_changed: alterado de %s para %s text_journal_set_to: alterar para %s text_journal_deleted: apagado text_tip_task_begin_day: tarefa começa neste dia text_tip_task_end_day: tarefa termina neste dia text_tip_task_begin_end_day: tarefa começa e termina neste dia -text_project_identifier_info: 'Letras minúsculas (a-z), números e traços permitido.