Added preview on add/edit issue form.
git-svn-id: http://redmine.rubyforge.org/svn/trunk@812 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
75c4c4f6b3
commit
5259dec061
@ -17,7 +17,7 @@
|
|||||||
|
|
||||||
class IssuesController < ApplicationController
|
class IssuesController < ApplicationController
|
||||||
layout 'base', :except => :export_pdf
|
layout 'base', :except => :export_pdf
|
||||||
before_filter :find_project, :authorize, :except => :index
|
before_filter :find_project, :authorize, :except => [:index, :preview]
|
||||||
accept_key_auth :index
|
accept_key_auth :index
|
||||||
|
|
||||||
cache_sweeper :issue_sweeper, :only => [ :edit, :change_status, :destroy ]
|
cache_sweeper :issue_sweeper, :only => [ :edit, :change_status, :destroy ]
|
||||||
@ -167,6 +167,13 @@ class IssuesController < ApplicationController
|
|||||||
redirect_to :action => 'show', :id => @issue
|
redirect_to :action => 'show', :id => @issue
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def preview
|
||||||
|
issue = Issue.find_by_id(params[:id])
|
||||||
|
@attachements = issue.attachments if issue
|
||||||
|
@text = params[:issue][:description]
|
||||||
|
render :partial => 'common/preview'
|
||||||
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
def find_project
|
def find_project
|
||||||
@issue = Issue.find(params[:id], :include => [:project, :tracker, :status, :author, :priority, :category])
|
@issue = Issue.find(params[:id], :include => [:project, :tracker, :status, :author, :priority, :category])
|
||||||
|
@ -144,7 +144,7 @@ class WikiController < ApplicationController
|
|||||||
page = @wiki.find_page(params[:page])
|
page = @wiki.find_page(params[:page])
|
||||||
@attachements = page.attachments if page
|
@attachements = page.attachments if page
|
||||||
@text = params[:content][:text]
|
@text = params[:content][:text]
|
||||||
render :partial => 'preview'
|
render :partial => 'common/preview'
|
||||||
end
|
end
|
||||||
|
|
||||||
def add_attachment
|
def add_attachment
|
||||||
|
@ -25,7 +25,11 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p><%= f.text_field :subject, :size => 80, :required => true %></p>
|
<p><%= f.text_field :subject, :size => 80, :required => true %></p>
|
||||||
<p><%= f.text_area :description, :required => true, :cols => 60, :rows => (@issue.description.blank? ? 10 : [[10, @issue.description.length / 50].max, 100].min), :class => 'wiki-edit' %></p>
|
<p><%= f.text_area :description, :required => true,
|
||||||
|
:cols => 60,
|
||||||
|
:rows => (@issue.description.blank? ? 10 : [[10, @issue.description.length / 50].max, 100].min),
|
||||||
|
:accesskey => accesskey(:edit),
|
||||||
|
:class => 'wiki-edit' %></p>
|
||||||
<p><%= f.select :fixed_version_id, (@project.versions.sort.collect {|v| [v.name, v.id]}), { :include_blank => true } %></p>
|
<p><%= f.select :fixed_version_id, (@project.versions.sort.collect {|v| [v.name, v.id]}), { :include_blank => true } %></p>
|
||||||
<% for @custom_value in @custom_values %>
|
<% for @custom_value in @custom_values %>
|
||||||
<p><%= custom_field_tag_with_label @custom_value %></p>
|
<p><%= custom_field_tag_with_label @custom_value %></p>
|
||||||
|
@ -1,7 +1,19 @@
|
|||||||
<h2><%=h "#{@issue.tracker.name} ##{@issue.id}" %></h2>
|
<h2><%=h "#{@issue.tracker.name} ##{@issue.id}" %></h2>
|
||||||
|
|
||||||
<% labelled_tabular_form_for :issue, @issue, :url => {:action => 'edit'} do |f| %>
|
<% labelled_tabular_form_for :issue, @issue,
|
||||||
|
:url => {:action => 'edit'},
|
||||||
|
:html => {:id => 'issue-form'} do |f| %>
|
||||||
<%= render :partial => 'form', :locals => {:f => f} %>
|
<%= render :partial => 'form', :locals => {:f => f} %>
|
||||||
<%= f.hidden_field :lock_version %>
|
<%= f.hidden_field :lock_version %>
|
||||||
<%= submit_tag l(:button_save) %>
|
<%= submit_tag l(:button_save) %>
|
||||||
|
<%= link_to_remote l(:label_preview),
|
||||||
|
{ :url => { :controller => 'issues', :action => 'preview', :id => @issue },
|
||||||
|
:method => 'post',
|
||||||
|
:update => 'preview',
|
||||||
|
:with => "Form.serialize('issue-form')",
|
||||||
|
:complete => "location.href='#preview-top'"
|
||||||
|
}, :accesskey => accesskey(:preview) %>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
||||||
|
<a name="preview-top"></a>
|
||||||
|
<div id="preview" class="wiki"></div>
|
||||||
|
@ -1,7 +1,19 @@
|
|||||||
<h2><%=l(:label_issue_new)%>: <%= @tracker.name %></h2>
|
<h2><%=l(:label_issue_new)%>: <%= @tracker.name %></h2>
|
||||||
|
|
||||||
<% labelled_tabular_form_for :issue, @issue, :url => {:action => 'add_issue'}, :html => {:multipart => true} do |f| %>
|
<% labelled_tabular_form_for :issue, @issue,
|
||||||
|
:url => {:action => 'add_issue'},
|
||||||
|
:html => {:multipart => true, :id => 'issue-form'} do |f| %>
|
||||||
<%= hidden_field_tag 'tracker_id', @tracker.id %>
|
<%= hidden_field_tag 'tracker_id', @tracker.id %>
|
||||||
<%= render :partial => 'issues/form', :locals => {:f => f} %>
|
<%= render :partial => 'issues/form', :locals => {:f => f} %>
|
||||||
<%= submit_tag l(:button_create) %>
|
<%= submit_tag l(:button_create) %>
|
||||||
|
<%= link_to_remote l(:label_preview),
|
||||||
|
{ :url => { :controller => 'issues', :action => 'preview', :id => @issue },
|
||||||
|
:method => 'post',
|
||||||
|
:update => 'preview',
|
||||||
|
:with => "Form.serialize('issue-form')",
|
||||||
|
:complete => "location.href='#preview-top'"
|
||||||
|
}, :accesskey => accesskey(:preview) %>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
||||||
|
<a name="preview-top"></a>
|
||||||
|
<div id="preview" class="wiki"></div>
|
||||||
|
@ -139,6 +139,8 @@ text-align: left;
|
|||||||
width: 200px;
|
width: 200px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#preview fieldset {margin-top: 1em; background: url(../images/draft.png)}
|
||||||
|
|
||||||
#settings .tabular p{ padding-left: 300px; }
|
#settings .tabular p{ padding-left: 300px; }
|
||||||
#settings .tabular label{ margin-left: -300px; width: 295px; }
|
#settings .tabular label{ margin-left: -300px; width: 295px; }
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user