var WLIVE={UTIL:{utc_days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],utc_months:["January","February","March","April","May","June","July","August","September","October","November","December"],createCookie:function(name,value,days){if(days){var date=new Date();date.setTime(date.getTime()+(days*24*60*60*1000));var expires="; expires="+date.toGMTString();}
else var expires="";document.cookie=name+"="+value+expires+"; path=/";},readCookie:function(name){var nameEQ=name+"=";var ca=document.cookie.split(';');for(var i=0;i<ca.length;i++){var c=ca[i];while(c.charAt(0)==' ')c=c.substring(1,c.length);if(c.indexOf(nameEQ)==0)return c.substring(nameEQ.length,c.length);}
return null;},eraseCookie:function(name){this.createCookie(name,"",-1);},debug:function(str){if(typeof console!='undefined')console.log(str);},print:function(str){if(typeof console!='undefined')console.log(str);else alert(str);},ucfirst:function(str){var first_letter=str.toString().substr(0,1).toUpperCase();return first_letter+str.substr(1);},concatArray:function(arr){var ret_arr=[];for(var i=0;i<arr.length;i++){ret_arr=ret_arr.concat(arr[i]);}
return ret_arr;},getElementsById:function(){try{var els=new Array();for(var i=0;i<arguments.length;i++){var el=arguments[i];if(typeof el=='string')el=document.getElementById(el);if(arguments.length==1)return el;els.push(el);}
return els;}catch(e){this.debug(e);return null;}},getElementsByClassName:function(_classname,parent_el,tag){try{if(typeof parent_el=='string')parent_el=document.getElementById(parent_el);if(!!document.evaluate){var q=".//*[contains(concat(' ', @class, ' '), ' "+_classname+" ')]";return this.getElementsByXPath(q,parent_el);}else{var class_els=new Array();if(parent_el==null)parent_el=document;if(tag==null)tag='*';var els=parent_el.getElementsByTagName(tag);var pattern=new RegExp("(^|\\s)"+_classname+"(\\s|$)");for(i=0,j=0;i<els.length;i++){if(pattern.test(els[i].className)){class_els[j]=els[i];j++;}}
return class_els;}}catch(e){this.debug(e);return null;}},getElementsByXPath:function(expression,parent_el){if(typeof parent_el=='string')parent_el=document.getElementById(parent_el);var results=[];var query=document.evaluate(expression,parent_el||document,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);for(var i=0,_length=query.snapshotLength;i<_length;i++){results.push(query.snapshotItem(i));}
return results;},makeRequest:function(_url,_events,_o){try{var XMLHttpFactories=[function(){return new XMLHttpRequest()},function(){return new ActiveXObject("Msxml2.XMLHTTP")},function(){return new ActiveXObject("Msxml3.XMLHTTP")},function(){return new ActiveXObject("Microsoft.XMLHTTP")}];var createReqObj=function(){var xmlhttp=false;for(var i=0;i<XMLHttpFactories.length;i++){try{xmlhttp=XMLHttpFactories[i]();}catch(e){continue;}
break;}
return xmlhttp;}
var req=createReqObj();if(!req)return;var _method=(_o.postData)?"POST":"GET";req.open(_method,_url,true);req.setRequestHeader('User-Agent','XMLHTTP/1.0');req.setRequestHeader('If-Modified-Since','Wed, 15 Nov 1995 00:00:00 GMT');if(_o.postData)req.setRequestHeader('Content-type','application/x-www-form-urlencoded');req.onreadystatechange=function(){if(req.readyState!=4)return;if(req.status!=200&&req.status!=304){_events.failure.call(_events.context,[req,_o.params]);return;}
_events.success.call(_events.context,[req,_o.params]);}
if(req.readyState==4)return;req.send(_o.postData);}catch(e){this.debug(e);}},Template:function(_string){this.sourceString=_string;this.evaluate=function(_valueSet,_valueLogic){var s=this.sourceString;try{if(_valueLogic){for(var key in _valueLogic){var regex=new RegExp("\\["+key+": \\{(.*?)\\}\\]","i");var set=regex.exec(s);if(!set)continue;var fullset=set[0];var replaceStr=set[1].split('||');var strArr=[];for(var i=0;i<replaceStr.length;i++){if(replaceStr[i].match(_valueLogic[key]+':')){s=s.replace('#'+fullset,replaceStr[i].substr(replaceStr[i].indexOf(':')+1,replaceStr[i].length));}}}}
if(_valueSet!=null){for(var key in _valueSet){var pattern='#\{('+key+')\}';var regex=new RegExp(pattern,'gm');s=s.replace(regex,_valueSet[key]);}}
return s;}catch(e){WLIVE.UTIL.debug(e);return'';}}},truncate:function(str,len){return((str.length<len)?str:str.substring(0,len-1)+'...');},getTimeDifference:function(_date){try{var current_date=new Date();_date=new Date(_date);var diff=(current_date.getTime()-_date.getTime())/(1000);if(diff/(60*60*24*30.4368499*12)>1){diff=diff/(60*60*24*30.4368499*12);_split=diff.toString().split(".");diff=_split[0]+((_split[1].substring(0,1)=="0")?"":"."+_split[1].substring(0,1));diff+=(diff>1)?" years":" year";}else if(diff/(60*60*24*30.4368499)>1){diff=Math.round(diff/(60*60*24*30.4368499));diff+=(diff>1)?" months":" month";}else if(diff/(60*60*24)>1){diff_0=Math.round(diff/(60*60*24));if(diff_0==1){diff_1=Math.round(diff/(60*60))+" hours";diff=diff_1;}else{diff=diff_0;diff+=(diff>1)?" days":" day";}}else if(diff/60>60){diff=Math.round(diff/(60*60));diff+=(diff>1)?" hours":" hour";}else if(diff>60){diff=Math.round(diff/60);diff+=(diff>1)?" minutes":" minute";}else{diff=Math.round(diff);diff+=(diff>1)?" seconds":" second";}
return diff;}catch(e){this.debug(e);return"";}},getObjectFromCookie:function(cookiename){var pair;var obj={};var str=this.readCookie(cookiename);if(!str)return null;str=str.split("&");for(var i=0;i<str.length;i++){pair=str[i].split("=");pair[0]=pair[0].replace(/\s/,"");obj[pair[0]]=pair[1];}
return obj;},queryStringToObj:function(_qs){var pairs=_qs.split(/[;&]/);var obj=new Object();for(var i=0;i<pairs.length;i++){var pair=pairs[i].split('=');var key=unescape(pair[0].toLowerCase());var val=unescape(pair[1]).replace(/\+/g,' ');if(key.length>0&&val.length>0){obj[key]=val;}}
return obj;},objToQueryString:function(obj){var qs="";var i=0;for(var key in obj){if(i>0)qs+="&";qs+=(key+"="+obj[key]);i++;}
return qs;},trim:function(str){return str.replace(/^\s+|\s+$/g,"");},getSelectOptionsHTML:function(_start,_end){var _res="";if(_start>_end){for(var i=_start;i>_end-1;i--){_res+='<option value="'+i+'">'+i+'</option>';}}else{for(var i=_start;i<_end+1;i++){_res+='<option value="'+i+'">'+i+'</option>';}}
return _res;},getCheckedInputRadio:function(_els){for(var i=0;i<_els.length;i++){if(_els[i].checked)return _els[i];}
return null;},setCheckedInputRadio:function(_els,_val){for(var i=0;i<_els.length;i++){if(_els[i].value==_val)_els[i].checked=true;}},validateField:function(_el,_val){if(this.trim(_el.value)==_val){_el.className+=" error";_el.focus();return true;}
return false;},validateRadioField:function(_els,_parent){for(var i=0;i<_els.length;i++){if(_els[i].checked){return false;}}
_parent.className+=" error";return true;},validateSelectField:function(_el,_val){if(_el.selectedIndex==_val){_el.className+=" error";return true;}
return false;},resetFields:function(_els,_className){for(var i=0;i<_els.length;i++){var _regex=new RegExp(_className,"g");_els[i].className=_els[i].className.replace(_regex,"");}}},SETTINGS:{},APP:{},register:function(_o){try{if(_o._nameSpace[_o._name])return;_o._nameSpace[_o._name]=new _o._class();if(_o._nameSpace[_o._name].init)_o._nameSpace[_o._name].init(_o._params);}catch(e){this.UTIL.debug(e);}},loadAssets:function(_o){var head=document.getElementsByTagName('head')[0];var script=document.createElement('script');if(_o._id)script.id=_o._id;script.type='text/javascript';script.src=_o._src;head.appendChild(script);}}
WLIVE.SETTINGS=function(){var $config=[];return{getVal:function(_settingName){return $config[_settingName];},setVal:function(_settingName,_settingValue){$config[_settingName]=_settingValue;}}}();
