kaui 0.1.7 → 0.1.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. data/app/controllers/kaui/account_tags_controller.rb +38 -27
  2. data/app/controllers/kaui/account_timelines_controller.rb +10 -4
  3. data/app/controllers/kaui/accounts_controller.rb +31 -12
  4. data/app/controllers/kaui/bundle_tags_controller.rb +5 -1
  5. data/app/controllers/kaui/bundles_controller.rb +6 -3
  6. data/app/controllers/kaui/chargebacks_controller.rb +21 -12
  7. data/app/controllers/kaui/charges_controller.rb +15 -13
  8. data/app/controllers/kaui/credits_controller.rb +19 -9
  9. data/app/controllers/kaui/invoice_items_controller.rb +9 -5
  10. data/app/controllers/kaui/invoices_controller.rb +28 -20
  11. data/app/controllers/kaui/payments_controller.rb +11 -6
  12. data/app/controllers/kaui/refunds_controller.rb +9 -4
  13. data/app/controllers/kaui/subscriptions_controller.rb +50 -38
  14. data/app/helpers/kaui/killbill_helper.rb +202 -332
  15. data/app/models/kaui/account_email.rb +22 -11
  16. data/app/views/kaui/chargebacks/new.html.erb +3 -1
  17. data/app/views/kaui/refunds/new.html.erb +4 -2
  18. data/app/views/kaui/subscriptions/_subscriptions_table.html.erb +2 -4
  19. data/lib/kaui/version.rb +1 -1
  20. data/test/dummy/log/test.log +997 -113084
  21. metadata +2 -67
  22. data/app/controllers/kaui/tags_controller.rb +0 -85
  23. data/app/views/kaui/account_emails/edit.html.erb +0 -6
  24. data/app/views/kaui/tags/_form.html.erb +0 -25
  25. data/app/views/kaui/tags/edit.html.erb +0 -6
  26. data/app/views/kaui/tags/index.html.erb +0 -25
  27. data/app/views/kaui/tags/new.html.erb +0 -5
  28. data/app/views/kaui/tags/show.html.erb +0 -15
  29. data/test/dummy/log/development.log +0 -60886
  30. data/test/dummy/test/fixtures/bill_cycle_days.yml +0 -3
  31. data/test/dummy/tmp/cache/assets/C94/4E0/sprockets%2Fea1476dc10a3348303f74d111f70441a +0 -0
  32. data/test/dummy/tmp/cache/assets/C95/690/sprockets%2Fc4b083702793f7599f4a3069c50f89a8 +0 -0
  33. data/test/dummy/tmp/cache/assets/CAA/680/sprockets%2F3824d037523f650518fb22acab75559d +0 -0
  34. data/test/dummy/tmp/cache/assets/CC2/520/sprockets%2F9637f46d37325381f96d96d94ae0bc50 +0 -0
  35. data/test/dummy/tmp/cache/assets/CD0/9D0/sprockets%2F5c9508c21501c73fbe00473a09b1f5f4 +0 -0
  36. data/test/dummy/tmp/cache/assets/CD8/370/sprockets%2F357970feca3ac29060c1e3861e2c0953 +0 -0
  37. data/test/dummy/tmp/cache/assets/CDF/1F0/sprockets%2F76ac5628a0c4d1b976cb622ec4493751 +0 -381
  38. data/test/dummy/tmp/cache/assets/CEA/300/sprockets%2Fdf2ad5c9d0990441c2bf59883383d652 +0 -0
  39. data/test/dummy/tmp/cache/assets/CF7/710/sprockets%2F86d43448e1fc383cb6f3d752ef288882 +0 -0
  40. data/test/dummy/tmp/cache/assets/D17/DD0/sprockets%2F665455ecdc7609b23f4ecb366d86055a +0 -9409
  41. data/test/dummy/tmp/cache/assets/D32/200/sprockets%2Ffa467106e01bda5d6246baea72159d64 +0 -0
  42. data/test/dummy/tmp/cache/assets/D32/A10/sprockets%2F13fe41fee1fe35b49d145bcc06610705 +0 -0
  43. data/test/dummy/tmp/cache/assets/D39/5E0/sprockets%2F59fd338be48a81a17a2a785cbd1612b4 +0 -0
  44. data/test/dummy/tmp/cache/assets/D44/170/sprockets%2Fac15571bce3f926a498da7cd09322d97 +0 -0
  45. data/test/dummy/tmp/cache/assets/D4E/1B0/sprockets%2Ff7cbd26ba1d28d48de824f0e94586655 +0 -0
  46. data/test/dummy/tmp/cache/assets/D5A/EA0/sprockets%2Fd771ace226fc8215a3572e0aa35bb0d6 +0 -0
  47. data/test/dummy/tmp/cache/assets/D6C/710/sprockets%2F1765773caead06c0a6a19ea9de2453f7 +0 -0
  48. data/test/dummy/tmp/cache/assets/D76/910/sprockets%2Ff99b4bdc434e11e8634e6af62fe805e0 +0 -0
  49. data/test/dummy/tmp/cache/assets/D9F/160/sprockets%2F510462e1ebd5dbb7ae20888b77f9bed2 +0 -0
  50. data/test/dummy/tmp/cache/assets/DDC/400/sprockets%2Fcffd775d018f68ce5dba1ee0d951a994 +0 -0
  51. data/test/dummy/tmp/cache/assets/E04/890/sprockets%2F2f5173deea6c795b8fdde723bb4b63af +0 -0
  52. data/test/dummy/tmp/cache/assets/E07/1E0/sprockets%2F5a3fe6e98fdf72bbe75c605e54ebc5b0 +0 -9409
  53. data/test/dummy/tmp/cache/assets/E20/230/sprockets%2F7d3b1348fdf74cf1b6ba2107fbbac5af +0 -0
  54. data/test/dummy/tmp/cache/assets/E22/F40/sprockets%2Faffacf2e6be325520bd3bfd2096b6dd4 +0 -0
  55. data/test/dummy/tmp/cache/assets/E24/9D0/sprockets%2Fb966ab0a50fda3c156fbad4d8ab73ef6 +0 -381
  56. data/test/functional/kaui/account_emails_controller_test.rb +0 -51
  57. data/test/functional/kaui/tags_controller_test.rb +0 -51
