tickethub 0.3.57 → 0.3.58

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5d867dfedd1f4e9fe6de643c2603a868804a2f02
4
- data.tar.gz: 4cf8c68da773f39c2f42b54102a7d02b4d54b3dc
3
+ metadata.gz: 94c7871d5fcda272bafd53c70b2c414f5eea12bb
4
+ data.tar.gz: 7c84a68c15ab1c6ec8dcb4e5ade9170268f04742
5
5
  SHA512:
6
- metadata.gz: ab57c6b750cd3caa1cbf42ab2b2ca2f5837ea0f7c2cad3090bc2868511a7e80581da0007775089f431e4582bf602bef2f615e46acf102bd7de16003827c809c1
7
- data.tar.gz: b56aa2712da7649170f8bd2e29c84043b07cfb2e9b23c41653021148c6d1387faa64b3a8b001f2510b8c743f80254977aaf3a2aaf1bda0a6258aceca9c2f0bf2
6
+ metadata.gz: baed47e8af035b3be817962422543cb41b42bc86d8e39b9a99a7553b17a8c6fe1684374aa4bd8c089ac4c6aa2aa30ba94b05f6aed8c9e660b1cb24279da955b3
7
+ data.tar.gz: 1ca5e53bf54b548cb786670d946e0a16358f0404efe004997f541a4064d78d9aef0ee249ed894c4400b042b90ad35deaafe21eb17583c3f7dbc935bc8781d403
@@ -0,0 +1,35 @@
1
+ module Tickethub
2
+ class Aggregate
3
+
4
+ def initialize(collection, group = [])
5
+ @group = Array group.dup
6
+ @collection = collection
7
+ end
8
+
9
+ def minimum(field)
10
+ @collection.get aggregate: { field: field, group: @group, operation: 'minimum' }
11
+ end
12
+
13
+ alias_method :min, :minimum
14
+
15
+ def maximum(field)
16
+ @collection.get aggregate: { field: field, group: @group, operation: 'maximum' }
17
+ end
18
+
19
+ alias_method :max, :maximum
20
+
21
+ def average(field)
22
+ @collection.get aggregate: { field: field, group: @group, operation: 'average' }
23
+ end
24
+
25
+ alias_method :avg, :average
26
+
27
+ def sum(field)
28
+ @collection.get aggregate: { field: field, group: @group, operation: 'sum' }
29
+ end
30
+
31
+ def count(column = :all)
32
+ @collection.get aggregate: { field: field, group: @group, operation: 'count' }
33
+ end
34
+ end
35
+ end
@@ -1,5 +1,6 @@
1
1
  require 'cgi'
2
2
  require_relative 'helpers'
3
+ require_relative 'aggregate'
3
4
 
4
5
  module Tickethub
5
6
  class Collection < Enumerator
@@ -149,6 +150,10 @@ module Tickethub
149
150
  end
150
151
  end
151
152
 
153
+ def aggregate(*group)
154
+ Tickethub::Aggregate.new self, group
155
+ end
156
+
152
157
  def create(attributes = {})
153
158
  @klass.call endpoint, post(attributes), @options
154
159
  rescue Tickethub::ResourceInvalid => err
@@ -1,3 +1,3 @@
1
1
  module Tickethub
2
- VERSION = '0.3.57'
2
+ VERSION = '0.3.58'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tickethub
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.57
4
+ version: 0.3.58
5
5
  platform: ruby
6
6
  authors:
7
7
  - Oliver Morgan
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-10-05 00:00:00.000000000 Z
11
+ date: 2015-10-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -91,6 +91,7 @@ files:
91
91
  - Gemfile
92
92
  - lib/tickethub.rb
93
93
  - lib/tickethub/address.rb
94
+ - lib/tickethub/aggregate.rb
94
95
  - lib/tickethub/app.rb
95
96
  - lib/tickethub/app/category.rb
96
97
  - lib/tickethub/app/subscription.rb