kaui 0.11.0 → 0.12.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (213) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -0
  3. data/Gemfile +1 -1
  4. data/README.md +10 -15
  5. data/app/assets/images/kaui/duck.png +0 -0
  6. data/app/assets/images/kaui/logo.png +0 -0
  7. data/app/assets/images/kaui/search.png +0 -0
  8. data/app/assets/images/kaui/search_white.png +0 -0
  9. data/app/assets/javascripts/application.js +3 -0
  10. data/app/assets/javascripts/kaui/bootstrap-tweaks.js +3 -0
  11. data/app/assets/javascripts/kaui/kaui.js +99 -0
  12. data/app/assets/stylesheets/application.css +3 -1
  13. data/app/assets/stylesheets/bootstrap_and_overrides.less +39 -0
  14. data/app/assets/stylesheets/kaui/common.less +538 -0
  15. data/app/assets/stylesheets/kaui/datatable.less +75 -0
  16. data/app/assets/stylesheets/kaui/header.less +186 -0
  17. data/app/assets/stylesheets/kaui/home.less +82 -0
  18. data/app/assets/stylesheets/kaui/invoice.less +54 -0
  19. data/app/assets/stylesheets/kaui/kaui.less +16 -0
  20. data/app/assets/stylesheets/kaui/payment.less +29 -0
  21. data/app/assets/stylesheets/kaui/subscription.less +5 -0
  22. data/app/assets/stylesheets/kaui/tags.less +175 -0
  23. data/app/assets/stylesheets/kaui/timeline.less +4 -0
  24. data/app/controllers/kaui/account_emails_controller.rb +18 -18
  25. data/app/controllers/kaui/account_tags_controller.rb +8 -30
  26. data/app/controllers/kaui/account_timelines_controller.rb +13 -23
  27. data/app/controllers/kaui/accounts_controller.rb +65 -62
  28. data/app/controllers/kaui/admin_allowed_users_controller.rb +48 -32
  29. data/app/controllers/kaui/admin_tenants_controller.rb +147 -142
  30. data/app/controllers/kaui/bundle_tags_controller.rb +9 -33
  31. data/app/controllers/kaui/bundles_controller.rb +23 -62
  32. data/app/controllers/kaui/chargebacks_controller.rb +5 -11
  33. data/app/controllers/kaui/charges_controller.rb +11 -18
  34. data/app/controllers/kaui/credits_controller.rb +19 -22
  35. data/app/controllers/kaui/custom_fields_controller.rb +44 -16
  36. data/app/controllers/kaui/engine_controller.rb +56 -3
  37. data/app/controllers/kaui/engine_controller_util.rb +75 -1
  38. data/app/controllers/kaui/home_controller.rb +19 -0
  39. data/app/controllers/kaui/invoice_items_controller.rb +16 -21
  40. data/app/controllers/kaui/invoices_controller.rb +31 -53
  41. data/app/controllers/kaui/payment_methods_controller.rb +14 -46
  42. data/app/controllers/kaui/payments_controller.rb +60 -69
  43. data/app/controllers/kaui/refunds_controller.rb +11 -25
  44. data/app/controllers/kaui/registrations_controller.rb +38 -0
  45. data/app/controllers/kaui/subscriptions_controller.rb +82 -95
  46. data/app/controllers/kaui/tag_definitions_controller.rb +1 -5
  47. data/app/controllers/kaui/tags_controller.rb +17 -17
  48. data/app/controllers/kaui/tenants_controller.rb +38 -55
  49. data/app/controllers/kaui/transactions_controller.rb +8 -15
  50. data/app/helpers/kaui/application_helper.rb +4 -0
  51. data/app/helpers/kaui/object_helper.rb +24 -0
  52. data/app/helpers/kaui/payment_method_helper.rb +9 -0
  53. data/app/helpers/kaui/subscription_helper.rb +1 -1
  54. data/app/helpers/kaui/uuid_helper.rb +1 -0
  55. data/app/models/kaui/ability.rb +7 -1
  56. data/app/models/kaui/account.rb +6 -2
  57. data/app/models/kaui/account_email.rb +10 -0
  58. data/app/models/kaui/allowed_user.rb +16 -4
  59. data/app/models/kaui/audit_log.rb +5 -3
  60. data/app/models/kaui/bundle.rb +6 -11
  61. data/app/models/kaui/credit.rb +3 -0
  62. data/app/models/kaui/invoice.rb +10 -15
  63. data/app/models/kaui/invoice_payment.rb +10 -13
  64. data/app/models/kaui/killbill_registerable.rb +7 -0
  65. data/app/models/kaui/payment.rb +19 -12
  66. data/app/models/kaui/payment_method.rb +9 -0
  67. data/app/models/kaui/payment_state.rb +52 -0
  68. data/app/models/kaui/tag.rb +14 -0
  69. data/app/models/kaui/tag_definition.rb +8 -2
  70. data/app/models/kaui/user.rb +5 -4
  71. data/app/views/kaui/account_emails/_account_emails_table.html.erb +12 -9
  72. data/app/views/kaui/account_emails/_form.html.erb +9 -9
  73. data/app/views/kaui/account_emails/new.html.erb +9 -2
  74. data/app/views/kaui/account_tags/_form.html.erb +20 -29
  75. data/app/views/kaui/account_tags/_form_bar.html.erb +21 -0
  76. data/app/views/kaui/account_tags/edit.html.erb +9 -4
  77. data/app/views/kaui/account_timelines/show.html.erb +204 -287
  78. data/app/views/kaui/accounts/_account_info.html.erb +108 -0
  79. data/app/views/kaui/accounts/_billing_info.html.erb +129 -0
  80. data/app/views/kaui/accounts/_form.html.erb +127 -115
  81. data/app/views/kaui/accounts/_payment_methods.html.erb +28 -0
  82. data/app/views/kaui/accounts/edit.html.erb +10 -0
  83. data/app/views/kaui/accounts/index.html.erb +38 -23
  84. data/app/views/kaui/accounts/new.html.erb +9 -4
  85. data/app/views/kaui/accounts/show.html.erb +4 -106
  86. data/app/views/kaui/admin_allowed_users/_form.html.erb +19 -0
  87. data/app/views/kaui/admin_allowed_users/index.html.erb +35 -18
  88. data/app/views/kaui/admin_allowed_users/new.html.erb +9 -21
  89. data/app/views/kaui/admin_allowed_users/show.html.erb +42 -50
  90. data/app/views/kaui/admin_tenants/_form.html.erb +25 -0
  91. data/app/views/kaui/admin_tenants/_tenants_table.html.erb +27 -0
  92. data/app/views/kaui/admin_tenants/index.html.erb +14 -23
  93. data/app/views/kaui/admin_tenants/new.html.erb +8 -37
  94. data/app/views/kaui/admin_tenants/show.html.erb +128 -113
  95. data/app/views/kaui/bundle_tags/_form.html.erb +20 -28
  96. data/app/views/kaui/bundle_tags/_form_bar.html.erb +21 -0
  97. data/app/views/kaui/bundle_tags/edit.html.erb +9 -4
  98. data/app/views/kaui/bundles/index.html.erb +76 -29
  99. data/app/views/kaui/bundles/transfer.html.erb +28 -28
  100. data/app/views/kaui/chargebacks/_form.html.erb +31 -29
  101. data/app/views/kaui/chargebacks/new.html.erb +9 -4
  102. data/app/views/kaui/charges/_form.html.erb +35 -59
  103. data/app/views/kaui/charges/new.html.erb +9 -4
  104. data/app/views/kaui/credits/_form.html.erb +32 -59
  105. data/app/views/kaui/credits/new.html.erb +9 -4
  106. data/app/views/kaui/custom_fields/_form.html.erb +31 -0
  107. data/app/views/kaui/custom_fields/index.html.erb +33 -20
  108. data/app/views/kaui/custom_fields/new.html.erb +10 -0
  109. data/app/views/kaui/home/index.html.erb +12 -9
  110. data/app/views/kaui/invoice_items/_edit_form.html.erb +30 -0
  111. data/app/views/kaui/invoice_items/edit.html.erb +10 -91
  112. data/app/views/kaui/invoices/_invoice_table.html.erb +113 -0
  113. data/app/views/kaui/invoices/index.html.erb +31 -22
  114. data/app/views/kaui/invoices/show.html.erb +77 -91
  115. data/app/views/kaui/layouts/kaui_account_navbar.html.erb +11 -0
  116. data/app/views/kaui/layouts/kaui_application.html.erb +14 -53
  117. data/app/views/kaui/layouts/kaui_flash.html.erb +17 -0
  118. data/app/views/kaui/layouts/kaui_footer.html.erb +2 -0
  119. data/app/views/kaui/layouts/kaui_header.html.erb +17 -0
  120. data/app/views/kaui/layouts/kaui_navbar.html.erb +75 -0
  121. data/app/views/kaui/payment_methods/_form.html.erb +26 -23
  122. data/app/views/kaui/payment_methods/_new_creditcard_payment_method.html.erb +46 -41
  123. data/app/views/kaui/payment_methods/_payment_methods_details_table.html.erb +25 -0
  124. data/app/views/kaui/payment_methods/_payment_methods_table.html.erb +50 -52
  125. data/app/views/kaui/payment_methods/new.html.erb +9 -4
  126. data/app/views/kaui/payments/_form.html.erb +55 -0
  127. data/app/views/kaui/payments/_payment_table.html.erb +117 -0
  128. data/app/views/kaui/payments/index.html.erb +31 -22
  129. data/app/views/kaui/payments/new.html.erb +9 -92
  130. data/app/views/kaui/payments/show.html.erb +38 -2
  131. data/app/views/kaui/refunds/_form.html.erb +240 -0
  132. data/app/views/kaui/refunds/new.html.erb +8 -280
  133. data/app/views/kaui/registrations/_form.html.erb +19 -0
  134. data/app/views/kaui/registrations/new.html.erb +10 -0
  135. data/app/views/kaui/sessions/_form.html.erb +19 -0
  136. data/app/views/kaui/sessions/new.html.erb +7 -18
  137. data/app/views/kaui/subscriptions/_edit_form.html.erb +26 -0
  138. data/app/views/kaui/subscriptions/_form.html.erb +34 -31
  139. data/app/views/kaui/subscriptions/_subscriptions_table.html.erb +37 -24
  140. data/app/views/kaui/subscriptions/edit.html.erb +10 -30
  141. data/app/views/kaui/subscriptions/new.html.erb +14 -11
  142. data/app/views/kaui/tag_definitions/_form.html.erb +14 -11
  143. data/app/views/kaui/tag_definitions/index.html.erb +56 -30
  144. data/app/views/kaui/tag_definitions/new.html.erb +9 -2
  145. data/app/views/kaui/tags/_tags_table.html.erb +7 -10
  146. data/app/views/kaui/tags/index.html.erb +29 -20
  147. data/app/views/kaui/tenants/_form.html.erb +13 -0
  148. data/app/views/kaui/tenants/index.html.erb +9 -16
  149. data/app/views/kaui/transactions/_form.html.erb +47 -67
  150. data/app/views/kaui/transactions/new.html.erb +9 -2
  151. data/config/initializers/killbill_registerable.rb +4 -0
  152. data/config/routes.rb +88 -93
  153. data/kaui.gemspec +11 -2
  154. data/lib/kaui/engine.rb +6 -4
  155. data/lib/kaui/version.rb +1 -1
  156. data/lib/kaui.rb +24 -1
  157. data/test/dummy/config/application.rb +2 -0
  158. data/test/dummy/config/database.yml +6 -3
  159. data/test/dummy/config/initializers/killbill_client.rb +0 -2
  160. data/test/fixtures/catalog-v1.xml +74 -0
  161. data/test/fixtures/catalog_translation_fr-v1.properties +1 -0
  162. data/test/fixtures/invoice_template-v1.html +100 -0
  163. data/test/fixtures/invoice_translation_fr-v1.properties +23 -0
  164. data/test/fixtures/overdue-v1.xml +49 -0
  165. data/test/fixtures/stripe.yml +2 -0
  166. data/test/functional/kaui/account_emails_controller_test.rb +35 -8
  167. data/test/functional/kaui/account_tags_controller_test.rb +8 -8
  168. data/test/functional/kaui/account_timelines_controller_test.rb +6 -7
  169. data/test/functional/kaui/accounts_controller_test.rb +72 -10
  170. data/test/functional/kaui/admin_allowed_users_controller_test.rb +6 -5
  171. data/test/functional/kaui/admin_tenants_controller_test.rb +104 -48
  172. data/test/functional/kaui/bundle_tags_controller_test.rb +14 -9
  173. data/test/functional/kaui/bundles_controller_test.rb +59 -23
  174. data/test/functional/kaui/chargebacks_controller_test.rb +29 -7
  175. data/test/functional/kaui/charges_controller_test.rb +31 -10
  176. data/test/functional/kaui/credits_controller_test.rb +25 -6
  177. data/test/functional/kaui/custom_fields_controller_test.rb +25 -1
  178. data/test/functional/kaui/functional_test_helper_nosetup.rb +6 -4
  179. data/test/functional/kaui/home_controller_test.rb +24 -0
  180. data/test/functional/kaui/invoice_items_controller_test.rb +56 -8
  181. data/test/functional/kaui/invoices_controller_test.rb +27 -18
  182. data/test/functional/kaui/payment_methods_controller_test.rb +2 -22
  183. data/test/functional/kaui/payments_controller_test.rb +8 -3
  184. data/test/functional/kaui/refunds_controller_test.rb +40 -21
  185. data/test/functional/kaui/subscriptions_controller_test.rb +77 -24
  186. data/test/functional/kaui/tag_definitions_controller_test.rb +1 -7
  187. data/test/functional/kaui/tags_controller_test.rb +1 -1
  188. data/test/functional/kaui/tenants_controller_test.rb +9 -9
  189. data/test/functional/kaui/transactions_controller_test.rb +41 -16
  190. data/test/integration/kaui/integration_test_helper.rb +0 -1
  191. data/test/integration/kaui/navigation_test.rb +4 -6
  192. data/test/test_helper.rb +2 -0
  193. metadata +155 -28
  194. data/Gemfile.lock +0 -210
  195. data/app/assets/stylesheets/bootstrap_and_overrides.css +0 -7
  196. data/app/assets/stylesheets/datatables.scss +0 -14
  197. data/app/assets/stylesheets/layout.scss +0 -19
  198. data/app/views/kaui/account_emails/show.html.erb +0 -25
  199. data/app/views/kaui/account_tags/_account_tags_table.html.erb +0 -32
  200. data/app/views/kaui/account_tags/show.html.erb +0 -6
  201. data/app/views/kaui/account_timelines/index.html.erb +0 -14
  202. data/app/views/kaui/bundle_tags/_bundle_tags_table.html.erb +0 -31
  203. data/app/views/kaui/bundle_tags/show.html.erb +0 -6
  204. data/app/views/kaui/bundles/show.html.erb +0 -18
  205. data/app/views/kaui/payment_methods/index.html.erb +0 -30
  206. data/app/views/kaui/payment_methods/show.html.erb +0 -3
  207. data/app/views/kaui/payments/_payments_table.html.erb +0 -41
  208. data/app/views/kaui/subscriptions/index.html.erb +0 -15
  209. data/app/views/kaui/subscriptions/show.html.erb +0 -33
  210. data/app/views/kaui/tag_definitions/show.html.erb +0 -15
  211. data/vendor/assets/images/img/glyphicons-halflings-white.png +0 -0
  212. data/vendor/assets/images/img/glyphicons-halflings.png +0 -0
  213. data/vendor/assets/stylesheets/css/bootstrap-datepicker.cd46d38.css +0 -274
