Разработка модуля видео-трансляции оффлайн аукциона для OpenCart
Описание проекта:
Более подробное ТЗ предоставляем потенциальным исполнителям по запросу.
Основные понятия:
front-end - часть сайта, которая доступная для обычных пользователей.
back-end - административная часть, доступна только администраторам сайта.
Постановка задачи:
Разработать функционал для CMS Opencart c возможностью осуществлять видео-трансляцию аукциона и осуществления ставок.
Детальное описание работы модуля:
Front-end представляет из себя отдельную страницу сайта, на которую можно перейти из меню.
На данной странице должна быть отображена информация об он-лайн трансляции офф-лайн аукциона.
Если трансляция уже запущена, то должна выводится следующая информация:
название лота на офф-лайн аукционе (задается в back-end);
описание лота (задается в back-end);
текущая ставка (должна меняться в режиме онлайн из back-end, пользователь ее поменять не может);
окно видео трансляции;
checkbox для подтверждения ставки (страховка от случайного нажатия на кнопку);
кнопка сделать ставку.
См. приложения
Если трансляция еще не запущена, то должна выводиться информация о времени начала трансляции и так же ссылка на каталог лотов, с которым можно ознакомиться. (отдельная страница, ссылка задается в back-end)
Данный раздел front-end доступен только зарегистрированным пользователям. Необходимо предусмотреть возможность указания доступности определенной группе пользователей в back-end'e модуля.
При проведении текущей он-лайн трансляции офф-лайн аукциона, зарегистрированный пользователь, должен поставить галочку в checkbox'е и ему станет доступна кнопка "Сделать ставку" и нажать на нее. Информация об этом событии должна поступить в back-end модуля в режиме реального времени с указанием названия офф-лайн аукциона, название лота, времени ставки, именем пользователя со ссылкой на профиль и отметкой о ставке.
Back-end представляет из себя пункт подменю в разделе Sales (Продажи), при переходе в который открывается страница следующего содержания: Три вкладки: Новая трансляция, Текущие трансляции, Запланированные трансляции
1) Во вкладке Новая трансляция отображена следующая информация:
название аукциона;
название лотов (выбирается из списка он-лайн аукционов на сайте);
описание лотов (подгружается автоматически из он-лайн аукционов на сайте);
стартовая ставка по каждому лоту (берется наибольшая ставка по лоту в ходе он-лайн аукциона);
поле для вставки кода видео-транслятора;
текстовое поле для ссылки на каталог лотов
кнопка сохранить.
При нажатии кнопки сохранения, выбранным онлайн-аукционам присваивается статус «Закрытый»
2) Во вкладке Текущие трансляции отображена следующая информация:
Список текущих трансляций со ссылками на подробную информацию о трансляции.
2.1) На странице текущей трансляции отображена следующая информация:
название аукциона;
название лота;
описание лота;
текущая ставка (поле и кнопка «Сохранить», в котором администратор может изменять текущую ставку по лоту и эта информация в режиме реального времени отображается у всех пользователей, которые находятся на странице трансляции. Данные записываются в запись с id данного аукциона в таблице аукционов);
поле для вставки кода видео-транслятора;
текстовая область с информацией обо всех ставках через сайт по данному лоту (времени ставки, именем пользователя со ссылкой на профиль и отметкой о ставке.);
кнопка редактировать (дает возможность в полях как у новой трансляции изменить и сохранить информацию по текущей трансляции).
Список остальных лотов в аукционе и напротив каждого лота есть кнопка «Установить текущим лотом»
При нажатии на кнопку «Установить текущим лотом» торг по предыдущему лоту считается завершенным и устанавливается текущим выбранный лот.
Обязательные требования:
1) По окончанию проекта Исполнитель обязан предоставить не только работающее ПО, отвечающее требованиям Заказчика, но и исходники файлов, чтобы Заказчик имел возможность улучить и/или модифицировать ПО в дальнейшем.
2) Результат, полученный по завершению проекта, должен быть не худшего качества, чем образцы, представленные Заказчику в ходе проекта или тендера.
3) Заказчик имеет эксклюзивное и полное право на все ПО, тексты и другие результаты проекта.
4) В ходе работы над проектом Исполнитель не может использовать материалы, нарушающие авторские права третьей стороны (включая GPL, GNU и т.д.)
5) Наличие документации по разработке, разъясняющей программный код.
6) Обновление данных на странице должно быть построено с использованием WebSockets