19/03/2013, 04:11:16
Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: 1.11.4
#~ Url du site :
#~ Hébergeur / Soft : wampserver
#~ Informations Système :
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~
Bonjour,
Je suis actuellement en train de créer un module sur mesure pour un projet de site assez complexe contenant un moteur de recherche multi-critères interne.
Ce module nommé Re7 dispose donc d'une action permettant l'affichage du formulaire dans le site et j'aimerais pouvoir préciser lors de l'appel du module la page de destination sur laquelle sera affiché les résultats lors de la validation en POST
Afin de récupérer l'id à passer en paramètre lors de la création du formulaire avec la ligne suivante (la variable $dest_page) :
Code :
[== PHP ==]
$smarty->assign('startform', $this->CreateFrontendFormStart($id, $dest_page, 're7-seach-form', 'post'));
J'utilise le code suivant (Repris du module News, dernière version : 2.12.10) dans mon script PHP "action.search-form.php" :
Code :
[== PHP ==]
// Page du résultat de la recherche. Utilise la page en cours par défaut.
$dest_page = $returnid;
if (isset($params['resultpage']))
{
$manager = $gCms->GetHierarchyManager();
$node = $manager->sureGetNodeByAlias($params['resultpage']);
print_r($node);
if (isset($node))
$dest_page = $node->getID();
else
$node = $manager->sureGetNodeById($params['resultpage']);
if (isset($node))
$dest_page = $params['resultpage'];
}
Action appelée via l'appel Smarty suivant :
Code :
[== HTML ==]
{Re7 action="search-form" resultpage="recherche-runs"}
L'appel se fait correctement et le paramètre "resultpage" est bien récupéré (vérifié avec un simple die($params["resultpage"]) dans action.search-form.php.
Par contre sureGetNodeByAlias ne renvoi rien alors que la page existe bien dans mon arborescence et qu'elle porte bien comme alias "recherche-runs".
A noter que j'utilise le module multilingue MleCMS (v 1.11.4, dernière version)
Pouvez-vous m’éclairer sur ce problème ? Merci.