J'ai un peu améliorer la documentation pour que l'éditeur de serveur script comprenne mieux WegasDashboard.registerVariable
Quelques exemples d'utilisations un peu tordus :
Afficher le mail d'un joueur dans le dashboard.
On se base sur aucune variable, donc on peut passer undefined.
La valeur envoyée au client est calculée par la mapFn a partir du teamId.
WegasDashboard.registerVariable(undefined, {
id: 'email',
label: 'mail',
active: false,
mapFn: function (teamId) {
var t = Team.find(teamId);
if (t) {
var player = t.getAnyLivePlayer();
if (player) {
var user = player.getUser();
if (user) {
var account = user.getMainAccount();
if (account) {
var email = account.getEmail();
if (email) {
return email;
}
}
}
}
}
// par exemple les tests players ou les équipes vides
return "pas trouvé..."
}
})
le même, mais avec un engine js un peu moins vieux :
Dans le pmg, il y des phases de jeu (de 1 à 4) et dans chaque phase, il y a des périodes (de 1 à n)
La phase courante est stockée dans currentPhase, les périodes de chaque phases sont stockées
dans periodPhase1, periodPhase2, periodPhase3 et periodPhase4.
Dans le dashboard, on veut afficher le numéro de la période courante en fonction de la phase courante.
On register d'abord currentPhase, puis on ajoute des `periodPhaseX' en extraArgs.
On est obligé de fournir un id car currentPhase est déjà enregistré dans le dashboard.
La mapFN va se baser sur les instances de toutes ces variables pour retourner la bonne valeur.
Amélioration du typage
J'ai un peu améliorer la documentation pour que l'éditeur de serveur script comprenne mieux WegasDashboard.registerVariable
Quelques exemples d'utilisations un peu tordus :
Afficher le mail d'un joueur dans le dashboard. On se base sur aucune variable, donc on peut passer
undefined
. La valeur envoyée au client est calculée par la mapFn a partir du teamId.le même, mais avec un engine js un peu moins vieux :
Dans le pmg, il y des phases de jeu (de 1 à 4) et dans chaque phase, il y a des périodes (de 1 à n) La phase courante est stockée dans
currentPhase
, les périodes de chaque phases sont stockées dansperiodPhase1
,periodPhase2
,periodPhase3
etperiodPhase4
. Dans le dashboard, on veut afficher le numéro de la période courante en fonction de la phase courante.On register d'abord
currentPhase
, puis on ajoute des `periodPhaseX' en extraArgs. On est obligé de fournir un id car currentPhase est déjà enregistré dans le dashboard. La mapFN va se baser sur les instances de toutes ces variables pour retourner la bonne valeur.Dans la même veine, on veut afficher le nombre de questions auxquelles les joueurs ont déjà répondu pour la période courante: