window.OpenAjax||(OpenAjax=new function(){var d={};this.hub=d;d.implementer="http://openajax.org";d.implVersion="2.0";d.specVersion="2.0";d.implExtraData={};var k={};d.libraries=k;d.registerLibrary=function(b,a,c,f){k[b]={prefix:b,namespaceURI:a,version:c,extraData:f};this.publish("org.openajax.hub.registerLibrary",k[b])};d.unregisterLibrary=function(b){this.publish("org.openajax.hub.unregisterLibrary",k[b]);delete k[b]};d._subscriptions={c:{},s:[]};d._cleanup=[];d._subIndex=0;d._pubDepth=0;d.subscribe=
function(b,a,c,f,g){c||(c=window);var h=b+"."+this._subIndex,a={scope:c,cb:a,fcb:g,data:f,sid:this._subIndex++,hdl:h};this._subscribe(this._subscriptions,b.split("."),0,a);return h};d.publish=function(b,a){var c=b.split(".");this._pubDepth++;this._publish(this._subscriptions,c,0,b,a);this._pubDepth--;if(0<this._cleanup.length&&0==this._pubDepth){for(c=0;c<this._cleanup.length;c++)this.unsubscribe(this._cleanup[c].hdl);delete this._cleanup;this._cleanup=[]}};d.unsubscribe=function(b){var b=b.split("."),
a=b.pop();this._unsubscribe(this._subscriptions,b,0,a)};d._subscribe=function(b,a,c,f){var g=a[c];if(c==a.length)b.s.push(f);else{if("undefined"==typeof b.c)b.c={};"undefined"==typeof b.c[g]&&(b.c[g]={c:{},s:[]});this._subscribe(b.c[g],a,c+1,f)}};d._publish=function(b,a,c,f,g,h){if("undefined"!=typeof b&&(c!=a.length&&(this._publish(b.c[a[c]],a,c+1,f,g,h),this._publish(b.c["*"],a,c+1,f,g,h),b=b.c["**"]),"undefined"!=typeof b)){b=b.s;a=b.length;for(c=0;c<a;c++)if(b[c].cb){var i=b[c].scope,e=b[c].cb,
d=b[c].fcb,k=b[c].data;"string"==typeof e&&(e=i[e]);"string"==typeof d&&(d=i[d]);(!d||d.call(i,f,g,k))&&e.call(i,f,g,k,h)}}};d._unsubscribe=function(b,a,c,f){if("undefined"!=typeof b)if(c<a.length){var g=b.c[a[c]];this._unsubscribe(g,a,c+1,f);if(0==g.s.length){for(var h in g.c)return;delete b.c[a[c]]}}else{b=b.s;a=b.length;for(c=0;c<a;c++)if(f==b[c].sid){0<this._pubDepth?(b[c].cb=null,this._cleanup.push(b[c])):b.splice(c,1);break}}}},OpenAjax.hub.registerLibrary("OpenAjax","http://openajax.org/hub",
"1.0",{}));
window.PageBus||(PageBus=new function(){var d=0,k=[],b=this;this.version="2.0.0";this._debug=function(){debugger};_badParm=function(){throw Error("OpenAjax.hub.Errors.BadParameters");};_valPub=function(a){(null==a||-1!=a.indexOf("*")||-1!=a.indexOf("..")||"."==a.charAt(0)||"."==a.charAt(a.length-1))&&_badParm()};_valSub=function(a){for(var a=a.split("."),c=a.length,f=0;f<c;f++)(""==a[f]||-1!=a[f].indexOf("*")&&"*"!=a[f]&&"**"!=a[f])&&_badParm(),"**"==a[f]&&f<c-1&&_badParm();return a};_cacheIt=function(a){return a&&
"object"==typeof a&&a.PageBus&&a.PageBus.cache};_TopicMatcher=function(){this._items={}};_TopicMatcher.prototype.store=function(a,c){var f=a.split("."),b=f.length;_recurse=function(h,d){if(d==b)h["."]={topic:a,value:c};else{var e=f[d];h[e]||(h[e]={});_recurse(h[e],d+1)}};_recurse(this._items,0)};_TopicMatcher.prototype.match=function(a,c){var b=a.split("."),g=b.length,d=[];_recurse=function(a,e){if(a){var j;if(e==g)j=a;else{_recurse(a[b[e]],e+1);if(c)return;"**"!=b[e]&&_recurse(a["*"],e+1);j=a["**"]}j&&
j["."]&&d.push(j["."])}};_recurse(this._items,0);return d};_TopicMatcher.prototype.exists=function(a,c){var b=a.split("."),d=b.length,h=!1;_recurse=function(a,e){if(a){var j;if(e==d)j=a;else{_recurse(a[b[e]],e+1);if(h||c||"**"!=b[e]&&(_recurse(a["*"],e+1),h))return;j=a["**"]}j&&j["."]&&(h=!0)}};_recurse(this._items,0);return h};_TopicMatcher.prototype.clear=function(a){var c=a.split("."),b=c.length;_recurse=function(a,d){if(a)if(d==b)a["."]&&delete a["."];else{_recurse(a[c[d]],d+1);for(var i in a[c[d]])return;
delete a[c[d]]}};_recurse(this._items,0)};_TopicMatcher.prototype.wildcardMatch=function(a){var c=a.split("."),b=c.length,d=[];_recurse=function(a,i){var e=c[i];if(a&&i!=b)if("**"==e)for(var j in a)"."!=j&&(e=a[j],e["."]&&d.push(e["."]),_recurse(e,i));else if("*"==e)for(j in a)"."!=j&&"**"!=j&&(e=a[j],i==b-1?e["."]&&d.push(e["."]):_recurse(e,i+1));else(e=a[e])&&(i==b-1?e["."]&&d.push(e["."]):_recurse(e,i+1))};_recurse(this._items,0);return d};this._refs={};this._doCache=new _TopicMatcher;this._caches=
new _TopicMatcher;_isCaching=function(a){return b._doCache.exists(a,!1)};_copy=function(a){var c;if("object"==typeof a){if(null==a)return null;if(a.constructor==Array){c=[];for(var b=0;b<a.length;b++)c[b]=_copy(a[b]);return c}if(a.constructor==Date)return c=new Date,c.setDate(a.getDate()),c;c={};for(b in a)c[b]=_copy(a[b]);return c}return a};this._add=function(a,c){var b;b=this._doCache.match(a,!0);0<b.length?b=b[0].value:(b={rc:0},this._doCache.store(a,b));b.rc++;this._refs[c]=a};this._remove=function(a){var b=
this._refs[a];if(b&&(delete this._refs[a],a=this._doCache.match(b,!0),0!=a.length&&(a[0].value.rc--,0==a[0].value.rc))){this._doCache.clear(b);b=this._caches.wildcardMatch(b);for(a=0;a<b.length;a++)this._doCache.exists(b[a].topic,!1)||this._caches.clear(b[a].topic)}};this.subscribe=function(a,b,d,g){g||(g=null);var h=OpenAjax.hub.subscribe(a,d,b,g);if(_cacheIt(g)){this._add(a,h);for(var a=this.query(a),i=0;i<a.length;i++)try{d.call(b?b:window,a[i].topic,a[i].value,g)}catch(e){PageBus._debug()}}return h};
this.publish=function(a,b){_valPub(a);k.push({n:a,m:b,d:d+1});if(_isCaching(a))try{this._caches.store(a,b)}catch(f){_badParm()}if(0==d)for(;0<k.length;){var g=k.shift();g.n.split(".");try{d=g.d,OpenAjax.hub.publish(g.n,g.m),d=0}catch(h){throw d=0,h;}}};this.unsubscribe=function(a){try{this._remove(a),OpenAjax.hub.unsubscribe(a)}catch(b){_badParm()}};this.store=function(a,b){if(!_isCaching(a))throw Error("PageBus.cache.NoCache");this.publish(a,b)};this.query=function(a){try{return _valSub(a),this._caches.wildcardMatch(a)}catch(b){_badParm()}}},
OpenAjax.hub.registerLibrary("PageBus","http://tibco.com/PageBus","1.2.0",{}));"undefined"==typeof Shop88Event&&(Shop88Event=function(){return{publish:function(d,k){for(var b=WinManager.getAll(),a=0;a<b.length;a++)b[a].PageBus&&b[a].PageBus.publish(d,k)},subscribe:function(d,k,b){PageBus.subscribe(d,null,k,b)}}}());

