Дополнение к "Битвам": Реализация.
Как стандарт брать 2 варианта ответа (максимум предлагаю сделать до 3х). Т.е соревноваться будут два объекта (или 3). Причём это могут быть как и пользователи сайта, так и просто посторонние объекты как фото, игры, фильмы и т.д.
Самое основное над чём нужно поработать так это вид страницы добавления материала(опроса). Необходимо сделать разный вид страницы добавления для опросов и битв, так чтобы можно было использовать то и другое одновременно.
То есть начало работы скрипта вижу в кнопке "создать опрос или создать битву". В зависимости от выбора опроса, страница добавления будет отличаться. При стандартных опросах будет заголовок, описание опроса и 4,6,10 вариантов ответа (для вариантов ответа предлагаю использовать стандартные поля ввода информации модуля. в модуле каталог статей их 4, в других от 6, до 10). Или как вариант с помощью скрипта создать свои поля (но думаю в этом необходимости нет, достаточно даже 4).
А для битв страница добавления будет состоять из заголовка, описания вопроса двух полей для ввода текста (третий на выбор) + рядом с полями будет выводиться поле для добавления фото.
Фото в битвах сделать обязательны. Предусмотреть кнопочку тип битвы(типа категорий) битвы пользователей, битвы объектов. По умолчанию предлагаю сделать "битвы объектов". Но если пользователь хочет выбрать "Битву пользователей", тогда.
- Вместо полей добавления картинок к тексту опроса, должны появиться ссылки "выбрать пользователя". При нажатии на ссылки скрипт должен проверять нет приглашений меня на битву, если нет тогда открывать страницу с пользователями для выбора пользователя. После того как пользователь выбран, вместо ссылки "выбрать пользователя" появляется его аватарка. В поле для ввода текста (ответа) вписывается его ник. После этого опрос-битва публикуется но с указанием что я вызвал на битву какого-то пользователя, при этом голосовать нельзя пока пользователь которого я вызвал на битву не согласиться в ней участвовать. Ему будет отправлено ЛС и Email о кинутом ему вызову от меня. Перейдя по ссылки на страницу (нашей битвы) он должен дать согласие или отказаться от участия. Также если к примеру этот пользователь хочет вызвать кого-то на битву, при создании голосования(битвы) он не сможет проигнорировать мой вызов т.к скрипт как я писал выше будет проверять вызовы на битву.
++ Понятно что для вызова пользователей на битву, обязательно нужно сделать возможность вызова пользователя на битву, т.е кнопку в профиле пользователя. При нажатии на неё пользователь будет сохраняться на спец. странице (что-то типа этой http://phpexample.ucoz.net/dir/ideas/zapomnit/1-1-0-33 идеи). Только пользователям которых вызвали на битву будет также доступна такая страница в профиле. Страница должна быть учитывать все пройденные, текущие битвы и их результаты).
+ Также нужно ограничение на кол-во голосов в сутки от одного пользователя/гостя
+ Лидеру опроса автоматически добавлять репутацию и т.п, устанавливать предел голосов, после чего голосование будет закрыто.