PrestaShop Forums: [MODULE] Cookies Test Enable - Fr - PrestaShop Forums

Jump to content


Welcome to the PrestaShop Forum! We hope you'll share your comments and suggestions with us. We ask that you please post in English to the main sections of the PrestaShop Forum. If you want to write in another language, please post in the corresponding PrestaShop Community section below.

Please note that PrestaShop Community sections are largely self-moderated. PrestaShop team members may or may not participate in non-English sections. To improve the chances of receiving feedback to your question or comment, please post it in English to the main sections of our Forum.

NYC

Vous parlez français ? par ici !


[MODULE] Cookies Test Enable - Fr


[MODULE] Cookies Test Enable - Fr

#1 Nommam

    PrestaShop Fanatic

  • 15 May 2008
  • Members
  • PipPipPipPip
  • 1651 posts

Posted 09 November 2009 - 03:55 PM

Les Cookies sont impératif au bon fonctionement de prestashop.

Ce module test si les cookies de votre client sont activés.
Si ils ne sont pas actif, une fenetre Thickbox s'affiche contenant un message de votre choix

Obtenir le module :
Il est presque free, un petit don ( j'accepte aussi les gros), je livre le module par mail, a l'adresse du compte paypal

Demo sur PS version 1.2 : http://yapasde.com/ps1250/
Demo sur PS version 1.3 : http://yapasde.com/ps1311/


Procédure d'installation :
1° Aller dans Outil => CMS
2° Rédiger un nouvel article dans le CMS, celui ci doit contenir un message d'information pour signaler que les cookies de son navigateur ne sont pas activé et l'enregistrer
3° Noter l'ID du CMS destiné aux cookies.
4° aller dans Modules => CookiesTest => Installer, puis Configurer
5° Taper l'ID du CMS et enregister

Current version V0.7 :
Updated


works on PS V1.2 & 1.3

-

Old Version :
V0.2 DIsplay in Alert Box ( 100 download )
V0.4 Display in thikbox window ( 83 download )
V0.5 Bug with Chrome resolved ( 157 dowload )
V0.6 Minor modificationion

English => http://www.prestasho...iewthread/33884

Attached File(s)



#2 jolvil

    PrestaShop Fanatic

  • 22 Dec 2007
  • Members
  • PipPipPipPip
  • 2672 posts
  • Location:Paris

Posted 09 November 2009 - 07:46 PM

Semble ne pas fonctionner avec Chrome.
IE7, FF3, Opera10 OK

#3 Nommam

    PrestaShop Fanatic

  • 15 May 2008
  • Members
  • PipPipPipPip
  • 1651 posts

Posted 10 November 2009 - 08:18 AM

Exact Chrome n'accept pas les alert JavaScript !!!!!

si on fait un popup, il va etre bloqué .....


Comment faire pour que ce soit visible et explicite !

Une belle phrase au dessus du header ????

#4 Julien Breux

    PrestaShop Fanatic

  • 05 Feb 2008
  • PrestaTeam
  • 1580 posts
  • Location:Paris

Posted 10 November 2009 - 08:43 AM

Petit DIV par dessus la page (environ 25px) fixe ;)
Julien BreuxDevelopper | DéveloppeurR&DSiteTwitter

#5 Nommam

    PrestaShop Fanatic

  • 15 May 2008
  • Members
  • PipPipPipPip
  • 1651 posts

Posted 10 November 2009 - 01:03 PM

Pas facile d'integrer cela en haut du site, le hook Top est deja pas centrer, de plus il faut modifier la position du module pour le mettre en haut ..... donc Bof !

Par contre afficher le message / notice dans thickbox, me parait bien plus propre et web2, que l'alert java!


donc y a qu'a coder cela ;)

#6 Nommam

    PrestaShop Fanatic

  • 15 May 2008
  • Members
  • PipPipPipPip
  • 1651 posts

Posted 10 November 2009 - 03:23 PM

Voila la Mise a jour.

Cette version affiche le message dans une fenêtre thickbox ( sous le meme principe que les cgv )

Il faut taper le message d'alerte dans le cms, et renseigner au module L'ID CMS du message afficher !


http://www.prestasho...iewthread/33884

#7 jolvil

    PrestaShop Fanatic

  • 22 Dec 2007
  • Members
  • PipPipPipPip
  • 2672 posts
  • Location:Paris

