summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--app/controllers/issues_controller.rb8
-rw-r--r--app/views/issues/_update_form.js.erb9
-rw-r--r--test/functional/issues_controller_test.rb4
3 files changed, 14 insertions, 7 deletions
diff --git a/app/controllers/issues_controller.rb b/app/controllers/issues_controller.rb
index 246140f45..e7fdb6886 100644
--- a/app/controllers/issues_controller.rb
+++ b/app/controllers/issues_controller.rb
@@ -127,13 +127,7 @@ class IssuesController < ApplicationController
def new
respond_to do |format|
format.html { render :action => 'new', :layout => !request.xhr? }
- format.js {
- render(:update) { |page|
- page.replace_html 'all_attributes', :partial => 'form'
- m = User.current.allowed_to?(:log_time, @issue.project) ? 'show' : 'hide'
- page << "if ($('log_time')) {Element.#{m}('log_time');}"
- }
- }
+ format.js { render :partial => 'update_form' }
end
end
diff --git a/app/views/issues/_update_form.js.erb b/app/views/issues/_update_form.js.erb
new file mode 100644
index 000000000..89429fc20
--- /dev/null
+++ b/app/views/issues/_update_form.js.erb
@@ -0,0 +1,9 @@
+Element.update('all_attributes', '<%= escape_javascript(render :partial => 'form') %>');
+
+if ($('log_time')) {
+ <% if User.current.allowed_to?(:log_time, @issue.project) %>
+ Element.show('log_time');
+ <% else %>
+ Element.hide('log_time');
+ <% end %>
+}
diff --git a/test/functional/issues_controller_test.rb b/test/functional/issues_controller_test.rb
index 99a63bb07..b7ab6d0fe 100644
--- a/test/functional/issues_controller_test.rb
+++ b/test/functional/issues_controller_test.rb
@@ -1525,7 +1525,9 @@ class IssuesControllerTest < ActionController::TestCase
:description => 'This is the description',
:priority_id => 5}
assert_response :success
+ assert_template 'update_form'
assert_template 'form'
+ assert_equal 'text/javascript', response.content_type
issue = assigns(:issue)
assert_kind_of Issue, issue
@@ -2400,6 +2402,8 @@ class IssuesControllerTest < ActionController::TestCase
:description => 'This is the description',
:priority_id => 5}
assert_response :success
+ assert_equal 'text/javascript', response.content_type
+ assert_template 'update_form'
assert_template 'form'
issue = assigns(:issue)