kaui 0.2.5 → 0.2.6

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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: f9dda6885d003eff4164274878c7dd5e0781cf4d
4
+ data.tar.gz: a19b25d1af270e4b3355df0a5ac33d117e5e1a95
5
+ SHA512:
6
+ metadata.gz: 0c22f0940c23cb17f5afa93c937da47ced42edd855b218b14de02eb4cb4d8ed3e9ff6996075e8ce8a53f51f1a08aadc8f72e51da69f748ceda923c0b298de51d
7
+ data.tar.gz: 5fbcc849e2de8d1125b903f259a11df802dc5aba6597d9c744267ead7b80cf39896694f43a48712e4433c04e0ebd1e99c17efe5144a0651843c45fc39067e526
data/.travis.yml CHANGED
@@ -28,3 +28,6 @@ matrix:
28
28
 
29
29
  env:
30
30
  - MYSQL_PASSWORD=''
31
+
32
+ #force travis to use only 'bundle install' instead of 'bundle install --deployments'
33
+ bundler_args: ''
data/Gemfile.lock CHANGED
@@ -1,10 +1,10 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- kaui (0.2.5)
4
+ kaui (0.2.6)
5
5
  d3_rails (~> 2.10.3)
6
6
  jquery-rails (~> 2.0)
7
- killbill-client (~> 0.1.1)
7
+ killbill-client (~> 0.1.3)
8
8
  money-rails (~> 0.5.0)
9
9
  rails (~> 3.2.3)
10
10
  rest-client (~> 1.6.7)
@@ -12,48 +12,47 @@ PATH
12
12
  GEM
13
13
  remote: http://rubygems.org/
14
14
  specs:
15
- actionmailer (3.2.9)
16
- actionpack (= 3.2.9)
17
- mail (~> 2.4.4)
18
- actionpack (3.2.9)
19
- activemodel (= 3.2.9)
20
- activesupport (= 3.2.9)
15
+ actionmailer (3.2.14)
16
+ actionpack (= 3.2.14)
17
+ mail (~> 2.5.4)
18
+ actionpack (3.2.14)
19
+ activemodel (= 3.2.14)
20
+ activesupport (= 3.2.14)
21
21
  builder (~> 3.0.0)
22
22
  erubis (~> 2.7.0)
23
23
  journey (~> 1.0.4)
24
- rack (~> 1.4.0)
24
+ rack (~> 1.4.5)
25
25
  rack-cache (~> 1.2)
26
26
  rack-test (~> 0.6.1)
27
27
  sprockets (~> 2.2.1)
28
- activemodel (3.2.9)
29
- activesupport (= 3.2.9)
28
+ activemodel (3.2.14)
29
+ activesupport (= 3.2.14)
30
30
  builder (~> 3.0.0)
31
- activerecord (3.2.9)
32
- activemodel (= 3.2.9)
33
- activesupport (= 3.2.9)
31
+ activerecord (3.2.14)
32
+ activemodel (= 3.2.14)
33
+ activesupport (= 3.2.14)
34
34
  arel (~> 3.0.2)
35
35
  tzinfo (~> 0.3.29)
36
- activeresource (3.2.9)
37
- activemodel (= 3.2.9)
38
- activesupport (= 3.2.9)
39
- activesupport (3.2.9)
40
- i18n (~> 0.6)
36
+ activeresource (3.2.14)
37
+ activemodel (= 3.2.14)
38
+ activesupport (= 3.2.14)
39
+ activesupport (3.2.14)
40
+ i18n (~> 0.6, >= 0.6.4)
41
41
  multi_json (~> 1.0)
42
42
  arel (3.0.2)
43
43
  builder (3.0.4)
44
44
  d3_rails (2.10.3)
45
45
  railties (>= 3.1.0)
46
46
  erubis (2.7.0)
47
- hike (1.2.1)
47
+ hike (1.2.3)
48
48
  i18n (0.6.4)
49
49
  journey (1.0.4)
50
- jquery-rails (2.2.0)
50
+ jquery-rails (2.3.0)
51
51
  railties (>= 3.0, < 5.0)
52
52
  thor (>= 0.14, < 2.0)
53
53
  json (1.8.0)
54
- killbill-client (0.1.1)
55
- mail (2.4.4)
56
- i18n (>= 0.4.0)
54
+ killbill-client (0.1.3)
55
+ mail (2.5.4)
57
56
  mime-types (~> 1.16)
58
57
  treetop (~> 1.4.8)
59
58
  mime-types (1.23)
@@ -64,8 +63,8 @@ GEM
64
63
  activesupport (~> 3.0)
65
64
  money (~> 5.0.0)
66
65
  railties (~> 3.0)
67
- multi_json (1.7.6)
68
- mysql2 (0.3.11)
66
+ multi_json (1.7.9)
67
+ mysql2 (0.3.13)
69
68
  polyglot (0.3.3)
70
69
  rack (1.4.5)
71
70
  rack-cache (1.2)
@@ -74,22 +73,22 @@ GEM
74
73
  rack
75
74
  rack-test (0.6.2)
76
75
  rack (>= 1.0)
77
- rails (3.2.9)
78
- actionmailer (= 3.2.9)
79
- actionpack (= 3.2.9)
80
- activerecord (= 3.2.9)
81
- activeresource (= 3.2.9)
82
- activesupport (= 3.2.9)
76
+ rails (3.2.14)
77
+ actionmailer (= 3.2.14)
78
+ actionpack (= 3.2.14)
79
+ activerecord (= 3.2.14)
80
+ activeresource (= 3.2.14)
81
+ activesupport (= 3.2.14)
83
82
  bundler (~> 1.0)
84
- railties (= 3.2.9)
85
- railties (3.2.9)
86
- actionpack (= 3.2.9)
87
- activesupport (= 3.2.9)
83
+ railties (= 3.2.14)
84
+ railties (3.2.14)
85
+ actionpack (= 3.2.14)
86
+ activesupport (= 3.2.14)
88
87
  rack-ssl (~> 1.3.2)
89
88
  rake (>= 0.8.7)
90
89
  rdoc (~> 3.4)
91
90
  thor (>= 0.14.6, < 2.0)
