Index: extensions/SMWHalo/scripts/QueryInterface/QIHelper.js =================================================================== --- extensions/SMWHalo/scripts/QueryInterface/QIHelper.js (revision 0) +++ extensions/SMWHalo/scripts/QueryInterface/QIHelper.js (revision 0) @@ -3002,7 +3002,7 @@ for (e = 0; e < naryVals.length; e++) pgroup.addValue(naryVals[e][0], naryVals[e][1], naryVals[e][2]); } - pgroup.setUnits(propdef.getUnits()); +if(propdef) pgroup.setUnits(propdef.getUnits()); var subqueryIds = propList.getSubqueryIds(propList.getIndex(pchain.join('.'))); if (!subqueryIds) subqueryIds = new Array(); @@ -3528,14 +3528,35 @@ this.range = Array(); this.length = 0; }, + array_merge : function(a, b) { + if(!a) return b; + if(!b) return a; + var c = a; + for(var i=0;i<b.length;++i) { + var found = false; + for(var j=0;j<c.length;++j) { + if(c[j] == b[i]) { + found = true; + break; + } + } + if(!found) c.push(b[i]); + } + return c; + }, add : function(name, pgroup, subqueries, type, range) { + subqueries = (subqueries) ? subqueries : []; + range = (range) ? range : ""; for ( var i = 0; i < this.name.length; i++) { if (this.name[i] == name) { this.pgroup[i] = pgroup; - this.subqueries[i] = (subqueries) ? subqueries : []; +// this.subqueries[i] = (subqueries) ? subqueries : []; + // array merge instead of overwrite + this.subqueries[i] = this.array_merge(this.subqueries[i], subqueries); this.type[i] = type; - this.range[i] = (range) ? range : ""; +// this.range[i] = (range) ? range : ""; + this.range[i] = this.array_merge(this.range[i], range); return; } } Index: extensions/SMWHalo/scripts/OntologyBrowser/generalTools.js =================================================================== --- extensions/SMWHalo/scripts/OntologyBrowser/generalTools.js (revision 0) +++ extensions/SMWHalo/scripts/OntologyBrowser/generalTools.js (revision 0) @@ -714,6 +714,8 @@ }, remove: function() { + var e=this.pendingIndicator; + if($(e).parentNode) Element.remove(this.pendingIndicator); } } \ No newline at end of file