PluginProbe
Ultimate Store Kit – Store Builder Addons for Elementor, WooCommerce Store Builder, EDD Store Builder / 3.1.4
Ultimate Store Kit – Store Builder Addons for Elementor, WooCommerce Store Builder, EDD Store Builder v3.1.4
3.1.4 3.0.8 3.0.9 3.1.0 3.1.2 3.1.3 3.0.7 3.0.5 3.0.4 3.0.3 3.0.2 trunk 1.5.0 1.5.1 1.5.2 1.6.1 1.6.2 1.6.3 1.6.4 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 All 93 releases
ultimate-store-kit / src / admin / others / js / ultimate-builder.js

ultimate-builder.js in Ultimate Store Kit – Store Builder Addons for Elementor, WooCommerce Store Builder, EDD Store Builder 3.1.4, at src/admin/others/js/ultimate-builder.js

142 lines 5.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 !function ($) {
2 "use strict";
3 var __ = wp.i18n.__;
4
5 function showModal() {
6 $('#ultimate-builder-kit-builder-modal').show();
7 }
8
9 function hideModal() {
10 $('#ultimate-builder-kit-builder-modal').hide();
11 }
12
13 function resetModalForm(){
14 $("#ultimate-builder-kit-builder-modal form")[0].reset();
15 $("#ultimate-builder-kit-builder-modal form .template_id").val('');
16 setTemplateStatusSwitcher(1);
17 }
18
19 function setSubmitBtn(string){
20 $("#ultimate-builder-kit-builder-modal form .usk-modal-submit-btn").val(string)
21 }
22
23 function setError($this) {
24 $this.addClass('input-error');
25 }
26
27 function removeError($this) {
28 $('.input-error').removeClass('input-error');
29 }
30
31 function setTemplateStatusSwitcher(value) {
32 var isActive = String(value) === '1';
33 var $modal = $('#ultimate-builder-kit-builder-modal');
34 var $switcher = $modal.find('#usk_template_status_switcher');
35 var $statusInput = $modal.find('#usk_template_status');
36
37 $statusInput.val(isActive ? '1' : '0');
38
39 if (isActive) {
40 $switcher.addClass('usk-active');
41 } else {
42 $switcher.removeClass('usk-active');
43 }
44
45 $switcher.attr('aria-checked', isActive ? 'true' : 'false');
46 // Translate both labels up front: a ternary of two __() calls gets
47 // minified into __(cond ? 'Active' : 'Inactive'), which breaks i18n parsing.
48 var activeText = __('Active', 'ultimate-store-kit');
49 var inactiveText = __('Inactive', 'ultimate-store-kit');
50 $modal.find('.usk-switcher-status-text').text(isActive ? activeText : inactiveText);
51 }
52
53 $(document).on('click', '#ultimate-builder-kit-builder-modal .usk-modal-close-button', function (e) {
54 hideModal();
55 })
56
57 $(document).on('click', 'body.post-type-usk-template-builder a.page-title-action', function (e) {
58 e.preventDefault();
59 resetModalForm();
60 setSubmitBtn(__('Create Template', 'ultimate-store-kit'));
61 showModal();
62 })
63
64
65 $(document).on('submit', '#ultimate-builder-kit-builder-modal form', function (e) {
66 e.preventDefault();
67 var $serialized = $(this).serialize();
68 removeError();
69
70 $.ajax({
71 url: ajaxurl,
72 dataType: "json",
73 method: 'post',
74 cache: false,
75 data: {
76 'action': 'ultimate_store_kit_builder_create_template',
77 'data': $serialized,
78 },
79 success: function (response) {
80 window.location.href = response.data.redirect
81 },
82 error: function (errorThrown) {
83 if (errorThrown.status == 422) {
84 $.each(errorThrown.responseJSON.data.errors_arr, function (index, value) {
85 setError($('#ultimate-builder-kit-builder-modal #' + index));
86 });
87 }
88 }
89 });
90
91 });
92
93 $(document).on('click', 'body.post-type-usk-template-builder .row-actions .usk-edit-action a', function (e) {
94 e.preventDefault();
95 removeError();
96 resetModalForm();
97 setSubmitBtn(__('Update Template', 'ultimate-store-kit'));
98
99 $.ajax({
100 url: ajaxurl,
101 dataType: "json",
102 method: 'post',
103 data: {
104 'action': 'ultimate_store_kit_builder_get_edit_template',
105 'template_id': $(this).data('id'),
106 'nonce': UltimateStoreKitConfigBuilder.nonce
107 },
108 success: function (response) {
109 if(response.success){
110 $("#ultimate-builder-kit-builder-modal form .template_id").val(response.data.id).change();
111 $("#ultimate-builder-kit-builder-modal form #template_name").val(response.data.name).change();
112 $("#ultimate-builder-kit-builder-modal form #template_type").val(response.data.type).change();
113 setTemplateStatusSwitcher(response.data.status);
114 }
115 showModal();
116 },
117 error: function (errorThrown) {
118 console.log(errorThrown);
119 if (errorThrown.status == 422 || errorThrown.status == 403) {
120 alert(__('Permission denied or invalid request', 'ultimate-store-kit'));
121 }
122 }
123 });
124
125 });
126
127 $(document).ready(function () {
128 $('#ultimate-builder-kit-builder-modal').on('click', '#usk_template_status_switcher', function () {
129 var $input = $('#usk_template_status');
130 var isActive = $input.val() === '1';
131 setTemplateStatusSwitcher(isActive ? 0 : 1);
132 }).on('keydown', '#usk_template_status_switcher', function (e) {
133 if (e.key === ' ' || e.key === 'Enter') {
134 e.preventDefault();
135 var $input = $('#usk_template_status');
136 var isActive = $input.val() === '1';
137 setTemplateStatusSwitcher(isActive ? 0 : 1);
138 }
139 });
140 });
141
142 }(jQuery);