Необходимо разработать форму обратной связи для сайта, которая будет включать механизм подтверждения номера телефона. Форма должна быть удобной для пользователей и интегрироваться с существующим сайтом.
Доработка админки Jetstream/Fortify
Вводная информация
Есть базовое приложение на базе Laravel8 + jetstream/Fortify
Базовый jetstream/Fortify модернизирован. Добавил поле uuid для команд и пользователей. Все бизнес-модули переделаны с использования полей company_id на поле team_uuid, с author_id/user_id на author_uuid/user_uuid.
Задачи:
- Если это возможно то нужно переделать всю работу блока jetstream на поле UUID а поле ID в users и teams удалить (не факт что возможно без форка, если так - отмена)
- Опционально заблокировать добавление пользователей в личную команду.
Сейчас у каждого пользователя при регистрации создается личная команда.
Если требуемая опция в конфиге (для всего сайта) включена то пользователи не могут приглашать других участников в свою персональную команду. Т.е. персональные команды становятся однопользовательскими.
- Сделать возможность приглашать пользователей которые еще не зарегистрированы в сервисе.
- Выводилось сообщение что юзер еще не зарегистрирован и ему будет отправлено приглашение
- Осуществлялась регистрация нового пользователя, он становился частью команды. В поле name (которое мы не знаем) записывается адрес электронной почты.
- Новому пользователю отправлялось письмо-приглашение с содержимым "Вася ([email protected]) приглашает вас в команду СуперКоманда в сервисе Templateapp. Для активации вашего аккаунта перейдите по ссылке ..."
- После перехода по ссылке (активации аккаунта) пользователю предлагается ввести свое имя/фамилию/новый пароль (старого пароля он не знает)/
По пунктам 3-4 принимаются предложения, как это правильнее реализовать. У нас такой "приглашенный" пользователь не знает свой пароль и неправильно будет сначала его приглашать (=активировать учетку) а потом запускать процесс смены пароля с еще одним письмом на почту.
- Уведомлять о приглашении в команду
Фишка команд в jetstream что можно пользователей приглашать (добавлять) в разные команды. Нужно добавить чтобы когда пользователя приглашают в команду - ему приходило по почте уведомление об этом.
- В профиле пользователя сделать список команд в которые он входит. С кнопкой Выйти из команды. С указанием является ли пользователь владельцем этой команды (если владелец то выйти нельзя). С указанием роли в команде. С ссылкой для перехода на страницу (профиль) команды.
- Спрятать ID команд, добавить slug к командам
Сейчас в команду можно добавить только зарегистрированных в сервисе пользователей.
Нужно чтобы при попытке добавить в команду email еще не зарегистрированного пользователя:
Сейчас доступ к профилю команды осуществляется через teams/[id]. Нужно переделать на teams/[slug]. Соответственно добавить в таблицу teams поле slug, сделать его генерацию при создании и изменении (переименовании) команды. Не использовать eloquent-sluggable. Ниже пример кода для генерации слагов (добавляется в модель).
public function setSlugAttribute($value)
{
$this->attributes['slug'] = $this->generateUniqueSlug($value);
}
private function generateUniqueSlug($value)
{
$temp = Str::slug($value, '-');
if(!Assettype::all()->where('slug',$temp)->isEmpty()){
$i = 1;
$newSlug = $temp . '-' . $i;
while(!Assettype::all()->where('slug',$newSlug)->isEmpty()){
$i++;
$newSlug = $temp . '-' . $i;
}
$temp = $newSlug;
}
return $temp;
}
Установка
git clone https://github.com/NKazantsev/templateapp5.git
Добавить каталоги
storage\app\
storage\app\public
storage\framework\
storage\framework\cache\
storage\framework\logs\
storage\framework\sessions\
storage\framework\testing\
storage\framework\views\composer update
npm install
npm run prod
В .env указать свою БД и почтовый сервер
php artisan migrate
Зарегистрироваться, пройти активацию (для этого укажите свои параметры в env для mailtrap)
NDA:
Исключительные права на результаты интеллектуальной деятельности, созданные в рамках выполнения указанных работ, включая авторские права, передаются навсегда и в полном объеме Заказчику.
Исполнитель обязуется не раскрывать кому либо характер и состав заказанных работ, не передавать результаты работ кому либо кроме Заказчика (Казанцева Н.В.)
Выбранный исполнитель
Заявки фрилансеров
Похожие заказы
- $10Веб-програмування2 заявкиЗакритий5 років тому
Требуется разработчик с опытом работы с React для доработки MVP. Основные задачи включают улучшение адаптивности под мобильные устройства и добавление нового функционала. Ожидается оценка стоимости работ. Техническое задание предоставлено.
Веб-програмування3 заявкиЗакритий5 років томуТребуется провести оптимизацию скорости загрузки сайта с целью улучшения показателей до 70+/100 на сервисе Google Page Speed. Необходимы все необходимые меры для повышения производительности и уменьшения времени загрузки страниц.
Веб-програмування1 виконавецьЗавершено5 років тому- $48
Необходимо создать скрипт для парсинга контента с двух указанных сайтов. Задача включает извлечение данных и их структурирование для дальнейшего использования. Подход к выполнению должен учитывать особенности обоих сайтов.
Веб-програмування1 виконавецьЗавершено5 років тому Требуется разработка приложения для тач стола на Unity с небольшой анимацией и навигацией по разделам. Графика готова, выполнена в Figma. Работа срочная.
Веб-програмування1 заявкаЗакритий5 років томуИщется специалист для консультации по извлечению блока canvas с сайта. Необходимы советы и рекомендации по веб-программированию для успешного выполнения задачи.
Веб-програмування2 заявкиЗакритий5 років тому- $100
Требуется провести базовую настройку веб-сайта В2С, посвященного лекарству, на грузинском языке. Необходимо создать заголовки страниц, теги и дополнительный контент для оптимизации в Google. Сайт собран на базе WIX-конструктора. Срок выполнения: с 11.01 по 20.01.2021.
Веб-програмуваннянемає заявокЗакритий5 років тому - $699
Требуется разработка Telegram сервиса с функциями управления ботами, подпиской на каналы и статистикой. Также необходима верстка для макетов дизайна сервиса. Более детальное техническое задание прикреплено, основные функции описаны. Желаемая цена обсуждается.
Веб-програмування1 заявкаЗакритий5 років тому - $150
Требуется доработка интернет-магазина на платформе OpenCart согласно предоставленному дизайну. Необходимо реализовать верстку для мобильных и планшетных версий. Укажите примеры ваших работ на OpenCart в откликах.
Веб-програмування6 заявокЗакритий5 років тому