Сайт спортивных прогнозов. CMS с нуля.
Хочу поделиться своей разработкой, CMS сайта спортивных прогнозов, с весьма богатым функционалом. Система писалась с нуля в течении месяца, затем на протяжении полу года дорабатывалась и дописывалась. Добавлялись новые функции, фишки, плюшки и т.д., шла работа над безопасностью и скоростью работы самой системы. Далее обо всем по порядку.
Основное предназначение
Система разработана специально для команды капперов, которые занимаются профессиональным прогнозированием в области спорта. Делают прогнозы на матчи, ставят ставки, ведут статистику по кол-ву поражений и побед, а также подсчет прироста банка (ведь главное это получение прибыли). Так же команда продает свое прогнозы(советы) всем желающим заработать вместе с ними. Предусматривается и то, что в случае серии поражений их клиентам предусматривается компенсация в виде дополнительных бесплатных прогнозов, что бы была возможность отыграться.
Пример работы CMS: betelit.ru, bet2.rche.ru
Таким образом система включает в себя функционал для обеспечения всех выше описанных потребностей, их автоматизацию и еще много всего того, о чем пойдет речь дальше.
Функционал системы
Пользователю
- Пользователь имеет возможность приобрести прогноз на определенный матч, за фиксированную стоимость. Оплата производится WebMoney, Единый кошелек или Robokassa. при покупке прогноза пользователь может указать емаил для его получения, после оплаты пользователь получит доступ к его просмотру на сайте.
- Есть возможность приобрести подписку на прогнозы сроком на одну неделю, две недели, месяц и два месяца. все прогнозы будут высылаться на емаил и по СМС если указан ном. моб. телефона. при покупки подписки выдается спец. код для доступа в кабинет просмотра прогнозов, а так же настройки СМС сообщений и т.д.
- Так же пользователю доступна статистика прироста банка за текущий и прошлые месяца. В статистике приводятся все расчеты. кол-во поражений, кол-во выигрыше и возвратов. пользователь может просмотреть все прогнозы за минувшие дни и месяца, с отображением их полного текста.
- В каждом прогнозе содержится информация: дата, время начала матча; вид спорта; название события; участники события; бук.контора принимающая ставки; коэффициент; текст прогноза; доп. описание; рекомендуемая ставка в процентах от текущего банка;
- Так же пользователю доступна статистика работы команды, их средний процент побед в текущем месяце, кол-во паражений, побед, возвратов, средний коэф. в текущем месяце, начальный и итоговый банк. Есть возможность просмотра аналогичной статистики за каждый месяц.
- Пользователь может подписаться на ежедневную рассылку статистики за текущий месяц, это дает ему возможность отслеживать достоверность представленных результатов и исключает возможность изменение статистики командой. Тем самым повышается доверие к результатам. Доступен архив всех рассылок.
- На сайте реализована партнерская программа, с раздачей реферальных ссылок и отчислением процента с продаж пользователям на внутренний счет.
- Кроме всего прочего на сайте представлена возможность голосования на указанную тему, просмотра новостей и статей опубликованных командой капперов, возможность отправки сообщения о нарушениях (по каждому прогнозы) администрации, форма обратной связи, регистрация на сайте и восстановление пароля, каталог букмекерских контор.
Функционал для каппера (для комманды)
- Каппер имеет личный кабинет с богатым функционалом. Это раздел настройки профиля, с указанием своих персональных данных — ФИО, емаил, WMR и т.д.
- Может участвовать в бонус программе по привлечению новых подписчиков, получать доп. прибыль на свой внутренний счет с последующим выводом на WMR путем отправки заявки администратору.
- Доступ к разделу публикации прогноза, с пред-просмотром. При публикации доступны поля: дата, время начала; тип прогноза — платный, бесплатный; стоимость прогноза; вид спорта (выбирается из списка); событие и участники; бук. контора; коэффициент; текст прогноза; доп. описание; рекомендуемый процент ставки от текущего банка.
- Раздел просмотра собственных прогнозов, с возможностью их редактирования в течении 5 мин, после публикации (в последних модификация возможность редактирования убрана, т.к. осуществляется мгновенная отправка прогнозов на емаил и смс подписчиков).
- Раздел заявок на вывод заработанных средств. Деньги начисляются на внутренний счет, как правило это процент с продаж его прогнозов. Задается Администратором.
- Раздел просмотра текущих подписок на прогнозы с функцией рассылки СМС оповещений о новых прогнозах подписчикам. Не чаще чем раз в час.
- Доступен модераторский раздел. Где каппер может просматривать список всех прогнозов, выставлять результаты матчей, указывая при этом счет, статус — мобеда, паражение, возврат. Просматривать жалобы пользователей если таковые имеются.
- Так же капперу доступен раздел публикации материалов, новостей, статей, настройка опросов на сайте, редактирование каталога букмекерских контор.
- Возможность просмотра финансовой статистики, с фильтром по месяцам. Отображение кол-во покупок прогнозов и подписок, общая заработанная им сумма за выбранный период.
- Каппер наделен ограниченными правами модератора на сайте.
Администратору
- Как и должно быть администратору доступен полный контроль над всем сайтом. Функционал его кабинета включает в себя все привелегии и возможности пользователя, каппера, модератора и много другое, а именно:
- Добавление, редактирование у удаление на сайте материалов, статей, новостей. Управление опросами, архивом опросов, каталогом фук. контор.
- В финансовой статистике администратор также может просматривать емаил адреса купивших прогнозы, подписки.
- Есть возможность редактирования каталога видов спорта, который отображается списком при публикации прогнозов.
- Управление всеми пользователями, просмотр их перс. данных, удаление, редактирование.
- Рассылки пользователям на емаил адреса, как из профиля, так и заданием собственного списка емаил адресов.
- Формирование карты сайта sitemap.xml, в которую входят ссылки со всех разделов.
- Обработка заявок на вывод денежных средств.
- Просмотр, редактирование всех подписок на прогнозы (редакт. срока подписки, кода доступа, емаил адресов и прочее). Возможность массового продления срока действия подписок (удобно в случае начисления всем бонусов и т.д.)
- Доступен модераторский раздел прогнозов.
- Просмотр всех прогнозов.
- Обработка жалоб.
- Раздел настроек сайта, который включает в себя настройку множества параметров работы CMS. А именно: Минимальная стоимость прогноза, Процент отчислений капперам, Время жизни кода для прогноза (в часах), Время, спустя которое прогноз поступает на модерацию (часов), Макс. число прогнозов в блоке «Premium прогнозы», Макс. число прогнозов в блоке «Бесплатные прогнозы», минимальная сумма для вывода средств, Минимальный коэффициент для прогнзов, В течении скольки минут после публикации каппер может отредактировать прогноз, Процент начисляемый пользователю по бонус программе, Текст СМС уведомления о поступлении новых прогнозов, Эл. почта(E-Mail) администратора \супорта и многое другое.
О системе, архитектуре
- Система писалась с нуля, в процессе написания система не однократно меняла свою структуру, но при этом все выполнено по принципу модульного разделения. Для простаты редактирования шаблонов и доработки функционала.
- Одна точка входа — Index.php
- Использование различных многофункциональ PHP классов, для доступа к БД, авторизации пользователей, рассылки сообщений, thumbnail, и много другое.
- Защита от возможных DDOS атак, разумеется на уровне программного решения. А именно отключения сайта при массивной атаке, с выводом сообщений — снижение нагрузки на сервер и попытка предотвращения его дауна. Блокировка IP и прочее.
- Удобная настрока в одном конфигурационном файле.
- ЧПУ — человеко-панятные урлы (адреса) страниц
- Модули приема платежей — webmoney, единый кошелек, robokassa
- Использование OpenWISIWIG, Ajax, jQuery
Итог
Можно сказать что CMS получилась вполне сносной. Реализован весь требуемый функционал и даже более (много чего я еще не описал в этом посте). К её достоинствам также можно отнести высокую скорость работы, масштабируемость, безопасность и простоту, не смотря на большой объем кода и скриптов.
Работы было проделано очень много, но результат того стоил.
И напоследок несколько скриншотов:
Похожие записи
Оставить комментарий
Full Stack
Senior, Architect
предложить оффер
- jQuery: как получить значение атрибута?
- PHP работа с изображением, класс SimpleImage
- Интеграция с API ОСАГО сайта sravni.ru
- Комментарии на PHP, Ajax, mySQL
- PHP: Категории бесконечного уровня вложенности.
- Nginx редирект на другой сервис с сохранением URL спросил (а) Сергей
- Исполнитель пропал, почему такое случается и понять с кем работать? спросил (а) Артем
- Можно ли WordPress считать универсальным движком? спросил (а) Андрей
- Что такое самописный скрипт или CMS? спросил (а) Антон
- Как при поиске в linux используя grep, добавить исключения? спросил (а) Алексей
- Консольный скрипт(JavaScript) для автоматических заказов на OZON к записи
- Консольный скрипт(JavaScript) для автоматических заказов на OZON к записи
- Как создать Telegram-бота с авторизацией через сайт к записи
- PHP скрипт: каталог закладок на сайты к записи
- Валидация на PHP к записи
- Сколько зарабатывают в бизнесе на совместных покупках к записи
- Сколько зарабатывают в бизнесе на совместных покупках к записи
Archive
- +2024 (25)
- Ноябрь 2024 (10)
- Октябрь 2024 (8)
- Сентябрь 2024 (1)
- Август 2024 (5)
- Май 2024 (1)
- +2023 (27)
- Ноябрь 2023 (1)
- Октябрь 2023 (13)
- Сентябрь 2023 (10)
- Апрель 2023 (1)
- Март 2023 (1)
- Февраль 2023 (1)
- +2022 (21)
- Декабрь 2022 (11)
- Ноябрь 2022 (1)
- Май 2022 (2)
- Апрель 2022 (2)
- Март 2022 (3)
- Февраль 2022 (1)
- Январь 2022 (1)
- +2021 (17)
- Декабрь 2021 (5)
- Ноябрь 2021 (2)
- Июль 2021 (1)
- Июнь 2021 (2)
- Май 2021 (5)
- Апрель 2021 (1)
- Март 2021 (1)
- +2020 (20)
- Декабрь 2020 (6)
- Сентябрь 2020 (2)
- Август 2020 (1)
- Июль 2020 (2)
- Май 2020 (2)
- Апрель 2020 (2)
- Март 2020 (2)
- Февраль 2020 (1)
- Январь 2020 (2)
- +2019 (18)
- Декабрь 2019 (3)
- Ноябрь 2019 (2)
- Октябрь 2019 (2)
- Сентябрь 2019 (1)
- Август 2019 (2)
- Июль 2019 (1)
- Июнь 2019 (1)
- Апрель 2019 (2)
- Март 2019 (1)
- Февраль 2019 (3)
- +2018 (44)
- Декабрь 2018 (4)
- Ноябрь 2018 (7)
- Октябрь 2018 (8)
- Сентябрь 2018 (1)
- Август 2018 (4)
- Июль 2018 (5)
- Май 2018 (3)
- Апрель 2018 (7)
- Март 2018 (1)
- Февраль 2018 (2)
- Январь 2018 (2)
- +2017 (19)
- Декабрь 2017 (2)
- Ноябрь 2017 (1)
- Октябрь 2017 (1)
- Сентябрь 2017 (2)
- Июль 2017 (1)
- Июнь 2017 (1)
- Май 2017 (2)
- Апрель 2017 (3)
- Март 2017 (2)
- Февраль 2017 (1)
- Январь 2017 (3)
- +2016 (36)
- Декабрь 2016 (3)
- Ноябрь 2016 (3)
- Октябрь 2016 (2)
- Сентябрь 2016 (3)
- Август 2016 (7)
- Июнь 2016 (3)
- Май 2016 (3)
- Апрель 2016 (3)
- Февраль 2016 (1)
- Январь 2016 (8)
- +2015 (36)
- Ноябрь 2015 (5)
- Октябрь 2015 (4)
- Сентябрь 2015 (1)
- Август 2015 (8)
- Июнь 2015 (1)
- Май 2015 (4)
- Апрель 2015 (8)
- Март 2015 (3)
- Февраль 2015 (2)
- +2014 (26)
- Ноябрь 2014 (2)
- Октябрь 2014 (5)
- Сентябрь 2014 (6)
- Июль 2014 (1)
- Июнь 2014 (2)
- Май 2014 (3)
- Апрель 2014 (6)
- Февраль 2014 (1)
- +2013 (27)
- Декабрь 2013 (2)
- Ноябрь 2013 (1)
- Октябрь 2013 (1)
- Август 2013 (1)
- Июль 2013 (3)
- Июнь 2013 (10)
- Май 2013 (1)
- Апрель 2013 (2)
- Февраль 2013 (3)
- Январь 2013 (3)
- +2012 (41)
- Декабрь 2012 (2)
- Ноябрь 2012 (3)
- Октябрь 2012 (7)
- Сентябрь 2012 (2)
- Август 2012 (1)
- Июль 2012 (3)
- Июнь 2012 (2)
- Май 2012 (6)
- Апрель 2012 (2)
- Март 2012 (7)
- Февраль 2012 (5)
- Январь 2012 (1)
- +2011 (57)
- Декабрь 2011 (6)
- Ноябрь 2011 (2)
- Октябрь 2011 (3)
- Сентябрь 2011 (5)
- Август 2011 (4)
- Июль 2011 (3)
- Июнь 2011 (3)
- Май 2011 (3)
- Апрель 2011 (4)
- Март 2011 (10)
- Февраль 2011 (5)
- Январь 2011 (9)
- +2010 (43)
- Декабрь 2010 (7)
- Ноябрь 2010 (21)
- Октябрь 2010 (14)
- Сентябрь 2010 (1)
Свежие записи
- Интеграция платежной системы MoonPay на сайт по API 10.11.2024
- Парсер товаров с Taobao 08.11.2024
- Упаковка и минификация кода JavaScript онлайн 07.11.2024
- Как эффективно анализировать логи при DDOS атаке 07.11.2024
- Бот для автоматических заказов на OZON (плагин для Chrome) 07.11.2024