92
- rake (10.0.4)
91
+ rake (10.1.0)
93
92
  rdoc (3.12.2)
94
93
  json (~> 1.4)
95
94
  rest-client (1.6.7)
@@ -101,13 +100,12 @@ GEM
101
100
  tilt (~> 1.1, != 1.3.0)
102
101
  thor (0.18.1)
103
102
  tilt (1.4.1)
104
- treetop (1.4.12)
103
+ treetop (1.4.14)
105
104
  polyglot
106
105
  polyglot (>= 0.3.1)
107
106
  tzinfo (0.3.37)
108
107
 
109
108
  PLATFORMS
110
- java
111
109
  ruby
112
110
 
113
111
  DEPENDENCIES
@@ -57,6 +57,7 @@ class Kaui::AccountTimelinesController < Kaui::EngineController
57
57
  @bundle_names[bundle.external_key] = Kaui.bundle_key_display_string.call(bundle.external_key)
58
58
  end
59
59
  end
60
+
60
61
  if params.has_key?(:external_key)
61
62
  @selected_bundle = @bundle_names[params[:external_key]]
62
63
  end
@@ -25,6 +25,7 @@ class Kaui::AccountsController < Kaui::EngineController
25
25
  begin
26
26
  @tags = Kaui::KillbillHelper::get_tags_for_account(@account.account_id).sort
27
27
  @account_emails = Kaui::AccountEmail.where(:account_id => @account.account_id)
28
+
28
29
  @payment_methods = Kaui::KillbillHelper::get_non_external_payment_methods(@account.account_id)
29
30
  @bundles = Kaui::KillbillHelper::get_bundles(@account.account_id)
30
31
 
@@ -108,18 +109,20 @@ class Kaui::AccountsController < Kaui::EngineController
108
109
  payment_method = KillBillClient::Model::PaymentMethod.new
109
110
  payment_method.account_id = account_id
110
111
  payment_method.plugin_name = params[:plugin_name] || Kaui.creditcard_plugin_name.call
112
+
111
113
  payment_method.plugin_info = {
112
- 'type' => 'CreditCard',
113
- 'cardType' => @card_type,
114
- 'cardHolderName' => @card_holder_name,
115
- 'expirationDate' => "#{@expiration_year}-#{@expiration_month}",
116
- 'maskNumber' => @credit_card_number,
117
- 'address1' => @address1,
118
- 'address2' => @address2,
119
- 'city' => @city,
120
- 'country' => @country,
121
- 'postalCode' => @postal_code,
122
- 'state' => @state
114
+ 'type' => 'CreditCard',
115
+ 'ccType' => @card_type,
116
+ 'ccName' => @card_holder_name,
117
+ 'ccExpirationMonth' => @expiration_month,
118
+ 'ccExpirationYear' => @expiration_year,
119
+ 'ccLast4' => @credit_card_number[-4,4],
120
+ 'address1' => @address1,
121
+ 'address2' => @address2,
122
+ 'city' => @city,
123
+ 'country' => @country,
124
+ 'zip' => @postal_code,
125
+ 'state' => @state
123
126
  }
124
127
 
125
128
  begin
@@ -6,17 +6,22 @@ class Kaui::InvoicesController < Kaui::EngineController
6
6
  end
7
7
 
8
8
  def show
9
- @invoice_id = params[:id]
10
- if @invoice_id.present?
9
+ invoice_id_or_number = params[:id]
10
+ if invoice_id_or_number.present?
11
+
11
12
  begin
12
- @invoice = Kaui::KillbillHelper.get_invoice(@invoice_id)
13
+ @invoice = Kaui::KillbillHelper.get_invoice(invoice_id_or_number)
13
14
  if @invoice.present?
15
+ @invoice_id = @invoice.invoice_id
14
16
  @account = Kaui::KillbillHelper.get_account(@invoice.account_id)
15
17
  @payments = Kaui::KillbillHelper.get_payments(@invoice_id)
16
18
  @payment_methods = {}
17
19
  @payments.each do |payment|
18
20
  # The payment method may have been deleted
19
21
  @payment_methods[payment.payment_id] = Kaui::KillbillHelper::get_payment_method(payment.payment_method_id) rescue nil
22
+
23
+ #get the refunds for the payment
24
+ payment.refunds = Kaui::KillbillHelper::get_refunds_for_payment(payment.payment_id) rescue []
20
25
  end
21
26
 
22
27
  @subscriptions = {}
@@ -37,11 +42,11 @@ class Kaui::InvoicesController < Kaui::EngineController
37
42
  flash[:error] = "Invoice items for #{@invoice_id} not found"
38
43
  end
39
44
  else
40
- flash[:error] = "Invoice #{@invoice_id} not found"
45
+ flash[:error] = "Invoice #{invoice_id_or_number} not found"
41
46
  render :action => :index
42
47
  end
43
48
  rescue => e
44
- flash[:error] = "Error while getting information for invoice #{@invoice_id}: #{as_string(e)}"
49
+ flash[:error] = "Error while getting information for invoice #{invoice_id_or_number}: #{as_string(e)}"
45
50
  end
46
51
  else
47
52
  flash[:error] = "No id given"
@@ -2,12 +2,13 @@ require 'kaui/killbill_helper'
2
2
 
3
3
  class Kaui::PaymentMethodsController < Kaui::EngineController
4
4
  def index
5
- if params[:account_id]
5
+ if params[:key]
6
+ params[:key].strip!
6
7
  begin
7
- @payment_methods = Kaui::KillbillHelper.get_payment_methods params[:account_id]
8
+ @payment_methods = Kaui::KillbillHelper.get_payment_methods params[:key]
8
9
  render :show
9
10
  rescue => e
10
- flash.now[:error] = "Error while retrieving payment method for account #{params[:id]}: #{as_string(e)}"
11
+ flash.now[:error] = "Error while retrieving payment method for account: #{params[:key]}: #{as_string(e)}"
11
12
  end
12
13
  end
13
14
  end
@@ -52,9 +52,8 @@ module Kaui
52
52
  end
53
53
  end
54
54
 
