diff --git a/app/controllers/previews_controller.rb b/app/controllers/previews_controller.rb index 612025cb..f1dbedf7 100644 --- a/app/controllers/previews_controller.rb +++ b/app/controllers/previews_controller.rb @@ -1,3 +1,20 @@ +# Redmine - project management software +# Copyright (C) 2006-2011 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. + class PreviewsController < ApplicationController before_filter :find_project diff --git a/app/views/journals/_notes_form.rhtml b/app/views/journals/_notes_form.rhtml index da0f44fa..7e44f4a9 100644 --- a/app/views/journals/_notes_form.rhtml +++ b/app/views/journals/_notes_form.rhtml @@ -5,7 +5,17 @@ :rows => (@journal.notes.blank? ? 10 : [[10, @journal.notes.length / 50].max, 100].min) %> <%= call_hook(:view_journals_notes_form_after_notes, { :journal => @journal}) %>
<%= submit_tag l(:button_save) %> + <%= link_to_remote l(:label_preview), + { :url => preview_issue_path(:project_id => @project, :id => @journal.issue), + :method => 'post', + :update => "journal_#{@journal.id}_preview", + :with => "Form.serialize('journal-#{@journal.id}-form')", + :complete => "Element.scrollTo('journal_#{@journal.id}_preview')" + }, :accesskey => accesskey(:preview) %> + | <%= link_to l(:button_cancel), '#', :onclick => "Element.remove('journal-#{@journal.id}-form'); " + "Element.show('journal-#{@journal.id}-notes'); return false;" %>
+ + <% end %> <%= wikitoolbar_for "journal_#{@journal.id}_notes" %> diff --git a/test/functional/previews_controller_test.rb b/test/functional/previews_controller_test.rb index 45f51f61..c5261d54 100644 --- a/test/functional/previews_controller_test.rb +++ b/test/functional/previews_controller_test.rb @@ -1,3 +1,20 @@ +# Redmine - project management software +# Copyright (C) 2006-2011 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.expand_path('../../test_helper', __FILE__) class PreviewsControllerTest < ActionController::TestCase @@ -18,6 +35,15 @@ class PreviewsControllerTest < ActionController::TestCase assert_template 'preview' assert_not_nil assigns(:notes) end + + def test_preview_journal_notes_for_update + @request.session[:user_id] = 2 + post :issue, :project_id => '1', :id => 1, :notes => 'Foo' + assert_response :success + assert_template 'preview' + assert_not_nil assigns(:notes) + assert_tag :p, :content => 'Foo' + end def test_news get :news, :project_id => 1,