File "admin.js"
Full Path: /home/vantageo/public_html/cache/cache/cache/cache/.wp-cli/wp-content/plugins/woocommerce-products-filter/ext/stat/js/admin.js
File size: 12.51 KB
MIME-type: text/plain
Charset: utf-8
"use strict";
var woof_stat_data = new Array();
var woof_operative_tables = null;
//***
jQuery(function ($) {
woof_stat_init_calendars();
//under dev
$('#woof_stat_snippet').change(function () {
var taxonomies = $(this).val();
if (taxonomies !== null && taxonomies.length > 0) {
$.each(taxonomies, function (i, slug) {
var id = 'woof_stat_snippet_' + slug;
if (!$('#' + id).length) {
$('#woof_stat_snippets_tags').prepend('<li id="' + id + '" data-slug="' + slug + '"><label>' + slug + ' terms:</label><br /><input type="text" placeholder="' + woof_stat_vars.woof_stat_leave_empty + '" /></li>');
}
});
//removing term inputs
$.each($('#woof_stat_snippets_tags li'), function (i, li) {
var slug = $(li).data('slug');
if ($.inArray(slug, taxonomies) == -1) {
$(li).remove();
}
});
} else {
$('#woof_stat_snippets_tags').html("");
}
});
});
function woof_stat_get_request_snippets() {
//*** assemble request_snippets
var request_snippets = {};
jQuery.each(jQuery('#woof_stat_snippets_tags li'), function (i, li) {
var slug = jQuery(li).data('slug');
var terms = jQuery(li).find('input').val();
request_snippets[slug] = terms;
});
return request_snippets;
}
function woof_stat_calculate() {
var calendar_from = parseInt(jQuery('#woof_stat_calendar_from').val(), 10);
var calendar_to = parseInt(jQuery('#woof_stat_calendar_to').val(), 10);
var request_snippets = woof_stat_get_request_snippets();
jQuery('#chart_div_1').html("");
jQuery('#chart_div_1_set').html("");
jQuery('#woof_stat_print_btn').hide();
if (calendar_from == 0 || calendar_to == 0) {
alert(woof_stat_vars.woof_stat_sel_date_range);
return false;
}
woof_stat_data = new Array();
woof_show_info_popup(woof_stat_vars.woof_stat_calc);
jQuery('#woof_stat_get_monitor').html("");
woof_stat_process_monitor(woof_stat_vars.woof_stat_get_oper_tbls);
var data = {
action: "woof_get_operative_tables",
calendar_from: calendar_from,
calendar_to: calendar_to
};
jQuery.post(ajaxurl, data, function (tables) {
tables = JSON.parse(tables);
if (tables.length > 0) {
woof_stat_process_monitor(woof_stat_vars.woof_stat_oper_tbls_prep);
if (tables.length) {
woof_stat_request_tables_data(0, tables);
}
} else {
woof_hide_info_popup();
woof_stat_process_monitor(woof_stat_vars.woof_stat_done);
alert(woof_stat_vars.woof_stat_no_data);
}
});
return false;
}
function woof_stat_request_tables_data(index, tables) {
var calendar_from = parseInt(jQuery('#woof_stat_calendar_from').val(), 10);
var calendar_to = parseInt(jQuery('#woof_stat_calendar_to').val(), 10);
woof_stat_process_monitor(woof_stat_vars.woof_stat_getting_dftbls + ' ' + tables[index] + ' ...');
var data = {
action: "woof_get_stat_data",
table: tables[index],
request_snippets: woof_stat_get_request_snippets(),
calendar_from: calendar_from,
calendar_to: calendar_to
};
jQuery.post(ajaxurl, data, function (stat_data) {
stat_data = JSON.parse(stat_data);
woof_stat_data.push(stat_data);
//+++
if ((index + 1) < tables.length) {
woof_stat_request_tables_data(index + 1, tables);
} else {
if (Object.keys(woof_stat_get_request_snippets()).length === 0) {
var data = {
action: "woof_get_top_terms",
woof_stat_data: woof_stat_data
};
jQuery.post(ajaxurl, data, function (stat_data) {
woof_stat_data = JSON.parse(stat_data);
woof_hide_info_popup();
woof_stat_process_monitor(woof_stat_vars.woof_stat_done);
woof_stat_draw_graphs();
});
} else {
woof_hide_info_popup();
woof_stat_process_monitor(woof_stat_vars.woof_stat_done);
woof_stat_draw_graphs();
}
}
});
}
function woof_stat_process_monitor(text) {
jQuery('#woof_stat_get_monitor').prepend('<li>' + text + '</li>');
}
function woof_stat_init_calendars() {
jQuery(".woof_stat_calendar").datepicker(
{
showWeek: true,
firstDay: woof_stat_vars.week_first_day,
changeMonth: true,
changeYear: true,
showButtonPanel: true,
maxDate: 'today',
//maxDate: new Date(2017, 11 - 1, 30), //comment it, for tests only
onSelect: function (selectedDate, self) {
var date = new Date(parseInt(self.currentYear, 10), parseInt(self.currentMonth, 10), parseInt(self.currentDay, 10), 23, 59, 59);
var mktime = (date.getTime() / 1000);
var css_class = 'woof_stat_calendar_from';
if (jQuery(this).hasClass('woof_stat_calendar_from')) {
css_class = 'woof_stat_calendar_to';
jQuery(this).parent().find('.' + css_class).datepicker("option", "minDate", selectedDate);
} else {
jQuery(this).parent().find('.' + css_class).datepicker("option", "maxDate", selectedDate);
}
jQuery(this).prev('input[type=hidden]').val(mktime);
}
}
);
jQuery(".woof_stat_calendar").datepicker("option", "minDate", new Date(woof_stat_vars.min_year, woof_stat_vars.min_month - 1, 1));
jQuery(".woof_stat_calendar").datepicker("option", "dateFormat", woof_stat_vars.calendar_date_format);
jQuery(".woof_stat_calendar").datepicker("option", "showAnim", 'fadeIn');
//+++
jQuery('body').on('keyup', ".woof_stat_calendar", function (e) {
if (e.keyCode == 8 || e.keyCode == 46) {
jQuery.datepicker._clearDate(this);
jQuery(this).prev('input[type=hidden]').val("");
}
});
jQuery(".woof_stat_calendar").each(function () {
var mktime = parseInt(jQuery(this).prev('input[type=hidden]').val(), 10);
if (mktime > 0) {
var date = new Date(mktime * 1000);
jQuery(this).datepicker('setDate', new Date(date));
}
});
}
function woof_stat_draw_graphs() {
woof_stat_process_monitor(woof_stat_vars.woof_stat_graphs);
// try {
if (woof_stat_data.length) {
var graph1 = {};
//***
var counter = 1;
if (Object.keys(woof_stat_get_request_snippets()).length === 0) {
var data1 = woof_stat_data[0];
counter = 1;
for (let tn in data1) {
if (counter > parseInt(woof_stat_vars.max_items_per_graph, 10)) {
break;
}
graph1[tn] = data1[tn];
counter++;
}
//+++
var data2 = woof_stat_data[1];
counter = 1;
var graph_count = 0;
for (let i in data2) {
var graph = {};
var html = "";
var id = 'chart_div_1_set_' + graph_count;
html = '<div class="woof_stat_one_graph"><span class="woof_stat_graph_title">' + data2[i]['tax_name'] + '</span>';
//inline must be as it hidden, FIX
html += "<div id='" + id + "' style='width: 100%; height: 500px;'></div></div>";
jQuery('#chart_div_1_set').append(html);
counter = 1;
for (let term_name in data2[i]['terms']) {
if (counter > parseInt(woof_stat_vars.max_items_per_graph, 10)) {
break;
}
//+++
graph[term_name] = parseInt(data2[i]['terms'][term_name], 10);
counter++;
}
drawChart1(graph, id);
graph_count++;
}
} else {
var counter = 1;
jQuery(woof_stat_data).each(function (i, request_block) {
//counter = 0;
jQuery(request_block).each(function (ii, item) {
if (counter > parseInt(woof_stat_vars.max_items_per_graph, 10)) {
return;
}
//+++
if (graph1[item.vname] !== undefined) {
graph1[item.vname] = graph1[item.vname] + parseInt(item.val, 10);
} else {
graph1[item.vname] = parseInt(item.val, 10);
}
counter++;
});
});
}
drawChart1(graph1, 'chart_div_1');
//***
}
woof_stat_process_monitor(woof_stat_vars.woof_stat_finished);
jQuery('#woof_stat_print_btn').show(200);
// } catch (e) {
// console.log(woof_stat_vars.woof_stat_troubles);
// }
return false;
}
function drawChart1(graph1, id) {
var data = new google.visualization.DataTable();
data.addColumn('string', 'X');
data.addColumn('number', 'Y');
var rows_data = [];
jQuery.each(graph1, function (index, value) {
rows_data.push([index + " (" + value + ")", value]);
});
data.addRows(rows_data);
// Set chart options
var options = {
'title': 'Graph 1',
chartArea: {left: 0, top: 0, width: "100%", height: "100%"}
};
// Instantiate and draw our chart, passing in some options.
var chart = new google.visualization.PieChart(document.getElementById(id));
chart.draw(data, options);
}
function drawChart2(graph2) {
var data = google.visualization.arrayToDataTable(graph2);
// Set chart options
var options = {
'title': 'Graph 2',
chartArea: {left: 0, top: 0, width: "100%", height: "100%"}
};
var chart = new google.visualization.ColumnChart(document.getElementById('chart_div_2'));
chart.draw(data, options);
}
jQuery(document).ready(function () {
//reset cache of "Statistical parameters" drop-down
jQuery("#woof_stat_snippet option[selected]").removeAttr("selected");
//+++
//*** Load the Visualization API and the corechart package.
try {
google.charts.load('current', {'packages': ['corechart', 'bar']});
} catch (e) {
console.log(woof_stat_vars.woof_stat_google);
}
//+++
jQuery('.woof_cron_system').change(function () {
var state = parseInt(jQuery(this).val(), 10);
if (state === 1) {
//external
jQuery('.woof_external_cron_option').show(200);
jQuery('.woof_wp_cron_option').hide(200);
} else {
jQuery('.woof_external_cron_option').hide(200);
jQuery('.woof_wp_cron_option').show(200);
}
});
//+++
jQuery('#woof_stat_connection').on('click', function () {
var data = {
action: "woof_stat_check_connection",
woof_stat_host: jQuery("input[name='woof_settings[woof_stat][server_options][host]']").val(),
woof_stat_user: jQuery("input[name='woof_settings[woof_stat][server_options][host_user]']").val(),
woof_stat_name: jQuery("input[name='woof_settings[woof_stat][server_options][host_db_name]']").val(),
woof_stat_pswd: jQuery("input[name='woof_settings[woof_stat][server_options][host_pass]']").val(),
};
jQuery.post(ajaxurl, data, function (content) {
alert(content);
});
});
jQuery('#woof_update_db').on('click', function () {
var data = {
action: "woof_stat_update_db"
};
jQuery.post(ajaxurl, data, function (content) {
alert(content);
});
});
//+++
});