@@ -4,7 +4,11 @@ class Kaui::AccountTagsController < Kaui::EngineController
4
4
  account_id = params[:id]
5
5
 
6
6
  if account_id.present?
7
- tags = Kaui::KillbillHelper::get_tags_for_account(account_id)
7
+ begin
8
+ tags = Kaui::KillbillHelper::get_tags_for_account(account_id)
9
+ rescue => e
10
+ flash[:error] = "Error while getting tags: #{e.message} #{e.response}"
11
+ end
8
12
  else
9
13
  flash[:error] = "No account id given"
10
14
  end
@@ -12,36 +16,43 @@ class Kaui::AccountTagsController < Kaui::EngineController
12
16
 
13
17
  def edit
14
18
  @account_id = params[:account_id]
15
- @available_tags = Kaui::KillbillHelper::get_tag_definitions.sort
16
-
17
- @account = Kaui::KillbillHelper::get_account(@account_id)
18
- @tag_names = Kaui::KillbillHelper::get_tags_for_account(@account.account_id).map { |tag| tag.tag_definition_name }
19
+ begin
20
+ @available_tags = Kaui::KillbillHelper::get_tag_definitions.sort
21
+ @account = Kaui::KillbillHelper::get_account(@account_id)
22
+ @tag_names = Kaui::KillbillHelper::get_tags_for_account(@account.account_id).map { |tag| tag.tag_definition_name }
23
+ rescue => e
24
+ flash[:error] = "Error while editing tags: #{e.message} #{e.response}"
25
+ end
19
26
  end
20
27
 
21
28
  def update
