Фрилансеры предложат решение вашей задачи уже через несколько минут!
Публикация заказа не займет много времени.
1 год назад
Константин Гуськов
31 год, Россия
1 год в сервисе
Был онлайн 11 месяцев назад
1 год назад

Ищем опытного PHP программиста, хорошо знающего Yii (1.x).  
В случае успешной реализации проекта, гарантируем долгосрочное (по-проектное) сотрудничество. Исполнитель будет выбран из тех, кто предоставит ссылки на собственные проекты на Yii или на github, где можно посмотреть разработки, связанные с фреймворком.  

Итак, задача.  
На основе базового приложения Yii, используя возможности фреймворка и следуя принятым в сообществе Yii правилам кодирования, необходимо разработать два модуля без использования готовых решений (включая модуль User и Bootstrap).  

Модуль 1 – User  
- Регистрация  
Для регистрации запрашивать только имя, фамилию и email.  
Проверять данные до отправки формы (Ajax валидация) – имя и фамилия должны быть на русском языке, от 3 и до 20 символов, email должен пройти проверку встроенным в Yii валидатором "email", а так же проверку на уникальность. Сообщения об ошибках (на русском языке) должны показываться так же до отправки формы. Проверка поля при потере фокуса (клик в другую область).  
После успешно пройденной регистрации, на указанный пользователем email должно отсылаться письмо со ссылкой для подтверждения, а после него – отсылка письма с паролем, сгенерированным системой (от 8 символов, латинские буквы разного регистра и цифры).  При попытке авторизоваться до подтверждения регистрации так же должна выводиться ошибка.  
- Авторизация  
Авторизация происходит при вводе email'a и пароля – email проверяется асинхронно.  
Пароли следует хранить в зашифрованном виде (md5).  
- Восстановление пароля  
Запрос на восстановление пароля происходит при вводе корректного email'а, после чего на этот адрес отсылается письмо с подтверждением сброса пароля. После подтверждения новый пароль отсылается пользователю. Необходимо фиксировать запросы на смену пароля, как удачные, так и нет (оставленные без подтверждения по почте), в отдельной таблице в БД.   

Модуль 2 – Dialog  
Должна быть возможность как вести переписку один на один, так и создавать беседки на 3 и более участников.  
- Создание диалога   
Началом персонального (один на один) диалога является отправка первого сообщения другому пользователю, началом коллективного (беседка) – приглашение нескольких пользователей в беседку или добавление еще одного участника в персональный диалог (кнопка "пригласить собеседников").  
Здесь за пример можно взять любую существующую социальную сеть, например, ВКонтакте. Если беседка была создана посредством приглашения третьего участника к персональному диалогу, то персональный диалог не подвергается изменениям, но пользователи переходят в новый диалог, только что созданный. Инициатор диалога получает  права администрировать беседку (изгонять участников и приглашать новых).  
При создании коллективного диалога создатель должен указать название беседки, которое будет отображаться на странице со списком диалогов вместо имени собеседника.  
- Обмен сообщениями  
Отсылка и получение сообщений в диалоге происходит асинхронно (без перезагрузки страницы). Сообщения, еще не прочитанные получателем, должны выделяться внешне (все равно как – жирный шрифт, другой цвет и так далее – главное сама возможность).  
- Права участников  
Участник диалога может покинуть его, после чего ему не будут видны новые сообщения в диалоге, отправленные уже после его выхода из беседки. Так же создатель диалога не может снова пригласить его в тот же самый диалог – пользователь, самостоятельно покинувший беседку, может вернуться только самостоятельно. Если пользователь был изгнан из диалога его создателем, то он не может вернуться сам, но может быть снова приглашен создателем. Если диалог покинет создатель, то права создателя переходят к первому приглашенному им в диалог пользователю.  

В прикрепленном файле описана предполагаемая структура БД и дан ряд пояснений.  
Финальная структура БД обсуждается с исполнителем.  

Предлагая цену, обоснуйте ее - скорее всего, мы договоримся.  

Конечно, после выполнения задачи данная разработка не может быть использована исполнителем где-либо еще или выложена им в общий доступ.

Войдите в аккаунт, чтобы посмотреть приложения к заказу.

Заявки фрилансеров

Алексей К.
35 лет, Россия
8 лет в сервисе
онлайн
1 год назад
ТОП-20 — Веб-программирование
  • OHHIO - интернет-магазин на Yii2
    442 просмотра
  • Крутая вёрстка лендинга ;-)
    1161 просмотр
  • Chuser - интеллектуальная система закупок HoReCa
    320 просмотров
  • Разработка сайта туристических маршрутов
    241 просмотр
Максим В.
41 год, Россия
12 лет в сервисе
Был онлайн 2 дня назад
1 год назад
Сергей К.
Сергей К. 
36 лет, Россия
5 лет в сервисе
Был онлайн 2 дня назад
1 год назад

Похожие заказы

Разработка скриптов для проекта

Сложный проект нужен хороший программист

Создание модуля для php-nuke (или отдельного скрипта)

Короткое общее описание на английском (экспорт упомянутый делать не нужно). Срок исполнения - ориентировочно до 15 числа. Легкие изменения ТЗ - возможны. Для плохо разбирающихся в английском - коротко: скрипт событий/вечеринок, люди могут туда подава

Написать небольшой ява скрипт для поиска в сети

написать небольшой ява скрипт для поиска в сети

Разработка модулей баннеро-обменной системы

Компания PrimeroStudio ищет отусорс-партнеров для разработки некоторых модулей баннеро-обменной системы. Требования - опыт разработки подобных систем. Готовность работать в режиме : <получение ТЗ на модуль - телефонный звонок - выполнение - отсылк...

Автономные системы оплат!

Нужно немножко подправить готовый код! Есть следующие модули онлйн платежей: authorizenet ipayment paypal secpay cc moneyorder pm2checkout cod nochex psigate rupay echo Всё это модули для osC

Модуль для сайта Агентства недвижимости

Требуется создать модуль для сайта агентства недвижимости. Движок сайта пишется на PHP. Дизайн уже почти готов. Вам нужно будет встроить модуль в уже готовый сайт. Модуль должен иметь панель администратора (администратор не владеет языками программир...

Разработка формы для отправки сообщения (Java)

Необходимо реализовать следующее: Авторизованный доступ пользователей к странице на которой он заполняет необходимую форму (пока два варианта формы, в дальнейшем может быть увеличено кол-во форм), данные введенные в форму проверяются согласно известн...

Модуль + блок для PHP_Nuke (v6.5 - 7.5) автом. обменного пункта WM + ввод-

1. Автоматический обменный пункт основных валют E-gold, WebMoney(Z, R, U, E). 2. Автоматическая регистрация ввода - вывода средств в интернет и обратно используя различные платежные варианты. А именно: почтовый перевод, интернет - банкинг (Privat 24)...

Модуль для PHP-NUKE (ver/7.3) либо отдельный сайт

Нужен модуль литературного салона. Необходимы возможности вывода статистики по: авторам, названию произведений, жанру, уровню автора, дате публикации, рецензиям, оценке читателей, количеству читателей, оценке компетентного жюри, статусу о прочтении. ...

Необходимо доделать модуль для портальной системы!

Необходимо доделать модуль для портальной системы! Работы не много.