Files
Phraseanet/resources/www/report/js/report.js
2016-03-18 10:08:07 +01:00

1115 lines
34 KiB
JavaScript

/**
* object language, date , and dashboard are init in all_content.twig for translation
*
*/
var xhr_object;
var p4 = {};
// jquery tab object
var $tabs;
//the number of the selected tab
var selected_tab;
//class of the selected init to -1 by default = no class
var class_selected_tab = -1;
//save the value of the previous limit
var save_limit;
var bodySize = {
x: 0,
y: 0
};
//#############START DOCUMENT READY ######################################//
$(document).ready(function () {
//resize window
$(window).bind('resize', function () {
resize();
});
//do tabs and resize window on show
$('#mainTabs:visible').tabs({
activate: function () {
resize();
}
});
resize();
//datepicker
reportDatePicker();
dashboardDatePicker();
bindEvents();
$("a.select-all").bind("click", function (e) {
$("ul.multiselect .coll-checkbox", $(this).closest('.form2')).prop("checked", true);
});
$("a.deselect-all").bind("click", function (e) {
$("ul.multiselect .coll-checkbox", $(this).closest('.form2')).prop("checked", false);
});
// toggle is deprecated:
var hasMultiSelectionGroup = false;
$(".multiselect-group").on('click', function () {
if( hasMultiSelectionGroup === true) {
var $this = $(this);
var groupId = $this.data('group-id');
$(".checkbox-" + groupId, $this.closest('.form2')).prop("checked", false);
hasMultiSelectionGroup = false;
} else {
var $this = $(this);
var groupId = $this.data('group-id');
$(".checkbox-" + groupId, $this.closest('.form2')).prop("checked", true);
hasMultiSelectionGroup = true;
}
});
});
//#############END DOCUMENT READY ######################################//
/**
*
* Tous les binds sur le report
*/
function bindEvents() {
$('#dminDash, #dmaxDash').datepicker({
changeMonth: true,
changeYear: true,
// dateFormat: 'dd-mm-yy',
dateFormat: 'yy-mm-dd',
numberOfMonths: 1,
maxDate: "-0d"
});
$(".submit-dashboard").click(function() {
loadDash();
});
//load all the report
$('form input.formsubmiter').bind('click', function () {
submiterAction($(this));
});
$('form select.formsubmiter').bind('change', function () {
submiterAction($("option:selected", $(this)));
});
//reload the content by pressing enter key, it concerns the number of result by report
$('form .entersubmiter').bind('keypress', function (event) {
if (event.keyCode == '13') {
$("#DOC-input").prop("checked", "checked").trigger('click');
}
});
//action on table links
$('td a:visible').bind('click', function () {
tableLinkAction($(this));
});
//action on a none radio input
$('.inside-container form input:not(:radio)').bind('click', function () {
removeChecked($(this));
});
//action a radio input
$('.inside-container form input:radio').bind('change', function () {
showOption($(this));
});
//hide report menu
$("button.hided").button({
icons: {
primary: 'ui-icon-triangle-1-n'
},
text: false
}).unbind("click").bind("click", function () {
hideMenu();
});
// show report menu
$("button.showed").button({
icons: {
primary: 'ui-icon-triangle-1-s'
},
text: false
}).unbind("click").bind("click", function () {
showMenu();
});
}
function reportDatePicker() {
var dates = $('.dmin, .dmax').datepicker({
defaultDate: -10,
changeMonth: true,
changeYear: true,
// dateFormat: 'dd-mm-yy',
dateFormat: 'yy-mm-dd',
numberOfMonths: 3,
maxDate: "-0d",
onSelect: function (selectedDate, instance) {
var option = $(this).hasClass("dmin") ? "minDate" : "maxDate";
var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
$(dates).not(':hidden').not(this).datepicker("option", option, date);
}
});
}
function dashboardDatePicker() {
$(function () {
$('.dminDash, .dmaxDash').datepicker({
defaultDate: -3,
changeMonth: true,
changeYear: true,
// dateFormat: 'dd-mm-yy',
dateFormat: 'yy-mm-dd',
numberOfMonths: 3,
maxDate: "-0d"
});
});
}
//hide and resize content
function hideMenu() {
$('.hided').hide();
$(".showed").show();
$(".form").slideToggle("slow", function () {
bodySize.y = $(document).height();
$('.answers:visible').height(Math.round(bodySize.y - $('.answers:visible').position().top - 30));
});
}
function showMenu() {
bodySize.y = $('#mainContainer').height();
$('.showed').hide();
$(".hided").show();
$(".form").slideToggle("slow", function () {
bodySize.y = $(document).height();
$('.answers:visible').height(Math.round(bodySize.y - $('.answers:visible').position().top - 30));
});
}
function submiterAction(domSubmiter) {
var form = domSubmiter.closest('form');
var container = domSubmiter.closest('.inside-container');
var data = form.serializeArray();
data.push({name: "action", value: domSubmiter.data('action')});
//check if a base is selected, pop an alert message if not
if (!isOneBaseSelected(form)) {
alertBase();
}
else {
var request = form.data("request");
if (request && typeof(request.abort) == 'function') {
request.abort();
}
request = $.ajax({
type: "POST",
url: "/report/init",
data: data,
beforeSend: function () {
container.find('.content').empty();
container.find('.answers').addClass('onload');
},
success: function (data) {
container.find('.answers').removeClass('onload');
//load data
container.find('.content').empty().append(data);
//init to 0;
initSelectedTab();
//init tab with the loaded content
initTabs(container);
//open selected tab
openSelectedTab();
//start position
right = getScrollerStartPosition(selected_tab);
//scroller
$(".horizontal-scroller:visible").nicoslider({
start: right
});
}
});
form.data('request', request);
}
}
function initTabs(wrapper) {
$tabs = wrapper.find('div.tabs').tabs({
create: function (event, ui) {
//define the div where the table is loaded
load = $(ui.panel).find('.load');
//define the form that contain all parameters to build the table in the loaded div
form = $(ui.panel).find("form");
//serialize all the form values
f_val = form.serialize(true);
//build the table
update_tab(load, form, f_val);
},
activate: function (event, ui) {
//define the div where the table is loaded
load = $(ui.newPanel).find('.load');
//define the form that contain all parameters to build the table in the loaded div
form = $(ui.newPanel).find("form");
//serialize all the form values
f_val = form.serialize(true);
//build the table
update_tab(load, form, f_val);
}
});
}
function openFirstTab() {
$('.tabb:visible li').eq(0).find("a").trigger("click");
}
function openSelectedTab() {
if (class_selected_tab == -1) {
openFirstTab();
}
else if (typeof class_selected_tab == "undefined") {
openFirstTab();
}
else {
theclass = class_selected_tab.split(" ");
if ($('.' + theclass[0] + ':visible').length > 0) {
$('.' + theclass[0] + ':visible').find("a").trigger("click");
}
else {
openFirstTab();
}
}
}
function initSelectedTab() {
if (typeof(selected_tab) == 'undefined') {
selected_tab = 0;
}
}
function alertBase() {
$('body').append("<div id='dialog'><div>");
$('#dialog').dialog({
title: language.choix_collection,
height: 0,
width: 380,
draggable: false,
modal: true,
resizable: false,
hide: 'explode',
close: function (ev, ui) {
$(this).dialog('destroy').remove();
}
});
}
function isOneBaseSelected(form) {
if (!form.find("ul.multiselect input:checked").length) {
return false;
}
else {
return true;
}
}
function showOption(domInput) {
var opt = domInput.closest('div').find('.options');
domInput.closest('form').find('.options').hide();
if (domInput.get(0).checked) {
opt.show();
}
}
function removeChecked(domInput) {
domInput.closest("form").find('input:radio:visible:checked').prop("checked", false);
}
function tableLinkAction(domLink) {
var cl = domLink.attr("id");
var arr = cl.split('_');
var w = $('#mainTabs:visible').width();
if (isDocumentLink(domLink)) {
$.ajax({
type: "POST",
url: "/report/informations/document",
dataType: "json",
data: ({
tbl: "what",
rid: arr[1],
sbasid: arr[2],
collection: "",
from: "DASH",
dmin: date.dmin,
dmax: date.dmax
}),
success: function (data) {
modalBox(data);
}
});
}
else {
$.ajax({
type: "POST",
url: "/report/informations/user",
dataType: "json",
data: ({
tbl: "infouser",
user: arr[1],
sbasid: 1,
collection: "",
from: "",
dmin: date.dmin,
dmax: date.dmax
}),
success: function (data) {
modalBox(data);
}
});
}
}
function isDocumentLink(domLink) {
return domLink.hasClass("hasSbas");
}
function modalBox(data) {
$('body').append("<div id='dialog'>" + data.rs + "</div>");
$('#dialog').dialog({
title: data.title,
width: 860,
modal: true,
close: function (ev, ui) {
$(this).dialog('destroy').remove();
}
});
}
function getScrollerStartPosition(selected_tab) {
right = 0;
if (parseInt(selected_tab) === 0) {
right = 0;
}
else {
$('.tabb:visible li').each(function (index) {
if (index == selected_tab) {
return false;
}
right += $(this).width();
});
}
return right;
}
function drawCharts() {
if ($('#mytabledaytotal').length > 0) {
$('#mytabledaytotal').gvChart({
chartType: 'LineChart',
gvSettings: {
titleTextStyle: {
color: '#FF8D1C',
fontSize: '20'
},
vAxis: {
title: dashboard.title_connexion,
textStyle: {
fontSize: '10',
color: '#AAAAAA'
}
},
hAxis: {
title: dashboard.title_jour,
textStyle: {
fontSize: '10',
color: '#AAAAAA'
},
tooltipTextStyle: {
fontSize: 4
},
showTextEvery: 4
},
lineWidth: 1,
pointSize: 2,
backgroundColor: '#696969',
width: 800,
height: 350
}
});
}
if ($('#mytablehour').length > 0) {
$('#mytablehour').gvChart({
chartType: 'LineChart',
gvSettings: {
colors: ['white', '#FFFFFF'],
titleTextStyle: {
color: '#FF8D1C',
fontSize: '20'
},
vAxis: {
title: dashboard.title_connexion,
textStyle: {
fontSize: '10',
color: '#AAAAAA'
}
},
hAxis: {
title: dashboard.title_heure,
textStyle: {
fontSize: '10',
color: '#AAAAAA'
},
tooltipTextStyle: {
fontSize: 4
},
slantedTex: true,
slantedTextAngle: 90,
maxAlternation: 1,
showTextEvery: 1
},
lineWidth: 1,
pointSize: 3,
backgroundColor: '#696969',
width: 800,
height: 350
}
});
}
if ($('#mytableadded').length > 0) {
$('#mytableadded').gvChart({
chartType: 'ColumnChart',
gvSettings: {
colors: ['white', '#FFFFFF'],
titleTextStyle: {
color: '#FF8D1C',
fontSize: '20'
},
vAxis: {
title: dashboard.title_doc_add,
textStyle: {
fontSize: '10',
color: '#AAAAAA'
}
},
hAxis: {
title: dashboard.title_jour,
textStyle: {
fontSize: '10',
color: '#AAAAAA'
},
tooltipTextStyle: {
fontSize: 4
},
showTextEvery: 4
},
legend: 'none',
lineWidth: 1,
pointSize: 3,
backgroundColor: '#696969',
width: 800,
height: 350
}
});
}
if ($('#mytableedited').length > 0) {
$('#mytableedited').gvChart({
chartType: 'ColumnChart',
gvSettings: {
colors: ['white', '#FFFFFF'],
titleTextStyle: {
color: '#FF8D1C',
fontSize: '20'
},
vAxis: {
title: dashboard.title_doc_edit,
textStyle: {
fontSize: '10',
color: '#AAAAAA'
}
},
hAxis: {
title: dashboard.title_jour,
textStyle: {
fontSize: '10',
color: '#AAAAAA'
},
tooltipTextStyle: {
fontSize: 4
},
showTextEvery: 4
},
legend: 'none',
lineWidth: 1,
pointSize: 3,
backgroundColor: '#696969',
width: 800,
height: 350
}
});
}
}
//unserialize value
function unserialize(str) {
var n_str = str.split("&");
var serialised = new Array();
$.each(n_str, function () {
var properties = this.split("=");
serialised[properties[0]] = properties[1];
});
return serialised;
}
//pop a dialog box with who download what content
function who() {
$("td a.bound").unbind("click").bind('click', function () {
//get form
var form = $(this).closest(".ui-tabs-panel").find(".report_form");
//get col
var col = $(this).closest("td").attr("class");
//get link value
var val_a = $(this).html();
//split link classes
var arr = $(this).attr("class").split(" ");
//get usrid
var usrid = arr[0];
//get the current tbl
var tbl = form.find("input[name=tbl]").val();
//replace the new tbl
form.find("input[name=tbl]").val("infouser");
//put the old in the from input
form.find("input[name=from]").val(tbl);
if (col == 'user') {
form.find("input[name=user]").val(usrid);
}
else if (tbl == 'CNXB') {
form.find("input[name=tbl]").val("infonav");
form.find("input[name=user]").val(val_a);
form.find("input[name=on]").val(col);
}
else {
form.find("input[name=user]").val(val_a);
form.find("input[name=on]").val(col);
}
//load content
$.ajax({
type: "POST",
url: form.find("input[name=action]").val(),
dataType: "json",
data: form.serializeArray(),
success: function (data) {
//replace tbl with the from tbl
form.find("input[name=tbl]").val(tbl);
//pop the dialog window
dialog_record(form, data.rs, data.title, tbl);
}
});
});
}
//group by the element of each column
function group() {
$("a.groupby").unbind("click").bind("click", function () {
var form = $(this).closest(".ui-tabs-panel").find(".report_form");
var col = $(this).attr('class');
var tbl = form.find("input[name=tbl]").val();
form.find("input[name=groupby]").val(col);
$.ajax({
type: "POST",
url: form.find("input[name=action]").val(),
dataType: "json",
data: form.serializeArray(),
success: function (data) {
form.find("input[name=tbl]").val(tbl);
form.find("input[name=groupby]").val("");
dialog_record(form, data.rs, data.title, tbl);
}
});
});
}
//pop & load the record box informations
function what() {
$(".record_id a").unbind("click").bind('click', function () {
var form = $(this).closest(".ui-tabs-panel").find(".report_form");
var rid = $(this).html();
var arr = $(this).attr("class").split(" ");
var usrid = arr[0];
var tbl = form.find("input[name=tbl]").val();
form.find("input[name=from]").val(tbl);
form.find("input[name=tbl]").val("what");
form.find("input[name=rid]").val(rid);
form.find("input[name=user]").val(usrid);
$.ajax({
type: "POST",
url: "/report/informations/document",
dataType: "json",
data: form.serializeArray(),
success: function (data) {
dialog_record(form, data.rs, data.title, tbl);
}
});
});
}
//construct the dialog_record box
function dialog_record(form, p_message, p_title, tbl) {
//get size attribute
var h = $(document).height();
var w = $('#mainTabs:visible').width();
p_title = p_title || "";
$('body').append("<div id='dialog'>" + p_message + "</div>");
var data_form = form.serializeArray();
var dial = $('#dialog');
dial.data('dataForm', form);
dial.dialog({
title: p_title,
height: h,
width: w,
modal: true,
resizable: false,
close: function (ev, ui) {
form.find("input[name=tbl]").val(tbl);
form.find("input[name=on]").val("");
$(this).dialog('destroy').remove();
}
});
csv();
}
//construct the dialog box filters.
function alert_dialog_filter(submit, form, p_message, p_title) {
var buttons = {};
p_title = p_title || "";
$('body').append("<div id='dialog'>" + p_message + "</div>");
buttons[language.valider] = function () {
var value = $("select[name='filtre'] option:selected").val();
form.find("input[name=filter_value]").val(value);
var f_val = form.serialize(true);
update_tab(submit, form, f_val);
form.find("input[name=filter_column]").val("");
form.find("input[name=filter_value]").val("");
$(this).dialog('destroy').remove();
};
$('#dialog').dialog({
title: p_title,
width: 400,
modal: true,
resizable: false,
draggable: false,
buttons: buttons,
close: function (ev, ui) {
$(this).dialog('destroy').remove();
}
});
}
//construct the configuration dialog box
function alert_dialog_conf(submit, form, p_message, p_title) {
var w = $('#mainTabs:visible').width();
var buttons = {};
buttons[language.valider] = function () {
var idChecked = new Array();
$("#dialog input:checked").each(function (id) {
idChecked[id] = $(this).val();
});
var list_column = ",";
$.each(idChecked, function (key, val) {
list_column += val + ",";
});
form.find("input[name=list_column]").val(list_column);
f_val = form.serialize(true);
if (idChecked.length == 0) {
alert("Vous devez cocher au minimum une case");
return false;
}
else {
update_tab(submit, form, f_val);
$(this).dialog('destroy').remove();
}
};
p_title = p_title || "";
$('body').append("<div id='dialog'>" + p_message + "</div>");
$('#dialog').dialog({
title: p_title,
width: w,
modal: true,
buttons: buttons,
close: function (ev, ui) {
$(this).dialog('destroy').remove();
}
});
}
//load the content of the filter box
function dofilter(submit, form, f_val) {
$("a.filter").unbind("click").bind("click", function () {
var col = $(this).attr('class');
form.find("input[name=filter_column]").val(col);
form.find("input[name=liste]").val("on");
$.ajax({
type: "POST",
url: form.find("input[name=action]").val(),
dataType: "json",
data: form.serializeArray(),
success: function (data) {
form.find("input[name=liste]").val("off");
alert_dialog_filter(submit, form, data.diag, data.title);
}
});
});
}
//pop & load the content of the dialog_conf window
function conf(submit, form, f_val) {
$("a.config").unbind("click").bind("click", function () {
form.find("input[name=conf]").val("on");
$.ajax({
type: "POST",
url: form.find("input[name=action]").val(),
dataType: "json",
data: form.serializeArray(),
success: function (data) {
form.find("input[name=conf]").val("off");
alert_dialog_conf(submit, form, data.liste, data.title);
}
});
});
}
//load the next page of data array
function next(submit, form, f_val, data) {
form.find(".next").unbind('click').bind('click', function () {
form.find("input[name=page]").attr("value", data.next);
form.find("input[name=liste_filter]").attr("value", data.filter);
f_val = form.serialize(true);
update_tab(submit, form, f_val);
return false;
});
}
//load the previous page of data array
function prev(submit, form, f_val, data) {
form.find(".prev").unbind('click').bind('click', function () {
form.find("input[name=page]").attr("value", data.prev);
form.find("input[name=liste_filter]").attr("value", data.filter);
f_val = form.serialize(true);
update_tab(submit, form, f_val);
});
return false;
}
//print the table when click on the print link
function print() {
$("a.jqprint").unbind("click").bind("click", function () {
var $table = $(this).closest(".report-table");
var $graph = $(this).closest(".graph");
if ($graph.length > 0) {
$graph.jqprint();
} else {
$table.jqprint();
}
});
}
function csv() {
var button = $("#export_csv");
button.unbind("click").bind("click", function (e) {
e.preventDefault();
var $this = $(this);
if ($this.closest("#dialog").length > 0) {
var $form = $("#dialog").data("dataForm");
} else {
var $form = $this.closest(".ui-tabs-panel").find(".report_form");
}
//clone form and submit
var clone = $form.clone().appendTo($this);
clone.attr("action", $form.find("input[name=action]").val())
.attr("method",'POST')
.removeAttr("onsubmit")
.find("input[name=printcsv]").val("on");
$(clone).submit().remove();
});
}
//order the array by DESC or ASC when clicking a column
function orderArray() {
$('.orderby').unbind("click").bind('click', function () {
var $this = $(this);
var champ = $(this).parent().attr('class');
var submit_click = $this.closest(".report-table").parent();
var form_click = submit_click.parent().find("form");
var order = 'asc';
if (form_click.find("input[name=order]").val() == "") {
order = "asc";
}
if (form_click.find("input[name=order]").val() == "asc") {
order = "desc";
$this.find('.asc').hide();
}
else {
order = "asc";
$this.find('.desc').hide();
}
form_click.find("input[name=order]").val(order);
form_click.find("input[name=champ]").val(champ);
var f_val = form_click.serialize(true);
update_tab(submit_click, form_click, f_val);
return false;
});
}
//show hide prev & next or both according to the result
function navigation(form, prev, next, display_nav) {
if (prev == 0) {
form.find("input[name=prev]").hide();
}
else {
form.find("input[name=prev]").show();
}
if (next == false) {
form.find("input[name=next]").hide();
}
else {
form.find("input[name=next]").show();
}
if (display_nav == false || ((prev == 0) && (next == false))) {
form.hide();
}
}
//color filter'slink if a filter is active
function colorFilter(col) {
if ($.isArray(col)) {
$.each(col, function () {
$("a." + this).filter("a.filter").css("color", "#0000FF");
});
}
}
//show hide desc or asc arrow according to the order of the table
function arrow(form) {
var cl = form.find("input[name=champ]").val();
if (cl != "") {
var th = $("th." + cl + ":visible");
th.css("color", "white");
if (form.find("input[name=order]").val() == "asc") {
th.find('.asc').hide();
}
else if (form.find("input[name=order]").val() == "desc") {
th.find('.desc').hide();
}
}
}
//load default page and number of result if the user seizes crazy things in this inputs
function page(form, lim, array_val) {
var current_lim = form.find("input[name=limit]").val();
if (current_lim < 1 || Math.floor(current_lim).toString() != current_lim.toString()) {
current_lim = 30;
form.find("input[name=limit]").attr("value", current_lim);
}
if (current_lim != lim) {
form.find("input[name=page]").attr("value", "1");
}
else {
if (array_val["page"] < 1 || Math.floor(array_val["page"]).toString() != array_val["page"].toString()) {
array_val["page"] = 1;
}
form.find("input[name=page]").attr("value", array_val["page"]);
}
}
//do a submit button to load new users conf
function go(submit, form, f_val, data) {
$(".submiter").bind("click", function () {
form.find("input[name=liste_filter]").attr("value", data.filter);
form.find("input[name=action]").attr("value", $(this).data('action'));
f_val = form.serialize(true);
update_tab(submit, form, f_val);
});
}
function loadDash() {
var $form = $("#dashboard-form");
$.ajax({
url : $form.attr('action'),
type : $form.attr('method'),
dataType: 'json',
data : $form.serializeArray(),
beforeSend: function() {
resize();
$("#dashboard").empty().addClass("loading");
},
success : function( data ) {
$("#dashboard").empty().append(data.html);
drawCharts();
$('td a:visible').bind('click', function () {
tableLinkAction($(this));
});
},
error : function( xhr, err ) {
},
timeout: function(){
}
}).done(function() {
$("#dashboard").removeClass("loading");
});
return false;
}
//submit is the div where we want to load the updated tab
//form is the current form
//f_val is the serialized form
function update_tab(submit, form, f_val) {
//unserialize the form values
var array_val = unserialize(f_val);
//attribute the current page & check values
page(form, save_limit, array_val);
//attribute the current filter
form.find("input[name=liste_filter]").attr("value", array_val["liste_filter"]);
var datas = form.serializeArray();
$.ajax({
type: "POST",
url: form.find("input[name=action]").val(),
dataType: "json",
data: datas,
beforeSend: function () {
submit.empty();
submit.closest('.answers').addClass('onload');
form.hide();
},
success: function (data) {
//remove loader
submit.closest('.answers').removeClass('onload');
//show form
form.show();
//attribute the new page
form.find("input[name=page]").attr("value", data.page);
//attribute the new filter
form.find("input[name=liste_filter]").attr("value", data.filter);
//save current limit
save_limit = data.limit;
//load the result
submit.empty().append(data.rs);
//get selected li index
if ($tabs.data("ui-tabs")) {
var selected_tab = $tabs.tabs('option', 'active');
}
if (typeof(selected_tab) === 'undefined') {
selected_tab = 0;
}
class_selected_tab = $('.tabb:visible li').eq(selected_tab).attr('class');
//hide show the next and previous button according to the results
navigation(form, data.prev, data.next, data.display_nav);
//color the filter link if active
colorFilter(data.col);
//load the next array
next(submit, form, f_val, data);
//load the previous one
prev(submit, form, f_val, data);
//submit new array
go(submit, form, f_val, data);
//load the who array
who();
//load the what array
what();
//load the group by array
group();
//load the array with new filters
dofilter(submit, form, f_val);
//load the configuration array
conf(submit, form, f_val);
//print the array
print();
//export csv
csv();
//load the new array with new order
orderArray();
//hide show desc or asc arrow
arrow(form);
drawPlatformAndNavigatorChart(datas);
}
});
}
function drawPlatformAndNavigatorChart(data) {
$.each(data, function (k, v) {
if (v.name == "tbl" && v.value == "CNXB") {
$(".navi").each(function () {
$(this).gvChart({
chartType: 'PieChart',
hideTable: true,
gvSettings: {
width: 890,
height: 300,
backgroundColor: "#F6F2F1",
is3D: true,
legend: 'bottom'
}
});
});
}
else if (v.name == "tbl" && v.value == "SITEACTIVITY") {
$(".tblsite").gvChart({
chartType: 'LineChart',
gvSettings: {
vAxis: {
title: language.connexion
},
hAxis: {
title: language.heure
},
width: 890,
height: 300,
backgroundColor: "#F6F2F1"
}
});
}
});
}
//resize report div
function resize() {
bodySize.y = $('#mainContainer').innerHeight();
bodySize.x = $('#mainContainer').innerWidth();
$('.answers:visible').height(Math.round(bodySize.y - $('.answers:visible').offset().top));
};
function pollNotifications() {
$.ajax({
type: "POST",
url: "/session/notifications/",
dataType: 'json',
data: {
module: 10,
usr: usrId
},
error: function () {
window.setTimeout("pollNotifications();", 10000);
},
timeout: function () {
window.setTimeout("pollNotifications();", 10000);
},
success: function (data) {
if (data) {
commonModule.manageSession(data);
}
var t = 120000;
if (data.apps && parseInt(data.apps) > 1) {
t = Math.round((Math.sqrt(parseInt(data.apps) - 1) * 1.3 * 120000));
}
window.setTimeout("pollNotifications();", t);
return;
}
});
};
window.setTimeout("pollNotifications();", 10000);