[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:
kirill.khorkov
2026-01-03 11:48:14 +03:00
parent 3f257120fa
commit d2c15ec37f
53 changed files with 8650 additions and 30 deletions

91
app/Views/auth/login.php Normal file
View 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>