Affichage du contenu d'un conteneur
Les actions qui modifient le contenu doivent forcer un render
This commit is contained in:
@ -224,7 +224,8 @@ export class RdDUtility {
|
||||
Handlebars.registerHelper('le', str => Grammar.articleDetermine(str));
|
||||
Handlebars.registerHelper('un', str => Grammar.articleIndetermine(str));
|
||||
Handlebars.registerHelper('accord', (genre, ...args) => Grammar.accord(genre, args));
|
||||
Handlebars.registerHelper('buildConteneur', (objet) => { return RdDUtility.buildConteneur(objet); });
|
||||
Handlebars.registerHelper('buildConteneur', (objet) => { return new Handlebars.SafeString(RdDUtility.buildConteneur(objet)); });
|
||||
Handlebars.registerHelper('buildContenu', (objet) => { return new Handlebars.SafeString(RdDUtility.buildContenu(objet, 1, true)); });
|
||||
Handlebars.registerHelper('caseTmr-label', coord => TMRUtility.getTMRLabel(coord));
|
||||
Handlebars.registerHelper('caseTmr-type', coord => TMRUtility.getTMRType(coord));
|
||||
Handlebars.registerHelper('typeTmr-name', coord => TMRUtility.typeTmrName(coord));
|
||||
@ -355,15 +356,9 @@ export class RdDUtility {
|
||||
|
||||
/* -------------------------------------------- */
|
||||
static filterItemsPerTypeForSheet(formData) {
|
||||
formData.materiel = this.checkNull(formData.itemsByType['objet']);
|
||||
formData.conteneurs = this.checkNull(formData.itemsByType['conteneur']);
|
||||
formData.armes = this.checkNull(formData.itemsByType['arme']);
|
||||
formData.armures = this.checkNull(formData.itemsByType['armure']);
|
||||
formData.livres = this.checkNull(formData.itemsByType['livre']);
|
||||
formData.potions = this.checkNull(formData.itemsByType['potion']);
|
||||
formData.ingredients = this.checkNull(formData.itemsByType['ingredient']);
|
||||
formData.munitions = this.checkNull(formData.itemsByType['munition']);
|
||||
formData.herbes = this.checkNull(formData.itemsByType['herbe']);
|
||||
|
||||
RdDUtility.filterEquipementParType(formData);
|
||||
|
||||
formData.sorts = this.checkNull(formData.itemsByType['sort']);
|
||||
formData.signesdraconiques = this.checkNull(formData.itemsByType['signedraconique']);
|
||||
formData.queues = this.checkNull(formData.itemsByType['queue']);
|
||||
@ -371,34 +366,50 @@ export class RdDUtility {
|
||||
formData.ombres = this.checkNull(formData.itemsByType['ombre']);
|
||||
formData.tetes = this.checkNull(formData.itemsByType['tete']);
|
||||
formData.taches = this.checkNull(formData.itemsByType['tache']);
|
||||
formData.monnaie = this.checkNull(formData.itemsByType['monnaie']);
|
||||
formData.nourritureboissons = this.checkNull(formData.itemsByType['nourritureboisson']);
|
||||
formData.meditations = this.checkNull(formData.itemsByType['meditation']);
|
||||
formData.chants = this.checkNull(formData.itemsByType['chant']);
|
||||
formData.danses = this.checkNull(formData.itemsByType['danse']);
|
||||
formData.musiques = this.checkNull(formData.itemsByType['musique']);
|
||||
formData.oeuvres = this.checkNull(formData.itemsByType['oeuvre']);
|
||||
formData.jeux = this.checkNull(formData.itemsByType['jeu']);
|
||||
formData.gemmes = this.checkNull(formData.itemsByType['gemme']);
|
||||
|
||||
formData.recettescuisine = this.checkNull(formData.itemsByType['recettecuisine']);
|
||||
formData.recettesAlchimiques = this.checkNull(formData.itemsByType['recettealchimique']);
|
||||
formData.maladies = this.checkNull(formData.itemsByType['maladie']);
|
||||
formData.poisons = this.checkNull(formData.itemsByType['poison']);
|
||||
formData.possessions = this.checkNull(formData.itemsByType['possession']);
|
||||
formData.maladiesPoisons = formData.maladies.concat( formData.poisons);
|
||||
formData.objets = formData.conteneurs.concat(formData.materiel)
|
||||
formData.competences = (formData.itemsByType.competence ?? []).concat(formData.itemsByType.competencecreature ?? []);
|
||||
}
|
||||
|
||||
static filterEquipementParType(formData) {
|
||||
formData.conteneurs = this.checkNull(formData.itemsByType['conteneur']);
|
||||
|
||||
formData.materiel = this.checkNull(formData.itemsByType['objet']);
|
||||
formData.armes = this.checkNull(formData.itemsByType['arme']);
|
||||
formData.armures = this.checkNull(formData.itemsByType['armure']);
|
||||
formData.munitions = this.checkNull(formData.itemsByType['munition']);
|
||||
formData.livres = this.checkNull(formData.itemsByType['livre']);
|
||||
formData.potions = this.checkNull(formData.itemsByType['potion']);
|
||||
formData.ingredients = this.checkNull(formData.itemsByType['ingredient']);
|
||||
formData.herbes = this.checkNull(formData.itemsByType['herbe']);
|
||||
formData.monnaie = this.checkNull(formData.itemsByType['monnaie']);
|
||||
formData.monnaie.sort(Monnaie.triValeurDenier());
|
||||
formData.nourritureboissons = this.checkNull(formData.itemsByType['nourritureboisson']);
|
||||
formData.gemmes = this.checkNull(formData.itemsByType['gemme']);
|
||||
|
||||
formData.objets = formData.conteneurs
|
||||
.concat(formData.materiel)
|
||||
.concat(formData.armes)
|
||||
.concat(formData.armures)
|
||||
.concat(formData.munitions)
|
||||
.concat(formData.livres)
|
||||
.concat(formData.potions)
|
||||
.concat(formData.herbes)
|
||||
.concat(formData.ingredients)
|
||||
.concat(formData.herbes)
|
||||
.concat(formData.monnaie)
|
||||
.concat(formData.nourritureboissons)
|
||||
.concat(formData.gemmes)
|
||||
.concat(formData.monnaie);
|
||||
formData.competences = (formData.itemsByType.competence ?? []).concat(formData.itemsByType.competencecreature ?? []);
|
||||
formData.monnaie.sort(Monnaie.triValeurDenier());
|
||||
.concat(formData.gemmes);
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
@ -456,18 +467,27 @@ export class RdDUtility {
|
||||
//console.log("OBJ:", objet);
|
||||
let str = Handlebars.partials['systems/foundryvtt-reve-de-dragon/templates/actor-sheet-inventaire-conteneur.html']({ item: objet });
|
||||
if (objet.type == 'conteneur') {
|
||||
//console.log("ITEM DISPLAYED", objet );
|
||||
if (this.getAfficheContenu(objet._id)) {
|
||||
str = str + "<ul class='item-list alterne-list item-display-show list-item-margin" + niveau + "'>";
|
||||
} else {
|
||||
str = str + "<ul class='item-list alterne-list item-display-hide list-item-margin" + niveau + "'>";
|
||||
}
|
||||
for (let subItem of objet.subItems) {
|
||||
str = str + this.buildConteneur(subItem, niveau + 1);
|
||||
}
|
||||
str = str + "</ul>";
|
||||
const afficherContenu = this.getAfficheContenu(objet._id);
|
||||
str = str + RdDUtility.buildContenu(objet, niveau, afficherContenu);
|
||||
}
|
||||
return new Handlebars.SafeString(str);
|
||||
return str;
|
||||
}
|
||||
|
||||
static buildContenu(objet, niveau, afficherContenu) {
|
||||
if (!niveau) niveau = 1;
|
||||
objet.niveau = niveau;
|
||||
let strContenu = "";
|
||||
//console.log("ITEM DISPLAYED", objet );
|
||||
if (afficherContenu) {
|
||||
strContenu = "<ul class='item-list alterne-list item-display-show list-item-margin" + niveau + "'>";
|
||||
} else {
|
||||
strContenu = "<ul class='item-list alterne-list item-display-hide list-item-margin" + niveau + "'>";
|
||||
}
|
||||
for (let subItem of objet.subItems) {
|
||||
strContenu = strContenu + this.buildConteneur(subItem, niveau + 1);
|
||||
}
|
||||
strContenu = strContenu + "</ul>";
|
||||
return strContenu;
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
|
Reference in New Issue
Block a user