caren-api 0.4.24 → 0.4.25

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/.travis.yml ADDED
@@ -0,0 +1,12 @@
1
+ language: ruby
2
+ rvm:
3
+ - 1.8.7
4
+ - 1.9.2
5
+ - 1.9.3
6
+ - jruby-18mode # JRuby in 1.8 mode
7
+ - jruby-19mode # JRuby in 1.9 mode
8
+ - rbx-18mode
9
+ - rbx-19mode
10
+ notifications:
11
+ email:
12
+ - info@carenzorgt.nl
data/Gemfile CHANGED
@@ -1,13 +1,16 @@
1
1
  source "http://rubygems.org"
2
2
 
3
- gem "i18n", ">= 0"
4
- gem "activesupport", ">= 0"
5
- gem "builder", ">= 0"
3
+ gem "i18n"
4
+ gem "activesupport"
5
+ gem "builder"
6
6
  gem "rest-client", "1.6.7"
7
7
 
8
+ platforms :jruby do
9
+ gem "jruby-openssl"
10
+ end
11
+
8
12
  group :development do
9
13
  gem "bundler"
10
- gem "rcov"
11
14
  gem "capybara"
12
15
  gem "rspec"
13
16
  gem "fakeweb"
data/Rakefile CHANGED
@@ -31,9 +31,4 @@ RSpec::Core::RakeTask.new(:spec) do |spec|
31
31
  spec.pattern = FileList['spec/**/*_spec.rb']
32
32
  end
33
33
 
34
- RSpec::Core::RakeTask.new(:rcov) do |spec|
35
- spec.pattern = 'spec/**/*_spec.rb'
36
- spec.rcov = true
37
- end
38
-
39
- task :default => :spec
34
+ task :default => :spec
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4.24
1
+ 0.4.25
data/caren-api.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "caren-api"
8
- s.version = "0.4.24"
8
+ s.version = "0.4.25"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Andre Foeken"]
12
- s.date = "2012-02-08"
12
+ s.date = "2012-02-09"
13
13
  s.description = "You can use this gem as inspiration of the base of your connections with Caren."
14
14
  s.email = "andre.foeken@nedap.com"
15
15
  s.extra_rdoc_files = [
@@ -17,9 +17,8 @@ Gem::Specification.new do |s|
17
17
  "README.rdoc"
18
18
  ]
19
19
  s.files = [
20
- ".rvmrc",
20
+ ".travis.yml",
21
21
  "Gemfile",
22
- "Gemfile.lock",
23
22
  "LICENSE.txt",
24
23
  "README.rdoc",
25
24
  "Rakefile",
@@ -85,8 +84,8 @@ Gem::Specification.new do |s|
85
84
  s.add_runtime_dependency(%q<activesupport>, [">= 0"])
86
85
  s.add_runtime_dependency(%q<builder>, [">= 0"])
87
86
  s.add_runtime_dependency(%q<rest-client>, ["= 1.6.7"])
87
+ s.add_runtime_dependency(%q<jruby-openssl>, [">= 0"])
88
88
  s.add_development_dependency(%q<bundler>, [">= 0"])
89
- s.add_development_dependency(%q<rcov>, [">= 0"])
90
89
  s.add_development_dependency(%q<capybara>, [">= 0"])
91
90
  s.add_development_dependency(%q<rspec>, [">= 0"])
92
91
  s.add_development_dependency(%q<fakeweb>, [">= 0"])
@@ -96,8 +95,8 @@ Gem::Specification.new do |s|
96
95
  s.add_dependency(%q<activesupport>, [">= 0"])
97
96
  s.add_dependency(%q<builder>, [">= 0"])
98
97
  s.add_dependency(%q<rest-client>, ["= 1.6.7"])
98
+ s.add_dependency(%q<jruby-openssl>, [">= 0"])
99
99
  s.add_dependency(%q<bundler>, [">= 0"])
100
- s.add_dependency(%q<rcov>, [">= 0"])
101
100
  s.add_dependency(%q<capybara>, [">= 0"])
102
101
  s.add_dependency(%q<rspec>, [">= 0"])
103
102
  s.add_dependency(%q<fakeweb>, [">= 0"])
@@ -108,8 +107,8 @@ Gem::Specification.new do |s|
108
107
  s.add_dependency(%q<activesupport>, [">= 0"])
109
108
  s.add_dependency(%q<builder>, [">= 0"])
110
109
  s.add_dependency(%q<rest-client>, ["= 1.6.7"])
110
+ s.add_dependency(%q<jruby-openssl>, [">= 0"])
111
111
  s.add_dependency(%q<bundler>, [">= 0"])
112
- s.add_dependency(%q<rcov>, [">= 0"])
113
112
  s.add_dependency(%q<capybara>, [">= 0"])
114
113
  s.add_dependency(%q<rspec>, [">= 0"])
115
114
  s.add_dependency(%q<fakeweb>, [">= 0"])
data/lib/caren/base.rb CHANGED
@@ -89,7 +89,7 @@ class Caren::Base
89
89
  return hash_or_path if hash_or_path.is_a?(Hash)
90
90
  { :name => File.basename(hash_or_path),
91
91
  :content => Base64.encode64(File.open(hash_or_path).read),
92
- :content_type => `file -Ib #{hash_or_path}`.gsub(/\n/,"").split(";")[0] }
92
+ :content_type => `file -b --mime-type #{hash_or_path}`.gsub(/\n/,"").split(";")[0] }
93
93
  end
