##// END OF EJS Templates
Reverting commit r1748. Some environments are not allowing the cached file to...
Reverting commit r1748. Some environments are not allowing the cached file to write to public, causing all JavaScript to fail. Javascripts are now cached into a single file for downloads in production mode. #1186 git-svn-id: http://redmine.rubyforge.org/svn/trunk@1771 e93f8b46-1217-0410-a6f0-8f06a7374b81

File last commit:

r1726:2fdf4426cd8f
r1770:8f3a04ce6906
Show More
attachments_controller.rb
55 lines | 2.1 KiB | text/x-ruby | RubyLexer
/ app / controllers / attachments_controller.rb
Jean-Philippe Lang
Attachments can now be added to wiki pages (original patch by Pavol Murin). Only authorized users can add/delete attachments....
r538 # redMine - project management software
# Copyright (C) 2006-2007 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 AttachmentsController < ApplicationController
Jean-Philippe Lang
Move VersionsController#download to AttachmentsController....
r1668 before_filter :find_project
Jean-Philippe Lang
Attachments can now be added to wiki pages (original patch by Pavol Murin). Only authorized users can add/delete attachments....
r538
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
File viewer for attached text files....
r1506 elsif @attachment.is_text?
@content = File.new(@attachment.diskfile, "rb").read
render :action => 'file'
elsif
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
Move VersionsController#download to AttachmentsController....
r1668 @attachment.increment_download if @attachment.container.is_a?(Version)
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
Attachments can now be added to wiki pages (original patch by Pavol Murin). Only authorized users can add/delete attachments....
r538 end
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 permission = @attachment.container.is_a?(Version) ? :view_files : "view_#{@attachment.container.class.name.underscore.pluralize}".to_sym
allowed = User.current.allowed_to?(permission, @project)
allowed ? true : (User.current.logged? ? render_403 : require_login)
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
end