/*
	Copyright (c) 2004-2010, The Dojo Foundation All Rights Reserved.
	Available via Academic Free License >= 2.1 OR the modified BSD license.
	see: http://dojotoolkit.org/license for details
*/

/*
	This is an optimized version of Dojo, built for deployment and not for
	development. To get sources and documentation, please visit:

		http://dojotoolkit.org
*/

if(!dojo._hasResource["dojo.string"]){dojo._hasResource["dojo.string"]=true;dojo.provide("dojo.string");dojo.string.rep=function(_1,_2){if(_2<=0||!_1){return "";}var _3=[];for(;;){if(_2&1){_3.push(_1);}if(!(_2>>=1)){break;}_1+=_1;}return _3.join("");};dojo.string.pad=function(_4,_5,ch,_6){if(!ch){ch="0";}var _7=String(_4),_8=dojo.string.rep(ch,Math.ceil((_5-_7.length)/ch.length));return _6?_7+_8:_8+_7;};dojo.string.substitute=function(_9,_a,_b,_c){_c=_c||dojo.global;_b=_b?dojo.hitch(_c,_b):function(v){return v;};return _9.replace(/\$\{([^\s\:\}]+)(?:\:([^\s\:\}]+))?\}/g,function(_d,_e,_f){var _10=dojo.getObject(_e,false,_a);if(_f){_10=dojo.getObject(_f,false,_c).call(_c,_10,_e);}return _b(_10,_e).toString();});};dojo.string.trim=String.prototype.trim?dojo.trim:function(str){str=str.replace(/^\s+/,"");for(var i=str.length-1;i>=0;i--){if(/\S/.test(str.charAt(i))){str=str.substring(0,i+1);break;}}return str;};}if(!dojo._hasResource["dojo.data.util.filter"]){dojo._hasResource["dojo.data.util.filter"]=true;dojo.provide("dojo.data.util.filter");dojo.data.util.filter.patternToRegExp=function(_11,_12){var rxp="^";var c=null;for(var i=0;i<_11.length;i++){c=_11.charAt(i);switch(c){case "\\":rxp+=c;i++;rxp+=_11.charAt(i);break;case "*":rxp+=".*";break;case "?":rxp+=".";break;case "$":case "^":case "/":case "+":case ".":case "|":case "(":case ")":case "{":case "}":case "[":case "]":rxp+="\\";default:rxp+=c;}}rxp+="$";if(_12){return new RegExp(rxp,"mi");}else{return new RegExp(rxp,"m");}};}if(!dojo._hasResource["dojo.data.util.sorter"]){dojo._hasResource["dojo.data.util.sorter"]=true;dojo.provide("dojo.data.util.sorter");dojo.data.util.sorter.basicComparator=function(a,b){var r=-1;if(a===null){a=undefined;}if(b===null){b=undefined;}if(a==b){r=0;}else{if(a>b||a==null){r=1;}}return r;};dojo.data.util.sorter.createSortFunction=function(_13,_14){var _15=[];function _16(_17,dir,_18,s){return function(_19,_1a){var a=s.getValue(_19,_17);var b=s.getValue(_1a,_17);return dir*_18(a,b);};};var _1b;var map=_14.comparatorMap;var bc=dojo.data.util.sorter.basicComparator;for(var i=0;i<_13.length;i++){_1b=_13[i];var _1c=_1b.attribute;if(_1c){var dir=(_1b.descending)?-1:1;var _1d=bc;if(map){if(typeof _1c!=="string"&&("toString" in _1c)){_1c=_1c.toString();}_1d=map[_1c]||bc;}_15.push(_16(_1c,dir,_1d,_14));}}return function(_1e,_1f){var i=0;while(i<_15.length){var ret=_15[i++](_1e,_1f);if(ret!==0){return ret;}}return 0;};};}if(!dojo._hasResource["dojo.data.util.simpleFetch"]){dojo._hasResource["dojo.data.util.simpleFetch"]=true;dojo.provide("dojo.data.util.simpleFetch");dojo.data.util.simpleFetch.fetch=function(_20){_20=_20||{};if(!_20.store){_20.store=this;}var _21=this;var _22=function(_23,_24){if(_24.onError){var _25=_24.scope||dojo.global;_24.onError.call(_25,_23,_24);}};var _26=function(_27,_28){var _29=_28.abort||null;var _2a=false;var _2b=_28.start?_28.start:0;var _2c=(_28.count&&(_28.count!==Infinity))?(_2b+_28.count):_27.length;_28.abort=function(){_2a=true;if(_29){_29.call(_28);}};var _2d=_28.scope||dojo.global;if(!_28.store){_28.store=_21;}if(_28.onBegin){_28.onBegin.call(_2d,_27.length,_28);}if(_28.sort){_27.sort(dojo.data.util.sorter.createSortFunction(_28.sort,_21));}if(_28.onItem){for(var i=_2b;(i<_27.length)&&(i<_2c);++i){var _2e=_27[i];if(!_2a){_28.onItem.call(_2d,_2e,_28);}}}if(_28.onComplete&&!_2a){var _2f=null;if(!_28.onItem){_2f=_27.slice(_2b,_2c);}_28.onComplete.call(_2d,_2f,_28);}};this._fetchItems(_20,_26,_22);return _20;};}if(!dojo._hasResource["dojo.date.stamp"]){dojo._hasResource["dojo.date.stamp"]=true;dojo.provide("dojo.date.stamp");dojo.date.stamp.fromISOString=function(_30,_31){if(!dojo.date.stamp._isoRegExp){dojo.date.stamp._isoRegExp=/^(?:(\d{4})(?:-(\d{2})(?:-(\d{2}))?)?)?(?:T(\d{2}):(\d{2})(?::(\d{2})(.\d+)?)?((?:[+-](\d{2}):(\d{2}))|Z)?)?$/;}var _32=dojo.date.stamp._isoRegExp.exec(_30),_33=null;if(_32){_32.shift();if(_32[1]){_32[1]--;}if(_32[6]){_32[6]*=1000;}if(_31){_31=new Date(_31);dojo.forEach(dojo.map(["FullYear","Month","Date","Hours","Minutes","Seconds","Milliseconds"],function(_34){return _31["get"+_34]();}),function(_35,_36){_32[_36]=_32[_36]||_35;});}_33=new Date(_32[0]||1970,_32[1]||0,_32[2]||1,_32[3]||0,_32[4]||0,_32[5]||0,_32[6]||0);if(_32[0]<100){_33.setFullYear(_32[0]||1970);}var _37=0,_38=_32[7]&&_32[7].charAt(0);if(_38!="Z"){_37=((_32[8]||0)*60)+(Number(_32[9])||0);if(_38!="-"){_37*=-1;}}if(_38){_37-=_33.getTimezoneOffset();}if(_37){_33.setTime(_33.getTime()+_37*60000);}}return _33;};dojo.date.stamp.toISOString=function(_39,_3a){var _3b=function(n){return (n<10)?"0"+n:n;};_3a=_3a||{};var _3c=[],_3d=_3a.zulu?"getUTC":"get",_3e="";if(_3a.selector!="time"){var _3f=_39[_3d+"FullYear"]();_3e=["0000".substr((_3f+"").length)+_3f,_3b(_39[_3d+"Month"]()+1),_3b(_39[_3d+"Date"]())].join("-");}_3c.push(_3e);if(_3a.selector!="date"){var _40=[_3b(_39[_3d+"Hours"]()),_3b(_39[_3d+"Minutes"]()),_3b(_39[_3d+"Seconds"]())].join(":");var _41=_39[_3d+"Milliseconds"]();if(_3a.milliseconds){_40+="."+(_41<100?"0":"")+_3b(_41);}if(_3a.zulu){_40+="Z";}else{if(_3a.selector!="time"){var _42=_39.getTimezoneOffset();var _43=Math.abs(_42);_40+=(_42>0?"-":"+")+_3b(Math.floor(_43/60))+":"+_3b(_43%60);}}_3c.push(_40);}return _3c.join("T");};}if(!dojo._hasResource["dojo.data.ItemFileReadStore"]){dojo._hasResource["dojo.data.ItemFileReadStore"]=true;dojo.provide("dojo.data.ItemFileReadStore");dojo.declare("dojo.data.ItemFileReadStore",null,{constructor:function(_44){this._arrayOfAllItems=[];this._arrayOfTopLevelItems=[];this._loadFinished=false;this._jsonFileUrl=_44.url;this._ccUrl=_44.url;this.url=_44.url;this._jsonData=_44.data;this.data=null;this._datatypeMap=_44.typeMap||{};if(!this._datatypeMap["Date"]){this._datatypeMap["Date"]={type:Date,deserialize:function(_45){return dojo.date.stamp.fromISOString(_45);}};}this._features={"dojo.data.api.Read":true,"dojo.data.api.Identity":true};this._itemsByIdentity=null;this._storeRefPropName="_S";this._itemNumPropName="_0";this._rootItemPropName="_RI";this._reverseRefMap="_RRM";this._loadInProgress=false;this._queuedFetches=[];if(_44.urlPreventCache!==undefined){this.urlPreventCache=_44.urlPreventCache?true:false;}if(_44.hierarchical!==undefined){this.hierarchical=_44.hierarchical?true:false;}if(_44.clearOnClose){this.clearOnClose=true;}if("failOk" in _44){this.failOk=_44.failOk?true:false;}},url:"",_ccUrl:"",data:null,typeMap:null,clearOnClose:false,urlPreventCache:false,failOk:false,hierarchical:true,_assertIsItem:function(_46){if(!this.isItem(_46)){throw new Error("dojo.data.ItemFileReadStore: Invalid item argument.");}},_assertIsAttribute:function(_47){if(typeof _47!=="string"){throw new Error("dojo.data.ItemFileReadStore: Invalid attribute argument.");}},getValue:function(_48,_49,_4a){var _4b=this.getValues(_48,_49);return (_4b.length>0)?_4b[0]:_4a;},getValues:function(_4c,_4d){this._assertIsItem(_4c);this._assertIsAttribute(_4d);return (_4c[_4d]||[]).slice(0);},getAttributes:function(_4e){this._assertIsItem(_4e);var _4f=[];for(var key in _4e){if((key!==this._storeRefPropName)&&(key!==this._itemNumPropName)&&(key!==this._rootItemPropName)&&(key!==this._reverseRefMap)){_4f.push(key);}}return _4f;},hasAttribute:function(_50,_51){this._assertIsItem(_50);this._assertIsAttribute(_51);return (_51 in _50);},containsValue:function(_52,_53,_54){var _55=undefined;if(typeof _54==="string"){_55=dojo.data.util.filter.patternToRegExp(_54,false);}return this._containsValue(_52,_53,_54,_55);},_containsValue:function(_56,_57,_58,_59){return dojo.some(this.getValues(_56,_57),function(_5a){if(_5a!==null&&!dojo.isObject(_5a)&&_59){if(_5a.toString().match(_59)){return true;}}else{if(_58===_5a){return true;}}});},isItem:function(_5b){if(_5b&&_5b[this._storeRefPropName]===this){if(this._arrayOfAllItems[_5b[this._itemNumPropName]]===_5b){return true;}}return false;},isItemLoaded:function(_5c){return this.isItem(_5c);},loadItem:function(_5d){this._assertIsItem(_5d.item);},getFeatures:function(){return this._features;},getLabel:function(_5e){if(this._labelAttr&&this.isItem(_5e)){return this.getValue(_5e,this._labelAttr);}return undefined;},getLabelAttributes:function(_5f){if(this._labelAttr){return [this._labelAttr];}return null;},_fetchItems:function(_60,_61,_62){var _63=this,_64=function(_65,_66){var _67=[],i,key;if(_65.query){var _68,_69=_65.queryOptions?_65.queryOptions.ignoreCase:false;var _6a={};for(key in _65.query){_68=_65.query[key];if(typeof _68==="string"){_6a[key]=dojo.data.util.filter.patternToRegExp(_68,_69);}else{if(_68 instanceof RegExp){_6a[key]=_68;}}}for(i=0;i<_66.length;++i){var _6b=true;var _6c=_66[i];if(_6c===null){_6b=false;}else{for(key in _65.query){_68=_65.query[key];if(!_63._containsValue(_6c,key,_68,_6a[key])){_6b=false;}}}if(_6b){_67.push(_6c);}}_61(_67,_65);}else{for(i=0;i<_66.length;++i){var _6d=_66[i];if(_6d!==null){_67.push(_6d);}}_61(_67,_65);}};if(this._loadFinished){_64(_60,this._getItemsArray(_60.queryOptions));}else{if(this._jsonFileUrl!==this._ccUrl){dojo.deprecated("dojo.data.ItemFileReadStore: ","To change the url, set the url property of the store,"+" not _jsonFileUrl.  _jsonFileUrl support will be removed in 2.0");this._ccUrl=this._jsonFileUrl;this.url=this._jsonFileUrl;}else{if(this.url!==this._ccUrl){this._jsonFileUrl=this.url;this._ccUrl=this.url;}}if(this.data!=null&&this._jsonData==null){this._jsonData=this.data;this.data=null;}if(this._jsonFileUrl){if(this._loadInProgress){this._queuedFetches.push({args:_60,filter:_64});}else{this._loadInProgress=true;var _6e={url:_63._jsonFileUrl,handleAs:"json-comment-optional",preventCache:this.urlPreventCache,failOk:this.failOk};var _6f=dojo.xhrGet(_6e);_6f.addCallback(function(_70){try{_63._getItemsFromLoadedData(_70);_63._loadFinished=true;_63._loadInProgress=false;_64(_60,_63._getItemsArray(_60.queryOptions));_63._handleQueuedFetches();}catch(e){_63._loadFinished=true;_63._loadInProgress=false;_62(e,_60);}});_6f.addErrback(function(_71){_63._loadInProgress=false;_62(_71,_60);});var _72=null;if(_60.abort){_72=_60.abort;}_60.abort=function(){var df=_6f;if(df&&df.fired===-1){df.cancel();df=null;}if(_72){_72.call(_60);}};}}else{if(this._jsonData){try{this._loadFinished=true;this._getItemsFromLoadedData(this._jsonData);this._jsonData=null;_64(_60,this._getItemsArray(_60.queryOptions));}catch(e){_62(e,_60);}}else{_62(new Error("dojo.data.ItemFileReadStore: No JSON source data was provided as either URL or a nested Javascript object."),_60);}}}},_handleQueuedFetches:function(){if(this._queuedFetches.length>0){for(var i=0;i<this._queuedFetches.length;i++){var _73=this._queuedFetches[i],_74=_73.args,_75=_73.filter;if(_75){_75(_74,this._getItemsArray(_74.queryOptions));}else{this.fetchItemByIdentity(_74);}}this._queuedFetches=[];}},_getItemsArray:function(_76){if(_76&&_76.deep){return this._arrayOfAllItems;}return this._arrayOfTopLevelItems;},close:function(_77){if(this.clearOnClose&&this._loadFinished&&!this._loadInProgress){if(((this._jsonFileUrl==""||this._jsonFileUrl==null)&&(this.url==""||this.url==null))&&this.data==null){}this._arrayOfAllItems=[];this._arrayOfTopLevelItems=[];this._loadFinished=false;this._itemsByIdentity=null;this._loadInProgress=false;this._queuedFetches=[];}},_getItemsFromLoadedData:function(_78){var _79=false,_7a=this;function _7b(_7c){var _7d=((_7c!==null)&&(typeof _7c==="object")&&(!dojo.isArray(_7c)||_79)&&(!dojo.isFunction(_7c))&&(_7c.constructor==Object||dojo.isArray(_7c))&&(typeof _7c._reference==="undefined")&&(typeof _7c._type==="undefined")&&(typeof _7c._value==="undefined")&&_7a.hierarchical);return _7d;};function _7e(_7f){_7a._arrayOfAllItems.push(_7f);for(var _80 in _7f){var _81=_7f[_80];if(_81){if(dojo.isArray(_81)){var _82=_81;for(var k=0;k<_82.length;++k){var _83=_82[k];if(_7b(_83)){_7e(_83);}}}else{if(_7b(_81)){_7e(_81);}}}}};this._labelAttr=_78.label;var i,_84;this._arrayOfAllItems=[];this._arrayOfTopLevelItems=_78.items;for(i=0;i<this._arrayOfTopLevelItems.length;++i){_84=this._arrayOfTopLevelItems[i];if(dojo.isArray(_84)){_79=true;}_7e(_84);_84[this._rootItemPropName]=true;}var _85={},key;for(i=0;i<this._arrayOfAllItems.length;++i){_84=this._arrayOfAllItems[i];for(key in _84){if(key!==this._rootItemPropName){var _86=_84[key];if(_86!==null){if(!dojo.isArray(_86)){_84[key]=[_86];}}else{_84[key]=[null];}}_85[key]=key;}}while(_85[this._storeRefPropName]){this._storeRefPropName+="_";}while(_85[this._itemNumPropName]){this._itemNumPropName+="_";}while(_85[this._reverseRefMap]){this._reverseRefMap+="_";}var _87;var _88=_78.identifier;if(_88){this._itemsByIdentity={};this._features["dojo.data.api.Identity"]=_88;for(i=0;i<this._arrayOfAllItems.length;++i){_84=this._arrayOfAllItems[i];_87=_84[_88];var _89=_87[0];if(!this._itemsByIdentity[_89]){this._itemsByIdentity[_89]=_84;}else{if(this._jsonFileUrl){throw new Error("dojo.data.ItemFileReadStore:  The json data as specified by: ["+this._jsonFileUrl+"] is malformed.  Items within the list have identifier: ["+_88+"].  Value collided: ["+_89+"]");}else{if(this._jsonData){throw new Error("dojo.data.ItemFileReadStore:  The json data provided by the creation arguments is malformed.  Items within the list have identifier: ["+_88+"].  Value collided: ["+_89+"]");}}}}}else{this._features["dojo.data.api.Identity"]=Number;}for(i=0;i<this._arrayOfAllItems.length;++i){_84=this._arrayOfAllItems[i];_84[this._storeRefPropName]=this;_84[this._itemNumPropName]=i;}for(i=0;i<this._arrayOfAllItems.length;++i){_84=this._arrayOfAllItems[i];for(key in _84){_87=_84[key];for(var j=0;j<_87.length;++j){_86=_87[j];if(_86!==null&&typeof _86=="object"){if(("_type" in _86)&&("_value" in _86)){var _8a=_86._type;var _8b=this._datatypeMap[_8a];if(!_8b){throw new Error("dojo.data.ItemFileReadStore: in the typeMap constructor arg, no object class was specified for the datatype '"+_8a+"'");}else{if(dojo.isFunction(_8b)){_87[j]=new _8b(_86._value);}else{if(dojo.isFunction(_8b.deserialize)){_87[j]=_8b.deserialize(_86._value);}else{throw new Error("dojo.data.ItemFileReadStore: Value provided in typeMap was neither a constructor, nor a an object with a deserialize function");}}}}if(_86._reference){var _8c=_86._reference;if(!dojo.isObject(_8c)){_87[j]=this._getItemByIdentity(_8c);}else{for(var k=0;k<this._arrayOfAllItems.length;++k){var _8d=this._arrayOfAllItems[k],_8e=true;for(var _8f in _8c){if(_8d[_8f]!=_8c[_8f]){_8e=false;}}if(_8e){_87[j]=_8d;}}}if(this.referenceIntegrity){var _90=_87[j];if(this.isItem(_90)){this._addReferenceToMap(_90,_84,key);}}}else{if(this.isItem(_86)){if(this.referenceIntegrity){this._addReferenceToMap(_86,_84,key);}}}}}}}},_addReferenceToMap:function(_91,_92,_93){},getIdentity:function(_94){var _95=this._features["dojo.data.api.Identity"];if(_95===Number){return _94[this._itemNumPropName];}else{var _96=_94[_95];if(_96){return _96[0];}}return null;},fetchItemByIdentity:function(_97){var _98,_99;if(!this._loadFinished){var _9a=this;if(this._jsonFileUrl!==this._ccUrl){dojo.deprecated("dojo.data.ItemFileReadStore: ","To change the url, set the url property of the store,"+" not _jsonFileUrl.  _jsonFileUrl support will be removed in 2.0");this._ccUrl=this._jsonFileUrl;this.url=this._jsonFileUrl;}else{if(this.url!==this._ccUrl){this._jsonFileUrl=this.url;this._ccUrl=this.url;}}if(this.data!=null&&this._jsonData==null){this._jsonData=this.data;this.data=null;}if(this._jsonFileUrl){if(this._loadInProgress){this._queuedFetches.push({args:_97});}else{this._loadInProgress=true;var _9b={url:_9a._jsonFileUrl,handleAs:"json-comment-optional",preventCache:this.urlPreventCache,failOk:this.failOk};var _9c=dojo.xhrGet(_9b);_9c.addCallback(function(_9d){var _9e=_97.scope?_97.scope:dojo.global;try{_9a._getItemsFromLoadedData(_9d);_9a._loadFinished=true;_9a._loadInProgress=false;_98=_9a._getItemByIdentity(_97.identity);if(_97.onItem){_97.onItem.call(_9e,_98);}_9a._handleQueuedFetches();}catch(error){_9a._loadInProgress=false;if(_97.onError){_97.onError.call(_9e,error);}}});_9c.addErrback(function(_9f){_9a._loadInProgress=false;if(_97.onError){var _a0=_97.scope?_97.scope:dojo.global;_97.onError.call(_a0,_9f);}});}}else{if(this._jsonData){_9a._getItemsFromLoadedData(_9a._jsonData);_9a._jsonData=null;_9a._loadFinished=true;_98=_9a._getItemByIdentity(_97.identity);if(_97.onItem){_99=_97.scope?_97.scope:dojo.global;_97.onItem.call(_99,_98);}}}}else{_98=this._getItemByIdentity(_97.identity);if(_97.onItem){_99=_97.scope?_97.scope:dojo.global;_97.onItem.call(_99,_98);}}},_getItemByIdentity:function(_a1){var _a2=null;if(this._itemsByIdentity){_a2=this._itemsByIdentity[_a1];}else{_a2=this._arrayOfAllItems[_a1];}if(_a2===undefined){_a2=null;}return _a2;},getIdentityAttributes:function(_a3){var _a4=this._features["dojo.data.api.Identity"];if(_a4===Number){return null;}else{return [_a4];}},_forceLoad:function(){var _a5=this;if(this._jsonFileUrl!==this._ccUrl){dojo.deprecated("dojo.data.ItemFileReadStore: ","To change the url, set the url property of the store,"+" not _jsonFileUrl.  _jsonFileUrl support will be removed in 2.0");this._ccUrl=this._jsonFileUrl;this.url=this._jsonFileUrl;}else{if(this.url!==this._ccUrl){this._jsonFileUrl=this.url;this._ccUrl=this.url;}}if(this.data!=null&&this._jsonData==null){this._jsonData=this.data;this.data=null;}if(this._jsonFileUrl){var _a6={url:this._jsonFileUrl,handleAs:"json-comment-optional",preventCache:this.urlPreventCache,failOk:this.failOk,sync:true};var _a7=dojo.xhrGet(_a6);_a7.addCallback(function(_a8){try{if(_a5._loadInProgress!==true&&!_a5._loadFinished){_a5._getItemsFromLoadedData(_a8);_a5._loadFinished=true;}else{if(_a5._loadInProgress){throw new Error("dojo.data.ItemFileReadStore:  Unable to perform a synchronous load, an async load is in progress.");}}}catch(e){throw e;}});_a7.addErrback(function(_a9){throw _a9;});}else{if(this._jsonData){_a5._getItemsFromLoadedData(_a5._jsonData);_a5._jsonData=null;_a5._loadFinished=true;}}}});dojo.extend(dojo.data.ItemFileReadStore,dojo.data.util.simpleFetch);}if(!dojo._hasResource["dojo.regexp"]){dojo._hasResource["dojo.regexp"]=true;dojo.provide("dojo.regexp");dojo.regexp.escapeString=function(str,_aa){return str.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g,function(ch){if(_aa&&_aa.indexOf(ch)!=-1){return ch;}return "\\"+ch;});};dojo.regexp.buildGroupRE=function(arr,re,_ab){if(!(arr instanceof Array)){return re(arr);}var b=[];for(var i=0;i<arr.length;i++){b.push(re(arr[i]));}return dojo.regexp.group(b.join("|"),_ab);};dojo.regexp.group=function(_ac,_ad){return "("+(_ad?"?:":"")+_ac+")";};}if(!dojo._hasResource["dojo.cookie"]){dojo._hasResource["dojo.cookie"]=true;dojo.provide("dojo.cookie");dojo.cookie=function(_ae,_af,_b0){var c=document.cookie;if(arguments.length==1){var _b1=c.match(new RegExp("(?:^|; )"+dojo.regexp.escapeString(_ae)+"=([^;]*)"));return _b1?decodeURIComponent(_b1[1]):undefined;}else{_b0=_b0||{};var exp=_b0.expires;if(typeof exp=="number"){var d=new Date();d.setTime(d.getTime()+exp*24*60*60*1000);exp=_b0.expires=d;}if(exp&&exp.toUTCString){_b0.expires=exp.toUTCString();}_af=encodeURIComponent(_af);var _b2=_ae+"="+_af,_b3;for(_b3 in _b0){_b2+="; "+_b3;var _b4=_b0[_b3];if(_b4!==true){_b2+="="+_b4;}}document.cookie=_b2;}};dojo.cookie.isSupported=function(){if(!("cookieEnabled" in navigator)){this("__djCookieTest__","CookiesAllowed");navigator.cookieEnabled=this("__djCookieTest__")=="CookiesAllowed";if(navigator.cookieEnabled){this("__djCookieTest__","",{expires:-1});}}return navigator.cookieEnabled;};}if(!dojo._hasResource["fm.Radio"]){dojo._hasResource["fm.Radio"]=true;dojo.provide("fm.Radio");dojo.declare("fm.Radio",null,{_zender:"start",_store:null,_zenderPlayer:"",_zenderPlayerTotaal:"",_zenderPlayerTotaalTitle:"",_zenderHTML5Player:"",_stream:"",_web:"",_player:"",_ios:"",showExtern:1,_playerWindow:"",_playerContent:"",_extern:"",_playerWidth:0,_playerHeight:0,_zenderToPlay:"",_title:"",_banner:"",_macStream:"",_videoId:0,_zenderToPlay:"",constructor:function(_b5){dojo.mixin(this,_b5);this.initPlayers();this.autoStart();},initPlayers:function(){this._zenderPlayer="<div class=\"fl playertitle\"><img id=\"titleImg\" src=\"/i/titel.gif\" width=\"240\" height=\"30\"></div><a href=\"${0}\" target=\"_blank\" title=\"${1}\"><img alt=\"${2}\" src=\"/i/z/${3}banner.gif\" id=\"radioBanner\" width=\"300\" height=\"93\" border=\"0\"></a>";this._zenderPlayerExtern="<a href=\"${0}\" target=\"_blank\" title=\"${1}\"><img alt=\"${2}\" src=\"/i/z/${3}banner.gif\" id=\"radioBanner\" width=\"300\" height=\"93\" border=\"0\"></a>";this._zenderPlayerTotaal="<iframe SCROLLING=\"NO\" FRAMEBORDER=\"0\" src=\"${0}\" width=\"300\" height=\"187\"></iframe>";this._zenderPlayerTotaalTitle="<div id=\"playertitle\"><img src=\"/i/titel.gif\" width=\"240\" height=\"30\"></div><iframe SCROLLING=\"NO\" FRAMEBORDER=\"0\" src=\"${0}\" width=\"300\" height=\"157\"></iframe>";this._zenderBannerPlayer="<div class=\"fl playertitle\"><img id=\"titleImg\" src=\"/i/titel.gif\" width=\"240\" height=\"30\"></div><iframe SCROLLING=\"NO\" FRAMEBORDER=\"0\" src=\"${0}\" width=\"300\" height=\"93\"></iframe>";},getReal:function(){return "<embed ID=\"MediaPlayer\" name=\"MediaPlayer\" src=\"${0}\" controls=\"StatusField,ControlPanel\" type=\"audio/x-pn-realaudio-plugin\" autostart=\"true\" width=\"300\" height=\"60\" align=\"center\" border=\"0\">";},getQuickTime:function(){return "<object CLASSID=\"clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B\" codebase=\"http://www.apple.com/qtactivex/qtplugin.cab\" height=\"59\" width=\"300\"><param name=\"kioskmode\" value=\"false\"><param name=\"src\" value=\"${0}\"><param name=\"autoplay\" value=\"true\"><param name=\"controller\" value=\"true\"> <embed height=\"59\" src=\"${0}\" type=\"video/quicktime\" width=\"300\" controller=\"true\" autoplay=\"true\" kioskmode=\"false\"></object>";},getWMP:function(){return "<OBJECT ID=\"MediaPlayer\" width=\"300\" height=\"59\" classid=\"CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6\" type=\"application/x-oleobject\"><PARAM NAME=\"URL\" VALUE=\"${0}\"><param name=\"windowlessvideo\" value=\"true\" /><PARAM NAME=\"AutoStart\" VALUE=\"true\"><PARAM name=\"uiMode\" value=\"full\"><EMBED type=\"application/x-mplayer2\" filename=\"${0}\"  SRC=\"${0}\" id=\"MediaPlayer\" width=\"300\" height=\"60\" Autostart=\"1\" ShowControls=\"1\" ShowDisplay=\"1\" ShowStatusBar=\"1\"></OBJECT>";},getHTML5Player:function(){return "<div id=\"html5playerFrame\"><audio id=\"html5player\" controls autobuffer src=\"${0}\" type=\"audio/mp3\"></audio></div>";},autoStart:function(){var uri=location.href;var _b6=uri.substring(uri.indexOf("?")+1,uri.length);var _b7=dojo.queryToObject(_b6);if(_b7.z){this.play(_b7.z);}else{if(typeof (url_z)!=="undefined"){if(url_z!==""){this.play(url_z);}}}},stopPlayer:function(){if(dojo.isIE){if(this._player==="wmp"){var _b8=dojo.byId("MediaPlayer");if(_b8!==null&&_b8!==undefined){if(_b8.controls!==undefined){if(_b8.controls.isAvailable("Stop")){_b8.controls.stop();}}}}}},getPlayerSize:function(_b9){this._playerWidth=this._store.getValue(_b9,"wi");this._playerHeight=this._store.getValue(_b9,"hi");if(this._playerWidth===null||typeof (this._playerWidth)==="undefined"){this._playerWidth=800;}if(this._playerHeight===null||typeof (this._playerHeight)==="undefined"){this._playerHeight=700;}},getZenderProperties:function(_ba){this._player=this._store.getValue(_ba,"p");this._stream=this._store.getValue(_ba,"s");this._web=this._store.getValue(_ba,"w");this._title=this._store.getValue(_ba,"o");this._banner=this._store.getValue(_ba,"b");this._macStream=this._store.getValue(_ba,"m");this._ios=this._store.getValue(_ba,"ios");this._videoId=this._store.getValue(_ba,"v");},isTablet:function(){if(navigator.userAgent.match(/iPad/i)||(navigator.userAgent.match(/Android/i)&&!navigator.userAgent.match(/mobile/i))){return true;}else{return false;}},showPreroll:function(){if(preroll&&(this._videoId!=0)&&(this.isTablet()==false)){dojo.byId("zender_page").innerHTML="";dojo.attr("zender_page","style",{"display":"none"});dojo.attr("nlfm_video","style",{"display":"block"});dojo.byId("nlfm_video").innerHTML="<iframe src =\"/videoreclame.php?v="+this._videoId+"\" width=\"300\" height=\"187\" frameborder=0  marginheight=0 marginwidth=0 scrolling=\"no\">";return;}else{this.showPlayer(null);}},prerollFinished:function(){this.showPlayer(null);},showPlayer:function(_bb){if(preroll){dojo.attr("nlfm_video","style",{"display":"none"});dojo.attr("zender_page","style",{"display":"block"});}if(this.isTablet()){if(this._ios!==null&&this._ios.length>0){if(this._ios.length>1){this._stream=this._ios;this._player="html5";}}}else{if((dojo.isMac&&dojo.isSafari)&&(this._player.indexOf("totaal")==-1)){if(this._macStream!==null&&this._macStream.length>0){if(this._macStream.length>1){this._stream=this._macStream;this._player="html5";}}}}if(this._banner!==null){playerHTML=dojo.string.substitute(this._zenderBannerPlayer,[this._banner]);}else{playerHTML=dojo.string.substitute(this._zenderPlayer,[this._web,this._title,this._title,this._zender]);}var _bc;switch(this._player){case "ogg":playerExtern=true;var w=550;var h=200;var url="http://www.jcraft.com/jorbis/player/JOrbisPlayer.php?play="+this._stream;_bc=open(url,"","ScreenX=350,ScreenY=250,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=0,width="+w+",height="+h+"'");playerHTML+=dojo.string.substitute(this.getWMP(),[this._stream]);break;case "extern":playerExtern=true;_bc=open(this._stream,"","ScreenX=450,ScreenY=300,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=1,width="+this._playerWidth+",height="+this._playerHeight+"'");playerHTML+=dojo.string.substitute(this.getWMP(),[this._stream]);break;case "wmp":playerHTML+=dojo.string.substitute(this.getWMP(),[this._stream]);break;case "real":playerHTML+=dojo.string.substitute(this.getReal(),[this._stream]);break;case "quicktime":playerHTML+=dojo.string.substitute(this.getQuickTime(),[this._stream]);break;case "html5":playerHTML+=dojo.string.substitute(this.getHTML5Player(),[this._stream]);break;case "totaal":playerHTML=dojo.string.substitute(this._zenderPlayerTotaal,[this._stream]);break;case "totaal_title":playerHTML=dojo.string.substitute(this._zenderPlayerTotaalTitle,[this._stream]);break;default:break;}dojo.byId("zender_page").innerHTML=playerHTML;},play:function(_bd){var _be=true;if(this._zender==_bd||preroll==0){_be=false;}this._zender=_bd;var _bf=false;this._store.fetchItemByIdentity({identity:_bd,onItem:function(_c0,_c1){if(_c0===null){return false;}var _c2="";this.getZenderProperties(_c0);this.getPlayerSize(_c0);this.stopPlayer();if(_be){this.showPreroll();}else{this.showPlayer(_c0);}dojo.publish("/ilo/luisteronderzoek",[]);dojo.publish("/analytics/zender",[_bd,_bf]);dojo.publish("/stats/zender",[_bd,_bf]);if(this._player.indexOf("html5")!=-1){dojo.byId("html5player").play();}return true;},onError:function(_c3){return false;},scope:this});return true;}});}if(!dojo._hasResource["fm.analytics.Analytics"]){dojo._hasResource["fm.analytics.Analytics"]=true;dojo.provide("fm.analytics.Analytics");dojo.declare("fm.analytics.Analytics",null,{_zender:"",_playerExtern:false,_id:0,constructor:function(_c4){dojo.mixin(this,_c4);dojo.subscribe("/analytics/form",this,"form");dojo.subscribe("/analytics/zender",this,"zender");dojo.subscribe("/analytics/link",this,"link");dojo.subscribe("/analytics/banner",this,"banner");dojo.subscribe("/analytics/flag",this,"flag");dojo.subscribe("/analytics/playerState",this,"playerState");this._playerExtern=false;},zender:function(_c5,_c6){this._zender=_c5;this._playerExtern=_c6;_gaq.push(["_trackPageview","/zender/"+this._zender]);},link:function(_c7){_gaq.push(["_trackEvent","Link Clicks","Click",_c7]);},banner:function(_c8){_gaq.push(["_trackEvent","Banner Clicks","Click",_c8]);},flag:function(_c9){_gaq.push(["_trackEvent","Flag Clicks","Click",_c9]);},form:function(_ca,_cb){_gaq.push(["_trackEvent","Forms",_ca,_cb]);},playerState:function(_cc){if((this._zender.length===0)||this._playerExtern===true){return;}switch(_cc){case 1:_gaq.push(["_trackEvent","Player State","Stopped",this._zender]);break;case 6:_gaq.push(["_trackEvent","Player State","Buffering",this._zender,4]);break;case 7:_gaq.push(["_trackEvent","Player State","Waiting",this._zender,6]);break;case 10:_gaq.push(["_trackEvent","Player State","Error",this._zender,10]);break;case 11:_gaq.push(["_trackEvent","Player State","Reconnecting",this._zender,8]);break;case 99:_gaq.push(["_trackEvent","Player State","Error",this._zender]);break;default:break;}}});}if(!dojo._hasResource["fm.baseOpFM"]){dojo._hasResource["fm.baseOpFM"]=true;dojo.provide("fm.baseOpFM");var zendersStore;var analytics=null;var stats=null;var id;var ilo=null;var OpFM=0;dojo.addOnLoad(function init(){dojo.query("*[class^=\"lgr\"]").forEach(function(x){dojo.connect(x,"onclick",function(evt){dojo.stopEvent(evt);radio.play(evt.currentTarget.id);});});zendersStore=new dojo.data.ItemFileReadStore({data:zenders});radio=new fm.RadioOpFM({_store:zendersStore});analytics=new fm.analytics.Analytics();});dojo.declare("fm.RadioOpFM",[fm.Radio],{_zenderToPlay:"",constructor:function(_cd){dojo.mixin(this,_cd);},showPlayer:function(_ce){this._player="opfm";this._extern=this._store.getValue(_ce,"e");this.getPlayerSize(_ce);if(this._playerWindow){this._playerWindow.close();}if(this._extern===null||typeof (this._extern)==="undefined"||this._extern.length<5){this._playerWindow=window.open("","radio","resizable=1,status=0,location=0,menubar=0,toolbar=0,height=170,width=300");this._playerContent="<html><head><title>"+this._title+"</title><style>body{background-color:black;margin:5px;color:#fff;font-family:arial};div{margin:0px;}</style></head>";this._playerContent+="<body><center><h2>"+this._title+"</h2></center><div>"+dojo.string.substitute(this.getWMP(),[this._stream])+"</div>";this._playerContent+="</body></html>";this.showExternalPlayer();this.resizeExternalPlayerWindow();}else{this._playerWindow=window.open(this._extern,"radio","resizable=1,status=0,location=0,menubar=0,toolbar=0,height="+this._playerHeight+",width="+this._playerWidth);this.resizeExternalPlayerWindow();}},showExternalPlayer:function(){var i=0;while((this._playerWindow==null)&&i<100){i++;}if(this._playerWindow!=null){var doc=this._playerWindow.document;doc.open("text/html","replace");doc.write(this._playerContent);doc.close();}else{}},resizeExternalPlayerWindow:function(w,h){this._playerWindow.moveTo(50,50);return;if(this._playerWindow.window.resizeTo){this._playerWindow.window.resizeTo(w,h);}else{this._playerWindow.window.outerWidth=w;this._playerWindow.window.offsetHeight=h;}}});}if(!dojo._hasResource["fm.requireOpFM"]){dojo._hasResource["fm.requireOpFM"]=true;dojo.provide("fm.requireOpFM");}