94
94
 
95
95
  private
@@ -101,4 +101,4 @@ class Caren::Base
101
101
  super
102
102
  end
103
103
 
104
- end
104
+ end
@@ -12,18 +12,20 @@ class Caren::Billable < Caren::Base
12
12
  :unit, # String (piece, minute, hour)
13
13
  :price_with_vat_in_cents, # Integer
14
14
  :currency, # String (EUR,USD)
15
- :rounding, # Integer (in minutes)
16
- :min_amount, # Integer (in minutes)
17
- :default_amount, # Integer (in minutes)
15
+ :rounding, # Integer (in seconds)
16
+ :min_amount, # Integer (in seconds)
17
+ :default_amount, # Integer (in seconds)
18
+ :piece_duration, # Integer (in seconds)
18
19
  :vat_promillage, # Integer
19
20
  :type, # String (Store::Product,Store::Service,Store::ChatSession)
20
21
  :status, # String (pending, active)
21
22
  :send_reminder_subject, # Boolean
22
23
  :send_reminder_person, # Boolean
23
- :send_reminder_in_advance,# Integer (in minutes)
24
+ :send_reminder_in_advance,# Integer (in seconds)
24
25
  :plannable_by_subject, # Boolean
25
- :plannable_margin_before, # Integer (in minutes)
26
- :plannable_margin_after, # Integer (in minutes)
26
+ :plannable_margin_before, # Integer (in seconds)
27
+ :plannable_margin_after, # Integer (in seconds)
28
+ :plannable_max_duration, # Integer (in seconds)
27
29
  :valid_from, # Date
28
30
  :valid_to # Date
29
31
  ] + super
@@ -66,6 +68,7 @@ class Caren::Billable < Caren::Base
66
68
  :rounding => self.rounding,
67
69
  :vat_promillage => self.vat_promillage,
68
70
  :external_id => self.external_id,
71
+ :piece_duration => self.piece_duration,
69
72
  :min_amount => self.min_amount,
70
73
  :default_amount => self.default_amount,
71
74
  :send_reminder_subject => self.send_reminder_subject,
@@ -74,6 +77,7 @@ class Caren::Billable < Caren::Base
74
77
  :plannable_by_subject => self.plannable_by_subject,
75
78
  :plannable_margin_before => self.plannable_margin_before,
76
79
  :plannable_margin_after => self.plannable_margin_after,
80
+ :plannable_max_duration => self.plannable_max_duration,
77
81
  :valid_from => self.valid_from,
78
82
  :valid_to => self.valid_to
79
83
  }
data/lib/caren/caren.rb CHANGED
@@ -168,7 +168,7 @@ module Caren
168
168
  # Timestamp is UNIX timestamp seconds since 1970
169
169
  def sign timestamp, path=nil, string=nil, private_key=self.private_key
170
170
  path = URI.parse(path).path if path
171
- encrypted_digest = private_key.sign( "sha1", path.to_s + string.to_s + timestamp.to_s )
171
+ encrypted_digest = private_key.sign( OpenSSL::Digest::SHA1.new, path.to_s + string.to_s + timestamp.to_s )
172
172
  signature = CGI.escape(Base64.encode64(encrypted_digest))
173
173
  return signature
174
174
  end
@@ -183,11 +183,11 @@ module Caren
183
183
  def verify_signature signature, timestamp, path, string=nil, public_key=self.caren_public_key
184
184
  return false unless public_key
185
185
  signature = Base64.decode64(CGI.unescape(signature.to_s))
186
- public_key.verify( "sha1", signature, path.to_s + string.to_s + timestamp.to_s )
186
+ public_key.verify( OpenSSL::Digest::SHA1.new, signature, path.to_s + string.to_s + timestamp.to_s )
187
187
  end
188
188
 
189
189
  def create_photo_signature url_shortcut, external_or_caren_id, private_key=self.private_key
190
- digest = OpenSSL::PKey::RSA.new(private_key).sign( "sha1", url_shortcut.to_s + external_or_caren_id.to_s )
190
+ digest = OpenSSL::PKey::RSA.new(private_key).sign( OpenSSL::Digest::SHA1.new, url_shortcut.to_s + external_or_caren_id.to_s )
191
191
  return CGI.escape(Base64.encode64(digest))
