Sha256: 37586559aeaec698028bd2ccae2b0ab7dedfead07c6292b77142c7d810ca6047

Contents?: true

Size: 650 Bytes

Versions: 3

Compression:

Stored size: 650 Bytes

Contents

class ComfyPress::Tag::File
  include ComfyPress::Tag
  
  def self.regex_tag_signature(identifier = nil)
    identifier ||= IDENTIFIER_REGEX
    /\{\{\s*cms:file:(#{identifier}):?(.*?)\s*\}\}/
  end
  
  # Initializing Cms::File object
  def file
    page.site.files.detect{|f| f.file_file_name == self.identifier.to_s}
  end
  
  def content
    return unless file
    
    format  = params[0]
    text    = params[1] || identifier
    
    case format
    when 'link'
      "<a href='#{file.file.url}' target='_blank'>#{text}</a>"
    when 'image'
      "<img src='#{file.file.url}' alt='#{text}' />"
    else
      file.file.url
    end
  end
end

Version data entries

3 entries across 2 versions & 1 rubygems

Version Path
comfypress-0.1.4 db/lib/comfypress/tags/file.rb
comfypress-0.1.4 lib/comfypress/tags/file.rb
comfypress-0.1.3 lib/comfypress/tags/file.rb