213 lines
5.9 KiB
PHP
213 lines
5.9 KiB
PHP
|
<!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>
|