22
- current_tags = Kaui::KillbillHelper::get_tags_for_account(params[:account_id]).map { |tag| tag.tag_definition_id }
23
- new_tags = []
24
- params.each do |tag, tag_name|
25
- tag_info = tag.split('_')
26
- next if tag_info.size != 2 or tag_info[0] != 'tag'
27
- new_tags << tag_info[1]
28
- end
29
-
30
- # Find tags to remove
31
- tags_to_remove = []
32
- current_tags.each do |current_tag_definition_id|
33
- tags_to_remove << current_tag_definition_id unless new_tags.include?(current_tag_definition_id)
29
+ begin
30
+ current_tags = Kaui::KillbillHelper::get_tags_for_account(params[:account_id]).map { |tag| tag.tag_definition_id }
31
+
32
+ new_tags = []
33
+ params.each do |tag, tag_name|
34
+ tag_info = tag.split('_')
35
+ next if tag_info.size != 2 or tag_info[0] != 'tag'
36
+ new_tags << tag_info[1]
37
+ end
38
+
39
+ # Find tags to remove
40
+ tags_to_remove = []
41
+ current_tags.each do |current_tag_definition_id|
42
+ tags_to_remove << current_tag_definition_id unless new_tags.include?(current_tag_definition_id)
43
+ end
44
+
45
+ # Find tags to add
46
+ tags_to_add = []
47
+ new_tags.each do |new_tag_definition_id|
48
+ tags_to_add << new_tag_definition_id unless current_tags.include?(new_tag_definition_id)
49
+ end
50
+
51
+ Kaui::KillbillHelper::remove_tags_for_account(params[:account_id], tags_to_remove)
52
+ Kaui::KillbillHelper::add_tags_for_account(params[:account_id], tags_to_add)
53
+ rescue => e
54
+ flash[:error] = "Error while updating tags: #{e.message} #{e.response}"
34
55
  end
35
-
36
- # Find tags to add
37
- tags_to_add = []
38
- new_tags.each do |new_tag_definition_id|
39
- tags_to_add << new_tag_definition_id unless current_tags.include?(new_tag_definition_id)
40
- end
41
-
42
- Kaui::KillbillHelper::remove_tags_for_account(params[:account_id], tags_to_remove)
43
- Kaui::KillbillHelper::add_tags_for_account(params[:account_id], tags_to_add)
44
-
45
56
  redirect_to kaui_engine.account_path(params[:account_id])
46
57
  end
47
58
 
@@ -26,9 +26,11 @@ class Kaui::AccountTimelinesController < Kaui::EngineController
26
26
  unless @timeline.nil?
27
27
  @timeline.payments.each do |payment|
28
28
  if payment.invoice_id.present? && payment.payment_id.present?
29
-
30
- @invoices_by_id[payment.invoice_id] = Kaui::KillbillHelper::get_invoice(payment.invoice_id)
31
-
29
+ begin
30
+ @invoices_by_id[payment.invoice_id] = Kaui::KillbillHelper::get_invoice(payment.invoice_id)
31
+ rescue => e
32
+ flash[:error] = "Could not get invoice information for the timeline #{@account_id}: #{e.message} #{e.response}"
33
+ end
32
34
  payment.bundle_keys.split(",").each do |bundle_key|
33
35
  unless @bundle_names.has_key?(bundle_key)
34
36
  @bundle_names[bundle_key] = Kaui.bundle_key_display_string.call(bundle_key)
@@ -38,7 +40,11 @@ class Kaui::AccountTimelinesController < Kaui::EngineController
38
40
  end
39
41
  @timeline.invoices.each do |invoice|
40
42
  if invoice.invoice_id.present? && !@invoices_by_id.has_key?(invoice.invoice_id)
41
- @invoices_by_id[invoice.invoice_id] = Kaui::KillbillHelper::get_invoice(invoice.invoice_id)
43
+ begin
44
+ @invoices_by_id[invoice.invoice_id] = Kaui::KillbillHelper::get_invoice(invoice.invoice_id)
45
+ rescue => e
46
+ flash[:error] = "Could not get invoice information for the timeline #{@account_id}: #{e.message} #{e.response}"
47
+ end
42
48
  invoice.bundle_keys.split(",").each do |bundle_key|
43
49
  unless @bundle_names.has_key?(bundle_key)
44
50
  @bundle_names[bundle_key] = Kaui.bundle_key_display_string.call(bundle_key)
@@ -53,7 +53,11 @@ class Kaui::AccountsController < Kaui::EngineController
53
53
  def payment_methods
54
54
  @account_id = params[:id]
55
55
  if @account_id.present?
56
- @payment_methods = Kaui::KillbillHelper::get_payment_methods(@account_id)
56
+ begin
57
+ @payment_methods = Kaui::KillbillHelper::get_payment_methods(@account_id)
58
+ rescue => e
59
+ flash[:error] = "Error while getting payment methods: #{e.message} #{e.response}"
60
+ end
57
61
  unless @payment_methods.is_a?(Array)
