Page 2 sur 2

Publié : 22 févr. 2005, 22:05
par calimo
Ben tout le script est en javascript donc je ne vois pas pourquoi (ni surtout comment) je le ferais en php... mais je verrai ça demain.

Publié : 22 févr. 2005, 22:06
par KissCoolMan
Chais pas, me rappelle pas avoir déjà fait ca en Js, j'le fais généralement en PHP, et ca se fait plutôt simplement lol !
Mais ptêtre qu'en Js aussi , chais pas

Publié : 22 févr. 2005, 22:57
par martin
J'ai en fait mis la préférence "javascript.options.strict" à true,
Bien vu :wink: , j'ai désactivé il y a quelque temps ce paramètre et oublier de le remettre.
Tu fais ça en Javascript ou en PHP
Calimo n'a pas trop le choix en fait. Le site est basé sur un moteur de template, ce serait compliqué de rajouter çà en php, il faudrait que les headers soient envoyés avant la page etc. Surtout pour une petite fonctionalité. Et çà peut trés bien se faire en js, c'est parfaitement adapté au cas présent.

Pour t'aider :
http://www.quirksmode.org/js/cookies.html

Publié : 22 févr. 2005, 23:24
par HP
martin a écrit :Calimo n'a pas trop le choix en fait. Le site est basé sur un moteur de template, ce serait compliqué de rajouter çà en php, il faudrait que les headers soient envoyés avant la page etc.
phpBB est chiant pour çà !
:?

Publié : 23 févr. 2005, 08:06
par calimo
HP a écrit :phpBB est chiant pour çà !
:?
Non c'est Wikini, et c'est excellent pour ce qu'on en fait.

Par contre c'est un moteur de templates ? Les templates c'est pas les différents thèmes sur phpBB par exemple ?

Publié : 23 févr. 2005, 09:51
par calimo
Bon, je m'y suis attaqué, (au passage merci martin pour l'excellent lien :wink: ).

C'est donc toujours visible sur http://extensions.geckozone.org/tests/Adblock.htm et le script est toujours à l'adresse http://extensions.geckozone.org/tests/A ... omments.js (c'est toujours bon de le repréciser).

Comme vous vous en doutez... je n'arrive pas à le faire marcher :(
Visiblement le cookie est bien stocké, pour ça pas de problèmes, c'est déjà ça :)
Par contre il n'a pas l'air d'avoir d'effet au démarrage. Les commentaires sont toujours cachés, même si je n'appelle la fonction pour les cacher que si (contenuCookie==false) :( (visiblement la variable est pourtant bien juste...)
Quelqu'un a une idée pourquoi ?

Publié : 24 févr. 2005, 13:54
par Mirovinben
J'ai jeté un oeil rapide, à la fois sur la page Html et sur le JS... et je n'ai rien compris :
-1- où est le lien vers le js dans ton Html ?
-2- avec quoi gères-tu ton cookie (écriture, lecture, traitement) ?

Ca fait longtemps que j'utilise des cookies heu... sous IE... mais je suppose que ça fonctionne sous FF... voici mes scripts

Code : Tout sélectionner

function MetCookie(nom, valeur, duree, chemin, domaine, securise) {
  if (duree==null) duree=1;
  var D=new Date();
  D.setTime(D.getTime() + (duree * 60 * 1000));
  document.cookie= nom + "=" + escape (valeur) + "; expires=" + D.toGMTString() +
  ((chemin) ? "; path=" + chemin : "") +
  ((domaine) ? "; domain=" + domaine : "") +
  ((securise) ? "; secure=" + securise : "");
}
      
function LitCookie(nom) {
  var L = document.cookie.length;
  var N = nom + "=";
  var Z = N.length;
  var F = "";
  var R = "";
  if (document.cookie.indexOf(N) > -1) {
    F = document.cookie.substring(document.cookie.indexOf(N) + Z);
    R = F.substring (0, ((F.indexOf (";") > -1) ? F.indexOf (";") : L));
    return unescape(R);
  }
  else {return ("")}
}
MetCookie(nom, valeur, duree, chemin, domaine, securise)
Ecrit un cookie contenant une variable nom valant valeur avec une durée de vie duree (en minutes, 1 mn par défaut) ainsi que d'autres paramètres facultatifs...

