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.
Files changed (259) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/images/kaui/account/authorize.svg +4 -0
  3. data/app/assets/images/kaui/account/credit.svg +4 -0
  4. data/app/assets/images/kaui/account/down-arrow.svg +3 -0
  5. data/app/assets/images/kaui/account/edit.svg +4 -0
  6. data/app/assets/images/kaui/account/pay-all.svg +5 -0
  7. data/app/assets/images/kaui/account/plus.svg +3 -0
  8. data/app/assets/images/kaui/account/purchase.svg +5 -0
  9. data/app/assets/images/kaui/account/refresh.svg +5 -0
  10. data/app/assets/images/kaui/arrow.svg +3 -0
  11. data/app/assets/images/kaui/card.svg +5 -0
  12. data/app/assets/images/kaui/copy.svg +12 -0
  13. data/app/assets/images/kaui/dashboard/aviate.svg +6 -0
  14. data/app/assets/images/kaui/dashboard/custom-field.svg +5 -0
  15. data/app/assets/images/kaui/dashboard/kaui-doc-img.png +0 -0
  16. data/app/assets/images/kaui/dashboard/plugins.svg +7 -0
  17. data/app/assets/images/kaui/dashboard/tags.svg +4 -0
  18. data/app/assets/images/kaui/dashboard/users.svg +6 -0
  19. data/app/assets/images/kaui/delete.svg +6 -0
  20. data/app/assets/images/kaui/dots.svg +5 -0
  21. data/app/assets/images/kaui/download-csv.svg +5 -0
  22. data/app/assets/images/kaui/download.svg +4 -0
  23. data/app/assets/images/kaui/eye-off.svg +9 -0
  24. data/app/assets/images/kaui/eye.svg +7 -0
  25. data/app/assets/images/kaui/file-upload.svg +34 -0
  26. data/app/assets/images/kaui/generate.svg +5 -0
  27. data/app/assets/images/kaui/header/account.svg +4 -0
  28. data/app/assets/images/kaui/header/cog_icon.svg +4 -0
  29. data/app/assets/images/kaui/header/invoice.svg +5 -0
  30. data/app/assets/images/kaui/header/payment.svg +5 -0
  31. data/app/assets/images/kaui/header/search_icon.svg +4 -0
  32. data/app/assets/images/kaui/header/subscription.svg +6 -0
  33. data/app/assets/images/kaui/logout.svg +4 -0
  34. data/app/assets/images/kaui/modal/close.svg +3 -0
  35. data/app/assets/images/kaui/modal/plus.svg +3 -0
  36. data/app/assets/images/kaui/modal/red-close.svg +10 -0
  37. data/app/assets/images/kaui/modal/search.svg +4 -0
  38. data/app/assets/images/kaui/payment/payment.svg +4 -0
  39. data/app/assets/images/kaui/payment/refund.svg +4 -0
  40. data/app/assets/images/kaui/plus.svg +3 -0
  41. data/app/assets/images/kaui/search.svg +4 -0
  42. data/app/assets/images/kaui/setting/account.svg +10 -0
  43. data/app/assets/images/kaui/setting/analytics.svg +7 -0
  44. data/app/assets/images/kaui/setting/custom-field.svg +5 -0
  45. data/app/assets/images/kaui/setting/e-notifications.svg +6 -0
  46. data/app/assets/images/kaui/setting/plugins.svg +7 -0
  47. data/app/assets/images/kaui/setting/plus.svg +3 -0
  48. data/app/assets/images/kaui/setting/reset.svg +4 -0
  49. data/app/assets/images/kaui/setting/tag-definitions.svg +5 -0
  50. data/app/assets/images/kaui/setting/tags.svg +4 -0
  51. data/app/assets/images/kaui/setting/tenants.svg +6 -0
  52. data/app/assets/images/kaui/setting/users.svg +6 -0
  53. data/app/assets/images/kaui/setting.svg +4 -0
  54. data/app/assets/images/kaui/sidebar/account.svg +4 -0
  55. data/app/assets/images/kaui/sidebar/audit.svg +5 -0
  56. data/app/assets/images/kaui/sidebar/custom-fields.svg +5 -0
  57. data/app/assets/images/kaui/sidebar/invoices.svg +5 -0
  58. data/app/assets/images/kaui/sidebar/payments.svg +5 -0
  59. data/app/assets/images/kaui/sidebar/queues.svg +5 -0
  60. data/app/assets/images/kaui/sidebar/subscriptions.svg +6 -0
  61. data/app/assets/images/kaui/sidebar/tags.svg +5 -0
  62. data/app/assets/images/kaui/sidebar/timeline.svg +5 -0
  63. data/app/assets/images/kaui/sign_in_background.svg +57 -0
  64. data/app/assets/images/kaui/sort-down.svg +3 -0
  65. data/app/assets/images/kaui/sort-up.svg +3 -0
  66. data/app/assets/images/kaui/subscription/add-on.svg +7 -0
  67. data/app/assets/images/kaui/subscription/cancel.svg +6 -0
  68. data/app/assets/images/kaui/subscription/change.svg +6 -0
  69. data/app/assets/images/kaui/subscription/date.svg +6 -0
  70. data/app/assets/images/kaui/subscription/pause.svg +4 -0
  71. data/app/assets/images/kaui/timeline/authorize.svg +5 -0
  72. data/app/assets/images/kaui/timeline/capture.svg +5 -0
  73. data/app/assets/images/kaui/timeline/chargeback.svg +3 -0
  74. data/app/assets/images/kaui/timeline/credit.svg +6 -0
  75. data/app/assets/images/kaui/timeline/invoice.svg +5 -0
  76. data/app/assets/images/kaui/timeline/purchase.svg +5 -0
  77. data/app/assets/images/kaui/timeline/refund.svg +4 -0
  78. data/app/assets/images/kaui/timeline/void.svg +4 -0
  79. data/app/assets/images/kaui/view-doc.svg +6 -0
  80. data/app/assets/images/kaui/warning.png +0 -0
  81. data/app/assets/javascripts/application.js +2 -2
  82. data/app/assets/javascripts/kaui/kaui_override.js +232 -0
  83. data/app/assets/javascripts/kaui/multi_functions_bar_utils.js +125 -24
  84. data/app/assets/stylesheets/application.css +13 -1
  85. data/app/assets/stylesheets/kaui/account.css +2028 -14
  86. data/app/assets/stylesheets/kaui/account_timeline.css +183 -0
  87. data/app/assets/stylesheets/kaui/admin_allowed_users.css +260 -0
  88. data/app/assets/stylesheets/kaui/audit.css +26 -16
  89. data/app/assets/stylesheets/kaui/audit_logs.css +443 -0
  90. data/app/assets/stylesheets/kaui/auth_pages.css +72 -0
  91. data/app/assets/stylesheets/kaui/breadcrumb.css +38 -0
  92. data/app/assets/stylesheets/kaui/chargebacks.css +118 -0
  93. data/app/assets/stylesheets/kaui/clock.css +103 -0
  94. data/app/assets/stylesheets/kaui/common.css +1744 -401
  95. data/app/assets/stylesheets/kaui/custom_fields.css +546 -0
  96. data/app/assets/stylesheets/kaui/dashboard.css +26 -0
  97. data/app/assets/stylesheets/kaui/datatable.css +114 -56
  98. data/app/assets/stylesheets/kaui/header.css +221 -114
  99. data/app/assets/stylesheets/kaui/home.css +89 -62
  100. data/app/assets/stylesheets/kaui/invoice.css +1061 -27
  101. data/app/assets/stylesheets/kaui/kaui.css +217 -145
  102. data/app/assets/stylesheets/kaui/overdue.css +5 -3
  103. data/app/assets/stylesheets/kaui/payment.css +1102 -13
  104. data/app/assets/stylesheets/kaui/queues.css +269 -0
  105. data/app/assets/stylesheets/kaui/refunds.css +185 -0
  106. data/app/assets/stylesheets/kaui/role_definitions.css +111 -0
  107. data/app/assets/stylesheets/kaui/sidebar.css +122 -0
  108. data/app/assets/stylesheets/kaui/subscription.css +677 -0
  109. data/app/assets/stylesheets/kaui/tag_definitions.css +524 -0
  110. data/app/assets/stylesheets/kaui/tags.css +592 -121
  111. data/app/assets/stylesheets/kaui/tenants.css +1478 -0
  112. data/app/assets/stylesheets/kaui/tooltip.css +9 -5
  113. data/app/assets/stylesheets/kaui/wallets.css +121 -0
  114. data/app/controllers/kaui/accounts_controller.rb +3 -2
  115. data/app/controllers/kaui/admin_tenants_controller.rb +33 -0
  116. data/app/controllers/kaui/custom_fields_controller.rb +1 -1
  117. data/app/controllers/kaui/engine_controller.rb +1 -2
  118. data/app/controllers/kaui/engine_controller_util.rb +5 -7
  119. data/app/controllers/kaui/home_controller.rb +24 -17
  120. data/app/controllers/kaui/invoices_controller.rb +4 -15
  121. data/app/controllers/kaui/payments_controller.rb +1 -1
  122. data/app/controllers/kaui/sessions_controller.rb +1 -0
  123. data/app/controllers/kaui/tag_definitions_controller.rb +1 -0
  124. data/app/helpers/kaui/account_helper.rb +13 -0
  125. data/app/helpers/kaui/plugin_helper.rb +27 -0
  126. data/app/views/kaui/account_custom_fields/index.html.erb +95 -29
  127. data/app/views/kaui/account_emails/_account_emails_table.html.erb +13 -3
  128. data/app/views/kaui/account_emails/_form.html.erb +23 -6
  129. data/app/views/kaui/account_emails/new.html.erb +12 -6
  130. data/app/views/kaui/account_tags/_form_bar.html.erb +10 -1
  131. data/app/views/kaui/account_tags/index.html.erb +103 -24
  132. data/app/views/kaui/account_timelines/_multi_functions_bar.html.erb +302 -69
  133. data/app/views/kaui/account_timelines/show.html.erb +360 -254
  134. data/app/views/kaui/accounts/_account_details.html.erb +165 -0
  135. data/app/views/kaui/accounts/_account_filterbar.html.erb +70 -80
  136. data/app/views/kaui/accounts/_add_parent.html.erb +26 -0
  137. data/app/views/kaui/accounts/_billing_details.html.erb +196 -0
  138. data/app/views/kaui/accounts/_close_account_modal.html.erb +62 -40
  139. data/app/views/kaui/accounts/_form_account.html.erb +157 -0
  140. data/app/views/kaui/accounts/_functions_bar.html.erb +606 -0
  141. data/app/views/kaui/accounts/_link_parent_modal.html.erb +1 -1
  142. data/app/views/kaui/accounts/_link_parent_to_modal.html.erb +62 -0
  143. data/app/views/kaui/accounts/_multi_functions_bar.html.erb +67 -28
  144. data/app/views/kaui/accounts/_payment_gateways.html.erb +43 -0
  145. data/app/views/kaui/accounts/_personal_details.html.erb +67 -0
  146. data/app/views/kaui/accounts/edit.html.erb +15 -9
  147. data/app/views/kaui/accounts/index.html.erb +77 -27
  148. data/app/views/kaui/accounts/new.html.erb +14 -8
  149. data/app/views/kaui/accounts/show.html.erb +17 -11
  150. data/app/views/kaui/admin/index.html.erb +44 -19
  151. data/app/views/kaui/admin_allowed_users/_form.html.erb +123 -31
  152. data/app/views/kaui/admin_allowed_users/edit.html.erb +15 -9
  153. data/app/views/kaui/admin_allowed_users/index.html.erb +150 -30
  154. data/app/views/kaui/admin_allowed_users/new.html.erb +14 -8
  155. data/app/views/kaui/admin_allowed_users/show.html.erb +137 -32
  156. data/app/views/kaui/admin_tenants/_add_allowed_user_modal.html.erb +42 -15
  157. data/app/views/kaui/admin_tenants/_clock.html.erb +72 -0
  158. data/app/views/kaui/admin_tenants/_form.html.erb +32 -20
  159. data/app/views/kaui/admin_tenants/_form_catalog_translation.erb +21 -8
  160. data/app/views/kaui/admin_tenants/_form_invoice_template.erb +25 -9
  161. data/app/views/kaui/admin_tenants/_form_invoice_translation.erb +36 -20
  162. data/app/views/kaui/admin_tenants/_form_plugin_config.erb +16 -20
  163. data/app/views/kaui/admin_tenants/_show_catalog.erb +13 -6
  164. data/app/views/kaui/admin_tenants/_show_catalog_simple.erb +95 -46
  165. data/app/views/kaui/admin_tenants/_show_catalog_xml.erb +62 -37
  166. data/app/views/kaui/admin_tenants/_show_overdue.erb +91 -75
  167. data/app/views/kaui/admin_tenants/_tenant_details.html.erb +106 -17
  168. data/app/views/kaui/admin_tenants/_tenants_table.html.erb +67 -6
  169. data/app/views/kaui/admin_tenants/_useful_links.html.erb +21 -16
  170. data/app/views/kaui/admin_tenants/index.html.erb +35 -11
  171. data/app/views/kaui/admin_tenants/index.js.erb +3 -0
  172. data/app/views/kaui/admin_tenants/new.html.erb +19 -13
  173. data/app/views/kaui/admin_tenants/new_catalog.html.erb +230 -98
  174. data/app/views/kaui/admin_tenants/new_overdue_config.html.erb +152 -80
  175. data/app/views/kaui/admin_tenants/new_plan_currency.html.erb +44 -30
  176. data/app/views/kaui/admin_tenants/show.html.erb +211 -78
  177. data/app/views/kaui/admin_tenants/show.js.erb +3 -0
  178. data/app/views/kaui/audit_logs/_multi_functions_bar.html.erb +298 -101
  179. data/app/views/kaui/audit_logs/index.html.erb +137 -38
  180. data/app/views/kaui/bundle_tags/_form_bar.html.erb +11 -4
  181. data/app/views/kaui/bundles/_bundle_details.html.erb +24 -12
  182. data/app/views/kaui/bundles/index.html.erb +79 -104
  183. data/app/views/kaui/bundles/pause_resume.html.erb +73 -38
  184. data/app/views/kaui/chargebacks/_form.html.erb +35 -18
  185. data/app/views/kaui/chargebacks/new.html.erb +16 -9
  186. data/app/views/kaui/charges/_form.html.erb +54 -42
  187. data/app/views/kaui/charges/new.html.erb +15 -8
  188. data/app/views/kaui/components/breadcrumb/_breadcrumb.html.erb +146 -0
  189. data/app/views/kaui/components/button/_button.html.erb +16 -0
  190. data/app/views/kaui/components/dashboard/_card.html.erb +15 -0
  191. data/app/views/kaui/components/dashboard/_setting.html.erb +15 -0
  192. data/app/views/kaui/components/form_input/_form_input.html.erb +4 -0
  193. data/app/views/kaui/components/form_password/_form_password.html.erb +6 -0
  194. data/app/views/kaui/components/logo/_logo.html.erb +1 -0
  195. data/app/views/kaui/components/menu_dropdown/_menu_dropdown.html.erb +59 -0
  196. data/app/views/kaui/components/search_input/_search_input.html.erb +81 -0
  197. data/app/views/kaui/credits/_form.html.erb +42 -25
  198. data/app/views/kaui/credits/new.html.erb +15 -8
  199. data/app/views/kaui/custom_fields/_form.html.erb +37 -25
  200. data/app/views/kaui/custom_fields/_list_bar.html.erb +11 -10
  201. data/app/views/kaui/custom_fields/index.html.erb +121 -27
  202. data/app/views/kaui/custom_fields/new.html.erb +19 -8
  203. data/app/views/kaui/errors/500.html.erb +1 -1
  204. data/app/views/kaui/home/index.html.erb +77 -30
  205. data/app/views/kaui/invoice_items/_edit_form.html.erb +30 -14
  206. data/app/views/kaui/invoice_items/edit.html.erb +15 -7
  207. data/app/views/kaui/invoice_tags/_form_bar.html.erb +13 -3
  208. data/app/views/kaui/invoices/_invoice_filterbar.html.erb +53 -69
  209. data/app/views/kaui/invoices/_invoice_table.html.erb +77 -92
  210. data/app/views/kaui/invoices/_multi_functions_bar.html.erb +351 -140
  211. data/app/views/kaui/invoices/index.html.erb +89 -27
  212. data/app/views/kaui/invoices/show.html.erb +392 -80
  213. data/app/views/kaui/layouts/kaui_account_sidebar.html.erb +42 -0
  214. data/app/views/kaui/layouts/kaui_application.html.erb +29 -15
  215. data/app/views/kaui/layouts/kaui_flash.html.erb +82 -31
  216. data/app/views/kaui/layouts/kaui_navbar.html.erb +109 -82
  217. data/app/views/kaui/layouts/kaui_setting_sidebar.html.erb +36 -0
  218. data/app/views/kaui/payment_methods/_form.html.erb +32 -11
  219. data/app/views/kaui/payment_methods/_new_creditcard_payment_method.html.erb +35 -34
  220. data/app/views/kaui/payment_methods/_payment_methods_details_table.html.erb +27 -29
  221. data/app/views/kaui/payment_methods/_payment_methods_table.html.erb +116 -38
  222. data/app/views/kaui/payment_methods/_plugin_properties.html.erb +19 -9
  223. data/app/views/kaui/payment_methods/new.html.erb +14 -8
  224. data/app/views/kaui/payments/_form.html.erb +30 -13
  225. data/app/views/kaui/payments/_multi_functions_bar.html.erb +351 -141
  226. data/app/views/kaui/payments/_payment_filterbar.html.erb +63 -79
  227. data/app/views/kaui/payments/_payment_invoice_table.html.erb +105 -0
  228. data/app/views/kaui/payments/_payment_table.html.erb +4 -67
  229. data/app/views/kaui/payments/index.html.erb +90 -26
  230. data/app/views/kaui/payments/new.html.erb +15 -8
  231. data/app/views/kaui/payments/show.html.erb +222 -28
  232. data/app/views/kaui/queues/index.html.erb +329 -111
  233. data/app/views/kaui/refunds/_form.html.erb +68 -45
  234. data/app/views/kaui/refunds/new.html.erb +15 -8
  235. data/app/views/kaui/role_definitions/_form.html.erb +104 -17
  236. data/app/views/kaui/role_definitions/new.html.erb +15 -8
  237. data/app/views/kaui/sessions/_form.html.erb +9 -19
  238. data/app/views/kaui/sessions/new.html.erb +10 -9
  239. data/app/views/kaui/subscriptions/_cancel_by_date_modal.html.erb +65 -35
  240. data/app/views/kaui/subscriptions/_edit_form.html.erb +66 -35
  241. data/app/views/kaui/subscriptions/_form.html.erb +63 -32
  242. data/app/views/kaui/subscriptions/_subscriptions_table.html.erb +215 -57
  243. data/app/views/kaui/subscriptions/edit.html.erb +19 -8
  244. data/app/views/kaui/subscriptions/edit_bcd.erb +46 -16
  245. data/app/views/kaui/subscriptions/new.html.erb +22 -15
  246. data/app/views/kaui/tag_definitions/_form.html.erb +51 -30
  247. data/app/views/kaui/tag_definitions/index.html.erb +151 -40
  248. data/app/views/kaui/tag_definitions/new.html.erb +15 -8
  249. data/app/views/kaui/tags/index.html.erb +136 -47
  250. data/app/views/kaui/tenants/_form.html.erb +8 -5
  251. data/app/views/kaui/tenants/index.html.erb +15 -9
  252. data/app/views/kaui/transactions/_control_plugin_names.html.erb +18 -10
  253. data/app/views/kaui/transactions/_form.html.erb +86 -25
  254. data/app/views/kaui/transactions/new.html.erb +15 -9
  255. data/config/routes.rb +1 -0
  256. data/lib/kaui/engine.rb +11 -0
  257. data/lib/kaui/version.rb +1 -1
  258. data/lib/kaui.rb +0 -1
  259. metadata +120 -2
