diff options
author | Matt Jankowski <mjankowski@thoughtbot.com> | 2017-04-17 14:02:00 -0400 |
---|---|---|
committer | Eugen <eugen@zeonfederated.com> | 2017-04-17 20:02:00 +0200 |
commit | cc1361c149465a29cc95b70b7c790287c8cc61c7 (patch) | |
tree | 882d9c8452511321e7de81f39890b02ef3d104db /app | |
parent | 15ec4ae07b17821625bd2ca1088a7573a7ed128c (diff) |
Media controller specs (#2022)
* Add spec for media controller * Add MediaAttachment.attached scope * Simplify methods in media controller
Diffstat (limited to 'app')
-rw-r--r-- | app/controllers/media_controller.rb | 13 | ||||
-rw-r--r-- | app/models/media_attachment.rb | 1 |
2 files changed, 9 insertions, 5 deletions
diff --git a/app/controllers/media_controller.rb b/app/controllers/media_controller.rb index 488c4f944..fa1daf012 100644 --- a/app/controllers/media_controller.rb +++ b/app/controllers/media_controller.rb @@ -1,16 +1,19 @@ # frozen_string_literal: true class MediaController < ApplicationController - before_action :set_media_attachment + before_action :verify_permitted_status def show - redirect_to @media_attachment.file.url(:original) + redirect_to media_attachment.file.url(:original) end private - def set_media_attachment - @media_attachment = MediaAttachment.where.not(status_id: nil).find_by!(shortcode: params[:id]) - raise ActiveRecord::RecordNotFound unless @media_attachment.status.permitted?(current_account) + def media_attachment + MediaAttachment.attached.find_by!(shortcode: params[:id]) + end + + def verify_permitted_status + raise ActiveRecord::RecordNotFound unless media_attachment.status.permitted?(current_account) end end diff --git a/app/models/media_attachment.rb b/app/models/media_attachment.rb index 818190214..85e82e12b 100644 --- a/app/models/media_attachment.rb +++ b/app/models/media_attachment.rb @@ -33,6 +33,7 @@ class MediaAttachment < ApplicationRecord validates :account, presence: true + scope :attached, -> { where.not(status_id: nil) } scope :local, -> { where(remote_url: '') } default_scope { order('id asc') } |