THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

Rejoignez la communauté sur le Discord Thelia : https://discord.gg/YgwpYEE3y3

Offline

#1 Module View + Module comment

(10-07-2015 23:22:53)


Bonjour j'ai un soucis avec ces 2 modules
Pour un produit j'ai du utiliser une page different que celle par defaut
avec le module view au lieu d'utiliser la page product.html, j'utilise product-produit.html

sur ce produit je souhaite activer le module comment

mais j'obtiens l'erreur suivante

 1/1 InvalidArgumentException in FrontHook.php line 154: Reference not found

    in FrontHook.php line 154
    at FrontHook->getParams(object(HookRenderBlockEvent)) in FrontHook.php line 67
    at FrontHook->showComment(object(HookRenderBlockEvent)) in FrontHook.php line 52
    at FrontHook->onShowBlockComment(object(HookRenderBlockEvent))
    at call_user_func(array(object(FrontHook), 'onShowBlockComment'), object(HookRenderBlockEvent)) in EventDispatcher.php line 164
    at EventDispatcher->doDispatch(array(array(object(FrontHook), 'onShowBlockComment')), 'hook.1.product.additional', object(HookRenderBlockEvent)) in EventDispatcher.php line 53
    at EventDispatcher->dispatch('hook.1.product.additional', object(HookRenderBlockEvent)) in ContainerAwareEventDispatcher.php line 167
    at ContainerAwareEventDispatcher->dispatch('hook.1.product.additional', object(HookRenderBlockEvent)) in Hook.php line 215
    at Hook->processHookBlock(array('name' => 'product.additional', 'product' => '1', 'fields' => 'id,class,title,content'), null, object(Smarty_Internal_Template), true) in smarty_internal_templatebase.php(157) : eval()'d code line 736
    at content_55a043e435d527_60727869(object(Smarty_Internal_Template)) in smarty_internal_templatebase.php line 188
    at Smarty_Internal_TemplateBase->fetch('file:product-produit.html') in SmartyParser.php line 365
    at SmartyParser->internalRenderer('file', 'product-produit.html', array(), true) in SmartyParser.php line 389
    at SmartyParser->render('product-produit.html') in ViewListener.php line 70
    at ViewListener->onKernelView(object(GetResponseForControllerResultEvent))
    at call_user_func(array(object(ViewListener), 'onKernelView'), object(GetResponseForControllerResultEvent)) in EventDispatcher.php line 164
    at EventDispatcher->doDispatch(array(array(object(ViewListener), 'beforeKernelView'), array(object(ViewListener), 'onKernelView')), 'kernel.view', object(GetResponseForControllerResultEvent)) in EventDispatcher.php line 53
    at EventDispatcher->dispatch('kernel.view', object(GetResponseForControllerResultEvent)) in ContainerAwareEventDispatcher.php line 167
    at ContainerAwareEventDispatcher->dispatch('kernel.view', object(GetResponseForControllerResultEvent)) in HttpKernel.php line 122
    at HttpKernel->handleRaw(object(Request), '1') in HttpKernel.php line 61
    at HttpKernel->handle(object(Request), '1', true) in TheliaHttpKernel.php line 77
    at TheliaHttpKernel->handle(object(Request), '1', true) in ParamInitMiddleware.php line 86
    at ParamInitMiddleware->handle(object(Request), '1', true) in SessionMiddleware.php line 80
    at SessionMiddleware->handle(object(Request), '1', true) in StackedHttpKernel.php line 23
    at StackedHttpKernel->handle(object(Request), '1', true) in Kernel.php line 188
    at Kernel->handle(object(Request)) in index_dev.php line 38

si je copie le contenue du fichier product-produit.html  dans product.html
et renvoie le produit vers la view product.html, il n'y a pas d'erreur

donc le contenue n'est pas en cause mais le nom du fichier appele

je ne vois pas comment resoudre cela
une idee ?

Merci

Thelia 2.1.5
View 2.0.0
Comment 0.1

Last edited by zzuutt (11-07-2015 00:11:51)

Offline


En effet, le module Comment n'est pas compatible avec View, car il s'appuie sur le nom de la vue pour récupérer l'identifiant du produit.

Tu peux modifier Comment/Hook/FrontHook.php,  et remplacer en ligne 148

            } elseif ($this->getRequest()->query->has($ref . '_id')) {
                $refId = intval($this->getRequest()->query->get($ref . '_id'));
            }

par

            } elseif ($this->getRequest()->query->has($ref . '_id')) {
                $refId = intval($this->getRequest()->query->get($ref . '_id'));
            } elseif ($this->getRequest()->query->has('product_id')) {
                $refId = intval($this->getRequest()->query->get('product_id'));
            }

OpenStudio Toulouse

Offline


Merci Roadster31

Je n'ai plus l'erreur,
$ref et $refId sont bien renseignees
mais l'onglet ne s'affiche pas

Offline

Offline


non tout est ok
j'avais oublie de rajouter les nom de mes pages dans les parametres du module comments 'references autorisees'

Grand Merci !!

Offline


J'ai bien fait la manip dans fronthook.php
Les réferences autorisées sont la.

Par contre, l'onglet commentaires n'apparait pas sur les produits avec un template spécifique.
Le module comment ne semble pas chargé sur ces pages.

Une idée?

Offline


Bon,
en cherchant à modifier les références autorisées, j'ai ça qui est apparu :
Donnée manquante ou non valide : [Activé] , [Modération] , [Références autorisées] , [Seuls les clients] , [Uniquement vérifié] , [Relance client] , [Notifier les administrateurs de la boutique des nouveaux commentaires] , [success_url] , [error_url] , [error_message]

Du coup, j'ai dupliqué /local/modules/Comment/templates/frontOffice/default en /local/modules/Comment/templates/frontOffice/lenomdemontemplate,
le message à disparu mais les deux modules ne veulent toujours pas fonctionner ensemble.

Offline


Bonjour,
J'ai le même problème : j'utilise le module view et souhaite ajouter le module comment. Et là, patatras, ça ne fonctionne plus, le site est en vrac.
Il n'y a aucun moyen de les faire tourner ensemble ? ou alors, je n'ai pas encore testé, cela fonctionnerait-il mieux en Thélia 2.4.3 (je teste sur un thelia 2.3.4) ?
Quelqu'un y est-il arrivé ? Y a-t-il un autre module de commentaires (j'ai trop besoin de view pour m'en passer) ?
Merci,
Al.


v. 1.5.4 - v 2.3.4 - v 2.4.3