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

Веб monAJAX [v1.5.2]

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

  1. SmailkO

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

    Баллы:
    63
    Код:
    <meta charset='utf-8'>
    <script src='http://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js' type='text/javascript'></script>
    <link rel=stylesheet href='http://*****/monAJAX/template/monStyle.css' type='text/css'>
    <script type='text/javascript'>
    var Monitoring = {
        servers: [<? foreach($servers as $server) echo '{name:"'.$server['name'].'"},'?>],
        createMon: function(){ // Создание основы мониторинга
            var newHTML='',servers=this.servers,server,srvOnlStr,onBar,version,pingTime,fullOnStr,fullOnBar,todRec,onlRec,timeTodRec,timeRec;
            srvOnlStr = '<span class=JSSrvString>.</span>';
            fullOnStr = '<span id=JSComString>.</span>';
            todRec = '<span id=DayRec>.</span>';
            onlRec = '<span id=AbsRec>.</span>';
            timeTodRec = '<span id=TodRTime>.</span>';
            timeRec = '<span id=RecDate>.</span>';
            version = '<span class=SrvVers>.</span>';
            pingTime= '<span class=SrvPing>.</span>';
            onBar = '<div class="OnlineBar loading" style="width:100%"></div>';
            fullOnBar = '<div class=OnlineBar id=CommonBar style="width:100%"></div>';
            for(var i=0, len=servers.length; i<len; i++){// Шаблон каждого сервера
                server = servers[i]['name'];
                newHTML += "<div class=OneServer>    <div class=ServInfo>        <span class='ServName Tooltipped'>            "+server+"            <div class='Tooltip LeftTool' style='display:none'>"+version+"</div>        </span>        <span class='ServOnline Tooltipped'>            "+srvOnlStr+"            <div class='Tooltip RightTool' style='display:none'>"+pingTime+"</div>        </span>    </div>    <div class=BarCont>"+onBar+"</div></div>"
            };
            newHTML += "<div id=CommonOnline>    <div class=OneServer style='padding-top:13px;margin-bottom:14px'>        <div class=ServInfo>            <span class=ServName>Текущий онлайн:</span>            <span class=ServOnline>"+fullOnStr+"</span>        </div>        <div class=BarCont>"+fullOnBar+"</div>    </div>    <p class=Tooltipped>        Суточный рекорд: "+todRec+"        <span class='Tooltip TopTool' style='display:none'><span class=ToolFix style='box-shadow:none'>"+timeTodRec+"</span></span>    </p>    <p class=Tooltipped>        <span>Абсолютный рекорд: "+onlRec+"</span>        <span class='Tooltip BotTool' style='display:none'><span class=ToolFix>"+timeRec+"</span></span>    </p></div>";// Шаблон общего онлайна
            $('#Monitoring').html(newHTML);// Записываем получившуюся основу
            delete newHTML
        },
        updateMon: function(){
            var servers=this.servers,
                i,len=servers.length,
                smoothTime=1200,
                ellipsis='<span class=Ellipsis>.</span>',
                maxErrLen=14,
                // Переменные одного сервера
                status,// Статус работы сервера(выключен/включен и т.д)
                server,// Имя сервера
                srvOnlStr=[],// Текст состояния сервера
                statusClass=[],// Статус бара заполненности сервера
                onBar=[],// Ширина бара заполненности сервера
                version=[],// Версия сервера
                pingTime=[],// Пинг сервера
                // Переменные общего онлайна
                fullOnStr,// Текст состояния всех серверов
                fullOnBar,// Ширина бара заполненности всех серверов
                todRec,// Рекорд дня
                onlRec,// Абсорютный рекорд
                timeTodRec,// Время установления рекорда этого дня
                timeRec;// Время установления абсолютного рекорда
            $.ajax({
                url:'http://*****/monAJAX/ajax.php',
                beforeSend: function(){// Перед попыткой получения данных
                    $('#Monitoring .OnlineBar').removeClass('online offline upderr');
                    $('#Monitoring .OneServer').each(function(){
                        $(this).find('.JSSrvString, .SrvVers, .SrvPing').html(ellipsis);
                        $(this).find('.OnlineBar').addClass('loading').animate({'width':'100%'},{queue:false,duration:smoothTime})
                    });
                    $('#JSComString, #DayRec, #AbsRec, #TodRTime, #RecDate').html(ellipsis);
                    $('#CommonBar').animate({'width':'100%'},{queue:false,duration:smoothTime});
                },
                success: function(data){// Если получили данные
                    for(i=0; i<len; i++){
                        server = servers[i]['name'];
                        status = data['servers'][server]['status'];
                        if(status != 'online'){
                            statusClass[i] = 'offline';
                            srvOnlStr[i] = (status.length > maxErrLen)
                            ? '<span class="monTrouble monTooBig">'+status+'</span>'
                            : '<span class=monTrouble>'+status+'</span>';
                            pingTime[i] = version[i] = '';
                            onBar[i] = 100
                        }else{
                            statusClass[i] = 'online';
                            srvOnlStr[i] = data['servers'][server]['online'] + '/' + data['servers'][server]['slots'];
                            pingTime[i] = data['servers'][server]['ping'];
                            version[i] = data['servers'][server]['version'];
                            onBar[i] = data['servers'][server]['percent']
                        }
                    };   
                    fullOnStr = data['online'] + '/' + data['slots'];
                    fullOnBar = data['percent'];
                    onlRec = data['record'];
                    todRec = data['recordday'];
                    timeRec = data['timerec'];
                    timeTodRec = data['timerecday']
                },
                error: function(){// Не получилось соединиться с веб-сервером
                    for(i=0; i<len; i++){
                        statusClass[i] = 'upderr';
                        srvOnlStr[i] = '<span class=monTrouble>Ошибка..</span>';
                        pingTime[i] = version[i] = '';
                        onBar[i] = 100
                    };
    
                    fullOnStr = '<span class=monTrouble>Ошибка..</span>';
                    fullOnBar = 100;
                    todRec = onlRec = timeRec = timeTodRec = 'Ошибка..'
                },
                complete: function(){// После получения данных и их парсинга вносим в мониторинг
                    setTimeout(function(){
                        $('#Monitoring .OnlineBar').removeClass('loading');
                        $('#Monitoring .OneServer').each(function(i){
                            $(this).find('.JSSrvString').html(srvOnlStr[i]);
                            $(this).find('.OnlineBar').addClass(statusClass[i]).animate({'width':onBar[i]+'%'},{queue:false,duration:smoothTime});
                            $(this).find('.SrvVers').html(version[i]);
                            $(this).find('.SrvPing').html('ping:&nbsp;'+pingTime[i]);
                            if(version[i] == '') $(this).find('.Tooltip').fadeOut({duration:0,queue:false})
                        });
                       
                        $('#JSComString').html(fullOnStr);
                        $('#CommonBar').animate({'width':fullOnBar+'%'},{queue:false,duration:smoothTime});
                        $('#DayRec').html(todRec);
                        $('#AbsRec').html(onlRec);
                        $('#RecDate').html(timeRec);
                        $('#TodRTime').html(timeTodRec)
                    },smoothTime*1.01);
                    delete data
                }
            })
        }
    }
    $(document).ready(function(){
        // Создание мониторинга
        Monitoring.createMon();Monitoring.updateMon();
        setInterval(function(){// Период обновления
            Monitoring.updateMon()
        }, 20000);
       
        // Периодичность точек загрузки данных
        var dot_txt=[],dot_i=0;
        dot_txt[1]='.';dot_txt[2]='..';dot_txt[3]='...';
        setInterval(function(){
            dot_i<3 ? dot_i++ : dot_i=1;
            $('#Monitoring .Ellipsis').html(dot_txt[dot_i])
        }, 165);
       
        // Всплывающие подсказки
        $('#Monitoring .Tooltipped').each(function(){
            $(this).mouseenter(function(){
                if($(this).find('.Tooltip span').html() != 'ping:&nbsp;' && $(this).find('.Tooltip span').html() != '')
                    $(this).find('.Tooltip').fadeIn({duration:75,easing:'swing',queue:false})
            });
            $(this).mouseleave(function() {
                $(this).find('.Tooltip').fadeOut({duration:75,easing:'swing',queue:false})
            })
        })
    })
    </script>
    
        <div id=Monitoring></div>
    
    Прописал в main {include file="monitoring.tpl"}
    Результат = белый лист с подгруженным css
     
  2. Хостинг MineCraft
    <
  3. ZONCCK

    ZONCCK Активный участник Пользователь

    Баллы:
    78
    Skype:
    car-donate
    Имя в Minecraft:
    ZONCCK
    Скачивал последнюю версию. Кроме конфига ничего не трогал. Скрины с телефона, простите((
     

    Вложения:

  4. MattRh | IP

    MattRh | IP Активный участник Пользователь

    Баллы:
    78
    Skype:
    InfernalPalace
    Имя в Minecraft:
    MattRh
    Вроде поправил. На моей виртуалке с PHP 5.4 все работало прекрасно
    Скачать: monAJAX_1.4.1

    UPD: если вы держите хостинг на своем сервере, то обязательно укажите в php.ini
    short_open_tag = On
     
    Последнее редактирование: 10 июн 2015
  5. oleg57zls

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

    Баллы:
    173
    Skype:
    BlayzerQ
    Имя в Minecraft:
    Blayzer
    Слет рекордов поправите? :c
    Началось то все с того, что был первый мониторинг и у него слетали рекорды, с этим стилем.
    Я написал о том, можно ли его поправить, бук сказать что "легче новый мониторинг написать" ну собственно мониторинг новый написали, а вот рекорды так и слетают :c
     
  6. MattRh | IP

    MattRh | IP Активный участник Пользователь

    Баллы:
    78
    Skype:
    InfernalPalace
    Имя в Minecraft:
    MattRh
    Я уже писал - через крон пробовал подключать?
     
  7. ZONCCK

    ZONCCK Активный участник Пользователь

    Баллы:
    78
    Skype:
    car-donate
    Имя в Minecraft:
    ZONCCK
    Я, наверное, тупой:/
    Теперь просто белый экран
    upload_2015-6-10_17-43-27.png
     
  8. oleg57zls

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

    Баллы:
    173
    Skype:
    BlayzerQ
    Имя в Minecraft:
    Blayzer
    Я так-же писал, что и с кроном тоже самое.
     
  9. MattRh | IP

    MattRh | IP Активный участник Пользователь

    Баллы:
    78
    Skype:
    InfernalPalace
    Имя в Minecraft:
    MattRh
    А на какой период крон ставил?[DOUBLEPOST=1433946478,1433946401][/DOUBLEPOST]
    Точно в папке monAJAX все мониторинг находится?
    Если да, то создайте в этой папке файл 1.php с кодом
    <?='123test123'?>
     
  10. oleg57zls

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

    Баллы:
    173
    Skype:
    BlayzerQ
    Имя в Minecraft:
    Blayzer
    1 минута.
     
  11. MattRh | IP

    MattRh | IP Активный участник Пользователь

    Баллы:
    78
    Skype:
    InfernalPalace
    Имя в Minecraft:
    MattRh
    Можешь попробовать 10мин?
     
  12. oleg57zls

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

    Баллы:
    173
    Skype:
    BlayzerQ
    Имя в Minecraft:
    Blayzer
    Я попробую конечно, но когда домой вернусь. Но какой толк от мониторинга, если он будет раз в 10 минут обновляться?
     
  13. MattRh | IP

    MattRh | IP Активный участник Пользователь

    Баллы:
    78
    Skype:
    InfernalPalace
    Имя в Minecraft:
    MattRh
    10 минут не такой уж и большой период. На сколько максимум может измениться онлайн на +-5 человек?
    Если 10 минут сработает то модно будет потихоньку понижать
    UPD: и попробуй эту версию поставить
     
  14. Doker96

    Doker96 Активный участник Пользователь

    Баллы:
    78
    Не удалось создать шаблон (проверьте 'template' в конфиге)

    в чём проблем?
     
  15. MattRh | IP

    MattRh | IP Активный участник Пользователь

    Баллы:
    78
    Skype:
    InfernalPalace
    Имя в Minecraft:
    MattRh
    Мб папки, куда прописано создание шаблона, не существует
    Или права забыли выдать
     
  16. Doker96

    Doker96 Активный участник Пользователь

    Баллы:
    78
    на все папки ставил права 777 не работает
     
  17. MattRh | IP

    MattRh | IP Активный участник Пользователь

    Баллы:
    78
    Skype:
    InfernalPalace
    Имя в Minecraft:
    MattRh
    А папка существует, куда прописано сохранение?
     
  18. Doker96

    Doker96 Активный участник Пользователь

    Баллы:
    78
    да, там даже Monitoring.tpl лежит с кодом
     
  19. MattRh | IP

    MattRh | IP Активный участник Пользователь

    Баллы:
    78
    Skype:
    InfernalPalace
    Имя в Minecraft:
    MattRh
    какие тогда проблемы, если шаблон мониторинга уже создался?
     
  20. Doker96

    Doker96 Активный участник Пользователь

    Баллы:
    78
    Не удалось создать шаблон (проверьте 'template' в конфиге)
    Вот такие
     
  21. Автор темы
    book777

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

    Баллы:
    123
    Skype:
    nikolia0612
    Напишите ВК. Индивидуально с каждым буду решать его проблемы
     

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