Resultados 1 a 5 de 5
  1. #1
    Developer C++ LaMO's Avatar


    Data de Ingresso
    Sep 2015
    Posts
    692
    Thanks Thanks Given 
    206
    Thanks Thanks Received 
    770
    Thanked in
    124 Posts
    Mencionado
    80 Post(s)
    MEU HUMOR
    Tired

    Question Eventos na página principal

    Boa tarde, estava ajeitando o site de um cliente nos gostos dele, poréem me deparei em uma dúvida, não manjo muito de js.

    Ele quer que eu configure os eventos na home da seguinte forme (vou dar o exemplo de um):

    Sobrevivente:
    Segunda as 16, as 17
    Terça as 16, as 17, as 18
    Quarta as 16, as 17, as 18
    Quinta as 16, as 17
    Sexta as 16, as 17, as 18
    Sábado as 16, as 17, as 18
    Domingo as 21.

    Como eu faço isso?

    Tenho o seguinte código, mas não consegui entender o suficiente

    var onReady = [];






    var eventsTime = [


    //Events Default


    ["Blood Castle", ["00:00","02:00","04:00","06:00","08:00","11:56","1 4:00","16:00","18:00","20:00","22:00"]],


    ["Devil Square", ["03:30","06:30","09:30","12:30","15:30","18:30","2 1:30","23:30"]],


    ["Skull Black", ["00:00","02:00","04:00","06:00","08:00","11:56","1 4:00","16:00","18:00","20:00","22:00"]],









    /* Dia da semana e horário especifico */


    /*["Skeleton", [1, 2, 3, 4, 5, 6, 7], ["08:15", "10:15", "12:15", "14:15", "16:15", "18:15", "20:15"]],


    ["Budge Dragon", [2, 2, 4, 4, 6, 6], ["12:28", "21:28", "12:28", "21:28", "12:28", "21:28"]],*/






    ];










    function toSeconds(var1, var2, var3) {


    return var1 * 3600 + var2 * 60 + var3;


    }






    function DateUTC(IndexaUTC) {


    d = new Date();


    utc = d.getTime() + (d.getTimezoneOffset() * 60000);


    return new Date(utc + (3600000 * IndexaUTC))


    }






    function updateEventsTime() {


    var VarDateUTC = DateUTC(-3);


    var VarSecs = toSeconds(VarDateUTC.getHours(), VarDateUTC.getMinutes(), VarDateUTC.getSeconds());


    var VarCalculator = "";


    for (i in eventsTime) {


    line = eventsTime[i];





    var image = '';


    switch(line[0]) {


    case 'Blood Castle': image = 'icon_bc.png'; break;


    case 'Devil Square': image = 'icon_ds.png'; break;


    case 'Skull Black': image = 'icon_skull.png'; break;


    case 'PvP Battle': image = 'icon_pvp.png'; break;


    case 'Lucky Mixes': image = 'icon_mix.png'; break;


    default: image = 'icon_sky.png'; break;


    }





    /* array com 2 casas */


    if (line.length == 2 && typeof(line[1]) == "object") {


    var LoopTiming;


    for (LoopTiming = 0; LoopTiming < line[1].length; LoopTiming++) {


    var ConvertToTime = line[1][LoopTiming].split(":");


    ConvertToTime = toSeconds(ConvertToTime[0], ConvertToTime[1], 0);


    if (ConvertToTime > VarSecs) {


    break


    }


    };


    LoopTiming = LoopTiming % eventsTime[i][1].length;


    var ConvertToTime = eventsTime[i][1][LoopTiming].split(":");


    var ComparationParam = toSeconds(ConvertToTime[0], ConvertToTime[1], 0) - VarSecs;


    if (ComparationParam < 0) {


    ComparationParam += 3600 * 24


    };


    var var1 = parseInt(ComparationParam / 3600);


    ComparationParam -= 3600 * var1;


    var var2 = parseInt(ComparationParam / 60);


    var var3 = ComparationParam - var2 * 60;


    var _0xa2bexf = (var1 < 10 ? '0'+ var1 : var1) + ":" + ((0 + var2) < 10 ? '0'+ var2 : var2) + ":" + ((0 + var3) < 10 ? '0'+ var3 : var3);











    VarCalculator += '<tr>'+


    '<td>'+


    '<h4 class="ui image header" style="display: ruby;">'+


    '<img src="templates/modelo/images/'+ image +'" class="ui mini rounded image">'+


    '<div class="content" style="font-family: Oswald; text-transform: uppercase; font-weight: 700;">'+ line[0] +'<div class="sub header"><i class="clock outline icon"></i>'+ line[1][LoopTiming] +'</div></div>'+


    '</h4>'+


    '</td>'+


    '<td><span class="ui tag '+ (var1 == 0 && var2 < 5 ? 'green' : '') +' label">'+ _0xa2bexf +'</span></td>'+


    '</tr>';


    }








    /* array com 3 casas ou mais */


    else {


    if (line.length == 3) {


    var VarStruct1 = [0, 0, 0, 0, 0, 0, 0];


    var VarStruct2 = [0, 0, 0, 0, 0, 0, 0];


    for (LoopTiming in line[1]) {


    var ConvertToTime = line[2][LoopTiming].split(":");


    ConvertToTime = toSeconds(ConvertToTime[0], ConvertToTime[1], 0);


    VarStruct1[line[1][LoopTiming] - 1] = ConvertToTime;


    VarStruct2[line[1][LoopTiming] - 1] = line[2][LoopTiming];


    };


    var FinalGetTime = VarDateUTC.getDay();


    var InitValueTime = 0;


    while (1) {


    if (VarStruct1[FinalGetTime] && ((FinalGetTime == VarDateUTC.getDay() && VarStruct1[FinalGetTime] > VarSecs) || FinalGetTime != VarDateUTC.getDay())) {








    var DefineTimeX = ["Dom. ", "Seg. ", "Ter. ", "Qua. ", "Qui. ", "Sex. ", "Sab. "][FinalGetTime];


    if (FinalGetTime == VarDateUTC.getDay()) {


    DefineTimeX = ""


    };


    var ComparationParam = (FinalGetTime * 24 * 60 * 60 + VarStruct1[FinalGetTime]) - (VarDateUTC.getDay() * 24 * 60 * 60 + VarSecs);


    if (ComparationParam < 0) {


    ComparationParam += 7 * 24 * 60 * 60;


    };


    var WorkingTimeParse = parseInt(ComparationParam / (24 * 60 * 60));


    ComparationParam -= WorkingTimeParse * (24 * 60 * 60);


    var var1 = parseInt(ComparationParam / 3600);


    ComparationParam -= 3600 * var1;


    var var2 = parseInt(ComparationParam / 60);


    var var3 = ComparationParam - var2 * 60;


    var TimeNewVar;


    if (WorkingTimeParse) {


    TimeNewVar = WorkingTimeParse + "d " + (var1 < 10 ? '0'+ var1 : var1) + ":" + (var2 < 10 ? '0'+ var2 : var2);


    }


    else {


    var TimeNewVar = (var1 < 10 ? '0'+ var1 : var1) + ":" + (var2 < 10 ? '0'+ var2 : var2) + ":" + (var3 < 10 ? '0'+ var3 : var3);


    };





    VarCalculator += '<tr>'+


    '<td>'+


    '<h4 class="ui image header" style="display: ruby;">'+


    '<img src="templates/modelo/images/'+ image +'" class="ui mini rounded image">'+


    '<div class="content" style="font-family: Oswald; text-transform: uppercase; font-weight: 700;">'+ line[0] +'<div class="sub header"><i class="clock outline icon"></i>'+ DefineTimeX + VarStruct2[FinalGetTime] +'</div></div>'+


    '</h4>'+


    '</td>'+


    '<td><span class="ui tag '+ (var1 == 0 && var2 < 5 ? 'green' : '') +' label">'+ TimeNewVar +'</span></td>'+


    '</tr>';


    break


    };


    /*if (InitValueTime++ > 8) {


    VarCalculator += '<tr>'+


    '<td>'+


    '<h4 class="ui image header" style="display: ruby;">'+


    '<img src="templates/modelo/images/'+ image +'" class="ui mini rounded image">'+


    '<div class="content" style="font-family: Oswald !important;text-transform: uppercase !important;font-weight: 700;">'+ line[0] +'<div class="sub header"><i class="clock outline icon"></i>'+ line[1][LoopTiming] +'</div></div>'+


    '</h4>'+


    '</td>'+


    '<td><span class="ui tag label">7d</span></td>'+


    '</tr>';


    break


    };*/


    FinalGetTime = (FinalGetTime + 1) % 7;


    }


    }


    /*else {


    VarCalculator += '<tr>'+


    '<td>'+


    '<h4 class="ui image header" style="display: ruby;">'+


    '<img src="templates/modelo/images/'+ image +'" class="ui mini rounded image">'+


    '<div class="content" style="font-family: Oswald !important;text-transform: uppercase !important;font-weight: 700;">'+ line[0] +'<div class="sub header"><i class="clock outline icon"></i>'+ line[1][LoopTiming] +'</div></div>'+


    '</h4>'+


    '</td>'+


    '<td><span class="ui tag label">'+ line[1] +'</span></td>'+


    '</tr>';


    }*/


    }








    };


    $(".events-in-game").html('<table class="ui very basic table">'+


    '<tbody>'+ VarCalculator +'</tbody>'+


    '</table>')


    };


    onReady.push(function() {


    setInterval(updateEventsTime, 1000);


    });










    for(var i in onReady) onReady[i]();
    Para visualizar melhor: [Somente membros podem ver os links. ]

    Enfim, será que poderiam me ajudar? Talvez modificar o código..

    Lembrando que eu dei o exemplo só de 1 evento, mas ele quer vários.

    Desde já muito obrigado!

  2. #2
    Developer C++ s00x's Avatar

    Data de Ingresso
    Jan 2015
    Posts
    373
    Thanks Thanks Given 
    75
    Thanks Thanks Received 
    150
    Thanked in
    24 Posts
    Mencionado
    63 Post(s)
    MEU HUMOR
    Cheerful
    País
    United States
    Opa, boa noite!

    Tudo bem colega?
    Olha, eu te recomendo você dar uma lida nesse [Somente membros podem ver os links. ]e verificar os arquivos.
    Pode ser que te ajude a entender o que ele quer.

    Ah, teria formas "simples" de fazer isso, mas analisa esses arquivos ai.
    Qualquer duvida, comenta que tentaremos te ajudar.

    Abraço e até mais.
    att's
    É melhor estar enganado, do que ser enganado.

  3. #3
    Developer C++ Ravoc's Avatar

    Data de Ingresso
    Dec 2018
    Posts
    302
    Thanks Thanks Given 
    272
    Thanks Thanks Received 
    780
    Thanked in
    103 Posts
    Mencionado
    14 Post(s)
    MEU HUMOR
    Sad
    País
    France
    Acho que está bem obvio onde você deve alterar meu amigo, rsrsrs.

  4. #4
    Developer C++ LaMO's Avatar


    Data de Ingresso
    Sep 2015
    Posts
    692
    Thanks Thanks Given 
    206
    Thanks Thanks Received 
    770
    Thanked in
    124 Posts
    Mencionado
    80 Post(s)
    MEU HUMOR
    Tired
    Citação Originally Posted by s00x Ver Post
    Opa, boa noite!

    Tudo bem colega?
    Olha, eu te recomendo você dar uma lida nesse [Somente membros podem ver os links. ]e verificar os arquivos.
    Pode ser que te ajude a entender o que ele quer.

    Ah, teria formas "simples" de fazer isso, mas analisa esses arquivos ai.
    Qualquer duvida, comenta que tentaremos te ajudar.

    Abraço e até mais.
    att's
    Assim que eu for pro PC eu dou uma olhada e edito aqui, obrigado.

    Citação Originally Posted by Ravoc Ver Post
    Acho que está bem obvio onde você deve alterar meu amigo, rsrsrs.
    Onde alterar é sim bem óbvio, o problema é alterar o código em si pra fazer do jeito que o cliente quer. Tentei fazer do jeito óbvio mas ele acaba pegando apenas o último valor de cada dia.

  5. #5
    Developer C++ Ravoc's Avatar

    Data de Ingresso
    Dec 2018
    Posts
    302
    Thanks Thanks Given 
    272
    Thanks Thanks Received 
    780
    Thanked in
    103 Posts
    Mencionado
    14 Post(s)
    MEU HUMOR
    Sad
    País
    France
    Citação Originally Posted by LaMO Ver Post
    Onde alterar é sim bem óbvio, o problema é alterar o código em si pra fazer do jeito que o cliente quer. Tentei fazer do jeito óbvio mas ele acaba pegando apenas o último valor de cada dia.
    Tenta criar uma função cron.

Permissões de Postagem

  • Você não pode iniciar novos tópicos
  • You may not post Resposta(s)
  • Você não pode enviar anexos
  • Você não pode editar suas mensagens
  •  
Sobre nós
Somos uma comunidade em atividade a 8 anos que aborda assuntos relacionados a games em geral, principalmente games MMORPG. e que busca sempre ajudar os membros através de conteúdos, tutoriais e suporte...
Nossos anunciantes
Hinetworks
VelozHost
InovHost
Rede Sociais