58
62
  flash[:notice] = "No payment methods for account_id '#{@account_id}'"
59
63
  redirect_to :action => :index
@@ -66,7 +70,11 @@ class Kaui::AccountsController < Kaui::EngineController
66
70
 
67
71
  def add_payment_method
68
72
  account_id = params[:id]
69
- @account = Kaui::KillbillHelper::get_account(account_id)
73
+ begin
74
+ @account = Kaui::KillbillHelper::get_account(account_id)
75
+ rescue => e
76
+ flash[:error] = "Error while adding payment methods: #{e.message} #{e.response}"
77
+ end
70
78
  if @account.nil?
71
79
  flash[:error] = "Account not found for id #{account_id}"
72
80
  redirect_to :back
@@ -77,7 +85,11 @@ class Kaui::AccountsController < Kaui::EngineController
77
85
 
78
86
  def do_add_payment_method
79
87
  account_id = params[:id]
80
- @account = Kaui::KillbillHelper::get_account(account_id)
88
+ begin
89
+ @account = Kaui::KillbillHelper::get_account(account_id)
90
+ rescue => e
91
+ flash[:error] = "Error while adding payment method: #{e.message} #{e.response}"
92
+ end
81
93
 
82
94
  # Implementation example using standard credit card fields
83
95
  @card_type = params[:card_type]
@@ -114,14 +126,13 @@ class Kaui::AccountsController < Kaui::EngineController
114
126
  'pluginName' => Kaui.creditcard_plugin_name.call,
115
127
  'pluginInfo' => plugin_info)
116
128
 
117
- success = Kaui::KillbillHelper::add_payment_method(payment_method, current_user, @reason, @comment)
118
-
119
- if success
129
+ begin
130
+ Kaui::KillbillHelper::add_payment_method(payment_method, current_user, @reason, @comment)
120
131
  flash[:info] = "Payment method created"
121
132
  redirect_to kaui_engine.account_timeline_path(@account.account_id)
122
133
  return
123
- else
124
- flash[:error] = "Error while adding payment method"
134
+ rescue => e
135
+ flash[:error] = "Error while adding payment method #{invoice_id}: #{e.message} #{e.response}"
125
136
  end
126
137
  end
127
138
  render "kaui/payment_methods/new"
@@ -131,7 +142,11 @@ class Kaui::AccountsController < Kaui::EngineController
131
142
  @account_id = params[:id]
132
143
  @payment_method_id = params[:payment_method_id]
133
144
  if @account_id.present? && @payment_method_id.present?
134
- @payment_methods = Kaui::KillbillHelper::set_payment_method_as_default(@account_id, @payment_method_id)
145
+ begin
146
+ @payment_methods = Kaui::KillbillHelper::set_payment_method_as_default(@account_id, @payment_method_id)
147
+ rescue => e
148
+ flash[:error] = "Error while setting payment method as default #{invoice_id}: #{e.message} #{e.response}"
149
+ end
135
150
  else
136
151
  flash[:notice] = "No account_id or payment_method_id given"
137
152
  end
@@ -139,8 +154,12 @@ class Kaui::AccountsController < Kaui::EngineController
139
154
  end
140
155
 
141
156
  def toggle_email_notifications
142
- @account = Kaui::KillbillHelper::update_email_notifications(params[:id], params[:is_notified])
143
- flash[:notice] = "Email preferences updated"
144
- redirect_to :back
157
+ begin
158
+ @account = Kaui::KillbillHelper::update_email_notifications(params[:id], params[:is_notified])
159
+ flash[:notice] = "Email preferences updated"
160
+ redirect_to :back
161
+ rescue => e
162
+ flash[:error] = "Error while switching email notifications #{invoice_id}: #{e.message} #{e.response}"
163
+ end
145
164
  end
146
165
  end
@@ -3,7 +3,11 @@ class Kaui::BundleTagsController < Kaui::EngineController
3
3
  def show
4
4
  bundle_id = params[:id]
5
5
  if bundle_id.present?
