]> CyberLeo.Net >> Repos - Github/sugarcrm.git/blob - include/javascript/yui3/build/datasource/datasource-get.js
Release 6.5.0
[Github/sugarcrm.git] / include / javascript / yui3 / build / datasource / datasource-get.js
1 /*
2 Copyright (c) 2010, Yahoo! Inc. All rights reserved.
3 Code licensed under the BSD License:
4 http://developer.yahoo.com/yui/license.html
5 version: 3.3.0
6 build: 3167
7 */
8 YUI.add("datasource-get",function(B){var A=function(){A.superclass.constructor.apply(this,arguments);};B.DataSource.Get=B.extend(A,B.DataSource.Local,{_defRequestFn:function(G){var F=this.get("source"),D=this.get("get"),C=B.guid().replace(/\-/g,"_"),E=this.get("generateRequestCallback"),H;this._last=C;YUI.Env.DataSource.callbacks[C]=B.bind(function(I){delete YUI.Env.DataSource.callbacks[C];delete B.DataSource.Local.transactions[G.tId];var J=this.get("asyncMode")!=="ignoreStaleResponses"||this._last===C;if(J){this.fire("data",B.mix({data:I},G));}else{}},this);F+=G.request+E.call(this,C);B.DataSource.Local.transactions[G.tId]=D.script(F,{autopurge:true,onFailure:B.bind(function(I,J){delete YUI.Env.DataSource.callbacks[C];delete B.DataSource.Local.transactions[I.tId];I.error=new Error(J.msg||"Script node data failure");this.fire("data",I);},this,G),onTimeout:B.bind(function(I,J){delete YUI.Env.DataSource.callbacks[C];delete B.DataSource.Local.transactions[I.tId];I.error=new Error(J.msg||"Script node data timeout");this.fire("data",I);},this,G)});return G.tId;},_generateRequest:function(C){return"&"+this.get("scriptCallbackParam")+"=YUI.Env.DataSource.callbacks."+C;}},{NAME:"dataSourceGet",ATTRS:{get:{value:B.Get,cloneDefaultValue:false},asyncMode:{value:"allowAll"},scriptCallbackParam:{value:"callback"},generateRequestCallback:{value:function(){return this._generateRequest.apply(this,arguments);}}}});YUI.namespace("Env.DataSource.callbacks");},"3.3.0",{requires:["datasource-local","get"]});