55
- def self.get_account_timeline(account_id)
56
- data = call_killbill :get, "/1.0/kb/accounts/#{account_id}/timeline?audit=MINIMAL"
57
- process_response(data, :single) { |json| Kaui::AccountTimeline.new(json) }
55
+ def self.get_account_timeline(account_id, audit = "MINIMAL")
56
+ KillBillClient::Model::AccountTimeline.find_by_account_id account_id, audit
58
57
  end
59
58
 
60
59
  def self.get_account(account_id, with_balance = false, with_balance_and_cba = false)
@@ -235,9 +234,8 @@ module Kaui
235
234
 
236
235
  ############## INVOICE ##############
237
236
 
238
- def self.get_invoice(invoice_id)
239
- data = call_killbill :get, "/1.0/kb/invoices/#{invoice_id}?withItems=true"
240
- process_response(data, :single) { |json| Kaui::Invoice.new(json) }
237
+ def self.get_invoice id_or_number, with_items = true
238
+ KillBillClient::Model::Invoice.find_by_id_or_number id_or_number, with_items
241
239
  end
242
240
 
243
241
  def self.get_invoice_item(invoice_id, invoice_item_id)
@@ -372,8 +370,14 @@ module Kaui
372
370
  self.get_payment_methods(account_id).reject { |x| x.plugin_name == '__EXTERNAL_PAYMENT__' }
373
371
  end
374
372
 
375
- def self.get_payment_methods(account_id)
376
- KillBillClient::Model::PaymentMethod.find_all_by_account_id account_id, true
373
+ def self.get_payment_methods key
374
+ if key =~ /[A-Fa-f0-9]{8}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{12}/
375
+ #looks like its account_id
376
+ KillBillClient::Model::PaymentMethod.find_all_by_account_id key, true
377
+ else
378
+ #any search key
379
+ KillBillClient::Model::PaymentMethod.find_all_by_search_key key, true
380
+ end
377
381
  end
378
382
 
379
383
  def self.get_payment_method(payment_method_id)
@@ -13,16 +13,17 @@ class Kaui::AuditLog < Kaui::Base
13
13
  :reason_code => data['reasonCode'])
14
14
  end
15
15
 
16
- def description
17
- if changed_by.present?
18
- changed_str = "Performed by #{changed_by} on #{ActionController::Base.helpers.format_date(change_date)}"
19
- if reason_code.blank? && comments.blank?
16
+ def self.description(log)
17
+ if log.changed_by.present?
18
+ changed_str = "Performed by #{log.changed_by} on #{ActionController::Base.helpers.format_date(log.change_date)}"
19
+ if log.reason_code.blank? && log.comments.blank?
20
20
  changed_str
21
- elsif reason_code.blank?
22
- "#{changed_str}: #{comments}"
21
+ elsif log.reason_code.blank?
22
+ "#{changed_str}: #{log.comments}"
23
23
  else
24
- "#{changed_str} (#{reason_code} #{comments})"
24
+ "#{changed_str} (#{log.reason_code} #{log.comments})"
25
25
  end
26
26
  end
27
27
  end
28
+
28
29
  end
@@ -8,6 +8,12 @@
8
8
  <div class="controls">
9
9
  <%= select_tag "bundles", options_for_select([ "" ] + @bundle_names.values.sort, @selected_bundle || 'all') %>
10
10
  </div>
11
+
12
+ <label for="events" class="control-label">Filter by event type</label>
13
+ <div class="controls">
14
+ <%= select_tag "event_types", options_for_select('<option value="all">ALL</option><option value="invoice">INVOICE</option><option value="payment">PAYMENT</option><option value="refund">REFUND</option><option value="chargeback">CHARGEBACK</option><option value="entitlement">ENTITLEMENTS</option>'.html_safe) %>
15
+ </div>
16
+
11
17
  <dl class="dl-horizontal">
12
18
  <dt>Billing timezone:</dt>
13
19
  <dd><%= @account.timezone %></dd>
@@ -38,7 +44,7 @@
38
44
  <% else %>
39
45
  <% invoice = invoice_stub %>
40
46
  <% end %>
41
- <tr title="<%= bundles %>">
47
+ <tr title="<%= bundles %>" data-event_type="INVOICE">
42
48
  <td>
43
49
  <% if invoice.invoice_date.present? %>
44
50
  <%= invoice.invoice_date %>
@@ -61,16 +67,16 @@
61
67
  </td>
62
68
  <td><%= "INVOICE" %></td>
63
69
  <td><span class="hide" title="<%= invoice.invoice_number %>"></span>
64
- <%= "Amount:" %> <%= humanized_money_with_symbol invoice.amount_to_money(@account.currency) %> (<%= @account.currency %>)<br/>
65
- <%= "Balance:" %> <%= humanized_money_with_symbol invoice.balance_to_money(@account.currency) %> (<%= @account.currency %>)<br/>
66
- <% if invoice.credit_adjustment.present? && invoice.credit_adjustment > 0 %>
67
- <%= "Credit adjustment:" %> <%= humanized_money_with_symbol invoice.credit_adjustment_to_money(@account.currency) %> (<%= @account.currency %>)<br/>
70
+ <%= "Amount:" %> <%= humanized_money_with_symbol Kaui::Base.to_money(invoice.amount, @account.currency) %> (<%= @account.currency %>)<br/>
71
+ <%= "Balance:" %> <%= humanized_money_with_symbol Kaui::Base.to_money(invoice.amount, @account.currency) %> (<%= @account.currency %>)<br/>
72
+ <% if invoice.credit_adj.present? && invoice.credit_adj > 0 %>
73
+ <%= "Credit adjustment:" %> <%= humanized_money_with_symbol Kaui::Base.to_money(invoice.credit_adj, @account.currency) %> (<%= @account.currency %>)<br/>
68
74
  <% end %>
69
- <% if invoice.credit_balance_adjustment.present? && invoice.credit_balance_adjustment > 0 %>
70
- <%= "Credit balance adjustment:" %> <%= humanized_money_with_symbol invoice.credit_balance_adjustment_to_money(@account.currency) %> (<%= @account.currency %>)<br/>
75
+ <% if invoice.credits.present? && invoice.credits > 0 %>
76
+ <%= "Credit balance adjustment:" %> <%= humanized_money_with_symbol Kaui::Base.to_money(invoice.credits, @account.currency) %> (<%= @account.currency %>)<br/>
71
77
  <% end %>