6
- tags = Kaui::KillbillHelper::get_tags_for_bundle(bundle_id)
6
+ begin
7
+ tags = Kaui::KillbillHelper::get_tags_for_bundle(bundle_id)
8
+ rescue => e
9
+ flash[:error] = "Error while retrieving tags information: #{e.message} #{e.response}"
10
+ end
7
11
  else
8
12
  flash[:error] = "No account id given"
9
13
  end
@@ -29,9 +29,12 @@ class Kaui::BundlesController < Kaui::EngineController
29
29
 
30
30
  def transfer
31
31
  bundle_id = params[:id]
32
- @bundle = Kaui::KillbillHelper::get_bundle(bundle_id)
33
- @account = Kaui::KillbillHelper::get_account_by_bundle_id(bundle_id)
34
-
32
+ begin
33
+ @bundle = Kaui::KillbillHelper::get_bundle(bundle_id)
34
+ @account = Kaui::KillbillHelper::get_account_by_bundle_id(bundle_id)
35
+ rescue => e
36
+ flash[:error] = "Error while preparing to transfer bundle: #{e.message} #{e.response}"
37
+ end
35
38
  if @account.nil?
36
39
  flash[:error] = "Account not found for bundle id #{bundle_id}"
37
40
  end
@@ -3,7 +3,11 @@ class Kaui::ChargebacksController < Kaui::EngineController
3
3
  def show
4
4
  @payment_id = params[:id]
5
5
  if @payment_id.present?
6
- data = Kaui::KillbillHelper::get_chargebacks_for_payment(@payment_id)
6
+ begin
7
+ data = Kaui::KillbillHelper::get_chargebacks_for_payment(@payment_id)
8
+ rescue => e
9
+ flash[:error] = "Error while getting chargeback information: #{e.message} #{e.response}"
10
+ end
7
11
  if data.present?
8
12
  @chargeback = Kaui::Chargeback.new(data)
9
13
  else
@@ -19,25 +23,30 @@ class Kaui::ChargebacksController < Kaui::EngineController
19
23
  @account_id = params[:account_id]
20
24
  @invoice_id = params[:invoice_id]
21
25
 
22
- # @payment_attempt = Kaui::KillbillHelper::get_payment_attempt(@external_key, @invoice_id, @payment_id)
23
- @account = Kaui::KillbillHelper::get_account(@account_id)
24
- @payment = Kaui::KillbillHelper::get_payment(@payment_id)
25
- @invoice = Kaui::KillbillHelper::get_invoice(@invoice_id)
26
- @payment_method = Kaui::KillbillHelper::get_payment_method(@payment.payment_method_id)
26
+ begin
27
+ @account = Kaui::KillbillHelper::get_account(@account_id)
28
+ @payment = Kaui::KillbillHelper::get_payment(@payment_id)
29
+ @invoice = Kaui::KillbillHelper::get_invoice(@invoice_id)
30
+ @payment_method = Kaui::KillbillHelper::get_payment_method(@payment.payment_method_id)
31
+ rescue => e
32
+ flash[:error] = "Error while starting a new chargeback: #{e.message} #{e.response}"
33
+ redirect_to kaui_engine.account_timeline_path(:id => params[:account_id])
34
+ end
27
35
 
28
- @chargeback = Kaui::Chargeback.new("payment_id" => @payment_id,
29
- "chargeback_amount" => @payment.amount)
36
+ @chargeback = Kaui::Chargeback.new("paymentId" => @payment_id,
37
+ "chargebackAmount" => @payment.amount)
30
38
  end
31
39
 
32
40
  def create
33
41
  account_id = params[:account_id]
34
42
  chargeback = Kaui::Chargeback.new(params[:chargeback])
43
+
35
44
  if chargeback.present?
36
- success = Kaui::KillbillHelper::create_chargeback(chargeback, params[:reason], params[:comment])
37
- if success
45
+ begin
46
+ Kaui::KillbillHelper::create_chargeback(chargeback, params[:reason], params[:comment])
38
47
  flash[:info] = "Chargeback created"
39
- else
40
- flash[:error] = "Could not process chargeback"
48
+ rescue => e
49
+ flash[:error] = "Error while creating a new chargeback: #{e.message} #{e.response}"
41
50
  end
42
51
  else
43
52
  flash[:error] = "No chargeback to process"
