Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c549c8b721 |
@@ -40,7 +40,6 @@ class IssuesController < ApplicationController
|
|||||||
helper :attachments
|
helper :attachments
|
||||||
include AttachmentsHelper
|
include AttachmentsHelper
|
||||||
helper :queries
|
helper :queries
|
||||||
include QueriesHelper
|
|
||||||
helper :sort
|
helper :sort
|
||||||
include SortHelper
|
include SortHelper
|
||||||
include IssuesHelper
|
include IssuesHelper
|
||||||
@@ -57,13 +56,12 @@ class IssuesController < ApplicationController
|
|||||||
sort_update({'id' => "#{Issue.table_name}.id"}.merge(@query.available_columns.inject({}) {|h, c| h[c.name.to_s] = c.sortable; h}))
|
sort_update({'id' => "#{Issue.table_name}.id"}.merge(@query.available_columns.inject({}) {|h, c| h[c.name.to_s] = c.sortable; h}))
|
||||||
|
|
||||||
if @query.valid?
|
if @query.valid?
|
||||||
limit = case params[:format]
|
limit = per_page_option
|
||||||
when 'csv', 'pdf'
|
respond_to do |format|
|
||||||
Setting.issues_export_limit.to_i
|
format.html { }
|
||||||
when 'atom'
|
format.atom { limit = Setting.feeds_limit.to_i }
|
||||||
Setting.feeds_limit.to_i
|
format.csv { limit = Setting.issues_export_limit.to_i }
|
||||||
else
|
format.pdf { limit = Setting.issues_export_limit.to_i }
|
||||||
per_page_option
|
|
||||||
end
|
end
|
||||||
|
|
||||||
@issue_count = @query.issue_count
|
@issue_count = @query.issue_count
|
||||||
@@ -107,7 +105,7 @@ class IssuesController < ApplicationController
|
|||||||
@journals = @issue.journals.find(:all, :include => [:user, :details], :order => "#{Journal.table_name}.created_on ASC")
|
@journals = @issue.journals.find(:all, :include => [:user, :details], :order => "#{Journal.table_name}.created_on ASC")
|
||||||
@journals.each_with_index {|j,i| j.indice = i+1}
|
@journals.each_with_index {|j,i| j.indice = i+1}
|
||||||
@journals.reverse! if User.current.wants_comments_in_reverse_order?
|
@journals.reverse! if User.current.wants_comments_in_reverse_order?
|
||||||
@changesets = @issue.changesets.visible.all
|
@changesets = @issue.changesets
|
||||||
@changesets.reverse! if User.current.wants_comments_in_reverse_order?
|
@changesets.reverse! if User.current.wants_comments_in_reverse_order?
|
||||||
@allowed_statuses = @issue.new_statuses_allowed_to(User.current)
|
@allowed_statuses = @issue.new_statuses_allowed_to(User.current)
|
||||||
@edit_allowed = User.current.allowed_to?(:edit_issues, @project)
|
@edit_allowed = User.current.allowed_to?(:edit_issues, @project)
|
||||||
@@ -189,22 +187,22 @@ class IssuesController < ApplicationController
|
|||||||
if request.post?
|
if request.post?
|
||||||
@time_entry = TimeEntry.new(:project => @project, :issue => @issue, :user => User.current, :spent_on => Date.today)
|
@time_entry = TimeEntry.new(:project => @project, :issue => @issue, :user => User.current, :spent_on => Date.today)
|
||||||
@time_entry.attributes = params[:time_entry]
|
@time_entry.attributes = params[:time_entry]
|
||||||
if (@time_entry.hours.nil? || @time_entry.valid?) && @issue.valid?
|
attachments = attach_files(@issue, params[:attachments])
|
||||||
attachments = attach_files(@issue, params[:attachments])
|
attachments.each {|a| journal.details << JournalDetail.new(:property => 'attachment', :prop_key => a.id, :value => a.filename)}
|
||||||
attachments.each {|a| journal.details << JournalDetail.new(:property => 'attachment', :prop_key => a.id, :value => a.filename)}
|
|
||||||
call_hook(:controller_issues_edit_before_save, { :params => params, :issue => @issue, :time_entry => @time_entry, :journal => journal})
|
call_hook(:controller_issues_edit_before_save, { :params => params, :issue => @issue, :time_entry => @time_entry, :journal => journal})
|
||||||
if @issue.save
|
|
||||||
# Log spend time
|
if (@time_entry.hours.nil? || @time_entry.valid?) && @issue.save
|
||||||
if User.current.allowed_to?(:log_time, @project)
|
# Log spend time
|
||||||
@time_entry.save
|
if User.current.allowed_to?(:log_time, @project)
|
||||||
end
|
@time_entry.save
|
||||||
if !journal.new_record?
|
|
||||||
# Only send notification if something was actually changed
|
|
||||||
flash[:notice] = l(:notice_successful_update)
|
|
||||||
end
|
|
||||||
call_hook(:controller_issues_edit_after_save, { :params => params, :issue => @issue, :time_entry => @time_entry, :journal => journal})
|
|
||||||
redirect_back_or_default({:action => 'show', :id => @issue})
|
|
||||||
end
|
end
|
||||||
|
if !journal.new_record?
|
||||||
|
# Only send notification if something was actually changed
|
||||||
|
flash[:notice] = l(:notice_successful_update)
|
||||||
|
end
|
||||||
|
call_hook(:controller_issues_edit_after_save, { :params => params, :issue => @issue, :time_entry => @time_entry, :journal => journal})
|
||||||
|
redirect_to(params[:back_to] || {:action => 'show', :id => @issue})
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
rescue ActiveRecord::StaleObjectError
|
rescue ActiveRecord::StaleObjectError
|
||||||
@@ -271,7 +269,7 @@ class IssuesController < ApplicationController
|
|||||||
:total => @issues.size,
|
:total => @issues.size,
|
||||||
:ids => '#' + unsaved_issue_ids.join(', #'))
|
:ids => '#' + unsaved_issue_ids.join(', #'))
|
||||||
end
|
end
|
||||||
redirect_back_or_default({:controller => 'issues', :action => 'index', :project_id => @project})
|
redirect_to(params[:back_to] || {:controller => 'issues', :action => 'index', :project_id => @project})
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
@available_statuses = Workflow.available_statuses(@project)
|
@available_statuses = Workflow.available_statuses(@project)
|
||||||
@@ -359,7 +357,6 @@ class IssuesController < ApplicationController
|
|||||||
def gantt
|
def gantt
|
||||||
@gantt = Redmine::Helpers::Gantt.new(params)
|
@gantt = Redmine::Helpers::Gantt.new(params)
|
||||||
retrieve_query
|
retrieve_query
|
||||||
@query.group_by = nil
|
|
||||||
if @query.valid?
|
if @query.valid?
|
||||||
events = []
|
events = []
|
||||||
# Issues that have start and due dates
|
# Issues that have start and due dates
|
||||||
@@ -399,7 +396,6 @@ class IssuesController < ApplicationController
|
|||||||
|
|
||||||
@calendar = Redmine::Helpers::Calendar.new(Date.civil(@year, @month, 1), current_language, :month)
|
@calendar = Redmine::Helpers::Calendar.new(Date.civil(@year, @month, 1), current_language, :month)
|
||||||
retrieve_query
|
retrieve_query
|
||||||
@query.group_by = nil
|
|
||||||
if @query.valid?
|
if @query.valid?
|
||||||
events = []
|
events = []
|
||||||
events += @query.issues(:include => [:tracker, :assigned_to, :priority],
|
events += @query.issues(:include => [:tracker, :assigned_to, :priority],
|
||||||
|
|||||||
@@ -49,13 +49,13 @@ class ReportsController < ApplicationController
|
|||||||
render :template => "reports/issue_report_details"
|
render :template => "reports/issue_report_details"
|
||||||
when "assigned_to"
|
when "assigned_to"
|
||||||
@field = "assigned_to_id"
|
@field = "assigned_to_id"
|
||||||
@rows = @project.members.collect { |m| m.user }.sort
|
@rows = @project.members.collect { |m| m.user }
|
||||||
@data = issues_by_assigned_to
|
@data = issues_by_assigned_to
|
||||||
@report_title = l(:field_assigned_to)
|
@report_title = l(:field_assigned_to)
|
||||||
render :template => "reports/issue_report_details"
|
render :template => "reports/issue_report_details"
|
||||||
when "author"
|
when "author"
|
||||||
@field = "author_id"
|
@field = "author_id"
|
||||||
@rows = @project.members.collect { |m| m.user }.sort
|
@rows = @project.members.collect { |m| m.user }
|
||||||
@data = issues_by_author
|
@data = issues_by_author
|
||||||
@report_title = l(:field_author)
|
@report_title = l(:field_author)
|
||||||
render :template => "reports/issue_report_details"
|
render :template => "reports/issue_report_details"
|
||||||
@@ -70,8 +70,8 @@ class ReportsController < ApplicationController
|
|||||||
@versions = @project.shared_versions.sort
|
@versions = @project.shared_versions.sort
|
||||||
@priorities = IssuePriority.all
|
@priorities = IssuePriority.all
|
||||||
@categories = @project.issue_categories
|
@categories = @project.issue_categories
|
||||||
@assignees = @project.members.collect { |m| m.user }.sort
|
@assignees = @project.members.collect { |m| m.user }
|
||||||
@authors = @project.members.collect { |m| m.user }.sort
|
@authors = @project.members.collect { |m| m.user }
|
||||||
@subprojects = @project.descendants.active
|
@subprojects = @project.descendants.active
|
||||||
issues_by_tracker
|
issues_by_tracker
|
||||||
issues_by_version
|
issues_by_version
|
||||||
|
|||||||
@@ -62,8 +62,8 @@ class SearchController < ApplicationController
|
|||||||
# extract tokens from the question
|
# extract tokens from the question
|
||||||
# eg. hello "bye bye" => ["hello", "bye bye"]
|
# eg. hello "bye bye" => ["hello", "bye bye"]
|
||||||
@tokens = @question.scan(%r{((\s|^)"[\s\w]+"(\s|$)|\S+)}).collect {|m| m.first.gsub(%r{(^\s*"\s*|\s*"\s*$)}, '')}
|
@tokens = @question.scan(%r{((\s|^)"[\s\w]+"(\s|$)|\S+)}).collect {|m| m.first.gsub(%r{(^\s*"\s*|\s*"\s*$)}, '')}
|
||||||
# tokens must be at least 2 characters long
|
# tokens must be at least 3 character long
|
||||||
@tokens = @tokens.uniq.select {|w| w.length > 1 }
|
@tokens = @tokens.uniq.select {|w| w.length > 2 }
|
||||||
|
|
||||||
if !@tokens.empty?
|
if !@tokens.empty?
|
||||||
# no more than 5 tokens to search for
|
# no more than 5 tokens to search for
|
||||||
|
|||||||
@@ -91,8 +91,8 @@ module IssuesHelper
|
|||||||
c = IssueCategory.find_by_id(detail.value) and value = c.name if detail.value
|
c = IssueCategory.find_by_id(detail.value) and value = c.name if detail.value
|
||||||
c = IssueCategory.find_by_id(detail.old_value) and old_value = c.name if detail.old_value
|
c = IssueCategory.find_by_id(detail.old_value) and old_value = c.name if detail.old_value
|
||||||
when 'fixed_version_id'
|
when 'fixed_version_id'
|
||||||
v = Version.find_by_id(detail.value) and value = v.name if detail.value
|
v = Version.find_by_id(detail.value) and value = format_version_name(v) if detail.value
|
||||||
v = Version.find_by_id(detail.old_value) and old_value = v.name if detail.old_value
|
v = Version.find_by_id(detail.old_value) and old_value = format_version_name(v) if detail.old_value
|
||||||
when 'estimated_hours'
|
when 'estimated_hours'
|
||||||
value = "%0.02f" % detail.value.to_f unless detail.value.blank?
|
value = "%0.02f" % detail.value.to_f unless detail.value.blank?
|
||||||
old_value = "%0.02f" % detail.old_value.to_f unless detail.old_value.blank?
|
old_value = "%0.02f" % detail.old_value.to_f unless detail.old_value.blank?
|
||||||
|
|||||||
+2
-13
@@ -41,9 +41,6 @@ class Changeset < ActiveRecord::Base
|
|||||||
validates_uniqueness_of :revision, :scope => :repository_id
|
validates_uniqueness_of :revision, :scope => :repository_id
|
||||||
validates_uniqueness_of :scmid, :scope => :repository_id, :allow_nil => true
|
validates_uniqueness_of :scmid, :scope => :repository_id, :allow_nil => true
|
||||||
|
|
||||||
named_scope :visible, lambda {|*args| { :include => {:repository => :project},
|
|
||||||
:conditions => Project.allowed_to_condition(args.first || User.current, :view_changesets) } }
|
|
||||||
|
|
||||||
def revision=(r)
|
def revision=(r)
|
||||||
write_attribute :revision, (r.nil? ? nil : r.to_s)
|
write_attribute :revision, (r.nil? ? nil : r.to_s)
|
||||||
end
|
end
|
||||||
@@ -93,13 +90,13 @@ class Changeset < ActiveRecord::Base
|
|||||||
# find any issue ID in the comments
|
# find any issue ID in the comments
|
||||||
target_issue_ids = []
|
target_issue_ids = []
|
||||||
comments.scan(%r{([\s\(\[,-]|^)#(\d+)(?=[[:punct:]]|\s|<|$)}).each { |m| target_issue_ids << m[1] }
|
comments.scan(%r{([\s\(\[,-]|^)#(\d+)(?=[[:punct:]]|\s|<|$)}).each { |m| target_issue_ids << m[1] }
|
||||||
referenced_issues += find_referenced_issues_by_id(target_issue_ids)
|
referenced_issues += repository.project.issues.find_all_by_id(target_issue_ids)
|
||||||
end
|
end
|
||||||
|
|
||||||
comments.scan(Regexp.new("(#{kw_regexp})[\s:]+(([\s,;&]*#?\\d+)+)", Regexp::IGNORECASE)).each do |match|
|
comments.scan(Regexp.new("(#{kw_regexp})[\s:]+(([\s,;&]*#?\\d+)+)", Regexp::IGNORECASE)).each do |match|
|
||||||
action = match[0]
|
action = match[0]
|
||||||
target_issue_ids = match[1].scan(/\d+/)
|
target_issue_ids = match[1].scan(/\d+/)
|
||||||
target_issues = find_referenced_issues_by_id(target_issue_ids)
|
target_issues = repository.project.issues.find_all_by_id(target_issue_ids)
|
||||||
if fix_status && fix_keywords.include?(action.downcase)
|
if fix_status && fix_keywords.include?(action.downcase)
|
||||||
# update status of issues
|
# update status of issues
|
||||||
logger.debug "Issues fixed by changeset #{self.revision}: #{issue_ids.join(', ')}." if logger && logger.debug?
|
logger.debug "Issues fixed by changeset #{self.revision}: #{issue_ids.join(', ')}." if logger && logger.debug?
|
||||||
@@ -151,14 +148,6 @@ class Changeset < ActiveRecord::Base
|
|||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
# Finds issues that can be referenced by the commit message
|
|
||||||
# i.e. issues that belong to the repository project, a subproject or a parent project
|
|
||||||
def find_referenced_issues_by_id(ids)
|
|
||||||
Issue.find_all_by_id(ids, :include => :project).select {|issue|
|
|
||||||
project == issue.project || project.is_ancestor_of?(issue.project) || project.is_descendant_of?(issue.project)
|
|
||||||
}
|
|
||||||
end
|
|
||||||
|
|
||||||
def split_comments
|
def split_comments
|
||||||
comments =~ /\A(.+?)\r?\n(.*)$/m
|
comments =~ /\A(.+?)\r?\n(.*)$/m
|
||||||
@short_comments = $1 || comments
|
@short_comments = $1 || comments
|
||||||
|
|||||||
@@ -272,7 +272,6 @@ class Mailer < ActionMailer::Base
|
|||||||
# Overrides default deliver! method to prevent from sending an email
|
# Overrides default deliver! method to prevent from sending an email
|
||||||
# with no recipient, cc or bcc
|
# with no recipient, cc or bcc
|
||||||
def deliver!(mail = @mail)
|
def deliver!(mail = @mail)
|
||||||
set_language_if_valid @initial_language
|
|
||||||
return false if (recipients.nil? || recipients.empty?) &&
|
return false if (recipients.nil? || recipients.empty?) &&
|
||||||
(cc.nil? || cc.empty?) &&
|
(cc.nil? || cc.empty?) &&
|
||||||
(bcc.nil? || bcc.empty?)
|
(bcc.nil? || bcc.empty?)
|
||||||
@@ -314,7 +313,6 @@ class Mailer < ActionMailer::Base
|
|||||||
private
|
private
|
||||||
def initialize_defaults(method_name)
|
def initialize_defaults(method_name)
|
||||||
super
|
super
|
||||||
@initial_language = current_language
|
|
||||||
set_language_if_valid Setting.default_language
|
set_language_if_valid Setting.default_language
|
||||||
from Setting.mail_from
|
from Setting.mail_from
|
||||||
|
|
||||||
|
|||||||
@@ -32,8 +32,6 @@ class Principal < ActiveRecord::Base
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
before_create :set_default_empty_values
|
|
||||||
|
|
||||||
def <=>(principal)
|
def <=>(principal)
|
||||||
if self.class.name == principal.class.name
|
if self.class.name == principal.class.name
|
||||||
self.to_s.downcase <=> principal.to_s.downcase
|
self.to_s.downcase <=> principal.to_s.downcase
|
||||||
@@ -42,16 +40,4 @@ class Principal < ActiveRecord::Base
|
|||||||
principal.class.name <=> self.class.name
|
principal.class.name <=> self.class.name
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
protected
|
|
||||||
|
|
||||||
# Make sure we don't try to insert NULL values (see #4632)
|
|
||||||
def set_default_empty_values
|
|
||||||
self.login ||= ''
|
|
||||||
self.hashed_password ||= ''
|
|
||||||
self.firstname ||= ''
|
|
||||||
self.lastname ||= ''
|
|
||||||
self.mail ||= ''
|
|
||||||
true
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ class Project < ActiveRecord::Base
|
|||||||
:join_table => "#{table_name_prefix}custom_fields_projects#{table_name_suffix}",
|
:join_table => "#{table_name_prefix}custom_fields_projects#{table_name_suffix}",
|
||||||
:association_foreign_key => 'custom_field_id'
|
:association_foreign_key => 'custom_field_id'
|
||||||
|
|
||||||
acts_as_nested_set :order => 'name'
|
acts_as_nested_set :order => 'name', :dependent => :destroy
|
||||||
acts_as_attachable :view_permission => :view_files,
|
acts_as_attachable :view_permission => :view_files,
|
||||||
:delete_permission => :manage_files
|
:delete_permission => :manage_files
|
||||||
|
|
||||||
@@ -74,7 +74,7 @@ class Project < ActiveRecord::Base
|
|||||||
# reserved words
|
# reserved words
|
||||||
validates_exclusion_of :identifier, :in => %w( new )
|
validates_exclusion_of :identifier, :in => %w( new )
|
||||||
|
|
||||||
before_destroy :delete_all_members, :destroy_children
|
before_destroy :delete_all_members
|
||||||
|
|
||||||
named_scope :has_module, lambda { |mod| { :conditions => ["#{Project.table_name}.id IN (SELECT em.project_id FROM #{EnabledModule.table_name} em WHERE em.name=?)", mod.to_s] } }
|
named_scope :has_module, lambda { |mod| { :conditions => ["#{Project.table_name}.id IN (SELECT em.project_id FROM #{EnabledModule.table_name} em WHERE em.name=?)", mod.to_s] } }
|
||||||
named_scope :active, { :conditions => "#{Project.table_name}.status = #{STATUS_ACTIVE}"}
|
named_scope :active, { :conditions => "#{Project.table_name}.status = #{STATUS_ACTIVE}"}
|
||||||
@@ -499,13 +499,6 @@ class Project < ActiveRecord::Base
|
|||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
# Destroys children before destroying self
|
|
||||||
def destroy_children
|
|
||||||
children.each do |child|
|
|
||||||
child.destroy
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
# Copies wiki from +project+
|
# Copies wiki from +project+
|
||||||
def copy_wiki(project)
|
def copy_wiki(project)
|
||||||
# Check that the source project has a wiki first
|
# Check that the source project has a wiki first
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<div class="box tabular">
|
<div class="box tabular">
|
||||||
<p><label for="new_password"><%=l(:field_new_password)%> <span class="required">*</span></label>
|
<p><label for="new_password"><%=l(:field_new_password)%> <span class="required">*</span></label>
|
||||||
<%= password_field_tag 'new_password', nil, :size => 25 %><br />
|
<%= password_field_tag 'new_password', nil, :size => 25 %><br />
|
||||||
<em><%= l(:text_caracters_minimum, :count => Setting.password_min_length) %></em></p>
|
<em><%= l(:text_caracters_minimum, 4) %></em></p>
|
||||||
|
|
||||||
<p><label for="new_password_confirmation"><%=l(:field_password_confirmation)%> <span class="required">*</span></label>
|
<p><label for="new_password_confirmation"><%=l(:field_password_confirmation)%> <span class="required">*</span></label>
|
||||||
<%= password_field_tag 'new_password_confirmation', nil, :size => 25 %></p>
|
<%= password_field_tag 'new_password_confirmation', nil, :size => 25 %></p>
|
||||||
|
|||||||
@@ -15,7 +15,6 @@
|
|||||||
<% end %>
|
<% end %>
|
||||||
|
|
||||||
|
|
||||||
<div class="autoscroll">
|
|
||||||
<table class="list">
|
<table class="list">
|
||||||
<thead><tr>
|
<thead><tr>
|
||||||
<th><%=l(:label_project)%></th>
|
<th><%=l(:label_project)%></th>
|
||||||
@@ -41,6 +40,5 @@
|
|||||||
<% end %>
|
<% end %>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
|
||||||
|
|
||||||
<% html_title(l(:label_project_plural)) -%>
|
<% html_title(l(:label_project_plural)) -%>
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
<h2><%= link_to l(:label_group_plural), groups_path %> » <%= l(:label_group_new) %></h2>
|
<h2><%= link_to l(:label_group_plural), groups_path %> » <%= l(:label_group_new) %></h2>
|
||||||
|
|
||||||
|
<%= error_messages_for :group %>
|
||||||
|
|
||||||
<% form_for(@group, :builder => TabularFormBuilder, :lang => current_language) do |f| %>
|
<% form_for(@group, :builder => TabularFormBuilder, :lang => current_language) do |f| %>
|
||||||
<%= render :partial => 'form', :locals => { :f => f } %>
|
<%= render :partial => 'form', :locals => { :f => f } %>
|
||||||
<p><%= f.submit l(:button_create) %></p>
|
<p><%= f.submit l(:button_create) %></p>
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
<% form_tag({}) do -%>
|
<% form_tag({}) do -%>
|
||||||
<%= hidden_field_tag 'back_url', url_for(params) %>
|
<%= hidden_field_tag 'back_url', url_for(params) %>
|
||||||
<div class="autoscroll">
|
|
||||||
<table class="list issues">
|
<table class="list issues">
|
||||||
<thead><tr>
|
<thead><tr>
|
||||||
<th><%= link_to image_tag('toggle_check.png'), {}, :onclick => 'toggleIssuesSelection(Element.up(this, "form")); return false;',
|
<th><%= link_to image_tag('toggle_check.png'), {}, :onclick => 'toggleIssuesSelection(Element.up(this, "form")); return false;',
|
||||||
@@ -32,5 +31,4 @@
|
|||||||
<% end -%>
|
<% end -%>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
|
||||||
<% end -%>
|
<% end -%>
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
<a href="#" class="submenu" onclick="return false;"><%= l(:field_status) %></a>
|
<a href="#" class="submenu" onclick="return false;"><%= l(:field_status) %></a>
|
||||||
<ul>
|
<ul>
|
||||||
<% @statuses.each do |s| -%>
|
<% @statuses.each do |s| -%>
|
||||||
<li><%= context_menu_link s.name, {:controller => 'issues', :action => 'edit', :id => @issue, :issue => {:status_id => s}, :back_url => @back}, :method => :post,
|
<li><%= context_menu_link s.name, {:controller => 'issues', :action => 'edit', :id => @issue, :issue => {:status_id => s}, :back_to => @back}, :method => :post,
|
||||||
:selected => (s == @issue.status), :disabled => !(@can[:update] && @allowed_statuses.include?(s)) %></li>
|
:selected => (s == @issue.status), :disabled => !(@can[:update] && @allowed_statuses.include?(s)) %></li>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
</ul>
|
</ul>
|
||||||
@@ -23,7 +23,7 @@
|
|||||||
<a href="#" class="submenu"><%= l(:field_tracker) %></a>
|
<a href="#" class="submenu"><%= l(:field_tracker) %></a>
|
||||||
<ul>
|
<ul>
|
||||||
<% @trackers.each do |t| -%>
|
<% @trackers.each do |t| -%>
|
||||||
<li><%= context_menu_link t.name, {:controller => 'issues', :action => 'bulk_edit', :ids => @issues.collect(&:id), 'tracker_id' => t, :back_url => @back}, :method => :post,
|
<li><%= context_menu_link t.name, {:controller => 'issues', :action => 'bulk_edit', :ids => @issues.collect(&:id), 'tracker_id' => t, :back_to => @back}, :method => :post,
|
||||||
:selected => (@issue && t == @issue.tracker), :disabled => !@can[:edit] %></li>
|
:selected => (@issue && t == @issue.tracker), :disabled => !@can[:edit] %></li>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
</ul>
|
</ul>
|
||||||
@@ -33,7 +33,7 @@
|
|||||||
<a href="#" class="submenu"><%= l(:field_priority) %></a>
|
<a href="#" class="submenu"><%= l(:field_priority) %></a>
|
||||||
<ul>
|
<ul>
|
||||||
<% @priorities.each do |p| -%>
|
<% @priorities.each do |p| -%>
|
||||||
<li><%= context_menu_link p.name, {:controller => 'issues', :action => 'bulk_edit', :ids => @issues.collect(&:id), 'priority_id' => p, :back_url => @back}, :method => :post,
|
<li><%= context_menu_link p.name, {:controller => 'issues', :action => 'bulk_edit', :ids => @issues.collect(&:id), 'priority_id' => p, :back_to => @back}, :method => :post,
|
||||||
:selected => (@issue && p == @issue.priority), :disabled => !@can[:edit] %></li>
|
:selected => (@issue && p == @issue.priority), :disabled => !@can[:edit] %></li>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
</ul>
|
</ul>
|
||||||
@@ -43,10 +43,10 @@
|
|||||||
<a href="#" class="submenu"><%= l(:field_fixed_version) %></a>
|
<a href="#" class="submenu"><%= l(:field_fixed_version) %></a>
|
||||||
<ul>
|
<ul>
|
||||||
<% @project.shared_versions.open.sort.each do |v| -%>
|
<% @project.shared_versions.open.sort.each do |v| -%>
|
||||||
<li><%= context_menu_link format_version_name(v), {:controller => 'issues', :action => 'bulk_edit', :ids => @issues.collect(&:id), 'fixed_version_id' => v, :back_url => @back}, :method => :post,
|
<li><%= context_menu_link format_version_name(v), {:controller => 'issues', :action => 'bulk_edit', :ids => @issues.collect(&:id), 'fixed_version_id' => v, :back_to => @back}, :method => :post,
|
||||||
:selected => (@issue && v == @issue.fixed_version), :disabled => !@can[:update] %></li>
|
:selected => (@issue && v == @issue.fixed_version), :disabled => !@can[:update] %></li>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
<li><%= context_menu_link l(:label_none), {:controller => 'issues', :action => 'bulk_edit', :ids => @issues.collect(&:id), 'fixed_version_id' => 'none', :back_url => @back}, :method => :post,
|
<li><%= context_menu_link l(:label_none), {:controller => 'issues', :action => 'bulk_edit', :ids => @issues.collect(&:id), 'fixed_version_id' => 'none', :back_to => @back}, :method => :post,
|
||||||
:selected => (@issue && @issue.fixed_version.nil?), :disabled => !@can[:update] %></li>
|
:selected => (@issue && @issue.fixed_version.nil?), :disabled => !@can[:update] %></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
@@ -56,10 +56,10 @@
|
|||||||
<a href="#" class="submenu"><%= l(:field_assigned_to) %></a>
|
<a href="#" class="submenu"><%= l(:field_assigned_to) %></a>
|
||||||
<ul>
|
<ul>
|
||||||
<% @assignables.each do |u| -%>
|
<% @assignables.each do |u| -%>
|
||||||
<li><%= context_menu_link u.name, {:controller => 'issues', :action => 'bulk_edit', :ids => @issues.collect(&:id), 'assigned_to_id' => u, :back_url => @back}, :method => :post,
|
<li><%= context_menu_link u.name, {:controller => 'issues', :action => 'bulk_edit', :ids => @issues.collect(&:id), 'assigned_to_id' => u, :back_to => @back}, :method => :post,
|
||||||
:selected => (@issue && u == @issue.assigned_to), :disabled => !@can[:update] %></li>
|
:selected => (@issue && u == @issue.assigned_to), :disabled => !@can[:update] %></li>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
<li><%= context_menu_link l(:label_nobody), {:controller => 'issues', :action => 'bulk_edit', :ids => @issues.collect(&:id), 'assigned_to_id' => 'none', :back_url => @back}, :method => :post,
|
<li><%= context_menu_link l(:label_nobody), {:controller => 'issues', :action => 'bulk_edit', :ids => @issues.collect(&:id), 'assigned_to_id' => 'none', :back_to => @back}, :method => :post,
|
||||||
:selected => (@issue && @issue.assigned_to.nil?), :disabled => !@can[:update] %></li>
|
:selected => (@issue && @issue.assigned_to.nil?), :disabled => !@can[:update] %></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
@@ -69,10 +69,10 @@
|
|||||||
<a href="#" class="submenu"><%= l(:field_category) %></a>
|
<a href="#" class="submenu"><%= l(:field_category) %></a>
|
||||||
<ul>
|
<ul>
|
||||||
<% @project.issue_categories.each do |u| -%>
|
<% @project.issue_categories.each do |u| -%>
|
||||||
<li><%= context_menu_link u.name, {:controller => 'issues', :action => 'bulk_edit', :ids => @issues.collect(&:id), 'category_id' => u, :back_url => @back}, :method => :post,
|
<li><%= context_menu_link u.name, {:controller => 'issues', :action => 'bulk_edit', :ids => @issues.collect(&:id), 'category_id' => u, :back_to => @back}, :method => :post,
|
||||||
:selected => (@issue && u == @issue.category), :disabled => !@can[:update] %></li>
|
:selected => (@issue && u == @issue.category), :disabled => !@can[:update] %></li>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
<li><%= context_menu_link l(:label_none), {:controller => 'issues', :action => 'bulk_edit', :ids => @issues.collect(&:id), 'category_id' => 'none', :back_url => @back}, :method => :post,
|
<li><%= context_menu_link l(:label_none), {:controller => 'issues', :action => 'bulk_edit', :ids => @issues.collect(&:id), 'category_id' => 'none', :back_to => @back}, :method => :post,
|
||||||
:selected => (@issue && @issue.category.nil?), :disabled => !@can[:update] %></li>
|
:selected => (@issue && @issue.category.nil?), :disabled => !@can[:update] %></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
@@ -82,7 +82,7 @@
|
|||||||
<a href="#" class="submenu"><%= l(:field_done_ratio) %></a>
|
<a href="#" class="submenu"><%= l(:field_done_ratio) %></a>
|
||||||
<ul>
|
<ul>
|
||||||
<% (0..10).map{|x|x*10}.each do |p| -%>
|
<% (0..10).map{|x|x*10}.each do |p| -%>
|
||||||
<li><%= context_menu_link "#{p}%", {:controller => 'issues', :action => 'bulk_edit', :ids => @issues.collect(&:id), 'done_ratio' => p, :back_url => @back}, :method => :post,
|
<li><%= context_menu_link "#{p}%", {:controller => 'issues', :action => 'bulk_edit', :ids => @issues.collect(&:id), 'done_ratio' => p, :back_to => @back}, :method => :post,
|
||||||
:selected => (@issue && p == @issue.done_ratio), :disabled => !@can[:edit] %></li>
|
:selected => (@issue && p == @issue.done_ratio), :disabled => !@can[:edit] %></li>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
</ul>
|
</ul>
|
||||||
|
|||||||
@@ -73,7 +73,7 @@
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<% if @changesets.any? %>
|
<% if @changesets.any? && User.current.allowed_to?(:view_changesets, @project) %>
|
||||||
<div id="issue-changesets">
|
<div id="issue-changesets">
|
||||||
<h3><%=l(:label_associated_revisions)%></h3>
|
<h3><%=l(:label_associated_revisions)%></h3>
|
||||||
<%= render :partial => 'changesets', :locals => { :changesets => @changesets} %>
|
<%= render :partial => 'changesets', :locals => { :changesets => @changesets} %>
|
||||||
|
|||||||
@@ -62,7 +62,7 @@
|
|||||||
<div id="ajax-indicator" style="display:none;"><span><%= l(:label_loading) %></span></div>
|
<div id="ajax-indicator" style="display:none;"><span><%= l(:label_loading) %></span></div>
|
||||||
|
|
||||||
<div id="footer">
|
<div id="footer">
|
||||||
Powered by <%= link_to Redmine::Info.app_name, Redmine::Info.url %> © 2006-2010 Jean-Philippe Lang
|
Powered by <%= link_to Redmine::Info.app_name, Redmine::Info.url %> © 2006-2009 Jean-Philippe Lang
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<%= call_hook :view_layouts_base_body_bottom %>
|
<%= call_hook :view_layouts_base_body_bottom %>
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
<div class="contextual">
|
<div class="contextual">
|
||||||
<%= watcher_tag(@topic, User.current) %>
|
<%= watcher_tag(@topic, User.current) %>
|
||||||
<%= link_to_remote_if_authorized(l(:button_quote), { :url => {:action => 'quote', :id => @topic} }, :class => 'icon icon-comment') unless @topic.locked? %>
|
<%= link_to_remote_if_authorized l(:button_quote), { :url => {:action => 'quote', :id => @topic} }, :class => 'icon icon-comment' %>
|
||||||
<%= link_to(l(:button_edit), {:action => 'edit', :id => @topic}, :class => 'icon icon-edit') if @message.editable_by?(User.current) %>
|
<%= link_to(l(:button_edit), {:action => 'edit', :id => @topic}, :class => 'icon icon-edit') if @message.editable_by?(User.current) %>
|
||||||
<%= link_to(l(:button_delete), {:action => 'destroy', :id => @topic}, :method => :post, :confirm => l(:text_are_you_sure), :class => 'icon icon-del') if @message.destroyable_by?(User.current) %>
|
<%= link_to(l(:button_delete), {:action => 'destroy', :id => @topic}, :method => :post, :confirm => l(:text_are_you_sure), :class => 'icon icon-del') if @message.destroyable_by?(User.current) %>
|
||||||
</div>
|
</div>
|
||||||
@@ -24,7 +24,7 @@
|
|||||||
<% @replies.each do |message| %>
|
<% @replies.each do |message| %>
|
||||||
<div class="message reply" id="<%= "message-#{message.id}" %>">
|
<div class="message reply" id="<%= "message-#{message.id}" %>">
|
||||||
<div class="contextual">
|
<div class="contextual">
|
||||||
<%= link_to_remote_if_authorized(image_tag('comment.png'), { :url => {:action => 'quote', :id => message} }, :title => l(:button_quote)) unless @topic.locked? %>
|
<%= link_to_remote_if_authorized image_tag('comment.png'), { :url => {:action => 'quote', :id => message} }, :title => l(:button_quote) %>
|
||||||
<%= link_to(image_tag('edit.png'), {:action => 'edit', :id => message}, :title => l(:button_edit)) if message.editable_by?(User.current) %>
|
<%= link_to(image_tag('edit.png'), {:action => 'edit', :id => message}, :title => l(:button_edit)) if message.editable_by?(User.current) %>
|
||||||
<%= link_to(image_tag('delete.png'), {:action => 'destroy', :id => message}, :method => :post, :confirm => l(:text_are_you_sure), :title => l(:button_delete)) if message.destroyable_by?(User.current) %>
|
<%= link_to(image_tag('delete.png'), {:action => 'destroy', :id => message}, :method => :post, :confirm => l(:text_are_you_sure), :title => l(:button_delete)) if message.destroyable_by?(User.current) %>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<h3><%= l(:label_calendar) %></h3>
|
<h3><%= l(:label_calendar) %></h3>
|
||||||
|
|
||||||
<% calendar = Redmine::Helpers::Calendar.new(Date.today, current_language, :week)
|
<% calendar = Redmine::Helpers::Calendar.new(Date.today, current_language, :week)
|
||||||
calendar.events = Issue.visible.find :all,
|
calendar.events = Issue.find :all,
|
||||||
:conditions => ["#{Issue.table_name}.project_id in (#{@user.projects.collect{|m| m.id}.join(',')}) AND ((start_date>=? and start_date<=?) or (due_date>=? and due_date<=?))", calendar.startdt, calendar.enddt, calendar.startdt, calendar.enddt],
|
:conditions => ["#{Issue.table_name}.project_id in (#{@user.projects.collect{|m| m.id}.join(',')}) AND ((start_date>=? and start_date<=?) or (due_date>=? and due_date<=?))", calendar.startdt, calendar.enddt, calendar.startdt, calendar.enddt],
|
||||||
:include => [:project, :tracker, :priority, :assigned_to] unless @user.projects.empty? %>
|
:include => [:project, :tracker, :priority, :assigned_to] unless @user.projects.empty? %>
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<% @entries.each do |entry| %>
|
<% @entries.each do |entry| %>
|
||||||
<% tr_id = Digest::MD5.hexdigest(entry.path)
|
<% tr_id = Digest::MD5.hexdigest(entry.path)
|
||||||
depth = params[:depth].to_i %>
|
depth = params[:depth].to_i %>
|
||||||
<tr id="<%= tr_id %>" class="<%= h params[:parent_id] %> entry <%= entry.kind %>">
|
<tr id="<%= tr_id %>" class="<%= params[:parent_id] %> entry <%= entry.kind %>">
|
||||||
<td style="padding-left: <%=18 * depth%>px;" class="filename">
|
<td style="padding-left: <%=18 * depth%>px;" class="filename">
|
||||||
<% if entry.is_dir? %>
|
<% if entry.is_dir? %>
|
||||||
<span class="expander" onclick="<%= remote_function :url => {:action => 'show', :id => @project, :path => to_path_param(entry.path), :rev => @rev, :depth => (depth + 1), :parent_id => tr_id},
|
<span class="expander" onclick="<%= remote_function :url => {:action => 'show', :id => @project, :path => to_path_param(entry.path), :rev => @rev, :depth => (depth + 1), :parent_id => tr_id},
|
||||||
|
|||||||
@@ -15,7 +15,6 @@
|
|||||||
<% end %>
|
<% end %>
|
||||||
|
|
||||||
|
|
||||||
<div class="autoscroll">
|
|
||||||
<table class="list">
|
<table class="list">
|
||||||
<thead><tr>
|
<thead><tr>
|
||||||
<%= sort_header_tag('login', :caption => l(:field_login)) %>
|
<%= sort_header_tag('login', :caption => l(:field_login)) %>
|
||||||
@@ -42,7 +41,7 @@
|
|||||||
<% end -%>
|
<% end -%>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
|
||||||
<p class="pagination"><%= pagination_links_full @user_pages, @user_count %></p>
|
<p class="pagination"><%= pagination_links_full @user_pages, @user_count %></p>
|
||||||
|
|
||||||
<% html_title(l(:label_user_plural)) -%>
|
<% html_title(l(:label_user_plural)) -%>
|
||||||
|
|||||||
@@ -25,7 +25,6 @@
|
|||||||
<% form_tag({}, :id => 'workflow_form' ) do %>
|
<% form_tag({}, :id => 'workflow_form' ) do %>
|
||||||
<%= hidden_field_tag 'tracker_id', @tracker.id %>
|
<%= hidden_field_tag 'tracker_id', @tracker.id %>
|
||||||
<%= hidden_field_tag 'role_id', @role.id %>
|
<%= hidden_field_tag 'role_id', @role.id %>
|
||||||
<div class="autoscroll">
|
|
||||||
<table class="list">
|
<table class="list">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
@@ -53,7 +52,6 @@
|
|||||||
<% end %>
|
<% end %>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
|
||||||
<p><%= check_all_links 'workflow_form' %></p>
|
<p><%= check_all_links 'workflow_form' %></p>
|
||||||
|
|
||||||
<%= submit_tag l(:button_save) %>
|
<%= submit_tag l(:button_save) %>
|
||||||
|
|||||||
@@ -876,9 +876,3 @@ bg:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|
||||||
@@ -900,8 +900,3 @@ bs:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -879,8 +879,3 @@ ca:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -882,8 +882,3 @@ cs:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -902,8 +902,3 @@ da:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -902,8 +902,3 @@ de:
|
|||||||
Sie sind dabei, einige oder alle ihre Berechtigungen zu entfernen. Es ist möglich, dass Sie danach das Projekt nicht mehr sehen oder editieren dürfen.
|
Sie sind dabei, einige oder alle ihre Berechtigungen zu entfernen. Es ist möglich, dass Sie danach das Projekt nicht mehr sehen oder editieren dürfen.
|
||||||
Sind Sie wirklich sicher, dass Sie dies tun möchten?
|
Sind Sie wirklich sicher, dass Sie dies tun möchten?
|
||||||
label_close_versions: Vollständige Versionen schließen
|
label_close_versions: Vollständige Versionen schließen
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -882,8 +882,3 @@ el:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -329,14 +329,12 @@ en:
|
|||||||
setting_issue_done_ratio_issue_status: Use the issue status
|
setting_issue_done_ratio_issue_status: Use the issue status
|
||||||
setting_start_of_week: Start calendars on
|
setting_start_of_week: Start calendars on
|
||||||
setting_rest_api_enabled: Enable REST web service
|
setting_rest_api_enabled: Enable REST web service
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
|
|
||||||
permission_add_project: Create project
|
permission_add_project: Create project
|
||||||
permission_add_subprojects: Create subprojects
|
permission_add_subprojects: Create subprojects
|
||||||
permission_edit_project: Edit project
|
permission_edit_project: Edit project
|
||||||
permission_select_project_modules: Select project modules
|
permission_select_project_modules: Select project modules
|
||||||
permission_manage_members: Manage members
|
permission_manage_members: Manage members
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
permission_manage_versions: Manage versions
|
permission_manage_versions: Manage versions
|
||||||
permission_manage_categories: Manage issue categories
|
permission_manage_categories: Manage issue categories
|
||||||
permission_view_issues: View Issues
|
permission_view_issues: View Issues
|
||||||
@@ -384,7 +382,6 @@ en:
|
|||||||
permission_edit_own_messages: Edit own messages
|
permission_edit_own_messages: Edit own messages
|
||||||
permission_delete_messages: Delete messages
|
permission_delete_messages: Delete messages
|
||||||
permission_delete_own_messages: Delete own messages
|
permission_delete_own_messages: Delete own messages
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
|
|
||||||
project_module_issue_tracking: Issue tracking
|
project_module_issue_tracking: Issue tracking
|
||||||
project_module_time_tracking: Time tracking
|
project_module_time_tracking: Time tracking
|
||||||
@@ -665,8 +662,6 @@ en:
|
|||||||
label_board: Forum
|
label_board: Forum
|
||||||
label_board_new: New forum
|
label_board_new: New forum
|
||||||
label_board_plural: Forums
|
label_board_plural: Forums
|
||||||
label_board_locked: Locked
|
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_topic_plural: Topics
|
label_topic_plural: Topics
|
||||||
label_message_plural: Messages
|
label_message_plural: Messages
|
||||||
label_message_last: Last message
|
label_message_last: Last message
|
||||||
@@ -885,4 +880,3 @@ en:
|
|||||||
enumeration_doc_categories: Document categories
|
enumeration_doc_categories: Document categories
|
||||||
enumeration_activities: Activities (time tracking)
|
enumeration_activities: Activities (time tracking)
|
||||||
enumeration_system_activity: System Activity
|
enumeration_system_activity: System Activity
|
||||||
|
|
||||||
|
|||||||
+7
-12
@@ -95,8 +95,8 @@ es:
|
|||||||
one: "más de 1 año"
|
one: "más de 1 año"
|
||||||
other: "más de {{count}} años"
|
other: "más de {{count}} años"
|
||||||
almost_x_years:
|
almost_x_years:
|
||||||
one: "casi 1 año"
|
one: "almost 1 year"
|
||||||
other: "casi {{count}} años"
|
other: "almost {{count}} years"
|
||||||
|
|
||||||
activerecord:
|
activerecord:
|
||||||
errors:
|
errors:
|
||||||
@@ -920,14 +920,9 @@ es:
|
|||||||
button_show: Mostrar
|
button_show: Mostrar
|
||||||
text_line_separated: Múltiples valores permitidos (un valor en cada línea).
|
text_line_separated: Múltiples valores permitidos (un valor en cada línea).
|
||||||
setting_mail_handler_body_delimiters: Truncar correos tras una de estas líneas
|
setting_mail_handler_body_delimiters: Truncar correos tras una de estas líneas
|
||||||
permission_add_subprojects: Crear subproyectos
|
permission_add_subprojects: Create subprojects
|
||||||
label_subproject_new: Nuevo subproyecto
|
label_subproject_new: New subproject
|
||||||
text_own_membership_delete_confirmation: |-
|
text_own_membership_delete_confirmation: |-
|
||||||
Está a punto de eliminar algún o todos sus permisos y podría perder la posibilidad de modificar este proyecto tras hacerlo.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
¿Está seguro de querer continuar?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Cerrar versiones completadas
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -912,8 +912,3 @@ fi:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -352,7 +352,6 @@ fr:
|
|||||||
setting_rest_api_enabled: Activer l'API REST
|
setting_rest_api_enabled: Activer l'API REST
|
||||||
setting_gravatar_default: Image Gravatar par défaut
|
setting_gravatar_default: Image Gravatar par défaut
|
||||||
setting_start_of_week: Jour de début des calendriers
|
setting_start_of_week: Jour de début des calendriers
|
||||||
setting_cache_formatted_text: Mettre en cache le texte formaté
|
|
||||||
|
|
||||||
permission_add_project: Créer un projet
|
permission_add_project: Créer un projet
|
||||||
permission_add_subprojects: Créer des sous-projets
|
permission_add_subprojects: Créer des sous-projets
|
||||||
@@ -406,8 +405,6 @@ fr:
|
|||||||
permission_edit_own_messages: Modifier ses propres messages
|
permission_edit_own_messages: Modifier ses propres messages
|
||||||
permission_delete_messages: Supprimer les messages
|
permission_delete_messages: Supprimer les messages
|
||||||
permission_delete_own_messages: Supprimer ses propres messages
|
permission_delete_own_messages: Supprimer ses propres messages
|
||||||
permission_export_wiki_pages: Exporter les pages
|
|
||||||
permission_manage_project_activities: Gérer les activités
|
|
||||||
|
|
||||||
project_module_issue_tracking: Suivi des demandes
|
project_module_issue_tracking: Suivi des demandes
|
||||||
project_module_time_tracking: Suivi du temps passé
|
project_module_time_tracking: Suivi du temps passé
|
||||||
@@ -906,5 +903,3 @@ fr:
|
|||||||
text_journal_deleted: "{{label}} {{old}} supprimé"
|
text_journal_deleted: "{{label}} {{old}} supprimé"
|
||||||
text_journal_added: "{{label}} {{value}} ajouté"
|
text_journal_added: "{{label}} {{value}} ajouté"
|
||||||
enumeration_system_activity: Activité système
|
enumeration_system_activity: Activité système
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Verrouillé
|
|
||||||
|
|||||||
@@ -902,8 +902,3 @@ gl:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -886,8 +886,3 @@ he:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -1,896 +0,0 @@
|
|||||||
# Croatian translations for Ruby on Rails
|
|
||||||
# by Helix d.o.o. (info@helix.hr)
|
|
||||||
|
|
||||||
hr:
|
|
||||||
date:
|
|
||||||
formats:
|
|
||||||
# Use the strftime parameters for formats.
|
|
||||||
# When no format has been given, it uses default.
|
|
||||||
# You can provide other formats here if you like!
|
|
||||||
default: "%m/%d/%Y"
|
|
||||||
short: "%b %d"
|
|
||||||
long: "%B %d, %Y"
|
|
||||||
|
|
||||||
day_names: [Ponedjeljak, Utorak, Srijeda, Četvrtak, Petak, Subota, Nedjelja]
|
|
||||||
abbr_day_names: [Ned, Pon, Uto, Sri, Čet, Pet, Sub]
|
|
||||||
|
|
||||||
# Don't forget the nil at the beginning; there's no such thing as a 0th month
|
|
||||||
month_names: [~, Sijecanj, Veljaca, Ožujak, Travanj, Svibanj, Lipanj, Srpanj, Kolovoz, Rujan, Listopad, Studeni, Prosinac]
|
|
||||||
abbr_month_names: [~, Sij, Velj, Ožu, Tra, Svi, Lip, Srp, Kol, Ruj, List, Stu, Pro]
|
|
||||||
# Used in date_select and datime_select.
|
|
||||||
order: [ :year, :month, :day ]
|
|
||||||
|
|
||||||
time:
|
|
||||||
formats:
|
|
||||||
default: "%m/%d/%Y %I:%M %p"
|
|
||||||
time: "%I:%M %p"
|
|
||||||
short: "%d %b %H:%M"
|
|
||||||
long: "%B %d, %Y %H:%M"
|
|
||||||
am: "am"
|
|
||||||
pm: "pm"
|
|
||||||
|
|
||||||
datetime:
|
|
||||||
distance_in_words:
|
|
||||||
half_a_minute: "pola minute"
|
|
||||||
less_than_x_seconds:
|
|
||||||
one: "manje od sekunde"
|
|
||||||
other: "manje od {{count}} sekundi"
|
|
||||||
x_seconds:
|
|
||||||
one: "1 sekunda"
|
|
||||||
other: "{{count}} sekundi"
|
|
||||||
less_than_x_minutes:
|
|
||||||
one: "manje od minute"
|
|
||||||
other: "manje od {{count}} minuta"
|
|
||||||
x_minutes:
|
|
||||||
one: "1 minuta"
|
|
||||||
other: "{{count}} minuta"
|
|
||||||
about_x_hours:
|
|
||||||
one: "oko sat vremena"
|
|
||||||
other: "oko {{count}} sati"
|
|
||||||
x_days:
|
|
||||||
one: "1 dan"
|
|
||||||
other: "{{count}} dana"
|
|
||||||
about_x_months:
|
|
||||||
one: "oko 1 mjesec"
|
|
||||||
other: "oko {{count}} mjeseci"
|
|
||||||
x_months:
|
|
||||||
one: "mjesec"
|
|
||||||
other: "{{count}} mjeseci"
|
|
||||||
about_x_years:
|
|
||||||
one: "1 godina"
|
|
||||||
other: "{{count}} godina"
|
|
||||||
over_x_years:
|
|
||||||
one: "preko 1 godine"
|
|
||||||
other: "preko {{count}} godina"
|
|
||||||
|
|
||||||
number:
|
|
||||||
human:
|
|
||||||
format:
|
|
||||||
delimiter: ""
|
|
||||||
precision: 1
|
|
||||||
storage_units:
|
|
||||||
format: "%n %u"
|
|
||||||
units:
|
|
||||||
byte:
|
|
||||||
one: "Byte"
|
|
||||||
other: "Bytes"
|
|
||||||
kb: "KB"
|
|
||||||
mb: "MB"
|
|
||||||
gb: "GB"
|
|
||||||
tb: "TB"
|
|
||||||
|
|
||||||
|
|
||||||
# Used in array.to_sentence.
|
|
||||||
support:
|
|
||||||
array:
|
|
||||||
sentence_connector: "i"
|
|
||||||
skip_last_comma: false
|
|
||||||
|
|
||||||
activerecord:
|
|
||||||
errors:
|
|
||||||
messages:
|
|
||||||
inclusion: "nije ukljuceno u listu"
|
|
||||||
exclusion: "je rezervirano"
|
|
||||||
invalid: "nije ispravno"
|
|
||||||
confirmation: "ne odgovara za potvrdu"
|
|
||||||
accepted: "mora biti prihvaćen"
|
|
||||||
empty: "ne može biti prazno"
|
|
||||||
blank: "ne može biti razmaka"
|
|
||||||
too_long: "je predug (maximum is {{count}} characters)"
|
|
||||||
too_short: "je prekratak (minimum is {{count}} characters)"
|
|
||||||
wrong_length: "je pogrešne dužine (should be {{count}} characters)"
|
|
||||||
taken: "već je zauzeto"
|
|
||||||
not_a_number: "nije broj"
|
|
||||||
not_a_date: "nije ispravan datum"
|
|
||||||
greater_than: "mora biti veći od {{count}}"
|
|
||||||
greater_than_or_equal_to: "mora biti veći ili jednak {{count}}"
|
|
||||||
equal_to: "mora biti jednak {{count}}"
|
|
||||||
less_than: "mora biti manji od {{count}}"
|
|
||||||
less_than_or_equal_to: "mora bit manji ili jednak{{count}}"
|
|
||||||
odd: "mora biti neparan"
|
|
||||||
even: "mora biti paran"
|
|
||||||
greater_than_start_date: "mora biti veci nego pocetni datum"
|
|
||||||
not_same_project: "ne pripada istom projektu"
|
|
||||||
circular_dependency: "Ovaj relacija stvara kružnu ovisnost"
|
|
||||||
|
|
||||||
actionview_instancetag_blank_option: Molimo odaberite
|
|
||||||
|
|
||||||
general_text_No: 'Ne'
|
|
||||||
general_text_Yes: 'Da'
|
|
||||||
general_text_no: 'ne'
|
|
||||||
general_text_yes: 'da'
|
|
||||||
general_lang_name: 'Hrvatski'
|
|
||||||
general_csv_separator: ','
|
|
||||||
general_csv_decimal_separator: '.'
|
|
||||||
general_csv_encoding: utf8
|
|
||||||
general_pdf_encoding: utf8
|
|
||||||
general_first_day_of_week: '7'
|
|
||||||
|
|
||||||
notice_account_updated: Vaš profil je uspješno promijenjen.
|
|
||||||
notice_account_invalid_creditentials: Neispravno korisničko ime ili zaporka.
|
|
||||||
notice_account_password_updated: Zaporka je uspješno promijenjena.
|
|
||||||
notice_account_wrong_password: Pogrešna zaporka
|
|
||||||
notice_account_register_done: Racun je uspješno napravljen. Da biste aktivirali svoj račun, kliknite na link koji vam je poslan na e-mail.
|
|
||||||
notice_account_unknown_email: Nepoznati korisnik.
|
|
||||||
notice_can_t_change_password: Ovaj račun koristi eksterni izvor prijavljivanja. Nemoguće je promijeniti zaporku.
|
|
||||||
notice_account_lost_email_sent: E-mail s uputama kako bi odabrali novu zaporku je poslan na na vašu e-mail adresu.
|
|
||||||
notice_account_activated: Vaš racun je aktiviran. Možete se prijaviti.
|
|
||||||
notice_successful_create: Uspješno napravljeno.
|
|
||||||
notice_successful_update: Uspješna promjena.
|
|
||||||
notice_successful_delete: Uspješno brisanje.
|
|
||||||
notice_successful_connection: Uspješna veza.
|
|
||||||
notice_file_not_found: Stranica kojoj ste pokušali pristupiti ne postoji ili je uklonjena.
|
|
||||||
notice_locking_conflict: Podataci su ažurirani od strane drugog korisnika.
|
|
||||||
notice_not_authorized: Niste ovlašteni za pristup ovoj stranici.
|
|
||||||
notice_email_sent: E-mail je poslan {{value}}"
|
|
||||||
notice_email_error: Dogodila se pogreška tijekom slanja E-maila ({{value}})"
|
|
||||||
notice_feeds_access_key_reseted: Vaš RSS pristup je resetovan.
|
|
||||||
notice_api_access_key_reseted: Vaš API pristup je resetovan.
|
|
||||||
notice_failed_to_save_issues: "Neuspjelo spremanje {{count}} predmeta na {{total}} odabrane: {{ids}}."
|
|
||||||
notice_no_issue_selected: "Niti jedan predmet nije odabran! Molim, odaberite predmete koje želite urediti."
|
|
||||||
notice_account_pending: "Vaš korisnicki račun je otvoren, čeka odobrenje administratora."
|
|
||||||
notice_default_data_loaded: Konfiguracija je uspješno učitana.
|
|
||||||
notice_unable_delete_version: Nije moguće izbrisati verziju.
|
|
||||||
notice_issue_done_ratios_updated: Issue done ratios updated.
|
|
||||||
|
|
||||||
error_can_t_load_default_data: "Zadanu konfiguracija nije učitana: {{value}}"
|
|
||||||
error_scm_not_found: "Unos i/ili revizija nije pronađen."
|
|
||||||
error_scm_command_failed: "Dogodila se pogreška prilikom pokušaja pristupa: {{value}}"
|
|
||||||
error_scm_annotate: "Ne postoji ili ne može biti obilježen."
|
|
||||||
error_issue_not_found_in_project: 'Nije pronađen ili ne pripada u ovaj projekt'
|
|
||||||
error_no_tracker_in_project: 'No tracker is associated to this project. Please check the Project settings.'
|
|
||||||
error_no_default_issue_status: 'No default issue status is defined. Please check your configuration (Go to "Administration -> Issue statuses").'
|
|
||||||
error_can_not_reopen_issue_on_closed_version: 'An issue assigned to a closed version can not be reopened'
|
|
||||||
error_can_not_archive_project: This project can not be archived
|
|
||||||
error_issue_done_ratios_not_updated: "Issue done ratios not updated."
|
|
||||||
error_workflow_copy_source: 'Please select a source tracker or role'
|
|
||||||
error_workflow_copy_target: 'Please select target tracker(s) and role(s)'
|
|
||||||
|
|
||||||
warning_attachments_not_saved: "{{count}} Datoteka/e nije mogla biti spremljena."
|
|
||||||
|
|
||||||
mail_subject_lost_password: "Vaša {{value}} zaporka"
|
|
||||||
mail_body_lost_password: 'Kako biste promijenili Vašu zaporku slijedite poveznicu:'
|
|
||||||
mail_subject_register: "Aktivacija korisničog računa {{value}}"
|
|
||||||
mail_body_register: 'Da biste aktivirali svoj račun, kliknite na sljedeci link:'
|
|
||||||
mail_body_account_information_external: "Možete koristiti vaš račun {{value}} za prijavu."
|
|
||||||
mail_body_account_information: Vaši korisnički podaci
|
|
||||||
mail_subject_account_activation_request: "{{value}} predmet za aktivaciju korisničkog računa"
|
|
||||||
mail_body_account_activation_request: "Novi korisnik ({{value}}) je registriran. Njegov korisnički račun čeka vaše odobrenje:"
|
|
||||||
mail_subject_reminder: "{{count}} predmet(a) dospijeva sljedećih dana"
|
|
||||||
mail_body_reminder: "{{count}} vama dodijeljen(ih) predmet(a) dospijeva u sljedećih {{days}} dana:"
|
|
||||||
mail_subject_wiki_content_added: "'{{page}}' wiki page has been added"
|
|
||||||
mail_body_wiki_content_added: "The '{{page}}' wiki page has been added by {{author}}."
|
|
||||||
mail_subject_wiki_content_updated: "'{{page}}' wiki page has been updated"
|
|
||||||
mail_body_wiki_content_updated: "The '{{page}}' wiki page has been updated by {{author}}."
|
|
||||||
|
|
||||||
gui_validation_error: 1 pogreška
|
|
||||||
gui_validation_error_plural: "{{count}} pogrešaka"
|
|
||||||
|
|
||||||
field_name: Ime
|
|
||||||
field_description: Opis
|
|
||||||
field_summary: Sažetak
|
|
||||||
field_is_required: Obavezno
|
|
||||||
field_firstname: Ime
|
|
||||||
field_lastname: Prezime
|
|
||||||
field_mail: E-pošta
|
|
||||||
field_filename: Datoteka
|
|
||||||
field_filesize: Veličina
|
|
||||||
field_downloads: Preuzimanja
|
|
||||||
field_author: Autor
|
|
||||||
field_created_on: Napravljen
|
|
||||||
field_updated_on: Promijenjen
|
|
||||||
field_field_format: Format
|
|
||||||
field_is_for_all: Za sve projekte
|
|
||||||
field_possible_values: Moguće vrijednosti
|
|
||||||
field_regexp: Regularni izraz
|
|
||||||
field_min_length: Minimalna dužina
|
|
||||||
field_max_length: Maksimalna dužina
|
|
||||||
field_value: Vrijednost
|
|
||||||
field_category: Kategorija
|
|
||||||
field_title: Naslov
|
|
||||||
field_project: Projekt
|
|
||||||
field_issue: Predmet
|
|
||||||
field_status: Status
|
|
||||||
field_notes: Napomene
|
|
||||||
field_is_closed: Predmet je zatvoren
|
|
||||||
field_is_default: Zadana vrijednost
|
|
||||||
field_tracker: Tracker
|
|
||||||
field_subject: Predmet
|
|
||||||
field_due_date: Do datuma
|
|
||||||
field_assigned_to: Dodijeljeno
|
|
||||||
field_priority: Prioritet
|
|
||||||
field_fixed_version: Verzija
|
|
||||||
field_user: Korisnik
|
|
||||||
field_role: Uloga
|
|
||||||
field_homepage: Naslovnica
|
|
||||||
field_is_public: Javni projekt
|
|
||||||
field_parent: Potprojekt od
|
|
||||||
field_is_in_chlog: Predmeti se prikazuju u dnevniku promjena
|
|
||||||
field_is_in_roadmap: Predmeti se prikazuju u Putokazu
|
|
||||||
field_login: Korisničko ime
|
|
||||||
field_mail_notification: Obavijest putem e-pošte
|
|
||||||
field_admin: Administrator
|
|
||||||
field_last_login_on: Zadnja prijava
|
|
||||||
field_language: Primarni jezik
|
|
||||||
field_effective_date: Datum
|
|
||||||
field_password: Zaporka
|
|
||||||
field_new_password: Nova zaporka
|
|
||||||
field_password_confirmation: Potvrda zaporke
|
|
||||||
field_version: Verzija
|
|
||||||
field_type: Tip
|
|
||||||
field_host: Host
|
|
||||||
field_port: Port
|
|
||||||
field_account: Racun
|
|
||||||
field_base_dn: Osnovni DN
|
|
||||||
field_attr_login: Login atribut
|
|
||||||
field_attr_firstname: Atribut imena
|
|
||||||
field_attr_lastname: Atribut prezimena
|
|
||||||
field_attr_mail: Atribut e-pošte
|
|
||||||
field_onthefly: "Izrada korisnika \"u hodu\""
|
|
||||||
field_start_date: Pocetak
|
|
||||||
field_done_ratio: % Učinjeno
|
|
||||||
field_auth_source: Vrsta prijavljivanja
|
|
||||||
field_hide_mail: Sakrij moju adresu e-pošte
|
|
||||||
field_comments: Komentar
|
|
||||||
field_url: URL
|
|
||||||
field_start_page: Početna stranica
|
|
||||||
field_subproject: Potprojekt
|
|
||||||
field_hours: Sati
|
|
||||||
field_activity: Aktivnost
|
|
||||||
field_spent_on: Datum
|
|
||||||
field_identifier: Identifikator
|
|
||||||
field_is_filter: Korišteno kao filtar
|
|
||||||
field_issue_to_id: Povezano s predmetom
|
|
||||||
field_delay: Odgodeno
|
|
||||||
field_assignable: Predmeti mogu biti dodijeljeni ovoj ulozi
|
|
||||||
field_redirect_existing_links: Preusmjeravanje postojećih linkova
|
|
||||||
field_estimated_hours: Procijenjeno vrijeme
|
|
||||||
field_column_names: Stupci
|
|
||||||
field_time_zone: Vremenska zona
|
|
||||||
field_searchable: Pretraživo
|
|
||||||
field_default_value: Zadana vrijednost
|
|
||||||
field_comments_sorting: Prikaz komentara
|
|
||||||
field_parent_title: Parent page
|
|
||||||
field_editable: Editable
|
|
||||||
field_watcher: Watcher
|
|
||||||
field_identity_url: OpenID URL
|
|
||||||
field_content: Content
|
|
||||||
field_group_by: Group results by
|
|
||||||
|
|
||||||
setting_app_title: Naziv aplikacije
|
|
||||||
setting_app_subtitle: Podnaslov aplikacije
|
|
||||||
setting_welcome_text: Tekst dobrodošlice
|
|
||||||
setting_default_language: Zadani jezik
|
|
||||||
setting_login_required: Potrebna je prijava
|
|
||||||
setting_self_registration: Samoregistracija je dozvoljena
|
|
||||||
setting_attachment_max_size: Maksimalna veličina privitka
|
|
||||||
setting_issues_export_limit: Ograničenje izvoza predmeta
|
|
||||||
setting_mail_from: Izvorna adresa e-pošte
|
|
||||||
setting_bcc_recipients: Blind carbon copy primatelja (bcc)
|
|
||||||
setting_plain_text_mail: obični tekst pošte (bez HTML-a)
|
|
||||||
setting_host_name: Naziv domaćina (host)
|
|
||||||
setting_text_formatting: Oblikovanje teksta
|
|
||||||
setting_wiki_compression: Sažimanje
|
|
||||||
setting_feeds_limit: Ogranicenje unosa sadržaja
|
|
||||||
setting_default_projects_public: Novi projekti su javni po defaultu
|
|
||||||
setting_autofetch_changesets: Autofetch commits
|
|
||||||
setting_sys_api_enabled: Omogući WS za upravljanje skladištem
|
|
||||||
setting_commit_ref_keywords: Referentne ključne riječi
|
|
||||||
setting_commit_fix_keywords: Fiksne ključne riječi
|
|
||||||
setting_autologin: Automatska prijava
|
|
||||||
setting_date_format: Format datuma
|
|
||||||
setting_time_format: Format vremena
|
|
||||||
setting_cross_project_issue_relations: Dozvoli povezivanje predmeta izmedu različitih projekata
|
|
||||||
setting_issue_list_default_columns: Stupci prikazani na listi predmeta
|
|
||||||
setting_repositories_encodings: Kodna stranica
|
|
||||||
setting_commit_logs_encoding: Commit messages encoding
|
|
||||||
setting_emails_footer: Zaglavlje e-pošte
|
|
||||||
setting_protocol: Protokol
|
|
||||||
setting_per_page_options: Objekata po stranici opcija
|
|
||||||
setting_user_format: Oblik prikaza korisnika
|
|
||||||
setting_activity_days_default: Dani prikazane aktivnosti na projektu
|
|
||||||
setting_display_subprojects_issues: Prikaz predmeta potprojekta na glavnom projektu po defaultu
|
|
||||||
setting_enabled_scm: Omogućen SCM
|
|
||||||
setting_mail_handler_body_delimiters: "Truncate emails after one of these lines"
|
|
||||||
setting_mail_handler_api_enabled: Omoguci WS za dolaznu e-poštu
|
|
||||||
setting_mail_handler_api_key: API ključ
|
|
||||||
setting_sequential_project_identifiers: Generiraj slijedne identifikatore projekta
|
|
||||||
setting_gravatar_enabled: Koristi Gravatar korisničke ikone
|
|
||||||
setting_gravatar_default: Default Gravatar image
|
|
||||||
setting_diff_max_lines_displayed: Maksimalni broj diff linija za prikazati
|
|
||||||
setting_file_max_size_displayed: Max size of text files displayed inline
|
|
||||||
setting_repository_log_display_limit: Maximum number of revisions displayed on file log
|
|
||||||
setting_openid: Allow OpenID login and registration
|
|
||||||
setting_password_min_length: Minimum password length
|
|
||||||
setting_new_project_user_role_id: Role given to a non-admin user who creates a project
|
|
||||||
setting_default_projects_modules: Default enabled modules for new projects
|
|
||||||
setting_issue_done_ratio: Calculate the issue done ratio with
|
|
||||||
setting_issue_done_ratio_issue_field: Use the issue field
|
|
||||||
setting_issue_done_ratio_issue_status: Use the issue status
|
|
||||||
setting_start_of_week: Start calendars on
|
|
||||||
setting_rest_api_enabled: Enable REST web service
|
|
||||||
|
|
||||||
permission_add_project: Dodaj projekt
|
|
||||||
permission_add_subprojects: Dodaj potprojekt
|
|
||||||
permission_edit_project: Uredi projekt
|
|
||||||
permission_select_project_modules: Odaberi projektne module
|
|
||||||
permission_manage_members: Upravljaj članovima
|
|
||||||
permission_manage_versions: Upravljaj verzijama
|
|
||||||
permission_manage_categories: Upravljaj kategorijama predmeta
|
|
||||||
permission_view_issues: Pregledaj zahtjeve
|
|
||||||
permission_add_issues: Dodaj predmete
|
|
||||||
permission_edit_issues: Uredi predmete
|
|
||||||
permission_manage_issue_relations: Upravljaj relacijama predmeta
|
|
||||||
permission_add_issue_notes: Dodaj bilješke
|
|
||||||
permission_edit_issue_notes: Uredi bilješke
|
|
||||||
permission_edit_own_issue_notes: Uredi vlastite bilješke
|
|
||||||
permission_move_issues: Premjesti predmete
|
|
||||||
permission_delete_issues: Brisanje predmeta
|
|
||||||
permission_manage_public_queries: Upravljaj javnim upitima
|
|
||||||
permission_save_queries: Spremi upite
|
|
||||||
permission_view_gantt: Pregledaj gantt grafikon
|
|
||||||
permission_view_calendar: Pregledaj kalendar
|
|
||||||
permission_view_issue_watchers: Pregledaj listu promatraca
|
|
||||||
permission_add_issue_watchers: Dodaj promatrača
|
|
||||||
permission_delete_issue_watchers: Delete watchers
|
|
||||||
permission_log_time: Dnevnik utrošenog vremena
|
|
||||||
permission_view_time_entries: Pregledaj utrošeno vrijeme
|
|
||||||
permission_edit_time_entries: Uredi vremenske dnevnike
|
|
||||||
permission_edit_own_time_entries: Edit own time logs
|
|
||||||
permission_manage_news: Upravljaj novostima
|
|
||||||
permission_comment_news: Komentiraj novosti
|
|
||||||
permission_manage_documents: Upravljaj dokumentima
|
|
||||||
permission_view_documents: Pregledaj dokumente
|
|
||||||
permission_manage_files: Upravljaj datotekama
|
|
||||||
permission_view_files: Pregledaj datoteke
|
|
||||||
permission_manage_wiki: Upravljaj wikijem
|
|
||||||
permission_rename_wiki_pages: Promijeni ime wiki stranicama
|
|
||||||
permission_delete_wiki_pages: Obriši wiki stranice
|
|
||||||
permission_view_wiki_pages: Pregledaj wiki
|
|
||||||
permission_view_wiki_edits: Pregledaj povijest wikija
|
|
||||||
permission_edit_wiki_pages: Uredi wiki stranice
|
|
||||||
permission_delete_wiki_pages_attachments: Obriši privitke
|
|
||||||
permission_protect_wiki_pages: Zaštiti wiki stranice
|
|
||||||
permission_manage_repository: Upravljaj skladištem
|
|
||||||
permission_browse_repository: Browse repository
|
|
||||||
permission_view_changesets: View changesets
|
|
||||||
permission_commit_access: Mogućnost pohranjivanja
|
|
||||||
permission_manage_boards: Manage boards
|
|
||||||
permission_view_messages: Pregledaj poruke
|
|
||||||
permission_add_messages: Objavi poruke
|
|
||||||
permission_edit_messages: Uredi poruke
|
|
||||||
permission_edit_own_messages: Uredi vlastite poruke
|
|
||||||
permission_delete_messages: Obriši poruke
|
|
||||||
permission_delete_own_messages: Obriši vlastite poruke
|
|
||||||
|
|
||||||
project_module_issue_tracking: Praćenje predmeta
|
|
||||||
project_module_time_tracking: Praćenje vremena
|
|
||||||
project_module_news: Novosti
|
|
||||||
project_module_documents: Dokumenti
|
|
||||||
project_module_files: Datoteke
|
|
||||||
project_module_wiki: Wiki
|
|
||||||
project_module_repository: Skladište
|
|
||||||
project_module_boards: Boards
|
|
||||||
|
|
||||||
label_user: Korisnik
|
|
||||||
label_user_plural: Korisnici
|
|
||||||
label_user_new: Novi korisnik
|
|
||||||
label_user_anonymous: Anonymous
|
|
||||||
label_project: Projekt
|
|
||||||
label_project_new: Novi projekt
|
|
||||||
label_project_plural: Projekti
|
|
||||||
label_x_projects:
|
|
||||||
zero: no projects
|
|
||||||
one: 1 project
|
|
||||||
other: "{{count}} projects"
|
|
||||||
label_project_all: Svi Projekti
|
|
||||||
label_project_latest: Najnoviji projekt
|
|
||||||
label_issue: Predmet
|
|
||||||
label_issue_new: Novi predmet
|
|
||||||
label_issue_plural: Predmeti
|
|
||||||
label_issue_view_all: Pregled svih predmeta
|
|
||||||
label_issues_by: "Predmeti od {{value}}"
|
|
||||||
label_issue_added: Predmet dodan
|
|
||||||
label_issue_updated: Predmet promijenjen
|
|
||||||
label_document: Dokument
|
|
||||||
label_document_new: Novi dokument
|
|
||||||
label_document_plural: Dokumenti
|
|
||||||
label_document_added: Dokument dodan
|
|
||||||
label_role: Uloga
|
|
||||||
label_role_plural: Uloge
|
|
||||||
label_role_new: Nova uloga
|
|
||||||
label_role_and_permissions: Uloge i ovlasti
|
|
||||||
label_member: Član
|
|
||||||
label_member_new: Novi član
|
|
||||||
label_member_plural: Članovi
|
|
||||||
label_tracker: Vrsta
|
|
||||||
label_tracker_plural: Vrste predmeta
|
|
||||||
label_tracker_new: Nova vrsta
|
|
||||||
label_workflow: Tijek rada
|
|
||||||
label_issue_status: Status predmeta
|
|
||||||
label_issue_status_plural: Status predmeta
|
|
||||||
label_issue_status_new: Novi status
|
|
||||||
label_issue_category: Kategorija predmeta
|
|
||||||
label_issue_category_plural: Kategorije predmeta
|
|
||||||
label_issue_category_new: Nova kategorija
|
|
||||||
label_custom_field: Korisnički definirano polje
|
|
||||||
label_custom_field_plural: Korisnički definirana polja
|
|
||||||
label_custom_field_new: Novo korisnički definirano polje
|
|
||||||
label_enumerations: Pobrojenice
|
|
||||||
label_enumeration_new: Nova vrijednost
|
|
||||||
label_information: Informacija
|
|
||||||
label_information_plural: Informacije
|
|
||||||
label_please_login: Molim prijavite se
|
|
||||||
label_register: Registracija
|
|
||||||
label_login_with_open_id_option: or login with OpenID
|
|
||||||
label_password_lost: Izgubljena zaporka
|
|
||||||
label_home: Početna stranica
|
|
||||||
label_my_page: Moja stranica
|
|
||||||
label_my_account: Moj profil
|
|
||||||
label_my_projects: Moji projekti
|
|
||||||
label_administration: Administracija
|
|
||||||
label_login: Korisnik
|
|
||||||
label_logout: Odjava
|
|
||||||
label_help: Pomoć
|
|
||||||
label_reported_issues: Prijavljeni predmeti
|
|
||||||
label_assigned_to_me_issues: Moji predmeti
|
|
||||||
label_last_login: Last connection
|
|
||||||
label_registered_on: Registrirano
|
|
||||||
label_activity: Aktivnosti
|
|
||||||
label_overall_activity: Aktivnosti
|
|
||||||
label_user_activity: "{{value}} ova/ina aktivnost"
|
|
||||||
label_new: Novi
|
|
||||||
label_logged_as: Prijavljeni ste kao
|
|
||||||
label_environment: Okolina
|
|
||||||
label_authentication: Autentikacija
|
|
||||||
label_auth_source: Način prijavljivanja
|
|
||||||
label_auth_source_new: Novi način prijavljivanja
|
|
||||||
label_auth_source_plural: Načini prijavljivanja
|
|
||||||
label_subproject_plural: Potprojekti
|
|
||||||
label_subproject_new: Novi potprojekt
|
|
||||||
label_and_its_subprojects: "{{value}} i njegovi potprojekti"
|
|
||||||
label_min_max_length: Min - Maks veličina
|
|
||||||
label_list: Liste
|
|
||||||
label_date: Datum
|
|
||||||
label_integer: Integer
|
|
||||||
label_float: Float
|
|
||||||
label_boolean: Boolean
|
|
||||||
label_string: Text
|
|
||||||
label_text: Long text
|
|
||||||
label_attribute: Atribut
|
|
||||||
label_attribute_plural: Atributi
|
|
||||||
label_download: "{{count}} Download"
|
|
||||||
label_download_plural: "{{count}} Downloads"
|
|
||||||
label_no_data: Nema podataka za prikaz
|
|
||||||
label_change_status: Promjena statusa
|
|
||||||
label_history: Povijest
|
|
||||||
label_attachment: Datoteka
|
|
||||||
label_attachment_new: Nova datoteka
|
|
||||||
label_attachment_delete: Brisanje datoteke
|
|
||||||
label_attachment_plural: Datoteke
|
|
||||||
label_file_added: Datoteka dodana
|
|
||||||
label_report: Izvješće
|
|
||||||
label_report_plural: Izvješća
|
|
||||||
label_news: Novosti
|
|
||||||
label_news_new: Dodaj novost
|
|
||||||
label_news_plural: Novosti
|
|
||||||
label_news_latest: Novosti
|
|
||||||
label_news_view_all: Pregled svih novosti
|
|
||||||
label_news_added: Novosti dodane
|
|
||||||
label_change_log: Dnevnik promjena
|
|
||||||
label_settings: Postavke
|
|
||||||
label_overview: Pregled
|
|
||||||
label_version: Verzija
|
|
||||||
label_version_new: Nova verzija
|
|
||||||
label_version_plural: Verzije
|
|
||||||
label_confirmation: Potvrda
|
|
||||||
label_export_to: 'Izvoz u:'
|
|
||||||
label_read: Čitaj...
|
|
||||||
label_public_projects: Javni projekti
|
|
||||||
label_open_issues: Otvoren
|
|
||||||
label_open_issues_plural: Otvoreno
|
|
||||||
label_closed_issues: Zatvoren
|
|
||||||
label_closed_issues_plural: Zatvoreno
|
|
||||||
label_x_open_issues_abbr_on_total:
|
|
||||||
zero: 0 open / {{total}}
|
|
||||||
one: 1 open / {{total}}
|
|
||||||
other: "{{count}} open / {{total}}"
|
|
||||||
label_x_open_issues_abbr:
|
|
||||||
zero: 0 open
|
|
||||||
one: 1 open
|
|
||||||
other: "{{count}} open"
|
|
||||||
label_x_closed_issues_abbr:
|
|
||||||
zero: 0 closed
|
|
||||||
one: 1 closed
|
|
||||||
other: "{{count}} closed"
|
|
||||||
label_total: Ukupno
|
|
||||||
label_permissions: Dozvole
|
|
||||||
label_current_status: Trenutni status
|
|
||||||
label_new_statuses_allowed: Novi status je dozvoljen
|
|
||||||
label_all: Svi
|
|
||||||
label_none: nema
|
|
||||||
label_nobody: nitko
|
|
||||||
label_next: Naredni
|
|
||||||
label_previous: Prethodni
|
|
||||||
label_used_by: Korišten od
|
|
||||||
label_details: Detalji
|
|
||||||
label_add_note: Dodaj napomenu
|
|
||||||
label_per_page: Po stranici
|
|
||||||
label_calendar: Kalendar
|
|
||||||
label_months_from: Mjeseci od
|
|
||||||
label_gantt: Gantt
|
|
||||||
label_internal: Interno
|
|
||||||
label_last_changes: "Posljednjih {{count}} promjena"
|
|
||||||
label_change_view_all: Prikaz svih promjena
|
|
||||||
label_personalize_page: Prilagodite ovu stranicu
|
|
||||||
label_comment: Komentar
|
|
||||||
label_comment_plural: Komentari
|
|
||||||
label_x_comments:
|
|
||||||
zero: no comments
|
|
||||||
one: 1 comment
|
|
||||||
other: "{{count}} comments"
|
|
||||||
label_comment_add: Dodaj komentar
|
|
||||||
label_comment_added: Komentar dodan
|
|
||||||
label_comment_delete: Brisanje komentara
|
|
||||||
label_query: Korisnički upit
|
|
||||||
label_query_plural: Korisnički upiti
|
|
||||||
label_query_new: Novi upit
|
|
||||||
label_filter_add: Dodaj filtar
|
|
||||||
label_filter_plural: Filtri
|
|
||||||
label_equals: je
|
|
||||||
label_not_equals: nije
|
|
||||||
label_in_less_than: za manje od
|
|
||||||
label_in_more_than: za više od
|
|
||||||
label_greater_or_equal: '>='
|
|
||||||
label_less_or_equal: '<='
|
|
||||||
label_in: za točno
|
|
||||||
label_today: danas
|
|
||||||
label_all_time: sva vremena
|
|
||||||
label_yesterday: jučer
|
|
||||||
label_this_week: ovog tjedna
|
|
||||||
label_last_week: prošlog tjedna
|
|
||||||
label_last_n_days: "zadnjih {{count}} dana"
|
|
||||||
label_this_month: ovog mjeseca
|
|
||||||
label_last_month: prošlog mjeseca
|
|
||||||
label_this_year: ove godine
|
|
||||||
label_date_range: vremenski raspon
|
|
||||||
label_less_than_ago: manje od
|
|
||||||
label_more_than_ago: više od
|
|
||||||
label_ago: prije
|
|
||||||
label_contains: Sadrži
|
|
||||||
label_not_contains: ne sadrži
|
|
||||||
label_day_plural: dana
|
|
||||||
label_repository: Skladište
|
|
||||||
label_repository_plural: Skladišta
|
|
||||||
label_browse: Pregled
|
|
||||||
label_modification: "{{count}} promjena"
|
|
||||||
label_modification_plural: "{{count}} promjena"
|
|
||||||
label_branch: Branch
|
|
||||||
label_tag: Tag
|
|
||||||
label_revision: Revizija
|
|
||||||
label_revision_plural: Revizije
|
|
||||||
label_revision_id: "Revision {{value}}"
|
|
||||||
label_associated_revisions: Dodijeljene revizije
|
|
||||||
label_added: dodano
|
|
||||||
label_modified: promijenjen
|
|
||||||
label_copied: kopirano
|
|
||||||
label_renamed: preimenovano
|
|
||||||
label_deleted: obrisano
|
|
||||||
label_latest_revision: Posljednja revizija
|
|
||||||
label_latest_revision_plural: Posljednje revizije
|
|
||||||
label_view_revisions: Pregled revizija
|
|
||||||
label_view_all_revisions: View all revisions
|
|
||||||
label_max_size: Maksimalna veličina
|
|
||||||
label_sort_highest: Premjesti na vrh
|
|
||||||
label_sort_higher: Premjesti prema gore
|
|
||||||
label_sort_lower: Premjesti prema dolje
|
|
||||||
label_sort_lowest: Premjesti na dno
|
|
||||||
label_roadmap: Putokaz
|
|
||||||
label_roadmap_due_in: "Završava se za {{value}}"
|
|
||||||
label_roadmap_overdue: "{{value}} kasni"
|
|
||||||
label_roadmap_no_issues: Nema predmeta za ovu verziju
|
|
||||||
label_search: Traži
|
|
||||||
label_result_plural: Rezultati
|
|
||||||
label_all_words: Sve riječi
|
|
||||||
label_wiki: Wiki
|
|
||||||
label_wiki_edit: Wiki promjena
|
|
||||||
label_wiki_edit_plural: Wiki promjene
|
|
||||||
label_wiki_page: Wiki stranica
|
|
||||||
label_wiki_page_plural: Wiki stranice
|
|
||||||
label_index_by_title: Indeks po naslovima
|
|
||||||
label_index_by_date: Indeks po datumu
|
|
||||||
label_current_version: Trenutna verzija
|
|
||||||
label_preview: Brzi pregled
|
|
||||||
label_feed_plural: Feeds
|
|
||||||
label_changes_details: Detalji svih promjena
|
|
||||||
label_issue_tracking: Praćenje predmeta
|
|
||||||
label_spent_time: Utrošeno vrijeme
|
|
||||||
label_f_hour: "{{value}} sata"
|
|
||||||
label_f_hour_plural: "{{value}} sati"
|
|
||||||
label_time_tracking: Praćenje vremena
|
|
||||||
label_change_plural: Promjene
|
|
||||||
label_statistics: Statistika
|
|
||||||
label_commits_per_month: Pohrana po mjesecu
|
|
||||||
label_commits_per_author: Pohrana po autoru
|
|
||||||
label_view_diff: Pregled razlika
|
|
||||||
label_diff_inline: uvučeno
|
|
||||||
label_diff_side_by_side: paralelno
|
|
||||||
label_options: Opcije
|
|
||||||
label_copy_workflow_from: Kopiraj tijek rada od
|
|
||||||
label_permissions_report: Izvješće o dozvolama
|
|
||||||
label_watched_issues: Praćeni predmeti
|
|
||||||
label_related_issues: Povezani predmeti
|
|
||||||
label_applied_status: Primijenjen status
|
|
||||||
label_loading: Učitavam...
|
|
||||||
label_relation_new: Nova relacija
|
|
||||||
label_relation_delete: Brisanje relacije
|
|
||||||
label_relates_to: u relaciji sa
|
|
||||||
label_duplicates: Duplira
|
|
||||||
label_duplicated_by: ponovljen kao
|
|
||||||
label_blocks: blokira
|
|
||||||
label_blocked_by: blokiran od strane
|
|
||||||
label_precedes: prethodi
|
|
||||||
label_follows: slijedi
|
|
||||||
label_end_to_start: od kraja do početka
|
|
||||||
label_end_to_end: od kraja do kraja
|
|
||||||
label_end_to_start: od kraja do početka
|
|
||||||
label_end_to_end: od kraja do kraja
|
|
||||||
label_stay_logged_in: Ostanite prijavljeni
|
|
||||||
label_disabled: Isključen
|
|
||||||
label_show_completed_versions: Prikaži završene verzije
|
|
||||||
label_me: ja
|
|
||||||
label_board: Forum
|
|
||||||
label_board_new: Novi forum
|
|
||||||
label_board_plural: Forumi
|
|
||||||
label_topic_plural: Teme
|
|
||||||
label_message_plural: Poruke
|
|
||||||
label_message_last: Posljednja poruka
|
|
||||||
label_message_new: Nova poruka
|
|
||||||
label_message_posted: Poruka dodana
|
|
||||||
label_reply_plural: Odgovori
|
|
||||||
label_send_information: Pošalji korisniku informaciju o profilu
|
|
||||||
label_year: Godina
|
|
||||||
label_month: Mjesec
|
|
||||||
label_week: Tjedan
|
|
||||||
label_date_from: Od
|
|
||||||
label_date_to: Do
|
|
||||||
label_language_based: Zasnovano na jeziku
|
|
||||||
label_sort_by: "Uredi po {{value}}"
|
|
||||||
label_send_test_email: Pošalji testno E-pismo
|
|
||||||
label_feeds_access_key: RSS access key
|
|
||||||
label_missing_feeds_access_key: Missing a RSS access key
|
|
||||||
label_feeds_access_key_created_on: "RSS kljuc za pristup je napravljen prije {{value}}"
|
|
||||||
label_module_plural: Moduli
|
|
||||||
label_added_time_by: "Promijenio {{author}} prije {{age}}"
|
|
||||||
label_updated_time_by: "Dodao/la {{author}} prije {{age}}"
|
|
||||||
label_updated_time: "Promijenjeno prije {{value}}"
|
|
||||||
label_jump_to_a_project: Prebaci se na projekt...
|
|
||||||
label_file_plural: Datoteke
|
|
||||||
label_changeset_plural: Promjene
|
|
||||||
label_default_columns: Zadani stupci
|
|
||||||
label_no_change_option: (Bez promjene)
|
|
||||||
label_bulk_edit_selected_issues: Zajednička promjena izabranih predmeta
|
|
||||||
label_theme: Tema
|
|
||||||
label_default: Zadana
|
|
||||||
label_search_titles_only: Pretraživanje samo naslova
|
|
||||||
label_user_mail_option_all: "Za bilo koji događaj na svim mojim projektima"
|
|
||||||
label_user_mail_option_selected: "Za bilo koji događaj samo za izabrane projekte..."
|
|
||||||
label_user_mail_option_none: "Samo za stvari koje pratim ili u kojima sudjelujem"
|
|
||||||
label_user_mail_no_self_notified: "Ne želim primati obavijesti o promjenama koje sam napravim"
|
|
||||||
label_registration_activation_by_email: aktivacija putem e-pošte
|
|
||||||
label_registration_manual_activation: ručna aktivacija
|
|
||||||
label_registration_automatic_activation: automatska aktivacija
|
|
||||||
label_display_per_page: "Po stranici: {{value}}"
|
|
||||||
label_age: Starost
|
|
||||||
label_change_properties: Promijeni svojstva
|
|
||||||
label_general: Općenito
|
|
||||||
label_more: Još
|
|
||||||
label_scm: SCM
|
|
||||||
label_plugins: Plugins
|
|
||||||
label_ldap_authentication: LDAP autentikacija
|
|
||||||
label_downloads_abbr: D/L
|
|
||||||
label_optional_description: Opcije
|
|
||||||
label_add_another_file: Dodaj još jednu datoteku
|
|
||||||
label_preferences: Preferences
|
|
||||||
label_chronological_order: U kronološkom redoslijedu
|
|
||||||
label_reverse_chronological_order: U obrnutom kronološkom redoslijedu
|
|
||||||
label_planning: Planiranje
|
|
||||||
label_incoming_emails: Dolazne poruke e-pošte
|
|
||||||
label_generate_key: Generiraj ključ
|
|
||||||
label_issue_watchers: Promatrači
|
|
||||||
label_example: Primjer
|
|
||||||
label_display: Display
|
|
||||||
label_sort: Sort
|
|
||||||
label_ascending: Ascending
|
|
||||||
label_descending: Descending
|
|
||||||
label_date_from_to: From {{start}} to {{end}}
|
|
||||||
label_wiki_content_added: Wiki page added
|
|
||||||
label_wiki_content_updated: Wiki page updated
|
|
||||||
label_group: Group
|
|
||||||
label_group_plural: Grupe
|
|
||||||
label_group_new: Nova grupa
|
|
||||||
label_time_entry_plural: Spent time
|
|
||||||
label_version_sharing_none: Not shared
|
|
||||||
label_version_sharing_descendants: With subprojects
|
|
||||||
label_version_sharing_hierarchy: With project hierarchy
|
|
||||||
label_version_sharing_tree: With project tree
|
|
||||||
label_version_sharing_system: With all projects
|
|
||||||
label_update_issue_done_ratios: Update issue done ratios
|
|
||||||
label_copy_source: Source
|
|
||||||
label_copy_target: Target
|
|
||||||
label_copy_same_as_target: Same as target
|
|
||||||
label_display_used_statuses_only: Only display statuses that are used by this tracker
|
|
||||||
label_api_access_key: API access key
|
|
||||||
label_missing_api_access_key: Missing an API access key
|
|
||||||
label_api_access_key_created_on: "API access key created {{value}} ago"
|
|
||||||
|
|
||||||
button_login: Prijavi
|
|
||||||
button_submit: Pošalji
|
|
||||||
button_save: Spremi
|
|
||||||
button_check_all: Označi sve
|
|
||||||
button_uncheck_all: Isključi sve
|
|
||||||
button_delete: Obriši
|
|
||||||
button_create: Napravi
|
|
||||||
button_create_and_continue: Napravi i nastavi
|
|
||||||
button_test: Test
|
|
||||||
button_edit: Uredi
|
|
||||||
button_add: Dodaj
|
|
||||||
button_change: Promijeni
|
|
||||||
button_apply: Primijeni
|
|
||||||
button_clear: Ukloni
|
|
||||||
button_lock: Zaključaj
|
|
||||||
button_unlock: Otključaj
|
|
||||||
button_download: Preuzmi
|
|
||||||
button_list: Spisak
|
|
||||||
button_view: Pregled
|
|
||||||
button_move: Premjesti
|
|
||||||
button_move_and_follow: Move and follow
|
|
||||||
button_back: Nazad
|
|
||||||
button_cancel: Odustani
|
|
||||||
button_activate: Aktiviraj
|
|
||||||
button_sort: Redoslijed
|
|
||||||
button_log_time: Zapiši vrijeme
|
|
||||||
button_rollback: Izvrši rollback na ovu verziju
|
|
||||||
button_watch: Prati
|
|
||||||
button_unwatch: Prekini pracenje
|
|
||||||
button_reply: Odgovori
|
|
||||||
button_archive: Arhiviraj
|
|
||||||
button_rollback: Dearhiviraj
|
|
||||||
button_reset: Poništi
|
|
||||||
button_rename: Promijeni ime
|
|
||||||
button_change_password: Promjena zaporke
|
|
||||||
button_copy: Kopiraj
|
|
||||||
button_copy_and_follow: Copy and follow
|
|
||||||
button_annotate: Annotate
|
|
||||||
button_update: Promijeni
|
|
||||||
button_configure: Konfiguracija
|
|
||||||
button_quote: Navod
|
|
||||||
button_duplicate: Duplicate
|
|
||||||
button_show: Show
|
|
||||||
|
|
||||||
status_active: aktivan
|
|
||||||
status_registered: Registriran
|
|
||||||
status_locked: zaključan
|
|
||||||
|
|
||||||
version_status_open: open
|
|
||||||
version_status_locked: locked
|
|
||||||
version_status_closed: closed
|
|
||||||
|
|
||||||
field_active: Active
|
|
||||||
|
|
||||||
text_select_mail_notifications: Izbor akcija za koje će biti poslana obavijest e-poštom.
|
|
||||||
text_regexp_info: eg. ^[A-Z0-9]+$
|
|
||||||
text_min_max_length_info: 0 znači bez ograničenja
|
|
||||||
text_project_destroy_confirmation: Da li ste sigurni da želite izbrisati ovaj projekt i sve njegove podatke?
|
|
||||||
text_subprojects_destroy_warning: "Njegov(i) potprojekt(i): {{value}} će također biti obrisan."
|
|
||||||
text_workflow_edit: Select a role and a tracker to edit the workflow
|
|
||||||
text_are_you_sure: Da li ste sigurni?
|
|
||||||
text_journal_changed: "{{label}} promijenjen iz {{old}} u {{new}}"
|
|
||||||
text_journal_set_to: "{{label}} postavi na {{value}}"
|
|
||||||
text_journal_deleted: "{{label}} izbrisano ({{old}})"
|
|
||||||
text_journal_added: "{{label}} {{value}} added"
|
|
||||||
text_tip_task_begin_day: Zadaci koji počinju ovog dana
|
|
||||||
text_tip_task_end_day: zadaci koji se završavaju ovog dana
|
|
||||||
text_tip_task_begin_end_day: Zadaci koji počinju i završavaju se ovog dana
|
|
||||||
text_project_identifier_info: 'mala slova (a-z), brojevi i crtice su dozvoljeni.<br />Jednom snimljen identifikator se ne može mijenjati!'
|
|
||||||
text_caracters_maximum: "Najviše {{count}} znakova."
|
|
||||||
text_caracters_minimum: "Mora biti dugačko najmanje {{count}} znakova."
|
|
||||||
text_length_between: "Dužina izmedu {{min}} i {{max}} znakova."
|
|
||||||
text_tracker_no_workflow: Tijek rada nije definiran za ovaj tracker
|
|
||||||
text_unallowed_characters: Nedozvoljeni znakovi
|
|
||||||
text_comma_separated: Višestruke vrijednosti su dozvoljene (razdvojene zarezom).
|
|
||||||
text_issues_ref_in_commit_messages: Referencing and fixing issues in commit messages
|
|
||||||
text_tracker_no_workflow: No workflow defined for this tracker
|
|
||||||
text_issues_ref_in_commit_messages: Referencing and fixing issues in commit messages
|
|
||||||
text_issue_added: "Predmet {{id}} je prijavljen (prijavio {{author}})."
|
|
||||||
text_issue_updated: "Predmet {{id}} je promijenjen {{author}})."
|
|
||||||
text_wiki_destroy_confirmation: Da li ste sigurni da želite izbrisati ovaj wiki i njegov sadržaj?
|
|
||||||
text_issue_category_destroy_question: "Neke predmeti ({{count}}) su dodijeljeni ovoj kategoriji. Što želite uraditi?"
|
|
||||||
text_issue_category_destroy_assignments: Ukloni dodjeljivanje kategorija
|
|
||||||
text_issue_category_reassign_to: Ponovo dodijeli predmete ovoj kategoriji
|
|
||||||
text_user_mail_option: "Za neizabrane projekte, primit ćete obavjesti samo o stvarima koje pratite ili u kojima sudjelujete (npr. predmete koje ste vi napravili ili koje su vama dodjeljeni)."
|
|
||||||
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."
|
|
||||||
text_load_default_configuration: Učitaj početnu konfiguraciju
|
|
||||||
text_status_changed_by_changeset: "Applied in changeset {{value}}."
|
|
||||||
text_issues_destroy_confirmation: 'Jeste li sigurni da želite obrisati izabrani/e predmet(e)?'
|
|
||||||
text_select_project_modules: 'Odaberite module koji će biti omogućeni za ovaj projekt:'
|
|
||||||
text_default_administrator_account_changed: Default administrator account changed
|
|
||||||
text_file_repository_writable: Dozvoljeno pisanje u direktorij za privitke
|
|
||||||
text_plugin_assets_writable: Plugin assets directory writable
|
|
||||||
text_rmagick_available: RMagick dostupan (nije obavezno)
|
|
||||||
text_destroy_time_entries_question: "{{hours}} sati je prijavljeno za predmete koje želite obrisati. Što ćete učiniti?"
|
|
||||||
text_destroy_time_entries: Obriši prijavljene sate
|
|
||||||
text_assign_time_entries_to_project: Pridruži prijavljene sate projektu
|
|
||||||
text_reassign_time_entries: 'Premjesti prijavljene sate ovom predmetu:'
|
|
||||||
text_user_wrote: "{{value}} je napisao/la:"
|
|
||||||
text_enumeration_destroy_question: "{{count}} objekata je pridruženo toj vrijednosti."
|
|
||||||
text_enumeration_category_reassign_to: 'Premjesti ih ovoj vrijednosti:'
|
|
||||||
text_email_delivery_not_configured: "Email delivery is not configured, and notifications are disabled.\nConfigure your SMTP server in config/email.yml and restart the application to enable them."
|
|
||||||
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."
|
|
||||||
text_diff_truncated: '... Ovaj diff je odrezan zato što prelazi maksimalnu veličinu koja može biti prikazana.'
|
|
||||||
text_custom_field_possible_values_info: 'One line for each value'
|
|
||||||
text_wiki_page_destroy_question: "This page has {{descendants}} child page(s) and descendant(s). What do you want to do?"
|
|
||||||
text_wiki_page_nullify_children: "Keep child pages as root pages"
|
|
||||||
text_wiki_page_destroy_children: "Delete child pages and all their descendants"
|
|
||||||
text_wiki_page_reassign_children: "Reassign child pages to this parent page"
|
|
||||||
default_role_manager: Upravitelj
|
|
||||||
default_role_developper: Razvojni inženjer
|
|
||||||
default_role_reporter: Korisnik
|
|
||||||
default_tracker_bug: Pogreška
|
|
||||||
default_tracker_feature: Funkcionalnost
|
|
||||||
default_tracker_support: Podrška
|
|
||||||
default_issue_status_new: Novo
|
|
||||||
default_issue_status_assigned: Dodijeljeno
|
|
||||||
default_issue_status_resolved: Riješeno
|
|
||||||
default_issue_status_feedback: Povratna informacija
|
|
||||||
default_issue_status_closed: Zatvoreno
|
|
||||||
default_issue_status_rejected: Odbaceno
|
|
||||||
default_doc_category_user: Korisnička dokumentacija
|
|
||||||
default_doc_category_tech: Tehnička dokumentacija
|
|
||||||
default_priority_low: Nizak
|
|
||||||
default_priority_normal: Redovan
|
|
||||||
default_priority_high: Visok
|
|
||||||
default_priority_urgent: Hitan
|
|
||||||
default_priority_immediate: Odmah
|
|
||||||
default_activity_design: Dizajn
|
|
||||||
default_activity_development: Razvoj
|
|
||||||
enumeration_issue_priorities: Prioriteti predmeta
|
|
||||||
enumeration_doc_categories: Kategorija dokumenata
|
|
||||||
enumeration_activities: Aktivnosti (po vremenu)
|
|
||||||
enumeration_system_activity: System Activity
|
|
||||||
field_sharing: Sharing
|
|
||||||
text_line_separated: Multiple values allowed (one line for each value).
|
|
||||||
label_close_versions: Close completed versions
|
|
||||||
button_unarchive: Unarchive
|
|
||||||
label_start_to_end: start to end
|
|
||||||
label_start_to_start: start to start
|
|
||||||
field_issue_to: Related issue
|
|
||||||
default_issue_status_in_progress: In Progress
|
|
||||||
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.
|
|
||||||
Are you sure you want to continue?
|
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
@@ -907,8 +907,3 @@
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -894,8 +894,3 @@ id:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -889,9 +889,3 @@ it:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|
||||||
+5
-10
@@ -64,8 +64,8 @@ ja:
|
|||||||
one: "1年以上"
|
one: "1年以上"
|
||||||
other: "{{count}}年以上"
|
other: "{{count}}年以上"
|
||||||
almost_x_years:
|
almost_x_years:
|
||||||
one: "ほぼ1年"
|
one: "almost 1 year"
|
||||||
other: "ほぼ{{count}}年"
|
other: "almost {{count}} years"
|
||||||
|
|
||||||
number:
|
number:
|
||||||
format:
|
format:
|
||||||
@@ -321,7 +321,6 @@ ja:
|
|||||||
setting_plain_text_mail: プレインテキストのみ(HTMLなし)
|
setting_plain_text_mail: プレインテキストのみ(HTMLなし)
|
||||||
setting_host_name: ホスト名
|
setting_host_name: ホスト名
|
||||||
setting_text_formatting: テキストの書式
|
setting_text_formatting: テキストの書式
|
||||||
setting_cache_formatted_text: 書式化されたテキストをキャッシュする
|
|
||||||
setting_wiki_compression: Wiki履歴を圧縮する
|
setting_wiki_compression: Wiki履歴を圧縮する
|
||||||
setting_feeds_limit: フィード内容の上限
|
setting_feeds_limit: フィード内容の上限
|
||||||
setting_default_projects_public: デフォルトで新しいプロジェクトは公開にする
|
setting_default_projects_public: デフォルトで新しいプロジェクトは公開にする
|
||||||
@@ -399,7 +398,6 @@ ja:
|
|||||||
permission_rename_wiki_pages: Wikiページ名の変更
|
permission_rename_wiki_pages: Wikiページ名の変更
|
||||||
permission_delete_wiki_pages: Wikiページの削除
|
permission_delete_wiki_pages: Wikiページの削除
|
||||||
permission_view_wiki_pages: Wikiの閲覧
|
permission_view_wiki_pages: Wikiの閲覧
|
||||||
permission_export_wiki_pages: Wikiページを他の形式に出力
|
|
||||||
permission_view_wiki_edits: Wiki履歴の閲覧
|
permission_view_wiki_edits: Wiki履歴の閲覧
|
||||||
permission_edit_wiki_pages: Wikiページの編集
|
permission_edit_wiki_pages: Wikiページの編集
|
||||||
permission_delete_wiki_pages_attachments: 添付ファイルの削除
|
permission_delete_wiki_pages_attachments: 添付ファイルの削除
|
||||||
@@ -536,7 +534,6 @@ ja:
|
|||||||
label_version_new: 新しいバージョン
|
label_version_new: 新しいバージョン
|
||||||
label_version_plural: バージョン
|
label_version_plural: バージョン
|
||||||
label_confirmation: 確認
|
label_confirmation: 確認
|
||||||
label_close_versions: 完了したバージョンを終了にする
|
|
||||||
label_export_to: '他の形式に出力:'
|
label_export_to: '他の形式に出力:'
|
||||||
label_read: 読む...
|
label_read: 読む...
|
||||||
label_public_projects: 公開プロジェクト
|
label_public_projects: 公開プロジェクト
|
||||||
@@ -590,8 +587,8 @@ ja:
|
|||||||
label_query_new: 新しいクエリ
|
label_query_new: 新しいクエリ
|
||||||
label_filter_add: フィルタ追加
|
label_filter_add: フィルタ追加
|
||||||
label_filter_plural: フィルタ
|
label_filter_plural: フィルタ
|
||||||
label_equals: 等しい
|
label_equals: 含む
|
||||||
label_not_equals: 等しくない
|
label_not_equals: 含まない
|
||||||
label_in_less_than: が今日から○日後以前
|
label_in_less_than: が今日から○日後以前
|
||||||
label_in_more_than: が今日から○日後以降
|
label_in_more_than: が今日から○日後以降
|
||||||
label_greater_or_equal: 以上
|
label_greater_or_equal: 以上
|
||||||
@@ -695,8 +692,6 @@ ja:
|
|||||||
label_board: フォーラム
|
label_board: フォーラム
|
||||||
label_board_new: 新しいフォーラム
|
label_board_new: 新しいフォーラム
|
||||||
label_board_plural: フォーラム
|
label_board_plural: フォーラム
|
||||||
label_board_sticky: スティッキー
|
|
||||||
label_board_locked: ロック
|
|
||||||
label_topic_plural: トピック
|
label_topic_plural: トピック
|
||||||
label_message_plural: メッセージ
|
label_message_plural: メッセージ
|
||||||
label_message_last: 最新のメッセージ
|
label_message_last: 最新のメッセージ
|
||||||
@@ -915,4 +910,4 @@ ja:
|
|||||||
enumeration_doc_categories: 文書カテゴリ
|
enumeration_doc_categories: 文書カテゴリ
|
||||||
enumeration_activities: 作業分類 (時間トラッキング)
|
enumeration_activities: 作業分類 (時間トラッキング)
|
||||||
enumeration_system_activity: システム作業分類
|
enumeration_system_activity: システム作業分類
|
||||||
permission_manage_project_activities: Manage project activities
|
label_close_versions: Close completed versions
|
||||||
|
|||||||
+22
-27
@@ -2,7 +2,7 @@
|
|||||||
# by Kihyun Yoon(ddumbugie@gmail.com),http://plenum.textcube.com/
|
# by Kihyun Yoon(ddumbugie@gmail.com),http://plenum.textcube.com/
|
||||||
# by John Hwang (jhwang@tavon.org),http://github.com/tavon
|
# by John Hwang (jhwang@tavon.org),http://github.com/tavon
|
||||||
# by Yonghwan SO(please insert your email), last update at 2009-09-11
|
# by Yonghwan SO(please insert your email), last update at 2009-09-11
|
||||||
# last update at 2010-01-23 by Kihyun Yoon
|
# last update at 2009-09-11 by Kihyun Yoon
|
||||||
ko:
|
ko:
|
||||||
date:
|
date:
|
||||||
formats:
|
formats:
|
||||||
@@ -65,8 +65,8 @@ ko:
|
|||||||
one: "일년 이상"
|
one: "일년 이상"
|
||||||
other: "{{count}}년 이상"
|
other: "{{count}}년 이상"
|
||||||
almost_x_years:
|
almost_x_years:
|
||||||
one: "약 1년"
|
one: "almost 1 year"
|
||||||
other: "약 {{count}}년"
|
other: "almost {{count}} years"
|
||||||
prompts:
|
prompts:
|
||||||
year: "년"
|
year: "년"
|
||||||
month: "월"
|
month: "월"
|
||||||
@@ -182,8 +182,8 @@ ko:
|
|||||||
general_lang_name: '한국어(Korean)'
|
general_lang_name: '한국어(Korean)'
|
||||||
general_csv_separator: ','
|
general_csv_separator: ','
|
||||||
general_csv_decimal_separator: '.'
|
general_csv_decimal_separator: '.'
|
||||||
general_csv_encoding: CP949
|
general_csv_encoding: UTF-8
|
||||||
general_pdf_encoding: CP949
|
general_pdf_encoding: UTF-8
|
||||||
general_first_day_of_week: '7'
|
general_first_day_of_week: '7'
|
||||||
|
|
||||||
notice_account_updated: 계정이 성공적으로 변경되었습니다.
|
notice_account_updated: 계정이 성공적으로 변경되었습니다.
|
||||||
@@ -709,7 +709,7 @@ ko:
|
|||||||
label_language_based: 언어설정에 따름
|
label_language_based: 언어설정에 따름
|
||||||
label_sort_by: "{{value}}(으)로 정렬"
|
label_sort_by: "{{value}}(으)로 정렬"
|
||||||
label_send_test_email: 테스트 메일 보내기
|
label_send_test_email: 테스트 메일 보내기
|
||||||
label_feeds_access_key_created_on: "피드 접근 키가 {{value}} 이전에 생성되었습니다."
|
label_feeds_access_key_created_on: "피드 접근 키가 {{value}} 이전에 생성됨 "
|
||||||
label_module_plural: 모듈
|
label_module_plural: 모듈
|
||||||
label_added_time_by: "{{author}}이(가) {{age}} 전에 추가함"
|
label_added_time_by: "{{author}}이(가) {{age}} 전에 추가함"
|
||||||
label_updated_time_by: "{{author}}이(가) {{age}} 전에 변경"
|
label_updated_time_by: "{{author}}이(가) {{age}} 전에 변경"
|
||||||
@@ -925,25 +925,20 @@ ko:
|
|||||||
setting_start_of_week: 달력 시작 요일
|
setting_start_of_week: 달력 시작 요일
|
||||||
permission_view_issues: 일감 보기
|
permission_view_issues: 일감 보기
|
||||||
label_display_used_statuses_only: 이 일감유형에서 사용되는 상태만 보여주기
|
label_display_used_statuses_only: 이 일감유형에서 사용되는 상태만 보여주기
|
||||||
label_revision_id: 개정판 {{value}}
|
label_revision_id: Revision {{value}}
|
||||||
label_api_access_key: API 접근키
|
label_api_access_key: API access key
|
||||||
label_api_access_key_created_on: API 접근키가 {{value}} 전에 생성되었습니다.
|
label_api_access_key_created_on: API access key created {{value}} ago
|
||||||
label_feeds_access_key: RSS 접근키
|
label_feeds_access_key: RSS access key
|
||||||
notice_api_access_key_reseted: API 접근키가 초기화되었습니다.
|
notice_api_access_key_reseted: Your API access key was reset.
|
||||||
setting_rest_api_enabled: REST 웹서비스 활성화
|
setting_rest_api_enabled: Enable REST web service
|
||||||
label_missing_api_access_key: API 접근키가 없습니다.
|
label_missing_api_access_key: Missing an API access key
|
||||||
label_missing_feeds_access_key: RSS 접근키가 없습니다.
|
label_missing_feeds_access_key: Missing a RSS access key
|
||||||
button_show: 보기
|
button_show: Show
|
||||||
text_line_separated: 여러 값이 허용됨(값 마다 한 줄씩)
|
text_line_separated: Multiple values allowed (one line for each value).
|
||||||
setting_mail_handler_body_delimiters: 메일 본문 구분자
|
setting_mail_handler_body_delimiters: Truncate emails after one of these lines
|
||||||
permission_add_subprojects: 하위 프로젝트 만들기
|
permission_add_subprojects: Create subprojects
|
||||||
label_subproject_new: 새 하위 프로젝트
|
label_subproject_new: New subproject
|
||||||
text_own_membership_delete_confirmation: |-
|
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.
|
||||||
계속하시겠습니까?
|
Are you sure you want to continue?
|
||||||
label_close_versions: 완료된 버전 닫기
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -950,8 +950,3 @@ lt:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -864,8 +864,3 @@ nl:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -877,8 +877,3 @@
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -907,8 +907,3 @@ pl:
|
|||||||
version_status_locked: zablokowana
|
version_status_locked: zablokowana
|
||||||
version_status_open: otwarta
|
version_status_open: otwarta
|
||||||
|
|
||||||
label_board_sticky: Przyklejona
|
|
||||||
label_board_locked: Zamknięta
|
|
||||||
permission_export_wiki_pages: Eksport stron wiki
|
|
||||||
permission_manage_project_activities: Zarządzanie aktywnościami projektu
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
|
|||||||
@@ -901,17 +901,11 @@ pt-BR:
|
|||||||
setting_rest_api_enabled: Habilitdar REST web service
|
setting_rest_api_enabled: Habilitdar REST web service
|
||||||
label_missing_api_access_key: Chave de acesso a API faltando
|
label_missing_api_access_key: Chave de acesso a API faltando
|
||||||
label_missing_feeds_access_key: Chave de acesso ao RSS faltando
|
label_missing_feeds_access_key: Chave de acesso ao RSS faltando
|
||||||
text_line_separated: Múltiplos valores permitidos (uma linha para cada valor).
|
text_line_separated: Multiple values allowed (one line for each value).
|
||||||
setting_mail_handler_body_delimiters: Truncar e-mails após uma destas linhas
|
setting_mail_handler_body_delimiters: Truncate emails after one of these lines
|
||||||
permission_add_subprojects: Criar subprojetos
|
permission_add_subprojects: Create subprojects
|
||||||
label_subproject_new: Novo subprojeto
|
label_subproject_new: New subproject
|
||||||
text_own_membership_delete_confirmation: |-
|
text_own_membership_delete_confirmation: |-
|
||||||
Você está para remover algumas de suas próprias permissões e pode não mais estar apto a editar este projeto após esta operação.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Você tem certeza que deseja continuar?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Fechar versões concluídas
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Marcado
|
|
||||||
label_board_locked: Travado
|
|
||||||
label_change_log: Registro de alterações
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -894,8 +894,3 @@ pt:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -879,8 +879,3 @@ ro:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -650,7 +650,7 @@ ru:
|
|||||||
label_send_information: Отправить пользователю информацию по учетной записи
|
label_send_information: Отправить пользователю информацию по учетной записи
|
||||||
label_send_test_email: Послать email для проверки
|
label_send_test_email: Послать email для проверки
|
||||||
label_settings: Настройки
|
label_settings: Настройки
|
||||||
label_show_completed_versions: Показывать завершенные версии
|
label_show_completed_versions: Показать завершенную версию
|
||||||
label_sort: Сортировать
|
label_sort: Сортировать
|
||||||
label_sort_by: "Сортировать по {{value}}"
|
label_sort_by: "Сортировать по {{value}}"
|
||||||
label_sort_higher: Вверх
|
label_sort_higher: Вверх
|
||||||
@@ -941,7 +941,7 @@ ru:
|
|||||||
text_journal_added: "{{label}} {{value}} добавлен"
|
text_journal_added: "{{label}} {{value}} добавлен"
|
||||||
field_active: Активно
|
field_active: Активно
|
||||||
enumeration_system_activity: Системная активность
|
enumeration_system_activity: Системная активность
|
||||||
permission_delete_issue_watchers: Удаление наблюдателей
|
permission_delete_issue_watchers: Удалить наблюдателей
|
||||||
version_status_closed: закрыт
|
version_status_closed: закрыт
|
||||||
version_status_locked: заблокирован
|
version_status_locked: заблокирован
|
||||||
version_status_open: открыт
|
version_status_open: открыт
|
||||||
@@ -974,7 +974,7 @@ ru:
|
|||||||
label_api_access_key: Ключ доступа к API
|
label_api_access_key: Ключ доступа к API
|
||||||
text_line_separated: Разрешено несколько значений (по одному значению в строку).
|
text_line_separated: Разрешено несколько значений (по одному значению в строку).
|
||||||
label_revision_id: Ревизия {{value}}
|
label_revision_id: Ревизия {{value}}
|
||||||
permission_view_issues: Просмотр задач
|
permission_view_issues: Показать проблемы
|
||||||
label_display_used_statuses_only: Отображать только те статусы, которые используются в этом трекере
|
label_display_used_statuses_only: Отображать только те статусы, которые используются в этом трекере
|
||||||
label_api_access_key_created_on: Ключ доступ к API был создан {{value}} назад
|
label_api_access_key_created_on: Ключ доступ к API был создан {{value}} назад
|
||||||
label_feeds_access_key: Ключ доступа к RSS
|
label_feeds_access_key: Ключ доступа к RSS
|
||||||
@@ -984,14 +984,9 @@ ru:
|
|||||||
label_missing_api_access_key: Отсутствует ключ доступа к API
|
label_missing_api_access_key: Отсутствует ключ доступа к API
|
||||||
label_missing_feeds_access_key: Отсутствует ключ доступа к RSS
|
label_missing_feeds_access_key: Отсутствует ключ доступа к RSS
|
||||||
setting_mail_handler_body_delimiters: Урезать письмо после одной из этих строк
|
setting_mail_handler_body_delimiters: Урезать письмо после одной из этих строк
|
||||||
permission_add_subprojects: Создание подпроектов
|
permission_add_subprojects: Создать подпроекты
|
||||||
label_subproject_new: Новый подпроект
|
label_subproject_new: Новый подпроект
|
||||||
text_own_membership_delete_confirmation: |-
|
text_own_membership_delete_confirmation: |-
|
||||||
Вы собираетесь удалить некоторые или все права, из-за чего могут пропасть права на редактирование этого проекта.
|
Вы собираетесь удалить некоторые или все права, из-за чего могут пропасть права на редактирование этого проекта.
|
||||||
Продолжить?
|
Продолжить?
|
||||||
label_close_versions: Закрыть завершенные версии
|
label_close_versions: Закрыть завершенные версии
|
||||||
label_board_sticky: Прикреплена
|
|
||||||
label_board_locked: Заблокирована
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -881,8 +881,3 @@ sk:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -878,8 +878,3 @@ sl:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -897,8 +897,3 @@
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -713,8 +713,6 @@ sv:
|
|||||||
label_board: Forum
|
label_board: Forum
|
||||||
label_board_new: Nytt forum
|
label_board_new: Nytt forum
|
||||||
label_board_plural: Forum
|
label_board_plural: Forum
|
||||||
label_board_locked: Låst
|
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_topic_plural: Ämnen
|
label_topic_plural: Ämnen
|
||||||
label_message_plural: Meddelanden
|
label_message_plural: Meddelanden
|
||||||
label_message_last: Senaste meddelande
|
label_message_last: Senaste meddelande
|
||||||
@@ -933,6 +931,3 @@ sv:
|
|||||||
enumeration_doc_categories: Dokumentkategorier
|
enumeration_doc_categories: Dokumentkategorier
|
||||||
enumeration_activities: Aktiviteter (tidsuppföljning)
|
enumeration_activities: Aktiviteter (tidsuppföljning)
|
||||||
enumeration_system_activity: Systemaktivitet
|
enumeration_system_activity: Systemaktivitet
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -879,8 +879,3 @@ th:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -909,8 +909,3 @@ tr:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -878,8 +878,3 @@ uk:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -941,8 +941,3 @@ vi:
|
|||||||
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
Are you sure you want to continue?
|
Are you sure you want to continue?
|
||||||
label_close_versions: Close completed versions
|
label_close_versions: Close completed versions
|
||||||
label_board_sticky: Sticky
|
|
||||||
label_board_locked: Locked
|
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
@@ -755,8 +755,6 @@
|
|||||||
label_board: 論壇
|
label_board: 論壇
|
||||||
label_board_new: 建立新論壇
|
label_board_new: 建立新論壇
|
||||||
label_board_plural: 論壇
|
label_board_plural: 論壇
|
||||||
label_board_locked: 鎖定
|
|
||||||
label_board_sticky: 置頂
|
|
||||||
label_topic_plural: 討論主題
|
label_topic_plural: 討論主題
|
||||||
label_message_plural: 訊息
|
label_message_plural: 訊息
|
||||||
label_message_last: 上一封訊息
|
label_message_last: 上一封訊息
|
||||||
@@ -975,6 +973,3 @@
|
|||||||
enumeration_doc_categories: 文件分類
|
enumeration_doc_categories: 文件分類
|
||||||
enumeration_activities: 活動 (時間追蹤)
|
enumeration_activities: 活動 (時間追蹤)
|
||||||
enumeration_system_activity: 系統活動
|
enumeration_system_activity: 系統活動
|
||||||
permission_export_wiki_pages: Export wiki pages
|
|
||||||
setting_cache_formatted_text: Cache formatted text
|
|
||||||
permission_manage_project_activities: Manage project activities
|
|
||||||
|
|||||||
+6
-10
@@ -355,7 +355,6 @@ zh:
|
|||||||
setting_rest_api_enabled: 启用REST web service
|
setting_rest_api_enabled: 启用REST web service
|
||||||
|
|
||||||
permission_add_project: 新建项目
|
permission_add_project: 新建项目
|
||||||
permission_add_subprojects: 新建子项目
|
|
||||||
permission_edit_project: 编辑项目
|
permission_edit_project: 编辑项目
|
||||||
permission_select_project_modules: 选择项目模块
|
permission_select_project_modules: 选择项目模块
|
||||||
permission_manage_members: 管理成员
|
permission_manage_members: 管理成员
|
||||||
@@ -491,7 +490,6 @@ zh:
|
|||||||
label_auth_source_new: 新建认证模式
|
label_auth_source_new: 新建认证模式
|
||||||
label_auth_source_plural: 认证模式
|
label_auth_source_plural: 认证模式
|
||||||
label_subproject_plural: 子项目
|
label_subproject_plural: 子项目
|
||||||
label_subproject_new: 新建子项目
|
|
||||||
label_and_its_subprojects: "{{value}} 及其子项目"
|
label_and_its_subprojects: "{{value}} 及其子项目"
|
||||||
label_min_max_length: 最小 - 最大 长度
|
label_min_max_length: 最小 - 最大 长度
|
||||||
label_list: 列表
|
label_list: 列表
|
||||||
@@ -526,7 +524,6 @@ zh:
|
|||||||
label_version: 版本
|
label_version: 版本
|
||||||
label_version_new: 新建版本
|
label_version_new: 新建版本
|
||||||
label_version_plural: 版本
|
label_version_plural: 版本
|
||||||
label_close_versions: 关闭已完成的版本
|
|
||||||
label_confirmation: 确认
|
label_confirmation: 确认
|
||||||
label_export_to: 导出
|
label_export_to: 导出
|
||||||
label_read: 读取...
|
label_read: 读取...
|
||||||
@@ -876,7 +873,6 @@ zh:
|
|||||||
text_wiki_page_reassign_children: 将子页面的上级页面设置为
|
text_wiki_page_reassign_children: 将子页面的上级页面设置为
|
||||||
text_wiki_page_nullify_children: 将子页面保留为根页面
|
text_wiki_page_nullify_children: 将子页面保留为根页面
|
||||||
text_wiki_page_destroy_children: 删除子页面及其所有下级页面
|
text_wiki_page_destroy_children: 删除子页面及其所有下级页面
|
||||||
text_own_membership_delete_confirmation: 你正在删除你现有的某些或全部权限,如果这样做了你可能将会再也无法编辑该项目了。你确定要继续吗?
|
|
||||||
|
|
||||||
default_role_manager: 管理人员
|
default_role_manager: 管理人员
|
||||||
default_role_developper: 开发人员
|
default_role_developper: 开发人员
|
||||||
@@ -904,9 +900,9 @@ zh:
|
|||||||
enumeration_doc_categories: 文档类别
|
enumeration_doc_categories: 文档类别
|
||||||
enumeration_activities: 活动(时间跟踪)
|
enumeration_activities: 活动(时间跟踪)
|
||||||
enumeration_system_activity: 系统活动
|
enumeration_system_activity: 系统活动
|
||||||
label_board_sticky: Sticky
|
permission_add_subprojects: Create subprojects
|
||||||
label_board_locked: Locked
|
label_subproject_new: New subproject
|
||||||
permission_export_wiki_pages: Export wiki pages
|
text_own_membership_delete_confirmation: |-
|
||||||
setting_cache_formatted_text: Cache formatted text
|
You are about to remove some or all of your permissions and may no longer be able to edit this project after that.
|
||||||
permission_manage_project_activities: Manage project activities
|
Are you sure you want to continue?
|
||||||
|
label_close_versions: Close completed versions
|
||||||
|
|||||||
@@ -4,37 +4,6 @@ Redmine - project management software
|
|||||||
Copyright (C) 2006-2010 Jean-Philippe Lang
|
Copyright (C) 2006-2010 Jean-Philippe Lang
|
||||||
http://www.redmine.org/
|
http://www.redmine.org/
|
||||||
|
|
||||||
== 2010-02-07 v0.9.2
|
|
||||||
|
|
||||||
* Fixed: Sub-project repository commits not displayed on parent project issues
|
|
||||||
* Fixed: Potential security leak on my page calendar
|
|
||||||
* Fixed: Project tree structure is broken by deleting the project with the subproject
|
|
||||||
* Fixed: Error message shown duplicated when creating a new group
|
|
||||||
* Fixed: Firefox cuts off large pages
|
|
||||||
* Fixed: Invalid format parameter returns a DoubleRenderError on issues index
|
|
||||||
* Fixed: Unnecessary Quote button on locked forum message
|
|
||||||
* Fixed: Error raised when trying to view the gantt or calendar with a grouped query
|
|
||||||
* Fixed: PDF support for Korean locale
|
|
||||||
* Fixed: Deprecation warning in extra/svn/reposman.rb
|
|
||||||
|
|
||||||
|
|
||||||
== 2010-01-30 v0.9.1
|
|
||||||
|
|
||||||
* Vertical alignment for inline images in formatted text set to 'middle'
|
|
||||||
* Fixed: Redmine.pm error "closing dbh with active statement handles at /usr/lib/perl5/Apache/Redmine.pm"
|
|
||||||
* Fixed: copyright year in footer set to 2010
|
|
||||||
* Fixed: Trac migration script may not output query lines
|
|
||||||
* Fixed: Email notifications may affect language of notice messages on the UI
|
|
||||||
* Fixed: Can not search for 2 letters word
|
|
||||||
* Fixed: Attachments get saved on issue update even if validation fails
|
|
||||||
* Fixed: Tab's 'border-bottom' not absent when selected
|
|
||||||
* Fixed: Issue summary tables that list by user are not sorted
|
|
||||||
* Fixed: Issue pdf export fails if target version is set
|
|
||||||
* Fixed: Issue list export to PDF breaks when issues are sorted by a custom field
|
|
||||||
* Fixed: SQL error when adding a group
|
|
||||||
* Fixes: Min password length during password reset always displays as 4 chars
|
|
||||||
|
|
||||||
|
|
||||||
== 2010-01-09 v0.9.0 (Release candidate)
|
== 2010-01-09 v0.9.0 (Release candidate)
|
||||||
|
|
||||||
* Unlimited subproject nesting
|
* Unlimited subproject nesting
|
||||||
|
|||||||
@@ -244,9 +244,7 @@ sub is_public_project {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
$sth->finish();
|
$sth->finish();
|
||||||
undef $sth;
|
|
||||||
$dbh->disconnect();
|
$dbh->disconnect();
|
||||||
undef $dbh;
|
|
||||||
|
|
||||||
$ret;
|
$ret;
|
||||||
}
|
}
|
||||||
@@ -312,13 +310,10 @@ sub is_member {
|
|||||||
$ret = 1 if ($ldap->authenticate($redmine_user, $redmine_pass));
|
$ret = 1 if ($ldap->authenticate($redmine_user, $redmine_pass));
|
||||||
}
|
}
|
||||||
$sthldap->finish();
|
$sthldap->finish();
|
||||||
undef $sthldap;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$sth->finish();
|
$sth->finish();
|
||||||
undef $sth;
|
|
||||||
$dbh->disconnect();
|
$dbh->disconnect();
|
||||||
undef $dbh;
|
|
||||||
|
|
||||||
if ($cfg->{RedmineCacheCredsMax} and $ret) {
|
if ($cfg->{RedmineCacheCredsMax} and $ret) {
|
||||||
if (defined $usrprojpass) {
|
if (defined $usrprojpass) {
|
||||||
|
|||||||
@@ -175,7 +175,7 @@ unless File.directory?($repos_base)
|
|||||||
end
|
end
|
||||||
|
|
||||||
begin
|
begin
|
||||||
require 'active_resource'
|
require 'activeresource'
|
||||||
rescue LoadError
|
rescue LoadError
|
||||||
log("This script requires activeresource.\nRun 'gem install activeresource' to install it.", :exit => true)
|
log("This script requires activeresource.\nRun 'gem install activeresource' to install it.", :exit => true)
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -35,11 +35,6 @@ module Redmine
|
|||||||
super()
|
super()
|
||||||
set_language_if_valid lang
|
set_language_if_valid lang
|
||||||
case current_language.to_s.downcase
|
case current_language.to_s.downcase
|
||||||
when 'ko'
|
|
||||||
extend(PDF_Korean)
|
|
||||||
AddUHCFont()
|
|
||||||
@font_for_content = 'UHC'
|
|
||||||
@font_for_footer = 'UHC'
|
|
||||||
when 'ja'
|
when 'ja'
|
||||||
extend(PDF_Japanese)
|
extend(PDF_Japanese)
|
||||||
AddSJISFont()
|
AddSJISFont()
|
||||||
@@ -149,15 +144,13 @@ module Redmine
|
|||||||
# rows
|
# rows
|
||||||
pdf.SetFontStyle('',8)
|
pdf.SetFontStyle('',8)
|
||||||
pdf.SetFillColor(255, 255, 255)
|
pdf.SetFillColor(255, 255, 255)
|
||||||
previous_group = false
|
group = false
|
||||||
issues.each do |issue|
|
issues.each do |issue|
|
||||||
if query.grouped? && (group = query.group_by_column.value(issue)) != previous_group
|
if query.grouped? && issue.send(query.group_by) != group
|
||||||
|
group = issue.send(query.group_by)
|
||||||
pdf.SetFontStyle('B',9)
|
pdf.SetFontStyle('B',9)
|
||||||
pdf.Cell(277, row_height,
|
pdf.Cell(277, row_height, "#{group.blank? ? 'None' : group.to_s}", 1, 1, 'L')
|
||||||
(group.blank? ? 'None' : group.to_s) + " (#{@issue_count_by_group[group]})",
|
|
||||||
1, 1, 'L')
|
|
||||||
pdf.SetFontStyle('',8)
|
pdf.SetFontStyle('',8)
|
||||||
previous_group = group
|
|
||||||
end
|
end
|
||||||
pdf.Cell(15, row_height, issue.id.to_s, 1, 0, 'L', 1)
|
pdf.Cell(15, row_height, issue.id.to_s, 1, 0, 'L', 1)
|
||||||
query.columns.each_with_index do |column, i|
|
query.columns.each_with_index do |column, i|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ module Redmine
|
|||||||
module VERSION #:nodoc:
|
module VERSION #:nodoc:
|
||||||
MAJOR = 0
|
MAJOR = 0
|
||||||
MINOR = 9
|
MINOR = 9
|
||||||
TINY = 2
|
TINY = 0
|
||||||
|
|
||||||
# Branch values:
|
# Branch values:
|
||||||
# * official release: nil
|
# * official release: nil
|
||||||
|
|||||||
@@ -331,7 +331,6 @@ task :migrate_from_mantis => :environment do
|
|||||||
next unless i.save
|
next unless i.save
|
||||||
issues_map[bug.id] = i.id
|
issues_map[bug.id] = i.id
|
||||||
print '.'
|
print '.'
|
||||||
STDOUT.flush
|
|
||||||
|
|
||||||
# Assignee
|
# Assignee
|
||||||
# Redmine checks that the assignee is a project member
|
# Redmine checks that the assignee is a project member
|
||||||
@@ -379,7 +378,6 @@ task :migrate_from_mantis => :environment do
|
|||||||
r.issue_to = Issue.find_by_id(issues_map[relation.destination_bug_id])
|
r.issue_to = Issue.find_by_id(issues_map[relation.destination_bug_id])
|
||||||
pp r unless r.save
|
pp r unless r.save
|
||||||
print '.'
|
print '.'
|
||||||
STDOUT.flush
|
|
||||||
end
|
end
|
||||||
puts
|
puts
|
||||||
|
|
||||||
@@ -395,7 +393,6 @@ task :migrate_from_mantis => :environment do
|
|||||||
n.author = User.find_by_id(users_map[news.poster_id])
|
n.author = User.find_by_id(users_map[news.poster_id])
|
||||||
n.save
|
n.save
|
||||||
print '.'
|
print '.'
|
||||||
STDOUT.flush
|
|
||||||
end
|
end
|
||||||
puts
|
puts
|
||||||
|
|
||||||
@@ -412,7 +409,7 @@ task :migrate_from_mantis => :environment do
|
|||||||
:is_required => field.require_report?
|
:is_required => field.require_report?
|
||||||
next unless f.save
|
next unless f.save
|
||||||
print '.'
|
print '.'
|
||||||
STDOUT.flush
|
|
||||||
# Trackers association
|
# Trackers association
|
||||||
f.trackers = Tracker.find :all
|
f.trackers = Tracker.find :all
|
||||||
|
|
||||||
@@ -478,7 +475,6 @@ task :migrate_from_mantis => :environment do
|
|||||||
|
|
||||||
puts "WARNING: Your Redmine data will be deleted during this process."
|
puts "WARNING: Your Redmine data will be deleted during this process."
|
||||||
print "Are you sure you want to continue ? [y/N] "
|
print "Are you sure you want to continue ? [y/N] "
|
||||||
STDOUT.flush
|
|
||||||
break unless STDIN.gets.match(/^y$/i)
|
break unless STDIN.gets.match(/^y$/i)
|
||||||
|
|
||||||
# Default Mantis database settings
|
# Default Mantis database settings
|
||||||
@@ -498,7 +494,6 @@ task :migrate_from_mantis => :environment do
|
|||||||
|
|
||||||
while true
|
while true
|
||||||
print "encoding [UTF-8]: "
|
print "encoding [UTF-8]: "
|
||||||
STDOUT.flush
|
|
||||||
encoding = STDIN.gets.chomp!
|
encoding = STDIN.gets.chomp!
|
||||||
encoding = 'UTF-8' if encoding.blank?
|
encoding = 'UTF-8' if encoding.blank?
|
||||||
break if MantisMigrate.encoding encoding
|
break if MantisMigrate.encoding encoding
|
||||||
|
|||||||
@@ -676,7 +676,6 @@ namespace :redmine do
|
|||||||
puts
|
puts
|
||||||
puts "This project already exists in your Redmine database."
|
puts "This project already exists in your Redmine database."
|
||||||
print "Are you sure you want to append data to this project ? [Y/n] "
|
print "Are you sure you want to append data to this project ? [Y/n] "
|
||||||
STDOUT.flush
|
|
||||||
exit if STDIN.gets.match(/^n$/i)
|
exit if STDIN.gets.match(/^n$/i)
|
||||||
end
|
end
|
||||||
project.trackers << TRACKER_BUG unless project.trackers.include?(TRACKER_BUG)
|
project.trackers << TRACKER_BUG unless project.trackers.include?(TRACKER_BUG)
|
||||||
@@ -727,7 +726,6 @@ namespace :redmine do
|
|||||||
|
|
||||||
puts "WARNING: a new project will be added to Redmine during this process."
|
puts "WARNING: a new project will be added to Redmine during this process."
|
||||||
print "Are you sure you want to continue ? [y/N] "
|
print "Are you sure you want to continue ? [y/N] "
|
||||||
STDOUT.flush
|
|
||||||
break unless STDIN.gets.match(/^y$/i)
|
break unless STDIN.gets.match(/^y$/i)
|
||||||
puts
|
puts
|
||||||
|
|
||||||
@@ -735,7 +733,6 @@ namespace :redmine do
|
|||||||
default = options[:default] || ''
|
default = options[:default] || ''
|
||||||
while true
|
while true
|
||||||
print "#{text} [#{default}]: "
|
print "#{text} [#{default}]: "
|
||||||
STDOUT.flush
|
|
||||||
value = STDIN.gets.chomp!
|
value = STDIN.gets.chomp!
|
||||||
value = default if value.blank?
|
value = default if value.blank?
|
||||||
break if yield value
|
break if yield value
|
||||||
|
|||||||
@@ -1,128 +0,0 @@
|
|||||||
// ** I18N
|
|
||||||
|
|
||||||
// Calendar HR language
|
|
||||||
// Author: Helix d.o.o., <info@helix.hr>
|
|
||||||
// Encoding: any
|
|
||||||
// Distributed under the same terms as the calendar itself.
|
|
||||||
|
|
||||||
// For translators: please use UTF-8 if possible. We strongly believe that
|
|
||||||
// Unicode is the answer to a real internationalized world. Also please
|
|
||||||
// include your contact information in the header, as can be seen above.
|
|
||||||
|
|
||||||
// full day names
|
|
||||||
Calendar._DN = new Array
|
|
||||||
("Nedjelja",
|
|
||||||
"Ponedjeljak",
|
|
||||||
"Utorak",
|
|
||||||
"Srijeda",
|
|
||||||
"Cetvrtak",
|
|
||||||
"Petak",
|
|
||||||
"Subota",
|
|
||||||
"Nedjelja");
|
|
||||||
|
|
||||||
// Please note that the following array of short day names (and the same goes
|
|
||||||
// for short month names, _SMN) isn't absolutely necessary. We give it here
|
|
||||||
// for exemplification on how one can customize the short day names, but if
|
|
||||||
// they are simply the first N letters of the full name you can simply say:
|
|
||||||
//
|
|
||||||
// Calendar._SDN_len = N; // short day name length
|
|
||||||
// Calendar._SMN_len = N; // short month name length
|
|
||||||
//
|
|
||||||
// If N = 3 then this is not needed either since we assume a value of 3 if not
|
|
||||||
// present, to be compatible with translation files that were written before
|
|
||||||
// this feature.
|
|
||||||
|
|
||||||
// short day names
|
|
||||||
Calendar._SDN = new Array
|
|
||||||
("Ned",
|
|
||||||
"Pon",
|
|
||||||
"Uto",
|
|
||||||
"Sri",
|
|
||||||
"Cet",
|
|
||||||
"Pet",
|
|
||||||
"Sub",
|
|
||||||
"Ned");
|
|
||||||
|
|
||||||
// First day of the week. "0" means display Sunday first, "1" means display
|
|
||||||
// Monday first, etc.
|
|
||||||
Calendar._FD = 0;
|
|
||||||
|
|
||||||
// full month names
|
|
||||||
Calendar._MN = new Array
|
|
||||||
("Sijecanj",
|
|
||||||
"Veljaca",
|
|
||||||
"Ožujak",
|
|
||||||
"Travanj",
|
|
||||||
"Svibanj",
|
|
||||||
"Lipanj",
|
|
||||||
"Srpanj",
|
|
||||||
"Kolovoz",
|
|
||||||
"Rujan",
|
|
||||||
"Listopad",
|
|
||||||
"Studeni",
|
|
||||||
"Prosinac");
|
|
||||||
|
|
||||||
// short month names
|
|
||||||
Calendar._SMN = new Array
|
|
||||||
("Sij",
|
|
||||||
"Velj",
|
|
||||||
"Ožu",
|
|
||||||
"Tra",
|
|
||||||
"Svi",
|
|
||||||
"Lip",
|
|
||||||
"Srp",
|
|
||||||
"Kol",
|
|
||||||
"Ruj",
|
|
||||||
"List",
|
|
||||||
"Stu",
|
|
||||||
"Pro");
|
|
||||||
|
|
||||||
|
|
||||||
// tooltips
|
|
||||||
Calendar._TT = {};
|
|
||||||
Calendar._TT["INFO"] = "About the calendar";
|
|
||||||
|
|
||||||
Calendar._TT["ABOUT"] =
|
|
||||||
"DHTML Date/Time Selector\n" +
|
|
||||||
"(c) dynarch.com 2002-2005 / Author: Mihai Bazon\n" + // don't translate this this ;-)
|
|
||||||
"For latest version visit: http://www.dynarch.com/projects/calendar/\n" +
|
|
||||||
"Distributed under GNU LGPL. See http://gnu.org/licenses/lgpl.html for details." +
|
|
||||||
"\n\n" +
|
|
||||||
"Date selection:\n" +
|
|
||||||
"- Use the \xab, \xbb buttons to select year\n" +
|
|
||||||
"- Use the " + String.fromCharCode(0x2039) + ", " + String.fromCharCode(0x203a) + " buttons to select month\n" +
|
|
||||||
"- Hold mouse button on any of the above buttons for faster selection.";
|
|
||||||
Calendar._TT["ABOUT_TIME"] = "\n\n" +
|
|
||||||
"Time selection:\n" +
|
|
||||||
"- Click on any of the time parts to increase it\n" +
|
|
||||||
"- or Shift-click to decrease it\n" +
|
|
||||||
"- or click and drag for faster selection.";
|
|
||||||
|
|
||||||
Calendar._TT["PREV_YEAR"] = "Prethodna godina (hold for menu)";
|
|
||||||
Calendar._TT["PREV_MONTH"] = "Prethodni mjesec (hold for menu)";
|
|
||||||
Calendar._TT["GO_TODAY"] = "Na današnji dan";
|
|
||||||
Calendar._TT["NEXT_MONTH"] = "Naredni mjesec (hold for menu)";
|
|
||||||
Calendar._TT["NEXT_YEAR"] = "Naredna godina (hold for menu)";
|
|
||||||
Calendar._TT["SEL_DATE"] = "Odaberite datum";
|
|
||||||
Calendar._TT["DRAG_TO_MOVE"] = "Drag to move";
|
|
||||||
Calendar._TT["PART_TODAY"] = " (Danas)";
|
|
||||||
|
|
||||||
// the following is to inform that "%s" is to be the first day of week
|
|
||||||
// %s will be replaced with the day name.
|
|
||||||
Calendar._TT["DAY_FIRST"] = "Prikaži %s prvo";
|
|
||||||
|
|
||||||
// This may be locale-dependent. It specifies the week-end days, as an array
|
|
||||||
// of comma-separated numbers. The numbers are from 0 to 6: 0 means Sunday, 1
|
|
||||||
// means Monday, etc.
|
|
||||||
Calendar._TT["WEEKEND"] = "0,6";
|
|
||||||
|
|
||||||
Calendar._TT["CLOSE"] = "Zatvori";
|
|
||||||
Calendar._TT["TODAY"] = "Danas";
|
|
||||||
Calendar._TT["TIME_PART"] = "(Shift-)Click or drag to change value";
|
|
||||||
|
|
||||||
// date formats
|
|
||||||
Calendar._TT["DEF_DATE_FORMAT"] = "%Y-%m-%d";
|
|
||||||
Calendar._TT["TT_DATE_FORMAT"] = "%a, %b %e";
|
|
||||||
|
|
||||||
Calendar._TT["WK"] = "wk";
|
|
||||||
Calendar._TT["TIME"] = "Vrijeme:";
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
jsToolBar.strings = {};
|
|
||||||
jsToolBar.strings['Strong'] = 'Podebljano';
|
|
||||||
jsToolBar.strings['Italic'] = 'Kurziv';
|
|
||||||
jsToolBar.strings['Underline'] = 'Podcrtano';
|
|
||||||
jsToolBar.strings['Deleted'] = 'Obrisano';
|
|
||||||
jsToolBar.strings['Code'] = 'Inline Code';
|
|
||||||
jsToolBar.strings['Heading 1'] = 'Naslov 1';
|
|
||||||
jsToolBar.strings['Heading 2'] = 'Naslov 2';
|
|
||||||
jsToolBar.strings['Heading 3'] = 'Naslov 3';
|
|
||||||
jsToolBar.strings['Unordered list'] = 'Graficke oznake';
|
|
||||||
jsToolBar.strings['Ordered list'] = 'Numeriranje';
|
|
||||||
jsToolBar.strings['Quote'] = 'Citat';
|
|
||||||
jsToolBar.strings['Unquote'] = 'Ukloni citat';
|
|
||||||
jsToolBar.strings['Preformatted text'] = 'Izveden tekst';
|
|
||||||
jsToolBar.strings['Wiki link'] = 'Link na Wiki stranicu';
|
|
||||||
jsToolBar.strings['Image'] = 'Slika';
|
|
||||||
@@ -75,7 +75,7 @@ h4, .wiki h3 {font-size: 13px;padding: 2px 10px 1px 0px;margin-bottom: 5px; bord
|
|||||||
|
|
||||||
#content { width: 80%; background-color: #fff; margin: 0px; border-right: 1px solid #ddd; padding: 6px 10px 10px 10px; z-index: 10; }
|
#content { width: 80%; background-color: #fff; margin: 0px; border-right: 1px solid #ddd; padding: 6px 10px 10px 10px; z-index: 10; }
|
||||||
* html #content{ width: 80%; padding-left: 0; margin-top: 0px; padding: 6px 10px 10px 10px;}
|
* html #content{ width: 80%; padding-left: 0; margin-top: 0px; padding: 6px 10px 10px 10px;}
|
||||||
html>body #content { min-height: 600px; }
|
html>body #content { min-height: 600px; overflow: auto; }
|
||||||
* html body #content { height: 600px; } /* IE */
|
* html body #content { height: 600px; } /* IE */
|
||||||
|
|
||||||
#main.nosidebar #sidebar{ display: none; }
|
#main.nosidebar #sidebar{ display: none; }
|
||||||
@@ -515,16 +515,15 @@ p.pourcent {font-size: 80%;}
|
|||||||
p.progress-info {clear: left; font-style: italic; font-size: 80%;}
|
p.progress-info {clear: left; font-style: italic; font-size: 80%;}
|
||||||
|
|
||||||
/***** Tabs *****/
|
/***** Tabs *****/
|
||||||
#content .tabs {height: 2.6em; margin-bottom:1.2em; position:relative; overflow:hidden;}
|
#content .tabs {height: 2.6em; border-bottom: 1px solid #bbbbbb; margin-bottom:1.2em; position:relative; overflow:hidden;}
|
||||||
#content .tabs ul {margin:0; position:absolute; bottom:0; padding-left:1em; width: 2000px; border-bottom: 1px solid #bbbbbb;}
|
#content .tabs ul {margin:0; position:absolute; bottom:-2px; padding-left:1em; width: 2000px;}
|
||||||
|
#content .tabs>ul { bottom:-1px; } /* others */
|
||||||
#content .tabs ul li {
|
#content .tabs ul li {
|
||||||
float:left;
|
float:left;
|
||||||
list-style-type:none;
|
list-style-type:none;
|
||||||
white-space:nowrap;
|
white-space:nowrap;
|
||||||
margin-right:8px;
|
margin-right:8px;
|
||||||
background:#fff;
|
background:#fff;
|
||||||
position:relative;
|
|
||||||
margin-bottom:-1px;
|
|
||||||
}
|
}
|
||||||
#content .tabs ul li a{
|
#content .tabs ul li a{
|
||||||
display:block;
|
display:block;
|
||||||
@@ -554,7 +553,7 @@ border-bottom: 1px solid #fff;
|
|||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
div.tabs-buttons { position:absolute; right: 0; width: 48px; height: 24px; background: white; bottom: 0; border-bottom: 1px solid #bbbbbb; }
|
div.tabs-buttons { position:absolute; right: 0; width: 48px; height: 24px; background: white; bottom: -1px; }
|
||||||
|
|
||||||
button.tab-left, button.tab-right {
|
button.tab-left, button.tab-right {
|
||||||
font-size: 0.9em;
|
font-size: 0.9em;
|
||||||
@@ -565,17 +564,18 @@ button.tab-left, button.tab-right {
|
|||||||
position:absolute;
|
position:absolute;
|
||||||
padding:4px;
|
padding:4px;
|
||||||
width: 20px;
|
width: 20px;
|
||||||
bottom: -1px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
button.tab-left {
|
button.tab-left {
|
||||||
right: 20px;
|
right: 20px;
|
||||||
|
bottom: 0;
|
||||||
background: #eeeeee url(../images/bullet_arrow_left.png) no-repeat 50% 50%;
|
background: #eeeeee url(../images/bullet_arrow_left.png) no-repeat 50% 50%;
|
||||||
}
|
}
|
||||||
|
|
||||||
button.tab-right {
|
button.tab-right {
|
||||||
right: 0;
|
right: 0;
|
||||||
background: #eeeeee url(../images/bullet_arrow_right.png) no-repeat 50% 50%;
|
bottom: 0;
|
||||||
|
background: #eeeeee url(../images/bullet_arrow_right.png) no-repeat 50% 50%;}
|
||||||
}
|
}
|
||||||
|
|
||||||
/***** Auto-complete *****/
|
/***** Auto-complete *****/
|
||||||
@@ -674,8 +674,6 @@ a.wiki-anchor { display: none; margin-left: 6px; text-decoration: none; }
|
|||||||
a.wiki-anchor:hover { color: #aaa !important; text-decoration: none; }
|
a.wiki-anchor:hover { color: #aaa !important; text-decoration: none; }
|
||||||
h1:hover a.wiki-anchor, h2:hover a.wiki-anchor, h3:hover a.wiki-anchor { display: inline; color: #ddd; }
|
h1:hover a.wiki-anchor, h2:hover a.wiki-anchor, h3:hover a.wiki-anchor { display: inline; color: #ddd; }
|
||||||
|
|
||||||
div.wiki img { vertical-align: middle; }
|
|
||||||
|
|
||||||
/***** My page layout *****/
|
/***** My page layout *****/
|
||||||
.block-receiver {
|
.block-receiver {
|
||||||
border:1px dashed #c0c0c0;
|
border:1px dashed #c0c0c0;
|
||||||
|
|||||||
@@ -1,21 +0,0 @@
|
|||||||
class Attachment < ActiveRecord::Base
|
|
||||||
generator_for :container, :method => :generate_project
|
|
||||||
generator_for :file, :method => :generate_file
|
|
||||||
generator_for :author, :method => :generate_author
|
|
||||||
|
|
||||||
def self.generate_project
|
|
||||||
Project.generate!
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.generate_author
|
|
||||||
User.generate_with_protected!
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.generate_file
|
|
||||||
@file = 'a_file.png'
|
|
||||||
@file.stubs(:original_filename).returns('a_file.png')
|
|
||||||
@file.stubs(:content_type).returns('image/png')
|
|
||||||
@file.stubs(:read).returns(false)
|
|
||||||
@file
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
class AuthSource < ActiveRecord::Base
|
|
||||||
generator_for :name, :method => :next_name
|
|
||||||
|
|
||||||
def self.next_name
|
|
||||||
@last_name ||= 'Auth0'
|
|
||||||
@last_name.succ!
|
|
||||||
@last_name
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
class Board < ActiveRecord::Base
|
|
||||||
generator_for :name, :method => :next_name
|
|
||||||
generator_for :description, :method => :next_description
|
|
||||||
generator_for :project, :method => :generate_project
|
|
||||||
|
|
||||||
def self.next_name
|
|
||||||
@last_name ||= 'A Forum'
|
|
||||||
@last_name.succ!
|
|
||||||
@last_name
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.next_description
|
|
||||||
@last_description ||= 'Some description here'
|
|
||||||
@last_description.succ!
|
|
||||||
@last_description
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.generate_project
|
|
||||||
Project.generate!
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
class Change < ActiveRecord::Base
|
|
||||||
generator_for :action => 'A'
|
|
||||||
generator_for :path, :method => :next_path
|
|
||||||
generator_for :changeset, :method => :generate_changeset
|
|
||||||
|
|
||||||
def self.next_path
|
|
||||||
@last_path ||= 'test/dir/aaa0001'
|
|
||||||
@last_path.succ!
|
|
||||||
@last_path
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.generate_changeset
|
|
||||||
Changeset.generate!
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
class Changeset < ActiveRecord::Base
|
|
||||||
generator_for :revision, :method => :next_revision
|
|
||||||
generator_for :committed_on => Date.today
|
|
||||||
generator_for :repository, :method => :generate_repository
|
|
||||||
|
|
||||||
def self.next_revision
|
|
||||||
@last_revision ||= '1'
|
|
||||||
@last_revision.succ!
|
|
||||||
@last_revision
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.generate_repository
|
|
||||||
Repository::Subversion.generate!
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
class Comment < ActiveRecord::Base
|
|
||||||
generator_for :commented, :method => :generate_news
|
|
||||||
generator_for :author, :method => :generate_author
|
|
||||||
generator_for :comments => 'What great news this is.'
|
|
||||||
|
|
||||||
def self.generate_news
|
|
||||||
News.generate!
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.generate_author
|
|
||||||
User.generate_with_protected!
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@@ -1,7 +1,2 @@
|
|||||||
class CustomValue < ActiveRecord::Base
|
class CustomValue < ActiveRecord::Base
|
||||||
generator_for :custom_field, :method => :generate_custom_field
|
|
||||||
|
|
||||||
def self.generate_custom_field
|
|
||||||
CustomField.generate!
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -1,9 +0,0 @@
|
|||||||
class Document < ActiveRecord::Base
|
|
||||||
generator_for :title, :method => :next_title
|
|
||||||
|
|
||||||
def self.next_title
|
|
||||||
@last_title ||= 'Document001'
|
|
||||||
@last_title.succ!
|
|
||||||
@last_title
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
class EnabledModule < ActiveRecord::Base
|
|
||||||
generator_for :name, :method => :next_name
|
|
||||||
|
|
||||||
def self.next_name
|
|
||||||
@last_name ||= 'module_001'
|
|
||||||
@last_name.succ!
|
|
||||||
@last_name
|
|
||||||
end
|
|
||||||
|
|
||||||
end
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
class Group < Principal
|
|
||||||
generator_for :lastname, :method => :next_lastname
|
|
||||||
|
|
||||||
def self.next_lastname
|
|
||||||
@last_lastname ||= 'Group'
|
|
||||||
@last_lastname.succ!
|
|
||||||
@last_lastname
|
|
||||||
end
|
|
||||||
|
|
||||||
end
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
class IssueCategory < ActiveRecord::Base
|
|
||||||
generator_for :name, :method => :next_name
|
|
||||||
|
|
||||||
def self.next_name
|
|
||||||
@last_name ||= 'Category 0001'
|
|
||||||
@last_name.succ!
|
|
||||||
@last_name
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
class Journal < ActiveRecord::Base
|
|
||||||
generator_for :journalized, :method => :generate_issue
|
|
||||||
generator_for :user, :method => :generate_user
|
|
||||||
|
|
||||||
def self.generate_issue
|
|
||||||
project = Project.generate!
|
|
||||||
Issue.generate_for_project!(project)
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.generate_user
|
|
||||||
User.generate_with_protected!
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@@ -1,12 +1,2 @@
|
|||||||
class Member < ActiveRecord::Base
|
class Member < ActiveRecord::Base
|
||||||
generator_for :roles, :method => :generate_roles
|
|
||||||
generator_for :principal, :method => :generate_user
|
|
||||||
|
|
||||||
def self.generate_roles
|
|
||||||
[Role.generate!]
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.generate_user
|
|
||||||
User.generate_with_protected!
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -1,12 +0,0 @@
|
|||||||
class MemberRole < ActiveRecord::Base
|
|
||||||
generator_for :member, :method => :generate_member
|
|
||||||
generator_for :role, :method => :generate_role
|
|
||||||
|
|
||||||
def self.generate_role
|
|
||||||
Role.generate!
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.generate_member
|
|
||||||
Member.generate!
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
class Message < ActiveRecord::Base
|
|
||||||
generator_for :subject, :method => :next_subject
|
|
||||||
generator_for :content, :method => :next_content
|
|
||||||
generator_for :board, :method => :generate_board
|
|
||||||
|
|
||||||
def self.next_subject
|
|
||||||
@last_subject ||= 'A Message'
|
|
||||||
@last_subject.succ!
|
|
||||||
@last_subject
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.next_content
|
|
||||||
@last_content ||= 'Some content here'
|
|
||||||
@last_content.succ!
|
|
||||||
@last_content
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.generate_board
|
|
||||||
Board.generate!
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
class News < ActiveRecord::Base
|
|
||||||
generator_for :title, :method => :next_title
|
|
||||||
generator_for :description, :method => :next_description
|
|
||||||
|
|
||||||
def self.next_title
|
|
||||||
@last_title ||= 'A New Item'
|
|
||||||
@last_title.succ!
|
|
||||||
@last_title
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.next_description
|
|
||||||
@last_description ||= 'Some content here'
|
|
||||||
@last_description.succ!
|
|
||||||
@last_description
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
class Repository < ActiveRecord::Base
|
|
||||||
generator_for :type => 'Subversion'
|
|
||||||
generator_for :url, :method => :next_url
|
|
||||||
|
|
||||||
def self.next_url
|
|
||||||
@last_url ||= 'file:///test/svn'
|
|
||||||
@last_url.succ!
|
|
||||||
@last_url
|
|
||||||
end
|
|
||||||
|
|
||||||
end
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
class Repository::Subversion < Repository
|
|
||||||
generator_for :type, :method => 'Subversion'
|
|
||||||
generator_for :url, :method => :next_url
|
|
||||||
|
|
||||||
def self.next_url
|
|
||||||
@last_url ||= 'file:///test/svn'
|
|
||||||
@last_url.succ!
|
|
||||||
@last_url
|
|
||||||
end
|
|
||||||
|
|
||||||
end
|
|
||||||
@@ -1,10 +1,5 @@
|
|||||||
class TimeEntry < ActiveRecord::Base
|
class TimeEntry < ActiveRecord::Base
|
||||||
generator_for(:spent_on) { Date.today }
|
generator_for(:spent_on) { Date.today }
|
||||||
generator_for(:hours) { (rand * 10).round(2) } # 0.01 to 9.99
|
generator_for(:hours) { (rand * 10).round(2) } # 0.01 to 9.99
|
||||||
generator_for :user, :method => :generate_user
|
|
||||||
|
|
||||||
def self.generate_user
|
|
||||||
User.generate_with_protected!
|
|
||||||
end
|
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -1,7 +0,0 @@
|
|||||||
class Watcher < ActiveRecord::Base
|
|
||||||
generator_for :user, :method => :generate_user
|
|
||||||
|
|
||||||
def self.generate_user
|
|
||||||
User.generate_with_protected!
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
class WikiContent < ActiveRecord::Base
|
|
||||||
generator_for :text => 'Some content'
|
|
||||||
generator_for :page, :method => :generate_page
|
|
||||||
|
|
||||||
def self.generate_page
|
|
||||||
WikiPage.generate!
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
class Wiki < ActiveRecord::Base
|
|
||||||
generator_for :start_page => 'Start'
|
|
||||||
generator_for :project, :method => :generate_project
|
|
||||||
|
|
||||||
def self.generate_project
|
|
||||||
Project.generate!
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
class WikiPage < ActiveRecord::Base
|
|
||||||
generator_for :title, :method => :next_title
|
|
||||||
generator_for :wiki, :method => :generate_wiki
|
|
||||||
|
|
||||||
def self.next_title
|
|
||||||
@last_title ||= 'AWikiPage'
|
|
||||||
@last_title.succ!
|
|
||||||
@last_title
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.generate_wiki
|
|
||||||
Wiki.generate!
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
class WikiRedirect < ActiveRecord::Base
|
|
||||||
generator_for :title, :method => :next_title
|
|
||||||
generator_for :redirects_to, :method => :next_redirects_to
|
|
||||||
generator_for :wiki, :method => :generate_wiki
|
|
||||||
|
|
||||||
def self.next_title
|
|
||||||
@last_title ||= 'AWikiPage'
|
|
||||||
@last_title.succ!
|
|
||||||
@last_title
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.next_redirects_to
|
|
||||||
@last_redirect ||= '/a/path/000001'
|
|
||||||
@last_redirect.succ!
|
|
||||||
@last_redirect
|
|
||||||
end
|
|
||||||
|
|
||||||
def self.generate_wiki
|
|
||||||
Wiki.generate!
|
|
||||||
end
|
|
||||||
end
|
|
||||||
Vendored
+1
-1
@@ -44,7 +44,7 @@ custom_fields_003:
|
|||||||
- Alpha
|
- Alpha
|
||||||
- Planning
|
- Planning
|
||||||
id: 3
|
id: 3
|
||||||
is_required: false
|
is_required: true
|
||||||
field_format: list
|
field_format: list
|
||||||
default_value: ""
|
default_value: ""
|
||||||
editable: true
|
editable: true
|
||||||
|
|||||||
@@ -236,14 +236,6 @@ class IssuesControllerTest < ActionController::TestCase
|
|||||||
assert_equal 'application/pdf', @response.content_type
|
assert_equal 'application/pdf', @response.content_type
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_index_pdf_with_query_grouped_by_list_custom_field
|
|
||||||
get :index, :project_id => 1, :query_id => 9, :format => 'pdf'
|
|
||||||
assert_response :success
|
|
||||||
assert_not_nil assigns(:issues)
|
|
||||||
assert_not_nil assigns(:issue_count_by_group)
|
|
||||||
assert_equal 'application/pdf', @response.content_type
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_index_sort
|
def test_index_sort
|
||||||
get :index, :sort => 'tracker,id:desc'
|
get :index, :sort => 'tracker,id:desc'
|
||||||
assert_response :success
|
assert_response :success
|
||||||
@@ -948,36 +940,6 @@ class IssuesControllerTest < ActionController::TestCase
|
|||||||
assert_equal 4, issue.fixed_version_id
|
assert_equal 4, issue.fixed_version_id
|
||||||
assert_not_equal issue.project_id, issue.fixed_version.project_id
|
assert_not_equal issue.project_id, issue.fixed_version.project_id
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_post_edit_should_redirect_back_using_the_back_url_parameter
|
|
||||||
issue = Issue.find(2)
|
|
||||||
@request.session[:user_id] = 2
|
|
||||||
|
|
||||||
post :edit,
|
|
||||||
:id => issue.id,
|
|
||||||
:issue => {
|
|
||||||
:fixed_version_id => 4
|
|
||||||
},
|
|
||||||
:back_url => '/issues'
|
|
||||||
|
|
||||||
assert_response :redirect
|
|
||||||
assert_redirected_to '/issues'
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_post_edit_should_not_redirect_back_using_the_back_url_parameter_off_the_host
|
|
||||||
issue = Issue.find(2)
|
|
||||||
@request.session[:user_id] = 2
|
|
||||||
|
|
||||||
post :edit,
|
|
||||||
:id => issue.id,
|
|
||||||
:issue => {
|
|
||||||
:fixed_version_id => 4
|
|
||||||
},
|
|
||||||
:back_url => 'http://google.com'
|
|
||||||
|
|
||||||
assert_response :redirect
|
|
||||||
assert_redirected_to :controller => 'issues', :action => 'show', :id => issue.id
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_get_bulk_edit
|
def test_get_bulk_edit
|
||||||
@request.session[:user_id] = 2
|
@request.session[:user_id] = 2
|
||||||
@@ -1084,22 +1046,6 @@ class IssuesControllerTest < ActionController::TestCase
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_post_bulk_edit_should_redirect_back_using_the_back_url_parameter
|
|
||||||
@request.session[:user_id] = 2
|
|
||||||
post :bulk_edit, :ids => [1,2], :back_url => '/issues'
|
|
||||||
|
|
||||||
assert_response :redirect
|
|
||||||
assert_redirected_to '/issues'
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_post_bulk_edit_should_not_redirect_back_using_the_back_url_parameter_off_the_host
|
|
||||||
@request.session[:user_id] = 2
|
|
||||||
post :bulk_edit, :ids => [1,2], :back_url => 'http://google.com'
|
|
||||||
|
|
||||||
assert_response :redirect
|
|
||||||
assert_redirected_to :controller => 'issues', :action => 'index', :project_id => Project.find(1).identifier
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_move_routing
|
def test_move_routing
|
||||||
assert_routing(
|
assert_routing(
|
||||||
{:method => :get, :path => '/issues/1/move'},
|
{:method => :get, :path => '/issues/1/move'},
|
||||||
|
|||||||
@@ -1,29 +1,14 @@
|
|||||||
module ObjectDaddyHelpers
|
module ObjectDaddyHelpers
|
||||||
# TODO: The gem or official version of ObjectDaddy doesn't set
|
|
||||||
# protected attributes so they need to be wrapped.
|
|
||||||
def User.generate_with_protected(attributes={})
|
|
||||||
user = User.spawn_with_protected(attributes)
|
|
||||||
user.save
|
|
||||||
user
|
|
||||||
end
|
|
||||||
|
|
||||||
# TODO: The gem or official version of ObjectDaddy doesn't set
|
# TODO: The gem or official version of ObjectDaddy doesn't set
|
||||||
# protected attributes so they need to be wrapped.
|
# protected attributes so they need to be wrapped.
|
||||||
def User.generate_with_protected!(attributes={})
|
def User.generate_with_protected!(attributes={})
|
||||||
user = User.spawn_with_protected(attributes)
|
|
||||||
user.save!
|
|
||||||
user
|
|
||||||
end
|
|
||||||
|
|
||||||
# TODO: The gem or official version of ObjectDaddy doesn't set
|
|
||||||
# protected attributes so they need to be wrapped.
|
|
||||||
def User.spawn_with_protected(attributes={})
|
|
||||||
user = User.spawn(attributes) do |user|
|
user = User.spawn(attributes) do |user|
|
||||||
user.login = User.next_login
|
user.login = User.next_login
|
||||||
attributes.each do |attr,v|
|
attributes.each do |attr,v|
|
||||||
user.send("#{attr}=", v)
|
user.send("#{attr}=", v)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
user.save!
|
||||||
user
|
user
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -74,29 +74,6 @@ class ChangesetTest < ActiveSupport::TestCase
|
|||||||
|
|
||||||
assert_equal [1,2,3], c.issue_ids.sort
|
assert_equal [1,2,3], c.issue_ids.sort
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_commit_referencing_a_subproject_issue
|
|
||||||
c = Changeset.new(:repository => Project.find(1).repository,
|
|
||||||
:committed_on => Time.now,
|
|
||||||
:comments => 'refs #5, a subproject issue')
|
|
||||||
c.scan_comment_for_issue_ids
|
|
||||||
|
|
||||||
assert_equal [5], c.issue_ids.sort
|
|
||||||
assert c.issues.first.project != c.project
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_commit_referencing_a_parent_project_issue
|
|
||||||
# repository of child project
|
|
||||||
r = Repository::Subversion.create!(:project => Project.find(3), :url => 'svn://localhost/test')
|
|
||||||
|
|
||||||
c = Changeset.new(:repository => r,
|
|
||||||
:committed_on => Time.now,
|
|
||||||
:comments => 'refs #2, an issue of a parent project')
|
|
||||||
c.scan_comment_for_issue_ids
|
|
||||||
|
|
||||||
assert_equal [2], c.issue_ids.sort
|
|
||||||
assert c.issues.first.project != c.project
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_previous
|
def test_previous
|
||||||
changeset = Changeset.find_by_revision('3')
|
changeset = Changeset.find_by_revision('3')
|
||||||
|
|||||||
@@ -1,5 +1,3 @@
|
|||||||
# encoding: utf-8
|
|
||||||
#
|
|
||||||
# Redmine - project management software
|
# Redmine - project management software
|
||||||
# Copyright (C) 2006-2009 Jean-Philippe Lang
|
# Copyright (C) 2006-2009 Jean-Philippe Lang
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ require File.dirname(__FILE__) + '/../test_helper'
|
|||||||
class MailerTest < ActiveSupport::TestCase
|
class MailerTest < ActiveSupport::TestCase
|
||||||
include Redmine::I18n
|
include Redmine::I18n
|
||||||
include ActionController::Assertions::SelectorAssertions
|
include ActionController::Assertions::SelectorAssertions
|
||||||
fixtures :projects, :enabled_modules, :issues, :users, :members, :member_roles, :roles, :documents, :attachments, :news, :tokens, :journals, :journal_details, :changesets, :trackers, :issue_statuses, :enumerations, :messages, :boards, :repositories
|
fixtures :projects, :issues, :users, :members, :member_roles, :documents, :attachments, :news, :tokens, :journals, :journal_details, :changesets, :trackers, :issue_statuses, :enumerations, :messages, :boards, :repositories
|
||||||
|
|
||||||
def test_generated_links_in_emails
|
def test_generated_links_in_emails
|
||||||
ActionMailer::Base.deliveries.clear
|
ActionMailer::Base.deliveries.clear
|
||||||
@@ -296,18 +296,4 @@ class MailerTest < ActiveSupport::TestCase
|
|||||||
assert_not_nil mail
|
assert_not_nil mail
|
||||||
mail
|
mail
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_mailer_should_not_change_locale
|
|
||||||
Setting.default_language = 'en'
|
|
||||||
# Set current language to italian
|
|
||||||
set_language_if_valid 'it'
|
|
||||||
# Send an email to a french user
|
|
||||||
user = User.find(1)
|
|
||||||
user.language = 'fr'
|
|
||||||
Mailer.deliver_account_activated(user)
|
|
||||||
mail = ActionMailer::Base.deliveries.last
|
|
||||||
assert mail.body.include?('Votre compte')
|
|
||||||
|
|
||||||
assert_equal :it, current_language
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -1,58 +0,0 @@
|
|||||||
# Redmine - project management software
|
|
||||||
# Copyright (C) 2006-2010 Jean-Philippe Lang
|
|
||||||
#
|
|
||||||
# This program is free software; you can redistribute it and/or
|
|
||||||
# modify it under the terms of the GNU General Public License
|
|
||||||
# as published by the Free Software Foundation; either version 2
|
|
||||||
# of the License, or (at your option) any later version.
|
|
||||||
#
|
|
||||||
# This program is distributed in the hope that it will be useful,
|
|
||||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
# GNU General Public License for more details.
|
|
||||||
#
|
|
||||||
# You should have received a copy of the GNU General Public License
|
|
||||||
# along with this program; if not, write to the Free Software
|
|
||||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
||||||
|
|
||||||
require File.dirname(__FILE__) + '/../test_helper'
|
|
||||||
|
|
||||||
class ProjectNestedSetTest < ActiveSupport::TestCase
|
|
||||||
|
|
||||||
def setup
|
|
||||||
Project.delete_all
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_destroy_root_and_chldren_should_not_mess_up_the_tree
|
|
||||||
a = Project.create!(:name => 'Project A', :identifier => 'projecta')
|
|
||||||
a1 = Project.create!(:name => 'Project A1', :identifier => 'projecta1')
|
|
||||||
a2 = Project.create!(:name => 'Project A2', :identifier => 'projecta2')
|
|
||||||
a1.set_parent!(a)
|
|
||||||
a2.set_parent!(a)
|
|
||||||
b = Project.create!(:name => 'Project B', :identifier => 'projectb')
|
|
||||||
b1 = Project.create!(:name => 'Project B1', :identifier => 'projectb1')
|
|
||||||
b1.set_parent!(b)
|
|
||||||
|
|
||||||
a.reload
|
|
||||||
a1.reload
|
|
||||||
a2.reload
|
|
||||||
b.reload
|
|
||||||
b1.reload
|
|
||||||
|
|
||||||
assert_equal [nil, 1, 6], [a.parent_id, a.lft, a.rgt]
|
|
||||||
assert_equal [a.id, 2, 3], [a1.parent_id, a1.lft, a1.rgt]
|
|
||||||
assert_equal [a.id, 4, 5], [a2.parent_id, a2.lft, a2.rgt]
|
|
||||||
assert_equal [nil, 7, 10], [b.parent_id, b.lft, b.rgt]
|
|
||||||
assert_equal [b.id, 8, 9], [b1.parent_id, b1.lft, b1.rgt]
|
|
||||||
|
|
||||||
assert_difference 'Project.count', -3 do
|
|
||||||
a.destroy
|
|
||||||
end
|
|
||||||
|
|
||||||
b.reload
|
|
||||||
b1.reload
|
|
||||||
|
|
||||||
assert_equal [nil, 1, 4], [b.parent_id, b.lft, b.rgt]
|
|
||||||
assert_equal [b.id, 2, 3], [b1.parent_id, b1.lft, b1.rgt]
|
|
||||||
end
|
|
||||||
end
|
|
||||||
+5
-5
@@ -139,13 +139,13 @@ UHC_widths={' ' => 333, '!' => 416, '"' => 416, '#' => 833, '$' => 625, '%' => 9
|
|||||||
b2='LR'
|
b2='LR'
|
||||||
else
|
else
|
||||||
b2=''
|
b2=''
|
||||||
if(border.to_s.index('L').nil?)
|
if(border.index('L').nil?)
|
||||||
b2+='L'
|
b2+='L'
|
||||||
end
|
end
|
||||||
if(border.to_s.index('R').nil?)
|
if(border.index('R').nil?)
|
||||||
b2+='R'
|
b2+='R'
|
||||||
end
|
end
|
||||||
b=border.to_s.index('T').nil? ? b2+'T' : b2
|
b=border.index('T').nil? ? b2+'T' : b2
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
sep=-1
|
sep=-1
|
||||||
@@ -178,7 +178,7 @@ UHC_widths={' ' => 333, '!' => 416, '"' => 416, '#' => 833, '$' => 625, '%' => 9
|
|||||||
sep=i
|
sep=i
|
||||||
ls=l
|
ls=l
|
||||||
end
|
end
|
||||||
l+=(ascii ? cw[c.chr] : 1000) || 0
|
l+=ascii ? cw[c.chr] : 1000
|
||||||
if(l>wmax)
|
if(l>wmax)
|
||||||
#Automatic line break
|
#Automatic line break
|
||||||
if(sep==-1 or i==j)
|
if(sep==-1 or i==j)
|
||||||
@@ -202,7 +202,7 @@ UHC_widths={' ' => 333, '!' => 416, '"' => 416, '#' => 833, '$' => 625, '%' => 9
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
#Last chunk
|
#Last chunk
|
||||||
if(border and not border.to_s.index('B').nil?)
|
if(border and not border.index('B').nil?)
|
||||||
b+='B'
|
b+='B'
|
||||||
end
|
end
|
||||||
Cell(w,h,s[j,i-j],b,2,align,fill)
|
Cell(w,h,s[j,i-j],b,2,align,fill)
|
||||||
|
|||||||
Reference in New Issue
Block a user