72
- <% if invoice.refund_adjustment.present? && invoice.refund_adjustment < 0 %>
73
- <%= "Refund adjustment:" %> <%= humanized_money_with_symbol invoice.refund_adjustment_to_money(@account.currency) %> (<%= @account.currency %>)<br/>
78
+ <% if invoice.refund_adj.present? && invoice.refund_adj < 0 %>
79
+ <%= "Refund adjustment:" %> <%= humanized_money_with_symbol Kaui::Base.to_money(invoice.refund_adj, @account.currency) %> (<%= @account.currency %>)<br/>
74
80
  <% end %>
75
81
  <%= "Invoice #" %>
76
82
  <%= link_to invoice.invoice_number, invoice_path(:id => invoice.invoice_id) %>
@@ -78,7 +84,7 @@
78
84
  <td>
79
85
  <% if invoice_stub.audit_logs.present? %>
80
86
  <% invoice_stub.audit_logs.each do |entry| %>
81
- <%= entry.description unless entry.changed_by == 'Transition' %><br/>
87
+ <%= Kaui::AuditLog.description(entry) unless entry.changed_by == 'Transition' %><br/>
82
88
  <% end %>
83
89
  <% end %>
84
90
  </td>
@@ -107,7 +113,7 @@
107
113
  <% @timeline.payments.each do |payment| %>
108
114
  <% payment.refunds.each do |refund| %>
109
115
  <% bundles = payment.bundle_keys.split(",").map {|bundle_key| @bundle_names[bundle_key] }.join(",") %>
110
- <tr title="<%= bundles %>">
116
+ <tr title="<%= bundles %>" data-event_type="REFUND">
111
117
  <td>
112
118
  <% if refund.requested_date.present? %>
113
119
  <%= format_date(refund.requested_date, @account.timezone).html_safe %>
@@ -131,11 +137,11 @@
131
137
  <td>
132
138
  <%= "Adjusted:" %> <% if refund.adjusted %>yes<% else %>no<% end %><br/>
133
139
  <%= "Payment id:" %> <%= refund.payment_id %><br/>
134
- <%= "Refund Amount:" %> <%= humanized_money_with_symbol refund.amount_to_money %> (<%= refund.currency %>)<br/>
140
+ <%= "Refund Amount:" %> <%= humanized_money_with_symbol Kaui::Base.to_money(refund.amount, refund.currency) %> (<%= refund.currency %>)<br/>
135
141
  </td>
136
142
  <td>
137
143
  <% if refund.audit_logs.present? %>
138
- <%= refund.audit_logs[0].description %><br/>
144
+ <%= Kaui::AuditLog.description(refund.audit_logs[0])%><br/>
139
145
  <% end %>
140
146
  </td>
141
147
  <td></td>
@@ -145,7 +151,7 @@
145
151
  <% @timeline.payments.each do |payment| %>
146
152
  <% payment.chargebacks.each do |chargeback| %>
147
153
  <% bundles = payment.bundle_keys.split(",").map {|bundle_key| @bundle_names[bundle_key] }.join(",") %>
148
- <tr title="<%= bundles %>">
154
+ <tr title="<%= bundles %>" data-event_type="CHARGEBACK">
149
155
  <td>
150
156
  <% if chargeback.effective_date.present? %>
151
157
  <%= format_date(chargeback.effective_date, @account.timezone).html_safe %>
@@ -168,11 +174,11 @@
168
174
  <td><%= "CHARGEBACK" %></td>
169
175
  <td>
170
176
  <%= "Payment id:" %> <%= chargeback.payment_id %><br/>
171
- <%= "Chargeback Amount:" %> <%= humanized_money_with_symbol chargeback.chargeback_amount_to_money(payment.currency) %> (<%= payment.currency %>)<br/>
177
+ <%= "Chargeback Amount:" %> <%= humanized_money_with_symbol Kaui::Base.to_money(chargeback.chargeback_amount, payment.currency) %> (<%= payment.currency %>)<br/>
172
178
  </td>
173
179
  <td>
174
180
  <% if chargeback.audit_logs.present? %>
175
- <%= chargeback.audit_logs[0].description %><br/>
181
+ <%= Kaui::AuditLog.description(chargeback.audit_logs[0]) %><br/>
176
182
  <% end %>
177
183
  </td>
178
184
  <td></td>
@@ -187,7 +193,7 @@
187
193
  <% else %>
188
194
  <% invoice = nil %>
189
195
  <% end %>
190
- <tr title="<%= bundles %>">
196
+ <tr title="<%= bundles %>" data-event_type="PAYMENT">
191
197
  <td>
192
198
  <% if payment.requested_date.present? %>
193
199
  <%= format_date(payment.requested_date, @account.timezone).html_safe %>
@@ -211,8 +217,8 @@
211
217
  <td>
212
218
  <span class="hide" title="<%= invoice.invoice_number %>"></span>
213
219
  <%= "Payment id:" %> <%= payment.payment_id %><br/>
214
- <%= "Total amount:" %> <%= humanized_money_with_symbol payment.amount_to_money %> (<%= payment.currency %>)<br/>
215
- <%= "Paid amount:" %> <%= humanized_money_with_symbol payment.paid_amount_to_money %> (<%= payment.currency %>)<br/>
220
+ <%= "Total amount:" %> <%= humanized_money_with_symbol Kaui::Base.to_money(payment.amount, payment.currency) %> (<%= payment.currency %>)<br/>
221
+ <%= "Paid amount:" %> <%= humanized_money_with_symbol Kaui::Base.to_money(payment.paid_amount, payment.currency) %> (<%= payment.currency %>)<br/>
216
222
  <span <% if payment.status == 'FAILED' %>class="alert-error" <% elsif payment.status == 'SUCCESS' %>class="alert-success" <% end %>>
217
223
  <%= payment.status %>
218
224
  </span>
@@ -222,7 +228,7 @@
222
228
  <td>
223
229
  <% if payment.audit_logs.present? %>
224
230
  <% payment.audit_logs.each do |entry| %>
