File "print_membership_card.php"
Full Path: /home/analogde/www/NAVETTE/dashboard_work/print_membership_card.php
File size: 5.83 KB
MIME-type: text/x-php
Charset: utf-8
<?php
include('includes/config.php');
$memberId = $_GET['id'];
$selectQuery = "SELECT members.*, membership_types.type AS membership_type_name
FROM members
JOIN membership_types ON members.membership_type = membership_types.id
WHERE members.id = $memberId";
$result = $conn->query($selectQuery);
if ($result->num_rows > 0) {
$memberDetails = $result->fetch_assoc();
$createdDate = new DateTime($memberDetails['created_at']);
$currentDate = new DateTime();
$interval = $createdDate->diff($currentDate);
$daysSinceCreation = $interval->days;
$membershipStatus = ($daysSinceCreation > 30) ? 'Expired' : 'Active';
} else {
header("Location: members_list.php");
exit();
}
// Visit codeastro.com for more projects
$fetchSettingsQuery = "SELECT system_name FROM settings WHERE id = 1";
$fetchSettingsResult = $conn->query($fetchSettingsQuery);
if ($fetchSettingsResult->num_rows > 0) {
$settings = $fetchSettingsResult->fetch_assoc();
$systemName = $settings['system_name'];
} else {
$systemName = 'codeastro.com';
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Print Membership Card</title>
<style>
body {
background: #222;
padding: 2rem;
font-family: helvetica;
}
.card {
background: rgb(192, 178, 195);
background: linear-gradient(36deg, rgba(192, 178, 195, 1) 0%, rgba(253, 243, 255, 1) 36%, rgba(246, 235, 248, 1) 64%, rgba(202, 187, 205, 1) 100%);
border-radius: 10px;
margin: auto;
width: 500px;
height: 280px;
box-shadow: 2px 5px 15px 5px #00000030;
display: flex;
flex-flow: column;
transition: all 1s;
}
.card:hover {
box-shadow: 10px 10px 15px 5px #00000030;
}
img {
width: 5rem;
height: 4rem;
}
.title {
display: flex;
justify-content: space-between;
flex-flow: row-reverse;
padding: 0.5rem 1.5rem 0.5rem 1.5rem;
text-transform: uppercase;
font-size: 12px;
color: #00000090;
}
.emboss {
padding: 1rem 1.5rem 0 1.5rem;
font-size: 18px;
color: black;
font-family: courier;
text-transform: uppercase;
letter-spacing: 3px;
}
.emboss2 {
padding: 1rem 1.5rem 0 10rem;
font-size: 11px;
color: black;
text-transform: uppercase;
letter-spacing: 1px;
}
.hologram {
width: 6.5rem; /* Adjust the width as needed */
height: 6.5rem; /* Adjust the height as needed */
background-size: 400%;
float: right;
/* border-radius: 10px; */
margin-left: auto;
margin: -5rem 1.5rem 0 auto;
/* animation: Gradient 15s ease infinite; */
}
.photo {
width: 5rem; /* Adjust the width as needed */
height: 5rem; /* Adjust the height as needed */
border-radius: 50%;
overflow: hidden;
margin: 1rem; /* Adjust margin as needed */
float: right;
}
.photo img {
width: 100%;
height: 100%;
object-fit: cover;
}
@keyframes Gradient {
0% {
background-position: 30% 0%;
}
50% {
background-position: 71% 100%;
}
100% {
background-position: 30% 0%;
}
}
</style>
</head>
<body>
<div class="card">
<span class="title">Membership card
<!-- <img src="https://i0.wp.com/revisewise.ie/wp-content/uploads/2019/07/Your-Logo-here.png?ssl=1" /> -->
<?php
$fetchLogoQuery = "SELECT logo FROM settings WHERE id = 1";
$fetchLogoResult = $conn->query($fetchLogoQuery);
if ($fetchLogoResult->num_rows > 0) {
$logoDetails = $fetchLogoResult->fetch_assoc();
$logoUrl = $logoDetails['logo'];
echo "<span class='logo'><img src='{$logoUrl}' alt='Logo'></span>";
}
?>
</span>
<span class="emboss"><b><?php echo $systemName; ?></b></span>
<span class="emboss"><b>#<?php echo $memberDetails['membership_number']; ?></b></span>
<span class="emboss"><?php echo $memberDetails['fullname']; ?></span>
<div>
<span class="emboss"><?php echo $memberDetails['address']; ?>, <?php echo $memberDetails['postcode']; ?></span>
</div>
<div>
<span class="emboss"><b>Membership: <?php echo $memberDetails['membership_type_name']; ?></b></span>
<?php if (!empty($memberDetails['photo'])): ?>
<?php $photoPath = 'uploads/member_photos/' . $memberDetails['photo']; ?>
<img src="<?php echo $photoPath; ?>" class="hologram" alt="Member Photo">
<?php else: ?>
<!-- Default photo if no photo is available -->
<img src="path/to/default-photo.png" alt="Default Photo">
<?php endif; ?>
</div>
<div>
<hr><small>
<span class="emboss2">Valid till <?php echo date('F d, Y', strtotime($memberDetails['expiry_date'])); ?></span>
</small>
</div>
</div>
<script>
window.onload = function () {
window.print();
}
</script>
</body>
<!-- Visit codeastro.com for more projects -->
</html>