Posted 10 November 2009 - 05:07 PM

Nouvelle version semble ne pas fonctionner une fois encore avec Chrome, les cookies sont bien bloqués, je dois d'ailleurs les re-authoriser pour pouvoir écrire ce message.

IE7, FF3, Opera10 OK, la thickbox s'affiche bien

#8 Nommam

    PrestaShop Fanatic

  • 15 May 2008
  • Members
  • PipPipPipPip
  • 1651 posts

Posted 10 November 2009 - 05:17 PM

agrrrrrrrrrrrr j'ai pas testé, et la pour ce soir c'est mort

#9 Ehinarr

    Sir

  • 01 Nov 2008
  • Members
  • PipPipPipPip
  • 1120 posts

Posted 11 November 2009 - 11:54 PM

Nous pourrions faire ainsi ?

blockinfos.php:

function hookLeftColumn($params)
{
$enabled = "";
// Check if cookie has been set or not
if ($_GET['set'] !== 'yes')
{
// Set cookie
setcookie('test', 'test', time() + 60);

// Reload page
header ("Location: index.php?set=yes");
}
else
{
// Check if cookie exists
if (!isset($_COOKIE['test']))
$enabled = $this->l('Cookies are NOT enabled on your browser. Please enable it!');
}

global $smarty, $cookie;
$smarty->assign('enabled',$enabled);

$cms = CMS::listCms($cookie->id_lang, $this->id);
$id_cms = array();
foreach($cms AS $row)
$id_cms[] = intval($row['id_cms']);
$smarty->assign('cmslinks', CMS::getLinks($cookie->id_lang, $id_cms ? $id_cms : NULL));
return $this->display(__FILE__, 'blockinfos.tpl');
}


blockinfos.tpl:

<!-- Block informations module -->

{l s='Information' mod='blockinfos'}




<!-- /Block informations module -->


J'ai expérimenté et semble fonctionner. Je ne sais pas comme ce serait dans un module distinct.

Attached File(s)


My Blog
PS v1.4.6.1

#10 Nommam

    PrestaShop Fanatic

  • 15 May 2008
  • Members
  • PipPipPipPip
  • 1651 posts

Posted 12 November 2009 - 07:27 AM

Bon en fait il y a un bug sur chrome, il retourne toujours true a navigator.cookieEnabled ..... donc, je vias devoir prendre l'option suivante, comme
Ehinarr d'initialiser un cookies et de voir si il marche ou pas !

ce qui ne plait qu'a moitié, car cela fait un cookies de plus que le site balance !

#11 Julien Breux

    PrestaShop Fanatic

  • 05 Feb 2008
  • PrestaTeam
  • 1580 posts
  • Location:Paris

Posted 12 November 2009 - 10:16 AM

La solution redirection d'entrée, je ne suis pas pour !
Les Crawls n'ont pas besoin d'entrer dans la logique du test de cookie.

Je pense à mon avis :

- Créer un bloc d'information comme @Ehinarr et lui mettre un "display: none;".

- Faire un test au chargement de la page "Ajax + jQuery".

- Retour en json, txt ou xml.

- Si cookie pas ok : "display: block;" sinon, ciao :)
Julien BreuxDevelopper | DéveloppeurR&DSiteTwitter

#12 Nommam

    PrestaShop Fanatic

  • 15 May 2008
  • Members
  • PipPipPipPip
  • 1651 posts

Posted 12 November 2009 - 03:09 PM

Certe les robots, ils ont on rien a pété de mon thickbox, ca ne les empeche pas de parcourir le site.
Par contre ils referencent quoi ??? le thickbox, la page, les deux ????


la soluce d' Ehinarr est pas mal, mais pas assez visible, les clients ne lisent plus rien sur un site et surtout qu'on risque de leur parler javanais.


je vais reflechir a comment faire pour que ce soit mieux !!!!

#13 Julien Breux

    PrestaShop Fanatic

  • 05 Feb 2008
  • PrestaTeam
  • 1580 posts
  • Location:Paris

Posted 12 November 2009 - 03:21 PM

@Nommam mon ami, ne le prend pas comme ça s'il te plaît ! :)
Non, je ne parlais pas de "référencement", mais simplement faire une redirection pour tester un cookie et sur la homepage.

