From 68163532fb59e520f0494caf644dfd7dcc1fc5d6 Mon Sep 17 00:00:00 2001 From: Kat <54268893+kosiakkatrina@users.noreply.github.com> Date: Mon, 18 Nov 2024 12:13:29 +0000 Subject: [PATCH] Make links expire --- app/controllers/csv_downloads_controller.rb | 2 ++ app/models/csv_download.rb | 4 ++++ app/views/errors/download_link_expired.html.erb | 7 +++++++ 3 files changed, 13 insertions(+) create mode 100644 app/views/errors/download_link_expired.html.erb diff --git a/app/controllers/csv_downloads_controller.rb b/app/controllers/csv_downloads_controller.rb index b42a9a236..c78cf5860 100644 --- a/app/controllers/csv_downloads_controller.rb +++ b/app/controllers/csv_downloads_controller.rb @@ -5,6 +5,8 @@ class CsvDownloadsController < ApplicationController csv_download = CsvDownload.find(params[:id]) authorize csv_download + return render "errors/download_link_expired" if csv_download.expired? + downloader = Csv::Downloader.new(csv_download:) if Rails.env.development? diff --git a/app/models/csv_download.rb b/app/models/csv_download.rb index 5ff378c30..50e8bdafa 100644 --- a/app/models/csv_download.rb +++ b/app/models/csv_download.rb @@ -3,4 +3,8 @@ class CsvDownload < ApplicationRecord belongs_to :user belongs_to :organisation + + def expired? + created_at < 24.hours.ago + end end diff --git a/app/views/errors/download_link_expired.html.erb b/app/views/errors/download_link_expired.html.erb new file mode 100644 index 000000000..b7ad70af0 --- /dev/null +++ b/app/views/errors/download_link_expired.html.erb @@ -0,0 +1,7 @@ +<% content_for :title, "Download link expired" %> + +