@@ -1,6 +0,0 @@
1
- <%= render 'account_tags_table' %>
2
-
3
- <% if can? :add, Kaui::Tag or can? :remove, Kaui::Tag %>
4
- <%= link_to 'Add/Remove Tags', kaui_engine.edit_account_tags_path(:account_id => @account.account_id), :class => 'btn' %>
5
- <% end %>
6
- <%= link_to 'Go to account', kaui_engine.account_path(:id => @account.account_id), :class => 'btn' %>
@@ -1,14 +0,0 @@
1
- <%= form_tag account_timelines_path, :class => "form-horizontal", :method => :get do %>
2
- <fieldset>
3
- <legend>Please enter account id</legend>
4
- <div class="control-group">
5
- <label class="control-label" for="account_id">Account</label>
6
- <div class="controls">
7
- <%= text_field_tag 'account_id', nil, :class => "input-xlarge", :id => "account_id", :placeholder => "accountId" %>
8
- </div>
9
- </div>
10
- <div class="form-actions">
11
- <%= button_tag "Search", :class =>"btn btn-primary" %>
12
- </div>
13
- </fieldset>
14
- <% end %>
@@ -1,31 +0,0 @@
1
- <div class="page-header">
2
- <h3>Tags for <%= (link_to @bundle.external_key, bundle_path(@bundle.bundle_id)) if @bundle.present? %></h3>
3
- </div>
4
- <table class="table table-condensed table-striped data-table">
5
- <thead>
6
- <tr>
7
- <th>Tag Name</th>
8
- <th>Executed date</th>
9
- <th>Execution type</th>
10
- <th>Executed by</th>
11
- <th>Comments</th>
12
- </tr>
13
- </thead>
14
- <tbody>
15
- <% if @tags.present? %>
16
- <% @tags.each do |tag| %>
17
- <% tag.audit_logs.each do |log| %>
18
- <tr>
19
- <td><%= link_to tag.tag_definition_name, tag_definition_path(:id => tag.tag_definition_id) %></td>
20
- <td><%= format_date(log.change_date, @account.time_zone).html_safe if log.change_date.present? %></td>
21
- <td><span
22
- <% if log.change_type != 'INSERT' %>class='alert-error'
23
- <% else %>class='alert-success' <% end %>><%= log.change_type %></span></td>
24
- <td><%= log.changed_by %></td>
25
- <td><%= log.reason_code %> <%= log.comments %></td>
26
- </tr>
27
- <% end %>
28
- <% end %>
29
- <% end %>
30
- </tbody>
31
- </table>
@@ -1,6 +0,0 @@
1
- <%= render 'bundle_tags_table' %>
2
-
3
- <% if can? :add, Kaui::Tag or can? :remove, Kaui::Tag %>
4
- <%= link_to 'Add/Remove Tags', kaui_engine.edit_bundle_tags_path(:bundle_id => @bundle.bundle_id), :class => 'btn' %>
5
- <% end %>
6
- <%= link_to 'Go to bundle', kaui_engine.bundle_path(:id => @bundle.bundle_id), :class => 'btn' %>
@@ -1,18 +0,0 @@
1
- <dl class="dl-horizontal">
2
- <dt>Id:</dt>
3
- <dd><%= @bundle.bundle_id %>&nbsp;</dd>
4
- <dt>Account:</dt>
5
- <dd><%= @account.name %>&nbsp;</dd>
6
- <dd><%= link_to @account.email, Kaui.account_home_path.call(@account.external_key) %>&nbsp;</dd>
7
- <dt>Bundle key:</dt>
8
- <dd>
9
- <%= @bundle.external_key %>&nbsp;
10
- <%= link_to 'Transfer Ownership', kaui_engine.transfer_bundle_path(@bundle.bundle_id), :class => 'btn btn-xs' %>
11
- </dd>
12
- <%= render :partial => 'kaui/tags/tags_table',
13
- :locals => {:tags => @tags, :tags_url_or_path => kaui_engine.edit_bundle_tags_path(:params => {:bundle_id => @bundle.bundle_id}), :tags_show_path => kaui_engine.bundle_tags_path(:bundle_id => @bundle.bundle_id)} %>
14
- <% if @bundle.subscriptions.present? %>
15
- <%= render :partial => 'kaui/subscriptions/subscriptions_table', :locals => {:subscriptions => @bundle.subscriptions, :account => @account} %>
16
- <% end %>
17
- </dl>
18
- <%= link_to 'Go to account', kaui_engine.account_path(:id => @account.account_id), :class => 'btn' %>
@@ -1,30 +0,0 @@
1
- <h3 class="pageHeader">Payment Methods</h3>
2
-
3
- <table id="paymentMethods-table" class="table table-condensed">
4
- <thead>
5
- <tr>
6
- <th>Payment Method ID</th>
7
- <th>Account ID</th>
8
- <th>External ID</th>
9
- <th>CC name</th>
10
- <th>CC last 4</th>
11
- </tr>
12
- </thead>
13
- <tbody>
14
- <tr>
15
- <td colspan="1" class="dataTables_empty">Loading data from server</td>
16
- </tr>
17
- </tbody>
18
- </table>
19
-
20
- <%= javascript_tag do %>
21
- $(document).ready(function() {
22
- $('#paymentMethods-table').dataTable({
23
- "sDom": "<'row'<'col-md-6'l><'col-md-6'f>r>t<'row'<'col-md-6'i><'col-md-6'p>>",
24
- "sPaginationType": "simple_numbers",
25
- "bProcessing": true,
26
- "bServerSide": true,
27
- "sAjaxSource": "<%= payment_methods_pagination_path :format => :json %>"
28
- });
29
- });
30
- <% end %>
@@ -1,3 +0,0 @@
1
- <%= render :partial => 'payment_methods_table', :locals => {:payment_methods => @payment_methods} %>
2
-
3
- <%= link_to 'Go to Account', kaui_engine.account_path(@payment_methods.first.account_id), :class => 'btn', :target => '_blank' %>
@@ -1,41 +0,0 @@
1
- <div class="page-header">
2
- <h3>Payments</h3>
3
- </div>
4
- <table class="table table-condensed table-striped data-table">
5
- <thead>
6
- <tr>
7
- <th>Effective date</th>
8
- <th>Transaction type</th>
9
- <th>Amount</th>
10
- <th>Payment method</th>
11
- <th>First / Second reference id</th>
12
- <th>Status</th>
13
- <th>Gateway message</th>
14
- </tr>
15
- </thead>
16
- <tbody>
17
- <% if @payments.present? %>
18
- <% @payments.each do |payment| %>
19
- <% payment.transactions.each do |transaction| %>
20
- <tr>
21
- <td><%= format_date(transaction.effective_date, @account.time_zone).html_safe if transaction.effective_date.present? %></td>
22
- <td><%= transaction.transaction_type %></td>
23
- <td><% if transaction.amount.present? %><%= humanized_money_with_symbol Kaui::Transaction.amount_to_money(transaction) %>
24
- (<%= transaction.currency %>)<% end %>
25
- </td>
26
- <td><%= link_to truncate_uuid(@payment_methods[transaction.payment_id].payment_method_id), kaui_engine.payment_method_path(@payment_methods[transaction.payment_id].payment_method_id) if @payment_methods.present? and @payment_methods[transaction.payment_id].present? %></td>
27
- <td><%= transaction.first_payment_reference_id %> <%= " / " if transaction.second_payment_reference_id.present? %> <%= transaction.second_payment_reference_id %></td>
28
- <td>
29
- <span
30
- <% if transaction.status != 'SUCCESS' %>class='alert-error'
31
- <% else %>class='alert-success' <% end %>>
32
- <%= transaction.status %> <%= transaction.gateway_error_code unless transaction.status == 'SUCCESS' %> <%= transaction.gateway_error_msg %>
33
- </span>
34
- </td>
35
- <td><%= transaction.gateway_error_msg %></td>
36
- </tr>
37
- <% end %>
38
- <% end %>
39
- <% end %>
40
- </tbody>
41
- </table>
@@ -1,15 +0,0 @@
1
- <%= form_tag subscriptions_path, :class => 'form-horizontal', :method => :get do %>
2
- <fieldset>
3
- <legend>Please enter subscription id</legend>
4
- <div class="control-group">
5
- <label class="control-label" for="subscription_id">Subscription</label>
6
-
7
- <div class="controls">
8
- <%= text_field_tag 'subscription_id', nil, :class => 'input-xlarge', :id => 'subscription_id' %>
9
- </div>
10
- </div>
11
- <div class="form-actions">
12
- <%= button_tag 'Search', :class => 'btn btn-primary' %>
13
- </div>
14
- </fieldset>
15
- <% end %>
@@ -1,33 +0,0 @@
1
- <div class="page-header">
2
- <h2>Subscription <%= @subscription.subscription_id %></h2>
3
- </div>
4
- <dl class="dl-horizontal">
5
- <dt>Category</dt>
6
- <dd><%= humanized_product_category(@subscription) || '&nbsp;'.html_safe %></dd>
7
- <dt>Product</dt>
8
- <dd><%= humanized_product_name(@subscription) || '&nbsp;'.html_safe %></dd>
9
- <dt>Period</dt>
10
- <dd><%= humanized_billing_period(@subscription) || '&nbsp;'.html_safe %></dd>
11
- <dt>Charged through</dt>
12
- <dd><%= humanized_charged_through_date(@subscription, @account) || '&nbsp;'.html_safe %>
13
- <dt>Price list</dt>
14
- <dd><%= humanized_price_list(@subscription) || '&nbsp;'.html_safe %></dd>
15
- <dt>Start date</dt>
16
- <dd><%= humanized_start_date(@subscription, @account) || '&nbsp;'.html_safe %></dd>
17
- <dt>Cancelled date</dt>
18
- <dd><%= humanized_cancelled_date(@subscription, @account) || '&nbsp;'.html_safe %></dd>
19
- <dt>Billing start date</dt>
20
- <dd><%= humanized_billing_start_date(@subscription, @account) || '&nbsp;'.html_safe %></dd>
21
- <dt>Billing end date</dt>
22
- <dd><%= humanized_billing_end_date(@subscription, @account) || '&nbsp;'.html_safe %></dd>
23
- </dl>
24
- <hr/>
25
- <% if is_future_cancelled?(@subscription) %>
26
- <%= link_to 'Reinstate', kaui_engine.reinstate_subscription_path(:id => sub.subscription_id), :method => :put, :class => 'btn btn-xs' %>
27
- <% elsif is_cancelled?(@subscription) %>
28
- <%= link_to 'Change', kaui_engine.edit_subscription_path(@subscription.subscription_id), :class => 'btn btn-xs' %>
29
- <%= link_to 'Cancel', kaui_engine.subscription_path(@subscription.subscription_id), :method => :delete, :confirm => 'Are you sure?', :class => 'btn btn-xs' %>
30
- <%= link_to 'Add Addons', kaui_engine.new_subscription_path(:params => {:bundle_id => @subscription.bundle_id, :base_product_name => @subscription.product_name, :product_category => 'ADD_ON'}), :class => 'btn btn-xs' %>
31
- <% end %>
32
- &nbsp;
33
- <%= link_to 'Go to bundle', kaui_engine.bundle_path(@subscription.bundle_id), :class => 'btn btn-xs' %>
@@ -1,15 +0,0 @@
1
- <h2>Tag Definition</h2>
2
- <dl class='dl-horizontal'>
3
- <dt>Id:</dt>
4
- <dd><%= @tag_definition.id %>&nbsp;</dd>
5
- <dt>Name:</dt>
6
- <dd><%= @tag_definition.name %>&nbsp;</dd>
7
- <dt>Description:</dt>
8
- <dd><%= @tag_definition.description %>&nbsp;</dd>
9
- <dt>System tag?:</dt>
10
- <dd><%= @tag_definition.is_system_tag? %>&nbsp;</dd>
11
- <dt>Applicable types:</dt>
12
- <dd><%= @tag_definition.applicable_object_types.join(', ') %>&nbsp;</dd>
13
- </dl>
14
-
15
- <%= link_to 'Tag definitions', kaui_engine.tag_definitions_path, :class => 'btn' %>
@@ -1,274 +0,0 @@
1
- /*!
2
- * Datepicker for Bootstrap
3
- *
4
- * Copyright 2012 Stefan Petre
5
- * Improvements by Andrew Rowls
6
- * Licensed under the Apache License v2.0
7
- * http://www.apache.org/licenses/LICENSE-2.0
8
- *
9
- */
10
- .datepicker {
11
- top: 0;
12
- left: 0;
13
- padding: 4px;
14
- margin-top: 1px;
15
- -webkit-border-radius: 4px;
16
- -moz-border-radius: 4px;
17
- border-radius: 4px;
18
- /*.dow {
19
- border-top: 1px solid #ddd !important;
20
- }*/
21
-
22
- }
23
- .datepicker:before {
24
- content: '';
25
- display: inline-block;
26
- border-left: 7px solid transparent;
27
- border-right: 7px solid transparent;
28
- border-bottom: 7px solid #ccc;
29
- border-bottom-color: rgba(0, 0, 0, 0.2);
30
- position: absolute;
31
- top: -7px;
32
- left: 6px;
33
- }
34
- .datepicker:after {
35
- content: '';
36
- display: inline-block;
37
- border-left: 6px solid transparent;
38
- border-right: 6px solid transparent;
39
- border-bottom: 6px solid #ffffff;
40
- position: absolute;
41
- top: -6px;
42
- left: 7px;
43
- }
44
- .datepicker > div {
45
- display: none;
46
- }
47
- .datepicker.days div.datepicker-days {
48
- display: block;
49
- }
50
- .datepicker.months div.datepicker-months {
51
- display: block;
52
- }
53
- .datepicker.years div.datepicker-years {
54
- display: block;
55
- }
56
- .datepicker table {
57
- margin: 0;
58
- }
59
- .datepicker td,
60
- .datepicker th {
61
- text-align: center;
62
- width: 20px;
63
- height: 20px;
64
- -webkit-border-radius: 4px;
65
- -moz-border-radius: 4px;
66
- border-radius: 4px;
67
- }
68
- .datepicker td.day:hover {
69
- background: #eeeeee;
70
- cursor: pointer;
71
- }
72
- .datepicker td.old,
73
- .datepicker td.new {
74
- color: #999999;
75
- }
76
- .datepicker td.disabled,
77
- .datepicker td.disabled:hover {
78
- background: none;
79
- color: #999999;
80
- cursor: default;
81
- }
82
- .datepicker td.today,
83
- .datepicker td.today:hover,
84
- .datepicker td.today.disabled,
85
- .datepicker td.today.disabled:hover {
86
- background-color: #fde19a;
87
- background-image: -moz-linear-gradient(top, #fdd49a, #fdf59a);
88
- background-image: -ms-linear-gradient(top, #fdd49a, #fdf59a);
89
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fdd49a), to(#fdf59a));
90
- background-image: -webkit-linear-gradient(top, #fdd49a, #fdf59a);
91
- background-image: -o-linear-gradient(top, #fdd49a, #fdf59a);
92
- background-image: linear-gradient(top, #fdd49a, #fdf59a);
93
- background-repeat: repeat-x;
94
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fdd49a', endColorstr='#fdf59a', GradientType=0);
95
- border-color: #fdf59a #fdf59a #fbed50;
96
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
97
- filter: progid:dximagetransform.microsoft.gradient(enabled=false);
98
- }
99
- .datepicker td.today:hover,
100
- .datepicker td.today:hover:hover,
101
- .datepicker td.today.disabled:hover,
102
- .datepicker td.today.disabled:hover:hover,
103
- .datepicker td.today:active,
104
- .datepicker td.today:hover:active,
105
- .datepicker td.today.disabled:active,
106
- .datepicker td.today.disabled:hover:active,
107
- .datepicker td.today.active,
108
- .datepicker td.today:hover.active,
109
- .datepicker td.today.disabled.active,
110
- .datepicker td.today.disabled:hover.active,
111
- .datepicker td.today.disabled,
112
- .datepicker td.today:hover.disabled,
113
- .datepicker td.today.disabled.disabled,
114
- .datepicker td.today.disabled:hover.disabled,
115
- .datepicker td.today[disabled],
116
- .datepicker td.today:hover[disabled],
117
- .datepicker td.today.disabled[disabled],
118
- .datepicker td.today.disabled:hover[disabled] {
119
- background-color: #fdf59a;
120
- }
121
- .datepicker td.today:active,
122
- .datepicker td.today:hover:active,
123
- .datepicker td.today.disabled:active,
124
- .datepicker td.today.disabled:hover:active,
125
- .datepicker td.today.active,
126
- .datepicker td.today:hover.active,
127
- .datepicker td.today.disabled.active,
128
- .datepicker td.today.disabled:hover.active {
129
- background-color: #fbf069 \9;
130
- }
131
- .datepicker td.active,
132
- .datepicker td.active:hover,
133
- .datepicker td.active.disabled,
134
- .datepicker td.active.disabled:hover {
135
- background-color: #006dcc;
136
- background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
137
- background-image: -ms-linear-gradient(top, #0088cc, #0044cc);
138
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
139
- background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
140
- background-image: -o-linear-gradient(top, #0088cc, #0044cc);
141
- background-image: linear-gradient(top, #0088cc, #0044cc);
142
- background-repeat: repeat-x;
143
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);
144
- border-color: #0044cc #0044cc #002a80;
145
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
146
- filter: progid:dximagetransform.microsoft.gradient(enabled=false);
147
- color: #fff;
148
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
149
- }
150
- .datepicker td.active:hover,
151
- .datepicker td.active:hover:hover,
152
- .datepicker td.active.disabled:hover,
153
- .datepicker td.active.disabled:hover:hover,
154
- .datepicker td.active:active,
155
- .datepicker td.active:hover:active,
156
- .datepicker td.active.disabled:active,
157
- .datepicker td.active.disabled:hover:active,
158
- .datepicker td.active.active,
159
- .datepicker td.active:hover.active,
160
- .datepicker td.active.disabled.active,
161
- .datepicker td.active.disabled:hover.active,
162
- .datepicker td.active.disabled,
163
- .datepicker td.active:hover.disabled,
164
- .datepicker td.active.disabled.disabled,
165
- .datepicker td.active.disabled:hover.disabled,
166
- .datepicker td.active[disabled],
167
- .datepicker td.active:hover[disabled],
168
- .datepicker td.active.disabled[disabled],
169
- .datepicker td.active.disabled:hover[disabled] {
170
- background-color: #0044cc;
171
- }
172
- .datepicker td.active:active,
173
- .datepicker td.active:hover:active,
174
- .datepicker td.active.disabled:active,
175
- .datepicker td.active.disabled:hover:active,
176
- .datepicker td.active.active,
177
- .datepicker td.active:hover.active,
178
- .datepicker td.active.disabled.active,
179
- .datepicker td.active.disabled:hover.active {
180
- background-color: #003399 \9;
181
- }
182
- .datepicker td span {
183
- display: block;
184
- width: 23%;
185
- height: 54px;
186
- line-height: 54px;
187
- float: left;
188
- margin: 1%;
189
- cursor: pointer;
190
- -webkit-border-radius: 4px;
191
- -moz-border-radius: 4px;
192
- border-radius: 4px;
193
- }
194
- .datepicker td span:hover {
195
- background: #eeeeee;
196
- }
197
- .datepicker td span.disabled,
198
- .datepicker td span.disabled:hover {
199
- background: none;
200
- color: #999999;
201
- cursor: default;
202
- }
203
- .datepicker td span.active,
204
- .datepicker td span.active:hover,
205
- .datepicker td span.active.disabled,
206
- .datepicker td span.active.disabled:hover {
207
- background-color: #006dcc;
208
- background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
209
- background-image: -ms-linear-gradient(top, #0088cc, #0044cc);
210
- background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
211
- background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
212
- background-image: -o-linear-gradient(top, #0088cc, #0044cc);
213
- background-image: linear-gradient(top, #0088cc, #0044cc);
214
- background-repeat: repeat-x;
215
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);
216
- border-color: #0044cc #0044cc #002a80;
217
- border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
218
- filter: progid:dximagetransform.microsoft.gradient(enabled=false);
219
- color: #fff;
220
- text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
221
- }
222
- .datepicker td span.active:hover,
223
- .datepicker td span.active:hover:hover,
224
- .datepicker td span.active.disabled:hover,
225
- .datepicker td span.active.disabled:hover:hover,
226
- .datepicker td span.active:active,
227
- .datepicker td span.active:hover:active,
228
- .datepicker td span.active.disabled:active,
229
- .datepicker td span.active.disabled:hover:active,
230
- .datepicker td span.active.active,
231
- .datepicker td span.active:hover.active,
232
- .datepicker td span.active.disabled.active,
233
- .datepicker td span.active.disabled:hover.active,
234
- .datepicker td span.active.disabled,
235
- .datepicker td span.active:hover.disabled,
236
- .datepicker td span.active.disabled.disabled,
237
- .datepicker td span.active.disabled:hover.disabled,
238
- .datepicker td span.active[disabled],
239
- .datepicker td span.active:hover[disabled],
240
- .datepicker td span.active.disabled[disabled],
241
- .datepicker td span.active.disabled:hover[disabled] {
242
- background-color: #0044cc;
243
- }
244
- .datepicker td span.active:active,
245
- .datepicker td span.active:hover:active,
246
- .datepicker td span.active.disabled:active,
247
- .datepicker td span.active.disabled:hover:active,
248
- .datepicker td span.active.active,
249
- .datepicker td span.active:hover.active,
250
- .datepicker td span.active.disabled.active,
251
- .datepicker td span.active.disabled:hover.active {
252
- background-color: #003399 \9;
253
- }
254
- .datepicker td span.old {
255
- color: #999999;
256
- }
257
- .datepicker th.switch {
258
- width: 145px;
259
- }
260
- .datepicker thead tr:first-child th,
261
- .datepicker tfoot tr:first-child th {
262
- cursor: pointer;
263
- }
264
- .datepicker thead tr:first-child th:hover,
265
- .datepicker tfoot tr:first-child th:hover {
266
- background: #eeeeee;
267
- }
268
- .input-group.date .input-group-addon i,
269
- .input-group.date .input-group-addon i {
270
- display: block;
271
- cursor: pointer;
272
- width: 16px;
273
- height: 16px;
274
- }