Техническое задание: Доработка системы аутентификации

Текущее состояние (AS IS)

Существует рабочее веб-приложение на стеке PHP, JavaScript и MySQL. В нём реализованы следующие функции:

  • Регистрация нового пользователя с указанием логина и пароля
  • Подтверждение учётной записи по электронной почте
  • Вход в систему по логину и паролю
  • Возможность входа как гостя (без регистрации)
  • Сохранение данных пользователей в базе данных MySQL

Исходный код предоставляется для ознакомления.

Требуемые доработки (TO BE)

1. Изменение модели аутентификации

  • Убрать обязательное поле «Логин» при регистрации.
  • Сделать основным идентификатором пользователя адрес электронной почты (email).
  • Обеспечить вход в систему только по email и паролю.

2. Восстановление пароля

  • Реализовать стандартный механизм «Забыли пароль?».
  • На странице входа добавить соответствующую ссылку.
  • При её нажатии пользователь вводит свой email.
  • На указанный email отправляется письмо с уникальной одноразовой ссылкой для сброса пароля.
  • По переходу по ссылке пользователь попадает на защищённую страницу, где может задать новый пароль.
  • После успешной смены пароля ссылка становится недействительной.

3. Общие требования

  • Все изменения должны быть совместимы с существующей структурой базы данных (возможна адаптация).
  • Функция гостевого входа должна остаться работоспособной.
  • Процесс подтверждения email при регистрации должен быть сохранён.
  • Код должен быть чистым, хорошо прокомментированным и соответствовать принципам безопасности.

Создание системы перелинковки для страниц интернет-магазина

Требуется специалист для ручной перелинковки 566 товарных страниц внутри одной категории. Необходимо разместить контекстные ссылки типа «См. также» или «Вас могут заинтересовать» между схожими моделями товаров.

Разработка архитектурного проекта и 3D-визуализации коммерческого здания для ритейла

Требуется создать проект двухэтажного здания площадью 1100 м² для продуктового магазина и офисов, включая планировку и 3D-визуализацию на основе предоставленного участка и примеров.