@@ -0,0 +1,1 | |||||
|
1 | <p class="nodata"><%= l(:label_no_preview) %></p> |
@@ -1,442 +1,444 | |||||
1 | # Redmine - project management software |
|
1 | # Redmine - project management software | |
2 | # Copyright (C) 2006-2016 Jean-Philippe Lang |
|
2 | # Copyright (C) 2006-2016 Jean-Philippe Lang | |
3 | # |
|
3 | # | |
4 | # This program is free software; you can redistribute it and/or |
|
4 | # This program is free software; you can redistribute it and/or | |
5 | # modify it under the terms of the GNU General Public License |
|
5 | # modify it under the terms of the GNU General Public License | |
6 | # as published by the Free Software Foundation; either version 2 |
|
6 | # as published by the Free Software Foundation; either version 2 | |
7 | # of the License, or (at your option) any later version. |
|
7 | # of the License, or (at your option) any later version. | |
8 | # |
|
8 | # | |
9 | # This program is distributed in the hope that it will be useful, |
|
9 | # This program is distributed in the hope that it will be useful, | |
10 | # but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
10 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
12 | # GNU General Public License for more details. |
|
12 | # GNU General Public License for more details. | |
13 | # |
|
13 | # | |
14 | # You should have received a copy of the GNU General Public License |
|
14 | # You should have received a copy of the GNU General Public License | |
15 | # along with this program; if not, write to the Free Software |
|
15 | # along with this program; if not, write to the Free Software | |
16 | # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. |
|
16 | # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. | |
17 |
|
17 | |||
18 | require 'SVG/Graph/Bar' |
|
18 | require 'SVG/Graph/Bar' | |
19 | require 'SVG/Graph/BarHorizontal' |
|
19 | require 'SVG/Graph/BarHorizontal' | |
20 | require 'digest/sha1' |
|
20 | require 'digest/sha1' | |
21 | require 'redmine/scm/adapters' |
|
21 | require 'redmine/scm/adapters' | |
22 |
|
22 | |||
23 | class ChangesetNotFound < Exception; end |
|
23 | class ChangesetNotFound < Exception; end | |
24 | class InvalidRevisionParam < Exception; end |
|
24 | class InvalidRevisionParam < Exception; end | |
25 |
|
25 | |||
26 | class RepositoriesController < ApplicationController |
|
26 | class RepositoriesController < ApplicationController | |
27 | menu_item :repository |
|
27 | menu_item :repository | |
28 | menu_item :settings, :only => [:new, :create, :edit, :update, :destroy, :committers] |
|
28 | menu_item :settings, :only => [:new, :create, :edit, :update, :destroy, :committers] | |
29 | default_search_scope :changesets |
|
29 | default_search_scope :changesets | |
30 |
|
30 | |||
31 | before_filter :find_project_by_project_id, :only => [:new, :create] |
|
31 | before_filter :find_project_by_project_id, :only => [:new, :create] | |
32 | before_filter :find_repository, :only => [:edit, :update, :destroy, :committers] |
|
32 | before_filter :find_repository, :only => [:edit, :update, :destroy, :committers] | |
33 | before_filter :find_project_repository, :except => [:new, :create, :edit, :update, :destroy, :committers] |
|
33 | before_filter :find_project_repository, :except => [:new, :create, :edit, :update, :destroy, :committers] | |
34 | before_filter :find_changeset, :only => [:revision, :add_related_issue, :remove_related_issue] |
|
34 | before_filter :find_changeset, :only => [:revision, :add_related_issue, :remove_related_issue] | |
35 | before_filter :authorize |
|
35 | before_filter :authorize | |
36 | accept_rss_auth :revisions |
|
36 | accept_rss_auth :revisions | |
37 |
|
37 | |||
38 | rescue_from Redmine::Scm::Adapters::CommandFailed, :with => :show_error_command_failed |
|
38 | rescue_from Redmine::Scm::Adapters::CommandFailed, :with => :show_error_command_failed | |
39 |
|
39 | |||
40 | def new |
|
40 | def new | |
41 | scm = params[:repository_scm] || (Redmine::Scm::Base.all & Setting.enabled_scm).first |
|
41 | scm = params[:repository_scm] || (Redmine::Scm::Base.all & Setting.enabled_scm).first | |
42 | @repository = Repository.factory(scm) |
|
42 | @repository = Repository.factory(scm) | |
43 | @repository.is_default = @project.repository.nil? |
|
43 | @repository.is_default = @project.repository.nil? | |
44 | @repository.project = @project |
|
44 | @repository.project = @project | |
45 | end |
|
45 | end | |
46 |
|
46 | |||
47 | def create |
|
47 | def create | |
48 | attrs = pickup_extra_info |
|
48 | attrs = pickup_extra_info | |
49 | @repository = Repository.factory(params[:repository_scm]) |
|
49 | @repository = Repository.factory(params[:repository_scm]) | |
50 | @repository.safe_attributes = params[:repository] |
|
50 | @repository.safe_attributes = params[:repository] | |
51 | if attrs[:attrs_extra].keys.any? |
|
51 | if attrs[:attrs_extra].keys.any? | |
52 | @repository.merge_extra_info(attrs[:attrs_extra]) |
|
52 | @repository.merge_extra_info(attrs[:attrs_extra]) | |
53 | end |
|
53 | end | |
54 | @repository.project = @project |
|
54 | @repository.project = @project | |
55 | if request.post? && @repository.save |
|
55 | if request.post? && @repository.save | |
56 | redirect_to settings_project_path(@project, :tab => 'repositories') |
|
56 | redirect_to settings_project_path(@project, :tab => 'repositories') | |
57 | else |
|
57 | else | |
58 | render :action => 'new' |
|
58 | render :action => 'new' | |
59 | end |
|
59 | end | |
60 | end |
|
60 | end | |
61 |
|
61 | |||
62 | def edit |
|
62 | def edit | |
63 | end |
|
63 | end | |
64 |
|
64 | |||
65 | def update |
|
65 | def update | |
66 | attrs = pickup_extra_info |
|
66 | attrs = pickup_extra_info | |
67 | @repository.safe_attributes = attrs[:attrs] |
|
67 | @repository.safe_attributes = attrs[:attrs] | |
68 | if attrs[:attrs_extra].keys.any? |
|
68 | if attrs[:attrs_extra].keys.any? | |
69 | @repository.merge_extra_info(attrs[:attrs_extra]) |
|
69 | @repository.merge_extra_info(attrs[:attrs_extra]) | |
70 | end |
|
70 | end | |
71 | @repository.project = @project |
|
71 | @repository.project = @project | |
72 | if @repository.save |
|
72 | if @repository.save | |
73 | redirect_to settings_project_path(@project, :tab => 'repositories') |
|
73 | redirect_to settings_project_path(@project, :tab => 'repositories') | |
74 | else |
|
74 | else | |
75 | render :action => 'edit' |
|
75 | render :action => 'edit' | |
76 | end |
|
76 | end | |
77 | end |
|
77 | end | |
78 |
|
78 | |||
79 | def pickup_extra_info |
|
79 | def pickup_extra_info | |
80 | p = {} |
|
80 | p = {} | |
81 | p_extra = {} |
|
81 | p_extra = {} | |
82 | params[:repository].each do |k, v| |
|
82 | params[:repository].each do |k, v| | |
83 | if k =~ /^extra_/ |
|
83 | if k =~ /^extra_/ | |
84 | p_extra[k] = v |
|
84 | p_extra[k] = v | |
85 | else |
|
85 | else | |
86 | p[k] = v |
|
86 | p[k] = v | |
87 | end |
|
87 | end | |
88 | end |
|
88 | end | |
89 | {:attrs => p, :attrs_extra => p_extra} |
|
89 | {:attrs => p, :attrs_extra => p_extra} | |
90 | end |
|
90 | end | |
91 | private :pickup_extra_info |
|
91 | private :pickup_extra_info | |
92 |
|
92 | |||
93 | def committers |
|
93 | def committers | |
94 | @committers = @repository.committers |
|
94 | @committers = @repository.committers | |
95 | @users = @project.users.to_a |
|
95 | @users = @project.users.to_a | |
96 | additional_user_ids = @committers.collect(&:last).collect(&:to_i) - @users.collect(&:id) |
|
96 | additional_user_ids = @committers.collect(&:last).collect(&:to_i) - @users.collect(&:id) | |
97 | @users += User.where(:id => additional_user_ids).to_a unless additional_user_ids.empty? |
|
97 | @users += User.where(:id => additional_user_ids).to_a unless additional_user_ids.empty? | |
98 | @users.compact! |
|
98 | @users.compact! | |
99 | @users.sort! |
|
99 | @users.sort! | |
100 | if request.post? && params[:committers].is_a?(Hash) |
|
100 | if request.post? && params[:committers].is_a?(Hash) | |
101 | # Build a hash with repository usernames as keys and corresponding user ids as values |
|
101 | # Build a hash with repository usernames as keys and corresponding user ids as values | |
102 | @repository.committer_ids = params[:committers].values.inject({}) {|h, c| h[c.first] = c.last; h} |
|
102 | @repository.committer_ids = params[:committers].values.inject({}) {|h, c| h[c.first] = c.last; h} | |
103 | flash[:notice] = l(:notice_successful_update) |
|
103 | flash[:notice] = l(:notice_successful_update) | |
104 | redirect_to settings_project_path(@project, :tab => 'repositories') |
|
104 | redirect_to settings_project_path(@project, :tab => 'repositories') | |
105 | end |
|
105 | end | |
106 | end |
|
106 | end | |
107 |
|
107 | |||
108 | def destroy |
|
108 | def destroy | |
109 | @repository.destroy if request.delete? |
|
109 | @repository.destroy if request.delete? | |
110 | redirect_to settings_project_path(@project, :tab => 'repositories') |
|
110 | redirect_to settings_project_path(@project, :tab => 'repositories') | |
111 | end |
|
111 | end | |
112 |
|
112 | |||
113 | def show |
|
113 | def show | |
114 | @repository.fetch_changesets if @project.active? && Setting.autofetch_changesets? && @path.empty? |
|
114 | @repository.fetch_changesets if @project.active? && Setting.autofetch_changesets? && @path.empty? | |
115 |
|
115 | |||
116 | @entries = @repository.entries(@path, @rev) |
|
116 | @entries = @repository.entries(@path, @rev) | |
117 | @changeset = @repository.find_changeset_by_name(@rev) |
|
117 | @changeset = @repository.find_changeset_by_name(@rev) | |
118 | if request.xhr? |
|
118 | if request.xhr? | |
119 | @entries ? render(:partial => 'dir_list_content') : render(:nothing => true) |
|
119 | @entries ? render(:partial => 'dir_list_content') : render(:nothing => true) | |
120 | else |
|
120 | else | |
121 | (show_error_not_found; return) unless @entries |
|
121 | (show_error_not_found; return) unless @entries | |
122 | @changesets = @repository.latest_changesets(@path, @rev) |
|
122 | @changesets = @repository.latest_changesets(@path, @rev) | |
123 | @properties = @repository.properties(@path, @rev) |
|
123 | @properties = @repository.properties(@path, @rev) | |
124 | @repositories = @project.repositories |
|
124 | @repositories = @project.repositories | |
125 | render :action => 'show' |
|
125 | render :action => 'show' | |
126 | end |
|
126 | end | |
127 | end |
|
127 | end | |
128 |
|
128 | |||
129 | alias_method :browse, :show |
|
129 | alias_method :browse, :show | |
130 |
|
130 | |||
131 | def changes |
|
131 | def changes | |
132 | @entry = @repository.entry(@path, @rev) |
|
132 | @entry = @repository.entry(@path, @rev) | |
133 | (show_error_not_found; return) unless @entry |
|
133 | (show_error_not_found; return) unless @entry | |
134 | @changesets = @repository.latest_changesets(@path, @rev, Setting.repository_log_display_limit.to_i) |
|
134 | @changesets = @repository.latest_changesets(@path, @rev, Setting.repository_log_display_limit.to_i) | |
135 | @properties = @repository.properties(@path, @rev) |
|
135 | @properties = @repository.properties(@path, @rev) | |
136 | @changeset = @repository.find_changeset_by_name(@rev) |
|
136 | @changeset = @repository.find_changeset_by_name(@rev) | |
137 | end |
|
137 | end | |
138 |
|
138 | |||
139 | def revisions |
|
139 | def revisions | |
140 | @changeset_count = @repository.changesets.count |
|
140 | @changeset_count = @repository.changesets.count | |
141 | @changeset_pages = Paginator.new @changeset_count, |
|
141 | @changeset_pages = Paginator.new @changeset_count, | |
142 | per_page_option, |
|
142 | per_page_option, | |
143 | params['page'] |
|
143 | params['page'] | |
144 | @changesets = @repository.changesets. |
|
144 | @changesets = @repository.changesets. | |
145 | limit(@changeset_pages.per_page). |
|
145 | limit(@changeset_pages.per_page). | |
146 | offset(@changeset_pages.offset). |
|
146 | offset(@changeset_pages.offset). | |
147 | includes(:user, :repository, :parents). |
|
147 | includes(:user, :repository, :parents). | |
148 | to_a |
|
148 | to_a | |
149 |
|
149 | |||
150 | respond_to do |format| |
|
150 | respond_to do |format| | |
151 | format.html { render :layout => false if request.xhr? } |
|
151 | format.html { render :layout => false if request.xhr? } | |
152 | format.atom { render_feed(@changesets, :title => "#{@project.name}: #{l(:label_revision_plural)}") } |
|
152 | format.atom { render_feed(@changesets, :title => "#{@project.name}: #{l(:label_revision_plural)}") } | |
153 | end |
|
153 | end | |
154 | end |
|
154 | end | |
155 |
|
155 | |||
156 | def raw |
|
156 | def raw | |
157 | entry_and_raw(true) |
|
157 | entry_and_raw(true) | |
158 | end |
|
158 | end | |
159 |
|
159 | |||
160 | def entry |
|
160 | def entry | |
161 | entry_and_raw(false) |
|
161 | entry_and_raw(false) | |
162 | end |
|
162 | end | |
163 |
|
163 | |||
164 | def entry_and_raw(is_raw) |
|
164 | def entry_and_raw(is_raw) | |
165 | @entry = @repository.entry(@path, @rev) |
|
165 | @entry = @repository.entry(@path, @rev) | |
166 | (show_error_not_found; return) unless @entry |
|
166 | (show_error_not_found; return) unless @entry | |
167 |
|
167 | |||
168 | # If the entry is a dir, show the browser |
|
168 | # If the entry is a dir, show the browser | |
169 | (show; return) if @entry.is_dir? |
|
169 | (show; return) if @entry.is_dir? | |
170 |
|
170 | |||
171 | @content = @repository.cat(@path, @rev) |
|
171 | if is_raw | |
172 | (show_error_not_found; return) unless @content |
|
|||
173 | if !is_raw && Redmine::MimeType.is_type?('image', @path) |
|
|||
174 | # simply render |
|
|||
175 | elsif is_raw || |
|
|||
176 | (@content.size && @content.size > Setting.file_max_size_displayed.to_i.kilobyte) || |
|
|||
177 | ! is_entry_text_data?(@content, @path) |
|
|||
178 | # Force the download |
|
172 | # Force the download | |
179 | send_opt = { :filename => filename_for_content_disposition(@path.split('/').last) } |
|
173 | send_opt = { :filename => filename_for_content_disposition(@path.split('/').last) } | |
180 | send_type = Redmine::MimeType.of(@path) |
|
174 | send_type = Redmine::MimeType.of(@path) | |
181 | send_opt[:type] = send_type.to_s if send_type |
|
175 | send_opt[:type] = send_type.to_s if send_type | |
182 |
send_opt[:disposition] = (Redmine::MimeType.is_type?('image', @path) |
|
176 | send_opt[:disposition] = (Redmine::MimeType.is_type?('image', @path) ? 'inline' : 'attachment') | |
183 |
send_data @ |
|
177 | send_data @repository.cat(@path, @rev), send_opt | |
184 | else |
|
178 | else | |
185 | # Prevent empty lines when displaying a file with Windows style eol |
|
179 | if !@entry.size || @entry.size <= Setting.file_max_size_displayed.to_i.kilobyte | |
186 | # TODO: UTF-16 |
|
180 | content = @repository.cat(@path, @rev) | |
187 | # Is this needs? AttachmentsController reads file simply. |
|
181 | (show_error_not_found; return) unless content | |
188 | @content.gsub!("\r\n", "\n") |
|
182 | ||
|
183 | if content.size <= Setting.file_max_size_displayed.to_i.kilobyte && | |||
|
184 | is_entry_text_data?(content, @path) | |||
|
185 | # TODO: UTF-16 | |||
|
186 | # Prevent empty lines when displaying a file with Windows style eol | |||
|
187 | # Is this needed? AttachmentsController simply reads file. | |||
|
188 | @content = content.gsub("\r\n", "\n") | |||
|
189 | end | |||
|
190 | end | |||
189 | @changeset = @repository.find_changeset_by_name(@rev) |
|
191 | @changeset = @repository.find_changeset_by_name(@rev) | |
190 | end |
|
192 | end | |
191 | end |
|
193 | end | |
192 | private :entry_and_raw |
|
194 | private :entry_and_raw | |
193 |
|
195 | |||
194 | def is_entry_text_data?(ent, path) |
|
196 | def is_entry_text_data?(ent, path) | |
195 | # UTF-16 contains "\x00". |
|
197 | # UTF-16 contains "\x00". | |
196 | # It is very strict that file contains less than 30% of ascii symbols |
|
198 | # It is very strict that file contains less than 30% of ascii symbols | |
197 | # in non Western Europe. |
|
199 | # in non Western Europe. | |
198 | return true if Redmine::MimeType.is_type?('text', path) |
|
200 | return true if Redmine::MimeType.is_type?('text', path) | |
199 | # Ruby 1.8.6 has a bug of integer divisions. |
|
201 | # Ruby 1.8.6 has a bug of integer divisions. | |
200 | # http://apidock.com/ruby/v1_8_6_287/String/is_binary_data%3F |
|
202 | # http://apidock.com/ruby/v1_8_6_287/String/is_binary_data%3F | |
201 | return false if ent.is_binary_data? |
|
203 | return false if ent.is_binary_data? | |
202 | true |
|
204 | true | |
203 | end |
|
205 | end | |
204 | private :is_entry_text_data? |
|
206 | private :is_entry_text_data? | |
205 |
|
207 | |||
206 | def annotate |
|
208 | def annotate | |
207 | @entry = @repository.entry(@path, @rev) |
|
209 | @entry = @repository.entry(@path, @rev) | |
208 | (show_error_not_found; return) unless @entry |
|
210 | (show_error_not_found; return) unless @entry | |
209 |
|
211 | |||
210 | @annotate = @repository.scm.annotate(@path, @rev) |
|
212 | @annotate = @repository.scm.annotate(@path, @rev) | |
211 | if @annotate.nil? || @annotate.empty? |
|
213 | if @annotate.nil? || @annotate.empty? | |
212 | (render_error l(:error_scm_annotate); return) |
|
214 | (render_error l(:error_scm_annotate); return) | |
213 | end |
|
215 | end | |
214 | ann_buf_size = 0 |
|
216 | ann_buf_size = 0 | |
215 | @annotate.lines.each do |buf| |
|
217 | @annotate.lines.each do |buf| | |
216 | ann_buf_size += buf.size |
|
218 | ann_buf_size += buf.size | |
217 | end |
|
219 | end | |
218 | if ann_buf_size > Setting.file_max_size_displayed.to_i.kilobyte |
|
220 | if ann_buf_size > Setting.file_max_size_displayed.to_i.kilobyte | |
219 | (render_error l(:error_scm_annotate_big_text_file); return) |
|
221 | (render_error l(:error_scm_annotate_big_text_file); return) | |
220 | end |
|
222 | end | |
221 | @changeset = @repository.find_changeset_by_name(@rev) |
|
223 | @changeset = @repository.find_changeset_by_name(@rev) | |
222 | end |
|
224 | end | |
223 |
|
225 | |||
224 | def revision |
|
226 | def revision | |
225 | respond_to do |format| |
|
227 | respond_to do |format| | |
226 | format.html |
|
228 | format.html | |
227 | format.js {render :layout => false} |
|
229 | format.js {render :layout => false} | |
228 | end |
|
230 | end | |
229 | end |
|
231 | end | |
230 |
|
232 | |||
231 | # Adds a related issue to a changeset |
|
233 | # Adds a related issue to a changeset | |
232 | # POST /projects/:project_id/repository/(:repository_id/)revisions/:rev/issues |
|
234 | # POST /projects/:project_id/repository/(:repository_id/)revisions/:rev/issues | |
233 | def add_related_issue |
|
235 | def add_related_issue | |
234 | issue_id = params[:issue_id].to_s.sub(/^#/,'') |
|
236 | issue_id = params[:issue_id].to_s.sub(/^#/,'') | |
235 | @issue = @changeset.find_referenced_issue_by_id(issue_id) |
|
237 | @issue = @changeset.find_referenced_issue_by_id(issue_id) | |
236 | if @issue && (!@issue.visible? || @changeset.issues.include?(@issue)) |
|
238 | if @issue && (!@issue.visible? || @changeset.issues.include?(@issue)) | |
237 | @issue = nil |
|
239 | @issue = nil | |
238 | end |
|
240 | end | |
239 |
|
241 | |||
240 | if @issue |
|
242 | if @issue | |
241 | @changeset.issues << @issue |
|
243 | @changeset.issues << @issue | |
242 | end |
|
244 | end | |
243 | end |
|
245 | end | |
244 |
|
246 | |||
245 | # Removes a related issue from a changeset |
|
247 | # Removes a related issue from a changeset | |
246 | # DELETE /projects/:project_id/repository/(:repository_id/)revisions/:rev/issues/:issue_id |
|
248 | # DELETE /projects/:project_id/repository/(:repository_id/)revisions/:rev/issues/:issue_id | |
247 | def remove_related_issue |
|
249 | def remove_related_issue | |
248 | @issue = Issue.visible.find_by_id(params[:issue_id]) |
|
250 | @issue = Issue.visible.find_by_id(params[:issue_id]) | |
249 | if @issue |
|
251 | if @issue | |
250 | @changeset.issues.delete(@issue) |
|
252 | @changeset.issues.delete(@issue) | |
251 | end |
|
253 | end | |
252 | end |
|
254 | end | |
253 |
|
255 | |||
254 | def diff |
|
256 | def diff | |
255 | if params[:format] == 'diff' |
|
257 | if params[:format] == 'diff' | |
256 | @diff = @repository.diff(@path, @rev, @rev_to) |
|
258 | @diff = @repository.diff(@path, @rev, @rev_to) | |
257 | (show_error_not_found; return) unless @diff |
|
259 | (show_error_not_found; return) unless @diff | |
258 | filename = "changeset_r#{@rev}" |
|
260 | filename = "changeset_r#{@rev}" | |
259 | filename << "_r#{@rev_to}" if @rev_to |
|
261 | filename << "_r#{@rev_to}" if @rev_to | |
260 | send_data @diff.join, :filename => "#{filename}.diff", |
|
262 | send_data @diff.join, :filename => "#{filename}.diff", | |
261 | :type => 'text/x-patch', |
|
263 | :type => 'text/x-patch', | |
262 | :disposition => 'attachment' |
|
264 | :disposition => 'attachment' | |
263 | else |
|
265 | else | |
264 | @diff_type = params[:type] || User.current.pref[:diff_type] || 'inline' |
|
266 | @diff_type = params[:type] || User.current.pref[:diff_type] || 'inline' | |
265 | @diff_type = 'inline' unless %w(inline sbs).include?(@diff_type) |
|
267 | @diff_type = 'inline' unless %w(inline sbs).include?(@diff_type) | |
266 |
|
268 | |||
267 | # Save diff type as user preference |
|
269 | # Save diff type as user preference | |
268 | if User.current.logged? && @diff_type != User.current.pref[:diff_type] |
|
270 | if User.current.logged? && @diff_type != User.current.pref[:diff_type] | |
269 | User.current.pref[:diff_type] = @diff_type |
|
271 | User.current.pref[:diff_type] = @diff_type | |
270 | User.current.preference.save |
|
272 | User.current.preference.save | |
271 | end |
|
273 | end | |
272 | @cache_key = "repositories/diff/#{@repository.id}/" + |
|
274 | @cache_key = "repositories/diff/#{@repository.id}/" + | |
273 | Digest::MD5.hexdigest("#{@path}-#{@rev}-#{@rev_to}-#{@diff_type}-#{current_language}") |
|
275 | Digest::MD5.hexdigest("#{@path}-#{@rev}-#{@rev_to}-#{@diff_type}-#{current_language}") | |
274 | unless read_fragment(@cache_key) |
|
276 | unless read_fragment(@cache_key) | |
275 | @diff = @repository.diff(@path, @rev, @rev_to) |
|
277 | @diff = @repository.diff(@path, @rev, @rev_to) | |
276 | show_error_not_found unless @diff |
|
278 | show_error_not_found unless @diff | |
277 | end |
|
279 | end | |
278 |
|
280 | |||
279 | @changeset = @repository.find_changeset_by_name(@rev) |
|
281 | @changeset = @repository.find_changeset_by_name(@rev) | |
280 | @changeset_to = @rev_to ? @repository.find_changeset_by_name(@rev_to) : nil |
|
282 | @changeset_to = @rev_to ? @repository.find_changeset_by_name(@rev_to) : nil | |
281 | @diff_format_revisions = @repository.diff_format_revisions(@changeset, @changeset_to) |
|
283 | @diff_format_revisions = @repository.diff_format_revisions(@changeset, @changeset_to) | |
282 | end |
|
284 | end | |
283 | end |
|
285 | end | |
284 |
|
286 | |||
285 | def stats |
|
287 | def stats | |
286 | end |
|
288 | end | |
287 |
|
289 | |||
288 | def graph |
|
290 | def graph | |
289 | data = nil |
|
291 | data = nil | |
290 | case params[:graph] |
|
292 | case params[:graph] | |
291 | when "commits_per_month" |
|
293 | when "commits_per_month" | |
292 | data = graph_commits_per_month(@repository) |
|
294 | data = graph_commits_per_month(@repository) | |
293 | when "commits_per_author" |
|
295 | when "commits_per_author" | |
294 | data = graph_commits_per_author(@repository) |
|
296 | data = graph_commits_per_author(@repository) | |
295 | end |
|
297 | end | |
296 | if data |
|
298 | if data | |
297 | headers["Content-Type"] = "image/svg+xml" |
|
299 | headers["Content-Type"] = "image/svg+xml" | |
298 | send_data(data, :type => "image/svg+xml", :disposition => "inline") |
|
300 | send_data(data, :type => "image/svg+xml", :disposition => "inline") | |
299 | else |
|
301 | else | |
300 | render_404 |
|
302 | render_404 | |
301 | end |
|
303 | end | |
302 | end |
|
304 | end | |
303 |
|
305 | |||
304 | private |
|
306 | private | |
305 |
|
307 | |||
306 | def find_repository |
|
308 | def find_repository | |
307 | @repository = Repository.find(params[:id]) |
|
309 | @repository = Repository.find(params[:id]) | |
308 | @project = @repository.project |
|
310 | @project = @repository.project | |
309 | rescue ActiveRecord::RecordNotFound |
|
311 | rescue ActiveRecord::RecordNotFound | |
310 | render_404 |
|
312 | render_404 | |
311 | end |
|
313 | end | |
312 |
|
314 | |||
313 | REV_PARAM_RE = %r{\A[a-f0-9]*\Z}i |
|
315 | REV_PARAM_RE = %r{\A[a-f0-9]*\Z}i | |
314 |
|
316 | |||
315 | def find_project_repository |
|
317 | def find_project_repository | |
316 | @project = Project.find(params[:id]) |
|
318 | @project = Project.find(params[:id]) | |
317 | if params[:repository_id].present? |
|
319 | if params[:repository_id].present? | |
318 | @repository = @project.repositories.find_by_identifier_param(params[:repository_id]) |
|
320 | @repository = @project.repositories.find_by_identifier_param(params[:repository_id]) | |
319 | else |
|
321 | else | |
320 | @repository = @project.repository |
|
322 | @repository = @project.repository | |
321 | end |
|
323 | end | |
322 | (render_404; return false) unless @repository |
|
324 | (render_404; return false) unless @repository | |
323 | @path = params[:path].is_a?(Array) ? params[:path].join('/') : params[:path].to_s |
|
325 | @path = params[:path].is_a?(Array) ? params[:path].join('/') : params[:path].to_s | |
324 | @rev = params[:rev].blank? ? @repository.default_branch : params[:rev].to_s.strip |
|
326 | @rev = params[:rev].blank? ? @repository.default_branch : params[:rev].to_s.strip | |
325 | @rev_to = params[:rev_to] |
|
327 | @rev_to = params[:rev_to] | |
326 |
|
328 | |||
327 | unless @rev.to_s.match(REV_PARAM_RE) && @rev_to.to_s.match(REV_PARAM_RE) |
|
329 | unless @rev.to_s.match(REV_PARAM_RE) && @rev_to.to_s.match(REV_PARAM_RE) | |
328 | if @repository.branches.blank? |
|
330 | if @repository.branches.blank? | |
329 | raise InvalidRevisionParam |
|
331 | raise InvalidRevisionParam | |
330 | end |
|
332 | end | |
331 | end |
|
333 | end | |
332 | rescue ActiveRecord::RecordNotFound |
|
334 | rescue ActiveRecord::RecordNotFound | |
333 | render_404 |
|
335 | render_404 | |
334 | rescue InvalidRevisionParam |
|
336 | rescue InvalidRevisionParam | |
335 | show_error_not_found |
|
337 | show_error_not_found | |
336 | end |
|
338 | end | |
337 |
|
339 | |||
338 | def find_changeset |
|
340 | def find_changeset | |
339 | if @rev.present? |
|
341 | if @rev.present? | |
340 | @changeset = @repository.find_changeset_by_name(@rev) |
|
342 | @changeset = @repository.find_changeset_by_name(@rev) | |
341 | end |
|
343 | end | |
342 | show_error_not_found unless @changeset |
|
344 | show_error_not_found unless @changeset | |
343 | end |
|
345 | end | |
344 |
|
346 | |||
345 | def show_error_not_found |
|
347 | def show_error_not_found | |
346 | render_error :message => l(:error_scm_not_found), :status => 404 |
|
348 | render_error :message => l(:error_scm_not_found), :status => 404 | |
347 | end |
|
349 | end | |
348 |
|
350 | |||
349 | # Handler for Redmine::Scm::Adapters::CommandFailed exception |
|
351 | # Handler for Redmine::Scm::Adapters::CommandFailed exception | |
350 | def show_error_command_failed(exception) |
|
352 | def show_error_command_failed(exception) | |
351 | render_error l(:error_scm_command_failed, exception.message) |
|
353 | render_error l(:error_scm_command_failed, exception.message) | |
352 | end |
|
354 | end | |
353 |
|
355 | |||
354 | def graph_commits_per_month(repository) |
|
356 | def graph_commits_per_month(repository) | |
355 | @date_to = User.current.today |
|
357 | @date_to = User.current.today | |
356 | @date_from = @date_to << 11 |
|
358 | @date_from = @date_to << 11 | |
357 | @date_from = Date.civil(@date_from.year, @date_from.month, 1) |
|
359 | @date_from = Date.civil(@date_from.year, @date_from.month, 1) | |
358 | commits_by_day = Changeset. |
|
360 | commits_by_day = Changeset. | |
359 | where("repository_id = ? AND commit_date BETWEEN ? AND ?", repository.id, @date_from, @date_to). |
|
361 | where("repository_id = ? AND commit_date BETWEEN ? AND ?", repository.id, @date_from, @date_to). | |
360 | group(:commit_date). |
|
362 | group(:commit_date). | |
361 | count |
|
363 | count | |
362 | commits_by_month = [0] * 12 |
|
364 | commits_by_month = [0] * 12 | |
363 | commits_by_day.each {|c| commits_by_month[(@date_to.month - c.first.to_date.month) % 12] += c.last } |
|
365 | commits_by_day.each {|c| commits_by_month[(@date_to.month - c.first.to_date.month) % 12] += c.last } | |
364 |
|
366 | |||
365 | changes_by_day = Change. |
|
367 | changes_by_day = Change. | |
366 | joins(:changeset). |
|
368 | joins(:changeset). | |
367 | where("#{Changeset.table_name}.repository_id = ? AND #{Changeset.table_name}.commit_date BETWEEN ? AND ?", repository.id, @date_from, @date_to). |
|
369 | where("#{Changeset.table_name}.repository_id = ? AND #{Changeset.table_name}.commit_date BETWEEN ? AND ?", repository.id, @date_from, @date_to). | |
368 | group(:commit_date). |
|
370 | group(:commit_date). | |
369 | count |
|
371 | count | |
370 | changes_by_month = [0] * 12 |
|
372 | changes_by_month = [0] * 12 | |
371 | changes_by_day.each {|c| changes_by_month[(@date_to.month - c.first.to_date.month) % 12] += c.last } |
|
373 | changes_by_day.each {|c| changes_by_month[(@date_to.month - c.first.to_date.month) % 12] += c.last } | |
372 |
|
374 | |||
373 | fields = [] |
|
375 | fields = [] | |
374 | today = User.current.today |
|
376 | today = User.current.today | |
375 | 12.times {|m| fields << month_name(((today.month - 1 - m) % 12) + 1)} |
|
377 | 12.times {|m| fields << month_name(((today.month - 1 - m) % 12) + 1)} | |
376 |
|
378 | |||
377 | graph = SVG::Graph::Bar.new( |
|
379 | graph = SVG::Graph::Bar.new( | |
378 | :height => 300, |
|
380 | :height => 300, | |
379 | :width => 800, |
|
381 | :width => 800, | |
380 | :fields => fields.reverse, |
|
382 | :fields => fields.reverse, | |
381 | :stack => :side, |
|
383 | :stack => :side, | |
382 | :scale_integers => true, |
|
384 | :scale_integers => true, | |
383 | :step_x_labels => 2, |
|
385 | :step_x_labels => 2, | |
384 | :show_data_values => false, |
|
386 | :show_data_values => false, | |
385 | :graph_title => l(:label_commits_per_month), |
|
387 | :graph_title => l(:label_commits_per_month), | |
386 | :show_graph_title => true |
|
388 | :show_graph_title => true | |
387 | ) |
|
389 | ) | |
388 |
|
390 | |||
389 | graph.add_data( |
|
391 | graph.add_data( | |
390 | :data => commits_by_month[0..11].reverse, |
|
392 | :data => commits_by_month[0..11].reverse, | |
391 | :title => l(:label_revision_plural) |
|
393 | :title => l(:label_revision_plural) | |
392 | ) |
|
394 | ) | |
393 |
|
395 | |||
394 | graph.add_data( |
|
396 | graph.add_data( | |
395 | :data => changes_by_month[0..11].reverse, |
|
397 | :data => changes_by_month[0..11].reverse, | |
396 | :title => l(:label_change_plural) |
|
398 | :title => l(:label_change_plural) | |
397 | ) |
|
399 | ) | |
398 |
|
400 | |||
399 | graph.burn |
|
401 | graph.burn | |
400 | end |
|
402 | end | |
401 |
|
403 | |||
402 | def graph_commits_per_author(repository) |
|
404 | def graph_commits_per_author(repository) | |
403 | #data |
|
405 | #data | |
404 | stats = repository.stats_by_author |
|
406 | stats = repository.stats_by_author | |
405 | fields, commits_data, changes_data = [], [], [] |
|
407 | fields, commits_data, changes_data = [], [], [] | |
406 | stats.each do |name, hsh| |
|
408 | stats.each do |name, hsh| | |
407 | fields << name |
|
409 | fields << name | |
408 | commits_data << hsh[:commits_count] |
|
410 | commits_data << hsh[:commits_count] | |
409 | changes_data << hsh[:changes_count] |
|
411 | changes_data << hsh[:changes_count] | |
410 | end |
|
412 | end | |
411 |
|
413 | |||
412 | #expand to 10 values if needed |
|
414 | #expand to 10 values if needed | |
413 | fields = fields + [""]*(10 - fields.length) if fields.length<10 |
|
415 | fields = fields + [""]*(10 - fields.length) if fields.length<10 | |
414 | commits_data = commits_data + [0]*(10 - commits_data.length) if commits_data.length<10 |
|
416 | commits_data = commits_data + [0]*(10 - commits_data.length) if commits_data.length<10 | |
415 | changes_data = changes_data + [0]*(10 - changes_data.length) if changes_data.length<10 |
|
417 | changes_data = changes_data + [0]*(10 - changes_data.length) if changes_data.length<10 | |
416 |
|
418 | |||
417 | # Remove email address in usernames |
|
419 | # Remove email address in usernames | |
418 | fields = fields.collect {|c| c.gsub(%r{<.+@.+>}, '') } |
|
420 | fields = fields.collect {|c| c.gsub(%r{<.+@.+>}, '') } | |
419 |
|
421 | |||
420 | #prepare graph |
|
422 | #prepare graph | |
421 | graph = SVG::Graph::BarHorizontal.new( |
|
423 | graph = SVG::Graph::BarHorizontal.new( | |
422 | :height => 30 * commits_data.length, |
|
424 | :height => 30 * commits_data.length, | |
423 | :width => 800, |
|
425 | :width => 800, | |
424 | :fields => fields, |
|
426 | :fields => fields, | |
425 | :stack => :side, |
|
427 | :stack => :side, | |
426 | :scale_integers => true, |
|
428 | :scale_integers => true, | |
427 | :show_data_values => false, |
|
429 | :show_data_values => false, | |
428 | :rotate_y_labels => false, |
|
430 | :rotate_y_labels => false, | |
429 | :graph_title => l(:label_commits_per_author), |
|
431 | :graph_title => l(:label_commits_per_author), | |
430 | :show_graph_title => true |
|
432 | :show_graph_title => true | |
431 | ) |
|
433 | ) | |
432 | graph.add_data( |
|
434 | graph.add_data( | |
433 | :data => commits_data, |
|
435 | :data => commits_data, | |
434 | :title => l(:label_revision_plural) |
|
436 | :title => l(:label_revision_plural) | |
435 | ) |
|
437 | ) | |
436 | graph.add_data( |
|
438 | graph.add_data( | |
437 | :data => changes_data, |
|
439 | :data => changes_data, | |
438 | :title => l(:label_change_plural) |
|
440 | :title => l(:label_change_plural) | |
439 | ) |
|
441 | ) | |
440 | graph.burn |
|
442 | graph.burn | |
441 | end |
|
443 | end | |
442 | end |
|
444 | end |
@@ -1,19 +1,21 | |||||
1 | <%= call_hook(:view_repositories_show_contextual, { :repository => @repository, :project => @project }) %> |
|
1 | <%= call_hook(:view_repositories_show_contextual, { :repository => @repository, :project => @project }) %> | |
2 |
|
2 | |||
3 | <div class="contextual"> |
|
3 | <div class="contextual"> | |
4 | <%= render :partial => 'navigation' %> |
|
4 | <%= render :partial => 'navigation' %> | |
5 | </div> |
|
5 | </div> | |
6 |
|
6 | |||
7 | <h2><%= render :partial => 'breadcrumbs', :locals => { :path => @path, :kind => 'file', :revision => @rev } %></h2> |
|
7 | <h2><%= render :partial => 'breadcrumbs', :locals => { :path => @path, :kind => 'file', :revision => @rev } %></h2> | |
8 |
|
8 | |||
9 | <%= render :partial => 'link_to_functions' %> |
|
9 | <%= render :partial => 'link_to_functions' %> | |
10 |
|
10 | |||
11 | <% if Redmine::MimeType.is_type?('image', @path) %> |
|
11 | <% if Redmine::MimeType.is_type?('image', @path) %> | |
12 | <%= render :partial => 'common/image', :locals => {:path => url_for(params.merge(:action => 'raw')), :alt => @path} %> |
|
12 | <%= render :partial => 'common/image', :locals => {:path => url_for(params.merge(:action => 'raw')), :alt => @path} %> | |
13 | <% else %> |
|
13 | <% elsif @content %> | |
14 | <%= render :partial => 'common/file', :locals => {:filename => @path, :content => @content} %> |
|
14 | <%= render :partial => 'common/file', :locals => {:filename => @path, :content => @content} %> | |
|
15 | <% else %> | |||
|
16 | <%= render :partial => 'common/other' %> | |||
15 | <% end %> |
|
17 | <% end %> | |
16 |
|
18 | |||
17 | <% content_for :header_tags do %> |
|
19 | <% content_for :header_tags do %> | |
18 | <%= stylesheet_link_tag "scm" %> |
|
20 | <%= stylesheet_link_tag "scm" %> | |
19 | <% end %> |
|
21 | <% end %> |
@@ -1,1204 +1,1205 | |||||
1 | # German translations for Ruby on Rails |
|
1 | # German translations for Ruby on Rails | |
2 | # by Clemens Kofler (clemens@railway.at) |
|
2 | # by Clemens Kofler (clemens@railway.at) | |
3 | # additions for Redmine 1.2 by Jens Martsch (jmartsch@gmail.com) |
|
3 | # additions for Redmine 1.2 by Jens Martsch (jmartsch@gmail.com) | |
4 |
|
4 | |||
5 | de: |
|
5 | de: | |
6 | direction: ltr |
|
6 | direction: ltr | |
7 | date: |
|
7 | date: | |
8 | formats: |
|
8 | formats: | |
9 | # Use the strftime parameters for formats. |
|
9 | # Use the strftime parameters for formats. | |
10 | # When no format has been given, it uses default. |
|
10 | # When no format has been given, it uses default. | |
11 | # You can provide other formats here if you like! |
|
11 | # You can provide other formats here if you like! | |
12 | default: "%d.%m.%Y" |
|
12 | default: "%d.%m.%Y" | |
13 | short: "%e. %b" |
|
13 | short: "%e. %b" | |
14 | long: "%e. %B %Y" |
|
14 | long: "%e. %B %Y" | |
15 |
|
15 | |||
16 | day_names: [Sonntag, Montag, Dienstag, Mittwoch, Donnerstag, Freitag, Samstag] |
|
16 | day_names: [Sonntag, Montag, Dienstag, Mittwoch, Donnerstag, Freitag, Samstag] | |
17 | abbr_day_names: [So, Mo, Di, Mi, Do, Fr, Sa] |
|
17 | abbr_day_names: [So, Mo, Di, Mi, Do, Fr, Sa] | |
18 |
|
18 | |||
19 | # Don't forget the nil at the beginning; there's no such thing as a 0th month |
|
19 | # Don't forget the nil at the beginning; there's no such thing as a 0th month | |
20 | month_names: [~, Januar, Februar, März, April, Mai, Juni, Juli, August, September, Oktober, November, Dezember] |
|
20 | month_names: [~, Januar, Februar, März, April, Mai, Juni, Juli, August, September, Oktober, November, Dezember] | |
21 | abbr_month_names: [~, Jan, Feb, Mär, Apr, Mai, Jun, Jul, Aug, Sep, Okt, Nov, Dez] |
|
21 | abbr_month_names: [~, Jan, Feb, Mär, Apr, Mai, Jun, Jul, Aug, Sep, Okt, Nov, Dez] | |
22 | # Used in date_select and datime_select. |
|
22 | # Used in date_select and datime_select. | |
23 | order: |
|
23 | order: | |
24 | - :day |
|
24 | - :day | |
25 | - :month |
|
25 | - :month | |
26 | - :year |
|
26 | - :year | |
27 |
|
27 | |||
28 | time: |
|
28 | time: | |
29 | formats: |
|
29 | formats: | |
30 | default: "%d.%m.%Y %H:%M" |
|
30 | default: "%d.%m.%Y %H:%M" | |
31 | time: "%H:%M" |
|
31 | time: "%H:%M" | |
32 | short: "%e. %b %H:%M" |
|
32 | short: "%e. %b %H:%M" | |
33 | long: "%A, %e. %B %Y, %H:%M Uhr" |
|
33 | long: "%A, %e. %B %Y, %H:%M Uhr" | |
34 | am: "vormittags" |
|
34 | am: "vormittags" | |
35 | pm: "nachmittags" |
|
35 | pm: "nachmittags" | |
36 |
|
36 | |||
37 | datetime: |
|
37 | datetime: | |
38 | distance_in_words: |
|
38 | distance_in_words: | |
39 | half_a_minute: 'eine halbe Minute' |
|
39 | half_a_minute: 'eine halbe Minute' | |
40 | less_than_x_seconds: |
|
40 | less_than_x_seconds: | |
41 | one: 'weniger als 1 Sekunde' |
|
41 | one: 'weniger als 1 Sekunde' | |
42 | other: 'weniger als %{count} Sekunden' |
|
42 | other: 'weniger als %{count} Sekunden' | |
43 | x_seconds: |
|
43 | x_seconds: | |
44 | one: '1 Sekunde' |
|
44 | one: '1 Sekunde' | |
45 | other: '%{count} Sekunden' |
|
45 | other: '%{count} Sekunden' | |
46 | less_than_x_minutes: |
|
46 | less_than_x_minutes: | |
47 | one: 'weniger als 1 Minute' |
|
47 | one: 'weniger als 1 Minute' | |
48 | other: 'weniger als %{count} Minuten' |
|
48 | other: 'weniger als %{count} Minuten' | |
49 | x_minutes: |
|
49 | x_minutes: | |
50 | one: '1 Minute' |
|
50 | one: '1 Minute' | |
51 | other: '%{count} Minuten' |
|
51 | other: '%{count} Minuten' | |
52 | about_x_hours: |
|
52 | about_x_hours: | |
53 | one: 'etwa 1 Stunde' |
|
53 | one: 'etwa 1 Stunde' | |
54 | other: 'etwa %{count} Stunden' |
|
54 | other: 'etwa %{count} Stunden' | |
55 | x_hours: |
|
55 | x_hours: | |
56 | one: "1 Stunde" |
|
56 | one: "1 Stunde" | |
57 | other: "%{count} Stunden" |
|
57 | other: "%{count} Stunden" | |
58 | x_days: |
|
58 | x_days: | |
59 | one: '1 Tag' |
|
59 | one: '1 Tag' | |
60 | other: '%{count} Tagen' |
|
60 | other: '%{count} Tagen' | |
61 | about_x_months: |
|
61 | about_x_months: | |
62 | one: 'etwa 1 Monat' |
|
62 | one: 'etwa 1 Monat' | |
63 | other: 'etwa %{count} Monaten' |
|
63 | other: 'etwa %{count} Monaten' | |
64 | x_months: |
|
64 | x_months: | |
65 | one: '1 Monat' |
|
65 | one: '1 Monat' | |
66 | other: '%{count} Monaten' |
|
66 | other: '%{count} Monaten' | |
67 | about_x_years: |
|
67 | about_x_years: | |
68 | one: 'etwa 1 Jahr' |
|
68 | one: 'etwa 1 Jahr' | |
69 | other: 'etwa %{count} Jahren' |
|
69 | other: 'etwa %{count} Jahren' | |
70 | over_x_years: |
|
70 | over_x_years: | |
71 | one: 'mehr als 1 Jahr' |
|
71 | one: 'mehr als 1 Jahr' | |
72 | other: 'mehr als %{count} Jahren' |
|
72 | other: 'mehr als %{count} Jahren' | |
73 | almost_x_years: |
|
73 | almost_x_years: | |
74 | one: "fast 1 Jahr" |
|
74 | one: "fast 1 Jahr" | |
75 | other: "fast %{count} Jahren" |
|
75 | other: "fast %{count} Jahren" | |
76 |
|
76 | |||
77 | number: |
|
77 | number: | |
78 | # Default format for numbers |
|
78 | # Default format for numbers | |
79 | format: |
|
79 | format: | |
80 | separator: ',' |
|
80 | separator: ',' | |
81 | delimiter: '.' |
|
81 | delimiter: '.' | |
82 | precision: 2 |
|
82 | precision: 2 | |
83 | currency: |
|
83 | currency: | |
84 | format: |
|
84 | format: | |
85 | unit: '€' |
|
85 | unit: '€' | |
86 | format: '%n %u' |
|
86 | format: '%n %u' | |
87 | delimiter: '' |
|
87 | delimiter: '' | |
88 | percentage: |
|
88 | percentage: | |
89 | format: |
|
89 | format: | |
90 | delimiter: "" |
|
90 | delimiter: "" | |
91 | precision: |
|
91 | precision: | |
92 | format: |
|
92 | format: | |
93 | delimiter: "" |
|
93 | delimiter: "" | |
94 | human: |
|
94 | human: | |
95 | format: |
|
95 | format: | |
96 | delimiter: "" |
|
96 | delimiter: "" | |
97 | precision: 3 |
|
97 | precision: 3 | |
98 | storage_units: |
|
98 | storage_units: | |
99 | format: "%n %u" |
|
99 | format: "%n %u" | |
100 | units: |
|
100 | units: | |
101 | byte: |
|
101 | byte: | |
102 | one: "Byte" |
|
102 | one: "Byte" | |
103 | other: "Bytes" |
|
103 | other: "Bytes" | |
104 | kb: "KB" |
|
104 | kb: "KB" | |
105 | mb: "MB" |
|
105 | mb: "MB" | |
106 | gb: "GB" |
|
106 | gb: "GB" | |
107 | tb: "TB" |
|
107 | tb: "TB" | |
108 |
|
108 | |||
109 | # Used in array.to_sentence. |
|
109 | # Used in array.to_sentence. | |
110 | support: |
|
110 | support: | |
111 | array: |
|
111 | array: | |
112 | sentence_connector: "und" |
|
112 | sentence_connector: "und" | |
113 | skip_last_comma: true |
|
113 | skip_last_comma: true | |
114 |
|
114 | |||
115 | activerecord: |
|
115 | activerecord: | |
116 | errors: |
|
116 | errors: | |
117 | template: |
|
117 | template: | |
118 | header: |
|
118 | header: | |
119 | one: "Dieses %{model}-Objekt konnte nicht gespeichert werden: %{count} Fehler." |
|
119 | one: "Dieses %{model}-Objekt konnte nicht gespeichert werden: %{count} Fehler." | |
120 | other: "Dieses %{model}-Objekt konnte nicht gespeichert werden: %{count} Fehler." |
|
120 | other: "Dieses %{model}-Objekt konnte nicht gespeichert werden: %{count} Fehler." | |
121 | body: "Bitte überprüfen Sie die folgenden Felder:" |
|
121 | body: "Bitte überprüfen Sie die folgenden Felder:" | |
122 |
|
122 | |||
123 | messages: |
|
123 | messages: | |
124 | inclusion: "ist kein gültiger Wert" |
|
124 | inclusion: "ist kein gültiger Wert" | |
125 | exclusion: "ist nicht verfügbar" |
|
125 | exclusion: "ist nicht verfügbar" | |
126 | invalid: "ist nicht gültig" |
|
126 | invalid: "ist nicht gültig" | |
127 | confirmation: "stimmt nicht mit der Bestätigung überein" |
|
127 | confirmation: "stimmt nicht mit der Bestätigung überein" | |
128 | accepted: "muss akzeptiert werden" |
|
128 | accepted: "muss akzeptiert werden" | |
129 | empty: "muss ausgefüllt werden" |
|
129 | empty: "muss ausgefüllt werden" | |
130 | blank: "muss ausgefüllt werden" |
|
130 | blank: "muss ausgefüllt werden" | |
131 | too_long: "ist zu lang (nicht mehr als %{count} Zeichen)" |
|
131 | too_long: "ist zu lang (nicht mehr als %{count} Zeichen)" | |
132 | too_short: "ist zu kurz (nicht weniger als %{count} Zeichen)" |
|
132 | too_short: "ist zu kurz (nicht weniger als %{count} Zeichen)" | |
133 | wrong_length: "hat die falsche Länge (muss genau %{count} Zeichen haben)" |
|
133 | wrong_length: "hat die falsche Länge (muss genau %{count} Zeichen haben)" | |
134 | taken: "ist bereits vergeben" |
|
134 | taken: "ist bereits vergeben" | |
135 | not_a_number: "ist keine Zahl" |
|
135 | not_a_number: "ist keine Zahl" | |
136 | not_a_date: "ist kein gültiges Datum" |
|
136 | not_a_date: "ist kein gültiges Datum" | |
137 | greater_than: "muss größer als %{count} sein" |
|
137 | greater_than: "muss größer als %{count} sein" | |
138 | greater_than_or_equal_to: "muss größer oder gleich %{count} sein" |
|
138 | greater_than_or_equal_to: "muss größer oder gleich %{count} sein" | |
139 | equal_to: "muss genau %{count} sein" |
|
139 | equal_to: "muss genau %{count} sein" | |
140 | less_than: "muss kleiner als %{count} sein" |
|
140 | less_than: "muss kleiner als %{count} sein" | |
141 | less_than_or_equal_to: "muss kleiner oder gleich %{count} sein" |
|
141 | less_than_or_equal_to: "muss kleiner oder gleich %{count} sein" | |
142 | odd: "muss ungerade sein" |
|
142 | odd: "muss ungerade sein" | |
143 | even: "muss gerade sein" |
|
143 | even: "muss gerade sein" | |
144 | greater_than_start_date: "muss größer als Anfangsdatum sein" |
|
144 | greater_than_start_date: "muss größer als Anfangsdatum sein" | |
145 | not_same_project: "gehört nicht zum selben Projekt" |
|
145 | not_same_project: "gehört nicht zum selben Projekt" | |
146 | circular_dependency: "Diese Beziehung würde eine zyklische Abhängigkeit erzeugen" |
|
146 | circular_dependency: "Diese Beziehung würde eine zyklische Abhängigkeit erzeugen" | |
147 | cant_link_an_issue_with_a_descendant: "Ein Ticket kann nicht mit einer Ihrer Unteraufgaben verlinkt werden" |
|
147 | cant_link_an_issue_with_a_descendant: "Ein Ticket kann nicht mit einer Ihrer Unteraufgaben verlinkt werden" | |
148 | earlier_than_minimum_start_date: "cannot be earlier than %{date} because of preceding issues" |
|
148 | earlier_than_minimum_start_date: "cannot be earlier than %{date} because of preceding issues" | |
149 |
|
149 | |||
150 | actionview_instancetag_blank_option: Bitte auswählen |
|
150 | actionview_instancetag_blank_option: Bitte auswählen | |
151 |
|
151 | |||
152 | button_activate: Aktivieren |
|
152 | button_activate: Aktivieren | |
153 | button_add: Hinzufügen |
|
153 | button_add: Hinzufügen | |
154 | button_annotate: Annotieren |
|
154 | button_annotate: Annotieren | |
155 | button_apply: Anwenden |
|
155 | button_apply: Anwenden | |
156 | button_archive: Archivieren |
|
156 | button_archive: Archivieren | |
157 | button_back: Zurück |
|
157 | button_back: Zurück | |
158 | button_cancel: Abbrechen |
|
158 | button_cancel: Abbrechen | |
159 | button_change: Wechseln |
|
159 | button_change: Wechseln | |
160 | button_change_password: Passwort ändern |
|
160 | button_change_password: Passwort ändern | |
161 | button_check_all: Alles auswählen |
|
161 | button_check_all: Alles auswählen | |
162 | button_clear: Zurücksetzen |
|
162 | button_clear: Zurücksetzen | |
163 | button_close: Schließen |
|
163 | button_close: Schließen | |
164 | button_collapse_all: Alle einklappen |
|
164 | button_collapse_all: Alle einklappen | |
165 | button_configure: Konfigurieren |
|
165 | button_configure: Konfigurieren | |
166 | button_copy: Kopieren |
|
166 | button_copy: Kopieren | |
167 | button_copy_and_follow: Kopieren und Ticket anzeigen |
|
167 | button_copy_and_follow: Kopieren und Ticket anzeigen | |
168 | button_create: Anlegen |
|
168 | button_create: Anlegen | |
169 | button_create_and_continue: Anlegen und weiter |
|
169 | button_create_and_continue: Anlegen und weiter | |
170 | button_delete: Löschen |
|
170 | button_delete: Löschen | |
171 | button_delete_my_account: Mein Benutzerkonto löschen |
|
171 | button_delete_my_account: Mein Benutzerkonto löschen | |
172 | button_download: Download |
|
172 | button_download: Download | |
173 | button_duplicate: Duplizieren |
|
173 | button_duplicate: Duplizieren | |
174 | button_edit: Bearbeiten |
|
174 | button_edit: Bearbeiten | |
175 | button_edit_associated_wikipage: "Zugehörige Wikiseite bearbeiten: %{page_title}" |
|
175 | button_edit_associated_wikipage: "Zugehörige Wikiseite bearbeiten: %{page_title}" | |
176 | button_edit_section: Diesen Bereich bearbeiten |
|
176 | button_edit_section: Diesen Bereich bearbeiten | |
177 | button_expand_all: Alle ausklappen |
|
177 | button_expand_all: Alle ausklappen | |
178 | button_export: Exportieren |
|
178 | button_export: Exportieren | |
179 | button_hide: Verstecken |
|
179 | button_hide: Verstecken | |
180 | button_list: Liste |
|
180 | button_list: Liste | |
181 | button_lock: Sperren |
|
181 | button_lock: Sperren | |
182 | button_log_time: Aufwand buchen |
|
182 | button_log_time: Aufwand buchen | |
183 | button_login: Anmelden |
|
183 | button_login: Anmelden | |
184 | button_move: Verschieben |
|
184 | button_move: Verschieben | |
185 | button_move_and_follow: Verschieben und Ticket anzeigen |
|
185 | button_move_and_follow: Verschieben und Ticket anzeigen | |
186 | button_quote: Zitieren |
|
186 | button_quote: Zitieren | |
187 | button_rename: Umbenennen |
|
187 | button_rename: Umbenennen | |
188 | button_reopen: Öffnen |
|
188 | button_reopen: Öffnen | |
189 | button_reply: Antworten |
|
189 | button_reply: Antworten | |
190 | button_reset: Zurücksetzen |
|
190 | button_reset: Zurücksetzen | |
191 | button_rollback: Auf diese Version zurücksetzen |
|
191 | button_rollback: Auf diese Version zurücksetzen | |
192 | button_save: Speichern |
|
192 | button_save: Speichern | |
193 | button_show: Anzeigen |
|
193 | button_show: Anzeigen | |
194 | button_sort: Sortieren |
|
194 | button_sort: Sortieren | |
195 | button_submit: OK |
|
195 | button_submit: OK | |
196 | button_test: Testen |
|
196 | button_test: Testen | |
197 | button_unarchive: Entarchivieren |
|
197 | button_unarchive: Entarchivieren | |
198 | button_uncheck_all: Alles abwählen |
|
198 | button_uncheck_all: Alles abwählen | |
199 | button_unlock: Entsperren |
|
199 | button_unlock: Entsperren | |
200 | button_unwatch: Nicht beobachten |
|
200 | button_unwatch: Nicht beobachten | |
201 | button_update: Aktualisieren |
|
201 | button_update: Aktualisieren | |
202 | button_view: Anzeigen |
|
202 | button_view: Anzeigen | |
203 | button_watch: Beobachten |
|
203 | button_watch: Beobachten | |
204 |
|
204 | |||
205 | default_activity_design: Design |
|
205 | default_activity_design: Design | |
206 | default_activity_development: Entwicklung |
|
206 | default_activity_development: Entwicklung | |
207 | default_doc_category_tech: Technische Dokumentation |
|
207 | default_doc_category_tech: Technische Dokumentation | |
208 | default_doc_category_user: Benutzerdokumentation |
|
208 | default_doc_category_user: Benutzerdokumentation | |
209 | default_issue_status_closed: Erledigt |
|
209 | default_issue_status_closed: Erledigt | |
210 | default_issue_status_feedback: Feedback |
|
210 | default_issue_status_feedback: Feedback | |
211 | default_issue_status_in_progress: In Bearbeitung |
|
211 | default_issue_status_in_progress: In Bearbeitung | |
212 | default_issue_status_new: Neu |
|
212 | default_issue_status_new: Neu | |
213 | default_issue_status_rejected: Abgewiesen |
|
213 | default_issue_status_rejected: Abgewiesen | |
214 | default_issue_status_resolved: Gelöst |
|
214 | default_issue_status_resolved: Gelöst | |
215 | default_priority_high: Hoch |
|
215 | default_priority_high: Hoch | |
216 | default_priority_immediate: Sofort |
|
216 | default_priority_immediate: Sofort | |
217 | default_priority_low: Niedrig |
|
217 | default_priority_low: Niedrig | |
218 | default_priority_normal: Normal |
|
218 | default_priority_normal: Normal | |
219 | default_priority_urgent: Dringend |
|
219 | default_priority_urgent: Dringend | |
220 | default_role_developer: Entwickler |
|
220 | default_role_developer: Entwickler | |
221 | default_role_manager: Manager |
|
221 | default_role_manager: Manager | |
222 | default_role_reporter: Reporter |
|
222 | default_role_reporter: Reporter | |
223 | default_tracker_bug: Fehler |
|
223 | default_tracker_bug: Fehler | |
224 | default_tracker_feature: Feature |
|
224 | default_tracker_feature: Feature | |
225 | default_tracker_support: Unterstützung |
|
225 | default_tracker_support: Unterstützung | |
226 |
|
226 | |||
227 | description_all_columns: Alle Spalten |
|
227 | description_all_columns: Alle Spalten | |
228 | description_available_columns: Verfügbare Spalten |
|
228 | description_available_columns: Verfügbare Spalten | |
229 | description_choose_project: Projekte |
|
229 | description_choose_project: Projekte | |
230 | description_date_from: Startdatum eintragen |
|
230 | description_date_from: Startdatum eintragen | |
231 | description_date_range_interval: Zeitraum durch Start- und Enddatum festlegen |
|
231 | description_date_range_interval: Zeitraum durch Start- und Enddatum festlegen | |
232 | description_date_range_list: Zeitraum aus einer Liste wählen |
|
232 | description_date_range_list: Zeitraum aus einer Liste wählen | |
233 | description_date_to: Enddatum eintragen |
|
233 | description_date_to: Enddatum eintragen | |
234 | description_filter: Filter |
|
234 | description_filter: Filter | |
235 | description_issue_category_reassign: Neue Kategorie wählen |
|
235 | description_issue_category_reassign: Neue Kategorie wählen | |
236 | description_message_content: Nachrichteninhalt |
|
236 | description_message_content: Nachrichteninhalt | |
237 | description_notes: Kommentare |
|
237 | description_notes: Kommentare | |
238 | description_project_scope: Suchbereich |
|
238 | description_project_scope: Suchbereich | |
239 | description_query_sort_criteria_attribute: Sortierattribut |
|
239 | description_query_sort_criteria_attribute: Sortierattribut | |
240 | description_query_sort_criteria_direction: Sortierrichtung |
|
240 | description_query_sort_criteria_direction: Sortierrichtung | |
241 | description_search: Suchfeld |
|
241 | description_search: Suchfeld | |
242 | description_selected_columns: Ausgewählte Spalten |
|
242 | description_selected_columns: Ausgewählte Spalten | |
243 |
|
243 | |||
244 | description_user_mail_notification: Mailbenachrichtigungseinstellung |
|
244 | description_user_mail_notification: Mailbenachrichtigungseinstellung | |
245 | description_wiki_subpages_reassign: Neue Elternseite wählen |
|
245 | description_wiki_subpages_reassign: Neue Elternseite wählen | |
246 |
|
246 | |||
247 | enumeration_activities: Aktivitäten (Zeiterfassung) |
|
247 | enumeration_activities: Aktivitäten (Zeiterfassung) | |
248 | enumeration_doc_categories: Dokumentenkategorien |
|
248 | enumeration_doc_categories: Dokumentenkategorien | |
249 | enumeration_issue_priorities: Ticket-Prioritäten |
|
249 | enumeration_issue_priorities: Ticket-Prioritäten | |
250 | enumeration_system_activity: System-Aktivität |
|
250 | enumeration_system_activity: System-Aktivität | |
251 |
|
251 | |||
252 | error_attachment_too_big: Diese Datei kann nicht hochgeladen werden, da sie die maximale Dateigröße von (%{max_size}) überschreitet. |
|
252 | error_attachment_too_big: Diese Datei kann nicht hochgeladen werden, da sie die maximale Dateigröße von (%{max_size}) überschreitet. | |
253 | error_can_not_archive_project: Dieses Projekt kann nicht archiviert werden. |
|
253 | error_can_not_archive_project: Dieses Projekt kann nicht archiviert werden. | |
254 | error_can_not_delete_custom_field: Kann das benutzerdefinierte Feld nicht löschen. |
|
254 | error_can_not_delete_custom_field: Kann das benutzerdefinierte Feld nicht löschen. | |
255 | error_can_not_delete_tracker: Dieser Tracker enthält Tickets und kann nicht gelöscht werden. |
|
255 | error_can_not_delete_tracker: Dieser Tracker enthält Tickets und kann nicht gelöscht werden. | |
256 | error_can_not_remove_role: Diese Rolle wird verwendet und kann nicht gelöscht werden. |
|
256 | error_can_not_remove_role: Diese Rolle wird verwendet und kann nicht gelöscht werden. | |
257 | error_can_not_reopen_issue_on_closed_version: Das Ticket ist einer abgeschlossenen Version zugeordnet und kann daher nicht wieder geöffnet werden. |
|
257 | error_can_not_reopen_issue_on_closed_version: Das Ticket ist einer abgeschlossenen Version zugeordnet und kann daher nicht wieder geöffnet werden. | |
258 | error_can_t_load_default_data: "Die Standard-Konfiguration konnte nicht geladen werden: %{value}" |
|
258 | error_can_t_load_default_data: "Die Standard-Konfiguration konnte nicht geladen werden: %{value}" | |
259 | error_issue_done_ratios_not_updated: Der Ticket-Fortschritt wurde nicht aktualisiert. |
|
259 | error_issue_done_ratios_not_updated: Der Ticket-Fortschritt wurde nicht aktualisiert. | |
260 | error_issue_not_found_in_project: 'Das Ticket wurde nicht gefunden oder gehört nicht zu diesem Projekt.' |
|
260 | error_issue_not_found_in_project: 'Das Ticket wurde nicht gefunden oder gehört nicht zu diesem Projekt.' | |
261 | error_no_default_issue_status: Es ist kein Status als Standard definiert. Bitte überprüfen Sie Ihre Konfiguration (unter "Administration -> Ticket-Status"). |
|
261 | error_no_default_issue_status: Es ist kein Status als Standard definiert. Bitte überprüfen Sie Ihre Konfiguration (unter "Administration -> Ticket-Status"). | |
262 | error_no_tracker_in_project: Diesem Projekt ist kein Tracker zugeordnet. Bitte überprüfen Sie die Projekteinstellungen. |
|
262 | error_no_tracker_in_project: Diesem Projekt ist kein Tracker zugeordnet. Bitte überprüfen Sie die Projekteinstellungen. | |
263 | error_scm_annotate: "Der Eintrag existiert nicht oder kann nicht annotiert werden." |
|
263 | error_scm_annotate: "Der Eintrag existiert nicht oder kann nicht annotiert werden." | |
264 | error_scm_annotate_big_text_file: Der Eintrag kann nicht umgesetzt werden, da er die maximale Textlänge überschreitet. |
|
264 | error_scm_annotate_big_text_file: Der Eintrag kann nicht umgesetzt werden, da er die maximale Textlänge überschreitet. | |
265 | error_scm_command_failed: "Beim Zugriff auf das Projektarchiv ist ein Fehler aufgetreten: %{value}" |
|
265 | error_scm_command_failed: "Beim Zugriff auf das Projektarchiv ist ein Fehler aufgetreten: %{value}" | |
266 | error_scm_not_found: Eintrag und/oder Revision existiert nicht im Projektarchiv. |
|
266 | error_scm_not_found: Eintrag und/oder Revision existiert nicht im Projektarchiv. | |
267 | error_session_expired: Ihre Sitzung ist abgelaufen. Bitte melden Sie sich erneut an. |
|
267 | error_session_expired: Ihre Sitzung ist abgelaufen. Bitte melden Sie sich erneut an. | |
268 | error_unable_delete_issue_status: "Der Ticket-Status konnte nicht gelöscht werden." |
|
268 | error_unable_delete_issue_status: "Der Ticket-Status konnte nicht gelöscht werden." | |
269 | error_unable_to_connect: Fehler beim Verbinden (%{value}) |
|
269 | error_unable_to_connect: Fehler beim Verbinden (%{value}) | |
270 | error_workflow_copy_source: Bitte wählen Sie einen Quell-Tracker und eine Quell-Rolle. |
|
270 | error_workflow_copy_source: Bitte wählen Sie einen Quell-Tracker und eine Quell-Rolle. | |
271 | error_workflow_copy_target: Bitte wählen Sie die Ziel-Tracker und -Rollen. |
|
271 | error_workflow_copy_target: Bitte wählen Sie die Ziel-Tracker und -Rollen. | |
272 |
|
272 | |||
273 | field_account: Konto |
|
273 | field_account: Konto | |
274 | field_active: Aktiv |
|
274 | field_active: Aktiv | |
275 | field_activity: Aktivität |
|
275 | field_activity: Aktivität | |
276 | field_admin: Administrator |
|
276 | field_admin: Administrator | |
277 | field_assignable: Tickets können dieser Rolle zugewiesen werden |
|
277 | field_assignable: Tickets können dieser Rolle zugewiesen werden | |
278 | field_assigned_to: Zugewiesen an |
|
278 | field_assigned_to: Zugewiesen an | |
279 | field_assigned_to_role: Zuständigkeitsrolle |
|
279 | field_assigned_to_role: Zuständigkeitsrolle | |
280 | field_attr_firstname: Vorname-Attribut |
|
280 | field_attr_firstname: Vorname-Attribut | |
281 | field_attr_lastname: Name-Attribut |
|
281 | field_attr_lastname: Name-Attribut | |
282 | field_attr_login: Mitgliedsname-Attribut |
|
282 | field_attr_login: Mitgliedsname-Attribut | |
283 | field_attr_mail: E-Mail-Attribut |
|
283 | field_attr_mail: E-Mail-Attribut | |
284 | field_auth_source: Authentifizierungs-Modus |
|
284 | field_auth_source: Authentifizierungs-Modus | |
285 | field_auth_source_ldap_filter: LDAP-Filter |
|
285 | field_auth_source_ldap_filter: LDAP-Filter | |
286 | field_author: Autor |
|
286 | field_author: Autor | |
287 | field_base_dn: Base DN |
|
287 | field_base_dn: Base DN | |
288 | field_board_parent: Übergeordnetes Forum |
|
288 | field_board_parent: Übergeordnetes Forum | |
289 | field_category: Kategorie |
|
289 | field_category: Kategorie | |
290 | field_column_names: Spalten |
|
290 | field_column_names: Spalten | |
291 | field_closed_on: Geschlossen am |
|
291 | field_closed_on: Geschlossen am | |
292 | field_comments: Kommentar |
|
292 | field_comments: Kommentar | |
293 | field_comments_sorting: Kommentare anzeigen |
|
293 | field_comments_sorting: Kommentare anzeigen | |
294 | field_commit_logs_encoding: Kodierung der Commit-Nachrichten |
|
294 | field_commit_logs_encoding: Kodierung der Commit-Nachrichten | |
295 | field_content: Inhalt |
|
295 | field_content: Inhalt | |
296 | field_core_fields: Standardwerte |
|
296 | field_core_fields: Standardwerte | |
297 | field_created_on: Angelegt |
|
297 | field_created_on: Angelegt | |
298 | field_cvs_module: Modul |
|
298 | field_cvs_module: Modul | |
299 | field_cvsroot: CVSROOT |
|
299 | field_cvsroot: CVSROOT | |
300 | field_default_value: Standardwert |
|
300 | field_default_value: Standardwert | |
301 | field_default_status: Standardstatus |
|
301 | field_default_status: Standardstatus | |
302 | field_delay: Pufferzeit |
|
302 | field_delay: Pufferzeit | |
303 | field_description: Beschreibung |
|
303 | field_description: Beschreibung | |
304 | field_done_ratio: "% erledigt" |
|
304 | field_done_ratio: "% erledigt" | |
305 | field_downloads: Downloads |
|
305 | field_downloads: Downloads | |
306 | field_due_date: Abgabedatum |
|
306 | field_due_date: Abgabedatum | |
307 | field_editable: Bearbeitbar |
|
307 | field_editable: Bearbeitbar | |
308 | field_effective_date: Datum |
|
308 | field_effective_date: Datum | |
309 | field_estimated_hours: Geschätzter Aufwand |
|
309 | field_estimated_hours: Geschätzter Aufwand | |
310 | field_field_format: Format |
|
310 | field_field_format: Format | |
311 | field_filename: Datei |
|
311 | field_filename: Datei | |
312 | field_filesize: Größe |
|
312 | field_filesize: Größe | |
313 | field_firstname: Vorname |
|
313 | field_firstname: Vorname | |
314 | field_fixed_version: Zielversion |
|
314 | field_fixed_version: Zielversion | |
315 | field_generate_password: Passwort generieren |
|
315 | field_generate_password: Passwort generieren | |
316 | field_group_by: Gruppiere Ergebnisse nach |
|
316 | field_group_by: Gruppiere Ergebnisse nach | |
317 | field_hide_mail: E-Mail-Adresse nicht anzeigen |
|
317 | field_hide_mail: E-Mail-Adresse nicht anzeigen | |
318 | field_homepage: Projekt-Homepage |
|
318 | field_homepage: Projekt-Homepage | |
319 | field_host: Host |
|
319 | field_host: Host | |
320 | field_hours: Stunden |
|
320 | field_hours: Stunden | |
321 | field_identifier: Kennung |
|
321 | field_identifier: Kennung | |
322 | field_identity_url: OpenID-URL |
|
322 | field_identity_url: OpenID-URL | |
323 | field_inherit_members: Benutzer erben |
|
323 | field_inherit_members: Benutzer erben | |
324 | field_is_closed: Ticket geschlossen |
|
324 | field_is_closed: Ticket geschlossen | |
325 | field_is_default: Standardeinstellung |
|
325 | field_is_default: Standardeinstellung | |
326 | field_is_filter: Als Filter benutzen |
|
326 | field_is_filter: Als Filter benutzen | |
327 | field_is_for_all: Für alle Projekte |
|
327 | field_is_for_all: Für alle Projekte | |
328 | field_is_in_roadmap: In der Roadmap anzeigen |
|
328 | field_is_in_roadmap: In der Roadmap anzeigen | |
329 | field_is_private: Privat |
|
329 | field_is_private: Privat | |
330 | field_is_public: Öffentlich |
|
330 | field_is_public: Öffentlich | |
331 | field_is_required: Erforderlich |
|
331 | field_is_required: Erforderlich | |
332 | field_issue: Ticket |
|
332 | field_issue: Ticket | |
333 | field_issue_to: Zugehöriges Ticket |
|
333 | field_issue_to: Zugehöriges Ticket | |
334 | field_issues_visibility: Ticket-Sichtbarkeit |
|
334 | field_issues_visibility: Ticket-Sichtbarkeit | |
335 | field_language: Sprache |
|
335 | field_language: Sprache | |
336 | field_last_login_on: Letzte Anmeldung |
|
336 | field_last_login_on: Letzte Anmeldung | |
337 | field_lastname: Nachname |
|
337 | field_lastname: Nachname | |
338 | field_login: Mitgliedsname |
|
338 | field_login: Mitgliedsname | |
339 | field_mail: E-Mail |
|
339 | field_mail: E-Mail | |
340 | field_mail_notification: Mailbenachrichtigung |
|
340 | field_mail_notification: Mailbenachrichtigung | |
341 | field_max_length: Maximale Länge |
|
341 | field_max_length: Maximale Länge | |
342 | field_member_of_group: Zuständigkeitsgruppe |
|
342 | field_member_of_group: Zuständigkeitsgruppe | |
343 | field_min_length: Minimale Länge |
|
343 | field_min_length: Minimale Länge | |
344 | field_multiple: Mehrere Werte |
|
344 | field_multiple: Mehrere Werte | |
345 | field_must_change_passwd: Passwort beim nächsten Login ändern |
|
345 | field_must_change_passwd: Passwort beim nächsten Login ändern | |
346 | field_name: Name |
|
346 | field_name: Name | |
347 | field_new_password: Neues Passwort |
|
347 | field_new_password: Neues Passwort | |
348 | field_notes: Kommentare |
|
348 | field_notes: Kommentare | |
349 | field_onthefly: On-the-fly-Benutzererstellung |
|
349 | field_onthefly: On-the-fly-Benutzererstellung | |
350 | field_parent: Unterprojekt von |
|
350 | field_parent: Unterprojekt von | |
351 | field_parent_issue: Übergeordnete Aufgabe |
|
351 | field_parent_issue: Übergeordnete Aufgabe | |
352 | field_parent_title: Übergeordnete Seite |
|
352 | field_parent_title: Übergeordnete Seite | |
353 | field_password: Passwort |
|
353 | field_password: Passwort | |
354 | field_password_confirmation: Bestätigung |
|
354 | field_password_confirmation: Bestätigung | |
355 | field_path_to_repository: Pfad zum Repository |
|
355 | field_path_to_repository: Pfad zum Repository | |
356 | field_port: Port |
|
356 | field_port: Port | |
357 | field_possible_values: Mögliche Werte |
|
357 | field_possible_values: Mögliche Werte | |
358 | field_principal: Auftraggeber |
|
358 | field_principal: Auftraggeber | |
359 | field_priority: Priorität |
|
359 | field_priority: Priorität | |
360 | field_private_notes: Privater Kommentar |
|
360 | field_private_notes: Privater Kommentar | |
361 | field_project: Projekt |
|
361 | field_project: Projekt | |
362 | field_redirect_existing_links: Existierende Links umleiten |
|
362 | field_redirect_existing_links: Existierende Links umleiten | |
363 | field_regexp: Regulärer Ausdruck |
|
363 | field_regexp: Regulärer Ausdruck | |
364 | field_repository_is_default: Haupt-Repository |
|
364 | field_repository_is_default: Haupt-Repository | |
365 | field_role: Rolle |
|
365 | field_role: Rolle | |
366 | field_root_directory: Wurzelverzeichnis |
|
366 | field_root_directory: Wurzelverzeichnis | |
367 | field_scm_path_encoding: Pfad-Kodierung |
|
367 | field_scm_path_encoding: Pfad-Kodierung | |
368 | field_searchable: Durchsuchbar |
|
368 | field_searchable: Durchsuchbar | |
369 | field_sharing: Gemeinsame Verwendung |
|
369 | field_sharing: Gemeinsame Verwendung | |
370 | field_spent_on: Datum |
|
370 | field_spent_on: Datum | |
371 | field_start_date: Beginn |
|
371 | field_start_date: Beginn | |
372 | field_start_page: Hauptseite |
|
372 | field_start_page: Hauptseite | |
373 | field_status: Status |
|
373 | field_status: Status | |
374 | field_subject: Thema |
|
374 | field_subject: Thema | |
375 | field_subproject: Unterprojekt von |
|
375 | field_subproject: Unterprojekt von | |
376 | field_summary: Zusammenfassung |
|
376 | field_summary: Zusammenfassung | |
377 | field_text: Textfeld |
|
377 | field_text: Textfeld | |
378 | field_time_entries: Logzeit |
|
378 | field_time_entries: Logzeit | |
379 | field_time_zone: Zeitzone |
|
379 | field_time_zone: Zeitzone | |
380 | field_timeout: Auszeit (in Sekunden) |
|
380 | field_timeout: Auszeit (in Sekunden) | |
381 | field_title: Titel |
|
381 | field_title: Titel | |
382 | field_tracker: Tracker |
|
382 | field_tracker: Tracker | |
383 | field_type: Typ |
|
383 | field_type: Typ | |
384 | field_updated_on: Aktualisiert |
|
384 | field_updated_on: Aktualisiert | |
385 | field_url: URL |
|
385 | field_url: URL | |
386 | field_user: Benutzer |
|
386 | field_user: Benutzer | |
387 | field_users_visibility: Benutzer-Sichtbarkeit |
|
387 | field_users_visibility: Benutzer-Sichtbarkeit | |
388 | field_value: Wert |
|
388 | field_value: Wert | |
389 | field_version: Version |
|
389 | field_version: Version | |
390 | field_visible: Sichtbar |
|
390 | field_visible: Sichtbar | |
391 | field_warn_on_leaving_unsaved: Vor dem Verlassen einer Seite mit ungesichertem Text im Editor warnen |
|
391 | field_warn_on_leaving_unsaved: Vor dem Verlassen einer Seite mit ungesichertem Text im Editor warnen | |
392 | field_watcher: Beobachter |
|
392 | field_watcher: Beobachter | |
393 |
|
393 | |||
394 | general_csv_decimal_separator: ',' |
|
394 | general_csv_decimal_separator: ',' | |
395 | general_csv_encoding: ISO-8859-1 |
|
395 | general_csv_encoding: ISO-8859-1 | |
396 | general_csv_separator: ';' |
|
396 | general_csv_separator: ';' | |
397 | general_pdf_fontname: freesans |
|
397 | general_pdf_fontname: freesans | |
398 | general_pdf_monospaced_fontname: freemono |
|
398 | general_pdf_monospaced_fontname: freemono | |
399 | general_first_day_of_week: '1' |
|
399 | general_first_day_of_week: '1' | |
400 | general_lang_name: 'German (Deutsch)' |
|
400 | general_lang_name: 'German (Deutsch)' | |
401 | general_text_No: 'Nein' |
|
401 | general_text_No: 'Nein' | |
402 | general_text_Yes: 'Ja' |
|
402 | general_text_Yes: 'Ja' | |
403 | general_text_no: 'nein' |
|
403 | general_text_no: 'nein' | |
404 | general_text_yes: 'ja' |
|
404 | general_text_yes: 'ja' | |
405 |
|
405 | |||
406 | label_activity: Aktivität |
|
406 | label_activity: Aktivität | |
407 | label_add_another_file: Eine weitere Datei hinzufügen |
|
407 | label_add_another_file: Eine weitere Datei hinzufügen | |
408 | label_add_note: Kommentar hinzufügen |
|
408 | label_add_note: Kommentar hinzufügen | |
409 | label_add_projects: Projekt hinzufügen |
|
409 | label_add_projects: Projekt hinzufügen | |
410 | label_added: hinzugefügt |
|
410 | label_added: hinzugefügt | |
411 | label_added_time_by: "Von %{author} vor %{age} hinzugefügt" |
|
411 | label_added_time_by: "Von %{author} vor %{age} hinzugefügt" | |
412 | label_additional_workflow_transitions_for_assignee: Zusätzliche Berechtigungen wenn der Benutzer der Zugewiesene ist |
|
412 | label_additional_workflow_transitions_for_assignee: Zusätzliche Berechtigungen wenn der Benutzer der Zugewiesene ist | |
413 | label_additional_workflow_transitions_for_author: Zusätzliche Berechtigungen wenn der Benutzer der Autor ist |
|
413 | label_additional_workflow_transitions_for_author: Zusätzliche Berechtigungen wenn der Benutzer der Autor ist | |
414 | label_administration: Administration |
|
414 | label_administration: Administration | |
415 | label_age: Geändert vor |
|
415 | label_age: Geändert vor | |
416 | label_ago: vor |
|
416 | label_ago: vor | |
417 | label_all: alle |
|
417 | label_all: alle | |
418 | label_all_time: gesamter Zeitraum |
|
418 | label_all_time: gesamter Zeitraum | |
419 | label_all_words: Alle Wörter |
|
419 | label_all_words: Alle Wörter | |
420 | label_and_its_subprojects: "%{value} und dessen Unterprojekte" |
|
420 | label_and_its_subprojects: "%{value} und dessen Unterprojekte" | |
421 | label_any: alle |
|
421 | label_any: alle | |
422 | label_any_issues_in_project: irgendein Ticket im Projekt |
|
422 | label_any_issues_in_project: irgendein Ticket im Projekt | |
423 | label_any_issues_not_in_project: irgendein Ticket nicht im Projekt |
|
423 | label_any_issues_not_in_project: irgendein Ticket nicht im Projekt | |
424 | label_api_access_key: API-Zugriffsschlüssel |
|
424 | label_api_access_key: API-Zugriffsschlüssel | |
425 | label_api_access_key_created_on: Der API-Zugriffsschlüssel wurde vor %{value} erstellt |
|
425 | label_api_access_key_created_on: Der API-Zugriffsschlüssel wurde vor %{value} erstellt | |
426 | label_applied_status: Zugewiesener Status |
|
426 | label_applied_status: Zugewiesener Status | |
427 | label_ascending: Aufsteigend |
|
427 | label_ascending: Aufsteigend | |
428 | label_ask: Nachfragen |
|
428 | label_ask: Nachfragen | |
429 | label_assigned_to_me_issues: Mir zugewiesene Tickets |
|
429 | label_assigned_to_me_issues: Mir zugewiesene Tickets | |
430 | label_associated_revisions: Zugehörige Revisionen |
|
430 | label_associated_revisions: Zugehörige Revisionen | |
431 | label_attachment: Datei |
|
431 | label_attachment: Datei | |
432 | label_attachment_delete: Anhang löschen |
|
432 | label_attachment_delete: Anhang löschen | |
433 | label_attachment_new: Neue Datei |
|
433 | label_attachment_new: Neue Datei | |
434 | label_attachment_plural: Dateien |
|
434 | label_attachment_plural: Dateien | |
435 | label_attribute: Attribut |
|
435 | label_attribute: Attribut | |
436 | label_attribute_of_assigned_to: "%{name} des Bearbeiters" |
|
436 | label_attribute_of_assigned_to: "%{name} des Bearbeiters" | |
437 | label_attribute_of_author: "%{name} des Autors" |
|
437 | label_attribute_of_author: "%{name} des Autors" | |
438 | label_attribute_of_fixed_version: "%{name} der Zielversion" |
|
438 | label_attribute_of_fixed_version: "%{name} der Zielversion" | |
439 | label_attribute_of_issue: "%{name} des Tickets" |
|
439 | label_attribute_of_issue: "%{name} des Tickets" | |
440 | label_attribute_of_project: "%{name} des Projekts" |
|
440 | label_attribute_of_project: "%{name} des Projekts" | |
441 | label_attribute_of_user: "%{name} des Benutzers" |
|
441 | label_attribute_of_user: "%{name} des Benutzers" | |
442 | label_attribute_plural: Attribute |
|
442 | label_attribute_plural: Attribute | |
443 | label_auth_source: Authentifizierungs-Modus |
|
443 | label_auth_source: Authentifizierungs-Modus | |
444 | label_auth_source_new: Neuer Authentifizierungs-Modus |
|
444 | label_auth_source_new: Neuer Authentifizierungs-Modus | |
445 | label_auth_source_plural: Authentifizierungs-Arten |
|
445 | label_auth_source_plural: Authentifizierungs-Arten | |
446 | label_authentication: Authentifizierung |
|
446 | label_authentication: Authentifizierung | |
447 | label_between: zwischen |
|
447 | label_between: zwischen | |
448 | label_blocked_by: Blockiert durch |
|
448 | label_blocked_by: Blockiert durch | |
449 | label_blocks: Blockiert |
|
449 | label_blocks: Blockiert | |
450 | label_board: Forum |
|
450 | label_board: Forum | |
451 | label_board_locked: Gesperrt |
|
451 | label_board_locked: Gesperrt | |
452 | label_board_new: Neues Forum |
|
452 | label_board_new: Neues Forum | |
453 | label_board_plural: Foren |
|
453 | label_board_plural: Foren | |
454 | label_board_sticky: Wichtig (immer oben) |
|
454 | label_board_sticky: Wichtig (immer oben) | |
455 | label_boolean: Boolean |
|
455 | label_boolean: Boolean | |
456 | label_branch: Zweig |
|
456 | label_branch: Zweig | |
457 | label_browse: Codebrowser |
|
457 | label_browse: Codebrowser | |
458 | label_bulk_edit_selected_issues: Alle ausgewählten Tickets bearbeiten |
|
458 | label_bulk_edit_selected_issues: Alle ausgewählten Tickets bearbeiten | |
459 | label_bulk_edit_selected_time_entries: Ausgewählte Zeitaufwände bearbeiten |
|
459 | label_bulk_edit_selected_time_entries: Ausgewählte Zeitaufwände bearbeiten | |
460 | label_calendar: Kalender |
|
460 | label_calendar: Kalender | |
461 | label_change_plural: Änderungen |
|
461 | label_change_plural: Änderungen | |
462 | label_change_properties: Eigenschaften ändern |
|
462 | label_change_properties: Eigenschaften ändern | |
463 | label_change_status: Statuswechsel |
|
463 | label_change_status: Statuswechsel | |
464 | label_change_view_all: Alle Änderungen anzeigen |
|
464 | label_change_view_all: Alle Änderungen anzeigen | |
465 | label_changes_details: Details aller Änderungen |
|
465 | label_changes_details: Details aller Änderungen | |
466 | label_changeset_plural: Changesets |
|
466 | label_changeset_plural: Changesets | |
467 | label_checkboxes: Checkboxen |
|
467 | label_checkboxes: Checkboxen | |
468 | label_check_for_updates: Auf Updates prüfen |
|
468 | label_check_for_updates: Auf Updates prüfen | |
469 | label_child_revision: Nachfolger |
|
469 | label_child_revision: Nachfolger | |
470 | label_chronological_order: in zeitlicher Reihenfolge |
|
470 | label_chronological_order: in zeitlicher Reihenfolge | |
471 | label_close_versions: Vollständige Versionen schließen |
|
471 | label_close_versions: Vollständige Versionen schließen | |
472 | label_closed_issues: geschlossen |
|
472 | label_closed_issues: geschlossen | |
473 | label_closed_issues_plural: geschlossen |
|
473 | label_closed_issues_plural: geschlossen | |
474 | label_comment: Kommentar |
|
474 | label_comment: Kommentar | |
475 | label_comment_add: Kommentar hinzufügen |
|
475 | label_comment_add: Kommentar hinzufügen | |
476 | label_comment_added: Kommentar hinzugefügt |
|
476 | label_comment_added: Kommentar hinzugefügt | |
477 | label_comment_delete: Kommentar löschen |
|
477 | label_comment_delete: Kommentar löschen | |
478 | label_comment_plural: Kommentare |
|
478 | label_comment_plural: Kommentare | |
479 | label_commits_per_author: Übertragungen pro Autor |
|
479 | label_commits_per_author: Übertragungen pro Autor | |
480 | label_commits_per_month: Übertragungen pro Monat |
|
480 | label_commits_per_month: Übertragungen pro Monat | |
481 | label_completed_versions: Abgeschlossene Versionen |
|
481 | label_completed_versions: Abgeschlossene Versionen | |
482 | label_confirmation: Bestätigung |
|
482 | label_confirmation: Bestätigung | |
483 | label_contains: enthält |
|
483 | label_contains: enthält | |
484 | label_copied: kopiert |
|
484 | label_copied: kopiert | |
485 | label_copied_from: Kopiert von |
|
485 | label_copied_from: Kopiert von | |
486 | label_copied_to: Kopiert nach |
|
486 | label_copied_to: Kopiert nach | |
487 | label_copy_attachments: Anhänge kopieren |
|
487 | label_copy_attachments: Anhänge kopieren | |
488 | label_copy_same_as_target: So wie das Ziel |
|
488 | label_copy_same_as_target: So wie das Ziel | |
489 | label_copy_source: Quelle |
|
489 | label_copy_source: Quelle | |
490 | label_copy_subtasks: Unteraufgaben kopieren |
|
490 | label_copy_subtasks: Unteraufgaben kopieren | |
491 | label_copy_target: Ziel |
|
491 | label_copy_target: Ziel | |
492 | label_copy_workflow_from: Workflow kopieren von |
|
492 | label_copy_workflow_from: Workflow kopieren von | |
493 | label_cross_project_descendants: Mit Unterprojekten |
|
493 | label_cross_project_descendants: Mit Unterprojekten | |
494 | label_cross_project_hierarchy: Mit Projekthierarchie |
|
494 | label_cross_project_hierarchy: Mit Projekthierarchie | |
495 | label_cross_project_system: Mit allen Projekten |
|
495 | label_cross_project_system: Mit allen Projekten | |
496 | label_cross_project_tree: Mit Projektbaum |
|
496 | label_cross_project_tree: Mit Projektbaum | |
497 | label_current_status: Gegenwärtiger Status |
|
497 | label_current_status: Gegenwärtiger Status | |
498 | label_current_version: Gegenwärtige Version |
|
498 | label_current_version: Gegenwärtige Version | |
499 | label_custom_field: Benutzerdefiniertes Feld |
|
499 | label_custom_field: Benutzerdefiniertes Feld | |
500 | label_custom_field_new: Neues Feld |
|
500 | label_custom_field_new: Neues Feld | |
501 | label_custom_field_plural: Benutzerdefinierte Felder |
|
501 | label_custom_field_plural: Benutzerdefinierte Felder | |
502 | label_custom_field_select_type: Bitte wählen Sie den Objekttyp, zu dem das benutzerdefinierte Feld hinzugefügt werden soll |
|
502 | label_custom_field_select_type: Bitte wählen Sie den Objekttyp, zu dem das benutzerdefinierte Feld hinzugefügt werden soll | |
503 | label_date: Datum |
|
503 | label_date: Datum | |
504 | label_date_from: Von |
|
504 | label_date_from: Von | |
505 | label_date_from_to: von %{start} bis %{end} |
|
505 | label_date_from_to: von %{start} bis %{end} | |
506 | label_date_range: Zeitraum |
|
506 | label_date_range: Zeitraum | |
507 | label_date_to: Bis |
|
507 | label_date_to: Bis | |
508 | label_day_plural: Tage |
|
508 | label_day_plural: Tage | |
509 | label_default: Standard |
|
509 | label_default: Standard | |
510 | label_default_columns: Standard-Spalten |
|
510 | label_default_columns: Standard-Spalten | |
511 | label_deleted: gelöscht |
|
511 | label_deleted: gelöscht | |
512 | label_descending: Absteigend |
|
512 | label_descending: Absteigend | |
513 | label_details: Details |
|
513 | label_details: Details | |
514 | label_diff: diff |
|
514 | label_diff: diff | |
515 | label_diff_inline: einspaltig |
|
515 | label_diff_inline: einspaltig | |
516 | label_diff_side_by_side: nebeneinander |
|
516 | label_diff_side_by_side: nebeneinander | |
517 | label_disabled: gesperrt |
|
517 | label_disabled: gesperrt | |
518 | label_display: Anzeige |
|
518 | label_display: Anzeige | |
519 | label_display_per_page: "Pro Seite: %{value}" |
|
519 | label_display_per_page: "Pro Seite: %{value}" | |
520 | label_display_used_statuses_only: Zeige nur Status an, die von diesem Tracker verwendet werden |
|
520 | label_display_used_statuses_only: Zeige nur Status an, die von diesem Tracker verwendet werden | |
521 | label_document: Dokument |
|
521 | label_document: Dokument | |
522 | label_document_added: Dokument hinzugefügt |
|
522 | label_document_added: Dokument hinzugefügt | |
523 | label_document_new: Neues Dokument |
|
523 | label_document_new: Neues Dokument | |
524 | label_document_plural: Dokumente |
|
524 | label_document_plural: Dokumente | |
525 | label_downloads_abbr: D/L |
|
525 | label_downloads_abbr: D/L | |
526 | label_drop_down_list: Dropdown-Liste |
|
526 | label_drop_down_list: Dropdown-Liste | |
527 | label_duplicated_by: Dupliziert durch |
|
527 | label_duplicated_by: Dupliziert durch | |
528 | label_duplicates: Duplikat von |
|
528 | label_duplicates: Duplikat von | |
529 | label_edit_attachments: Angehängte Dateien bearbeiten |
|
529 | label_edit_attachments: Angehängte Dateien bearbeiten | |
530 | label_enumeration_new: Neuer Wert |
|
530 | label_enumeration_new: Neuer Wert | |
531 | label_enumerations: Aufzählungen |
|
531 | label_enumerations: Aufzählungen | |
532 | label_environment: Umgebung |
|
532 | label_environment: Umgebung | |
533 | label_equals: ist |
|
533 | label_equals: ist | |
534 | label_example: Beispiel |
|
534 | label_example: Beispiel | |
535 | label_export_options: "%{export_format} Export-Eigenschaften" |
|
535 | label_export_options: "%{export_format} Export-Eigenschaften" | |
536 | label_export_to: "Auch abrufbar als:" |
|
536 | label_export_to: "Auch abrufbar als:" | |
537 | label_f_hour: "%{value} Stunde" |
|
537 | label_f_hour: "%{value} Stunde" | |
538 | label_f_hour_plural: "%{value} Stunden" |
|
538 | label_f_hour_plural: "%{value} Stunden" | |
539 | label_feed_plural: Feeds |
|
539 | label_feed_plural: Feeds | |
540 | label_feeds_access_key: Atom-Zugriffsschlüssel |
|
540 | label_feeds_access_key: Atom-Zugriffsschlüssel | |
541 | label_feeds_access_key_created_on: "Atom-Zugriffsschlüssel vor %{value} erstellt" |
|
541 | label_feeds_access_key_created_on: "Atom-Zugriffsschlüssel vor %{value} erstellt" | |
542 | label_fields_permissions: Feldberechtigungen |
|
542 | label_fields_permissions: Feldberechtigungen | |
543 | label_file_added: Datei hinzugefügt |
|
543 | label_file_added: Datei hinzugefügt | |
544 | label_file_plural: Dateien |
|
544 | label_file_plural: Dateien | |
545 | label_filter_add: Filter hinzufügen |
|
545 | label_filter_add: Filter hinzufügen | |
546 | label_filter_plural: Filter |
|
546 | label_filter_plural: Filter | |
547 | label_float: Fließkommazahl |
|
547 | label_float: Fließkommazahl | |
548 | label_follows: Nachfolger von |
|
548 | label_follows: Nachfolger von | |
549 | label_gantt: Gantt-Diagramm |
|
549 | label_gantt: Gantt-Diagramm | |
550 | label_gantt_progress_line: Fortschrittslinie |
|
550 | label_gantt_progress_line: Fortschrittslinie | |
551 | label_general: Allgemein |
|
551 | label_general: Allgemein | |
552 | label_generate_key: Generieren |
|
552 | label_generate_key: Generieren | |
553 | label_git_report_last_commit: Bericht des letzten Commits für Dateien und Verzeichnisse |
|
553 | label_git_report_last_commit: Bericht des letzten Commits für Dateien und Verzeichnisse | |
554 | label_greater_or_equal: ">=" |
|
554 | label_greater_or_equal: ">=" | |
555 | label_group: Gruppe |
|
555 | label_group: Gruppe | |
556 | label_group_anonymous: Anonyme Benutzer |
|
556 | label_group_anonymous: Anonyme Benutzer | |
557 | label_group_new: Neue Gruppe |
|
557 | label_group_new: Neue Gruppe | |
558 | label_group_non_member: Nichtmitglieder |
|
558 | label_group_non_member: Nichtmitglieder | |
559 | label_group_plural: Gruppen |
|
559 | label_group_plural: Gruppen | |
560 | label_help: Hilfe |
|
560 | label_help: Hilfe | |
561 | label_hidden: Versteckt |
|
561 | label_hidden: Versteckt | |
562 | label_history: Historie |
|
562 | label_history: Historie | |
563 | label_home: Hauptseite |
|
563 | label_home: Hauptseite | |
564 | label_in: in |
|
564 | label_in: in | |
565 | label_in_less_than: in weniger als |
|
565 | label_in_less_than: in weniger als | |
566 | label_in_more_than: in mehr als |
|
566 | label_in_more_than: in mehr als | |
567 | label_in_the_next_days: in den nächsten |
|
567 | label_in_the_next_days: in den nächsten | |
568 | label_in_the_past_days: in den letzten |
|
568 | label_in_the_past_days: in den letzten | |
569 | label_incoming_emails: Eingehende E-Mails |
|
569 | label_incoming_emails: Eingehende E-Mails | |
570 | label_index_by_date: Seiten nach Datum sortiert |
|
570 | label_index_by_date: Seiten nach Datum sortiert | |
571 | label_index_by_title: Seiten nach Titel sortiert |
|
571 | label_index_by_title: Seiten nach Titel sortiert | |
572 | label_information: Information |
|
572 | label_information: Information | |
573 | label_information_plural: Informationen |
|
573 | label_information_plural: Informationen | |
574 | label_integer: Zahl |
|
574 | label_integer: Zahl | |
575 | label_internal: Intern |
|
575 | label_internal: Intern | |
576 | label_issue: Ticket |
|
576 | label_issue: Ticket | |
577 | label_issue_added: Ticket hinzugefügt |
|
577 | label_issue_added: Ticket hinzugefügt | |
578 | label_issue_assigned_to_updated: Bearbeiter aktualisiert |
|
578 | label_issue_assigned_to_updated: Bearbeiter aktualisiert | |
579 | label_issue_category: Ticket-Kategorie |
|
579 | label_issue_category: Ticket-Kategorie | |
580 | label_issue_category_new: Neue Kategorie |
|
580 | label_issue_category_new: Neue Kategorie | |
581 | label_issue_category_plural: Ticket-Kategorien |
|
581 | label_issue_category_plural: Ticket-Kategorien | |
582 | label_issue_new: Neues Ticket |
|
582 | label_issue_new: Neues Ticket | |
583 | label_issue_note_added: Notiz hinzugefügt |
|
583 | label_issue_note_added: Notiz hinzugefügt | |
584 | label_issue_plural: Tickets |
|
584 | label_issue_plural: Tickets | |
585 | label_issue_priority_updated: Priorität aktualisiert |
|
585 | label_issue_priority_updated: Priorität aktualisiert | |
586 | label_issue_status: Ticket-Status |
|
586 | label_issue_status: Ticket-Status | |
587 | label_issue_status_new: Neuer Status |
|
587 | label_issue_status_new: Neuer Status | |
588 | label_issue_status_plural: Ticket-Status |
|
588 | label_issue_status_plural: Ticket-Status | |
589 | label_issue_status_updated: Status aktualisiert |
|
589 | label_issue_status_updated: Status aktualisiert | |
590 | label_issue_tracking: Tickets |
|
590 | label_issue_tracking: Tickets | |
591 | label_issue_updated: Ticket aktualisiert |
|
591 | label_issue_updated: Ticket aktualisiert | |
592 | label_issue_view_all: Alle Tickets anzeigen |
|
592 | label_issue_view_all: Alle Tickets anzeigen | |
593 | label_issue_watchers: Beobachter |
|
593 | label_issue_watchers: Beobachter | |
594 | label_issues_by: "Tickets pro %{value}" |
|
594 | label_issues_by: "Tickets pro %{value}" | |
595 | label_issues_visibility_all: Alle Tickets |
|
595 | label_issues_visibility_all: Alle Tickets | |
596 | label_issues_visibility_own: Tickets die folgender Benutzer erstellt hat oder die ihm zugewiesen sind |
|
596 | label_issues_visibility_own: Tickets die folgender Benutzer erstellt hat oder die ihm zugewiesen sind | |
597 | label_issues_visibility_public: Alle öffentlichen Tickets |
|
597 | label_issues_visibility_public: Alle öffentlichen Tickets | |
598 | label_item_position: "%{position}/%{count}" |
|
598 | label_item_position: "%{position}/%{count}" | |
599 | label_jump_to_a_project: Zu einem Projekt springen... |
|
599 | label_jump_to_a_project: Zu einem Projekt springen... | |
600 | label_language_based: Sprachabhängig |
|
600 | label_language_based: Sprachabhängig | |
601 | label_last_changes: "%{count} letzte Änderungen" |
|
601 | label_last_changes: "%{count} letzte Änderungen" | |
602 | label_last_login: Letzte Anmeldung |
|
602 | label_last_login: Letzte Anmeldung | |
603 | label_last_month: voriger Monat |
|
603 | label_last_month: voriger Monat | |
604 | label_last_n_days: "die letzten %{count} Tage" |
|
604 | label_last_n_days: "die letzten %{count} Tage" | |
605 | label_last_n_weeks: letzte %{count} Wochen |
|
605 | label_last_n_weeks: letzte %{count} Wochen | |
606 | label_last_week: vorige Woche |
|
606 | label_last_week: vorige Woche | |
607 | label_latest_compatible_version: Letzte kompatible Version |
|
607 | label_latest_compatible_version: Letzte kompatible Version | |
608 | label_latest_revision: Aktuellste Revision |
|
608 | label_latest_revision: Aktuellste Revision | |
609 | label_latest_revision_plural: Aktuellste Revisionen |
|
609 | label_latest_revision_plural: Aktuellste Revisionen | |
610 | label_ldap_authentication: LDAP-Authentifizierung |
|
610 | label_ldap_authentication: LDAP-Authentifizierung | |
611 | label_less_or_equal: "<=" |
|
611 | label_less_or_equal: "<=" | |
612 | label_less_than_ago: vor weniger als |
|
612 | label_less_than_ago: vor weniger als | |
613 | label_link: Link |
|
613 | label_link: Link | |
614 | label_link_copied_issue: Kopierte Tickets verlinken |
|
614 | label_link_copied_issue: Kopierte Tickets verlinken | |
615 | label_link_values_to: Werte mit URL verknüpfen |
|
615 | label_link_values_to: Werte mit URL verknüpfen | |
616 | label_list: Liste |
|
616 | label_list: Liste | |
617 | label_loading: Lade... |
|
617 | label_loading: Lade... | |
618 | label_logged_as: Angemeldet als |
|
618 | label_logged_as: Angemeldet als | |
619 | label_login: Anmelden |
|
619 | label_login: Anmelden | |
620 | label_login_with_open_id_option: oder mit OpenID anmelden |
|
620 | label_login_with_open_id_option: oder mit OpenID anmelden | |
621 | label_logout: Abmelden |
|
621 | label_logout: Abmelden | |
622 | label_only: nur |
|
622 | label_only: nur | |
623 | label_max_size: Maximale Größe |
|
623 | label_max_size: Maximale Größe | |
624 | label_me: ich |
|
624 | label_me: ich | |
625 | label_member: Mitglied |
|
625 | label_member: Mitglied | |
626 | label_member_new: Neues Mitglied |
|
626 | label_member_new: Neues Mitglied | |
627 | label_member_plural: Mitglieder |
|
627 | label_member_plural: Mitglieder | |
628 | label_message_last: Letzter Forenbeitrag |
|
628 | label_message_last: Letzter Forenbeitrag | |
629 | label_message_new: Neues Thema |
|
629 | label_message_new: Neues Thema | |
630 | label_message_plural: Forenbeiträge |
|
630 | label_message_plural: Forenbeiträge | |
631 | label_message_posted: Forenbeitrag hinzugefügt |
|
631 | label_message_posted: Forenbeitrag hinzugefügt | |
632 | label_min_max_length: Länge (Min. - Max.) |
|
632 | label_min_max_length: Länge (Min. - Max.) | |
633 | label_missing_api_access_key: Der API-Zugriffsschlüssel fehlt. |
|
633 | label_missing_api_access_key: Der API-Zugriffsschlüssel fehlt. | |
634 | label_missing_feeds_access_key: Der Atom-Zugriffsschlüssel fehlt. |
|
634 | label_missing_feeds_access_key: Der Atom-Zugriffsschlüssel fehlt. | |
635 | label_modified: geändert |
|
635 | label_modified: geändert | |
636 | label_module_plural: Module |
|
636 | label_module_plural: Module | |
637 | label_month: Monat |
|
637 | label_month: Monat | |
638 | label_months_from: Monate ab |
|
638 | label_months_from: Monate ab | |
639 | label_more: Mehr |
|
639 | label_more: Mehr | |
640 | label_more_than_ago: vor mehr als |
|
640 | label_more_than_ago: vor mehr als | |
641 | label_my_account: Mein Konto |
|
641 | label_my_account: Mein Konto | |
642 | label_my_page: Meine Seite |
|
642 | label_my_page: Meine Seite | |
643 | label_my_page_block: Verfügbare Widgets |
|
643 | label_my_page_block: Verfügbare Widgets | |
644 | label_my_projects: Meine Projekte |
|
644 | label_my_projects: Meine Projekte | |
645 | label_my_queries: Meine eigenen Abfragen |
|
645 | label_my_queries: Meine eigenen Abfragen | |
646 | label_new: Neu |
|
646 | label_new: Neu | |
647 | label_new_statuses_allowed: Neue Berechtigungen |
|
647 | label_new_statuses_allowed: Neue Berechtigungen | |
648 | label_news: News |
|
648 | label_news: News | |
649 | label_news_added: News hinzugefügt |
|
649 | label_news_added: News hinzugefügt | |
650 | label_news_comment_added: Kommentar zu einer News hinzugefügt |
|
650 | label_news_comment_added: Kommentar zu einer News hinzugefügt | |
651 | label_news_latest: Letzte News |
|
651 | label_news_latest: Letzte News | |
652 | label_news_new: News hinzufügen |
|
652 | label_news_new: News hinzufügen | |
653 | label_news_plural: News |
|
653 | label_news_plural: News | |
654 | label_news_view_all: Alle News anzeigen |
|
654 | label_news_view_all: Alle News anzeigen | |
655 | label_next: Weiter |
|
655 | label_next: Weiter | |
656 | label_no_change_option: (Keine Änderung) |
|
656 | label_no_change_option: (Keine Änderung) | |
657 | label_no_data: Nichts anzuzeigen |
|
657 | label_no_data: Nichts anzuzeigen | |
|
658 | label_no_preview: Keine Vorschau verfügbar | |||
658 | label_no_issues_in_project: keine Tickets im Projekt |
|
659 | label_no_issues_in_project: keine Tickets im Projekt | |
659 | label_nobody: Niemand |
|
660 | label_nobody: Niemand | |
660 | label_none: kein |
|
661 | label_none: kein | |
661 | label_not_contains: enthält nicht |
|
662 | label_not_contains: enthält nicht | |
662 | label_not_equals: ist nicht |
|
663 | label_not_equals: ist nicht | |
663 | label_open_issues: offen |
|
664 | label_open_issues: offen | |
664 | label_open_issues_plural: offen |
|
665 | label_open_issues_plural: offen | |
665 | label_optional_description: Beschreibung (optional) |
|
666 | label_optional_description: Beschreibung (optional) | |
666 | label_options: Optionen |
|
667 | label_options: Optionen | |
667 | label_overall_activity: Aktivitäten aller Projekte anzeigen |
|
668 | label_overall_activity: Aktivitäten aller Projekte anzeigen | |
668 | label_overall_spent_time: Aufgewendete Zeit aller Projekte anzeigen |
|
669 | label_overall_spent_time: Aufgewendete Zeit aller Projekte anzeigen | |
669 | label_overview: Übersicht |
|
670 | label_overview: Übersicht | |
670 | label_parent_revision: Vorgänger |
|
671 | label_parent_revision: Vorgänger | |
671 | label_password_lost: Passwort vergessen |
|
672 | label_password_lost: Passwort vergessen | |
672 | label_password_required: Bitte geben Sie Ihr Passwort ein |
|
673 | label_password_required: Bitte geben Sie Ihr Passwort ein | |
673 | label_permissions: Berechtigungen |
|
674 | label_permissions: Berechtigungen | |
674 | label_permissions_report: Berechtigungsübersicht |
|
675 | label_permissions_report: Berechtigungsübersicht | |
675 | label_personalize_page: Diese Seite anpassen |
|
676 | label_personalize_page: Diese Seite anpassen | |
676 | label_planning: Terminplanung |
|
677 | label_planning: Terminplanung | |
677 | label_please_login: Anmelden |
|
678 | label_please_login: Anmelden | |
678 | label_plugins: Plugins |
|
679 | label_plugins: Plugins | |
679 | label_precedes: Vorgänger von |
|
680 | label_precedes: Vorgänger von | |
680 | label_preferences: Präferenzen |
|
681 | label_preferences: Präferenzen | |
681 | label_preview: Vorschau |
|
682 | label_preview: Vorschau | |
682 | label_previous: Zurück |
|
683 | label_previous: Zurück | |
683 | label_principal_search: "Nach Benutzer oder Gruppe suchen:" |
|
684 | label_principal_search: "Nach Benutzer oder Gruppe suchen:" | |
684 | label_profile: Profil |
|
685 | label_profile: Profil | |
685 | label_project: Projekt |
|
686 | label_project: Projekt | |
686 | label_project_all: Alle Projekte |
|
687 | label_project_all: Alle Projekte | |
687 | label_project_copy_notifications: Sende Mailbenachrichtigungen beim Kopieren des Projekts. |
|
688 | label_project_copy_notifications: Sende Mailbenachrichtigungen beim Kopieren des Projekts. | |
688 | label_project_latest: Neueste Projekte |
|
689 | label_project_latest: Neueste Projekte | |
689 | label_project_new: Neues Projekt |
|
690 | label_project_new: Neues Projekt | |
690 | label_project_plural: Projekte |
|
691 | label_project_plural: Projekte | |
691 | label_public_projects: Öffentliche Projekte |
|
692 | label_public_projects: Öffentliche Projekte | |
692 | label_query: Benutzerdefinierte Abfrage |
|
693 | label_query: Benutzerdefinierte Abfrage | |
693 | label_query_new: Neue Abfrage |
|
694 | label_query_new: Neue Abfrage | |
694 | label_query_plural: Benutzerdefinierte Abfragen |
|
695 | label_query_plural: Benutzerdefinierte Abfragen | |
695 | label_radio_buttons: Radio-Buttons |
|
696 | label_radio_buttons: Radio-Buttons | |
696 | label_read: Lesen... |
|
697 | label_read: Lesen... | |
697 | label_readonly: Nur-Lese-Zugriff |
|
698 | label_readonly: Nur-Lese-Zugriff | |
698 | label_register: Registrieren |
|
699 | label_register: Registrieren | |
699 | label_registered_on: Angemeldet am |
|
700 | label_registered_on: Angemeldet am | |
700 | label_registration_activation_by_email: Kontoaktivierung durch E-Mail |
|
701 | label_registration_activation_by_email: Kontoaktivierung durch E-Mail | |
701 | label_registration_automatic_activation: Automatische Kontoaktivierung |
|
702 | label_registration_automatic_activation: Automatische Kontoaktivierung | |
702 | label_registration_manual_activation: Manuelle Kontoaktivierung |
|
703 | label_registration_manual_activation: Manuelle Kontoaktivierung | |
703 | label_related_issues: Zugehörige Tickets |
|
704 | label_related_issues: Zugehörige Tickets | |
704 | label_relates_to: Beziehung mit |
|
705 | label_relates_to: Beziehung mit | |
705 | label_relation_delete: Beziehung löschen |
|
706 | label_relation_delete: Beziehung löschen | |
706 | label_relation_new: Neue Beziehung |
|
707 | label_relation_new: Neue Beziehung | |
707 | label_renamed: umbenannt |
|
708 | label_renamed: umbenannt | |
708 | label_reply_plural: Antworten |
|
709 | label_reply_plural: Antworten | |
709 | label_report: Bericht |
|
710 | label_report: Bericht | |
710 | label_report_plural: Berichte |
|
711 | label_report_plural: Berichte | |
711 | label_reported_issues: Erstellte Tickets |
|
712 | label_reported_issues: Erstellte Tickets | |
712 | label_repository: Projektarchiv |
|
713 | label_repository: Projektarchiv | |
713 | label_repository_new: Neues Repository |
|
714 | label_repository_new: Neues Repository | |
714 | label_repository_plural: Projektarchive |
|
715 | label_repository_plural: Projektarchive | |
715 | label_required: Erforderlich |
|
716 | label_required: Erforderlich | |
716 | label_result_plural: Resultate |
|
717 | label_result_plural: Resultate | |
717 | label_reverse_chronological_order: in umgekehrter zeitlicher Reihenfolge |
|
718 | label_reverse_chronological_order: in umgekehrter zeitlicher Reihenfolge | |
718 | label_revision: Revision |
|
719 | label_revision: Revision | |
719 | label_revision_id: Revision %{value} |
|
720 | label_revision_id: Revision %{value} | |
720 | label_revision_plural: Revisionen |
|
721 | label_revision_plural: Revisionen | |
721 | label_roadmap: Roadmap |
|
722 | label_roadmap: Roadmap | |
722 | label_roadmap_due_in: "Fällig in %{value}" |
|
723 | label_roadmap_due_in: "Fällig in %{value}" | |
723 | label_roadmap_no_issues: Keine Tickets für diese Version |
|
724 | label_roadmap_no_issues: Keine Tickets für diese Version | |
724 | label_roadmap_overdue: "seit %{value} verspätet" |
|
725 | label_roadmap_overdue: "seit %{value} verspätet" | |
725 | label_role: Rolle |
|
726 | label_role: Rolle | |
726 | label_role_and_permissions: Rollen und Rechte |
|
727 | label_role_and_permissions: Rollen und Rechte | |
727 | label_role_anonymous: Anonymous |
|
728 | label_role_anonymous: Anonymous | |
728 | label_role_new: Neue Rolle |
|
729 | label_role_new: Neue Rolle | |
729 | label_role_non_member: Nichtmitglied |
|
730 | label_role_non_member: Nichtmitglied | |
730 | label_role_plural: Rollen |
|
731 | label_role_plural: Rollen | |
731 | label_scm: Versionskontrollsystem |
|
732 | label_scm: Versionskontrollsystem | |
732 | label_search: Suche |
|
733 | label_search: Suche | |
733 | label_search_for_watchers: Nach hinzufügbaren Beobachtern suchen |
|
734 | label_search_for_watchers: Nach hinzufügbaren Beobachtern suchen | |
734 | label_search_titles_only: Nur Titel durchsuchen |
|
735 | label_search_titles_only: Nur Titel durchsuchen | |
735 | label_send_information: Sende Kontoinformationen an Benutzer |
|
736 | label_send_information: Sende Kontoinformationen an Benutzer | |
736 | label_send_test_email: Test-E-Mail senden |
|
737 | label_send_test_email: Test-E-Mail senden | |
737 | label_session_expiration: Ende einer Sitzung |
|
738 | label_session_expiration: Ende einer Sitzung | |
738 | label_settings: Konfiguration |
|
739 | label_settings: Konfiguration | |
739 | label_show_closed_projects: Geschlossene Projekte anzeigen |
|
740 | label_show_closed_projects: Geschlossene Projekte anzeigen | |
740 | label_show_completed_versions: Abgeschlossene Versionen anzeigen |
|
741 | label_show_completed_versions: Abgeschlossene Versionen anzeigen | |
741 | label_sort: Sortierung |
|
742 | label_sort: Sortierung | |
742 | label_sort_by: "Sortiert nach %{value}" |
|
743 | label_sort_by: "Sortiert nach %{value}" | |
743 | label_sort_higher: Eins höher |
|
744 | label_sort_higher: Eins höher | |
744 | label_sort_highest: An den Anfang |
|
745 | label_sort_highest: An den Anfang | |
745 | label_sort_lower: Eins tiefer |
|
746 | label_sort_lower: Eins tiefer | |
746 | label_sort_lowest: Ans Ende |
|
747 | label_sort_lowest: Ans Ende | |
747 | label_spent_time: Aufgewendete Zeit |
|
748 | label_spent_time: Aufgewendete Zeit | |
748 | label_statistics: Statistiken |
|
749 | label_statistics: Statistiken | |
749 | label_status_transitions: Statusänderungen |
|
750 | label_status_transitions: Statusänderungen | |
750 | label_stay_logged_in: Angemeldet bleiben |
|
751 | label_stay_logged_in: Angemeldet bleiben | |
751 | label_string: Text |
|
752 | label_string: Text | |
752 | label_subproject_new: Neues Unterprojekt |
|
753 | label_subproject_new: Neues Unterprojekt | |
753 | label_subproject_plural: Unterprojekte |
|
754 | label_subproject_plural: Unterprojekte | |
754 | label_subtask_plural: Unteraufgaben |
|
755 | label_subtask_plural: Unteraufgaben | |
755 | label_tag: Markierung |
|
756 | label_tag: Markierung | |
756 | label_text: Langer Text |
|
757 | label_text: Langer Text | |
757 | label_theme: Design-Stil |
|
758 | label_theme: Design-Stil | |
758 | label_this_month: aktueller Monat |
|
759 | label_this_month: aktueller Monat | |
759 | label_this_week: aktuelle Woche |
|
760 | label_this_week: aktuelle Woche | |
760 | label_this_year: aktuelles Jahr |
|
761 | label_this_year: aktuelles Jahr | |
761 | label_time_entry_plural: Benötigte Zeit |
|
762 | label_time_entry_plural: Benötigte Zeit | |
762 | label_time_tracking: Zeiterfassung |
|
763 | label_time_tracking: Zeiterfassung | |
763 | label_today: heute |
|
764 | label_today: heute | |
764 | label_topic_plural: Themen |
|
765 | label_topic_plural: Themen | |
765 | label_total: Gesamtzahl |
|
766 | label_total: Gesamtzahl | |
766 | label_total_time: Gesamtzeit |
|
767 | label_total_time: Gesamtzeit | |
767 | label_tracker: Tracker |
|
768 | label_tracker: Tracker | |
768 | label_tracker_new: Neuer Tracker |
|
769 | label_tracker_new: Neuer Tracker | |
769 | label_tracker_plural: Tracker |
|
770 | label_tracker_plural: Tracker | |
770 | label_unknown_plugin: Unbekanntes Plugin |
|
771 | label_unknown_plugin: Unbekanntes Plugin | |
771 | label_update_issue_done_ratios: Ticket-Fortschritt aktualisieren |
|
772 | label_update_issue_done_ratios: Ticket-Fortschritt aktualisieren | |
772 | label_updated_time: "Vor %{value} aktualisiert" |
|
773 | label_updated_time: "Vor %{value} aktualisiert" | |
773 | label_updated_time_by: "Von %{author} vor %{age} aktualisiert" |
|
774 | label_updated_time_by: "Von %{author} vor %{age} aktualisiert" | |
774 | label_used_by: Benutzt von |
|
775 | label_used_by: Benutzt von | |
775 | label_user: Benutzer |
|
776 | label_user: Benutzer | |
776 | label_user_activity: "Aktivität von %{value}" |
|
777 | label_user_activity: "Aktivität von %{value}" | |
777 | label_user_anonymous: Anonym |
|
778 | label_user_anonymous: Anonym | |
778 | label_user_mail_no_self_notified: "Ich möchte nicht über Änderungen benachrichtigt werden, die ich selbst durchführe." |
|
779 | label_user_mail_no_self_notified: "Ich möchte nicht über Änderungen benachrichtigt werden, die ich selbst durchführe." | |
779 | label_user_mail_option_all: "Für alle Ereignisse in all meinen Projekten" |
|
780 | label_user_mail_option_all: "Für alle Ereignisse in all meinen Projekten" | |
780 | label_user_mail_option_none: Keine Ereignisse |
|
781 | label_user_mail_option_none: Keine Ereignisse | |
781 | label_user_mail_option_only_assigned: Nur für Aufgaben für die ich zuständig bin |
|
782 | label_user_mail_option_only_assigned: Nur für Aufgaben für die ich zuständig bin | |
782 | label_user_mail_option_only_my_events: Nur für Aufgaben die ich beobachte oder an welchen ich mitarbeite |
|
783 | label_user_mail_option_only_my_events: Nur für Aufgaben die ich beobachte oder an welchen ich mitarbeite | |
783 | label_user_mail_option_only_owner: Nur für Aufgaben die ich angelegt habe |
|
784 | label_user_mail_option_only_owner: Nur für Aufgaben die ich angelegt habe | |
784 | label_user_mail_option_selected: "Für alle Ereignisse in den ausgewählten Projekten" |
|
785 | label_user_mail_option_selected: "Für alle Ereignisse in den ausgewählten Projekten" | |
785 | label_user_new: Neuer Benutzer |
|
786 | label_user_new: Neuer Benutzer | |
786 | label_user_plural: Benutzer |
|
787 | label_user_plural: Benutzer | |
787 | label_user_search: "Nach Benutzer suchen:" |
|
788 | label_user_search: "Nach Benutzer suchen:" | |
788 | label_users_visibility_all: Alle aktiven Benutzer |
|
789 | label_users_visibility_all: Alle aktiven Benutzer | |
789 | label_users_visibility_members_of_visible_projects: Mitglieder von sichtbaren Projekten |
|
790 | label_users_visibility_members_of_visible_projects: Mitglieder von sichtbaren Projekten | |
790 | label_version: Version |
|
791 | label_version: Version | |
791 | label_version_new: Neue Version |
|
792 | label_version_new: Neue Version | |
792 | label_version_plural: Versionen |
|
793 | label_version_plural: Versionen | |
793 | label_version_sharing_descendants: Mit Unterprojekten |
|
794 | label_version_sharing_descendants: Mit Unterprojekten | |
794 | label_version_sharing_hierarchy: Mit Projekthierarchie |
|
795 | label_version_sharing_hierarchy: Mit Projekthierarchie | |
795 | label_version_sharing_none: Nicht gemeinsam verwenden |
|
796 | label_version_sharing_none: Nicht gemeinsam verwenden | |
796 | label_version_sharing_system: Mit allen Projekten |
|
797 | label_version_sharing_system: Mit allen Projekten | |
797 | label_version_sharing_tree: Mit Projektbaum |
|
798 | label_version_sharing_tree: Mit Projektbaum | |
798 | label_view_all_revisions: Alle Revisionen anzeigen |
|
799 | label_view_all_revisions: Alle Revisionen anzeigen | |
799 | label_view_diff: Unterschiede anzeigen |
|
800 | label_view_diff: Unterschiede anzeigen | |
800 | label_view_revisions: Revisionen anzeigen |
|
801 | label_view_revisions: Revisionen anzeigen | |
801 | label_visibility_private: nur für mich |
|
802 | label_visibility_private: nur für mich | |
802 | label_visibility_public: für jeden Benutzer |
|
803 | label_visibility_public: für jeden Benutzer | |
803 | label_visibility_roles: nur für diese Rollen |
|
804 | label_visibility_roles: nur für diese Rollen | |
804 | label_watched_issues: Beobachtete Tickets |
|
805 | label_watched_issues: Beobachtete Tickets | |
805 | label_week: Woche |
|
806 | label_week: Woche | |
806 | label_wiki: Wiki |
|
807 | label_wiki: Wiki | |
807 | label_wiki_content_added: Wiki-Seite hinzugefügt |
|
808 | label_wiki_content_added: Wiki-Seite hinzugefügt | |
808 | label_wiki_content_updated: Wiki-Seite aktualisiert |
|
809 | label_wiki_content_updated: Wiki-Seite aktualisiert | |
809 | label_wiki_edit: Wiki-Bearbeitung |
|
810 | label_wiki_edit: Wiki-Bearbeitung | |
810 | label_wiki_edit_plural: Wiki-Bearbeitungen |
|
811 | label_wiki_edit_plural: Wiki-Bearbeitungen | |
811 | label_wiki_page: Wiki-Seite |
|
812 | label_wiki_page: Wiki-Seite | |
812 | label_wiki_page_plural: Wiki-Seiten |
|
813 | label_wiki_page_plural: Wiki-Seiten | |
813 | label_wiki_page_new: Neue Wiki-Seite |
|
814 | label_wiki_page_new: Neue Wiki-Seite | |
814 | label_workflow: Workflow |
|
815 | label_workflow: Workflow | |
815 | label_x_closed_issues_abbr: |
|
816 | label_x_closed_issues_abbr: | |
816 | zero: 0 geschlossen |
|
817 | zero: 0 geschlossen | |
817 | one: 1 geschlossen |
|
818 | one: 1 geschlossen | |
818 | other: "%{count} geschlossen" |
|
819 | other: "%{count} geschlossen" | |
819 | label_x_comments: |
|
820 | label_x_comments: | |
820 | zero: keine Kommentare |
|
821 | zero: keine Kommentare | |
821 | one: 1 Kommentar |
|
822 | one: 1 Kommentar | |
822 | other: "%{count} Kommentare" |
|
823 | other: "%{count} Kommentare" | |
823 | label_x_issues: |
|
824 | label_x_issues: | |
824 | zero: 0 Tickets |
|
825 | zero: 0 Tickets | |
825 | one: 1 Ticket |
|
826 | one: 1 Ticket | |
826 | other: "%{count} Tickets" |
|
827 | other: "%{count} Tickets" | |
827 | label_x_open_issues_abbr: |
|
828 | label_x_open_issues_abbr: | |
828 | zero: 0 offen |
|
829 | zero: 0 offen | |
829 | one: 1 offen |
|
830 | one: 1 offen | |
830 | other: "%{count} offen" |
|
831 | other: "%{count} offen" | |
831 | label_x_projects: |
|
832 | label_x_projects: | |
832 | zero: keine Projekte |
|
833 | zero: keine Projekte | |
833 | one: 1 Projekt |
|
834 | one: 1 Projekt | |
834 | other: "%{count} Projekte" |
|
835 | other: "%{count} Projekte" | |
835 | label_year: Jahr |
|
836 | label_year: Jahr | |
836 | label_yesterday: gestern |
|
837 | label_yesterday: gestern | |
837 |
|
838 | |||
838 | mail_body_account_activation_request: "Ein neuer Benutzer (%{value}) hat sich registriert. Sein Konto wartet auf Ihre Genehmigung:" |
|
839 | mail_body_account_activation_request: "Ein neuer Benutzer (%{value}) hat sich registriert. Sein Konto wartet auf Ihre Genehmigung:" | |
839 | mail_body_account_information: Ihre Konto-Informationen |
|
840 | mail_body_account_information: Ihre Konto-Informationen | |
840 | mail_body_account_information_external: "Sie können sich mit Ihrem Konto %{value} anmelden." |
|
841 | mail_body_account_information_external: "Sie können sich mit Ihrem Konto %{value} anmelden." | |
841 | mail_body_lost_password: 'Benutzen Sie den folgenden Link, um Ihr Passwort zu ändern:' |
|
842 | mail_body_lost_password: 'Benutzen Sie den folgenden Link, um Ihr Passwort zu ändern:' | |
842 | mail_body_register: 'Um Ihr Konto zu aktivieren, benutzen Sie folgenden Link:' |
|
843 | mail_body_register: 'Um Ihr Konto zu aktivieren, benutzen Sie folgenden Link:' | |
843 | mail_body_reminder: "%{count} Tickets, die Ihnen zugewiesen sind, müssen in den nächsten %{days} Tagen abgegeben werden:" |
|
844 | mail_body_reminder: "%{count} Tickets, die Ihnen zugewiesen sind, müssen in den nächsten %{days} Tagen abgegeben werden:" | |
844 | mail_body_wiki_content_added: "Die Wiki-Seite '%{id}' wurde von %{author} hinzugefügt." |
|
845 | mail_body_wiki_content_added: "Die Wiki-Seite '%{id}' wurde von %{author} hinzugefügt." | |
845 | mail_body_wiki_content_updated: "Die Wiki-Seite '%{id}' wurde von %{author} aktualisiert." |
|
846 | mail_body_wiki_content_updated: "Die Wiki-Seite '%{id}' wurde von %{author} aktualisiert." | |
846 | mail_subject_account_activation_request: "Antrag auf %{value} Kontoaktivierung" |
|
847 | mail_subject_account_activation_request: "Antrag auf %{value} Kontoaktivierung" | |
847 | mail_subject_lost_password: "Ihr %{value} Passwort" |
|
848 | mail_subject_lost_password: "Ihr %{value} Passwort" | |
848 | mail_subject_register: "%{value} Kontoaktivierung" |
|
849 | mail_subject_register: "%{value} Kontoaktivierung" | |
849 | mail_subject_reminder: "%{count} Tickets müssen in den nächsten %{days} Tagen abgegeben werden" |
|
850 | mail_subject_reminder: "%{count} Tickets müssen in den nächsten %{days} Tagen abgegeben werden" | |
850 | mail_subject_wiki_content_added: "Wiki-Seite '%{id}' hinzugefügt" |
|
851 | mail_subject_wiki_content_added: "Wiki-Seite '%{id}' hinzugefügt" | |
851 | mail_subject_wiki_content_updated: "Wiki-Seite '%{id}' erfolgreich aktualisiert" |
|
852 | mail_subject_wiki_content_updated: "Wiki-Seite '%{id}' erfolgreich aktualisiert" | |
852 | mail_subject_security_notification: "Sicherheitshinweis" |
|
853 | mail_subject_security_notification: "Sicherheitshinweis" | |
853 | mail_body_security_notification_change: "%{field} wurde geändert." |
|
854 | mail_body_security_notification_change: "%{field} wurde geändert." | |
854 | mail_body_security_notification_change_to: "%{field} wurde geändert zu %{value}." |
|
855 | mail_body_security_notification_change_to: "%{field} wurde geändert zu %{value}." | |
855 | mail_body_security_notification_add: "%{field} %{value} wurde hinzugefügt." |
|
856 | mail_body_security_notification_add: "%{field} %{value} wurde hinzugefügt." | |
856 | mail_body_security_notification_remove: "%{field} %{value} wurde entfernt." |
|
857 | mail_body_security_notification_remove: "%{field} %{value} wurde entfernt." | |
857 | mail_body_security_notification_notify_enabled: "E-Mail-Adresse %{value} erhält nun Benachrichtigungen." |
|
858 | mail_body_security_notification_notify_enabled: "E-Mail-Adresse %{value} erhält nun Benachrichtigungen." | |
858 | mail_body_security_notification_notify_disabled: "E-Mail-Adresse %{value} erhält keine Benachrichtigungen mehr." |
|
859 | mail_body_security_notification_notify_disabled: "E-Mail-Adresse %{value} erhält keine Benachrichtigungen mehr." | |
859 |
|
860 | |||
860 | notice_account_activated: Ihr Konto ist aktiviert. Sie können sich jetzt anmelden. |
|
861 | notice_account_activated: Ihr Konto ist aktiviert. Sie können sich jetzt anmelden. | |
861 | notice_account_deleted: Ihr Benutzerkonto wurde unwiderruflich gelöscht. |
|
862 | notice_account_deleted: Ihr Benutzerkonto wurde unwiderruflich gelöscht. | |
862 | notice_account_invalid_credentials: Benutzer oder Passwort ist ungültig. |
|
863 | notice_account_invalid_credentials: Benutzer oder Passwort ist ungültig. | |
863 | notice_account_lost_email_sent: Eine E-Mail mit Anweisungen, ein neues Passwort zu wählen, wurde Ihnen geschickt. |
|
864 | notice_account_lost_email_sent: Eine E-Mail mit Anweisungen, ein neues Passwort zu wählen, wurde Ihnen geschickt. | |
864 | notice_account_locked: Ihr Konto ist gesperrt. |
|
865 | notice_account_locked: Ihr Konto ist gesperrt. | |
865 | notice_account_not_activated_yet: Sie haben Ihr Konto noch nicht aktiviert. Wenn Sie die Aktivierungsmail erneut erhalten wollen, <a href="%{url}">klicken Sie bitte hier</a>. |
|
866 | notice_account_not_activated_yet: Sie haben Ihr Konto noch nicht aktiviert. Wenn Sie die Aktivierungsmail erneut erhalten wollen, <a href="%{url}">klicken Sie bitte hier</a>. | |
866 | notice_account_password_updated: Passwort wurde erfolgreich aktualisiert. |
|
867 | notice_account_password_updated: Passwort wurde erfolgreich aktualisiert. | |
867 | notice_account_pending: "Ihr Konto wurde erstellt und wartet jetzt auf die Genehmigung des Administrators." |
|
868 | notice_account_pending: "Ihr Konto wurde erstellt und wartet jetzt auf die Genehmigung des Administrators." | |
868 | notice_account_register_done: Konto wurde erfolgreich angelegt. Eine E-Mail mit weiteren Instruktionen zur Kontoaktivierung wurde an %{email} gesendet. |
|
869 | notice_account_register_done: Konto wurde erfolgreich angelegt. Eine E-Mail mit weiteren Instruktionen zur Kontoaktivierung wurde an %{email} gesendet. | |
869 | notice_account_unknown_email: Unbekannter Benutzer. |
|
870 | notice_account_unknown_email: Unbekannter Benutzer. | |
870 | notice_account_updated: Konto wurde erfolgreich aktualisiert. |
|
871 | notice_account_updated: Konto wurde erfolgreich aktualisiert. | |
871 | notice_account_wrong_password: Falsches Passwort. |
|
872 | notice_account_wrong_password: Falsches Passwort. | |
872 | notice_api_access_key_reseted: Ihr API-Zugriffsschlüssel wurde zurückgesetzt. |
|
873 | notice_api_access_key_reseted: Ihr API-Zugriffsschlüssel wurde zurückgesetzt. | |
873 | notice_can_t_change_password: Dieses Konto verwendet eine externe Authentifizierungs-Quelle. Unmöglich, das Passwort zu ändern. |
|
874 | notice_can_t_change_password: Dieses Konto verwendet eine externe Authentifizierungs-Quelle. Unmöglich, das Passwort zu ändern. | |
874 | notice_default_data_loaded: Die Standard-Konfiguration wurde erfolgreich geladen. |
|
875 | notice_default_data_loaded: Die Standard-Konfiguration wurde erfolgreich geladen. | |
875 | notice_email_error: "Beim Senden einer E-Mail ist ein Fehler aufgetreten (%{value})." |
|
876 | notice_email_error: "Beim Senden einer E-Mail ist ein Fehler aufgetreten (%{value})." | |
876 | notice_email_sent: "Eine E-Mail wurde an %{value} gesendet." |
|
877 | notice_email_sent: "Eine E-Mail wurde an %{value} gesendet." | |
877 | notice_failed_to_save_issues: "%{count} von %{total} ausgewählten Tickets konnte(n) nicht gespeichert werden: %{ids}." |
|
878 | notice_failed_to_save_issues: "%{count} von %{total} ausgewählten Tickets konnte(n) nicht gespeichert werden: %{ids}." | |
878 | notice_failed_to_save_members: "Benutzer konnte nicht gespeichert werden: %{errors}." |
|
879 | notice_failed_to_save_members: "Benutzer konnte nicht gespeichert werden: %{errors}." | |
879 | notice_failed_to_save_time_entries: "Gescheitert %{count} Zeiteinträge für %{total} von ausgewählten: %{ids} zu speichern." |
|
880 | notice_failed_to_save_time_entries: "Gescheitert %{count} Zeiteinträge für %{total} von ausgewählten: %{ids} zu speichern." | |
880 | notice_feeds_access_key_reseted: Ihr Atom-Zugriffsschlüssel wurde zurückgesetzt. |
|
881 | notice_feeds_access_key_reseted: Ihr Atom-Zugriffsschlüssel wurde zurückgesetzt. | |
881 | notice_file_not_found: Anhang existiert nicht oder ist gelöscht worden. |
|
882 | notice_file_not_found: Anhang existiert nicht oder ist gelöscht worden. | |
882 | notice_gantt_chart_truncated: Die Grafik ist unvollständig, da das Maximum der anzeigbaren Aufgaben überschritten wurde (%{max}) |
|
883 | notice_gantt_chart_truncated: Die Grafik ist unvollständig, da das Maximum der anzeigbaren Aufgaben überschritten wurde (%{max}) | |
883 | notice_issue_done_ratios_updated: Der Ticket-Fortschritt wurde aktualisiert. |
|
884 | notice_issue_done_ratios_updated: Der Ticket-Fortschritt wurde aktualisiert. | |
884 | notice_issue_successful_create: Ticket %{id} erstellt. |
|
885 | notice_issue_successful_create: Ticket %{id} erstellt. | |
885 | notice_issue_update_conflict: Das Ticket wurde während Ihrer Bearbeitung von einem anderen Nutzer überarbeitet. |
|
886 | notice_issue_update_conflict: Das Ticket wurde während Ihrer Bearbeitung von einem anderen Nutzer überarbeitet. | |
886 | notice_locking_conflict: Datum wurde von einem anderen Benutzer geändert. |
|
887 | notice_locking_conflict: Datum wurde von einem anderen Benutzer geändert. | |
887 | notice_new_password_must_be_different: Das neue Passwort muss sich vom dem Aktuellen unterscheiden |
|
888 | notice_new_password_must_be_different: Das neue Passwort muss sich vom dem Aktuellen unterscheiden | |
888 | notice_no_issue_selected: "Kein Ticket ausgewählt! Bitte wählen Sie die Tickets, die Sie bearbeiten möchten." |
|
889 | notice_no_issue_selected: "Kein Ticket ausgewählt! Bitte wählen Sie die Tickets, die Sie bearbeiten möchten." | |
889 | notice_not_authorized: Sie sind nicht berechtigt, auf diese Seite zuzugreifen. |
|
890 | notice_not_authorized: Sie sind nicht berechtigt, auf diese Seite zuzugreifen. | |
890 | notice_not_authorized_archived_project: Das Projekt wurde archiviert und ist daher nicht nicht verfügbar. |
|
891 | notice_not_authorized_archived_project: Das Projekt wurde archiviert und ist daher nicht nicht verfügbar. | |
891 | notice_successful_connection: Verbindung erfolgreich. |
|
892 | notice_successful_connection: Verbindung erfolgreich. | |
892 | notice_successful_create: Erfolgreich angelegt |
|
893 | notice_successful_create: Erfolgreich angelegt | |
893 | notice_successful_delete: Erfolgreich gelöscht. |
|
894 | notice_successful_delete: Erfolgreich gelöscht. | |
894 | notice_successful_update: Erfolgreich aktualisiert. |
|
895 | notice_successful_update: Erfolgreich aktualisiert. | |
895 | notice_unable_delete_time_entry: Der Zeiterfassungseintrag konnte nicht gelöscht werden. |
|
896 | notice_unable_delete_time_entry: Der Zeiterfassungseintrag konnte nicht gelöscht werden. | |
896 | notice_unable_delete_version: Die Version konnte nicht gelöscht werden. |
|
897 | notice_unable_delete_version: Die Version konnte nicht gelöscht werden. | |
897 | notice_user_successful_create: Benutzer %{id} angelegt. |
|
898 | notice_user_successful_create: Benutzer %{id} angelegt. | |
898 |
|
899 | |||
899 | permission_add_issue_notes: Kommentare hinzufügen |
|
900 | permission_add_issue_notes: Kommentare hinzufügen | |
900 | permission_add_issue_watchers: Beobachter hinzufügen |
|
901 | permission_add_issue_watchers: Beobachter hinzufügen | |
901 | permission_add_issues: Tickets hinzufügen |
|
902 | permission_add_issues: Tickets hinzufügen | |
902 | permission_add_messages: Forenbeiträge hinzufügen |
|
903 | permission_add_messages: Forenbeiträge hinzufügen | |
903 | permission_add_project: Projekt erstellen |
|
904 | permission_add_project: Projekt erstellen | |
904 | permission_add_subprojects: Unterprojekte erstellen |
|
905 | permission_add_subprojects: Unterprojekte erstellen | |
905 | permission_add_documents: Dokumente hinzufügen |
|
906 | permission_add_documents: Dokumente hinzufügen | |
906 | permission_browse_repository: Projektarchiv ansehen |
|
907 | permission_browse_repository: Projektarchiv ansehen | |
907 | permission_close_project: Schließen / erneutes Öffnen eines Projekts |
|
908 | permission_close_project: Schließen / erneutes Öffnen eines Projekts | |
908 | permission_comment_news: News kommentieren |
|
909 | permission_comment_news: News kommentieren | |
909 | permission_commit_access: Commit-Zugriff |
|
910 | permission_commit_access: Commit-Zugriff | |
910 | permission_delete_issue_watchers: Beobachter löschen |
|
911 | permission_delete_issue_watchers: Beobachter löschen | |
911 | permission_delete_issues: Tickets löschen |
|
912 | permission_delete_issues: Tickets löschen | |
912 | permission_delete_messages: Forenbeiträge löschen |
|
913 | permission_delete_messages: Forenbeiträge löschen | |
913 | permission_delete_own_messages: Eigene Forenbeiträge löschen |
|
914 | permission_delete_own_messages: Eigene Forenbeiträge löschen | |
914 | permission_delete_wiki_pages: Wiki-Seiten löschen |
|
915 | permission_delete_wiki_pages: Wiki-Seiten löschen | |
915 | permission_delete_wiki_pages_attachments: Anhänge löschen |
|
916 | permission_delete_wiki_pages_attachments: Anhänge löschen | |
916 | permission_delete_documents: Dokumente löschen |
|
917 | permission_delete_documents: Dokumente löschen | |
917 | permission_edit_issue_notes: Kommentare bearbeiten |
|
918 | permission_edit_issue_notes: Kommentare bearbeiten | |
918 | permission_edit_issues: Tickets bearbeiten |
|
919 | permission_edit_issues: Tickets bearbeiten | |
919 | permission_edit_messages: Forenbeiträge bearbeiten |
|
920 | permission_edit_messages: Forenbeiträge bearbeiten | |
920 | permission_edit_own_issue_notes: Eigene Kommentare bearbeiten |
|
921 | permission_edit_own_issue_notes: Eigene Kommentare bearbeiten | |
921 | permission_edit_own_messages: Eigene Forenbeiträge bearbeiten |
|
922 | permission_edit_own_messages: Eigene Forenbeiträge bearbeiten | |
922 | permission_edit_own_time_entries: Selbst gebuchte Aufwände bearbeiten |
|
923 | permission_edit_own_time_entries: Selbst gebuchte Aufwände bearbeiten | |
923 | permission_edit_project: Projekt bearbeiten |
|
924 | permission_edit_project: Projekt bearbeiten | |
924 | permission_edit_time_entries: Gebuchte Aufwände bearbeiten |
|
925 | permission_edit_time_entries: Gebuchte Aufwände bearbeiten | |
925 | permission_edit_wiki_pages: Wiki-Seiten bearbeiten |
|
926 | permission_edit_wiki_pages: Wiki-Seiten bearbeiten | |
926 | permission_edit_documents: Dokumente bearbeiten |
|
927 | permission_edit_documents: Dokumente bearbeiten | |
927 | permission_export_wiki_pages: Wiki-Seiten exportieren |
|
928 | permission_export_wiki_pages: Wiki-Seiten exportieren | |
928 | permission_log_time: Aufwände buchen |
|
929 | permission_log_time: Aufwände buchen | |
929 | permission_manage_boards: Foren verwalten |
|
930 | permission_manage_boards: Foren verwalten | |
930 | permission_manage_categories: Ticket-Kategorien verwalten |
|
931 | permission_manage_categories: Ticket-Kategorien verwalten | |
931 | permission_manage_files: Dateien verwalten |
|
932 | permission_manage_files: Dateien verwalten | |
932 | permission_manage_issue_relations: Ticket-Beziehungen verwalten |
|
933 | permission_manage_issue_relations: Ticket-Beziehungen verwalten | |
933 | permission_manage_members: Mitglieder verwalten |
|
934 | permission_manage_members: Mitglieder verwalten | |
934 | permission_manage_news: News verwalten |
|
935 | permission_manage_news: News verwalten | |
935 | permission_manage_project_activities: Aktivitäten (Zeiterfassung) verwalten |
|
936 | permission_manage_project_activities: Aktivitäten (Zeiterfassung) verwalten | |
936 | permission_manage_public_queries: Öffentliche Filter verwalten |
|
937 | permission_manage_public_queries: Öffentliche Filter verwalten | |
937 | permission_manage_related_issues: Zugehörige Tickets verwalten |
|
938 | permission_manage_related_issues: Zugehörige Tickets verwalten | |
938 | permission_manage_repository: Projektarchiv verwalten |
|
939 | permission_manage_repository: Projektarchiv verwalten | |
939 | permission_manage_subtasks: Unteraufgaben verwalten |
|
940 | permission_manage_subtasks: Unteraufgaben verwalten | |
940 | permission_manage_versions: Versionen verwalten |
|
941 | permission_manage_versions: Versionen verwalten | |
941 | permission_manage_wiki: Wiki verwalten |
|
942 | permission_manage_wiki: Wiki verwalten | |
942 | permission_move_issues: Tickets verschieben |
|
943 | permission_move_issues: Tickets verschieben | |
943 | permission_protect_wiki_pages: Wiki-Seiten schützen |
|
944 | permission_protect_wiki_pages: Wiki-Seiten schützen | |
944 | permission_rename_wiki_pages: Wiki-Seiten umbenennen |
|
945 | permission_rename_wiki_pages: Wiki-Seiten umbenennen | |
945 | permission_save_queries: Filter speichern |
|
946 | permission_save_queries: Filter speichern | |
946 | permission_select_project_modules: Projektmodule auswählen |
|
947 | permission_select_project_modules: Projektmodule auswählen | |
947 | permission_set_issues_private: Tickets privat oder öffentlich markieren |
|
948 | permission_set_issues_private: Tickets privat oder öffentlich markieren | |
948 | permission_set_notes_private: Kommentar als privat markieren |
|
949 | permission_set_notes_private: Kommentar als privat markieren | |
949 | permission_set_own_issues_private: Eigene Tickets privat oder öffentlich markieren |
|
950 | permission_set_own_issues_private: Eigene Tickets privat oder öffentlich markieren | |
950 | permission_view_calendar: Kalender ansehen |
|
951 | permission_view_calendar: Kalender ansehen | |
951 | permission_view_changesets: Changesets ansehen |
|
952 | permission_view_changesets: Changesets ansehen | |
952 | permission_view_documents: Dokumente ansehen |
|
953 | permission_view_documents: Dokumente ansehen | |
953 | permission_view_files: Dateien ansehen |
|
954 | permission_view_files: Dateien ansehen | |
954 | permission_view_gantt: Gantt-Diagramm ansehen |
|
955 | permission_view_gantt: Gantt-Diagramm ansehen | |
955 | permission_view_issue_watchers: Liste der Beobachter ansehen |
|
956 | permission_view_issue_watchers: Liste der Beobachter ansehen | |
956 | permission_view_issues: Tickets anzeigen |
|
957 | permission_view_issues: Tickets anzeigen | |
957 | permission_view_messages: Forenbeiträge ansehen |
|
958 | permission_view_messages: Forenbeiträge ansehen | |
958 | permission_view_private_notes: Private Kommentare sehen |
|
959 | permission_view_private_notes: Private Kommentare sehen | |
959 | permission_view_time_entries: Gebuchte Aufwände ansehen |
|
960 | permission_view_time_entries: Gebuchte Aufwände ansehen | |
960 | permission_view_wiki_edits: Wiki-Versionsgeschichte ansehen |
|
961 | permission_view_wiki_edits: Wiki-Versionsgeschichte ansehen | |
961 | permission_view_wiki_pages: Wiki ansehen |
|
962 | permission_view_wiki_pages: Wiki ansehen | |
962 |
|
963 | |||
963 | project_module_boards: Foren |
|
964 | project_module_boards: Foren | |
964 | project_module_calendar: Kalender |
|
965 | project_module_calendar: Kalender | |
965 | project_module_documents: Dokumente |
|
966 | project_module_documents: Dokumente | |
966 | project_module_files: Dateien |
|
967 | project_module_files: Dateien | |
967 | project_module_gantt: Gantt |
|
968 | project_module_gantt: Gantt | |
968 | project_module_issue_tracking: Ticket-Verfolgung |
|
969 | project_module_issue_tracking: Ticket-Verfolgung | |
969 | project_module_news: News |
|
970 | project_module_news: News | |
970 | project_module_repository: Projektarchiv |
|
971 | project_module_repository: Projektarchiv | |
971 | project_module_time_tracking: Zeiterfassung |
|
972 | project_module_time_tracking: Zeiterfassung | |
972 | project_module_wiki: Wiki |
|
973 | project_module_wiki: Wiki | |
973 | project_status_active: aktiv |
|
974 | project_status_active: aktiv | |
974 | project_status_archived: archiviert |
|
975 | project_status_archived: archiviert | |
975 | project_status_closed: geschlossen |
|
976 | project_status_closed: geschlossen | |
976 |
|
977 | |||
977 | setting_activity_days_default: Anzahl Tage pro Seite der Projekt-Aktivität |
|
978 | setting_activity_days_default: Anzahl Tage pro Seite der Projekt-Aktivität | |
978 | setting_app_subtitle: Applikations-Untertitel |
|
979 | setting_app_subtitle: Applikations-Untertitel | |
979 | setting_app_title: Applikations-Titel |
|
980 | setting_app_title: Applikations-Titel | |
980 | setting_attachment_max_size: Max. Dateigröße |
|
981 | setting_attachment_max_size: Max. Dateigröße | |
981 | setting_autofetch_changesets: Changesets automatisch abrufen |
|
982 | setting_autofetch_changesets: Changesets automatisch abrufen | |
982 | setting_autologin: Automatische Anmeldung läuft ab nach |
|
983 | setting_autologin: Automatische Anmeldung läuft ab nach | |
983 | setting_bcc_recipients: E-Mails als Blindkopie (BCC) senden |
|
984 | setting_bcc_recipients: E-Mails als Blindkopie (BCC) senden | |
984 | setting_cache_formatted_text: Formatierten Text im Cache speichern |
|
985 | setting_cache_formatted_text: Formatierten Text im Cache speichern | |
985 | setting_commit_cross_project_ref: Erlauben auf Tickets aller anderen Projekte zu referenzieren |
|
986 | setting_commit_cross_project_ref: Erlauben auf Tickets aller anderen Projekte zu referenzieren | |
986 | setting_commit_fix_keywords: Schlüsselwörter (Status) |
|
987 | setting_commit_fix_keywords: Schlüsselwörter (Status) | |
987 | setting_commit_logtime_activity_id: Aktivität für die Zeiterfassung |
|
988 | setting_commit_logtime_activity_id: Aktivität für die Zeiterfassung | |
988 | setting_commit_logtime_enabled: Aktiviere Zeiterfassung via Commit-Nachricht |
|
989 | setting_commit_logtime_enabled: Aktiviere Zeiterfassung via Commit-Nachricht | |
989 | setting_commit_ref_keywords: Schlüsselwörter (Beziehungen) |
|
990 | setting_commit_ref_keywords: Schlüsselwörter (Beziehungen) | |
990 | setting_cross_project_issue_relations: Ticket-Beziehungen zwischen Projekten erlauben |
|
991 | setting_cross_project_issue_relations: Ticket-Beziehungen zwischen Projekten erlauben | |
991 | setting_cross_project_subtasks: Projektübergreifende Unteraufgaben erlauben |
|
992 | setting_cross_project_subtasks: Projektübergreifende Unteraufgaben erlauben | |
992 | setting_date_format: Datumsformat |
|
993 | setting_date_format: Datumsformat | |
993 | setting_default_issue_start_date_to_creation_date: Aktuelles Datum als Beginn für neue Tickets verwenden |
|
994 | setting_default_issue_start_date_to_creation_date: Aktuelles Datum als Beginn für neue Tickets verwenden | |
994 | setting_default_language: Standardsprache |
|
995 | setting_default_language: Standardsprache | |
995 | setting_default_notification_option: Standard Benachrichtigungsoptionen |
|
996 | setting_default_notification_option: Standard Benachrichtigungsoptionen | |
996 | setting_default_projects_modules: Standardmäßig aktivierte Module für neue Projekte |
|
997 | setting_default_projects_modules: Standardmäßig aktivierte Module für neue Projekte | |
997 | setting_default_projects_public: Neue Projekte sind standardmäßig öffentlich |
|
998 | setting_default_projects_public: Neue Projekte sind standardmäßig öffentlich | |
998 | setting_default_projects_tracker_ids: Standardmäßig aktivierte Tracker für neue Projekte |
|
999 | setting_default_projects_tracker_ids: Standardmäßig aktivierte Tracker für neue Projekte | |
999 | setting_diff_max_lines_displayed: Maximale Anzahl anzuzeigender Diff-Zeilen |
|
1000 | setting_diff_max_lines_displayed: Maximale Anzahl anzuzeigender Diff-Zeilen | |
1000 | setting_display_subprojects_issues: Tickets von Unterprojekten im Hauptprojekt anzeigen |
|
1001 | setting_display_subprojects_issues: Tickets von Unterprojekten im Hauptprojekt anzeigen | |
1001 | setting_emails_footer: E-Mail-Fußzeile |
|
1002 | setting_emails_footer: E-Mail-Fußzeile | |
1002 | setting_emails_header: E-Mail-Kopfzeile |
|
1003 | setting_emails_header: E-Mail-Kopfzeile | |
1003 | setting_enabled_scm: Aktivierte Versionskontrollsysteme |
|
1004 | setting_enabled_scm: Aktivierte Versionskontrollsysteme | |
1004 | setting_feeds_limit: Max. Anzahl Einträge pro Atom-Feed |
|
1005 | setting_feeds_limit: Max. Anzahl Einträge pro Atom-Feed | |
1005 | setting_file_max_size_displayed: Maximale Größe inline angezeigter Textdateien |
|
1006 | setting_file_max_size_displayed: Maximale Größe inline angezeigter Textdateien | |
1006 | setting_force_default_language_for_anonymous: Standardsprache für anonyme Benutzer erzwingen |
|
1007 | setting_force_default_language_for_anonymous: Standardsprache für anonyme Benutzer erzwingen | |
1007 | setting_force_default_language_for_loggedin: Standardsprache für angemeldete Benutzer erzwingen |
|
1008 | setting_force_default_language_for_loggedin: Standardsprache für angemeldete Benutzer erzwingen | |
1008 | setting_gantt_items_limit: Maximale Anzahl von Aufgaben die im Gantt-Chart angezeigt werden |
|
1009 | setting_gantt_items_limit: Maximale Anzahl von Aufgaben die im Gantt-Chart angezeigt werden | |
1009 | setting_gravatar_default: Standard-Gravatar-Bild |
|
1010 | setting_gravatar_default: Standard-Gravatar-Bild | |
1010 | setting_gravatar_enabled: Gravatar-Benutzerbilder benutzen |
|
1011 | setting_gravatar_enabled: Gravatar-Benutzerbilder benutzen | |
1011 | setting_host_name: Hostname |
|
1012 | setting_host_name: Hostname | |
1012 | setting_issue_done_ratio: Berechne den Ticket-Fortschritt mittels |
|
1013 | setting_issue_done_ratio: Berechne den Ticket-Fortschritt mittels | |
1013 | setting_issue_done_ratio_issue_field: Ticket-Feld %-erledigt |
|
1014 | setting_issue_done_ratio_issue_field: Ticket-Feld %-erledigt | |
1014 | setting_issue_done_ratio_issue_status: Ticket-Status |
|
1015 | setting_issue_done_ratio_issue_status: Ticket-Status | |
1015 | setting_issue_group_assignment: Ticketzuweisung an Gruppen erlauben |
|
1016 | setting_issue_group_assignment: Ticketzuweisung an Gruppen erlauben | |
1016 | setting_issue_list_default_columns: Standard-Spalten in der Ticket-Auflistung |
|
1017 | setting_issue_list_default_columns: Standard-Spalten in der Ticket-Auflistung | |
1017 | setting_issues_export_limit: Max. Anzahl Tickets bei CSV/PDF-Export |
|
1018 | setting_issues_export_limit: Max. Anzahl Tickets bei CSV/PDF-Export | |
1018 | setting_jsonp_enabled: JSONP Unterstützung aktivieren |
|
1019 | setting_jsonp_enabled: JSONP Unterstützung aktivieren | |
1019 | setting_link_copied_issue: Tickets beim kopieren verlinken |
|
1020 | setting_link_copied_issue: Tickets beim kopieren verlinken | |
1020 | setting_login_required: Authentifizierung erforderlich |
|
1021 | setting_login_required: Authentifizierung erforderlich | |
1021 | setting_mail_from: E-Mail-Absender |
|
1022 | setting_mail_from: E-Mail-Absender | |
1022 | setting_mail_handler_api_enabled: Abruf eingehender E-Mails aktivieren |
|
1023 | setting_mail_handler_api_enabled: Abruf eingehender E-Mails aktivieren | |
1023 | setting_mail_handler_api_key: API-Schlüssel für eingehende E-Mails |
|
1024 | setting_mail_handler_api_key: API-Schlüssel für eingehende E-Mails | |
1024 | setting_sys_api_key: API-Schlüssel für Webservice zur Projektarchiv-Verwaltung |
|
1025 | setting_sys_api_key: API-Schlüssel für Webservice zur Projektarchiv-Verwaltung | |
1025 | setting_mail_handler_body_delimiters: "Schneide E-Mails nach einer dieser Zeilen ab" |
|
1026 | setting_mail_handler_body_delimiters: "Schneide E-Mails nach einer dieser Zeilen ab" | |
1026 | setting_mail_handler_excluded_filenames: Anhänge nach Namen ausschließen |
|
1027 | setting_mail_handler_excluded_filenames: Anhänge nach Namen ausschließen | |
1027 | setting_new_project_user_role_id: Rolle, die einem Nicht-Administrator zugeordnet wird, der ein Projekt erstellt |
|
1028 | setting_new_project_user_role_id: Rolle, die einem Nicht-Administrator zugeordnet wird, der ein Projekt erstellt | |
1028 | setting_non_working_week_days: Arbeitsfreie Tage |
|
1029 | setting_non_working_week_days: Arbeitsfreie Tage | |
1029 | setting_openid: Erlaube OpenID-Anmeldung und -Registrierung |
|
1030 | setting_openid: Erlaube OpenID-Anmeldung und -Registrierung | |
1030 | setting_password_min_length: Mindestlänge des Passworts |
|
1031 | setting_password_min_length: Mindestlänge des Passworts | |
1031 | setting_password_max_age: Erzwinge Passwortwechsel nach |
|
1032 | setting_password_max_age: Erzwinge Passwortwechsel nach | |
1032 | setting_lost_password: Erlaube Passwort-Zurücksetzen per E-Mail |
|
1033 | setting_lost_password: Erlaube Passwort-Zurücksetzen per E-Mail | |
1033 | setting_per_page_options: Objekte pro Seite |
|
1034 | setting_per_page_options: Objekte pro Seite | |
1034 | setting_plain_text_mail: Nur reinen Text (kein HTML) senden |
|
1035 | setting_plain_text_mail: Nur reinen Text (kein HTML) senden | |
1035 | setting_protocol: Protokoll |
|
1036 | setting_protocol: Protokoll | |
1036 | setting_repositories_encodings: Kodierung von Anhängen und Repositories |
|
1037 | setting_repositories_encodings: Kodierung von Anhängen und Repositories | |
1037 | setting_repository_log_display_limit: Maximale Anzahl anzuzeigender Revisionen in der Historie einer Datei |
|
1038 | setting_repository_log_display_limit: Maximale Anzahl anzuzeigender Revisionen in der Historie einer Datei | |
1038 | setting_rest_api_enabled: REST-Schnittstelle aktivieren |
|
1039 | setting_rest_api_enabled: REST-Schnittstelle aktivieren | |
1039 | setting_self_registration: Registrierung ermöglichen |
|
1040 | setting_self_registration: Registrierung ermöglichen | |
1040 | setting_sequential_project_identifiers: Fortlaufende Projektkennungen generieren |
|
1041 | setting_sequential_project_identifiers: Fortlaufende Projektkennungen generieren | |
1041 | setting_session_lifetime: Längste Dauer einer Sitzung |
|
1042 | setting_session_lifetime: Längste Dauer einer Sitzung | |
1042 | setting_session_timeout: Zeitüberschreitung bei Inaktivität |
|
1043 | setting_session_timeout: Zeitüberschreitung bei Inaktivität | |
1043 | setting_start_of_week: Wochenanfang |
|
1044 | setting_start_of_week: Wochenanfang | |
1044 | setting_sys_api_enabled: Webservice zur Verwaltung der Projektarchive benutzen |
|
1045 | setting_sys_api_enabled: Webservice zur Verwaltung der Projektarchive benutzen | |
1045 | setting_text_formatting: Textformatierung |
|
1046 | setting_text_formatting: Textformatierung | |
1046 | setting_thumbnails_enabled: Vorschaubilder von Dateianhängen anzeigen |
|
1047 | setting_thumbnails_enabled: Vorschaubilder von Dateianhängen anzeigen | |
1047 | setting_thumbnails_size: Größe der Vorschaubilder (in Pixel) |
|
1048 | setting_thumbnails_size: Größe der Vorschaubilder (in Pixel) | |
1048 | setting_time_format: Zeitformat |
|
1049 | setting_time_format: Zeitformat | |
1049 | setting_unsubscribe: Erlaubt Benutzern das eigene Benutzerkonto zu löschen |
|
1050 | setting_unsubscribe: Erlaubt Benutzern das eigene Benutzerkonto zu löschen | |
1050 | setting_user_format: Benutzer-Anzeigeformat |
|
1051 | setting_user_format: Benutzer-Anzeigeformat | |
1051 | setting_welcome_text: Willkommenstext |
|
1052 | setting_welcome_text: Willkommenstext | |
1052 | setting_wiki_compression: Wiki-Historie komprimieren |
|
1053 | setting_wiki_compression: Wiki-Historie komprimieren | |
1053 |
|
1054 | |||
1054 | status_active: aktiv |
|
1055 | status_active: aktiv | |
1055 | status_locked: gesperrt |
|
1056 | status_locked: gesperrt | |
1056 | status_registered: nicht aktivierte |
|
1057 | status_registered: nicht aktivierte | |
1057 |
|
1058 | |||
1058 | text_account_destroy_confirmation: "Möchten Sie wirklich fortfahren?\nIhr Benutzerkonto wird für immer gelöscht und kann nicht wiederhergestellt werden." |
|
1059 | text_account_destroy_confirmation: "Möchten Sie wirklich fortfahren?\nIhr Benutzerkonto wird für immer gelöscht und kann nicht wiederhergestellt werden." | |
1059 | text_are_you_sure: Sind Sie sicher? |
|
1060 | text_are_you_sure: Sind Sie sicher? | |
1060 | text_assign_time_entries_to_project: Gebuchte Aufwände dem Projekt zuweisen |
|
1061 | text_assign_time_entries_to_project: Gebuchte Aufwände dem Projekt zuweisen | |
1061 | text_caracters_maximum: "Max. %{count} Zeichen." |
|
1062 | text_caracters_maximum: "Max. %{count} Zeichen." | |
1062 | text_caracters_minimum: "Muss mindestens %{count} Zeichen lang sein." |
|
1063 | text_caracters_minimum: "Muss mindestens %{count} Zeichen lang sein." | |
1063 | text_comma_separated: Mehrere Werte erlaubt (durch Komma getrennt). |
|
1064 | text_comma_separated: Mehrere Werte erlaubt (durch Komma getrennt). | |
1064 | text_convert_available: ImageMagick-Konvertierung verfügbar (optional) |
|
1065 | text_convert_available: ImageMagick-Konvertierung verfügbar (optional) | |
1065 | text_custom_field_possible_values_info: 'Eine Zeile pro Wert' |
|
1066 | text_custom_field_possible_values_info: 'Eine Zeile pro Wert' | |
1066 | text_default_administrator_account_changed: Administrator-Passwort geändert |
|
1067 | text_default_administrator_account_changed: Administrator-Passwort geändert | |
1067 | text_destroy_time_entries: Gebuchte Aufwände löschen |
|
1068 | text_destroy_time_entries: Gebuchte Aufwände löschen | |
1068 | text_destroy_time_entries_question: Es wurden bereits %{hours} Stunden auf dieses Ticket gebucht. Was soll mit den Aufwänden geschehen? |
|
1069 | text_destroy_time_entries_question: Es wurden bereits %{hours} Stunden auf dieses Ticket gebucht. Was soll mit den Aufwänden geschehen? | |
1069 | text_diff_truncated: '... Dieser Diff wurde abgeschnitten, weil er die maximale Anzahl anzuzeigender Zeilen überschreitet.' |
|
1070 | text_diff_truncated: '... Dieser Diff wurde abgeschnitten, weil er die maximale Anzahl anzuzeigender Zeilen überschreitet.' | |
1070 | 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/configuration.yml vor und starten Sie die Applikation neu." |
|
1071 | 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/configuration.yml vor und starten Sie die Applikation neu." | |
1071 | text_enumeration_category_reassign_to: 'Die Objekte stattdessen diesem Wert zuordnen:' |
|
1072 | text_enumeration_category_reassign_to: 'Die Objekte stattdessen diesem Wert zuordnen:' | |
1072 | text_enumeration_destroy_question: "%{count} Objekt(e) sind diesem Wert zugeordnet." |
|
1073 | text_enumeration_destroy_question: "%{count} Objekt(e) sind diesem Wert zugeordnet." | |
1073 | text_file_repository_writable: Verzeichnis für Dateien beschreibbar |
|
1074 | text_file_repository_writable: Verzeichnis für Dateien beschreibbar | |
1074 | text_git_repository_note: Repository steht für sich alleine (bare) und liegt lokal (z.B. /gitrepo, c:\gitrepo) |
|
1075 | text_git_repository_note: Repository steht für sich alleine (bare) und liegt lokal (z.B. /gitrepo, c:\gitrepo) | |
1075 | text_issue_added: "Ticket %{id} wurde erstellt von %{author}." |
|
1076 | text_issue_added: "Ticket %{id} wurde erstellt von %{author}." | |
1076 | text_issue_category_destroy_assignments: Kategorie-Zuordnung entfernen |
|
1077 | text_issue_category_destroy_assignments: Kategorie-Zuordnung entfernen | |
1077 | text_issue_category_destroy_question: "Einige Tickets (%{count}) sind dieser Kategorie zugeodnet. Was möchten Sie tun?" |
|
1078 | text_issue_category_destroy_question: "Einige Tickets (%{count}) sind dieser Kategorie zugeodnet. Was möchten Sie tun?" | |
1078 | text_issue_category_reassign_to: Tickets dieser Kategorie zuordnen |
|
1079 | text_issue_category_reassign_to: Tickets dieser Kategorie zuordnen | |
1079 | text_issue_conflict_resolution_add_notes: Meine Änderungen übernehmen und alle anderen Änderungen verwerfen |
|
1080 | text_issue_conflict_resolution_add_notes: Meine Änderungen übernehmen und alle anderen Änderungen verwerfen | |
1080 | text_issue_conflict_resolution_cancel: Meine Änderungen verwerfen und %{link} neu anzeigen |
|
1081 | text_issue_conflict_resolution_cancel: Meine Änderungen verwerfen und %{link} neu anzeigen | |
1081 | text_issue_conflict_resolution_overwrite: Meine Änderungen trotzdem übernehmen (vorherige Notizen bleiben erhalten aber manche können überschrieben werden) |
|
1082 | text_issue_conflict_resolution_overwrite: Meine Änderungen trotzdem übernehmen (vorherige Notizen bleiben erhalten aber manche können überschrieben werden) | |
1082 | text_issue_updated: "Ticket %{id} wurde aktualisiert von %{author}." |
|
1083 | text_issue_updated: "Ticket %{id} wurde aktualisiert von %{author}." | |
1083 | text_issues_destroy_confirmation: 'Sind Sie sicher, dass Sie die ausgewählten Tickets löschen möchten?' |
|
1084 | text_issues_destroy_confirmation: 'Sind Sie sicher, dass Sie die ausgewählten Tickets löschen möchten?' | |
1084 | text_issues_destroy_descendants_confirmation: Dies wird auch %{count} Unteraufgabe/n löschen. |
|
1085 | text_issues_destroy_descendants_confirmation: Dies wird auch %{count} Unteraufgabe/n löschen. | |
1085 | text_issues_ref_in_commit_messages: Ticket-Beziehungen und -Status in Commit-Nachrichten |
|
1086 | text_issues_ref_in_commit_messages: Ticket-Beziehungen und -Status in Commit-Nachrichten | |
1086 | text_journal_added: "%{label} %{value} wurde hinzugefügt" |
|
1087 | text_journal_added: "%{label} %{value} wurde hinzugefügt" | |
1087 | text_journal_changed: "%{label} wurde von %{old} zu %{new} geändert" |
|
1088 | text_journal_changed: "%{label} wurde von %{old} zu %{new} geändert" | |
1088 | text_journal_changed_no_detail: "%{label} aktualisiert" |
|
1089 | text_journal_changed_no_detail: "%{label} aktualisiert" | |
1089 | text_journal_deleted: "%{label} %{old} wurde gelöscht" |
|
1090 | text_journal_deleted: "%{label} %{old} wurde gelöscht" | |
1090 | text_journal_set_to: "%{label} wurde auf %{value} gesetzt" |
|
1091 | text_journal_set_to: "%{label} wurde auf %{value} gesetzt" | |
1091 | text_length_between: "Länge zwischen %{min} und %{max} Zeichen." |
|
1092 | text_length_between: "Länge zwischen %{min} und %{max} Zeichen." | |
1092 | text_line_separated: Mehrere Werte sind erlaubt (eine Zeile pro Wert). |
|
1093 | text_line_separated: Mehrere Werte sind erlaubt (eine Zeile pro Wert). | |
1093 | text_load_default_configuration: Standard-Konfiguration laden |
|
1094 | text_load_default_configuration: Standard-Konfiguration laden | |
1094 | text_mercurial_repository_note: Lokales repository (e.g. /hgrepo, c:\hgrepo) |
|
1095 | text_mercurial_repository_note: Lokales repository (e.g. /hgrepo, c:\hgrepo) | |
1095 | text_min_max_length_info: 0 heißt keine Beschränkung |
|
1096 | text_min_max_length_info: 0 heißt keine Beschränkung | |
1096 | text_no_configuration_data: "Rollen, Tracker, Ticket-Status und Workflows wurden noch nicht konfiguriert.\nEs ist sehr zu empfehlen, die Standard-Konfiguration zu laden. Sobald sie geladen ist, können Sie diese abändern." |
|
1097 | text_no_configuration_data: "Rollen, Tracker, Ticket-Status und Workflows wurden noch nicht konfiguriert.\nEs ist sehr zu empfehlen, die Standard-Konfiguration zu laden. Sobald sie geladen ist, können Sie diese abändern." | |
1097 | text_own_membership_delete_confirmation: "Sie sind dabei, einige oder alle Ihre Berechtigungen zu entfernen. Es ist möglich, dass Sie danach das Projekt nicht mehr ansehen oder bearbeiten dürfen.\nSind Sie sicher, dass Sie dies tun möchten?" |
|
1098 | text_own_membership_delete_confirmation: "Sie sind dabei, einige oder alle Ihre Berechtigungen zu entfernen. Es ist möglich, dass Sie danach das Projekt nicht mehr ansehen oder bearbeiten dürfen.\nSind Sie sicher, dass Sie dies tun möchten?" | |
1098 | text_plugin_assets_writable: Verzeichnis für Plugin-Assets beschreibbar |
|
1099 | text_plugin_assets_writable: Verzeichnis für Plugin-Assets beschreibbar | |
1099 | text_project_closed: Dieses Projekt ist geschlossen und kann nicht bearbeitet werden. |
|
1100 | text_project_closed: Dieses Projekt ist geschlossen und kann nicht bearbeitet werden. | |
1100 | text_project_destroy_confirmation: Sind Sie sicher, dass Sie das Projekt löschen wollen? |
|
1101 | text_project_destroy_confirmation: Sind Sie sicher, dass Sie das Projekt löschen wollen? | |
1101 | text_project_identifier_info: 'Kleinbuchstaben (a-z), Ziffern, Binde- und Unterstriche erlaubt, muss mit einem Kleinbuchstaben beginnen.<br />Einmal gespeichert, kann die Kennung nicht mehr geändert werden.' |
|
1102 | text_project_identifier_info: 'Kleinbuchstaben (a-z), Ziffern, Binde- und Unterstriche erlaubt, muss mit einem Kleinbuchstaben beginnen.<br />Einmal gespeichert, kann die Kennung nicht mehr geändert werden.' | |
1102 | text_reassign_time_entries: 'Gebuchte Aufwände diesem Ticket zuweisen:' |
|
1103 | text_reassign_time_entries: 'Gebuchte Aufwände diesem Ticket zuweisen:' | |
1103 | text_regexp_info: z. B. ^[A-Z0-9]+$ |
|
1104 | text_regexp_info: z. B. ^[A-Z0-9]+$ | |
1104 | text_repository_identifier_info: 'Kleinbuchstaben (a-z), Ziffern, Binde- und Unterstriche erlaubt.<br />Einmal gespeichert, kann die Kennung nicht mehr geändert werden.' |
|
1105 | text_repository_identifier_info: 'Kleinbuchstaben (a-z), Ziffern, Binde- und Unterstriche erlaubt.<br />Einmal gespeichert, kann die Kennung nicht mehr geändert werden.' | |
1105 | text_repository_usernames_mapping: "Bitte legen Sie die Zuordnung der Redmine-Benutzer zu den Benutzernamen der Commit-Nachrichten des Projektarchivs fest.\nBenutzer mit identischen Redmine- und Projektarchiv-Benutzernamen oder -E-Mail-Adressen werden automatisch zugeordnet." |
|
1106 | text_repository_usernames_mapping: "Bitte legen Sie die Zuordnung der Redmine-Benutzer zu den Benutzernamen der Commit-Nachrichten des Projektarchivs fest.\nBenutzer mit identischen Redmine- und Projektarchiv-Benutzernamen oder -E-Mail-Adressen werden automatisch zugeordnet." | |
1106 | text_rmagick_available: RMagick verfügbar (optional) |
|
1107 | text_rmagick_available: RMagick verfügbar (optional) | |
1107 | text_scm_command: Kommando |
|
1108 | text_scm_command: Kommando | |
1108 | text_scm_command_not_available: SCM-Kommando ist nicht verfügbar. Bitte prüfen Sie die Einstellungen im Administrationspanel. |
|
1109 | text_scm_command_not_available: SCM-Kommando ist nicht verfügbar. Bitte prüfen Sie die Einstellungen im Administrationspanel. | |
1109 | text_scm_command_version: Version |
|
1110 | text_scm_command_version: Version | |
1110 | text_scm_config: Die SCM-Kommandos können in der in config/configuration.yml konfiguriert werden. Redmine muss anschließend neu gestartet werden. |
|
1111 | text_scm_config: Die SCM-Kommandos können in der in config/configuration.yml konfiguriert werden. Redmine muss anschließend neu gestartet werden. | |
1111 | text_scm_path_encoding_note: "Standard: UTF-8" |
|
1112 | text_scm_path_encoding_note: "Standard: UTF-8" | |
1112 | text_select_mail_notifications: Bitte wählen Sie die Aktionen aus, für die eine Mailbenachrichtigung gesendet werden soll. |
|
1113 | text_select_mail_notifications: Bitte wählen Sie die Aktionen aus, für die eine Mailbenachrichtigung gesendet werden soll. | |
1113 | text_select_project_modules: 'Bitte wählen Sie die Module aus, die in diesem Projekt aktiviert sein sollen:' |
|
1114 | text_select_project_modules: 'Bitte wählen Sie die Module aus, die in diesem Projekt aktiviert sein sollen:' | |
1114 | text_session_expiration_settings: "Achtung: Änderungen können aktuelle Sitzungen beenden, Ihre eingeschlossen!" |
|
1115 | text_session_expiration_settings: "Achtung: Änderungen können aktuelle Sitzungen beenden, Ihre eingeschlossen!" | |
1115 | text_status_changed_by_changeset: "Status geändert durch Changeset %{value}." |
|
1116 | text_status_changed_by_changeset: "Status geändert durch Changeset %{value}." | |
1116 | text_subprojects_destroy_warning: "Dessen Unterprojekte (%{value}) werden ebenfalls gelöscht." |
|
1117 | text_subprojects_destroy_warning: "Dessen Unterprojekte (%{value}) werden ebenfalls gelöscht." | |
1117 | text_subversion_repository_note: 'Beispiele: file:///, http://, https://, svn://, svn+[tunnelscheme]://' |
|
1118 | text_subversion_repository_note: 'Beispiele: file:///, http://, https://, svn://, svn+[tunnelscheme]://' | |
1118 | text_time_entries_destroy_confirmation: Sind Sie sicher, dass Sie die ausgewählten Zeitaufwände löschen möchten? |
|
1119 | text_time_entries_destroy_confirmation: Sind Sie sicher, dass Sie die ausgewählten Zeitaufwände löschen möchten? | |
1119 | text_time_logged_by_changeset: Angewendet in Changeset %{value}. |
|
1120 | text_time_logged_by_changeset: Angewendet in Changeset %{value}. | |
1120 | text_tip_issue_begin_day: Aufgabe, die an diesem Tag beginnt |
|
1121 | text_tip_issue_begin_day: Aufgabe, die an diesem Tag beginnt | |
1121 | text_tip_issue_begin_end_day: Aufgabe, die an diesem Tag beginnt und endet |
|
1122 | text_tip_issue_begin_end_day: Aufgabe, die an diesem Tag beginnt und endet | |
1122 | text_tip_issue_end_day: Aufgabe, die an diesem Tag endet |
|
1123 | text_tip_issue_end_day: Aufgabe, die an diesem Tag endet | |
1123 | text_tracker_no_workflow: Kein Workflow für diesen Tracker definiert. |
|
1124 | text_tracker_no_workflow: Kein Workflow für diesen Tracker definiert. | |
1124 | text_turning_multiple_off: Wenn Sie die Mehrfachauswahl deaktivieren, werden Felder mit Mehrfachauswahl bereinigt. |
|
1125 | text_turning_multiple_off: Wenn Sie die Mehrfachauswahl deaktivieren, werden Felder mit Mehrfachauswahl bereinigt. | |
1125 | Dadurch wird sichergestellt, dass lediglich ein Wert pro Feld ausgewählt ist. |
|
1126 | Dadurch wird sichergestellt, dass lediglich ein Wert pro Feld ausgewählt ist. | |
1126 | text_unallowed_characters: Nicht erlaubte Zeichen |
|
1127 | text_unallowed_characters: Nicht erlaubte Zeichen | |
1127 | text_user_mail_option: "Für nicht ausgewählte Projekte werden Sie nur Benachrichtigungen für Dinge erhalten, die Sie beobachten oder an denen Sie beteiligt sind (z. B. Tickets, deren Autor Sie sind oder die Ihnen zugewiesen sind)." |
|
1128 | text_user_mail_option: "Für nicht ausgewählte Projekte werden Sie nur Benachrichtigungen für Dinge erhalten, die Sie beobachten oder an denen Sie beteiligt sind (z. B. Tickets, deren Autor Sie sind oder die Ihnen zugewiesen sind)." | |
1128 | text_user_wrote: "%{value} schrieb:" |
|
1129 | text_user_wrote: "%{value} schrieb:" | |
1129 | text_warn_on_leaving_unsaved: Die aktuellen Änderungen gehen verloren, wenn Sie diese Seite verlassen. |
|
1130 | text_warn_on_leaving_unsaved: Die aktuellen Änderungen gehen verloren, wenn Sie diese Seite verlassen. | |
1130 | text_wiki_destroy_confirmation: Sind Sie sicher, dass Sie dieses Wiki mit sämtlichem Inhalt löschen möchten? |
|
1131 | text_wiki_destroy_confirmation: Sind Sie sicher, dass Sie dieses Wiki mit sämtlichem Inhalt löschen möchten? | |
1131 | text_wiki_page_destroy_children: Lösche alle Unterseiten |
|
1132 | text_wiki_page_destroy_children: Lösche alle Unterseiten | |
1132 | text_wiki_page_destroy_question: "Diese Seite hat %{descendants} Unterseite(n). Was möchten Sie tun?" |
|
1133 | text_wiki_page_destroy_question: "Diese Seite hat %{descendants} Unterseite(n). Was möchten Sie tun?" | |
1133 | text_wiki_page_nullify_children: Verschiebe die Unterseiten auf die oberste Ebene |
|
1134 | text_wiki_page_nullify_children: Verschiebe die Unterseiten auf die oberste Ebene | |
1134 | text_wiki_page_reassign_children: Ordne die Unterseiten dieser Seite zu |
|
1135 | text_wiki_page_reassign_children: Ordne die Unterseiten dieser Seite zu | |
1135 | text_workflow_edit: Workflow zum Bearbeiten auswählen |
|
1136 | text_workflow_edit: Workflow zum Bearbeiten auswählen | |
1136 | text_zoom_in: Ansicht vergrößern |
|
1137 | text_zoom_in: Ansicht vergrößern | |
1137 | text_zoom_out: Ansicht verkleinern |
|
1138 | text_zoom_out: Ansicht verkleinern | |
1138 |
|
1139 | |||
1139 | version_status_closed: abgeschlossen |
|
1140 | version_status_closed: abgeschlossen | |
1140 | version_status_locked: gesperrt |
|
1141 | version_status_locked: gesperrt | |
1141 | version_status_open: offen |
|
1142 | version_status_open: offen | |
1142 |
|
1143 | |||
1143 | warning_attachments_not_saved: "%{count} Datei(en) konnten nicht gespeichert werden." |
|
1144 | warning_attachments_not_saved: "%{count} Datei(en) konnten nicht gespeichert werden." | |
1144 | label_search_attachments_yes: Namen und Beschreibungen von Anhängen durchsuchen |
|
1145 | label_search_attachments_yes: Namen und Beschreibungen von Anhängen durchsuchen | |
1145 | label_search_attachments_no: Keine Anhänge suchen |
|
1146 | label_search_attachments_no: Keine Anhänge suchen | |
1146 | label_search_attachments_only: Nur Anhänge suchen |
|
1147 | label_search_attachments_only: Nur Anhänge suchen | |
1147 | label_search_open_issues_only: Nur offene Tickets |
|
1148 | label_search_open_issues_only: Nur offene Tickets | |
1148 | field_address: E-Mail |
|
1149 | field_address: E-Mail | |
1149 | setting_max_additional_emails: Maximale Anzahl zusätzlicher E-Mailadressen |
|
1150 | setting_max_additional_emails: Maximale Anzahl zusätzlicher E-Mailadressen | |
1150 | label_email_address_plural: E-Mails |
|
1151 | label_email_address_plural: E-Mails | |
1151 | label_email_address_add: E-Mailadresse hinzufügen |
|
1152 | label_email_address_add: E-Mailadresse hinzufügen | |
1152 | label_enable_notifications: Benachrichtigungen aktivieren |
|
1153 | label_enable_notifications: Benachrichtigungen aktivieren | |
1153 | label_disable_notifications: Benachrichtigungen deaktivieren |
|
1154 | label_disable_notifications: Benachrichtigungen deaktivieren | |
1154 | setting_search_results_per_page: Suchergebnisse pro Seite |
|
1155 | setting_search_results_per_page: Suchergebnisse pro Seite | |
1155 | label_blank_value: leer |
|
1156 | label_blank_value: leer | |
1156 | permission_copy_issues: Tickets kopieren |
|
1157 | permission_copy_issues: Tickets kopieren | |
1157 | error_password_expired: Ihr Passwort ist abgelaufen oder der Administrator verlangt eine Passwortänderung. |
|
1158 | error_password_expired: Ihr Passwort ist abgelaufen oder der Administrator verlangt eine Passwortänderung. | |
1158 | field_time_entries_visibility: Zeiten-Sichtbarkeit |
|
1159 | field_time_entries_visibility: Zeiten-Sichtbarkeit | |
1159 | field_remote_ip: IP-Adresse |
|
1160 | field_remote_ip: IP-Adresse | |
1160 | label_parent_task_attributes: Eigenschaften übergeordneter Aufgaben |
|
1161 | label_parent_task_attributes: Eigenschaften übergeordneter Aufgaben | |
1161 | label_parent_task_attributes_derived: Abgeleitet von Unteraufgaben |
|
1162 | label_parent_task_attributes_derived: Abgeleitet von Unteraufgaben | |
1162 | label_parent_task_attributes_independent: Unabhängig von Unteraufgaben |
|
1163 | label_parent_task_attributes_independent: Unabhängig von Unteraufgaben | |
1163 | label_time_entries_visibility_all: Alle Zeitaufwände |
|
1164 | label_time_entries_visibility_all: Alle Zeitaufwände | |
1164 | label_time_entries_visibility_own: Nur eigene Aufwände |
|
1165 | label_time_entries_visibility_own: Nur eigene Aufwände | |
1165 | label_member_management: Mitglieder verwalten |
|
1166 | label_member_management: Mitglieder verwalten | |
1166 | label_member_management_all_roles: Alle Rollen |
|
1167 | label_member_management_all_roles: Alle Rollen | |
1167 | label_member_management_selected_roles_only: Nur diese Rollen |
|
1168 | label_member_management_selected_roles_only: Nur diese Rollen | |
1168 | label_total_spent_time: Aufgewendete Zeit aller Projekte anzeigen |
|
1169 | label_total_spent_time: Aufgewendete Zeit aller Projekte anzeigen | |
1169 | notice_import_finished: Alle %{count} Einträge wurden importiert. |
|
1170 | notice_import_finished: Alle %{count} Einträge wurden importiert. | |
1170 | notice_import_finished_with_errors: ! '%{count} von %{total} Einträgen konnten nicht importiert werden.' |
|
1171 | notice_import_finished_with_errors: ! '%{count} von %{total} Einträgen konnten nicht importiert werden.' | |
1171 | error_invalid_file_encoding: Die Datei ist keine gültige %{encoding} kodierte Datei |
|
1172 | error_invalid_file_encoding: Die Datei ist keine gültige %{encoding} kodierte Datei | |
1172 | error_invalid_csv_file_or_settings: Die Datei ist keine CSV-Datei oder entspricht nicht den Einstellungen unten |
|
1173 | error_invalid_csv_file_or_settings: Die Datei ist keine CSV-Datei oder entspricht nicht den Einstellungen unten | |
1173 | error_can_not_read_import_file: Beim Einlesen der Datei ist ein Fehler aufgetreten |
|
1174 | error_can_not_read_import_file: Beim Einlesen der Datei ist ein Fehler aufgetreten | |
1174 | permission_import_issues: Tickets importieren |
|
1175 | permission_import_issues: Tickets importieren | |
1175 | label_import_issues: Tickets importieren |
|
1176 | label_import_issues: Tickets importieren | |
1176 | label_select_file_to_import: Bitte wählen Sie eine Datei für den Import aus |
|
1177 | label_select_file_to_import: Bitte wählen Sie eine Datei für den Import aus | |
1177 | label_fields_separator: Trennzeichen |
|
1178 | label_fields_separator: Trennzeichen | |
1178 | label_fields_wrapper: Textqualifizierer |
|
1179 | label_fields_wrapper: Textqualifizierer | |
1179 | label_encoding: Kodierung |
|
1180 | label_encoding: Kodierung | |
1180 | label_comma_char: Komma |
|
1181 | label_comma_char: Komma | |
1181 | label_semi_colon_char: Semikolon |
|
1182 | label_semi_colon_char: Semikolon | |
1182 | label_quote_char: Anführungszeichen |
|
1183 | label_quote_char: Anführungszeichen | |
1183 | label_double_quote_char: Doppelte Anführungszeichen |
|
1184 | label_double_quote_char: Doppelte Anführungszeichen | |
1184 | label_fields_mapping: Zuordnung der Felder |
|
1185 | label_fields_mapping: Zuordnung der Felder | |
1185 | label_file_content_preview: Inhaltsvorschau |
|
1186 | label_file_content_preview: Inhaltsvorschau | |
1186 | label_create_missing_values: Ergänze fehlende Werte |
|
1187 | label_create_missing_values: Ergänze fehlende Werte | |
1187 | button_import: Importieren |
|
1188 | button_import: Importieren | |
1188 | field_total_estimated_hours: Summe des geschätzten Aufwands |
|
1189 | field_total_estimated_hours: Summe des geschätzten Aufwands | |
1189 | label_api: API |
|
1190 | label_api: API | |
1190 | label_total_plural: Summe |
|
1191 | label_total_plural: Summe | |
1191 | label_assigned_issues: Zugewiesene Tickets |
|
1192 | label_assigned_issues: Zugewiesene Tickets | |
1192 | label_field_format_enumeration: Eigenschaft/Wert-Paare |
|
1193 | label_field_format_enumeration: Eigenschaft/Wert-Paare | |
1193 | label_f_hour_short: '%{value} h' |
|
1194 | label_f_hour_short: '%{value} h' | |
1194 | field_default_version: Standard-Version |
|
1195 | field_default_version: Standard-Version | |
1195 | error_attachment_extension_not_allowed: Der Dateityp %{extension} des Anhangs ist nicht zugelassen |
|
1196 | error_attachment_extension_not_allowed: Der Dateityp %{extension} des Anhangs ist nicht zugelassen | |
1196 | setting_attachment_extensions_allowed: Zugelassene Dateitypen |
|
1197 | setting_attachment_extensions_allowed: Zugelassene Dateitypen | |
1197 | setting_attachment_extensions_denied: Nicht zugelassene Dateitypen |
|
1198 | setting_attachment_extensions_denied: Nicht zugelassene Dateitypen | |
1198 | label_any_open_issues: irgendein offenes Ticket |
|
1199 | label_any_open_issues: irgendein offenes Ticket | |
1199 | label_no_open_issues: kein offenes Ticket |
|
1200 | label_no_open_issues: kein offenes Ticket | |
1200 | label_default_values_for_new_users: Standardwerte für neue Benutzer |
|
1201 | label_default_values_for_new_users: Standardwerte für neue Benutzer | |
1201 | error_ldap_bind_credentials: Invalid LDAP Account/Password |
|
1202 | error_ldap_bind_credentials: Invalid LDAP Account/Password | |
1202 | mail_body_settings_updated: ! 'The following settings were changed:' |
|
1203 | mail_body_settings_updated: ! 'The following settings were changed:' | |
1203 | label_relations: Relations |
|
1204 | label_relations: Relations | |
1204 | button_filter: Filter |
|
1205 | button_filter: Filter |
@@ -1,1203 +1,1204 | |||||
1 | en-GB: |
|
1 | en-GB: | |
2 | direction: ltr |
|
2 | direction: ltr | |
3 | date: |
|
3 | date: | |
4 | formats: |
|
4 | formats: | |
5 | # Use the strftime parameters for formats. |
|
5 | # Use the strftime parameters for formats. | |
6 | # When no format has been given, it uses default. |
|
6 | # When no format has been given, it uses default. | |
7 | # You can provide other formats here if you like! |
|
7 | # You can provide other formats here if you like! | |
8 | default: "%d/%m/%Y" |
|
8 | default: "%d/%m/%Y" | |
9 | short: "%d %b" |
|
9 | short: "%d %b" | |
10 | long: "%d %B, %Y" |
|
10 | long: "%d %B, %Y" | |
11 |
|
11 | |||
12 | day_names: [Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday] |
|
12 | day_names: [Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday] | |
13 | abbr_day_names: [Sun, Mon, Tue, Wed, Thu, Fri, Sat] |
|
13 | abbr_day_names: [Sun, Mon, Tue, Wed, Thu, Fri, Sat] | |
14 |
|
14 | |||
15 | # Don't forget the nil at the beginning; there's no such thing as a 0th month |
|
15 | # Don't forget the nil at the beginning; there's no such thing as a 0th month | |
16 | month_names: [~, January, February, March, April, May, June, July, August, September, October, November, December] |
|
16 | month_names: [~, January, February, March, April, May, June, July, August, September, October, November, December] | |
17 | abbr_month_names: [~, Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec] |
|
17 | abbr_month_names: [~, Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec] | |
18 | # Used in date_select and datime_select. |
|
18 | # Used in date_select and datime_select. | |
19 | order: |
|
19 | order: | |
20 | - :year |
|
20 | - :year | |
21 | - :month |
|
21 | - :month | |
22 | - :day |
|
22 | - :day | |
23 |
|
23 | |||
24 | time: |
|
24 | time: | |
25 | formats: |
|
25 | formats: | |
26 | default: "%d/%m/%Y %I:%M %p" |
|
26 | default: "%d/%m/%Y %I:%M %p" | |
27 | time: "%I:%M %p" |
|
27 | time: "%I:%M %p" | |
28 | short: "%d %b %H:%M" |
|
28 | short: "%d %b %H:%M" | |
29 | long: "%d %B, %Y %H:%M" |
|
29 | long: "%d %B, %Y %H:%M" | |
30 | am: "am" |
|
30 | am: "am" | |
31 | pm: "pm" |
|
31 | pm: "pm" | |
32 |
|
32 | |||
33 | datetime: |
|
33 | datetime: | |
34 | distance_in_words: |
|
34 | distance_in_words: | |
35 | half_a_minute: "half a minute" |
|
35 | half_a_minute: "half a minute" | |
36 | less_than_x_seconds: |
|
36 | less_than_x_seconds: | |
37 | one: "less than 1 second" |
|
37 | one: "less than 1 second" | |
38 | other: "less than %{count} seconds" |
|
38 | other: "less than %{count} seconds" | |
39 | x_seconds: |
|
39 | x_seconds: | |
40 | one: "1 second" |
|
40 | one: "1 second" | |
41 | other: "%{count} seconds" |
|
41 | other: "%{count} seconds" | |
42 | less_than_x_minutes: |
|
42 | less_than_x_minutes: | |
43 | one: "less than a minute" |
|
43 | one: "less than a minute" | |
44 | other: "less than %{count} minutes" |
|
44 | other: "less than %{count} minutes" | |
45 | x_minutes: |
|
45 | x_minutes: | |
46 | one: "1 minute" |
|
46 | one: "1 minute" | |
47 | other: "%{count} minutes" |
|
47 | other: "%{count} minutes" | |
48 | about_x_hours: |
|
48 | about_x_hours: | |
49 | one: "about 1 hour" |
|
49 | one: "about 1 hour" | |
50 | other: "about %{count} hours" |
|
50 | other: "about %{count} hours" | |
51 | x_hours: |
|
51 | x_hours: | |
52 | one: "1 hour" |
|
52 | one: "1 hour" | |
53 | other: "%{count} hours" |
|
53 | other: "%{count} hours" | |
54 | x_days: |
|
54 | x_days: | |
55 | one: "1 day" |
|
55 | one: "1 day" | |
56 | other: "%{count} days" |
|
56 | other: "%{count} days" | |
57 | about_x_months: |
|
57 | about_x_months: | |
58 | one: "about 1 month" |
|
58 | one: "about 1 month" | |
59 | other: "about %{count} months" |
|
59 | other: "about %{count} months" | |
60 | x_months: |
|
60 | x_months: | |
61 | one: "1 month" |
|
61 | one: "1 month" | |
62 | other: "%{count} months" |
|
62 | other: "%{count} months" | |
63 | about_x_years: |
|
63 | about_x_years: | |
64 | one: "about 1 year" |
|
64 | one: "about 1 year" | |
65 | other: "about %{count} years" |
|
65 | other: "about %{count} years" | |
66 | over_x_years: |
|
66 | over_x_years: | |
67 | one: "over 1 year" |
|
67 | one: "over 1 year" | |
68 | other: "over %{count} years" |
|
68 | other: "over %{count} years" | |
69 | almost_x_years: |
|
69 | almost_x_years: | |
70 | one: "almost 1 year" |
|
70 | one: "almost 1 year" | |
71 | other: "almost %{count} years" |
|
71 | other: "almost %{count} years" | |
72 |
|
72 | |||
73 | number: |
|
73 | number: | |
74 | format: |
|
74 | format: | |
75 | separator: "." |
|
75 | separator: "." | |
76 | delimiter: " " |
|
76 | delimiter: " " | |
77 | precision: 3 |
|
77 | precision: 3 | |
78 |
|
78 | |||
79 | currency: |
|
79 | currency: | |
80 | format: |
|
80 | format: | |
81 | format: "%u%n" |
|
81 | format: "%u%n" | |
82 | unit: "£" |
|
82 | unit: "£" | |
83 |
|
83 | |||
84 | human: |
|
84 | human: | |
85 | format: |
|
85 | format: | |
86 | delimiter: "" |
|
86 | delimiter: "" | |
87 | precision: 3 |
|
87 | precision: 3 | |
88 | storage_units: |
|
88 | storage_units: | |
89 | format: "%n %u" |
|
89 | format: "%n %u" | |
90 | units: |
|
90 | units: | |
91 | byte: |
|
91 | byte: | |
92 | one: "Byte" |
|
92 | one: "Byte" | |
93 | other: "Bytes" |
|
93 | other: "Bytes" | |
94 | kb: "KB" |
|
94 | kb: "KB" | |
95 | mb: "MB" |
|
95 | mb: "MB" | |
96 | gb: "GB" |
|
96 | gb: "GB" | |
97 | tb: "TB" |
|
97 | tb: "TB" | |
98 |
|
98 | |||
99 | # Used in array.to_sentence. |
|
99 | # Used in array.to_sentence. | |
100 | support: |
|
100 | support: | |
101 | array: |
|
101 | array: | |
102 | sentence_connector: "and" |
|
102 | sentence_connector: "and" | |
103 | skip_last_comma: false |
|
103 | skip_last_comma: false | |
104 |
|
104 | |||
105 | activerecord: |
|
105 | activerecord: | |
106 | errors: |
|
106 | errors: | |
107 | template: |
|
107 | template: | |
108 | header: |
|
108 | header: | |
109 | one: "1 error prohibited this %{model} from being saved" |
|
109 | one: "1 error prohibited this %{model} from being saved" | |
110 | other: "%{count} errors prohibited this %{model} from being saved" |
|
110 | other: "%{count} errors prohibited this %{model} from being saved" | |
111 | messages: |
|
111 | messages: | |
112 | inclusion: "is not included in the list" |
|
112 | inclusion: "is not included in the list" | |
113 | exclusion: "is reserved" |
|
113 | exclusion: "is reserved" | |
114 | invalid: "is invalid" |
|
114 | invalid: "is invalid" | |
115 | confirmation: "doesn't match confirmation" |
|
115 | confirmation: "doesn't match confirmation" | |
116 | accepted: "must be accepted" |
|
116 | accepted: "must be accepted" | |
117 | empty: "cannot be empty" |
|
117 | empty: "cannot be empty" | |
118 | blank: "cannot be blank" |
|
118 | blank: "cannot be blank" | |
119 | too_long: "is too long (maximum is %{count} characters)" |
|
119 | too_long: "is too long (maximum is %{count} characters)" | |
120 | too_short: "is too short (minimum is %{count} characters)" |
|
120 | too_short: "is too short (minimum is %{count} characters)" | |
121 | wrong_length: "is the wrong length (should be %{count} characters)" |
|
121 | wrong_length: "is the wrong length (should be %{count} characters)" | |
122 | taken: "has already been taken" |
|
122 | taken: "has already been taken" | |
123 | not_a_number: "is not a number" |
|
123 | not_a_number: "is not a number" | |
124 | not_a_date: "is not a valid date" |
|
124 | not_a_date: "is not a valid date" | |
125 | greater_than: "must be greater than %{count}" |
|
125 | greater_than: "must be greater than %{count}" | |
126 | greater_than_or_equal_to: "must be greater than or equal to %{count}" |
|
126 | greater_than_or_equal_to: "must be greater than or equal to %{count}" | |
127 | equal_to: "must be equal to %{count}" |
|
127 | equal_to: "must be equal to %{count}" | |
128 | less_than: "must be less than %{count}" |
|
128 | less_than: "must be less than %{count}" | |
129 | less_than_or_equal_to: "must be less than or equal to %{count}" |
|
129 | less_than_or_equal_to: "must be less than or equal to %{count}" | |
130 | odd: "must be odd" |
|
130 | odd: "must be odd" | |
131 | even: "must be even" |
|
131 | even: "must be even" | |
132 | greater_than_start_date: "must be greater than start date" |
|
132 | greater_than_start_date: "must be greater than start date" | |
133 | not_same_project: "doesn't belong to the same project" |
|
133 | not_same_project: "doesn't belong to the same project" | |
134 | circular_dependency: "This relation would create a circular dependency" |
|
134 | circular_dependency: "This relation would create a circular dependency" | |
135 | cant_link_an_issue_with_a_descendant: "An issue cannot be linked to one of its subtasks" |
|
135 | cant_link_an_issue_with_a_descendant: "An issue cannot be linked to one of its subtasks" | |
136 | earlier_than_minimum_start_date: "cannot be earlier than %{date} because of preceding issues" |
|
136 | earlier_than_minimum_start_date: "cannot be earlier than %{date} because of preceding issues" | |
137 |
|
137 | |||
138 | actionview_instancetag_blank_option: Please select |
|
138 | actionview_instancetag_blank_option: Please select | |
139 |
|
139 | |||
140 | general_text_No: 'No' |
|
140 | general_text_No: 'No' | |
141 | general_text_Yes: 'Yes' |
|
141 | general_text_Yes: 'Yes' | |
142 | general_text_no: 'no' |
|
142 | general_text_no: 'no' | |
143 | general_text_yes: 'yes' |
|
143 | general_text_yes: 'yes' | |
144 | general_lang_name: 'English (British)' |
|
144 | general_lang_name: 'English (British)' | |
145 | general_csv_separator: ',' |
|
145 | general_csv_separator: ',' | |
146 | general_csv_decimal_separator: '.' |
|
146 | general_csv_decimal_separator: '.' | |
147 | general_csv_encoding: ISO-8859-1 |
|
147 | general_csv_encoding: ISO-8859-1 | |
148 | general_pdf_fontname: freesans |
|
148 | general_pdf_fontname: freesans | |
149 | general_pdf_monospaced_fontname: freemono |
|
149 | general_pdf_monospaced_fontname: freemono | |
150 | general_first_day_of_week: '1' |
|
150 | general_first_day_of_week: '1' | |
151 |
|
151 | |||
152 | notice_account_updated: Account was successfully updated. |
|
152 | notice_account_updated: Account was successfully updated. | |
153 | notice_account_invalid_credentials: Invalid user or password |
|
153 | notice_account_invalid_credentials: Invalid user or password | |
154 | notice_account_password_updated: Password was successfully updated. |
|
154 | notice_account_password_updated: Password was successfully updated. | |
155 | notice_account_wrong_password: Wrong password |
|
155 | notice_account_wrong_password: Wrong password | |
156 | notice_account_register_done: Account was successfully created. An email containing the instructions to activate your account was sent to %{email}. |
|
156 | notice_account_register_done: Account was successfully created. An email containing the instructions to activate your account was sent to %{email}. | |
157 | notice_account_unknown_email: Unknown user. |
|
157 | notice_account_unknown_email: Unknown user. | |
158 | notice_can_t_change_password: This account uses an external authentication source. Impossible to change the password. |
|
158 | notice_can_t_change_password: This account uses an external authentication source. Impossible to change the password. | |
159 | notice_account_lost_email_sent: An email with instructions to choose a new password has been sent to you. |
|
159 | notice_account_lost_email_sent: An email with instructions to choose a new password has been sent to you. | |
160 | notice_account_activated: Your account has been activated. You can now log in. |
|
160 | notice_account_activated: Your account has been activated. You can now log in. | |
161 | notice_successful_create: Successful creation. |
|
161 | notice_successful_create: Successful creation. | |
162 | notice_successful_update: Successful update. |
|
162 | notice_successful_update: Successful update. | |
163 | notice_successful_delete: Successful deletion. |
|
163 | notice_successful_delete: Successful deletion. | |
164 | notice_successful_connection: Successful connection. |
|
164 | notice_successful_connection: Successful connection. | |
165 | notice_file_not_found: The page you were trying to access doesn't exist or has been removed. |
|
165 | notice_file_not_found: The page you were trying to access doesn't exist or has been removed. | |
166 | notice_locking_conflict: Data has been updated by another user. |
|
166 | notice_locking_conflict: Data has been updated by another user. | |
167 | notice_not_authorized: You are not authorised to access this page. |
|
167 | notice_not_authorized: You are not authorised to access this page. | |
168 | notice_not_authorized_archived_project: The project you're trying to access has been archived. |
|
168 | notice_not_authorized_archived_project: The project you're trying to access has been archived. | |
169 | notice_email_sent: "An email was sent to %{value}" |
|
169 | notice_email_sent: "An email was sent to %{value}" | |
170 | notice_email_error: "An error occurred while sending mail (%{value})" |
|
170 | notice_email_error: "An error occurred while sending mail (%{value})" | |
171 | notice_feeds_access_key_reseted: Your Atom access key was reset. |
|
171 | notice_feeds_access_key_reseted: Your Atom access key was reset. | |
172 | notice_api_access_key_reseted: Your API access key was reset. |
|
172 | notice_api_access_key_reseted: Your API access key was reset. | |
173 | notice_failed_to_save_issues: "Failed to save %{count} issue(s) on %{total} selected: %{ids}." |
|
173 | notice_failed_to_save_issues: "Failed to save %{count} issue(s) on %{total} selected: %{ids}." | |
174 | notice_failed_to_save_members: "Failed to save member(s): %{errors}." |
|
174 | notice_failed_to_save_members: "Failed to save member(s): %{errors}." | |
175 | notice_no_issue_selected: "No issue is selected! Please, check the issues you want to edit." |
|
175 | notice_no_issue_selected: "No issue is selected! Please, check the issues you want to edit." | |
176 | notice_account_pending: "Your account was created and is now pending administrator approval." |
|
176 | notice_account_pending: "Your account was created and is now pending administrator approval." | |
177 | notice_default_data_loaded: Default configuration successfully loaded. |
|
177 | notice_default_data_loaded: Default configuration successfully loaded. | |
178 | notice_unable_delete_version: Unable to delete version. |
|
178 | notice_unable_delete_version: Unable to delete version. | |
179 | notice_unable_delete_time_entry: Unable to delete time log entry. |
|
179 | notice_unable_delete_time_entry: Unable to delete time log entry. | |
180 | notice_issue_done_ratios_updated: Issue done ratios updated. |
|
180 | notice_issue_done_ratios_updated: Issue done ratios updated. | |
181 | notice_gantt_chart_truncated: "The chart was truncated because it exceeds the maximum number of items that can be displayed (%{max})" |
|
181 | notice_gantt_chart_truncated: "The chart was truncated because it exceeds the maximum number of items that can be displayed (%{max})" | |
182 |
|
182 | |||
183 | error_can_t_load_default_data: "Default configuration could not be loaded: %{value}" |
|
183 | error_can_t_load_default_data: "Default configuration could not be loaded: %{value}" | |
184 | error_scm_not_found: "The entry or revision was not found in the repository." |
|
184 | error_scm_not_found: "The entry or revision was not found in the repository." | |
185 | error_scm_command_failed: "An error occurred when trying to access the repository: %{value}" |
|
185 | error_scm_command_failed: "An error occurred when trying to access the repository: %{value}" | |
186 | error_scm_annotate: "The entry does not exist or cannot be annotated." |
|
186 | error_scm_annotate: "The entry does not exist or cannot be annotated." | |
187 | error_scm_annotate_big_text_file: "The entry cannot be annotated, as it exceeds the maximum text file size." |
|
187 | error_scm_annotate_big_text_file: "The entry cannot be annotated, as it exceeds the maximum text file size." | |
188 | error_issue_not_found_in_project: 'The issue was not found or does not belong to this project' |
|
188 | error_issue_not_found_in_project: 'The issue was not found or does not belong to this project' | |
189 | error_no_tracker_in_project: 'No tracker is associated to this project. Please check the Project settings.' |
|
189 | error_no_tracker_in_project: 'No tracker is associated to this project. Please check the Project settings.' | |
190 | error_no_default_issue_status: 'No default issue status is defined. Please check your configuration (Go to "Administration -> Issue statuses").' |
|
190 | error_no_default_issue_status: 'No default issue status is defined. Please check your configuration (Go to "Administration -> Issue statuses").' | |
191 | error_can_not_delete_custom_field: Unable to delete custom field |
|
191 | error_can_not_delete_custom_field: Unable to delete custom field | |
192 | error_can_not_delete_tracker: "This tracker contains issues and cannot be deleted." |
|
192 | error_can_not_delete_tracker: "This tracker contains issues and cannot be deleted." | |
193 | error_can_not_remove_role: "This role is in use and cannot be deleted." |
|
193 | error_can_not_remove_role: "This role is in use and cannot be deleted." | |
194 | error_can_not_reopen_issue_on_closed_version: 'An issue assigned to a closed version cannot be reopened' |
|
194 | error_can_not_reopen_issue_on_closed_version: 'An issue assigned to a closed version cannot be reopened' | |
195 | error_can_not_archive_project: This project cannot be archived |
|
195 | error_can_not_archive_project: This project cannot be archived | |
196 | error_issue_done_ratios_not_updated: "Issue done ratios not updated." |
|
196 | error_issue_done_ratios_not_updated: "Issue done ratios not updated." | |
197 | error_workflow_copy_source: 'Please select a source tracker or role' |
|
197 | error_workflow_copy_source: 'Please select a source tracker or role' | |
198 | error_workflow_copy_target: 'Please select target tracker(s) and role(s)' |
|
198 | error_workflow_copy_target: 'Please select target tracker(s) and role(s)' | |
199 | error_unable_delete_issue_status: 'Unable to delete issue status' |
|
199 | error_unable_delete_issue_status: 'Unable to delete issue status' | |
200 | error_unable_to_connect: "Unable to connect (%{value})" |
|
200 | error_unable_to_connect: "Unable to connect (%{value})" | |
201 | warning_attachments_not_saved: "%{count} file(s) could not be saved." |
|
201 | warning_attachments_not_saved: "%{count} file(s) could not be saved." | |
202 |
|
202 | |||
203 | mail_subject_lost_password: "Your %{value} password" |
|
203 | mail_subject_lost_password: "Your %{value} password" | |
204 | mail_body_lost_password: 'To change your password, click on the following link:' |
|
204 | mail_body_lost_password: 'To change your password, click on the following link:' | |
205 | mail_subject_register: "Your %{value} account activation" |
|
205 | mail_subject_register: "Your %{value} account activation" | |
206 | mail_body_register: 'To activate your account, click on the following link:' |
|
206 | mail_body_register: 'To activate your account, click on the following link:' | |
207 | mail_body_account_information_external: "You can use your %{value} account to log in." |
|
207 | mail_body_account_information_external: "You can use your %{value} account to log in." | |
208 | mail_body_account_information: Your account information |
|
208 | mail_body_account_information: Your account information | |
209 | mail_subject_account_activation_request: "%{value} account activation request" |
|
209 | mail_subject_account_activation_request: "%{value} account activation request" | |
210 | mail_body_account_activation_request: "A new user (%{value}) has registered. The account is pending your approval:" |
|
210 | mail_body_account_activation_request: "A new user (%{value}) has registered. The account is pending your approval:" | |
211 | mail_subject_reminder: "%{count} issue(s) due in the next %{days} days" |
|
211 | mail_subject_reminder: "%{count} issue(s) due in the next %{days} days" | |
212 | mail_body_reminder: "%{count} issue(s) that are assigned to you are due in the next %{days} days:" |
|
212 | mail_body_reminder: "%{count} issue(s) that are assigned to you are due in the next %{days} days:" | |
213 | mail_subject_wiki_content_added: "'%{id}' wiki page has been added" |
|
213 | mail_subject_wiki_content_added: "'%{id}' wiki page has been added" | |
214 | mail_body_wiki_content_added: "The '%{id}' wiki page has been added by %{author}." |
|
214 | mail_body_wiki_content_added: "The '%{id}' wiki page has been added by %{author}." | |
215 | mail_subject_wiki_content_updated: "'%{id}' wiki page has been updated" |
|
215 | mail_subject_wiki_content_updated: "'%{id}' wiki page has been updated" | |
216 | mail_body_wiki_content_updated: "The '%{id}' wiki page has been updated by %{author}." |
|
216 | mail_body_wiki_content_updated: "The '%{id}' wiki page has been updated by %{author}." | |
217 |
|
217 | |||
218 |
|
218 | |||
219 | field_name: Name |
|
219 | field_name: Name | |
220 | field_description: Description |
|
220 | field_description: Description | |
221 | field_summary: Summary |
|
221 | field_summary: Summary | |
222 | field_is_required: Required |
|
222 | field_is_required: Required | |
223 | field_firstname: First name |
|
223 | field_firstname: First name | |
224 | field_lastname: Last name |
|
224 | field_lastname: Last name | |
225 | field_mail: Email |
|
225 | field_mail: Email | |
226 | field_filename: File |
|
226 | field_filename: File | |
227 | field_filesize: Size |
|
227 | field_filesize: Size | |
228 | field_downloads: Downloads |
|
228 | field_downloads: Downloads | |
229 | field_author: Author |
|
229 | field_author: Author | |
230 | field_created_on: Created |
|
230 | field_created_on: Created | |
231 | field_updated_on: Updated |
|
231 | field_updated_on: Updated | |
232 | field_field_format: Format |
|
232 | field_field_format: Format | |
233 | field_is_for_all: For all projects |
|
233 | field_is_for_all: For all projects | |
234 | field_possible_values: Possible values |
|
234 | field_possible_values: Possible values | |
235 | field_regexp: Regular expression |
|
235 | field_regexp: Regular expression | |
236 | field_min_length: Minimum length |
|
236 | field_min_length: Minimum length | |
237 | field_max_length: Maximum length |
|
237 | field_max_length: Maximum length | |
238 | field_value: Value |
|
238 | field_value: Value | |
239 | field_category: Category |
|
239 | field_category: Category | |
240 | field_title: Title |
|
240 | field_title: Title | |
241 | field_project: Project |
|
241 | field_project: Project | |
242 | field_issue: Issue |
|
242 | field_issue: Issue | |
243 | field_status: Status |
|
243 | field_status: Status | |
244 | field_notes: Notes |
|
244 | field_notes: Notes | |
245 | field_is_closed: Issue closed |
|
245 | field_is_closed: Issue closed | |
246 | field_is_default: Default value |
|
246 | field_is_default: Default value | |
247 | field_tracker: Tracker |
|
247 | field_tracker: Tracker | |
248 | field_subject: Subject |
|
248 | field_subject: Subject | |
249 | field_due_date: Due date |
|
249 | field_due_date: Due date | |
250 | field_assigned_to: Assignee |
|
250 | field_assigned_to: Assignee | |
251 | field_priority: Priority |
|
251 | field_priority: Priority | |
252 | field_fixed_version: Target version |
|
252 | field_fixed_version: Target version | |
253 | field_user: User |
|
253 | field_user: User | |
254 | field_principal: Principal |
|
254 | field_principal: Principal | |
255 | field_role: Role |
|
255 | field_role: Role | |
256 | field_homepage: Homepage |
|
256 | field_homepage: Homepage | |
257 | field_is_public: Public |
|
257 | field_is_public: Public | |
258 | field_parent: Subproject of |
|
258 | field_parent: Subproject of | |
259 | field_is_in_roadmap: Issues displayed in roadmap |
|
259 | field_is_in_roadmap: Issues displayed in roadmap | |
260 | field_login: Login |
|
260 | field_login: Login | |
261 | field_mail_notification: Email notifications |
|
261 | field_mail_notification: Email notifications | |
262 | field_admin: Administrator |
|
262 | field_admin: Administrator | |
263 | field_last_login_on: Last connection |
|
263 | field_last_login_on: Last connection | |
264 | field_language: Language |
|
264 | field_language: Language | |
265 | field_effective_date: Date |
|
265 | field_effective_date: Date | |
266 | field_password: Password |
|
266 | field_password: Password | |
267 | field_new_password: New password |
|
267 | field_new_password: New password | |
268 | field_password_confirmation: Confirmation |
|
268 | field_password_confirmation: Confirmation | |
269 | field_version: Version |
|
269 | field_version: Version | |
270 | field_type: Type |
|
270 | field_type: Type | |
271 | field_host: Host |
|
271 | field_host: Host | |
272 | field_port: Port |
|
272 | field_port: Port | |
273 | field_account: Account |
|
273 | field_account: Account | |
274 | field_base_dn: Base DN |
|
274 | field_base_dn: Base DN | |
275 | field_attr_login: Login attribute |
|
275 | field_attr_login: Login attribute | |
276 | field_attr_firstname: Firstname attribute |
|
276 | field_attr_firstname: Firstname attribute | |
277 | field_attr_lastname: Lastname attribute |
|
277 | field_attr_lastname: Lastname attribute | |
278 | field_attr_mail: Email attribute |
|
278 | field_attr_mail: Email attribute | |
279 | field_onthefly: On-the-fly user creation |
|
279 | field_onthefly: On-the-fly user creation | |
280 | field_start_date: Start date |
|
280 | field_start_date: Start date | |
281 | field_done_ratio: "% Done" |
|
281 | field_done_ratio: "% Done" | |
282 | field_auth_source: Authentication mode |
|
282 | field_auth_source: Authentication mode | |
283 | field_hide_mail: Hide my email address |
|
283 | field_hide_mail: Hide my email address | |
284 | field_comments: Comment |
|
284 | field_comments: Comment | |
285 | field_url: URL |
|
285 | field_url: URL | |
286 | field_start_page: Start page |
|
286 | field_start_page: Start page | |
287 | field_subproject: Subproject |
|
287 | field_subproject: Subproject | |
288 | field_hours: Hours |
|
288 | field_hours: Hours | |
289 | field_activity: Activity |
|
289 | field_activity: Activity | |
290 | field_spent_on: Date |
|
290 | field_spent_on: Date | |
291 | field_identifier: Identifier |
|
291 | field_identifier: Identifier | |
292 | field_is_filter: Used as a filter |
|
292 | field_is_filter: Used as a filter | |
293 | field_issue_to: Related issue |
|
293 | field_issue_to: Related issue | |
294 | field_delay: Delay |
|
294 | field_delay: Delay | |
295 | field_assignable: Issues can be assigned to this role |
|
295 | field_assignable: Issues can be assigned to this role | |
296 | field_redirect_existing_links: Redirect existing links |
|
296 | field_redirect_existing_links: Redirect existing links | |
297 | field_estimated_hours: Estimated time |
|
297 | field_estimated_hours: Estimated time | |
298 | field_column_names: Columns |
|
298 | field_column_names: Columns | |
299 | field_time_entries: Log time |
|
299 | field_time_entries: Log time | |
300 | field_time_zone: Time zone |
|
300 | field_time_zone: Time zone | |
301 | field_searchable: Searchable |
|
301 | field_searchable: Searchable | |
302 | field_default_value: Default value |
|
302 | field_default_value: Default value | |
303 | field_comments_sorting: Display comments |
|
303 | field_comments_sorting: Display comments | |
304 | field_parent_title: Parent page |
|
304 | field_parent_title: Parent page | |
305 | field_editable: Editable |
|
305 | field_editable: Editable | |
306 | field_watcher: Watcher |
|
306 | field_watcher: Watcher | |
307 | field_identity_url: OpenID URL |
|
307 | field_identity_url: OpenID URL | |
308 | field_content: Content |
|
308 | field_content: Content | |
309 | field_group_by: Group results by |
|
309 | field_group_by: Group results by | |
310 | field_sharing: Sharing |
|
310 | field_sharing: Sharing | |
311 | field_parent_issue: Parent task |
|
311 | field_parent_issue: Parent task | |
312 | field_member_of_group: "Assignee's group" |
|
312 | field_member_of_group: "Assignee's group" | |
313 | field_assigned_to_role: "Assignee's role" |
|
313 | field_assigned_to_role: "Assignee's role" | |
314 | field_text: Text field |
|
314 | field_text: Text field | |
315 | field_visible: Visible |
|
315 | field_visible: Visible | |
316 | field_warn_on_leaving_unsaved: "Warn me when leaving a page with unsaved text" |
|
316 | field_warn_on_leaving_unsaved: "Warn me when leaving a page with unsaved text" | |
317 |
|
317 | |||
318 | setting_app_title: Application title |
|
318 | setting_app_title: Application title | |
319 | setting_app_subtitle: Application subtitle |
|
319 | setting_app_subtitle: Application subtitle | |
320 | setting_welcome_text: Welcome text |
|
320 | setting_welcome_text: Welcome text | |
321 | setting_default_language: Default language |
|
321 | setting_default_language: Default language | |
322 | setting_login_required: Authentication required |
|
322 | setting_login_required: Authentication required | |
323 | setting_self_registration: Self-registration |
|
323 | setting_self_registration: Self-registration | |
324 | setting_attachment_max_size: Attachment max. size |
|
324 | setting_attachment_max_size: Attachment max. size | |
325 | setting_issues_export_limit: Issues export limit |
|
325 | setting_issues_export_limit: Issues export limit | |
326 | setting_mail_from: Emission email address |
|
326 | setting_mail_from: Emission email address | |
327 | setting_bcc_recipients: Blind carbon copy recipients (bcc) |
|
327 | setting_bcc_recipients: Blind carbon copy recipients (bcc) | |
328 | setting_plain_text_mail: Plain text mail (no HTML) |
|
328 | setting_plain_text_mail: Plain text mail (no HTML) | |
329 | setting_host_name: Host name and path |
|
329 | setting_host_name: Host name and path | |
330 | setting_text_formatting: Text formatting |
|
330 | setting_text_formatting: Text formatting | |
331 | setting_wiki_compression: Wiki history compression |
|
331 | setting_wiki_compression: Wiki history compression | |
332 | setting_feeds_limit: Feed content limit |
|
332 | setting_feeds_limit: Feed content limit | |
333 | setting_default_projects_public: New projects are public by default |
|
333 | setting_default_projects_public: New projects are public by default | |
334 | setting_autofetch_changesets: Autofetch commits |
|
334 | setting_autofetch_changesets: Autofetch commits | |
335 | setting_sys_api_enabled: Enable WS for repository management |
|
335 | setting_sys_api_enabled: Enable WS for repository management | |
336 | setting_commit_ref_keywords: Referencing keywords |
|
336 | setting_commit_ref_keywords: Referencing keywords | |
337 | setting_commit_fix_keywords: Fixing keywords |
|
337 | setting_commit_fix_keywords: Fixing keywords | |
338 | setting_autologin: Autologin |
|
338 | setting_autologin: Autologin | |
339 | setting_date_format: Date format |
|
339 | setting_date_format: Date format | |
340 | setting_time_format: Time format |
|
340 | setting_time_format: Time format | |
341 | setting_cross_project_issue_relations: Allow cross-project issue relations |
|
341 | setting_cross_project_issue_relations: Allow cross-project issue relations | |
342 | setting_issue_list_default_columns: Default columns displayed on the issue list |
|
342 | setting_issue_list_default_columns: Default columns displayed on the issue list | |
343 | setting_emails_header: Email header |
|
343 | setting_emails_header: Email header | |
344 | setting_emails_footer: Email footer |
|
344 | setting_emails_footer: Email footer | |
345 | setting_protocol: Protocol |
|
345 | setting_protocol: Protocol | |
346 | setting_per_page_options: Objects per page options |
|
346 | setting_per_page_options: Objects per page options | |
347 | setting_user_format: Users display format |
|
347 | setting_user_format: Users display format | |
348 | setting_activity_days_default: Days displayed on project activity |
|
348 | setting_activity_days_default: Days displayed on project activity | |
349 | setting_display_subprojects_issues: Display subprojects issues on main projects by default |
|
349 | setting_display_subprojects_issues: Display subprojects issues on main projects by default | |
350 | setting_enabled_scm: Enabled SCM |
|
350 | setting_enabled_scm: Enabled SCM | |
351 | setting_mail_handler_body_delimiters: "Truncate emails after one of these lines" |
|
351 | setting_mail_handler_body_delimiters: "Truncate emails after one of these lines" | |
352 | setting_mail_handler_api_enabled: Enable WS for incoming emails |
|
352 | setting_mail_handler_api_enabled: Enable WS for incoming emails | |
353 | setting_mail_handler_api_key: API key |
|
353 | setting_mail_handler_api_key: API key | |
354 | setting_sequential_project_identifiers: Generate sequential project identifiers |
|
354 | setting_sequential_project_identifiers: Generate sequential project identifiers | |
355 | setting_gravatar_enabled: Use Gravatar user icons |
|
355 | setting_gravatar_enabled: Use Gravatar user icons | |
356 | setting_gravatar_default: Default Gravatar image |
|
356 | setting_gravatar_default: Default Gravatar image | |
357 | setting_diff_max_lines_displayed: Max number of diff lines displayed |
|
357 | setting_diff_max_lines_displayed: Max number of diff lines displayed | |
358 | setting_file_max_size_displayed: Max size of text files displayed inline |
|
358 | setting_file_max_size_displayed: Max size of text files displayed inline | |
359 | setting_repository_log_display_limit: Maximum number of revisions displayed on file log |
|
359 | setting_repository_log_display_limit: Maximum number of revisions displayed on file log | |
360 | setting_openid: Allow OpenID login and registration |
|
360 | setting_openid: Allow OpenID login and registration | |
361 | setting_password_min_length: Minimum password length |
|
361 | setting_password_min_length: Minimum password length | |
362 | setting_new_project_user_role_id: Role given to a non-admin user who creates a project |
|
362 | setting_new_project_user_role_id: Role given to a non-admin user who creates a project | |
363 | setting_default_projects_modules: Default enabled modules for new projects |
|
363 | setting_default_projects_modules: Default enabled modules for new projects | |
364 | setting_issue_done_ratio: Calculate the issue done ratio with |
|
364 | setting_issue_done_ratio: Calculate the issue done ratio with | |
365 | setting_issue_done_ratio_issue_field: Use the issue field |
|
365 | setting_issue_done_ratio_issue_field: Use the issue field | |
366 | setting_issue_done_ratio_issue_status: Use the issue status |
|
366 | setting_issue_done_ratio_issue_status: Use the issue status | |
367 | setting_start_of_week: Start calendars on |
|
367 | setting_start_of_week: Start calendars on | |
368 | setting_rest_api_enabled: Enable REST web service |
|
368 | setting_rest_api_enabled: Enable REST web service | |
369 | setting_cache_formatted_text: Cache formatted text |
|
369 | setting_cache_formatted_text: Cache formatted text | |
370 | setting_default_notification_option: Default notification option |
|
370 | setting_default_notification_option: Default notification option | |
371 | setting_commit_logtime_enabled: Enable time logging |
|
371 | setting_commit_logtime_enabled: Enable time logging | |
372 | setting_commit_logtime_activity_id: Activity for logged time |
|
372 | setting_commit_logtime_activity_id: Activity for logged time | |
373 | setting_gantt_items_limit: Maximum number of items displayed on the gantt chart |
|
373 | setting_gantt_items_limit: Maximum number of items displayed on the gantt chart | |
374 | setting_issue_group_assignment: Allow issue assignment to groups |
|
374 | setting_issue_group_assignment: Allow issue assignment to groups | |
375 | setting_default_issue_start_date_to_creation_date: Use current date as start date for new issues |
|
375 | setting_default_issue_start_date_to_creation_date: Use current date as start date for new issues | |
376 |
|
376 | |||
377 | permission_add_project: Create project |
|
377 | permission_add_project: Create project | |
378 | permission_add_subprojects: Create subprojects |
|
378 | permission_add_subprojects: Create subprojects | |
379 | permission_edit_project: Edit project |
|
379 | permission_edit_project: Edit project | |
380 | permission_select_project_modules: Select project modules |
|
380 | permission_select_project_modules: Select project modules | |
381 | permission_manage_members: Manage members |
|
381 | permission_manage_members: Manage members | |
382 | permission_manage_project_activities: Manage project activities |
|
382 | permission_manage_project_activities: Manage project activities | |
383 | permission_manage_versions: Manage versions |
|
383 | permission_manage_versions: Manage versions | |
384 | permission_manage_categories: Manage issue categories |
|
384 | permission_manage_categories: Manage issue categories | |
385 | permission_view_issues: View Issues |
|
385 | permission_view_issues: View Issues | |
386 | permission_add_issues: Add issues |
|
386 | permission_add_issues: Add issues | |
387 | permission_edit_issues: Edit issues |
|
387 | permission_edit_issues: Edit issues | |
388 | permission_manage_issue_relations: Manage issue relations |
|
388 | permission_manage_issue_relations: Manage issue relations | |
389 | permission_add_issue_notes: Add notes |
|
389 | permission_add_issue_notes: Add notes | |
390 | permission_edit_issue_notes: Edit notes |
|
390 | permission_edit_issue_notes: Edit notes | |
391 | permission_edit_own_issue_notes: Edit own notes |
|
391 | permission_edit_own_issue_notes: Edit own notes | |
392 | permission_move_issues: Move issues |
|
392 | permission_move_issues: Move issues | |
393 | permission_delete_issues: Delete issues |
|
393 | permission_delete_issues: Delete issues | |
394 | permission_manage_public_queries: Manage public queries |
|
394 | permission_manage_public_queries: Manage public queries | |
395 | permission_save_queries: Save queries |
|
395 | permission_save_queries: Save queries | |
396 | permission_view_gantt: View gantt chart |
|
396 | permission_view_gantt: View gantt chart | |
397 | permission_view_calendar: View calendar |
|
397 | permission_view_calendar: View calendar | |
398 | permission_view_issue_watchers: View watchers list |
|
398 | permission_view_issue_watchers: View watchers list | |
399 | permission_add_issue_watchers: Add watchers |
|
399 | permission_add_issue_watchers: Add watchers | |
400 | permission_delete_issue_watchers: Delete watchers |
|
400 | permission_delete_issue_watchers: Delete watchers | |
401 | permission_log_time: Log spent time |
|
401 | permission_log_time: Log spent time | |
402 | permission_view_time_entries: View spent time |
|
402 | permission_view_time_entries: View spent time | |
403 | permission_edit_time_entries: Edit time logs |
|
403 | permission_edit_time_entries: Edit time logs | |
404 | permission_edit_own_time_entries: Edit own time logs |
|
404 | permission_edit_own_time_entries: Edit own time logs | |
405 | permission_manage_news: Manage news |
|
405 | permission_manage_news: Manage news | |
406 | permission_comment_news: Comment news |
|
406 | permission_comment_news: Comment news | |
407 | permission_view_documents: View documents |
|
407 | permission_view_documents: View documents | |
408 | permission_manage_files: Manage files |
|
408 | permission_manage_files: Manage files | |
409 | permission_view_files: View files |
|
409 | permission_view_files: View files | |
410 | permission_manage_wiki: Manage wiki |
|
410 | permission_manage_wiki: Manage wiki | |
411 | permission_rename_wiki_pages: Rename wiki pages |
|
411 | permission_rename_wiki_pages: Rename wiki pages | |
412 | permission_delete_wiki_pages: Delete wiki pages |
|
412 | permission_delete_wiki_pages: Delete wiki pages | |
413 | permission_view_wiki_pages: View wiki |
|
413 | permission_view_wiki_pages: View wiki | |
414 | permission_view_wiki_edits: View wiki history |
|
414 | permission_view_wiki_edits: View wiki history | |
415 | permission_edit_wiki_pages: Edit wiki pages |
|
415 | permission_edit_wiki_pages: Edit wiki pages | |
416 | permission_delete_wiki_pages_attachments: Delete attachments |
|
416 | permission_delete_wiki_pages_attachments: Delete attachments | |
417 | permission_protect_wiki_pages: Protect wiki pages |
|
417 | permission_protect_wiki_pages: Protect wiki pages | |
418 | permission_manage_repository: Manage repository |
|
418 | permission_manage_repository: Manage repository | |
419 | permission_browse_repository: Browse repository |
|
419 | permission_browse_repository: Browse repository | |
420 | permission_view_changesets: View changesets |
|
420 | permission_view_changesets: View changesets | |
421 | permission_commit_access: Commit access |
|
421 | permission_commit_access: Commit access | |
422 | permission_manage_boards: Manage forums |
|
422 | permission_manage_boards: Manage forums | |
423 | permission_view_messages: View messages |
|
423 | permission_view_messages: View messages | |
424 | permission_add_messages: Post messages |
|
424 | permission_add_messages: Post messages | |
425 | permission_edit_messages: Edit messages |
|
425 | permission_edit_messages: Edit messages | |
426 | permission_edit_own_messages: Edit own messages |
|
426 | permission_edit_own_messages: Edit own messages | |
427 | permission_delete_messages: Delete messages |
|
427 | permission_delete_messages: Delete messages | |
428 | permission_delete_own_messages: Delete own messages |
|
428 | permission_delete_own_messages: Delete own messages | |
429 | permission_export_wiki_pages: Export wiki pages |
|
429 | permission_export_wiki_pages: Export wiki pages | |
430 | permission_manage_subtasks: Manage subtasks |
|
430 | permission_manage_subtasks: Manage subtasks | |
431 |
|
431 | |||
432 | project_module_issue_tracking: Issue tracking |
|
432 | project_module_issue_tracking: Issue tracking | |
433 | project_module_time_tracking: Time tracking |
|
433 | project_module_time_tracking: Time tracking | |
434 | project_module_news: News |
|
434 | project_module_news: News | |
435 | project_module_documents: Documents |
|
435 | project_module_documents: Documents | |
436 | project_module_files: Files |
|
436 | project_module_files: Files | |
437 | project_module_wiki: Wiki |
|
437 | project_module_wiki: Wiki | |
438 | project_module_repository: Repository |
|
438 | project_module_repository: Repository | |
439 | project_module_boards: Forums |
|
439 | project_module_boards: Forums | |
440 | project_module_calendar: Calendar |
|
440 | project_module_calendar: Calendar | |
441 | project_module_gantt: Gantt |
|
441 | project_module_gantt: Gantt | |
442 |
|
442 | |||
443 | label_user: User |
|
443 | label_user: User | |
444 | label_user_plural: Users |
|
444 | label_user_plural: Users | |
445 | label_user_new: New user |
|
445 | label_user_new: New user | |
446 | label_user_anonymous: Anonymous |
|
446 | label_user_anonymous: Anonymous | |
447 | label_project: Project |
|
447 | label_project: Project | |
448 | label_project_new: New project |
|
448 | label_project_new: New project | |
449 | label_project_plural: Projects |
|
449 | label_project_plural: Projects | |
450 | label_x_projects: |
|
450 | label_x_projects: | |
451 | zero: no projects |
|
451 | zero: no projects | |
452 | one: 1 project |
|
452 | one: 1 project | |
453 | other: "%{count} projects" |
|
453 | other: "%{count} projects" | |
454 | label_project_all: All Projects |
|
454 | label_project_all: All Projects | |
455 | label_project_latest: Latest projects |
|
455 | label_project_latest: Latest projects | |
456 | label_issue: Issue |
|
456 | label_issue: Issue | |
457 | label_issue_new: New issue |
|
457 | label_issue_new: New issue | |
458 | label_issue_plural: Issues |
|
458 | label_issue_plural: Issues | |
459 | label_issue_view_all: View all issues |
|
459 | label_issue_view_all: View all issues | |
460 | label_issues_by: "Issues by %{value}" |
|
460 | label_issues_by: "Issues by %{value}" | |
461 | label_issue_added: Issue added |
|
461 | label_issue_added: Issue added | |
462 | label_issue_updated: Issue updated |
|
462 | label_issue_updated: Issue updated | |
463 | label_document: Document |
|
463 | label_document: Document | |
464 | label_document_new: New document |
|
464 | label_document_new: New document | |
465 | label_document_plural: Documents |
|
465 | label_document_plural: Documents | |
466 | label_document_added: Document added |
|
466 | label_document_added: Document added | |
467 | label_role: Role |
|
467 | label_role: Role | |
468 | label_role_plural: Roles |
|
468 | label_role_plural: Roles | |
469 | label_role_new: New role |
|
469 | label_role_new: New role | |
470 | label_role_and_permissions: Roles and permissions |
|
470 | label_role_and_permissions: Roles and permissions | |
471 | label_role_anonymous: Anonymous |
|
471 | label_role_anonymous: Anonymous | |
472 | label_role_non_member: Non member |
|
472 | label_role_non_member: Non member | |
473 | label_member: Member |
|
473 | label_member: Member | |
474 | label_member_new: New member |
|
474 | label_member_new: New member | |
475 | label_member_plural: Members |
|
475 | label_member_plural: Members | |
476 | label_tracker: Tracker |
|
476 | label_tracker: Tracker | |
477 | label_tracker_plural: Trackers |
|
477 | label_tracker_plural: Trackers | |
478 | label_tracker_new: New tracker |
|
478 | label_tracker_new: New tracker | |
479 | label_workflow: Workflow |
|
479 | label_workflow: Workflow | |
480 | label_issue_status: Issue status |
|
480 | label_issue_status: Issue status | |
481 | label_issue_status_plural: Issue statuses |
|
481 | label_issue_status_plural: Issue statuses | |
482 | label_issue_status_new: New status |
|
482 | label_issue_status_new: New status | |
483 | label_issue_category: Issue category |
|
483 | label_issue_category: Issue category | |
484 | label_issue_category_plural: Issue categories |
|
484 | label_issue_category_plural: Issue categories | |
485 | label_issue_category_new: New category |
|
485 | label_issue_category_new: New category | |
486 | label_custom_field: Custom field |
|
486 | label_custom_field: Custom field | |
487 | label_custom_field_plural: Custom fields |
|
487 | label_custom_field_plural: Custom fields | |
488 | label_custom_field_new: New custom field |
|
488 | label_custom_field_new: New custom field | |
489 | label_enumerations: Enumerations |
|
489 | label_enumerations: Enumerations | |
490 | label_enumeration_new: New value |
|
490 | label_enumeration_new: New value | |
491 | label_information: Information |
|
491 | label_information: Information | |
492 | label_information_plural: Information |
|
492 | label_information_plural: Information | |
493 | label_please_login: Please log in |
|
493 | label_please_login: Please log in | |
494 | label_register: Register |
|
494 | label_register: Register | |
495 | label_login_with_open_id_option: or login with OpenID |
|
495 | label_login_with_open_id_option: or login with OpenID | |
496 | label_password_lost: Lost password |
|
496 | label_password_lost: Lost password | |
497 | label_home: Home |
|
497 | label_home: Home | |
498 | label_my_page: My page |
|
498 | label_my_page: My page | |
499 | label_my_account: My account |
|
499 | label_my_account: My account | |
500 | label_my_projects: My projects |
|
500 | label_my_projects: My projects | |
501 | label_my_page_block: My page block |
|
501 | label_my_page_block: My page block | |
502 | label_administration: Administration |
|
502 | label_administration: Administration | |
503 | label_login: Sign in |
|
503 | label_login: Sign in | |
504 | label_logout: Sign out |
|
504 | label_logout: Sign out | |
505 | label_help: Help |
|
505 | label_help: Help | |
506 | label_reported_issues: Reported issues |
|
506 | label_reported_issues: Reported issues | |
507 | label_assigned_to_me_issues: Issues assigned to me |
|
507 | label_assigned_to_me_issues: Issues assigned to me | |
508 | label_last_login: Last connection |
|
508 | label_last_login: Last connection | |
509 | label_registered_on: Registered on |
|
509 | label_registered_on: Registered on | |
510 | label_activity: Activity |
|
510 | label_activity: Activity | |
511 | label_overall_activity: Overall activity |
|
511 | label_overall_activity: Overall activity | |
512 | label_user_activity: "%{value}'s activity" |
|
512 | label_user_activity: "%{value}'s activity" | |
513 | label_new: New |
|
513 | label_new: New | |
514 | label_logged_as: Logged in as |
|
514 | label_logged_as: Logged in as | |
515 | label_environment: Environment |
|
515 | label_environment: Environment | |
516 | label_authentication: Authentication |
|
516 | label_authentication: Authentication | |
517 | label_auth_source: Authentication mode |
|
517 | label_auth_source: Authentication mode | |
518 | label_auth_source_new: New authentication mode |
|
518 | label_auth_source_new: New authentication mode | |
519 | label_auth_source_plural: Authentication modes |
|
519 | label_auth_source_plural: Authentication modes | |
520 | label_subproject_plural: Subprojects |
|
520 | label_subproject_plural: Subprojects | |
521 | label_subproject_new: New subproject |
|
521 | label_subproject_new: New subproject | |
522 | label_and_its_subprojects: "%{value} and its subprojects" |
|
522 | label_and_its_subprojects: "%{value} and its subprojects" | |
523 | label_min_max_length: Min - Max length |
|
523 | label_min_max_length: Min - Max length | |
524 | label_list: List |
|
524 | label_list: List | |
525 | label_date: Date |
|
525 | label_date: Date | |
526 | label_integer: Integer |
|
526 | label_integer: Integer | |
527 | label_float: Float |
|
527 | label_float: Float | |
528 | label_boolean: Boolean |
|
528 | label_boolean: Boolean | |
529 | label_string: Text |
|
529 | label_string: Text | |
530 | label_text: Long text |
|
530 | label_text: Long text | |
531 | label_attribute: Attribute |
|
531 | label_attribute: Attribute | |
532 | label_attribute_plural: Attributes |
|
532 | label_attribute_plural: Attributes | |
533 | label_no_data: No data to display |
|
533 | label_no_data: No data to display | |
|
534 | label_no_preview: No preview available | |||
534 | label_change_status: Change status |
|
535 | label_change_status: Change status | |
535 | label_history: History |
|
536 | label_history: History | |
536 | label_attachment: File |
|
537 | label_attachment: File | |
537 | label_attachment_new: New file |
|
538 | label_attachment_new: New file | |
538 | label_attachment_delete: Delete file |
|
539 | label_attachment_delete: Delete file | |
539 | label_attachment_plural: Files |
|
540 | label_attachment_plural: Files | |
540 | label_file_added: File added |
|
541 | label_file_added: File added | |
541 | label_report: Report |
|
542 | label_report: Report | |
542 | label_report_plural: Reports |
|
543 | label_report_plural: Reports | |
543 | label_news: News |
|
544 | label_news: News | |
544 | label_news_new: Add news |
|
545 | label_news_new: Add news | |
545 | label_news_plural: News |
|
546 | label_news_plural: News | |
546 | label_news_latest: Latest news |
|
547 | label_news_latest: Latest news | |
547 | label_news_view_all: View all news |
|
548 | label_news_view_all: View all news | |
548 | label_news_added: News added |
|
549 | label_news_added: News added | |
549 | label_news_comment_added: Comment added to a news |
|
550 | label_news_comment_added: Comment added to a news | |
550 | label_settings: Settings |
|
551 | label_settings: Settings | |
551 | label_overview: Overview |
|
552 | label_overview: Overview | |
552 | label_version: Version |
|
553 | label_version: Version | |
553 | label_version_new: New version |
|
554 | label_version_new: New version | |
554 | label_version_plural: Versions |
|
555 | label_version_plural: Versions | |
555 | label_close_versions: Close completed versions |
|
556 | label_close_versions: Close completed versions | |
556 | label_confirmation: Confirmation |
|
557 | label_confirmation: Confirmation | |
557 | label_export_to: 'Also available in:' |
|
558 | label_export_to: 'Also available in:' | |
558 | label_read: Read... |
|
559 | label_read: Read... | |
559 | label_public_projects: Public projects |
|
560 | label_public_projects: Public projects | |
560 | label_open_issues: open |
|
561 | label_open_issues: open | |
561 | label_open_issues_plural: open |
|
562 | label_open_issues_plural: open | |
562 | label_closed_issues: closed |
|
563 | label_closed_issues: closed | |
563 | label_closed_issues_plural: closed |
|
564 | label_closed_issues_plural: closed | |
564 | label_x_open_issues_abbr: |
|
565 | label_x_open_issues_abbr: | |
565 | zero: 0 open |
|
566 | zero: 0 open | |
566 | one: 1 open |
|
567 | one: 1 open | |
567 | other: "%{count} open" |
|
568 | other: "%{count} open" | |
568 | label_x_closed_issues_abbr: |
|
569 | label_x_closed_issues_abbr: | |
569 | zero: 0 closed |
|
570 | zero: 0 closed | |
570 | one: 1 closed |
|
571 | one: 1 closed | |
571 | other: "%{count} closed" |
|
572 | other: "%{count} closed" | |
572 | label_total: Total |
|
573 | label_total: Total | |
573 | label_permissions: Permissions |
|
574 | label_permissions: Permissions | |
574 | label_current_status: Current status |
|
575 | label_current_status: Current status | |
575 | label_new_statuses_allowed: New statuses allowed |
|
576 | label_new_statuses_allowed: New statuses allowed | |
576 | label_all: all |
|
577 | label_all: all | |
577 | label_none: none |
|
578 | label_none: none | |
578 | label_nobody: nobody |
|
579 | label_nobody: nobody | |
579 | label_next: Next |
|
580 | label_next: Next | |
580 | label_previous: Previous |
|
581 | label_previous: Previous | |
581 | label_used_by: Used by |
|
582 | label_used_by: Used by | |
582 | label_details: Details |
|
583 | label_details: Details | |
583 | label_add_note: Add a note |
|
584 | label_add_note: Add a note | |
584 | label_calendar: Calendar |
|
585 | label_calendar: Calendar | |
585 | label_months_from: months from |
|
586 | label_months_from: months from | |
586 | label_gantt: Gantt |
|
587 | label_gantt: Gantt | |
587 | label_internal: Internal |
|
588 | label_internal: Internal | |
588 | label_last_changes: "last %{count} changes" |
|
589 | label_last_changes: "last %{count} changes" | |
589 | label_change_view_all: View all changes |
|
590 | label_change_view_all: View all changes | |
590 | label_personalize_page: Personalise this page |
|
591 | label_personalize_page: Personalise this page | |
591 | label_comment: Comment |
|
592 | label_comment: Comment | |
592 | label_comment_plural: Comments |
|
593 | label_comment_plural: Comments | |
593 | label_x_comments: |
|
594 | label_x_comments: | |
594 | zero: no comments |
|
595 | zero: no comments | |
595 | one: 1 comment |
|
596 | one: 1 comment | |
596 | other: "%{count} comments" |
|
597 | other: "%{count} comments" | |
597 | label_comment_add: Add a comment |
|
598 | label_comment_add: Add a comment | |
598 | label_comment_added: Comment added |
|
599 | label_comment_added: Comment added | |
599 | label_comment_delete: Delete comments |
|
600 | label_comment_delete: Delete comments | |
600 | label_query: Custom query |
|
601 | label_query: Custom query | |
601 | label_query_plural: Custom queries |
|
602 | label_query_plural: Custom queries | |
602 | label_query_new: New query |
|
603 | label_query_new: New query | |
603 | label_my_queries: My custom queries |
|
604 | label_my_queries: My custom queries | |
604 | label_filter_add: Add filter |
|
605 | label_filter_add: Add filter | |
605 | label_filter_plural: Filters |
|
606 | label_filter_plural: Filters | |
606 | label_equals: is |
|
607 | label_equals: is | |
607 | label_not_equals: is not |
|
608 | label_not_equals: is not | |
608 | label_in_less_than: in less than |
|
609 | label_in_less_than: in less than | |
609 | label_in_more_than: in more than |
|
610 | label_in_more_than: in more than | |
610 | label_greater_or_equal: '>=' |
|
611 | label_greater_or_equal: '>=' | |
611 | label_less_or_equal: '<=' |
|
612 | label_less_or_equal: '<=' | |
612 | label_in: in |
|
613 | label_in: in | |
613 | label_today: today |
|
614 | label_today: today | |
614 | label_all_time: all time |
|
615 | label_all_time: all time | |
615 | label_yesterday: yesterday |
|
616 | label_yesterday: yesterday | |
616 | label_this_week: this week |
|
617 | label_this_week: this week | |
617 | label_last_week: last week |
|
618 | label_last_week: last week | |
618 | label_last_n_days: "last %{count} days" |
|
619 | label_last_n_days: "last %{count} days" | |
619 | label_this_month: this month |
|
620 | label_this_month: this month | |
620 | label_last_month: last month |
|
621 | label_last_month: last month | |
621 | label_this_year: this year |
|
622 | label_this_year: this year | |
622 | label_date_range: Date range |
|
623 | label_date_range: Date range | |
623 | label_less_than_ago: less than days ago |
|
624 | label_less_than_ago: less than days ago | |
624 | label_more_than_ago: more than days ago |
|
625 | label_more_than_ago: more than days ago | |
625 | label_ago: days ago |
|
626 | label_ago: days ago | |
626 | label_contains: contains |
|
627 | label_contains: contains | |
627 | label_not_contains: doesn't contain |
|
628 | label_not_contains: doesn't contain | |
628 | label_day_plural: days |
|
629 | label_day_plural: days | |
629 | label_repository: Repository |
|
630 | label_repository: Repository | |
630 | label_repository_plural: Repositories |
|
631 | label_repository_plural: Repositories | |
631 | label_browse: Browse |
|
632 | label_browse: Browse | |
632 | label_branch: Branch |
|
633 | label_branch: Branch | |
633 | label_tag: Tag |
|
634 | label_tag: Tag | |
634 | label_revision: Revision |
|
635 | label_revision: Revision | |
635 | label_revision_plural: Revisions |
|
636 | label_revision_plural: Revisions | |
636 | label_revision_id: "Revision %{value}" |
|
637 | label_revision_id: "Revision %{value}" | |
637 | label_associated_revisions: Associated revisions |
|
638 | label_associated_revisions: Associated revisions | |
638 | label_added: added |
|
639 | label_added: added | |
639 | label_modified: modified |
|
640 | label_modified: modified | |
640 | label_copied: copied |
|
641 | label_copied: copied | |
641 | label_renamed: renamed |
|
642 | label_renamed: renamed | |
642 | label_deleted: deleted |
|
643 | label_deleted: deleted | |
643 | label_latest_revision: Latest revision |
|
644 | label_latest_revision: Latest revision | |
644 | label_latest_revision_plural: Latest revisions |
|
645 | label_latest_revision_plural: Latest revisions | |
645 | label_view_revisions: View revisions |
|
646 | label_view_revisions: View revisions | |
646 | label_view_all_revisions: View all revisions |
|
647 | label_view_all_revisions: View all revisions | |
647 | label_max_size: Maximum size |
|
648 | label_max_size: Maximum size | |
648 | label_sort_highest: Move to top |
|
649 | label_sort_highest: Move to top | |
649 | label_sort_higher: Move up |
|
650 | label_sort_higher: Move up | |
650 | label_sort_lower: Move down |
|
651 | label_sort_lower: Move down | |
651 | label_sort_lowest: Move to bottom |
|
652 | label_sort_lowest: Move to bottom | |
652 | label_roadmap: Roadmap |
|
653 | label_roadmap: Roadmap | |
653 | label_roadmap_due_in: "Due in %{value}" |
|
654 | label_roadmap_due_in: "Due in %{value}" | |
654 | label_roadmap_overdue: "%{value} late" |
|
655 | label_roadmap_overdue: "%{value} late" | |
655 | label_roadmap_no_issues: No issues for this version |
|
656 | label_roadmap_no_issues: No issues for this version | |
656 | label_search: Search |
|
657 | label_search: Search | |
657 | label_result_plural: Results |
|
658 | label_result_plural: Results | |
658 | label_all_words: All words |
|
659 | label_all_words: All words | |
659 | label_wiki: Wiki |
|
660 | label_wiki: Wiki | |
660 | label_wiki_edit: Wiki edit |
|
661 | label_wiki_edit: Wiki edit | |
661 | label_wiki_edit_plural: Wiki edits |
|
662 | label_wiki_edit_plural: Wiki edits | |
662 | label_wiki_page: Wiki page |
|
663 | label_wiki_page: Wiki page | |
663 | label_wiki_page_plural: Wiki pages |
|
664 | label_wiki_page_plural: Wiki pages | |
664 | label_index_by_title: Index by title |
|
665 | label_index_by_title: Index by title | |
665 | label_index_by_date: Index by date |
|
666 | label_index_by_date: Index by date | |
666 | label_current_version: Current version |
|
667 | label_current_version: Current version | |
667 | label_preview: Preview |
|
668 | label_preview: Preview | |
668 | label_feed_plural: Feeds |
|
669 | label_feed_plural: Feeds | |
669 | label_changes_details: Details of all changes |
|
670 | label_changes_details: Details of all changes | |
670 | label_issue_tracking: Issue tracking |
|
671 | label_issue_tracking: Issue tracking | |
671 | label_spent_time: Spent time |
|
672 | label_spent_time: Spent time | |
672 | label_overall_spent_time: Overall spent time |
|
673 | label_overall_spent_time: Overall spent time | |
673 | label_f_hour: "%{value} hour" |
|
674 | label_f_hour: "%{value} hour" | |
674 | label_f_hour_plural: "%{value} hours" |
|
675 | label_f_hour_plural: "%{value} hours" | |
675 | label_time_tracking: Time tracking |
|
676 | label_time_tracking: Time tracking | |
676 | label_change_plural: Changes |
|
677 | label_change_plural: Changes | |
677 | label_statistics: Statistics |
|
678 | label_statistics: Statistics | |
678 | label_commits_per_month: Commits per month |
|
679 | label_commits_per_month: Commits per month | |
679 | label_commits_per_author: Commits per author |
|
680 | label_commits_per_author: Commits per author | |
680 | label_view_diff: View differences |
|
681 | label_view_diff: View differences | |
681 | label_diff_inline: inline |
|
682 | label_diff_inline: inline | |
682 | label_diff_side_by_side: side by side |
|
683 | label_diff_side_by_side: side by side | |
683 | label_options: Options |
|
684 | label_options: Options | |
684 | label_copy_workflow_from: Copy workflow from |
|
685 | label_copy_workflow_from: Copy workflow from | |
685 | label_permissions_report: Permissions report |
|
686 | label_permissions_report: Permissions report | |
686 | label_watched_issues: Watched issues |
|
687 | label_watched_issues: Watched issues | |
687 | label_related_issues: Related issues |
|
688 | label_related_issues: Related issues | |
688 | label_applied_status: Applied status |
|
689 | label_applied_status: Applied status | |
689 | label_loading: Loading... |
|
690 | label_loading: Loading... | |
690 | label_relation_new: New relation |
|
691 | label_relation_new: New relation | |
691 | label_relation_delete: Delete relation |
|
692 | label_relation_delete: Delete relation | |
692 | label_relates_to: related to |
|
693 | label_relates_to: related to | |
693 | label_duplicates: duplicates |
|
694 | label_duplicates: duplicates | |
694 | label_duplicated_by: duplicated by |
|
695 | label_duplicated_by: duplicated by | |
695 | label_blocks: blocks |
|
696 | label_blocks: blocks | |
696 | label_blocked_by: blocked by |
|
697 | label_blocked_by: blocked by | |
697 | label_precedes: precedes |
|
698 | label_precedes: precedes | |
698 | label_follows: follows |
|
699 | label_follows: follows | |
699 | label_stay_logged_in: Stay logged in |
|
700 | label_stay_logged_in: Stay logged in | |
700 | label_disabled: disabled |
|
701 | label_disabled: disabled | |
701 | label_show_completed_versions: Show completed versions |
|
702 | label_show_completed_versions: Show completed versions | |
702 | label_me: me |
|
703 | label_me: me | |
703 | label_board: Forum |
|
704 | label_board: Forum | |
704 | label_board_new: New forum |
|
705 | label_board_new: New forum | |
705 | label_board_plural: Forums |
|
706 | label_board_plural: Forums | |
706 | label_board_locked: Locked |
|
707 | label_board_locked: Locked | |
707 | label_board_sticky: Sticky |
|
708 | label_board_sticky: Sticky | |
708 | label_topic_plural: Topics |
|
709 | label_topic_plural: Topics | |
709 | label_message_plural: Messages |
|
710 | label_message_plural: Messages | |
710 | label_message_last: Last message |
|
711 | label_message_last: Last message | |
711 | label_message_new: New message |
|
712 | label_message_new: New message | |
712 | label_message_posted: Message added |
|
713 | label_message_posted: Message added | |
713 | label_reply_plural: Replies |
|
714 | label_reply_plural: Replies | |
714 | label_send_information: Send account information to the user |
|
715 | label_send_information: Send account information to the user | |
715 | label_year: Year |
|
716 | label_year: Year | |
716 | label_month: Month |
|
717 | label_month: Month | |
717 | label_week: Week |
|
718 | label_week: Week | |
718 | label_date_from: From |
|
719 | label_date_from: From | |
719 | label_date_to: To |
|
720 | label_date_to: To | |
720 | label_language_based: Based on user's language |
|
721 | label_language_based: Based on user's language | |
721 | label_sort_by: "Sort by %{value}" |
|
722 | label_sort_by: "Sort by %{value}" | |
722 | label_send_test_email: Send a test email |
|
723 | label_send_test_email: Send a test email | |
723 | label_feeds_access_key: Atom access key |
|
724 | label_feeds_access_key: Atom access key | |
724 | label_missing_feeds_access_key: Missing a Atom access key |
|
725 | label_missing_feeds_access_key: Missing a Atom access key | |
725 | label_feeds_access_key_created_on: "Atom access key created %{value} ago" |
|
726 | label_feeds_access_key_created_on: "Atom access key created %{value} ago" | |
726 | label_module_plural: Modules |
|
727 | label_module_plural: Modules | |
727 | label_added_time_by: "Added by %{author} %{age} ago" |
|
728 | label_added_time_by: "Added by %{author} %{age} ago" | |
728 | label_updated_time_by: "Updated by %{author} %{age} ago" |
|
729 | label_updated_time_by: "Updated by %{author} %{age} ago" | |
729 | label_updated_time: "Updated %{value} ago" |
|
730 | label_updated_time: "Updated %{value} ago" | |
730 | label_jump_to_a_project: Jump to a project... |
|
731 | label_jump_to_a_project: Jump to a project... | |
731 | label_file_plural: Files |
|
732 | label_file_plural: Files | |
732 | label_changeset_plural: Changesets |
|
733 | label_changeset_plural: Changesets | |
733 | label_default_columns: Default columns |
|
734 | label_default_columns: Default columns | |
734 | label_no_change_option: (No change) |
|
735 | label_no_change_option: (No change) | |
735 | label_bulk_edit_selected_issues: Bulk edit selected issues |
|
736 | label_bulk_edit_selected_issues: Bulk edit selected issues | |
736 | label_theme: Theme |
|
737 | label_theme: Theme | |
737 | label_default: Default |
|
738 | label_default: Default | |
738 | label_search_titles_only: Search titles only |
|
739 | label_search_titles_only: Search titles only | |
739 | label_user_mail_option_all: "For any event on all my projects" |
|
740 | label_user_mail_option_all: "For any event on all my projects" | |
740 | label_user_mail_option_selected: "For any event on the selected projects only..." |
|
741 | label_user_mail_option_selected: "For any event on the selected projects only..." | |
741 | label_user_mail_option_none: "No events" |
|
742 | label_user_mail_option_none: "No events" | |
742 | label_user_mail_option_only_my_events: "Only for things I watch or I'm involved in" |
|
743 | label_user_mail_option_only_my_events: "Only for things I watch or I'm involved in" | |
743 | label_user_mail_option_only_assigned: "Only for things I am assigned to" |
|
744 | label_user_mail_option_only_assigned: "Only for things I am assigned to" | |
744 | label_user_mail_option_only_owner: "Only for things I am the owner of" |
|
745 | label_user_mail_option_only_owner: "Only for things I am the owner of" | |
745 | label_user_mail_no_self_notified: "I don't want to be notified of changes that I make myself" |
|
746 | label_user_mail_no_self_notified: "I don't want to be notified of changes that I make myself" | |
746 | label_registration_activation_by_email: account activation by email |
|
747 | label_registration_activation_by_email: account activation by email | |
747 | label_registration_manual_activation: manual account activation |
|
748 | label_registration_manual_activation: manual account activation | |
748 | label_registration_automatic_activation: automatic account activation |
|
749 | label_registration_automatic_activation: automatic account activation | |
749 | label_display_per_page: "Per page: %{value}" |
|
750 | label_display_per_page: "Per page: %{value}" | |
750 | label_age: Age |
|
751 | label_age: Age | |
751 | label_change_properties: Change properties |
|
752 | label_change_properties: Change properties | |
752 | label_general: General |
|
753 | label_general: General | |
753 | label_more: More |
|
754 | label_more: More | |
754 | label_scm: SCM |
|
755 | label_scm: SCM | |
755 | label_plugins: Plugins |
|
756 | label_plugins: Plugins | |
756 | label_ldap_authentication: LDAP authentication |
|
757 | label_ldap_authentication: LDAP authentication | |
757 | label_downloads_abbr: D/L |
|
758 | label_downloads_abbr: D/L | |
758 | label_optional_description: Optional description |
|
759 | label_optional_description: Optional description | |
759 | label_add_another_file: Add another file |
|
760 | label_add_another_file: Add another file | |
760 | label_preferences: Preferences |
|
761 | label_preferences: Preferences | |
761 | label_chronological_order: In chronological order |
|
762 | label_chronological_order: In chronological order | |
762 | label_reverse_chronological_order: In reverse chronological order |
|
763 | label_reverse_chronological_order: In reverse chronological order | |
763 | label_planning: Planning |
|
764 | label_planning: Planning | |
764 | label_incoming_emails: Incoming emails |
|
765 | label_incoming_emails: Incoming emails | |
765 | label_generate_key: Generate a key |
|
766 | label_generate_key: Generate a key | |
766 | label_issue_watchers: Watchers |
|
767 | label_issue_watchers: Watchers | |
767 | label_example: Example |
|
768 | label_example: Example | |
768 | label_display: Display |
|
769 | label_display: Display | |
769 | label_sort: Sort |
|
770 | label_sort: Sort | |
770 | label_ascending: Ascending |
|
771 | label_ascending: Ascending | |
771 | label_descending: Descending |
|
772 | label_descending: Descending | |
772 | label_date_from_to: From %{start} to %{end} |
|
773 | label_date_from_to: From %{start} to %{end} | |
773 | label_wiki_content_added: Wiki page added |
|
774 | label_wiki_content_added: Wiki page added | |
774 | label_wiki_content_updated: Wiki page updated |
|
775 | label_wiki_content_updated: Wiki page updated | |
775 | label_group: Group |
|
776 | label_group: Group | |
776 | label_group_plural: Groups |
|
777 | label_group_plural: Groups | |
777 | label_group_new: New group |
|
778 | label_group_new: New group | |
778 | label_time_entry_plural: Spent time |
|
779 | label_time_entry_plural: Spent time | |
779 | label_version_sharing_none: Not shared |
|
780 | label_version_sharing_none: Not shared | |
780 | label_version_sharing_descendants: With subprojects |
|
781 | label_version_sharing_descendants: With subprojects | |
781 | label_version_sharing_hierarchy: With project hierarchy |
|
782 | label_version_sharing_hierarchy: With project hierarchy | |
782 | label_version_sharing_tree: With project tree |
|
783 | label_version_sharing_tree: With project tree | |
783 | label_version_sharing_system: With all projects |
|
784 | label_version_sharing_system: With all projects | |
784 | label_update_issue_done_ratios: Update issue done ratios |
|
785 | label_update_issue_done_ratios: Update issue done ratios | |
785 | label_copy_source: Source |
|
786 | label_copy_source: Source | |
786 | label_copy_target: Target |
|
787 | label_copy_target: Target | |
787 | label_copy_same_as_target: Same as target |
|
788 | label_copy_same_as_target: Same as target | |
788 | label_display_used_statuses_only: Only display statuses that are used by this tracker |
|
789 | label_display_used_statuses_only: Only display statuses that are used by this tracker | |
789 | label_api_access_key: API access key |
|
790 | label_api_access_key: API access key | |
790 | label_missing_api_access_key: Missing an API access key |
|
791 | label_missing_api_access_key: Missing an API access key | |
791 | label_api_access_key_created_on: "API access key created %{value} ago" |
|
792 | label_api_access_key_created_on: "API access key created %{value} ago" | |
792 | label_profile: Profile |
|
793 | label_profile: Profile | |
793 | label_subtask_plural: Subtasks |
|
794 | label_subtask_plural: Subtasks | |
794 | label_project_copy_notifications: Send email notifications during the project copy |
|
795 | label_project_copy_notifications: Send email notifications during the project copy | |
795 | label_principal_search: "Search for user or group:" |
|
796 | label_principal_search: "Search for user or group:" | |
796 | label_user_search: "Search for user:" |
|
797 | label_user_search: "Search for user:" | |
797 |
|
798 | |||
798 | button_login: Login |
|
799 | button_login: Login | |
799 | button_submit: Submit |
|
800 | button_submit: Submit | |
800 | button_save: Save |
|
801 | button_save: Save | |
801 | button_check_all: Check all |
|
802 | button_check_all: Check all | |
802 | button_uncheck_all: Uncheck all |
|
803 | button_uncheck_all: Uncheck all | |
803 | button_collapse_all: Collapse all |
|
804 | button_collapse_all: Collapse all | |
804 | button_expand_all: Expand all |
|
805 | button_expand_all: Expand all | |
805 | button_delete: Delete |
|
806 | button_delete: Delete | |
806 | button_create: Create |
|
807 | button_create: Create | |
807 | button_create_and_continue: Create and continue |
|
808 | button_create_and_continue: Create and continue | |
808 | button_test: Test |
|
809 | button_test: Test | |
809 | button_edit: Edit |
|
810 | button_edit: Edit | |
810 | button_edit_associated_wikipage: "Edit associated Wiki page: %{page_title}" |
|
811 | button_edit_associated_wikipage: "Edit associated Wiki page: %{page_title}" | |
811 | button_add: Add |
|
812 | button_add: Add | |
812 | button_change: Change |
|
813 | button_change: Change | |
813 | button_apply: Apply |
|
814 | button_apply: Apply | |
814 | button_clear: Clear |
|
815 | button_clear: Clear | |
815 | button_lock: Lock |
|
816 | button_lock: Lock | |
816 | button_unlock: Unlock |
|
817 | button_unlock: Unlock | |
817 | button_download: Download |
|
818 | button_download: Download | |
818 | button_list: List |
|
819 | button_list: List | |
819 | button_view: View |
|
820 | button_view: View | |
820 | button_move: Move |
|
821 | button_move: Move | |
821 | button_move_and_follow: Move and follow |
|
822 | button_move_and_follow: Move and follow | |
822 | button_back: Back |
|
823 | button_back: Back | |
823 | button_cancel: Cancel |
|
824 | button_cancel: Cancel | |
824 | button_activate: Activate |
|
825 | button_activate: Activate | |
825 | button_sort: Sort |
|
826 | button_sort: Sort | |
826 | button_log_time: Log time |
|
827 | button_log_time: Log time | |
827 | button_rollback: Rollback to this version |
|
828 | button_rollback: Rollback to this version | |
828 | button_watch: Watch |
|
829 | button_watch: Watch | |
829 | button_unwatch: Unwatch |
|
830 | button_unwatch: Unwatch | |
830 | button_reply: Reply |
|
831 | button_reply: Reply | |
831 | button_archive: Archive |
|
832 | button_archive: Archive | |
832 | button_unarchive: Unarchive |
|
833 | button_unarchive: Unarchive | |
833 | button_reset: Reset |
|
834 | button_reset: Reset | |
834 | button_rename: Rename |
|
835 | button_rename: Rename | |
835 | button_change_password: Change password |
|
836 | button_change_password: Change password | |
836 | button_copy: Copy |
|
837 | button_copy: Copy | |
837 | button_copy_and_follow: Copy and follow |
|
838 | button_copy_and_follow: Copy and follow | |
838 | button_annotate: Annotate |
|
839 | button_annotate: Annotate | |
839 | button_update: Update |
|
840 | button_update: Update | |
840 | button_configure: Configure |
|
841 | button_configure: Configure | |
841 | button_quote: Quote |
|
842 | button_quote: Quote | |
842 | button_duplicate: Duplicate |
|
843 | button_duplicate: Duplicate | |
843 | button_show: Show |
|
844 | button_show: Show | |
844 |
|
845 | |||
845 | status_active: active |
|
846 | status_active: active | |
846 | status_registered: registered |
|
847 | status_registered: registered | |
847 | status_locked: locked |
|
848 | status_locked: locked | |
848 |
|
849 | |||
849 | version_status_open: open |
|
850 | version_status_open: open | |
850 | version_status_locked: locked |
|
851 | version_status_locked: locked | |
851 | version_status_closed: closed |
|
852 | version_status_closed: closed | |
852 |
|
853 | |||
853 | field_active: Active |
|
854 | field_active: Active | |
854 |
|
855 | |||
855 | text_select_mail_notifications: Select actions for which email notifications should be sent. |
|
856 | text_select_mail_notifications: Select actions for which email notifications should be sent. | |
856 | text_regexp_info: eg. ^[A-Z0-9]+$ |
|
857 | text_regexp_info: eg. ^[A-Z0-9]+$ | |
857 | text_min_max_length_info: 0 means no restriction |
|
858 | text_min_max_length_info: 0 means no restriction | |
858 | text_project_destroy_confirmation: Are you sure you want to delete this project and related data? |
|
859 | text_project_destroy_confirmation: Are you sure you want to delete this project and related data? | |
859 | text_subprojects_destroy_warning: "Its subproject(s): %{value} will be also deleted." |
|
860 | text_subprojects_destroy_warning: "Its subproject(s): %{value} will be also deleted." | |
860 | text_workflow_edit: Select a role and a tracker to edit the workflow |
|
861 | text_workflow_edit: Select a role and a tracker to edit the workflow | |
861 | text_are_you_sure: Are you sure? |
|
862 | text_are_you_sure: Are you sure? | |
862 | text_journal_changed: "%{label} changed from %{old} to %{new}" |
|
863 | text_journal_changed: "%{label} changed from %{old} to %{new}" | |
863 | text_journal_changed_no_detail: "%{label} updated" |
|
864 | text_journal_changed_no_detail: "%{label} updated" | |
864 | text_journal_set_to: "%{label} set to %{value}" |
|
865 | text_journal_set_to: "%{label} set to %{value}" | |
865 | text_journal_deleted: "%{label} deleted (%{old})" |
|
866 | text_journal_deleted: "%{label} deleted (%{old})" | |
866 | text_journal_added: "%{label} %{value} added" |
|
867 | text_journal_added: "%{label} %{value} added" | |
867 | text_tip_issue_begin_day: task beginning this day |
|
868 | text_tip_issue_begin_day: task beginning this day | |
868 | text_tip_issue_end_day: task ending this day |
|
869 | text_tip_issue_end_day: task ending this day | |
869 | text_tip_issue_begin_end_day: task beginning and ending this day |
|
870 | text_tip_issue_begin_end_day: task beginning and ending this day | |
870 | text_project_identifier_info: 'Only lower case letters (a-z), numbers, dashes and underscores are allowed, must start with a lower case letter.<br />Once saved, the identifier cannot be changed.' |
|
871 | text_project_identifier_info: 'Only lower case letters (a-z), numbers, dashes and underscores are allowed, must start with a lower case letter.<br />Once saved, the identifier cannot be changed.' | |
871 | text_caracters_maximum: "%{count} characters maximum." |
|
872 | text_caracters_maximum: "%{count} characters maximum." | |
872 | text_caracters_minimum: "Must be at least %{count} characters long." |
|
873 | text_caracters_minimum: "Must be at least %{count} characters long." | |
873 | text_length_between: "Length between %{min} and %{max} characters." |
|
874 | text_length_between: "Length between %{min} and %{max} characters." | |
874 | text_tracker_no_workflow: No workflow defined for this tracker |
|
875 | text_tracker_no_workflow: No workflow defined for this tracker | |
875 | text_unallowed_characters: Unallowed characters |
|
876 | text_unallowed_characters: Unallowed characters | |
876 | text_comma_separated: Multiple values allowed (comma separated). |
|
877 | text_comma_separated: Multiple values allowed (comma separated). | |
877 | text_line_separated: Multiple values allowed (one line for each value). |
|
878 | text_line_separated: Multiple values allowed (one line for each value). | |
878 | text_issues_ref_in_commit_messages: Referencing and fixing issues in commit messages |
|
879 | text_issues_ref_in_commit_messages: Referencing and fixing issues in commit messages | |
879 | text_issue_added: "Issue %{id} has been reported by %{author}." |
|
880 | text_issue_added: "Issue %{id} has been reported by %{author}." | |
880 | text_issue_updated: "Issue %{id} has been updated by %{author}." |
|
881 | text_issue_updated: "Issue %{id} has been updated by %{author}." | |
881 | text_wiki_destroy_confirmation: Are you sure you want to delete this wiki and all its content? |
|
882 | text_wiki_destroy_confirmation: Are you sure you want to delete this wiki and all its content? | |
882 | text_issue_category_destroy_question: "Some issues (%{count}) are assigned to this category. What do you want to do?" |
|
883 | text_issue_category_destroy_question: "Some issues (%{count}) are assigned to this category. What do you want to do?" | |
883 | text_issue_category_destroy_assignments: Remove category assignments |
|
884 | text_issue_category_destroy_assignments: Remove category assignments | |
884 | text_issue_category_reassign_to: Reassign issues to this category |
|
885 | text_issue_category_reassign_to: Reassign issues to this category | |
885 | text_user_mail_option: "For unselected projects, you will only receive notifications about things you watch or you're involved in (eg. issues you're the author or assignee)." |
|
886 | text_user_mail_option: "For unselected projects, you will only receive notifications about things you watch or you're involved in (eg. issues you're the author or assignee)." | |
886 | text_no_configuration_data: "Roles, trackers, issue statuses and workflow have not been configured yet.\nIt is highly recommended to load the default configuration. You will be able to modify it once loaded." |
|
887 | text_no_configuration_data: "Roles, trackers, issue statuses and workflow have not been configured yet.\nIt is highly recommended to load the default configuration. You will be able to modify it once loaded." | |
887 | text_load_default_configuration: Load the default configuration |
|
888 | text_load_default_configuration: Load the default configuration | |
888 | text_status_changed_by_changeset: "Applied in changeset %{value}." |
|
889 | text_status_changed_by_changeset: "Applied in changeset %{value}." | |
889 | text_time_logged_by_changeset: "Applied in changeset %{value}." |
|
890 | text_time_logged_by_changeset: "Applied in changeset %{value}." | |
890 | text_issues_destroy_confirmation: 'Are you sure you want to delete the selected issue(s)?' |
|
891 | text_issues_destroy_confirmation: 'Are you sure you want to delete the selected issue(s)?' | |
891 | text_select_project_modules: 'Select modules to enable for this project:' |
|
892 | text_select_project_modules: 'Select modules to enable for this project:' | |
892 | text_default_administrator_account_changed: Default administrator account changed |
|
893 | text_default_administrator_account_changed: Default administrator account changed | |
893 | text_file_repository_writable: Attachments directory writable |
|
894 | text_file_repository_writable: Attachments directory writable | |
894 | text_plugin_assets_writable: Plugin assets directory writable |
|
895 | text_plugin_assets_writable: Plugin assets directory writable | |
895 | text_rmagick_available: RMagick available (optional) |
|
896 | text_rmagick_available: RMagick available (optional) | |
896 | text_destroy_time_entries_question: "%{hours} hours were reported on the issues you are about to delete. What do you want to do?" |
|
897 | text_destroy_time_entries_question: "%{hours} hours were reported on the issues you are about to delete. What do you want to do?" | |
897 | text_destroy_time_entries: Delete reported hours |
|
898 | text_destroy_time_entries: Delete reported hours | |
898 | text_assign_time_entries_to_project: Assign reported hours to the project |
|
899 | text_assign_time_entries_to_project: Assign reported hours to the project | |
899 | text_reassign_time_entries: 'Reassign reported hours to this issue:' |
|
900 | text_reassign_time_entries: 'Reassign reported hours to this issue:' | |
900 | text_user_wrote: "%{value} wrote:" |
|
901 | text_user_wrote: "%{value} wrote:" | |
901 | text_enumeration_destroy_question: "%{count} objects are assigned to this value." |
|
902 | text_enumeration_destroy_question: "%{count} objects are assigned to this value." | |
902 | text_enumeration_category_reassign_to: 'Reassign them to this value:' |
|
903 | text_enumeration_category_reassign_to: 'Reassign them to this value:' | |
903 | text_email_delivery_not_configured: "Email delivery is not configured, and notifications are disabled.\nConfigure your SMTP server in config/configuration.yml and restart the application to enable them." |
|
904 | text_email_delivery_not_configured: "Email delivery is not configured, and notifications are disabled.\nConfigure your SMTP server in config/configuration.yml and restart the application to enable them." | |
904 | text_repository_usernames_mapping: "Select or update the Redmine user mapped to each username found in the repository log.\nUsers with the same Redmine and repository username or email are automatically mapped." |
|
905 | text_repository_usernames_mapping: "Select or update the Redmine user mapped to each username found in the repository log.\nUsers with the same Redmine and repository username or email are automatically mapped." | |
905 | text_diff_truncated: '... This diff was truncated because it exceeds the maximum size that can be displayed.' |
|
906 | text_diff_truncated: '... This diff was truncated because it exceeds the maximum size that can be displayed.' | |
906 | text_custom_field_possible_values_info: 'One line for each value' |
|
907 | text_custom_field_possible_values_info: 'One line for each value' | |
907 | text_wiki_page_destroy_question: "This page has %{descendants} child page(s) and descendant(s). What do you want to do?" |
|
908 | text_wiki_page_destroy_question: "This page has %{descendants} child page(s) and descendant(s). What do you want to do?" | |
908 | text_wiki_page_nullify_children: "Keep child pages as root pages" |
|
909 | text_wiki_page_nullify_children: "Keep child pages as root pages" | |
909 | text_wiki_page_destroy_children: "Delete child pages and all their descendants" |
|
910 | text_wiki_page_destroy_children: "Delete child pages and all their descendants" | |
910 | text_wiki_page_reassign_children: "Reassign child pages to this parent page" |
|
911 | text_wiki_page_reassign_children: "Reassign child pages to this parent page" | |
911 | text_own_membership_delete_confirmation: "You are about to remove some or all of your permissions and may no longer be able to edit this project after that.\nAre you sure you want to continue?" |
|
912 | text_own_membership_delete_confirmation: "You are about to remove some or all of your permissions and may no longer be able to edit this project after that.\nAre you sure you want to continue?" | |
912 | text_zoom_in: Zoom in |
|
913 | text_zoom_in: Zoom in | |
913 | text_zoom_out: Zoom out |
|
914 | text_zoom_out: Zoom out | |
914 | text_warn_on_leaving_unsaved: "The current page contains unsaved text that will be lost if you leave this page." |
|
915 | text_warn_on_leaving_unsaved: "The current page contains unsaved text that will be lost if you leave this page." | |
915 |
|
916 | |||
916 | default_role_manager: Manager |
|
917 | default_role_manager: Manager | |
917 | default_role_developer: Developer |
|
918 | default_role_developer: Developer | |
918 | default_role_reporter: Reporter |
|
919 | default_role_reporter: Reporter | |
919 | default_tracker_bug: Bug |
|
920 | default_tracker_bug: Bug | |
920 | default_tracker_feature: Feature |
|
921 | default_tracker_feature: Feature | |
921 | default_tracker_support: Support |
|
922 | default_tracker_support: Support | |
922 | default_issue_status_new: New |
|
923 | default_issue_status_new: New | |
923 | default_issue_status_in_progress: In Progress |
|
924 | default_issue_status_in_progress: In Progress | |
924 | default_issue_status_resolved: Resolved |
|
925 | default_issue_status_resolved: Resolved | |
925 | default_issue_status_feedback: Feedback |
|
926 | default_issue_status_feedback: Feedback | |
926 | default_issue_status_closed: Closed |
|
927 | default_issue_status_closed: Closed | |
927 | default_issue_status_rejected: Rejected |
|
928 | default_issue_status_rejected: Rejected | |
928 | default_doc_category_user: User documentation |
|
929 | default_doc_category_user: User documentation | |
929 | default_doc_category_tech: Technical documentation |
|
930 | default_doc_category_tech: Technical documentation | |
930 | default_priority_low: Low |
|
931 | default_priority_low: Low | |
931 | default_priority_normal: Normal |
|
932 | default_priority_normal: Normal | |
932 | default_priority_high: High |
|
933 | default_priority_high: High | |
933 | default_priority_urgent: Urgent |
|
934 | default_priority_urgent: Urgent | |
934 | default_priority_immediate: Immediate |
|
935 | default_priority_immediate: Immediate | |
935 | default_activity_design: Design |
|
936 | default_activity_design: Design | |
936 | default_activity_development: Development |
|
937 | default_activity_development: Development | |
937 |
|
938 | |||
938 | enumeration_issue_priorities: Issue priorities |
|
939 | enumeration_issue_priorities: Issue priorities | |
939 | enumeration_doc_categories: Document categories |
|
940 | enumeration_doc_categories: Document categories | |
940 | enumeration_activities: Activities (time tracking) |
|
941 | enumeration_activities: Activities (time tracking) | |
941 | enumeration_system_activity: System Activity |
|
942 | enumeration_system_activity: System Activity | |
942 | label_additional_workflow_transitions_for_assignee: Additional transitions allowed when the user is the assignee |
|
943 | label_additional_workflow_transitions_for_assignee: Additional transitions allowed when the user is the assignee | |
943 | label_additional_workflow_transitions_for_author: Additional transitions allowed when the user is the author |
|
944 | label_additional_workflow_transitions_for_author: Additional transitions allowed when the user is the author | |
944 | label_bulk_edit_selected_time_entries: Bulk edit selected time entries |
|
945 | label_bulk_edit_selected_time_entries: Bulk edit selected time entries | |
945 | text_time_entries_destroy_confirmation: Are you sure you want to delete the selected time entr(y/ies)? |
|
946 | text_time_entries_destroy_confirmation: Are you sure you want to delete the selected time entr(y/ies)? | |
946 | label_issue_note_added: Note added |
|
947 | label_issue_note_added: Note added | |
947 | label_issue_status_updated: Status updated |
|
948 | label_issue_status_updated: Status updated | |
948 | label_issue_priority_updated: Priority updated |
|
949 | label_issue_priority_updated: Priority updated | |
949 | label_issues_visibility_own: Issues created by or assigned to the user |
|
950 | label_issues_visibility_own: Issues created by or assigned to the user | |
950 | field_issues_visibility: Issues visibility |
|
951 | field_issues_visibility: Issues visibility | |
951 | label_issues_visibility_all: All issues |
|
952 | label_issues_visibility_all: All issues | |
952 | permission_set_own_issues_private: Set own issues public or private |
|
953 | permission_set_own_issues_private: Set own issues public or private | |
953 | field_is_private: Private |
|
954 | field_is_private: Private | |
954 | permission_set_issues_private: Set issues public or private |
|
955 | permission_set_issues_private: Set issues public or private | |
955 | label_issues_visibility_public: All non private issues |
|
956 | label_issues_visibility_public: All non private issues | |
956 | text_issues_destroy_descendants_confirmation: This will also delete %{count} subtask(s). |
|
957 | text_issues_destroy_descendants_confirmation: This will also delete %{count} subtask(s). | |
957 | field_commit_logs_encoding: Commit messages encoding |
|
958 | field_commit_logs_encoding: Commit messages encoding | |
958 | field_scm_path_encoding: Path encoding |
|
959 | field_scm_path_encoding: Path encoding | |
959 | text_scm_path_encoding_note: "Default: UTF-8" |
|
960 | text_scm_path_encoding_note: "Default: UTF-8" | |
960 | field_path_to_repository: Path to repository |
|
961 | field_path_to_repository: Path to repository | |
961 | field_root_directory: Root directory |
|
962 | field_root_directory: Root directory | |
962 | field_cvs_module: Module |
|
963 | field_cvs_module: Module | |
963 | field_cvsroot: CVSROOT |
|
964 | field_cvsroot: CVSROOT | |
964 | text_mercurial_repository_note: Local repository (e.g. /hgrepo, c:\hgrepo) |
|
965 | text_mercurial_repository_note: Local repository (e.g. /hgrepo, c:\hgrepo) | |
965 | text_scm_command: Command |
|
966 | text_scm_command: Command | |
966 | text_scm_command_version: Version |
|
967 | text_scm_command_version: Version | |
967 | label_git_report_last_commit: Report last commit for files and directories |
|
968 | label_git_report_last_commit: Report last commit for files and directories | |
968 | text_scm_config: You can configure your SCM commands in config/configuration.yml. Please restart the application after editing it. |
|
969 | text_scm_config: You can configure your SCM commands in config/configuration.yml. Please restart the application after editing it. | |
969 | text_scm_command_not_available: SCM command is not available. Please check settings on the administration panel. |
|
970 | text_scm_command_not_available: SCM command is not available. Please check settings on the administration panel. | |
970 | notice_issue_successful_create: Issue %{id} created. |
|
971 | notice_issue_successful_create: Issue %{id} created. | |
971 | label_between: between |
|
972 | label_between: between | |
972 | label_diff: diff |
|
973 | label_diff: diff | |
973 | text_git_repository_note: Repository is bare and local (e.g. /gitrepo, c:\gitrepo) |
|
974 | text_git_repository_note: Repository is bare and local (e.g. /gitrepo, c:\gitrepo) | |
974 | description_query_sort_criteria_direction: Sort direction |
|
975 | description_query_sort_criteria_direction: Sort direction | |
975 | description_project_scope: Search scope |
|
976 | description_project_scope: Search scope | |
976 | description_filter: Filter |
|
977 | description_filter: Filter | |
977 | description_user_mail_notification: Mail notification settings |
|
978 | description_user_mail_notification: Mail notification settings | |
978 | description_date_from: Enter start date |
|
979 | description_date_from: Enter start date | |
979 | description_message_content: Message content |
|
980 | description_message_content: Message content | |
980 | description_available_columns: Available Columns |
|
981 | description_available_columns: Available Columns | |
981 | description_date_range_interval: Choose range by selecting start and end date |
|
982 | description_date_range_interval: Choose range by selecting start and end date | |
982 | description_issue_category_reassign: Choose issue category |
|
983 | description_issue_category_reassign: Choose issue category | |
983 | description_search: Searchfield |
|
984 | description_search: Searchfield | |
984 | description_notes: Notes |
|
985 | description_notes: Notes | |
985 | description_date_range_list: Choose range from list |
|
986 | description_date_range_list: Choose range from list | |
986 | description_choose_project: Projects |
|
987 | description_choose_project: Projects | |
987 | description_date_to: Enter end date |
|
988 | description_date_to: Enter end date | |
988 | description_query_sort_criteria_attribute: Sort attribute |
|
989 | description_query_sort_criteria_attribute: Sort attribute | |
989 | description_wiki_subpages_reassign: Choose new parent page |
|
990 | description_wiki_subpages_reassign: Choose new parent page | |
990 | description_selected_columns: Selected Columns |
|
991 | description_selected_columns: Selected Columns | |
991 | label_parent_revision: Parent |
|
992 | label_parent_revision: Parent | |
992 | label_child_revision: Child |
|
993 | label_child_revision: Child | |
993 | button_edit_section: Edit this section |
|
994 | button_edit_section: Edit this section | |
994 | setting_repositories_encodings: Attachments and repositories encodings |
|
995 | setting_repositories_encodings: Attachments and repositories encodings | |
995 | description_all_columns: All Columns |
|
996 | description_all_columns: All Columns | |
996 | button_export: Export |
|
997 | button_export: Export | |
997 | label_export_options: "%{export_format} export options" |
|
998 | label_export_options: "%{export_format} export options" | |
998 | error_attachment_too_big: This file cannot be uploaded because it exceeds the maximum allowed file size (%{max_size}) |
|
999 | error_attachment_too_big: This file cannot be uploaded because it exceeds the maximum allowed file size (%{max_size}) | |
999 | notice_failed_to_save_time_entries: "Failed to save %{count} time entrie(s) on %{total} selected: %{ids}." |
|
1000 | notice_failed_to_save_time_entries: "Failed to save %{count} time entrie(s) on %{total} selected: %{ids}." | |
1000 | label_x_issues: |
|
1001 | label_x_issues: | |
1001 | zero: 0 issue |
|
1002 | zero: 0 issue | |
1002 | one: 1 issue |
|
1003 | one: 1 issue | |
1003 | other: "%{count} issues" |
|
1004 | other: "%{count} issues" | |
1004 | label_repository_new: New repository |
|
1005 | label_repository_new: New repository | |
1005 | field_repository_is_default: Main repository |
|
1006 | field_repository_is_default: Main repository | |
1006 | label_copy_attachments: Copy attachments |
|
1007 | label_copy_attachments: Copy attachments | |
1007 | label_item_position: "%{position} of %{count}" |
|
1008 | label_item_position: "%{position} of %{count}" | |
1008 | label_completed_versions: Completed versions |
|
1009 | label_completed_versions: Completed versions | |
1009 | field_multiple: Multiple values |
|
1010 | field_multiple: Multiple values | |
1010 | setting_commit_cross_project_ref: Allow issues of all the other projects to be referenced and fixed |
|
1011 | setting_commit_cross_project_ref: Allow issues of all the other projects to be referenced and fixed | |
1011 | text_issue_conflict_resolution_add_notes: Add my notes and discard my other changes |
|
1012 | text_issue_conflict_resolution_add_notes: Add my notes and discard my other changes | |
1012 | text_issue_conflict_resolution_overwrite: Apply my changes anyway (previous notes will be kept but some changes may be overwritten) |
|
1013 | text_issue_conflict_resolution_overwrite: Apply my changes anyway (previous notes will be kept but some changes may be overwritten) | |
1013 | notice_issue_update_conflict: The issue has been updated by an other user while you were editing it. |
|
1014 | notice_issue_update_conflict: The issue has been updated by an other user while you were editing it. | |
1014 | text_issue_conflict_resolution_cancel: Discard all my changes and redisplay %{link} |
|
1015 | text_issue_conflict_resolution_cancel: Discard all my changes and redisplay %{link} | |
1015 | permission_manage_related_issues: Manage related issues |
|
1016 | permission_manage_related_issues: Manage related issues | |
1016 | field_auth_source_ldap_filter: LDAP filter |
|
1017 | field_auth_source_ldap_filter: LDAP filter | |
1017 | label_search_for_watchers: Search for watchers to add |
|
1018 | label_search_for_watchers: Search for watchers to add | |
1018 | notice_account_deleted: Your account has been permanently deleted. |
|
1019 | notice_account_deleted: Your account has been permanently deleted. | |
1019 | setting_unsubscribe: Allow users to delete their own account |
|
1020 | setting_unsubscribe: Allow users to delete their own account | |
1020 | button_delete_my_account: Delete my account |
|
1021 | button_delete_my_account: Delete my account | |
1021 | text_account_destroy_confirmation: |- |
|
1022 | text_account_destroy_confirmation: |- | |
1022 | Are you sure you want to proceed? |
|
1023 | Are you sure you want to proceed? | |
1023 | Your account will be permanently deleted, with no way to reactivate it. |
|
1024 | Your account will be permanently deleted, with no way to reactivate it. | |
1024 | error_session_expired: Your session has expired. Please login again. |
|
1025 | error_session_expired: Your session has expired. Please login again. | |
1025 | text_session_expiration_settings: "Warning: changing these settings may expire the current sessions including yours." |
|
1026 | text_session_expiration_settings: "Warning: changing these settings may expire the current sessions including yours." | |
1026 | setting_session_lifetime: Session maximum lifetime |
|
1027 | setting_session_lifetime: Session maximum lifetime | |
1027 | setting_session_timeout: Session inactivity timeout |
|
1028 | setting_session_timeout: Session inactivity timeout | |
1028 | label_session_expiration: Session expiration |
|
1029 | label_session_expiration: Session expiration | |
1029 | permission_close_project: Close / reopen the project |
|
1030 | permission_close_project: Close / reopen the project | |
1030 | label_show_closed_projects: View closed projects |
|
1031 | label_show_closed_projects: View closed projects | |
1031 | button_close: Close |
|
1032 | button_close: Close | |
1032 | button_reopen: Reopen |
|
1033 | button_reopen: Reopen | |
1033 | project_status_active: active |
|
1034 | project_status_active: active | |
1034 | project_status_closed: closed |
|
1035 | project_status_closed: closed | |
1035 | project_status_archived: archived |
|
1036 | project_status_archived: archived | |
1036 | text_project_closed: This project is closed and read-only. |
|
1037 | text_project_closed: This project is closed and read-only. | |
1037 | notice_user_successful_create: User %{id} created. |
|
1038 | notice_user_successful_create: User %{id} created. | |
1038 | field_core_fields: Standard fields |
|
1039 | field_core_fields: Standard fields | |
1039 | field_timeout: Timeout (in seconds) |
|
1040 | field_timeout: Timeout (in seconds) | |
1040 | setting_thumbnails_enabled: Display attachment thumbnails |
|
1041 | setting_thumbnails_enabled: Display attachment thumbnails | |
1041 | setting_thumbnails_size: Thumbnails size (in pixels) |
|
1042 | setting_thumbnails_size: Thumbnails size (in pixels) | |
1042 | label_status_transitions: Status transitions |
|
1043 | label_status_transitions: Status transitions | |
1043 | label_fields_permissions: Fields permissions |
|
1044 | label_fields_permissions: Fields permissions | |
1044 | label_readonly: Read-only |
|
1045 | label_readonly: Read-only | |
1045 | label_required: Required |
|
1046 | label_required: Required | |
1046 | text_repository_identifier_info: 'Only lower case letters (a-z), numbers, dashes and underscores are allowed.<br />Once saved, the identifier cannot be changed.' |
|
1047 | text_repository_identifier_info: 'Only lower case letters (a-z), numbers, dashes and underscores are allowed.<br />Once saved, the identifier cannot be changed.' | |
1047 | field_board_parent: Parent forum |
|
1048 | field_board_parent: Parent forum | |
1048 | label_attribute_of_project: Project's %{name} |
|
1049 | label_attribute_of_project: Project's %{name} | |
1049 | label_attribute_of_author: Author's %{name} |
|
1050 | label_attribute_of_author: Author's %{name} | |
1050 | label_attribute_of_assigned_to: Assignee's %{name} |
|
1051 | label_attribute_of_assigned_to: Assignee's %{name} | |
1051 | label_attribute_of_fixed_version: Target version's %{name} |
|
1052 | label_attribute_of_fixed_version: Target version's %{name} | |
1052 | label_copy_subtasks: Copy subtasks |
|
1053 | label_copy_subtasks: Copy subtasks | |
1053 | label_copied_to: copied to |
|
1054 | label_copied_to: copied to | |
1054 | label_copied_from: copied from |
|
1055 | label_copied_from: copied from | |
1055 | label_any_issues_in_project: any issues in project |
|
1056 | label_any_issues_in_project: any issues in project | |
1056 | label_any_issues_not_in_project: any issues not in project |
|
1057 | label_any_issues_not_in_project: any issues not in project | |
1057 | field_private_notes: Private notes |
|
1058 | field_private_notes: Private notes | |
1058 | permission_view_private_notes: View private notes |
|
1059 | permission_view_private_notes: View private notes | |
1059 | permission_set_notes_private: Set notes as private |
|
1060 | permission_set_notes_private: Set notes as private | |
1060 | label_no_issues_in_project: no issues in project |
|
1061 | label_no_issues_in_project: no issues in project | |
1061 | label_any_open_issues: any open issues |
|
1062 | label_any_open_issues: any open issues | |
1062 | label_no_open_issues: no open issues |
|
1063 | label_no_open_issues: no open issues | |
1063 | label_any: all |
|
1064 | label_any: all | |
1064 | label_last_n_weeks: last %{count} weeks |
|
1065 | label_last_n_weeks: last %{count} weeks | |
1065 | setting_cross_project_subtasks: Allow cross-project subtasks |
|
1066 | setting_cross_project_subtasks: Allow cross-project subtasks | |
1066 | label_cross_project_descendants: With subprojects |
|
1067 | label_cross_project_descendants: With subprojects | |
1067 | label_cross_project_tree: With project tree |
|
1068 | label_cross_project_tree: With project tree | |
1068 | label_cross_project_hierarchy: With project hierarchy |
|
1069 | label_cross_project_hierarchy: With project hierarchy | |
1069 | label_cross_project_system: With all projects |
|
1070 | label_cross_project_system: With all projects | |
1070 | button_hide: Hide |
|
1071 | button_hide: Hide | |
1071 | setting_non_working_week_days: Non-working days |
|
1072 | setting_non_working_week_days: Non-working days | |
1072 | label_in_the_next_days: in the next |
|
1073 | label_in_the_next_days: in the next | |
1073 | label_in_the_past_days: in the past |
|
1074 | label_in_the_past_days: in the past | |
1074 | label_attribute_of_user: User's %{name} |
|
1075 | label_attribute_of_user: User's %{name} | |
1075 | text_turning_multiple_off: If you disable multiple values, multiple values will be |
|
1076 | text_turning_multiple_off: If you disable multiple values, multiple values will be | |
1076 | removed in order to preserve only one value per item. |
|
1077 | removed in order to preserve only one value per item. | |
1077 | label_attribute_of_issue: Issue's %{name} |
|
1078 | label_attribute_of_issue: Issue's %{name} | |
1078 | permission_add_documents: Add documents |
|
1079 | permission_add_documents: Add documents | |
1079 | permission_edit_documents: Edit documents |
|
1080 | permission_edit_documents: Edit documents | |
1080 | permission_delete_documents: Delete documents |
|
1081 | permission_delete_documents: Delete documents | |
1081 | label_gantt_progress_line: Progress line |
|
1082 | label_gantt_progress_line: Progress line | |
1082 | setting_jsonp_enabled: Enable JSONP support |
|
1083 | setting_jsonp_enabled: Enable JSONP support | |
1083 | field_inherit_members: Inherit members |
|
1084 | field_inherit_members: Inherit members | |
1084 | field_closed_on: Closed |
|
1085 | field_closed_on: Closed | |
1085 | field_generate_password: Generate password |
|
1086 | field_generate_password: Generate password | |
1086 | setting_default_projects_tracker_ids: Default trackers for new projects |
|
1087 | setting_default_projects_tracker_ids: Default trackers for new projects | |
1087 | label_total_time: Total |
|
1088 | label_total_time: Total | |
1088 | notice_account_not_activated_yet: You haven't activated your account yet. If you want |
|
1089 | notice_account_not_activated_yet: You haven't activated your account yet. If you want | |
1089 | to receive a new activation email, please <a href="%{url}">click this link</a>. |
|
1090 | to receive a new activation email, please <a href="%{url}">click this link</a>. | |
1090 | notice_account_locked: Your account is locked. |
|
1091 | notice_account_locked: Your account is locked. | |
1091 | label_hidden: Hidden |
|
1092 | label_hidden: Hidden | |
1092 | label_visibility_private: to me only |
|
1093 | label_visibility_private: to me only | |
1093 | label_visibility_roles: to these roles only |
|
1094 | label_visibility_roles: to these roles only | |
1094 | label_visibility_public: to any users |
|
1095 | label_visibility_public: to any users | |
1095 | field_must_change_passwd: Must change password at next logon |
|
1096 | field_must_change_passwd: Must change password at next logon | |
1096 | notice_new_password_must_be_different: The new password must be different from the |
|
1097 | notice_new_password_must_be_different: The new password must be different from the | |
1097 | current password |
|
1098 | current password | |
1098 | setting_mail_handler_excluded_filenames: Exclude attachments by name |
|
1099 | setting_mail_handler_excluded_filenames: Exclude attachments by name | |
1099 | text_convert_available: ImageMagick convert available (optional) |
|
1100 | text_convert_available: ImageMagick convert available (optional) | |
1100 | label_link: Link |
|
1101 | label_link: Link | |
1101 | label_only: only |
|
1102 | label_only: only | |
1102 | label_drop_down_list: drop-down list |
|
1103 | label_drop_down_list: drop-down list | |
1103 | label_checkboxes: checkboxes |
|
1104 | label_checkboxes: checkboxes | |
1104 | label_link_values_to: Link values to URL |
|
1105 | label_link_values_to: Link values to URL | |
1105 | setting_force_default_language_for_anonymous: Force default language for anonymous |
|
1106 | setting_force_default_language_for_anonymous: Force default language for anonymous | |
1106 | users |
|
1107 | users | |
1107 | setting_force_default_language_for_loggedin: Force default language for logged-in |
|
1108 | setting_force_default_language_for_loggedin: Force default language for logged-in | |
1108 | users |
|
1109 | users | |
1109 | label_custom_field_select_type: Select the type of object to which the custom field |
|
1110 | label_custom_field_select_type: Select the type of object to which the custom field | |
1110 | is to be attached |
|
1111 | is to be attached | |
1111 | label_issue_assigned_to_updated: Assignee updated |
|
1112 | label_issue_assigned_to_updated: Assignee updated | |
1112 | label_check_for_updates: Check for updates |
|
1113 | label_check_for_updates: Check for updates | |
1113 | label_latest_compatible_version: Latest compatible version |
|
1114 | label_latest_compatible_version: Latest compatible version | |
1114 | label_unknown_plugin: Unknown plugin |
|
1115 | label_unknown_plugin: Unknown plugin | |
1115 | label_radio_buttons: radio buttons |
|
1116 | label_radio_buttons: radio buttons | |
1116 | label_group_anonymous: Anonymous users |
|
1117 | label_group_anonymous: Anonymous users | |
1117 | label_group_non_member: Non member users |
|
1118 | label_group_non_member: Non member users | |
1118 | label_add_projects: Add projects |
|
1119 | label_add_projects: Add projects | |
1119 | field_default_status: Default status |
|
1120 | field_default_status: Default status | |
1120 | text_subversion_repository_note: 'Examples: file:///, http://, https://, svn://, svn+[tunnelscheme]://' |
|
1121 | text_subversion_repository_note: 'Examples: file:///, http://, https://, svn://, svn+[tunnelscheme]://' | |
1121 | field_users_visibility: Users visibility |
|
1122 | field_users_visibility: Users visibility | |
1122 | label_users_visibility_all: All active users |
|
1123 | label_users_visibility_all: All active users | |
1123 | label_users_visibility_members_of_visible_projects: Members of visible projects |
|
1124 | label_users_visibility_members_of_visible_projects: Members of visible projects | |
1124 | label_edit_attachments: Edit attached files |
|
1125 | label_edit_attachments: Edit attached files | |
1125 | setting_link_copied_issue: Link issues on copy |
|
1126 | setting_link_copied_issue: Link issues on copy | |
1126 | label_link_copied_issue: Link copied issue |
|
1127 | label_link_copied_issue: Link copied issue | |
1127 | label_ask: Ask |
|
1128 | label_ask: Ask | |
1128 | label_search_attachments_yes: Search attachment filenames and descriptions |
|
1129 | label_search_attachments_yes: Search attachment filenames and descriptions | |
1129 | label_search_attachments_no: Do not search attachments |
|
1130 | label_search_attachments_no: Do not search attachments | |
1130 | label_search_attachments_only: Search attachments only |
|
1131 | label_search_attachments_only: Search attachments only | |
1131 | label_search_open_issues_only: Open issues only |
|
1132 | label_search_open_issues_only: Open issues only | |
1132 | field_address: Email |
|
1133 | field_address: Email | |
1133 | setting_max_additional_emails: Maximum number of additional email addresses |
|
1134 | setting_max_additional_emails: Maximum number of additional email addresses | |
1134 | label_email_address_plural: Emails |
|
1135 | label_email_address_plural: Emails | |
1135 | label_email_address_add: Add email address |
|
1136 | label_email_address_add: Add email address | |
1136 | label_enable_notifications: Enable notifications |
|
1137 | label_enable_notifications: Enable notifications | |
1137 | label_disable_notifications: Disable notifications |
|
1138 | label_disable_notifications: Disable notifications | |
1138 | setting_search_results_per_page: Search results per page |
|
1139 | setting_search_results_per_page: Search results per page | |
1139 | label_blank_value: blank |
|
1140 | label_blank_value: blank | |
1140 | permission_copy_issues: Copy issues |
|
1141 | permission_copy_issues: Copy issues | |
1141 | error_password_expired: Your password has expired or the administrator requires you |
|
1142 | error_password_expired: Your password has expired or the administrator requires you | |
1142 | to change it. |
|
1143 | to change it. | |
1143 | field_time_entries_visibility: Time logs visibility |
|
1144 | field_time_entries_visibility: Time logs visibility | |
1144 | setting_password_max_age: Require password change after |
|
1145 | setting_password_max_age: Require password change after | |
1145 | label_parent_task_attributes: Parent tasks attributes |
|
1146 | label_parent_task_attributes: Parent tasks attributes | |
1146 | label_parent_task_attributes_derived: Calculated from subtasks |
|
1147 | label_parent_task_attributes_derived: Calculated from subtasks | |
1147 | label_parent_task_attributes_independent: Independent of subtasks |
|
1148 | label_parent_task_attributes_independent: Independent of subtasks | |
1148 | label_time_entries_visibility_all: All time entries |
|
1149 | label_time_entries_visibility_all: All time entries | |
1149 | label_time_entries_visibility_own: Time entries created by the user |
|
1150 | label_time_entries_visibility_own: Time entries created by the user | |
1150 | label_member_management: Member management |
|
1151 | label_member_management: Member management | |
1151 | label_member_management_all_roles: All roles |
|
1152 | label_member_management_all_roles: All roles | |
1152 | label_member_management_selected_roles_only: Only these roles |
|
1153 | label_member_management_selected_roles_only: Only these roles | |
1153 | label_password_required: Confirm your password to continue |
|
1154 | label_password_required: Confirm your password to continue | |
1154 | label_total_spent_time: Overall spent time |
|
1155 | label_total_spent_time: Overall spent time | |
1155 | notice_import_finished: All %{count} items have been imported. |
|
1156 | notice_import_finished: All %{count} items have been imported. | |
1156 | notice_import_finished_with_errors: ! '%{count} out of %{total} items could not be |
|
1157 | notice_import_finished_with_errors: ! '%{count} out of %{total} items could not be | |
1157 | imported.' |
|
1158 | imported.' | |
1158 | error_invalid_file_encoding: The file is not a valid %{encoding} encoded file |
|
1159 | error_invalid_file_encoding: The file is not a valid %{encoding} encoded file | |
1159 | error_invalid_csv_file_or_settings: The file is not a CSV file or does not match the |
|
1160 | error_invalid_csv_file_or_settings: The file is not a CSV file or does not match the | |
1160 | settings below |
|
1161 | settings below | |
1161 | error_can_not_read_import_file: An error occurred while reading the file to import |
|
1162 | error_can_not_read_import_file: An error occurred while reading the file to import | |
1162 | permission_import_issues: Import issues |
|
1163 | permission_import_issues: Import issues | |
1163 | label_import_issues: Import issues |
|
1164 | label_import_issues: Import issues | |
1164 | label_select_file_to_import: Select the file to import |
|
1165 | label_select_file_to_import: Select the file to import | |
1165 | label_fields_separator: Field separator |
|
1166 | label_fields_separator: Field separator | |
1166 | label_fields_wrapper: Field wrapper |
|
1167 | label_fields_wrapper: Field wrapper | |
1167 | label_encoding: Encoding |
|
1168 | label_encoding: Encoding | |
1168 | label_comma_char: Comma |
|
1169 | label_comma_char: Comma | |
1169 | label_semi_colon_char: Semicolon |
|
1170 | label_semi_colon_char: Semicolon | |
1170 | label_quote_char: Quote |
|
1171 | label_quote_char: Quote | |
1171 | label_double_quote_char: Double quote |
|
1172 | label_double_quote_char: Double quote | |
1172 | label_fields_mapping: Fields mapping |
|
1173 | label_fields_mapping: Fields mapping | |
1173 | label_file_content_preview: File content preview |
|
1174 | label_file_content_preview: File content preview | |
1174 | label_create_missing_values: Create missing values |
|
1175 | label_create_missing_values: Create missing values | |
1175 | button_import: Import |
|
1176 | button_import: Import | |
1176 | field_total_estimated_hours: Total estimated time |
|
1177 | field_total_estimated_hours: Total estimated time | |
1177 | label_api: API |
|
1178 | label_api: API | |
1178 | label_total_plural: Totals |
|
1179 | label_total_plural: Totals | |
1179 | label_assigned_issues: Assigned issues |
|
1180 | label_assigned_issues: Assigned issues | |
1180 | label_field_format_enumeration: Key/value list |
|
1181 | label_field_format_enumeration: Key/value list | |
1181 | label_f_hour_short: '%{value} h' |
|
1182 | label_f_hour_short: '%{value} h' | |
1182 | field_default_version: Default version |
|
1183 | field_default_version: Default version | |
1183 | error_attachment_extension_not_allowed: Attachment extension %{extension} is not allowed |
|
1184 | error_attachment_extension_not_allowed: Attachment extension %{extension} is not allowed | |
1184 | setting_attachment_extensions_allowed: Allowed extensions |
|
1185 | setting_attachment_extensions_allowed: Allowed extensions | |
1185 | setting_attachment_extensions_denied: Disallowed extensions |
|
1186 | setting_attachment_extensions_denied: Disallowed extensions | |
1186 | label_default_values_for_new_users: Default values for new users |
|
1187 | label_default_values_for_new_users: Default values for new users | |
1187 | error_ldap_bind_credentials: Invalid LDAP Account/Password |
|
1188 | error_ldap_bind_credentials: Invalid LDAP Account/Password | |
1188 | setting_sys_api_key: API key |
|
1189 | setting_sys_api_key: API key | |
1189 | setting_lost_password: Lost password |
|
1190 | setting_lost_password: Lost password | |
1190 | mail_subject_security_notification: Security notification |
|
1191 | mail_subject_security_notification: Security notification | |
1191 | mail_body_security_notification_change: ! '%{field} was changed.' |
|
1192 | mail_body_security_notification_change: ! '%{field} was changed.' | |
1192 | mail_body_security_notification_change_to: ! '%{field} was changed to %{value}.' |
|
1193 | mail_body_security_notification_change_to: ! '%{field} was changed to %{value}.' | |
1193 | mail_body_security_notification_add: ! '%{field} %{value} was added.' |
|
1194 | mail_body_security_notification_add: ! '%{field} %{value} was added.' | |
1194 | mail_body_security_notification_remove: ! '%{field} %{value} was removed.' |
|
1195 | mail_body_security_notification_remove: ! '%{field} %{value} was removed.' | |
1195 | mail_body_security_notification_notify_enabled: Email address %{value} now receives |
|
1196 | mail_body_security_notification_notify_enabled: Email address %{value} now receives | |
1196 | notifications. |
|
1197 | notifications. | |
1197 | mail_body_security_notification_notify_disabled: Email address %{value} no longer |
|
1198 | mail_body_security_notification_notify_disabled: Email address %{value} no longer | |
1198 | receives notifications. |
|
1199 | receives notifications. | |
1199 | mail_body_settings_updated: ! 'The following settings were changed:' |
|
1200 | mail_body_settings_updated: ! 'The following settings were changed:' | |
1200 | field_remote_ip: IP address |
|
1201 | field_remote_ip: IP address | |
1201 | label_wiki_page_new: New wiki page |
|
1202 | label_wiki_page_new: New wiki page | |
1202 | label_relations: Relations |
|
1203 | label_relations: Relations | |
1203 | button_filter: Filter |
|
1204 | button_filter: Filter |
@@ -1,1186 +1,1187 | |||||
1 | en: |
|
1 | en: | |
2 | # Text direction: Left-to-Right (ltr) or Right-to-Left (rtl) |
|
2 | # Text direction: Left-to-Right (ltr) or Right-to-Left (rtl) | |
3 | direction: ltr |
|
3 | direction: ltr | |
4 | date: |
|
4 | date: | |
5 | formats: |
|
5 | formats: | |
6 | # Use the strftime parameters for formats. |
|
6 | # Use the strftime parameters for formats. | |
7 | # When no format has been given, it uses default. |
|
7 | # When no format has been given, it uses default. | |
8 | # You can provide other formats here if you like! |
|
8 | # You can provide other formats here if you like! | |
9 | default: "%m/%d/%Y" |
|
9 | default: "%m/%d/%Y" | |
10 | short: "%b %d" |
|
10 | short: "%b %d" | |
11 | long: "%B %d, %Y" |
|
11 | long: "%B %d, %Y" | |
12 |
|
12 | |||
13 | day_names: [Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday] |
|
13 | day_names: [Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday] | |
14 | abbr_day_names: [Sun, Mon, Tue, Wed, Thu, Fri, Sat] |
|
14 | abbr_day_names: [Sun, Mon, Tue, Wed, Thu, Fri, Sat] | |
15 |
|
15 | |||
16 | # Don't forget the nil at the beginning; there's no such thing as a 0th month |
|
16 | # Don't forget the nil at the beginning; there's no such thing as a 0th month | |
17 | month_names: [~, January, February, March, April, May, June, July, August, September, October, November, December] |
|
17 | month_names: [~, January, February, March, April, May, June, July, August, September, October, November, December] | |
18 | abbr_month_names: [~, Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec] |
|
18 | abbr_month_names: [~, Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec] | |
19 | # Used in date_select and datime_select. |
|
19 | # Used in date_select and datime_select. | |
20 | order: |
|
20 | order: | |
21 | - :year |
|
21 | - :year | |
22 | - :month |
|
22 | - :month | |
23 | - :day |
|
23 | - :day | |
24 |
|
24 | |||
25 | time: |
|
25 | time: | |
26 | formats: |
|
26 | formats: | |
27 | default: "%m/%d/%Y %I:%M %p" |
|
27 | default: "%m/%d/%Y %I:%M %p" | |
28 | time: "%I:%M %p" |
|
28 | time: "%I:%M %p" | |
29 | short: "%d %b %H:%M" |
|
29 | short: "%d %b %H:%M" | |
30 | long: "%B %d, %Y %H:%M" |
|
30 | long: "%B %d, %Y %H:%M" | |
31 | am: "am" |
|
31 | am: "am" | |
32 | pm: "pm" |
|
32 | pm: "pm" | |
33 |
|
33 | |||
34 | datetime: |
|
34 | datetime: | |
35 | distance_in_words: |
|
35 | distance_in_words: | |
36 | half_a_minute: "half a minute" |
|
36 | half_a_minute: "half a minute" | |
37 | less_than_x_seconds: |
|
37 | less_than_x_seconds: | |
38 | one: "less than 1 second" |
|
38 | one: "less than 1 second" | |
39 | other: "less than %{count} seconds" |
|
39 | other: "less than %{count} seconds" | |
40 | x_seconds: |
|
40 | x_seconds: | |
41 | one: "1 second" |
|
41 | one: "1 second" | |
42 | other: "%{count} seconds" |
|
42 | other: "%{count} seconds" | |
43 | less_than_x_minutes: |
|
43 | less_than_x_minutes: | |
44 | one: "less than a minute" |
|
44 | one: "less than a minute" | |
45 | other: "less than %{count} minutes" |
|
45 | other: "less than %{count} minutes" | |
46 | x_minutes: |
|
46 | x_minutes: | |
47 | one: "1 minute" |
|
47 | one: "1 minute" | |
48 | other: "%{count} minutes" |
|
48 | other: "%{count} minutes" | |
49 | about_x_hours: |
|
49 | about_x_hours: | |
50 | one: "about 1 hour" |
|
50 | one: "about 1 hour" | |
51 | other: "about %{count} hours" |
|
51 | other: "about %{count} hours" | |
52 | x_hours: |
|
52 | x_hours: | |
53 | one: "1 hour" |
|
53 | one: "1 hour" | |
54 | other: "%{count} hours" |
|
54 | other: "%{count} hours" | |
55 | x_days: |
|
55 | x_days: | |
56 | one: "1 day" |
|
56 | one: "1 day" | |
57 | other: "%{count} days" |
|
57 | other: "%{count} days" | |
58 | about_x_months: |
|
58 | about_x_months: | |
59 | one: "about 1 month" |
|
59 | one: "about 1 month" | |
60 | other: "about %{count} months" |
|
60 | other: "about %{count} months" | |
61 | x_months: |
|
61 | x_months: | |
62 | one: "1 month" |
|
62 | one: "1 month" | |
63 | other: "%{count} months" |
|
63 | other: "%{count} months" | |
64 | about_x_years: |
|
64 | about_x_years: | |
65 | one: "about 1 year" |
|
65 | one: "about 1 year" | |
66 | other: "about %{count} years" |
|
66 | other: "about %{count} years" | |
67 | over_x_years: |
|
67 | over_x_years: | |
68 | one: "over 1 year" |
|
68 | one: "over 1 year" | |
69 | other: "over %{count} years" |
|
69 | other: "over %{count} years" | |
70 | almost_x_years: |
|
70 | almost_x_years: | |
71 | one: "almost 1 year" |
|
71 | one: "almost 1 year" | |
72 | other: "almost %{count} years" |
|
72 | other: "almost %{count} years" | |
73 |
|
73 | |||
74 | number: |
|
74 | number: | |
75 | format: |
|
75 | format: | |
76 | separator: "." |
|
76 | separator: "." | |
77 | delimiter: "" |
|
77 | delimiter: "" | |
78 | precision: 3 |
|
78 | precision: 3 | |
79 |
|
79 | |||
80 | human: |
|
80 | human: | |
81 | format: |
|
81 | format: | |
82 | delimiter: "" |
|
82 | delimiter: "" | |
83 | precision: 3 |
|
83 | precision: 3 | |
84 | storage_units: |
|
84 | storage_units: | |
85 | format: "%n %u" |
|
85 | format: "%n %u" | |
86 | units: |
|
86 | units: | |
87 | byte: |
|
87 | byte: | |
88 | one: "Byte" |
|
88 | one: "Byte" | |
89 | other: "Bytes" |
|
89 | other: "Bytes" | |
90 | kb: "KB" |
|
90 | kb: "KB" | |
91 | mb: "MB" |
|
91 | mb: "MB" | |
92 | gb: "GB" |
|
92 | gb: "GB" | |
93 | tb: "TB" |
|
93 | tb: "TB" | |
94 |
|
94 | |||
95 | # Used in array.to_sentence. |
|
95 | # Used in array.to_sentence. | |
96 | support: |
|
96 | support: | |
97 | array: |
|
97 | array: | |
98 | sentence_connector: "and" |
|
98 | sentence_connector: "and" | |
99 | skip_last_comma: false |
|
99 | skip_last_comma: false | |
100 |
|
100 | |||
101 | activerecord: |
|
101 | activerecord: | |
102 | errors: |
|
102 | errors: | |
103 | template: |
|
103 | template: | |
104 | header: |
|
104 | header: | |
105 | one: "1 error prohibited this %{model} from being saved" |
|
105 | one: "1 error prohibited this %{model} from being saved" | |
106 | other: "%{count} errors prohibited this %{model} from being saved" |
|
106 | other: "%{count} errors prohibited this %{model} from being saved" | |
107 | messages: |
|
107 | messages: | |
108 | inclusion: "is not included in the list" |
|
108 | inclusion: "is not included in the list" | |
109 | exclusion: "is reserved" |
|
109 | exclusion: "is reserved" | |
110 | invalid: "is invalid" |
|
110 | invalid: "is invalid" | |
111 | confirmation: "doesn't match confirmation" |
|
111 | confirmation: "doesn't match confirmation" | |
112 | accepted: "must be accepted" |
|
112 | accepted: "must be accepted" | |
113 | empty: "cannot be empty" |
|
113 | empty: "cannot be empty" | |
114 | blank: "cannot be blank" |
|
114 | blank: "cannot be blank" | |
115 | too_long: "is too long (maximum is %{count} characters)" |
|
115 | too_long: "is too long (maximum is %{count} characters)" | |
116 | too_short: "is too short (minimum is %{count} characters)" |
|
116 | too_short: "is too short (minimum is %{count} characters)" | |
117 | wrong_length: "is the wrong length (should be %{count} characters)" |
|
117 | wrong_length: "is the wrong length (should be %{count} characters)" | |
118 | taken: "has already been taken" |
|
118 | taken: "has already been taken" | |
119 | not_a_number: "is not a number" |
|
119 | not_a_number: "is not a number" | |
120 | not_a_date: "is not a valid date" |
|
120 | not_a_date: "is not a valid date" | |
121 | greater_than: "must be greater than %{count}" |
|
121 | greater_than: "must be greater than %{count}" | |
122 | greater_than_or_equal_to: "must be greater than or equal to %{count}" |
|
122 | greater_than_or_equal_to: "must be greater than or equal to %{count}" | |
123 | equal_to: "must be equal to %{count}" |
|
123 | equal_to: "must be equal to %{count}" | |
124 | less_than: "must be less than %{count}" |
|
124 | less_than: "must be less than %{count}" | |
125 | less_than_or_equal_to: "must be less than or equal to %{count}" |
|
125 | less_than_or_equal_to: "must be less than or equal to %{count}" | |
126 | odd: "must be odd" |
|
126 | odd: "must be odd" | |
127 | even: "must be even" |
|
127 | even: "must be even" | |
128 | greater_than_start_date: "must be greater than start date" |
|
128 | greater_than_start_date: "must be greater than start date" | |
129 | not_same_project: "doesn't belong to the same project" |
|
129 | not_same_project: "doesn't belong to the same project" | |
130 | circular_dependency: "This relation would create a circular dependency" |
|
130 | circular_dependency: "This relation would create a circular dependency" | |
131 | cant_link_an_issue_with_a_descendant: "An issue cannot be linked to one of its subtasks" |
|
131 | cant_link_an_issue_with_a_descendant: "An issue cannot be linked to one of its subtasks" | |
132 | earlier_than_minimum_start_date: "cannot be earlier than %{date} because of preceding issues" |
|
132 | earlier_than_minimum_start_date: "cannot be earlier than %{date} because of preceding issues" | |
133 |
|
133 | |||
134 | actionview_instancetag_blank_option: Please select |
|
134 | actionview_instancetag_blank_option: Please select | |
135 |
|
135 | |||
136 | general_text_No: 'No' |
|
136 | general_text_No: 'No' | |
137 | general_text_Yes: 'Yes' |
|
137 | general_text_Yes: 'Yes' | |
138 | general_text_no: 'no' |
|
138 | general_text_no: 'no' | |
139 | general_text_yes: 'yes' |
|
139 | general_text_yes: 'yes' | |
140 | general_lang_name: 'English' |
|
140 | general_lang_name: 'English' | |
141 | general_csv_separator: ',' |
|
141 | general_csv_separator: ',' | |
142 | general_csv_decimal_separator: '.' |
|
142 | general_csv_decimal_separator: '.' | |
143 | general_csv_encoding: ISO-8859-1 |
|
143 | general_csv_encoding: ISO-8859-1 | |
144 | general_pdf_fontname: freesans |
|
144 | general_pdf_fontname: freesans | |
145 | general_pdf_monospaced_fontname: freemono |
|
145 | general_pdf_monospaced_fontname: freemono | |
146 | general_first_day_of_week: '7' |
|
146 | general_first_day_of_week: '7' | |
147 |
|
147 | |||
148 | notice_account_updated: Account was successfully updated. |
|
148 | notice_account_updated: Account was successfully updated. | |
149 | notice_account_invalid_credentials: Invalid user or password |
|
149 | notice_account_invalid_credentials: Invalid user or password | |
150 | notice_account_password_updated: Password was successfully updated. |
|
150 | notice_account_password_updated: Password was successfully updated. | |
151 | notice_account_wrong_password: Wrong password |
|
151 | notice_account_wrong_password: Wrong password | |
152 | notice_account_register_done: Account was successfully created. An email containing the instructions to activate your account was sent to %{email}. |
|
152 | notice_account_register_done: Account was successfully created. An email containing the instructions to activate your account was sent to %{email}. | |
153 | notice_account_unknown_email: Unknown user. |
|
153 | notice_account_unknown_email: Unknown user. | |
154 | notice_account_not_activated_yet: You haven't activated your account yet. If you want to receive a new activation email, please <a href="%{url}">click this link</a>. |
|
154 | notice_account_not_activated_yet: You haven't activated your account yet. If you want to receive a new activation email, please <a href="%{url}">click this link</a>. | |
155 | notice_account_locked: Your account is locked. |
|
155 | notice_account_locked: Your account is locked. | |
156 | notice_can_t_change_password: This account uses an external authentication source. Impossible to change the password. |
|
156 | notice_can_t_change_password: This account uses an external authentication source. Impossible to change the password. | |
157 | notice_account_lost_email_sent: An email with instructions to choose a new password has been sent to you. |
|
157 | notice_account_lost_email_sent: An email with instructions to choose a new password has been sent to you. | |
158 | notice_account_activated: Your account has been activated. You can now log in. |
|
158 | notice_account_activated: Your account has been activated. You can now log in. | |
159 | notice_successful_create: Successful creation. |
|
159 | notice_successful_create: Successful creation. | |
160 | notice_successful_update: Successful update. |
|
160 | notice_successful_update: Successful update. | |
161 | notice_successful_delete: Successful deletion. |
|
161 | notice_successful_delete: Successful deletion. | |
162 | notice_successful_connection: Successful connection. |
|
162 | notice_successful_connection: Successful connection. | |
163 | notice_file_not_found: The page you were trying to access doesn't exist or has been removed. |
|
163 | notice_file_not_found: The page you were trying to access doesn't exist or has been removed. | |
164 | notice_locking_conflict: Data has been updated by another user. |
|
164 | notice_locking_conflict: Data has been updated by another user. | |
165 | notice_not_authorized: You are not authorized to access this page. |
|
165 | notice_not_authorized: You are not authorized to access this page. | |
166 | notice_not_authorized_archived_project: The project you're trying to access has been archived. |
|
166 | notice_not_authorized_archived_project: The project you're trying to access has been archived. | |
167 | notice_email_sent: "An email was sent to %{value}" |
|
167 | notice_email_sent: "An email was sent to %{value}" | |
168 | notice_email_error: "An error occurred while sending mail (%{value})" |
|
168 | notice_email_error: "An error occurred while sending mail (%{value})" | |
169 | notice_feeds_access_key_reseted: Your Atom access key was reset. |
|
169 | notice_feeds_access_key_reseted: Your Atom access key was reset. | |
170 | notice_api_access_key_reseted: Your API access key was reset. |
|
170 | notice_api_access_key_reseted: Your API access key was reset. | |
171 | notice_failed_to_save_issues: "Failed to save %{count} issue(s) on %{total} selected: %{ids}." |
|
171 | notice_failed_to_save_issues: "Failed to save %{count} issue(s) on %{total} selected: %{ids}." | |
172 | notice_failed_to_save_time_entries: "Failed to save %{count} time entrie(s) on %{total} selected: %{ids}." |
|
172 | notice_failed_to_save_time_entries: "Failed to save %{count} time entrie(s) on %{total} selected: %{ids}." | |
173 | notice_failed_to_save_members: "Failed to save member(s): %{errors}." |
|
173 | notice_failed_to_save_members: "Failed to save member(s): %{errors}." | |
174 | notice_no_issue_selected: "No issue is selected! Please, check the issues you want to edit." |
|
174 | notice_no_issue_selected: "No issue is selected! Please, check the issues you want to edit." | |
175 | notice_account_pending: "Your account was created and is now pending administrator approval." |
|
175 | notice_account_pending: "Your account was created and is now pending administrator approval." | |
176 | notice_default_data_loaded: Default configuration successfully loaded. |
|
176 | notice_default_data_loaded: Default configuration successfully loaded. | |
177 | notice_unable_delete_version: Unable to delete version. |
|
177 | notice_unable_delete_version: Unable to delete version. | |
178 | notice_unable_delete_time_entry: Unable to delete time log entry. |
|
178 | notice_unable_delete_time_entry: Unable to delete time log entry. | |
179 | notice_issue_done_ratios_updated: Issue done ratios updated. |
|
179 | notice_issue_done_ratios_updated: Issue done ratios updated. | |
180 | notice_gantt_chart_truncated: "The chart was truncated because it exceeds the maximum number of items that can be displayed (%{max})" |
|
180 | notice_gantt_chart_truncated: "The chart was truncated because it exceeds the maximum number of items that can be displayed (%{max})" | |
181 | notice_issue_successful_create: "Issue %{id} created." |
|
181 | notice_issue_successful_create: "Issue %{id} created." | |
182 | notice_issue_update_conflict: "The issue has been updated by an other user while you were editing it." |
|
182 | notice_issue_update_conflict: "The issue has been updated by an other user while you were editing it." | |
183 | notice_account_deleted: "Your account has been permanently deleted." |
|
183 | notice_account_deleted: "Your account has been permanently deleted." | |
184 | notice_user_successful_create: "User %{id} created." |
|
184 | notice_user_successful_create: "User %{id} created." | |
185 | notice_new_password_must_be_different: The new password must be different from the current password |
|
185 | notice_new_password_must_be_different: The new password must be different from the current password | |
186 | notice_import_finished: "All %{count} items have been imported." |
|
186 | notice_import_finished: "All %{count} items have been imported." | |
187 | notice_import_finished_with_errors: "%{count} out of %{total} items could not be imported." |
|
187 | notice_import_finished_with_errors: "%{count} out of %{total} items could not be imported." | |
188 |
|
188 | |||
189 | error_can_t_load_default_data: "Default configuration could not be loaded: %{value}" |
|
189 | error_can_t_load_default_data: "Default configuration could not be loaded: %{value}" | |
190 | error_scm_not_found: "The entry or revision was not found in the repository." |
|
190 | error_scm_not_found: "The entry or revision was not found in the repository." | |
191 | error_scm_command_failed: "An error occurred when trying to access the repository: %{value}" |
|
191 | error_scm_command_failed: "An error occurred when trying to access the repository: %{value}" | |
192 | error_scm_annotate: "The entry does not exist or cannot be annotated." |
|
192 | error_scm_annotate: "The entry does not exist or cannot be annotated." | |
193 | error_scm_annotate_big_text_file: "The entry cannot be annotated, as it exceeds the maximum text file size." |
|
193 | error_scm_annotate_big_text_file: "The entry cannot be annotated, as it exceeds the maximum text file size." | |
194 | error_issue_not_found_in_project: 'The issue was not found or does not belong to this project' |
|
194 | error_issue_not_found_in_project: 'The issue was not found or does not belong to this project' | |
195 | error_no_tracker_in_project: 'No tracker is associated to this project. Please check the Project settings.' |
|
195 | error_no_tracker_in_project: 'No tracker is associated to this project. Please check the Project settings.' | |
196 | error_no_default_issue_status: 'No default issue status is defined. Please check your configuration (Go to "Administration -> Issue statuses").' |
|
196 | error_no_default_issue_status: 'No default issue status is defined. Please check your configuration (Go to "Administration -> Issue statuses").' | |
197 | error_can_not_delete_custom_field: Unable to delete custom field |
|
197 | error_can_not_delete_custom_field: Unable to delete custom field | |
198 | error_can_not_delete_tracker: "This tracker contains issues and cannot be deleted." |
|
198 | error_can_not_delete_tracker: "This tracker contains issues and cannot be deleted." | |
199 | error_can_not_remove_role: "This role is in use and cannot be deleted." |
|
199 | error_can_not_remove_role: "This role is in use and cannot be deleted." | |
200 | error_can_not_reopen_issue_on_closed_version: 'An issue assigned to a closed version cannot be reopened' |
|
200 | error_can_not_reopen_issue_on_closed_version: 'An issue assigned to a closed version cannot be reopened' | |
201 | error_can_not_archive_project: This project cannot be archived |
|
201 | error_can_not_archive_project: This project cannot be archived | |
202 | error_issue_done_ratios_not_updated: "Issue done ratios not updated." |
|
202 | error_issue_done_ratios_not_updated: "Issue done ratios not updated." | |
203 | error_workflow_copy_source: 'Please select a source tracker or role' |
|
203 | error_workflow_copy_source: 'Please select a source tracker or role' | |
204 | error_workflow_copy_target: 'Please select target tracker(s) and role(s)' |
|
204 | error_workflow_copy_target: 'Please select target tracker(s) and role(s)' | |
205 | error_unable_delete_issue_status: 'Unable to delete issue status' |
|
205 | error_unable_delete_issue_status: 'Unable to delete issue status' | |
206 | error_unable_to_connect: "Unable to connect (%{value})" |
|
206 | error_unable_to_connect: "Unable to connect (%{value})" | |
207 | error_attachment_too_big: "This file cannot be uploaded because it exceeds the maximum allowed file size (%{max_size})" |
|
207 | error_attachment_too_big: "This file cannot be uploaded because it exceeds the maximum allowed file size (%{max_size})" | |
208 | error_session_expired: "Your session has expired. Please login again." |
|
208 | error_session_expired: "Your session has expired. Please login again." | |
209 | warning_attachments_not_saved: "%{count} file(s) could not be saved." |
|
209 | warning_attachments_not_saved: "%{count} file(s) could not be saved." | |
210 | error_password_expired: "Your password has expired or the administrator requires you to change it." |
|
210 | error_password_expired: "Your password has expired or the administrator requires you to change it." | |
211 | error_invalid_file_encoding: "The file is not a valid %{encoding} encoded file" |
|
211 | error_invalid_file_encoding: "The file is not a valid %{encoding} encoded file" | |
212 | error_invalid_csv_file_or_settings: "The file is not a CSV file or does not match the settings below" |
|
212 | error_invalid_csv_file_or_settings: "The file is not a CSV file or does not match the settings below" | |
213 | error_can_not_read_import_file: "An error occurred while reading the file to import" |
|
213 | error_can_not_read_import_file: "An error occurred while reading the file to import" | |
214 | error_attachment_extension_not_allowed: "Attachment extension %{extension} is not allowed" |
|
214 | error_attachment_extension_not_allowed: "Attachment extension %{extension} is not allowed" | |
215 | error_ldap_bind_credentials: "Invalid LDAP Account/Password" |
|
215 | error_ldap_bind_credentials: "Invalid LDAP Account/Password" | |
216 |
|
216 | |||
217 | mail_subject_lost_password: "Your %{value} password" |
|
217 | mail_subject_lost_password: "Your %{value} password" | |
218 | mail_body_lost_password: 'To change your password, click on the following link:' |
|
218 | mail_body_lost_password: 'To change your password, click on the following link:' | |
219 | mail_subject_register: "Your %{value} account activation" |
|
219 | mail_subject_register: "Your %{value} account activation" | |
220 | mail_body_register: 'To activate your account, click on the following link:' |
|
220 | mail_body_register: 'To activate your account, click on the following link:' | |
221 | mail_body_account_information_external: "You can use your %{value} account to log in." |
|
221 | mail_body_account_information_external: "You can use your %{value} account to log in." | |
222 | mail_body_account_information: Your account information |
|
222 | mail_body_account_information: Your account information | |
223 | mail_subject_account_activation_request: "%{value} account activation request" |
|
223 | mail_subject_account_activation_request: "%{value} account activation request" | |
224 | mail_body_account_activation_request: "A new user (%{value}) has registered. The account is pending your approval:" |
|
224 | mail_body_account_activation_request: "A new user (%{value}) has registered. The account is pending your approval:" | |
225 | mail_subject_reminder: "%{count} issue(s) due in the next %{days} days" |
|
225 | mail_subject_reminder: "%{count} issue(s) due in the next %{days} days" | |
226 | mail_body_reminder: "%{count} issue(s) that are assigned to you are due in the next %{days} days:" |
|
226 | mail_body_reminder: "%{count} issue(s) that are assigned to you are due in the next %{days} days:" | |
227 | mail_subject_wiki_content_added: "'%{id}' wiki page has been added" |
|
227 | mail_subject_wiki_content_added: "'%{id}' wiki page has been added" | |
228 | mail_body_wiki_content_added: "The '%{id}' wiki page has been added by %{author}." |
|
228 | mail_body_wiki_content_added: "The '%{id}' wiki page has been added by %{author}." | |
229 | mail_subject_wiki_content_updated: "'%{id}' wiki page has been updated" |
|
229 | mail_subject_wiki_content_updated: "'%{id}' wiki page has been updated" | |
230 | mail_body_wiki_content_updated: "The '%{id}' wiki page has been updated by %{author}." |
|
230 | mail_body_wiki_content_updated: "The '%{id}' wiki page has been updated by %{author}." | |
231 | mail_subject_security_notification: "Security notification" |
|
231 | mail_subject_security_notification: "Security notification" | |
232 | mail_body_security_notification_change: "%{field} was changed." |
|
232 | mail_body_security_notification_change: "%{field} was changed." | |
233 | mail_body_security_notification_change_to: "%{field} was changed to %{value}." |
|
233 | mail_body_security_notification_change_to: "%{field} was changed to %{value}." | |
234 | mail_body_security_notification_add: "%{field} %{value} was added." |
|
234 | mail_body_security_notification_add: "%{field} %{value} was added." | |
235 | mail_body_security_notification_remove: "%{field} %{value} was removed." |
|
235 | mail_body_security_notification_remove: "%{field} %{value} was removed." | |
236 | mail_body_security_notification_notify_enabled: "Email address %{value} now receives notifications." |
|
236 | mail_body_security_notification_notify_enabled: "Email address %{value} now receives notifications." | |
237 | mail_body_security_notification_notify_disabled: "Email address %{value} no longer receives notifications." |
|
237 | mail_body_security_notification_notify_disabled: "Email address %{value} no longer receives notifications." | |
238 | mail_body_settings_updated: "The following settings were changed:" |
|
238 | mail_body_settings_updated: "The following settings were changed:" | |
239 |
|
239 | |||
240 | field_name: Name |
|
240 | field_name: Name | |
241 | field_description: Description |
|
241 | field_description: Description | |
242 | field_summary: Summary |
|
242 | field_summary: Summary | |
243 | field_is_required: Required |
|
243 | field_is_required: Required | |
244 | field_firstname: First name |
|
244 | field_firstname: First name | |
245 | field_lastname: Last name |
|
245 | field_lastname: Last name | |
246 | field_mail: Email |
|
246 | field_mail: Email | |
247 | field_address: Email |
|
247 | field_address: Email | |
248 | field_filename: File |
|
248 | field_filename: File | |
249 | field_filesize: Size |
|
249 | field_filesize: Size | |
250 | field_downloads: Downloads |
|
250 | field_downloads: Downloads | |
251 | field_author: Author |
|
251 | field_author: Author | |
252 | field_created_on: Created |
|
252 | field_created_on: Created | |
253 | field_updated_on: Updated |
|
253 | field_updated_on: Updated | |
254 | field_closed_on: Closed |
|
254 | field_closed_on: Closed | |
255 | field_field_format: Format |
|
255 | field_field_format: Format | |
256 | field_is_for_all: For all projects |
|
256 | field_is_for_all: For all projects | |
257 | field_possible_values: Possible values |
|
257 | field_possible_values: Possible values | |
258 | field_regexp: Regular expression |
|
258 | field_regexp: Regular expression | |
259 | field_min_length: Minimum length |
|
259 | field_min_length: Minimum length | |
260 | field_max_length: Maximum length |
|
260 | field_max_length: Maximum length | |
261 | field_value: Value |
|
261 | field_value: Value | |
262 | field_category: Category |
|
262 | field_category: Category | |
263 | field_title: Title |
|
263 | field_title: Title | |
264 | field_project: Project |
|
264 | field_project: Project | |
265 | field_issue: Issue |
|
265 | field_issue: Issue | |
266 | field_status: Status |
|
266 | field_status: Status | |
267 | field_notes: Notes |
|
267 | field_notes: Notes | |
268 | field_is_closed: Issue closed |
|
268 | field_is_closed: Issue closed | |
269 | field_is_default: Default value |
|
269 | field_is_default: Default value | |
270 | field_tracker: Tracker |
|
270 | field_tracker: Tracker | |
271 | field_subject: Subject |
|
271 | field_subject: Subject | |
272 | field_due_date: Due date |
|
272 | field_due_date: Due date | |
273 | field_assigned_to: Assignee |
|
273 | field_assigned_to: Assignee | |
274 | field_priority: Priority |
|
274 | field_priority: Priority | |
275 | field_fixed_version: Target version |
|
275 | field_fixed_version: Target version | |
276 | field_user: User |
|
276 | field_user: User | |
277 | field_principal: Principal |
|
277 | field_principal: Principal | |
278 | field_role: Role |
|
278 | field_role: Role | |
279 | field_homepage: Homepage |
|
279 | field_homepage: Homepage | |
280 | field_is_public: Public |
|
280 | field_is_public: Public | |
281 | field_parent: Subproject of |
|
281 | field_parent: Subproject of | |
282 | field_is_in_roadmap: Issues displayed in roadmap |
|
282 | field_is_in_roadmap: Issues displayed in roadmap | |
283 | field_login: Login |
|
283 | field_login: Login | |
284 | field_mail_notification: Email notifications |
|
284 | field_mail_notification: Email notifications | |
285 | field_admin: Administrator |
|
285 | field_admin: Administrator | |
286 | field_last_login_on: Last connection |
|
286 | field_last_login_on: Last connection | |
287 | field_language: Language |
|
287 | field_language: Language | |
288 | field_effective_date: Due to |
|
288 | field_effective_date: Due to | |
289 | field_password: Password |
|
289 | field_password: Password | |
290 | field_new_password: New password |
|
290 | field_new_password: New password | |
291 | field_password_confirmation: Confirmation |
|
291 | field_password_confirmation: Confirmation | |
292 | field_version: Version |
|
292 | field_version: Version | |
293 | field_type: Type |
|
293 | field_type: Type | |
294 | field_host: Host |
|
294 | field_host: Host | |
295 | field_port: Port |
|
295 | field_port: Port | |
296 | field_account: Account |
|
296 | field_account: Account | |
297 | field_base_dn: Base DN |
|
297 | field_base_dn: Base DN | |
298 | field_attr_login: Login attribute |
|
298 | field_attr_login: Login attribute | |
299 | field_attr_firstname: Firstname attribute |
|
299 | field_attr_firstname: Firstname attribute | |
300 | field_attr_lastname: Lastname attribute |
|
300 | field_attr_lastname: Lastname attribute | |
301 | field_attr_mail: Email attribute |
|
301 | field_attr_mail: Email attribute | |
302 | field_onthefly: On-the-fly user creation |
|
302 | field_onthefly: On-the-fly user creation | |
303 | field_start_date: Start date |
|
303 | field_start_date: Start date | |
304 | field_done_ratio: "% Done" |
|
304 | field_done_ratio: "% Done" | |
305 | field_auth_source: Authentication mode |
|
305 | field_auth_source: Authentication mode | |
306 | field_hide_mail: Hide my email address |
|
306 | field_hide_mail: Hide my email address | |
307 | field_comments: Comment |
|
307 | field_comments: Comment | |
308 | field_url: URL |
|
308 | field_url: URL | |
309 | field_start_page: Start page |
|
309 | field_start_page: Start page | |
310 | field_subproject: Subproject |
|
310 | field_subproject: Subproject | |
311 | field_hours: Hours |
|
311 | field_hours: Hours | |
312 | field_activity: Activity |
|
312 | field_activity: Activity | |
313 | field_spent_on: Date |
|
313 | field_spent_on: Date | |
314 | field_identifier: Identifier |
|
314 | field_identifier: Identifier | |
315 | field_is_filter: Used as a filter |
|
315 | field_is_filter: Used as a filter | |
316 | field_issue_to: Related issue |
|
316 | field_issue_to: Related issue | |
317 | field_delay: Delay |
|
317 | field_delay: Delay | |
318 | field_assignable: Issues can be assigned to this role |
|
318 | field_assignable: Issues can be assigned to this role | |
319 | field_redirect_existing_links: Redirect existing links |
|
319 | field_redirect_existing_links: Redirect existing links | |
320 | field_estimated_hours: Estimated time |
|
320 | field_estimated_hours: Estimated time | |
321 | field_column_names: Columns |
|
321 | field_column_names: Columns | |
322 | field_time_entries: Log time |
|
322 | field_time_entries: Log time | |
323 | field_time_zone: Time zone |
|
323 | field_time_zone: Time zone | |
324 | field_searchable: Searchable |
|
324 | field_searchable: Searchable | |
325 | field_default_value: Default value |
|
325 | field_default_value: Default value | |
326 | field_comments_sorting: Display comments |
|
326 | field_comments_sorting: Display comments | |
327 | field_parent_title: Parent page |
|
327 | field_parent_title: Parent page | |
328 | field_editable: Editable |
|
328 | field_editable: Editable | |
329 | field_watcher: Watcher |
|
329 | field_watcher: Watcher | |
330 | field_identity_url: OpenID URL |
|
330 | field_identity_url: OpenID URL | |
331 | field_content: Content |
|
331 | field_content: Content | |
332 | field_group_by: Group results by |
|
332 | field_group_by: Group results by | |
333 | field_sharing: Sharing |
|
333 | field_sharing: Sharing | |
334 | field_parent_issue: Parent task |
|
334 | field_parent_issue: Parent task | |
335 | field_member_of_group: "Assignee's group" |
|
335 | field_member_of_group: "Assignee's group" | |
336 | field_assigned_to_role: "Assignee's role" |
|
336 | field_assigned_to_role: "Assignee's role" | |
337 | field_text: Text field |
|
337 | field_text: Text field | |
338 | field_visible: Visible |
|
338 | field_visible: Visible | |
339 | field_warn_on_leaving_unsaved: "Warn me when leaving a page with unsaved text" |
|
339 | field_warn_on_leaving_unsaved: "Warn me when leaving a page with unsaved text" | |
340 | field_issues_visibility: Issues visibility |
|
340 | field_issues_visibility: Issues visibility | |
341 | field_is_private: Private |
|
341 | field_is_private: Private | |
342 | field_commit_logs_encoding: Commit messages encoding |
|
342 | field_commit_logs_encoding: Commit messages encoding | |
343 | field_scm_path_encoding: Path encoding |
|
343 | field_scm_path_encoding: Path encoding | |
344 | field_path_to_repository: Path to repository |
|
344 | field_path_to_repository: Path to repository | |
345 | field_root_directory: Root directory |
|
345 | field_root_directory: Root directory | |
346 | field_cvsroot: CVSROOT |
|
346 | field_cvsroot: CVSROOT | |
347 | field_cvs_module: Module |
|
347 | field_cvs_module: Module | |
348 | field_repository_is_default: Main repository |
|
348 | field_repository_is_default: Main repository | |
349 | field_multiple: Multiple values |
|
349 | field_multiple: Multiple values | |
350 | field_auth_source_ldap_filter: LDAP filter |
|
350 | field_auth_source_ldap_filter: LDAP filter | |
351 | field_core_fields: Standard fields |
|
351 | field_core_fields: Standard fields | |
352 | field_timeout: "Timeout (in seconds)" |
|
352 | field_timeout: "Timeout (in seconds)" | |
353 | field_board_parent: Parent forum |
|
353 | field_board_parent: Parent forum | |
354 | field_private_notes: Private notes |
|
354 | field_private_notes: Private notes | |
355 | field_inherit_members: Inherit members |
|
355 | field_inherit_members: Inherit members | |
356 | field_generate_password: Generate password |
|
356 | field_generate_password: Generate password | |
357 | field_must_change_passwd: Must change password at next logon |
|
357 | field_must_change_passwd: Must change password at next logon | |
358 | field_default_status: Default status |
|
358 | field_default_status: Default status | |
359 | field_users_visibility: Users visibility |
|
359 | field_users_visibility: Users visibility | |
360 | field_time_entries_visibility: Time logs visibility |
|
360 | field_time_entries_visibility: Time logs visibility | |
361 | field_total_estimated_hours: Total estimated time |
|
361 | field_total_estimated_hours: Total estimated time | |
362 | field_default_version: Default version |
|
362 | field_default_version: Default version | |
363 | field_remote_ip: IP address |
|
363 | field_remote_ip: IP address | |
364 |
|
364 | |||
365 | setting_app_title: Application title |
|
365 | setting_app_title: Application title | |
366 | setting_app_subtitle: Application subtitle |
|
366 | setting_app_subtitle: Application subtitle | |
367 | setting_welcome_text: Welcome text |
|
367 | setting_welcome_text: Welcome text | |
368 | setting_default_language: Default language |
|
368 | setting_default_language: Default language | |
369 | setting_login_required: Authentication required |
|
369 | setting_login_required: Authentication required | |
370 | setting_self_registration: Self-registration |
|
370 | setting_self_registration: Self-registration | |
371 | setting_attachment_max_size: Maximum attachment size |
|
371 | setting_attachment_max_size: Maximum attachment size | |
372 | setting_issues_export_limit: Issues export limit |
|
372 | setting_issues_export_limit: Issues export limit | |
373 | setting_mail_from: Emission email address |
|
373 | setting_mail_from: Emission email address | |
374 | setting_bcc_recipients: Blind carbon copy recipients (bcc) |
|
374 | setting_bcc_recipients: Blind carbon copy recipients (bcc) | |
375 | setting_plain_text_mail: Plain text mail (no HTML) |
|
375 | setting_plain_text_mail: Plain text mail (no HTML) | |
376 | setting_host_name: Host name and path |
|
376 | setting_host_name: Host name and path | |
377 | setting_text_formatting: Text formatting |
|
377 | setting_text_formatting: Text formatting | |
378 | setting_wiki_compression: Wiki history compression |
|
378 | setting_wiki_compression: Wiki history compression | |
379 | setting_feeds_limit: Maximum number of items in Atom feeds |
|
379 | setting_feeds_limit: Maximum number of items in Atom feeds | |
380 | setting_default_projects_public: New projects are public by default |
|
380 | setting_default_projects_public: New projects are public by default | |
381 | setting_autofetch_changesets: Fetch commits automatically |
|
381 | setting_autofetch_changesets: Fetch commits automatically | |
382 | setting_sys_api_enabled: Enable WS for repository management |
|
382 | setting_sys_api_enabled: Enable WS for repository management | |
383 | setting_commit_ref_keywords: Referencing keywords |
|
383 | setting_commit_ref_keywords: Referencing keywords | |
384 | setting_commit_fix_keywords: Fixing keywords |
|
384 | setting_commit_fix_keywords: Fixing keywords | |
385 | setting_autologin: Autologin |
|
385 | setting_autologin: Autologin | |
386 | setting_date_format: Date format |
|
386 | setting_date_format: Date format | |
387 | setting_time_format: Time format |
|
387 | setting_time_format: Time format | |
388 | setting_cross_project_issue_relations: Allow cross-project issue relations |
|
388 | setting_cross_project_issue_relations: Allow cross-project issue relations | |
389 | setting_cross_project_subtasks: Allow cross-project subtasks |
|
389 | setting_cross_project_subtasks: Allow cross-project subtasks | |
390 | setting_issue_list_default_columns: Default columns displayed on the issue list |
|
390 | setting_issue_list_default_columns: Default columns displayed on the issue list | |
391 | setting_repositories_encodings: Attachments and repositories encodings |
|
391 | setting_repositories_encodings: Attachments and repositories encodings | |
392 | setting_emails_header: Email header |
|
392 | setting_emails_header: Email header | |
393 | setting_emails_footer: Email footer |
|
393 | setting_emails_footer: Email footer | |
394 | setting_protocol: Protocol |
|
394 | setting_protocol: Protocol | |
395 | setting_per_page_options: Objects per page options |
|
395 | setting_per_page_options: Objects per page options | |
396 | setting_user_format: Users display format |
|
396 | setting_user_format: Users display format | |
397 | setting_activity_days_default: Days displayed on project activity |
|
397 | setting_activity_days_default: Days displayed on project activity | |
398 | setting_display_subprojects_issues: Display subprojects issues on main projects by default |
|
398 | setting_display_subprojects_issues: Display subprojects issues on main projects by default | |
399 | setting_enabled_scm: Enabled SCM |
|
399 | setting_enabled_scm: Enabled SCM | |
400 | setting_mail_handler_body_delimiters: "Truncate emails after one of these lines" |
|
400 | setting_mail_handler_body_delimiters: "Truncate emails after one of these lines" | |
401 | setting_mail_handler_api_enabled: Enable WS for incoming emails |
|
401 | setting_mail_handler_api_enabled: Enable WS for incoming emails | |
402 | setting_mail_handler_api_key: Incoming email WS API key |
|
402 | setting_mail_handler_api_key: Incoming email WS API key | |
403 | setting_sys_api_key: Repository management WS API key |
|
403 | setting_sys_api_key: Repository management WS API key | |
404 | setting_sequential_project_identifiers: Generate sequential project identifiers |
|
404 | setting_sequential_project_identifiers: Generate sequential project identifiers | |
405 | setting_gravatar_enabled: Use Gravatar user icons |
|
405 | setting_gravatar_enabled: Use Gravatar user icons | |
406 | setting_gravatar_default: Default Gravatar image |
|
406 | setting_gravatar_default: Default Gravatar image | |
407 | setting_diff_max_lines_displayed: Maximum number of diff lines displayed |
|
407 | setting_diff_max_lines_displayed: Maximum number of diff lines displayed | |
408 | setting_file_max_size_displayed: Maximum size of text files displayed inline |
|
408 | setting_file_max_size_displayed: Maximum size of text files displayed inline | |
409 | setting_repository_log_display_limit: Maximum number of revisions displayed on file log |
|
409 | setting_repository_log_display_limit: Maximum number of revisions displayed on file log | |
410 | setting_openid: Allow OpenID login and registration |
|
410 | setting_openid: Allow OpenID login and registration | |
411 | setting_password_max_age: Require password change after |
|
411 | setting_password_max_age: Require password change after | |
412 | setting_password_min_length: Minimum password length |
|
412 | setting_password_min_length: Minimum password length | |
413 | setting_lost_password: Allow password reset via email |
|
413 | setting_lost_password: Allow password reset via email | |
414 | setting_new_project_user_role_id: Role given to a non-admin user who creates a project |
|
414 | setting_new_project_user_role_id: Role given to a non-admin user who creates a project | |
415 | setting_default_projects_modules: Default enabled modules for new projects |
|
415 | setting_default_projects_modules: Default enabled modules for new projects | |
416 | setting_issue_done_ratio: Calculate the issue done ratio with |
|
416 | setting_issue_done_ratio: Calculate the issue done ratio with | |
417 | setting_issue_done_ratio_issue_field: Use the issue field |
|
417 | setting_issue_done_ratio_issue_field: Use the issue field | |
418 | setting_issue_done_ratio_issue_status: Use the issue status |
|
418 | setting_issue_done_ratio_issue_status: Use the issue status | |
419 | setting_start_of_week: Start calendars on |
|
419 | setting_start_of_week: Start calendars on | |
420 | setting_rest_api_enabled: Enable REST web service |
|
420 | setting_rest_api_enabled: Enable REST web service | |
421 | setting_cache_formatted_text: Cache formatted text |
|
421 | setting_cache_formatted_text: Cache formatted text | |
422 | setting_default_notification_option: Default notification option |
|
422 | setting_default_notification_option: Default notification option | |
423 | setting_commit_logtime_enabled: Enable time logging |
|
423 | setting_commit_logtime_enabled: Enable time logging | |
424 | setting_commit_logtime_activity_id: Activity for logged time |
|
424 | setting_commit_logtime_activity_id: Activity for logged time | |
425 | setting_gantt_items_limit: Maximum number of items displayed on the gantt chart |
|
425 | setting_gantt_items_limit: Maximum number of items displayed on the gantt chart | |
426 | setting_issue_group_assignment: Allow issue assignment to groups |
|
426 | setting_issue_group_assignment: Allow issue assignment to groups | |
427 | setting_default_issue_start_date_to_creation_date: Use current date as start date for new issues |
|
427 | setting_default_issue_start_date_to_creation_date: Use current date as start date for new issues | |
428 | setting_commit_cross_project_ref: Allow issues of all the other projects to be referenced and fixed |
|
428 | setting_commit_cross_project_ref: Allow issues of all the other projects to be referenced and fixed | |
429 | setting_unsubscribe: Allow users to delete their own account |
|
429 | setting_unsubscribe: Allow users to delete their own account | |
430 | setting_session_lifetime: Session maximum lifetime |
|
430 | setting_session_lifetime: Session maximum lifetime | |
431 | setting_session_timeout: Session inactivity timeout |
|
431 | setting_session_timeout: Session inactivity timeout | |
432 | setting_thumbnails_enabled: Display attachment thumbnails |
|
432 | setting_thumbnails_enabled: Display attachment thumbnails | |
433 | setting_thumbnails_size: Thumbnails size (in pixels) |
|
433 | setting_thumbnails_size: Thumbnails size (in pixels) | |
434 | setting_non_working_week_days: Non-working days |
|
434 | setting_non_working_week_days: Non-working days | |
435 | setting_jsonp_enabled: Enable JSONP support |
|
435 | setting_jsonp_enabled: Enable JSONP support | |
436 | setting_default_projects_tracker_ids: Default trackers for new projects |
|
436 | setting_default_projects_tracker_ids: Default trackers for new projects | |
437 | setting_mail_handler_excluded_filenames: Exclude attachments by name |
|
437 | setting_mail_handler_excluded_filenames: Exclude attachments by name | |
438 | setting_force_default_language_for_anonymous: Force default language for anonymous users |
|
438 | setting_force_default_language_for_anonymous: Force default language for anonymous users | |
439 | setting_force_default_language_for_loggedin: Force default language for logged-in users |
|
439 | setting_force_default_language_for_loggedin: Force default language for logged-in users | |
440 | setting_link_copied_issue: Link issues on copy |
|
440 | setting_link_copied_issue: Link issues on copy | |
441 | setting_max_additional_emails: Maximum number of additional email addresses |
|
441 | setting_max_additional_emails: Maximum number of additional email addresses | |
442 | setting_search_results_per_page: Search results per page |
|
442 | setting_search_results_per_page: Search results per page | |
443 | setting_attachment_extensions_allowed: Allowed extensions |
|
443 | setting_attachment_extensions_allowed: Allowed extensions | |
444 | setting_attachment_extensions_denied: Disallowed extensions |
|
444 | setting_attachment_extensions_denied: Disallowed extensions | |
445 |
|
445 | |||
446 | permission_add_project: Create project |
|
446 | permission_add_project: Create project | |
447 | permission_add_subprojects: Create subprojects |
|
447 | permission_add_subprojects: Create subprojects | |
448 | permission_edit_project: Edit project |
|
448 | permission_edit_project: Edit project | |
449 | permission_close_project: Close / reopen the project |
|
449 | permission_close_project: Close / reopen the project | |
450 | permission_select_project_modules: Select project modules |
|
450 | permission_select_project_modules: Select project modules | |
451 | permission_manage_members: Manage members |
|
451 | permission_manage_members: Manage members | |
452 | permission_manage_project_activities: Manage project activities |
|
452 | permission_manage_project_activities: Manage project activities | |
453 | permission_manage_versions: Manage versions |
|
453 | permission_manage_versions: Manage versions | |
454 | permission_manage_categories: Manage issue categories |
|
454 | permission_manage_categories: Manage issue categories | |
455 | permission_view_issues: View Issues |
|
455 | permission_view_issues: View Issues | |
456 | permission_add_issues: Add issues |
|
456 | permission_add_issues: Add issues | |
457 | permission_edit_issues: Edit issues |
|
457 | permission_edit_issues: Edit issues | |
458 | permission_copy_issues: Copy issues |
|
458 | permission_copy_issues: Copy issues | |
459 | permission_manage_issue_relations: Manage issue relations |
|
459 | permission_manage_issue_relations: Manage issue relations | |
460 | permission_set_issues_private: Set issues public or private |
|
460 | permission_set_issues_private: Set issues public or private | |
461 | permission_set_own_issues_private: Set own issues public or private |
|
461 | permission_set_own_issues_private: Set own issues public or private | |
462 | permission_add_issue_notes: Add notes |
|
462 | permission_add_issue_notes: Add notes | |
463 | permission_edit_issue_notes: Edit notes |
|
463 | permission_edit_issue_notes: Edit notes | |
464 | permission_edit_own_issue_notes: Edit own notes |
|
464 | permission_edit_own_issue_notes: Edit own notes | |
465 | permission_view_private_notes: View private notes |
|
465 | permission_view_private_notes: View private notes | |
466 | permission_set_notes_private: Set notes as private |
|
466 | permission_set_notes_private: Set notes as private | |
467 | permission_move_issues: Move issues |
|
467 | permission_move_issues: Move issues | |
468 | permission_delete_issues: Delete issues |
|
468 | permission_delete_issues: Delete issues | |
469 | permission_manage_public_queries: Manage public queries |
|
469 | permission_manage_public_queries: Manage public queries | |
470 | permission_save_queries: Save queries |
|
470 | permission_save_queries: Save queries | |
471 | permission_view_gantt: View gantt chart |
|
471 | permission_view_gantt: View gantt chart | |
472 | permission_view_calendar: View calendar |
|
472 | permission_view_calendar: View calendar | |
473 | permission_view_issue_watchers: View watchers list |
|
473 | permission_view_issue_watchers: View watchers list | |
474 | permission_add_issue_watchers: Add watchers |
|
474 | permission_add_issue_watchers: Add watchers | |
475 | permission_delete_issue_watchers: Delete watchers |
|
475 | permission_delete_issue_watchers: Delete watchers | |
476 | permission_log_time: Log spent time |
|
476 | permission_log_time: Log spent time | |
477 | permission_view_time_entries: View spent time |
|
477 | permission_view_time_entries: View spent time | |
478 | permission_edit_time_entries: Edit time logs |
|
478 | permission_edit_time_entries: Edit time logs | |
479 | permission_edit_own_time_entries: Edit own time logs |
|
479 | permission_edit_own_time_entries: Edit own time logs | |
480 | permission_manage_news: Manage news |
|
480 | permission_manage_news: Manage news | |
481 | permission_comment_news: Comment news |
|
481 | permission_comment_news: Comment news | |
482 | permission_view_documents: View documents |
|
482 | permission_view_documents: View documents | |
483 | permission_add_documents: Add documents |
|
483 | permission_add_documents: Add documents | |
484 | permission_edit_documents: Edit documents |
|
484 | permission_edit_documents: Edit documents | |
485 | permission_delete_documents: Delete documents |
|
485 | permission_delete_documents: Delete documents | |
486 | permission_manage_files: Manage files |
|
486 | permission_manage_files: Manage files | |
487 | permission_view_files: View files |
|
487 | permission_view_files: View files | |
488 | permission_manage_wiki: Manage wiki |
|
488 | permission_manage_wiki: Manage wiki | |
489 | permission_rename_wiki_pages: Rename wiki pages |
|
489 | permission_rename_wiki_pages: Rename wiki pages | |
490 | permission_delete_wiki_pages: Delete wiki pages |
|
490 | permission_delete_wiki_pages: Delete wiki pages | |
491 | permission_view_wiki_pages: View wiki |
|
491 | permission_view_wiki_pages: View wiki | |
492 | permission_view_wiki_edits: View wiki history |
|
492 | permission_view_wiki_edits: View wiki history | |
493 | permission_edit_wiki_pages: Edit wiki pages |
|
493 | permission_edit_wiki_pages: Edit wiki pages | |
494 | permission_delete_wiki_pages_attachments: Delete attachments |
|
494 | permission_delete_wiki_pages_attachments: Delete attachments | |
495 | permission_protect_wiki_pages: Protect wiki pages |
|
495 | permission_protect_wiki_pages: Protect wiki pages | |
496 | permission_manage_repository: Manage repository |
|
496 | permission_manage_repository: Manage repository | |
497 | permission_browse_repository: Browse repository |
|
497 | permission_browse_repository: Browse repository | |
498 | permission_view_changesets: View changesets |
|
498 | permission_view_changesets: View changesets | |
499 | permission_commit_access: Commit access |
|
499 | permission_commit_access: Commit access | |
500 | permission_manage_boards: Manage forums |
|
500 | permission_manage_boards: Manage forums | |
501 | permission_view_messages: View messages |
|
501 | permission_view_messages: View messages | |
502 | permission_add_messages: Post messages |
|
502 | permission_add_messages: Post messages | |
503 | permission_edit_messages: Edit messages |
|
503 | permission_edit_messages: Edit messages | |
504 | permission_edit_own_messages: Edit own messages |
|
504 | permission_edit_own_messages: Edit own messages | |
505 | permission_delete_messages: Delete messages |
|
505 | permission_delete_messages: Delete messages | |
506 | permission_delete_own_messages: Delete own messages |
|
506 | permission_delete_own_messages: Delete own messages | |
507 | permission_export_wiki_pages: Export wiki pages |
|
507 | permission_export_wiki_pages: Export wiki pages | |
508 | permission_manage_subtasks: Manage subtasks |
|
508 | permission_manage_subtasks: Manage subtasks | |
509 | permission_manage_related_issues: Manage related issues |
|
509 | permission_manage_related_issues: Manage related issues | |
510 | permission_import_issues: Import issues |
|
510 | permission_import_issues: Import issues | |
511 |
|
511 | |||
512 | project_module_issue_tracking: Issue tracking |
|
512 | project_module_issue_tracking: Issue tracking | |
513 | project_module_time_tracking: Time tracking |
|
513 | project_module_time_tracking: Time tracking | |
514 | project_module_news: News |
|
514 | project_module_news: News | |
515 | project_module_documents: Documents |
|
515 | project_module_documents: Documents | |
516 | project_module_files: Files |
|
516 | project_module_files: Files | |
517 | project_module_wiki: Wiki |
|
517 | project_module_wiki: Wiki | |
518 | project_module_repository: Repository |
|
518 | project_module_repository: Repository | |
519 | project_module_boards: Forums |
|
519 | project_module_boards: Forums | |
520 | project_module_calendar: Calendar |
|
520 | project_module_calendar: Calendar | |
521 | project_module_gantt: Gantt |
|
521 | project_module_gantt: Gantt | |
522 |
|
522 | |||
523 | label_user: User |
|
523 | label_user: User | |
524 | label_user_plural: Users |
|
524 | label_user_plural: Users | |
525 | label_user_new: New user |
|
525 | label_user_new: New user | |
526 | label_user_anonymous: Anonymous |
|
526 | label_user_anonymous: Anonymous | |
527 | label_project: Project |
|
527 | label_project: Project | |
528 | label_project_new: New project |
|
528 | label_project_new: New project | |
529 | label_project_plural: Projects |
|
529 | label_project_plural: Projects | |
530 | label_x_projects: |
|
530 | label_x_projects: | |
531 | zero: no projects |
|
531 | zero: no projects | |
532 | one: 1 project |
|
532 | one: 1 project | |
533 | other: "%{count} projects" |
|
533 | other: "%{count} projects" | |
534 | label_project_all: All Projects |
|
534 | label_project_all: All Projects | |
535 | label_project_latest: Latest projects |
|
535 | label_project_latest: Latest projects | |
536 | label_issue: Issue |
|
536 | label_issue: Issue | |
537 | label_issue_new: New issue |
|
537 | label_issue_new: New issue | |
538 | label_issue_plural: Issues |
|
538 | label_issue_plural: Issues | |
539 | label_issue_view_all: View all issues |
|
539 | label_issue_view_all: View all issues | |
540 | label_issues_by: "Issues by %{value}" |
|
540 | label_issues_by: "Issues by %{value}" | |
541 | label_issue_added: Issue added |
|
541 | label_issue_added: Issue added | |
542 | label_issue_updated: Issue updated |
|
542 | label_issue_updated: Issue updated | |
543 | label_issue_note_added: Note added |
|
543 | label_issue_note_added: Note added | |
544 | label_issue_status_updated: Status updated |
|
544 | label_issue_status_updated: Status updated | |
545 | label_issue_assigned_to_updated: Assignee updated |
|
545 | label_issue_assigned_to_updated: Assignee updated | |
546 | label_issue_priority_updated: Priority updated |
|
546 | label_issue_priority_updated: Priority updated | |
547 | label_document: Document |
|
547 | label_document: Document | |
548 | label_document_new: New document |
|
548 | label_document_new: New document | |
549 | label_document_plural: Documents |
|
549 | label_document_plural: Documents | |
550 | label_document_added: Document added |
|
550 | label_document_added: Document added | |
551 | label_role: Role |
|
551 | label_role: Role | |
552 | label_role_plural: Roles |
|
552 | label_role_plural: Roles | |
553 | label_role_new: New role |
|
553 | label_role_new: New role | |
554 | label_role_and_permissions: Roles and permissions |
|
554 | label_role_and_permissions: Roles and permissions | |
555 | label_role_anonymous: Anonymous |
|
555 | label_role_anonymous: Anonymous | |
556 | label_role_non_member: Non member |
|
556 | label_role_non_member: Non member | |
557 | label_member: Member |
|
557 | label_member: Member | |
558 | label_member_new: New member |
|
558 | label_member_new: New member | |
559 | label_member_plural: Members |
|
559 | label_member_plural: Members | |
560 | label_tracker: Tracker |
|
560 | label_tracker: Tracker | |
561 | label_tracker_plural: Trackers |
|
561 | label_tracker_plural: Trackers | |
562 | label_tracker_new: New tracker |
|
562 | label_tracker_new: New tracker | |
563 | label_workflow: Workflow |
|
563 | label_workflow: Workflow | |
564 | label_issue_status: Issue status |
|
564 | label_issue_status: Issue status | |
565 | label_issue_status_plural: Issue statuses |
|
565 | label_issue_status_plural: Issue statuses | |
566 | label_issue_status_new: New status |
|
566 | label_issue_status_new: New status | |
567 | label_issue_category: Issue category |
|
567 | label_issue_category: Issue category | |
568 | label_issue_category_plural: Issue categories |
|
568 | label_issue_category_plural: Issue categories | |
569 | label_issue_category_new: New category |
|
569 | label_issue_category_new: New category | |
570 | label_custom_field: Custom field |
|
570 | label_custom_field: Custom field | |
571 | label_custom_field_plural: Custom fields |
|
571 | label_custom_field_plural: Custom fields | |
572 | label_custom_field_new: New custom field |
|
572 | label_custom_field_new: New custom field | |
573 | label_enumerations: Enumerations |
|
573 | label_enumerations: Enumerations | |
574 | label_enumeration_new: New value |
|
574 | label_enumeration_new: New value | |
575 | label_information: Information |
|
575 | label_information: Information | |
576 | label_information_plural: Information |
|
576 | label_information_plural: Information | |
577 | label_please_login: Please log in |
|
577 | label_please_login: Please log in | |
578 | label_register: Register |
|
578 | label_register: Register | |
579 | label_login_with_open_id_option: or login with OpenID |
|
579 | label_login_with_open_id_option: or login with OpenID | |
580 | label_password_lost: Lost password |
|
580 | label_password_lost: Lost password | |
581 | label_password_required: Confirm your password to continue |
|
581 | label_password_required: Confirm your password to continue | |
582 | label_home: Home |
|
582 | label_home: Home | |
583 | label_my_page: My page |
|
583 | label_my_page: My page | |
584 | label_my_account: My account |
|
584 | label_my_account: My account | |
585 | label_my_projects: My projects |
|
585 | label_my_projects: My projects | |
586 | label_my_page_block: My page block |
|
586 | label_my_page_block: My page block | |
587 | label_administration: Administration |
|
587 | label_administration: Administration | |
588 | label_login: Sign in |
|
588 | label_login: Sign in | |
589 | label_logout: Sign out |
|
589 | label_logout: Sign out | |
590 | label_help: Help |
|
590 | label_help: Help | |
591 | label_reported_issues: Reported issues |
|
591 | label_reported_issues: Reported issues | |
592 | label_assigned_issues: Assigned issues |
|
592 | label_assigned_issues: Assigned issues | |
593 | label_assigned_to_me_issues: Issues assigned to me |
|
593 | label_assigned_to_me_issues: Issues assigned to me | |
594 | label_last_login: Last connection |
|
594 | label_last_login: Last connection | |
595 | label_registered_on: Registered on |
|
595 | label_registered_on: Registered on | |
596 | label_activity: Activity |
|
596 | label_activity: Activity | |
597 | label_overall_activity: Overall activity |
|
597 | label_overall_activity: Overall activity | |
598 | label_user_activity: "%{value}'s activity" |
|
598 | label_user_activity: "%{value}'s activity" | |
599 | label_new: New |
|
599 | label_new: New | |
600 | label_logged_as: Logged in as |
|
600 | label_logged_as: Logged in as | |
601 | label_environment: Environment |
|
601 | label_environment: Environment | |
602 | label_authentication: Authentication |
|
602 | label_authentication: Authentication | |
603 | label_auth_source: Authentication mode |
|
603 | label_auth_source: Authentication mode | |
604 | label_auth_source_new: New authentication mode |
|
604 | label_auth_source_new: New authentication mode | |
605 | label_auth_source_plural: Authentication modes |
|
605 | label_auth_source_plural: Authentication modes | |
606 | label_subproject_plural: Subprojects |
|
606 | label_subproject_plural: Subprojects | |
607 | label_subproject_new: New subproject |
|
607 | label_subproject_new: New subproject | |
608 | label_and_its_subprojects: "%{value} and its subprojects" |
|
608 | label_and_its_subprojects: "%{value} and its subprojects" | |
609 | label_min_max_length: Min - Max length |
|
609 | label_min_max_length: Min - Max length | |
610 | label_list: List |
|
610 | label_list: List | |
611 | label_date: Date |
|
611 | label_date: Date | |
612 | label_integer: Integer |
|
612 | label_integer: Integer | |
613 | label_float: Float |
|
613 | label_float: Float | |
614 | label_boolean: Boolean |
|
614 | label_boolean: Boolean | |
615 | label_string: Text |
|
615 | label_string: Text | |
616 | label_text: Long text |
|
616 | label_text: Long text | |
617 | label_attribute: Attribute |
|
617 | label_attribute: Attribute | |
618 | label_attribute_plural: Attributes |
|
618 | label_attribute_plural: Attributes | |
619 | label_no_data: No data to display |
|
619 | label_no_data: No data to display | |
|
620 | label_no_preview: No preview available | |||
620 | label_change_status: Change status |
|
621 | label_change_status: Change status | |
621 | label_history: History |
|
622 | label_history: History | |
622 | label_attachment: File |
|
623 | label_attachment: File | |
623 | label_attachment_new: New file |
|
624 | label_attachment_new: New file | |
624 | label_attachment_delete: Delete file |
|
625 | label_attachment_delete: Delete file | |
625 | label_attachment_plural: Files |
|
626 | label_attachment_plural: Files | |
626 | label_file_added: File added |
|
627 | label_file_added: File added | |
627 | label_report: Report |
|
628 | label_report: Report | |
628 | label_report_plural: Reports |
|
629 | label_report_plural: Reports | |
629 | label_news: News |
|
630 | label_news: News | |
630 | label_news_new: Add news |
|
631 | label_news_new: Add news | |
631 | label_news_plural: News |
|
632 | label_news_plural: News | |
632 | label_news_latest: Latest news |
|
633 | label_news_latest: Latest news | |
633 | label_news_view_all: View all news |
|
634 | label_news_view_all: View all news | |
634 | label_news_added: News added |
|
635 | label_news_added: News added | |
635 | label_news_comment_added: Comment added to a news |
|
636 | label_news_comment_added: Comment added to a news | |
636 | label_settings: Settings |
|
637 | label_settings: Settings | |
637 | label_overview: Overview |
|
638 | label_overview: Overview | |
638 | label_version: Version |
|
639 | label_version: Version | |
639 | label_version_new: New version |
|
640 | label_version_new: New version | |
640 | label_version_plural: Versions |
|
641 | label_version_plural: Versions | |
641 | label_close_versions: Close completed versions |
|
642 | label_close_versions: Close completed versions | |
642 | label_confirmation: Confirmation |
|
643 | label_confirmation: Confirmation | |
643 | label_export_to: 'Also available in:' |
|
644 | label_export_to: 'Also available in:' | |
644 | label_read: Read... |
|
645 | label_read: Read... | |
645 | label_public_projects: Public projects |
|
646 | label_public_projects: Public projects | |
646 | label_open_issues: open |
|
647 | label_open_issues: open | |
647 | label_open_issues_plural: open |
|
648 | label_open_issues_plural: open | |
648 | label_closed_issues: closed |
|
649 | label_closed_issues: closed | |
649 | label_closed_issues_plural: closed |
|
650 | label_closed_issues_plural: closed | |
650 | label_x_open_issues_abbr: |
|
651 | label_x_open_issues_abbr: | |
651 | zero: 0 open |
|
652 | zero: 0 open | |
652 | one: 1 open |
|
653 | one: 1 open | |
653 | other: "%{count} open" |
|
654 | other: "%{count} open" | |
654 | label_x_closed_issues_abbr: |
|
655 | label_x_closed_issues_abbr: | |
655 | zero: 0 closed |
|
656 | zero: 0 closed | |
656 | one: 1 closed |
|
657 | one: 1 closed | |
657 | other: "%{count} closed" |
|
658 | other: "%{count} closed" | |
658 | label_x_issues: |
|
659 | label_x_issues: | |
659 | zero: 0 issues |
|
660 | zero: 0 issues | |
660 | one: 1 issue |
|
661 | one: 1 issue | |
661 | other: "%{count} issues" |
|
662 | other: "%{count} issues" | |
662 | label_total: Total |
|
663 | label_total: Total | |
663 | label_total_plural: Totals |
|
664 | label_total_plural: Totals | |
664 | label_total_time: Total time |
|
665 | label_total_time: Total time | |
665 | label_permissions: Permissions |
|
666 | label_permissions: Permissions | |
666 | label_current_status: Current status |
|
667 | label_current_status: Current status | |
667 | label_new_statuses_allowed: New statuses allowed |
|
668 | label_new_statuses_allowed: New statuses allowed | |
668 | label_all: all |
|
669 | label_all: all | |
669 | label_any: any |
|
670 | label_any: any | |
670 | label_none: none |
|
671 | label_none: none | |
671 | label_nobody: nobody |
|
672 | label_nobody: nobody | |
672 | label_next: Next |
|
673 | label_next: Next | |
673 | label_previous: Previous |
|
674 | label_previous: Previous | |
674 | label_used_by: Used by |
|
675 | label_used_by: Used by | |
675 | label_details: Details |
|
676 | label_details: Details | |
676 | label_add_note: Add a note |
|
677 | label_add_note: Add a note | |
677 | label_calendar: Calendar |
|
678 | label_calendar: Calendar | |
678 | label_months_from: months from |
|
679 | label_months_from: months from | |
679 | label_gantt: Gantt |
|
680 | label_gantt: Gantt | |
680 | label_internal: Internal |
|
681 | label_internal: Internal | |
681 | label_last_changes: "last %{count} changes" |
|
682 | label_last_changes: "last %{count} changes" | |
682 | label_change_view_all: View all changes |
|
683 | label_change_view_all: View all changes | |
683 | label_personalize_page: Personalize this page |
|
684 | label_personalize_page: Personalize this page | |
684 | label_comment: Comment |
|
685 | label_comment: Comment | |
685 | label_comment_plural: Comments |
|
686 | label_comment_plural: Comments | |
686 | label_x_comments: |
|
687 | label_x_comments: | |
687 | zero: no comments |
|
688 | zero: no comments | |
688 | one: 1 comment |
|
689 | one: 1 comment | |
689 | other: "%{count} comments" |
|
690 | other: "%{count} comments" | |
690 | label_comment_add: Add a comment |
|
691 | label_comment_add: Add a comment | |
691 | label_comment_added: Comment added |
|
692 | label_comment_added: Comment added | |
692 | label_comment_delete: Delete comments |
|
693 | label_comment_delete: Delete comments | |
693 | label_query: Custom query |
|
694 | label_query: Custom query | |
694 | label_query_plural: Custom queries |
|
695 | label_query_plural: Custom queries | |
695 | label_query_new: New query |
|
696 | label_query_new: New query | |
696 | label_my_queries: My custom queries |
|
697 | label_my_queries: My custom queries | |
697 | label_filter_add: Add filter |
|
698 | label_filter_add: Add filter | |
698 | label_filter_plural: Filters |
|
699 | label_filter_plural: Filters | |
699 | label_equals: is |
|
700 | label_equals: is | |
700 | label_not_equals: is not |
|
701 | label_not_equals: is not | |
701 | label_in_less_than: in less than |
|
702 | label_in_less_than: in less than | |
702 | label_in_more_than: in more than |
|
703 | label_in_more_than: in more than | |
703 | label_in_the_next_days: in the next |
|
704 | label_in_the_next_days: in the next | |
704 | label_in_the_past_days: in the past |
|
705 | label_in_the_past_days: in the past | |
705 | label_greater_or_equal: '>=' |
|
706 | label_greater_or_equal: '>=' | |
706 | label_less_or_equal: '<=' |
|
707 | label_less_or_equal: '<=' | |
707 | label_between: between |
|
708 | label_between: between | |
708 | label_in: in |
|
709 | label_in: in | |
709 | label_today: today |
|
710 | label_today: today | |
710 | label_all_time: all time |
|
711 | label_all_time: all time | |
711 | label_yesterday: yesterday |
|
712 | label_yesterday: yesterday | |
712 | label_this_week: this week |
|
713 | label_this_week: this week | |
713 | label_last_week: last week |
|
714 | label_last_week: last week | |
714 | label_last_n_weeks: "last %{count} weeks" |
|
715 | label_last_n_weeks: "last %{count} weeks" | |
715 | label_last_n_days: "last %{count} days" |
|
716 | label_last_n_days: "last %{count} days" | |
716 | label_this_month: this month |
|
717 | label_this_month: this month | |
717 | label_last_month: last month |
|
718 | label_last_month: last month | |
718 | label_this_year: this year |
|
719 | label_this_year: this year | |
719 | label_date_range: Date range |
|
720 | label_date_range: Date range | |
720 | label_less_than_ago: less than days ago |
|
721 | label_less_than_ago: less than days ago | |
721 | label_more_than_ago: more than days ago |
|
722 | label_more_than_ago: more than days ago | |
722 | label_ago: days ago |
|
723 | label_ago: days ago | |
723 | label_contains: contains |
|
724 | label_contains: contains | |
724 | label_not_contains: doesn't contain |
|
725 | label_not_contains: doesn't contain | |
725 | label_any_issues_in_project: any issues in project |
|
726 | label_any_issues_in_project: any issues in project | |
726 | label_any_issues_not_in_project: any issues not in project |
|
727 | label_any_issues_not_in_project: any issues not in project | |
727 | label_no_issues_in_project: no issues in project |
|
728 | label_no_issues_in_project: no issues in project | |
728 | label_any_open_issues: any open issues |
|
729 | label_any_open_issues: any open issues | |
729 | label_no_open_issues: no open issues |
|
730 | label_no_open_issues: no open issues | |
730 | label_day_plural: days |
|
731 | label_day_plural: days | |
731 | label_repository: Repository |
|
732 | label_repository: Repository | |
732 | label_repository_new: New repository |
|
733 | label_repository_new: New repository | |
733 | label_repository_plural: Repositories |
|
734 | label_repository_plural: Repositories | |
734 | label_browse: Browse |
|
735 | label_browse: Browse | |
735 | label_branch: Branch |
|
736 | label_branch: Branch | |
736 | label_tag: Tag |
|
737 | label_tag: Tag | |
737 | label_revision: Revision |
|
738 | label_revision: Revision | |
738 | label_revision_plural: Revisions |
|
739 | label_revision_plural: Revisions | |
739 | label_revision_id: "Revision %{value}" |
|
740 | label_revision_id: "Revision %{value}" | |
740 | label_associated_revisions: Associated revisions |
|
741 | label_associated_revisions: Associated revisions | |
741 | label_added: added |
|
742 | label_added: added | |
742 | label_modified: modified |
|
743 | label_modified: modified | |
743 | label_copied: copied |
|
744 | label_copied: copied | |
744 | label_renamed: renamed |
|
745 | label_renamed: renamed | |
745 | label_deleted: deleted |
|
746 | label_deleted: deleted | |
746 | label_latest_revision: Latest revision |
|
747 | label_latest_revision: Latest revision | |
747 | label_latest_revision_plural: Latest revisions |
|
748 | label_latest_revision_plural: Latest revisions | |
748 | label_view_revisions: View revisions |
|
749 | label_view_revisions: View revisions | |
749 | label_view_all_revisions: View all revisions |
|
750 | label_view_all_revisions: View all revisions | |
750 | label_max_size: Maximum size |
|
751 | label_max_size: Maximum size | |
751 | label_sort_highest: Move to top |
|
752 | label_sort_highest: Move to top | |
752 | label_sort_higher: Move up |
|
753 | label_sort_higher: Move up | |
753 | label_sort_lower: Move down |
|
754 | label_sort_lower: Move down | |
754 | label_sort_lowest: Move to bottom |
|
755 | label_sort_lowest: Move to bottom | |
755 | label_roadmap: Roadmap |
|
756 | label_roadmap: Roadmap | |
756 | label_roadmap_due_in: "Due in %{value}" |
|
757 | label_roadmap_due_in: "Due in %{value}" | |
757 | label_roadmap_overdue: "%{value} late" |
|
758 | label_roadmap_overdue: "%{value} late" | |
758 | label_roadmap_no_issues: No issues for this version |
|
759 | label_roadmap_no_issues: No issues for this version | |
759 | label_search: Search |
|
760 | label_search: Search | |
760 | label_result_plural: Results |
|
761 | label_result_plural: Results | |
761 | label_all_words: All words |
|
762 | label_all_words: All words | |
762 | label_wiki: Wiki |
|
763 | label_wiki: Wiki | |
763 | label_wiki_edit: Wiki edit |
|
764 | label_wiki_edit: Wiki edit | |
764 | label_wiki_edit_plural: Wiki edits |
|
765 | label_wiki_edit_plural: Wiki edits | |
765 | label_wiki_page: Wiki page |
|
766 | label_wiki_page: Wiki page | |
766 | label_wiki_page_plural: Wiki pages |
|
767 | label_wiki_page_plural: Wiki pages | |
767 | label_wiki_page_new: New wiki page |
|
768 | label_wiki_page_new: New wiki page | |
768 | label_index_by_title: Index by title |
|
769 | label_index_by_title: Index by title | |
769 | label_index_by_date: Index by date |
|
770 | label_index_by_date: Index by date | |
770 | label_current_version: Current version |
|
771 | label_current_version: Current version | |
771 | label_preview: Preview |
|
772 | label_preview: Preview | |
772 | label_feed_plural: Feeds |
|
773 | label_feed_plural: Feeds | |
773 | label_changes_details: Details of all changes |
|
774 | label_changes_details: Details of all changes | |
774 | label_issue_tracking: Issue tracking |
|
775 | label_issue_tracking: Issue tracking | |
775 | label_spent_time: Spent time |
|
776 | label_spent_time: Spent time | |
776 | label_total_spent_time: Total spent time |
|
777 | label_total_spent_time: Total spent time | |
777 | label_overall_spent_time: Overall spent time |
|
778 | label_overall_spent_time: Overall spent time | |
778 | label_f_hour: "%{value} hour" |
|
779 | label_f_hour: "%{value} hour" | |
779 | label_f_hour_plural: "%{value} hours" |
|
780 | label_f_hour_plural: "%{value} hours" | |
780 | label_f_hour_short: "%{value} h" |
|
781 | label_f_hour_short: "%{value} h" | |
781 | label_time_tracking: Time tracking |
|
782 | label_time_tracking: Time tracking | |
782 | label_change_plural: Changes |
|
783 | label_change_plural: Changes | |
783 | label_statistics: Statistics |
|
784 | label_statistics: Statistics | |
784 | label_commits_per_month: Commits per month |
|
785 | label_commits_per_month: Commits per month | |
785 | label_commits_per_author: Commits per author |
|
786 | label_commits_per_author: Commits per author | |
786 | label_diff: diff |
|
787 | label_diff: diff | |
787 | label_view_diff: View differences |
|
788 | label_view_diff: View differences | |
788 | label_diff_inline: inline |
|
789 | label_diff_inline: inline | |
789 | label_diff_side_by_side: side by side |
|
790 | label_diff_side_by_side: side by side | |
790 | label_options: Options |
|
791 | label_options: Options | |
791 | label_copy_workflow_from: Copy workflow from |
|
792 | label_copy_workflow_from: Copy workflow from | |
792 | label_permissions_report: Permissions report |
|
793 | label_permissions_report: Permissions report | |
793 | label_watched_issues: Watched issues |
|
794 | label_watched_issues: Watched issues | |
794 | label_related_issues: Related issues |
|
795 | label_related_issues: Related issues | |
795 | label_applied_status: Applied status |
|
796 | label_applied_status: Applied status | |
796 | label_loading: Loading... |
|
797 | label_loading: Loading... | |
797 | label_relation_new: New relation |
|
798 | label_relation_new: New relation | |
798 | label_relation_delete: Delete relation |
|
799 | label_relation_delete: Delete relation | |
799 | label_relates_to: Related to |
|
800 | label_relates_to: Related to | |
800 | label_duplicates: Duplicates |
|
801 | label_duplicates: Duplicates | |
801 | label_duplicated_by: Duplicated by |
|
802 | label_duplicated_by: Duplicated by | |
802 | label_blocks: Blocks |
|
803 | label_blocks: Blocks | |
803 | label_blocked_by: Blocked by |
|
804 | label_blocked_by: Blocked by | |
804 | label_precedes: Precedes |
|
805 | label_precedes: Precedes | |
805 | label_follows: Follows |
|
806 | label_follows: Follows | |
806 | label_copied_to: Copied to |
|
807 | label_copied_to: Copied to | |
807 | label_copied_from: Copied from |
|
808 | label_copied_from: Copied from | |
808 | label_stay_logged_in: Stay logged in |
|
809 | label_stay_logged_in: Stay logged in | |
809 | label_disabled: disabled |
|
810 | label_disabled: disabled | |
810 | label_show_completed_versions: Show completed versions |
|
811 | label_show_completed_versions: Show completed versions | |
811 | label_me: me |
|
812 | label_me: me | |
812 | label_board: Forum |
|
813 | label_board: Forum | |
813 | label_board_new: New forum |
|
814 | label_board_new: New forum | |
814 | label_board_plural: Forums |
|
815 | label_board_plural: Forums | |
815 | label_board_locked: Locked |
|
816 | label_board_locked: Locked | |
816 | label_board_sticky: Sticky |
|
817 | label_board_sticky: Sticky | |
817 | label_topic_plural: Topics |
|
818 | label_topic_plural: Topics | |
818 | label_message_plural: Messages |
|
819 | label_message_plural: Messages | |
819 | label_message_last: Last message |
|
820 | label_message_last: Last message | |
820 | label_message_new: New message |
|
821 | label_message_new: New message | |
821 | label_message_posted: Message added |
|
822 | label_message_posted: Message added | |
822 | label_reply_plural: Replies |
|
823 | label_reply_plural: Replies | |
823 | label_send_information: Send account information to the user |
|
824 | label_send_information: Send account information to the user | |
824 | label_year: Year |
|
825 | label_year: Year | |
825 | label_month: Month |
|
826 | label_month: Month | |
826 | label_week: Week |
|
827 | label_week: Week | |
827 | label_date_from: From |
|
828 | label_date_from: From | |
828 | label_date_to: To |
|
829 | label_date_to: To | |
829 | label_language_based: Based on user's language |
|
830 | label_language_based: Based on user's language | |
830 | label_sort_by: "Sort by %{value}" |
|
831 | label_sort_by: "Sort by %{value}" | |
831 | label_send_test_email: Send a test email |
|
832 | label_send_test_email: Send a test email | |
832 | label_feeds_access_key: Atom access key |
|
833 | label_feeds_access_key: Atom access key | |
833 | label_missing_feeds_access_key: Missing a Atom access key |
|
834 | label_missing_feeds_access_key: Missing a Atom access key | |
834 | label_feeds_access_key_created_on: "Atom access key created %{value} ago" |
|
835 | label_feeds_access_key_created_on: "Atom access key created %{value} ago" | |
835 | label_module_plural: Modules |
|
836 | label_module_plural: Modules | |
836 | label_added_time_by: "Added by %{author} %{age} ago" |
|
837 | label_added_time_by: "Added by %{author} %{age} ago" | |
837 | label_updated_time_by: "Updated by %{author} %{age} ago" |
|
838 | label_updated_time_by: "Updated by %{author} %{age} ago" | |
838 | label_updated_time: "Updated %{value} ago" |
|
839 | label_updated_time: "Updated %{value} ago" | |
839 | label_jump_to_a_project: Jump to a project... |
|
840 | label_jump_to_a_project: Jump to a project... | |
840 | label_file_plural: Files |
|
841 | label_file_plural: Files | |
841 | label_changeset_plural: Changesets |
|
842 | label_changeset_plural: Changesets | |
842 | label_default_columns: Default columns |
|
843 | label_default_columns: Default columns | |
843 | label_no_change_option: (No change) |
|
844 | label_no_change_option: (No change) | |
844 | label_bulk_edit_selected_issues: Bulk edit selected issues |
|
845 | label_bulk_edit_selected_issues: Bulk edit selected issues | |
845 | label_bulk_edit_selected_time_entries: Bulk edit selected time entries |
|
846 | label_bulk_edit_selected_time_entries: Bulk edit selected time entries | |
846 | label_theme: Theme |
|
847 | label_theme: Theme | |
847 | label_default: Default |
|
848 | label_default: Default | |
848 | label_search_titles_only: Search titles only |
|
849 | label_search_titles_only: Search titles only | |
849 | label_user_mail_option_all: "For any event on all my projects" |
|
850 | label_user_mail_option_all: "For any event on all my projects" | |
850 | label_user_mail_option_selected: "For any event on the selected projects only..." |
|
851 | label_user_mail_option_selected: "For any event on the selected projects only..." | |
851 | label_user_mail_option_none: "No events" |
|
852 | label_user_mail_option_none: "No events" | |
852 | label_user_mail_option_only_my_events: "Only for things I watch or I'm involved in" |
|
853 | label_user_mail_option_only_my_events: "Only for things I watch or I'm involved in" | |
853 | label_user_mail_option_only_assigned: "Only for things I am assigned to" |
|
854 | label_user_mail_option_only_assigned: "Only for things I am assigned to" | |
854 | label_user_mail_option_only_owner: "Only for things I am the owner of" |
|
855 | label_user_mail_option_only_owner: "Only for things I am the owner of" | |
855 | label_user_mail_no_self_notified: "I don't want to be notified of changes that I make myself" |
|
856 | label_user_mail_no_self_notified: "I don't want to be notified of changes that I make myself" | |
856 | label_registration_activation_by_email: account activation by email |
|
857 | label_registration_activation_by_email: account activation by email | |
857 | label_registration_manual_activation: manual account activation |
|
858 | label_registration_manual_activation: manual account activation | |
858 | label_registration_automatic_activation: automatic account activation |
|
859 | label_registration_automatic_activation: automatic account activation | |
859 | label_display_per_page: "Per page: %{value}" |
|
860 | label_display_per_page: "Per page: %{value}" | |
860 | label_age: Age |
|
861 | label_age: Age | |
861 | label_change_properties: Change properties |
|
862 | label_change_properties: Change properties | |
862 | label_general: General |
|
863 | label_general: General | |
863 | label_more: More |
|
864 | label_more: More | |
864 | label_scm: SCM |
|
865 | label_scm: SCM | |
865 | label_plugins: Plugins |
|
866 | label_plugins: Plugins | |
866 | label_ldap_authentication: LDAP authentication |
|
867 | label_ldap_authentication: LDAP authentication | |
867 | label_downloads_abbr: D/L |
|
868 | label_downloads_abbr: D/L | |
868 | label_optional_description: Optional description |
|
869 | label_optional_description: Optional description | |
869 | label_add_another_file: Add another file |
|
870 | label_add_another_file: Add another file | |
870 | label_preferences: Preferences |
|
871 | label_preferences: Preferences | |
871 | label_chronological_order: In chronological order |
|
872 | label_chronological_order: In chronological order | |
872 | label_reverse_chronological_order: In reverse chronological order |
|
873 | label_reverse_chronological_order: In reverse chronological order | |
873 | label_planning: Planning |
|
874 | label_planning: Planning | |
874 | label_incoming_emails: Incoming emails |
|
875 | label_incoming_emails: Incoming emails | |
875 | label_generate_key: Generate a key |
|
876 | label_generate_key: Generate a key | |
876 | label_issue_watchers: Watchers |
|
877 | label_issue_watchers: Watchers | |
877 | label_example: Example |
|
878 | label_example: Example | |
878 | label_display: Display |
|
879 | label_display: Display | |
879 | label_sort: Sort |
|
880 | label_sort: Sort | |
880 | label_ascending: Ascending |
|
881 | label_ascending: Ascending | |
881 | label_descending: Descending |
|
882 | label_descending: Descending | |
882 | label_date_from_to: From %{start} to %{end} |
|
883 | label_date_from_to: From %{start} to %{end} | |
883 | label_wiki_content_added: Wiki page added |
|
884 | label_wiki_content_added: Wiki page added | |
884 | label_wiki_content_updated: Wiki page updated |
|
885 | label_wiki_content_updated: Wiki page updated | |
885 | label_group: Group |
|
886 | label_group: Group | |
886 | label_group_plural: Groups |
|
887 | label_group_plural: Groups | |
887 | label_group_new: New group |
|
888 | label_group_new: New group | |
888 | label_group_anonymous: Anonymous users |
|
889 | label_group_anonymous: Anonymous users | |
889 | label_group_non_member: Non member users |
|
890 | label_group_non_member: Non member users | |
890 | label_time_entry_plural: Spent time |
|
891 | label_time_entry_plural: Spent time | |
891 | label_version_sharing_none: Not shared |
|
892 | label_version_sharing_none: Not shared | |
892 | label_version_sharing_descendants: With subprojects |
|
893 | label_version_sharing_descendants: With subprojects | |
893 | label_version_sharing_hierarchy: With project hierarchy |
|
894 | label_version_sharing_hierarchy: With project hierarchy | |
894 | label_version_sharing_tree: With project tree |
|
895 | label_version_sharing_tree: With project tree | |
895 | label_version_sharing_system: With all projects |
|
896 | label_version_sharing_system: With all projects | |
896 | label_update_issue_done_ratios: Update issue done ratios |
|
897 | label_update_issue_done_ratios: Update issue done ratios | |
897 | label_copy_source: Source |
|
898 | label_copy_source: Source | |
898 | label_copy_target: Target |
|
899 | label_copy_target: Target | |
899 | label_copy_same_as_target: Same as target |
|
900 | label_copy_same_as_target: Same as target | |
900 | label_display_used_statuses_only: Only display statuses that are used by this tracker |
|
901 | label_display_used_statuses_only: Only display statuses that are used by this tracker | |
901 | label_api_access_key: API access key |
|
902 | label_api_access_key: API access key | |
902 | label_missing_api_access_key: Missing an API access key |
|
903 | label_missing_api_access_key: Missing an API access key | |
903 | label_api_access_key_created_on: "API access key created %{value} ago" |
|
904 | label_api_access_key_created_on: "API access key created %{value} ago" | |
904 | label_profile: Profile |
|
905 | label_profile: Profile | |
905 | label_subtask_plural: Subtasks |
|
906 | label_subtask_plural: Subtasks | |
906 | label_project_copy_notifications: Send email notifications during the project copy |
|
907 | label_project_copy_notifications: Send email notifications during the project copy | |
907 | label_principal_search: "Search for user or group:" |
|
908 | label_principal_search: "Search for user or group:" | |
908 | label_user_search: "Search for user:" |
|
909 | label_user_search: "Search for user:" | |
909 | label_additional_workflow_transitions_for_author: Additional transitions allowed when the user is the author |
|
910 | label_additional_workflow_transitions_for_author: Additional transitions allowed when the user is the author | |
910 | label_additional_workflow_transitions_for_assignee: Additional transitions allowed when the user is the assignee |
|
911 | label_additional_workflow_transitions_for_assignee: Additional transitions allowed when the user is the assignee | |
911 | label_issues_visibility_all: All issues |
|
912 | label_issues_visibility_all: All issues | |
912 | label_issues_visibility_public: All non private issues |
|
913 | label_issues_visibility_public: All non private issues | |
913 | label_issues_visibility_own: Issues created by or assigned to the user |
|
914 | label_issues_visibility_own: Issues created by or assigned to the user | |
914 | label_git_report_last_commit: Report last commit for files and directories |
|
915 | label_git_report_last_commit: Report last commit for files and directories | |
915 | label_parent_revision: Parent |
|
916 | label_parent_revision: Parent | |
916 | label_child_revision: Child |
|
917 | label_child_revision: Child | |
917 | label_export_options: "%{export_format} export options" |
|
918 | label_export_options: "%{export_format} export options" | |
918 | label_copy_attachments: Copy attachments |
|
919 | label_copy_attachments: Copy attachments | |
919 | label_copy_subtasks: Copy subtasks |
|
920 | label_copy_subtasks: Copy subtasks | |
920 | label_item_position: "%{position} of %{count}" |
|
921 | label_item_position: "%{position} of %{count}" | |
921 | label_completed_versions: Completed versions |
|
922 | label_completed_versions: Completed versions | |
922 | label_search_for_watchers: Search for watchers to add |
|
923 | label_search_for_watchers: Search for watchers to add | |
923 | label_session_expiration: Session expiration |
|
924 | label_session_expiration: Session expiration | |
924 | label_show_closed_projects: View closed projects |
|
925 | label_show_closed_projects: View closed projects | |
925 | label_status_transitions: Status transitions |
|
926 | label_status_transitions: Status transitions | |
926 | label_fields_permissions: Fields permissions |
|
927 | label_fields_permissions: Fields permissions | |
927 | label_readonly: Read-only |
|
928 | label_readonly: Read-only | |
928 | label_required: Required |
|
929 | label_required: Required | |
929 | label_hidden: Hidden |
|
930 | label_hidden: Hidden | |
930 | label_attribute_of_project: "Project's %{name}" |
|
931 | label_attribute_of_project: "Project's %{name}" | |
931 | label_attribute_of_issue: "Issue's %{name}" |
|
932 | label_attribute_of_issue: "Issue's %{name}" | |
932 | label_attribute_of_author: "Author's %{name}" |
|
933 | label_attribute_of_author: "Author's %{name}" | |
933 | label_attribute_of_assigned_to: "Assignee's %{name}" |
|
934 | label_attribute_of_assigned_to: "Assignee's %{name}" | |
934 | label_attribute_of_user: "User's %{name}" |
|
935 | label_attribute_of_user: "User's %{name}" | |
935 | label_attribute_of_fixed_version: "Target version's %{name}" |
|
936 | label_attribute_of_fixed_version: "Target version's %{name}" | |
936 | label_cross_project_descendants: With subprojects |
|
937 | label_cross_project_descendants: With subprojects | |
937 | label_cross_project_tree: With project tree |
|
938 | label_cross_project_tree: With project tree | |
938 | label_cross_project_hierarchy: With project hierarchy |
|
939 | label_cross_project_hierarchy: With project hierarchy | |
939 | label_cross_project_system: With all projects |
|
940 | label_cross_project_system: With all projects | |
940 | label_gantt_progress_line: Progress line |
|
941 | label_gantt_progress_line: Progress line | |
941 | label_visibility_private: to me only |
|
942 | label_visibility_private: to me only | |
942 | label_visibility_roles: to these roles only |
|
943 | label_visibility_roles: to these roles only | |
943 | label_visibility_public: to any users |
|
944 | label_visibility_public: to any users | |
944 | label_link: Link |
|
945 | label_link: Link | |
945 | label_only: only |
|
946 | label_only: only | |
946 | label_drop_down_list: drop-down list |
|
947 | label_drop_down_list: drop-down list | |
947 | label_checkboxes: checkboxes |
|
948 | label_checkboxes: checkboxes | |
948 | label_radio_buttons: radio buttons |
|
949 | label_radio_buttons: radio buttons | |
949 | label_link_values_to: Link values to URL |
|
950 | label_link_values_to: Link values to URL | |
950 | label_custom_field_select_type: Select the type of object to which the custom field is to be attached |
|
951 | label_custom_field_select_type: Select the type of object to which the custom field is to be attached | |
951 | label_check_for_updates: Check for updates |
|
952 | label_check_for_updates: Check for updates | |
952 | label_latest_compatible_version: Latest compatible version |
|
953 | label_latest_compatible_version: Latest compatible version | |
953 | label_unknown_plugin: Unknown plugin |
|
954 | label_unknown_plugin: Unknown plugin | |
954 | label_add_projects: Add projects |
|
955 | label_add_projects: Add projects | |
955 | label_users_visibility_all: All active users |
|
956 | label_users_visibility_all: All active users | |
956 | label_users_visibility_members_of_visible_projects: Members of visible projects |
|
957 | label_users_visibility_members_of_visible_projects: Members of visible projects | |
957 | label_edit_attachments: Edit attached files |
|
958 | label_edit_attachments: Edit attached files | |
958 | label_link_copied_issue: Link copied issue |
|
959 | label_link_copied_issue: Link copied issue | |
959 | label_ask: Ask |
|
960 | label_ask: Ask | |
960 | label_search_attachments_yes: Search attachment filenames and descriptions |
|
961 | label_search_attachments_yes: Search attachment filenames and descriptions | |
961 | label_search_attachments_no: Do not search attachments |
|
962 | label_search_attachments_no: Do not search attachments | |
962 | label_search_attachments_only: Search attachments only |
|
963 | label_search_attachments_only: Search attachments only | |
963 | label_search_open_issues_only: Open issues only |
|
964 | label_search_open_issues_only: Open issues only | |
964 | label_email_address_plural: Emails |
|
965 | label_email_address_plural: Emails | |
965 | label_email_address_add: Add email address |
|
966 | label_email_address_add: Add email address | |
966 | label_enable_notifications: Enable notifications |
|
967 | label_enable_notifications: Enable notifications | |
967 | label_disable_notifications: Disable notifications |
|
968 | label_disable_notifications: Disable notifications | |
968 | label_blank_value: blank |
|
969 | label_blank_value: blank | |
969 | label_parent_task_attributes: Parent tasks attributes |
|
970 | label_parent_task_attributes: Parent tasks attributes | |
970 | label_parent_task_attributes_derived: Calculated from subtasks |
|
971 | label_parent_task_attributes_derived: Calculated from subtasks | |
971 | label_parent_task_attributes_independent: Independent of subtasks |
|
972 | label_parent_task_attributes_independent: Independent of subtasks | |
972 | label_time_entries_visibility_all: All time entries |
|
973 | label_time_entries_visibility_all: All time entries | |
973 | label_time_entries_visibility_own: Time entries created by the user |
|
974 | label_time_entries_visibility_own: Time entries created by the user | |
974 | label_member_management: Member management |
|
975 | label_member_management: Member management | |
975 | label_member_management_all_roles: All roles |
|
976 | label_member_management_all_roles: All roles | |
976 | label_member_management_selected_roles_only: Only these roles |
|
977 | label_member_management_selected_roles_only: Only these roles | |
977 | label_import_issues: Import issues |
|
978 | label_import_issues: Import issues | |
978 | label_select_file_to_import: Select the file to import |
|
979 | label_select_file_to_import: Select the file to import | |
979 | label_fields_separator: Field separator |
|
980 | label_fields_separator: Field separator | |
980 | label_fields_wrapper: Field wrapper |
|
981 | label_fields_wrapper: Field wrapper | |
981 | label_encoding: Encoding |
|
982 | label_encoding: Encoding | |
982 | label_comma_char: Comma |
|
983 | label_comma_char: Comma | |
983 | label_semi_colon_char: Semicolon |
|
984 | label_semi_colon_char: Semicolon | |
984 | label_quote_char: Quote |
|
985 | label_quote_char: Quote | |
985 | label_double_quote_char: Double quote |
|
986 | label_double_quote_char: Double quote | |
986 | label_fields_mapping: Fields mapping |
|
987 | label_fields_mapping: Fields mapping | |
987 | label_file_content_preview: File content preview |
|
988 | label_file_content_preview: File content preview | |
988 | label_create_missing_values: Create missing values |
|
989 | label_create_missing_values: Create missing values | |
989 | label_api: API |
|
990 | label_api: API | |
990 | label_field_format_enumeration: Key/value list |
|
991 | label_field_format_enumeration: Key/value list | |
991 | label_default_values_for_new_users: Default values for new users |
|
992 | label_default_values_for_new_users: Default values for new users | |
992 | label_relations: Relations |
|
993 | label_relations: Relations | |
993 |
|
994 | |||
994 | button_login: Login |
|
995 | button_login: Login | |
995 | button_submit: Submit |
|
996 | button_submit: Submit | |
996 | button_save: Save |
|
997 | button_save: Save | |
997 | button_check_all: Check all |
|
998 | button_check_all: Check all | |
998 | button_uncheck_all: Uncheck all |
|
999 | button_uncheck_all: Uncheck all | |
999 | button_collapse_all: Collapse all |
|
1000 | button_collapse_all: Collapse all | |
1000 | button_expand_all: Expand all |
|
1001 | button_expand_all: Expand all | |
1001 | button_delete: Delete |
|
1002 | button_delete: Delete | |
1002 | button_create: Create |
|
1003 | button_create: Create | |
1003 | button_create_and_continue: Create and continue |
|
1004 | button_create_and_continue: Create and continue | |
1004 | button_test: Test |
|
1005 | button_test: Test | |
1005 | button_edit: Edit |
|
1006 | button_edit: Edit | |
1006 | button_edit_associated_wikipage: "Edit associated Wiki page: %{page_title}" |
|
1007 | button_edit_associated_wikipage: "Edit associated Wiki page: %{page_title}" | |
1007 | button_add: Add |
|
1008 | button_add: Add | |
1008 | button_change: Change |
|
1009 | button_change: Change | |
1009 | button_apply: Apply |
|
1010 | button_apply: Apply | |
1010 | button_clear: Clear |
|
1011 | button_clear: Clear | |
1011 | button_lock: Lock |
|
1012 | button_lock: Lock | |
1012 | button_unlock: Unlock |
|
1013 | button_unlock: Unlock | |
1013 | button_download: Download |
|
1014 | button_download: Download | |
1014 | button_list: List |
|
1015 | button_list: List | |
1015 | button_view: View |
|
1016 | button_view: View | |
1016 | button_move: Move |
|
1017 | button_move: Move | |
1017 | button_move_and_follow: Move and follow |
|
1018 | button_move_and_follow: Move and follow | |
1018 | button_back: Back |
|
1019 | button_back: Back | |
1019 | button_cancel: Cancel |
|
1020 | button_cancel: Cancel | |
1020 | button_activate: Activate |
|
1021 | button_activate: Activate | |
1021 | button_sort: Sort |
|
1022 | button_sort: Sort | |
1022 | button_log_time: Log time |
|
1023 | button_log_time: Log time | |
1023 | button_rollback: Rollback to this version |
|
1024 | button_rollback: Rollback to this version | |
1024 | button_watch: Watch |
|
1025 | button_watch: Watch | |
1025 | button_unwatch: Unwatch |
|
1026 | button_unwatch: Unwatch | |
1026 | button_reply: Reply |
|
1027 | button_reply: Reply | |
1027 | button_archive: Archive |
|
1028 | button_archive: Archive | |
1028 | button_unarchive: Unarchive |
|
1029 | button_unarchive: Unarchive | |
1029 | button_reset: Reset |
|
1030 | button_reset: Reset | |
1030 | button_rename: Rename |
|
1031 | button_rename: Rename | |
1031 | button_change_password: Change password |
|
1032 | button_change_password: Change password | |
1032 | button_copy: Copy |
|
1033 | button_copy: Copy | |
1033 | button_copy_and_follow: Copy and follow |
|
1034 | button_copy_and_follow: Copy and follow | |
1034 | button_annotate: Annotate |
|
1035 | button_annotate: Annotate | |
1035 | button_update: Update |
|
1036 | button_update: Update | |
1036 | button_configure: Configure |
|
1037 | button_configure: Configure | |
1037 | button_quote: Quote |
|
1038 | button_quote: Quote | |
1038 | button_duplicate: Duplicate |
|
1039 | button_duplicate: Duplicate | |
1039 | button_show: Show |
|
1040 | button_show: Show | |
1040 | button_hide: Hide |
|
1041 | button_hide: Hide | |
1041 | button_edit_section: Edit this section |
|
1042 | button_edit_section: Edit this section | |
1042 | button_export: Export |
|
1043 | button_export: Export | |
1043 | button_delete_my_account: Delete my account |
|
1044 | button_delete_my_account: Delete my account | |
1044 | button_close: Close |
|
1045 | button_close: Close | |
1045 | button_reopen: Reopen |
|
1046 | button_reopen: Reopen | |
1046 | button_import: Import |
|
1047 | button_import: Import | |
1047 | button_filter: Filter |
|
1048 | button_filter: Filter | |
1048 |
|
1049 | |||
1049 | status_active: active |
|
1050 | status_active: active | |
1050 | status_registered: registered |
|
1051 | status_registered: registered | |
1051 | status_locked: locked |
|
1052 | status_locked: locked | |
1052 |
|
1053 | |||
1053 | project_status_active: active |
|
1054 | project_status_active: active | |
1054 | project_status_closed: closed |
|
1055 | project_status_closed: closed | |
1055 | project_status_archived: archived |
|
1056 | project_status_archived: archived | |
1056 |
|
1057 | |||
1057 | version_status_open: open |
|
1058 | version_status_open: open | |
1058 | version_status_locked: locked |
|
1059 | version_status_locked: locked | |
1059 | version_status_closed: closed |
|
1060 | version_status_closed: closed | |
1060 |
|
1061 | |||
1061 | field_active: Active |
|
1062 | field_active: Active | |
1062 |
|
1063 | |||
1063 | text_select_mail_notifications: Select actions for which email notifications should be sent. |
|
1064 | text_select_mail_notifications: Select actions for which email notifications should be sent. | |
1064 | text_regexp_info: eg. ^[A-Z0-9]+$ |
|
1065 | text_regexp_info: eg. ^[A-Z0-9]+$ | |
1065 | text_min_max_length_info: 0 means no restriction |
|
1066 | text_min_max_length_info: 0 means no restriction | |
1066 | text_project_destroy_confirmation: Are you sure you want to delete this project and related data? |
|
1067 | text_project_destroy_confirmation: Are you sure you want to delete this project and related data? | |
1067 | text_subprojects_destroy_warning: "Its subproject(s): %{value} will be also deleted." |
|
1068 | text_subprojects_destroy_warning: "Its subproject(s): %{value} will be also deleted." | |
1068 | text_workflow_edit: Select a role and a tracker to edit the workflow |
|
1069 | text_workflow_edit: Select a role and a tracker to edit the workflow | |
1069 | text_are_you_sure: Are you sure? |
|
1070 | text_are_you_sure: Are you sure? | |
1070 | text_journal_changed: "%{label} changed from %{old} to %{new}" |
|
1071 | text_journal_changed: "%{label} changed from %{old} to %{new}" | |
1071 | text_journal_changed_no_detail: "%{label} updated" |
|
1072 | text_journal_changed_no_detail: "%{label} updated" | |
1072 | text_journal_set_to: "%{label} set to %{value}" |
|
1073 | text_journal_set_to: "%{label} set to %{value}" | |
1073 | text_journal_deleted: "%{label} deleted (%{old})" |
|
1074 | text_journal_deleted: "%{label} deleted (%{old})" | |
1074 | text_journal_added: "%{label} %{value} added" |
|
1075 | text_journal_added: "%{label} %{value} added" | |
1075 | text_tip_issue_begin_day: issue beginning this day |
|
1076 | text_tip_issue_begin_day: issue beginning this day | |
1076 | text_tip_issue_end_day: issue ending this day |
|
1077 | text_tip_issue_end_day: issue ending this day | |
1077 | text_tip_issue_begin_end_day: issue beginning and ending this day |
|
1078 | text_tip_issue_begin_end_day: issue beginning and ending this day | |
1078 | text_project_identifier_info: 'Only lower case letters (a-z), numbers, dashes and underscores are allowed, must start with a lower case letter.<br />Once saved, the identifier cannot be changed.' |
|
1079 | text_project_identifier_info: 'Only lower case letters (a-z), numbers, dashes and underscores are allowed, must start with a lower case letter.<br />Once saved, the identifier cannot be changed.' | |
1079 | text_caracters_maximum: "%{count} characters maximum." |
|
1080 | text_caracters_maximum: "%{count} characters maximum." | |
1080 | text_caracters_minimum: "Must be at least %{count} characters long." |
|
1081 | text_caracters_minimum: "Must be at least %{count} characters long." | |
1081 | text_length_between: "Length between %{min} and %{max} characters." |
|
1082 | text_length_between: "Length between %{min} and %{max} characters." | |
1082 | text_tracker_no_workflow: No workflow defined for this tracker |
|
1083 | text_tracker_no_workflow: No workflow defined for this tracker | |
1083 | text_unallowed_characters: Unallowed characters |
|
1084 | text_unallowed_characters: Unallowed characters | |
1084 | text_comma_separated: Multiple values allowed (comma separated). |
|
1085 | text_comma_separated: Multiple values allowed (comma separated). | |
1085 | text_line_separated: Multiple values allowed (one line for each value). |
|
1086 | text_line_separated: Multiple values allowed (one line for each value). | |
1086 | text_issues_ref_in_commit_messages: Referencing and fixing issues in commit messages |
|
1087 | text_issues_ref_in_commit_messages: Referencing and fixing issues in commit messages | |
1087 | text_issue_added: "Issue %{id} has been reported by %{author}." |
|
1088 | text_issue_added: "Issue %{id} has been reported by %{author}." | |
1088 | text_issue_updated: "Issue %{id} has been updated by %{author}." |
|
1089 | text_issue_updated: "Issue %{id} has been updated by %{author}." | |
1089 | text_wiki_destroy_confirmation: Are you sure you want to delete this wiki and all its content? |
|
1090 | text_wiki_destroy_confirmation: Are you sure you want to delete this wiki and all its content? | |
1090 | text_issue_category_destroy_question: "Some issues (%{count}) are assigned to this category. What do you want to do?" |
|
1091 | text_issue_category_destroy_question: "Some issues (%{count}) are assigned to this category. What do you want to do?" | |
1091 | text_issue_category_destroy_assignments: Remove category assignments |
|
1092 | text_issue_category_destroy_assignments: Remove category assignments | |
1092 | text_issue_category_reassign_to: Reassign issues to this category |
|
1093 | text_issue_category_reassign_to: Reassign issues to this category | |
1093 | text_user_mail_option: "For unselected projects, you will only receive notifications about things you watch or you're involved in (eg. issues you're the author or assignee)." |
|
1094 | text_user_mail_option: "For unselected projects, you will only receive notifications about things you watch or you're involved in (eg. issues you're the author or assignee)." | |
1094 | text_no_configuration_data: "Roles, trackers, issue statuses and workflow have not been configured yet.\nIt is highly recommended to load the default configuration. You will be able to modify it once loaded." |
|
1095 | text_no_configuration_data: "Roles, trackers, issue statuses and workflow have not been configured yet.\nIt is highly recommended to load the default configuration. You will be able to modify it once loaded." | |
1095 | text_load_default_configuration: Load the default configuration |
|
1096 | text_load_default_configuration: Load the default configuration | |
1096 | text_status_changed_by_changeset: "Applied in changeset %{value}." |
|
1097 | text_status_changed_by_changeset: "Applied in changeset %{value}." | |
1097 | text_time_logged_by_changeset: "Applied in changeset %{value}." |
|
1098 | text_time_logged_by_changeset: "Applied in changeset %{value}." | |
1098 | text_issues_destroy_confirmation: 'Are you sure you want to delete the selected issue(s)?' |
|
1099 | text_issues_destroy_confirmation: 'Are you sure you want to delete the selected issue(s)?' | |
1099 | text_issues_destroy_descendants_confirmation: "This will also delete %{count} subtask(s)." |
|
1100 | text_issues_destroy_descendants_confirmation: "This will also delete %{count} subtask(s)." | |
1100 | text_time_entries_destroy_confirmation: 'Are you sure you want to delete the selected time entr(y/ies)?' |
|
1101 | text_time_entries_destroy_confirmation: 'Are you sure you want to delete the selected time entr(y/ies)?' | |
1101 | text_select_project_modules: 'Select modules to enable for this project:' |
|
1102 | text_select_project_modules: 'Select modules to enable for this project:' | |
1102 | text_default_administrator_account_changed: Default administrator account changed |
|
1103 | text_default_administrator_account_changed: Default administrator account changed | |
1103 | text_file_repository_writable: Attachments directory writable |
|
1104 | text_file_repository_writable: Attachments directory writable | |
1104 | text_plugin_assets_writable: Plugin assets directory writable |
|
1105 | text_plugin_assets_writable: Plugin assets directory writable | |
1105 | text_rmagick_available: RMagick available (optional) |
|
1106 | text_rmagick_available: RMagick available (optional) | |
1106 | text_convert_available: ImageMagick convert available (optional) |
|
1107 | text_convert_available: ImageMagick convert available (optional) | |
1107 | text_destroy_time_entries_question: "%{hours} hours were reported on the issues you are about to delete. What do you want to do?" |
|
1108 | text_destroy_time_entries_question: "%{hours} hours were reported on the issues you are about to delete. What do you want to do?" | |
1108 | text_destroy_time_entries: Delete reported hours |
|
1109 | text_destroy_time_entries: Delete reported hours | |
1109 | text_assign_time_entries_to_project: Assign reported hours to the project |
|
1110 | text_assign_time_entries_to_project: Assign reported hours to the project | |
1110 | text_reassign_time_entries: 'Reassign reported hours to this issue:' |
|
1111 | text_reassign_time_entries: 'Reassign reported hours to this issue:' | |
1111 | text_user_wrote: "%{value} wrote:" |
|
1112 | text_user_wrote: "%{value} wrote:" | |
1112 | text_enumeration_destroy_question: "%{count} objects are assigned to the value “%{name}”." |
|
1113 | text_enumeration_destroy_question: "%{count} objects are assigned to the value “%{name}”." | |
1113 | text_enumeration_category_reassign_to: 'Reassign them to this value:' |
|
1114 | text_enumeration_category_reassign_to: 'Reassign them to this value:' | |
1114 | text_email_delivery_not_configured: "Email delivery is not configured, and notifications are disabled.\nConfigure your SMTP server in config/configuration.yml and restart the application to enable them." |
|
1115 | text_email_delivery_not_configured: "Email delivery is not configured, and notifications are disabled.\nConfigure your SMTP server in config/configuration.yml and restart the application to enable them." | |
1115 | text_repository_usernames_mapping: "Select or update the Redmine user mapped to each username found in the repository log.\nUsers with the same Redmine and repository username or email are automatically mapped." |
|
1116 | text_repository_usernames_mapping: "Select or update the Redmine user mapped to each username found in the repository log.\nUsers with the same Redmine and repository username or email are automatically mapped." | |
1116 | text_diff_truncated: '... This diff was truncated because it exceeds the maximum size that can be displayed.' |
|
1117 | text_diff_truncated: '... This diff was truncated because it exceeds the maximum size that can be displayed.' | |
1117 | text_custom_field_possible_values_info: 'One line for each value' |
|
1118 | text_custom_field_possible_values_info: 'One line for each value' | |
1118 | text_wiki_page_destroy_question: "This page has %{descendants} child page(s) and descendant(s). What do you want to do?" |
|
1119 | text_wiki_page_destroy_question: "This page has %{descendants} child page(s) and descendant(s). What do you want to do?" | |
1119 | text_wiki_page_nullify_children: "Keep child pages as root pages" |
|
1120 | text_wiki_page_nullify_children: "Keep child pages as root pages" | |
1120 | text_wiki_page_destroy_children: "Delete child pages and all their descendants" |
|
1121 | text_wiki_page_destroy_children: "Delete child pages and all their descendants" | |
1121 | text_wiki_page_reassign_children: "Reassign child pages to this parent page" |
|
1122 | text_wiki_page_reassign_children: "Reassign child pages to this parent page" | |
1122 | text_own_membership_delete_confirmation: "You are about to remove some or all of your permissions and may no longer be able to edit this project after that.\nAre you sure you want to continue?" |
|
1123 | text_own_membership_delete_confirmation: "You are about to remove some or all of your permissions and may no longer be able to edit this project after that.\nAre you sure you want to continue?" | |
1123 | text_zoom_in: Zoom in |
|
1124 | text_zoom_in: Zoom in | |
1124 | text_zoom_out: Zoom out |
|
1125 | text_zoom_out: Zoom out | |
1125 | text_warn_on_leaving_unsaved: "The current page contains unsaved text that will be lost if you leave this page." |
|
1126 | text_warn_on_leaving_unsaved: "The current page contains unsaved text that will be lost if you leave this page." | |
1126 | text_scm_path_encoding_note: "Default: UTF-8" |
|
1127 | text_scm_path_encoding_note: "Default: UTF-8" | |
1127 | text_subversion_repository_note: "Examples: file:///, http://, https://, svn://, svn+[tunnelscheme]://" |
|
1128 | text_subversion_repository_note: "Examples: file:///, http://, https://, svn://, svn+[tunnelscheme]://" | |
1128 | text_git_repository_note: Repository is bare and local (e.g. /gitrepo, c:\gitrepo) |
|
1129 | text_git_repository_note: Repository is bare and local (e.g. /gitrepo, c:\gitrepo) | |
1129 | text_mercurial_repository_note: Local repository (e.g. /hgrepo, c:\hgrepo) |
|
1130 | text_mercurial_repository_note: Local repository (e.g. /hgrepo, c:\hgrepo) | |
1130 | text_scm_command: Command |
|
1131 | text_scm_command: Command | |
1131 | text_scm_command_version: Version |
|
1132 | text_scm_command_version: Version | |
1132 | text_scm_config: You can configure your SCM commands in config/configuration.yml. Please restart the application after editing it. |
|
1133 | text_scm_config: You can configure your SCM commands in config/configuration.yml. Please restart the application after editing it. | |
1133 | text_scm_command_not_available: SCM command is not available. Please check settings on the administration panel. |
|
1134 | text_scm_command_not_available: SCM command is not available. Please check settings on the administration panel. | |
1134 | text_issue_conflict_resolution_overwrite: "Apply my changes anyway (previous notes will be kept but some changes may be overwritten)" |
|
1135 | text_issue_conflict_resolution_overwrite: "Apply my changes anyway (previous notes will be kept but some changes may be overwritten)" | |
1135 | text_issue_conflict_resolution_add_notes: "Add my notes and discard my other changes" |
|
1136 | text_issue_conflict_resolution_add_notes: "Add my notes and discard my other changes" | |
1136 | text_issue_conflict_resolution_cancel: "Discard all my changes and redisplay %{link}" |
|
1137 | text_issue_conflict_resolution_cancel: "Discard all my changes and redisplay %{link}" | |
1137 | text_account_destroy_confirmation: "Are you sure you want to proceed?\nYour account will be permanently deleted, with no way to reactivate it." |
|
1138 | text_account_destroy_confirmation: "Are you sure you want to proceed?\nYour account will be permanently deleted, with no way to reactivate it." | |
1138 | text_session_expiration_settings: "Warning: changing these settings may expire the current sessions including yours." |
|
1139 | text_session_expiration_settings: "Warning: changing these settings may expire the current sessions including yours." | |
1139 | text_project_closed: This project is closed and read-only. |
|
1140 | text_project_closed: This project is closed and read-only. | |
1140 | text_turning_multiple_off: "If you disable multiple values, multiple values will be removed in order to preserve only one value per item." |
|
1141 | text_turning_multiple_off: "If you disable multiple values, multiple values will be removed in order to preserve only one value per item." | |
1141 |
|
1142 | |||
1142 | default_role_manager: Manager |
|
1143 | default_role_manager: Manager | |
1143 | default_role_developer: Developer |
|
1144 | default_role_developer: Developer | |
1144 | default_role_reporter: Reporter |
|
1145 | default_role_reporter: Reporter | |
1145 | default_tracker_bug: Bug |
|
1146 | default_tracker_bug: Bug | |
1146 | default_tracker_feature: Feature |
|
1147 | default_tracker_feature: Feature | |
1147 | default_tracker_support: Support |
|
1148 | default_tracker_support: Support | |
1148 | default_issue_status_new: New |
|
1149 | default_issue_status_new: New | |
1149 | default_issue_status_in_progress: In Progress |
|
1150 | default_issue_status_in_progress: In Progress | |
1150 | default_issue_status_resolved: Resolved |
|
1151 | default_issue_status_resolved: Resolved | |
1151 | default_issue_status_feedback: Feedback |
|
1152 | default_issue_status_feedback: Feedback | |
1152 | default_issue_status_closed: Closed |
|
1153 | default_issue_status_closed: Closed | |
1153 | default_issue_status_rejected: Rejected |
|
1154 | default_issue_status_rejected: Rejected | |
1154 | default_doc_category_user: User documentation |
|
1155 | default_doc_category_user: User documentation | |
1155 | default_doc_category_tech: Technical documentation |
|
1156 | default_doc_category_tech: Technical documentation | |
1156 | default_priority_low: Low |
|
1157 | default_priority_low: Low | |
1157 | default_priority_normal: Normal |
|
1158 | default_priority_normal: Normal | |
1158 | default_priority_high: High |
|
1159 | default_priority_high: High | |
1159 | default_priority_urgent: Urgent |
|
1160 | default_priority_urgent: Urgent | |
1160 | default_priority_immediate: Immediate |
|
1161 | default_priority_immediate: Immediate | |
1161 | default_activity_design: Design |
|
1162 | default_activity_design: Design | |
1162 | default_activity_development: Development |
|
1163 | default_activity_development: Development | |
1163 |
|
1164 | |||
1164 | enumeration_issue_priorities: Issue priorities |
|
1165 | enumeration_issue_priorities: Issue priorities | |
1165 | enumeration_doc_categories: Document categories |
|
1166 | enumeration_doc_categories: Document categories | |
1166 | enumeration_activities: Activities (time tracking) |
|
1167 | enumeration_activities: Activities (time tracking) | |
1167 | enumeration_system_activity: System Activity |
|
1168 | enumeration_system_activity: System Activity | |
1168 | description_filter: Filter |
|
1169 | description_filter: Filter | |
1169 | description_search: Searchfield |
|
1170 | description_search: Searchfield | |
1170 | description_choose_project: Projects |
|
1171 | description_choose_project: Projects | |
1171 | description_project_scope: Search scope |
|
1172 | description_project_scope: Search scope | |
1172 | description_notes: Notes |
|
1173 | description_notes: Notes | |
1173 | description_message_content: Message content |
|
1174 | description_message_content: Message content | |
1174 | description_query_sort_criteria_attribute: Sort attribute |
|
1175 | description_query_sort_criteria_attribute: Sort attribute | |
1175 | description_query_sort_criteria_direction: Sort direction |
|
1176 | description_query_sort_criteria_direction: Sort direction | |
1176 | description_user_mail_notification: Mail notification settings |
|
1177 | description_user_mail_notification: Mail notification settings | |
1177 | description_available_columns: Available Columns |
|
1178 | description_available_columns: Available Columns | |
1178 | description_selected_columns: Selected Columns |
|
1179 | description_selected_columns: Selected Columns | |
1179 | description_all_columns: All Columns |
|
1180 | description_all_columns: All Columns | |
1180 | description_issue_category_reassign: Choose issue category |
|
1181 | description_issue_category_reassign: Choose issue category | |
1181 | description_wiki_subpages_reassign: Choose new parent page |
|
1182 | description_wiki_subpages_reassign: Choose new parent page | |
1182 | description_date_range_list: Choose range from list |
|
1183 | description_date_range_list: Choose range from list | |
1183 | description_date_range_interval: Choose range by selecting start and end date |
|
1184 | description_date_range_interval: Choose range by selecting start and end date | |
1184 | description_date_from: Enter start date |
|
1185 | description_date_from: Enter start date | |
1185 | description_date_to: Enter end date |
|
1186 | description_date_to: Enter end date | |
1186 | text_repository_identifier_info: 'Only lower case letters (a-z), numbers, dashes and underscores are allowed.<br />Once saved, the identifier cannot be changed.' |
|
1187 | text_repository_identifier_info: 'Only lower case letters (a-z), numbers, dashes and underscores are allowed.<br />Once saved, the identifier cannot be changed.' |
@@ -1,150 +1,151 | |||||
1 | # Redmine - project management software |
|
1 | # Redmine - project management software | |
2 | # Copyright (C) 2006-2016 Jean-Philippe Lang |
|
2 | # Copyright (C) 2006-2016 Jean-Philippe Lang | |
3 | # |
|
3 | # | |
4 | # This program is free software; you can redistribute it and/or |
|
4 | # This program is free software; you can redistribute it and/or | |
5 | # modify it under the terms of the GNU General Public License |
|
5 | # modify it under the terms of the GNU General Public License | |
6 | # as published by the Free Software Foundation; either version 2 |
|
6 | # as published by the Free Software Foundation; either version 2 | |
7 | # of the License, or (at your option) any later version. |
|
7 | # of the License, or (at your option) any later version. | |
8 | # |
|
8 | # | |
9 | # This program is distributed in the hope that it will be useful, |
|
9 | # This program is distributed in the hope that it will be useful, | |
10 | # but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
10 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
12 | # GNU General Public License for more details. |
|
12 | # GNU General Public License for more details. | |
13 | # |
|
13 | # | |
14 | # You should have received a copy of the GNU General Public License |
|
14 | # You should have received a copy of the GNU General Public License | |
15 | # along with this program; if not, write to the Free Software |
|
15 | # along with this program; if not, write to the Free Software | |
16 | # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. |
|
16 | # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. | |
17 |
|
17 | |||
18 | require File.expand_path('../../test_helper', __FILE__) |
|
18 | require File.expand_path('../../test_helper', __FILE__) | |
19 |
|
19 | |||
20 | class RepositoriesFilesystemControllerTest < ActionController::TestCase |
|
20 | class RepositoriesFilesystemControllerTest < ActionController::TestCase | |
21 | tests RepositoriesController |
|
21 | tests RepositoriesController | |
22 |
|
22 | |||
23 | fixtures :projects, :users, :email_addresses, :roles, :members, :member_roles, |
|
23 | fixtures :projects, :users, :email_addresses, :roles, :members, :member_roles, | |
24 | :repositories, :enabled_modules |
|
24 | :repositories, :enabled_modules | |
25 |
|
25 | |||
26 | REPOSITORY_PATH = Rails.root.join('tmp/test/filesystem_repository').to_s |
|
26 | REPOSITORY_PATH = Rails.root.join('tmp/test/filesystem_repository').to_s | |
27 | PRJ_ID = 3 |
|
27 | PRJ_ID = 3 | |
28 |
|
28 | |||
29 | def setup |
|
29 | def setup | |
30 | @ruby19_non_utf8_pass = Encoding.default_external.to_s != 'UTF-8' |
|
30 | @ruby19_non_utf8_pass = Encoding.default_external.to_s != 'UTF-8' | |
31 | User.current = nil |
|
31 | User.current = nil | |
32 | Setting.enabled_scm << 'Filesystem' unless Setting.enabled_scm.include?('Filesystem') |
|
32 | Setting.enabled_scm << 'Filesystem' unless Setting.enabled_scm.include?('Filesystem') | |
33 | @project = Project.find(PRJ_ID) |
|
33 | @project = Project.find(PRJ_ID) | |
34 | @repository = Repository::Filesystem.create( |
|
34 | @repository = Repository::Filesystem.create( | |
35 | :project => @project, |
|
35 | :project => @project, | |
36 | :url => REPOSITORY_PATH, |
|
36 | :url => REPOSITORY_PATH, | |
37 | :path_encoding => '' |
|
37 | :path_encoding => '' | |
38 | ) |
|
38 | ) | |
39 | assert @repository |
|
39 | assert @repository | |
40 | end |
|
40 | end | |
41 |
|
41 | |||
42 | if File.directory?(REPOSITORY_PATH) |
|
42 | if File.directory?(REPOSITORY_PATH) | |
43 | def test_get_new |
|
43 | def test_get_new | |
44 | @request.session[:user_id] = 1 |
|
44 | @request.session[:user_id] = 1 | |
45 | @project.repository.destroy |
|
45 | @project.repository.destroy | |
46 | get :new, :project_id => 'subproject1', :repository_scm => 'Filesystem' |
|
46 | get :new, :project_id => 'subproject1', :repository_scm => 'Filesystem' | |
47 | assert_response :success |
|
47 | assert_response :success | |
48 | assert_template 'new' |
|
48 | assert_template 'new' | |
49 | assert_kind_of Repository::Filesystem, assigns(:repository) |
|
49 | assert_kind_of Repository::Filesystem, assigns(:repository) | |
50 | assert assigns(:repository).new_record? |
|
50 | assert assigns(:repository).new_record? | |
51 | end |
|
51 | end | |
52 |
|
52 | |||
53 | def test_browse_root |
|
53 | def test_browse_root | |
54 | @repository.fetch_changesets |
|
54 | @repository.fetch_changesets | |
55 | @repository.reload |
|
55 | @repository.reload | |
56 | get :show, :id => PRJ_ID |
|
56 | get :show, :id => PRJ_ID | |
57 | assert_response :success |
|
57 | assert_response :success | |
58 | assert_template 'show' |
|
58 | assert_template 'show' | |
59 | assert_not_nil assigns(:entries) |
|
59 | assert_not_nil assigns(:entries) | |
60 | assert assigns(:entries).size > 0 |
|
60 | assert assigns(:entries).size > 0 | |
61 | assert_not_nil assigns(:changesets) |
|
61 | assert_not_nil assigns(:changesets) | |
62 | assert assigns(:changesets).size == 0 |
|
62 | assert assigns(:changesets).size == 0 | |
63 |
|
63 | |||
64 | assert_select 'input[name=rev]', 0 |
|
64 | assert_select 'input[name=rev]', 0 | |
65 | assert_select 'a', :text => 'Statistics', :count => 0 |
|
65 | assert_select 'a', :text => 'Statistics', :count => 0 | |
66 | assert_select 'a', :text => 'Atom', :count => 0 |
|
66 | assert_select 'a', :text => 'Atom', :count => 0 | |
67 | end |
|
67 | end | |
68 |
|
68 | |||
69 | def test_show_no_extension |
|
69 | def test_show_no_extension | |
70 | get :entry, :id => PRJ_ID, :path => repository_path_hash(['test'])[:param] |
|
70 | get :entry, :id => PRJ_ID, :path => repository_path_hash(['test'])[:param] | |
71 | assert_response :success |
|
71 | assert_response :success | |
72 | assert_template 'entry' |
|
72 | assert_template 'entry' | |
73 | assert_select 'tr#L1 td.line-code', :text => /TEST CAT/ |
|
73 | assert_select 'tr#L1 td.line-code', :text => /TEST CAT/ | |
74 | end |
|
74 | end | |
75 |
|
75 | |||
76 | def test_entry_download_no_extension |
|
76 | def test_entry_download_no_extension | |
77 | get :raw, :id => PRJ_ID, :path => repository_path_hash(['test'])[:param] |
|
77 | get :raw, :id => PRJ_ID, :path => repository_path_hash(['test'])[:param] | |
78 | assert_response :success |
|
78 | assert_response :success | |
79 | assert_equal 'application/octet-stream', @response.content_type |
|
79 | assert_equal 'application/octet-stream', @response.content_type | |
80 | end |
|
80 | end | |
81 |
|
81 | |||
82 | def test_show_non_ascii_contents |
|
82 | def test_show_non_ascii_contents | |
83 | with_settings :repositories_encodings => 'UTF-8,EUC-JP' do |
|
83 | with_settings :repositories_encodings => 'UTF-8,EUC-JP' do | |
84 | get :entry, :id => PRJ_ID, |
|
84 | get :entry, :id => PRJ_ID, | |
85 | :path => repository_path_hash(['japanese', 'euc-jp.txt'])[:param] |
|
85 | :path => repository_path_hash(['japanese', 'euc-jp.txt'])[:param] | |
86 | assert_response :success |
|
86 | assert_response :success | |
87 | assert_template 'entry' |
|
87 | assert_template 'entry' | |
88 | assert_select 'tr#L2 td.line-code', :text => /japanese/ |
|
88 | assert_select 'tr#L2 td.line-code', :text => /japanese/ | |
89 | if @ruby19_non_utf8_pass |
|
89 | if @ruby19_non_utf8_pass | |
90 | puts "TODO: show repository file contents test fails " + |
|
90 | puts "TODO: show repository file contents test fails " + | |
91 | "when Encoding.default_external is not UTF-8. " + |
|
91 | "when Encoding.default_external is not UTF-8. " + | |
92 | "Current value is '#{Encoding.default_external.to_s}'" |
|
92 | "Current value is '#{Encoding.default_external.to_s}'" | |
93 | else |
|
93 | else | |
94 | str_japanese = "\xe6\x97\xa5\xe6\x9c\xac\xe8\xaa\x9e".force_encoding('UTF-8') |
|
94 | str_japanese = "\xe6\x97\xa5\xe6\x9c\xac\xe8\xaa\x9e".force_encoding('UTF-8') | |
95 | assert_select 'tr#L3 td.line-code', :text => /#{str_japanese}/ |
|
95 | assert_select 'tr#L3 td.line-code', :text => /#{str_japanese}/ | |
96 | end |
|
96 | end | |
97 | end |
|
97 | end | |
98 | end |
|
98 | end | |
99 |
|
99 | |||
100 | def test_show_utf16 |
|
100 | def test_show_utf16 | |
101 | enc = 'UTF-16' |
|
101 | enc = 'UTF-16' | |
102 | with_settings :repositories_encodings => enc do |
|
102 | with_settings :repositories_encodings => enc do | |
103 | get :entry, :id => PRJ_ID, |
|
103 | get :entry, :id => PRJ_ID, | |
104 | :path => repository_path_hash(['japanese', 'utf-16.txt'])[:param] |
|
104 | :path => repository_path_hash(['japanese', 'utf-16.txt'])[:param] | |
105 | assert_response :success |
|
105 | assert_response :success | |
106 | assert_select 'tr#L2 td.line-code', :text => /japanese/ |
|
106 | assert_select 'tr#L2 td.line-code', :text => /japanese/ | |
107 | end |
|
107 | end | |
108 | end |
|
108 | end | |
109 |
|
109 | |||
110 |
def test_show_text_file_should_s |
|
110 | def test_show_text_file_should_show_other_if_too_big | |
111 | with_settings :file_max_size_displayed => 1 do |
|
111 | with_settings :file_max_size_displayed => 1 do | |
112 | get :entry, :id => PRJ_ID, |
|
112 | get :entry, :id => PRJ_ID, | |
113 | :path => repository_path_hash(['japanese', 'big-file.txt'])[:param] |
|
113 | :path => repository_path_hash(['japanese', 'big-file.txt'])[:param] | |
114 | assert_response :success |
|
114 | assert_response :success | |
115 |
assert_equal 'text/ |
|
115 | assert_equal 'text/html', @response.content_type | |
|
116 | assert_select 'p.nodata' | |||
116 | end |
|
117 | end | |
117 | end |
|
118 | end | |
118 |
|
119 | |||
119 | def test_destroy_valid_repository |
|
120 | def test_destroy_valid_repository | |
120 | @request.session[:user_id] = 1 # admin |
|
121 | @request.session[:user_id] = 1 # admin | |
121 |
|
122 | |||
122 | assert_difference 'Repository.count', -1 do |
|
123 | assert_difference 'Repository.count', -1 do | |
123 | delete :destroy, :id => @repository.id |
|
124 | delete :destroy, :id => @repository.id | |
124 | end |
|
125 | end | |
125 | assert_response 302 |
|
126 | assert_response 302 | |
126 | @project.reload |
|
127 | @project.reload | |
127 | assert_nil @project.repository |
|
128 | assert_nil @project.repository | |
128 | end |
|
129 | end | |
129 |
|
130 | |||
130 | def test_destroy_invalid_repository |
|
131 | def test_destroy_invalid_repository | |
131 | @request.session[:user_id] = 1 # admin |
|
132 | @request.session[:user_id] = 1 # admin | |
132 | @project.repository.destroy |
|
133 | @project.repository.destroy | |
133 | @repository = Repository::Filesystem.create!( |
|
134 | @repository = Repository::Filesystem.create!( | |
134 | :project => @project, |
|
135 | :project => @project, | |
135 | :url => "/invalid", |
|
136 | :url => "/invalid", | |
136 | :path_encoding => '' |
|
137 | :path_encoding => '' | |
137 | ) |
|
138 | ) | |
138 |
|
139 | |||
139 | assert_difference 'Repository.count', -1 do |
|
140 | assert_difference 'Repository.count', -1 do | |
140 | delete :destroy, :id => @repository.id |
|
141 | delete :destroy, :id => @repository.id | |
141 | end |
|
142 | end | |
142 | assert_response 302 |
|
143 | assert_response 302 | |
143 | @project.reload |
|
144 | @project.reload | |
144 | assert_nil @project.repository |
|
145 | assert_nil @project.repository | |
145 | end |
|
146 | end | |
146 | else |
|
147 | else | |
147 | puts "Filesystem test repository NOT FOUND. Skipping functional tests !!!" |
|
148 | puts "Filesystem test repository NOT FOUND. Skipping functional tests !!!" | |
148 | def test_fake; assert true end |
|
149 | def test_fake; assert true end | |
149 | end |
|
150 | end | |
150 | end |
|
151 | end |
@@ -1,421 +1,421 | |||||
1 | # Redmine - project management software |
|
1 | # Redmine - project management software | |
2 | # Copyright (C) 2006-2016 Jean-Philippe Lang |
|
2 | # Copyright (C) 2006-2016 Jean-Philippe Lang | |
3 | # |
|
3 | # | |
4 | # This program is free software; you can redistribute it and/or |
|
4 | # This program is free software; you can redistribute it and/or | |
5 | # modify it under the terms of the GNU General Public License |
|
5 | # modify it under the terms of the GNU General Public License | |
6 | # as published by the Free Software Foundation; either version 2 |
|
6 | # as published by the Free Software Foundation; either version 2 | |
7 | # of the License, or (at your option) any later version. |
|
7 | # of the License, or (at your option) any later version. | |
8 | # |
|
8 | # | |
9 | # This program is distributed in the hope that it will be useful, |
|
9 | # This program is distributed in the hope that it will be useful, | |
10 | # but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
10 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
12 | # GNU General Public License for more details. |
|
12 | # GNU General Public License for more details. | |
13 | # |
|
13 | # | |
14 | # You should have received a copy of the GNU General Public License |
|
14 | # You should have received a copy of the GNU General Public License | |
15 | # along with this program; if not, write to the Free Software |
|
15 | # along with this program; if not, write to the Free Software | |
16 | # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. |
|
16 | # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. | |
17 |
|
17 | |||
18 | require File.expand_path('../../test_helper', __FILE__) |
|
18 | require File.expand_path('../../test_helper', __FILE__) | |
19 |
|
19 | |||
20 | class RepositoriesSubversionControllerTest < ActionController::TestCase |
|
20 | class RepositoriesSubversionControllerTest < ActionController::TestCase | |
21 | tests RepositoriesController |
|
21 | tests RepositoriesController | |
22 |
|
22 | |||
23 | fixtures :projects, :users, :email_addresses, :roles, :members, :member_roles, :enabled_modules, |
|
23 | fixtures :projects, :users, :email_addresses, :roles, :members, :member_roles, :enabled_modules, | |
24 | :repositories, :issues, :issue_statuses, :changesets, :changes, |
|
24 | :repositories, :issues, :issue_statuses, :changesets, :changes, | |
25 | :issue_categories, :enumerations, :custom_fields, :custom_values, :trackers |
|
25 | :issue_categories, :enumerations, :custom_fields, :custom_values, :trackers | |
26 |
|
26 | |||
27 | PRJ_ID = 3 |
|
27 | PRJ_ID = 3 | |
28 | NUM_REV = 11 |
|
28 | NUM_REV = 11 | |
29 |
|
29 | |||
30 | def setup |
|
30 | def setup | |
31 | Setting.default_language = 'en' |
|
31 | Setting.default_language = 'en' | |
32 | User.current = nil |
|
32 | User.current = nil | |
33 |
|
33 | |||
34 | @project = Project.find(PRJ_ID) |
|
34 | @project = Project.find(PRJ_ID) | |
35 | @repository = Repository::Subversion.create(:project => @project, |
|
35 | @repository = Repository::Subversion.create(:project => @project, | |
36 | :url => self.class.subversion_repository_url) |
|
36 | :url => self.class.subversion_repository_url) | |
37 | assert @repository |
|
37 | assert @repository | |
38 | end |
|
38 | end | |
39 |
|
39 | |||
40 | if repository_configured?('subversion') |
|
40 | if repository_configured?('subversion') | |
41 | def test_new |
|
41 | def test_new | |
42 | @request.session[:user_id] = 1 |
|
42 | @request.session[:user_id] = 1 | |
43 | @project.repository.destroy |
|
43 | @project.repository.destroy | |
44 | get :new, :project_id => 'subproject1', :repository_scm => 'Subversion' |
|
44 | get :new, :project_id => 'subproject1', :repository_scm => 'Subversion' | |
45 | assert_response :success |
|
45 | assert_response :success | |
46 | assert_template 'new' |
|
46 | assert_template 'new' | |
47 | assert_kind_of Repository::Subversion, assigns(:repository) |
|
47 | assert_kind_of Repository::Subversion, assigns(:repository) | |
48 | assert assigns(:repository).new_record? |
|
48 | assert assigns(:repository).new_record? | |
49 | end |
|
49 | end | |
50 |
|
50 | |||
51 | def test_show |
|
51 | def test_show | |
52 | assert_equal 0, @repository.changesets.count |
|
52 | assert_equal 0, @repository.changesets.count | |
53 | @repository.fetch_changesets |
|
53 | @repository.fetch_changesets | |
54 | @project.reload |
|
54 | @project.reload | |
55 | assert_equal NUM_REV, @repository.changesets.count |
|
55 | assert_equal NUM_REV, @repository.changesets.count | |
56 | get :show, :id => PRJ_ID |
|
56 | get :show, :id => PRJ_ID | |
57 | assert_response :success |
|
57 | assert_response :success | |
58 | assert_template 'show' |
|
58 | assert_template 'show' | |
59 | assert_not_nil assigns(:entries) |
|
59 | assert_not_nil assigns(:entries) | |
60 | assert_not_nil assigns(:changesets) |
|
60 | assert_not_nil assigns(:changesets) | |
61 |
|
61 | |||
62 | entry = assigns(:entries).detect {|e| e.name == 'subversion_test'} |
|
62 | entry = assigns(:entries).detect {|e| e.name == 'subversion_test'} | |
63 | assert_not_nil entry |
|
63 | assert_not_nil entry | |
64 | assert_equal 'dir', entry.kind |
|
64 | assert_equal 'dir', entry.kind | |
65 | assert_select 'tr.dir a[href="/projects/subproject1/repository/show/subversion_test"]' |
|
65 | assert_select 'tr.dir a[href="/projects/subproject1/repository/show/subversion_test"]' | |
66 |
|
66 | |||
67 | assert_select 'input[name=rev]' |
|
67 | assert_select 'input[name=rev]' | |
68 | assert_select 'a', :text => 'Statistics' |
|
68 | assert_select 'a', :text => 'Statistics' | |
69 | assert_select 'a', :text => 'Atom' |
|
69 | assert_select 'a', :text => 'Atom' | |
70 | assert_select 'a[href=?]', '/projects/subproject1/repository', :text => 'root' |
|
70 | assert_select 'a[href=?]', '/projects/subproject1/repository', :text => 'root' | |
71 | end |
|
71 | end | |
72 |
|
72 | |||
73 | def test_show_non_default |
|
73 | def test_show_non_default | |
74 | Repository::Subversion.create(:project => @project, |
|
74 | Repository::Subversion.create(:project => @project, | |
75 | :url => self.class.subversion_repository_url, |
|
75 | :url => self.class.subversion_repository_url, | |
76 | :is_default => false, :identifier => 'svn') |
|
76 | :is_default => false, :identifier => 'svn') | |
77 |
|
77 | |||
78 | get :show, :id => PRJ_ID, :repository_id => 'svn' |
|
78 | get :show, :id => PRJ_ID, :repository_id => 'svn' | |
79 | assert_response :success |
|
79 | assert_response :success | |
80 | assert_template 'show' |
|
80 | assert_template 'show' | |
81 | assert_select 'tr.dir a[href="/projects/subproject1/repository/svn/show/subversion_test"]' |
|
81 | assert_select 'tr.dir a[href="/projects/subproject1/repository/svn/show/subversion_test"]' | |
82 | # Repository menu should link to the main repo |
|
82 | # Repository menu should link to the main repo | |
83 | assert_select '#main-menu a[href="/projects/subproject1/repository"]' |
|
83 | assert_select '#main-menu a[href="/projects/subproject1/repository"]' | |
84 | end |
|
84 | end | |
85 |
|
85 | |||
86 | def test_browse_directory |
|
86 | def test_browse_directory | |
87 | assert_equal 0, @repository.changesets.count |
|
87 | assert_equal 0, @repository.changesets.count | |
88 | @repository.fetch_changesets |
|
88 | @repository.fetch_changesets | |
89 | @project.reload |
|
89 | @project.reload | |
90 | assert_equal NUM_REV, @repository.changesets.count |
|
90 | assert_equal NUM_REV, @repository.changesets.count | |
91 | get :show, :id => PRJ_ID, :path => repository_path_hash(['subversion_test'])[:param] |
|
91 | get :show, :id => PRJ_ID, :path => repository_path_hash(['subversion_test'])[:param] | |
92 | assert_response :success |
|
92 | assert_response :success | |
93 | assert_template 'show' |
|
93 | assert_template 'show' | |
94 | assert_not_nil assigns(:entries) |
|
94 | assert_not_nil assigns(:entries) | |
95 | assert_equal [ |
|
95 | assert_equal [ | |
96 | '[folder_with_brackets]', 'folder', '.project', |
|
96 | '[folder_with_brackets]', 'folder', '.project', | |
97 | 'helloworld.c', 'textfile.txt' |
|
97 | 'helloworld.c', 'textfile.txt' | |
98 | ], |
|
98 | ], | |
99 | assigns(:entries).collect(&:name) |
|
99 | assigns(:entries).collect(&:name) | |
100 | entry = assigns(:entries).detect {|e| e.name == 'helloworld.c'} |
|
100 | entry = assigns(:entries).detect {|e| e.name == 'helloworld.c'} | |
101 | assert_equal 'file', entry.kind |
|
101 | assert_equal 'file', entry.kind | |
102 | assert_equal 'subversion_test/helloworld.c', entry.path |
|
102 | assert_equal 'subversion_test/helloworld.c', entry.path | |
103 | assert_select 'a.text-x-c', :text => 'helloworld.c' |
|
103 | assert_select 'a.text-x-c', :text => 'helloworld.c' | |
104 | end |
|
104 | end | |
105 |
|
105 | |||
106 | def test_browse_at_given_revision |
|
106 | def test_browse_at_given_revision | |
107 | assert_equal 0, @repository.changesets.count |
|
107 | assert_equal 0, @repository.changesets.count | |
108 | @repository.fetch_changesets |
|
108 | @repository.fetch_changesets | |
109 | @project.reload |
|
109 | @project.reload | |
110 | assert_equal NUM_REV, @repository.changesets.count |
|
110 | assert_equal NUM_REV, @repository.changesets.count | |
111 | get :show, :id => PRJ_ID, :path => repository_path_hash(['subversion_test'])[:param], |
|
111 | get :show, :id => PRJ_ID, :path => repository_path_hash(['subversion_test'])[:param], | |
112 | :rev => 4 |
|
112 | :rev => 4 | |
113 | assert_response :success |
|
113 | assert_response :success | |
114 | assert_template 'show' |
|
114 | assert_template 'show' | |
115 | assert_not_nil assigns(:entries) |
|
115 | assert_not_nil assigns(:entries) | |
116 | assert_equal ['folder', '.project', 'helloworld.c', 'helloworld.rb', 'textfile.txt'], |
|
116 | assert_equal ['folder', '.project', 'helloworld.c', 'helloworld.rb', 'textfile.txt'], | |
117 | assigns(:entries).collect(&:name) |
|
117 | assigns(:entries).collect(&:name) | |
118 | end |
|
118 | end | |
119 |
|
119 | |||
120 | def test_file_changes |
|
120 | def test_file_changes | |
121 | assert_equal 0, @repository.changesets.count |
|
121 | assert_equal 0, @repository.changesets.count | |
122 | @repository.fetch_changesets |
|
122 | @repository.fetch_changesets | |
123 | @project.reload |
|
123 | @project.reload | |
124 | assert_equal NUM_REV, @repository.changesets.count |
|
124 | assert_equal NUM_REV, @repository.changesets.count | |
125 | get :changes, :id => PRJ_ID, |
|
125 | get :changes, :id => PRJ_ID, | |
126 | :path => repository_path_hash(['subversion_test', 'folder', 'helloworld.rb'])[:param] |
|
126 | :path => repository_path_hash(['subversion_test', 'folder', 'helloworld.rb'])[:param] | |
127 | assert_response :success |
|
127 | assert_response :success | |
128 | assert_template 'changes' |
|
128 | assert_template 'changes' | |
129 |
|
129 | |||
130 | changesets = assigns(:changesets) |
|
130 | changesets = assigns(:changesets) | |
131 | assert_not_nil changesets |
|
131 | assert_not_nil changesets | |
132 | assert_equal %w(6 3 2), changesets.collect(&:revision) |
|
132 | assert_equal %w(6 3 2), changesets.collect(&:revision) | |
133 |
|
133 | |||
134 | # svn properties displayed with svn >= 1.5 only |
|
134 | # svn properties displayed with svn >= 1.5 only | |
135 | if Redmine::Scm::Adapters::SubversionAdapter.client_version_above?([1, 5, 0]) |
|
135 | if Redmine::Scm::Adapters::SubversionAdapter.client_version_above?([1, 5, 0]) | |
136 | assert_not_nil assigns(:properties) |
|
136 | assert_not_nil assigns(:properties) | |
137 | assert_equal 'native', assigns(:properties)['svn:eol-style'] |
|
137 | assert_equal 'native', assigns(:properties)['svn:eol-style'] | |
138 | assert_select 'ul li' do |
|
138 | assert_select 'ul li' do | |
139 | assert_select 'b', :text => 'svn:eol-style' |
|
139 | assert_select 'b', :text => 'svn:eol-style' | |
140 | assert_select 'span', :text => 'native' |
|
140 | assert_select 'span', :text => 'native' | |
141 | end |
|
141 | end | |
142 | end |
|
142 | end | |
143 | end |
|
143 | end | |
144 |
|
144 | |||
145 | def test_directory_changes |
|
145 | def test_directory_changes | |
146 | assert_equal 0, @repository.changesets.count |
|
146 | assert_equal 0, @repository.changesets.count | |
147 | @repository.fetch_changesets |
|
147 | @repository.fetch_changesets | |
148 | @project.reload |
|
148 | @project.reload | |
149 | assert_equal NUM_REV, @repository.changesets.count |
|
149 | assert_equal NUM_REV, @repository.changesets.count | |
150 | get :changes, :id => PRJ_ID, |
|
150 | get :changes, :id => PRJ_ID, | |
151 | :path => repository_path_hash(['subversion_test', 'folder'])[:param] |
|
151 | :path => repository_path_hash(['subversion_test', 'folder'])[:param] | |
152 | assert_response :success |
|
152 | assert_response :success | |
153 | assert_template 'changes' |
|
153 | assert_template 'changes' | |
154 |
|
154 | |||
155 | changesets = assigns(:changesets) |
|
155 | changesets = assigns(:changesets) | |
156 | assert_not_nil changesets |
|
156 | assert_not_nil changesets | |
157 | assert_equal %w(10 9 7 6 5 2), changesets.collect(&:revision) |
|
157 | assert_equal %w(10 9 7 6 5 2), changesets.collect(&:revision) | |
158 | end |
|
158 | end | |
159 |
|
159 | |||
160 | def test_entry |
|
160 | def test_entry | |
161 | assert_equal 0, @repository.changesets.count |
|
161 | assert_equal 0, @repository.changesets.count | |
162 | @repository.fetch_changesets |
|
162 | @repository.fetch_changesets | |
163 | @project.reload |
|
163 | @project.reload | |
164 | assert_equal NUM_REV, @repository.changesets.count |
|
164 | assert_equal NUM_REV, @repository.changesets.count | |
165 | get :entry, :id => PRJ_ID, |
|
165 | get :entry, :id => PRJ_ID, | |
166 | :path => repository_path_hash(['subversion_test', 'helloworld.c'])[:param] |
|
166 | :path => repository_path_hash(['subversion_test', 'helloworld.c'])[:param] | |
167 | assert_response :success |
|
167 | assert_response :success | |
168 | assert_template 'entry' |
|
168 | assert_template 'entry' | |
169 | end |
|
169 | end | |
170 |
|
170 | |||
171 |
def test_entry_should_s |
|
171 | def test_entry_should_show_other_if_too_big | |
172 | assert_equal 0, @repository.changesets.count |
|
172 | assert_equal 0, @repository.changesets.count | |
173 | @repository.fetch_changesets |
|
173 | @repository.fetch_changesets | |
174 | @project.reload |
|
174 | @project.reload | |
175 | assert_equal NUM_REV, @repository.changesets.count |
|
175 | assert_equal NUM_REV, @repository.changesets.count | |
176 | # no files in the test repo is larger than 1KB... |
|
176 | # no files in the test repo is larger than 1KB... | |
177 | with_settings :file_max_size_displayed => 0 do |
|
177 | with_settings :file_max_size_displayed => 0 do | |
178 | get :entry, :id => PRJ_ID, |
|
178 | get :entry, :id => PRJ_ID, | |
179 | :path => repository_path_hash(['subversion_test', 'helloworld.c'])[:param] |
|
179 | :path => repository_path_hash(['subversion_test', 'helloworld.c'])[:param] | |
180 | assert_response :success |
|
180 | assert_response :success | |
181 | assert_equal 'attachment; filename="helloworld.c"', |
|
181 | assert_equal 'text/html', @response.content_type | |
182 | @response.headers['Content-Disposition'] |
|
182 | assert_select 'p.nodata' | |
183 | end |
|
183 | end | |
184 | end |
|
184 | end | |
185 |
|
185 | |||
186 | def test_entry_should_display_images |
|
186 | def test_entry_should_display_images | |
187 | get :entry, :id => PRJ_ID, |
|
187 | get :entry, :id => PRJ_ID, | |
188 | :path => repository_path_hash(['subversion_test', 'folder', 'subfolder', 'rubylogo.gif'])[:param] |
|
188 | :path => repository_path_hash(['subversion_test', 'folder', 'subfolder', 'rubylogo.gif'])[:param] | |
189 | assert_response :success |
|
189 | assert_response :success | |
190 | assert_template 'entry' |
|
190 | assert_template 'entry' | |
191 | end |
|
191 | end | |
192 |
|
192 | |||
193 | def test_entry_at_given_revision |
|
193 | def test_entry_at_given_revision | |
194 | assert_equal 0, @repository.changesets.count |
|
194 | assert_equal 0, @repository.changesets.count | |
195 | @repository.fetch_changesets |
|
195 | @repository.fetch_changesets | |
196 | @project.reload |
|
196 | @project.reload | |
197 | assert_equal NUM_REV, @repository.changesets.count |
|
197 | assert_equal NUM_REV, @repository.changesets.count | |
198 | get :entry, :id => PRJ_ID, |
|
198 | get :entry, :id => PRJ_ID, | |
199 | :path => repository_path_hash(['subversion_test', 'helloworld.rb'])[:param], |
|
199 | :path => repository_path_hash(['subversion_test', 'helloworld.rb'])[:param], | |
200 | :rev => 2 |
|
200 | :rev => 2 | |
201 | assert_response :success |
|
201 | assert_response :success | |
202 | assert_template 'entry' |
|
202 | assert_template 'entry' | |
203 | # this line was removed in r3 and file was moved in r6 |
|
203 | # this line was removed in r3 and file was moved in r6 | |
204 | assert_select 'td.line-code', :text => /Here's the code/ |
|
204 | assert_select 'td.line-code', :text => /Here's the code/ | |
205 | end |
|
205 | end | |
206 |
|
206 | |||
207 | def test_entry_not_found |
|
207 | def test_entry_not_found | |
208 | assert_equal 0, @repository.changesets.count |
|
208 | assert_equal 0, @repository.changesets.count | |
209 | @repository.fetch_changesets |
|
209 | @repository.fetch_changesets | |
210 | @project.reload |
|
210 | @project.reload | |
211 | assert_equal NUM_REV, @repository.changesets.count |
|
211 | assert_equal NUM_REV, @repository.changesets.count | |
212 | get :entry, :id => PRJ_ID, |
|
212 | get :entry, :id => PRJ_ID, | |
213 | :path => repository_path_hash(['subversion_test', 'zzz.c'])[:param] |
|
213 | :path => repository_path_hash(['subversion_test', 'zzz.c'])[:param] | |
214 | assert_select 'p#errorExplanation', :text => /The entry or revision was not found in the repository/ |
|
214 | assert_select 'p#errorExplanation', :text => /The entry or revision was not found in the repository/ | |
215 | end |
|
215 | end | |
216 |
|
216 | |||
217 | def test_entry_download |
|
217 | def test_entry_download | |
218 | assert_equal 0, @repository.changesets.count |
|
218 | assert_equal 0, @repository.changesets.count | |
219 | @repository.fetch_changesets |
|
219 | @repository.fetch_changesets | |
220 | @project.reload |
|
220 | @project.reload | |
221 | assert_equal NUM_REV, @repository.changesets.count |
|
221 | assert_equal NUM_REV, @repository.changesets.count | |
222 | get :raw, :id => PRJ_ID, |
|
222 | get :raw, :id => PRJ_ID, | |
223 | :path => repository_path_hash(['subversion_test', 'helloworld.c'])[:param] |
|
223 | :path => repository_path_hash(['subversion_test', 'helloworld.c'])[:param] | |
224 | assert_response :success |
|
224 | assert_response :success | |
225 | assert_equal 'attachment; filename="helloworld.c"', @response.headers['Content-Disposition'] |
|
225 | assert_equal 'attachment; filename="helloworld.c"', @response.headers['Content-Disposition'] | |
226 | end |
|
226 | end | |
227 |
|
227 | |||
228 | def test_directory_entry |
|
228 | def test_directory_entry | |
229 | assert_equal 0, @repository.changesets.count |
|
229 | assert_equal 0, @repository.changesets.count | |
230 | @repository.fetch_changesets |
|
230 | @repository.fetch_changesets | |
231 | @project.reload |
|
231 | @project.reload | |
232 | assert_equal NUM_REV, @repository.changesets.count |
|
232 | assert_equal NUM_REV, @repository.changesets.count | |
233 | get :entry, :id => PRJ_ID, |
|
233 | get :entry, :id => PRJ_ID, | |
234 | :path => repository_path_hash(['subversion_test', 'folder'])[:param] |
|
234 | :path => repository_path_hash(['subversion_test', 'folder'])[:param] | |
235 | assert_response :success |
|
235 | assert_response :success | |
236 | assert_template 'show' |
|
236 | assert_template 'show' | |
237 | assert_not_nil assigns(:entry) |
|
237 | assert_not_nil assigns(:entry) | |
238 | assert_equal 'folder', assigns(:entry).name |
|
238 | assert_equal 'folder', assigns(:entry).name | |
239 | end |
|
239 | end | |
240 |
|
240 | |||
241 | # TODO: this test needs fixtures. |
|
241 | # TODO: this test needs fixtures. | |
242 | def test_revision |
|
242 | def test_revision | |
243 | get :revision, :id => 1, :rev => 2 |
|
243 | get :revision, :id => 1, :rev => 2 | |
244 | assert_response :success |
|
244 | assert_response :success | |
245 | assert_template 'revision' |
|
245 | assert_template 'revision' | |
246 |
|
246 | |||
247 | assert_select 'ul' do |
|
247 | assert_select 'ul' do | |
248 | assert_select 'li' do |
|
248 | assert_select 'li' do | |
249 | # link to the entry at rev 2 |
|
249 | # link to the entry at rev 2 | |
250 | assert_select 'a[href=?]', '/projects/ecookbook/repository/revisions/2/entry/test/some/path/in/the/repo', :text => 'repo' |
|
250 | assert_select 'a[href=?]', '/projects/ecookbook/repository/revisions/2/entry/test/some/path/in/the/repo', :text => 'repo' | |
251 | # link to partial diff |
|
251 | # link to partial diff | |
252 | assert_select 'a[href=?]', '/projects/ecookbook/repository/revisions/2/diff/test/some/path/in/the/repo' |
|
252 | assert_select 'a[href=?]', '/projects/ecookbook/repository/revisions/2/diff/test/some/path/in/the/repo' | |
253 | end |
|
253 | end | |
254 | end |
|
254 | end | |
255 | end |
|
255 | end | |
256 |
|
256 | |||
257 | def test_invalid_revision |
|
257 | def test_invalid_revision | |
258 | assert_equal 0, @repository.changesets.count |
|
258 | assert_equal 0, @repository.changesets.count | |
259 | @repository.fetch_changesets |
|
259 | @repository.fetch_changesets | |
260 | @project.reload |
|
260 | @project.reload | |
261 | assert_equal NUM_REV, @repository.changesets.count |
|
261 | assert_equal NUM_REV, @repository.changesets.count | |
262 | get :revision, :id => PRJ_ID, :rev => 'something_weird' |
|
262 | get :revision, :id => PRJ_ID, :rev => 'something_weird' | |
263 | assert_response 404 |
|
263 | assert_response 404 | |
264 | assert_select_error /was not found/ |
|
264 | assert_select_error /was not found/ | |
265 | end |
|
265 | end | |
266 |
|
266 | |||
267 | def test_invalid_revision_diff |
|
267 | def test_invalid_revision_diff | |
268 | get :diff, :id => PRJ_ID, :rev => '1', :rev_to => 'something_weird' |
|
268 | get :diff, :id => PRJ_ID, :rev => '1', :rev_to => 'something_weird' | |
269 | assert_response 404 |
|
269 | assert_response 404 | |
270 | assert_select_error /was not found/ |
|
270 | assert_select_error /was not found/ | |
271 | end |
|
271 | end | |
272 |
|
272 | |||
273 | def test_empty_revision |
|
273 | def test_empty_revision | |
274 | assert_equal 0, @repository.changesets.count |
|
274 | assert_equal 0, @repository.changesets.count | |
275 | @repository.fetch_changesets |
|
275 | @repository.fetch_changesets | |
276 | @project.reload |
|
276 | @project.reload | |
277 | assert_equal NUM_REV, @repository.changesets.count |
|
277 | assert_equal NUM_REV, @repository.changesets.count | |
278 | ['', ' ', nil].each do |r| |
|
278 | ['', ' ', nil].each do |r| | |
279 | get :revision, :id => PRJ_ID, :rev => r |
|
279 | get :revision, :id => PRJ_ID, :rev => r | |
280 | assert_response 404 |
|
280 | assert_response 404 | |
281 | assert_select_error /was not found/ |
|
281 | assert_select_error /was not found/ | |
282 | end |
|
282 | end | |
283 | end |
|
283 | end | |
284 |
|
284 | |||
285 | # TODO: this test needs fixtures. |
|
285 | # TODO: this test needs fixtures. | |
286 | def test_revision_with_repository_pointing_to_a_subdirectory |
|
286 | def test_revision_with_repository_pointing_to_a_subdirectory | |
287 | r = Project.find(1).repository |
|
287 | r = Project.find(1).repository | |
288 | # Changes repository url to a subdirectory |
|
288 | # Changes repository url to a subdirectory | |
289 | r.update_attribute :url, (r.url + '/test/some') |
|
289 | r.update_attribute :url, (r.url + '/test/some') | |
290 |
|
290 | |||
291 | get :revision, :id => 1, :rev => 2 |
|
291 | get :revision, :id => 1, :rev => 2 | |
292 | assert_response :success |
|
292 | assert_response :success | |
293 | assert_template 'revision' |
|
293 | assert_template 'revision' | |
294 |
|
294 | |||
295 | assert_select 'ul' do |
|
295 | assert_select 'ul' do | |
296 | assert_select 'li' do |
|
296 | assert_select 'li' do | |
297 | # link to the entry at rev 2 |
|
297 | # link to the entry at rev 2 | |
298 | assert_select 'a[href=?]', '/projects/ecookbook/repository/revisions/2/entry/path/in/the/repo', :text => 'repo' |
|
298 | assert_select 'a[href=?]', '/projects/ecookbook/repository/revisions/2/entry/path/in/the/repo', :text => 'repo' | |
299 | # link to partial diff |
|
299 | # link to partial diff | |
300 | assert_select 'a[href=?]', '/projects/ecookbook/repository/revisions/2/diff/path/in/the/repo' |
|
300 | assert_select 'a[href=?]', '/projects/ecookbook/repository/revisions/2/diff/path/in/the/repo' | |
301 | end |
|
301 | end | |
302 | end |
|
302 | end | |
303 | end |
|
303 | end | |
304 |
|
304 | |||
305 | def test_revision_diff |
|
305 | def test_revision_diff | |
306 | assert_equal 0, @repository.changesets.count |
|
306 | assert_equal 0, @repository.changesets.count | |
307 | @repository.fetch_changesets |
|
307 | @repository.fetch_changesets | |
308 | @project.reload |
|
308 | @project.reload | |
309 | assert_equal NUM_REV, @repository.changesets.count |
|
309 | assert_equal NUM_REV, @repository.changesets.count | |
310 | ['inline', 'sbs'].each do |dt| |
|
310 | ['inline', 'sbs'].each do |dt| | |
311 | get :diff, :id => PRJ_ID, :rev => 3, :type => dt |
|
311 | get :diff, :id => PRJ_ID, :rev => 3, :type => dt | |
312 | assert_response :success |
|
312 | assert_response :success | |
313 | assert_template 'diff' |
|
313 | assert_template 'diff' | |
314 | assert_select 'h2', :text => /Revision 3/ |
|
314 | assert_select 'h2', :text => /Revision 3/ | |
315 | assert_select 'th.filename', :text => 'subversion_test/textfile.txt' |
|
315 | assert_select 'th.filename', :text => 'subversion_test/textfile.txt' | |
316 | end |
|
316 | end | |
317 | end |
|
317 | end | |
318 |
|
318 | |||
319 | def test_revision_diff_raw_format |
|
319 | def test_revision_diff_raw_format | |
320 | assert_equal 0, @repository.changesets.count |
|
320 | assert_equal 0, @repository.changesets.count | |
321 | @repository.fetch_changesets |
|
321 | @repository.fetch_changesets | |
322 | @project.reload |
|
322 | @project.reload | |
323 | assert_equal NUM_REV, @repository.changesets.count |
|
323 | assert_equal NUM_REV, @repository.changesets.count | |
324 |
|
324 | |||
325 | get :diff, :id => PRJ_ID, :rev => 5, :format => 'diff' |
|
325 | get :diff, :id => PRJ_ID, :rev => 5, :format => 'diff' | |
326 | assert_response :success |
|
326 | assert_response :success | |
327 | assert_equal 'text/x-patch', @response.content_type |
|
327 | assert_equal 'text/x-patch', @response.content_type | |
328 | assert_equal 'Index: subversion_test/folder/greeter.rb', @response.body.split(/\r?\n/).first |
|
328 | assert_equal 'Index: subversion_test/folder/greeter.rb', @response.body.split(/\r?\n/).first | |
329 | end |
|
329 | end | |
330 |
|
330 | |||
331 | def test_directory_diff |
|
331 | def test_directory_diff | |
332 | assert_equal 0, @repository.changesets.count |
|
332 | assert_equal 0, @repository.changesets.count | |
333 | @repository.fetch_changesets |
|
333 | @repository.fetch_changesets | |
334 | @project.reload |
|
334 | @project.reload | |
335 | assert_equal NUM_REV, @repository.changesets.count |
|
335 | assert_equal NUM_REV, @repository.changesets.count | |
336 | ['inline', 'sbs'].each do |dt| |
|
336 | ['inline', 'sbs'].each do |dt| | |
337 | get :diff, :id => PRJ_ID, :rev => 6, :rev_to => 2, |
|
337 | get :diff, :id => PRJ_ID, :rev => 6, :rev_to => 2, | |
338 | :path => repository_path_hash(['subversion_test', 'folder'])[:param], |
|
338 | :path => repository_path_hash(['subversion_test', 'folder'])[:param], | |
339 | :type => dt |
|
339 | :type => dt | |
340 | assert_response :success |
|
340 | assert_response :success | |
341 | assert_template 'diff' |
|
341 | assert_template 'diff' | |
342 |
|
342 | |||
343 | diff = assigns(:diff) |
|
343 | diff = assigns(:diff) | |
344 | assert_not_nil diff |
|
344 | assert_not_nil diff | |
345 | # 2 files modified |
|
345 | # 2 files modified | |
346 | assert_equal 2, Redmine::UnifiedDiff.new(diff).size |
|
346 | assert_equal 2, Redmine::UnifiedDiff.new(diff).size | |
347 | assert_select 'h2', :text => /2:6/ |
|
347 | assert_select 'h2', :text => /2:6/ | |
348 | end |
|
348 | end | |
349 | end |
|
349 | end | |
350 |
|
350 | |||
351 | def test_annotate |
|
351 | def test_annotate | |
352 | assert_equal 0, @repository.changesets.count |
|
352 | assert_equal 0, @repository.changesets.count | |
353 | @repository.fetch_changesets |
|
353 | @repository.fetch_changesets | |
354 | @project.reload |
|
354 | @project.reload | |
355 | assert_equal NUM_REV, @repository.changesets.count |
|
355 | assert_equal NUM_REV, @repository.changesets.count | |
356 | get :annotate, :id => PRJ_ID, |
|
356 | get :annotate, :id => PRJ_ID, | |
357 | :path => repository_path_hash(['subversion_test', 'helloworld.c'])[:param] |
|
357 | :path => repository_path_hash(['subversion_test', 'helloworld.c'])[:param] | |
358 | assert_response :success |
|
358 | assert_response :success | |
359 | assert_template 'annotate' |
|
359 | assert_template 'annotate' | |
360 |
|
360 | |||
361 | assert_select 'tr' do |
|
361 | assert_select 'tr' do | |
362 | assert_select 'th.line-num', :text => '1' |
|
362 | assert_select 'th.line-num', :text => '1' | |
363 | assert_select 'td.revision', :text => '4' |
|
363 | assert_select 'td.revision', :text => '4' | |
364 | assert_select 'td.author', :text => 'jp' |
|
364 | assert_select 'td.author', :text => 'jp' | |
365 | assert_select 'td', :text => /stdio.h/ |
|
365 | assert_select 'td', :text => /stdio.h/ | |
366 | end |
|
366 | end | |
367 | # Same revision |
|
367 | # Same revision | |
368 | assert_select 'tr' do |
|
368 | assert_select 'tr' do | |
369 | assert_select 'th.line-num', :text => '2' |
|
369 | assert_select 'th.line-num', :text => '2' | |
370 | assert_select 'td.revision', :text => '' |
|
370 | assert_select 'td.revision', :text => '' | |
371 | assert_select 'td.author', :text => '' |
|
371 | assert_select 'td.author', :text => '' | |
372 | end |
|
372 | end | |
373 | end |
|
373 | end | |
374 |
|
374 | |||
375 | def test_annotate_at_given_revision |
|
375 | def test_annotate_at_given_revision | |
376 | assert_equal 0, @repository.changesets.count |
|
376 | assert_equal 0, @repository.changesets.count | |
377 | @repository.fetch_changesets |
|
377 | @repository.fetch_changesets | |
378 | @project.reload |
|
378 | @project.reload | |
379 | assert_equal NUM_REV, @repository.changesets.count |
|
379 | assert_equal NUM_REV, @repository.changesets.count | |
380 | get :annotate, :id => PRJ_ID, :rev => 8, |
|
380 | get :annotate, :id => PRJ_ID, :rev => 8, | |
381 | :path => repository_path_hash(['subversion_test', 'helloworld.c'])[:param] |
|
381 | :path => repository_path_hash(['subversion_test', 'helloworld.c'])[:param] | |
382 | assert_response :success |
|
382 | assert_response :success | |
383 | assert_template 'annotate' |
|
383 | assert_template 'annotate' | |
384 | assert_select 'h2', :text => /@ 8/ |
|
384 | assert_select 'h2', :text => /@ 8/ | |
385 | end |
|
385 | end | |
386 |
|
386 | |||
387 | def test_destroy_valid_repository |
|
387 | def test_destroy_valid_repository | |
388 | @request.session[:user_id] = 1 # admin |
|
388 | @request.session[:user_id] = 1 # admin | |
389 | assert_equal 0, @repository.changesets.count |
|
389 | assert_equal 0, @repository.changesets.count | |
390 | @repository.fetch_changesets |
|
390 | @repository.fetch_changesets | |
391 | assert_equal NUM_REV, @repository.changesets.count |
|
391 | assert_equal NUM_REV, @repository.changesets.count | |
392 |
|
392 | |||
393 | assert_difference 'Repository.count', -1 do |
|
393 | assert_difference 'Repository.count', -1 do | |
394 | delete :destroy, :id => @repository.id |
|
394 | delete :destroy, :id => @repository.id | |
395 | end |
|
395 | end | |
396 | assert_response 302 |
|
396 | assert_response 302 | |
397 | @project.reload |
|
397 | @project.reload | |
398 | assert_nil @project.repository |
|
398 | assert_nil @project.repository | |
399 | end |
|
399 | end | |
400 |
|
400 | |||
401 | def test_destroy_invalid_repository |
|
401 | def test_destroy_invalid_repository | |
402 | @request.session[:user_id] = 1 # admin |
|
402 | @request.session[:user_id] = 1 # admin | |
403 | @project.repository.destroy |
|
403 | @project.repository.destroy | |
404 | @repository = Repository::Subversion.create!( |
|
404 | @repository = Repository::Subversion.create!( | |
405 | :project => @project, |
|
405 | :project => @project, | |
406 | :url => "file:///invalid") |
|
406 | :url => "file:///invalid") | |
407 | @repository.fetch_changesets |
|
407 | @repository.fetch_changesets | |
408 | assert_equal 0, @repository.changesets.count |
|
408 | assert_equal 0, @repository.changesets.count | |
409 |
|
409 | |||
410 | assert_difference 'Repository.count', -1 do |
|
410 | assert_difference 'Repository.count', -1 do | |
411 | delete :destroy, :id => @repository.id |
|
411 | delete :destroy, :id => @repository.id | |
412 | end |
|
412 | end | |
413 | assert_response 302 |
|
413 | assert_response 302 | |
414 | @project.reload |
|
414 | @project.reload | |
415 | assert_nil @project.repository |
|
415 | assert_nil @project.repository | |
416 | end |
|
416 | end | |
417 | else |
|
417 | else | |
418 | puts "Subversion test repository NOT FOUND. Skipping functional tests !!!" |
|
418 | puts "Subversion test repository NOT FOUND. Skipping functional tests !!!" | |
419 | def test_fake; assert true end |
|
419 | def test_fake; assert true end | |
420 | end |
|
420 | end | |
421 | end |
|
421 | end |
General Comments 0
You need to be logged in to leave comments.
Login now