@@ -95,10 +95,37 @@
95
95
  </div>
96
96
  </div>
97
97
  <div class="row">
98
- <div class="col-md-6">
99
- <div class="form-check">
100
- <input type="checkbox" class="form-check-input" id="allFields" name="allFields">
101
- <label class="form-check-label" for="allFields">All fields</label>
98
+ <div class="d-flex align-items-center">
99
+ <label for="searchFieldSelect" class="field-label col-sm-3">Include fields</label>
100
+ <div class="col-md-9">
101
+ <div class="chip-select">
102
+ <input type="checkbox" id="dropdown-toggle" hidden />
103
+
104
+ <label for="dropdown-toggle" class="chip-input-box position-relative" style="position: relative; overflow: hidden;">
105
+ <div class="chip-list" id="selected-fields-chips">
106
+ <%# This will be dynamically populated with chips for selected fields %>
107
+ <span class="chip" style="color: #999;">No fields selected</span>
108
+ <svg width="16" height="16" class="position-absolute" style="top: 0.625rem; right: 0.625rem;" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
109
+ <path d="M4 6L8 10L12 6" stroke="#A4A7AE" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
110
+ </svg>
111
+ </div>
112
+ <div id="" class="position-absolute" style="position: absolute; width: 100%; height: 100%; top: 0; left: 0;"></div>
113
+ </label>
114
+ <div class="chip-dropdown">
115
+ <label class="chip-option">
116
+ <input type="checkbox" id="allFields" />
117
+ All fields
118
+ </label>
119
+ <div class="mt-2" id="field-selection">
120
+ <% Kaui.account_search_columns.call[0].each_with_index do |title, index| %>
121
+ <label class="chip-option d-flex align-items-center gap-2">
122
+ <input type="checkbox" class="field-toggle" data-field-index="<%= index %>" checked />
123
+ <span><%= title %></span>
124
+ </label>
125
+ <% end %>
126
+ </div>
127
+ </div>
128
+ </div>
102
129
  </div>
