Bonjour,
Je vous conseille de lire l'article sur la création de plugin oxwall sur
https://docs.oxwall.org/dev:crash-course
Le routage se fait dans les fichiers init.php de votre plugin et les redirections peuvent se faire dans le contrôleur
Un reroutage peut être fait par une ligne de type :
$this->redirect(OW::getRouter()->urlForRoute('monmodule.index'));
Vous pouvez obtenir les infos dans votre contrôleur ou composant (classe de votre plugin et fonction __construct) avec :
exemple pour récupération uid et prénom de l'utilisateur en cours :
$userid = OW::getUser()->getId();
$prenom = BOL_UserService::getInstance()->getDisplayName($userid);
Exemple pour récupérer l'âge dans les questions de profil :
$questionNameList = array ('birthdate');
$questionData = BOL_QuestionService::getInstance()->getQuestionData(array($userid), $questionNameList);
if ($questionData[$userid]['birthdate']) {
$birthdate = $questionData[$userid]['birthdate'];
$date = UTIL_DateTime::parseDate($birthdate, UTIL_DateTime::MYSQL_DATETIME_DATE_FORMAT);
$age = UTIL_DateTime::getAge($date['year'], $date['month'], $date['day']);
} else {
$age = '';
}
Pour l'affichage si besoin (ou debug) Oxwall utilise smarty, vous devez donc précharger votre code par un
contrôleur ou composant si vous voulez afficher ces informations dans un template
html donc il faut impérativement ajouter :
$this->assign('prenom', $prenom);
$this->assign('age', $age);
en fin de fonction pour pouvoir afficher les informations age et prenom dans le template
Vous pourrez ensuite afficher le prenom et age (par exemple) dans votre template html :
{$prenom}
{if $age}
({$age} ans)
{/if}
Je vous conseillerai de télécharger le plugin gratuit skeleton destiné aux développeurs qui contient pas mal de code exemple pour démarrer :
http://www.oxwall.org/store/item/695
Cordialement,
S. MORICO