##// END OF EJS Templates
By default, only show statuses that are used by the tracker on the workflow edit view....
By default, only show statuses that are used by the tracker on the workflow edit view. git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3188 e93f8b46-1217-0410-a6f0-8f06a7374b81

File last commit:

r2600:15a14e55cdb9
r3074:6bf0723d0654
Show More
attachments_controller.rb
79 lines | 2.7 KiB | text/x-ruby | RubyLexer
/ app / controllers / attachments_controller.rb
Jean-Philippe Lang
AttachmentsController now handles attachments deletion....
r2114 # Redmine - project management software
# Copyright (C) 2006-2008 Jean-Philippe Lang
Jean-Philippe Lang
Attachments can now be added to wiki pages (original patch by Pavol Murin). Only authorized users can add/delete attachments....
r538 #
# 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 AttachmentsController < ApplicationController
Jean-Philippe Lang
Move VersionsController#download to AttachmentsController....
r1668 before_filter :find_project
Jean-Philippe Lang
Returns a 404 error when trying to view/download an attachment that can't be read from disk....
r2600 before_filter :file_readable, :read_authorize, :except => :destroy
Jean-Philippe Lang
AttachmentsController now handles attachments deletion....
r2114 before_filter :delete_authorize, :only => :destroy
verify :method => :post, :only => :destroy
Jean-Philippe Lang
Unified diff viewer for attached files with .patch or .diff extension (#1403)....
r1502 def show
if @attachment.is_diff?
@diff = File.new(@attachment.diskfile, "rb").read
render :action => 'diff'
Jean-Philippe Lang
Fixes new setting name....
r2441 elsif @attachment.is_text? && @attachment.filesize <= Setting.file_max_size_displayed.to_i.kilobyte
Jean-Philippe Lang
File viewer for attached text files....
r1506 @content = File.new(@attachment.diskfile, "rb").read
render :action => 'file'
Jean-Philippe Lang
Fix in AttachmentsController#show....
r2280 else
Jean-Philippe Lang
Unified diff viewer for attached files with .patch or .diff extension (#1403)....
r1502 download
end
end
Jean-Philippe Lang
Attachments can now be added to wiki pages (original patch by Pavol Murin). Only authorized users can add/delete attachments....
r538 def download
Jean-Philippe Lang
Increment project files downloads....
r2207 if @attachment.container.is_a?(Version) || @attachment.container.is_a?(Project)
@attachment.increment_download
end
Jean-Philippe Lang
Move VersionsController#download to AttachmentsController....
r1668
Jean-Philippe Lang
Image attachments are now sent inline to be viewed directly in the browser....
r636 # images are sent inline
Jean-Philippe Lang
Non-ascii attachement filename fix for IE....
r1039 send_file @attachment.diskfile, :filename => filename_for_content_disposition(@attachment.filename),
Jean-Philippe Lang
Image attachments are now sent inline to be viewed directly in the browser....
r636 :type => @attachment.content_type,
:disposition => (@attachment.image? ? 'inline' : 'attachment')
Jean-Philippe Lang
AttachmentsController now handles attachments deletion....
r2114
Jean-Philippe Lang
Attachments can now be added to wiki pages (original patch by Pavol Murin). Only authorized users can add/delete attachments....
r538 end
Jean-Philippe Lang
AttachmentsController now handles attachments deletion....
r2114
def destroy
# Make sure association callbacks are called
@attachment.container.attachments.delete(@attachment)
redirect_to :back
rescue ::ActionController::RedirectBackError
redirect_to :controller => 'projects', :action => 'show', :id => @project
end
Jean-Philippe Lang
Attachments can now be added to wiki pages (original patch by Pavol Murin). Only authorized users can add/delete attachments....
r538 private
def find_project
@attachment = Attachment.find(params[:id])
Jean-Philippe Lang
Appends the filename to the attachment url so that clients that ignore content-disposition http header get the real filename (#1649)....
r1669 # Show 404 if the filename in the url is wrong
raise ActiveRecord::RecordNotFound if params[:filename] && params[:filename] != @attachment.filename
Jean-Philippe Lang
Attachments can now be added to wiki pages (original patch by Pavol Murin). Only authorized users can add/delete attachments....
r538 @project = @attachment.project
Jean-Philippe Lang
Move VersionsController#download to AttachmentsController....
r1668 rescue ActiveRecord::RecordNotFound
render_404
Jean-Philippe Lang
Attachments can now be added to wiki pages (original patch by Pavol Murin). Only authorized users can add/delete attachments....
r538 end
Jean-Philippe Lang
AttachmentsController now handles attachments deletion....
r2114
Jean-Philippe Lang
Returns a 404 error when trying to view/download an attachment that can't be read from disk....
r2600 # Checks that the file exists and is readable
def file_readable
@attachment.readable? ? true : render_404
end
Jean-Philippe Lang
AttachmentsController now handles attachments deletion....
r2114 def read_authorize
@attachment.visible? ? true : deny_access
end
def delete_authorize
@attachment.deletable? ? true : deny_access
end
Jean-Philippe Lang
Attachments can now be added to wiki pages (original patch by Pavol Murin). Only authorized users can add/delete attachments....
r538 end