225
- <%= entry.description unless entry.changed_by == 'PaymentRequestProcessor' %><br/>
231
+ <%= Kaui::AuditLog.description(entry) unless entry.changed_by == 'PaymentRequestProcessor' %><br/>
226
232
  <% end %>
227
233
  <% end %>
228
234
  </td>
@@ -231,7 +237,7 @@
231
237
  <%= link_to 'Refund', kaui_engine.new_refund_path(:params => { :payment_id => payment.payment_id,
232
238
  :account_id => @account.account_id,
233
239
  :invoice_id => payment.invoice_id }),
234
- :class => "btn btn-mini #{"disabled" unless payment.payment_id.present? and payment.status == 'SUCCESS' and !payment.is_fully_refunded?}" %>
240
+ :class => "btn btn-mini #{"disabled" unless payment.payment_id.present? and payment.status == 'SUCCESS' and !(0 == payment.paid_amount)}" %>
235
241
  </nobr>
236
242
  <nobr>
237
243
  <%= link_to 'Chargeback', kaui_engine.new_chargeback_path(:params => { :payment_id => payment.payment_id,
@@ -247,7 +253,7 @@
247
253
  <% sub.events.each do |event| %>
248
254
  <!-- SKIP UNCANCEL SINCE MATCHING CANCEL EVENT IS NOT RETURNED AS IT WAS INVALIDED -->
249
255
  <% next if event.event_type == 'UNCANCEL' %>
250
- <tr title="<%= @bundle_names[bundle.external_key] %>">
256
+ <tr title="<%= @bundle_names[bundle.external_key] %>" data-event_type="<%= event.event_type %>">
251
257
  <td>
252
258
  <% if event.requested_date.present? %>
253
259
  <%= format_date(event.requested_date, @account.timezone).html_safe %>
@@ -270,7 +276,7 @@
270
276
  <td>
271
277
  <% if event.audit_logs.present? %>
272
278
  <% event.audit_logs.each do |entry| %>
273
- <%= entry.description %><br/>
279
+ <%= Kaui::AuditLog.description(entry) %><br/>
274
280
  <% end %>
275
281
  <% end %>
276
282
  </td>
@@ -337,7 +343,7 @@
337
343
  "iDisplayLength": 100,
338
344
  "bRetrieve": true,
339
345
  // Force a predictive order for event types, invoices and payments
340
- "aaSortingFixed": [[1, 'desc'], [4, 'desc'], [3, 'desc']],
346
+ "aaSorting": [[1, 'desc'], [4, 'desc'], [3, 'desc']],
341
347
  "aoColumns": [
342
348
  { "sType": 'date' },
343
349
  { "sType": 'date' },
@@ -350,32 +356,76 @@
350
356
  });
351
357
  }
352
358
 
353
- function filterBundles() {
359
+ function filterEachNode(rows) {
354
360
  var bundle = $("#bundles").val();
361
+ var event_to_filter = $('#event_types').val().toUpperCase();
355
362
 
356
- var dataTable = initTable();
357
- $(dataTable.fnGetNodes()).each(function() {
358
- var tr = $(this);
359
- if (bundle == "" || tr.attr("title").split(",").indexOf(bundle) >= 0) {
360
- tr.removeClass("hide");
361
- }
362
- else {
363
+ for (i = 0; i < rows.length; i++)
364
+ {
365
+ tr = $(rows[i]);
366
+
367
+ //filter bundles
368
+ if (bundle == "" || tr.attr("title").split(",").indexOf(bundle) >= 0) {
369
+ //first level filtering, so can remove hide
370
+ tr.removeClass("hide");
371
+ }
372
+ else {
373
+ //remove tr's not under this filter mode
374
+ tr.addClass("hide");
375
+ }
376
+
377
+ //filter events
378
+ if ("ALL" != event_to_filter)
379
+ filterEvents(tr, event_to_filter);
380
+
381
+ //add more filters here
382
+ //do not unhide any rows
383
+ }
384
+
385
+ }
386
+
387
+ function filterEvents(tr, event_to_filter) {
388
+ tr_event_type = tr.data().event_type;
389
+
390
+ core_events = ["INVOICE", "PAYMENT", "REFUND", "CHARGEBACK"]; //events which are not entitlements
391
+
392
+ //is tr event not an event in question
393
+ tr_event_does_not_match_filter = ("ENTITLEMENT" != event_to_filter &&
394
+ tr_event_type != event_to_filter);
395
+
396
+ //tr event is not an entitlement
397
+ tr_event_is_not_entitlement = ("ENTITLEMENT" == event_to_filter &&
398
+ core_events.indexOf(tr_event_type) >= 0);
399
+
400
+ if ( tr_event_does_not_match_filter || tr_event_is_not_entitlement )
401
+ {
402
+ //add hide to all who dont deserve the filter
363
403
  tr.addClass("hide");
364
- }
365
- });
404
+ }
405
+ }
406
+
407
+ function filterTable()
408
+ {
409
+ var dataTable = initTable();
410
+ var all_nodes = dataTable.fnGetNodes();
411
+
412
+ filterEachNode(all_nodes);
413
+
414
+ //my rows are filtered, draw table
366
415
  dataTable.fnDraw();
367
- }
416
+ }
417
+
368
418
 
369
- $(document).ready(function() {
419
+ $(document).ready(function() {
370
420
  disableLinks();
371
421
  // When going through the pages of the table, disable links as needed
372
422
  $('#timeline-table').bind('draw', function (e) {
373
- disableLinks();
423
+ disableLinks();
374
424
  });
375
425
 
376
426
  initTable();
377
427
 
378
- $("#bundles").change(filterBundles);
379
- filterBundles();
380
- });
428
+ $("#bundles, #event_types").change(filterTable);
429
+ filterTable();
430
+ });
381
431
  <% end %>
@@ -4,7 +4,7 @@
4
4
  <div class="control-group">
5
5
  <label class="control-label" for="account_id"><%=t :account %></label>
6
6
  <div class="controls">
7
- <%= text_field_tag 'account_id', nil, :class => "input-xlarge", :id => "account_id" %>
7
+ <%= text_field_tag 'account_id', nil, :class => "input-xlarge", :id => "account_id", :placeholder => "accountId, screenName" %>
8
8
  </div>
