Passage de smarty 2 à smarty 3 & 4
Alain T
Alain T

Passage de smarty 2 à smarty 3 & 4

Alain T 639
06/10 23:28
#1
Alain T 639
06/10 23:28
Hello,
J'ai bien relu le tuto concernant le sujet Passage de smarty 2 à smarty 3 & 4 mais j'avoue que je bloque...
j'étais en PHP 8.1.28 et je suis redescendu en PHP 7.4.x comme indiqué dans le tuto.
Effectivement, en mode débug, les erreurs sont plus explicite qu'en version 8... mais pas assez pour moi.
Ensuite, j'ai remplacé tout les templates dans les surcharges des modules tels que pm, profile, system par ceux trouvé sur la distribution XOOPS 2.5.11, histoire d'avoir des templates avec smarty en version 3 sur les modules "de bases"

Le problème :
Je cherche à utiliser un thème, développé en Bootstrap 4 et qui fonctionne très bien sur un XOOPS 2.5.10, mais pas en XOOPS 2.5.11

Voici la ... (snif) toute première erreur :
Citation :
Erreur: SmartyCompilerException: Syntax error in template "file:/themes/mon-theme/tpl/modal-login.tpl" on line 19 "" - Unexpected ".", expected one of: "}>" dans le fichier /class/libraries/vendor/smarty/smarty/libs/sysplugins/smarty_internal_templatecompilerbase.php ligne 19

J'édite donc le fichier \themes\mon-theme\tpl\modal-login.tpl et ligne 19 on a :
<form action="<{xoAppUrl user.php}>" method="post">

Et... je ne sais pas ce qu'il faut faire...

Greg ?
Re : Passage de smarty 2 à smarty 3 & 4
Alain T
Alain T

Re : Passage de smarty 2 à smarty 3 & 4

Alain T 639
06/10 23:34
#2
Alain T 639
06/10 23:34
Haaaaaaaaa
le temps de rédiger ce post...
et la solution est sous mes yeux... grâce à ce super tuto !!!

Erreur xoAppUrl

<form action="<{xoAppUrl user.php}>" method="post">

devient
<form action="<{xoAppUrl 'user.php'}>" method="post">


Merci Greg !
Re : Passage de smarty 2 à smarty 3 & 4
Grégory M
Grégory M

Re : Passage de smarty 2 à smarty 3 & 4

Grégory M 176
07/10 21:44
#3
Grégory M 176
07/10 21:44
Salut,

Cool, si tu as trouvé!

A+
--------------------
http://www.monxoops.fr
Re : Passage de smarty 2 à smarty 3 & 4
Alain T
Alain T

Re : Passage de smarty 2 à smarty 3 & 4

Alain T 639
07/10 21:56
#4
Alain T 639
07/10 21:56
Oui mais sur des thèmes proposés par Heyula, j'ai réglé les problèmes grace àu tuto,
MAIS à la fin j'obtiens le message suivant :
Citation :
Error : ParseError: syntax error, unexpected 'use' (T_USE)

Et ce pour pour au moins 4 de ses thèmes.
Par exemple Factory (voir https://xoops.org/modules/themes/)
Une idée ?
Sans quoi j'ouvrirai un sujet sur le site international.
Re : Passage de smarty 2 à smarty 3 & 4
Grégory M
Grégory M

Re : Passage de smarty 2 à smarty 3 & 4

Grégory M 176
08/10 17:07
#5
Grégory M 176
08/10 17:07
L'erreur ParseError: syntax error, unexpected 'use' (T_USE) en PHP indique qu'il y a un problème de syntaxe lié à l'utilisation du mot-clé use.

Le souci doit venir d'un code présent dans le thème
--------------------
http://www.monxoops.fr
Re : Passage de smarty 2 à smarty 3 & 4
Grégory M
Grégory M

Re : Passage de smarty 2 à smarty 3 & 4

Grégory M 176
08/10 17:15
#6
Grégory M 176
08/10 17:15
A ce que je peux voir rapidement, le problème vient probablement du fichier: date-news.tpl (j'ai pris le thème "UpConstruction") car il y a du code PHP avec le mot clé "use". Si tu n'as pas le module "Publisher" alors le problème vient d'ici!!! enlève dans theme.tpl la ligne:
<{include file="$theme_name/date-news.tpl"}>
--------------------
http://www.monxoops.fr
Re : Passage de smarty 2 à smarty 3 & 4
Alain T
Alain T

Re : Passage de smarty 2 à smarty 3 & 4

Alain T 639
08/10 23:55
#7
Alain T 639
08/10 23:55
Ok merci, je comprends mieux le principe.
Tu as cherché "use" dans le template principal qui faisait un appel vers un fichier date-news.tpl qui utilisait le module publisher que je n'ai pas installé.

Ok, ok !