infomeme_client 0.1.1 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/lib/infomeme_client/functions/user.rb +2 -2
- data/lib/infomeme_client/functions/user_meme.rb +19 -5
- metadata +4 -4
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.2
|
@@ -2,8 +2,8 @@ module InfomemeClient::Functions::User
|
|
2
2
|
attr_accessor :default_language, :default_currency
|
3
3
|
|
4
4
|
def register(email, username, password, firstname, lastname, optional_fields = {})
|
5
|
-
optional_fields.
|
6
|
-
optional_fields.
|
5
|
+
optional_fields.store(:language_code, optional_fields.key?(:language) ? optional_fields.delete(:language) : default_language) #language is mandatory
|
6
|
+
optional_fields.store(:currency_code, optional_fields.key?(:currency) ? optional_fields.delete(:currency) : default_currency) #currency is mandatory
|
7
7
|
handle_response :post, "/users/register", optional_fields.merge({:email => email, :username => username, :password => password, :firstname => firstname, :lastname => lastname}) do
|
8
8
|
authorize_with_credentials username, password and return true
|
9
9
|
end
|
@@ -55,14 +55,21 @@ module InfomemeClient::Functions::UserMeme
|
|
55
55
|
|
56
56
|
def upload(meme_id, file)
|
57
57
|
upload_url = upload_for_meme(meme_id, true)
|
58
|
-
if upload_url
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
58
|
+
http_multipart(upload_url, generate_signature.merge({:meme_id => meme_id, :file => file})) if upload_url
|
59
|
+
end
|
60
|
+
|
61
|
+
def image_upload_for_meme(meme_id)
|
62
|
+
return false unless authorized?
|
63
|
+
handle_response :get, "/users/#{verified_user}/memes/#{meme_id}/image_upload_parameters" do |resp|
|
64
|
+
resp.image_upload_parameters unless resp.error?
|
63
65
|
end
|
64
66
|
end
|
65
67
|
|
68
|
+
def upload_image(meme_id, file)
|
69
|
+
upload_params = image_upload_for_meme(meme_id)
|
70
|
+
http_multipart("https://#{upload_params.bucket}.s3.amazonaws.com/", upload_params.reject {|k,v| k == :bucket}.merge({:file => file})) if upload_params
|
71
|
+
end
|
72
|
+
|
66
73
|
def rate(meme_id, rating)
|
67
74
|
return false unless authorized?
|
68
75
|
handle_response :post, "/users/#{verified_user}/memes/#{meme_id}/rates", {:rating => rating}
|
@@ -91,4 +98,11 @@ module InfomemeClient::Functions::UserMeme
|
|
91
98
|
return false unless authorized?
|
92
99
|
handle_response method, "/users/#{verified_user}/memes/#{meme_id}" + (cmd.nil? ? "" : "/#{cmd}"), params, headers
|
93
100
|
end
|
101
|
+
|
102
|
+
def http_multipart(url, params)
|
103
|
+
url = URI.parse(url)
|
104
|
+
req = Net::HTTP::Post::Multipart.new url.path, params
|
105
|
+
resp = Net::HTTP.start(url.host, url.port) {|http| http.request(req)}
|
106
|
+
resp == Net::HTTPSuccess
|
107
|
+
end
|
94
108
|
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: infomeme_client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 31
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 1
|
9
|
-
-
|
10
|
-
version: 0.1.
|
9
|
+
- 2
|
10
|
+
version: 0.1.2
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Infomeme Ltd.
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2010-07-
|
18
|
+
date: 2010-07-20 00:00:00 +02:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|