jQuery(document).ready(function ($) {
"use strict";
$('.row-actions .edit a, .page-title-action, .column-title .row-title').on('click', function (e) {
e.preventDefault();
var id = 0;
var modal = $('#responsive_woo_tabs_modal');
var parent = $(this).parents('.column-title');
modal.addClass('loading');
modal.modal('show');
if (parent.length > 0) {
id = parent.find('.hidden').attr('id').split('_')[1];
$.get(window.responsivewootabsultimate.restapi + 'woo_tabs_single_data', {id: id, _wpnonce: window.responsivewootabsultimate.nonce}, function (data) {
ResponsiveWooTabsEditor(data);
modal.removeClass('loading');
});
} else {
var data = {
title: '',
priority: 20,
activation: 'yes',
condition: 'entire_site',
singular_id: '',
archive: 'products_cat',
products_cat: '',
products_tags: '',
};
ResponsiveWooTabsEditor(data);
modal.removeClass('loading');
}
var url = modal.attr('data-editor-url') + 'post.php?post=' + id + '&action=edit';
$('.open-data-btn-editor').attr('data-editor-url', url);
$('#responsive-woo-tabs-id').val(id);
});
function ShortcodeCcontrolTabsSelect() {
var responsive_woo_tabs_c = $('.responsive_woo_tabs_c').val();
if (responsive_woo_tabs_c == 'singular') {
$('.responsive_woo_tabs_singular_id-container').show();
$('.responsive_woo_tabs_archive-container').hide();
$('.responsive_woo_tabs_archive_author_id-container').hide();
$('.responsive_woo_tabs_archive_cat_id-container').hide();
$('.responsive_woo_tabs_archive_tags_id-container').hide();
} else if (responsive_woo_tabs_c == 'archive') {
$('.responsive_woo_tabs_singular_id-container').hide();
$('.responsive_woo_tabs_archive-container').show();
var condition = $('.responsive_woo_tabs_archive').val();
if (condition == 'products_cat') {
$('.responsive_woo_tabs_archive_author_id-container').hide();
$('.responsive_woo_tabs_archive_cat_id-container').show();
$('.responsive_woo_tabs_archive_tags_id-container').hide();
} else if (condition == 'products_tags') {
$('.responsive_woo_tabs_archive_author_id-container').hide();
$('.responsive_woo_tabs_archive_cat_id-container').hide();
$('.responsive_woo_tabs_archive_tags_id-container').show();
}
} else {
$('.responsive_woo_tabs_singular_id-container').hide();
$('.responsive_woo_tabs_archive-container').hide();
$('.responsive_woo_tabs_archive_author_id-container').hide();
$('.responsive_woo_tabs_archive_cat_id-container').hide();
$('.responsive_woo_tabs_archive_tags_id-container').hide();
}
}
;
$('.shortcode-control-type-text select').on('change', function () {
ShortcodeCcontrolTabsSelect();
});
$('.open-data-btn-editor').on('click', function () {
var link = $(this).attr('data-editor-url');
window.location.href = link;
});
$('#responsive_woo_tabsinput-form').on('submit', function (e) {
e.preventDefault();
var modal = $('#addons_headerfooter_modal');
modal.addClass('loading');
var form_data = $(this).serialize();
$.get(window.responsivewootabsultimate.restapi + 'tabsupdate/', form_data, function (output) {
location.reload();
});
});
$('.responsive_woo_tabs_singular_id').select2({
ajax: {
url: window.responsivewootabsultimate.restapi + 'woo_product_name',
dataType: 'json',
data: function (params) {
var query = {
qu: params.term,
_wpnonce: window.responsivewootabsultimate.nonce
}
return query;
}
},
width: '100%',
cache: true,
placeholder: "--",
});
$('.responsive_woo_tabs_archive_cat_id').select2({
ajax: {
url: window.responsivewootabsultimate.restapi + 'woo_cat_name',
dataType: 'json',
data: function (params) {
var query = {
_wpnonce: window.responsivewootabsultimate.nonce
}
return query;
}
},
width: '100%',
cache: true,
placeholder: "--",
});
$('.responsive_woo_tabs_archive_tags_id').select2({
ajax: {
url: window.responsivewootabsultimate.restapi + 'woo_tag_name',
dataType: 'json',
data: function (params) {
var query = {
_wpnonce: window.responsivewootabsultimate.nonce
}
return query;
}
},
width: '100%',
cache: true,
placeholder: "--",
});
function ResponsiveWooTabsEditor(data) {
$('.responsive_woo_tabsinput-title').val(data.title);
$('.responsive_woo_tabsinput-priority').val(data.priority);
$('.responsive_woo_tabs_c').val(data.condition).change();
$('.responsive_woo_tabs_archive').val(data.archive).change();
var activation_input = $('.responsive_woo_tabsinput-activition');
if (data.activation == 'yes') {
activation_input.attr('checked', true);
} else {
activation_input.removeAttr('checked');
}
$('.responsive_woo_tabsinput-activition, .responsive_woo_tabsinput-priority').trigger('change');
ShortcodeCcontrolTabsSelect();
if (data.singular_id !== null && data.singular_id.length > 0) {
console.log(data.singular_id.length);
var el = $('.responsive_woo_tabs_singular_id');
$.ajax({
url: window.responsivewootabsultimate.restapi + 'woo_product_name',
dataType: 'json',
data: {
ids: String(data.singular_id),
_wpnonce: window.responsivewootabsultimate.nonce
}
}).then(function (data) {
if (data !== null && data.results.length > 0) {
el.html(' ');
$.each(data.results, function (i, v) {
var option = new Option(v.text, v.id, true, true);
el.append(option).trigger('change');
});
el.trigger({
type: 'select2:select',
params: {
data: data
}
});
}
});
} else {
$('.responsive_woo_tabs_singular_id').val(null).trigger('change');
}
if (data.products_cat !== null && data.products_cat.length > 0) {
var el = $('.responsive_woo_tabs_archive_cat_id');
$.ajax({
url: window.responsivewootabsultimate.restapi + 'woo_cat_name',
dataType: 'json',
data: {
ids: String(data.products_cat),
_wpnonce: window.responsivewootabsultimate.nonce
}
}).then(function (data) {
if (data !== null && data.results.length > 0) {
el.html(' ');
$.each(data.results, function (i, v) {
var option = new Option(v.text, v.id, true, true);
el.append(option).trigger('change');
});
el.trigger({
type: 'select2:select',
params: {
data: data
}
});
}
});
}
if (data.products_tags !== null && data.products_tags.length > 0) {
var el = $('.responsive_woo_tabs_archive_tags_id');
$.ajax({
url: window.responsivewootabsultimate.restapi + 'woo_tag_name',
dataType: 'json',
data: {
ids: String(data.products_tags),
_wpnonce: window.responsivewootabsultimate.nonce
}
}).then(function (data) {
if (data !== null && data.results.length > 0) {
el.html(' ');
$.each(data.results, function (i, v) {
var option = new Option(v.text, v.id, true, true);
el.append(option).trigger('change');
});
el.trigger({
type: 'select2:select',
params: {
data: data
}
});
}
});
}
}
});