class Ckeditor::AssetResponse
Attributes
asset[R]
params[R]
Public Class Methods
new(asset, request)
click to toggle source
# File lib/ckeditor/asset_response.rb, line 5 def initialize(asset, request) @asset = asset @request = request @params = request.params @asset.data = Ckeditor::Http.normalize_param(file, @request) end
Public Instance Methods
ckeditor?()
click to toggle source
# File lib/ckeditor/asset_response.rb, line 17 def ckeditor? !params[:CKEditor].blank? end
errors()
click to toggle source
# File lib/ckeditor/asset_response.rb, line 43 def errors if json? { json: { "uploaded" => 0, "error" => { "message" => "Upload failed"} }.to_json } elsif ckeditor? { text: %Q"<script type='text/javascript'> window.parent.CKEDITOR.tools.callFunction(#{params[:CKEditorFuncNum]}, null, '#{Ckeditor::Utils.escape_single_quotes(asset.errors.full_messages.first)}'); </script>" } else {nothing: true, format: :json} end end
file()
click to toggle source
# File lib/ckeditor/asset_response.rb, line 21 def file !(ckeditor? || json?) ? params[:qqfile] : params[:upload] end
json?()
click to toggle source
# File lib/ckeditor/asset_response.rb, line 13 def json? params[:responseType] == 'json' end
success(relative_url_root = nil)
click to toggle source
# File lib/ckeditor/asset_response.rb, line 25 def success(relative_url_root = nil) if json? { json: { "uploaded" => 1, "fileName" => asset.filename, "url" => asset.url }.to_json } elsif ckeditor? { text: %Q"<script type='text/javascript'> window.parent.CKEDITOR.tools.callFunction(#{params[:CKEditorFuncNum]}, '#{asset_url(relative_url_root)}'); </script>" } else { json: asset.to_json(only: [:id, :type]) } end end
Private Instance Methods
asset_url(relative_url_root)
click to toggle source
# File lib/ckeditor/asset_response.rb, line 61 def asset_url(relative_url_root) url = Ckeditor::Utils.escape_single_quotes(asset.url_content) if URI(url).relative? "#{relative_url_root}#{url}" else url end end