Files
2026-04-28 15:13:50 +02:00

539 lines
18 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
(
function ($) {
'use strict';
/**
* All of the code for your admin-facing JavaScript source
* should reside in this file.
*
* Note: It has been assumed you will write jQuery code here, so the
* $ function reference has been prepared for usage within the scope
* of this function.
*
* This enables you to define handlers, for when the DOM is ready:
*
* $(function() {
*
* });
*
* When the window is loaded:
*
* $( window ).load(function() {
*
* });
*
* ...and/or other possibilities.
*
* Ideally, it is not considered best practise to attach more than a
* single DOM-ready or window-load handler for a particular page.
* Although scripts in the WordPress core, Plugins and Themes may be
* practising this, we should strive to set a better example in our own work.
*/
$(window).on('load', function () {
function getUrlVars () {
var vars = [], hash, get_current_url;
get_current_url = window.location.href;
var hashes = get_current_url.slice(get_current_url.indexOf('?') + 1).split('&');
for (var i = 0; i < hashes.length; i++) {
hash = hashes[i].split('=');
vars.push(hash[0]);
vars[hash[0]] = hash[1];
}
return vars;
}
let getURLVARS = getUrlVars();
let pluginspagesarray = [
'aet-et-settings',
'aet-ft-settings',
'aet-gc-settings',
'aet-get-started',
'aet-cat-list'
];
if (getURLVARS) {
let getURLVARSPage = getURLVARS.page;
if ($.inArray(getURLVARSPage, pluginspagesarray) !== -1) {
$('a[href="admin.php?page=aet-et-settings"]').parent().addClass('current');
$('a[href="admin.php?page=aet-et-settings"]').addClass('current');
}
}
function setAllAttributes (element, attributes) {
Object.keys(attributes).forEach(function (key) {
element.setAttribute(key, attributes[key]);
});
return element;
}
function reconnect_to_wizard () {
$('#table_outer_wizard').show();
$('#general_setting').hide();
let table_outer_wizard_id = document.getElementById('table_outer_wizard').getElementsByClassName('sub_wizard_button')[0];
if ($('#cancel_button').length === 0) {
let new_a = document.createElement('a');
new_a = setAllAttributes(new_a, {
'href': 'javascript:void(0);',
'id': 'cancel_button',
'class': 'button button-secondory button-large sub_wizard_button_a sub_wizard_button_third_a'
}
);
new_a.textContent = 'Cancel';
table_outer_wizard_id.appendChild(new_a);
}
}
function cancel_button () {
$('#general_setting').show();
$('#table_outer_wizard').hide();
}
function update_manually_ID (get_val, get_attr, get_attr_two) {
$.ajax({
type: 'GET',
url: aet_vars.ajaxurl,
data: {
'action': 'aet_update_manually_id',
'get_val': get_val,
'get_attr': get_attr,
'get_attr_two': get_attr_two,
'nonce': aet_vars.aet_chk_nonce_ajax,
},
success: function (response) {
location.reload(response);
}
});
}
$('body').on('click', '#reconnect_to_wizard', function () {
reconnect_to_wizard();
});
$('body').on('click', '#cancel_button', function () {
cancel_button();
});
$( 'a[href="admin.php?page=aet-et-settings"]' ).parents().addClass( 'current wp-has-current-submenu' );
$( 'a[href="admin.php?page=aet-et-settings"]' ).addClass( 'current' );
$('#general_setting table tr td span.switch').click( function(){
if( true === $(this).find('input').is(':checked') ){
$(this).find('input').prop('checked', false);
}else{
$(this).find('input').prop('checked', true);
}
});
/* description toggle */
$('span.advance_ecommerce_tracking_tab_description').click(function (event) {
event.preventDefault();
$(this).next('p.description').toggle();
});
$('body').on('click', '#update_manually_ft_px, #update_manually_et_px', function () {
let btn_attr = $(this).attr('data-attr');
let get_attr = $('#manually_' + btn_attr + '_px').attr('data-attr');
let get_val = $.trim($('#manually_' + btn_attr + '_px').val());
let get_attr_two = $('#manually_' + btn_attr + '_px').attr('data-attr-two');
if ('' === get_val) {
let sub_wizard_field = document.getElementById('sub_wizard_field').getElementsByClassName('field_div')[0];
if ($('#main_error_div').length === 0) {
let div = document.createElement('div');
div = setAllAttributes(div, {
'id': 'main_error_div',
'class': 'error_div'
}
);
let span = document.createElement('span');
span = setAllAttributes(span, {
'id': 'error_span',
'class': 'error'
}
);
span.textContent = 'Please enter ID here';
div.appendChild(span);
sub_wizard_field.appendChild(div);
}
}
update_manually_ID(get_val, get_attr, get_attr_two);
});
/*Custom event section*/
$('.all_ft_tr').hide();
let selected = $('#event_type').find('option:selected');
let select_val = $('#event_type').val();
let extra_attr = selected.data('attr');
getFieldBasedOnSelector(extra_attr, select_val);
function getFieldBasedOnSelector (extra_attr, select_val) {
$.each(extra_attr, function (key, value) {
$('#tr_ft_' + key).show();
if ('none' !== value) {
//$('#tr_ft_' + key + ' input').attr('require', 'true');
}
});
if ('Custom' === select_val) {
$('#tr_ft_custom_event').show();
} else {
$('#tr_ft_custom_event').hide();
$('#tr_ft_custom_event').find('input').val('');
}
}
$('body').on('change', '#event_type', function () {
$('.all_ft_tr').hide();
let select_val = $(this).val();
let selected = $(this).find('option:selected');
let extra_attr = selected.data('attr');
getFieldBasedOnSelector(extra_attr, select_val);
});
function adCustomParamField (count_cp) {
let in_append_elem = document.getElementById('tr_ft_contents').getElementsByClassName('ft_contents_div')[0];
let parent_div = document.createElement('div');
parent_div = setAllAttributes(parent_div, {
'id': 'total_custom_param_' + count_cp,
'class': 'main_div_custom_param total_custom_param'
});
let input_parent_div1 = document.createElement('div');
input_parent_div1 = setAllAttributes(input_parent_div1, {
'id': 'ip_div_' + count_cp,
'class': 'ip_div ip_div_' + count_cp,
});
let input_parent_div2 = document.createElement('div');
input_parent_div2 = setAllAttributes(input_parent_div2, {
'id': 'ip_div_' + count_cp,
'class': 'ip_div ip_div_' + count_cp,
});
let input_parent_div3 = document.createElement('div');
input_parent_div3 = setAllAttributes(input_parent_div3, {
'id': 'param_delete',
'class': 'param_delete',
'data-id': count_cp
});
let child_input1 = document.createElement('input');
child_input1 = setAllAttributes(child_input1, {
'type': 'text',
'id': 'key_' + count_cp,
'name': 'key_param[]',
'class': 'key_input key_' + count_cp,
'placeholder': 'key',
'value': '',
});
let child_input2 = document.createElement('input');
child_input2 = setAllAttributes(child_input2, {
'type': 'text',
'id': 'value_' + count_cp,
'name': 'value_param[]',
'class': 'value_input value_' + count_cp,
'placeholder': 'Value',
'value': '',
});
let child_a = document.createElement('a');
child_a = setAllAttributes(child_a, {
'href': 'javascript:void(0);',
'class': 'a_param_delete',
'id': 'a_param_delete'
});
let child_a_img = document.createElement('img');
child_a_img = setAllAttributes(child_a_img, {
'src': aet_vars.trash_url,
});
child_a.appendChild(child_a_img);
input_parent_div1.appendChild(child_input1);
input_parent_div2.appendChild(child_input2);
input_parent_div3.appendChild(child_a);
parent_div.appendChild(input_parent_div1);
parent_div.appendChild(input_parent_div2);
parent_div.appendChild(input_parent_div3);
in_append_elem.appendChild(parent_div);
}
$('body').on('click', '#custom_parameter_btn_div', function () {
let count_cp = $('#tr_ft_contents .total_custom_param').length;
if (count_cp === 0) {
count_cp = 1;
} else {
count_cp = count_cp + 1;
}
adCustomParamField(count_cp);
});
$('body').on('click', '#a_param_delete', function () {
let data_id = $(this).parent().attr('data-id');
$('#total_custom_param_' + data_id).remove();
});
$('#custom_event_general_setting input#event_value').keypress(function (e) {
var regex = new RegExp('^[0-9.]+$');
var str = String.fromCharCode(!e.charCode ? e.which : e.charCode);
if (regex.test(str)) {
return true;
}
e.preventDefault();
return false;
});
$('body').on('click', '.condition-check-all', function () {
$('input.multiple_delete_chk:checkbox').not(this).prop('checked', this.checked);
});
$('#delete-custom-event').click(function () {
let dynamic_string = $(this).attr('data-attr');
if (0 === $('.multiple_delete_chk:checkbox:checked').length) {
alert('Please select at least one ' + dynamic_string + ' event');
return false;
}
if (confirm('Are You Sure You Want to Delete Selected ' + dynamic_string + ' Event?')) {
var all_checked_val = [];
$('.multiple_delete_chk:checked').each(function () {
all_checked_val.push($(this).val());
});
$.ajax({
type: 'GET',
url: aet_vars.ajaxurl,
data: {
'action': 'aet_wc_multiple_delete_row__premium_only',
'nonce': aet_vars.aet_chk_nonce_ajax,
'all_checked_val': all_checked_val
},
success: function (response) {
if ('1' === response) {
alert('Delete Successfully');
$('.multiple_delete_chk').prop('checked', false);
location.reload();
}
}
});
}
});
$('body').on('click', '.dotstore-important-link .content_box .et-star-rating label', function(e){
e.stopImmediatePropagation();
var rurl = $('#et-review-url').val();
window.open( rurl, '_blank' );
});
/** Dynamic Promotional Bar START */
$(document).on('click', '.dpbpop-close', function () {
var popupName = $(this).attr('data-popup-name');
setCookie( 'banner_' + popupName, 'yes', 60 * 24 * 7);
$('.' + popupName).hide();
});
$(document).on('click', '.dpb-popup .dpb-popup-meta', function () {
var promotional_id = $(this).parent().find('.dpbpop-close').attr('data-bar-id');
var popupName = $(this).parent().find('.dpbpop-close').attr('data-popup-name');
setCookie( 'banner_' + popupName, 'yes', 60 * 24 * 7);
$('.' + popupName).hide();
//Create a new Student object using the values from the textfields
var apiData = {
'bar_id' : promotional_id
};
$.ajax({
type: 'POST',
url: aet_vars.dpb_api_url + 'wp-content/plugins/dots-dynamic-promotional-banner/bar-response.php',
data: JSON.stringify(apiData),// now data come in this function
dataType: 'json',
cors: true,
contentType:'application/json',
success: function () {
},
error: function () {
}
});
});
/** Dynamic Promotional Bar END */
/** Plugin Setup Wizard Script START */
// Hide & show wizard steps based on the url params
var urlParams = new URLSearchParams(window.location.search);
if (urlParams.has('require_license')) {
$('.ds-plugin-setup-wizard-main .tab-panel').hide();
$( '.ds-plugin-setup-wizard-main #step5' ).show();
} else {
$( '.ds-plugin-setup-wizard-main #step1' ).show();
}
// Plugin setup wizard steps script
$(document).on('click', '.ds-plugin-setup-wizard-main .tab-panel .btn-primary:not(.ds-wizard-complete)', function () {
var curruntStep = jQuery(this).closest('.tab-panel').attr('id');
var nextStep = 'step' + ( parseInt( curruntStep.slice(4,5) ) + 1 ); // Masteringjs.io
if( 'step5' !== curruntStep ) {
// Youtube videos stop on next step
$('iframe[src*="https://www.youtube.com/embed/"]').each(function(){
$(this).attr('src', $(this).attr('src'));
return false;
});
jQuery( '#' + curruntStep ).hide();
jQuery( '#' + nextStep ).show();
}
});
// Get allow for marketing or not
if ( $( '.ds-plugin-setup-wizard-main .ds_count_me_in' ).is( ':checked' ) ) {
$('#fs_marketing_optin input[name="allow-marketing"][value="true"]').prop('checked', true);
} else {
$('#fs_marketing_optin input[name="allow-marketing"][value="false"]').prop('checked', true);
}
// Get allow for marketing or not on change
$(document).on( 'change', '.ds-plugin-setup-wizard-main .ds_count_me_in', function() {
if ( this.checked ) {
$('#fs_marketing_optin input[name="allow-marketing"][value="true"]').prop('checked', true);
} else {
$('#fs_marketing_optin input[name="allow-marketing"][value="false"]').prop('checked', true);
}
});
// Complete setup wizard
$(document).on( 'click', '.ds-plugin-setup-wizard-main .tab-panel .ds-wizard-complete', function() {
if ( $( '.ds-plugin-setup-wizard-main .ds_count_me_in' ).is( ':checked' ) ) {
$( '.fs-actions button' ).trigger('click');
} else {
$('.fs-actions #skip_activation')[0].click();
}
});
// Send setup wizard data on Ajax callback
$(document).on( 'click', '.ds-plugin-setup-wizard-main .fs-actions button', function() {
var wizardData = {
'action': 'aet_plugin_setup_wizard_submit',
'survey_list': $('.ds-plugin-setup-wizard-main .ds-wizard-where-hear-select').val(),
'nonce': aet_vars.setup_wizard_ajax_nonce
};
$.ajax({
url: aet_vars.ajaxurl,
data: wizardData,
success: function ( ) {
}
});
});
/** Plugin Setup Wizard Script End */
/** Upgrade Dashboard Script START */
// Dashboard features popup script
$(document).on('click', '.dotstore-upgrade-dashboard .premium-key-fetures .premium-feature-popup', function (event) {
let $trigger = $('.feature-explanation-popup, .feature-explanation-popup *');
if(!$trigger.is(event.target) && $trigger.has(event.target).length === 0){
$('.feature-explanation-popup-main').not($(this).find('.feature-explanation-popup-main')).hide();
$(this).parents('li').find('.feature-explanation-popup-main').show();
$('body').addClass('feature-explanation-popup-visible');
}
});
$(document).on('click', '.dotstore-upgrade-dashboard .popup-close-btn', function () {
$(this).parents('.feature-explanation-popup-main').hide();
$('body').removeClass('feature-explanation-popup-visible');
});
/** Upgrade Dashboard Script End */
// Script for Beacon configuration
var helpBeaconCookie = getCookie( 'aet-help-beacon-hide' );
if ( ! helpBeaconCookie ) {
Beacon('init', 'afe1c188-3c3b-4c5f-9dbd-87329301c920');
Beacon('config', {
display: {
style: 'icon',
iconImage: 'message',
zIndex: '99999'
}
});
// Add plugin articles IDs to display in beacon
Beacon('suggest', ['62b2ae2c35a1630c11984003', '62b1a352e13ae052a9d690a9', '62b1a4a8e13ae052a9d690b0', '62b1a3d2b2955b2490b58bc1', '62b1a40db2955b2490b58bc3']);
// Add custom close icon form beacon
setTimeout(function() {
if ( $( '.hsds-beacon .BeaconFabButtonFrame' ).length > 0 ) {
let newElement = document.createElement('span');
newElement.classList.add('dashicons', 'dashicons-no-alt', 'dots-beacon-close');
let container = document.getElementsByClassName('BeaconFabButtonFrame');
container[0].appendChild( newElement );
}
}, 3000);
// Hide beacon
$(document).on('click', '.dots-beacon-close', function(){
Beacon('destroy');
setCookie( 'aet-help-beacon-hide' , 'true', 24 * 60 );
});
}
// Script for upgrade to pro popup
$(document).on('click', '#dotsstoremain .aet-pro-label, #dotsstoremain .aet-upgrade-pro-to-unlock', function(){
$('body').addClass('aet-modal-visible');
});
$(document).on('click', '#dotsstoremain .modal-close-btn', function(){
$('body').removeClass('aet-modal-visible');
});
$(document).on('click', '.upgrade-to-pro-modal-main .upgrade-now', function(e){
e.preventDefault();
$('body').removeClass('aet-modal-visible');
let couponCode = $('.upgrade-to-pro-discount-code').val();
upgradeToProFreemius( couponCode );
});
$(document).on('click', '.dots-header .dots-upgrade-btn, .dotstore-upgrade-dashboard .upgrade-now', function(e){
e.preventDefault();
upgradeToProFreemius( '' );
});
});
// Set cookies
function setCookie(name, value, minutes) {
var expires = '';
if (minutes) {
var date = new Date();
date.setTime(date.getTime() + (minutes * 60 * 1000));
expires = '; expires=' + date.toUTCString();
}
document.cookie = name + '=' + (value || '') + expires + '; path=/';
}
// Get cookies
function getCookie(name) {
let nameEQ = name + '=';
let ca = document.cookie.split(';');
for (let i = 0; i < ca.length; i++) {
let c = ca[i].trim();
if (c.indexOf(nameEQ) === 0) {
return c.substring(nameEQ.length, c.length);
}
}
return null;
}
/** Script for Freemius upgrade popup */
function upgradeToProFreemius( couponCode ) {
let handler;
handler = FS.Checkout.configure({
plugin_id: '3475',
plan_id: '5543',
public_key:'pk_9edf804dccd14eabfd00ff503acaf',
image: 'https://www.thedotstore.com/wp-content/uploads/sites/1417/2023/09/Enhanced-Ecommerce-Google-Analytics-for-WooCommerce-Banner-New.png',
coupon: couponCode,
});
handler.open({
name: 'Advance Ecommerce Tracking',
subtitle: 'Youre a step closer to our Pro features',
licenses: jQuery('input[name="licence"]:checked').val(),
purchaseCompleted: function( ) {
},
success: function () {
}
});
}
}
)(jQuery);