@@ -3,30 +3,32 @@ class Kaui::ChargesController < Kaui::EngineController
3
3
  def new
4
4
  @account_id = params[:account_id]
5
5
  @invoice_id = params[:invoice_id]
6
+ begin
7
+ @account = Kaui::KillbillHelper::get_account(@account_id)
6
8
 
7
- @account = Kaui::KillbillHelper::get_account(@account_id)
8
-
9
- if @invoice_id.present?
10
- @invoice = Kaui::KillbillHelper::get_invoice(@invoice_id)
11
- @charge = Kaui::Charge.new("accountId" => @account_id, "invoiceId" => @invoice_id)
12
- else
13
- @charge = Kaui::Charge.new("accountId" => @account_id)
9
+ if @invoice_id.present?
10
+ @invoice = Kaui::KillbillHelper::get_invoice(@invoice_id)
11
+ @charge = Kaui::Charge.new("accountId" => @account_id, "invoiceId" => @invoice_id)
12
+ else
13
+ @charge = Kaui::Charge.new("accountId" => @account_id)
14
+ end
15
+ rescue => e
16
+ flash[:error] = "Error while creating a charge: #{e.message} #{e.response}"
14
17
  end
15
-
16
18
  end
17
19
 
18
20
  def create
19
21
  charge = Kaui::Charge.new(params[:charge])
20
22
 
21
23
  if charge.present?
22
- success = Kaui::KillbillHelper::create_charge(charge, params[:requested_date], current_user, nil, params[:comment])
23
- if success
24
+ begin
25
+ Kaui::KillbillHelper::create_charge(charge, params[:requested_date], current_user, nil, params[:comment])
24
26
  flash[:info] = "Charge created"
27
+ redirect_to kaui_engine.account_timeline_path(:id => charge.account_id)
28
+ rescue => e
29
+ flash[:error] = "Error while creating a charge: #{e.message} #{e.response}"
25
30
  end
26
- else
27
- flash[:error] = "No charge to process"
28
31
  end
29
- redirect_to kaui_engine.account_timeline_path(:id => charge.account_id)
30
32
  end
31
33
 
32
34
  end
@@ -4,8 +4,12 @@ class Kaui::CreditsController < Kaui::EngineController
4
4
  @invoice_id = params[:invoice_id]
5
5
 
6
6
  if params.has_key?(:account_id)
7
- # invoice id can be nil for account level credit
8
- data = Kaui::KillbillHelper::get_credits(@account_id, @invoice_id)
7
+ begin
8
+ # invoice id can be nil for account level credit
9
+ data = Kaui::KillbillHelper::get_credits(@account_id, @invoice_id)
10
+ rescue => e
11
+ flash[:error] = "Error getting credit information: #{e.message} #{e.response}"
12
+ end
9
13
  if data.present?
10
14
  @credit = Kaui::Credit.new(data)
11
15
  else
@@ -19,8 +23,14 @@ class Kaui::CreditsController < Kaui::EngineController
19
23
  def new
20
24
  @account_id = params[:account_id]
21
25
  @invoice_id = params[:invoice_id]
22
- @account = Kaui::KillbillHelper::get_account(@account_id)
23
- @invoice = Kaui::KillbillHelper::get_invoice(@invoice_id) unless @invoice_id.nil?
26
+
27
+ begin
28
+ @account = Kaui::KillbillHelper::get_account(@account_id)
29
+ @invoice = Kaui::KillbillHelper::get_invoice(@invoice_id) unless @invoice_id.nil?
30
+ rescue => e
31
+ flash[:error] = "Error while starting to create credit: #{e.message} #{e.response}"
32
+ end
33
+
24
34
  credit_amount = @invoice.balance unless @invoice.nil?
25
35
 
