Sha256: d8111bf8343d21d582177401d50fc92b3ef859e5f71857bd47fd5e25e9a9757c
Contents?: true
Size: 1.23 KB
Versions: 6
Compression:
Stored size: 1.23 KB
Contents
class SpudBanner < ActiveRecord::Base belongs_to :owner, :class_name => 'SpudBannerSet', :foreign_key => 'spud_banner_set_id', :inverse_of => :banners, :touch => true scope :active, ->{ where('(start_date IS NULL OR start_date <= ?) AND (end_date IS NULL OR end_date >= ?)', Date.today, Date.today) } has_attached_file :banner, :styles => lambda { |attachment| attachment.instance.dynamic_styles }, :convert_options => { :tiny => '-strip -density 72x72', :banner => '-strip -density 72x72' }, :storage => Spud::Banners.paperclip_storage, :s3_credentials => Spud::Banners.s3_credentials, :url => Spud::Banners.storage_url, :path => Spud::Banners.storage_path validates_attachment :banner, :presence => true, :content_type => {:content_type => ['image/jpg', 'image/jpeg', 'image/png']} def dynamic_styles styles = { :tiny => '150x150' } owner_style = nil if self.owner owner_style = "#{self.owner.width}x#{self.owner.height}" owner_style += '#' if self.owner.cropped styles[:banner] = owner_style end return styles end def set_name return owner.name end def is_expired? return end_date.present? && end_date < Date.today end end
Version data entries
6 entries across 6 versions & 1 rubygems