X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=server%2Forg.argeo.slc.ria%2Fsrc%2Fargeo-ria-lib%2Fslc%2Fclass%2Forg%2Fargeo%2Fslc%2Fria%2Fexecution%2FSpec.js;h=8cd45832ad45ea5cb75663596c18086ca4d5880a;hb=5c48c26d57322223774890dbc66a6aca533d894f;hp=b72623546f6ac68182b3bd6f2df0deff7b64df0e;hpb=d8e9131cdd34b663a03008df8eb97616694259ce;p=gpl%2Fargeo-slc.git diff --git a/server/org.argeo.slc.ria/src/argeo-ria-lib/slc/class/org/argeo/slc/ria/execution/Spec.js b/server/org.argeo.slc.ria/src/argeo-ria-lib/slc/class/org/argeo/slc/ria/execution/Spec.js index b72623546..8cd45832a 100644 --- a/server/org.argeo.slc.ria/src/argeo-ria-lib/slc/class/org/argeo/slc/ria/execution/Spec.js +++ b/server/org.argeo.slc.ria/src/argeo-ria-lib/slc/class/org/argeo/slc/ria/execution/Spec.js @@ -38,12 +38,25 @@ qx.Class.define("org.argeo.slc.ria.execution.Spec", { }, members : { + hasEditableValues : function(){ + var values = this.getValues(); + if(!values) return false; + var editables = 0; + for(var key in values){ + var valueObj = values[key]; + if(!valueObj.getHidden() && !valueObj.getFrozen()){ + editables ++; + } + } + return (editables > 0); + }, + /** * Init the object from an XML representation * @param xmlNode {Node} Castor representation of this object */ _applyXmlNode : function(xmlNode){ - // Parse now + // Parse now this.setName(org.argeo.ria.util.Element.getSingleNodeText(xmlNode, this.self(arguments).XPATH_NAME)); var values = org.argeo.ria.util.Element.selectNodes(xmlNode, this.self(arguments).XPATH_VALUES); var parsedValues = {}; @@ -60,12 +73,7 @@ qx.Class.define("org.argeo.slc.ria.execution.Spec", { * @return {String} An XML String */ toXml : function(){ - var valuesXml = ''; - var values = this.getValues(); - for(var key in values){ - valuesXml += values[key].toAttributeXml(); - } - return ''+valuesXml+''; + return org.argeo.ria.util.Element.getXMLString(this.getXmlNode()); } }