set default issue start/due datepicker from due/start date (#14024)
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@11883 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
cbb8b12ba4
commit
0e20ec697b
|
@ -1075,6 +1075,7 @@ module ApplicationHelper
|
|||
|
||||
def include_calendar_headers_tags
|
||||
unless @calendar_headers_tags_included
|
||||
tags = javascript_include_tag("datepicker")
|
||||
@calendar_headers_tags_included = true
|
||||
content_for :header_tags do
|
||||
start_of_week = Setting.start_of_week
|
||||
|
@ -1082,12 +1083,13 @@ module ApplicationHelper
|
|||
# Redmine uses 1..7 (monday..sunday) in settings and locales
|
||||
# JQuery uses 0..6 (sunday..saturday), 7 needs to be changed to 0
|
||||
start_of_week = start_of_week.to_i % 7
|
||||
|
||||
tags = javascript_tag(
|
||||
tags << javascript_tag(
|
||||
"var datepickerOptions={dateFormat: 'yy-mm-dd', firstDay: #{start_of_week}, " +
|
||||
"showOn: 'button', buttonImageOnly: true, buttonImage: '" +
|
||||
path_to_image('/images/calendar.png') +
|
||||
"', showButtonPanel: true, showWeek: true, showOtherMonths: true, selectOtherMonths: true, changeMonth: true, changeYear: true};")
|
||||
"', showButtonPanel: true, showWeek: true, showOtherMonths: true, " +
|
||||
"selectOtherMonths: true, changeMonth: true, changeYear: true, " +
|
||||
"beforeShow: beforeShowDatePicker};")
|
||||
jquery_locale = l('jquery.locale', :default => current_language.to_s)
|
||||
unless jquery_locale == 'en'
|
||||
tags << javascript_include_tag("i18n/jquery.ui.datepicker-#{jquery_locale}.js")
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
function beforeShowDatePicker(input, inst) {
|
||||
var default_date = null;
|
||||
switch ($(input).attr("id")) {
|
||||
case "issue_start_date" :
|
||||
if ($("#issue_due_date").size() > 0) {
|
||||
default_date = $("#issue_due_date").val();
|
||||
}
|
||||
break;
|
||||
case "issue_due_date" :
|
||||
if ($("#issue_start_date").size() > 0) {
|
||||
default_date = $("#issue_start_date").val();
|
||||
}
|
||||
break;
|
||||
}
|
||||
$(input).datepicker("option", "defaultDate", default_date);
|
||||
}
|
|
@ -147,6 +147,22 @@ class Redmine::UiTest::IssuesTest < Redmine::UiTest::Base
|
|||
end
|
||||
end
|
||||
|
||||
def test_create_issue_start_due_date_default
|
||||
log_user('jsmith', 'jsmith')
|
||||
visit '/projects/ecookbook/issues/new'
|
||||
fill_in 'Start date', :with => '2012-04-01'
|
||||
fill_in 'Due date', :with => ''
|
||||
page.first('p#due_date_area img').click
|
||||
page.first("td.ui-datepicker-days-cell-over a").click
|
||||
assert_equal '2012-04-01', page.find('input#issue_due_date').value
|
||||
|
||||
fill_in 'Start date', :with => ''
|
||||
fill_in 'Due date', :with => '2012-04-01'
|
||||
page.first('p#start_date_area img').click
|
||||
page.first("td.ui-datepicker-days-cell-over a").click
|
||||
assert_equal '2012-04-01', page.find('input#issue_start_date').value
|
||||
end
|
||||
|
||||
def test_preview_issue_description
|
||||
log_user('jsmith', 'jsmith')
|
||||
visit '/projects/ecookbook/issues/new'
|
||||
|
|
Loading…
Reference in New Issue