Ru-MaNGOS

Вернуться   Ru-MaNGOS > Дополнения > WWW

Важная информация

WWW Web интерфейс для MaNGOS

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 25.03.2011, 22:02   #1
hyperion
Новичок
 
Регистрация: 02.05.2010
Сообщений: 28
Сказал(а) спасибо: 5
Поблагодарили 8 раз(а) в 2 сообщениях
hyperion На верном пути
По умолчанию Yii-framework WoW модуль

На днях решил написать личный кабинет + админку для Mangos Zero. За основу взят yii-framework, и данный проект реализован как модуль к нему.
Что реализовано:
1) Простенький редактор таблицы characters, таких полей как name, account, level, money, class, gender, race, playerBytes, playerBytes2.
Поля gender, race, playerBytes, playerBytes2 напрямую редактировать нельзя, данные берутся путем копирования с существующих персонажей, поиск которых производится с помощью таблицы на странице. Нужна авторизация.
2) Статистика игроков онлайн. Вывод ника, уровня, класса и локации. Так же сортировка и фильтрация всего, кроме локации. Примененные фильтры сохраняются в сессии, нужно реализовать кнопку сброса сессии.
3) Статистика пвп. Для корректной работы нужно создать таблицу, вот скуль и серверная часть (думаю, сами догадаетесь куда присобачить эту функцию):
Код:
CREATE TABLE `character_honor_static` (
  `guid` int(10) unsigned NOT NULL,
  `hk` int(8) unsigned NOT NULL DEFAULT '0',
  `dk` int(8) unsigned NOT NULL DEFAULT '0',
  `today_hk` int(8) unsigned NOT NULL DEFAULT '0',
  `today_dk` int(8) unsigned NOT NULL DEFAULT '0',
  `yesterday_kills` int(8) unsigned NOT NULL DEFAULT '0',
  `yesterday_cp` int(8) unsigned NOT NULL DEFAULT '0',
  `thisWeek_kills` int(8) unsigned NOT NULL DEFAULT '0',
  `thisWeek_cp` int(8) unsigned NOT NULL DEFAULT '0',
  `lastWeek_kills` int(8) unsigned NOT NULL DEFAULT '0',
  `lastWeek_cp` int(8) unsigned NOT NULL DEFAULT '0',
  PRIMARY KEY (`guid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Код:
void Player::_SaveHonorStatic()
{
    CharacterDatabase.PExecute("DELETE FROM character_honor_static WHERE guid = '%u'", GetGUIDLow());
    std::ostringstream ss;
    ss << "INSERT INTO character_honor_static (guid, hk, dk, today_hk, today_dk, "
        "yesterday_kills, yesterday_cp, thisWeek_kills, thisWeek_cp, lastWeek_kills, lastWeek_cp) VALUES ("
        << GetGUIDLow() << ", "
        << GetUInt32Value(PLAYER_FIELD_LIFETIME_HONORABLE_KILLS) << ", "
        << GetUInt32Value(PLAYER_FIELD_LIFETIME_DISHONORABLE_KILLS) << ", "
        << GetUInt16Value(PLAYER_FIELD_SESSION_KILLS, 0) << ", "
        << GetUInt16Value(PLAYER_FIELD_SESSION_KILLS, 1) << ", "
        << GetUInt32Value(PLAYER_FIELD_YESTERDAY_KILLS) << ", "
        << GetUInt32Value(PLAYER_FIELD_YESTERDAY_CONTRIBUTION) << ", "
        << GetUInt32Value(PLAYER_FIELD_THIS_WEEK_KILLS) << ", "
        << GetUInt32Value(PLAYER_FIELD_THIS_WEEK_CONTRIBUTION) << ", "
        << GetUInt32Value(PLAYER_FIELD_LAST_WEEK_KILLS) << ", "
        << GetUInt32Value(PLAYER_FIELD_LAST_WEEK_CONTRIBUTION) << ")";
    CharacterDatabase.Execute( ss.str().c_str() );
}
Репозиторий модуля, там же и описание как устанавливать:

https://bitbucket.org/hyperionzero/cms/src

С радостью отвечу на любые Ваши вопросы и выслушаю пожелания.

P.S. Буду очень благодарен за тестирование, так как у самого нет возможности все это протестировать.

Последний раз редактировалось hyperion; 12.03.2012 в 23:24.
hyperion вне форума   Ответить с цитированием
6 пользователя(ей) сказали cпасибо:
evilstar (02.04.2011), Gerald (25.03.2011), Konctantin (02.04.2011), Medivh (27.03.2011), Sid (02.04.2011), Праведник (26.03.2011)
Старый 01.04.2011, 23:17   #2
hyperion
Новичок
 
Регистрация: 02.05.2010
Сообщений: 28
Сказал(а) спасибо: 5
Поблагодарили 8 раз(а) в 2 сообщениях
hyperion На верном пути
По умолчанию

Кто-то тестировал? Отпишитесь, очень интересно)
hyperion вне форума   Ответить с цитированием
Старый 02.04.2011, 00:33   #3
evilstar
Супер-модератор
 
Аватар для evilstar
 
Регистрация: 07.04.2010
Адрес: Москва
Сообщений: 221
Сказал(а) спасибо: 101
Поблагодарили 27 раз(а) в 17 сообщениях
evilstar Скоро придёт к известностиevilstar Скоро придёт к известности
Отправить сообщение для evilstar с помощью ICQ
По умолчанию

Протестить не могу, но задумка не плохая
__________________

Теперь и в Бете Warlords of Draenor & HotS !
evilstar вне форума   Ответить с цитированием
Старый 12.03.2012, 23:28   #4
hyperion
Новичок
 
Регистрация: 02.05.2010
Сообщений: 28
Сказал(а) спасибо: 5
Поблагодарили 8 раз(а) в 2 сообщениях
hyperion На верном пути
По умолчанию

Небольшой ап. Переехал на битбакет, ссылку в первом посте обновил. Многое переписал, но никак не доведу до ума, особенно внешний вид. В процессе работы получилась мини кмс, прикрутил 2 модуля, один для пользователей, второй - реализующий RBAC. Позже может полностью опишу структуру, установку и т.д.

Последний раз редактировалось hyperion; 12.03.2012 в 23:32.
hyperion вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[9775] Cleanups in framework library. newsbot CMaNGOS Commits 0 22.04.2010 12:50


Текущее время: 11:41. Часовой пояс GMT +3.


ru-mangos.ru - Русское сообщество MaNGOS
Главная цель проекта MaNGOS - обучающая, поэтому разрешается использовать исходный код и собранную программу только для образовательных целей.
Вы не можете использовать MaNGOS в коммерческих целях, а также не разрешается устанавливать публичные серверы на базе MaNGOS.
Любое копирование материалов, информации в любом виде без указания источника - форума Ru-MaNGOS будет считаться нарушением авторских прав и нарушением Уголовного Кодекса РФ, ст. 146 ст. 147.
Перевод vBulletin: zCarot