X-Git-Url: http://git.ithinksw.org/extjs.git/blobdiff_plain/6a7e4474cba9d8be4b2ec445e10f1691f7277c50..0494b8d9b9bb03ab6c22b34dae81261e3cd7e3e6:/src/data/XmlReader.js diff --git a/src/data/XmlReader.js b/src/data/XmlReader.js index 085a5759..acf6cb55 100644 --- a/src/data/XmlReader.js +++ b/src/data/XmlReader.js @@ -1,8 +1,8 @@ /*! - * Ext JS Library 3.2.0 - * Copyright(c) 2006-2010 Ext JS, Inc. - * licensing@extjs.com - * http://www.extjs.com/license + * Ext JS Library 3.3.1 + * Copyright(c) 2006-2010 Sencha Inc. + * licensing@sencha.com + * http://www.sencha.com/license */ /** * @class Ext.data.XmlReader @@ -125,15 +125,16 @@ Ext.extend(Ext.data.XmlReader, Ext.data.DataReader, { * @return {Ext.data.Response} An instance of {@link Ext.data.Response} */ readResponse : function(action, response) { - var q = Ext.DomQuery, - doc = response.responseXML; + var q = Ext.DomQuery, + doc = response.responseXML, + root = doc.documentElement || doc; // create general Response instance. var res = new Ext.data.Response({ action: action, - success : this.getSuccess(doc), - message: this.getMessage(doc), - data: this.extractData(q.select(this.meta.record, doc) || q.select(this.meta.root, doc), false), + success : this.getSuccess(root), + message: this.getMessage(root), + data: this.extractData(q.select(this.meta.record, root) || q.select(this.meta.root, root), false), raw: doc }); @@ -213,6 +214,9 @@ Ext.extend(Ext.data.XmlReader, Ext.data.DataReader, { createAccessor : function(){ var q = Ext.DomQuery; return function(key) { + if (Ext.isFunction(key)) { + return key; + } switch(key) { case this.meta.totalProperty: return function(root, def){