192
192
  end
193
193
 
@@ -195,7 +195,7 @@ module Caren
195
195
  def verify_photo_signature signature, url_shortcut, external_id, public_key=self.caren_public_key
196
196
  return false unless public_key
197
197
  signature = Base64.decode64(CGI.unescape(signature.to_s))
198
- public_key.verify( "sha1", signature, url_shortcut.to_s + external_id.to_s )
198
+ public_key.verify( OpenSSL::Digest::SHA1.new, signature, url_shortcut.to_s + external_id.to_s )
199
199
  end
200
200
 
201
201
  private
@@ -217,4 +217,4 @@ module Caren
217
217
 
218
218
  end
219
219
 
220
- end
220
+ end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: caren-api
3
3
  version: !ruby/object:Gem::Version
4
- hash: 63
4
+ hash: 61
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 4
9
- - 24
10
- version: 0.4.24
9
+ - 25
10
+ version: 0.4.25
11
11
  platform: ruby
12
12
  authors:
13
13
  - Andre Foeken
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-02-08 00:00:00 Z
18
+ date: 2012-02-09 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  requirement: &id001 !ruby/object:Gem::Requirement
@@ -86,9 +86,9 @@ dependencies:
86
86
  - 0
87
87
  version: "0"
88
88
  version_requirements: *id005
89
- name: bundler
89
+ name: jruby-openssl
90
90
  prerelease: false
91
- type: :development
91
+ type: :runtime
92
92
  - !ruby/object:Gem::Dependency
93
93
  requirement: &id006 !ruby/object:Gem::Requirement
94
94
  none: false
@@ -100,7 +100,7 @@ dependencies:
100
100
  - 0
101
101
  version: "0"
102
102
  version_requirements: *id006
103
- name: rcov
103
+ name: bundler
104
104
  prerelease: false
105
105
  type: :development
106
106
  - !ruby/object:Gem::Dependency
@@ -169,9 +169,8 @@ extra_rdoc_files:
169
169
  - LICENSE.txt
170
170
  - README.rdoc
171
171
  files:
172
- - .rvmrc
172
+ - .travis.yml
173
173
  - Gemfile
174
- - Gemfile.lock
175
174
  - LICENSE.txt
176
175
  - README.rdoc
177
176
  - Rakefile
data/.rvmrc DELETED
@@ -1 +0,0 @@
1
- rvm use 1.8.7@caren-api
data/Gemfile.lock DELETED
@@ -1,66 +0,0 @@
1
- GEM
2
- remote: http://rubygems.org/
3
- specs:
4
- activesupport (3.1.1)
5
- multi_json (~> 1.0)
6
- builder (3.0.0)
7
- capybara (1.1.1)
8
- mime-types (>= 1.16)
9
- nokogiri (>= 1.3.3)
10
- rack (>= 1.0.0)
11
- rack-test (>= 0.5.4)
12
- selenium-webdriver (~> 2.0)
13
- xpath (~> 0.1.4)
14
- childprocess (0.2.2)
15
- ffi (~> 1.0.6)
16
- diff-lcs (1.1.3)
17
- fakeweb (1.3.0)
18
- ffi (1.0.9)
19
- git (1.2.5)
20
- i18n (0.6.0)
21
- jeweler (1.6.4)
22
- bundler (~> 1.0)
23
- git (>= 1.2.5)
24
- rake
25
- json_pure (1.6.1)
26
- mime-types (1.17.1)
27
- multi_json (1.0.3)
28
- nokogiri (1.5.0)
29
- rack (1.3.5)
30
- rack-test (0.6.1)
31
- rack (>= 1.0)
32
- rake (0.9.2.2)
33
- rcov (0.9.11)
34
- rest-client (1.6.7)
35
- mime-types (>= 1.16)
36
- rspec (2.7.0)
37
- rspec-core (~> 2.7.0)
38
- rspec-expectations (~> 2.7.0)
39
- rspec-mocks (~> 2.7.0)
40
- rspec-core (2.7.1)
41
- rspec-expectations (2.7.0)
42
- diff-lcs (~> 1.1.2)
43
- rspec-mocks (2.7.0)
44
- rubyzip (0.9.4)
45
- selenium-webdriver (2.9.1)
46
- childprocess (>= 0.2.1)
47
- ffi (= 1.0.9)
48
- json_pure
49
- rubyzip
50
- xpath (0.1.4)
51
- nokogiri (~> 1.3)
52
-
53
- PLATFORMS
54
- ruby
55
-
56
- DEPENDENCIES
57
- activesupport
58
- builder
59
- bundler
60
- capybara
61
- fakeweb
62
- i18n
63
- jeweler
64
- rcov
65
- rest-client (= 1.6.7)
66
- rspec