103
130
  </div>
104
131
  </div>
@@ -114,49 +141,49 @@
114
141
 
115
142
  <style>
116
143
  .dropdown-menu#column-visibility {
117
- max-height: 300px;
118
- width: 200px;
144
+ max-height: 18.75rem;
145
+ width: 12.5rem;
119
146
  overflow-y: auto;
120
147
  }
121
148
 
122
149
  .dropdown-menu#column-visibility::before {
123
150
  content: 'Drag to reorder columns';
124
151
  display: block;
125
- height: 30px;
152
+ height: 1.875rem;
126
153
  text-align: center;
127
154
  color: darkgrey;
128
- padding-top: 5px;
155
+ padding-top: 0.3125rem;
129
156
  }
130
-
157
+
131
158
  .dropdown-menu {
132
- padding: 5px;
159
+ padding: 0.3125rem;
133
160
  }
134
161
 
135
162
  .toggle-button-right {
136
163
  float: right;
137
- margin-bottom: 10px;
138
- margin-left: 10px;
164
+ margin-bottom: 0.625rem;
165
+ margin-left: 0.625rem;
139
166
  background-color: white;
140
167
  color: black;
141
168
  text-transform: none;
142
- border: 1px solid #ccc;
143
- padding: 8px 15px;
169
+ border: 0.0625rem solid #ccc;
170
+ padding: 0.5rem 0.9375rem;
144
171
  }