9
9
  </div>
10
10
  <div class="form-actions">
@@ -4,7 +4,7 @@
4
4
  <div class="control-group">
5
5
  <label class="control-label" for="invoice_id">Invoice</label>
6
6
  <div class="controls">
7
- <%= text_field_tag 'invoice_id', nil, :class => "input-xlarge", :id => "invoice_id" %>
7
+ <%= text_field_tag 'invoice_id', nil, :class => "input-xlarge", :id => "invoice_id", :placeholder => "InvoiceId, InvoiceNumber" %>
8
8
  </div>
9
9
  </div>
10
10
  <div class="form-actions">
@@ -9,9 +9,9 @@
9
9
  <dt>Target date:</dt>
10
10
  <dd><%= @invoice.target_date.html_safe %>&nbsp;</dd>
11
11
  <dt>Amount:</dt>
12
- <dd><%= humanized_money_with_symbol @invoice.amount_to_money(@account.currency) %> (<%= @account.currency %>)&nbsp;</dd>
12
+ <dd><%= humanized_money_with_symbol Kaui::Base.to_money(@invoice.amount, @account.currency) %> (<%= @account.currency %>)&nbsp;</dd>
13
13
  <dt>Balance:</dt>
14
- <dd><%= humanized_money_with_symbol @invoice.balance_to_money(@account.currency) %> (<%= @account.currency %>)&nbsp;</dd>
14
+ <dd><%= humanized_money_with_symbol Kaui::Base.to_money(@invoice.balance, @account.currency) %> (<%= @account.currency %>)&nbsp;</dd>
15
15
  </dl>
16
16
  <div class="page-header">
17
17
  <h3>Invoice items</h3>
@@ -58,7 +58,7 @@
58
58
  <td onClick="hightlightLinkedItems('<%= item.invoice_item_id %>', '<%= item.linked_invoice_item_id %>'); return false;"><%= item.end_date.html_safe if item.end_date %></td>
59
59
  <td onClick="hightlightLinkedItems('<%= item.invoice_item_id %>', '<%= item.linked_invoice_item_id %>'); return false;"><%= format_date(sub.charged_through_date, @account.timezone).html_safe if sub.present? %></td>
60
60
  <td onClick="hightlightLinkedItems('<%= item.invoice_item_id %>', '<%= item.linked_invoice_item_id %>'); return false;"><%= sub.price_list.downcase.capitalize if sub.present? and sub.price_list.present? %></td>
61
- <td onClick="hightlightLinkedItems('<%= item.invoice_item_id %>', '<%= item.linked_invoice_item_id %>'); return false;"><%= humanized_money_with_symbol item.amount_to_money %> (<%= item.currency %>)</td>
61
+ <td onClick="hightlightLinkedItems('<%= item.invoice_item_id %>', '<%= item.linked_invoice_item_id %>'); return false;"><%= humanized_money_with_symbol Kaui::Base.to_money(item.amount, item.currency) %> (<%= item.currency %>)</td>
62
62
  <td>
63
63
  <nobr>
64
64
  <%= link_to "Adjust",
@@ -82,6 +82,13 @@
82
82
  <%= render :partial => "kaui/payments/payments_table" %>
83
83
  <% end %>
84
84
  </div>
85
+
86
+ <div class="page-header">
87
+ <% if @payments.present? %>
88
+ <%= render :partial => "kaui/refunds/refunds_table" %>
89
+ <% end %>
90
+ </div>
91
+
85
92
  <% else %>
86
93
  <p>Invoice not found</p>
87
94
  <% end %>
@@ -18,6 +18,7 @@
18
18
  <li <%= "class='active'" if params[:controller] == 'chargebacks' %>><%= link_to "Chargebacks", kaui_engine.chargebacks_path %></li>
19
19
  <li <%= "class='active'" if params[:controller] == 'credits' %>><%= link_to "Credits", kaui_engine.credits_path %></li>
20
20
  <li <%= "class='active'" if params[:controller] == 'external_payments' %>><%= link_to "External payments", kaui_engine.external_payments_path %></li>
21
+ <li <%= "class='active'" if params[:controller] == 'payment_methods' %>><%= link_to "Payment methods", kaui_engine.payment_methods_path %></li>
21
22
  <li <%= "class='active'" if params[:controller] == 'refunds' %>><%= link_to "Refunds", kaui_engine.refunds_path %></li>
22
23
  <li <%= "class='active'" if params[:controller] == 'invoices' %>><%= link_to "Invoices", kaui_engine.invoices_path %></li>
23
24
  <li <%= "class='active'" if params[:controller] == 'invoice_items' %>><%= link_to "Invoice items", kaui_engine.invoice_items_path %></li>
@@ -41,6 +41,7 @@
41
41
  <% else %>
42
42
  <%= link_to "Delete", kaui_engine.payment_method_path(payment_method.payment_method_id), :method => :delete, :confirm => "Are you sure you want to delete this payment method?", :class => "btn btn-mini" %>
43
43
  <% end %>
44
+ <%= link_to "Details", kaui_engine.payment_method_path(payment_method.payment_method_id), :class => "btn btn-mini" %>
44
45
  </td>
45
46
  </tr>
46
47
  <% end %>
@@ -1,11 +1,11 @@
1
1
  <%= form_tag payment_methods_path, :class => "form-horizontal", :method => :get do %>
2
2
  <fieldset>
3
- <legend>Please enter account id</legend>
3
+ <legend>Payment Methods</legend>
4
4
  <div class="control-group">
5
- <label class="control-label" for="account_id">Account</label>
5
+ <label class="control-label" for="key">Account</label>
6
6
 
7
7
  <div class="controls">
8
- <%= text_field_tag 'account_id', nil, :class => "input-xlarge", :id => "account_id" %>
8
+ <%= text_field_tag 'key', nil, :class => "input-xlarge", :id => "key", :placeholder => "accountId, PayPalEmail, BAID, Last4cc" %>
9
9
  </div>
10
10
  </div>
11
11
  <div class="form-actions">
