eviscar Posted April 26, 2011 Share Posted April 26, 2011 Bonjour,Je suis en Prestashop 1.3.7Dans le module Blockuserinfo, j'aimerai récupérer une variable.Est-il possible de connaître la zone et le pays du client connecté ?J'ai essayé $zone_id mais cela ne fonctionne pas.Merci Link to comment Share on other sites More sharing options...
Pierre-Yves Posted April 26, 2011 Share Posted April 26, 2011 Salut,Quand tu dis que tu aimerais récupérer la zone du client, c'est pour l'utiliser dans le fichier TPL? Ou alors pour l'utiliser en PHP? Link to comment Share on other sites More sharing options...
eviscar Posted April 26, 2011 Author Share Posted April 26, 2011 oui je voudrais le récupérer dans le tplce que je veux faire:IF la zone du client (à condition d'être connecté) == "France"THEN ...c'est possible ? Link to comment Share on other sites More sharing options...
Pierre-Yves Posted April 26, 2011 Share Posted April 26, 2011 Oui cela est possible. Ouvre le fichier "blockuserinfo.php" et fait les modifications suivantes.Avant la ligne suivante : return $this->display(__FILE__, 'blockuserinfo.tpl'); Insère ce code : $smarty->assign('zone_id', ($cookie->isLogged() ? Customer::getCurrentCountry( intval($cookie->id_customer) ) : '0')); Sauvegarde ton fichier et ferme le.Désormais, tu peux utiliser la variable $zone_id dans ton TPL. Si le client n'est pas connecté, cette variable est à 0. Link to comment Share on other sites More sharing options...
eviscar Posted April 26, 2011 Author Share Posted April 26, 2011 merci pour ta réponsecela devrait fonctionner sauf que...dans ma classe customer je n'ai pas de fonction getCurrentCountry()je suis en 1.3.7 Link to comment Share on other sites More sharing options...
Pierre-Yves Posted April 26, 2011 Share Posted April 26, 2011 Essaye alors en mettant ce code : if ($cookie->isLogged()) { $id_address = Db::getInstance()->getRow('SELECT `id_country` FROM `'._DB_PREFIX_.'address` WHERE `id_customer` = '.intval($cookie->id_customer).' AND `deleted` = 0 ORDER BY `id`'); $smarty->assign('zone_id', $id_address['id_country']); } else { $smarty->assign('zone_id', '0'); } Je ne l'ai pas testé, je n'ai pas de 1.3.7 sous la main. Link to comment Share on other sites More sharing options...
eviscar Posted April 26, 2011 Author Share Posted April 26, 2011 super ca fonctionneil faut juste modifier le ORDER BY `id` par ORDER BY `id_country`un grand merci !!! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now