zedkit 1.1.4 → 1.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/VERSION +1 -1
- data/lib/zedkit/client/client.rb +1 -1
- data/lib/zedkit/rails/sessions.rb +9 -4
- data/lib/zedkit/resources/email_settings.rb +38 -0
- data/lib/zedkit/resources/emails.rb +38 -0
- data/lib/zedkit/resources/projects.rb +10 -0
- data/lib/zedkit/resources/users.rb +3 -0
- data/lib/zedkit.rb +8 -6
- data/test/test_email_settings.rb +38 -0
- data/test/test_emails.rb +17 -0
- data/test/test_entities.rb +14 -8
- data/test/test_projects.rb +20 -2
- metadata +7 -3
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.1.
|
1
|
+
1.1.5
|
data/lib/zedkit/client/client.rb
CHANGED
@@ -39,7 +39,7 @@ module Zedkit
|
|
39
39
|
def verify(username, password)
|
40
40
|
submit_request(:verify, 'users/verify', nil, {}, { :user => username, :password => password })
|
41
41
|
end
|
42
|
-
def get(resource, user_key, params = {})
|
42
|
+
def get(resource, user_key = nil, params = {})
|
43
43
|
submit_request(:get, resource, user_key, params)
|
44
44
|
end
|
45
45
|
|
@@ -23,14 +23,15 @@ module Zedkit
|
|
23
23
|
set_last_seen if session[:last_seen].nil?
|
24
24
|
return true if session[:last_seen] > (Time.now.to_i - options[:idle_maximum_in_seconds])
|
25
25
|
Rails.logger.info "Session has EXPIRED [#{options[:idle_maximum_in_seconds]}]"
|
26
|
+
end_session
|
26
27
|
false
|
27
28
|
end
|
28
29
|
def session_fresh_with_redirect?(options = {})
|
29
30
|
options[:idle_maximum_in_seconds] = 900 unless options.has_key? :idle_maximum_in_seconds
|
30
31
|
options[:url] = new_session_url unless options.has_key? :url
|
31
32
|
return true if session_fresh?(options)
|
32
|
-
end_session
|
33
33
|
redirect_to options[:url]
|
34
|
+
end_session
|
34
35
|
false
|
35
36
|
end
|
36
37
|
|
@@ -63,15 +64,19 @@ module Zedkit
|
|
63
64
|
|
64
65
|
Rails.logger.info "User Verification Request via Zedkit [#{login.downcase}]"
|
65
66
|
Zedkit::Users.verify(:username => login.downcase, :password => password) do |json|
|
66
|
-
|
67
|
-
|
68
|
-
cookies[:user_login] = { :value => login.downcase, :expires => 365.days.from_now }
|
67
|
+
Rails.logger.info "User VERIFIED [#{json['uuid']}]"
|
68
|
+
set_session(json, login.downcase)
|
69
69
|
return true
|
70
70
|
end
|
71
71
|
|
72
72
|
else set_user_login end
|
73
73
|
false
|
74
74
|
end
|
75
|
+
def set_session(json, login)
|
76
|
+
@user = json
|
77
|
+
session[:user_json] = @user ## This does not contain the user's password.
|
78
|
+
cookies[:user_login] = { :value => login.downcase, :expires => 365.days.from_now }
|
79
|
+
end
|
75
80
|
def end_session
|
76
81
|
session[:user_json] = nil
|
77
82
|
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
##
|
2
|
+
# Copyright (c) Zedkit.
|
3
|
+
#
|
4
|
+
# Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation
|
5
|
+
# files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy,
|
6
|
+
# modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the
|
7
|
+
# Software is furnished to do so, subject to the following conditions:
|
8
|
+
#
|
9
|
+
# The above copyright notice and this permission notice shall be included in all copies or substantial portions of the
|
10
|
+
# Software.
|
11
|
+
#
|
12
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
|
13
|
+
# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
14
|
+
# COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
15
|
+
# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
16
|
+
##
|
17
|
+
|
18
|
+
module Zedkit
|
19
|
+
class EmailSettings
|
20
|
+
class << self
|
21
|
+
def get(zks = {}, &block)
|
22
|
+
Zedkit::Client.crud(:get, "emails/settings/#{zks[:uuid]}", zks, [], &block)
|
23
|
+
end
|
24
|
+
|
25
|
+
def create(zks = {}, &block)
|
26
|
+
Zedkit::Client.crud(:create, 'emails/settings', zks, [], &block)
|
27
|
+
end
|
28
|
+
|
29
|
+
def update(zks = {}, &block)
|
30
|
+
Zedkit::Client.crud(:update, "emails/settings/#{zks[:uuid]}", zks, [], &block)
|
31
|
+
end
|
32
|
+
|
33
|
+
def delete(zks = {}, &block)
|
34
|
+
Zedkit::Client.crud(:delete, "emails/settings/#{zks[:uuid]}", zks, [], &block)
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
##
|
2
|
+
# Copyright (c) Zedkit.
|
3
|
+
#
|
4
|
+
# Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation
|
5
|
+
# files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy,
|
6
|
+
# modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the
|
7
|
+
# Software is furnished to do so, subject to the following conditions:
|
8
|
+
#
|
9
|
+
# The above copyright notice and this permission notice shall be included in all copies or substantial portions of the
|
10
|
+
# Software.
|
11
|
+
#
|
12
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
|
13
|
+
# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
14
|
+
# COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
15
|
+
# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
16
|
+
##
|
17
|
+
|
18
|
+
module Zedkit
|
19
|
+
class Emails
|
20
|
+
class << self
|
21
|
+
def get(zks = {}, &block)
|
22
|
+
Zedkit::Client.crud(:get, "emails/#{zks[:uuid]}", zks, [], &block)
|
23
|
+
end
|
24
|
+
|
25
|
+
def create(zks = {}, &block)
|
26
|
+
Zedkit::Client.crud(:create, 'emails', zks, [], &block)
|
27
|
+
end
|
28
|
+
|
29
|
+
def update(zks = {}, &block)
|
30
|
+
Zedkit::Client.crud(:update, "emails/#{zks[:uuid]}", zks, [], &block)
|
31
|
+
end
|
32
|
+
|
33
|
+
def delete(zks = {}, &block)
|
34
|
+
Zedkit::Client.crud(:delete, "emails/#{zks[:uuid]}", zks, [], &block)
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -36,12 +36,15 @@ module Zedkit
|
|
36
36
|
end
|
37
37
|
|
38
38
|
def create(zks = {}, &block)
|
39
|
+
Zedkit::Client.crud(:create, 'projects', zks, [], &block)
|
39
40
|
end
|
40
41
|
|
41
42
|
def update(zks = {}, &block)
|
43
|
+
Zedkit::Client.crud(:update, "projects/#{zks[:uuid]}", zks, [], &block)
|
42
44
|
end
|
43
45
|
|
44
46
|
def delete(zks = {}, &block)
|
47
|
+
Zedkit::Client.crud(:delete, "projects/#{zks[:uuid]}", zks, [], &block)
|
45
48
|
end
|
46
49
|
end
|
47
50
|
|
@@ -73,5 +76,12 @@ module Zedkit
|
|
73
76
|
end
|
74
77
|
end
|
75
78
|
end
|
79
|
+
class EmailSettings
|
80
|
+
class << self
|
81
|
+
def get(zks = {}, &block)
|
82
|
+
Zedkit::Client.crud(:get, 'emails/settings', zks, [], &block)
|
83
|
+
end
|
84
|
+
end
|
85
|
+
end
|
76
86
|
end
|
77
87
|
end
|
data/lib/zedkit.rb
CHANGED
@@ -23,23 +23,23 @@ require 'zedkit/ext/hash.rb'
|
|
23
23
|
|
24
24
|
module Zedkit
|
25
25
|
class << self
|
26
|
-
def countries
|
27
|
-
rs = Zedkit::Client.get('entities/countries'
|
26
|
+
def countries
|
27
|
+
rs = Zedkit::Client.get('entities/countries')
|
28
28
|
if rs && block_given?
|
29
29
|
rs.is_a?(Array) ? rs.each {|i| yield(i) } : yield(rs)
|
30
30
|
end
|
31
31
|
rs
|
32
32
|
end
|
33
|
-
def regions(
|
34
|
-
rs = Zedkit::Client.get('entities/regions',
|
33
|
+
def regions(zks = {})
|
34
|
+
rs = Zedkit::Client.get('entities/regions', nil, zks)
|
35
35
|
if rs && block_given?
|
36
36
|
rs.is_a?(Array) ? rs.each {|i| yield(i) } : yield(rs)
|
37
37
|
end
|
38
38
|
rs
|
39
39
|
end
|
40
40
|
|
41
|
-
def entities
|
42
|
-
rs = Zedkit::Client.get('entities/zedkit'
|
41
|
+
def entities
|
42
|
+
rs = Zedkit::Client.get('entities/zedkit')
|
43
43
|
if rs && block_given?
|
44
44
|
rs.is_a?(Array) ? rs.each {|i| yield(i) } : yield(rs)
|
45
45
|
end
|
@@ -80,5 +80,7 @@ require 'zedkit/instances/project.rb'
|
|
80
80
|
|
81
81
|
require 'zedkit/resources/projects.rb'
|
82
82
|
require 'zedkit/resources/users.rb'
|
83
|
+
require 'zedkit/resources/emails.rb'
|
84
|
+
require 'zedkit/resources/email_settings.rb'
|
83
85
|
|
84
86
|
require 'zedkit/rails/sessions' if defined?(Rails::Railtie)
|
@@ -0,0 +1,38 @@
|
|
1
|
+
##
|
2
|
+
# Copyright (c) Zedkit.
|
3
|
+
#
|
4
|
+
# Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation
|
5
|
+
# files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy,
|
6
|
+
# modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the
|
7
|
+
# Software is furnished to do so, subject to the following conditions:
|
8
|
+
#
|
9
|
+
# The above copyright notice and this permission notice shall be included in all copies or substantial portions of the
|
10
|
+
# Software.
|
11
|
+
#
|
12
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
|
13
|
+
# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
14
|
+
# COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
15
|
+
# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
16
|
+
##
|
17
|
+
|
18
|
+
require 'helper'
|
19
|
+
|
20
|
+
class TestEmailSettings < Test::Unit::TestCase
|
21
|
+
def test_get
|
22
|
+
end
|
23
|
+
def test_get_with_block
|
24
|
+
end
|
25
|
+
|
26
|
+
def test_create
|
27
|
+
end
|
28
|
+
def test_create_with_block
|
29
|
+
end
|
30
|
+
|
31
|
+
def test_update
|
32
|
+
end
|
33
|
+
def test_update_with_block
|
34
|
+
end
|
35
|
+
|
36
|
+
def test_delete
|
37
|
+
end
|
38
|
+
end
|
data/test/test_emails.rb
CHANGED
@@ -18,4 +18,21 @@
|
|
18
18
|
require 'helper'
|
19
19
|
|
20
20
|
class TestEmails < Test::Unit::TestCase
|
21
|
+
def test_get
|
22
|
+
end
|
23
|
+
def test_get_with_block
|
24
|
+
end
|
25
|
+
|
26
|
+
def test_create
|
27
|
+
end
|
28
|
+
def test_create_with_block
|
29
|
+
end
|
30
|
+
|
31
|
+
def test_update
|
32
|
+
end
|
33
|
+
def test_update_with_block
|
34
|
+
end
|
35
|
+
|
36
|
+
def test_delete
|
37
|
+
end
|
21
38
|
end
|
data/test/test_entities.rb
CHANGED
@@ -19,20 +19,26 @@ require 'helper'
|
|
19
19
|
|
20
20
|
class TestEntities < Test::Unit::TestCase
|
21
21
|
def test_entities
|
22
|
-
zkes = Zedkit.entities
|
22
|
+
zkes = Zedkit.entities
|
23
|
+
assert_not_nil zkes['languages']
|
24
|
+
assert_not_nil zkes['locales']
|
25
|
+
assert_not_nil zkes['timezones']
|
23
26
|
end
|
24
27
|
def test_entities_with_block
|
25
|
-
Zedkit.entities
|
28
|
+
Zedkit.entities do |zkes|
|
29
|
+
assert_not_nil zkes['languages']
|
30
|
+
assert_not_nil zkes['locales']
|
31
|
+
assert_not_nil zkes['timezones']
|
26
32
|
end
|
27
33
|
end
|
28
34
|
|
29
35
|
def test_countries
|
30
|
-
cnts = Zedkit.countries
|
36
|
+
cnts = Zedkit.countries
|
31
37
|
assert cnts.is_a? Array
|
32
38
|
assert cnts.length >= 2
|
33
39
|
end
|
34
40
|
def test_countries_with_block
|
35
|
-
Zedkit.countries
|
41
|
+
Zedkit.countries do |cnts|
|
36
42
|
assert_not_nil cnts['code']
|
37
43
|
assert_not_nil cnts['name']
|
38
44
|
assert_not_nil cnts['locale']
|
@@ -40,24 +46,24 @@ class TestEntities < Test::Unit::TestCase
|
|
40
46
|
end
|
41
47
|
|
42
48
|
def test_regions
|
43
|
-
rgss = Zedkit.regions
|
49
|
+
rgss = Zedkit.regions
|
44
50
|
assert rgss.is_a? Array
|
45
51
|
assert_not_nil rgss.detect {|region| region['code'] == 'WA' }
|
46
52
|
assert_not_nil rgss.detect {|region| region['code'] == 'BC' }
|
47
53
|
end
|
48
54
|
def test_regions_with_block
|
49
|
-
Zedkit.regions
|
55
|
+
Zedkit.regions do |rgss|
|
50
56
|
assert_not_nil rgss['code']
|
51
57
|
assert_not_nil rgss['name']
|
52
58
|
end
|
53
59
|
end
|
54
60
|
def test_states_for_usa
|
55
|
-
rgss = Zedkit.regions(
|
61
|
+
rgss = Zedkit.regions(:country => { :code => 'US' })
|
56
62
|
assert rgss.is_a? Array
|
57
63
|
assert_nil rgss.detect {|region| region['code'] == 'BC' }
|
58
64
|
end
|
59
65
|
def test_provinces_for_canada
|
60
|
-
rgss = Zedkit.regions(
|
66
|
+
rgss = Zedkit.regions(:country => { :code => 'CA' })
|
61
67
|
assert rgss.is_a? Array
|
62
68
|
assert_nil rgss.detect {|region| region['code'] == 'WA' }
|
63
69
|
end
|
data/test/test_projects.rb
CHANGED
@@ -61,18 +61,36 @@ class TestProjects < Test::Unit::TestCase
|
|
61
61
|
end
|
62
62
|
|
63
63
|
def test_create
|
64
|
+
pp = Zedkit::Projects.create(:user_key => @uu['user_key'], :project => { :name => "new_project" })
|
65
|
+
assert_not_nil pp['location']
|
66
|
+
assert_equal 'new_project', pp['name']
|
64
67
|
end
|
65
68
|
def test_create_with_block
|
69
|
+
Zedkit::Projects.create(:user_key => @uu['user_key'], :project => { :name => "new_project" }) do |pp|
|
70
|
+
assert_not_nil pp['location']
|
71
|
+
assert_equal 'new_project', pp['name']
|
72
|
+
end
|
66
73
|
end
|
67
74
|
|
68
75
|
def test_update
|
76
|
+
pp = Zedkit::Projects.get(:user_key => @uu['user_key'], :uuid => @uu['projects'][0])
|
77
|
+
uu = Zedkit::Projects.update(:user_key => @uu['user_key'], :uuid => pp['uuid'],
|
78
|
+
:project => { :location => "new_location" })
|
79
|
+
assert_equal 'http://new_location.zedapi.com', uu['location']
|
80
|
+
assert_equal pp['uuid'], uu['uuid']
|
69
81
|
end
|
70
82
|
def test_update_with_block
|
83
|
+
Zedkit::Projects.get(:user_key => @uu['user_key'], :uuid => @uu['projects'][0]) do |pp|
|
84
|
+
Zedkit::Projects.update(:user_key => @uu['user_key'], :uuid => pp['uuid'],
|
85
|
+
:project => { :location => "new_location" }) do |uu|
|
86
|
+
assert_equal 'http://new_location.zedapi.com', uu['location']
|
87
|
+
assert_equal pp['uuid'], uu['uuid']
|
88
|
+
end
|
89
|
+
end
|
71
90
|
end
|
72
91
|
|
73
92
|
def test_delete
|
74
|
-
|
75
|
-
def test_delete_with_block
|
93
|
+
assert_nil Zedkit::Projects.delete(:user_key => @uu['user_key'], :uuid => @uu['projects'][0])
|
76
94
|
end
|
77
95
|
|
78
96
|
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 1
|
7
7
|
- 1
|
8
|
-
-
|
9
|
-
version: 1.1.
|
8
|
+
- 5
|
9
|
+
version: 1.1.5
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Zedkit
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date:
|
17
|
+
date: 2011-01-06 00:00:00 -08:00
|
18
18
|
default_executable: zedkit
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
@@ -74,9 +74,12 @@ files:
|
|
74
74
|
- lib/zedkit/instances/instance.rb
|
75
75
|
- lib/zedkit/instances/project.rb
|
76
76
|
- lib/zedkit/rails/sessions.rb
|
77
|
+
- lib/zedkit/resources/email_settings.rb
|
78
|
+
- lib/zedkit/resources/emails.rb
|
77
79
|
- lib/zedkit/resources/projects.rb
|
78
80
|
- lib/zedkit/resources/users.rb
|
79
81
|
- test/helper.rb
|
82
|
+
- test/test_email_settings.rb
|
80
83
|
- test/test_emails.rb
|
81
84
|
- test/test_entities.rb
|
82
85
|
- test/test_projects.rb
|
@@ -115,6 +118,7 @@ specification_version: 3
|
|
115
118
|
summary: gem for Zedkit
|
116
119
|
test_files:
|
117
120
|
- test/helper.rb
|
121
|
+
- test/test_email_settings.rb
|
118
122
|
- test/test_emails.rb
|
119
123
|
- test/test_entities.rb
|
120
124
|
- test/test_projects.rb
|