Модуль вывода серверов - LGSL + jQuery

Тема в разделе "Программирование / Скриптинг", создана пользователем vectorserver, 28 ноя 2011.

  1. vectorserver

    vectorserver ♥♥♥♥♥ by game.cominet.ru

    Сообщения:
    201
    Симпатии:
    243
    Написал Скрипт вывода списка серверов для LGSL

    Пример работы: http://game.cominet.ru/components/com_lgsl/mon.php

    Файл нужно положить в папку lgsl
    [​IMG]
    $stats_url = это ссылка на статистику

    PHP:
    <style>
    .text{font-family:"tahoma", "verbana", "arial", "helvetica";font-weight:700;font-size: 10px;}
    .urlstat {color:#009bdb;}
    .urlstatoff, .offline {color:#c14444;}
    a{text-decoration: none;}
    .online{color:#9fc41d;}
    .passonline {color:#c24498;}
    img.kartinka, img.nspImage, div.imageholder {
        overflow:hidden;
        float:left;
        margin:5px 5px 5px 0;
        padding:5px;
        border:1px solid #e0dede;
        background:#fff;
    border-radius:4;
    -moz-border-radius:4;
    -khtml-border-radius:4;
    }
    </style>
                <link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/themes/base/jquery-ui.css" type="text/css" media="all" />
                <link rel="stylesheet" href="http://static.jquery.com/ui/css/demo-docs-theme/ui.theme.css" type="text/css" media="all" />
                <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js" type="text/javascript"></script>
                <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js" type="text/javascript"></script>
                <script src="http://jquery-ui.googlecode.com/svn/tags/latest/external/jquery.bgiframe-2.1.2.js" type="text/javascript"></script>
                <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/i18n/jquery-ui-i18n.min.js" type="text/javascript"></script>
    <?PHP
    require "lgsl_files/lgsl_class.php";
    /*////////////////////////////////////////////////////////////*/

    $stats_url "http://ссылка"//ваша ссылка на стату Hlstatx

    /*//////////////////////////////////////////////////////////////*/

    $server_list lgsl_query_group();
    $server_list lgsl_sort_servers($server_list);
    $total lgsl_group_totals($server_list);


      foreach (
    $server_list as $server)
        {
            
    $misc   lgsl_server_misc($server);
            
    $server lgsl_server_html($server);
            
    //Ссылка на статистику
            
    $ifserver $server['b']['type']."_".$server['s']['game'];
            
    //Online - Offline
            
    $online $misc['text_status'];
            
    //echo "<pre>".$ifserver."</pre>";
            //КСС
            
    if ($ifserver == "source_cstrike")
                {
    $mm "<a target='_blank' href='".$stats_url."hlstats.php?game=css'><span class='text urlstat'>ссылка»</span></a>";} 
            else 
                {
    $mm "<span class='text urlstatoff'>нет</span>";}
                
            if (
    $online == "ONLINE"
                {
    $online "<span class='text online'>Онлайн</span>";}
            else if (
    $online == "ONLINE WITH PASSWORD"
                {
    $online "<span class='text online'>Онлайн <span class='passonline'>(Пароль)</span></span>";}
            else if (
    $online == "NO RESPONSE"
                {
    $online "<span class='text offline'>Отключен</span>";}
            

          
    $id "convex_nt_game_".md5(sha1($server['s']['players'].$server['s']['map'].$server['s']['name'].$server['b']['ip'].$server['b']['c_port']));
          
    //echo $id;
              
    $ppp.=  '
            <script>
        jQuery(function() {
            jQuery( "div#'
    .$id.'" ).progressbar({
                value: '
    .$server['s']['players'].',
                max: '
    .$server['s']['playersmax'].'
            });
        });
        </script>
        <table border="0" width="100%" cellspacing="1" cellpadding="0">
      <tbody>
        <tr>
          <td colspan="2">
            <table border="0" width="100%" style="margin-top: 0; margin-bottom:0" cellspacing="0" cellpadding="0">
              <tbody>
                <tr>
                  <td width="10">
                    <img border="0" src="'
    .$misc['icon_game'].'" width="16">
                  </td>
                  <td width="90%">
                    <span align="left" style="margin-top: 0; margin-bottom: 0">
                          <b>'
    .mb_substr($server['s']['name'],0,36).'</b>
                    </span>
                  </td>
                </tr>
              </tbody>
            </table>
          </td>
        </tr>
        <tr>
          <td align="left" valign="top" rowspan="5" width="4%">
            <table border="0">
              <tbody>
                <tr>
                  <td align="left" valign="top">
                        <img border="0" src="'
    .$misc['image_map'].'" width="82" class="kartinka">
                         <div style="height: 3px; width:91px;" id="'
    .$id.'">
                    </div>
                  </td>
                </tr>
              </tbody>
            </table>
          </td>
          <td width="95%">
            <font face="tahoma, verbana, arial, helvetica;" style="font-size: 10px; font-weight:700" color="#757575">
     карта: </font>
            <font face="tahoma, verbana, arial, helvetica;" style="font-size: 10px; font-weight:700" color="#4A4A4A">'
    .$server['s']['map'].'</font>
          </td>
        </tr>
        <tr>
          <td width="95%">
            <font face="tahoma, verbana, arial, helvetica;" style="font-size: 10px; font-weight:700" color="#757575">
     ip: </font>
            <font face="tahoma, verbana, arial, helvetica;" style="font-size: 10px; font-weight:700" color="#4A4A4A">'
    .$server['b']['ip'].':'.$server['b']['c_port'].'</font>
          </td>
        </tr>
        <tr>
          <td width="95%">
            <span style="margin-bottom:4">
              <font face="tahoma, verbana, arial, helvetica;" style="font-size: 10px; font-weight:700" color="#757575">
     игроки: </font>
              <font face="tahoma, verbana, arial, helvetica;" style="font-size: 10px; font-weight:700" color="#009bdb">'
    .$server['s']['players'].'</font>
              <font face="tahoma, verbana, arial, helvetica;" style="font-size: 10px; font-weight:700" color="#4A4A4A">/'
    .$server['s']['playersmax'].'</font>
              <a href="steam://connect/'
    .$server['b']['ip'].':'.$server['b']['c_port'].'">
                <font color="#ee4499" style="font-size: 10px; ">
                  <b>играть</b>
                </font>
              </a>
              <font color="#9D9D9D" style="font-size: 10px; "> »</font>
            </span>
            <br>
            <font face="tahoma, verbana, arial, helvetica;" style="font-size: 10px; font-weight:700" color="#757575">
     Статус: </font> '
    .$online.'
     <br><font face="tahoma, verbana, arial, helvetica;" style="font-size: 10px; font-weight:700" color="#757575">
     Статистика: </font> '
    .$mm.'
          </td>
        </tr>
        <tr>
          <td width="95%">
            <table border="0" width="125" cellspacing="0" cellpadding="0">
              <tbody>
                <tr>
                  <td>
                    
                  </td>
                </tr>
              </tbody>
            </table>
          </td>
        </tr>
        <tr>
          <td width="95%">
            <font face="Tahoma" style="font-size: 4px"> </font>
          </td>
        </tr>
      </tbody>
    </table>'
    ;
        }
        
    echo 
    $ppp;

    Script: Посмотреть вложение mon.zip
     

    Вложения:

    • hhhhh.jpg
      hhhhh.jpg
      Размер файла:
      96,2 КБ
      Просмотров:
      864
    legend1998, Russak, HooLIGUN и 6 другим нравится это.
  2. Vaio

    Vaio

    Сообщения:
    628
    Симпатии:
    218
    Как сделать такой блок на сайте? [​IMG]
    Оффтоп

    Или объясните, как сделать такой блок из вашего скрипта на dle:blush2:
     
    Андрей Казаков 593701240 нравится это.
  3. vectorserver

    vectorserver ♥♥♥♥♥ by game.cominet.ru

    Сообщения:
    201
    Симпатии:
    243
    Это стандартный модуль вывода для него тут неичего не поменялось, кроме превода
     
  4. Vaio

    Vaio

    Сообщения:
    628
    Симпатии:
    218
    А как его использовать?
     
  5. vectorserver

    vectorserver ♥♥♥♥♥ by game.cominet.ru

    Сообщения:
    201
    Симпатии:
    243
    Вот так:
    PHP:
    <?php
      
    global $output$lgsl_zone_number;
      
    //Пример: components/com_lgsl/lgsl_files
      
    $papka "путь до папке lgsl_files";
      
    $output '';
      
    $lgsl_zone_number $params->get('zone_number');
      require 
    $papka.'lgsl_zone.php';
      echo 
    $output;
      unset(
    $output);
    ?>
     
    Vaio и NagarD нравится это.
  6. КаБаН4еГ

    КаБаН4еГ

    Сообщения:
    3
    Симпатии:
    0
    в DLE можно и в шаблон вставить
    например:
    {include file="monitoring/mon.php"}
     
  7. HooLIGUN

    HooLIGUN

    Сообщения:
    748
    Симпатии:
    126
    Как сделать такое,если lgsl на одном хостинге.а вывести надо на сайте другого хостинга?
     
  8. fallen1994

    fallen1994

    Сообщения:
    2.347
    Симпатии:
    544
    Iframe называется
     
    BMW M6 нравится это.
  9. Russak

    Russak

    Сообщения:
    1
    Симпатии:
    0
    Клевая вещь,правда скрипт переделал под vbgamez
     
  10. fallen1994

    fallen1994

    Сообщения:
    2.347
    Симпатии:
    544
    Можно очень легко свой мониторинг запилить, если есть статистика gameme. Использовать ихние API и вывод из XML файла, и свой мониторинг готов)
     
  11. KorDen

    KorDen Atra esterní ono thelduin! Ньюсмейкер

    Сообщения:
    2.194
    Симпатии:
    1.398
    Дык тот же LGSL вроде умеет же выдавать инфу в XML, разве нет? gameMe во первых платный, во вторых некоторые не любят его из-за постоянного желания что-то поковырять
     
  12. maverick1660

    maverick1660 Проект DeathLine.ru

    Сообщения:
    187
    Симпатии:
    97
    Кто нить запилил тоже самое, но при наведении на что либо из таблицы, показывало бы с помощью CSS3, jquery список игроков? Я к сожалению не смог разобраться с запросами к серверу и их парсу :this:
    Ну и если кто объяснит какой делать запрос и как его парсить буду очень благодарен :beer:
     
  13. ☆★☆БАТЯ☆★☆™

    ☆★☆БАТЯ☆★☆™

    Сообщения:
    2.585
    Симпатии:
    1.341
    maverick1660, только при нажатии есть.
     
  14. neatek

    neatek

    Сообщения:
    442
    Симпатии:
    233
    И зачем это нужно? в LGSL есть встроенная функция...
    и меня она устраивает)
     
  15. ☆★☆БАТЯ☆★☆™

    ☆★☆БАТЯ☆★☆™

    Сообщения:
    2.585
    Симпатии:
    1.341
    neatek, покажи свой моник.
     
  16. maverick1660

    maverick1660 Проект DeathLine.ru

    Сообщения:
    187
    Симпатии:
    97
    Привет БАТЯ, на самом деле есть, в цикл передается параметр id сервера и скрытым окном выводиться, а активирауется с помощью jquery или просто CSS (:hover) Но я забыл добавить, что я писал вывод(название, айпи, карта и колл. игроков) с 0 и поэтому вопрос скорее не по этой теме. Не хочю создавать новую тему из-за пары строчек.

    Я знаю что там есть эта функция поэтому и вопрос, кто в ней разобрался. А причем здесь ты я вообще не понимаю, тема не твоя и я не спрашивал Neatek'a устраивает она тебя или нет
     
    ☆★☆БАТЯ☆★☆™ нравится это.
  17. Дмитрий Назаров

    Дмитрий Назаров

    Сообщения:
    33
    Симпатии:
    3
    тема актуальна? кто поможет установить? :)
     
  18. Vaio

    Vaio

    Сообщения:
    628
    Симпатии:
    218
    А в чем возникла проблема? Там вроде нет ничего сложного.
     
  19. Дмитрий Назаров

    Дмитрий Назаров

    Сообщения:
    33
    Симпатии:
    3
    Vaio, Проблема во мне, не хватает знаний PHP и html... мне нужно просто вывести на "главную" мониторинг двух серверов КСС в боковых колонках.
     
  20. Vaio

    Vaio

    Сообщения:
    628
    Симпатии:
    218
    Есть готовый скрипт(в шапке темы), можно сделать простым способом, скрипт в файлик admins.php и выводишь его на главную фреймом в блок.

    P.S. iframe
     
    Дмитрий Назаров нравится это.