@@ -0,0 +1,31 @@
1
+ <div class="page-header">
2
+ <h3>Refunds</h3>
3
+ </div>
4
+ <table class="table table-condensed table-striped data-table">
5
+ <thead>
6
+ <tr>
7
+ <th>Requested date</th>
8
+ <th>Effective date</th>
9
+ <th>Amount Refunded</th>
10
+ <th>Adjusted</th>
11
+ <th>Refund ID</th>
12
+ <th>Payment ID</th>
13
+ </tr>
14
+ </thead>
15
+ <tbody>
16
+ <% if @payments.present? %>
17
+ <% @payments.each do |payment| %>
18
+ <% payment.refunds.each do |refund| %>
19
+ <tr>
20
+ <td><%= format_date(refund.requested_date, @account.timezone).html_safe if refund.requested_date.present? %></td>
21
+ <td><%= format_date(refund.effective_date, @account.timezone).html_safe if refund.effective_date.present? %></td>
22
+ <td><%= humanized_money_with_symbol refund.amount_to_money %> (<%= refund.currency %>)</td>
23
+ <td><%= refund.adjusted %></td>
24
+ <td><%= link_to refund.refund_id, refund_path(refund.refund_id) %></td>
25
+ <td><%= refund.payment_id %></td>
26
+ </tr>
27
+ <% end #end refunds%>
28
+ <% end #end payments%>
29
+ <% end #end if payments present%>
30
+ </tbody>
31
+ </table>
data/kaui.gemspec CHANGED
@@ -27,7 +27,7 @@ Gem::Specification.new do |s|
27
27
  s.add_dependency 'rest-client', '~> 1.6.7'
28
28
  s.add_dependency 'money-rails', '~> 0.5.0'
29
29
  s.add_dependency 'd3_rails', '~> 2.10.3'
30
- s.add_dependency 'killbill-client', '~> 0.1.1'
30
+ s.add_dependency 'killbill-client', '~> 0.1.3'
31
31
 
32
32
  if defined?(JRUBY_VERSION)
33
33
  s.add_development_dependency 'activerecord-jdbc-adapter', '~> 1.2.2'
data/lib/kaui/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Kaui
2
- VERSION = "0.2.5"
2
+ VERSION = "0.2.6"
3
3
  end
@@ -12,14 +12,14 @@ class Kaui::AccountsControllerTest < ActionController::TestCase
12
12
  fixtures :accounts
13
13
 
14
14
  test "should get index" do
15
- get :index
15
+ get :index, :use_route => 'kaui'
16
16
  assert_response :success
17
17
  end
18
18
 
19
19
  test "should find account by id" do
20
20
  pierre = accounts(:pierre)
21
21
 
22
- get :show, :id => pierre["accountId"]
22
+ get :show, :id => pierre["accountId"], :use_route => 'kaui'
23
23
  assert_response :success
24
24
  assert_equal assigns(:account).account_id, pierre["accountId"]
25
25
  end
@@ -28,7 +28,7 @@ class Kaui::AccountsControllerTest < ActionController::TestCase
28
28
  test "should find correct positive balance" do
29
29
  accnt = accounts(:account_with_positive_balance)
30
30
 
31
- get :show, :id => accnt["accountId"]
31
+ get :show, :id => accnt["accountId"], :use_route => 'kaui'
32
32
  assert_response :success
33
33
  assert assigns(:account).balance > 0
34
34
 
@@ -48,14 +48,14 @@ end
48
48
  test "should find correct negative balance" do
49
49
  accnt = accounts(:account_with_negative_balance)
50
50
 
51
- get :show, :id => accnt["accountId"]
51
+ get :show, :id => accnt["accountId"], :use_route => 'kaui'
52
52
  assert_response :success
53
53
  assert assigns(:account).balance < 0
54
54
  end
55
55
 
56
56
  test "should find correct zero balance" do
57
57
  accnt = accounts(:account_with_zero_balance)
58
- get :show, :id => accnt["accountId"]
58
+ get :show, :id => accnt["accountId"], :use_route => 'kaui'
59
59
  assert_response :success
60
60
  assert assigns(:account).balance == 0
61
61
  end
@@ -4,7 +4,7 @@ class Kaui::BundlesControllerTest < ActionController::TestCase
4
4
  fixtures :accounts, :bundles
5
5
 
6
6
  test "should get index" do
7
- get :index
7
+ get :index, :use_route => 'kaui'
8
8
  assert_response :success
9
9
  end
10
10
 
@@ -12,10 +12,10 @@ class Kaui::BundlesControllerTest < ActionController::TestCase
12
12
  pierre = accounts(:pierre)
13
13
  bundle = bundles(:bundle_for_pierre)
14
14
 
15
- get :show, :id => bundle["bundleId"]
15
+ get :show, :id => bundle["bundleId"], :use_route => 'kaui'
16
16
  assert_response :success
17
17
  assert_equal assigns(:account).account_id, pierre["accountId"]
18
18
  assert_equal assigns(:bundle).bundle_id, bundle["bundleId"]
19
19
  assert_equal assigns(:bundle).account_id, pierre["accountId"]
20
20
  end
21
- end
21
+ end
@@ -3,7 +3,7 @@ require 'test_helper'
3
3
  module Kaui
4
4
  class HomeControllerTest < ActionController::TestCase
5
5
  test "should get index" do
6
- get :index
6
+ get :index, :use_route => 'kaui'
7
7
  assert_response :success
8
8
  end
9
9
 
@@ -4,14 +4,14 @@ class Kaui::InvoiceItemsControllerTest < ActionController::TestCase
4
4
  fixtures :invoice_items
5
5
 
6
6
  test "should get index" do
7
- get :index
7
+ get :index, :use_route => 'kaui'
8
8
  assert_response :success
9
9
  end
10
10
 
11
11
  test "should find invoice item by id" do
12
12
  item = invoice_items(:recurring_item_for_pierre)
13
13
 
14
- get :show, :id => item["invoiceItemId"], :invoice_id => item["invoiceId"]
14
+ get :show, :id => item["invoiceItemId"], :invoice_id => item["invoiceId"], :use_route => 'kaui'
15
15
  assert_response :success
