Module: Cloudinary
- Defined in:
- lib/cloudinary/version.rb,
lib/cloudinary.rb
Overview
Defined Under Namespace
Modules: CarrierWave, FormBuilder
Classes: Api, Blob, Downloader, Engine, Migrator, PreloadedFile, Railtie, Static, Uploader, Utils
Constant Summary
collapse
- CF_SHARED_CDN =
"d3jpl91pxevbkh.cloudfront.net"
- AKAMAI_SHARED_CDN =
"res.cloudinary.com"
- OLD_AKAMAI_SHARED_CDN =
"cloudinary-a.akamaihd.net"
- SHARED_CDN =
AKAMAI_SHARED_CDN
- USER_AGENT =
"CloudinaryRuby/" + VERSION
- FORMAT_ALIASES =
{
"jpeg" => "jpg",
"jpe" => "jpg",
"tif" => "tiff",
"ps" => "eps",
"ept" => "eps"
}
- VERSION =
"1.1.6"
- @@user_platform =
""
- @@config =
nil
Class Method Summary
collapse
Class Method Details
98
99
100
101
102
103
104
105
|
# File 'lib/cloudinary.rb', line 98
def self.app_root
if defined? Rails::root
Rails.root.is_a?(Pathname) ? Rails.root : Pathname.new(Rails.root)
else
Pathname.new(".")
end
end
|
.config(new_config = nil) {|@@config| ... } ⇒ Object
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
# File 'lib/cloudinary.rb', line 57
def self.config(new_config=nil)
first_time = @@config.nil?
@@config ||= OpenStruct.new((YAML.load(ERB.new(IO.read(config_dir.join("cloudinary.yml"))).result)[config_env] rescue {}))
if first_time && ENV["CLOUDINARY_CLOUD_NAME"]
set_config(
"cloud_name" => ENV["CLOUDINARY_CLOUD_NAME"],
"api_key" => ENV["CLOUDINARY_API_KEY"],
"api_secret" => ENV["CLOUDINARY_API_SECRET"],
"secure_distribution" => ENV["CLOUDINARY_SECURE_DISTRIBUTION"],
"private_cdn" => ENV["CLOUDINARY_PRIVATE_CDN"].to_s == 'true',
"secure" => ENV["CLOUDINARY_SECURE"].to_s == 'true'
)
elsif first_time && ENV["CLOUDINARY_URL"]
config_from_url(ENV["CLOUDINARY_URL"])
end
set_config(new_config) if new_config
yield(@@config) if block_given?
@@config
end
|
.config_from_url(url) ⇒ Object
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
|
# File 'lib/cloudinary.rb', line 81
def self.config_from_url(url)
@@config ||= OpenStruct.new
uri = URI.parse(url)
set_config(
"cloud_name" => uri.host,
"api_key" => uri.user,
"api_secret" => uri.password,
"private_cdn" => !uri.path.blank?,
"secure_distribution" => uri.path[1..-1]
)
uri.query.to_s.split("&").each do
|param|
key, value = param.split("=")
set_config(key=>URI.decode(value))
end
end
|
.USER_AGENT ⇒ Object
39
40
41
42
43
44
45
|
# File 'lib/cloudinary.rb', line 39
def self.USER_AGENT
if @@user_platform.empty?
"#{USER_AGENT}"
else
"#{@@user_platform} #{USER_AGENT}"
end
end
|
35
36
37
|
# File 'lib/cloudinary.rb', line 35
def self.user_platform
@@user_platform
end
|
Add platform information to the USER_AGENT header This is intended for platform information and not individual applications!
31
32
33
|
# File 'lib/cloudinary.rb', line 31
def self.user_platform=(value)
@@user_platform= value
end
|