Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление
  2. Данный раздел создан исключительно для релизов! Вопросы по лаунчеру или обвязке задавайте ТОЛЬКО в соответсвующей теме автора. Любые другие темы будут удалены, а авторы понесут наказание.

Фикс WebMCR 1.8 MOD - Фиксы и дополнения

Тема в разделе "Веб-обвязки и лаунчеры", создана пользователем Toster_tpl, 10 дек 2012.

Статус темы:
Закрыта.
  1. Автор темы
    Toster_tpl

    Toster_tpl Старожил Пользователь

    Баллы:
    153
    В этой теме буду выкладывать фиксы и дополнения для WebMCR 1.8. А так же, если у вас есть свои доработки, прикреплю их к посту. И если вы хотите чем-то дополнить свой сайт, пишите в комментарии, возможно смогу чем нибуть помочь=)

    Итак, начнем...

    Архив с нужными файлами
    Закинуть serverinfo.php в папку "mysite/instruments/".
    Закинуть "status_server_off.png" и "status_server_on.png" в папку "mysite/style/img".
    Открыть файл "mysite/system.php", после строки:
    PHP:
    require_once('mod_config.php');
    добавить это:
    PHP:
    require_once('instruments/serverinfo.php');

    if (
    $ServerStatusIsOnline)
    {
    $NewConnect1 = new ConnectToServer( ); // Создание нового соединения 1
    $NewConnect1->ConnectTo($game_server_str$query_port); // Соединение 1 с сервером
    $InfoServer = ($NewConnect1->GetInfo()); // Определение переменной
    }
    В файле "mysite/style/index.html".
    1. Перед </head>, добавьте это:
    HTML:
    <script type="text/javascript">// <![CDATA[
        $(document).ready(function(){
           $('.spoiler-body').hide()
           $('.spoiler-head').click(function(){
                $(this).toggleClass("folded").toggleClass("unfolded").next().slideToggle()
            })
        })
    // ]]></script>
    2. Заменить код:
    HTML:
    <!-- Статус сервер -->
    <div style="clear: both;"></div>
    
    <div class="form-block">
        <div class="bloack-header">Состояние игрового сервера</div>
        <div class="block-line"></div>
            <div id="server-state">
                <p>Загрузка состояния сервера...</p>
            </div>
    </div>
    
    <div style="overflow: hidden; width: 0px; height: 0px;">
        <object data="instruments/serverstate.php?type=1"></object>
    </div>
    <!-- /.Статус сервер -->
    на:
    HTML:
    <!-- Статус сервер -->
    <div style="clear: both;"></div>
    <div class="form-block">
    <div class="bloack-header">Состояние игрового сервера</div>
    <div class="block-line"></div>
    <div id="server-state">
    <b>Статус: <? if ($ServerStatusIsOnline) { echo "<img src='/style/img/status_server_on.png' title='OnLine'>"; }else{ echo "<img src='/style/img/status_server_off.png' title='OffLine'>"; } ?></b><br>
    <b>Название сервера:</b> <? echo $InfoServer["HostName"]; ?><br>
    <b>IP сервера:</b> <? echo $game_server_str.":".$query_port." (".$InfoServer["NumPlayers"]."/".$InfoServer["MaxPlayers"].")"; ?><br>
    <b>Версия сервера:</b> <? echo $InfoServer["Version"]; ?><br>
    
    <div class="spoiler-wrap">
    <a class="spoiler-head folded" style="cursor:pointer;">Список игроков</a>
    <div class="spoiler-body"><? if ($InfoServer["NumPlayers"] == 0) { echo "Сервер пуст"; }else{ ?>
    <? foreach ($NewConnect1->GetPlayers() as $value) { echo "<p>".$value."</p>"; }} // Выводит список игроков ?></div>
    </div>
    </div>
    </div>
    <!-- /.Статус сервер -->
    Итак. В связи с тем, что лаунчер и сервер изменяется вами и авторизация идет через ваш хост, а не через minecraft.net, то в server.properties прописано online-mode=false что разрешает заход нелицензионьщиков. И если это так, то любой пользователь, с любым ником и без пароля сможет зайти к вам на сервер(даже под ником админа) без регистрации и авторизации.

    Лечение:
    Открываем server.properties
    Находим строчку "online-mode=false" и меняем на "online-mode=true".

    После всех манипуляций ниже, планируется сделать доступными такие бб коды как img, url, s, color, теги выравнивания, code
    1. Открываем mysite/instruments/news.class.php
    После строки:
    PHP:
    $text preg_replace("/\[i\](.*)\[\/i\]/Usi""<i>\\1</i>"$text);
    добавляем строку:
    PHP:
    $text preg_replace("/\[img\]((((ht|f)tps?:(?:\/\/)?)(?:[-;:&=\+\$,\w]+@)?[A-Za-z0-9.-]+(\:?)|(?:www.|[-;:&=\+\$,\w]+@)[A-Za-z0-9.-]+)((?:\/[\+#~%\/.\w-_]*)?\??(?:[-\+=&;,%@.\w_]*)#?(?:[\w]*))?)\[\/img\]/Usi""<img src='$1'><br>"$text);
    2. Открываем mysite/style/news/comments_add.html и после строки:
    PHP:
    rep[3]='[url="http://www.example.com"]Открыть[/url]';
    добавляем:
    PHP:
    rep[4]="[img][/img]";
    Теперь находим строку:
    PHP:
    <button class="btn" onclick="return bbcode(2)"><u>u</u></button>
    после добавляем это:
    PHP:
    <button class="btn" onclick="return bbcode(4)">img</button>
    Стандартный код URL уязвим перед xss, по этому вот фикс.
    Открываем mysite/instruments/news.class.php, заменяем это:
    PHP:
    $text preg_replace("/\[url=(?:&#039;|&quot;)http:\/\/([^<]+)(?:&#039;|&quot;)](.*)\[\/url]/Usi""<a href=\"http://\\1\">\\2</a>"$text3);
    на это:
    PHP:
    $text preg_replace("/\[url=(?:&#039;|&quot;|\'|\")((((ht|f)tps?:(?:\/\/)?)(?:[-;:&=\+\$,\w]+@)?[A-Za-z0-9.-]+(\:?)|(?:www.|[-;:&=\+\$,\w]+@)[A-Za-z0-9.-]+)((?:\/[\+#~%\/.\w-_]*)?\??(?:[-\+=&;,%@.\w_]*)#?(?:[\w]*))?)(?:&#039;|&quot;|\'|\")\](.*)\[\/url\]/Usi""<a href=\"$1\">$7</a>"$text);
    Открываем mysite/instruments/news.class.php. После строки:
    PHP:
    $text preg_replace("/\[i\](.*)\[\/i\]/Usi""<i>\\1</i>"$text);
    добавляем:
    PHP:
    $text preg_replace("/\[s\](.*)\[\/s\]/Usi""<s>\\1</s>"$text);
    Теперь открываем mysite/style/news/comments_add.html и находим строку
    PHP:
    rep[4]='[url][/url]';
    и после добавляем (на месте 5 может быть другое число, которого еще нет в строчках выше):
    PHP:
    rep[5]='[s][/s]';
    теперь находим в этом же файле:
    PHP:
    <button class="btn" onclick="return bbcode(2)"><u>u</u></button>
    и добавляем после нее это(на месте 5 может быть другое число, которого еще нет в строчках выше, оно должно соответствовать числу выше):
    PHP:
    <button class="btn" onclick="return bbcode(5)"><s>s</s></button>
    Скачиваем нужные файлы.
    Извлекаем все 3 картинки в папку mysite/style/img/
    1. Открываем mysite/instruments/news.class.php
    После строки:
    PHP:
    $text preg_replace("/\[i\](.*)\[\/i\]/Usi""<i>\\1</i>"$text);
    добавляем строки:
    PHP:
    $text preg_replace("/\[l\](.*)\[\/l\]/Usi""<p align=\"left\">$1</p>"$text);
    $text preg_replace("/\[c\](.*)\[\/c\]/Usi""<p align=\"center\">$1</p>"$text);
    $text preg_replace("/\[r\](.*)\[\/r\]/Usi""<p align=\"right\">$1</p>"$text);
    2. Открываем mysite/style/news/comments_add.html и после строки:
    PHP:
    rep[3]='[url
    добавляем:
    PHP:
    rep[6]="[l][/l]";
    rep[7]="[c][/c]";
    rep[8]="[r][/r]";
    Теперь находим строку:
    PHP:
    <button class="btn" onclick="return bbcode(2)"><u>u</u></button>
    после добавляем это:
    PHP:
    <button class="btn" onclick="return bbcode(6)"><img src="/style/img/bb_left.png"></button>
    <
    button class="btn" onclick="return bbcode(7)"><img src="/style/img/bb_center.png"></button>
    <
    button class="btn" onclick="return bbcode(8)"><img src="/style/img/bb_right.png"></button>
    Внимание! Тег code не обрабатывает bb коды.
    Открываем mysite/instruments/news.class.php, находим строчку:
    PHP:
    $text preg_replace("/\[i\](.*)\[\/i\]/Usi""<i>\\1</i>"$text);
    и после нее добавляем:
    PHP:
    $text preg_replace("/\[code\](.*)\[\/code\]/Usi""<code>$1</code>"stripslashes($text));
    Теперь открываем mysite/style/news/comments_add.html и после строки
    PHP:
    rep[2]="[u][/u]";
    добавляем:
    PHP:
    rep[9]="[code][/code]";
    Далее находим:
    PHP:
    <button class="btn" onclick="return bbcode(2)"><u>u</u></button>
    после добавляем:
    PHP:
    <button class="btn" onclick="return bbcode(9)">code</button>
    Внимание! Если вы не редактировали статус сервера, то вам нужно подключить скрипт спойлера в файле mysite/style/index.html перед <head>:
    PHP:
    <script type="text/javascript">// <![CDATA[
    jQuery(document).ready(function(){
    jQuery('.spoiler-body').hide()
    jQuery('.spoiler-head').click(function(){
    jQuery(this).toggleClass("folded").toggleClass("unfolded").next().slideToggle()
    })
    })
    // ]]></script>
    Открываем mysite/instruments/news.class.php, находим строчку:
    PHP:
    function BBDecode($text) {
    и после нее добавляем:
    PHP:
    $text preg_replace("/\[spoiler=(&#039;|&quot;|\'|\")?([a-zA-Zа-яА-Я0-9_-]+)(&#039;|&quot;|\'|\")?](.*)\[\/spoiler]/Usi""<div><a href=\"javascript://\" style=\"padding:3px;\" class=\"spoiler-head folded\">$2</a><div style=\"background-color:#CCFFFF; padding:3px;\" class=\"spoiler-body\">$4</div></div>"$text);
    $text preg_replace("/\[spoiler](.*)\[\/spoiler]/Usi""<div><a href=\"javascript://\" style=\"padding:3px;\" class=\"spoiler-head folded\">Спойлер</a><div style=\"background-color:#CCFFFF; padding:3px;\" class=\"spoiler-body\">$1</div></div>"$text);
    Теперь открываем mysite/style/news/comments_add.html и после строки
    PHP:
    rep[2]="[u][/u]";
    добавляем:
    PHP:
    rep[12]="[spoiler][/spoiler]";
    Далее находим:
    PHP:
    <button class="btn" onclick="return bbcode(2)"><u>u</u></button>
    после добавляем:
    PHP:
    <button class="btn" onclick="return bbcode(12)">Spoiler</button>
    Открываем файл mysite/style/css/style.css
    Находим строчку:
    PHP:
    .comment-text {
    После нее затираем одну строчку:
    PHP:
    min-height40px;


    Дополнения пользователей:

    Demo можно посмотреть здесь

    Фиксы и дополнения будут добавляться
    Если помог ставьте лайк и заглядывайте в подпись=)
     
    Последнее редактирование: 15 дек 2013
    никио, NC22, Dr.Death и ещё 1-му нравится это.
  2. Хостинг MineCraft
    <
  3. Автор темы
    Toster_tpl

    Toster_tpl Старожил Пользователь

    Баллы:
    153
    Резерв
     
  4. NAUSHNIK52

    NAUSHNIK52 Старожил Пользователь

    Баллы:
    103
    Сделай патч совместимости с XenForo.
     
  5. Автор темы
    Toster_tpl

    Toster_tpl Старожил Пользователь

    Баллы:
    153
    К сожалению XenForo использует хитрожопый алгоритм шифрования паролей, с которым я пока не смог разобраться, если получится, обязательно поделюсь.
     
  6. MySt1k

    MySt1k Старожил Пользователь

    Баллы:
    173
    а для DLE сможешь?
     
  7. NAUSHNIK52

    NAUSHNIK52 Старожил Пользователь

    Баллы:
    103
    DLE вроде ничего и не шифрует
     
  8. NAUSHNIK52

    NAUSHNIK52 Старожил Пользователь

    Баллы:
    103
    Стащи у byxar, сашка или патча для версии 15
     
  9. Автор темы
    Toster_tpl

    Toster_tpl Старожил Пользователь

    Баллы:
    153
    @MySt1k, Тебя интересует перевод лаунчера под DLE или всего движка craftop?
    В любом случае это требует немного больше времени и сил, чтобы сделать мост от одного к другому. Я думаю этим бесплатно никто не будет заниматься. Это действительно не легко.
    Но я попробую что нибуть, может это будет проще чем я думаю...
     
  10. 1lyaSweeper

    1lyaSweeper Старожил Пользователь

    Баллы:
    173
    Skype:
    Iswperr
    Имя в Minecraft:
    1lyaSweeper
    Подпишусь, тема збс!
     
    MrHerobrine нравится это.
  11. MySt1k

    MySt1k Старожил Пользователь

    Баллы:
    173
    Меня интересует то и другое, все это есть для версии 15, но 15 не подходит к 18. =(
     
    hilpavel и nikita1811 нравится это.
  12. Volkula

    Volkula Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    Volkula
    Добавь из моей подписи.
     
  13. Автор темы
    Toster_tpl

    Toster_tpl Старожил Пользователь

    Баллы:
    153
    @Volkula, не рабочая ссылка
     
  14. Volkula

    Volkula Старожил Пользователь

    Баллы:
    103
    Имя в Minecraft:
    Volkula
  15. ksada

    ksada Старожил

    Баллы:
    103
    Skype:
    k-s-a-d-a
    Зачем лишние картинки, если они уже в bootstrap есть? По-моему, так бы было лучше:
    HTML:
    <button class="btn" onclick="return bbcode(6)"><i class="icon-align-left"></i></button>
    <button class="btn" onclick="return bbcode(7)"><i class="icon-align-center"></i></button>
    <button class="btn" onclick="return bbcode(8)"><i class="icon-align-right"></i></button>
    И ещё, напиши регулярное выражение для цитат, лайком обеспечу :)
     
    nvidia_hl2 и 1lyaSweeper нравится это.
  16. ksada

    ksada Старожил

    Баллы:
    103
    Skype:
    k-s-a-d-a
    Скидываю мониторинг TS3, немного переделанный под WebMCR, может кому-нибудь пригодится)
    Установка:
    1. Распаковать архив в корень сайта.

    2. В ts3.php изменить нужные строчки под себя

    3. Добавить в style/index.html, в тэг head строчки:
    HTML:
    <link rel="stylesheet" type="text/css" href="/tsstatus/tsstatus.css" />
    <script type="text/javascript" src="/tsstatus/tsstatus.js"></script>
    4. Добавить в style/index.html, после <!-- /.Статус сервер --> строчки:
    HTML:
    <div class="form-block">
    <div class="bloack-header">TeamSpeak</div>
    <div class="block-line"></div>
    <div>
      <? include "./ts3.php";?>
    </div>
    </div>
     

    Вложения:

    • ts3status.zip
      Размер файла:
      26,1 КБ
      Просмотров:
      14
  17. Eugene1997

    Eugene1997 Активный участник

    Баллы:
    88
    Не отправляет письмо, к примеру если восстановил пароль (у тебя на сайте тоже)
     
  18. ksada

    ksada Старожил

    Баллы:
    103
    Skype:
    k-s-a-d-a
    SMTP-агент надо ставить и настраивать...
     
  19. Eugene1997

    Eugene1997 Активный участник

    Баллы:
    88
    Можешь написать как сделать это на Hostinger, сам агент включил...
     
  20. ksada

    ksada Старожил

    Баллы:
    103
    Skype:
    k-s-a-d-a
    Нормальный LAMP нужен, хостинги вряд ли подойдут
     
    zuma2 нравится это.
  21. Автор темы
    Toster_tpl

    Toster_tpl Старожил Пользователь

    Баллы:
    153
    @ksada, я не знаком с бутстрапом, по этому буду делать с тем, с чем знаком, но за помощь спасибо.
    Регулярными выражениями цитаты не делаются и письма отправляются через функцию mail(), ему же не надо их принимать. Приемом как раз занимается почтовый сервер.
    @Eugene1997, возможно добавлю функцию восстановления пароля.
     
Статус темы:
Закрыта.

Поделиться этой страницей