145
172
 
146
173
  .download-button-right {
147
174
  float: right;
148
- margin-bottom: 10px;
149
- margin-left: 10px;
175
+ margin-bottom: 0.625rem;
176
+ margin-left: 0.625rem;
150
177
  background-color: white;
151
178
  color: black;
152
179
  text-transform: none;
153
- border: 1px solid #ccc;
154
- padding: 8px 15px;
180
+ border: 0.0625rem solid #ccc;
181
+ padding: 0.5rem 0.9375rem;
155
182
  }
156
183
 
157
184
  .icon-drag {
158
185
  float: right;
159
- padding: 5px;
186
+ padding: 0.3125rem;
160
187
  }
161
188
 
162
189
  .dropdown-container {
@@ -165,12 +192,13 @@
165
192
  }
166
193
 
167
194
  .label-group-item-manual {
168
- margin: 5px;
195
+ margin: 0.3125rem;
169
196
  width: -webkit-fill-available;
170
197
  cursor: grab;
171
198
  }
199
+
172
200
  .label-group-item-manual:active {
173
- cursor: grabbing;
201
+ cursor: grabbing;
174
202
  }
175
203
  </style>
176
204
 
@@ -231,18 +259,29 @@ $(document).ready(function() {
231
259
  downloadButton.addEventListener('click', function() {
232
260
  event.preventDefault();
233
261
 
234
- var allFieldsChecked = document.getElementById('allFields').checked;
262
+ var allFieldsChecked = $('#allFields').is(':checked');
235
263
  var startDate = $('#startDate').val();
236
264
  var endDate = $('#endDate').val();
237
265
  var downloadAll = $('#allData').is(':checked');
238
- var thElements = document.querySelectorAll('#accounts-table th');
239
- var columnTitles = Array.from(thElements).map(function(th) {
240
- return th.textContent.trim();
241
- });
242
- var columnsString = columnTitles.join(',')
266
+
267
+ // Get selected fields
268
+ var selectedFields = [];
269
+ if (!allFieldsChecked) {
270
+ $('#field-selection input.field-toggle:checked').each(function() {
271
+ var labelText = $(this).closest('label').find('span').text().trim();
272
+ selectedFields.push(labelText);
273
+ });
274
+ } else {
275
+ // If all fields checked, get all column titles from the table
276
+ var thElements = document.querySelectorAll('#accounts-table th');
277
+ selectedFields = Array.from(thElements).map(function(th) {
278
+ return th.textContent.trim();
279
+ });
280
+ }
281
+
243
282
  var url = new URL("<%= download_accounts_path %>", window.location.origin);
244
283
  var params = new URLSearchParams();
245
- params.append('columnsString', columnsString);
284
+ params.append('columnsString', selectedFields.join(','));
246
285
  if (!downloadAll) {
247
286
  params.append('startDate', startDate);
248
287
  params.append('endDate', endDate);
@@ -0,0 +1,43 @@
1
+ <div class="payment-methods">
2
+
3
+ <div class="d-flex flex-column">
4
+
5
+ <div class="payment-methods-header">
6
+ <h2>Payment Methods</h2>
7
+ <span>
8
+ <% if can? :create, Kaui::PaymentMethod %>
9
+ <%= form_tag kaui_engine.refresh_payment_methods_path(params.to_h), :method => :post, :class => 'form-force-inline form-right' do %>
10
+ <%= render "kaui/components/button/button", {
11
+ label: "Update",
12
+ icon: "kaui/account/refresh.svg",
13
+ variant: "outline-secondary d-inline-flex align-items-center gap-1",
14
+ type: "submit",
15
+ html_class: "kaui-button custom-hover",
16
+ } %>
17
+ <%= link_to kaui_engine.new_payment_method_path(:account_id => @account.account_id) do %>
18
+ <%= render "kaui/components/button/button", {
19
+ label: "Add Method",
20
+ icon: "kaui/plus.svg",
21
+ variant: "outline-secondary d-inline-flex align-items-center gap-1",
22
+ type: "button",
23
+ html_class: "kaui-dropdown custom-hover",
24
+ } %>
25
+ <% end %>
26
+ <% end %>
27
+ <% end %>
28
+ </span>
29
+ </div>
30
+
31
+
32
+ <% unless @payment_methods.empty? %>
33
+ <div class="info-wrapper">
34
+
35
+ <%= render :partial => 'kaui/payment_methods/payment_methods_table', :locals => {:account => @account,
36
+ :payment_methods => @payment_methods,
37
+ :last_transaction_by_payment_method_id => @last_transaction_by_payment_method_id} %>
38
+ </div>
39
+ <% end %>
40
+
41
+ </div>
42
+
43
+ </div>
@@ -0,0 +1,67 @@
1
+ <div class="personal-details">
2
+
3
+ <div class="personal-details-header">
4
+ <h2>Personal Information</h2>
5
+ </div>
6
+
7
+ <div class="row">
8
+
9
+ <div class="col-md-4">
10
+ <div class="info-item">
11
+ <b>Name</b>
12
+ <p><%= @account.name %></p>
13
+ </div>
14
+ <div class="info-item">
15
+ <b>Address1</b>
16
+ <p><%= @account.address1 %></p>
17
+ </div>
18
+ <div class="info-item">
19
+ <b>Address2</b>
20
+ <p><%= @account.address2 %></p>
21
+ </div>
22
+ <div class="info-item">
23
+ <b>City</b>
24
+ <p><%= @account.city %></p>
25
+ </div>
26
+ </div>
27
+
28
+ <div class="col-md-4">
29
+ <div class="info-item">
30
+ <b>State</b>
31
+ <p><%= @account.state %></p>
32
+ </div>
33
+ <div class="info-item">
34
+ <b>Country</b>
35
+ <p><%= @account.country %></p>
36
+ </div>
37
+ <div class="info-item">
38
+ <b>Postal Code</b>
39
+ <p><%= @account.postal_code %></p>
40
+ </div>
41
+ <div class="info-item">
42
+ <b>Phone</b>
43
+ <p><%= @account.phone %></p>
44
+ </div>
45
+ </div>
46
+
47
+ <div class="col-md-4">
48
+ <div class="info-item">
49
+ <b>Company</b>
50
+ <p><%= @account.company %></p>
51
+ </div>
52
+ <div class="info-item">
53
+ <b>Primary email</b>
54
+ <p><%= @account.email %></p>
55
+ </div>
56
+ <div class="info-item contact_email_tags">
57
+ <b>Contact emails</b>
58
+ <div class="email-tags">
59
+ <%= render :partial => 'kaui/account_emails/account_emails_table',
60
+ :locals => {:account_emails => @account_emails} %>
61
+ </div>
62
+ </div>
63
+ </div>
64
+
65
+ </div>
66
+
67
+ </div>
@@ -1,10 +1,16 @@
1
- <div class="register">
2
- <div class="col-md-8 col-md-offset-2">
3
-
4
- <div class="column-block">
5
- <h1>Update account</h1>
6
- <%= render 'form' %>
1
+ <div class="register kaui-new-account">
2
+ <div class="">
3
+ <div class="mx-auto" style="max-width: 37.5rem;">
4
+ <h5 class="add-account-title">
5
+ <span class="icon-container">
6
+ <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
7
+ <path d="M13.3333 5.83333C13.3333 7.67428 11.8409 9.16667 9.99996 9.16667C8.15901 9.16667 6.66663 7.67428 6.66663 5.83333C6.66663 3.99238 8.15901 2.5 9.99996 2.5C11.8409 2.5 13.3333 3.99238 13.3333 5.83333Z" stroke="#414651" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" />
8
+ <path d="M15.8333 15.8332C15.8333 13.532 13.9678 11.6665 11.6666 11.6665H8.33329C6.03211 11.6665 4.16663 13.532 4.16663 15.8332V17.4998H15.8333V15.8332Z" stroke="#414651" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" />
9
+ </svg>
10
+ </span>
11
+ Update account
12
+ </h5>
13
+ <%= render 'form_account' %>
14
+ </div>
7
15
  </div>
8
-
9
- </div>
10
- </div>
16
+ </div>
@@ -1,34 +1,69 @@
1
- <div class="search">
1
+ <div class="kaui-container kaui-accounts-index">
2
+ <div class="search">
3
+ <div>
4
+
5
+ <%= render "kaui/components/breadcrumb/breadcrumb" %>
6
+ <%= render :partial => 'account_filterbar' %>
2
7
 
3
- <div class="column-block">
4
- <%= render :partial => 'multi_functions_bar' %>
8
+ <%= render partial: 'functions_bar', locals: {
9
+ title: "Accounts",
10
+ actions: [
11
+ {
12
+ label: "Advanced Search",
13
+ icon: 'kaui/search.svg',
14
+ html_class: "kaui-button custom-hover",
15
+ path: "#",
16
+ variant: "outline-secondary",
17
+ data: {
18
+ bs_toggle: "modal",
19
+ bs_target: "#advanceSearchModal"
20
+ }
21
+ },
22
+ {
23
+ label: "Download CSV",
24
+ icon: 'kaui/download.svg',
25
+ html_class: "kaui-button custom-hover",
26
+ path: "#",
27
+ variant: "outline-secondary",
28
+ id: "modalDownloadButton"
29
+ },
30
+ {
31
+ label: "Edit Columns",
32
+ icon: 'kaui/setting.svg',
33
+ html_class: "kaui-button custom-hover",
34
+ path: "#",
35
+ variant: "outline-secondary",
36
+ id: "dropdownMenu1"
37
+ },
38
+ {
39
+ label: "Create Account",
40
+ icon: 'kaui/plus.svg',
41
+ path: kaui_engine.new_account_path,
42
+ html_class: "kaui-dropdown custom-hover",
43
+ variant: "outline-secondary"
44
+ }
45
+ ]
46
+ } %>
47
+
48
+ <div id="search-labels-container" class="ml-2">
49
+ <!-- Dynamic search labels will be added here -->
50
+ </div>
5
51
 
6
- <table id="accounts-table" class="table table-condensed mobile-data" style="width:100%">
7
- <thead>
8
- <tr>
9
- <% Kaui.account_search_columns.call[0].each do |title| %>
10
- <th><%= title %></th>
11
- <% end %>
12
- </tr>
13
- </thead>
14
- <tbody>
15
- <tr>
16
- <td colspan="1" class="dataTables_empty">Loading data from server</td>
17
- </tr>
18
- </tbody>
19
- </table>
52
+ <table id="accounts-table" class="table table-condensed mobile-data" style="width:100%">
53
+ <thead>
54
+ <tr>
55
+ <% Kaui.account_search_columns.call[0].each do |title| %>
56
+ <th><%= title %></th>
57
+ <% end %>
58
+ </tr>
59
+ </thead>
60
+ <tbody>
61
+ </tbody>
62
+ </table>
63
+ </div>
20
64
  </div>
21
65
  </div>
22
66
 
23
- <style>
24
- #accounts-table td, #accounts-table tr {
25
- white-space: nowrap;
26
- }
27
- .custom-checkbox {
28
- pointer-events: none;
29
- }
30
- </style>
31
-
32
67
  <%= javascript_tag do %>
33
68
  $(document).ready(function() {
34
69
  var table = $('#accounts-table').DataTable({
@@ -36,6 +71,12 @@ $(document).ready(function() {
36
71
  "enable": false
37
72
  },
38
73
  "stateSave": true,
74
+ "stateSaveCallback": function(settings, data) {
75
+ localStorage.setItem('DataTables_accounts-table_' + window.location.pathname, JSON.stringify(data));
76
+ },
77
+ "stateLoadCallback": function(settings) {
78
+ return JSON.parse(localStorage.getItem('DataTables_accounts-table_' + window.location.pathname));
79
+ },
39
80
  "scrollX": true,
40
81
  "dom": "<'row'r>t<'row'<'col-md-6'i><'col-md-6'p>>",
41
82
  "pagingType": <% if @max_nb_records.nil? -%>"simple"<% else -%>"full_numbers"<% end -%>,
@@ -67,7 +108,10 @@ $(document).ready(function() {
67
108
  return reorderedData;
68
109
  }
69
110
  },
70
- "columns": <%= raw @visible_columns.to_json %>
111
+ "columns": <%= raw @visible_columns.to_json %>,
112
+ "stateSaveParams": function(settings, data) {
113
+ data.start = 0; // always first page when restoring state
114
+ }
71
115
  });
72
116
 
73
117
  <!-- When we don't know the total number of pages, we need to hide the legend and next button manually -->
@@ -79,6 +123,12 @@ $(document).ready(function() {
79
123
  $(".next.paginate_button").toggleClass("disabled", noMoreData);
80
124
  $(".dataTables_info").toggle(!noMoreData);
81
125
  <% end %>
126
+
127
+ $("td.dataTables_empty").each(function() {
128
+ var text = $(this).text().trim();
129
+ $(this).html('<p class="max-text-container">' + text + '</p>');
130
+ });
131
+
82
132
  populateSearchLabelsFromUrl();
83
133
  });
84
134
  });
@@ -1,10 +1,16 @@
1
- <div class="register">
2
- <div class="col-md-8 col-md-offset-2">
3
-
4
- <div class="column-block">
5
- <h1>Add new account</h1>
6
- <%= render 'form' %>
1
+ <div class="register kaui-new-account">
2
+ <div class="">
3
+ <div class="mx-auto" style="max-width: 37.5rem;">
4
+ <h5 class="add-account-title">
5
+ <span class="icon-container">
6
+ <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
7
+ <path d="M13.3333 5.83333C13.3333 7.67428 11.8409 9.16667 9.99996 9.16667C8.15901 9.16667 6.66663 7.67428 6.66663 5.83333C6.66663 3.99238 8.15901 2.5 9.99996 2.5C11.8409 2.5 13.3333 3.99238 13.3333 5.83333Z" stroke="#414651" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" />
8
+ <path d="M15.8333 15.8332C15.8333 13.532 13.9678 11.6665 11.6666 11.6665H8.33329C6.03211 11.6665 4.16663 13.532 4.16663 15.8332V17.4998H15.8333V15.8332Z" stroke="#414651" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" />
9
+ </svg>
10
+ </span>
11
+ Add New Account
12
+ </h5>
13
+ <%= render 'form_account' %>
14
+ </div>
7
15
  </div>
8
-
9
- </div>
10
16
  </div>
@@ -1,16 +1,22 @@
1
- <div class="row">
2
- <%= render :partial => 'account_info' %>
3
-
4
- <%= render :partial => 'billing_info' %>
5
- </div>
6
- <div class="row">
7
- <%= render :partial => 'personal_info' %>
8
-
9
- <%= render :partial => 'payment_methods' %>
1
+ <div class="kaui-container">
2
+ <%= render "kaui/components/breadcrumb/breadcrumb" %>
3
+ <div class="d-flex" style="gap: 4rem;">
4
+ <% if params[:account_id].present? %>
5
+ <%= render :template => 'kaui/layouts/kaui_account_sidebar' %>
6
+ <% end %>
7
+ <div class="d-flex flex-column w-100">
8
+ <%= render :partial => 'account_details' %>
9
+
10
+ <%= render :partial => 'billing_details' %>
11
+
12
+ <%= render :partial => 'personal_details' %>
13
+
14
+ <%= render :partial => 'payment_gateways' %>
15
+ </div>
16
+ </div>
10
17
  </div>
11
18
 
12
-
13
- <%= render :partial => 'link_parent_modal' %>
19
+ <%= render :partial => 'link_parent_to_modal' %>
14
20
 
15
21
  <% if email_notifications_plugin_available? %>
16
22
  <%= render :partial => 'kenui/email_notifications/configure_events_modal' %>
@@ -1,26 +1,48 @@
1
- <div class="column-block">
1
+ <div class="kaui-container ">
2
+ <div class="clock-container">
3
+ <div class="d-flex flex-column">
4
+ <div class="clock-header mb-3">
5
+ <div class="d-flex align-items-start flex-column">
6
+ <h2>Clock</h2>
7
+ <p>Current date/time: <span id="kb_clock"><%= @clock['currentUtcTime'] %></span></p>
8
+ </div>
9
+ <span>
10
+ </span>
11
+ </div>
12
+ <div>
13
+ <%= form_tag kaui_engine.admin_set_clock_path(params.to_h), :method => :put, :class => 'form-horizontal' do %>
2
14
 
3
- <h1>Clock</h1>
15
+ <div class="trigger-invoice-box form-group">
16
+ <b>Set new date</b>
17
+ <div class="d-flex align-items-center">
18
+ <div class="custom-date-input-wrapper kaui-button custom-hover">
19
+ <svg width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
20
+ <path d="M14.9167 12.5V18.3333M17.8333 15.4167H12" stroke="#A4A7AE" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
21
+ <path d="M14.0833 1.66675V5.00008M6.58325 1.66675V5.00008" stroke="#A4A7AE" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
22
+ <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"/>
23
+ <path d="M2.83325 8.33325H17.8333" stroke="#A4A7AE" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
24
+ </svg>
25
+ <input class="form-control" name="new_date" type="text" data-provide="datepicker" data-date-format="yyyy-mm-dd" data-date-today-highlight="true" value="<%= @clock['localDate'] %>">
26
+ </div>
4
27
 
5
- <ul>
6
- <li>Current date/time: <span id="kb_clock"><%= @clock['currentUtcTime'] %></span></li>
7
- </ul>
28
+ <%= render "kaui/components/button/button", {
29
+ label: "Submit",
30
+ variant: "outline-secondary d-inline-flex align-items-center gap-1",
31
+ type: "submit",
32
+ html_class: "btn btn-xs kaui-dropdown custom-hover py-2 px-3",
33
+ html_options: { name: "commit", value: "Submit" }
34
+ } %>
35
+ </div>
36
+
37
+ <%= button_tag type: 'submit', name: 'commit', value: 'Reset', class: 'kaui-button dots-menu custom-hover' do %>
38
+ <%= image_tag('kaui/setting/reset.svg', alt: 'Reset Icon', class: 'me-2', size: '16x16') %>
39
+ Reset
40
+ <% end %>
8
41
 
9
- <div>
10
- <%= form_tag kaui_engine.admin_set_clock_path(params.to_h), :method => :put, :class => 'form-horizontal' do %>
11
- <div class="form-group">
12
- <%= label_tag :new_date, 'Set new date', :class => 'col-sm-2 control-label' %>
13
- <div class="col-sm-2">
14
- <input class="form-control" name="new_date" type="text" data-provide="datepicker" data-date-format="yyyy-mm-dd" data-date-today-highlight="true" value="<%= @clock['localDate'] %>">
15
- </div>
16
- </div>
17
- <div class="form-group">
18
- <div class="col-sm-offset-2 col-sm-10">
19
- <%= submit_tag 'Submit', :class => 'btn btn-default' %>
20
- <%= button_tag 'Reset', :class => 'btn btn-danger' %>
21
42
  </div>
22
- </div>
23
- <% end %>
43
+ <% end %>
44
+ </div>
45
+ </div>
24
46
  </div>
25
47
  </div>
26
48
 
@@ -37,3 +59,6 @@
37
59
  $.ajax({url: "<%= admin_path(:format => :js) %>"});
38
60
  }
39
61
  <% end %>
62
+
63
+
64
+