class Ckeditor::AssetResponse
def asset_url(relative_url_root)
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
def ckeditor?
def ckeditor? !params[:CKEditor].blank? end
def current_mode
def current_mode @current_mode ||= extract_mode end
def data
def data @data ||= read_data end
def error_message
def error_message Ckeditor::Utils.escape_single_quotes(asset.errors.full_messages.first) end
def errors
def errors send("errors_#{current_mode}") end
def errors_ckeditor
def errors_ckeditor { html: javascript_tag("#{FUNCTION}(#{params[:CKEditorFuncNum]}, null, '#{error_message}');") } end
def errors_default
def errors_default { json: { message: error_message }.to_json } end
def errors_json
def errors_json { json: { uploaded: 0, error: { message: error_message } }.to_json } end
def extract_mode
def extract_mode if json? :json elsif ckeditor? :ckeditor else :default end end
def file
def file !(ckeditor? || json?) ? params[:qqfile] : params[:upload] end
def initialize(asset, request)
def initialize(asset, request) @asset = asset @request = request @params = request.params end
def json?
def json? params[:responseType] == JSON_TYPE end
def read_data
def read_data data = Ckeditor::Http.normalize_param(file, request) return if data.size.zero? || data.original_filename.blank? data end
def success(relative_url_root = nil)
def success(relative_url_root = nil) send("success_#{current_mode}", relative_url_root) end
def success_ckeditor(relative_url_root = nil)
def success_ckeditor(relative_url_root = nil) { html: javascript_tag("#{FUNCTION}(#{params[:CKEditorFuncNum]}, '#{asset_url(relative_url_root)}');") } end
def success_default(_relative_url_root = nil)
def success_default(_relative_url_root = nil) { json: asset.to_json(only: [:id, :type]) } end
def success_json(_relative_url_root = nil)
def success_json(_relative_url_root = nil) { json: { uploaded: 1, fileName: asset.filename, url: asset.url }.to_json } end