Sha256: e8a438c14b4059d3285ec0f6f346e994fab4b390b0a3cd1a9b722611c464968d

Contents?: true

Size: 1.41 KB

Versions: 6

Compression:

Stored size: 1.41 KB

Contents

module Cmor
  module Files
    # Example:
    #
    #     # app/controllers/application_controller.rb
    #     class ApplicationController < ActionController::Base
    #       view_helper Cmor::Files::ApplicationViewHelper, as: :files_helper
    #     end
    #
    class ApplicationViewHelper < Rao::ViewHelper::Base
      # Example:
      #
      #     # app/views/layouts/application.html.haml
      #     = files_helper(self).render_file(identifier: 'Quick reference manual')
      #
      def render_file(identifier:)
        resource = Cmor::Files::FileDetail.published.where(identifier: identifier).first
        if resource.nil?
          "Could not find published file detail with identifier: '#{identifier}'."
        else
          render resource: resource
        end
      end

      # Example:
      #
      #     # app/views/layouts/application.html.haml
      #     = files_helper(self).render_folder(identifier: 'Manuals')
      #
      def render_folder(identifier:)
        resource = Cmor::Files::Folder.published.where(identifier: identifier).first
        if resource.nil?
          "Could not find published folder with identifier: '#{identifier}'."
        else
          render resource: resource
        end
      end

      def asset_download_button_label(asset)
        "#{c.t(".download")} (#{asset.blob.content_type.split('/').last}, #{c.number_to_human_size(asset.blob.byte_size)})"
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
cmor_files-0.0.60.pre app/view_helpers/cmor/files/application_view_helper.rb
cmor_files-0.0.59.pre app/view_helpers/cmor/files/application_view_helper.rb
cmor_files-0.0.58.pre app/view_helpers/cmor/files/application_view_helper.rb
cmor_files-0.0.57.pre app/view_helpers/cmor/files/application_view_helper.rb
cmor_files-0.0.56.pre app/view_helpers/cmor/files/application_view_helper.rb
cmor_files-0.0.55.pre app/view_helpers/cmor/files/application_view_helper.rb