mirror of
https://github.com/meineerde/redmine.git
synced 2026-02-22 19:42:29 +00:00
Attachments prev/next navigation (#29395).
Patch by Jens Krämer. git-svn-id: http://svn.redmine.org/redmine/trunk@17567 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
28c231473f
commit
dcc7ecb34a
@ -32,6 +32,14 @@ class AttachmentsController < ApplicationController
|
||||
def show
|
||||
respond_to do |format|
|
||||
format.html {
|
||||
if @attachment.container.respond_to?(:attachments)
|
||||
@attachments = @attachment.container.attachments.to_a
|
||||
if index = @attachments.index(@attachment)
|
||||
@paginator = Redmine::Pagination::Paginator.new(
|
||||
@attachments.size, 1, index+1
|
||||
)
|
||||
end
|
||||
end
|
||||
if @attachment.is_diff?
|
||||
@diff = File.read(@attachment.diskfile, :mode => "rb")
|
||||
@diff_type = params[:type] || User.current.pref[:diff_type] || 'inline'
|
||||
|
||||
@ -56,6 +56,14 @@ module AttachmentsHelper
|
||||
end
|
||||
end
|
||||
|
||||
def render_pagination
|
||||
pagination_links_each @paginator do |text, parameters, options|
|
||||
if att = @attachments[parameters[:page] - 1]
|
||||
link_to text, named_attachment_path(att, att.filename)
|
||||
end
|
||||
end if @paginator
|
||||
end
|
||||
|
||||
def render_api_attachment(attachment, api, options={})
|
||||
api.attachment do
|
||||
render_api_attachment_attributes(attachment, api)
|
||||
|
||||
@ -12,6 +12,10 @@
|
||||
</div>
|
||||
<%= yield %>
|
||||
|
||||
<span class="pagination">
|
||||
<%= render_pagination %>
|
||||
</span>
|
||||
|
||||
<% html_title @attachment.filename %>
|
||||
|
||||
<% content_for :header_tags do -%>
|
||||
|
||||
@ -666,6 +666,10 @@ span.pagination {margin-left:3px; color:#888; display:block;}
|
||||
font-weight: bold;
|
||||
}
|
||||
span.pagination>span {white-space:nowrap;}
|
||||
.controller-attachments.action-show span.pagination{
|
||||
display: block;
|
||||
margin-top: 1.2em;
|
||||
}
|
||||
|
||||
#search-form fieldset p {margin:0.2em 0;}
|
||||
|
||||
|
||||
@ -287,6 +287,16 @@ class AttachmentsControllerTest < Redmine::ControllerTest
|
||||
assert_response 404
|
||||
end
|
||||
|
||||
def test_show_renders_pagination
|
||||
get :show, :params => { :id => 5, :type => 'inline' }
|
||||
assert_response :success
|
||||
|
||||
assert_select 'ul.pages li.next', :text => /next/i
|
||||
assert_select 'ul.pages li.previous', :text => /previous/i
|
||||
|
||||
set_tmp_attachments_directory
|
||||
end
|
||||
|
||||
def test_download_text_file
|
||||
get :download, :params => {
|
||||
:id => 4
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user