Sha256: c5cca10b4872f4d7c66d6f3b4e11b8ac390a71d283ac4b3cdb67fca62639a9eb
Contents?: true
Size: 1.96 KB
Versions: 1
Compression:
Stored size: 1.96 KB
Contents
# -*- encoding : utf-8 -*- module RademadeAdmin module Upload class PreviewService include ActionView::Helpers::TagHelper include ActionView::Context def initialize(uploader) @uploader = uploader end def preview_html content_tag(:div, :class => ['preview-wrapper', preview_style_class].join(' ')) do if @uploader.blank? empty_file_html else uploaded_file_html end end end def uploaded_file_html if is_image? uploaded_image_preview elsif is_video? uploaded_video_preview else uploaded_file_default_preview end end private def empty_file_html content_tag(:span, I18n.t('rademade_admin.file_not_chosen'), { :class => 'no-file' }) end def preview_style_class if is_image? 'image-preview-wrapper' elsif is_video? 'video-preview-wrapper' else 'file-preview-wrapper' end end def is_image? @uploader.class.ancestors.include? RademadeAdmin::Uploader::Photo end def is_video? @uploader.class.ancestors.include? RademadeAdmin::Uploader::Video end def uploaded_image_preview content_tag(:img, '', { :src => @uploader.resize(230, 130), :class => 'image-preview', :width => 230, :height => 130 }) end def uploaded_video_preview content_tag(:img, '', { :src => @uploader.thumb_path, :class => 'video-preview', :width => 300 }) end def uploaded_file_default_preview file_path = @uploader.file.file text = "#{File.basename(file_path)}, #{RademadeAdmin::FileInfoFormatter.format_size(File.size(file_path))}" content_tag(:span, text, { :class => 'file-uploaded' }) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rademade_admin-0.1.0 | app/services/upload/preview_service.rb |