Sha256: 26e0292e4d57d5df7d17eaaabea08101bbd8fe869d3220bef51220695139fab0
Contents?: true
Size: 1.23 KB
Versions: 1
Compression:
Stored size: 1.23 KB
Contents
# -*- encoding : utf-8 -*- class RademadeAdmin::FileController < RademadeAdmin::AbstractController def upload param_key = params[:column].to_sym uploader.store!(params[param_key]) render :json => { :html => RademadeAdmin::Upload::PreviewService.new(uploader).preview_html, :file => uploader } rescue CarrierWave::UploadError => e show_error(e) end def download # todo filename send_file(uploader.model.send(uploader.mounted_as).file.file) end def crop image = uploader.crop_image(params[:crop], params[:path]) uploader.store!(image) upload_preview_service = RademadeAdmin::Upload::PreviewService.new(uploader) render :json => { :html => upload_preview_service.preview_html, :file => uploader } rescue CarrierWave::UploadError => e show_error(e) end private def show_error(error) render :json => { :error => error.to_s }, :status => :unprocessable_entity end def uploader @uploader ||= RademadeAdmin::LoaderService.const_get(params[:uploader]).new(model, params[:column]) end def model model_class = RademadeAdmin::LoaderService.const_get(params[:model]) params[:id].present? ? model_class.find(params[:id]) : model_class.new end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rademade_admin-0.1.4 | app/controllers/rademade_admin/file_controller.rb |