Commit a866236f authored by nicolas's avatar nicolas

changer les tags sur le même niveau

Difficulté à accéder au parent. Résolé par un fix qui associe un objet à
un nouvel attribut parent. à voir comment améliorer.
parent 95356953
......@@ -88,10 +88,11 @@
condition:'', //(voir validation ci-dessus)
tag:'', //Validation: peut avoir un tag seulement si l'axe n'est pas principal, de plus le tag doit être le même pour ses siblings. Succession ordonnée, sans ordre, simultaméité, accumulation
goto:null, //reference de l'axe vers lequel il renvoie
focused:0 // pas sûr que c'est l'endroit où mettre ceci.
focused:0, // pas sûr que c'est l'endroit où mettre ceci.
// Pas vraiment une propriété de l'objet.
// Si l'objet est focused, il faut que la classe axis-focus
// soit sur ses éléments handle et options.
parent:null
},
validate: function (attrs) {
if ( attrs.id > 3 ) {
......@@ -138,7 +139,7 @@
'change #terme' : 'editProperty',
'change #alternative' : 'editProperty',
'change #alternative_mode' : 'editProperty',
'change #tag' : 'editProperty',
'change #tag' : 'editSiblings',
'change .focused' : 'editProperty',
'change #indications' : 'editProperty',
'relocate': function(event, index) { console.log("relocated"); console.log(this.model, index)}
......@@ -176,7 +177,33 @@
var $target = $(e.target);
console.log('value: ', $target.val(), $target.attr('id'));
this.model.save($target.attr('id'),$target.val());
console.log(this.model.get("focused"));
// var children = this.model.get('children');
// console.log(children.models[0].get("title"));
// children.models.each(function(){
// console.log($(this).get('title'));
// });
// for(var i=0;i<children.models.length;i++){
// // console.log(children.models[i].set("title","blah blah"));
// }
// var chld=this.model._relations.children;
set_parents(this.model);
// console.log(this.model.get("focused"));
//return false;
},
editSiblings: function(e){
var $target = $(e.target);
console.log('value: ', $target.val(), $target.attr('id'));
var siblings=[];
var prnt=this.model.get("parent");
if(!prnt){
console.log("root level");
}else{
console.log(prnt);
for(var i=0;i<prnt.attributes.children.models.length;i++){
prnt.attributes.children.models[i].set("tag",$target.val());
}
}
// console.log(this.model.get("focused"));
//return false;
},
addAxis: function(){
......@@ -212,7 +239,7 @@
},
initialize: function(){
// this.listenTo(this.model, 'change', this.render);
this.listenTo(this.model, 'change', this.render);
}
});
......@@ -406,6 +433,18 @@
}
});
function set_parents(obj){
console.log("setting parents");
console.log(obj);
for(var i=0;i<obj.attributes.children.models.length;i++){
var newobj=obj.attributes.children.models[i];
console.log(newobj);
console.log("setting parents of "+newobj.get("title"));
newobj.set("parent",obj);
set_parents(newobj);
}
}
var myBaseView = new W.BaseView();
myBaseView.render();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment