Current File : /home/kelaby89/abl.academy/wp-content/plugins/thim-core/admin/assets/js/thim-dashboard.js |
(function ($) {
$(document).ready(function () {
thim_pre_install_demo()
});
$(document).on('click', '.tc-button-deregister', function (e) {
e.preventDefault();
var confirm = window.confirm($(this).data('confirm_deregister'));
if (!confirm) {
return;
}
window.location.href = $(this).data('url-deregister');
});
function thim_pre_install_demo() {
if ($('.tc-importer-wrapper').length == 0) {
return;
}
$(document).on('change', '#thim-select-page-builder', function () {
var elem = $(this),
elem_val = elem.val(),
elem_parent = elem.parents('.tc-importer-wrapper'),
data = {
action : 'thim_update_chosen_builder',
thim_key : 'thim_page_builder_chosen',
thim_value: elem_val,
};
if (elem_val !== '') {
elem_parent.removeClass('visual_composer');
elem_parent.removeClass('site_origin');
elem_parent.removeClass('elementor');
elem_parent.addClass(elem_val);
elem_parent.removeClass('overlay').addClass('loading');
$.post(ajaxurl, data, function (response) {
console.log(response);
elem_parent.removeClass('loading');
});
} else {
elem_parent.addClass('overlay');
}
});
}
})(jQuery);
function thimActivatePlugin() {
const form = document.querySelector('.thim-form-license');
if (form) {
form.addEventListener('submit', function (e) {
e.preventDefault();
// remove all notice
const notices = document.querySelectorAll('.thim-license-notice');
notices.forEach(function (notice) {
notice.remove();
});
//Get all form data values
const formData = new FormData(form);
//Get the form values
const data = {};
for (const [key, value] of formData.entries()) {
data[key] = value;
}
const btn = form.querySelector('[type="submit"]'),
btnText = btn.innerHTML;
btn.innerHTML = 'Activating...';
btn.setAttribute('disabled', 'disabled');
// Use wp.apiFetch to POST to the REST API
wp.apiFetch({
path: '/thim/v1/license/activate',
method: 'POST',
data: data,
}).then((response) => {
// add message after form use insertAdjacentHTML.
if ( response.status == 'success' ) {
form.insertAdjacentHTML('afterend', '<div class="thim-license-notice thim-license-notice--success text-success"><p>License activated successfully.</p></div>');
setTimeout(function () {
// Get param 'thim_redirect' from url and redirect to that url.
const urlParams = new URLSearchParams(window.location.search);
let redirect_url = urlParams.get('thim_redirect');
if ( redirect_url ) {
window.location.href = redirect_url;
} else {
window.location.reload();
}
}, 800);
} else {
form.insertAdjacentHTML('afterend', '<div class="thim-license-notice thim-license-notice--error text-error"><p>' + response.message + '</p></div>');
}
}).catch((error) => {
// add message after form use error.message.
form.insertAdjacentHTML('afterend', '<div class="thim-license-notice thim-license-notice--error text-error"><p>' + error.message + '</p></div>');
}).finally(() => {
// remove disable attribute to button
btn.removeAttribute('disabled');
btn.innerHTML = btnText;
});
});
}
}
function thimDeactivatePlugin() {
const deactivateBtn = document.querySelector('.thim-deactive');
if (deactivateBtn) {
deactivateBtn.addEventListener('click', function (e) {
e.preventDefault();
// remove all notice
const notices = document.querySelectorAll('.thim-license-notice');
notices.forEach(function (notice) {
notice.remove();
});
const btnText = deactivateBtn.innerHTML;
deactivateBtn.innerHTML = 'Deactivating...';
deactivateBtn.setAttribute('disabled', 'disabled');
// Use wp.apiFetch to POST to the REST API
wp.apiFetch({
path: '/thim/v1/license/deactivate',
method: 'POST'
}).then((response) => {
// add message after form use insertAdjacentHTML.
if ( response.status == 'success' ) {
deactivateBtn.insertAdjacentHTML('afterend', '<div class="thim-license-notice thim-license-notice--success text-success"><p>License deactivated successfully.</p></div>');
setTimeout(function () {
window.location.reload();
}, 800);
} else {
deactivateBtn.insertAdjacentHTML('afterend', '<div class="thim-license-notice thim-license-notice--error text-error"><p>' + response.message + '</p></div>');
}
}).catch((error) => {
// add message after form use error.message.
deactivateBtn.insertAdjacentHTML('afterend', '<div class="thim-license-notice thim-license-notice--error text-error"><p>' + error.message + '</p></div>');
}).finally(() => {
// remove disable attribute to button
deactivateBtn.removeAttribute('disabled');
deactivateBtn.innerHTML = btnText;
});
});
}
}
function thimUpdatePersonal() {
const form = document.querySelector('.thim-form-personal');
const btn = document.querySelector('.arrow-personal-token');
if (form) {
form.addEventListener('submit', function (e) {
e.preventDefault();
// remove all notice
const notices = document.querySelectorAll('.thim-license-notice');
notices.forEach(function (notice) {
notice.remove();
});
//Get all form data values
const formData = new FormData(form);
//Get the form values
const data = {};
for (const [key, value] of formData.entries()) {
data[key] = value;
}
const btn = form.querySelector('[type="submit"]'),
btnText = btn.innerHTML;
btn.innerHTML = 'Activating...';
btn.setAttribute('disabled', 'disabled');
// Use wp.apiFetch to POST to the REST API
wp.apiFetch({
path: '/thim/v1/license/update-personal',
method: 'POST',
data: data,
}).then((response) => {
// add message after form use insertAdjacentHTML.
if ( response.status == 'success' ) {
form.insertAdjacentHTML('afterend', '<div class="thim-license-notice thim-license-notice--success text-success"><p>License activated successfully.</p></div>');
setTimeout(function () {
window.location.reload();
}, 800);
} else {
form.insertAdjacentHTML('afterend', '<div class="thim-license-notice thim-license-notice--error text-error"><p>' + response.message + '</p></div>');
}
}).catch((error) => {
// add message after form use error.message.
form.insertAdjacentHTML('afterend', '<div class="thim-license-notice thim-license-notice--error text-error"><p>' + error.message + '</p></div>');
}).finally(() => {
// remove disable attribute to button
btn.removeAttribute('disabled');
btn.innerHTML = btnText;
});
});
}
}
document.addEventListener('DOMContentLoaded', function () {
thimActivatePlugin();
thimDeactivatePlugin();
thimUpdatePersonal();
});