Initial commit

This commit is contained in:
Porawit Dongwang
2026-09-16 23:20:08 +07:00
commit 0041668dbb
32577 changed files with 3687927 additions and 0 deletions
@@ -0,0 +1,91 @@
<?php
// views/auth/login.php
?>
<div class="min-h-[80vh] flex items-center justify-center">
<div class="glass-card w-full max-w-md p-8 relative overflow-hidden">
<!-- Decorative blob -->
<div class="absolute -top-10 -right-10 w-32 h-32 bg-emerald-500/20 rounded-full blur-2xl"></div>
<div class="absolute -bottom-10 -left-10 w-32 h-32 bg-teal-500/20 rounded-full blur-2xl"></div>
<div class="text-center mb-8 relative z-10">
<div class="inline-flex items-center justify-center w-20 h-20 bg-white/50 dark:bg-slate-800/50 backdrop-blur-sm rounded-full mb-4 shadow-sm border border-white/20">
<img src="assets/img/logo.png" alt="Logo" class="w-12 h-12 object-contain">
</div>
<h2 class="text-2xl font-bold bg-gradient-to-r from-emerald-600 to-teal-500 bg-clip-text text-transparent">ระบบบริหารจัดการงานเปล</h2>
<p class="text-slate-500 dark:text-slate-400 mt-2">โรงพยาบาลเกาะสมุย</p>
</div>
<form id="loginForm" class="relative z-10">
<input type="hidden" name="action" value="login">
<input type="hidden" name="csrf_token" value="<?= generateCSRFToken() ?>">
<div class="mb-5">
<label for="username" class="block text-sm font-medium text-slate-700 dark:text-slate-300 mb-2">ชื่อผู้ใช้งาน</label>
<div class="relative">
<div class="absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none">
<i class="fa-solid fa-user text-slate-400"></i>
</div>
<input type="text" class="glass-input block w-full pl-10 pr-3 py-3" id="username" name="username" required placeholder="รหัสเจ้าหน้าที่">
</div>
</div>
<div class="mb-6">
<label for="password" class="block text-sm font-medium text-slate-700 dark:text-slate-300 mb-2">รหัสผ่าน</label>
<div class="relative">
<div class="absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none">
<i class="fa-solid fa-lock text-slate-400"></i>
</div>
<input type="password" class="glass-input block w-full pl-10 pr-3 py-3" id="password" name="password" required placeholder="••••••••">
</div>
</div>
<button type="submit" class="btn-primary-glass w-full py-3 text-lg font-medium flex items-center justify-center">
<span class="text">เข้าสู่ระบบ <i class="fa-solid fa-arrow-right-to-bracket ml-2"></i></span>
</button>
</form>
</div>
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
$('#loginForm').submit(function(e) {
e.preventDefault();
const btn = $(this).find('button[type="submit"]');
$.ajax({
url: 'api/users.php',
type: 'POST',
data: $(this).serialize(),
success: function(response) {
if (response.status === 'success') {
Swal.fire({
icon: 'success',
title: 'เข้าสู่ระบบสำเร็จ',
text: 'กำลังพาท่านเข้าสู่ระบบ...',
timer: 1500,
showConfirmButton: false,
background: document.documentElement.classList.contains('dark') ? '#1e293b' : '#fff',
color: document.documentElement.classList.contains('dark') ? '#f1f5f9' : '#1e293b'
}).then(() => {
window.location.href = '?page=dashboard';
});
} else {
btn.removeClass('btn-loading');
Swal.fire({
icon: 'error',
title: 'เข้าสู่ระบบล้มเหลว',
text: response.message,
background: document.documentElement.classList.contains('dark') ? '#1e293b' : '#fff',
color: document.documentElement.classList.contains('dark') ? '#f1f5f9' : '#1e293b'
});
}
},
error: function() {
btn.removeClass('btn-loading');
Swal.fire('ผิดพลาด', 'ไม่สามารถเชื่อมต่อเซิร์ฟเวอร์ได้', 'error');
}
});
});
});
</script>