18 lines
553 B
Ruby
18 lines
553 B
Ruby
class ReportDownloadsController < ApplicationController
|
|
include ProjectContext
|
|
|
|
before_action :set_project, only: [:index, :create]
|
|
|
|
include ProjectLayout
|
|
|
|
def create
|
|
authorize(Download)
|
|
|
|
name = "#{@project.name.parameterize}_#{Time.now.strftime('%Y-%m-%d_%H-%M-%S')}"
|
|
download = @project.downloads.create!(name: name, release_type: "reports")
|
|
|
|
ProjectsChannel.broadcast_download_generation_update(download, I18n.t("report_downloads.download.pending"))
|
|
GenerateReportsZipJob.perform_later(@project, download, name)
|
|
end
|
|
end
|