Jump to content

WolwX

Members
  • Posts

    8
  • Joined

  • Last visited

Profile Information

  • Location
    Paris
  • Activity
    Freelancer

WolwX's Achievements

Newbie

Newbie (1/14)

0

Reputation

  1. Bonjour à tous Je me permet de venir à vous pour demander de l'aide aux experts d'entre vous, plus particulièrement à ceux qui maîtrise la création de module prestashop et leur mise en page. Je suis sur la création d'un module, et j'aimerais le publier très bientôt, cependant, au vue du nombres importants de réglages possible, et donc de la lisibilité de la page de réglage, j'aimerais pouvoir masquer des réglages en fonction des réglages parent fait. Voici donc le contenu de ma function générant le formulaire : public function renderFormIcon() { $fields_form[1]['form'] = array( 'legend' => array( 'title' => $this->l('Icon Settings'), 'icon' => 'icon-cogs' ), 'input' => array( array( 'type' => 'switch', 'label' => $this->l('CSS Icon Menu'), 'desc' => $this->l('If enabled the menu Icon will be set by CSS (better option), if disabled it will be an image.'), 'name' => 'ICONCSS', 'is_bool' => true, 'values' => array( array( 'id' => 'active_on', 'value' => 1, 'label' => $this->l('Enabled') ), array( 'id' => 'active_off', 'value' => 0, 'label' => $this->l('Disabled') )), ), array( 'type' => 'file', 'label' => $this->l('Icon\'s image file'), 'name' => 'ICONIMG', 'thumb' => '../modules/'.$this->name.'/img/tmp/'.$ICONFILE, 'desc' => $this->l('Set the icon\'s image file.') ), array( 'type' => 'color', 'label' => $this->l('Icon\'s color'), 'name' => 'ICONCOLOR', 'desc' => $this->l('Set the icon\'s color.') ), 'submit' => array( 'name' => 'submitn1verticalsidemenuicon', 'title' => $this->l('Save'), 'class' => 'button' ) ); Ensuite voici le javascript que j'inclus sur la view admin (monmodule/views/templates/admin/_configure/helpers/form/form.tpl) : $(document).ready(function(){ toggleFields(); $('#ICONCSS_on').on('change', function() { toggleFields(); }); }); function toggleFields() { if ($('#ICONCSS_off').is(':checked')) { $('#color_1').hide(); $('#ICONIMG').show(); } else { $('#color_1').show(); $('#ICONIMG').hide(); } } Dans ce premier scenario, j'ai un début de fonctionnement, mais les champs masqués ne le sont réellement que lors du premier changement, quand je resollicite le switch, ça ne fonctionne plus (peut être un soucis avec l'appel jquery) Dans un second temps j'ai tenté avec une autre function JS, mais là, il ne ce passe rien du tout >< : $('#ICONCSS_on').on('change',function(){ var selection = $(this).val(); switch(selection){ case "1": $("#color_1").show() break; default: $("#color_1").hide() } }); Voilà donc, en espérant que je pourrais avoir quelques pistes pour avancer dans ce but
  2. To be sure we speak about the same thing, that's into a prestashop 1.6.0.9, and my hooks works fine with my custom themes and customs modules But, if I don't add thoses lines, the module won't be transplanted. Exemple with the blockcart module, with thoses lines that's ok, but without no public function install() { if ( parent::install() == false // || $this->registerHook('top') == false || $this->registerHook('header') == false || $this->registerHook('actionCartListOverride') == false /* Thoses line are needed to be able to use the hook */ || $this->registerHook('displayTopLeft') == false || $this->registerHook('displayTopRight') == false /* FIN */ || Configuration::updateValue('PS_BLOCK_CART_AJAX', 1) == false || Configuration::updateValue('PS_BLOCK_CART_XSELL_LIMIT', 12) == false || Configuration::updateValue('PS_BLOCK_CART_SHOW_CROSSSELLING', 1) == false) return false; return true; } and a bit more down : public function hookDisplayTopLeft($params) { $params['blockcart_top'] = true; return $this->hookTop($params); } public function hookDisplayTopRight($params) { $params['blockcart_top'] = true; return $this->hookTop($params); } The error code say "This module can't be transplant on this hook"
  3. Hello I created a custom theme, in prestashop 1.6.0.9, and I add two new hooks in it. My new hooks works fine, but I have a problem on an important point. I can't transplant any natives modules in them, only modules I created or I modified to include the two new hooks work fine for transplantation. So it's a way to do that, without core modification ? Thanks for your help.
  4. Bonjour à tous Dans le cadre de la création d'un thème perso, en prestashop 1.6.0.9, j'ai voulu créer des hooks perso. J'y suis parfaitement arrivé, cependant je bloque sur un point essentiel par la suite, c'est de pouvoir les utiliser pour y greffer des modules natifs à Prestashop ou que je n'ai pas développé ou modifié moi même auparavant. Existe il un moyen de faire ceci sans modifier le moteur Prestashop, ou sans modifier les modules que je souhaite greffer par moi même ? Dois je faire des overrides/modules/ dans mon dossier thème, pour toussssssss les modules que je souhaite rendre greffable sur mes nouveaux hooks perso ? Merci d'avance.
  5. Bonjour à tous, Je viens à vous concernant un petit problème technique concernant le fonctionnement des hooks ... J'ai développé mon propre thème, et sur celui ci j'ai voulu intégrer des hooks perso. Cependant j'ai la surprise de ne pas réussir à retrouver mon hook dans l’ascenseur sur la page "Greffer un module" ... Pour autant leur existence est bien validée en SQL, et je peut même les utiliser sur le liveEdit ... A noter que j'ai essayé la création de ces hooks aussi bien par insertion MySQL que par installation dans un module ... Et que les seules traces que je retrouve de mes hooks sont dans la table ps_hook (rien dans les alias et autres), et sur le liveEdit (absent de toutes les autres pages permettant la gestion des points d'accroche) Alors si quelqu'un aurait une explication, ou une piste me permettant de mieux comprendre ^^' Merci d'avance.
  6. Merci pour ta réponse, j'ai d'ailleurs téléchargés tes deux modules pratique pour débuguer. Oui la table contient bien une valeur, j'ai revérifié. Je me suis rendu compte de mon erreur ! J'ai fait des erreurs dans le nom de mes variables tout simplement ^^' Trop de variables, je me suis emmêler les pinceaux ... Donc voici ma méthode pour récupérer une valeur sql : $query='SELECT `data` FROM `'._DB_PREFIX_.'manouvelletable` WHERE `option` = \'ZC_HEALTHBAND_DATA\';'; $ZC_HEALTHBAND_DATA = Db::getInstance()->getValue($query); $helper->fields_value['ZC_HEALTHBAND_DATA'] = $ZC_HEALTHBAND_DATA; Problème résolu
  7. Bonjour, Je viens à vous car je bloque sur cette étape de la création de mon module. J'utilise le $helper natif à Prestashop pour générer mes formulaires de configuration relatif à mon module. J'arrive parfaitement à récupérer, ou mettre à jour les variables par la fonction native, "Configuration::get" cependant pour des raisons de taille de champs limité sur la table ps_configuration, j'ai créé des valeurs sur une table sql nouvelle, et j'aimerais pouvoir récupérer ces valeurs dans mon formulaire. Donc mon module contient ce code dans la fonction $helper : $helper = new HelperForm(); [..] $helper->fields_value['ZC_PREFOOTERBAND_DATA'] = Configuration::get('ZC_PREFOOTERBAND_DATA'); Et j'aimerais connaitre la méthode à employer pour récupérer la variable en consultant une autre table sql. J'ai tenté de procéder par ce biais, mais sans succès : $query='SELECT `data` FROM `'._DB_PREFIX_.'manouvelletable` WHERE `option` = \'ZC_PREFOOTERBAND_DATA\';'; $sql = Db::getInstance()->getValue($query); $helper->fields_value['ZC_PREFOOTERBAND_DATA'] = $sql; ou même $query='SELECT `data` FROM `'._DB_PREFIX_.'manouvelletable` WHERE `option` = \'ZC_PREFOOTERBAND_DATA\';'; $sql = Db::getInstance()->ExecuteS($query); $helper->fields_value['ZC_PREFOOTERBAND_DATA'] = $sql; mais sans succès, mon champs reste vierge sur mon formulaire de configuration ... Si quelqu'un pourrait me donner une piste, ce serait sympathique
  8. Bonjour à tous Je viens à vous car je cherche à modifier la facture au format PDF en y incluant le montant total restant à payer. En effet, j'ai cherché comment faire avec smarty, mais je n'ai pas encore assez d'expérience pour trouver la solution par moi même, alors je viens vers vous ^^ J'ai cherché et tenté deux choses : La première étant de faire un calcule directement sur la page en travaillant sur les variables présentes que sont pour le total de la facture {displayPrice currency=$order->id_currency price=$order_detail.total_price_tax_incl} et pour les transactions {displayPrice price=$payment->amount La seconde étant en récupérant directement une variable existante déjà, et que j'ai vue en fonctionnement dans la partie administration (section documents d'une commande). Dans le template (/admin/themes/default/template/controllers/orders/_documents.tpl) et j'ai trouvé ceci => {displayPrice price=$document->getRestPaid() currency=$currency->id} Cependant quand je tente de l'inclure dans mon tpl de la facture, (/pdf/invoice.tpl), j'ai droit à une belle page en erreur. Si quelqu'un à déjà fait ce genre de manipulation ou pourrais me guider j'en serais très heureux et reconnaissant
×
×
  • Create New...