Update Welcome.jsp
This commit is contained in:
parent
69ac198e96
commit
859f0b8898
612
Welcome.jsp
612
Welcome.jsp
@ -1,522 +1,4 @@
|
||||
<%@page contentType="text/html" pageEncoding="UTF-8"%>
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta charset="utf-8" />
|
||||
<!-- <title>IPKS | Home</title>-->
|
||||
<title>IFSS | Home</title>
|
||||
<link rel="shortcut icon" href="img/favicon.ico?pacs=<%=((new java.util.Date()).getTime())%>" type="image/x-icon" />
|
||||
<link rel="shortcut icon" href="/IFSS/img/favicon.ico?pacs=<%=((new java.util.Date()).getTime())%>" type="image/x-icon" />
|
||||
<script type="text/javascript">
|
||||
function noBack()
|
||||
{
|
||||
window.history.forward();
|
||||
}
|
||||
</script>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<link rel="stylesheet" type="text/css" href="/IFSS/css/styles.css?pacs=<%=((new java.util.Date()).getTime())%>"/>
|
||||
<link rel="stylesheet" type="text/css" href="/IFSS/css/ButtonAndText.css?pacs=<%=((new java.util.Date()).getTime())%>" />
|
||||
<link rel="stylesheet" type="text/css" href="/IFSS/css/info.css?pacs=<%=((new java.util.Date()).getTime())%>" />
|
||||
<link rel="stylesheet" type="text/css" href="/IFSS/css/wrapper.css?pacs=<%=((new java.util.Date()).getTime())%>"/>
|
||||
<link rel="stylesheet" type="text/css" href="/IFSS/bootstrap/css/bootstrap.min.css?pacs=<%=((new java.util.Date()).getTime())%>"/>
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Rubik:ital,wght@0,300..900;1,300..900&display=swap" rel="stylesheet">
|
||||
<script type="text/javascript" src="${pageContext.request.contextPath}/jquery-ui-1.10.4.custom/development-bundle/jquery-1.10.2.js?pacs=<%=((new java.util.Date()).getTime())%>"></script>
|
||||
<script type="text/javascript" src="/IFSS/chromejs/chrome.js?pacs=<%=((new java.util.Date()).getTime())%>"></script>
|
||||
<script type="text/javascript" src="/IFSS/js/iFrame_killer.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
|
||||
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
|
||||
|
||||
<style>
|
||||
body {
|
||||
height: 100vh;
|
||||
}
|
||||
/* The snackbar - position it at the bottom and in the middle of the screen */
|
||||
#snackbar {
|
||||
visibility: hidden; /* Hidden by default. Visible on click */
|
||||
min-width: 200px; /* Set a default minimum width */
|
||||
margin-left: -125px; /* Divide value of min-width by 2 */
|
||||
background-color: #333; /* Black background color */
|
||||
color: #fff; /* White text color */
|
||||
text-align: center; /* Centered text */
|
||||
border-radius: 2px; /* Rounded borders */
|
||||
padding: 16px; /* Padding */
|
||||
position: fixed; /* Sit on top of the screen */
|
||||
z-index: 1; /* Add a z-index if needed */
|
||||
left: 89%; /* Center the snackbar */
|
||||
bottom: 100px; /* 30px from the bottom */
|
||||
}
|
||||
|
||||
#snackbar2 {
|
||||
visibility: hidden; /* Hidden by default. Visible on click */
|
||||
min-width: 200px; /* Set a default minimum width */
|
||||
margin-left: -125px; /* Divide value of min-width by 2 */
|
||||
background-color: #333; /* Black background color */
|
||||
color: #fff; /* White text color */
|
||||
text-align: center; /* Centered text */
|
||||
border-radius: 2px; /* Rounded borders */
|
||||
padding: 16px; /* Padding */
|
||||
position: fixed; /* Sit on top of the screen */
|
||||
z-index: 1; /* Add a z-index if needed */
|
||||
left: 12%; /* Center the snackbar */
|
||||
bottom: 100px; /* 100px from the bottom */
|
||||
}
|
||||
#snackbar3 {
|
||||
visibility: hidden; /* Hidden by default. Visible on click */
|
||||
min-width: 200px; /* Set a default minimum width */
|
||||
margin-left: -125px; /* Divide value of min-width by 2 */
|
||||
background-color: #333; /* Black background color */
|
||||
color: #fff; /* White text color */
|
||||
text-align: center; /* Centered text */
|
||||
border-radius: 2px; /* Rounded borders */
|
||||
padding: 16px; /* Padding */
|
||||
position: fixed; /* Sit on top of the screen */
|
||||
z-index: 1; /* Add a z-index if needed */
|
||||
left: 12%; /* Center the snackbar */
|
||||
bottom: 100px; /* 100px from the bottom */
|
||||
}
|
||||
#notiButton {
|
||||
|
||||
min-width: 100px; /* Set a default minimum width */
|
||||
margin-left: -125px; /* Divide value of min-width by 2 */
|
||||
background-color: #333; /* Black background color */
|
||||
color: #fff; /* White text color */
|
||||
text-align: center; /* Centered text */
|
||||
border-radius: 2px; /* Rounded borders */
|
||||
padding: 16px; /* Padding */
|
||||
position: fixed; /* Sit on top of the screen */
|
||||
z-index: 1; /* Add a z-index if needed */
|
||||
left: 95%; /* Center the snackbar */
|
||||
bottom: 30px; /* 30px from the bottom */
|
||||
}
|
||||
|
||||
|
||||
#dReport {
|
||||
|
||||
min-width: 100px; /* Set a default minimum width */
|
||||
margin-left: -125px; /* Divide value of min-width by 2 */
|
||||
background-color: #333; /* Black background color */
|
||||
color: #fff; /* White text color */
|
||||
text-align: center; /* Centered text */
|
||||
border-radius: 2px; /* Rounded borders */
|
||||
padding: 16px; /* Padding */
|
||||
position: fixed; /* Sit on top of the screen */
|
||||
z-index: 1; /* Add a z-index if needed */
|
||||
left: 12%; /* Center the snackbar */
|
||||
bottom: 35px; /* 30px from the bottom */
|
||||
}
|
||||
#dReport2 {
|
||||
|
||||
min-width: 100px; /* Set a default minimum width */
|
||||
margin-left: -125px; /* Divide value of min-width by 2 */
|
||||
background-color: #333; /* Black background color */
|
||||
color: #fff; /* White text color */
|
||||
text-align: center; /* Centered text */
|
||||
border-radius: 2px; /* Rounded borders */
|
||||
padding: 16px; /* Padding */
|
||||
position: fixed; /* Sit on top of the screen */
|
||||
z-index: 1; /* Add a z-index if needed */
|
||||
left: 28%; /* Center the snackbar */
|
||||
bottom: 35px; /* 30px from the bottom */
|
||||
}
|
||||
|
||||
/*commented on 19/3/24*/
|
||||
#footer {
|
||||
width:100%;
|
||||
height:75px;
|
||||
position:fixed;
|
||||
padding-top: 130px;
|
||||
left: 0;
|
||||
padding-bottom:0px;
|
||||
/* position: fixed;
|
||||
padding: 10px 10px 0px 10px;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
right: 0;*/
|
||||
/*height: 40px; Height of the footer*/
|
||||
/* background: #8dce09; 57EE0B; #B5FF33*/
|
||||
}
|
||||
/*.footerSection_New {
|
||||
position: fixed;
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
width: 100%;
|
||||
min-width: 1024px !important;
|
||||
min-height: 10px;
|
||||
z-index: 111;
|
||||
background: #2b2b2b 0 0 no-repeat padding-box;
|
||||
}*/
|
||||
/*added on 19/3/24*/
|
||||
#page-footer {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
background-color: #f2f2df;
|
||||
font-size: 1em;
|
||||
font-weight: 500;
|
||||
color: #5C8DC5;
|
||||
font-family: "Rubik", sans-serif;
|
||||
/* position: fixed;
|
||||
left: 0;
|
||||
bottom: 0;*/
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
#page-footer div {
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.privacyPol {
|
||||
right: 0;
|
||||
text-align: right;
|
||||
padding: 5px;
|
||||
border-radius: 5px;
|
||||
;
|
||||
position: fixed;
|
||||
bottom: 1;
|
||||
color: #0000e6;
|
||||
min-width: 10px !important;
|
||||
min-height: 7px;
|
||||
z-index: 111;
|
||||
/* background: #2b2b2b 0 0 no-repeat padding-box;*/
|
||||
}
|
||||
/* Show the snackbar when clicking on a button (class added with JavaScript) */
|
||||
#snackbar.show {
|
||||
visibility: visible; /* Show the snackbar */
|
||||
/* Add animation: Take 0.5 seconds to fade in and out the snackbar.
|
||||
However, delay the fade out process for 2.5 seconds */
|
||||
-webkit-animation: fadein 0.5s, fadeout 0.5s 2.5s;
|
||||
animation: fadein 0.5s, fadeout 0.5s 2.5s;
|
||||
}
|
||||
|
||||
#snackbar2.show {
|
||||
visibility: visible; /* Show the snackbar */
|
||||
/* Add animation: Take 0.5 seconds to fade in and out the snackbar.
|
||||
However, delay the fade out process for 2.5 seconds */
|
||||
-webkit-animation: fadein 0.5s, fadeout 0.5s 2.5s;
|
||||
animation: fadein 0.5s, fadeout 0.5s 2.5s;
|
||||
}
|
||||
#snackbar3.show {
|
||||
visibility: visible; /* Show the snackbar */
|
||||
/* Add animation: Take 0.5 seconds to fade in and out the snackbar.
|
||||
However, delay the fade out process for 2.5 seconds */
|
||||
-webkit-animation: fadein 0.5s, fadeout 0.5s 2.5s;
|
||||
animation: fadein 0.5s, fadeout 0.5s 2.5s;
|
||||
}
|
||||
/*//added on 16/4/24*/
|
||||
fieldset {
|
||||
display: block;
|
||||
margin-inline-start: 2px;
|
||||
margin-inline-end: 2px;
|
||||
padding-block-start: 0.35em;
|
||||
padding-inline-start: 0.75em;
|
||||
padding-inline-end: 0.75em;
|
||||
padding-block-end: 0.625em;
|
||||
min-inline-size: min-content;
|
||||
border-style: groove;
|
||||
border-image: initial;
|
||||
flex: 1;
|
||||
|
||||
/* legend {
|
||||
display: block;
|
||||
padding-inline-start: 2px;
|
||||
padding-inline-end: 2px;
|
||||
unicode-bidi: isolate;
|
||||
border-width: initial;
|
||||
border-style: none;
|
||||
border-color: initial;
|
||||
border-image: initial;
|
||||
|
||||
element.style {
|
||||
padding: 8px;
|
||||
border-radius: 20px;
|
||||
background-color: #006600;
|
||||
color: white;*/
|
||||
}
|
||||
|
||||
|
||||
/*#menu a {
|
||||
float: left;
|
||||
padding: 12px 30px;
|
||||
color: rgb(0,140,69);
|
||||
text-transform: uppercase;
|
||||
font: bold 12px Arial, Helvetica;
|
||||
text-decoration: none; }*/
|
||||
|
||||
|
||||
|
||||
/* Animations to fade the snackbar in and out */
|
||||
@-webkit-keyframes fadein {
|
||||
from {
|
||||
bottom: 60;
|
||||
opacity: 0;
|
||||
}
|
||||
to {
|
||||
bottom: 100px;
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes fadein {
|
||||
from {
|
||||
bottom: 60;
|
||||
opacity: 0;
|
||||
}
|
||||
to {
|
||||
bottom: 100px;
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
@-webkit-keyframes fadeout {
|
||||
from {
|
||||
bottom: 100px;
|
||||
opacity: 1;
|
||||
}
|
||||
to {
|
||||
bottom: 60;
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes fadeout {
|
||||
from {
|
||||
bottom: 100px;
|
||||
opacity: 1;
|
||||
}
|
||||
to {
|
||||
bottom: 60;
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
/* added style on 28/6/24*/
|
||||
.main-container {
|
||||
display: flex;
|
||||
/*height: 80vh;*/
|
||||
width: inherit;
|
||||
padding: 0px 10px;
|
||||
}
|
||||
.left-section {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
flex: 2;
|
||||
/* background-color: #B1E1B3;*/
|
||||
color: #008C46;
|
||||
/* Light gray background */
|
||||
|
||||
/* padding: 10px;*/
|
||||
|
||||
|
||||
}
|
||||
|
||||
.right-section {
|
||||
flex: 5;
|
||||
/*background-color: #B1E1B3;*/
|
||||
/* Light gray background */
|
||||
/*text-align: center;*/
|
||||
color: #008C46;
|
||||
font-size: 15px;
|
||||
/*padding-top: 45px;*/
|
||||
}
|
||||
.left-section-below {
|
||||
display: flex;
|
||||
flex: 1;
|
||||
/* background-color: #B1E1B3;*/
|
||||
color: #008C46;
|
||||
gap: 50px;
|
||||
/* Light gray background */
|
||||
|
||||
/* padding: 10px;*/
|
||||
|
||||
|
||||
}
|
||||
#holiday-legend {
|
||||
background-color: #AD9E90;
|
||||
/*color: rgb(177,224,178);*/
|
||||
color: white;
|
||||
border-color: #80AE82 !important;
|
||||
border: 2px solid rgb(177,224,178);
|
||||
|
||||
}
|
||||
|
||||
|
||||
/* Added here for bradcast message style*/
|
||||
|
||||
.blur {
|
||||
filter : blur(10px);
|
||||
}
|
||||
|
||||
.popup {
|
||||
position: fixed;
|
||||
top: 50%;
|
||||
left:50%;
|
||||
background-color: white;
|
||||
transform: translate(-50%, -50%);
|
||||
padding: 20px;
|
||||
border-radius: 10px;
|
||||
z-index: 1000;
|
||||
box-shadow: 0px 0px 10px rgba(0,0,0,0.5) ;
|
||||
width: 80%;
|
||||
max-width: 500px;
|
||||
text-align: center;
|
||||
}
|
||||
.popup h2{
|
||||
margin-top: 0;
|
||||
color: #333;
|
||||
}
|
||||
.popup p {
|
||||
color: #666;
|
||||
line-height: 1.6;
|
||||
}
|
||||
|
||||
.popup button{
|
||||
background-color: #007bff;
|
||||
color: #fff;
|
||||
border: none;
|
||||
padding: 10px 20px;
|
||||
border-radius: 5px;
|
||||
cursor: pointer;
|
||||
font-size: 16px;
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
|
||||
/*Added for dashboard*/
|
||||
|
||||
.dashboard-container {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
/* flex-wrap: wrap;*/
|
||||
gap: 10px;
|
||||
padding: 10px;
|
||||
}
|
||||
.chart-container {
|
||||
width: 200px;
|
||||
height: 210px;
|
||||
background: cornsilk;
|
||||
padding: 10px;
|
||||
border-radius: 10px;
|
||||
box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
|
||||
|
||||
|
||||
</style>
|
||||
<script type="text/javascript" language="javascript">
|
||||
$(function () {
|
||||
$('marquee').mouseover(function () {
|
||||
$(this).attr('scrollamount', 0);
|
||||
}).mouseout(function () {
|
||||
$(this).attr('scrollamount', 5);
|
||||
});
|
||||
});
|
||||
|
||||
$(document).ready(function () {
|
||||
$(document).on('click', '.est_btn', function (event) {
|
||||
if ($('.est_btn').index(this) == 0) {
|
||||
document.location.href = "/IFSS/KCCSevlet";
|
||||
} else if ($('.est_btn').index(this) == 1) {
|
||||
document.location.href = "/IFSS/TradingSevlet";
|
||||
} else if ($('.est_btn').index(this) == 2) {
|
||||
document.location.href = "/IFSS/AssetServlet";
|
||||
<%--}else if($('.est_btn').index(this) == 3){
|
||||
document.location.href="/IFSS/PDSServlet";--%>
|
||||
} else if ($('.est_btn').index(this) == 4) {
|
||||
document.location.href = "/IFSS/SHGServlet";
|
||||
<%-- }else if($('.est_btn').index(this) == 5){
|
||||
document.location.href="/IFSS/GPSServlet";--%>
|
||||
} else if ($('.est_btn').index(this) == 6) {
|
||||
document.location.href = "/IFSS/MISDashboardSevlet";
|
||||
} else if ($('.est_btn').index(this) == 7) {
|
||||
document.location.href = "/IFSS/DepositServlet";
|
||||
} else if ($('.est_btn').index(this) == 8) {
|
||||
document.location.href = "/IFSS/LoanServlet";
|
||||
} else if ($('.est_btn').index(this) == 9) {
|
||||
document.location.href = "/IFSS/ShareServlet";
|
||||
<%--}else if($('.est_btn').index(this) == 10){
|
||||
document.location.href="/IFSS/SODEODServlet";--%>
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
// to restrict going back
|
||||
history.pushState(null, null, location.href);
|
||||
window.addEventListener('popstate', function (event) {
|
||||
history.pushState(null, null, location.href);
|
||||
});
|
||||
|
||||
$(function () {
|
||||
if ($.browser.msie && $.browser.version.substr(0, 1) < 7)
|
||||
{
|
||||
$('li').has('ul').mouseover(function () {
|
||||
$(this).children('ul').css('visibility', 'visible');
|
||||
}).mouseout(function () {
|
||||
$(this).children('ul').css('visibility', 'hidden');
|
||||
})
|
||||
}
|
||||
});
|
||||
|
||||
var repeater;
|
||||
|
||||
|
||||
function downloadReport()
|
||||
{
|
||||
var formDownloadReport = document.getElementById("reportForm");
|
||||
formDownloadReport.reportPath.value = "/Reports/investment_mat_report.jasper";
|
||||
formDownloadReport.reportName.value = "investment_mat_report";
|
||||
formDownloadReport.DOWNLOAD.value = "P";
|
||||
formDownloadReport.action = '/IFSS/jasperReportServlet';
|
||||
formDownloadReport.submit();
|
||||
}
|
||||
function downloadReport2()
|
||||
{
|
||||
var formDownloadReport = document.getElementById("reportForm3");
|
||||
formDownloadReport.reportPath.value = "/Reports/nsckvp_exp_report.jasper";
|
||||
formDownloadReport.reportName.value = "NSC_KVP_Exp_Report";
|
||||
formDownloadReport.DOWNLOAD.value = "P";
|
||||
formDownloadReport.action = '/IFSS/jasperReportServlet';
|
||||
formDownloadReport.submit();
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<!-- Added by Paramita for broadcast Message -->
|
||||
|
||||
<script>
|
||||
function closePopup(){
|
||||
document.getElementById("popup").style.display = "none";
|
||||
document.getElementById("overlay").style.display = "none";
|
||||
document.getElementById("mainContent").classList.remove('blur');
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
</head>
|
||||
<body onload="noBack()">
|
||||
<%
|
||||
String ModuleName = new String();
|
||||
|
||||
ModuleName = (String) session.getAttribute("moduleName");
|
||||
String role = (String) session.getAttribute("userRole");
|
||||
String pacsId = (String) session.getAttribute("pacsId");
|
||||
String holidayList = (String) session.getAttribute("holidayList");
|
||||
String kccBalanceTransfer = (String) session.getAttribute("kccBalanceTransfer");
|
||||
String broadcastMessage = (String)session.getAttribute("returnMessage");
|
||||
|
||||
// added by chhanda on 29/8/24
|
||||
String user = (String) session.getAttribute("user");
|
||||
String pacsName = (String) session.getAttribute("pacsName");
|
||||
String UserName = (String) session.getAttribute("UserName");
|
||||
String Mobile = (String) session.getAttribute("Mobile");
|
||||
|
||||
|
||||
%>
|
||||
<!-- Added for Dashboard -->
|
||||
<script>
|
||||
window.onload = function () {
|
||||
fetchUserData();
|
||||
};
|
||||
@ -549,36 +31,53 @@
|
||||
dropdown.addEventListener("change", function () {
|
||||
let selectedUserId = this.value;
|
||||
let selectedUser = users.find(user => user.user_id == selectedUserId);
|
||||
displayUserChart(selectedUser);
|
||||
displayUserCharts(selectedUser);
|
||||
});
|
||||
}
|
||||
|
||||
function displayUserChart(user) {
|
||||
function displayUserCharts(user) {
|
||||
let container = document.getElementById("userDashboard");
|
||||
container.innerHTML = ""; // Clear previous chart
|
||||
container.innerHTML = ""; // Clear previous charts
|
||||
|
||||
let chartContainer = document.createElement("div");
|
||||
chartContainer.classList.add("chart-container");
|
||||
// Create doughnut chart container
|
||||
let doughnutChartContainer = document.createElement("div");
|
||||
doughnutChartContainer.classList.add("chart-container");
|
||||
|
||||
let title = document.createElement("h3");
|
||||
title.textContent = "User_" + user.user_id;
|
||||
let doughnutTitle = document.createElement("h3");
|
||||
doughnutTitle.textContent = "User_" + user.user_id + " - Doughnut Chart";
|
||||
|
||||
let canvas = document.createElement("canvas");
|
||||
canvas.id = "chart_" + user.user_id;
|
||||
let doughnutCanvas = document.createElement("canvas");
|
||||
doughnutCanvas.id = "doughnut_chart_" + user.user_id;
|
||||
|
||||
// Append elements
|
||||
chartContainer.appendChild(title);
|
||||
chartContainer.appendChild(canvas);
|
||||
container.appendChild(chartContainer);
|
||||
// Append elements for doughnut chart
|
||||
doughnutChartContainer.appendChild(doughnutTitle);
|
||||
doughnutChartContainer.appendChild(doughnutCanvas);
|
||||
container.appendChild(doughnutChartContainer);
|
||||
|
||||
// Create bar chart container
|
||||
let barChartContainer = document.createElement("div");
|
||||
barChartContainer.classList.add("chart-container");
|
||||
|
||||
let barTitle = document.createElement("h3");
|
||||
barTitle.textContent = "User_" + user.user_id + " - Bar Chart";
|
||||
|
||||
let barCanvas = document.createElement("canvas");
|
||||
barCanvas.id = "bar_chart_" + user.user_id;
|
||||
|
||||
// Append elements for bar chart
|
||||
barChartContainer.appendChild(barTitle);
|
||||
barChartContainer.appendChild(barCanvas);
|
||||
container.appendChild(barChartContainer);
|
||||
|
||||
setTimeout(() => {
|
||||
let ctx = canvas.getContext("2d");
|
||||
if (!ctx) {
|
||||
console.error(`Failed to get 2D context for canvas '${canvasId}'`);
|
||||
// Doughnut chart
|
||||
let doughnutCtx = doughnutCanvas.getContext("2d");
|
||||
if (!doughnutCtx) {
|
||||
console.error(`Failed to get 2D context for canvas '${doughnutCanvas.id}'`);
|
||||
return;
|
||||
}
|
||||
|
||||
new Chart(ctx, {
|
||||
new Chart(doughnutCtx, {
|
||||
type: 'doughnut',
|
||||
data: {
|
||||
labels: ["unclaimed", "Overdue", "kyc", "SI"],
|
||||
@ -599,16 +98,39 @@
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// Bar chart
|
||||
let barCtx = barCanvas.getContext("2d");
|
||||
if (!barCtx) {
|
||||
console.error(`Failed to get 2D context for canvas '${barCanvas.id}'`);
|
||||
return;
|
||||
}
|
||||
|
||||
new Chart(barCtx, {
|
||||
type: 'bar',
|
||||
data: {
|
||||
labels: ["unclaimed", "Overdue", "kyc", "SI"],
|
||||
datasets: [{
|
||||
label: 'User Data',
|
||||
data: [user.unclaimed, user.Loan_overdue, user.kyc_status, user.si_status],
|
||||
backgroundColor: ["#36A2EB", "#FF6384", "#4BC0C0", "#FFCE56"]
|
||||
}]
|
||||
},
|
||||
options: {
|
||||
responsive: true,
|
||||
plugins: {
|
||||
legend: {
|
||||
display: true,
|
||||
position: 'top'
|
||||
}
|
||||
},
|
||||
scales: {
|
||||
y: {
|
||||
beginAtZero: true
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}, 100);
|
||||
}
|
||||
</script>
|
||||
|
||||
<div id="mainContent" class="<%=broadcastMessage != null ? "blur" : ""%>">
|
||||
<select id="userDropdown">
|
||||
<option value="">Select User</option>
|
||||
</select>
|
||||
|
||||
<div class="dashboard-container" id="userDashboard">
|
||||
<!-- Chart will be added dynamically -->
|
||||
</div>
|
||||
</div>
|
||||
|
Loading…
x
Reference in New Issue
Block a user