Ir para conteúdo
Fórum Script Brasil
  • 0

Como faço meu cookie funcionar em todas as páginas do meu blog?


PHS

Pergunta

Olá, pessoal!

Implementei um programa em javascript para adicionar jogos aos favoritos online via cookies.

Blog (Plataforma Blogger) = http://rc-jogos-flash.blogspot.com.br/

Mas o cookies não funciona em todas as páginas. Por exemplo, na página inicial a função que gera a lista de jogos adicionados não é executada. E para diretórios diferentes são criados cookies diferentes.

Para a url http://rc-jogos-flash.blogspot.com.br/2012/07/001.html é gerado o cookie 07, enquanto que para a url http://rc-jogos-flash.blogspot.com.br/2012/06/sub.html é gerado o cookie 06. Sendo que o 07 abre somente no diretório /07 e o 06 somente no /06.

Por favor, como faço para o cookie funcionar em todas as páginas do meu blog?

Código JavaScript para criar o Cookie e funções para criar a Lista

var expDays = 365;
var exp = new Date(); 
exp.setTime(exp.getTime() + (expDays*24*60*60*1000));
var ShowCount = 0;

function ListToDoItems() {
    var NumToDoItems = GetCookie('PT_NumToDoList');
    var i;
    var ToDoItem;
    if (NumToDoItems == null) {
        NumToDoItems = 0;
        document.write("<br />Você ainda não possui nenhum jogo adicionado aos Favoritos! :-(<br /><br />");
    }
    ShowCount = 0;
    for (i=1; i <= NumToDoItems; i++) {
        ToDoItem = GetCookie('PT_ToDoItem'+i);
        if (ToDoItem != null) {
            PrintItem(ToDoItem, i);
        }
    }
}

function DeleteItem(Count) {
    DeleteCookie('PT_ToDoItem'+Count);
    alert("Jogo excluído com Sucesso!");
    window.location = window.location;
}

function PrintItem (ToDoItem, Count) {
    ShowCount++;
    var NumToDoItems = GetCookie('PT_NumToDoList');
    var FavToDoItems = GetCookie('PT_FavToDoItem'+NumToDoItems);
    document.write("<a href='"+ToDoItem+"' title='Jogar' target='_self'><img style='border:0;margin:2px;padding:0;' border='0' height='100' width='150' src='"+FavToDoItems+"' /></a>");
    document.write("<a onclick='DeleteItem(" + Count + ");' title='Excluir Jogo' style='cursor:pointer;'>");
    document.write("<img alt='Excluir Jogo' align='absbottom' style='margin-left:-152px;border:0;padding:0;' border='0' height='25px' width='150px' src='http://3.bp.blogspot.com/-Gi9t0PBb0s4/UAT9czH1__I/AAAAAAAAAIE/JtBYgT21cLQ/s1600/exc.png' /></a>");
}

function AddItem() {
    var NumToDoItems = GetCookie('PT_NumToDoList');
    if (NumToDoItems == null) {
        NumToDoItems = 0;
    }
    var ToDoItem = top.location.href;
    var i;
    var Teste = true;
    for (i=1; i <= NumToDoItems; i++) {
        if(ToDoItem =! GetCookie('PT_ToDoItem'+i)){
            Teste = true;
        } else {
            Teste = false;
            break;
        }
    }
    if (Teste == true) {
        var FavToDoItems = document.getElementById("imgfav").src;
        NumToDoItems++;
        SetCookie('PT_ToDoItem'+NumToDoItems, ToDoItem, exp);
        SetCookie('PT_NumToDoList',NumToDoItems, exp);
        SetCookie('PT_FavToDoItem'+NumToDoItems, FavToDoItems, exp);
        alert("Jogo adicionado com Sucesso!");
        window.location = window.location;
    } else {
        alert("Este jogo já foi adicionado!");
    }
}

function getCookieVal (offset) {  
    var endstr = document.cookie.indexOf (";", offset);  
    if (endstr == -1) {
        endstr = document.cookie.length;
    }
    return unescape(document.cookie.substring(offset, endstr));
}

function GetCookie (name) {  
    var arg = name + "=";  
    var alen = arg.length;  
    var clen = document.cookie.length;  
    var i = 0;  
    while (i < clen) {
        var j = i + alen;    
        if (document.cookie.substring(i, j) == arg) {
            return getCookieVal (j);
        }    
        i = document.cookie.indexOf(" ", i) + 1;    
        if (i == 0) {
            break;
        }
    }
    return null; 
}

function SetCookie (name, value) {  
    var argv = SetCookie.arguments;  
    var argc = SetCookie.arguments.length;  
    var expires = (argc > 2) ? argv[2] : null;  
    var path = (argc > 3) ? argv[3] : null;  
    var domain = (argc > 4) ? argv[4] : null;  
    var secure = (argc > 5) ? argv[5] : false;  
    document.cookie = name + "=" + escape (value) + 
    ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + 
    ((path == null) ? "" : ("; path=" + path)) +  
    ((domain == null) ? "" : ("; domain=" + domain)) +    
    ((secure == true) ? "; secure" : "");
}

function DeleteCookie (name) {  
    var exp = new Date();  
    exp.setTime (exp.getTime() - 1);  
    var cval = GetCookie (name);  
    document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}
Código HTML e JavaScript para chamar a função que cria a Lista
<div align="center">
<div style="font-weight:bold;">Para adicionar jogos aos Meus Favoritos clique no botão <a onclick="AddItem();" title="Adicionar aos Meus Favoritos" style="cursor:pointer;"><img align="absbottom" style="border:0;margin:0;padding:0;" border="0" height="20" width="20" src="http://1.bp.blogspot.com/-GTeU1Nz2cy8/UAQKOQbVw0I/AAAAAAAAAG8/z7Q11oH61ws/s320/bookmarks_plus.png" /> Adicionar</a>.<br /><br /></div>
<script language="JavaScript">
<!--
ListToDoItems();
// -->
</script>
</div>
</div>

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...