2026-03-30 15:29:29 +05:30

56 lines
2.3 KiB
PHP

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Login</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="<?= base_url('css/app.css') ?>">
</head>
<body class="app-body app-page--auth">
<?php $validationErrors = validation_errors(); ?>
<div class="card auth-card shadow">
<div class="card-body">
<h2 class="text-center mb-4 auth-title">Login</h2>
<?php if (session()->getFlashdata('success')): ?>
<div class="alert alert-success app-alert"><?= esc(session()->getFlashdata('success')) ?></div>
<?php endif; ?>
<?php if (session()->getFlashdata('error')): ?>
<div class="alert alert-danger app-alert"><?= esc(session()->getFlashdata('error')) ?></div>
<?php endif; ?>
<form method="post" action="<?= base_url('login') ?>" class="app-form" novalidate>
<?= csrf_field() ?>
<div class="mb-3">
<label for="email" class="form-label">Email</label>
<input type="email" name="email" id="email" value="<?= esc(old('email')) ?>"
class="form-control <?= isset($validationErrors['email']) ? 'is-invalid' : '' ?>"
placeholder="Enter email" autocomplete="email" required>
<?= validation_show_error('email') ?>
</div>
<div class="mb-4">
<label for="password" class="form-label">Password</label>
<input type="password" name="password" id="password"
class="form-control <?= isset($validationErrors['password']) ? 'is-invalid' : '' ?>"
placeholder="Enter password" autocomplete="current-password" required>
<?= validation_show_error('password') ?>
</div>
<button type="submit" class="btn btn-app-primary w-100">Login</button>
</form>
<div class="text-center mt-4">
<p class="auth-divider-text mb-2">Don't have an account?</p>
<a href="<?= base_url('register') ?>" class="btn-app-secondary">Create account</a>
</div>
</div>
</div>
</body>
</html>