[Résolu]Récupérer variable d'une autre instance de module dans mm page -
heriquet - 25/06/2012
Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: #1.10.3
#~ Url du site :
#~ Hébergeur / Soft :
#~ Informations Système :
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~
Bonjour,
Je suis en train de chercher une méthode propre pour récupérer une valeur passée à l'appel d'un module (appel réalisé via un lien créé par $this->CreateFrontendLink).
J'ai besoin d'une valeur passée dynamiquement dans une action d'une autre instance du même module.
Il s'agit en fait de l'ID du détail du contenu à afficher. Et j'aimerais en quelque sorte faire une variable "globale" pour tous les modules de la page en cours.
Est-ce que cette pratique est possible ? Et si oui, comment ? J'ai vu que les valeurs étaient toutes dans $_REQUEST mais je n'ai pas trop envie d'aller chipoter en direct dans cette variable.
D'avance un grand merci !
[Résolu]Récupérer variable d'une autre instance de module dans mm page -
bess - 25/06/2012
tout est toujours disponible dans $params[]
regarde si ca te convient
[Résolu]Récupérer variable d'une autre instance de module dans mm page -
heriquet - 25/06/2012
Justement non ;-).
$params te donne les paramètres passés à l'instance courante du module, pas les paramètres passés à d'autres instances du module.
Pour me dépanner, à défaut de rien et sans avoir le temps de chercher pendant des jours, j'ai écrit le code suivant (mais qui d'un point de vue conceptuel n'est pas une solution recommandable) :
Code :
[== PHP ==]
$estate_id = '';
$lang = '';
// get estate_id
foreach ($_REQUEST as $key=>$val)
{
if(preg_match("/".preg_quote('estate_id') .'$/', $key))
{
$prefix = substr($key, 0, 7);
if(isset($_REQUEST[$prefix.'module']))
{
$module = $_REQUEST[$prefix.'module'];
if($module === $this->GetName() && $_REQUEST[$prefix.'action'] === 'estate_view')
{
$estate_id = $_REQUEST[$prefix.'estate_id'];
$lang = $_REQUEST[$prefix.'lang'];
}
}
}
}
Mais c'est vraiment du dépannage quoi...
[Résolu]Récupérer variable d'une autre instance de module dans mm page -
bess - 25/06/2012
ouais, je vois pas comment faire du coup
[Résolu]Récupérer variable d'une autre instance de module dans mm page -
heriquet - 25/06/2012
Ok... Bah si quelqu'un a une meilleur solution ;-).
La mienne est barbare mais à le mérite d'exister...
[Résolu]Récupérer variable d'une autre instance de module dans mm page -
heriquet - 26/06/2012
Et bien voila. Ma fonctionnalité est terminée et le module est maintenant entièrement multilingue. J'ai couplé mon module à MleCMS pour pouvoir switcher d'une langue à l'autre au sein d'un même contenu. L'output se fait avec des url réécrites et sur des pages différentes.