function addIndiceLine(root) { var data = getUIFromDom(root); return data.addLine(); } function removeIndiceLine(root) { var data = getUIFromDom(root); var obj = $("#"+root); data.onDelete(); obj.next().remove(); //

var parent = obj.parent(); obj.remove(); parent.remove(); } class UISimpleListElement extends UIContainer { initEnd() { this.root.parent().append(HTMLBuilder.hrDiv({class: _col_class(12)})); if(this.parent.inline==undefined || this.parent.inline==false) this.foreach(function(k, o){ $("#"+o.rootId).removeClass(_col_class(12)); }); } } registerUiClass("listelement", UISimpleListElement); class UISimpleList extends UIContainer { init() { var v = this.rootId; this.root.empty(); var r = HTMLBuilder.div() r.append(HTMLBuilder.h4(this.title, {class: _col_class()+"noPaddingTop"})); r.append(HTMLBuilder.iconButton("add", {class: "green col s1 toBottom"}, function(e){addIndiceLine(v);} )) r.append(HTMLBuilder.hrDiv({class: _col_class(12)})); this.root.append(r); this.root.addClass(_subcat_class) this.compteur=0; } addLine() { this.compteur++; var id = this.rootId+"_"+this.compteur; var subRoot= HTMLBuilder.div(); subRoot.append(HTMLBuilder.iconButton("remove", {class:"red toBottom "+_col_class(1)}, function(){removeIndiceLine(id);})); var r = HTMLBuilder.div({class: _row_class+_col_class(11), id:id}); subRoot.append(r); this.root.append(subRoot) return this.index[id]=new UISimpleListElement(this.rootData, this,id, this); } reset() { for (var key in this.index) { if (this.index.hasOwnProperty(key)) { removeIndiceLine(key); } } } getJson() { var obj = super.getJson(); return Object.values(obj); } setJson(e) { this.reset(); for(var i = 0; i