Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b1b08e2c89 |
@@ -1,6 +1,6 @@
|
|||||||
source 'http://rubygems.org'
|
source 'http://rubygems.org'
|
||||||
|
|
||||||
gem 'rails', '3.2.11'
|
gem 'rails', '3.2.9'
|
||||||
gem "jquery-rails", "~> 2.0.2"
|
gem "jquery-rails", "~> 2.0.2"
|
||||||
gem "i18n", "~> 0.6.0"
|
gem "i18n", "~> 0.6.0"
|
||||||
gem "coderay", "~> 1.0.6"
|
gem "coderay", "~> 1.0.6"
|
||||||
|
|||||||
@@ -117,8 +117,8 @@ ru:
|
|||||||
many: "около %{count} часов"
|
many: "около %{count} часов"
|
||||||
other: "около %{count} часа"
|
other: "около %{count} часа"
|
||||||
x_hours:
|
x_hours:
|
||||||
one: "1 час"
|
one: "1 hour"
|
||||||
other: "%{count} часов"
|
other: "%{count} hours"
|
||||||
x_days:
|
x_days:
|
||||||
one: "%{count} день"
|
one: "%{count} день"
|
||||||
few: "%{count} дня"
|
few: "%{count} дня"
|
||||||
|
|||||||
@@ -4,16 +4,6 @@ Redmine - project management software
|
|||||||
Copyright (C) 2006-2012 Jean-Philippe Lang
|
Copyright (C) 2006-2012 Jean-Philippe Lang
|
||||||
http://www.redmine.org/
|
http://www.redmine.org/
|
||||||
|
|
||||||
== 2013-01-09 v2.2.1
|
|
||||||
|
|
||||||
* Upgrade to Rails 3.2.11
|
|
||||||
* Defect #12652: "Copy ticket" selects "new ticket"
|
|
||||||
* Defect #12691: Textile Homepage Dead?
|
|
||||||
* Defect #12711: incorrect fix of lib/SVG/Graph/TimeSeries.rb
|
|
||||||
* Defect #12744: Unable to call a macro with a name that contains uppercase letters
|
|
||||||
* Defect #12776: Security vulnerability in Rails 3.2.10 (CVE-2013-0156)
|
|
||||||
* Patch #12630: Russian "x_hours" translation
|
|
||||||
|
|
||||||
== 2012-12-18 v2.2.0
|
== 2012-12-18 v2.2.0
|
||||||
|
|
||||||
* Defect #4787: Gannt to PNG - CJK (Chinese, Japanese and Korean) characters appear as ?
|
* Defect #4787: Gannt to PNG - CJK (Chinese, Japanese and Korean) characters appear as ?
|
||||||
|
|||||||
@@ -171,7 +171,7 @@ module SVG
|
|||||||
protected
|
protected
|
||||||
|
|
||||||
def min_x_value=(value)
|
def min_x_value=(value)
|
||||||
@min_x_value = DateTime.parse( value ).to_time
|
@min_x_value = DateTime.parse( data[:data][i] ).to_time
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -198,7 +198,7 @@ Redmine::MenuManager.map :project_menu do |menu|
|
|||||||
menu.push :roadmap, { :controller => 'versions', :action => 'index' }, :param => :project_id,
|
menu.push :roadmap, { :controller => 'versions', :action => 'index' }, :param => :project_id,
|
||||||
:if => Proc.new { |p| p.shared_versions.any? }
|
:if => Proc.new { |p| p.shared_versions.any? }
|
||||||
menu.push :issues, { :controller => 'issues', :action => 'index' }, :param => :project_id, :caption => :label_issue_plural
|
menu.push :issues, { :controller => 'issues', :action => 'index' }, :param => :project_id, :caption => :label_issue_plural
|
||||||
menu.push :new_issue, { :controller => 'issues', :action => 'new', :copy_from => nil }, :param => :project_id, :caption => :label_issue_new,
|
menu.push :new_issue, { :controller => 'issues', :action => 'new' }, :param => :project_id, :caption => :label_issue_new,
|
||||||
:html => { :accesskey => Redmine::AccessKeys.key_for(:new_issue) }
|
:html => { :accesskey => Redmine::AccessKeys.key_for(:new_issue) }
|
||||||
menu.push :gantt, { :controller => 'gantts', :action => 'show' }, :param => :project_id, :caption => :label_gantt
|
menu.push :gantt, { :controller => 'gantts', :action => 'show' }, :param => :project_id, :caption => :label_gantt
|
||||||
menu.push :calendar, { :controller => 'calendars', :action => 'show' }, :param => :project_id, :caption => :label_calendar
|
menu.push :calendar, { :controller => 'calendars', :action => 'show' }, :param => :project_id, :caption => :label_calendar
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ module Redmine
|
|||||||
module VERSION #:nodoc:
|
module VERSION #:nodoc:
|
||||||
MAJOR = 2
|
MAJOR = 2
|
||||||
MINOR = 2
|
MINOR = 2
|
||||||
TINY = 1
|
TINY = 0
|
||||||
|
|
||||||
# Branch values:
|
# Branch values:
|
||||||
# * official release: nil
|
# * official release: nil
|
||||||
|
|||||||
@@ -147,10 +147,10 @@ module Redmine
|
|||||||
unless block_given?
|
unless block_given?
|
||||||
raise "Can not create a macro without a block!"
|
raise "Can not create a macro without a block!"
|
||||||
end
|
end
|
||||||
name = name.to_s.downcase.to_sym
|
name = name.to_sym if name.is_a?(String)
|
||||||
available_macros[name] = {:desc => @@desc || ''}.merge(options)
|
available_macros[name] = {:desc => @@desc || ''}.merge(options)
|
||||||
@@desc = nil
|
@@desc = nil
|
||||||
Definitions.send :define_method, "macro_#{name}", &block
|
Definitions.send :define_method, "macro_#{name}".downcase, &block
|
||||||
end
|
end
|
||||||
|
|
||||||
# Sets description for the next macro to be defined
|
# Sets description for the next macro to be defined
|
||||||
|
|||||||
@@ -169,7 +169,7 @@ http://www.redmine.org, someone@foo.bar
|
|||||||
<h2><a name="5" class="wiki-page"></a>Text formatting</h2>
|
<h2><a name="5" class="wiki-page"></a>Text formatting</h2>
|
||||||
|
|
||||||
|
|
||||||
<p>For things such as headlines, bold, tables, lists, Redmine supports Textile syntax. See <a class="external" href="http://en.wikipedia.org/wiki/Textile_%28markup_language%29">http://en.wikipedia.org/wiki/Textile_(markup_language)</a> for information on using any of these features. A few samples are included below, but the engine is capable of much more of that.</p>
|
<p>For things such as headlines, bold, tables, lists, Redmine supports Textile syntax. See <a class="external" href="http://www.textism.com/tools/textile/">http://www.textism.com/tools/textile/</a> for information on using any of these features. A few samples are included below, but the engine is capable of much more of that.</p>
|
||||||
|
|
||||||
<h3><a name="6" class="wiki-page"></a>Font style</h3>
|
<h3><a name="6" class="wiki-page"></a>Font style</h3>
|
||||||
|
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ class ActivitiesControllerTest < ActionController::TestCase
|
|||||||
end
|
end
|
||||||
|
|
||||||
def test_previous_project_index
|
def test_previous_project_index
|
||||||
get :index, :id => 1, :from => 2.days.ago.to_date
|
get :index, :id => 1, :from => 3.days.ago.to_date
|
||||||
assert_response :success
|
assert_response :success
|
||||||
assert_template 'index'
|
assert_template 'index'
|
||||||
assert_not_nil assigns(:events_by_day)
|
assert_not_nil assigns(:events_by_day)
|
||||||
|
|||||||
@@ -2356,9 +2356,6 @@ class IssuesControllerTest < ActionController::TestCase
|
|||||||
assert_tag 'select', :attributes => {:name => 'issue[project_id]'},
|
assert_tag 'select', :attributes => {:name => 'issue[project_id]'},
|
||||||
:child => {:tag => 'option', :attributes => {:value => '2', :selected => nil}, :content => 'OnlineStore'}
|
:child => {:tag => 'option', :attributes => {:value => '2', :selected => nil}, :content => 'OnlineStore'}
|
||||||
assert_tag 'input', :attributes => {:name => 'copy_from', :value => '1'}
|
assert_tag 'input', :attributes => {:name => 'copy_from', :value => '1'}
|
||||||
|
|
||||||
# "New issue" menu item should not link to copy
|
|
||||||
assert_select '#main-menu a.new-issue[href=/projects/ecookbook/issues/new]'
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_new_as_copy_with_attachments_should_show_copy_attachments_checkbox
|
def test_new_as_copy_with_attachments_should_show_copy_attachments_checkbox
|
||||||
|
|||||||
@@ -78,12 +78,6 @@ class Redmine::WikiFormatting::MacrosTest < ActionView::TestCase
|
|||||||
assert_equal "<p>Baz: (arg1,arg2) (String) (line1\nline2)</p>", textilizable("{{baz(arg1, arg2)\nline1\nline2\n}}")
|
assert_equal "<p>Baz: (arg1,arg2) (String) (line1\nline2)</p>", textilizable("{{baz(arg1, arg2)\nline1\nline2\n}}")
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_macro_name_with_upper_case
|
|
||||||
Redmine::WikiFormatting::Macros.macro(:UpperCase) {|obj, args| "Upper"}
|
|
||||||
|
|
||||||
assert_equal "<p>Upper</p>", textilizable("{{UpperCase}}")
|
|
||||||
end
|
|
||||||
|
|
||||||
def test_multiple_macros_on_the_same_line
|
def test_multiple_macros_on_the_same_line
|
||||||
Redmine::WikiFormatting::Macros.macro :foo do |obj, args|
|
Redmine::WikiFormatting::Macros.macro :foo do |obj, args|
|
||||||
args.any? ? "args: #{args.join(',')}" : "no args"
|
args.any? ? "args: #{args.join(',')}" : "no args"
|
||||||
|
|||||||
Reference in New Issue
Block a user