Le vrai mix, je ne le connais pas...

Julien offre un verre à Nommam
Julien BreuxDevelopper | DéveloppeurR&DSiteTwitter

#14 Nommam

    PrestaShop Fanatic

  • 15 May 2008
  • Members
  • PipPipPipPip
  • 1651 posts

Posted 12 November 2009 - 03:25 PM

J'ai fait un tour sur les gros sites ecomerce.

3suisses => affichage en rouge en haut de page + liens vers notice
ldlc.fr Affiche un message a la mise a jour du panier, comme amazon.fr qui lui en plus propose un lien vers une aide pour les activer
discounteo.com => A la mise a jour du panier une notice en anglais !!!! ( lui il est sous mag..to )
rueducommerce le site ne marche pas du tout, affichage de la pub en boucle
surcouf comme cdiscount le site marche mais des que l'on met en panier, ca nous retourne un panier vide


il me semble que le mieux c'est de jouer le thikbox a la mise a jour du panier .

#15 Nommam

    PrestaShop Fanatic

  • 15 May 2008
  • Members
  • PipPipPipPip
  • 1651 posts

Posted 12 November 2009 - 03:26 PM

je ne prends rien à mal ;)

#16 Julien Breux

    PrestaShop Fanatic

  • 05 Feb 2008
  • PrestaTeam
  • 1580 posts
  • Location:Paris

Posted 12 November 2009 - 03:38 PM

Pas facile, mais je pense que si ça doit bloquer le déroulement de l'achat et c'est le cas, ton idée est bonne ;)
Julien BreuxDevelopper | DéveloppeurR&DSiteTwitter

#17 Ehinarr

    Sir

  • 01 Nov 2008
  • Members
  • PipPipPipPip
  • 1120 posts

Posted 12 November 2009 - 04:07 PM

Lorsque javascript n'est pas activé, la valeur par défaut est un message d'avertissement en haut de la page.

Attached File(s)


My Blog
PS v1.4.6.1

#18 Julien Breux

    PrestaShop Fanatic

  • 05 Feb 2008
  • PrestaTeam
  • 1580 posts
  • Location:Paris

Posted 12 November 2009 - 04:07 PM

Bien vu !
Julien BreuxDevelopper | DéveloppeurR&DSiteTwitter

#19 Nommam

    PrestaShop Fanatic

  • 15 May 2008
  • Members
  • PipPipPipPip
  • 1651 posts

Posted 12 November 2009 - 06:41 PM

Oui, c'est dans le header.tpl du theme

#20 Ehinarr

    Sir

  • 01 Nov 2008
  • Members
  • PipPipPipPip
  • 1120 posts

Posted 12 November 2009 - 07:39 PM

Nous pourrions faire ainsi?

cookiestest.php:

public function hookHeader($params)
{
$cookie_message = $this->l('Cookies are NOT enabled on your browser. In order for us to process your requests, we require cookies to be enabled. Please configure your browser to allow cookies.');

global $smarty, $cookie;
$smarty->assign('enabled',$cookie_message);

return $this->display(__FILE__, $this->name.'.tpl');
}


cookiestest.tpl:


[removed]
var enabled = '
{$enabled}
';
{literal}
<!--
function ReadCookie(cookieName) {
var theCookie=""+[removed];
var ind=theCookie.indexOf(cookieName);
if (ind==-1 || cookieName=="") return "";
var ind1=theCookie.indexOf(';',ind);
if (ind1==-1) ind1=theCookie.length;
return unescape(theCookie.substring(ind+cookieName.length+1,ind1));
}

function SetCookie(cookieName,cookieValue,nDays) {
var today = new Date();
var expire = new Date();
if (nDays==null || nDays==0) nDays=1;
expire.setTime(today.getTime() + 3600000*24*nDays);
[removed] = cookieName+"="+escape(cookieValue)
+ ";expires="+expire.toGMTString();
}
testValue=Math.floor(1000*Math.random());
SetCookie('AreCookiesEnabled',testValue);
if (testValue==ReadCookie('AreCookiesEnabled'))
[removed]('')
else [removed](enabled)
//-->
{/literal}
[removed]



C'est juste une suggestion pour votre bonne idée.

Attached File(s)


My Blog
PS v1.4.6.1





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users