lib/cloudinary/uploader.rb in cloudinary-1.23.0 vs lib/cloudinary/uploader.rb in cloudinary-1.24.0
- old
+ new
@@ -16,64 +16,66 @@
#symbolize keys
options = options.clone
options.keys.each { |key| options[key.to_sym] = options.delete(key) if key.is_a?(String) }
params = {
- :access_control => Cloudinary::Utils.json_array_param(options[:access_control]),
- :access_mode => options[:access_mode],
- :allowed_formats => Cloudinary::Utils.build_array(options[:allowed_formats]).join(","),
- :asset_folder => options[:asset_folder],
- :async => Cloudinary::Utils.as_safe_bool(options[:async]),
- :auto_tagging => options[:auto_tagging] && options[:auto_tagging].to_f,
- :background_removal => options[:background_removal],
- :backup => Cloudinary::Utils.as_safe_bool(options[:backup]),
- :callback => options[:callback],
- :categorization => options[:categorization],
- :cinemagraph_analysis => Cloudinary::Utils.as_safe_bool(options[:cinemagraph_analysis]),
- :colors => Cloudinary::Utils.as_safe_bool(options[:colors]),
- :context => Cloudinary::Utils.encode_context(options[:context]),
- :custom_coordinates => Cloudinary::Utils.encode_double_array(options[:custom_coordinates]),
- :detection => options[:detection],
- :discard_original_filename => Cloudinary::Utils.as_safe_bool(options[:discard_original_filename]),
- :display_name => options[:display_name],
- :eager => Cloudinary::Utils.build_eager(options[:eager]),
- :eager_async => Cloudinary::Utils.as_safe_bool(options[:eager_async]),
- :eager_notification_url => options[:eager_notification_url],
- :exif => Cloudinary::Utils.as_safe_bool(options[:exif]),
- :eval => options[:eval],
- :face_coordinates => Cloudinary::Utils.encode_double_array(options[:face_coordinates]),
- :faces => Cloudinary::Utils.as_safe_bool(options[:faces]),
- :folder => options[:folder],
- :format => options[:format],
- :filename_override => options[:filename_override],
- :headers => build_custom_headers(options[:headers]),
- :image_metadata => Cloudinary::Utils.as_safe_bool(options[:image_metadata]),
- :invalidate => Cloudinary::Utils.as_safe_bool(options[:invalidate]),
- :moderation => options[:moderation],
- :notification_url => options[:notification_url],
- :ocr => options[:ocr],
- :overwrite => Cloudinary::Utils.as_safe_bool(options[:overwrite]),
- :phash => Cloudinary::Utils.as_safe_bool(options[:phash]),
- :proxy => options[:proxy],
- :public_id => options[:public_id],
- :public_id_prefix => options[:public_id_prefix],
- :quality_analysis => Cloudinary::Utils.as_safe_bool(options[:quality_analysis]),
- :quality_override => options[:quality_override],
- :raw_convert => options[:raw_convert],
- :responsive_breakpoints => Cloudinary::Utils.generate_responsive_breakpoints_string(options[:responsive_breakpoints]),
- :return_delete_token => Cloudinary::Utils.as_safe_bool(options[:return_delete_token]),
- :similarity_search => options[:similarity_search],
- :tags => options[:tags] && Cloudinary::Utils.build_array(options[:tags]).join(","),
- :timestamp => (options[:timestamp] || Time.now.to_i),
- :transformation => Cloudinary::Utils.generate_transformation_string(options.clone),
- :type => options[:type],
- :unique_filename => Cloudinary::Utils.as_safe_bool(options[:unique_filename]),
- :upload_preset => options[:upload_preset],
- :use_filename => Cloudinary::Utils.as_safe_bool(options[:use_filename]),
- :use_filename_as_display_name => Cloudinary::Utils.as_safe_bool(options[:use_filename_as_display_name]),
- :accessibility_analysis => Cloudinary::Utils.as_safe_bool(options[:accessibility_analysis]),
- :metadata => Cloudinary::Utils.encode_context(options[:metadata])
+ :access_control => Cloudinary::Utils.json_array_param(options[:access_control]),
+ :access_mode => options[:access_mode],
+ :allowed_formats => Cloudinary::Utils.build_array(options[:allowed_formats]).join(","),
+ :asset_folder => options[:asset_folder],
+ :async => Cloudinary::Utils.as_safe_bool(options[:async]),
+ :auto_tagging => options[:auto_tagging] && options[:auto_tagging].to_f,
+ :background_removal => options[:background_removal],
+ :backup => Cloudinary::Utils.as_safe_bool(options[:backup]),
+ :callback => options[:callback],
+ :categorization => options[:categorization],
+ :cinemagraph_analysis => Cloudinary::Utils.as_safe_bool(options[:cinemagraph_analysis]),
+ :colors => Cloudinary::Utils.as_safe_bool(options[:colors]),
+ :context => Cloudinary::Utils.encode_context(options[:context]),
+ :custom_coordinates => Cloudinary::Utils.encode_double_array(options[:custom_coordinates]),
+ :detection => options[:detection],
+ :discard_original_filename => Cloudinary::Utils.as_safe_bool(options[:discard_original_filename]),
+ :display_name => options[:display_name],
+ :eager => Cloudinary::Utils.build_eager(options[:eager]),
+ :eager_async => Cloudinary::Utils.as_safe_bool(options[:eager_async]),
+ :eager_notification_url => options[:eager_notification_url],
+ :exif => Cloudinary::Utils.as_safe_bool(options[:exif]),
+ :eval => options[:eval],
+ :face_coordinates => Cloudinary::Utils.encode_double_array(options[:face_coordinates]),
+ :faces => Cloudinary::Utils.as_safe_bool(options[:faces]),
+ :folder => options[:folder],
+ :format => options[:format],
+ :filename_override => options[:filename_override],
+ :headers => build_custom_headers(options[:headers]),
+ :image_metadata => Cloudinary::Utils.as_safe_bool(options[:image_metadata]),
+ :invalidate => Cloudinary::Utils.as_safe_bool(options[:invalidate]),
+ :moderation => options[:moderation],
+ :notification_url => options[:notification_url],
+ :ocr => options[:ocr],
+ :overwrite => Cloudinary::Utils.as_safe_bool(options[:overwrite]),
+ :phash => Cloudinary::Utils.as_safe_bool(options[:phash]),
+ :proxy => options[:proxy],
+ :public_id => options[:public_id],
+ :public_id_prefix => options[:public_id_prefix],
+ :quality_analysis => Cloudinary::Utils.as_safe_bool(options[:quality_analysis]),
+ :quality_override => options[:quality_override],
+ :raw_convert => options[:raw_convert],
+ :responsive_breakpoints => Cloudinary::Utils.generate_responsive_breakpoints_string(options[:responsive_breakpoints]),
+ :return_delete_token => Cloudinary::Utils.as_safe_bool(options[:return_delete_token]),
+ :similarity_search => options[:similarity_search],
+ :tags => options[:tags] && Cloudinary::Utils.build_array(options[:tags]).join(","),
+ :timestamp => (options[:timestamp] || Time.now.to_i),
+ :transformation => Cloudinary::Utils.generate_transformation_string(options.clone),
+ :type => options[:type],
+ :unique_filename => Cloudinary::Utils.as_safe_bool(options[:unique_filename]),
+ :upload_preset => options[:upload_preset],
+ :use_filename => Cloudinary::Utils.as_safe_bool(options[:use_filename]),
+ :use_filename_as_display_name => Cloudinary::Utils.as_safe_bool(options[:use_filename_as_display_name]),
+ :use_asset_folder_as_public_id_prefix => Cloudinary::Utils.as_safe_bool(options[:use_asset_folder_as_public_id_prefix]),
+ :unique_display_name => Cloudinary::Utils.as_safe_bool(options[:unique_display_name]),
+ :accessibility_analysis => Cloudinary::Utils.as_safe_bool(options[:accessibility_analysis]),
+ :metadata => Cloudinary::Utils.encode_context(options[:metadata])
}
params
end
def self.unsigned_upload(file, upload_preset, options={})
@@ -323,10 +325,11 @@
self.call_api("metadata", options) do
{
timestamp: (options[:timestamp] || Time.now.to_i),
type: options[:type],
public_ids: Cloudinary::Utils.build_array(public_ids),
- metadata: Cloudinary::Utils.encode_context(metadata)
+ metadata: Cloudinary::Utils.encode_context(metadata),
+ clear_invalid: Cloudinary::Utils.as_safe_bool(options[:clear_invalid])
}
end
end
private