16
16
  assert_equal assigns(:invoice_item).invoice_item_id, item["invoiceItemId"]
17
17
  end
@@ -4,7 +4,7 @@ class Kaui::InvoicesControllerTest < ActionController::TestCase
4
4
  fixtures :accounts, :invoices
5
5
 
6
6
  test "should get index" do
7
- get :index
7
+ get :index, :use_route => 'kaui'
8
8
  assert_response :success
9
9
  end
10
10
 
@@ -12,10 +12,10 @@ class Kaui::InvoicesControllerTest < ActionController::TestCase
12
12
  pierre = accounts(:pierre)
13
13
  invoice = invoices(:invoice_for_pierre)
14
14
 
15
- get :show, :id => invoice["invoiceId"]
15
+ get :show, :id => invoice["invoiceId"], :use_route => 'kaui'
16
16
  assert_response :success
17
17
  assert_equal assigns(:account).account_id, pierre["accountId"]
18
18
  assert_equal assigns(:invoice).invoice_id, invoice["invoiceId"]
19
19
  assert_equal assigns(:invoice).account_id, pierre["accountId"]
20
20
  end
21
- end
21
+ end
data/test/test_helper.rb CHANGED
@@ -33,6 +33,10 @@ module Kaui::KillbillHelper
33
33
  find_among_fixtures(Kaui::Account, account_id)
34
34
  end
35
35
 
36
+ def self.get_overdue_state_for_bundle(bundle_id)
37
+ find_among_fixtures(Kaui::OverdueState, bundle_id)
38
+ end
39
+
36
40
  def self.get_invoice(invoice_id)
37
41
  find_among_fixtures(Kaui::Invoice, invoice_id)
38
42
  end
metadata CHANGED
@@ -1,20 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kaui
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.5
5
- prerelease:
4
+ version: 0.2.6
6
5
  platform: ruby
7
6
  authors:
8
7
  - Killbill core team
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-06-24 00:00:00.000000000 Z
11
+ date: 2013-08-13 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rails
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
17
  - - ~>
20
18
  - !ruby/object:Gem::Version
@@ -22,7 +20,6 @@ dependencies:
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
24
  - - ~>
28
25
  - !ruby/object:Gem::Version
@@ -30,7 +27,6 @@ dependencies:
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: jquery-rails
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
31
  - - ~>
36
32
  - !ruby/object:Gem::Version
@@ -38,7 +34,6 @@ dependencies:
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
38
  - - ~>
44
39
  - !ruby/object:Gem::Version
@@ -46,7 +41,6 @@ dependencies:
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: rest-client
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
45
  - - ~>
52
46
  - !ruby/object:Gem::Version
@@ -54,7 +48,6 @@ dependencies:
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
52
  - - ~>
60
53
  - !ruby/object:Gem::Version
@@ -62,7 +55,6 @@ dependencies:
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: money-rails
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
59
  - - ~>
68
60
  - !ruby/object:Gem::Version
@@ -70,7 +62,6 @@ dependencies:
70
62
  type: :runtime
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
66
  - - ~>
76
67
  - !ruby/object:Gem::Version
@@ -78,7 +69,6 @@ dependencies:
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: d3_rails
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
73
  - - ~>
84
74
  - !ruby/object:Gem::Version
@@ -86,7 +76,6 @@ dependencies:
86
76
  type: :runtime
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
80
  - - ~>
92
81
  - !ruby/object:Gem::Version
@@ -94,33 +83,29 @@ dependencies:
94
83
  - !ruby/object:Gem::Dependency
95
84
  name: killbill-client
96
85
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
86
  requirements:
99
87
  - - ~>
100
88
  - !ruby/object:Gem::Version
101
- version: 0.1.1
89
+ version: 0.1.3
102
90
  type: :runtime
103
91
  prerelease: false
104
92
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
93
  requirements:
107
94
  - - ~>
108
95
  - !ruby/object:Gem::Version
109
- version: 0.1.1
96
+ version: 0.1.3
110
97
  - !ruby/object:Gem::Dependency
111
98
  name: mysql2
112
99
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
100
  requirements:
115
- - - ! '>='
101
+ - - '>='
116
102
  - !ruby/object:Gem::Version
117
103
  version: '0'
118
104
  type: :development
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
107
  requirements:
123
- - - ! '>='
108
+ - - '>='
124
109
  - !ruby/object:Gem::Version
125
110
  version: '0'
126
111
  description: Rails UI plugin for Killbill administration.
@@ -240,6 +225,7 @@ files:
240
225
  - app/views/kaui/payment_methods/show.html.erb
241
226
  - app/views/kaui/payments/_payments_table.html.erb
242
227
  - app/views/kaui/payments/new.html.erb
228
+ - app/views/kaui/refunds/_refunds_table.html.erb
243
229
  - app/views/kaui/refunds/index.html.erb
244
230
  - app/views/kaui/refunds/new.html.erb
245
231
  - app/views/kaui/refunds/show.html.erb
@@ -357,30 +343,26 @@ files:
357
343
  homepage: http://www.killbilling.org
358
344
  licenses:
359
345
  - Apache License (2.0)
346
+ metadata: {}
360
347
  post_install_message:
361
348
  rdoc_options: []
362
349
  require_paths:
363
350
  - lib
364
351
  required_ruby_version: !ruby/object:Gem::Requirement
365
- none: false
366
352
  requirements:
367
- - - ! '>='
353
+ - - '>='
368
354
  - !ruby/object:Gem::Version
369
355
  version: 1.8.7
370
356
  required_rubygems_version: !ruby/object:Gem::Requirement
371
- none: false
372
357
  requirements:
373
- - - ! '>='
358
+ - - '>='
374
359
  - !ruby/object:Gem::Version
375
360
  version: '0'
376
- segments:
377
- - 0
378
- hash: -3532343417055905152
379
361
  requirements: []
380
362
  rubyforge_project:
381
- rubygems_version: 1.8.25
363
+ rubygems_version: 2.0.3
382
364
  signing_key:
383
- specification_version: 3
365
+ specification_version: 4
384
366
  summary: Killbill Admin UI plugin
385
367
  test_files:
386
368
  - test/dummy/README.rdoc