[isidorus-cvs] r65 - trunk/src/ajax/javascripts
Lukas Giessmann
lgiessmann at common-lisp.net
Thu Jun 25 10:23:02 UTC 2009
Author: lgiessmann
Date: Thu Jun 25 06:23:01 2009
New Revision: 65
Log:
ajax-client: fixed a bug that occurs if an existing association(-type) doesn't match any constraint
Modified:
trunk/src/ajax/javascripts/datamodel.js
Modified: trunk/src/ajax/javascripts/datamodel.js
==============================================================================
--- trunk/src/ajax/javascripts/datamodel.js (original)
+++ trunk/src/ajax/javascripts/datamodel.js Thu Jun 25 06:23:01 2009
@@ -2743,7 +2743,6 @@
this.__error__.insert({"before" : role.getFrame()})
}
role.hideAddButton();
-
}
},
"__createFromContent__" : function(contents){
@@ -4096,6 +4095,7 @@
function makeTypes(myself, typeContent, xtypescopes)
{
var types = new Array();
+ var matched = false;
for(var i = 0; xtypescopes && i !== xtypescopes.length; ++i){
var xtype = xtypescopes[i].nameType;
if(!xtype) xtype = xtypescopes[i].occurrenceType;
@@ -4104,11 +4104,14 @@
types.push(xtype[j]);
if(typeContent && typeContent[0] === xtype[j]){
var selected = xtype[j];
+ matched = true;
if(types.length !== 0) types[types.length - 1] = types[0];
types[0] = selected;
}
}
}
+ if(matched === false && typeContent && typeContent.length !== 0) types.unshift(typeContent);
+
if(types.length === 0 && typeContent && typeContent.length !== 0) types = typeContent;
if(!types || types.length === 0) types = new Array("");
myself.__type__ = new Object();
More information about the Isidorus-cvs
mailing list