File: /home/imensosw/www/imenso.co/matrix/js/admin_report.js
// Report Admin Panel
var app= {};
// app.location = window.location.origin+"/matrix/admin/";
app.location = window.location.origin+"/matrix/admin/";
if(window.location.hostname=="sh018.hostgator.tempwebhost.net")
{
app.location = "http://sh018.hostgator.tempwebhost.net/~a16102wt/matrix/admin/";
}
app.filter = { start_date:"", end_date:"" };
$(document).ready(function(){
var curr = new Date();
// var firstday = new Date(curr.setDate(curr.getDate() - curr.getDay()+6));
var firstday = new Date();
var lastday = new Date(curr.setDate(curr.getDate() - curr.getDay()));
app.filter.start_date = formatDate(lastday);
app.filter.end_date = formatDate(firstday);
app.getReport();
$('#start_date').datepicker({
uiLibrary: 'bootstrap4',
format: 'yyyy-mm-dd',
autoclose: true,
value: formatDate(lastday),
// maxDate: formatDate(lastday),
maxDate:function () {
return $('#end_date').val();
}
});
$('#end_date').datepicker({
uiLibrary: 'bootstrap4',
format: 'yyyy-mm-dd',
autoclose: true,
value: formatDate(firstday),
minDate: function () {
return $('#start_date').val();
}
});
$('#end_date').change(function() {
var end_date = $(this).val();
var start_date = $("#start_date").val();
app.handleDate(start_date,end_date);
});
$('#start_date').change(function() {
var end_date = $("#end_date").val();
var start_date = $(this).val();
app.handleDate(start_date,end_date);
});
});
app.handleDate = function (start_date,end_date)
{
if(start_date!="" && end_date!="")
{
app.filter.start_date = start_date;
app.filter.end_date = end_date;
app.getReport();
}
else
{
alert("Please select date");
}
}
app.getReport = function ()
{
console.log(app.filter);
$.ajax({
url : app.location+"report_code.php",
type: "POST",
data:{filter:app.filter},
dataType:"json",
success : function(data){
for (var i = 0; i < data.dataAshwin.length; i++) {
data.dataAshwin[i]['x'] = new Date(data.dataAshwin[i]['label']);
}
for (var i = 0; i < data.dataVarun.length; i++) {
data.dataVarun[i]['x'] = new Date(data.dataVarun[i]['label']);
}
for (var i = 0; i < data.dataSachin.length; i++) {
data.dataSachin[i]['x'] = new Date(data.dataSachin[i]['label']);
}
for (var i = 0; i < data.dataMansi.length; i++) {
data.dataMansi[i]['x'] = new Date(data.dataMansi[i]['label']);
}
for (var i = 0; i < data.dataDipanjali.length; i++) {
data.dataDipanjali[i]['x'] = new Date(data.dataDipanjali[i]['label']);
}
for (var i = 0; i < data.dataKiranteja.length; i++) {
data.dataKiranteja[i]['x'] = new Date(data.dataKiranteja[i]['label']);
}
for (var i = 0; i < data.dataDeeksha.length; i++) {
data.dataDeeksha[i]['x'] = new Date(data.dataDeeksha[i]['label']);
}
// console.log(data);
app.reportChart(data);
},
error : function(data) {
}
});
}
app.reportChart = function(data)
{
var sdate = new Date(app.filter.start_date);
var edate = new Date(app.filter.end_date);
var totalDay = calcDate(edate,sdate);
var intervalType="day";
var interval=1;
if(totalDay<=5){
intervalType="day";
interval=1;
}
else if(totalDay<=15){
intervalType="day";
interval=2;
}
else if(totalDay<=30){
intervalType="day";
interval=4;
}
else if(totalDay<=60){
intervalType="day";
interval=7;
}
else if(totalDay<=100){
intervalType="day";
interval=12;
}
else if(totalDay>100){
intervalType="month";
interval=1;
}
else if(totalDay>200){
intervalType="month";
interval=2;
}
else if(totalDay>300){
intervalType="month";
interval=3;
}
var chart = new CanvasJS.Chart("chartContainer", {
animationEnabled: true,
title: {
text: ""
},
legend: {
verticalAlign: "top",
horizontalAlign: "center",
dockInsidePlotArea: false,
fontSize: 14,
},
axisX:{
valueFormatString: "DD MMM YYYY",
/*crosshair: {
enabled: true,
snapToDataPoint: true
},*/
interval: interval,
intervalType: intervalType,
},
axisY: {
title: "",
titleFontColor: "#4F81BC",
suffix: "",
// valueFormatString: "###",
/*crosshair: {
enabled: true
},*/
},
data:
[
{
toolTipContent: "{label}<br/> <strong>{name}</strong> : <strong>{y}</strong>",
indexLabelFontColor: "darkSlateGray",
name: "Sachin",
type: "line",
yValueFormatString: "###",
showInLegend: true,
legendMarkerType: "square",
color: "rgba(0,69,238,.7)",
dataPoints: data.dataSachin,
},
{
toolTipContent: "{label}<br/> <strong>{name}</strong> : <strong>{y}</strong>",
indexLabelFontColor: "darkSlateGray",
name: "Aswin",
type: "line",
yValueFormatString: "###",
showInLegend: true,
legendMarkerType: "square",
color: "rgba(112,173,71,.7)",
dataPoints: data.dataAshwin
},
{
toolTipContent: "{label}<br/> <strong>{name}</strong> : <strong>{y}</strong>",
indexLabelFontColor: "darkSlateGray",
name: "Deeksha",
type: "line",
yValueFormatString: "###",
showInLegend: true,
legendMarkerType: "square",
color: "rgba(255,192,37,.7)",
dataPoints: data.dataDeeksha
},
{
toolTipContent: "{label}<br/> <strong>{name}</strong> : <strong>{y}</strong>",
indexLabelFontColor: "darkSlateGray",
name: "Varun",
type: "line",
yValueFormatString: "###",
showInLegend: true,
legendMarkerType: "square",
color: "rgba(87, 87, 87)",
dataPoints: data.dataVarun
},
{
toolTipContent: "{label}<br/> <strong>{name}</strong> : <strong>{y}</strong>",
indexLabelFontColor: "darkSlateGray",
name: "Dipanjali",
type: "line",
yValueFormatString: "###",
showInLegend: true,
legendMarkerType: "square",
color: "rgba(87, 87, 87)",
xValueType: "{y}",
dataPoints: data.dataDipanjali
},
{
toolTipContent: "{label}<br/> <strong>{name}</strong> : <strong>{y}</strong>",
indexLabelFontColor: "darkSlateGray",
name: "Kiranteja",
type: "line",
yValueFormatString: "###",
showInLegend: true,
legendMarkerType: "square",
color: "rgba(87, 87, 87)",
xValueType: "{y}",
dataPoints: data.dataKiranteja
},
{
toolTipContent: "{label}<br/> <strong>{name}</strong> : <strong>{y}</strong>",
indexLabelFontColor: "darkSlateGray",
name: "Mansi",
type: "line",
yValueFormatString: "###",
showInLegend: true,
legendMarkerType: "square",
color: "rgba(87, 87, 87)",
xValueType: "{y}",
dataPoints: data.dataMansi
}
]
});
chart.render();
}
app.getData = function(){
if ($('ul.list-group > li').hasClass('done')) {
if(length>0)
{
$('ul.list-group > li.done:first>a').trigger('click');
$('ul.list-group > li.done:first').addClass('active');
}
}
}
function calcDate(date1,date2) {
var diff = Math.floor(date1.getTime() - date2.getTime());
var day = 1000 * 60 * 60 * 24;
var days = Math.floor(diff/day);
var months = Math.floor(days/31);
var years = Math.floor(months/12);
var message = days;
return message
}
function formatDate(date) {
var year = date.getFullYear().toString();
var month = (date.getMonth() + 101).toString().substring(1);
var day = (date.getDate() + 100).toString().substring(1);
return year + "-" + month + "-" + day;
}