File: /home/barbeatleanalyti/public_html/manage.beatleanalytics.com/theme/black/page/chart/chart.js
$(".connectedSortable, .box-header, .connectedSortable .nav-tabs-custom").css("cursor", "move");
$('#ReportDate').daterangepicker({format: 'DD/MM/YYYY',maxDate: new Date()});
$('#LeaveReportDate').daterangepicker({format: 'DD/MM/YYYY',maxDate: new Date()});
$('#LoginDate').datepicker({format: 'dd-mm-yyyy',maxDate: new Date()});
$('.MonthView').datepicker( { format: 'mm-yyyy', viewMode: "months", minViewMode: "months", showDropdowns: false});
$('#ChartEmployee').select2();
$('#LeaveEmployee').select2();
$('#SalaryEmpReport').select2();
$('.multipleselect').select2();
$("#sortable1, #sortable2, #sortable3").sortable({
placeholder: "sort-highlight",
connectWith: ".connectedSortable",
handle: ".box-header, .nav-tabs",
forcePlaceholderSize: true,
zIndex: 999999,
update: function(){
var LeftData = $("#sortable1").sortable('toArray').toString();
var RightData = $("#sortable2").sortable('toArray').toString();
var BottomData = $("#sortable3").sortable('toArray').toString();
ChangeChartPostion(LeftData,RightData,BottomData);
}
});
function ChangeChartPostion(LeftData,RightData,BottomData){
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttpBoxChange=new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttpBoxChange=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttpBoxChange.onreadystatechange=function() {
if (xmlhttpBoxChange.readyState==4 && xmlhttpBoxChange.status==200)
{
// var Respose = eval(xmlhttpBoxChange.responseText);
}
}
xmlhttpBoxChange.open("GET","ajax/news.php?data="+base64_encode("acn=ChangeChartBoxPosition&pg=dashbordma&BoxLeft="+LeftData+"&BoxRight="+RightData+"&BoxBottom="+BottomData),true);
xmlhttpBoxChange.send();
}
$(".setbox").click(function(e) {
var ID = $(this).attr('for').valueOf();
var BoxPosition = "open";
if($("#"+ID).hasClass('fa-minus') == true){
BoxPosition = "close";
}
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttpSetting=new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttpSetting=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttpSetting.onreadystatechange=function() {
if (xmlhttpSetting.readyState==4 && xmlhttpSetting.status==200)
{
// var Respose = eval(xmlhttpSetting.responseText);
}
}
xmlhttpSetting.open("GET","ajax/news.php?data="+base64_encode("acn=ChangeChartPosition&pg=dashbordma&SelectedValue="+ID+"&val1="+BoxPosition),true);
xmlhttpSetting.send();
});
$("#GenerateReport").click(function(e) {
GenerateTicketReport();
});
$(window).load(function(e) {
GenerateTicketReport();
});
function GenerateTicketReport(){
var ReportDate = $("#ReportDate").val();
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttpChart=new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttpChart=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttpChart.onreadystatechange=function() {
if (xmlhttpChart.readyState==4 && xmlhttpChart.status==200)
{
var CollectedData = eval(xmlhttpChart.responseText);
var ReportDuration = CollectedData[5][0]+' to '+CollectedData[5][1]
if(CollectedData[5][0] == CollectedData[5][1]){
var ReportDuration = CollectedData[5][0];
}
$("#ErrorMsgTicket").html('<h4 style="line-height:26px;"><strong>Date between </strong> <br />'+ReportDuration+' </h4>');
$("#TicketManageMain").fadeIn();
//var MONTHS = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
var randomScalingFactor = function() {
return Math.round(Math.random() * 100 * (Math.random() > 0.5 ? -1 : 1));
};
var randomColorFactor = function() {
return Math.round(Math.random() * 255);
};
var randomColor = function(opacity) {
return 'rgba(' + randomColorFactor() + ',' + randomColorFactor() + ',' + randomColorFactor() + ',' + (opacity || '.3') + ')';
};
var config = {
type: 'line',
data: {
labels: CollectedData[0],
datasets: [{
label: "Resove",
data: CollectedData[1],
fill: false,
//borderDash: [5, 5],
}, {
label: "New Tickets",
data: CollectedData[2],
fill: false,
// borderDash: [5, 5],
}, {
label: "Open Tickets",
data: CollectedData[3],
lineTension: 0,
fill: false,
}, {
label: "Due Ticket",
data: CollectedData[4],
fill: false,
}]
},
options: {
responsive: true,
legend: {
position: 'bottom',
},
hover: {
mode: 'label'
},
scales: {
xAxes: [{
display: true,
scaleLabel: {
display: true,
labelString: 'Date'
}
}],
yAxes: [{
display: true,
scaleLabel: {
display: true,
labelString: 'Tickets'
}
}]
},
title: {
display: false,
text: 'Ticket Report'
}
}
};
$.each(config.data.datasets, function(i, dataset) {
var background = randomColor(0.5);
dataset.borderColor = background;
dataset.backgroundColor = background;
dataset.pointBorderColor = background;
dataset.pointBackgroundColor = background;
dataset.pointBorderWidth = 1;
});
$('#TicketManage').remove();
$('#TicketManageMain').html('<canvas id="TicketManage"><canvas>');
var ctx = document.getElementById("TicketManage").getContext("2d");
window.myLine = new Chart(ctx, config);
}
}
if($("#TicketManage").length != 0) {
xmlhttpChart.open("GET","ajax/news.php?data="+base64_encode("acn=FetchTicketChartData&pg=dashbordma&SelectedValue="+ReportDate),true);
xmlhttpChart.send();
}
}
$(window).load(function(e) {
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp1=new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttp1=new ActiveXObject("Microsoft.XMLHTTP");
}
if($("#ProjectTicketReport").length != 0) {
xmlhttp1.open("GET","ajax/news.php?data="+base64_encode("acn=FetchProjectChartTicket&pg=dashbordma"),true);
xmlhttp1.send();
}
xmlhttp1.onreadystatechange=function() {
if (xmlhttp1.readyState==4 && xmlhttp1.status==200)
{
var ChartData = eval(xmlhttp1.responseText);
if(ChartData[0] != 'N'){
//var MONTHS = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
var randomScalingFactor = function() {
return Math.round(Math.random() * 100 * (Math.random() > 0.5 ? -1 : 1));
};
var randomColorFactor = function() {
return Math.round(Math.random() * 255);
};
var randomColor = function(opacity) {
return 'rgba(' + randomColorFactor() + ',' + randomColorFactor() + ',' + randomColorFactor() + ',' + (opacity || '.3') + ')';
};
var config = {
type: 'bar',
data: {
labels: ChartData[0],
datasets: [{
label: "Total Ticket",
data: ChartData[3],
borderColor : "#F7464A",
backgroundColor : "#F7464A",
pointBorderColor : "#F7464A",
pointBackgroundColor : "#F7464A",
pointBorderWidth : 1,
//borderDash: [5, 5],
}, {
label: "Running Tickets",
data: ChartData[1],
borderColor : "#FDB45C",
backgroundColor : "#FDB45C",
pointBorderColor : "#FDB45C",
pointBackgroundColor : "#FDB45C",
// borderDash: [5, 5],
}, {
label: "Close Tickets",
data: ChartData[2],
borderColor : "#46BFBD",
backgroundColor : "#46BFBD",
pointBorderColor : "#46BFBD",
pointBackgroundColor : "#46BFBD",
// borderDash: [5, 5],
}]
},
options: {
responsive: true,
legend: {
position: 'bottom',
},
hover: {
mode: 'label'
},
scales: {
xAxes: [{
display: true,
scaleLabel: {
display: true,
labelString: 'Project'
}
}],
yAxes: [{
display: true,
scaleLabel: {
display: true,
labelString: 'Tickets'
},
ticks: {
suggestedMin: 0,
//suggestedMax: 24,
//stepSize: 1,
},
}]
},
title: {
display: true,
text: 'Project Ticket Report'
}
}
};
if($("#ProjectTicketReport").length != 0) {
var ctx = document.getElementById("ProjectTicketReport").getContext("2d");
window.ProjectTicketChart = new Chart(ctx, config);
}
}else{
// No record found
$('#ProjectTicketReport').css('display','none');
$('#ProjectTicketReport').after('<div id="ProjectTicketReport2"><h4 class="text-muted text-center">'+ChartData[1]+'</h4></div>');
return false;
}
}
}
});
//var ReportDate = $("#ReportDate").val();
$('#ChartEmployee, #InoutMonth, #InOutYear').change(function(e) {
EmployeeInOutChart('Y');
});
$(window).load(function(e) {
EmployeeInOutChart();
});
function EmployeeInOutChart(){
$('#InOutReportMain').html('<div class="text-center"><img src="theme/black/images/loading1.gif" style="width: 25px;" /><label> Please wait..</label></div>');
var EmpID = $("#ChartEmployee").val();
var Month = $("#InoutMonth").val();
var Year = $("#InOutYear").val();
if(EmpID == 0 || EmpID == ""){
$('#EmpInOutReport').remove();
$('#InOutReportMain').css("display","none");
$('#InOutReportMain').html('<h4 style="line-height:26px;" class="text-center text-muted">No any record found..</h4>');
$('#InOutReportMain').fadeIn();
}
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttpChartEmp=new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttpChartEmp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttpChartEmp.onreadystatechange=function() {
if (xmlhttpChartEmp.readyState==4 && xmlhttpChartEmp.status==200)
{
var EmpData = eval(xmlhttpChartEmp.responseText);
if(EmpData[0] == "Y"){
//var MONTHS = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
var randomScalingFactor = function() {
return (Math.random() > 0.5 ? -1 : 1) * Math.round(Math.random() * 100);
//return 0;
};
var randomColorFactor = function() {
return Math.round(Math.random() * 255);
};
var randomColor = function(opacity) {
return 'rgba(' + randomColorFactor() + ',' + randomColorFactor() + ',' + randomColorFactor() + ',' + (opacity || '.3') + ')';
};
var config = {
type: 'line',
data: {
labels: EmpData[6], //["January", "February", "March", "April", "May", "June", "July"],
datasets: [{
label: "Shift InTime",
data: EmpData[3],
fill: false,
steppedLine: true,
//backgroundColor : "lightgreen",
borderColor: "#00a65a",
//borderDash: [5, 5],
multiKeyBackground : "#00a65a",
},{
label: "Shift OutTime",
data: EmpData[4],
fill: false,
steppedLine: true,
borderColor: "#f56954",
// borderDash: [5, 5],
}, {
hidden: false,
label: 'InTime',
fill: false,
borderColor: "#f39c12",
backgroundColor: "rgba(151,187,205,0.5)",
//borderDash: [5, 5],
steppedLine: true,
data: EmpData[1],
}, {
label: "OutTime",
fill: false,
borderColor: "#3c8dbc",
steppedLine: true,
//borderDash: [5, 5],
backgroundColor: "rgba(151,187,205,0.5)",
data: EmpData[2],
}]
},
options: {
responsive: true,
title:{
display:true,
text: EmpData[5][0] +' (#'+EmpData[5][1]+') - InOut Report',
},
tooltips: {
mode: 'label',
label:EmpData[5][0],
callbacks: {
beforeTitle: function() {
return EmpData[5][0];
},
afterTitle: function() {
return "#"+EmpData[5][1];
},
}
},
hover: {
mode: 'dataset'
},
scales: {
xAxes: [{
display: true,
scaleLabel: {
display: true,
labelString: 'Day'
}
}],
yAxes: [{
display: true,
scaleLabel: {
display: true,
labelString: 'Time'
},
ticks: {
suggestedMin: 0,
suggestedMax: 24,
stepSize: 1,
},
}]
}
}
};
$('#EmpInOutReport').remove();
$('#InOutReportMain').html('<canvas id="EmpInOutReport"><canvas>');
var Data = document.getElementById("EmpInOutReport").getContext("2d");
window.myLineChart = new Chart(Data, config);
}else{
$('#EmpInOutReport').remove();
$('#InOutReportMain').css("display","none");
$('#InOutReportMain').html('<h4 style="line-height:26px;" class="text-center text-muted">No any record found..</h4>');
$('#InOutReportMain').fadeIn();
}
}
}
if($("#InOutReportMain").length != 0) {
xmlhttpChartEmp.open("GET","ajax/news.php?data="+base64_encode("acn=FetchEmpInOutReport&pg=dashbordma&SelectedValue="+Month+"&Number="+Year+"&empid="+EmpID),true);
xmlhttpChartEmp.send();
}
}
$(window).load(function(e) {
GenerateLeaveReport();
});
$('#GenerateLeaveReport, #LeaveEmployee').on('change click',function(e) {
GenerateLeaveReport('Y');
});
function GenerateLeaveReport(IsLoad){
var LeaveReportDate = $("#LeaveReportDate").val();
var Emp = $("#LeaveEmployee :selected").text();
var EmpID = $("#LeaveEmployee").val();
if(EmpID == "0"){
$('#LeaveReport').remove();
$('#LeaveReportMain').css("display","none");
$('#LeaveReportMain').html('<h4 style="line-height:26px;" class="text-center">Please select employee..</h4><div class="text-center"><i class="fa fa-pie-chart fa-3x" style="color:rgb(249, 249, 249) !important; font-size: 242px;"></i></div>');
$('#LeaveReportMain').fadeIn()
return false;
}
$('#LeaveReportMain').html('<div class="text-center margin"><img src="theme/black/images/loading1.gif" style="width: 25px;" /><label> Please wait..</label></div>');
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttpLeave=new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttpLeave=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttpLeave.onreadystatechange=function() {
if (xmlhttpLeave.readyState==4 && xmlhttpLeave.status==200)
{
var EmpLeaveReportData = eval(xmlhttpLeave.responseText);
if(EmpLeaveReportData[0] == 'Y'){
var config = {
type: 'doughnut',
data: {
datasets: [
//{//data:[100], //backgroundColor: ["#FDB45C"], //},
{
data: EmpLeaveReportData[1][0],
backgroundColor: EmpLeaveReportData[1][2],
label: 'Leave Report'
},
],
labels: EmpLeaveReportData[1][1],
},
options: {
responsive: true,
legend: {
position: 'bottom',
},
title: {
display: true,
text: EmpLeaveReportData[2][0]+" to "+EmpLeaveReportData[2][1],
},
animation: {
animateScale: true,
animateRotate: true
}
}
};
$('#LeaveReport').remove();
$('#LeaveReportMain').html('<h4 style="line-height:26px;" class="text-center no-margin">'+Emp+'</h4><canvas id="LeaveReport"><canvas>');
var ctx = document.getElementById("LeaveReport").getContext("2d");
window.myDoughnut = new Chart(ctx, config);
}else{
$('#LeaveReport').remove();
$('#LeaveReportMain').css("display","none");
$('#LeaveReportMain').html('<h4 style="line-height:26px;" class="text-center">No any record found..</h4><div class="text-center"><i class="fa fa-pie-chart fa-3x" style="color:rgb(249, 249, 249) !important; font-size: 250px;"></i></div>');
$('#LeaveReportMain').fadeIn()
}
}
}
if($("#LeaveReportMain").length != 0) {
xmlhttpLeave.open("GET","ajax/news.php?data="+base64_encode("acn=FetchEmployeeLeaveReport&pg=dashbordma&SelectedValue="+LeaveReportDate+"&empid="+EmpID),true);
xmlhttpLeave.send();
}
}
$("#GenerateCurrentLoginReport").click(function(e) {
CurrentLoginEmpChart('Y');
});
$(window).load(function(e) {
CurrentLoginEmpChart();
});
function CurrentLoginEmpChart(Reset){
var LoginDate = $("#LoginDate").val();
if(LoginDate == ""){
return false;
}
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttpLogin=new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttpLogin=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttpLogin.onreadystatechange=function() {
if (xmlhttpLogin.readyState==4 && xmlhttpLogin.status==200)
{
var LoginInfo = eval(xmlhttpLogin.responseText);
if(LoginInfo[0] != "N"){
var config = {
type: 'pie',
data: {
datasets:
[{ data: [LoginInfo[0], LoginInfo[1]], backgroundColor: [ "#46BFBD", "#4D5360",]},],
labels: ["Login Employee","Not Login Employee",]
},
options: {
responsive: true,
legend: { position: 'bottom'},
title: { display: true, text: "Login Report - "+LoginInfo[3], },
}
};
$('#CurrentLogin').remove();
$('#CurrentLoginMain').html('<canvas id="CurrentLogin"><canvas>');
var ctx = document.getElementById("CurrentLogin").getContext("2d");
window.myLogin = new Chart(ctx, config);
}else{
$('#CurrentLogin').remove();
$('#CurrentLoginMain').html('<div id="CurrentLogin"><h4 class="text-muted text-center">'+LoginInfo[1]+'</h4></div>');
return false;
}
}
}
if($("#CurrentLogin").length != 0) {
xmlhttpLogin.open("GET","ajax/news.php?data="+base64_encode("acn=FetchEmployeeCurrentLoginChart&pg=dashbordma&SelectedValue="+LoginDate),true);
xmlhttpLogin.send();
}
}
function SETSalaryReport(ReportAs){
if(ReportAs == 'M'){
var SetDate = new Date();
$("#SSalaryMonth").val("01-"+SetDate.getFullYear());
$("#ESalaryMonth").val(SetDate.getMonth()+"-"+SetDate.getFullYear());
$("#YearlyView").hide();
$("#MonthlyView").show();
$("#FindReportAs").val('M');
GenerateSalaryCompanyChart('M');
}else if(ReportAs == 'Y'){
$("#MonthlyView").hide();
$("#YearlyView").show();
$("#FindReportAs").val('Y');
GenerateSalaryCompanyChart('Y');
}else{
return false;
}
}
$("#GenerateSalaryReport").click(function(e) {
GenerateSalaryCompanyChart();
});
$(window).load(function(e) {
GenerateSalaryCompanyChart();
});
function GenerateSalaryCompanyChart(){
var ReportAs = $("#FindReportAs").val();
var SalaryYear = $("#SalaryYears").val();
var SSalaryMonth = $("#SSalaryMonth").val();
var ESalaryMonth = $("#ESalaryMonth").val();
if(ReportAs == 'Y'){
if(SalaryYear == ""){
return false;
}
}else if(ReportAs == 'M'){
if(SSalaryMonth == "" || ESalaryMonth == ""){
return false;
}
}
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttpSal=new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttpSal=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttpSal.onreadystatechange=function() {
if (xmlhttpSal.readyState==4 && xmlhttpSal.status==200)
{
var SalaryData = eval(xmlhttpSal.responseText);
if(SalaryData[0][1] == 1){
$("#SalaryExpenMsg").html('<h4 class="text-red">'+SalaryData[0][0]+'</h4>');
$("#CompanySalaryMain").slideUp();
return false;
}else{
var ReportDuration = SalaryData[8][0]+' to '+SalaryData[8][1];
if(SalaryData[8][0] == SalaryData[8][1]){
ReportDuration = SalaryData[8][0];
}
$("#SalaryExpenMsg").html('<h4 style="line-height:26px;"><strong> Salary Expenditure (All Employees)</strong> <br /> '+ReportDuration+' </h4>');
$("#CompanySalaryMain").fadeIn();
}
var barChartData = {
labels: SalaryData[6],
datasets: [{
data: SalaryData[1],
backgroundColor: "#F7464A",
label: SalaryData[7][0]
},{
data: SalaryData[2],
backgroundColor: "#46BFBD",
label: SalaryData[7][1]
},{
data: SalaryData[3],
backgroundColor: "#FDB45C",
label: SalaryData[7][2]
},
{
data: SalaryData[4],
backgroundColor: "#949FB1",
label: SalaryData[7][3]
},
{
data: SalaryData[5],
backgroundColor: "#4D5360",
label: SalaryData[7][4]
},
]
};
$('#CompanySalary').remove();
$('#CompanySalaryMain').html('<canvas id="CompanySalary"><canvas>');
var ctx = document.getElementById("CompanySalary").getContext("2d");
window.myBar = Chart.Bar(ctx, {
data: barChartData,
options: {
responsive: true,
hoverMode: 'label',
legend: {
position: 'bottom',
},
hoverAnimationDuration: 400,
stacked: false,
title:{
display:false,
text:"Salary Report"
},
scales: {
yAxes: [{
type: "linear", // only linear but allow scale type registration. This allows extensions to exist solely for log scale for instance
display: true,
position: "left",
id: "y-axis-1",
}, {
type: "linear", // only linear but allow scale type registration. This allows extensions to exist solely for log scale for instance
display: false,
position: "right",
id: "y-axis-2",
gridLines: {
drawOnChartArea: false
}
}],
}
}
});
}
}
if($("#CompanySalary").length != 0) {
xmlhttpSal.open("GET","ajax/news.php?data="+base64_encode("acn=FetchSalaryCalculationChart&pg=dashbordma&SelectedValue="+SalaryYear+"&StartDate="+SSalaryMonth+"&EndDate="+ESalaryMonth+"&val1="+ReportAs),true);
xmlhttpSal.send();
}
}
$("#GenerateIndiSalaryReport, #SalaryEmpReport").on('click change',function(e) {
GenerateSalaryIndividualEmpChart();
});
$(window).load(function(e) {
GenerateSalaryIndividualEmpChart();
});
function GenerateSalaryIndividualEmpChart(){
var SSalaryMonthIndi = $("#SSalaryMonthIndi").val();
var ESalaryMonthIndi = $("#ESalaryMonthIndi").val();
var SelectEmployeeID = $("#SalaryEmpReport").val();
var Employee = $("#SalaryEmpReport :selected").text();
if(SSalaryMonthIndi == "" || ESalaryMonthIndi == "" || SelectEmployeeID == "" || SelectEmployeeID == "0"){
$("#ErrorMsgIndi").html('<h4 style="line-height:26px;">Please select employee</h4>');
$("#IndividualChars").slideUp();
return false;
}
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttpSalInd=new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttpSalInd=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttpSalInd.onreadystatechange=function() {
if (xmlhttpSalInd.readyState==4 && xmlhttpSalInd.status==200)
{
var IndiSalaryData = eval(xmlhttpSalInd.responseText);
if(IndiSalaryData[0][0] == 1){
$("#ErrorMsgIndi").html('<h4 style="line-height:26px;" class="text-red">'+IndiSalaryData[0][1]+'</h4>');
$("#IndividualChars").slideUp();
return false;
}else{
var ReportDuration = IndiSalaryData[5][0]+' to '+IndiSalaryData[5][1]
if(IndiSalaryData[5][0] == IndiSalaryData[5][1]){
var ReportDuration = IndiSalaryData[5][0];
}
$("#ErrorMsgIndi").html('<h4 style="line-height:25px;"><strong>Salary Report </strong> - '+Employee+' <br>'+ReportDuration+' </h4>');
$("#IndividualChars").fadeIn();
}
var randomScalingFactor = function() {
return Math.round(Math.random() * 100);
};
var randomColorFactor = function() {
return Math.round(Math.random() * 255);
};
var randomColor = function(opacity) {
return 'rgba(' + randomColorFactor() + ',' + randomColorFactor() + ',' + randomColorFactor() + ',' + (opacity || '.3') + ')';
};
//////////////// Earning Start //////////////////
var Colors = Array();
var DefultColors = Array( "#F7464A","#46BFBD","#FDB45C","#949FB1","#4D5360")
var RendomColorArr = function(Size){
for(c=0;c<Size;c++){
if(c < DefultColors.length){
Colors[c] = DefultColors[c];
}else{
Colors[c] = randomColor(0.9);
}
}
return Colors;
}
var config_earning = {
type: 'pie',
height:100,
data: {
datasets:
[{ data: IndiSalaryData[1][1], backgroundColor: RendomColorArr(IndiSalaryData[1][1].length), } ],
labels: IndiSalaryData[1][0],
},
options: {
responsive: true,
legend: { position: 'bottom'},
title: { display: true, text: "Earning", },
}
};
$('#EearningSalary').remove();
$('#EearningSalaryMain').html('<canvas id="EearningSalary"><canvas>');
var ctx_earning = document.getElementById("EearningSalary").getContext("2d");
window.Earning = new Chart(ctx_earning, config_earning);
///////////////// Earning End /////////////////
//////////////// Deduction Start //////////////////
var config_deduction = {
type: 'pie',
data: {
datasets:
[{ data: IndiSalaryData[2][1], backgroundColor: RendomColorArr(IndiSalaryData[2][1].length), } ],
labels: IndiSalaryData[2][0],
},
options: {
responsive: true,
legend: { position: 'bottom'},
title: { display: true, text: "Employee Deduction", },
}
};
$('#DeductionsSalary').remove();
$('#DeductionsSalaryMain').html('<canvas id="DeductionsSalary"><canvas>');
var ctx_deduction = document.getElementById("DeductionsSalary").getContext("2d");
window.Deduction = new Chart(ctx_deduction, config_deduction);
///////////////// Deduction End /////////////////
//////////////// Contribution Start //////////////////
var config_contribution = {
type: 'pie',
data: {
datasets:
[{ data: IndiSalaryData[3][1], backgroundColor: RendomColorArr(IndiSalaryData[3][1].length), } ],
labels: IndiSalaryData[3][0],
},
options: {
responsive: true,
legend: { position: 'bottom'},
title: { display: true, text: "Company Contribution", },
}
};
$('#ContributionSalary').remove();
$('#ContributionSalaryMain').html('<canvas id="ContributionSalary"><canvas>');
var ctx_contribution = document.getElementById("ContributionSalary").getContext("2d");
window.Contribution = new Chart(ctx_contribution, config_contribution);
///////////////// Contribution End /////////////////
var config = {
data: {
labels: IndiSalaryData[4][0],
datasets: [{
data: IndiSalaryData[4][1],
backgroundColor: [ "#46BFBD","#F7464A","#FDB45C"],
label: 'Employee Salary Chart'
}],
},
options: {
responsive: true,
legend: {
position: 'bottom',
},
title: {
display: true,
text: 'Salary Expenditure'
},
scale: {
ticks: {
beginAtZero: true
},
reverse: false
},
animation: {
animateRotate: true,
animateScale: true
}
}
};
$('#IndividualSalary').remove();
$('#IndividualSalaryMain').html('<canvas id="IndividualSalary"><canvas>');
var ctx = document.getElementById("IndividualSalary");
window.IndividualSalary = Chart.PolarArea(ctx, config);
}
}
if($("#IndividualSalary").length != 0) {
xmlhttpSalInd.open("GET","ajax/news.php?data="+base64_encode("acn=FecthIndividualSalaryExpenditure&pg=dashbordma&empid="+SelectEmployeeID+"&StartDate="+SSalaryMonthIndi+"&EndDate="+ESalaryMonthIndi),true);
xmlhttpSalInd.send();
}
}
function SETSalesReport(ReportAs){
if(ReportAs == 'M'){
var SetDate = new Date();
$("#SSalesMonth").val("01-"+SetDate.getFullYear());
$("#ESalesMonth").val(SetDate.getMonth()+"-"+SetDate.getFullYear());
$("#YearlySales").hide();
$("#MonthlySales").show();
$("#FindSalesReportAs").val('M');
GenerateSalesReport();
}else if(ReportAs == 'Y'){
$("#MonthlySales").hide();
$("#YearlySales").show();
$("#FindSalesReportAs").val('Y');
GenerateSalesReport();
}else{
return false;
}
}
$("#GenerateSalesReport").on('click',function(e) {
GenerateSalesReport();
});
$(window).load(function(e) {
GenerateSalesReport();
});
function GenerateSalesReport(){
var SSalesMonth = $("#SSalesMonth").val();
var ESalesMonth = $("#ESalesMonth").val();
var ReportAs = $("#FindSalesReportAs").val();
var ReportYears = $("#SalesYears").val();
if(SSalesMonth == "" || ESalesMonth == ""){
alert('Required field should not blank !')
return false;
}
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttpSales=new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttpSales=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttpSales.onreadystatechange=function() {
if (xmlhttpSales.readyState==4 && xmlhttpSales.status==200)
{
var SalesReportData = eval(xmlhttpSales.responseText);
if(SalesReportData[0][1] == 1){
$("#ErrorMsgSales").html('<h4 style="line-height:26px;" class="text-red">'+SalesReportData[0][0]+'</h4>');
$("#SalesReportMain").slideUp();
return false;
}else{
var ReportDuration = SalesReportData[3][0]+' to '+SalesReportData[3][1];
if(SalesReportData[3][0] == SalesReportData[3][1]){
ReportDuration = SalesReportData[3][0];
}
$("#ErrorMsgSales").html('<h4 style="line-height:26px;"><strong>Sales Report</strong> <br /> '+ReportDuration+' </h4>');
$("#SalesReportMain").fadeIn();
}
var SalesData = {
labels: SalesReportData[2],
datasets: [{
type: 'line',
label: 'Total Sales',
backgroundColor: "rgba(151,187,205,0.5)",
data: SalesReportData[1],
borderColor: 'rgba(151,187,205,1)',
borderWidth: 2,
},]
};
$('#SalesReport').remove();
$('#SalesReportMain').html('<canvas id="SalesReport"><canvas>');
var Sales = document.getElementById("SalesReport").getContext("2d");
window.SalesChart = new Chart(Sales, {
type: 'bar',
data: SalesData,
options: {
responsive: true,
legend: {
position: 'bottom',
},
title: {
display: false,
text: 'Sales Report'
}
}
});
}
}
if($("#SalesReport").length != 0) {
xmlhttpSales.open("GET","ajax/news.php?data="+base64_encode("acn=FetchSalesReportData&pg=dashbordma&StartDate="+SSalesMonth+"&EndDate="+ESalesMonth+"&val1="+ReportAs+"&SelectedValue="+ReportYears),true);
xmlhttpSales.send();
}
}
function SETPLReport(ReportAs){
if(ReportAs == 'M'){
var SetDate = new Date();
//$("#SPLMonth").val("01-"+SetDate.getFullYear());
//$("#EPLMonth").val(SetDate.getMonth()+"-"+SetDate.getFullYear());
$("#PLYearly").hide();
$("#PLMonthly").show();
$("#FindPLReportAs").val('M');
GenerateProfitLossReport();
}else if(ReportAs == 'Y'){
$("#PLMonthly").hide();
$("#PLYearly").show();
$("#FindPLReportAs").val('Y');
GenerateProfitLossReport();
}else{
return false;
}
}
$("#GeneratePLReport").on('click',function(e) {
GenerateProfitLossReport();
});
$(window).load(function(e) {
GenerateProfitLossReport();
});
function GenerateProfitLossReport(){
var SPLMonth = $("#SPLMonth").val();
var EPLMonth = $("#EPLMonth").val();
var ReportAs = $("#FindPLReportAs").val();
var ReportYears = $("#PLYears").val();
if(ReportAs == 'M' && SPLMonth == "" || EPLMonth == ""){
alert('Required field should not blank !')
return false;
}
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttpsPL=new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttpsPL=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttpsPL.onreadystatechange=function() {
if (xmlhttpsPL.readyState==4 && xmlhttpsPL.status==200)
{
var PLReportData = eval(xmlhttpsPL.responseText);
if(PLReportData[0][1] == 1){
$("#ErrorMsgPL").html('<h4 style="line-height:26px;" class="text-red">'+PLReportData[0][0]+'</h4>');
$("#PLReportMain").slideUp();
return false;
}else{
var ReportDuration = PLReportData[3][0]+' to '+PLReportData[3][1];
if(PLReportData[3][0] == PLReportData[3][1]){
ReportDuration = PLReportData[3][0];
}
$("#ErrorMsgPL").html('<h4 style="line-height:26px;"><strong>Profit and Loss Trends Report</strong> <br /> '+ReportDuration+' </h4>');
$("#PLReportMain").fadeIn();
}
var barChartData = {
labels: PLReportData[2],
datasets: [
{
label: 'Total Expenses',
backgroundColor: "#FDB45C",
data:PLReportData[1][0]
},
{
label: 'Total Sales',
backgroundColor: "#46BFBD",
data:PLReportData[1][1]
},
{
label: 'Gross Profit/Loss',
backgroundColor: "#F7464A",
data:PLReportData[1][2]
},
]
};
$('#PLReport').remove();
$('#PLReportMain').html('<canvas id="PLReport"><canvas>');
var ctx = document.getElementById("PLReport").getContext("2d");
window.PLReportChart = new Chart(ctx, {
type: 'bar',
data: barChartData,
options: {
// Elements options apply to all of the options unless overridden in a dataset
// In this case, we are setting the border of each bar to be 2px wide and green
elements: {
rectangle: {
borderWidth: 2,
// borderColor: 'rgb(0, 255, 0)',
borderSkipped: 'bottom'
}
},
responsive: true,
legend: {
position: 'bottom',
},
title: {
display: false,
text: 'Profit And Loss'
}
}
});
}
}
if($("#PLReport").length != 0) {
xmlhttpsPL.open("GET","ajax/news.php?data="+base64_encode("acn=FetchProfitLossReport&pg=dashbordma&StartDate="+SPLMonth+"&EndDate="+EPLMonth+"&val1="+ReportAs+"&SelectedValue="+ReportYears),true);
xmlhttpsPL.send();
}
}
$(window).load(function(e) {
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttpHoldRuningProject=new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttpHoldRuningProject=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttpHoldRuningProject.onreadystatechange=function() {
if (xmlhttpHoldRuningProject.readyState==4 && xmlhttpHoldRuningProject.status==200)
{
var ProjectData = eval(xmlhttpHoldRuningProject.responseText);
if(ProjectData[0] != "N"){
var randomScalingFactor = function() {
return Math.round(Math.random() * 100);
};
var randomColorFactor = function() {
return Math.round(Math.random() * 255);
};
var randomColor = function(opacity) {
return 'rgba(' + randomColorFactor() + ',' + randomColorFactor() + ',' + randomColorFactor() + ',' + (opacity || '.3') + ')';
};
var HoldProjects = ProjectData[0];
var RuningProjects = ProjectData[1]
var config1 = {
type: 'pie',
data: {
datasets: [{
data: [ HoldProjects, RuningProjects ],
backgroundColor: ["#FDB45C", "#4D5360" ],
}, ],
labels: ["Running Projects", "Hold Projects" ]
},
options: {
responsive: true,
legend: { position: 'bottom' },
title: { display: true, text: 'Project Report'}
}
};
var ctx_ = document.getElementById("ChartProject").getContext("2d");
window.myPie_ = new Chart(ctx_, config1);
}else{
$('#ChartProject').css('display','none');
$('#ChartProject').after('<div id="ChartProject1"><h4 class="text-muted text-center">'+ProjectData[1]+'</h4></div>');
}
}
}
if($("#ChartProject").length != 0) {
xmlhttpHoldRuningProject.open("GET","ajax/news.php?data="+base64_encode("acn=FetchRunningHoldProject&pg=dashbordma&AdPage=dashboard"),true);
xmlhttpHoldRuningProject.send();
}
});