[MVC] Полная миграция на MVC архитектуру
- Создано ядро MVC: App, Router, Controller, Model, View, Database - Созданы модели: User, Product, Category, Cart, Order - Созданы контроллеры: Home, Auth, Product, Cart, Order, Page, Admin - Созданы layouts и partials для представлений - Добавлены все views для страниц - Настроена маршрутизация с чистыми URL - Обновлена конфигурация Docker и Apache для mod_rewrite - Добавлена единая точка входа public/index.php
This commit is contained in:
91
app/Views/auth/login.php
Normal file
91
app/Views/auth/login.php
Normal file
@@ -0,0 +1,91 @@
|
||||
<?php $title = 'Вход'; ?>
|
||||
|
||||
<main class="profile-page-main">
|
||||
<div class="profile-container">
|
||||
<div class="profile-left-col">
|
||||
<div class="logo">AETERNA</div>
|
||||
</div>
|
||||
|
||||
<div class="profile-right-col">
|
||||
<div class="profile-form-block">
|
||||
<h2>ВХОД В АККАУНТ</h2>
|
||||
|
||||
<?php if (!empty($error)): ?>
|
||||
<div style="background: #f8d7da; color: #721c24; padding: 15px; border-radius: 5px; margin-bottom: 20px;">
|
||||
<?= htmlspecialchars($error) ?>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if (!empty($success)): ?>
|
||||
<div style="background: #d4edda; color: #155724; padding: 15px; border-radius: 5px; margin-bottom: 20px;">
|
||||
<?= htmlspecialchars($success) ?>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<form class="profile-form" id="loginForm">
|
||||
<input type="hidden" name="redirect" value="<?= htmlspecialchars($redirect ?? '/catalog') ?>">
|
||||
|
||||
<div class="input-group">
|
||||
<label for="login-email">E-mail</label>
|
||||
<input type="email" id="login-email" name="email" placeholder="Ваш электронный адрес" required>
|
||||
</div>
|
||||
|
||||
<div class="input-group">
|
||||
<label for="login-password">Пароль</label>
|
||||
<input type="password" id="login-password" name="password" placeholder="Введите пароль" required>
|
||||
</div>
|
||||
|
||||
<div class="form-options">
|
||||
<label class="remember-me">
|
||||
<input type="checkbox" id="remember" name="remember">
|
||||
Запомнить меня
|
||||
</label>
|
||||
<a href="#" class="forgot-password">Забыли пароль?</a>
|
||||
</div>
|
||||
|
||||
<button type="submit" class="btn primary-btn save-btn">Войти</button>
|
||||
|
||||
<div class="auth-actions">
|
||||
<span class="auth-text">Нет аккаунта?</span>
|
||||
<a href="/cite_practica/register" class="login-btn">Зарегистрироваться</a>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
$('#loginForm').on('submit', function(e) {
|
||||
e.preventDefault();
|
||||
|
||||
const email = $('#login-email').val();
|
||||
const password = $('#login-password').val();
|
||||
const redirect = $('input[name="redirect"]').val();
|
||||
|
||||
if (!email || !password) {
|
||||
alert('Заполните все поля');
|
||||
return;
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
url: '/cite_practica/login',
|
||||
method: 'POST',
|
||||
data: { email: email, password: password, redirect: redirect },
|
||||
dataType: 'json',
|
||||
success: function(result) {
|
||||
if (result.success) {
|
||||
window.location.href = result.redirect || '/cite_practica/catalog';
|
||||
} else {
|
||||
alert(result.message || 'Ошибка авторизации');
|
||||
}
|
||||
},
|
||||
error: function() {
|
||||
alert('Ошибка сервера. Попробуйте позже.');
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user