annotate .svn/pristine/b3/b3ae8401c116d3c968d234881e8c4c29afe48532.svn-base @ 1519:afce8026aaeb redmine-2.4-integration

Merge from branch "live"
author Chris Cannam
date Tue, 09 Sep 2014 09:34:53 +0100
parents cbb26bc654de
children
rev   line source
Chris@909 1 class FilesController < ApplicationController
Chris@909 2 menu_item :files
Chris@909 3
Chris@909 4 before_filter :find_project_by_project_id
Chris@909 5 before_filter :authorize
Chris@909 6
Chris@909 7 helper :sort
Chris@909 8 include SortHelper
Chris@909 9
Chris@909 10 def index
Chris@909 11 sort_init 'filename', 'asc'
Chris@909 12 sort_update 'filename' => "#{Attachment.table_name}.filename",
Chris@909 13 'created_on' => "#{Attachment.table_name}.created_on",
Chris@909 14 'size' => "#{Attachment.table_name}.filesize",
Chris@909 15 'downloads' => "#{Attachment.table_name}.downloads"
Chris@909 16
Chris@909 17 @containers = [ Project.find(@project.id, :include => :attachments, :order => sort_clause)]
Chris@909 18 @containers += @project.versions.find(:all, :include => :attachments, :order => sort_clause).sort.reverse
Chris@909 19 render :layout => !request.xhr?
Chris@909 20 end
Chris@909 21
Chris@909 22 def new
Chris@909 23 @versions = @project.versions.sort
Chris@909 24 end
Chris@909 25
Chris@909 26 def create
Chris@909 27 container = (params[:version_id].blank? ? @project : @project.versions.find_by_id(params[:version_id]))
Chris@909 28 attachments = Attachment.attach_files(container, params[:attachments])
Chris@909 29 render_attachment_warning_if_needed(container)
Chris@909 30
Chris@909 31 if !attachments.empty? && !attachments[:files].blank? && Setting.notified_events.include?('file_added')
Chris@909 32 Mailer.deliver_attachments_added(attachments[:files])
Chris@909 33 end
Chris@909 34 redirect_to project_files_path(@project)
Chris@909 35 end
Chris@909 36 end