26
36
  @credit = Kaui::Credit.new("accountId" => @account_id, "invoiceId" => @invoice_id,
@@ -29,13 +39,13 @@ class Kaui::CreditsController < Kaui::EngineController
29
39
 
30
40
  def create
31
41
  credit = Kaui::Credit.new(params[:credit])
32
- success = Kaui::KillbillHelper::create_credit(credit, current_user, params[:reason], params[:comment])
33
- if success
42
+ begin
43
+ Kaui::KillbillHelper::create_credit(credit, current_user, params[:reason], params[:comment])
44
+ account = Kaui::KillbillHelper::get_account(credit.account_id)
34
45
  flash[:info] = "Credit created"
35
- else
36
- flash[:error] = "Error while creating credit"
46
+ rescue => e
47
+ flash[:error] = "Error while starting to create credit: #{e.message} #{e.response}"
37
48
  end
38
- account = Kaui::KillbillHelper::get_account(credit.account_id)
39
49
  redirect_to Kaui.account_home_path.call(account.external_key)
40
50
  end
41
51
  end
@@ -15,12 +15,12 @@ class Kaui::InvoiceItemsController < Kaui::EngineController
15
15
 
16
16
  def update
17
17
  @invoice_item = Kaui::InvoiceItem.new(params[:invoice_item])
18
- success = Kaui::KillbillHelper.adjust_invoice(@invoice_item, current_user, params[:reason], params[:comment])
19
- if success
18
+ begin
19
+ Kaui::KillbillHelper.adjust_invoice(@invoice_item, current_user, params[:reason], params[:comment])
20
20
  flash[:notice] = "Adjustment item created"
21
21
  redirect_to kaui_engine.invoice_path(@invoice_item.invoice_id)
22
- else
23
- flash[:error] = "Unable to create adjustment item"
22
+ rescue => e
23
+ flash[:error] = "Error while updating the invoice item: #{e.message} #{e.response}"
24
24
  render :action => "edit"
25
25
  end
26
26
  end
@@ -31,7 +31,11 @@ class Kaui::InvoiceItemsController < Kaui::EngineController
31
31
  invoice_item_id = params[:id]
32
32
  invoice_id = params[:invoice_id]
33
33
  if invoice_item_id.present? and invoice_id.present?
34
- @invoice_item = Kaui::KillbillHelper.get_invoice_item(invoice_id, invoice_item_id)
34
+ begin
35
+ @invoice_item = Kaui::KillbillHelper.get_invoice_item(invoice_id, invoice_item_id)
36
+ rescue => e
37
+ flash[:error] = "Error while trying to find the invoice item: #{e.message} #{e.response}"
38
+ end
35
39
  unless @invoice_item.present?
36
40
  flash[:error] = "Invoice for id #{invoice_id} and invoice item id #{invoice_item_id} not found"
37
41
  render :action => :index
@@ -8,28 +8,32 @@ class Kaui::InvoicesController < Kaui::EngineController
8
8
  def show
9
9
  @invoice_id = params[:id]
10
10
  if @invoice_id.present?
11
- @invoice = Kaui::KillbillHelper.get_invoice(@invoice_id)
12
- if @invoice.present?
13
- @account = Kaui::KillbillHelper.get_account(@invoice.account_id)
14
- @payments = Kaui::KillbillHelper.get_payments(@invoice_id)
11
+ begin
12
+ @invoice = Kaui::KillbillHelper.get_invoice(@invoice_id)
13
+ if @invoice.present?
14
+ @account = Kaui::KillbillHelper.get_account(@invoice.account_id)
15
+ @payments = Kaui::KillbillHelper.get_payments(@invoice_id)
15
16
 
16
- @subscriptions = {}
17
- @bundles = {}
18
- if @invoice.items.present?
19
- @invoice.items.each do |item|
20
- unless item.subscription_id.nil? || @subscriptions.has_key?(item.subscription_id)
21
- @subscriptions[item.subscription_id] = Kaui::KillbillHelper.get_subscription(item.subscription_id)
22
- end
23
- unless item.bundle_id.nil? || @bundles.has_key?(item.bundle_id)
24
- @bundles[item.bundle_id] = Kaui::KillbillHelper.get_bundle(item.bundle_id)
25
- end
26
- end
17
+ @subscriptions = {}
18
+ @bundles = {}
19
+ if @invoice.items.present?
20
+ @invoice.items.each do |item|
21
+ unless item.subscription_id.nil? || @subscriptions.has_key?(item.subscription_id)
22
+ @subscriptions[item.subscription_id] = Kaui::KillbillHelper.get_subscription(item.subscription_id)
23
+ end
24
+ unless item.bundle_id.nil? || @bundles.has_key?(item.bundle_id)
25
+ @bundles[item.bundle_id] = Kaui::KillbillHelper.get_bundle(item.bundle_id)
26
+ end
27
+ end
28
+ else
29
+ flash[:error] = "Invoice items for #{@invoice_id} not found"
30
+ end
27
31
  else
28
- flash[:error] = "Invoice items for #{@invoice_id} not found"
32
+ flash[:error] = "Invoice #{@invoice_id} not found"
33
+ render :action => :index
29
34
  end
30
- else
31
- flash[:error] = "Invoice #{@invoice_id} not found"
32
- render :action => :index
35
+ rescue => e
36
+ flash[:error] = "Error while getting information for invoice #{invoice_id}: #{e.message} #{e.response}"
33
37
  end
34
38
  else
35
39
  flash[:error] = "No id given"
@@ -37,6 +41,10 @@ class Kaui::InvoicesController < Kaui::EngineController
37
41
  end
38
42
 
39
43
  def show_html
40
- render :text => Kaui::KillbillHelper.get_invoice_html(params[:id])
44
+ begin
45
+ render :text => Kaui::KillbillHelper.get_invoice_html(params[:id])
46
+ rescue => e
47
+ flash[:error] = "Error rendering invoice html #{invoice_id}: #{e.message} #{e.response}"
48
+ end
41
49
  end
42
50
  end
@@ -3,8 +3,13 @@ class Kaui::PaymentsController < Kaui::EngineController
3
3
  def new
4
4
  @account_id = params[:account_id]
5
5
  @invoice_id = params[:invoice_id]
6
- @invoice = Kaui::KillbillHelper::get_invoice(@invoice_id)
7
- @account = Kaui::KillbillHelper::get_account(@account_id)
6
+ begin
7
+ @invoice = Kaui::KillbillHelper::get_invoice(@invoice_id)
8
+ @account = Kaui::KillbillHelper::get_account(@account_id)
9
+ rescue => e
10
+ flash[:error] = "Error while creating a new payment: #{e.message} #{e.response}"
11
+ redirect_to kaui_engine.account_timeline_path(:id => payment.account_id)
12
+ end
8
13
 
9
14
  @payment = Kaui::Payment.new("accountId" => @account_id, "invoiceId" => @invoice_id, "amount" => @invoice.balance)
10
15
  end
@@ -13,12 +18,12 @@ class Kaui::PaymentsController < Kaui::EngineController
13
18
  payment = Kaui::Payment.new(params[:payment])
14
19
  if payment.present?
15
20
  payment.external = (payment.external == "1")
16
- success = Kaui::KillbillHelper::create_payment(payment, payment.external, current_user, params[:reason], params[:comment])
17
- if success
21
+ begin
22
+ Kaui::KillbillHelper::create_payment(payment, payment.external, current_user, params[:reason], params[:comment])
18
23
  flash[:info] = "Payment created"
24
+ rescue => e
25
+ flash[:error] = "Error while creating a new payment: #{e.message} #{e.response}"
19
26
  end
20
- else
21
- flash[:error] = "No payment to process"
22
27
  end
23
28
  redirect_to kaui_engine.account_timeline_path(:id => payment.account_id)
24
29
  end
@@ -39,10 +39,15 @@ class Kaui::RefundsController < Kaui::EngineController
39
39
 
40
40
  @refund = Kaui::Refund.new('adjusted' => true)
41
41
 
42
- @account = Kaui::KillbillHelper::get_account(@account_id)
43
- @payment = Kaui::KillbillHelper::get_payment(@payment_id)
44
- @invoice = Kaui::KillbillHelper::get_invoice(@invoice_id)
45
- @payment_method = Kaui::KillbillHelper::get_payment_method(@payment.payment_method_id)
42
+ begin
43
+ @account = Kaui::KillbillHelper::get_account(@account_id)
44
+ @payment = Kaui::KillbillHelper::get_payment(@payment_id)
45
+ @invoice = Kaui::KillbillHelper::get_invoice(@invoice_id)
46
+ @payment_method = Kaui::KillbillHelper::get_payment_method(@payment.payment_method_id)
47
+ rescue => e
48
+ flash[:error] = "Error while processing refund: #{e.message} #{e.response}"
49
+ redirect_to kaui_engine.account_timeline_path(:id => params[:account_id])
50
+ end
46
51
  end
47
52
 
48
53
  def create