diff --git a/static/js/timeline.js b/static/js/timeline.js index 6b96961d2deba2423b40775b176f8056855aef57..154d46a9b82a7b023c0f188d885b8f912258052d 100644 --- a/static/js/timeline.js +++ b/static/js/timeline.js @@ -1,10 +1,15 @@ let handler = { - // listReigns: "../static/json/list_reigns_sauv.json", listReigns: "../static/json/list_reigns.json", copyListReigns: Object(), items: new vis.DataSet(), groups: new vis.DataSet(), - titlesList: ["Roi de France", + titlesGroup: [ + "Roi de France", + "Roi des Francs à la fin du IVe siècle", + "Roi des Francs" + ], + titlesList: [ + "Roi de France", "Roi des Francs à la fin du IVe siècle", "Roi des Francs", "Roi des Francs saliens", @@ -17,6 +22,7 @@ let handler = { "Roi des Francs d'Austrasie et de Bourgogne", "Roi des Lombards" ], + titlesId: {}, kingsList: [], // liste des reignes traités pour éviter les doublons quand deux mêmes règnes reignIds: [], @@ -28,19 +34,32 @@ let handler = { return date; }, init: function() { - style: 'color: red; top: 0px !important;' + // initiate titlesId ("reignName": groupId) + titleCnt = 1; + for(var i = 0; i < handler.titlesList.length; i++){ + if (handler.titlesGroup.includes(handler.titlesList[i])){ + handler.titlesId[handler.titlesList[i]] = 1; + } + else { + titleCnt += 1; + handler.titlesId[handler.titlesList[i]] = titleCnt; + } + } handler.groups.add({ id: 1, - content: "Roi de France / Roi des Francs" + content: "Roi de France / Roi des Francs", + subgroupStack: {'severalReigns': true, "oneReign": false} }); - // ATTENTION : change si titlesList change (titleNb bouge et id aussi sûrement) - for (var titleNb = 3; titleNb < handler.titlesList.length; titleNb++) { - handler.groups.add({ - id: titleNb-1, - content: handler.titlesList[titleNb], - subgroupStack: {'severalReigns': true, "oneReign": false} - }); + for (var i = 0; i < handler.titlesList.length; i++) { + var id = handler.titlesId[handler.titlesList[i]]; + if (id != 1){ + handler.groups.add({ + id: id, + content: handler.titlesList[i], + subgroupStack: {'severalReigns': true, "oneReign": false} + }); + } } $.get(handler.listReigns, function(reigns) { @@ -78,25 +97,16 @@ let handler = { if (start == copyStart && end == copyEnd && reigns[i]["title"] == copyTitle) { severalReigns = true; } - // faire un background pour tous sauf les deux en tag ? } - // list kings to have one color per king if (handler.kingsList.findIndex((element) => element == content) == -1) { handler.kingsList.push(content); } kingNb = handler.kingsList.findIndex((element) => element == content)+1; - for (var j = 0; j < handler.titlesList.length; j++) { - var groupId = ""; - // ATTENTION : peut changer si titlesList change - if (handler.titlesList[j] == "Roi de France" || handler.titlesList[j] == "Roi des Francs" || handler.titlesList[j] == "Roi des Francs à la fin du IVe siècle") { - groupId = 1; - } else { - groupId = j; - } + var groupId = handler.titlesId[handler.titlesList[j]]; if (reigns[i]["title"] == handler.titlesList[j]) { if (severalReigns) { handler.items.add({ @@ -124,10 +134,8 @@ let handler = { } break; } - } } - } } });