LitCookie(nom)
Lit la valeur de la variable nom contenue dans le cookie (retourne une chaine vide si le cookie n'existe pas...).

Des fois que ça réponde à ta question...

Publié : 24 févr. 2005, 14:04
par calimo
Mirovinben a écrit :-1- où est le lien vers le js dans ton Html ?
Juste avant le début des commentaires, ça permets de l'insérer seulement sur les pages avec des commentaires et d'éviter son exécution ailleurs sur des pages où ce ne serait pas nécessaire.
Mirovinben a écrit :-2- avec quoi gères-tu ton cookie (écriture, lecture, traitement) ?
Dans le script dont j'ai donné l'adresse plus haut.
http://extensions.geckozone.org/tests/A ... omments.js

Visiblement le problème ne vient pas du cookie mais de son utilisation :roll:

Merci de t'occuper de moi :wink:

Publié : 24 févr. 2005, 14:20
par Mirovinben
calimo a écrit :
Mirovinben a écrit :-1- où est le lien vers le js dans ton Html ?
Juste avant le début des commentaires, ça permets de l'insérer seulement sur les pages avec des commentaires et d'éviter son exécution ailleurs sur des pages où ce ne serait pas nécessaire.
Ben c'est la première fois que je vois un lien vers un javascript externe en plein milieu du hachteumeuleu... Ce n'est pas bloquant en effet mais je m'attendais à le trouver avant le <body>.... Du coup j'y suis retourné en lançant une recherche du mot "javascript" et je l'ai localisé en effet en plein "corps"
calimo a écrit :
Mirovinben a écrit :-2- avec quoi gères-tu ton cookie (écriture, lecture, traitement) ?
Dans le script dont j'ai donné l'adresse plus haut.
http://extensions.geckozone.org/tests/A ... omments.js
Je l'avais consulté... et j'ai recommencé après ta réponse : je ne suis pas tombé sur le même source que ce coup-ci !!!!!! Un clic un peu trop rapide ? une souris qui n'en fait qu'à sa tête ? Désolé ! :oops:

Publié : 25 févr. 2005, 01:10
par martin
A vue de pif, j'ai regardé ultra rapidement, change :

Code : Tout sélectionner

if (contenuCookie==false) {
		switchComments;
	}
par

Code : Tout sélectionner

if (contenuCookie==false) {
		switchComments();
	}
même erreur que précedement :wink:

Publié : 25 févr. 2005, 08:36
par calimo
Exact :oops:
Mais visiblement ce n'est toujours pas ça :(

Publié : 25 févr. 2005, 11:08
par martin
Toujours un coup d'oeil ultra rapide (désolé), essaie de changer :

Code : Tout sélectionner

if (contenuCookie==false) 
par

Code : Tout sélectionner

if (contenuCookie=='false') 
le contenu d'un cookie est du texte, peut être que javascript ne fait pas le transtypage sur ce coup ...

Publié : 25 févr. 2005, 11:37
par calimo
C'était bien ça ! Alors là chapeau, je n'aurais jamais trouvé tout seul :lol:

Bon, en fait il fallait mettre

Code : Tout sélectionner

	if (contenuCookie=='true') {
		switchComments();
	}
Je vais pouvoir mettre ça par défaut sur le site maintenant. Juste avant, ça marche bien chez tout le monde et personne ne voit de bugs ?

Merci infiniment 8)

Edit : j'ai rien dit, c'est bien (contenuCookie=='false') qu'il faut, je ne sais pas pourquoi j'avais un class="commentHidden" dans mon code HTMl, probablement parce qu'à l'enregistrement il était fermé...

Publié : 25 févr. 2005, 19:58
par Thomas
Je n'ai pas constaté de bugs ;)

Publié : 25 févr. 2005, 20:59
par calimo
Alors dans ce cas le seul bug qui reste dans ce sujet c'est un bug de phpBB, ce qui me convient parfaitement :P

Merci à tous ceux qui ont participé ;-)