pivi_vault_system/dashboard.php

213 lines
5.9 KiB
PHP
Raw Normal View History

2024-02-28 15:55:13 +08:00
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css">
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
<style>
html, body {
margin: 0;
padding: 0;
height: 100%;
overflow: hidden;
}
.container {
max-width: 100%;
max-height: 100%;
margin: 0 auto;
padding-top: 30px;
padding-top: 30px;
padding-bottom: 30px;
}
.chart-container {
display: flex;
justify-content: center;
align-items: center;
height: 500px;
max-height: 100%;
margin-top: 30px;
}
/* Custom CSS rule to adjust card width */
.card {
padding: 10px;
background-color: #B4B4B4;
margin: 5px;
}
/* Custom CSS rule to adjust iframe height */
iframe {
height: 700px;
}
</style>
</head>
<body style="background-color: rgba(0, 0, 0, 0);">
<?php
include 'config.php';
$user_id = $_GET['user_id'];
$role = $_GET['role'];
if(($role==$arole) or ($role==$rrole)){
$sql = "SELECT COUNT(user_id) FROM `request`";
} else {
$sql = "SELECT COUNT(user_id) FROM `request` where user_id=$user_id";
}
$result = $conn->query($sql);
$row = $result->fetch_assoc();
$request = $row['COUNT(user_id)'];
if(($role==$arole) or ($role==$rrole)){
$sql = "SELECT COUNT(user_id) FROM `request`where status=1" ;
} else {
$sql = "SELECT COUNT(user_id)FROM `request` where user_id=$user_id AND status=1";
}
$result = $conn->query($sql);
$row = $result->fetch_assoc();
$pending = $row['COUNT(user_id)'];
if(($role==$arole) or ($role==$rrole)){
$sql = "SELECT COUNT(user_id) FROM `request`where status=2";
} else {
$sql = "SELECT COUNT(user_id)FROM `request` where user_id=$user_id AND status=2";;
}
$result = $conn->query($sql);
$row = $result->fetch_assoc();
$approve = $row['COUNT(user_id)'];
if(($role==$arole) or ($role==$rrole)){
$sql = "SELECT COUNT(user_id) FROM `request`where status=3";
} else {
$sql = "SELECT COUNT(user_id)FROM `request` where user_id=$user_id AND status=3";
}
$result = $conn->query($sql);
$row = $result->fetch_assoc();
$release = $row['COUNT(user_id)'];
if(($role==$arole) or ($role==$rrole)){
$sql = "SELECT COUNT(user_id) FROM `request`where status=4";
} else {
$sql = "SELECT COUNT(user_id)FROM `request` where user_id=$user_id AND status=4";
}
$result = $conn->query($sql);
$row = $result->fetch_assoc();
$cancelled = $row['COUNT(user_id)'];
if(($role==$arole) or ($role==$rrole)){
$sql = "SELECT COUNT(user_id) FROM `request`where status=5";
} else {
$sql = "SELECT COUNT(user_id)FROM `request` where user_id=$user_id AND status=5";
}
$result = $conn->query($sql);
$row = $result->fetch_assoc();
$disapproved = $row['COUNT(user_id)'];
// Simulated pie chart data
$chartData = [
'Pending' => $pending,
'Approved' => $approve,
'Released' => $release,
'Cancelled' => $cancelled,
'Disapproved' => $disapproved
];
?>
<div class="row">
<div class="col-md-4">
<div class="card">
<div class="card-body">
<h5 class="card-title">Requests</h5>
<p class="card-text"><?php echo $request; ?></p>
</div>
</div>
</div>
<div class="col-md-4">
<div class="card">
<div class="card-body">
<h5 class="card-title">Pending</h5>
<p class="card-text"><?php echo $pending; ?></p>
</div>
</div>
</div>
<div class="col-md-4">
<div class="card">
<div class="card-body">
<h5 class="card-title">Approved</h5>
<p class="card-text"><?php echo $approve; ?></p>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-4">
<div class="card">
<div class="card-body">
<h5 class="card-title">Released</h5>
<p class="card-text"><?php echo $release; ?></p>
</div>
</div>
</div>
<div class="col-md-4">
<div class="card">
<div class="card-body">
<h5 class="card-title">Disapproved</h5>
<p class="card-text"><?php echo $disapproved; ?></p>
</div>
</div>
</div>
<div class="col-md-4">
<div class="card">
<div class="card-body">
<h5 class="card-title">Cancelled</h5>
<p class="card-text"><?php echo $cancelled; ?></p>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12 chart-container">
<canvas id="pieChart"></canvas>
</div>
</div>
</div>
<script>
// Pie chart data
var pieChartData = {
labels: <?php echo json_encode(array_keys($chartData)); ?>,
datasets: [{
data: <?php echo json_encode(array_values($chartData)); ?>,
backgroundColor: [
'#666666',
'#999999',
'#CCCCCC',
'#DDDDDD',
'#AAAAAA'
]
}]
};
// Create the pie chart
var ctx = document.getElementById('pieChart').getContext('2d');
new Chart(ctx, {
type: 'pie',
data: pieChartData
});
</script>
</html>