PluginProbe ʕ •ᴥ•ʔ
LatePoint – Calendar Booking Plugin for Appointments and Events / trunk
LatePoint – Calendar Booking Plugin for Appointments and Events vtrunk
5.6.5 5.6.4 5.6.3 5.6.2 5.6.1 5.6.0 5.5.2 5.5.1 5.5.0 5.4.2 trunk 5.1.0 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7 5.1.8 5.1.9 5.1.91 5.1.92 5.1.93 5.1.94 5.2.0 5.2.1 5.2.10 5.2.11 5.2.2 5.2.3 5.2.4 5.2.5 5.2.6 5.2.7 5.2.8 5.2.9 5.3.0 5.3.1 5.3.2 5.4.0 5.4.1
latepoint / lib / assets / javascripts / bin / admin / _customers.js
latepoint / lib / assets / javascripts / bin / admin Last commit date
_agents.js 1 year ago _calendar.js 3 months ago _chart.js 9 months ago _customers.js 1 year ago _customers_import.js 9 months ago _delete-confirm.js 1 week ago _orders.js 9 months ago _processes.js 1 year ago _razorpay_connect.js 1 month ago _steps.js 9 months ago _stripe_connect.js 1 year ago main.js 2 weeks ago updates.js 3 months ago
_customers.js
88 lines
1 /*
2 * Copyright (c) 2024 LatePoint LLC. All rights reserved.
3 */
4
5 function latepoint_init_quick_customer_form(){
6 let $customer_form_wrapper = jQuery('.quick-customer-form-w');
7 latepoint_init_input_masks($customer_form_wrapper);
8
9
10 $customer_form_wrapper.find('.customer-quick-edit-form').on('submit', function(e){
11 if(jQuery(this).find('button[type="submit"]').hasClass('os-loading')) return false;
12 e.preventDefault();
13 latepoint_submit_quick_customer_form();
14 });
15
16
17 $customer_form_wrapper.find('.quick-customer-form-view-log-btn').on('click', function(){
18 var $trigger_elem = jQuery(this);
19 $trigger_elem.addClass('os-loading');
20 var route = $trigger_elem.data('route');
21 var data = { action: 'latepoint_route_call', route_name: route, params: {customer_id: $trigger_elem.data('customer-id')}, return_format: 'json' }
22 jQuery.ajax({
23 type : "post",
24 dataType : "json",
25 url : latepoint_timestamped_ajaxurl(),
26 data : data,
27 success: function(response){
28 $trigger_elem.removeClass('os-loading');
29 if(response.status === "success"){
30 latepoint_display_in_side_sub_panel(response.message);
31 jQuery('body').addClass('has-side-sub-panel');
32 }else{
33 alert(response.message, 'error');
34 }
35 }
36 });
37 return false;
38 });
39 }
40
41
42 function latepoint_submit_quick_customer_form(){
43 let $quick_edit_form = jQuery('form.customer-quick-edit-form');
44
45 let errors = latepoint_validate_form($quick_edit_form);
46 if(errors.length){
47 let error_messages = errors.map(error => error.message ).join(', ');
48 latepoint_add_notification(error_messages, 'error');
49 return false;
50 }
51
52 $quick_edit_form.find('button[type="submit"]').addClass('os-loading');
53 jQuery.ajax({
54 type: "post",
55 dataType: "json",
56 processData: false,
57 contentType: false,
58 url: latepoint_timestamped_ajaxurl(),
59 data: latepoint_create_form_data($quick_edit_form),
60 success: function (response) {
61 $quick_edit_form.find('button[type="submit"]').removeClass('os-loading');
62 if(response.form_values_to_update){
63 jQuery.each(response.form_values_to_update, function(name, value){
64 $quick_edit_form.find('[name="'+ name +'"]').val(value);
65 });
66 }
67 if (response.status === "success") {
68 latepoint_add_notification(response.message);
69 latepoint_reload_after_customer_save();
70 }else{
71 latepoint_add_notification(response.message, 'error');
72 }
73 }
74 });
75
76 }
77
78
79
80 function latepoint_reload_after_customer_save(){
81 latepoint_reload_calendar_view();
82
83 jQuery('.os-widget').each(function(){
84 latepoint_reload_widget(jQuery(this));
85 });
86 if(jQuery('table.os-reload-on-booking-update').length) latepoint_filter_table(jQuery('table.os-reload-on-booking-update'), jQuery('table.os-reload-on-booking-update'));
87 latepoint_close_side_panel();
88 }