kaui 3.0.9 → 4.0.0
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 +4 -4
- data/app/assets/images/kaui/account/authorize.svg +4 -0
- data/app/assets/images/kaui/account/credit.svg +4 -0
- data/app/assets/images/kaui/account/down-arrow.svg +3 -0
- data/app/assets/images/kaui/account/edit.svg +4 -0
- data/app/assets/images/kaui/account/pay-all.svg +5 -0
- data/app/assets/images/kaui/account/plus.svg +3 -0
- data/app/assets/images/kaui/account/purchase.svg +5 -0
- data/app/assets/images/kaui/account/refresh.svg +5 -0
- data/app/assets/images/kaui/arrow.svg +3 -0
- data/app/assets/images/kaui/card.svg +5 -0
- data/app/assets/images/kaui/copy.svg +12 -0
- data/app/assets/images/kaui/dashboard/aviate.svg +6 -0
- data/app/assets/images/kaui/dashboard/custom-field.svg +5 -0
- data/app/assets/images/kaui/dashboard/kaui-doc-img.png +0 -0
- data/app/assets/images/kaui/dashboard/plugins.svg +7 -0
- data/app/assets/images/kaui/dashboard/tags.svg +4 -0
- data/app/assets/images/kaui/dashboard/users.svg +6 -0
- data/app/assets/images/kaui/delete.svg +6 -0
- data/app/assets/images/kaui/dots.svg +5 -0
- data/app/assets/images/kaui/download-csv.svg +5 -0
- data/app/assets/images/kaui/download.svg +4 -0
- data/app/assets/images/kaui/eye-off.svg +9 -0
- data/app/assets/images/kaui/eye.svg +7 -0
- data/app/assets/images/kaui/file-upload.svg +34 -0
- data/app/assets/images/kaui/generate.svg +5 -0
- data/app/assets/images/kaui/header/account.svg +4 -0
- data/app/assets/images/kaui/header/cog_icon.svg +4 -0
- data/app/assets/images/kaui/header/invoice.svg +5 -0
- data/app/assets/images/kaui/header/payment.svg +5 -0
- data/app/assets/images/kaui/header/search_icon.svg +4 -0
- data/app/assets/images/kaui/header/subscription.svg +6 -0
- data/app/assets/images/kaui/logout.svg +4 -0
- data/app/assets/images/kaui/modal/close.svg +3 -0
- data/app/assets/images/kaui/modal/plus.svg +3 -0
- data/app/assets/images/kaui/modal/red-close.svg +10 -0
- data/app/assets/images/kaui/modal/search.svg +4 -0
- data/app/assets/images/kaui/payment/payment.svg +4 -0
- data/app/assets/images/kaui/payment/refund.svg +4 -0
- data/app/assets/images/kaui/plus.svg +3 -0
- data/app/assets/images/kaui/search.svg +4 -0
- data/app/assets/images/kaui/setting/account.svg +10 -0
- data/app/assets/images/kaui/setting/analytics.svg +7 -0
- data/app/assets/images/kaui/setting/custom-field.svg +5 -0
- data/app/assets/images/kaui/setting/e-notifications.svg +6 -0
- data/app/assets/images/kaui/setting/plugins.svg +7 -0
- data/app/assets/images/kaui/setting/plus.svg +3 -0
- data/app/assets/images/kaui/setting/reset.svg +4 -0
- data/app/assets/images/kaui/setting/tag-definitions.svg +5 -0
- data/app/assets/images/kaui/setting/tags.svg +4 -0
- data/app/assets/images/kaui/setting/tenants.svg +6 -0
- data/app/assets/images/kaui/setting/users.svg +6 -0
- data/app/assets/images/kaui/setting.svg +4 -0
- data/app/assets/images/kaui/sidebar/account.svg +4 -0
- data/app/assets/images/kaui/sidebar/audit.svg +5 -0
- data/app/assets/images/kaui/sidebar/custom-fields.svg +5 -0
- data/app/assets/images/kaui/sidebar/invoices.svg +5 -0
- data/app/assets/images/kaui/sidebar/payments.svg +5 -0
- data/app/assets/images/kaui/sidebar/queues.svg +5 -0
- data/app/assets/images/kaui/sidebar/subscriptions.svg +6 -0
- data/app/assets/images/kaui/sidebar/tags.svg +5 -0
- data/app/assets/images/kaui/sidebar/timeline.svg +5 -0
- data/app/assets/images/kaui/sign_in_background.svg +57 -0
- data/app/assets/images/kaui/sort-down.svg +3 -0
- data/app/assets/images/kaui/sort-up.svg +3 -0
- data/app/assets/images/kaui/subscription/add-on.svg +7 -0
- data/app/assets/images/kaui/subscription/cancel.svg +6 -0
- data/app/assets/images/kaui/subscription/change.svg +6 -0
- data/app/assets/images/kaui/subscription/date.svg +6 -0
- data/app/assets/images/kaui/subscription/pause.svg +4 -0
- data/app/assets/images/kaui/timeline/authorize.svg +5 -0
- data/app/assets/images/kaui/timeline/capture.svg +5 -0
- data/app/assets/images/kaui/timeline/chargeback.svg +3 -0
- data/app/assets/images/kaui/timeline/credit.svg +6 -0
- data/app/assets/images/kaui/timeline/invoice.svg +5 -0
- data/app/assets/images/kaui/timeline/purchase.svg +5 -0
- data/app/assets/images/kaui/timeline/refund.svg +4 -0
- data/app/assets/images/kaui/timeline/void.svg +4 -0
- data/app/assets/images/kaui/view-doc.svg +6 -0
- data/app/assets/images/kaui/warning.png +0 -0
- data/app/assets/javascripts/application.js +2 -2
- data/app/assets/javascripts/kaui/kaui_override.js +232 -0
- data/app/assets/javascripts/kaui/multi_functions_bar_utils.js +125 -24
- data/app/assets/stylesheets/application.css +13 -1
- data/app/assets/stylesheets/kaui/account.css +2028 -14
- data/app/assets/stylesheets/kaui/account_timeline.css +183 -0
- data/app/assets/stylesheets/kaui/admin_allowed_users.css +260 -0
- data/app/assets/stylesheets/kaui/audit.css +26 -16
- data/app/assets/stylesheets/kaui/audit_logs.css +443 -0
- data/app/assets/stylesheets/kaui/auth_pages.css +72 -0
- data/app/assets/stylesheets/kaui/breadcrumb.css +38 -0
- data/app/assets/stylesheets/kaui/chargebacks.css +118 -0
- data/app/assets/stylesheets/kaui/clock.css +103 -0
- data/app/assets/stylesheets/kaui/common.css +1744 -401
- data/app/assets/stylesheets/kaui/custom_fields.css +546 -0
- data/app/assets/stylesheets/kaui/dashboard.css +26 -0
- data/app/assets/stylesheets/kaui/datatable.css +114 -56
- data/app/assets/stylesheets/kaui/header.css +221 -114
- data/app/assets/stylesheets/kaui/home.css +89 -62
- data/app/assets/stylesheets/kaui/invoice.css +1061 -27
- data/app/assets/stylesheets/kaui/kaui.css +217 -145
- data/app/assets/stylesheets/kaui/overdue.css +5 -3
- data/app/assets/stylesheets/kaui/payment.css +1102 -13
- data/app/assets/stylesheets/kaui/queues.css +269 -0
- data/app/assets/stylesheets/kaui/refunds.css +185 -0
- data/app/assets/stylesheets/kaui/role_definitions.css +111 -0
- data/app/assets/stylesheets/kaui/sidebar.css +122 -0
- data/app/assets/stylesheets/kaui/subscription.css +677 -0
- data/app/assets/stylesheets/kaui/tag_definitions.css +524 -0
- data/app/assets/stylesheets/kaui/tags.css +592 -121
- data/app/assets/stylesheets/kaui/tenants.css +1478 -0
- data/app/assets/stylesheets/kaui/tooltip.css +9 -5
- data/app/assets/stylesheets/kaui/wallets.css +121 -0
- data/app/controllers/kaui/accounts_controller.rb +3 -2
- data/app/controllers/kaui/admin_tenants_controller.rb +33 -0
- data/app/controllers/kaui/custom_fields_controller.rb +1 -1
- data/app/controllers/kaui/engine_controller.rb +1 -2
- data/app/controllers/kaui/engine_controller_util.rb +5 -7
- data/app/controllers/kaui/home_controller.rb +24 -17
- data/app/controllers/kaui/invoices_controller.rb +4 -15
- data/app/controllers/kaui/payments_controller.rb +1 -1
- data/app/controllers/kaui/sessions_controller.rb +1 -0
- data/app/controllers/kaui/tag_definitions_controller.rb +1 -0
- data/app/helpers/kaui/account_helper.rb +13 -0
- data/app/helpers/kaui/plugin_helper.rb +27 -0
- data/app/views/kaui/account_custom_fields/index.html.erb +95 -29
- data/app/views/kaui/account_emails/_account_emails_table.html.erb +13 -3
- data/app/views/kaui/account_emails/_form.html.erb +23 -6
- data/app/views/kaui/account_emails/new.html.erb +12 -6
- data/app/views/kaui/account_tags/_form_bar.html.erb +10 -1
- data/app/views/kaui/account_tags/index.html.erb +103 -24
- data/app/views/kaui/account_timelines/_multi_functions_bar.html.erb +302 -69
- data/app/views/kaui/account_timelines/show.html.erb +360 -254
- data/app/views/kaui/accounts/_account_details.html.erb +165 -0
- data/app/views/kaui/accounts/_account_filterbar.html.erb +70 -80
- data/app/views/kaui/accounts/_add_parent.html.erb +26 -0
- data/app/views/kaui/accounts/_billing_details.html.erb +196 -0
- data/app/views/kaui/accounts/_close_account_modal.html.erb +62 -40
- data/app/views/kaui/accounts/_form_account.html.erb +157 -0
- data/app/views/kaui/accounts/_functions_bar.html.erb +606 -0
- data/app/views/kaui/accounts/_link_parent_modal.html.erb +1 -1
- data/app/views/kaui/accounts/_link_parent_to_modal.html.erb +62 -0
- data/app/views/kaui/accounts/_multi_functions_bar.html.erb +67 -28
- data/app/views/kaui/accounts/_payment_gateways.html.erb +43 -0
- data/app/views/kaui/accounts/_personal_details.html.erb +67 -0
- data/app/views/kaui/accounts/edit.html.erb +15 -9
- data/app/views/kaui/accounts/index.html.erb +77 -27
- data/app/views/kaui/accounts/new.html.erb +14 -8
- data/app/views/kaui/accounts/show.html.erb +17 -11
- data/app/views/kaui/admin/index.html.erb +44 -19
- data/app/views/kaui/admin_allowed_users/_form.html.erb +123 -31
- data/app/views/kaui/admin_allowed_users/edit.html.erb +15 -9
- data/app/views/kaui/admin_allowed_users/index.html.erb +150 -30
- data/app/views/kaui/admin_allowed_users/new.html.erb +14 -8
- data/app/views/kaui/admin_allowed_users/show.html.erb +137 -32
- data/app/views/kaui/admin_tenants/_add_allowed_user_modal.html.erb +42 -15
- data/app/views/kaui/admin_tenants/_clock.html.erb +72 -0
- data/app/views/kaui/admin_tenants/_form.html.erb +32 -20
- data/app/views/kaui/admin_tenants/_form_catalog_translation.erb +21 -8
- data/app/views/kaui/admin_tenants/_form_invoice_template.erb +25 -9
- data/app/views/kaui/admin_tenants/_form_invoice_translation.erb +36 -20
- data/app/views/kaui/admin_tenants/_form_plugin_config.erb +16 -20
- data/app/views/kaui/admin_tenants/_show_catalog.erb +13 -6
- data/app/views/kaui/admin_tenants/_show_catalog_simple.erb +95 -46
- data/app/views/kaui/admin_tenants/_show_catalog_xml.erb +62 -37
- data/app/views/kaui/admin_tenants/_show_overdue.erb +91 -75
- data/app/views/kaui/admin_tenants/_tenant_details.html.erb +106 -17
- data/app/views/kaui/admin_tenants/_tenants_table.html.erb +67 -6
- data/app/views/kaui/admin_tenants/_useful_links.html.erb +21 -16
- data/app/views/kaui/admin_tenants/index.html.erb +35 -11
- data/app/views/kaui/admin_tenants/index.js.erb +3 -0
- data/app/views/kaui/admin_tenants/new.html.erb +19 -13
- data/app/views/kaui/admin_tenants/new_catalog.html.erb +230 -98
- data/app/views/kaui/admin_tenants/new_overdue_config.html.erb +152 -80
- data/app/views/kaui/admin_tenants/new_plan_currency.html.erb +44 -30
- data/app/views/kaui/admin_tenants/show.html.erb +211 -78
- data/app/views/kaui/admin_tenants/show.js.erb +3 -0
- data/app/views/kaui/audit_logs/_multi_functions_bar.html.erb +298 -101
- data/app/views/kaui/audit_logs/index.html.erb +137 -38
- data/app/views/kaui/bundle_tags/_form_bar.html.erb +11 -4
- data/app/views/kaui/bundles/_bundle_details.html.erb +24 -12
- data/app/views/kaui/bundles/index.html.erb +79 -104
- data/app/views/kaui/bundles/pause_resume.html.erb +73 -38
- data/app/views/kaui/chargebacks/_form.html.erb +35 -18
- data/app/views/kaui/chargebacks/new.html.erb +16 -9
- data/app/views/kaui/charges/_form.html.erb +54 -42
- data/app/views/kaui/charges/new.html.erb +15 -8
- data/app/views/kaui/components/breadcrumb/_breadcrumb.html.erb +146 -0
- data/app/views/kaui/components/button/_button.html.erb +16 -0
- data/app/views/kaui/components/dashboard/_card.html.erb +15 -0
- data/app/views/kaui/components/dashboard/_setting.html.erb +15 -0
- data/app/views/kaui/components/form_input/_form_input.html.erb +4 -0
- data/app/views/kaui/components/form_password/_form_password.html.erb +6 -0
- data/app/views/kaui/components/logo/_logo.html.erb +1 -0
- data/app/views/kaui/components/menu_dropdown/_menu_dropdown.html.erb +59 -0
- data/app/views/kaui/components/search_input/_search_input.html.erb +81 -0
- data/app/views/kaui/credits/_form.html.erb +42 -25
- data/app/views/kaui/credits/new.html.erb +15 -8
- data/app/views/kaui/custom_fields/_form.html.erb +37 -25
- data/app/views/kaui/custom_fields/_list_bar.html.erb +11 -10
- data/app/views/kaui/custom_fields/index.html.erb +121 -27
- data/app/views/kaui/custom_fields/new.html.erb +19 -8
- data/app/views/kaui/errors/500.html.erb +1 -1
- data/app/views/kaui/home/index.html.erb +77 -30
- data/app/views/kaui/invoice_items/_edit_form.html.erb +30 -14
- data/app/views/kaui/invoice_items/edit.html.erb +15 -7
- data/app/views/kaui/invoice_tags/_form_bar.html.erb +13 -3
- data/app/views/kaui/invoices/_invoice_filterbar.html.erb +53 -69
- data/app/views/kaui/invoices/_invoice_table.html.erb +77 -92
- data/app/views/kaui/invoices/_multi_functions_bar.html.erb +351 -140
- data/app/views/kaui/invoices/index.html.erb +89 -27
- data/app/views/kaui/invoices/show.html.erb +392 -80
- data/app/views/kaui/layouts/kaui_account_sidebar.html.erb +42 -0
- data/app/views/kaui/layouts/kaui_application.html.erb +29 -15
- data/app/views/kaui/layouts/kaui_flash.html.erb +82 -31
- data/app/views/kaui/layouts/kaui_navbar.html.erb +109 -82
- data/app/views/kaui/layouts/kaui_setting_sidebar.html.erb +36 -0
- data/app/views/kaui/payment_methods/_form.html.erb +32 -11
- data/app/views/kaui/payment_methods/_new_creditcard_payment_method.html.erb +35 -34
- data/app/views/kaui/payment_methods/_payment_methods_details_table.html.erb +27 -29
- data/app/views/kaui/payment_methods/_payment_methods_table.html.erb +116 -38
- data/app/views/kaui/payment_methods/_plugin_properties.html.erb +19 -9
- data/app/views/kaui/payment_methods/new.html.erb +14 -8
- data/app/views/kaui/payments/_form.html.erb +30 -13
- data/app/views/kaui/payments/_multi_functions_bar.html.erb +351 -141
- data/app/views/kaui/payments/_payment_filterbar.html.erb +63 -79
- data/app/views/kaui/payments/_payment_invoice_table.html.erb +105 -0
- data/app/views/kaui/payments/_payment_table.html.erb +4 -67
- data/app/views/kaui/payments/index.html.erb +90 -26
- data/app/views/kaui/payments/new.html.erb +15 -8
- data/app/views/kaui/payments/show.html.erb +222 -28
- data/app/views/kaui/queues/index.html.erb +329 -111
- data/app/views/kaui/refunds/_form.html.erb +68 -45
- data/app/views/kaui/refunds/new.html.erb +15 -8
- data/app/views/kaui/role_definitions/_form.html.erb +104 -17
- data/app/views/kaui/role_definitions/new.html.erb +15 -8
- data/app/views/kaui/sessions/_form.html.erb +9 -19
- data/app/views/kaui/sessions/new.html.erb +10 -9
- data/app/views/kaui/subscriptions/_cancel_by_date_modal.html.erb +65 -35
- data/app/views/kaui/subscriptions/_edit_form.html.erb +66 -35
- data/app/views/kaui/subscriptions/_form.html.erb +63 -32
- data/app/views/kaui/subscriptions/_subscriptions_table.html.erb +215 -57
- data/app/views/kaui/subscriptions/edit.html.erb +19 -8
- data/app/views/kaui/subscriptions/edit_bcd.erb +46 -16
- data/app/views/kaui/subscriptions/new.html.erb +22 -15
- data/app/views/kaui/tag_definitions/_form.html.erb +51 -30
- data/app/views/kaui/tag_definitions/index.html.erb +151 -40
- data/app/views/kaui/tag_definitions/new.html.erb +15 -8
- data/app/views/kaui/tags/index.html.erb +136 -47
- data/app/views/kaui/tenants/_form.html.erb +8 -5
- data/app/views/kaui/tenants/index.html.erb +15 -9
- data/app/views/kaui/transactions/_control_plugin_names.html.erb +18 -10
- data/app/views/kaui/transactions/_form.html.erb +86 -25
- data/app/views/kaui/transactions/new.html.erb +15 -9
- data/config/routes.rb +1 -0
- data/lib/kaui/engine.rb +11 -0
- data/lib/kaui/version.rb +1 -1
- data/lib/kaui.rb +0 -1
- metadata +120 -2
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
<div class="account-details">
|
|
2
|
+
|
|
3
|
+
<div class="d-flex flex-column ">
|
|
4
|
+
|
|
5
|
+
<div class="account-details-header">
|
|
6
|
+
<div class="d-flex align-items-center">
|
|
7
|
+
<h2>Account Information</h2>
|
|
8
|
+
<% unless @account.parent_account_id.nil? %>
|
|
9
|
+
<span class="label label-info account-child-label">Child</span>
|
|
10
|
+
<% end %>
|
|
11
|
+
<% if @children.size > 0 %>
|
|
12
|
+
<span class="label label-info account-child-label">Parent</span>
|
|
13
|
+
<% end %>
|
|
14
|
+
</div>
|
|
15
|
+
<span class="link-view">
|
|
16
|
+
<% if can_close_account? && !account_closed? %>
|
|
17
|
+
<%= render "kaui/components/button/button", {
|
|
18
|
+
label: "Close Account",
|
|
19
|
+
variant: "outline-secondary d-inline-flex align-items-center gap-1",
|
|
20
|
+
type: "button",
|
|
21
|
+
html_class: "kaui-button dots-menu custom-hover",
|
|
22
|
+
html_options: {
|
|
23
|
+
data: {
|
|
24
|
+
bs_toggle: 'modal',
|
|
25
|
+
bs_target: '#closeAccountModal',
|
|
26
|
+
name: @account.name || '(not set)',
|
|
27
|
+
account_id: @account.account_id
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
} %>
|
|
31
|
+
<% end %>
|
|
32
|
+
<% if @children.size > 0 %>
|
|
33
|
+
<% if @children.size > 0 %>
|
|
34
|
+
<%= link_to kaui_engine.account_children_path(@account.account_id),
|
|
35
|
+
class: "btn btn-xs",
|
|
36
|
+
title: "View Children" do %>
|
|
37
|
+
<%= render "kaui/components/button/button", {
|
|
38
|
+
label: "Children (#{@children.size})",
|
|
39
|
+
variant: "outline-secondary d-inline-flex align-items-center gap-1",
|
|
40
|
+
type: "button",
|
|
41
|
+
html_class: "kaui-button custom-hover"
|
|
42
|
+
} %>
|
|
43
|
+
<% end %>
|
|
44
|
+
<% end %>
|
|
45
|
+
<% end %>
|
|
46
|
+
<span class="tag-bar tag-bar-breathe">
|
|
47
|
+
<% unless @available_tags.blank? %>
|
|
48
|
+
<div class="tag-select" onclick="void(0)">
|
|
49
|
+
<%= render "kaui/components/button/button", {
|
|
50
|
+
label: "Tag As",
|
|
51
|
+
trailing_icon: "kaui/account/down-arrow.svg",
|
|
52
|
+
variant: "outline-secondary d-inline-flex align-items-center gap-1",
|
|
53
|
+
type: "button",
|
|
54
|
+
html_class: "kaui-button custom-hover",
|
|
55
|
+
} %>
|
|
56
|
+
<div class="tag-select-box tag-as-select-box">
|
|
57
|
+
<strong>Tag As:</strong>
|
|
58
|
+
<%= render :partial => 'kaui/account_tags/form_bar',
|
|
59
|
+
:locals => {:account_id => @account.account_id,
|
|
60
|
+
:tag_names => @tags.map { |tag| tag.tag_definition_name },
|
|
61
|
+
:available_tags => @available_tags} %>
|
|
62
|
+
</div>
|
|
63
|
+
</div>
|
|
64
|
+
<% end %>
|
|
65
|
+
</span>
|
|
66
|
+
|
|
67
|
+
<% if can? :export, Kaui::AdminTenant %>
|
|
68
|
+
<%= link_to kaui_engine.export_account_path(@account.account_id),
|
|
69
|
+
:class => 'btn btn-xs',
|
|
70
|
+
:id => 'download_link',
|
|
71
|
+
:title => 'Export Account Data' do %>
|
|
72
|
+
<%= render "kaui/components/button/button", {
|
|
73
|
+
label: "Export",
|
|
74
|
+
icon: "kaui/download.svg",
|
|
75
|
+
variant: "outline-secondary d-inline-flex align-items-center gap-1",
|
|
76
|
+
type: "button",
|
|
77
|
+
html_class: "kaui-button custom-hover",
|
|
78
|
+
} %>
|
|
79
|
+
<% end %>
|
|
80
|
+
<% end %>
|
|
81
|
+
|
|
82
|
+
<% if can? :update, Kaui::Account %>
|
|
83
|
+
<%= link_to kaui_engine.edit_account_path(@account.account_id),
|
|
84
|
+
:class => 'btn btn-xs' do %>
|
|
85
|
+
<%= render "kaui/components/button/button", {
|
|
86
|
+
label: "Edit",
|
|
87
|
+
icon: "kaui/account/edit.svg",
|
|
88
|
+
variant: "outline-secondary d-inline-flex align-items-center gap-1",
|
|
89
|
+
type: "button",
|
|
90
|
+
html_class: "kaui-dropdown custom-hover",
|
|
91
|
+
} %>
|
|
92
|
+
<% end %>
|
|
93
|
+
<% end %>
|
|
94
|
+
|
|
95
|
+
</span>
|
|
96
|
+
</div>
|
|
97
|
+
|
|
98
|
+
<% unless @tags.find { |tag| tag.tag_definition_name == '__PARK__' }.nil? %>
|
|
99
|
+
<div class="alert alert-danger">
|
|
100
|
+
This account is parked, meaning the system detected inconsistent state which could lead to mis-billing. For safety, no more invoices will be generated.
|
|
101
|
+
<% if can? :trigger, Kaui::Invoice %>
|
|
102
|
+
Once the data is fixed, you can unpark it by manually <%= link_to 'triggering an invoice run', kaui_engine.trigger_invoice_path(params.to_h), :method => :post %>.
|
|
103
|
+
<% end %>
|
|
104
|
+
</div>
|
|
105
|
+
<% end %>
|
|
106
|
+
|
|
107
|
+
<div class="account-details-body">
|
|
108
|
+
<div class="row">
|
|
109
|
+
<div class="col-md-4 mb-3">
|
|
110
|
+
<h2 class="fw-semibold">ID</h2>
|
|
111
|
+
<p class="text-muted small mb-3 d-flex align-items-center">
|
|
112
|
+
<%= @account.account_id %>
|
|
113
|
+
<svg
|
|
114
|
+
class="mx-2"
|
|
115
|
+
width="16"
|
|
116
|
+
height="16"
|
|
117
|
+
viewBox="0 0 16 16"
|
|
118
|
+
fill="none"
|
|
119
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
120
|
+
style="cursor: pointer;"
|
|
121
|
+
onclick="navigator.clipboard.writeText('<%= @account.account_id %>')"
|
|
122
|
+
>
|
|
123
|
+
<path d="M11.3332 5.94864V2.66659C11.3332 1.93021 10.7363 1.33325 9.99989 1.33325H2.66659C1.93021 1.33325 1.33325 1.93021 1.33325 2.66659V9.99992C1.33325 10.7363 1.93021 11.3333 2.66659 11.3333H5.94864" stroke="#717680" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
124
|
+
<path d="M13.3333 6C14.0697 6 14.6666 6.59695 14.6666 7.33333M7.33331 6C6.59695 6 6 6.59695 6 7.33333M13.3333 14.6667C14.0697 14.6667 14.6666 14.0697 14.6666 13.3333M7.33331 14.6667C6.59695 14.6667 6 14.0697 6 13.3333M9.33331 6H11.3333M9.33331 14.6667H11.3333M14.6666 9.33333V11.3333M6 9.33333V11.3333" stroke="#717680" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
125
|
+
</svg>
|
|
126
|
+
</p>
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
<h2 class="fw-semibold">External Key</h2>
|
|
130
|
+
<p class="text-muted small mb-3"><%= @account.external_key %></p>
|
|
131
|
+
|
|
132
|
+
<h2 class="fw-semibold">Currency</h2>
|
|
133
|
+
<p class="text-muted small mb-3"><%= @account.currency %></p>
|
|
134
|
+
|
|
135
|
+
</div>
|
|
136
|
+
|
|
137
|
+
<div class="col-md-4 mb-3">
|
|
138
|
+
<h2 class="fw-semibold">Timezone</h2>
|
|
139
|
+
<p class="text-muted small mb-3"><%= @account.time_zone %></p>
|
|
140
|
+
|
|
141
|
+
<h2 class="fw-semibold">Locale</h2>
|
|
142
|
+
<p class="text-muted small mb-3"><%= @account.locale %></p>
|
|
143
|
+
|
|
144
|
+
<h2 class="fw-semibold">Notes</h2>
|
|
145
|
+
<% if @account.notes.present? %>
|
|
146
|
+
<p class="text-muted small mb-3"><%= @account.notes %></p>
|
|
147
|
+
<% else %>
|
|
148
|
+
<p class="text-muted small mb-3">N/A</p>
|
|
149
|
+
<% end %>
|
|
150
|
+
</div>
|
|
151
|
+
|
|
152
|
+
<div class="col-md-4 mb-3 add_parent">
|
|
153
|
+
<%= render partial: 'kaui/custom_fields/list_bar', locals: {
|
|
154
|
+
custom_fields: @custom_fields,
|
|
155
|
+
container_class: 'mb-4',
|
|
156
|
+
} %>
|
|
157
|
+
<h2 class="fw-semibold">Parent</h2>
|
|
158
|
+
<%= render partial: 'add_parent', locals: { account_parent: @account_parent } %>
|
|
159
|
+
</div>
|
|
160
|
+
</div>
|
|
161
|
+
</div>
|
|
162
|
+
|
|
163
|
+
</div>
|
|
164
|
+
|
|
165
|
+
</div>
|
|
@@ -1,40 +1,64 @@
|
|
|
1
|
-
<div class="modal fade" id="advanceSearchModal" tabindex="-1" role="dialog" aria-labelledby="advanceSearchModalLabel" aria-hidden="true">
|
|
1
|
+
<div class="modal fade kaui-accounts-index-filterbar" id="advanceSearchModal" tabindex="-1" role="dialog" aria-labelledby="advanceSearchModalLabel" aria-hidden="true">
|
|
2
2
|
<div class="modal-dialog" role="document">
|
|
3
3
|
<div class="modal-content">
|
|
4
4
|
<div class="modal-header">
|
|
5
|
-
<h5 class="modal-title" id="advanceSearchModalLabel">
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
<h5 class="modal-title d-flex align-items-center gap-3" id="advanceSearchModalLabel">
|
|
6
|
+
<span class="icon-container">
|
|
7
|
+
<%= image_tag("kaui/modal/search.svg", width: 20, height: 20) %>
|
|
8
|
+
</span>
|
|
9
|
+
Advance Search
|
|
10
|
+
</h5>
|
|
11
|
+
<button type="button" class="close close-button custom-hover" data-bs-dismiss="modal" aria-label="Close">
|
|
12
|
+
<span aria-hidden="true">
|
|
13
|
+
<%= image_tag("kaui/modal/close.svg", width: 20, height: 20) %>
|
|
14
|
+
</span>
|
|
8
15
|
</button>
|
|
9
16
|
</div>
|
|
10
17
|
<div class="modal-body">
|
|
11
18
|
<form id="advanceSearchForm">
|
|
12
19
|
<div class="form-group d-flex align-items-center">
|
|
13
|
-
<label for="searchFieldSelect" class="mr-2" style="width: 30%;">Search
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
<button type="button" class="
|
|
20
|
+
<label for="searchFieldSelect" class="mr-2 field-label" style="width: 30%;">Search Field</label>
|
|
21
|
+
<select id="searchFieldSelect" class="form-control mr-2">
|
|
22
|
+
<% @search_fields.each do |value, title| %>
|
|
23
|
+
<option value="<%= value %>"><%= title %></option>
|
|
24
|
+
<% end %>
|
|
25
|
+
</select>
|
|
26
|
+
<button type="button" class="border-button custom-hover" id="addSearchField">
|
|
27
|
+
<%= image_tag("kaui/modal/plus.svg", width: 16, height: 16) %>
|
|
28
|
+
</button>
|
|
20
29
|
</div>
|
|
21
30
|
<div id="search-fields-container">
|
|
22
31
|
</div>
|
|
23
32
|
</form>
|
|
24
33
|
</div>
|
|
25
34
|
<div class="modal-footer">
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
35
|
+
<%= render "kaui/components/button/button", {
|
|
36
|
+
label: 'Clear Search',
|
|
37
|
+
variant: "outline-secondary d-inline-flex align-items-center gap-1",
|
|
38
|
+
type: "button",
|
|
39
|
+
html_class: "kaui-button custom-hover",
|
|
40
|
+
html_options: {
|
|
41
|
+
id: "clearAdvanceSearch"
|
|
42
|
+
}
|
|
43
|
+
} %>
|
|
44
|
+
<%= render "kaui/components/button/button", {
|
|
45
|
+
label: 'Apply Search',
|
|
46
|
+
variant: "outline-secondary d-inline-flex align-items-center gap-1",
|
|
47
|
+
type: "button",
|
|
48
|
+
html_class: "kaui-dropdown custom-hover",
|
|
49
|
+
html_options: {
|
|
50
|
+
id: "applyAdvanceSearch"
|
|
51
|
+
}
|
|
52
|
+
} %>
|
|
29
53
|
</div>
|
|
30
54
|
</div>
|
|
31
55
|
</div>
|
|
32
56
|
</div>
|
|
33
57
|
|
|
34
|
-
<template id="search-field-template">
|
|
35
|
-
<div class="form-group row align-items-center search-field">
|
|
36
|
-
<label class="col-sm-
|
|
37
|
-
<div class="col-sm-
|
|
58
|
+
<template id="search-field-template" class="kaui-accounts-index-filterbar">
|
|
59
|
+
<div class="form-group row align-items-center justify-content-between search-field">
|
|
60
|
+
<label class="col-sm-3 col-form-label search-field-label"></label>
|
|
61
|
+
<div class="col-sm-4">
|
|
38
62
|
<select class="form-control search-field-filter">
|
|
39
63
|
<option value="eq">Equals</option>
|
|
40
64
|
<option value="neq">Not Equals</option>
|
|
@@ -48,61 +72,12 @@
|
|
|
48
72
|
<div class="col-sm-4">
|
|
49
73
|
<input type="text" class="form-control search-field-value">
|
|
50
74
|
</div>
|
|
51
|
-
<
|
|
52
|
-
|
|
53
|
-
</
|
|
75
|
+
<button type="button" class="button custom-hover" id="remove-search-field">
|
|
76
|
+
<%= image_tag("kaui/modal/red-close.svg", width: 16, height: 16) %>
|
|
77
|
+
</button>
|
|
54
78
|
</div>
|
|
55
79
|
</template>
|
|
56
80
|
|
|
57
|
-
<style>
|
|
58
|
-
.form-group.row.align-items-center {
|
|
59
|
-
display: flex;
|
|
60
|
-
align-items: center;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
.form-group.row.align-items-center label {
|
|
64
|
-
margin-bottom: 0; /* Remove default margin */
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
.form-group.row.align-items-center .form-control {
|
|
68
|
-
margin-right: 10px; /* Add some space between elements */
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
.form-group.d-flex {
|
|
72
|
-
display: flex;
|
|
73
|
-
align-items: center;
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
.form-group.d-flex label {
|
|
77
|
-
margin-bottom: 0; /* Remove default margin */
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
.form-group.d-flex .form-control {
|
|
81
|
-
margin-right: 10px; /* Add some space between the select box and the button */
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
#search-labels-container .label {
|
|
85
|
-
margin-left: 5px; /* Add space between labels */
|
|
86
|
-
margin-bottom: 5px; /* Add space below labels if they wrap to the next line */
|
|
87
|
-
color: white;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
.filter-bar-container {
|
|
91
|
-
display: flex;
|
|
92
|
-
justify-content: flex-start; /* Align items to the left */
|
|
93
|
-
align-items: center; /* Center items vertically */
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
.filter-bar {
|
|
97
|
-
display: flex;
|
|
98
|
-
align-items: center; /* Center items vertically */
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
.filter-bar label {
|
|
102
|
-
margin: 10px; /* Add some space between the label and the select box */
|
|
103
|
-
}
|
|
104
|
-
</style>
|
|
105
|
-
|
|
106
81
|
<%= javascript_tag do %>
|
|
107
82
|
$(document).ready(function() {
|
|
108
83
|
populateSearchLabelsFromUrl();
|
|
@@ -135,32 +110,47 @@ $(document).ready(function() {
|
|
|
135
110
|
searchLabelsContainer.empty();
|
|
136
111
|
|
|
137
112
|
var table = $('#accounts-table').DataTable();
|
|
138
|
-
table.
|
|
139
|
-
|
|
113
|
+
table.off('preXhr.dt.filter');
|
|
114
|
+
table.on('preXhr.dt.filter', function(e, settings, data) {
|
|
115
|
+
data.search.value = searchQuery('');
|
|
140
116
|
});
|
|
141
117
|
|
|
142
|
-
|
|
118
|
+
// Update the DataTables ajax URL with the new search parameters
|
|
119
|
+
var searchParams = searchQuery('');
|
|
120
|
+
var ajaxUrl = "<%= accounts_pagination_path(:ordering => @ordering, :format => :json) %>";
|
|
121
|
+
if (searchParams) {
|
|
122
|
+
ajaxUrl += (ajaxUrl.includes('?') ? '&' : '?') + searchParams;
|
|
123
|
+
}
|
|
124
|
+
table.ajax.url(ajaxUrl).load();
|
|
143
125
|
|
|
144
126
|
// Update the URL with the search parameters
|
|
145
|
-
var searchParams = searchQuery('');
|
|
146
127
|
if (searchParams) {
|
|
128
|
+
searchParams = searchParams.replace(/account_id/g, 'ac_id');
|
|
147
129
|
var newUrl = window.location.protocol + "//" + window.location.host + window.location.pathname + '?' + searchParams;
|
|
148
130
|
window.history.pushState({ path: newUrl }, '', newUrl);
|
|
149
131
|
}
|
|
150
132
|
|
|
151
133
|
searchFields.each(function() {
|
|
152
|
-
var filter = $(this).find('.search-field-filter option:selected').text();
|
|
153
|
-
var value = $(this).find('.search-field-value').val();
|
|
154
|
-
var columnName = $(this).find('.search-field-filter').attr('name').replace('Filter', '');
|
|
134
|
+
var filter = $(this).find('.search-field-filter option:selected').text().trim();
|
|
135
|
+
var value = $(this).find('.search-field-value').val().trim();
|
|
136
|
+
var columnName = $(this).find('.search-field-filter').attr('name').replace('Filter', '').trim();
|
|
155
137
|
|
|
156
138
|
// Create and append the search label
|
|
157
139
|
if (value !== '') {
|
|
158
140
|
var label = $('<span>', {
|
|
159
|
-
class: 'label label-info',
|
|
160
|
-
|
|
141
|
+
class: 'label label-info d-inline-flex align-items-center gap-2',
|
|
142
|
+
'data-field': columnName,
|
|
143
|
+
'data-filter': filter,
|
|
144
|
+
'data-value': value
|
|
161
145
|
});
|
|
146
|
+
var labelText = $('<span>', { text: columnName + ' [' + filter + '] ' + value });
|
|
147
|
+
var closeIcon = $('<span>', {
|
|
148
|
+
class: 'filter-close-icon',
|
|
149
|
+
style: 'cursor: pointer; margin-left: 5px; display: inline-flex; align-items: center;'
|
|
150
|
+
}).html('<svg width="12" height="12" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.8337 4.1665L4.16699 15.8332M4.16699 4.1665L15.8337 15.8332" stroke="#A4A7AE" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
|
|
151
|
+
label.append(labelText).append(closeIcon);
|
|
152
|
+
searchLabelsContainer.append(label);
|
|
162
153
|
}
|
|
163
|
-
searchLabelsContainer.append(label);
|
|
164
154
|
});
|
|
165
155
|
|
|
166
156
|
$('#advanceSearchModal').modal('hide');
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
<tr>
|
|
2
|
+
<td>
|
|
3
|
+
<% if account_parent.present? %>
|
|
4
|
+
<%= link_to account_parent.account_id, kaui_engine.account_path(@account.parent_account_id) %>
|
|
5
|
+
<% if can? :update, Kaui::Account %>
|
|
6
|
+
<%= link_to '
|
|
7
|
+
<svg width="13" height="12" viewBox="0 0 13 12" fill="none" xmlns="http://www.w3.org/2000/svg" style="vertical-align: middle;">
|
|
8
|
+
<path d="M9.8335 2.5L2.8335 9.50001M2.8335 2.5L9.8335 9.50001" stroke="#A4A7AE" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
|
|
9
|
+
</svg>
|
|
10
|
+
'.html_safe, kaui_engine.unlink_to_parent_path(@account.account_id), method: :delete
|
|
11
|
+
%>
|
|
12
|
+
|
|
13
|
+
<% end %>
|
|
14
|
+
<% end %>
|
|
15
|
+
<% unless account_parent.present? %>
|
|
16
|
+
<% if can? :update, Kaui::Account %>
|
|
17
|
+
<button type="button" class="naked" data-bs-toggle="modal" data-bs-target="#link_account">
|
|
18
|
+
<svg width="17" height="16" viewBox="0 0 17 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
19
|
+
<path d="M8.33333 2.66675V13.3334M13.6667 8.00008H3" stroke="#1570EF" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
|
|
20
|
+
</svg>
|
|
21
|
+
Add
|
|
22
|
+
</button>
|
|
23
|
+
<% end %>
|
|
24
|
+
<% end %>
|
|
25
|
+
</td>
|
|
26
|
+
</tr>
|
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
<div class="billing-details">
|
|
2
|
+
<div class="d-flex flex-column">
|
|
3
|
+
<div class="billing-details-header">
|
|
4
|
+
<h2>Billing Information</h2>
|
|
5
|
+
<span>
|
|
6
|
+
<% if can?(:trigger, Kaui::Payment) || can?(:credit, Kaui::Account) || can?(:charge, Kaui::Account) %>
|
|
7
|
+
<div class="tag-bar tag-bar-breathe">
|
|
8
|
+
<div class="toggler">
|
|
9
|
+
<div class="toggle">
|
|
10
|
+
<div class="actions">
|
|
11
|
+
<!-- Payment, Credit then Charge. Same ordering as in the billing timeline -->
|
|
12
|
+
|
|
13
|
+
<% if can?(:trigger, Kaui::Payment) && @account.account_balance.present? && @account.account_balance > 0 %>
|
|
14
|
+
<%= link_to kaui_engine.pay_all_invoices_account_path(@account.account_id),
|
|
15
|
+
:method => :post do %>
|
|
16
|
+
<%= render "kaui/components/button/button", {
|
|
17
|
+
label: "Pay All Invoices",
|
|
18
|
+
icon: "kaui/account/pay-all.svg",
|
|
19
|
+
variant: "outline-secondary d-inline-flex align-items-center gap-1",
|
|
20
|
+
type: "button",
|
|
21
|
+
html_class: "kaui-button custom-hover",
|
|
22
|
+
} %>
|
|
23
|
+
<% end %>
|
|
24
|
+
<% end %>
|
|
25
|
+
|
|
26
|
+
<% if can? :charge, Kaui::Account %>
|
|
27
|
+
<%= link_to kaui_engine.new_account_charge_path(@account.account_id, :currency => @account.currency) do %>
|
|
28
|
+
<%= render "kaui/components/button/button", {
|
|
29
|
+
label: "Create Charge",
|
|
30
|
+
icon: "kaui/account/plus.svg",
|
|
31
|
+
variant: "outline-secondary d-inline-flex align-items-center gap-1",
|
|
32
|
+
type: "button",
|
|
33
|
+
html_class: "kaui-button custom-hover",
|
|
34
|
+
} %>
|
|
35
|
+
<% end %>
|
|
36
|
+
<% end %>
|
|
37
|
+
|
|
38
|
+
<% if can? :credit, Kaui::Account %>
|
|
39
|
+
<%= link_to kaui_engine.new_account_credit_path(@account.account_id, :currency => @account.currency) do %>
|
|
40
|
+
<%= render "kaui/components/button/button", {
|
|
41
|
+
label: "Add Credit",
|
|
42
|
+
icon: "kaui/plus.svg",
|
|
43
|
+
variant: "outline-secondary d-inline-flex align-items-center gap-1",
|
|
44
|
+
type: "button",
|
|
45
|
+
html_class: "kaui-dropdown custom-hover",
|
|
46
|
+
} %>
|
|
47
|
+
<% end %>
|
|
48
|
+
<% end %>
|
|
49
|
+
|
|
50
|
+
<% if deposit_plugin_available? %>
|
|
51
|
+
<%= link_to deposit_engine.collection_index_path(:account_id => @account.account_id, :currency => @account.currency) do %>
|
|
52
|
+
<%= render "kaui/components/button/button", {
|
|
53
|
+
label: "Create Deposit",
|
|
54
|
+
icon: "kaui/plus.svg",
|
|
55
|
+
variant: "outline-secondary d-inline-flex align-items-center gap-1",
|
|
56
|
+
type: "button",
|
|
57
|
+
html_class: "kaui-dropdown custom-hover",
|
|
58
|
+
} %>
|
|
59
|
+
<% end %>
|
|
60
|
+
<% end %>
|
|
61
|
+
|
|
62
|
+
</div>
|
|
63
|
+
</div>
|
|
64
|
+
</div>
|
|
65
|
+
</div>
|
|
66
|
+
<% end %>
|
|
67
|
+
</span>
|
|
68
|
+
</div>
|
|
69
|
+
<div class="account-summary">
|
|
70
|
+
|
|
71
|
+
<div class="row">
|
|
72
|
+
|
|
73
|
+
<!-- Left Column -->
|
|
74
|
+
<div class="col-md-4">
|
|
75
|
+
<div class="info-item">
|
|
76
|
+
<b>Account balance</b>
|
|
77
|
+
<% if @account.account_balance.nil? %>
|
|
78
|
+
<p class="badge neutral">N/A</p>
|
|
79
|
+
<% elsif @account.account_balance <= 0 %>
|
|
80
|
+
<p class="badge success"><%= humanized_money_with_symbol @account.balance_to_money %></p>
|
|
81
|
+
<% else %>
|
|
82
|
+
<p class="badge danger"><%= humanized_money_with_symbol @account.balance_to_money %></p>
|
|
83
|
+
<% end %>
|
|
84
|
+
</div>
|
|
85
|
+
|
|
86
|
+
<div class="info-item">
|
|
87
|
+
<b>Account credit</b>
|
|
88
|
+
<% if @account.account_cba.nil? %>
|
|
89
|
+
<p class="badge neutral">N/A</p>
|
|
90
|
+
<% elsif @account.account_cba >= 0 %>
|
|
91
|
+
<p class="badge success"><%= humanized_money_with_symbol @account.cba_to_money %></p>
|
|
92
|
+
<% else %>
|
|
93
|
+
<p class="badge danger"><%= humanized_money_with_symbol @account.cba_to_money %></p>
|
|
94
|
+
<% end %>
|
|
95
|
+
</div>
|
|
96
|
+
|
|
97
|
+
<div class="info-item">
|
|
98
|
+
<b>Overdue status</b>
|
|
99
|
+
<% if @overdue_state.nil? %>
|
|
100
|
+
<p class="badge neutral">N/A</p>
|
|
101
|
+
<% elsif @overdue_state.is_clear_state %>
|
|
102
|
+
<p class="badge success">Good</p>
|
|
103
|
+
<% else %>
|
|
104
|
+
<p class="badge danger"><%= @overdue_state.name %></p>
|
|
105
|
+
<% end %>
|
|
106
|
+
</div>
|
|
107
|
+
</div>
|
|
108
|
+
|
|
109
|
+
<!-- Middle Column -->
|
|
110
|
+
<div class="col-md-4">
|
|
111
|
+
<div class="info-item">
|
|
112
|
+
<b>Bill cycle day</b>
|
|
113
|
+
<% if @account.bill_cycle_day_local > 0 %>
|
|
114
|
+
<p><%= @account.bill_cycle_day_local %> (user timezone)</p>
|
|
115
|
+
<% else %>
|
|
116
|
+
<p>N/A</p>
|
|
117
|
+
<% end %>
|
|
118
|
+
</div>
|
|
119
|
+
|
|
120
|
+
<% if can? :trigger, Kaui::Invoice %>
|
|
121
|
+
<div class="info-item">
|
|
122
|
+
<b>Next invoice date</b>
|
|
123
|
+
<p id='next-invoice-date'>N/A</p>
|
|
124
|
+
</div>
|
|
125
|
+
<% end %>
|
|
126
|
+
</div>
|
|
127
|
+
|
|
128
|
+
<!-- Right Column -->
|
|
129
|
+
<div class="col-md-4">
|
|
130
|
+
<% if (can? :trigger, Kaui::Invoice) || (can? :dry_run, Kaui::Invoice) %>
|
|
131
|
+
<div class="trigger-invoice-box">
|
|
132
|
+
<b>Trigger invoice generation</b>
|
|
133
|
+
<%= form_tag kaui_engine.trigger_invoice_path(params.to_h), :method => :post do %>
|
|
134
|
+
<div class="d-flex align-items-center mb-2">
|
|
135
|
+
<div class="custom-date-input-wrapper kaui-button custom-hover">
|
|
136
|
+
<svg width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
137
|
+
<path d="M14.9167 12.5V18.3333M17.8333 15.4167H12" stroke="#A4A7AE" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
138
|
+
<path d="M14.0833 1.66675V5.00008M6.58325 1.66675V5.00008" stroke="#A4A7AE" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
139
|
+
<path d="M17.8333 10.8333V4.99992C17.8333 4.07944 17.0871 3.33325 16.1666 3.33325H4.49992C3.57944 3.33325 2.83325 4.07944 2.83325 4.99992V16.6666C2.83325 17.5871 3.57944 18.3333 4.49992 18.3333H10.3333" stroke="#A4A7AE" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
140
|
+
<path d="M2.83325 8.33325H17.8333" stroke="#A4A7AE" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
141
|
+
</svg>
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
<input
|
|
145
|
+
class="form-control"
|
|
146
|
+
id="target_date"
|
|
147
|
+
name="target_date"
|
|
148
|
+
type="text"
|
|
149
|
+
placeholder="Select date"
|
|
150
|
+
data-provide="datepicker"
|
|
151
|
+
data-date-format="yyyy-mm-dd"
|
|
152
|
+
/>
|
|
153
|
+
</div>
|
|
154
|
+
|
|
155
|
+
<%= render "kaui/components/button/button", {
|
|
156
|
+
label: "Generate",
|
|
157
|
+
icon: "kaui/generate.svg",
|
|
158
|
+
variant: "outline-secondary d-inline-flex align-items-center gap-1",
|
|
159
|
+
type: "submit",
|
|
160
|
+
html_class: "btn btn-xs kaui-dropdown custom-hover py-2 px-3",
|
|
161
|
+
} %>
|
|
162
|
+
</div>
|
|
163
|
+
<div class="form-check">
|
|
164
|
+
<%= check_box_tag :dry_run, '1', true, class: 'form-check-input', id: 'dry_run_checkbox', disabled: !can?(:trigger, Kaui::Invoice) %>
|
|
165
|
+
<%= label_tag :dry_run, 'Dry-run', class: 'form-check-label' %>
|
|
166
|
+
</div>
|
|
167
|
+
<% end %>
|
|
168
|
+
</div>
|
|
169
|
+
<% end %>
|
|
170
|
+
</div>
|
|
171
|
+
</div>
|
|
172
|
+
</div>
|
|
173
|
+
</div>
|
|
174
|
+
</div>
|
|
175
|
+
|
|
176
|
+
<%= javascript_tag do %>
|
|
177
|
+
$(document).ready(function() {
|
|
178
|
+
if ($("#next-invoice-date").length) {
|
|
179
|
+
var next_invoice_date_path = Routes.kaui_engine_next_invoice_date_path('<%= @account.account_id %>', {format: "json"});
|
|
180
|
+
var populateNextInvoiceDate = function (next_invoice_date) {
|
|
181
|
+
if (next_invoice_date === null) {
|
|
182
|
+
return;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
$("#next-invoice-date").text(next_invoice_date);
|
|
186
|
+
};
|
|
187
|
+
|
|
188
|
+
$.ajax({
|
|
189
|
+
type: 'GET',
|
|
190
|
+
contentType: 'application/json',
|
|
191
|
+
dataType: 'json',
|
|
192
|
+
url: next_invoice_date_path
|
|
193
|
+
}).done(populateNextInvoiceDate);
|
|
194
|
+
}
|
|
195
|
+
});
|
|
196
|
+
<% end %>
|