Compare commits
1 Commits
1.0-stable
...
1.0.4
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d3ae4cfd11 |
@@ -19,7 +19,6 @@ class JournalsController < ApplicationController
|
||||
before_filter :find_journal, :only => [:edit]
|
||||
before_filter :find_issue, :only => [:new]
|
||||
before_filter :find_optional_project, :only => [:index]
|
||||
before_filter :authorize, :only => [:new, :edit]
|
||||
accept_key_auth :index
|
||||
|
||||
helper :issues
|
||||
|
||||
@@ -84,15 +84,14 @@ class IssueRelation < ActiveRecord::Base
|
||||
|
||||
def set_issue_to_dates
|
||||
soonest_start = self.successor_soonest_start
|
||||
if soonest_start && issue_to
|
||||
if soonest_start
|
||||
issue_to.reschedule_after(soonest_start)
|
||||
end
|
||||
end
|
||||
|
||||
def successor_soonest_start
|
||||
if (TYPE_PRECEDES == self.relation_type) && delay && issue_from && (issue_from.start_date || issue_from.due_date)
|
||||
(issue_from.due_date || issue_from.start_date) + 1 + delay
|
||||
end
|
||||
return nil unless (TYPE_PRECEDES == self.relation_type) && (issue_from.start_date || issue_from.due_date)
|
||||
(issue_from.due_date || issue_from.start_date) + 1 + delay
|
||||
end
|
||||
|
||||
def <=>(relation)
|
||||
|
||||
@@ -368,15 +368,15 @@ class Query < ActiveRecord::Base
|
||||
|
||||
# Returns true if the query is a grouped query
|
||||
def grouped?
|
||||
!group_by_column.nil?
|
||||
!group_by.blank?
|
||||
end
|
||||
|
||||
def group_by_column
|
||||
groupable_columns.detect {|c| c.groupable && c.name.to_s == group_by}
|
||||
groupable_columns.detect {|c| c.name.to_s == group_by}
|
||||
end
|
||||
|
||||
def group_by_statement
|
||||
group_by_column.try(:groupable)
|
||||
group_by_column.groupable
|
||||
end
|
||||
|
||||
def project_statement
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
<hr />
|
||||
|
||||
<div class="contextual">
|
||||
<%= link_to_remote_if_authorized(l(:button_quote), { :url => {:controller => 'journals', :action => 'new', :id => @issue} }, :class => 'icon icon-comment') unless @issue.description.blank? %>
|
||||
<%= link_to_remote_if_authorized(l(:button_quote), { :url => {:action => 'reply', :id => @issue} }, :class => 'icon icon-comment') unless @issue.description.blank? %>
|
||||
</div>
|
||||
|
||||
<p><strong><%=l(:field_description)%></strong></p>
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
<!-- page specific tags -->
|
||||
<%= yield :header_tags -%>
|
||||
</head>
|
||||
<body class="<%=h body_css_classes %>">
|
||||
<body class="<%= body_css_classes %>">
|
||||
<div id="wrapper">
|
||||
<div id="wrapper2">
|
||||
<div id="top-menu">
|
||||
|
||||
@@ -106,17 +106,5 @@ module Rails
|
||||
end
|
||||
end
|
||||
|
||||
# TODO: Workaround for #7013 to be removed for 1.2.0
|
||||
# Loads i18n 0.4.2 before Rails loads any more recent gem
|
||||
# 0.5.0 is not compatible with the old interpolation syntax
|
||||
# Plugins will have to migrate to the new syntax for 1.2.0
|
||||
require 'rubygems'
|
||||
begin
|
||||
gem 'i18n', '0.4.2'
|
||||
rescue Gem::LoadError => load_error
|
||||
$stderr.puts %(Missing the i18n 0.4.2 gem. Please `gem install -v=0.4.2 i18n`)
|
||||
exit 1
|
||||
end
|
||||
|
||||
# All that for this:
|
||||
Rails.boot!
|
||||
|
||||
@@ -86,7 +86,7 @@ module I18n
|
||||
module Base
|
||||
def warn_syntax_deprecation!(*args)
|
||||
return if @skip_syntax_deprecation
|
||||
warn "The {{key}} interpolation syntax in I18n messages is deprecated and will be removed in Redmine 1.2. Please use %{key} instead, see http://www.redmine.org/issues/7013 for more information."
|
||||
warn "The {{key}} interpolation syntax in I18n messages is deprecated. Please use %{key} instead.\nDowngrade your i18n gem to 0.3.7 (everything above must be deinstalled) to remove this warning, see http://www.redmine.org/issues/5608 for more information."
|
||||
@skip_syntax_deprecation = true
|
||||
end
|
||||
end
|
||||
|
||||
@@ -221,7 +221,6 @@ bg:
|
||||
field_attr_lastname: Атрибут Фамилия (Lastname)
|
||||
field_attr_mail: Атрибут Email
|
||||
field_onthefly: Динамично създаване на потребител
|
||||
field_start_date: Начална дата
|
||||
field_done_ratio: % Прогрес
|
||||
field_auth_source: Начин на оторизация
|
||||
field_hide_mail: Скрий e-mail адреса ми
|
||||
@@ -809,12 +808,12 @@ bg:
|
||||
text_wiki_page_destroy_children: Изтриване на страниците деца и всички техни descendants
|
||||
setting_password_min_length: Минимална дължина на парола
|
||||
field_group_by: Групиране на резултатите по
|
||||
mail_subject_wiki_content_updated: "Wiki страницата '{{page}}' не беше обновена"
|
||||
mail_subject_wiki_content_updated: "Wiki страницата '{{id}}' не беше обновена"
|
||||
label_wiki_content_added: Wiki страница беше добавена
|
||||
mail_subject_wiki_content_added: "Wiki страницата '{{page}}' беше добавена"
|
||||
mail_body_wiki_content_added: Wiki страницата '{{page}}' беше добавена от {{author}}.
|
||||
mail_subject_wiki_content_added: "Wiki страницата '{{id}}' беше добавена"
|
||||
mail_body_wiki_content_added: Wiki страницата '{{id}}' беше добавена от {{author}}.
|
||||
label_wiki_content_updated: Wiki страница беше обновена
|
||||
mail_body_wiki_content_updated: Wiki страницата '{{page}}' беше обновена от {{author}}.
|
||||
mail_body_wiki_content_updated: Wiki страницата '{{id}}' беше обновена от {{author}}.
|
||||
permission_add_project: Създаване на проект
|
||||
setting_new_project_user_role_id: Роля, давана на потребител, създаващ проекти, който не е администратор
|
||||
label_view_all_revisions: Разглеждане на всички ревизии
|
||||
@@ -907,15 +906,19 @@ bg:
|
||||
notice_not_authorized_archived_project: Проектът, който се опитвате да видите е архивиран.
|
||||
text_tip_issue_end_day: задача, завършваща този ден
|
||||
field_text: Текстово поле
|
||||
label_user_mail_option_only_owner: Само за неща, на които аз съм собственик
|
||||
field_member_of_group: Член на група
|
||||
project_module_gantt: Мрежов график
|
||||
text_are_you_sure_with_children: Изтриване на задачата и нейните подзадачи?
|
||||
text_tip_issue_begin_end_day: задача, започваща и завършваща този ден
|
||||
setting_default_notification_option: Подразбиращ се начин за известяване
|
||||
project_module_calendar: Календар
|
||||
label_user_mail_option_only_my_events: Само за неща, в които съм включен/а
|
||||
text_tip_issue_begin_day: задача, започваща този ден
|
||||
label_user_mail_option_only_assigned: Само за неща, назначени на мен
|
||||
button_edit_associated_wikipage: "Редактиране на асоциираната Wiki страница: {{page_title}}"
|
||||
field_assigned_to_role: Assignee's role
|
||||
field_start_date: Начална дата
|
||||
label_principal_search: "Търсене на потребител или група:"
|
||||
label_user_search: "Търсене на потребител:"
|
||||
field_visible: Видим
|
||||
|
||||
@@ -252,7 +252,6 @@ bs:
|
||||
field_attr_lastname: Atribut za prezime
|
||||
field_attr_mail: Atribut za email
|
||||
field_onthefly: 'Kreiranje korisnika "On-the-fly"'
|
||||
field_start_date: Početak
|
||||
field_done_ratio: % Realizovano
|
||||
field_auth_source: Mod za authentifikaciju
|
||||
field_hide_mail: Sakrij moju email adresu
|
||||
@@ -932,5 +931,7 @@ bs:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -264,7 +264,6 @@ ca:
|
||||
field_attr_lastname: Atribut del cognom
|
||||
field_attr_mail: Atribut del correu electrònic
|
||||
field_onthefly: "Creació de l'usuari «al vol»"
|
||||
field_start_date: Inici
|
||||
field_done_ratio: % realitzat
|
||||
field_auth_source: "Mode d'autenticació"
|
||||
field_hide_mail: "Oculta l'adreça de correu electrònic"
|
||||
@@ -920,5 +919,7 @@ ca:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -237,7 +237,6 @@ cs:
|
||||
field_attr_lastname: Příjemní (atribut)
|
||||
field_attr_mail: Email (atribut)
|
||||
field_onthefly: Automatické vytváření uživatelů
|
||||
field_start_date: Začátek
|
||||
field_done_ratio: % Hotovo
|
||||
field_auth_source: Autentifikační mód
|
||||
field_hide_mail: Nezobrazovat můj email
|
||||
@@ -918,5 +917,6 @@ cs:
|
||||
button_edit_associated_wikipage: "Upravit přiřazenou Wiki stránku: {{page_title}}"
|
||||
text_are_you_sure_with_children: Smazat úkol včetně všech podúkolů?
|
||||
field_text: Textové pole
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -250,7 +250,6 @@ da:
|
||||
field_attr_lastname: Efternavn attribut
|
||||
field_attr_mail: Email attribut
|
||||
field_onthefly: løbende brugeroprettelse
|
||||
field_start_date: Start date
|
||||
field_done_ratio: % Færdig
|
||||
field_auth_source: Sikkerhedsmetode
|
||||
field_hide_mail: Skjul min email
|
||||
@@ -934,5 +933,7 @@ da:
|
||||
button_edit_associated_wikipage: "Redigér tilknyttet Wiki side: {{page_title}}"
|
||||
text_are_you_sure_with_children: Slet sag og alle undersager?
|
||||
field_text: Tekstfelt
|
||||
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -280,7 +280,6 @@ de:
|
||||
field_attr_lastname: Name-Attribut
|
||||
field_attr_mail: E-Mail-Attribut
|
||||
field_onthefly: On-the-fly-Benutzererstellung
|
||||
field_start_date: Beginn
|
||||
field_done_ratio: % erledigt
|
||||
field_auth_source: Authentifizierungs-Modus
|
||||
field_hide_mail: E-Mail-Adresse nicht anzeigen
|
||||
@@ -940,6 +939,9 @@ de:
|
||||
field_text: Text field
|
||||
setting_default_notification_option: Default notification option
|
||||
notice_not_authorized_archived_project: The project you're trying to access has been archived.
|
||||
label_user_mail_option_none: "Only for things I watch or I'm involved in"
|
||||
field_member_of_group: Assignee's group
|
||||
field_assigned_to_role: Assignee's role
|
||||
|
||||
field_start_date: Start date
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
|
||||
@@ -247,7 +247,6 @@ el:
|
||||
field_attr_lastname: Ιδιότητα επωνύμου
|
||||
field_attr_mail: Ιδιότητα email
|
||||
field_onthefly: Άμεση δημιουργία χρήστη
|
||||
field_start_date: Εκκίνηση
|
||||
field_done_ratio: % επιτεύχθη
|
||||
field_auth_source: Τρόπος πιστοποίησης
|
||||
field_hide_mail: Απόκρυψη διεύθυνσης email
|
||||
@@ -918,5 +917,7 @@ el:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -313,7 +313,6 @@ es:
|
||||
field_role: Perfil
|
||||
field_searchable: Incluir en las búsquedas
|
||||
field_spent_on: Fecha
|
||||
field_start_date: Fecha de inicio
|
||||
field_start_page: Página principal
|
||||
field_status: Estado
|
||||
field_subject: Tema
|
||||
@@ -637,7 +636,6 @@ es:
|
||||
label_user_mail_no_self_notified: "No quiero ser avisado de cambios hechos por mí"
|
||||
label_user_mail_option_all: "Para cualquier evento en todos mis proyectos"
|
||||
label_user_mail_option_selected: "Para cualquier evento de los proyectos seleccionados..."
|
||||
label_user_mail_option_none: "Sólo para elementos monitorizados o relacionados conmigo"
|
||||
label_user_new: Nuevo usuario
|
||||
label_user_plural: Usuarios
|
||||
label_version: Versión
|
||||
@@ -855,12 +853,12 @@ es:
|
||||
text_wiki_page_destroy_children: Eliminar páginas hijas y todos sus descendientes
|
||||
setting_password_min_length: Longitud mínima de la contraseña
|
||||
field_group_by: Agrupar resultados por
|
||||
mail_subject_wiki_content_updated: "La página wiki '{{page}}' ha sido actualizada"
|
||||
mail_subject_wiki_content_updated: "La página wiki '{{id}}' ha sido actualizada"
|
||||
label_wiki_content_added: Página wiki añadida
|
||||
mail_subject_wiki_content_added: "Se ha añadido la página wiki '{{page}}'."
|
||||
mail_body_wiki_content_added: "{{author}} ha añadido la página wiki '{{page}}'."
|
||||
mail_subject_wiki_content_added: "Se ha añadido la página wiki '{{id}}'."
|
||||
mail_body_wiki_content_added: "{{author}} ha añadido la página wiki '{{id}}'."
|
||||
label_wiki_content_updated: Página wiki actualizada
|
||||
mail_body_wiki_content_updated: La página wiki '{{page}}' ha sido actualizada por {{author}}.
|
||||
mail_body_wiki_content_updated: La página wiki '{{id}}' ha sido actualizada por {{author}}.
|
||||
permission_add_project: Crear proyecto
|
||||
setting_new_project_user_role_id: Permiso asignado a un usuario no-administrador para crear proyectos
|
||||
label_view_all_revisions: Ver todas las revisiones
|
||||
@@ -956,10 +954,15 @@ es:
|
||||
button_edit_associated_wikipage: "Editar paginas Wiki asociadas: {{page_title}}"
|
||||
text_are_you_sure_with_children: ¿Borrar peticiones y todas sus peticiones hijas?
|
||||
field_text: Campo de texto
|
||||
label_user_mail_option_only_owner: Solo para objetos que soy propietario
|
||||
setting_default_notification_option: Opcion de notificacion por defecto
|
||||
label_user_mail_option_only_my_events: Solo para objetos que soy seguidor o estoy involucrado
|
||||
label_user_mail_option_only_assigned: Solo para objetos que estoy asignado
|
||||
label_user_mail_option_none: Sin eventos
|
||||
field_member_of_group: Asignado al grupo
|
||||
field_assigned_to_role: Asignado al perfil
|
||||
notice_not_authorized_archived_project: El proyecto al que intenta acceder ha sido archivado.
|
||||
field_start_date: Fecha de inicio
|
||||
label_principal_search: "Buscar por usuario o grupo:"
|
||||
label_user_search: "Buscar por usuario:"
|
||||
field_visible: Visible
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -262,7 +262,6 @@ fi:
|
||||
field_attr_lastname: Sukunimenmääre
|
||||
field_attr_mail: Sähköpostinmääre
|
||||
field_onthefly: Automaattinen käyttäjien luonti
|
||||
field_start_date: Alku
|
||||
field_done_ratio: % Tehty
|
||||
field_auth_source: Varmennusmuoto
|
||||
field_hide_mail: Piiloita sähköpostiosoitteeni
|
||||
@@ -943,5 +942,6 @@ fi:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -271,7 +271,6 @@ fr:
|
||||
field_attr_lastname: Attribut Nom
|
||||
field_attr_mail: Attribut Email
|
||||
field_onthefly: Création des utilisateurs à la volée
|
||||
field_start_date: Début
|
||||
field_done_ratio: % réalisé
|
||||
field_auth_source: Mode d'authentification
|
||||
field_hide_mail: Cacher mon adresse mail
|
||||
@@ -938,6 +937,12 @@ fr:
|
||||
button_edit_associated_wikipage: "Modifier la page wiki associée: {{page_title}}"
|
||||
text_are_you_sure_with_children: Supprimer la demande et toutes ses sous-demandes ?
|
||||
field_text: Champ texte
|
||||
label_user_mail_option_only_owner: Seulement pour ce que j'ai créé
|
||||
setting_default_notification_option: Option de notification par défaut
|
||||
label_user_mail_option_only_my_events: Seulement pour ce que je surveille
|
||||
label_user_mail_option_only_assigned: Seulement pour ce qui m'est assigné
|
||||
label_user_mail_option_none: Aucune notification
|
||||
field_member_of_group: Groupe de l'assigné
|
||||
field_assigned_to_role: Rôle de l'assigné
|
||||
|
||||
field_start_date: Start date
|
||||
|
||||
@@ -290,7 +290,6 @@ gl:
|
||||
field_role: Perfil
|
||||
field_searchable: Incluír nas búsquedas
|
||||
field_spent_on: Data
|
||||
field_start_date: Data de inicio
|
||||
field_start_page: Páxina principal
|
||||
field_status: Estado
|
||||
field_subject: Tema
|
||||
@@ -934,5 +933,7 @@ gl:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -266,7 +266,6 @@ he:
|
||||
field_attr_lastname: תכונת שם משפחה
|
||||
field_attr_mail: תכונת דוא"ל
|
||||
field_onthefly: יצירת משתמשים זריזה
|
||||
field_start_date: תאריך התחלה
|
||||
field_done_ratio: % גמור
|
||||
field_auth_source: מקור הזדהות
|
||||
field_hide_mail: החבא את כתובת הדוא"ל שלי
|
||||
@@ -732,6 +731,9 @@ he:
|
||||
label_user_mail_option_all: "לכל אירוע בכל הפרויקטים שלי"
|
||||
label_user_mail_option_selected: "לכל אירוע בפרויקטים שבחרתי בלבד..."
|
||||
label_user_mail_option_none: "רק לנושאים שאני צופה או קשור אליהם"
|
||||
label_user_mail_option_only_my_events: עבור דברים שאני צופה או מעורב בהם בלבד
|
||||
label_user_mail_option_only_assigned: עבור דברים שאני אחראי עליהם בלבד
|
||||
label_user_mail_option_only_owner: עבור דברים שאני הבעלים שלהם בלבד
|
||||
label_user_mail_no_self_notified: "אני לא רוצה שיודיעו לי על שינויים שאני מבצע"
|
||||
label_registration_activation_by_email: הפעל חשבון באמצעות דוא"ל
|
||||
label_registration_manual_activation: הפעלת חשבון ידנית
|
||||
@@ -925,7 +927,9 @@ he:
|
||||
enumeration_doc_categories: קטגוריות מסמכים
|
||||
enumeration_activities: פעילויות (מעקב אחר זמנים)
|
||||
enumeration_system_activity: פעילות מערכת
|
||||
label_user_mail_option_none: No events
|
||||
field_member_of_group: Assignee's group
|
||||
field_assigned_to_role: Assignee's role
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -253,7 +253,6 @@ hr:
|
||||
field_attr_lastname: Atribut prezimena
|
||||
field_attr_mail: Atribut e-pošte
|
||||
field_onthefly: "Izrada korisnika \"u hodu\""
|
||||
field_start_date: Pocetak
|
||||
field_done_ratio: % Učinjeno
|
||||
field_auth_source: Vrsta prijavljivanja
|
||||
field_hide_mail: Sakrij moju adresu e-pošte
|
||||
@@ -925,5 +924,6 @@ hr:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -260,7 +260,6 @@
|
||||
field_attr_lastname: Vezetéknév
|
||||
field_attr_mail: E-mail
|
||||
field_onthefly: On-the-fly felhasználó létrehozás
|
||||
field_start_date: Kezdés dátuma
|
||||
field_done_ratio: Elkészült (%)
|
||||
field_auth_source: Azonosítási mód
|
||||
field_hide_mail: Rejtse el az e-mail címem
|
||||
@@ -941,5 +940,6 @@
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -251,7 +251,6 @@ id:
|
||||
field_attr_lastname: Atribut nama belakang
|
||||
field_attr_mail: Atribut email
|
||||
field_onthefly: Pembuatan pengguna seketika
|
||||
field_start_date: Mulai
|
||||
field_done_ratio: % Selesai
|
||||
field_auth_source: Mode otentikasi
|
||||
field_hide_mail: Sembunyikan email saya
|
||||
@@ -926,5 +925,6 @@ id:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -232,7 +232,6 @@ it:
|
||||
field_attr_lastname: Attributo cognome
|
||||
field_attr_mail: Attributo email
|
||||
field_onthefly: Creazione utente "al volo"
|
||||
field_start_date: Inizio
|
||||
field_done_ratio: % completato
|
||||
field_auth_source: Modalità di autenticazione
|
||||
field_hide_mail: Nascondi il mio indirizzo email
|
||||
@@ -922,5 +921,6 @@ it:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -757,6 +757,9 @@ ja:
|
||||
label_user_mail_option_all: "参加しているプロジェクトの全ての通知"
|
||||
label_user_mail_option_selected: "選択したプロジェクトの全ての通知..."
|
||||
label_user_mail_option_none: "通知しない"
|
||||
label_user_mail_option_only_my_events: "ウォッチまたは関係している事柄のみ"
|
||||
label_user_mail_option_only_assigned: "自分が担当している事柄のみ"
|
||||
label_user_mail_option_only_owner: "自分が作成した事柄のみ"
|
||||
label_user_mail_no_self_notified: 自分自身による変更の通知は不要
|
||||
label_registration_activation_by_email: メールでアカウントを有効化
|
||||
label_registration_manual_activation: 手動でアカウントを有効化
|
||||
@@ -949,5 +952,6 @@ ja:
|
||||
enumeration_doc_categories: 文書カテゴリ
|
||||
enumeration_activities: 作業分類 (時間トラッキング)
|
||||
enumeration_system_activity: システム作業分類
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -299,7 +299,6 @@ ko:
|
||||
field_attr_lastname: 성 속성
|
||||
field_attr_mail: 메일 속성
|
||||
field_onthefly: 동적 사용자 생성
|
||||
field_start_date: 시작시간
|
||||
field_done_ratio: 진척도
|
||||
field_auth_source: 인증 공급자
|
||||
field_hide_mail: 메일 주소 숨기기
|
||||
@@ -974,5 +973,6 @@ ko:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -310,7 +310,6 @@ lt:
|
||||
field_attr_lastname: Pavardės priskiria
|
||||
field_attr_mail: Elektroninio pašto požymis
|
||||
field_onthefly: Automatinis vartotojų registravimas
|
||||
field_start_date: Pradėti
|
||||
field_done_ratio: % atlikta
|
||||
field_auth_source: Autentiškumo nustatymo būdas
|
||||
field_hide_mail: Paslėpkite mano elektroninio pašto adresą
|
||||
@@ -982,5 +981,6 @@ lt:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -256,7 +256,6 @@ nl:
|
||||
field_role: Rol
|
||||
field_searchable: Doorzoekbaar
|
||||
field_spent_on: Datum
|
||||
field_start_date: Startdatum
|
||||
field_start_page: Startpagina
|
||||
field_status: Status
|
||||
field_subject: Onderwerp
|
||||
@@ -900,5 +899,6 @@ nl:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -231,7 +231,6 @@
|
||||
field_attr_lastname: Etternavnsattributt
|
||||
field_attr_mail: E-post-attributt
|
||||
field_onthefly: On-the-fly brukeropprettelse
|
||||
field_start_date: Start
|
||||
field_done_ratio: % Ferdig
|
||||
field_auth_source: Autentifikasjonsmodus
|
||||
field_hide_mail: Skjul min e-post-adresse
|
||||
@@ -909,5 +908,6 @@
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -277,7 +277,6 @@ pl:
|
||||
field_role: Rola
|
||||
field_searchable: Przeszukiwalne
|
||||
field_spent_on: Data
|
||||
field_start_date: Start
|
||||
field_start_page: Strona startowa
|
||||
field_status: Status
|
||||
field_subject: Temat
|
||||
@@ -939,5 +938,6 @@ pl:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -264,7 +264,6 @@ pt-BR:
|
||||
field_attr_lastname: Atributo para sobrenome
|
||||
field_attr_mail: Atributo para e-mail
|
||||
field_onthefly: Criar usuários dinamicamente ("on-the-fly")
|
||||
field_start_date: Início
|
||||
field_done_ratio: % Terminado
|
||||
field_auth_source: Modo de autenticação
|
||||
field_hide_mail: Ocultar meu e-mail
|
||||
@@ -942,6 +941,10 @@ pt-BR:
|
||||
button_edit_associated_wikipage: "Editar página wiki relacionada: {{page_title}}"
|
||||
text_are_you_sure_with_children: Excluir a tarefa e suas subtarefas?
|
||||
field_text: Campo de texto
|
||||
label_user_mail_option_only_owner: Somente para as coisas que eu criei
|
||||
setting_default_notification_option: Opção padrão de notificação
|
||||
label_user_mail_option_only_my_events: Somente para as coisas que eu esteja observando ou esteja envolvido
|
||||
label_user_mail_option_only_assigned: Somente para as coisas que estejam atribuídas a mim
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -249,7 +249,6 @@ pt:
|
||||
field_attr_lastname: Atributo último nome
|
||||
field_attr_mail: Atributo e-mail
|
||||
field_onthefly: Criação de utilizadores na hora
|
||||
field_start_date: Início
|
||||
field_done_ratio: % Completo
|
||||
field_auth_source: Modo de autenticação
|
||||
field_hide_mail: Esconder endereço de e-mail
|
||||
@@ -926,5 +925,6 @@ pt:
|
||||
button_edit_associated_wikipage: "Editar página Wiki associada: {{page_title}}"
|
||||
text_are_you_sure_with_children: Apagar tarefa e todas as sub-tarefas?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -232,7 +232,6 @@ ro:
|
||||
field_attr_lastname: Atribut nume
|
||||
field_attr_mail: Atribut email
|
||||
field_onthefly: Creare utilizator pe loc
|
||||
field_start_date: Data începerii
|
||||
field_done_ratio: Realizat (%)
|
||||
field_auth_source: Mod autentificare
|
||||
field_hide_mail: Nu se afișează adresa de email
|
||||
@@ -911,5 +910,6 @@ ro:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -363,7 +363,6 @@ ru:
|
||||
field_role: Роль
|
||||
field_searchable: Доступно для поиска
|
||||
field_spent_on: Дата
|
||||
field_start_date: Начата
|
||||
field_start_page: Стартовая страница
|
||||
field_status: Статус
|
||||
field_subject: Тема
|
||||
@@ -382,9 +381,9 @@ ru:
|
||||
field_version: Версия
|
||||
field_watcher: Наблюдатель
|
||||
|
||||
general_csv_decimal_separator: ','
|
||||
general_csv_decimal_separator: '.'
|
||||
general_csv_encoding: UTF-8
|
||||
general_csv_separator: ';'
|
||||
general_csv_separator: ','
|
||||
general_first_day_of_week: '1'
|
||||
general_lang_name: 'Russian (Русский)'
|
||||
general_pdf_encoding: UTF-8
|
||||
@@ -703,6 +702,9 @@ ru:
|
||||
label_user_mail_option_all: "О всех событиях во всех моих проектах"
|
||||
label_user_mail_option_none: "Только о тех событиях, которые я отслеживаю или в которых я участвую"
|
||||
label_user_mail_option_selected: "О всех событиях только в выбранном проекте..."
|
||||
label_user_mail_option_only_owner: Только для объектов, для которых я являюсь владельцем
|
||||
label_user_mail_option_only_my_events: Только для объектов, которые я отслеживаю или в которых участвую
|
||||
label_user_mail_option_only_assigned: Только для объектов, которые назначены мне
|
||||
label_user_new: Новый пользователь
|
||||
label_user_plural: Пользователи
|
||||
label_version: Версия
|
||||
@@ -1033,9 +1035,11 @@ ru:
|
||||
text_zoom_in: Приблизить
|
||||
notice_unable_delete_time_entry: Невозможно удалить запись журнала.
|
||||
label_overall_spent_time: Всего затрачено времени
|
||||
label_user_mail_option_none: Нет событий
|
||||
field_member_of_group: Группа назначенного
|
||||
field_assigned_to_role: Роль назначенного
|
||||
notice_not_authorized_archived_project: Запрашиваемый проект был архивирован.
|
||||
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
field_start_date: Start Date
|
||||
|
||||
@@ -231,7 +231,6 @@ sk:
|
||||
field_attr_lastname: Priezvisko (atribut)
|
||||
field_attr_mail: Email (atribut)
|
||||
field_onthefly: Automatické vytváranie užívateľov
|
||||
field_start_date: Začiatok
|
||||
field_done_ratio: % hotovo
|
||||
field_auth_source: Autentifikačný mód
|
||||
field_hide_mail: Nezobrazovať môj email
|
||||
@@ -913,5 +912,6 @@ sk:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -236,7 +236,6 @@ sl:
|
||||
field_attr_lastname: Oznaka za priimek
|
||||
field_attr_mail: Oznaka za e-naslov
|
||||
field_onthefly: Sprotna izdelava uporabnikov
|
||||
field_start_date: Začetek
|
||||
field_done_ratio: % Narejeno
|
||||
field_auth_source: Način overovljanja
|
||||
field_hide_mail: Skrij moj e-naslov
|
||||
@@ -914,5 +913,6 @@ sl:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -261,7 +261,6 @@ sr-YU:
|
||||
field_attr_lastname: Atribut prezimena
|
||||
field_attr_mail: Atribut e-adrese
|
||||
field_onthefly: Kreiranje korisnika u toku rada
|
||||
field_start_date: Početak
|
||||
field_done_ratio: % urađeno
|
||||
field_auth_source: Režim potvrde identiteta
|
||||
field_hide_mail: Sakrij moju e-adresu
|
||||
@@ -918,5 +917,6 @@ sr-YU:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -261,7 +261,6 @@ sr:
|
||||
field_attr_lastname: Атрибут презимена
|
||||
field_attr_mail: Атрибут е-адресе
|
||||
field_onthefly: Креирање корисника у току рада
|
||||
field_start_date: Почетак
|
||||
field_done_ratio: % урађено
|
||||
field_auth_source: Режим потврде идентитета
|
||||
field_hide_mail: Сакриј моју е-адресу
|
||||
@@ -919,5 +918,6 @@ sr:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -972,5 +972,6 @@ sv:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -233,7 +233,6 @@ th:
|
||||
field_attr_lastname: นามสกุล attribute
|
||||
field_attr_mail: อีเมล์ attribute
|
||||
field_onthefly: สร้างผู้ใช้ทันที
|
||||
field_start_date: เริ่ม
|
||||
field_done_ratio: % สำเร็จ
|
||||
field_auth_source: วิธีการยืนยันตัวตน
|
||||
field_hide_mail: ซ่อนอีเมล์ของฉัน
|
||||
@@ -915,5 +914,6 @@ th:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -260,7 +260,6 @@ tr:
|
||||
field_attr_lastname: Soyad Niteliği
|
||||
field_attr_mail: E-Posta Niteliği
|
||||
field_onthefly: Anında kullanıcı oluşturma
|
||||
field_start_date: Başlangıç
|
||||
field_done_ratio: % tamamlandı
|
||||
field_auth_source: Kimlik Denetim Modu
|
||||
field_hide_mail: E-posta adresimi gizle
|
||||
@@ -941,5 +940,6 @@ tr:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -227,7 +227,6 @@ uk:
|
||||
field_attr_lastname: Атрибут Прізвище
|
||||
field_attr_mail: Атрибут Email
|
||||
field_onthefly: Створення користувача на льоту
|
||||
field_start_date: Початок
|
||||
field_done_ratio: % зроблено
|
||||
field_auth_source: Режим аутентифікації
|
||||
field_hide_mail: Приховувати мій email
|
||||
@@ -914,5 +913,6 @@ uk:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -294,7 +294,6 @@ vi:
|
||||
field_attr_lastname: Lastname attribute
|
||||
field_attr_mail: Email attribute
|
||||
field_onthefly: On-the-fly user creation
|
||||
field_start_date: Bắt đầu
|
||||
field_done_ratio: Tiến độ
|
||||
field_auth_source: Authentication mode
|
||||
field_hide_mail: Không làm lộ email của bạn
|
||||
@@ -973,5 +972,6 @@ vi:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -278,10 +278,10 @@
|
||||
mail_body_account_activation_request: "有位新用戶 ({{value}}) 已經完成註冊,正等候您的審核:"
|
||||
mail_subject_reminder: "您有 {{count}} 個項目即將到期 ({{days}})"
|
||||
mail_body_reminder: "{{count}} 個指派給您的項目,將於 {{days}} 天之內到期:"
|
||||
mail_subject_wiki_content_added: "'{{page}}' wiki 頁面已被新增"
|
||||
mail_body_wiki_content_added: "The '{{page}}' wiki 頁面已被 {{author}} 新增。"
|
||||
mail_subject_wiki_content_updated: "'{{page}}' wiki 頁面已被更新"
|
||||
mail_body_wiki_content_updated: "The '{{page}}' wiki 頁面已被 {{author}} 更新。"
|
||||
mail_subject_wiki_content_added: "'{{id}}' wiki 頁面已被新增"
|
||||
mail_body_wiki_content_added: "The '{{id}}' wiki 頁面已被 {{author}} 新增。"
|
||||
mail_subject_wiki_content_updated: "'{{id}}' wiki 頁面已被更新"
|
||||
mail_body_wiki_content_updated: "The '{{id}}' wiki 頁面已被 {{author}} 更新。"
|
||||
|
||||
gui_validation_error: 1 個錯誤
|
||||
gui_validation_error_plural: "{{count}} 個錯誤"
|
||||
@@ -816,6 +816,9 @@
|
||||
label_user_mail_option_all: "提醒與我的專案有關的全部事件"
|
||||
label_user_mail_option_selected: "只提醒我所選擇專案中的事件..."
|
||||
label_user_mail_option_none: "取消提醒"
|
||||
label_user_mail_option_only_my_events: "只提醒我觀察中或參與中的事物"
|
||||
label_user_mail_option_only_assigned: "只提醒我被指派的事物"
|
||||
label_user_mail_option_only_owner: "只提醒我作為擁有者的事物"
|
||||
label_user_mail_no_self_notified: "不提醒我自己所做的變更"
|
||||
label_registration_activation_by_email: 透過電子郵件啟用帳戶
|
||||
label_registration_manual_activation: 手動啟用帳戶
|
||||
|
||||
@@ -272,7 +272,6 @@ zh:
|
||||
field_attr_lastname: 姓氏属性
|
||||
field_attr_mail: 邮件属性
|
||||
field_onthefly: 即时用户生成
|
||||
field_start_date: 开始
|
||||
field_done_ratio: 完成度
|
||||
field_auth_source: 认证模式
|
||||
field_hide_mail: 隐藏我的邮件地址
|
||||
@@ -936,5 +935,6 @@ zh:
|
||||
button_edit_associated_wikipage: "Edit associated Wiki page: {{page_title}}"
|
||||
text_are_you_sure_with_children: Delete issue and all child issues?
|
||||
field_text: Text field
|
||||
field_start_date: Start date
|
||||
label_principal_search: "Search for user or group:"
|
||||
label_user_search: "Search for user:"
|
||||
|
||||
@@ -4,20 +4,6 @@ Redmine - project management software
|
||||
Copyright (C) 2006-2010 Jean-Philippe Lang
|
||||
http://www.redmine.org/
|
||||
|
||||
== 2010-12-23 v1.0.5
|
||||
|
||||
* #6656: Mercurial adapter loses seconds of commit times
|
||||
* #6996: Migration trac(sqlite3) -> redmine(postgresql) doesnt escape ' char
|
||||
* #7013: v-1.0.4 trunk - see {{count}} in page display rather than value
|
||||
* #7016: redundant 'field_start_date' in ja.yml
|
||||
* #7018: 'undefined method `reschedule_after' for nil:NilClass' on new issues
|
||||
* #7024: E-mail notifications about Wiki changes.
|
||||
* #7033: 'class' attribute of <pre> tag shouldn't be truncate
|
||||
* #7035: CSV value separator in russian
|
||||
* #7122: Issue-description Quote-button missing
|
||||
* #7144: custom queries making use of deleted custom fields cause a 500 error
|
||||
* #7162: Multiply defined label in french translation
|
||||
|
||||
== 2010-11-28 v1.0.4
|
||||
|
||||
* #5324: Git not working if color.ui is enabled
|
||||
|
||||
@@ -9,16 +9,14 @@ http://www.redmine.org/
|
||||
|
||||
* Ruby 1.8.6 or 1.8.7
|
||||
|
||||
* RubyGems 1.3.1
|
||||
|
||||
* Ruby on Rails 2.3.5 (official downloadable Redmine releases are packaged with
|
||||
the appropriate Rails version)
|
||||
|
||||
* Rack 1.0.1 gem
|
||||
* Rack 1.0.1
|
||||
|
||||
* Rake 0.8.3 gem
|
||||
* RubyGems 1.3.1
|
||||
|
||||
* I18n 0.4.2 gem
|
||||
* Rake 0.8.3
|
||||
|
||||
* A database:
|
||||
* MySQL (tested with MySQL 5)
|
||||
|
||||
@@ -1078,7 +1078,7 @@ class RedCloth3 < String
|
||||
line = "<redpre##{ @pre_list.length }>"
|
||||
first.match(/<#{ OFFTAGS }([^>]*)>/)
|
||||
tag = $1
|
||||
$2.to_s.match(/(class\=("[^"]+"|'[^']+'))/i)
|
||||
$2.to_s.match(/(class\=\S+)/i)
|
||||
tag << " #{$1}" if $1
|
||||
@pre_list << "<#{ tag }>#{ aftertag }"
|
||||
end
|
||||
|
||||
@@ -37,7 +37,7 @@ module Redmine
|
||||
|
||||
def format_date(date)
|
||||
return nil unless date
|
||||
Setting.date_format.blank? ? ::I18n.l(date.to_date) : date.strftime(Setting.date_format)
|
||||
Setting.date_format.blank? ? ::I18n.l(date.to_date, :count => date.strftime('%d')) : date.strftime(Setting.date_format)
|
||||
end
|
||||
|
||||
def format_time(time, include_date = true)
|
||||
@@ -45,7 +45,7 @@ module Redmine
|
||||
time = time.to_time if time.is_a?(String)
|
||||
zone = User.current.time_zone
|
||||
local = zone ? time.in_time_zone(zone) : (time.utc? ? time.localtime : time)
|
||||
Setting.time_format.blank? ? ::I18n.l(local, :format => (include_date ? :default : :time)) :
|
||||
Setting.time_format.blank? ? ::I18n.l(local, :count => local.strftime('%d'), :format => (include_date ? :default : :time)) :
|
||||
((include_date ? "#{format_date(time)} " : "") + "#{local.strftime(Setting.time_format)}")
|
||||
end
|
||||
|
||||
|
||||
@@ -74,10 +74,10 @@ module Redmine
|
||||
|
||||
def revisions(path=nil, identifier_from=nil, identifier_to=nil, options={})
|
||||
path ||= ''
|
||||
identifier_from = (identifier_from and identifier_from.to_i > 0) ? identifier_from.to_i : 'last:1'
|
||||
identifier_to = (identifier_to and identifier_to.to_i > 0) ? identifier_to.to_i : 1
|
||||
identifier_from = 'last:1' unless identifier_from and identifier_from.to_i > 0
|
||||
identifier_to = 1 unless identifier_to and identifier_to.to_i > 0
|
||||
revisions = Revisions.new
|
||||
cmd = "#{BZR_BIN} log -v --show-ids -r#{identifier_to}..#{identifier_from} #{target(path)}"
|
||||
cmd = "#{BZR_BIN} log -v --show-ids -r#{identifier_to.to_i}..#{identifier_from} #{target(path)}"
|
||||
shellout(cmd) do |io|
|
||||
revision = nil
|
||||
parsing = nil
|
||||
@@ -140,9 +140,6 @@ module Redmine
|
||||
else
|
||||
identifier_to = identifier_from.to_i - 1
|
||||
end
|
||||
if identifier_from
|
||||
identifier_from = identifier_from.to_i
|
||||
end
|
||||
cmd = "#{BZR_BIN} diff -r#{identifier_to}..#{identifier_from} #{target(path)}"
|
||||
diff = []
|
||||
shellout(cmd) do |io|
|
||||
|
||||
@@ -63,7 +63,7 @@ module Redmine
|
||||
logger.debug "<cvs> entries '#{path}' with identifier '#{identifier}'"
|
||||
path_with_project="#{url}#{with_leading_slash(path)}"
|
||||
entries = Entries.new
|
||||
cmd = "#{CVS_BIN} -d #{shell_quote root_url} rls -e"
|
||||
cmd = "#{CVS_BIN} -d #{root_url} rls -e"
|
||||
cmd << " -D \"#{time_to_cvstime(identifier)}\"" if identifier
|
||||
cmd << " #{shell_quote path_with_project}"
|
||||
shellout(cmd) do |io|
|
||||
@@ -108,7 +108,7 @@ module Redmine
|
||||
logger.debug "<cvs> revisions path:'#{path}',identifier_from #{identifier_from}, identifier_to #{identifier_to}"
|
||||
|
||||
path_with_project="#{url}#{with_leading_slash(path)}"
|
||||
cmd = "#{CVS_BIN} -d #{shell_quote root_url} rlog"
|
||||
cmd = "#{CVS_BIN} -d #{root_url} rlog"
|
||||
cmd << " -d\">#{time_to_cvstime(identifier_from)}\"" if identifier_from
|
||||
cmd << " #{shell_quote path_with_project}"
|
||||
shellout(cmd) do |io|
|
||||
@@ -229,7 +229,7 @@ module Redmine
|
||||
def diff(path, identifier_from, identifier_to=nil)
|
||||
logger.debug "<cvs> diff path:'#{path}',identifier_from #{identifier_from}, identifier_to #{identifier_to}"
|
||||
path_with_project="#{url}#{with_leading_slash(path)}"
|
||||
cmd = "#{CVS_BIN} -d #{shell_quote root_url} rdiff -u -r#{identifier_to} -r#{identifier_from} #{shell_quote path_with_project}"
|
||||
cmd = "#{CVS_BIN} -d #{root_url} rdiff -u -r#{identifier_to} -r#{identifier_from} #{shell_quote path_with_project}"
|
||||
diff = []
|
||||
shellout(cmd) do |io|
|
||||
io.each_line do |line|
|
||||
@@ -244,7 +244,7 @@ module Redmine
|
||||
identifier = (identifier) ? identifier : "HEAD"
|
||||
logger.debug "<cvs> cat path:'#{path}',identifier #{identifier}"
|
||||
path_with_project="#{url}#{with_leading_slash(path)}"
|
||||
cmd = "#{CVS_BIN} -d #{shell_quote root_url} co"
|
||||
cmd = "#{CVS_BIN} -d #{root_url} co"
|
||||
cmd << " -D \"#{time_to_cvstime(identifier)}\"" if identifier
|
||||
cmd << " -p #{shell_quote path_with_project}"
|
||||
cat = nil
|
||||
@@ -256,10 +256,10 @@ module Redmine
|
||||
end
|
||||
|
||||
def annotate(path, identifier=nil)
|
||||
identifier = (identifier) ? identifier.to_i : "HEAD"
|
||||
identifier = (identifier) ? identifier : "HEAD"
|
||||
logger.debug "<cvs> annotate path:'#{path}',identifier #{identifier}"
|
||||
path_with_project="#{url}#{with_leading_slash(path)}"
|
||||
cmd = "#{CVS_BIN} -d #{shell_quote root_url} rannotate -r#{identifier} #{shell_quote path_with_project}"
|
||||
cmd = "#{CVS_BIN} -d #{root_url} rannotate -r#{identifier} #{shell_quote path_with_project}"
|
||||
blame = Annotate.new
|
||||
shellout(cmd) do |io|
|
||||
io.each_line do |line|
|
||||
|
||||
@@ -66,7 +66,7 @@ module Redmine
|
||||
path_prefix = (path.blank? ? '' : "#{path}/")
|
||||
path = '.' if path.blank?
|
||||
entries = Entries.new
|
||||
cmd = "#{DARCS_BIN} annotate --repodir #{shell_quote @url} --xml-output"
|
||||
cmd = "#{DARCS_BIN} annotate --repodir #{@url} --xml-output"
|
||||
cmd << " --match #{shell_quote("hash #{identifier}")}" if identifier
|
||||
cmd << " #{shell_quote path}"
|
||||
shellout(cmd) do |io|
|
||||
@@ -90,7 +90,7 @@ module Redmine
|
||||
def revisions(path=nil, identifier_from=nil, identifier_to=nil, options={})
|
||||
path = '.' if path.blank?
|
||||
revisions = Revisions.new
|
||||
cmd = "#{DARCS_BIN} changes --repodir #{shell_quote @url} --xml-output"
|
||||
cmd = "#{DARCS_BIN} changes --repodir #{@url} --xml-output"
|
||||
cmd << " --from-match #{shell_quote("hash #{identifier_from}")}" if identifier_from
|
||||
cmd << " --last #{options[:limit].to_i}" if options[:limit]
|
||||
shellout(cmd) do |io|
|
||||
@@ -116,7 +116,7 @@ module Redmine
|
||||
|
||||
def diff(path, identifier_from, identifier_to=nil)
|
||||
path = '*' if path.blank?
|
||||
cmd = "#{DARCS_BIN} diff --repodir #{shell_quote @url}"
|
||||
cmd = "#{DARCS_BIN} diff --repodir #{@url}"
|
||||
if identifier_to.nil?
|
||||
cmd << " --match #{shell_quote("hash #{identifier_from}")}"
|
||||
else
|
||||
@@ -135,7 +135,7 @@ module Redmine
|
||||
end
|
||||
|
||||
def cat(path, identifier=nil)
|
||||
cmd = "#{DARCS_BIN} show content --repodir #{shell_quote @url}"
|
||||
cmd = "#{DARCS_BIN} show content --repodir #{@url}"
|
||||
cmd << " --match #{shell_quote("hash #{identifier}")}" if identifier
|
||||
cmd << " #{shell_quote path}"
|
||||
cat = nil
|
||||
@@ -170,7 +170,7 @@ module Redmine
|
||||
|
||||
# Retrieve changed paths for a single patch
|
||||
def get_paths_for_patch(hash)
|
||||
cmd = "#{DARCS_BIN} annotate --repodir #{shell_quote @url} --summary --xml-output"
|
||||
cmd = "#{DARCS_BIN} annotate --repodir #{@url} --summary --xml-output"
|
||||
cmd << " --match #{shell_quote("hash #{hash}")} "
|
||||
paths = []
|
||||
shellout(cmd) do |io|
|
||||
|
||||
@@ -117,7 +117,7 @@ module Redmine
|
||||
cmd = "#{GIT_BIN} --git-dir #{target('')} log --no-color --raw --date=iso --pretty=fuller "
|
||||
cmd << " --reverse " if options[:reverse]
|
||||
cmd << " --all " if options[:all]
|
||||
cmd << " -n #{options[:limit].to_i} " if options[:limit]
|
||||
cmd << " -n #{options[:limit]} " if options[:limit]
|
||||
cmd << "#{shell_quote(identifier_from + '..')}" if identifier_from
|
||||
cmd << "#{shell_quote identifier_to}" if identifier_to
|
||||
cmd << " --since=#{shell_quote(options[:since].strftime("%Y-%m-%d %H:%M:%S"))}" if options[:since]
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
changeset = 'This template must be used with --debug option\n'
|
||||
changeset_quiet = 'This template must be used with --debug option\n'
|
||||
changeset_verbose = 'This template must be used with --debug option\n'
|
||||
changeset_debug = '<logentry revision="{rev}" node="{node|short}">\n<author>{author|escape}</author>\n<date>{date|isodatesec}</date>\n<paths>\n{file_mods}{file_adds}{file_dels}{file_copies}</paths>\n<msg>{desc|escape}</msg>\n{tags}</logentry>\n\n'
|
||||
changeset_debug = '<logentry revision="{rev}" node="{node|short}">\n<author>{author|escape}</author>\n<date>{date|isodate}</date>\n<paths>\n{file_mods}{file_adds}{file_dels}{file_copies}</paths>\n<msg>{desc|escape}</msg>\n{tags}</logentry>\n\n'
|
||||
|
||||
file_mod = '<path action="M">{file_mod|escape}</path>\n'
|
||||
file_add = '<path action="A">{file_add|escape}</path>\n'
|
||||
|
||||
@@ -80,7 +80,7 @@ module Redmine
|
||||
path ||= ''
|
||||
entries = Entries.new
|
||||
cmd = "#{HG_BIN} -R #{target('')} --cwd #{target('')} locate"
|
||||
cmd << " -r " + shell_quote(identifier ? identifier.to_s : "tip")
|
||||
cmd << " -r " + (identifier ? identifier.to_s : "tip")
|
||||
cmd << " " + shell_quote("path:#{path}") unless path.empty?
|
||||
shellout(cmd) do |io|
|
||||
io.each_line do |line|
|
||||
@@ -112,7 +112,7 @@ module Redmine
|
||||
cmd << " -r #{identifier_from.to_i}:"
|
||||
end
|
||||
cmd << " --limit #{options[:limit].to_i}" if options[:limit]
|
||||
cmd << " #{shell_quote path}" unless path.blank?
|
||||
cmd << " #{path}" if path
|
||||
shellout(cmd) do |io|
|
||||
begin
|
||||
# HG doesn't close the XML Document...
|
||||
@@ -157,9 +157,6 @@ module Redmine
|
||||
else
|
||||
identifier_to = identifier_from.to_i - 1
|
||||
end
|
||||
if identifier_from
|
||||
identifier_from = identifier_from.to_i
|
||||
end
|
||||
cmd = "#{HG_BIN} -R #{target('')} diff -r #{identifier_to} -r #{identifier_from} --nodates"
|
||||
cmd << " -I #{target(path)}" unless path.empty?
|
||||
diff = []
|
||||
@@ -174,7 +171,7 @@ module Redmine
|
||||
|
||||
def cat(path, identifier=nil)
|
||||
cmd = "#{HG_BIN} -R #{target('')} cat"
|
||||
cmd << " -r " + shell_quote(identifier ? identifier.to_s : "tip")
|
||||
cmd << " -r " + (identifier ? identifier.to_s : "tip")
|
||||
cmd << " #{target(path)}"
|
||||
cat = nil
|
||||
shellout(cmd) do |io|
|
||||
@@ -189,7 +186,7 @@ module Redmine
|
||||
path ||= ''
|
||||
cmd = "#{HG_BIN} -R #{target('')}"
|
||||
cmd << " annotate -n -u"
|
||||
cmd << " -r " + shell_quote(identifier ? identifier.to_s : "tip")
|
||||
cmd << " -r " + (identifier ? identifier.to_s : "tip")
|
||||
cmd << " -r #{identifier.to_i}" if identifier
|
||||
cmd << " #{target(path)}"
|
||||
blame = Annotate.new
|
||||
|
||||
@@ -135,8 +135,8 @@ module Redmine
|
||||
|
||||
def revisions(path=nil, identifier_from=nil, identifier_to=nil, options={})
|
||||
path ||= ''
|
||||
identifier_from = (identifier_from && identifier_from.to_i > 0) ? identifier_from.to_i : "HEAD"
|
||||
identifier_to = (identifier_to && identifier_to.to_i > 0) ? identifier_to.to_i : 1
|
||||
identifier_from = (identifier_from and identifier_from.to_i > 0) ? identifier_from.to_i : "HEAD"
|
||||
identifier_to = (identifier_to and identifier_to.to_i > 0) ? identifier_to.to_i : 1
|
||||
revisions = Revisions.new
|
||||
cmd = "#{SVN_BIN} log --xml -r #{identifier_from}:#{identifier_to}"
|
||||
cmd << credentials_string
|
||||
|
||||
@@ -4,7 +4,7 @@ module Redmine
|
||||
module VERSION #:nodoc:
|
||||
MAJOR = 1
|
||||
MINOR = 0
|
||||
TINY = 5
|
||||
TINY = 4
|
||||
|
||||
# Branch values:
|
||||
# * official release: nil
|
||||
|
||||
@@ -167,7 +167,7 @@ namespace :redmine do
|
||||
has_many :attachments, :class_name => "TracAttachment",
|
||||
:finder_sql => "SELECT DISTINCT attachment.* FROM #{TracMigrate::TracAttachment.table_name}" +
|
||||
" WHERE #{TracMigrate::TracAttachment.table_name}.type = 'ticket'" +
|
||||
' AND #{TracMigrate::TracAttachment.table_name}.id = \'#{TracMigrate::TracAttachment.connection.quote_string(id.to_s)}\''
|
||||
' AND #{TracMigrate::TracAttachment.table_name}.id = \'#{id}\''
|
||||
has_many :customs, :class_name => "TracTicketCustom", :foreign_key => :ticket
|
||||
|
||||
def ticket_type
|
||||
@@ -207,7 +207,7 @@ namespace :redmine do
|
||||
has_many :attachments, :class_name => "TracAttachment",
|
||||
:finder_sql => "SELECT DISTINCT attachment.* FROM #{TracMigrate::TracAttachment.table_name}" +
|
||||
" WHERE #{TracMigrate::TracAttachment.table_name}.type = 'wiki'" +
|
||||
' AND #{TracMigrate::TracAttachment.table_name}.id = \'#{TracMigrate::TracAttachment.connection.quote_string(id.to_s)}\''
|
||||
' AND #{TracMigrate::TracAttachment.table_name}.id = \'#{id}\''
|
||||
|
||||
def self.columns
|
||||
# Hides readonly Trac field to prevent clash with AR readonly? method (Rails 2.0)
|
||||
|
||||
@@ -250,9 +250,6 @@ class IssuesControllerTest < ActionController::TestCase
|
||||
get :show, :id => 1
|
||||
assert_response :success
|
||||
|
||||
assert_tag :tag => 'a',
|
||||
:content => /Quote/
|
||||
|
||||
assert_tag :tag => 'form',
|
||||
:descendant => { :tag => 'fieldset',
|
||||
:child => { :tag => 'legend',
|
||||
|
||||
@@ -40,20 +40,14 @@ class JournalsControllerTest < ActionController::TestCase
|
||||
|
||||
def test_reply_to_issue
|
||||
@request.session[:user_id] = 2
|
||||
get :new, :id => 6
|
||||
get :new, :id => 1
|
||||
assert_response :success
|
||||
assert_select_rjs :show, "update"
|
||||
end
|
||||
|
||||
def test_reply_to_issue_without_permission
|
||||
@request.session[:user_id] = 7
|
||||
get :new, :id => 6
|
||||
assert_response 403
|
||||
end
|
||||
|
||||
def test_reply_to_note
|
||||
@request.session[:user_id] = 2
|
||||
get :new, :id => 6, :journal_id => 4
|
||||
get :new, :id => 1, :journal_id => 2
|
||||
assert_response :success
|
||||
assert_select_rjs :show, "update"
|
||||
end
|
||||
|
||||
@@ -22,7 +22,6 @@ require 'repositories_controller'
|
||||
class RepositoriesController; def rescue_action(e) raise e end; end
|
||||
|
||||
class RepositoriesCvsControllerTest < ActionController::TestCase
|
||||
fixtures :projects, :users, :roles, :members, :member_roles, :repositories, :enabled_modules
|
||||
|
||||
# No '..' in the repository path
|
||||
REPOSITORY_PATH = RAILS_ROOT.gsub(%r{config\/\.\.}, '') + '/tmp/test/cvs_repository'
|
||||
|
||||
@@ -284,9 +284,6 @@ RAW
|
||||
"<!-- opening comment" => "<p><!-- opening comment</p>",
|
||||
# remove attributes except class
|
||||
"<pre class='foo'>some text</pre>" => "<pre class='foo'>some text</pre>",
|
||||
'<pre class="foo">some text</pre>' => '<pre class="foo">some text</pre>',
|
||||
"<pre class='foo bar'>some text</pre>" => "<pre class='foo bar'>some text</pre>",
|
||||
'<pre class="foo bar">some text</pre>' => '<pre class="foo bar">some text</pre>',
|
||||
"<pre onmouseover='alert(1)'>some text</pre>" => "<pre>some text</pre>",
|
||||
}
|
||||
to_test.each { |text, result| assert_equal result, textilizable(text) }
|
||||
|
||||
@@ -63,14 +63,4 @@ class IssueRelationTest < ActiveSupport::TestCase
|
||||
assert_equal IssueRelation::TYPE_PRECEDES, relation.relation_type_for(from)
|
||||
assert_equal IssueRelation::TYPE_FOLLOWS, relation.relation_type_for(to)
|
||||
end
|
||||
|
||||
def test_set_issue_to_dates_without_issue_to
|
||||
r = IssueRelation.new(:issue_from => Issue.new(:start_date => Date.today), :relation_type => IssueRelation::TYPE_PRECEDES, :delay => 1)
|
||||
assert_nil r.set_issue_to_dates
|
||||
end
|
||||
|
||||
def test_set_issue_to_dates_without_issues
|
||||
r = IssueRelation.new(:relation_type => IssueRelation::TYPE_PRECEDES, :delay => 1)
|
||||
assert_nil r.set_issue_to_dates
|
||||
end
|
||||
end
|
||||
|
||||
@@ -29,7 +29,7 @@ class Redmine::I18nTest < ActiveSupport::TestCase
|
||||
set_language_if_valid 'en'
|
||||
today = Date.today
|
||||
Setting.date_format = ''
|
||||
assert_equal I18n.l(today), format_date(today)
|
||||
assert_equal I18n.l(today, :count => today.strftime('%d')), format_date(today)
|
||||
end
|
||||
|
||||
def test_date_format
|
||||
@@ -47,7 +47,7 @@ class Redmine::I18nTest < ActiveSupport::TestCase
|
||||
format_date(Date.today)
|
||||
format_time(Time.now)
|
||||
format_time(Time.now, false)
|
||||
assert_not_equal 'default', ::I18n.l(Date.today, :format => :default), "date.formats.default missing in #{lang}"
|
||||
assert_not_equal 'default', ::I18n.l(Date.today, :count => Date.today.strftime('%d'), :format => :default), "date.formats.default missing in #{lang}"
|
||||
assert_not_equal 'time', ::I18n.l(Time.now, :format => :time), "time.formats.time missing in #{lang}"
|
||||
end
|
||||
assert l('date.day_names').is_a?(Array)
|
||||
@@ -63,8 +63,8 @@ class Redmine::I18nTest < ActiveSupport::TestCase
|
||||
now = Time.now
|
||||
Setting.date_format = ''
|
||||
Setting.time_format = ''
|
||||
assert_equal I18n.l(now), format_time(now)
|
||||
assert_equal I18n.l(now, :format => :time), format_time(now, false)
|
||||
assert_equal I18n.l(now, :count => now.strftime('%d')), format_time(now)
|
||||
assert_equal I18n.l(now, :count => now.strftime('%d'), :format => :time), format_time(now, false)
|
||||
end
|
||||
|
||||
def test_time_format
|
||||
|
||||
@@ -305,26 +305,6 @@ class MailerTest < ActiveSupport::TestCase
|
||||
end
|
||||
end
|
||||
|
||||
def test_wiki_content_added
|
||||
content = WikiContent.find(:first)
|
||||
valid_languages.each do |lang|
|
||||
Setting.default_language = lang.to_s
|
||||
assert_difference 'ActionMailer::Base.deliveries.size' do
|
||||
assert Mailer.deliver_wiki_content_added(content)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def test_wiki_content_updated
|
||||
content = WikiContent.find(:first)
|
||||
valid_languages.each do |lang|
|
||||
Setting.default_language = lang.to_s
|
||||
assert_difference 'ActionMailer::Base.deliveries.size' do
|
||||
assert Mailer.deliver_wiki_content_updated(content)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def test_account_information
|
||||
user = User.find(2)
|
||||
valid_languages.each do |lang|
|
||||
|
||||
@@ -225,22 +225,6 @@ class QueryTest < ActiveSupport::TestCase
|
||||
q = Query.new
|
||||
assert q.groupable_columns.detect {|c| c.is_a? QueryCustomFieldColumn}
|
||||
end
|
||||
|
||||
def test_grouped_with_valid_column
|
||||
q = Query.new(:group_by => 'status')
|
||||
assert q.grouped?
|
||||
assert_not_nil q.group_by_column
|
||||
assert_equal :status, q.group_by_column.name
|
||||
assert_not_nil q.group_by_statement
|
||||
assert_equal 'status', q.group_by_statement
|
||||
end
|
||||
|
||||
def test_grouped_with_invalid_column
|
||||
q = Query.new(:group_by => 'foo')
|
||||
assert !q.grouped?
|
||||
assert_nil q.group_by_column
|
||||
assert_nil q.group_by_statement
|
||||
end
|
||||
|
||||
def test_default_sort
|
||||
q = Query.new
|
||||
|
||||
@@ -62,20 +62,12 @@ class RepositoryMercurialTest < ActiveSupport::TestCase
|
||||
assert_equal 2, @repository.entries("images", 2).size
|
||||
end
|
||||
|
||||
|
||||
def test_cat
|
||||
assert @repository.scm.cat("sources/welcome_controller.rb", 2)
|
||||
assert_nil @repository.scm.cat("sources/welcome_controller.rb")
|
||||
end
|
||||
|
||||
def test_isodatesec
|
||||
# Template keyword 'isodatesec' supported in Mercurial 1.0 and higher
|
||||
if @repository.scm.class.client_version_above?([1, 0])
|
||||
@repository.fetch_changesets
|
||||
@repository.reload
|
||||
rev0_committed_on = Time.gm(2007, 12, 14, 9, 22, 52)
|
||||
assert_equal @repository.changesets.find_by_revision('0').committed_on, rev0_committed_on
|
||||
end
|
||||
end
|
||||
else
|
||||
puts "Mercurial test repository NOT FOUND. Skipping unit tests !!!"
|
||||
def test_fake; assert true end
|
||||
|
||||
Reference in New Issue
Block a user