Нужен функционал, который возвращает username, avatar_file_path,cover_file_path, email.
Нужны функции, которые меняют эти поля, кроме email. Менять может только зарегистрированный юзер.
Нужен функционал для загрузки файлов в storage.
Если пользователь меняет аватар и обложку или удаляет, то удаляем также и эти картинки из хранилища по id пользователя.
Придумать организацию файлов в storage.
уникальный понятный url
Для аватаров(2 размера), обложек(2 размера)
При загрузке аватарки принимаем любое разрешение, главное чтобы было не больше 2 мб.
При успешной валидации уменьшаем оригинальный размер до 2 размеров - 100 px и 35 px.
В базу сохраняем эти 2 размера по следующему пути:
{userId}/avatars/normal.jpg
{userId}/avatars/small.jpg
При загрузке обложки формируем два размера 1280 на 400 и 384на 120и сохраняем по следующему пути:
{userId}/covers/original.jpg
{userId}/covers/mobile.jpg
If user enter wrong current password, website send this message:
Current password is invalid
3 errors:
Password confirmation doesn't match Password010
Password is too short (minimum is 8 characters)
Current password can't be blank
New password can’t be the same as previous
Task description:
Нужен функционал, который возвращает username, avatar_file_path,cover_file_path, email. Нужны функции, которые меняют эти поля, кроме email. Менять может только зарегистрированный юзер.
Нужен функционал для загрузки файлов в storage. Если пользователь меняет аватар и обложку или удаляет, то удаляем также и эти картинки из хранилища по id пользователя.
Придумать организацию файлов в storage. уникальный понятный url Для аватаров(2 размера), обложек(2 размера)
При загрузке аватарки принимаем любое разрешение, главное чтобы было не больше 2 мб. При успешной валидации уменьшаем оригинальный размер до 2 размеров - 100 px и 35 px. В базу сохраняем эти 2 размера по следующему пути: {userId}/avatars/normal.jpg {userId}/avatars/small.jpg
При загрузке обложки формируем два размера 1280 на 400 и 384на 120и сохраняем по следующему пути: {userId}/covers/original.jpg {userId}/covers/mobile.jpg
Examples and links:
No response
Links to the layout:
https://www.figma.com/design/aAEsApaCTnTut2sSgLa6G3/BibleVis-GeCraft?node-id=2009-2114&t=gNMjYXyxKc7CkJCT-4
____
Evaluation criteria:
1. 2.
General solution:
Implementation steps:
1. 2.
New components and functions:
Changes in components and functions:
Tests:
Additional information:
If user enter wrong current password, website send this message: Current password is invalid
3 errors: Password confirmation doesn't match Password010 Password is too short (minimum is 8 characters) Current password can't be blank New password can’t be the same as previous