var eXo={animation:{},browser:{},desktop:{},core:{},env:{portal:{},client:{},server:{}},portal:{},util:{},webui:{},gadget:{},application:{browser:{}},ecm:{},calendar:{},contact:{},forum:{},mail:{},faq:{},session:{},i18n:{}};eXo.require=function(module,jsLocation,callback,context,params){try{if(eval(module+' != null')){if(callback){var ctx=context?context:{};if(params&&typeof(params)!="string"&&params.length)callback.apply(ctx,params);else callback.call(ctx,params);}
return;}}catch(err){}
window.status="Loading Javascript Module "+module;if(jsLocation==null)jsLocation='/eXoResources/javascript/';var path=jsLocation+module.replace(/\./g,'/')+'.js';eXo.loadJS(path,module,callback,context,params);};eXo.loadJS=function(path,module,callback,context,params){if(!module)module=path;eXo.core.Loader.register(module,path);eXo.core.Loader.init(module,callback,context,params);eXo.session.startItv();};eXo.env.server.createPortalURL=function(targetComponentId,actionName,useAjax,params){var url=decodeURIComponent(eXo.env.server.portalURLTemplate);url=url.replace("{portal:componentId}",targetComponentId);url=url.replace("{portal:action}",actionName);if(params!=null){var len=params.length;for(var i=0;i<len;i++){url+="&"+params[i].name+"="+params[i].value;}}
if(useAjax)url+="&ajaxRequest=true";return url;};eXo.portal.logout=function(){window.location=eXo.env.server.createPortalURL("UIPortal","Logout",false);};eXo.session.openUrl=null;eXo.session.itvTime=null;eXo.session.itvObj=null;eXo.session.initialized=false;eXo.session.itvInit=function(){if(!eXo.session.initialized&&eXo.session.canKeepState&&eXo.env.portal.accessMode=='private'){if(!eXo.session.openUrl)eXo.session.openUrl=eXo.env.server.createPortalURL("UIPortal","Ping",false);if(!eXo.session.itvTime)eXo.session.itvTime=1800;eXo.session.initialized=true;eXo.session.openItv();}};eXo.session.startItv=function(){if(eXo.session.initialized){eXo.session.destroyItv();if(eXo.session.canKeepState&&eXo.env.portal.accessMode=='private'){if(eXo.session.itvTime>0)eXo.session.itvObj=window.setTimeout("eXo.session.openItv()",(eXo.session.itvTime-10)*1000);}}else if(eXo.session.isOpen){eXo.session.itvInit();}};eXo.session.openItv=function(){var result=ajaxAsyncGetRequest(eXo.session.openUrl,false);if(!isNaN(result))eXo.session.itvTime=parseInt(result);};eXo.session.destroyItv=function(){window.clearTimeout(eXo.session.itvObj);eXo.session.itvObj=null;};eXo.debug=function(message){if(!eXo.developing)return;if(eXo.webui.UINotification){message="DEBUG: "+message;eXo.webui.UINotification.addMessage(message);}};Array.prototype.clear=function(){this.length=0;};Array.prototype.remove=function(element){var result=false;var array=[];for(var i=0;i<this.length;i++){if(this[i]==element){result=true;}else{array.push(this[i]);}}
this.clear();for(var i=0;i<array.length;i++){this.push(array[i]);}
array=null;return result;};Array.prototype.contains=function(element){for(var i=0;i<this.length;i++){if(this[i]==element){return true;}}
return false;};Array.prototype.insertAt=function(what,iIndex){if(iIndex<this.length){var aAfter=this.splice(iIndex,100000,what);for(var i=0;i<aAfter.length;i++){this.push(aAfter[i]);}}else{this.push(what);}};Array.prototype.pushAll=function(array){if(array!=null){for(var i=0;i<array.length;i++){this.push(array[i]);}}};Array.prototype.each=function(iterator,context){iterator=iterator.bind(context);for(var i=0;i<this.length;i++){iterator(this[i]);}};function HashMap(){this.properties=new Object();this.length=0;};HashMap.prototype.copyProperties=function(names,object){for(var i=0;i<names.length;i++){var name=names[i];this.put(name,object[name]);}};HashMap.prototype.setProperties=function(object,clear){for(var name in this.properties){object[name]=this.properties[name];}};HashMap.prototype.get=function(name){return this.properties[name];};HashMap.prototype.remove=function(name){var value=this.properties[name];if(value!=null){this.properties[name]=null;this.length--;return value;}else{return null;}};HashMap.prototype.put=function(name,value){if(this.properties[name]==null){this.length++;}
this.properties[name]=value;};HashMap.prototype.size=function(){return this.length;};HashMap.prototype.clear=function(){this.properties=new Object();this.length=0;};eXo.core.HashMap=HashMap.prototype.constructor;function ExoDateTime(){};ExoDateTime.prototype.getTime=function(){var dateTime=new Date();var hour=dateTime.getHours();var minute=dateTime.getMinutes();var second=dateTime.getSeconds();if(hour<=9)hour="0"+hour;if(minute<=9)minute="0"+minute;var AM_PM="";if(hour<12){AM_PM="AM";}else if(hour==12){AM_PM="PM";}else{AM_PM="PM";hour=hour-12;}
var time="";time+=hour+":"+minute+" "+AM_PM;var digitalClock=document.getElementById("DigitalClock");digitalClock.innerHTML=time;setTimeout("eXo.core.ExoDateTime.getTime()",60000);};ExoDateTime.prototype.getDate=function(){var dateTime=new Date();var date=dateTime.getDate();var month=dateTime.getMonth();var year=dateTime.getFullYear();if(date<=9)date="0"+date;switch(month){case 0:month="Jan";break;case 1:month="Feb";break;case 2:month="Mar";break;case 3:month="Apl";break;case 4:month="May";break;case 5:month="Jun";break;case 6:month="Jul";break;case 7:month="Aug";break;case 8:month="Sep";break;case 9:month="Oct";break;case 10:month="Nov";break;case 11:month="Dec";break;default:month=month;break;}
var today=date+" "+month+" "+year;var dateElement=eXo.core.DOMUtil.findFirstDescendantByClass(document.body,"div","Date");dateElement.innerHTML=today;};eXo.core.ExoDateTime=new ExoDateTime();String.prototype.trim=function(){var tmp=this.replace(/^\s*/,'');return tmp.replace(/\s*$/,'');}
Function.prototype.bind=function(object){var method=this;return function(){method.apply(object,arguments);}}
Function.prototype.inherits=function(parentCtor){function tempCtor(){};tempCtor.prototype=parentCtor.prototype;this.superClass_=parentCtor.prototype;this.prototype=new tempCtor();this.prototype.constructor=this;};function DOMUtil(){this.hideElementList=new Array();};DOMUtil.prototype.hasClass=function(elemt,className){var reg=new RegExp('(^|\\s+)'+className+'(\\s+|$)');return reg.test(elemt['className']);};DOMUtil.prototype.addClass=function(elemt,className){if(this.hasClass(elemt,className))return;elemt['className']=[elemt['className'],className].join(' ');};DOMUtil.prototype.removeClass=function(elemt,className){var reg=new RegExp('(^|\\s+)'+className);elemt['className']=elemt['className'].replace(reg,'');};DOMUtil.prototype.replaceClass=function(elemt,oldClazz,newClazz){var reg=new RegExp('(^|\\s+)'+oldClazz);elemt['className']=elemt['className'].replace(reg,newClazz);};DOMUtil.prototype.getChildrenByTagName=function(element,tagName){var ln=0;var list=[];if(element&&element.childNodes)ln=element.childNodes.length;for(var k=0;k<ln;k++){if(element.childNodes[k].nodeName==tagName.toUpperCase())list.push(element.childNodes[k]);}
return list;};DOMUtil.prototype.findChildrenByClass=function(root,elementName,cssClass){if(elementName)elementName=elementName.toUpperCase();var elements=root.childNodes;var ln=elements.length;var list=[];for(var k=0;k<ln;k++){if(elementName==elements[k].nodeName&&this.hasClass(elements[k],cssClass)){list.push(elements[k]);}}
return list;};DOMUtil.prototype.findChildrenByAttribute=function(root,elementName,attrName,attrValue){if(elementName)elementName=elementName.toUpperCase();var elements=root.childNodes;var ln=elements.length;var list=[];for(var k=0;k<ln;k++){if(elementName==elements[k].nodeName){var retValue=elements[k].getAttribute(attrName);if(retValue==attrValue)list.push(elements[k]);}}
return list;};DOMUtil.prototype.findFirstChildByClass=function(root,elementName,cssClass){if(elementName!=null)elementName=elementName.toUpperCase();var elements=root.childNodes;for(var k=0;k<elements.length;k++){if(elementName==elements[k].nodeName&&this.hasClass(elements[k],cssClass)){return elements[k];}}
return null;};DOMUtil.prototype.findAncestorByClass=function(element,clazz){if(element==null)return null;var parent=element.parentNode;while(parent!=null){if(this.hasClass(parent,clazz))return parent;parent=parent.parentNode;}
return null;};DOMUtil.prototype.findAncestorsByClass=function(element,clazz){var list=[];var parent=element.parentNode;while(parent!=null){if(this.hasClass(parent,clazz))list.push(parent);parent=parent.parentNode;}
return list;};DOMUtil.prototype.findAncestorById=function(element,id){var parent=element.parentNode;while(parent!=null){if(parent.getAttributeNode&&parent.getAttributeNode("id")&&parent.getAttributeNode("id").value==id)return parent;parent=parent.parentNode;}
return null;};DOMUtil.prototype.findAncestorByTagName=function(element,tagName){var parent=element.parentNode;while(parent!=null){if(parent.nodeName&&parent.nodeName.toLowerCase()==tagName)return parent;parent=parent.parentNode;}
return null;};DOMUtil.prototype.findDescendantsByTag=function(root,tagName,list){var children=root.childNodes;var ln=children.length;var child=null;for(var k=0;k<ln;k++){child=children[k];if(tagName==null){list[list.length]=child;}else if(child.nodeName==null){continue;}else{if(tagName==child.nodeName.toLowerCase())list[list.length]=child;}
this.findDescendantsByTag(child,tagName,list);}};DOMUtil.prototype.findDescendantsByTagName=function(root,tagName){var list=[];this.findDescendantsByTag(root,tagName,list);return list;};DOMUtil.prototype.findDescendantsByClass=function(root,elementName,clazz){var elements=root.getElementsByTagName(elementName);var ln=elements.length;var list=[];this.findDescendantsByTag(root,elementName,elements);for(var k=0;k<ln;k++){if(this.hasClass(elements[k],clazz))list.push(elements[k]);}
return list;};DOMUtil.prototype.findFirstDescendantByClass=function(root,elementName,clazz){if(!root)return;var elements=root.getElementsByTagName(elementName);var ln=elements.length;for(var k=0;k<ln;k++){if(this.hasClass(elements[k],clazz))return elements[k];}
return null;};DOMUtil.prototype.findDescendantById=function(root,id){var elements=root.getElementsByTagName('*');var ln=elements.length;for(var i=0;i<ln;i++){if(elements[i].getAttributeNode&&elements[i].getAttributeNode("id")&&elements[i].getAttributeNode("id").value==id)return elements[i];}
return null;};DOMUtil.prototype.hasAncestor=function(root,obj){var prtEle=root.parentNode;while(prtEle){if(prtEle==obj)return true;prtEle=prtEle.parentNode;}
return false;};DOMUtil.prototype.hasDescendant=function(root,obj){var elements=root.getElementsByTagName("*");var ln=elements.length;for(var k=0;k<ln;k++){if(elements[k]==obj)return true;}
return false;};DOMUtil.prototype.hasDescendantClass=function(root,clazz){var elements=root.getElementsByTagName("*");var ln=elements.length;for(var k=0;k<ln;k++){if(this.hasClass(elements[k],clazz))return true;}
return false;};DOMUtil.prototype.findNextElementByTagName=function(element,tagName){var nextElement=element.nextSibling;while(nextElement!=null){var nodeName=nextElement.nodeName;if(nodeName!=null)nodeName=nodeName.toLowerCase();if(nodeName==tagName)return nextElement;nextElement=nextElement.nextSibling;}
return null;};DOMUtil.prototype.findPreviousElementByTagName=function(element,tagName){var previousElement=element.previousSibling;while(previousElement!=null){var nodeName=previousElement.nodeName;if(nodeName!=null)nodeName=nodeName.toLowerCase();if(nodeName==tagName)return previousElement;previousElement=previousElement.previousSibling;}
return null;};DOMUtil.prototype.moveElemt=function(srcElemt,destElemt){if(typeof(srcElemt)=="string")srcElemt=document.getElementById(srcElemt);if(typeof(destElemt)=="string")destElemt=document.getElementById(destElemt);if(srcElemt&&destElemt)destElemt.appendChild(srcElemt);}
DOMUtil.prototype.createElementNode=function(innerHTML,tagName){var temporaryContainer=document.createElement(tagName);temporaryContainer.innerHTML=innerHTML;var applicationNode=this.getChildrenByTagName(temporaryContainer,"div")[0];return applicationNode;};DOMUtil.prototype.generateId=function(objectId){return(objectId+"-"+new Date().getTime()+Math.random().toString().substring(2));};DOMUtil.prototype.getStyle=function(element,style,intValue){var result=null;if(element.style[style]){result=element.style[style];}else if(element.currentStyle){result=element.currentStyle[style];}else if(document.defaultView&&document.defaultView.getComputedStyle){style=style.replace(/([A-Z])/g,"-$1");style=style.toLowerCase();var s=document.defaultView.getComputedStyle(element,"");result=s&&s.getPropertyValue(style);}
if(intValue&&result){var intRes=Number(result.match(/\d+/));if(!isNaN(intRes))result=intRes;}
return result;};DOMUtil.prototype.hideElements=function(){document.onclick=eXo.core.DOMUtil.cleanUpHiddenElements;};DOMUtil.prototype.cleanUpHiddenElements=function(){var ln=eXo.core.DOMUtil.hideElementList.length;if(ln>0){for(var i=0;i<ln;i++){eXo.core.DOMUtil.hideElementList[i].style.display="none";}
eXo.core.DOMUtil.hideElementList.clear();}};DOMUtil.prototype.listHideElements=function(object){if(!eXo.core.DOMUtil.hideElementList.contains(object)){eXo.core.DOMUtil.hideElementList.push(object);}};DOMUtil.prototype.removeElement=function(elemt){if(typeof(elemt)=="string")elemt=document.getElementById(elemt);if(!elemt)return;var parentElement=elemt.parentNode;parentElement.removeChild(elemt);};DOMUtil.prototype.getElementsBy=function(method,tag,root,apply){tag=tag||'*';root=(root)?this.get(root):null||document;if(!root){return[];}
var nodes=[],elements=root.getElementsByTagName(tag);for(var i=0,len=elements.length;i<len;++i){if(method(elements[i])){nodes[nodes.length]=elements[i];if(apply){apply(elements[i]);}}}
return nodes;}
DOMUtil.prototype.get=function(el){if(el&&(el.nodeType||el.item)){return el;}
if((typeof el==='string')||!el){return document.getElementById(el);}
if(el.length!==undefined){var c=[];for(var i=0,len=el.length;i<len;++i){c[c.length]=eXo.core.DOMUtil.get(el[i]);}
return c;}
return el;}
DOMUtil.prototype.disableOnClick=function(el){el.onclick=new Function("return false;");}
eXo.core.DOMUtil=new DOMUtil();if(!eXo.core.html){eXo.core.html={};}
eXo.core.html.HTMLEntities=[];eXo.core.html.HTMLEntities['nbsp']=32;eXo.core.html.HTMLEntities['iexcl']=161;eXo.core.html.HTMLEntities['cent']=162;eXo.core.html.HTMLEntities['pound']=163;eXo.core.html.HTMLEntities['curren']=164;eXo.core.html.HTMLEntities['yen']=165;eXo.core.html.HTMLEntities['brvbar']=166;eXo.core.html.HTMLEntities['sect']=167;eXo.core.html.HTMLEntities['uml']=168;eXo.core.html.HTMLEntities['copy']=169;eXo.core.html.HTMLEntities['ordf']=170;eXo.core.html.HTMLEntities['laquo']=171;eXo.core.html.HTMLEntities['not']=172;eXo.core.html.HTMLEntities['shy']=173;eXo.core.html.HTMLEntities['reg']=174;eXo.core.html.HTMLEntities['macr']=175;eXo.core.html.HTMLEntities['deg']=176;eXo.core.html.HTMLEntities['plusmn']=177;eXo.core.html.HTMLEntities['sup2']=178;eXo.core.html.HTMLEntities['sup3']=179;eXo.core.html.HTMLEntities['acute']=180;eXo.core.html.HTMLEntities['micro']=181;eXo.core.html.HTMLEntities['para']=182;eXo.core.html.HTMLEntities['middot']=183;eXo.core.html.HTMLEntities['cedil']=184;eXo.core.html.HTMLEntities['sup1']=185;eXo.core.html.HTMLEntities['ordm']=186;eXo.core.html.HTMLEntities['raquo']=187;eXo.core.html.HTMLEntities['frac14']=188;eXo.core.html.HTMLEntities['frac12']=189;eXo.core.html.HTMLEntities['frac34']=190;eXo.core.html.HTMLEntities['iquest']=191;eXo.core.html.HTMLEntities['Agrave']=192;eXo.core.html.HTMLEntities['Aacute']=193;eXo.core.html.HTMLEntities['Acirc']=194;eXo.core.html.HTMLEntities['Atilde']=195;eXo.core.html.HTMLEntities['Auml']=196;eXo.core.html.HTMLEntities['Aring']=197;eXo.core.html.HTMLEntities['AElig']=198;eXo.core.html.HTMLEntities['Ccedil']=199;eXo.core.html.HTMLEntities['Egrave']=200;eXo.core.html.HTMLEntities['Eacute']=201;eXo.core.html.HTMLEntities['Ecirc']=202;eXo.core.html.HTMLEntities['Euml']=203;eXo.core.html.HTMLEntities['Igrave']=204;eXo.core.html.HTMLEntities['Iacute']=205;eXo.core.html.HTMLEntities['Icirc']=206;eXo.core.html.HTMLEntities['Iuml']=207;eXo.core.html.HTMLEntities['ETH']=208;eXo.core.html.HTMLEntities['Ntilde']=209;eXo.core.html.HTMLEntities['Ograve']=210;eXo.core.html.HTMLEntities['Oacute']=211;eXo.core.html.HTMLEntities['Ocirc']=212;eXo.core.html.HTMLEntities['Otilde']=213;eXo.core.html.HTMLEntities['Ouml']=214;eXo.core.html.HTMLEntities['times']=215;eXo.core.html.HTMLEntities['Oslash']=216;eXo.core.html.HTMLEntities['Ugrave']=217;eXo.core.html.HTMLEntities['Uacute']=218;eXo.core.html.HTMLEntities['Ucirc']=219;eXo.core.html.HTMLEntities['Uuml']=220;eXo.core.html.HTMLEntities['Yacute']=221;eXo.core.html.HTMLEntities['THORN']=222;eXo.core.html.HTMLEntities['szlig']=223;eXo.core.html.HTMLEntities['agrave']=224;eXo.core.html.HTMLEntities['aacute']=225;eXo.core.html.HTMLEntities['acirc']=226;eXo.core.html.HTMLEntities['atilde']=227;eXo.core.html.HTMLEntities['auml']=228;eXo.core.html.HTMLEntities['aring']=229;eXo.core.html.HTMLEntities['aelig']=230;eXo.core.html.HTMLEntities['ccedil']=231;eXo.core.html.HTMLEntities['egrave']=232;eXo.core.html.HTMLEntities['eacute']=233;eXo.core.html.HTMLEntities['ecirc']=234;eXo.core.html.HTMLEntities['euml']=235;eXo.core.html.HTMLEntities['igrave']=236;eXo.core.html.HTMLEntities['iacute']=237;eXo.core.html.HTMLEntities['icirc']=238;eXo.core.html.HTMLEntities['iuml']=239;eXo.core.html.HTMLEntities['eth']=240;eXo.core.html.HTMLEntities['ntilde']=241;eXo.core.html.HTMLEntities['ograve']=242;eXo.core.html.HTMLEntities['oacute']=243;eXo.core.html.HTMLEntities['ocirc']=244;eXo.core.html.HTMLEntities['otilde']=245;eXo.core.html.HTMLEntities['ouml']=246;eXo.core.html.HTMLEntities['divide']=247;eXo.core.html.HTMLEntities['oslash']=248;eXo.core.html.HTMLEntities['ugrave']=249;eXo.core.html.HTMLEntities['uacute']=250;eXo.core.html.HTMLEntities['ucirc']=251;eXo.core.html.HTMLEntities['uuml']=252;eXo.core.html.HTMLEntities['yacute']=253;eXo.core.html.HTMLEntities['thorn']=254;eXo.core.html.HTMLEntities['yuml']=255;eXo.core.html.HTMLEntities['fnof']=402;eXo.core.html.HTMLEntities['Alpha']=913;eXo.core.html.HTMLEntities['Beta']=914;eXo.core.html.HTMLEntities['Gamma']=915;eXo.core.html.HTMLEntities['Delta']=916;eXo.core.html.HTMLEntities['Epsilon']=917;eXo.core.html.HTMLEntities['Zeta']=918;eXo.core.html.HTMLEntities['Eta']=919;eXo.core.html.HTMLEntities['Theta']=920;eXo.core.html.HTMLEntities['Iota']=921;eXo.core.html.HTMLEntities['Kappa']=922;eXo.core.html.HTMLEntities['Lambda']=923;eXo.core.html.HTMLEntities['Mu']=924;eXo.core.html.HTMLEntities['Nu']=925;eXo.core.html.HTMLEntities['Xi']=926;eXo.core.html.HTMLEntities['Omicron']=927;eXo.core.html.HTMLEntities['Pi']=928;eXo.core.html.HTMLEntities['Rho']=929;eXo.core.html.HTMLEntities['Sigma']=931;eXo.core.html.HTMLEntities['Tau']=932;eXo.core.html.HTMLEntities['Upsilon']=933;eXo.core.html.HTMLEntities['Phi']=934;eXo.core.html.HTMLEntities['Chi']=935;eXo.core.html.HTMLEntities['Psi']=936;eXo.core.html.HTMLEntities['Omega']=937;eXo.core.html.HTMLEntities['alpha']=945;eXo.core.html.HTMLEntities['beta']=946;eXo.core.html.HTMLEntities['gamma']=947;eXo.core.html.HTMLEntities['delta']=948;eXo.core.html.HTMLEntities['epsilon']=949;eXo.core.html.HTMLEntities['zeta']=950;eXo.core.html.HTMLEntities['eta']=951;eXo.core.html.HTMLEntities['theta']=952;eXo.core.html.HTMLEntities['iota']=953;eXo.core.html.HTMLEntities['kappa']=954;eXo.core.html.HTMLEntities['lambda']=955;eXo.core.html.HTMLEntities['mu']=956;eXo.core.html.HTMLEntities['nu']=957;eXo.core.html.HTMLEntities['xi']=958;eXo.core.html.HTMLEntities['omicron']=959;eXo.core.html.HTMLEntities['pi']=960;eXo.core.html.HTMLEntities['rho']=961;eXo.core.html.HTMLEntities['sigmaf']=962;eXo.core.html.HTMLEntities['sigma']=963;eXo.core.html.HTMLEntities['tau']=964;eXo.core.html.HTMLEntities['upsilon']=965;eXo.core.html.HTMLEntities['phi']=966;eXo.core.html.HTMLEntities['chi']=967;eXo.core.html.HTMLEntities['psi']=968;eXo.core.html.HTMLEntities['omega']=969;eXo.core.html.HTMLEntities['thetasym']=977;eXo.core.html.HTMLEntities['upsih']=978;eXo.core.html.HTMLEntities['piv']=982;eXo.core.html.HTMLEntities['bull']=8226;eXo.core.html.HTMLEntities['hellip']=8230;eXo.core.html.HTMLEntities['prime']=8242;eXo.core.html.HTMLEntities['Prime']=8243;eXo.core.html.HTMLEntities['oline']=8254;eXo.core.html.HTMLEntities['frasl']=8260;eXo.core.html.HTMLEntities['weierp']=8472;eXo.core.html.HTMLEntities['image']=8465;eXo.core.html.HTMLEntities['real']=8476;eXo.core.html.HTMLEntities['trade']=8482;eXo.core.html.HTMLEntities['alefsym']=8501;eXo.core.html.HTMLEntities['larr']=8592;eXo.core.html.HTMLEntities['rarr']=8594;eXo.core.html.HTMLEntities['darr']=8595;eXo.core.html.HTMLEntities['harr']=8596;eXo.core.html.HTMLEntities['crarr']=8629;eXo.core.html.HTMLEntities['lArr']=8656;eXo.core.html.HTMLEntities['uarr']=8593;eXo.core.html.HTMLEntities['uArr']=8657;eXo.core.html.HTMLEntities['rArr']=8658;eXo.core.html.HTMLEntities['dArr']=8659;eXo.core.html.HTMLEntities['hArr']=8660;eXo.core.html.HTMLEntities['forall']=8704;eXo.core.html.HTMLEntities['part']=8706;eXo.core.html.HTMLEntities['exist']=8707;eXo.core.html.HTMLEntities['empty']=8709;eXo.core.html.HTMLEntities['nabla']=8711;eXo.core.html.HTMLEntities['isin']=8712;eXo.core.html.HTMLEntities['notin']=8713;eXo.core.html.HTMLEntities['ni']=8715;eXo.core.html.HTMLEntities['prod']=8719;eXo.core.html.HTMLEntities['sum']=8721;eXo.core.html.HTMLEntities['minus']=8722;eXo.core.html.HTMLEntities['lowast']=8727;eXo.core.html.HTMLEntities['radic']=8730;eXo.core.html.HTMLEntities['prop']=8733;eXo.core.html.HTMLEntities['infin']=8734;eXo.core.html.HTMLEntities['ang']=8736;eXo.core.html.HTMLEntities['and']=8743;eXo.core.html.HTMLEntities['or']=8744;eXo.core.html.HTMLEntities['cap']=8745;eXo.core.html.HTMLEntities['cup']=8746;eXo.core.html.HTMLEntities['int']=8747;eXo.core.html.HTMLEntities['there4']=8756;eXo.core.html.HTMLEntities['sim']=8764;eXo.core.html.HTMLEntities['cong']=8773;eXo.core.html.HTMLEntities['asymp']=8776;eXo.core.html.HTMLEntities['ne']=8800;eXo.core.html.HTMLEntities['equiv']=8801;eXo.core.html.HTMLEntities['le']=8804;eXo.core.html.HTMLEntities['ge']=8805;eXo.core.html.HTMLEntities['sub']=8834;eXo.core.html.HTMLEntities['sup']=8835;eXo.core.html.HTMLEntities['nsub']=8836;eXo.core.html.HTMLEntities['sube']=8838;eXo.core.html.HTMLEntities['supe']=8839;eXo.core.html.HTMLEntities['oplus']=8853;eXo.core.html.HTMLEntities['otimes']=8855;eXo.core.html.HTMLEntities['perp']=8869;eXo.core.html.HTMLEntities['sdot']=8901;eXo.core.html.HTMLEntities['lceil']=8968;eXo.core.html.HTMLEntities['rceil']=8969;eXo.core.html.HTMLEntities['lfloor']=8970;eXo.core.html.HTMLEntities['rfloor']=8971;eXo.core.html.HTMLEntities['lang']=9001;eXo.core.html.HTMLEntities['rang']=9002;eXo.core.html.HTMLEntities['loz']=9674;eXo.core.html.HTMLEntities['spades']=9824;eXo.core.html.HTMLEntities['clubs']=9827;eXo.core.html.HTMLEntities['hearts']=9829;eXo.core.html.HTMLEntities['diams']=9830;eXo.core.html.HTMLEntities['quot']=34;eXo.core.html.HTMLEntities['amp']=38;eXo.core.html.HTMLEntities['lt']=60;eXo.core.html.HTMLEntities['gt']=62;eXo.core.html.HTMLEntities['OElig']=338;eXo.core.html.HTMLEntities['oelig']=339;eXo.core.html.HTMLEntities['Scaron']=352;eXo.core.html.HTMLEntities['scaron']=353;eXo.core.html.HTMLEntities['Yuml']=376;eXo.core.html.HTMLEntities['circ']=710;eXo.core.html.HTMLEntities['tilde']=732;eXo.core.html.HTMLEntities['ensp']=8194;eXo.core.html.HTMLEntities['emsp']=8195;eXo.core.html.HTMLEntities['thinsp']=8201;eXo.core.html.HTMLEntities['zwnj']=8204;eXo.core.html.HTMLEntities['zwj']=8205;eXo.core.html.HTMLEntities['lrm']=8206;eXo.core.html.HTMLEntities['rlm']=8207;eXo.core.html.HTMLEntities['ndash']=8211;eXo.core.html.HTMLEntities['mdash']=8212;eXo.core.html.HTMLEntities['lsquo']=8216;eXo.core.html.HTMLEntities['rsquo']=8217;eXo.core.html.HTMLEntities['sbquo']=8218;eXo.core.html.HTMLEntities['ldquo']=8220;eXo.core.html.HTMLEntities['rdquo']=8221;eXo.core.html.HTMLEntities['bdquo']=8222;eXo.core.html.HTMLEntities['dagger']=8224;eXo.core.html.HTMLEntities['Dagger']=8225;eXo.core.html.HTMLEntities['permil']=8240;eXo.core.html.HTMLEntities['lsaquo']=8249;eXo.core.html.HTMLEntities['rsaquo']=8250;eXo.core.html.HTMLEntities['euro']=8364;function HTMLUtil(){this.entities=eXo.core.html.HTMLEntities;}
HTMLUtil.prototype.entitiesEncode=function(str){if(!str||str==''){return str;}
for(var n in this.entities){var entityChar=String.fromCharCode(this.entities[n]);if(entityChar=='&'){entityChar='\\'+entityChar;}
while(str.indexOf(entityChar)!=-1){str=str.replace(entityChar,'&'+n+';');}}
return str;}
HTMLUtil.prototype.entitiesDecode=function(str){if(!str||str==''){return str;}
for(var n in this.entities){var entityChar=String.fromCharCode(this.entities[n]);var htmlEntity='&'+n+';';while(str.indexOf(htmlEntity)!=-1){str=str.replace(htmlEntity,entityChar);}}
return str;}
eXo.core.HTMLUtil=new HTMLUtil();function MouseObject(){this.init(null);};MouseObject.prototype.init=function(mouseEvent){this.mousexInPage=null;this.mouseyInPage=null;this.lastMousexInPage=null;this.lastMouseyInPage=null;this.mousexInClient=null;this.mouseyInClient=null;this.lastMousexInClient=null;this.lastMouseyInClient=null;this.deltax=null;this.deltay=null;if(mouseEvent!=null)this.update(mouseEvent);};MouseObject.prototype.update=function(mouseEvent){var x=eXo.core.Browser.findMouseXInPage(mouseEvent);var y=eXo.core.Browser.findMouseYInPage(mouseEvent);this.lastMousexInPage=this.mousexInPage!=null?this.mousexInPage:x;this.lastMouseyInPage=this.mouseyInPage!=null?this.mouseyInPage:y;this.mousexInPage=x;this.mouseyInPage=y;x=eXo.core.Browser.findMouseXInClient(mouseEvent);y=eXo.core.Browser.findMouseYInClient(mouseEvent);this.lastMousexInClient=this.mousexInClient!=null?this.mousexInClient:x;this.lastMouseyInClient=this.mouseyInClient!=null?this.mouseyInClient:y;this.mousexInClient=x;this.mouseyInClient=y;this.deltax=this.mousexInClient-this.lastMousexInClient;this.deltay=this.mouseyInClient-this.lastMouseyInClient;};function Browser(){this.onLoadCallback=new eXo.core.HashMap();this.onResizeCallback=new eXo.core.HashMap();this.onScrollCallback=new eXo.core.HashMap();this.breakStream;window.onresize=this.managerResize;window.onscroll=this.onScroll;this.initCommon();this.detectBrowser();if(this.opera)this.initOpera();else if(this.ie)this.initIE();else if(this.webkit)this.initSafari();else this.initMozilla();};Browser.prototype.detectBrowser=function(){this.ie=0;this.opera=0;this.gecko=0;this.webkit=0;this.mobile=null;this.air=0;var ua=navigator.userAgent,m;if((/KHTML/).test(ua)){this.webkit=1;}
m=ua.match(/AppleWebKit\/([^\s]*)/);if(m&&m[1]){this.webkit=parseFloat(m[1]);if(/ Mobile\//.test(ua)){this.mobile="Apple";}else{m=ua.match(/NokiaN[^\/]*/);if(m){this.mobile=m[0];}}
m=ua.match(/AdobeAIR\/([^\s]*)/);if(m){this.air=m[0];}}
if(!this.webkit){m=ua.match(/Opera[\s\/]([^\s]*)/);if(m&&m[1]){this.opera=parseFloat(m[1]);m=ua.match(/Opera Mini[^;]*/);if(m){this.mobile=m[0];}}else{m=ua.match(/MSIE\s([^;]*)/);if(m&&m[1]){this.ie=parseFloat(m[1]);}else{m=ua.match(/Gecko\/([^\s]*)/);if(m){this.gecko=1;m=ua.match(/rv:([^\s\)]*)/);if(m&&m[1]){this.gecko=parseFloat(m[1]);}}}}}}
Browser.prototype.managerResize=function(){if(eXo.core.Browser.currheight!=document.documentElement.clientHeight){clearTimeout(eXo.core.Browser.breakStream);eXo.core.Browser.breakStream=setTimeout(eXo.core.Browser.onResize,100);}
eXo.core.Browser.currheight=document.documentElement.clientHeight;}
Browser.prototype.initCommon=function(){this.getBrowserHeight=function(){return document.documentElement.clientHeight;}
this.getBrowserWidth=function(){return document.documentElement.clientWidth;}
this.createHttpRequest=function(){return new XMLHttpRequest();}};Browser.prototype.initIE=function(){this.browserType="ie";this.createHttpRequest=function(){return new ActiveXObject("Msxml2.XMLHTTP");}
this.eventListener=function(object,event,operation){event="on"+event;object.attachEvent(event,operation);}
this.setOpacity=function(component,value){component.style.filter="alpha(opacity="+value+")";}
this.getEventSource=function(e){return window.event.srcElement;}};Browser.prototype.initMozilla=function(){this.browserType="mozilla";this.eventListener=function(object,event,operation){object.addEventListener(event,operation,false);}
this.setOpacity=function(component,value){component.style.opacity=value/100;}
this.getEventSource=function(e){return e.target;}};Browser.prototype.initSafari=function(){this.browserType="safari";this.getBrowserHeight=function(){return self.innerHeight;};this.getBrowserWidth=function(){return self.innerWidth;};this.eventListener=function(object,event,operation){object.addEventListener(event,operation,false);}
this.setOpacity=function(component,value){component.style.opacity=value/100;}
this.getEventSource=function(e){var targ=e.target;if(targ.nodeType==3)targ=targ.parentNode;return targ;}};Browser.prototype.initOpera=function(){this.browserType="opera";this.getBrowserHeight=function(){return document.body.clientHeight;}
this.getBrowserWidth=function(){return document.body.clientWidth;}};Browser.prototype.isIE6=function(){var agent=navigator.userAgent;return(agent.indexOf("MSIE 6")>=0);};Browser.prototype.isIE7=function(){var agent=navigator.userAgent;return(agent.indexOf("MSIE 7")>=0);};Browser.prototype.isFF=function(){return this.gecko;};Browser.prototype.isFF2=function(){return(navigator.userAgent.indexOf("Firefox/2")>=0);};Browser.prototype.isFF3=function(){return(navigator.userAgent.indexOf("Firefox/3")>=0);};Browser.prototype.findMouseXInClient=function(e){if(!e)e=window.event;return e.clientX;};Browser.prototype.findMouseYInClient=function(e){if(!e)e=window.event;return e.clientY;};Browser.prototype.addOnLoadCallback=function(id,method){this.onLoadCallback.put(id,method);};Browser.prototype.onLoad=function(){var callback=eXo.core.Browser.onLoadCallback;for(var name in callback.properties){var method=callback.get(name);if(typeof(method)=="function")try{method()}catch(e){};}
this.onLoadCallback=new eXo.core.HashMap();};Browser.prototype.addOnResizeCallback=function(id,method){this.onResizeCallback.put(id,method);};Browser.prototype.onResize=function(event){var callback=eXo.core.Browser.onResizeCallback;for(var name in callback.properties){var method=callback.get(name);if(typeof(method)=="function")method(event);}};Browser.prototype.addOnScrollCallback=function(id,method){this.onScrollCallback.put(id,method);};Browser.prototype.onScroll=function(event){var callback=eXo.core.Browser.onScrollCallback;for(var name in callback.properties){var method=callback.get(name);try{if(typeof(method)=="function")method(event);}catch(err){}}};Browser.prototype.getBrowserType=function(){return this.browserType;};Browser.prototype.findPosX=function(obj,isRTL){var curleft=0;var tmpObj=obj;while(tmpObj){curleft+=tmpObj.offsetLeft;tmpObj=tmpObj.offsetParent;}
if(isRTL)return curleft+obj.offsetWidth;return curleft;};Browser.prototype.findPosY=function(obj){var curtop=0;while(obj){curtop+=obj.offsetTop;obj=obj.offsetParent;}
return curtop;};Browser.prototype.findPosXInContainer=function(obj,container,isRTL){var objX=eXo.core.Browser.findPosX(obj,isRTL);var containerX=eXo.core.Browser.findPosX(container,isRTL);if(isRTL)return-(objX-containerX);return(objX-containerX);};Browser.prototype.findPosYInContainer=function(obj,container){var objY=eXo.core.Browser.findPosY(obj);var containerY=eXo.core.Browser.findPosY(container);return(objY-containerY);};Browser.prototype.findMouseXInPage=function(e){var posx=-1;if(!e)e=window.event;if(e.pageX||e.pageY){posx=e.pageX;}else if(e.clientX||e.clientY){posx=e.clientX+document.body.scrollLeft;}
return posx;};Browser.prototype.findMouseYInPage=function(e){var posy=-1;if(!e)e=window.event;if(e.pageY){posy=e.pageY;}else if(e.clientX||e.clientY){if(document.documentElement&&document.documentElement.scrollTop){posy=e.clientY+document.documentElement.scrollTop;}else{posy=e.clientY+document.body.scrollTop;}}
return posy;};Browser.prototype.findMouseRelativeX=function(object,e,isRTL){var posx=-1;var posXObject=eXo.core.Browser.findPosX(object,isRTL);if(!e)e=window.event;if(e.pageX||e.pageY){posx=e.pageX-posXObject;}else if(e.clientX||e.clientY){posx=e.clientX+document.body.scrollLeft-posXObject;}
return posx;};Browser.prototype.findMouseRelativeY=function(object,e){var posy=-1;var posYObject=eXo.core.Browser.findPosY(object);if(!e)e=window.event;if(e.pageY){posy=e.pageY-posYObject;}else if(e.clientX||e.clientY){if(document.documentElement&&document.documentElement.scrollTop){posy=e.clientY+document.documentElement.scrollTop-posYObject;}else{posy=e.clientY+document.body.scrollTop-posYObject;}}
return posy;};Browser.prototype.setPositionInContainer=function(container,component,posX,posY){var offsetX=component.offsetLeft;var offsetY=component.offsetTop;var posXInContainer=eXo.core.Browser.findPosXInContainer(component,container);var posYInContainer=eXo.core.Browser.findPosYInContainer(component,container);var deltaX=posX-(posXInContainer-offsetX);var deltaY=posY-(posYInContainer-offsetY);component.style.left=deltaX+"px";component.style.top=deltaY+"px";};Browser.prototype.setCookie=function(name,value,expiredays){var exdate=new Date();exdate.setDate(exdate.getDate()+expiredays);document.cookie=name+"="+escape(value)+((expiredays==null)?"":";expires="+exdate.toGMTString());};Browser.prototype.getCookie=function(name){if(document.cookie.length>0){var start=document.cookie.indexOf(name+"=")
if(start!=-1){start=start+name.length+1;var end=document.cookie.indexOf(";",start);if(end==-1)end=document.cookie.length;return unescape(document.cookie.substring(start,end));}}
return"";};Browser.prototype.isDesktop=function(){if(document.getElementById("UIPageDesktop"))return true;return false;}
Browser.prototype.getHeightOfFreeSpace=function(){var elements=document.body.children;var height=0;var ln=elements.length;for(var k=0;k<ln;k++){height+=elements[k].offsetHeight;}
return(this.getBrowserHeight()-height);}
Browser.prototype.fillUpFreeSpace=function(elemt){if(typeof(elemt)=="string")
elemt=document.getElementById(elemt);var height=eXo.core.Browser.getHeightOfFreeSpace();if(height>0&&elemt!=undefined)
{height+=elemt.offsetHeight;elemt.style.height=height+"px";}}
eXo.core.Browser=new Browser();eXo.core.Mouse=new MouseObject();function Loader(){this.wait=1;this.defaultAsyncWait=250;};Loader.prototype.init=function(scriptName,callback,context,params){var a=-1;var scriptNames=new Array();if(typeof(scriptName)!="string"&&scriptName.length){var _scriptNames=scriptName;for(var s=0;s<_scriptNames.length;s++){if(this.registered[_scriptNames[s]]||durl(_scriptNames[s])){scriptNames.push(_scriptNames[s]);}}
scriptName=scriptNames[0];a=1;}else{while(typeof(arguments[++a])=="string"){if(this.registered[scriptName]||durl(scriptName)){scriptNames.push(arguments[a]);}}}
callback=arguments[a];context=arguments[++a];params=arguments[++a];if(scriptNames.length>1){var cb=callback;callback=function(){eXo.core.Loader.init(scriptNames,cb,context,params);}}
var reg=this.registered[scriptName];if(!this.__durls)this.__durls={};if(durl(scriptName)&&scriptName.substring(0,4)=="url("){scriptName=scriptName.substring(4,scriptName.length-1);if(!this.__durls[scriptName]){scriptNames[0]=scriptName;this.register(scriptName,true,scriptName);reg=this.registered[scriptName];var callbackQueue=this.getCallbackQueue(scriptName);var cbitem=new this.CallbackItem(function(){eXo.core.Loader.__durls[scriptName]=true;});callbackQueue.push(cbitem);callbackQueue.push(new this.CallbackItem(callback,context,params));callback=undefined;context=undefined;}}
if(reg){for(var r=reg.requirements.length-1;r>=0;r--){if(this.registered[reg.requirements[r].name]){eXo.core.Loader.init(reg.requirements[r].name,function(){eXo.core.Loader.init(scriptName,callback,context,params);},context);return;}}
for(var u=0;u<reg.urls.length;u++){if(u==reg.urls.length-1){if(callback){this.load(reg.name,reg.urls[u],reg.remote,reg.asyncWait,new this.CallbackItem(callback,context,params));}else{this.load(reg.name,reg.urls[u],reg.remote,reg.asyncWait);}}else{this.load(reg.name,reg.urls[u],reg.remote,reg.asyncWait);}}}else{var cb=callback;if(cb){if(params&&typeof(params)!="string"&&params.length)cb.apply(context,params);else cb.call(context,params);}}};Loader.prototype.CallbackItem=function(_callback,_context,_params){this.callback=_callback;this.context=_context;this.params=_params;this.invoke=function(){var ctx=this.context?this.context:{};if(this.params&&typeof(this.params)!="string"&&this.params.length)this.callback.apply(ctx,this.params);else this.callback.call(ctx,this.params);};};Loader.prototype.Registration=function(_name,_version,_remote,_asyncWait,_urls){this.name=_name;var a=0;var arg=arguments[++a];var v=true;if(typeof(arg)=="string"){for(var c=0;c<arg.length;c++){if("1234567890.".indexOf(c)==-1){v=false;break;}}
if(v){this.version=arg;arg=arguments[++a];}else{this.version="1.0.0";}}
if(arg&&typeof(arg)=="boolean"){this.remote=arg;arg=arguments[++a];}else{this.remote=false;}
if(arg&&typeof(arg)=="number"){this.asyncWait=_asyncWait;}else{this.asyncWait=0;}
this.urls=new Array();if(arg&&arg.length&&typeof(arg)!="string"){this.urls=arg;}else{for(a=a;a<arguments.length;a++){if(arguments[a]&&typeof(arguments[a])=="string"){this.urls.push(arguments[a]);}}}
this.requirements=new Array();this.requires=function(resourceName,minimumVersion){if(!minimumVersion)minimumVersion="1.0.0";eXo.core.Loader.requirements.push({name:resourceName,minVersion:minimumVersion});return this;}
this.register=function(name,version,remote,asyncWait,urls){return eXo.core.Loader.register(name,version,remote,asyncWait,urls);}
return this;};Loader.prototype.register=function(name,version,remote,asyncWait,urls){var reg;if(typeof(name)=="object"){reg=name;reg=new this.Registration(reg.name,reg.version,reg.remote,reg.asyncWait,urls);}else{reg=new this.Registration(name,version,remote,asyncWait,urls);}
if(!this.registered)this.registered={};if(this.registered[name]&&window.console){window.console.log("Warning: Resource named \""+name+"\" was already registered with this.register(); overwritten.");}
this.registered[name]=reg;return reg;};Loader.prototype.getCallbackQueue=function(scriptUrl){if(!this.__callbackQueue){this.__callbackQueue={};}
var callbackQueue=this.__callbackQueue[scriptUrl];if(!callbackQueue){callbackQueue=this.__callbackQueue[scriptUrl]=new Array();}
return callbackQueue;};Loader.prototype.load=function(scriptName,scriptUrl,remote,asyncWait,cb){if(asyncWait==undefined)asyncWait=this.wait;if(remote&&asyncWait==0)asyncWait=this.defaultAsyncWait;if(!this.loadedScripts)this.loadedScripts=new Array();var callbackQueue=this.getCallbackQueue(scriptUrl);callbackQueue.push(new this.CallbackItem(function(){eXo.core.Loader.loadedScripts.push(eXo.core.Loader.registered[scriptName]);eXo.core.Loader.registered[scriptName]=false;},null));if(cb){callbackQueue.push(cb);if(callbackQueue.length>2)return;}
if(remote){this.srcScript(scriptUrl,asyncWait,callbackQueue);}else{var request=eXo.core.Browser.createHttpRequest();request.open('GET',scriptUrl,false);request.send(null);this.injectScript(request.responseText,scriptName);if(callbackQueue){for(var q=0;q<callbackQueue.length;q++){callbackQueue[q].invoke();}}
this.__callbackQueue[scriptUrl]=undefined;}};Loader.prototype.genScriptNode=function(){var scriptNode=document.createElement("script");scriptNode.setAttribute("type","text/javascript");scriptNode.setAttribute("language","JavaScript");return scriptNode;};Loader.prototype.srcScript=function(scriptUrl,asyncWait,callbackQueue){var scriptNode=this.genScriptNode();scriptNode.setAttribute("src",scriptUrl);if(callbackQueue){var execQueue=function(){eXo.core.Loader.__callbackQueue[scriptUrl]=undefined;for(var q=0;q<callbackQueue.length;q++){callbackQueue[q].invoke();}
callbackQueue=new Array();}
scriptNode.onload=scriptNode.onreadystatechange=function(){if((!scriptNode.readyState)||scriptNode.readyState=="loaded"||scriptNode.readyState=="complete"||scriptNode.readyState==4&&scriptNode.status==200){if(asyncWait>0){setTimeout(execQueue,asyncWait);}
else{execQueue();}}};}
var headNode=document.getElementsByTagName("head")[0];headNode.appendChild(scriptNode);};Loader.prototype.injectScript=function(scriptText,scriptName){var scriptNode=this.genScriptNode();try{scriptNode.setAttribute("name",scriptName);}catch(err){}
scriptNode.text=scriptText;var headNode=document.getElementsByTagName("head")[0];headNode.appendChild(scriptNode);};function durl(sc){var su=sc;if(sc&&sc.substring(0,4)=="url("){su=sc.substring(4,sc.length-1);}
var r=eXo.core.Loader.registered[su];return(!r&&(!this.__durls||!this.__durls[su])&&sc&&sc.length>4&&sc.substring(0,4)=="url(");};eXo.core.Loader=new Loader();function MouseEventManager(){};MouseEventManager.prototype.addMouseDownHandler=function(method){document.onmousedown=this.docMouseDownEvt;this.onMouseDownHandlers=method;};MouseEventManager.prototype.docMouseDownEvt=function(evt){if(!evt)evt=window.event;evt.cancelBubble=true;if(eXo.core.MouseEventManager.onMouseDownHandlers==null)return;if(typeof(eXo.core.MouseEventManager.onMouseDownHandlers)=="string")eval(eXo.core.MouseEventManager.onMouseDownHandlers);else eXo.core.MouseEventManager.onMouseDownHandlers(evt);document.onmousedown=null;};MouseEventManager.prototype.addMouseUpHandler=function(method){document.onmouseup=this.docMouseUpEvt;this.onMouseUpHandlers=method;};MouseEventManager.prototype.docMouseUpEvt=function(){var mouseUpHandlers=eXo.core.MouseEventManager.onMouseUpHandlers;};MouseEventManager.prototype.docMouseClickEvt=function(evt){if(!evt)evt=window.event;evt.cancelBubble=true;if(typeof(eXo.core.MouseEventManager.onMouseClickHandlers)=="string")eval(eXo.core.MouseEventManager.onMouseClickHandlers);else eXo.core.MouseEventManager.onMouseClickHandlers(evt);document.onclick=null;};MouseEventManager.prototype.addMouseClickHandler=function(method){document.onclick=this.docMouseClickEvt;this.onMouseClickHandlers=method;};eXo.core.MouseEventManager=new MouseEventManager();function UIMaskLayer(){};UIMaskLayer.prototype.createTransparentMask=function(position){var Browser=eXo.core.Browser;var ajaxLoading=document.getElementById("AjaxLoadingMask");var maskLayer=eXo.core.UIMaskLayer.createMask("UIPortalApplication",ajaxLoading,0,position);Browser.addOnScrollCallback("5439383",eXo.core.UIMaskLayer.setPosition);ajaxLoading.style.display="none";Browser.setOpacity(maskLayer,0);maskLayer.style.backgroundColor="white";maskLayer.style.cursor="wait";return maskLayer;};UIMaskLayer.prototype.showAjaxLoading=function(mask){var ajaxLoading=document.getElementById("AjaxLoadingMask");ajaxLoading.style.top=document.documentElement.scrollTop+"px";ajaxLoading.style.display="block";}
UIMaskLayer.prototype.removeTransparentMask=function(){var mask=document.getElementById("TransparentMaskLayer");if(mask){mask.style.height="0px";mask.style.width="0px";}};UIMaskLayer.prototype.removeMasks=function(maskLayer){eXo.core.UIMaskLayer.removeTransparentMask();eXo.core.UIMaskLayer.removeMask(maskLayer);};UIMaskLayer.prototype.createMask=function(blockContainerId,object,opacity,position){try{var Browser=eXo.core.Browser;if(typeof(blockContainerId)=="string")blockContainerId=document.getElementById(blockContainerId);var blockContainer=blockContainerId;var maskLayer=document.createElement("div");this.object=object;this.blockContainer=blockContainer;this.position=position;if(document.getElementById("MaskLayer")){document.getElementById("MaskLayer").id="subMaskLayer";}
blockContainer.appendChild(maskLayer);maskLayer.className="MaskLayer";maskLayer.id="MaskLayer";maskLayer.maxZIndex=eXo.webui.UIPopup.zIndex+1;var offsetParent=maskLayer.offsetParent;if(offsetParent&&eXo.core.Browser.findPosX(offsetParent)!=0&&eXo.core.Browser.findPosY(offsetParent)!=0){maskLayer.style.width=offsetParent.offsetWidth+"px";maskLayer.style.height=offsetParent.offsetHeight+"px";}else{maskLayer.style.width=Browser.getBrowserWidth()+"px";maskLayer.style.height=Browser.getBrowserHeight()+"px";}
maskLayer.style.top="0px";maskLayer.style.left="0px";maskLayer.style.zIndex=maskLayer.maxZIndex;if(opacity){Browser.setOpacity(maskLayer,opacity);}
if(object!=null){var tempNextSibling=document.createElement("span");if(object.nextSibling){object.parentNode.insertBefore(tempNextSibling,object.nextSibling);}else{object.parentNode.appendChild(tempNextSibling);}
maskLayer.nextSiblingOfObject=tempNextSibling;object.style.zIndex=maskLayer.maxZIndex;object.style.display="block";blockContainer.appendChild(object);eXo.core.UIMaskLayer.setPosition();if(eXo.core.I18n.isLT()){if((blockContainer.offsetWidth>object.offsetLeft+object.offsetWidth)&&(position=="TOP-RIGHT")||(position=="BOTTOM-RIGHT")){object.style.left=blockContainer.offsetWidth-object.offsetWidth+"px";}}
eXo.core.UIMaskLayer.doScroll();}
if(maskLayer.parentNode.id=="UIPage"){eXo.core.UIMaskLayer.enablePageDesktop(false);}}catch(err){alert(err);}
Browser.addOnResizeCallback(maskLayer.id,eXo.core.UIMaskLayer.resizeMaskLayer);return maskLayer;};UIMaskLayer.prototype.createMaskForFrame=function(blockContainerId,object,opacity){try{var Browser=eXo.core.Browser;if(typeof(blockContainerId)=="string")blockContainerId=document.getElementById(blockContainerId);var blockContainer=blockContainerId;var maskLayer=document.createElement("div");blockContainer.appendChild(maskLayer);maskLayer.className="MaskLayer";maskLayer.id=object.id+"MaskLayer";maskLayer.maxZIndex=3;maskLayer.style.width=blockContainer.offsetWidth+"px";maskLayer.style.height=blockContainer.offsetHeight+"px";window.setTimeout(function(){var temp=blockContainer.parentNode;var parentOfBlockContainer;do{parentOfBlockContainer=temp;temp=temp.parentNode;}while(temp&&eXo.core.DOMUtil.getStyle(parentOfBlockContainer,"position")==="static");maskLayer.style.top=eXo.core.Browser.findPosYInContainer(blockContainer,parentOfBlockContainer)+"px";maskLayer.style.left=eXo.core.Browser.findPosXInContainer(blockContainer,parentOfBlockContainer)+"px";},200);maskLayer.style.zIndex=maskLayer.maxZIndex;if(opacity){Browser.setOpacity(maskLayer,opacity);}
if(object!=null){var tempNextSibling=document.createElement("span");if(object.nextSibling){object.parentNode.insertBefore(tempNextSibling,object.nextSibling);}else{object.parentNode.appendChild(tempNextSibling);}
maskLayer.nextSiblingOfObject=tempNextSibling;object.style.zIndex=maskLayer.maxZIndex+1;object.style.display="block";blockContainer.appendChild(object);}}catch(err){}
return maskLayer;};UIMaskLayer.prototype.doScroll=function(){var maskLayer=document.getElementById("MaskLayer");if(maskLayer){var offsetParent=maskLayer.offsetParent;if(offsetParent&&eXo.core.Browser.findPosX(offsetParent)!=0||eXo.core.Browser.findPosY(offsetParent)!=0){maskLayer=document.getElementById("subMaskLayer");if(!maskLayer)
return;}
if(document.documentElement&&document.documentElement.scrollTop){maskLayer.style.top=document.documentElement.scrollTop+"px";}else{maskLayer.style.top=document.body.scrollTop+"px";}
setTimeout("eXo.core.UIMaskLayer.doScroll()",1);}else if(document.getElementById("subMaskLayer")){var subMaskLayer=document.getElementById("subMaskLayer");subMaskLayer.id="MaskLayer";eXo.core.UIMaskLayer.doScroll();}};UIMaskLayer.prototype.setPosition=function(){var UIMaskLayer=eXo.core.UIMaskLayer;var Browser=eXo.core.Browser;var object=UIMaskLayer.object;if(object&&object.previousSibling){var offsetParent=object.previousSibling.offsetParent;if(offsetParent&&(eXo.core.Browser.findPosX(offsetParent)!=0||eXo.core.Browser.findPosY(offsetParent)!=0)){eXo.portal.UIMaskWorkspace.resetPosition();}}
var blockContainer=UIMaskLayer.blockContainer;var position=UIMaskLayer.position;object.style.position="absolute";var left;var top;var topPos;if(document.documentElement&&document.documentElement.scrollTop){topPos=document.documentElement.scrollTop;}else{topPos=document.body.scrollTop;}
switch(position){case"TOP-LEFT":top=topPos;left=0;break;case"TOP-RIGHT":top=topPos;left=blockContainer.offsetWidth-object.offsetWidth;break;case"TOP-CENTER":top=topPos;left=(blockContainer.offsetWidth-object.offsetWidth)/2;break;case"BOTTOM-LEFT":left=0;top=Browser.getBrowserHeight()-object.offsetHeight+topPos;break;case"BOTTOM-CENTER":left=(blockContainer.offsetWidth-object.offsetWidth)/2;top=Browser.getBrowserHeight()-object.offsetHeight+topPos;break;case"BOTTOM-RIGHT":left=blockContainer.offsetWidth-object.offsetWidth;top=Browser.getBrowserHeight()-object.offsetHeight+topPos;break;default:left=(blockContainer.offsetWidth-object.offsetWidth)/2;top=(Browser.getBrowserHeight()-object.offsetHeight)/2+topPos;}
if((top+object.offsetHeight)>topPos+Browser.getBrowserHeight()){top=topPos+Browser.getBrowserHeight()-object.offsetHeight;}
object.style.left=left+"px";object.style.top=top+"px";};UIMaskLayer.prototype.removeMask=function(maskLayer){if(maskLayer){var parentNode=maskLayer.parentNode;maskLayer.nextSibling.style.display="none";maskLayer.nextSiblingOfObject.parentNode.insertBefore(maskLayer.nextSibling,maskLayer.nextSiblingOfObject);maskLayer.nextSiblingOfObject.parentNode.removeChild(maskLayer.nextSiblingOfObject);maskLayer.nextSiblingOfObject=null;parentNode.removeChild(maskLayer);}};UIMaskLayer.prototype.enablePageDesktop=function(enabled){var pageDesktop=document.getElementById("UIPageDesktop");if(pageDesktop){if(enabled){pageDesktop.style.zIndex="";}else{pageDesktop.style.zIndex="-1";}}};UIMaskLayer.prototype.resizeMaskLayer=function(){var maskLayer=document.getElementById("MaskLayer");if(maskLayer){var offsetParent=maskLayer.offsetParent;if(offsetParent&&(eXo.core.Browser.findPosX(offsetParent)!=0||eXo.core.Browser.findPosY(offsetParent)!=0)){maskLayer=document.getElementById("subMaskLayer");if(!maskLayer)
return;offsetParent=maskLayer.offsetParent;}}
if(maskLayer&&offsetParent&&eXo.core.Browser.findPosX(offsetParent)==0&&eXo.core.Browser.findPosY(offsetParent)==0){maskLayer.style.width=eXo.core.Browser.getBrowserWidth()+"px";maskLayer.style.height=eXo.core.Browser.getBrowserHeight()+"px";}};eXo.core.UIMaskLayer=new UIMaskLayer();function Skin(){};Skin.prototype.addSkin=function(componentId,url){var skin=document.getElementById(componentId);if(skin!=null)return;var link=document.createElement('link');link.setAttribute('id',componentId);link.setAttribute('rel','stylesheet');link.setAttribute('type','text/css');link.setAttribute('href',url);var head=document.getElementsByTagName("head")[0];head.appendChild(link);};Skin.prototype.addCoreSkin=function(componentId,url){if(document.getElementById(componentId)==null){var coreSkin=document.getElementById("CoreSkin");var head=coreSkin.parentNode;var link=document.createElement('link');link.setAttribute('id',componentId);link.setAttribute('rel','stylesheet');link.setAttribute('type','text/css');link.setAttribute('href',url);head.insertBefore(link,coreSkin);}};Skin.prototype.addApplicationSkin=function(componentId,url){if(document.getElementById(componentId)==null){var coreSkin=document.getElementById("PortalSkin");var head=coreSkin.parentNode;var link=document.createElement('link');link.setAttribute('id',componentId);link.setAttribute('rel','stylesheet');link.setAttribute('type','text/css');link.setAttribute('href',url);head.insertBefore(link,coreSkin);}};if(!eXo.core.Skin){eXo.core.Skin=new Skin();};function DragDropEvent(clickObject,dragObject){this.clickObject=clickObject;if(dragObject&&dragObject!=null){this.dragObject=dragObject;}else{this.dragObject=clickObject;}
this.foundTargetObject=null;this.lastFoundTargetObject=null;this.junkMove=false;if(eXo.core.I18n.isLT()&&isNaN(parseInt(this.dragObject.style.left)))this.dragObject.style.left="0px";if(eXo.core.I18n.isRT()&&isNaN(parseInt(this.dragObject.style.right)))this.dragObject.style.right="0px";if(isNaN(parseInt(this.dragObject.style.top)))this.dragObject.style.top="0px";};DragDropEvent.prototype.update=function(foundTargetObject,junkMove){this.lastFoundTargetObject=this.foundTargetObject;this.foundTargetObject=foundTargetObject;this.junkMove=junkMove;}
DragDropEvent.prototype.isJunkMove=function(){return this.junkMove;};function DragDrop(){this.dropableTargets=null;this.dndEvent=null;this.initCallback=null;this.dragCallback=null;this.dropCallback=null;this.destroyCallback=null;this.isJunkMoveCallback=null;};DragDrop.prototype.init=function(dropableTargets,clickObject,dragObject,evt){if(evt&&evt.preventDefault)evt.preventDefault();eXo.core.Mouse.init(evt);this.dropableTargets=dropableTargets;var dndEvent=this.dndEvent=new DragDropEvent(clickObject,dragObject);document.onmousemove=this.onMouseMove;document.onmouseup=this.onDrop;document.onmouseout=this.onCancel;document.onkeypress=this.onKeyPressEvt;if(this.initCallback!=null){this.initCallback(dndEvent);}};DragDrop.prototype.onKeyPressEvt=function(evt){if(!evt)evt=window.event;if(evt.keyCode==27)eXo.core.DragDrop.onDrop(evt);}
DragDrop.prototype.onMouseMove=function(evt){eXo.core.Mouse.update(evt);var dndEvent=eXo.core.DragDrop.dndEvent;dndEvent.backupMouseEvent=evt;var dragObject=dndEvent.dragObject;var y=parseInt(dragObject.style.top);var x=eXo.core.I18n.isRT()?parseInt(dragObject.style.right):parseInt(dragObject.style.left);if(eXo.core.I18n.isLT())dragObject.style["left"]=x+eXo.core.Mouse.deltax+"px";else dragObject.style["right"]=x-eXo.core.Mouse.deltax+"px";dragObject.style["top"]=y+eXo.core.Mouse.deltay+"px";if(eXo.core.DragDrop.dragCallback!=null){var foundTarget=eXo.core.DragDrop.findDropableTarget(dndEvent,eXo.core.DragDrop.dropableTargets,evt);var junkMove=eXo.core.DragDrop.isJunkMove(dragObject,foundTarget);dndEvent.update(foundTarget,junkMove);eXo.core.DragDrop.dragCallback(dndEvent);}
return false;};DragDrop.prototype.onDrop=function(evt){if(!evt)evt=window.event;if(eXo.core.DragDrop.dropCallback!=null){var dndEvent=eXo.core.DragDrop.dndEvent;dndEvent.backupMouseEvent=evt;var dragObject=dndEvent.dragObject;var foundTarget=eXo.core.DragDrop.findDropableTarget(dndEvent,eXo.core.DragDrop.dropableTargets,evt);var junkMove=eXo.core.DragDrop.isJunkMove(dragObject,foundTarget);dndEvent.update(foundTarget,junkMove);eXo.core.DragDrop.dropCallback(dndEvent);}
eXo.core.DragDrop.destroy();};DragDrop.prototype.onCancel=function(evt){if(eXo.core.DragDrop.cancelCallback)eXo.core.DragDrop.cancelCallback(eXo.core.DragDrop.dndEvent);};DragDrop.prototype.destroy=function(){if(this.destroyCallback!=null){this.destroyCallback(this.dndEvent);}
document.onmousemove=null;document.onmouseup=null;document.onmouseout=null;document.onkeypress=null;this.dndEvent=null;this.dropableTargets=null;this.initCallback=null;this.dragCallback=null;this.dropCallback=null;this.destroyCallback=null;this.isJunkMoveCallback=null;};DragDrop.prototype.findDropableTarget=function(dndEvent,dropableTargets,mouseEvent){if(dropableTargets==null)return null;var mousexInPage=eXo.core.Browser.findMouseXInPage(mouseEvent);var mouseyInPage=eXo.core.Browser.findMouseYInPage(mouseEvent);var clickObject=dndEvent.clickObject;var dragObject=dndEvent.dragObject;var foundTarget=null;var len=dropableTargets.length;for(var i=0;i<len;i++){var ele=dropableTargets[i];if(dragObject!=ele&&this.isIn(mousexInPage,mouseyInPage,ele)){if(foundTarget==null){foundTarget=ele;}else{if(eXo.core.DOMUtil.hasAncestor(ele,foundTarget)){foundTarget=ele;}}}}
return foundTarget;};DragDrop.prototype.isIn=function(x,y,component){var componentLeft=eXo.core.Browser.findPosX(component);var componentRight=componentLeft+component.offsetWidth;var componentTop=eXo.core.Browser.findPosY(component);var componentBottom=componentTop+component.offsetHeight;var isOver=false;if((componentLeft<x)&&(x<componentRight)){if((componentTop<y)&&(y<componentBottom)){isOver=true;}}
return isOver;};DragDrop.prototype.isJunkMove=function(src,target){if(this.isJunkMoveCallback!=null){return this.isJunkMoveCallback(src,target);}
if(target==null)return true;return false;};eXo.core.DragDrop=new DragDrop();var count=1;function DragDrop2(){var obj=null;DragDrop2.prototype.init=function(o,oRoot){o.onmousedown=eXo.core.DragDrop2.start;o.root=oRoot&&oRoot!=null?oRoot:o;o.root.onmousedown=function(){this.style.zIndex=++count;}
o.root.onDragStart=new Function();o.root.onDragEnd=new Function();o.root.onDrag=new Function();};DragDrop2.prototype.start=function(e){if(!e)e=window.event;if(((e.which)&&(e.which==2||e.which==3))||((e.button)&&(e.button==2))){return;}
var o=obj=this;e=eXo.core.DragDrop2.fixE(e);var y=parseInt(eXo.core.DOMUtil.getStyle(o.root,"top"));var x=parseInt(eXo.core.DOMUtil.getStyle(o.root,"left"));if(isNaN(x))x=0;if(isNaN(y))y=0;o.lastMouseX=eXo.core.Browser.findMouseXInPage(e);o.lastMouseY=eXo.core.Browser.findMouseYInPage(e);o.root.onDragStart(x,y,o.lastMouseX,o.lastMouseY,e);document.onmousemove=eXo.core.DragDrop2.drag;document.onmouseup=eXo.core.DragDrop2.end;document.onmouseout=eXo.core.DragDrop2.cancel;return false;};DragDrop2.prototype.drag=function(e){e=eXo.core.DragDrop2.fixE(e);var o=obj;var ey=eXo.core.Browser.findMouseYInPage(e);var ex=eXo.core.Browser.findMouseXInPage(e);var y=parseInt(eXo.core.DOMUtil.getStyle(o.root,"top"));var x=parseInt(eXo.core.DOMUtil.getStyle(o.root,"left"));if(isNaN(x))x=0;if(isNaN(y))y=0;var nx,ny;nx=x+(ex-o.lastMouseX);ny=y+(ey-o.lastMouseY);obj.root.style["left"]=nx+"px";obj.root.style["top"]=ny+"px";obj.lastMouseX=ex;obj.lastMouseY=ey;obj.root.onDrag(nx,ny,ex,ey,e);return false;};DragDrop2.prototype.end=function(e){e=eXo.core.DragDrop2.fixE(e);document.onmousemove=null;document.onmouseup=null;document.onmouseout=null;obj.root.onDragEnd(parseInt(obj.root.style["left"]),parseInt(obj.root.style["top"]),e.clientX,e.clientY);obj=null;};DragDrop2.prototype.cancel=function(e){if(obj.root.onCancel)obj.root.onCancel(e);};DragDrop2.prototype.fixE=function(e){if(typeof e=='undefined')e=window.event;if(typeof e.layerX=='undefined')e.layerX=e.offsetX;if(typeof e.layerY=='undefined')e.layerY=e.offsetY;return e;};};eXo.core.DragDrop2=new DragDrop2();function Topic(){this.topics={};this.nextListenerInstanceId_=0;}
Topic.prototype._normalizeTopicName=function(topic){if(topic.charAt(topic.length-1)!='/'){topic=topic+"/";}
return topic;}
Topic.prototype._getNextListenerInstanceId=function(){return this.nextListenerInstanceId_++;};Topic.prototype.publish=function(senderId,topicName,message){topicName=this._normalizeTopicName(topicName);var event={senderId:senderId,message:message,topic:topicName};for(var topic in this.topics){if(topic&&topicName.indexOf(topic)===0){var callbacks=this.topics[topic];for(var j=0;j<callbacks.length;j++){callback=callbacks[j];callback["func"](event);}}}}
Topic.prototype.isSubscribed=function(topic,func){topic=this._normalizeTopicName(topic);callbacks=this.topics[topic];if(!callbacks)
return false;for(var i=0;i<callbacks.length;i++){callback=callbacks[i];if(callback["func"]==func){return true;}}
return false;}
Topic.prototype.subscribe=function(topic,func){topic=this._normalizeTopicName(topic);if(this.isSubscribed(topic,func))
return-1;if(!this.topics[topic]){this.topics[topic]=new Array();}
var id=this._getNextListenerInstanceId();this.topics[topic][this.topics[topic].length]={id:id,func:func};return id;}
Topic.prototype.unsubscribe=function(topic,id){topic=this._normalizeTopicName(topic);callbacks=this.topics[topic];if(!callbacks)
return false;var removed=false;for(var i=0;i<callbacks.length;i++){callback=callbacks[i];if(removed){callbacks[i-1]=callbacks[i];}
if(callback["id"]==id){delete callbacks[i];removed=true;}}
if(removed){callbacks.length=callbacks.length-1;}
return removed;}
Topic.prototype.initCometdBridge=function(){eXo.core.Cometd.subscribe("/eXo/topics",function(event){if(event.data!=null&&event.data.topic!=null&&event.data.sender!=null&&event.data.message!=null){eXo.core.Topic.publish(event.data.sender,event.data.topic,event.data.message);}
else{eXo.core.Topic.publish("Topic Cometd bridge","/eXo/portal/notification","error in the message received from Cometd:"+event);}});}
eXo.core.Topic=new Topic();if(!eXo.core.JSON){JSON=function(){function f(n){return n<10?'0'+n:n;}
Date.prototype.toJSON=function(){return this.getUTCFullYear()+'-'+
f(this.getUTCMonth()+1)+'-'+
f(this.getUTCDate())+'T'+
f(this.getUTCHours())+':'+
f(this.getUTCMinutes())+':'+
f(this.getUTCSeconds())+'Z';};var m={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'};function stringify(value,whitelist){var a,i,k,l,r=/["\\\x00-\x1f\x7f-\x9f]/g,v;switch(typeof value){case'string':return r.test(value)?'"'+value.replace(r,function(a){var c=m[a];if(c){return c;}
c=a.charCodeAt();return'\\u00'+Math.floor(c/16).toString(16)+
(c%16).toString(16);})+'"':'"'+value+'"';case'number':return isFinite(value)?String(value):'null';case'boolean':case'null':return String(value);case'object':if(!value){return'null';}
if(typeof value.toJSON==='function'){return stringify(value.toJSON());}
a=[];if(typeof value.length==='number'&&!(value.propertyIsEnumerable('length'))){l=value.length;for(i=0;i<l;i+=1){a.push(stringify(value[i],whitelist)||'null');}
return'['+a.join(',')+']';}
if(whitelist){l=whitelist.length;for(i=0;i<l;i+=1){k=whitelist[i];if(typeof k==='string'){v=stringify(value[k],whitelist);if(v){a.push(stringify(k)+':'+v);}}}}else{for(k in value){if(typeof k==='string'){v=stringify(value[k],whitelist);if(v){a.push(stringify(k)+':'+v);}}}}
return'{'+a.join(',')+'}';}}
return{stringify:stringify,parse:function(text,filter){var j;function walk(k,v){var i,n;if(v&&typeof v==='object'){for(i in v){if(Object.prototype.hasOwnProperty.apply(v,[i])){n=walk(i,v[i]);if(n!==undefined){v[i]=n;}}}}
return filter(k,v);}
if(/^[\],:{}\s]*$/.test(text.replace(/\\./g,'@').replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,']').replace(/(?:^|:|,)(?:\s*\[)+/g,''))){j=eval('('+text+')');return typeof filter==='function'?walk('',j):j;}
throw new SyntaxError('parseJSON');}};}();eXo.core.JSON=JSON;}
function Cometd(){this._connected=false;this._polling=false;this._connecting=false;this.currentTransport=null;this.url='/cometd/cometd';this.id=null;this.exoId=null;this.exoToken=null;var Browser=eXo.core.Browser;this.clientId=Browser.getCookie('cometdClientID')||false;this.messageId=0;this.batch=0;this._subscriptions=[];this._messageQ=[];this._connectionReadyCallbacks=[];this._maxInterval=5*1000;this._backoffInterval=1000;this._maxTry=5;this._tryToOpenTunnelCnt=0;this._retryInterval=0;this._multiClientsDetectCnt=0;}
Cometd.prototype.init=function(forceDisconnect){this._tryToOpenTunnelCnt=0;if((!forceDisconnect&&this._connected)||this._connecting){return;}
if(!this.currentTransport){this.currentTransport=new eXo.portal.LongPollTransport();this.currentTransport.init(this);}
if(this.clientId)
this.currentTransport.initTunnel();else
this.currentTransport.initHandshake();};Cometd.prototype.addOnConnectionReadyCallback=function(handle){if(handle){this._connectionReadyCallbacks.push(handle);}};Cometd.prototype.removeOnConnectionReadtCallback=function(handle){for(var i=0;i<this._connectionReadyCallbacks.length;i++){if(this._connectionReadyCallbacks[i]==handle){this._connectionReadyCallbacks[i]=this._connectionReadyCallbacks[this._connectionReadyCallbacks.length-1];this._connectionReadyCallbacks.pop();break;}}};Cometd.prototype.deliver=function(messages){messages.each(this._deliver,this);return messages;}
Cometd.prototype.isConnected=function(){return this._connected;}
Cometd.prototype._deliver=function(message){if(!message['channel']){if(message['success']!==true){return;}}
this.lastMessage=message;if(message.advice){this.adviceBackup=this.advice;this.advice=message.advice;this.multiClients=message.advice['multiple-clients'];if(this.multiClients){this._multiClientsDetectCnt++;if(this._multiClientsDetectCnt==1){}}else{this._multiClientsDetectCnt=0;this.resetRetryInterval();}}
if((message['channel'])&&(message.channel.length>5)&&(message.channel.substr(0,5)=='/meta')){switch(message.channel){case'/meta/connect':if(message.successful&&!this._connected){this._connected=true;this.endBatch();}
break;case'/meta/subscribe':if(!message.successful){alert('todo manage error subscription');return;}
break;case'/meta/unsubscribe':if(!message.successful){alert('todo manage error unsubscription');return;}
break;}}
if(message.data){var tname=message.channel;var def=this._subscriptions[tname];if(def)
def(message);}}
Cometd.prototype._sendMessage=function(message){if(this.currentTransport&&this._connected&&this.batch==0){return this.currentTransport.sendMessages([message]);}
else{this._messageQ.push(message);}}
Cometd.prototype.subscribe=function(channel,callback){if(callback){var tname=channel;var subs=this._subscriptions[tname];if(!subs||subs.length==0){subs=[];var message={channel:'/meta/subscribe',subscription:channel,exoId:this.exoId,exoToken:this.exoToken}
this._sendMessage(message);}
this._subscriptions[tname]=callback;}}
Cometd.prototype.unsubscribe=function(channel){var tname=channel;if(this._subscriptions[tname]){this._subscriptions[tname]=null;}
this._sendMessage({channel:'/meta/unsubscribe',subscription:channel,exoId:this.exoId,exoToken:this.exoToken});}
Cometd.prototype.startBatch=function(){this.batch++;}
Cometd.prototype.increaseRetryInterval=function(){this.advice=this.advice||{};if(!this.advice.interval||(this.advice.interval&&this.advice.interval>this._maxInterval)){this.resetRetryInterval();}else{this._retryInterval+=this._backoffInterval;this.advice.interval=this._retryInterval;}}
Cometd.prototype.resetRetryInterval=function(){if(this.advice)
this.advice.interval=0;this._retryInterval=0;}
Cometd.prototype.endBatch=function(){this._tryToOpenTunnelCnt=0;this._connecting=false;for(var i=0;i<this._connectionReadyCallbacks.length;i++){var handler=this._connectionReadyCallbacks[i];if(handler){handler();}}
if(--this.batch<=0&&this.currentTransport&&this._connected){this.batch=0;var messages=this._messageQ;this._messageQ=[];if(messages.length>0){this.currentTransport.sendMessages(messages);}}}
Cometd.prototype.disconnect=function(){this._tryToOpenTunnelCnt=0;this._subscriptions.each(this.unsubscribe,this);this._messageQ=[];if(this.currentTransport){this.currentTransport.disconnect();}
if(!this._polling)
this._connected=false;}
Cometd.prototype._backoff=function(){if(!this.advice||!this.advice.interval){this.advice={reconnect:'retry',interval:0};}
this.increaseRetryInterval();}
function LongPollTransport(){var instance=new Object();instance.init=function(cometd){this._connectionType='long-polling';this._cometd=cometd;}
instance.startup=function(){var request=new eXo.portal.AjaxRequest('POST',this._cometd.url);request.onSuccess=this._cometd.deliver;request.process();}
instance.initHandshake=function(){var message={channel:'/meta/handshake',id:this._cometd.messageId++,exoId:this._cometd.exoId,exoToken:this._cometd.exoToken};var query='message='+eXo.core.JSON.stringify(message);var request=new eXo.portal.AjaxRequest('POST',this._cometd.url,query);request.onSuccess=function(request){this.finishInitHandshake(request.evalResponse());}.bind(this);request.onError=function(err){throw(new Error('request Error, need to manage this error'));}.bind(this);request.process();}
instance.finishInitHandshake=function(data){data=data[0];this._cometd.handshakeReturn=data;if(data['advice']){this._cometd.advice=data.advice;}
if(!data.successful){if(this._cometd.advice&&this._cometd.advice['reconnect']=='none'){return;}
if(this._cometd.advice&&this._cometd.advice['interval']&&this._cometd.advice.interval>0){setTimeout(function(){eXo.core.Cometd.init();},this._cometd._retryInterval);}else{this._cometd.init(this.url,this._props);}
return;}
if(data.version<this.minimumVersion){return;}
this._cometd.clientId=data.clientId;eXo.core.Browser.setCookie('cometdClientID',this._cometd.clientId,1);this.initTunnel();}
instance.initTunnel=function(){var message={channel:'/meta/connect',clientId:this._cometd.clientId,connectionType:this._connectionType,id:this._cometd.messageId++};this.openTunnelWith({message:eXo.core.JSON.stringify(message)});}
instance.openTunnelWith=function(content,url){this._cometd._polling=true;var query='message='+content.message;var request=new eXo.portal.AjaxRequest('POST',(url||this._cometd.url),query);request.timeout=180000;request.onSuccess=function(request){this._cometd._polling=false;if(request.status>=200&&request.status<300){this._cometd.deliver(request.evalResponse());}
else
this._cometd._backoff();this.tunnelReq=null;this.tunnelCollapse();}.bind(this);request.onError=function(err){this.tunnelReq=null;this._cometd._polling=false;this._cometd._tryToOpenTunnelCnt++;this.tunnelCollapse();throw(new Error('tunnel opening failed'));}.bind(this);request.process();}
instance.tunnelCollapse=function(){if(this._cometd._tryToOpenTunnelCnt>this._cometd._maxTry){return;}
if(!this._cometd._polling){this._cometd._polling=false;if(this._cometd['advice']){if(this._cometd.advice['reconnect']=='none'){return;}
if((this._cometd.advice['interval'])&&(this._cometd.advice.interval>0)){var transport=this;setTimeout(function(){transport._connect();},this._cometd._retryInterval);this._cometd.increaseRetryInterval();}else{this._connect();this._cometd.increaseRetryInterval();}}else{this._connect();this._cometd.increaseRetryInterval();}}}
instance._connect=function(){if((this._cometd['advice'])&&(this._cometd.advice['reconnect']=='handshake')){this._cometd.clientId=null;this._cometd.init(this._cometd.url,this._cometd._props);}else if(this._cometd._connected){this.openTunnelWith({message:eXo.core.JSON.stringify([{channel:'/meta/connect',connectionType:this._connectionType,clientId:this._cometd.clientId,timestamp:this.lastTimestamp,id:''+this._cometd.messageId++}])});}}
instance.sendMessages=function(messages){for(var i=0;i<messages.length;i++){messages[i].clientId=this._cometd.clientId;messages[i].id=''+this._cometd.messageId++;}
var query='message='+eXo.core.JSON.stringify(messages);var request=new eXo.portal.AjaxRequest('POST',this._cometd.url,query);request.onSuccess=function(request){this._cometd.deliver(request.evalResponse());}.bind(this);request.onError=function(err){throw(new Error('error sending the message'));}.bind(this);request.process();}
instance.disconnect=function(){var query='message='+eXo.core.JSON.stringify([{channel:'/meta/disconnect',clientId:this._cometd.clientId,id:''+this._cometd.messageId++}]);var request=new eXo.portal.AjaxRequest('POST',this._cometd.url,query);request.process();}
return instance;}
eXo.core.Cometd=new Cometd();eXo.portal.LongPollTransport=LongPollTransport.prototype.constructor;function Spliter(){};Spliter.prototype.exeRowSplit=function(e,markerobj){_e=(window.event)?window.event:e;this.posY=_e.clientY;var marker=(typeof(markerobj)=="string")?document.getElementById(markerobj):markerobj;this.beforeArea=eXo.core.DOMUtil.findPreviousElementByTagName(marker,"div");this.afterArea=eXo.core.DOMUtil.findNextElementByTagName(marker,"div");this.beforeArea.style.height=this.beforeArea.offsetHeight+"px";this.afterArea.style.height=this.afterArea.offsetHeight+"px";this.beforeY=this.beforeArea.offsetHeight;this.afterY=this.afterArea.offsetHeight;document.onmousemove=eXo.core.Spliter.adjustHeight;document.onmouseup=eXo.core.Spliter.clear;};Spliter.prototype.adjustHeight=function(evt){evt=(window.event)?window.event:evt;var Spliter=eXo.core.Spliter;var delta=evt.clientY-Spliter.posY;var afterHeight=(Spliter.afterY-delta);var beforeHeight=(Spliter.beforeY+delta);if(beforeHeight<=0||afterHeight<=0)return;Spliter.beforeArea.style.height=beforeHeight+"px";Spliter.afterArea.style.height=afterHeight+"px";};Spliter.prototype.clear=function(){document.onmousemove=null;};eXo.core.Spliter=new Spliter();function AnimationSlider(){this.timerlen=5;this.slideAniLen=1000;this.timerID=new Array();this.startTime=new Array();this.obj=new Array();this.endHeight=new Array();this.moving=new Array();this.endSlideUpCallback=new Array();this.dir=new Array();}
AnimationSlider.prototype.slidedown=function(objname){if(this.moving[objname])
return;if(document.getElementById(objname).style.display!="none")
return;this.moving[objname]=true;this.dir[objname]="down";this.startslide(objname);}
AnimationSlider.prototype.slidedownup=function(objname,endSlideUpCallback){this.slidedown(objname);this.endSlideUpCallback[objname]=endSlideUpCallback;setTimeout("eXo.core.Notification.AnimationSlider.slideup('"+objname+"')",3000);}
AnimationSlider.prototype.slideup=function(objname){if(this.moving[objname])
return;if(document.getElementById(objname).style.display=="none")
return;this.moving[objname]=true;this.dir[objname]="up";this.startslide(objname);}
AnimationSlider.prototype.startslide=function(objname){this.obj[objname]=document.getElementById(objname);this.endHeight[objname]=parseInt(this.obj[objname].style.height);this.startTime[objname]=(new Date()).getTime();if(this.dir[objname]=="down"){this.obj[objname].style.height="1px";}
this.obj[objname].style.display="block";this.timerID[objname]=setInterval('eXo.core.Notification.AnimationSlider.slidetick(\''+objname+'\');',this.timerlen);}
AnimationSlider.prototype.slidetick=function(objname){var elapsed=(new Date()).getTime()-this.startTime[objname];if(elapsed>this.slideAniLen)
this.endSlide(objname);else{var before="before:"+this.obj[objname].id+"-"+this.obj[objname].style.height+"-";var d=Math.round(elapsed/this.slideAniLen*this.endHeight[objname]);if(this.dir[objname]=="up")
d=this.endHeight[objname]-d;this.obj[objname].style.height=d+"px";}
return;}
AnimationSlider.prototype.endSlide=function(objname){clearInterval(this.timerID[objname]);if(this.dir[objname]=="up"){this.obj[objname].style.display="none";if(this.endSlideUpCallback[objname]){this.endSlideUpCallback[objname](objname);}}
this.obj[objname].style.height=this.endHeight[objname]+"px";delete(this.moving[objname]);delete(this.timerID[objname]);delete(this.startTime[objname]);delete(this.endHeight[objname]);delete(this.obj[objname]);delete(this.dir[objname]);return;}
function Notification(){this.msgId=0;if(eXo.core.Topic!=null){eXo.core.Topic.subscribe("/eXo/portal/notification",function(event){eXo.core.Notification.addMessage(event.message);})}}
Notification.prototype.deleteBox=function(objname){var el=document.getElementById(objname);el.parentNode.removeChild(el);}
Notification.prototype.addMessage=function(msg){var currBoxId="messageBox_"+this.msgId++;var msgEl=document.createElement('div');msgEl.id=currBoxId;msgEl.style.width="200px";msgEl.style.height="75px";msgEl.style.display="none";msgEl.className="messageBox";msgEl.innerHTML="<div id='messageContent'>"+msg+"</div>";var msgsEl=document.getElementById("msgs");if(msgsEl==null){document.body.appendChild(document.createElement('div')).id="msgs";msgsEl=document.getElementById("msgs");}
msgsEl.appendChild(msgEl);eXo.core.Notification.AnimationSlider.slidedownup(currBoxId,this.deleteBox);}
eXo.core.Notification=new Notification();eXo.core.Notification.AnimationSlider=new AnimationSlider();function I18n(){this.init();}
I18n.prototype.init=function(){var html=document.getElementsByTagName('html')[0];var lang=html.getAttribute('xml:lang')||html.getAttribute('lang')||"en";var dir=html.getAttribute('dir')||"lt";this.lang=lang;this.dir=dir;this.orientation="rtl"==dir?"rt":"lt";this.lt=this.orientation=="lt";}
I18n.prototype.getLanguage=function(){return this.lang;}
I18n.prototype.getOrientation=function(){return this.orientation;}
I18n.prototype.getDir=function(){return!this.lt;}
I18n.prototype.isLT=function(){return this.lt;}
I18n.prototype.isRT=function(){return!this.lt;}
eXo.core.I18n=new I18n();eXo.gadget.UIGadget={createGadget:function(url,id,metadata,userPref,view,hostName,isdev,debug,nocache){window.gadgets=window.gadgets||{};eXo.gadgets=window.gadgets;if(!eXo.gadgets||!eXo.gadgets.rpc){eXo.core.Loader.register('rpc','1.0.0',true,0,hostName+'/js/pubsub.js?c=1');eXo.core.Loader.register('eXo.gadgets.Gadgets','/eXoResources/javascript/eXo/gadget/Gadgets.js');eXo.core.Loader.register('eXo.gadgets.ExoBasedUserPrefStore','/eXoResources/javascript/eXo/gadget/ExoBasedUserPrefStore.js');}
eXo.core.Loader.init("rpc","eXo.gadgets.Gadgets","eXo.gadgets.ExoBasedUserPrefStore",eXo.gadget.UIGadget.createCallback,null,arguments);},createCallback:function(url,id,metadata,userPref,view,hostName,isdev,debug,nocache){var language=eXo.core.I18n.getLanguage();gadgets.container.setLanguage(language);var gadget;if(metadata!=null){if(metadata.modulePrefs.height==0&&view=='canvas'){metadata.modulePrefs.height="800px";}
gadget=gadgets.container.createGadget({specUrl:url,height:metadata.modulePrefs.height,secureToken:metadata.secureToken,view:view});gadget.metadata=metadata;}else{gadget=gadgets.container.createGadget({specUrl:url});}
gadget.parentId=id;gadget.debug=debug;gadget.nocache=nocache;gadget.isdev=isdev;gadget.serverBase_=hostName;gadgets.container.addGadget(gadget);if(userPref!=null)gadget.userPrefs_=userPref;var gadgetBlock=document.getElementById(id);gadgetBlock.innerHTML="<div id='gadget_"+gadget.id+"' class='UIGadgetContent'> </div>";gadgets.container.renderGadgets();var uiGadget=eXo.core.DOMUtil.findAncestorByClass(gadgetBlock,"UIGadget");if(uiGadget!=null){var isDesktop=false;if(uiGadget.parentNode.className=="UIPageDesktop"){uiGadget.style.position="absolute";isDesktop=true;}
else uiGadget.style.width="auto";eXo.gadget.UIGadget.init(uiGadget,isDesktop,gadget.metadata);}
gadgets.pubsubrouter.init(function(id){return url;},{});},init:function(uiGadget,inDesktop,metadata){var portletFragment=eXo.core.DOMUtil.findAncestorByClass(uiGadget,"PORTLET-FRAGMENT");if(portletFragment==null){uiGadget.onmouseover=eXo.gadget.UIGadget.showGadgetControl;uiGadget.onmouseout=eXo.gadget.UIGadget.hideGadgetControl;}else{var gadgetControl=eXo.core.DOMUtil.findFirstDescendantByClass(uiGadget,"div","GadgetControl");gadgetControl.style.display="block";var gadgetTitle=eXo.core.DOMUtil.findFirstDescendantByClass(gadgetControl,"span","GadgetTitle");gadgetTitle.style.display="block";if(metadata&&metadata.modulePrefs.title!=null&&metadata.modulePrefs.title.length>0)gadgetTitle.innerHTML=metadata.modulePrefs.title;}
if(inDesktop){var dragHandleArea=eXo.core.DOMUtil.findFirstDescendantByClass(uiGadget,"div","GadgetDragHandleArea");if(uiGadget.style.zIndex<0)uiGadget.style.zIndex=0;eXo.core.DragDrop2.init(dragHandleArea,uiGadget);var uiPageDesktop=document.getElementById("UIPageDesktop");var offsetHeight=uiPageDesktop.offsetHeight-uiGadget.offsetHeight;var offsetWidth=uiPageDesktop.offsetWidth-uiGadget.offsetWidth;var dragPosX=uiGadget.offsetLeft;var dragPosY=uiGadget.offsetTop;if(dragPosX<0)uiGadget.style.left="0px";if(dragPosY<0)uiGadget.style.top="0px";if(dragPosY>offsetHeight)uiGadget.style.top=offsetHeight+"px";if(dragPosX>offsetWidth)uiGadget.style.left=offsetWidth+"px";uiGadget.onDragStart=function(x,y,lastMouseX,lastMouseY,e){var uiPageDesktop=document.getElementById("UIPageDesktop");if(uiPageDesktop==null)return;var uiGadgets=eXo.core.DOMUtil.findChildrenByClass(uiPageDesktop,"div","UIGadget");for(var i=0;i<uiGadgets.length;i++){var uiMask=eXo.core.DOMUtil.findFirstDescendantByClass(uiGadgets[i],"div","UIMask");if(uiMask!=null){var gadgetContent=eXo.core.DOMUtil.findFirstDescendantByClass(uiGadgets[i],"div","gadgets-gadget-content");uiMask.style.marginTop=-gadgetContent.offsetHeight+"px";uiMask.style.height=gadgetContent.offsetHeight+"px";uiMask.style.width=gadgetContent.offsetWidth+"px";uiMask.style.backgroundColor="white";eXo.core.Browser.setOpacity(uiMask,3);uiMask.style.display="block";}}}
uiGadget.onDrag=function(nx,ny,ex,ey,e){if(nx<0)uiGadget.style.left="0px";if(ny<0)uiGadget.style.top="0px";}
uiGadget.onDragEnd=function(x,y,clientX,clientY){var uiPageDesktop=document.getElementById("UIPageDesktop");var uiGadgets=eXo.core.DOMUtil.findChildrenByClass(uiPageDesktop,"div","UIGadget");for(var i=0;i<uiGadgets.length;i++){var uiMask=eXo.core.DOMUtil.findFirstDescendantByClass(uiGadgets[i],"div","UIMask");if(uiMask){uiMask.style.display="none";}}
var offsetHeight=uiPageDesktop.offsetHeight-uiGadget.offsetHeight;var offsetWidth=uiPageDesktop.offsetWidth-uiGadget.offsetWidth;var dragPosX=uiGadget.offsetLeft;var dragPosY=uiGadget.offsetTop;if(dragPosX<0)uiGadget.style.left="0px";if(dragPosY<0)uiGadget.style.top="0px";if(dragPosY>offsetHeight)uiGadget.style.top=offsetHeight+"px";if(dragPosX>offsetWidth)uiGadget.style.left=offsetWidth+"px";eXo.gadget.UIGadget.saveWindowProperties(uiGadget);}}},showGadgetControl:function(e){if(!e)e=window.event;e.cancelBubble=true;var DOMUtil=eXo.core.DOMUtil;var uiGadget=this;var gadgetControl=DOMUtil.findFirstDescendantByClass(uiGadget,"div","GadgetControl");gadgetControl.style.visibility="visible";var uiPageDesktop=DOMUtil.findAncestorByClass(uiGadget,"UIPageDesktop");if(uiPageDesktop){var dragHandleArea=DOMUtil.findFirstDescendantByClass(gadgetControl,"div","GadgetTitle");}},hideGadgetControl:function(e){if(!e)e=window.event;e.cancelBubble=true;var uiGadget=this;var gadgetControl=eXo.core.DOMUtil.findFirstDescendantByClass(uiGadget,"div","GadgetControl");gadgetControl.style.visibility="hidden";uiGadget.style.border="none";},editGadget:function(id){var DOMUtil=eXo.core.DOMUtil;var uiapp=document.getElementById(id);var id=eXo.core.DOMUtil.findFirstDescendantByClass(uiapp,"iframe","gadgets-gadget");var tempId=id.id.split('_')[2];gadgets.container.getGadget(tempId).handleOpenUserPrefsDialog();},minimizeGadget:function(selectedElement){var DOMUtil=eXo.core.DOMUtil;var uiGadget=DOMUtil.findAncestorByClass(selectedElement,"UIGadget");var portletFrag=DOMUtil.findAncestorByClass(uiGadget,"PORTLET-FRAGMENT");if(!portletFrag)return;var gadgetApp=DOMUtil.findFirstChildByClass(uiGadget,"div","GadgetApplication");var minimized=false;if(gadgetApp.style.display!="none"){minimized=true;gadgetApp.style.display="none";DOMUtil.replaceClass(selectedElement,"MinimizeGadget","RestoreGadget");selectedElement.title=selectedElement.getAttribute("unminiTitle");}else{minimized=false;gadgetApp.style.display="block";DOMUtil.replaceClass(selectedElement,"RestoreGadget","MinimizeGadget");selectedElement.title=selectedElement.getAttribute("miniTitle");}
var compId=portletFrag.parentNode.id;var uicomp=DOMUtil.findAncestorByClass(uiGadget,"UIDashboard");var href=eXo.env.server.portalBaseURL+"?portal:componentId="+compId;href+="&portal:type=action&uicomponent="+uicomp.id;href+="&op=MinimizeGadget";href+="&minimized="+minimized;href+="&objectId="+uiGadget.id+"&ajaxRequest=true";ajaxGet(href);if(uiGadget.minimizeCallback)uiGadget.minimizeCallback(portletFrag.parentNode.id);},maximizeGadget:function(selectedElement){var DOMUtil=eXo.core.DOMUtil;var uiGadget=DOMUtil.findAncestorByClass(selectedElement,"UIGadget");var portletFrag=DOMUtil.findAncestorByClass(uiGadget,"PORTLET-FRAGMENT");if(!portletFrag)return;var compId=portletFrag.parentNode.id;var uicomp=DOMUtil.findAncestorByClass(uiGadget,"UIDashboard");var compDisplay=DOMUtil.findAncestorByClass(uiGadget,"UIDashboardContainer");var maximize=compDisplay?"maximize":"unmaximize";var href=eXo.env.server.portalBaseURL+"?portal:componentId="+compId;href+="&portal:type=action&uicomponent="+uicomp.id;href+="&op=MaximizeGadget";href+="&maximize="+maximize;href+="&objectId="+uiGadget.id+"&ajaxRequest=true";ajaxGet(href,true);},deleteGadget:function(selectedElement){var DOMUtil=eXo.core.DOMUtil;var uiPage=DOMUtil.findAncestorByClass(selectedElement,"UIPage");var uiGadget=DOMUtil.findAncestorByClass(selectedElement,"UIGadget");var containerBlockId;var portletFragment=DOMUtil.findAncestorByClass(uiGadget,"PORTLET-FRAGMENT");if(portletFragment!=null){var compId=portletFragment.parentNode.id;var uicomp=DOMUtil.findAncestorByClass(uiGadget,"UIDashboard").id;if(confirm(this.confirmDeleteGadget)){var href=eXo.env.server.portalBaseURL+"?portal:componentId="+compId;href+="&portal:type=action&uicomponent="+uicomp;href+="&op=DeleteGadget";href+="&objectId="+uiGadget.id+"&ajaxRequest=true";var uiDashboardCont=DOMUtil.findAncestorByClass(uiGadget,"UIDashboardContainer");if(uiDashboardCont){ajaxGet(href);DOMUtil.removeElement(uiGadget);if(!DOMUtil.findFirstDescendantByClass(uiDashboardCont,"div","UIGadget")){DOMUtil.findFirstDescendantByClass(uiDashboardCont,"div","NoGadget").style.display="block";}}else{ajaxGet(href);}}}else{var uiPageIdNode=DOMUtil.findFirstDescendantByClass(uiPage,"div","id");containerBlockId=uiPageIdNode.innerHTML;if(confirm(this.confirmDeleteGadget)){var params=[{name:"objectId",value:uiGadget.id}];var result=ajaxAsyncGetRequest(eXo.env.server.createPortalURL(containerBlockId,"DeleteGadget",true,params),false);if(result=="OK"){DOMUtil.removeElement(uiGadget);}}}},saveWindowProperties:function(object){var DOMUtil=eXo.core.DOMUtil;var uiPage=DOMUtil.findAncestorByClass(object,"UIPage");var uiPageIdNode=DOMUtil.findFirstDescendantByClass(uiPage,"div","id");containerBlockId=uiPageIdNode.innerHTML;var gadgetApp=DOMUtil.findFirstDescendantByClass(object,"div","GadgetApplication");var params=[{name:"objectId",value:object.id},{name:"posX",value:object.offsetLeft},{name:"posY",value:object.offsetTop},{name:"zIndex",value:object.style.zIndex}];ajaxAsyncGetRequest(eXo.env.server.createPortalURL(containerBlockId,"SaveGadgetProperties",true,params),false);},resizeFullHeight:function(componentId){var gadget=document.getElementById(componentId);var portlet=eXo.core.DOMUtil.findAncestorByClass(gadget,"PORTLET-FRAGMENT");eXo.core.Browser.fillUpFreeSpace(portlet);}}
function PortletResponse(responseDiv){var DOMUtil=eXo.core.DOMUtil;var div=eXo.core.DOMUtil.getChildrenByTagName(responseDiv,"div");this.portletId=div[0].innerHTML;this.portletData=div[1].innerHTML;this.blocksToUpdate=null;var blocks=DOMUtil.findChildrenByClass(div[1],"div","BlockToUpdate");if(blocks.length>0){this.blocksToUpdate=new Array();for(var i=0;i<blocks.length;i++){var obj=new Object();var div=eXo.core.DOMUtil.getChildrenByTagName(blocks[i],"div");obj.blockId=div[0].innerHTML;obj.data=div[1];this.blocksToUpdate[i]=obj;this.blocksToUpdate[i].scripts=eXo.core.DOMUtil.findDescendantsByTagName(div[1],"script");}}else{this.scripts=eXo.core.DOMUtil.findDescendantsByTagName(div[1],"script");}};function PortalResponse(responseDiv){var DOMUtil=eXo.core.DOMUtil;this.portletResponses=new Array();var div=DOMUtil.getChildrenByTagName(responseDiv,"div");for(var i=0;i<div.length;i++){if(div[i].className=="PortletResponse"){this.portletResponses[this.portletResponses.length]=new PortletResponse(div[i]);}else if(div[i].className=="PortalResponseData"){this.data=div[i];var blocks=DOMUtil.findChildrenByClass(div[i],"div","BlockToUpdate");this.blocksToUpdate=new Array();for(var j=0;j<blocks.length;j++){var obj=new Object();var dataBlocks=DOMUtil.getChildrenByTagName(blocks[j],"div");obj.blockId=dataBlocks[0].innerHTML;obj.data=dataBlocks[1];this.blocksToUpdate[j]=obj;this.blocksToUpdate[j].scripts=eXo.core.DOMUtil.findDescendantsByTagName(dataBlocks[1],"script");}}else if(div[i].className=="MarkupHeadElements"){this.markupHeadElements=new MarkupHeadElements(div[i]);}else if(div[i].className=="PortalResponseScript"){this.script=div[i].innerHTML;div[i].style.display="none";}}};function MarkupHeadElements(fragment){var DOMUtil=eXo.core.DOMUtil;this.titles=DOMUtil.findDescendantsByTagName(fragment,"title");this.bases=DOMUtil.findDescendantsByTagName(fragment,"base");this.links=DOMUtil.findDescendantsByTagName(fragment,"link");this.metas=DOMUtil.findDescendantsByTagName(fragment,"meta");this.scripts=DOMUtil.findDescendantsByTagName(fragment,"script");this.styles=DOMUtil.findDescendantsByTagName(fragment,"style");}
function appendScriptToHead(scriptId,scriptElement){var head=document.getElementsByTagName("head")[0];var descendant=eXo.core.DOMUtil.findDescendantById(head,scriptId);var script;if(descendant){head.removeChild(descendant);}
script=document.createElement('script');script.id=scriptId;script.type='text/javascript';if(scriptElement.src){script.src=scriptElement.src;}else{script.text=scriptElement.innerHTML;}
head.appendChild(script);};function AjaxRequest(method,url,queryString){var instance=new Object();instance.timeout=80000;instance.aborted=false;if(method!=null)instance.method=method;else instance.method="GET";if(url!=null)instance.url=url;else instance.url=window.location.href;if(queryString!=null)instance.queryString=queryString;else instance.queryString=null;instance.request=null;instance.responseReceived=false;instance.status=null;instance.statusText=null;instance.responseText=null;instance.responseXML=null;instance.onTimeout=null;instance.onLoading=null;instance.onLoaded=null;instance.onInteractive=null;instance.onComplete=null;instance.onSuccess=null;instance.callBack=null;instance.onError=null;instance.isAsynchronize=function(){var isASync=false;var name="ajax_async";name=name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");var regexS="[\\?&]"+name+"=([^&#]*)";var regex=new RegExp(regexS);var results=regex.exec(instance.url);if(results!=null){isASync=(results[1]=="true")?true:false;}
return isASync;};instance.onLoadingInternalHandled=false;instance.onLoadedInternalHandled=false;instance.onInteractiveInternalHandled=false;instance.onCompleteInternalHandled=false;instance.request=eXo.core.Browser.createHttpRequest();instance.request.onreadystatechange=function(){if(instance==null||instance.request==null){return;}
if(instance.request.readyState==1){instance.onLoadingInternal(instance);}
if(instance.request.readyState==2){instance.onLoadedInternal(instance);}
if(instance.request.readyState==3){instance.onInteractiveInternal(instance);}
if(instance.request.readyState==4){instance.onCompleteInternal(instance);}};instance.onLoadingInternal=function(){if(instance.onLoadingInternalHandled)return;if(typeof(instance.onLoading)=="function")instance.onLoading(instance);instance.onLoadingInternalHandled=true;};instance.onLoadedInternal=function(){if(instance.onLoadedInternalHandled)return;if(typeof(instance.onLoaded)=="function")instance.onLoaded(instance);instance.onLoadedInternalHandled=true;};instance.onInteractiveInternal=function(){if(instance.onInteractiveInternalHandled)return;if(typeof(instance.onInteractive)=="function")instance.onInteractive(instance);instance.onInteractiveInternalHandled=true;};instance.evalResponse=function(){try{return eval((instance.responseText||''));}catch(e){throw(new Error('Cannot eval the response'));}};instance.onCompleteInternal=function(){if(instance.onCompleteInternalHandled||instance.aborted)return;try{instance.responseReceived=true;instance.status=instance.request.status;instance.statusText=instance.request.statusText;instance.responseText=instance.request.responseText;instance.responseXML=instance.request.responseXML;}catch(err){instance.status=0;}
if(typeof(instance.onComplete)=="function")instance.onComplete(instance);if(instance.status==200&&typeof(instance.onSuccess)=="function"){instance.onSuccess(instance);instance.onCompleteInternalHandled=true;if(typeof(instance.callBack)=="function"){instance.callBack(instance);}else if(instance.callBack){try{eval(instance.callBack);}
catch(e){throw(new Error('Can not execute callback...'));}}}else if(typeof(instance.onError)=="function"){instance.onError(instance);instance.onCompleteInternalHandled=false;}
delete instance.request['onreadystatechange'];instance.request=null;};instance.onTimeoutInternal=function(){if(instance==null||instance.request==null||instance.onCompleteInternalHandled)return;instance.aborted=true;instance.request.abort();if(typeof(instance.onTimeout)=="function")instance.onTimeout(instance);delete instance.request['onreadystatechange'];instance.request=null;};instance.process=function(){if(instance.request==null)return;instance.request.open(instance.method,instance.url,true);if(instance.method=="POST"){instance.request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");}else{instance.request.setRequestHeader("Content-Type","text/plain;charset=UTF-8");}
if(instance.timeout>0)setTimeout(instance.onTimeoutInternal,instance.timeout);instance.request.send(instance.queryString);};return instance;};function HttpResponseHandler(){var instance=new Object();instance.to=null;instance.executeScript=function(script){if(script==null||script=="")return;try{var HTMLUtil=eXo.core.HTMLUtil;script=HTMLUtil.entitiesDecode(script);eval(script);return;}catch(err){}
var elements=script.split(';');if(elements!=null&&elements.length>0){for(var i=0;i<elements.length;i++){try{eval(elements[i]);}catch(err){alert(err+" : "+elements[i]+"  -- "+i);}}}};instance.updateHtmlHead=function(response){if(!response)return;cleanHtmlHead(response);var DOMUtil=eXo.core.DOMUtil;var head=document.getElementsByTagName("head")[0];var markupHeadElements=response.markupHeadElements;if(!markupHeadElements)return;if(markupHeadElements.titles&&markupHeadElements.titles.length!=0){var oldTitle=DOMUtil.getChildrenByTagName(head,"title")[0];var newTitle=markupHeadElements.titles[markupHeadElements.titles.length-1];if(oldTitle){head.replaceChild(newTitle,oldTitle);}else{head.appendChild(newTitle);}}
appendElementsToHead(markupHeadElements.metas);appendElementsToHead(markupHeadElements.bases);appendElementsToHead(markupHeadElements.links);appendElementsToHead(markupHeadElements.styles);appendElementsToHead(markupHeadElements.scripts);};function cleanHtmlHead(response){var DOMUtil=eXo.core.DOMUtil;var head=document.getElementsByTagName("head")[0];var portletResponses=response.portletResponses;if(portletResponses){for(var i=0;i<portletResponses.length;i++){removeExtraHead(portletResponses[i].portletId);}}
if(response.data){var portletFragments=DOMUtil.findDescendantsByClass(response.data,"div","PORTLET-FRAGMENT");for(var i=0;i<portletFragments.length;i++){removeExtraHead(portletFragments[i].parentNode.id);}}
var uiWorkingWorkspace=document.getElementById("UIWorkingWorkspace");var portletFragsInWS=DOMUtil.findDescendantsByClass(uiWorkingWorkspace,"div","PORTLET-FRAGMENT");var exHeads=DOMUtil.getElementsBy(function(elem){return elem.tagName!="TITLE"&&elem.className.indexOf("ExHead-")==0;},"*",head);for(var i=0;i<exHeads.length;i++){var portletId=exHeads[i].className.substring(7);var del=true;for(var j=0;j<portletFragsInWS.length;j++){if(portletId==portletFragsInWS[j].parentNode.id){del=false;break;}}
if(del){head.removeChild(exHeads[i]);}}}
function removeExtraHead(portletId){var DOMUtil=eXo.core.DOMUtil;var head=document.getElementsByTagName("head")[0];var elemsToRemove=DOMUtil.getElementsBy(function(elem){return elem.tagName!="TITLE"&&elem.className=="ExHead-"+portletId;},"*",head);for(var i=0;i<elemsToRemove.length;i++){head.removeChild(elemsToRemove[i]);}}
function appendElementsToHead(elements){if(!elements)return;var head=document.getElementsByTagName("head")[0];for(var i=0;i<elements.length;i++){head.appendChild(elements[i]);}}
instance.updateBlocks=function(blocksToUpdate,parentId){if(blocksToUpdate==null)return;var parentBlock=null;if(parentId!=null&&parentId!="")parentBlock=document.getElementById(parentId);for(var i=0;i<blocksToUpdate.length;i++){var blockToUpdate=blocksToUpdate[i];var target=null;if(parentBlock!=null){target=eXo.core.DOMUtil.findDescendantById(parentBlock,blockToUpdate.blockId);}else{target=document.getElementById(blockToUpdate.blockId);}
if(target==null)alert(eXo.i18n.I18NMessage.getMessage("TargetBlockNotFound",new Array(blockToUpdate.blockId)));var newData=eXo.core.DOMUtil.findDescendantById(blockToUpdate.data,blockToUpdate.blockId);if(newData==null)alert(eXo.i18n.I18NMessage.getMessage("BlockUpdateNotFound",new Array(blockToUpdate.blockId)));target.innerHTML=newData.innerHTML;if(blockToUpdate.scripts){if(blockToUpdate.scripts.length>0){for(var k=0;k<blockToUpdate.scripts.length;k++){var encodedName='script_'+k+'_'+blockToUpdate.blockId;appendScriptToHead(encodedName,blockToUpdate.scripts[k]);}}}}};instance.ajaxTimeout=function(request){eXo.core.UIMaskLayer.removeMasks(eXo.portal.AjaxRequest.maskLayer);eXo.portal.AjaxRequest.maskLayer=null;eXo.portal.CurrentRequest=null;window.location.reload();};instance.ajaxResponse=function(request){var temp=document.createElement("div");temp.innerHTML=this.request.responseText;var responseDiv=eXo.core.DOMUtil.findFirstDescendantByClass(temp,"div","PortalResponse");var response=new PortalResponse(responseDiv);var portletResponses=response.portletResponses;if(portletResponses!=null){for(var i=0;i<portletResponses.length;i++){var portletResponse=portletResponses[i];if(portletResponse.blocksToUpdate==null){var parentBlock=document.getElementById(portletResponse.portletId);var target=eXo.core.DOMUtil.findFirstDescendantByClass(parentBlock,"div","PORTLET-FRAGMENT");target.innerHTML=portletResponse.portletData;if(portletResponse.scripts){if(portletResponse.scripts.length>0){for(var k=0;k<portletResponse.scripts.length;k++){var encodedName='script_'+k+'_'+portletResponse.portletId;appendScriptToHead(encodedName,portletResponse.scripts[k]);}}}}else{instance.updateBlocks(portletResponse.blocksToUpdate,portletResponse.portletId);}}}
if(response.blocksToUpdate==undefined&&temp.innerHTML!==""){if(confirm(eXo.i18n.I18NMessage.getMessage("SessionTimeout")))instance.ajaxTimeout(request);}
instance.updateBlocks(response.blocksToUpdate);instance.updateHtmlHead(response);instance.executeScript(response.script);clearTimeout(instance.to);eXo.core.UIMaskLayer.removeMasks(eXo.portal.AjaxRequest.maskLayer);eXo.portal.AjaxRequest.maskLayer=null;eXo.portal.CurrentRequest=null;};instance.ajaxLoading=function(request){if(request.isAsynchronize())return;Browser=eXo.core.Browser;if(eXo.portal.AjaxRequest.maskLayer==null){eXo.portal.AjaxRequest.maskLayer=eXo.core.UIMaskLayer.createTransparentMask("TOP-CENTER");}
instance.to=setTimeout(function(){if(eXo.portal.AjaxRequest.maskLayer!=null){eXo.core.UIMaskLayer.showAjaxLoading(eXo.portal.AjaxRequest.maskLayer);}},2000);};return instance;};function ajaxGet(url,callback){if(!callback)callback=null;doRequest("Get",url,null,callback);};function ajaxPost(url,queryString,callback){if(!callback)callback=null;doRequest("POST",url,queryString,callback);};function doRequest(method,url,queryString,callback){request=new AjaxRequest(method,url,queryString);handler=new HttpResponseHandler();request.onSuccess=handler.ajaxResponse;request.onLoading=handler.ajaxLoading;request.onTimeout=handler.ajaxTimeout;request.callBack=callback;eXo.portal.CurrentRequest=request;request.process();eXo.session.startItv();};function ajaxAbort(){eXo.core.UIMaskLayer.removeMasks(eXo.portal.AjaxRequest.maskLayer);eXo.portal.AjaxRequest.maskLayer=null;eXo.portal.CurrentRequest.request.abort();eXo.portal.CurrentRequest.aborted=true;eXo.portal.CurrentRequest=null;};function ajaxAsyncGetRequest(url,async){return ajaxRequest("GET",url,async);}
function ajaxRequest(method,url,async,queryString){if(async==undefined)async=true;var request=eXo.core.Browser.createHttpRequest();request.open(method,url,async);request.setRequestHeader("Cache-Control","max-age=86400");if(queryString!=undefined)
{request.send(queryString);}
else
{request.send(null);}
eXo.session.startItv();if(!async)return request.responseText;}
function ajaxRedirect(url){url=url.replace(/&amp;/g,"&");window.location.href=url;}
eXo.portal.AjaxRequest=AjaxRequest.prototype.constructor;function UIComponent(node){if(!node)return null;this.node=node;this.type=node.className;var DOMUtil=eXo.core.DOMUtil;var componentBlock=DOMUtil.findFirstDescendantByClass(node,"div","UIComponentBlock");var children=DOMUtil.getChildrenByTagName(componentBlock,"div");for(var i=0;i<children.length;i++){if(DOMUtil.hasClass(children[i],"LAYOUT-BLOCK"))this.layout=children[i];else if(DOMUtil.hasClass(children[i],"VIEW-BLOCK"))this.view=children[i];else if(DOMUtil.hasClass(children[i],"EDITION-BLOCK"))this.control=children[i];}
this.component="";if(DOMUtil.hasClass(node,"UIPortal"))this.id=node.id.replace("UIPortal-","");else if(DOMUtil.hasClass(node,"UIPortlet"))this.id=node.id.replace("UIPortlet-","");else if(DOMUtil.hasClass(node,"UIContainer"))this.id=node.id.replace("UIContainer-","");else this.id=node.id;};UIComponent.prototype.getId=function(){return this.id;};UIComponent.prototype.getElement=function(){return this.node;};UIComponent.prototype.getUIComponentType=function(){return this.type;};UIComponent.prototype.getUIComponentBlock=function(){return this.node;};UIComponent.prototype.getControlBlock=function(){return this.control;};UIComponent.prototype.getLayoutBlock=function(){return this.layout;};UIComponent.prototype.getViewBlock=function(){return this.view;};function UIPortal(){this.portalUIComponentDragDrop=false;};UIPortal.prototype.blockOnMouseOver=function(event,portlet,isOver){var DOMUtil=eXo.core.DOMUtil;if(!eXo.portal.portalMode||eXo.portal.isInDragging)return;if(eXo.portal.portalMode<=2&&DOMUtil.hasClass(portlet,"UIContainer"))return;if(eXo.portal.portalMode>2&&eXo.portal.portalMode!=4&&DOMUtil.hasClass(portlet,"UIPortlet"))return;if(!event)event=window.event;event.cancelBubble=true;var component=DOMUtil.findFirstDescendantByClass(portlet,"div","UIComponentBlock");var children=DOMUtil.getChildrenByTagName(component,"div");var layoutBlock;var viewBlock;var editBlock;for(var i=0;i<children.length;i++){if(DOMUtil.hasClass(children[i],"LAYOUT-BLOCK"))layoutBlock=children[i];else if(DOMUtil.hasClass(children[i],"VIEW-BLOCK"))viewBlock=children[i];else if(DOMUtil.hasClass(children[i],"EDITION-BLOCK"))editBlock=children[i];}
if(!editBlock)return;if(isOver){var newLayer=DOMUtil.findFirstDescendantByClass(editBlock,"div","NewLayer");var height=0;var width=0;if(layoutBlock&&layoutBlock.style.display!="none"){height=layoutBlock.offsetHeight;width=layoutBlock.offsetWidth;}else if(viewBlock&&viewBlock.style.display!="none"){height=viewBlock.offsetHeight;width=viewBlock.offsetWidth;}
if(DOMUtil.hasClass(portlet,"UIPortlet")){newLayer.style.width=width+"px";newLayer.style.height=height+"px";}else{newLayer.parentNode.style.width=width+"px";var normalBlock=DOMUtil.findFirstChildByClass(portlet,"div","NormalContainerBlock");if(normalBlock)DOMUtil.replaceClass(normalBlock,"NormalContainerBlock","OverContainerBlock");}
newLayer.parentNode.style.top=-height+"px";editBlock.style.display="block";var uiInfoBar=DOMUtil.findFirstDescendantByClass(editBlock,"div","UIInfoBar");if(uiInfoBar&&(eXo.core.Browser.isIE6()||(eXo.core.Browser.isIE7()&&eXo.core.I18n.isRT()))){if(uiInfoBar.style.width==""){var dragControlArea=DOMUtil.findFirstDescendantByClass(uiInfoBar,"div","DragControlArea");var portletIcon=DOMUtil.findFirstDescendantByClass(uiInfoBar,"div","PortletIcon");var editPortletPropertiesIcon=DOMUtil.findFirstDescendantByClass(uiInfoBar,"a","EditPortletPropertiesIcon");var deletePortletIcon=DOMUtil.findFirstDescendantByClass(uiInfoBar,"a","DeletePortletIcon");var contarnerIcon=DOMUtil.findFirstDescendantByClass(uiInfoBar,"div","ContainerIcon");var editContainerIcon=DOMUtil.findFirstDescendantByClass(uiInfoBar,"a","EditContainerIcon");var deleteContainerIcon=DOMUtil.findFirstDescendantByClass(uiInfoBar,"a","DeleteContainerIcon");var uiInfoBarWidth=dragControlArea.offsetWidth;if(DOMUtil.hasClass(portlet,"UIPortlet")){uiInfoBarWidth+=portletIcon.offsetWidth;if(editPortletPropertiesIcon){uiInfoBarWidth+=editPortletPropertiesIcon.offsetWidth;}
if(deletePortletIcon){uiInfoBarWidth+=deletePortletIcon.offsetWidth;}}
if(DOMUtil.hasClass(portlet,"UIContainer")){uiInfoBarWidth+=contarnerIcon.offsetWidth
if(editContainerIcon){uiInfoBarWidth+=editContainerIcon.offsetWidth;}
if(deleteContainerIcon){uiInfoBarWidth+=deleteContainerIcon.offsetWidth;}}
uiInfoBar.style.width=uiInfoBarWidth+35+"px";}}}else{editBlock.style.display="none";if(!DOMUtil.hasClass(portlet,"UIPortlet")){var normalBlock=DOMUtil.findFirstChildByClass(portlet,"div","OverContainerBlock");if(normalBlock)DOMUtil.replaceClass(normalBlock,"OverContainerBlock","NormalContainerBlock");}}
var controlPortlet=DOMUtil.findFirstDescendantByClass(editBlock,"div","CONTROL-PORTLET");if(controlPortlet){controlPortlet.style.display=eXo.portal.portalMode==4?"none":"block";}};UIPortal.prototype.getUIPortlets=function(){var uiWorkingWorkspace=document.getElementById("UIWorkingWorkspace");var founds=eXo.core.DOMUtil.findDescendantsByClass(uiWorkingWorkspace,"div","UIPortlet");var components=new Array();for(j=0;j<founds.length;j++){components[components.length]=new UIComponent(founds[j]);}
return components;};UIPortal.prototype.getUIPortletsInUIPortal=function(){var uiWorkingWorkspace=document.getElementById("UIWorkingWorkspace");var founds=eXo.core.DOMUtil.findDescendantsByClass(uiWorkingWorkspace,"div","UIPortlet");var components=new Array();for(var j=0;j<founds.length;j++){if(eXo.core.DOMUtil.findAncestorByClass(founds[j],'UIPage')==null){components[components.length]=new UIComponent(founds[j]);}}
return components;};UIPortal.prototype.getUIPortletsInUIPage=function(){var uiPage=document.getElementById("UIPage");var founds=eXo.core.DOMUtil.findDescendantsByClass(uiPage,"div","UIPortlet");var components=new Array();for(var j=0;j<founds.length;j++){components[components.length]=new UIComponent(founds[j]);}
return components;};UIPortal.prototype.getUIContainers=function(){var uiWorkingWorkspace=document.getElementById("UIWorkingWorkspace");var founds=eXo.core.DOMUtil.findDescendantsByClass(uiWorkingWorkspace,"div","UIContainer");var components=new Array();for(var j=0;j<founds.length;j++){components[j]=new UIComponent(founds[j]);}
return components;};UIPortal.prototype.getUIPageBody=function(){return new UIComponent(document.getElementById("UIPageBody"));};UIPortal.prototype.getUIPortal=function(){var uiWorkingWorkspace=document.getElementById("UIWorkingWorkspace");return new UIComponent(eXo.core.DOMUtil.findFirstDescendantByClass(uiWorkingWorkspace,"div","UIPortal"));};UIPortal.prototype.showLayoutModeForPage=function(){var uiPage=eXo.core.DOMUtil.findFirstDescendantByClass(document.body,"div","UIPage");if(uiPage==null)return;var viewPage=eXo.core.DOMUtil.findFirstDescendantByClass(uiPage,"div","VIEW-PAGE");var uiPortalApplication=document.getElementById("UIPortalApplication");if(uiPortalApplication.className!="Vista"){viewPage.style.border="solid 3px #dadada";}
viewPage.style.paddingTop="50px";viewPage.style.paddingRight="0px";viewPage.style.paddingBottom="50px";viewPage.style.paddingLeft="0px";var uiContainer=eXo.core.DOMUtil.findFirstDescendantByClass(viewPage,"div","UIContainer");var uiPortlet=eXo.core.DOMUtil.findFirstDescendantByClass(viewPage,"div","UIPortlet");if(uiContainer!=null||uiPortlet!=null){viewPage.style.border="none";viewPage.style.paddingTop="5px";viewPage.style.paddingRight="5px";viewPage.style.paddingBottom="5px";viewPage.style.paddingLeft="5px";}};UIPortal.prototype.showViewMode=function(){var pageBody=this.getUIPageBody();var container=this.getUIContainers();var portlet=this.getUIPortlets();if(container.length==0&&portlet.length==0){var pageIdElemt=document.getElementById("UIPage");var viewPage=eXo.core.DOMUtil.findAncestorByClass(pageIdElemt,"VIEW-PAGE");viewPage.style.paddingTop="50px";viewPage.style.paddingRight="0px";viewPage.style.paddingBottom="50px";viewPage.style.paddingLeft="0px";}
var pageBodyBlock=pageBody.getUIComponentBlock();var mask=eXo.core.DOMUtil.findFirstDescendantByClass(pageBodyBlock,"div","UIPageBodyMask");if(mask){mask.style.top=-pageBodyBlock.offsetHeight+"px";mask.style.height=pageBodyBlock.offsetHeight+"px";mask.style.width=pageBodyBlock.offsetWidth+"px";}};UIPortal.prototype.findUIComponentOf=function(element){var DOMUtil=eXo.core.DOMUtil;var parent;if(parent=DOMUtil.findAncestorByClass(element,"UIPortlet")){return parent;}else if(parent=DOMUtil.findAncestorByClass(element,"UIPageBody")){return parent;}else if(parent=DOMUtil.findAncestorByClass(element,"UIContainer")){return parent;}else if(parent=DOMUtil.findAncestorByClass(element,"UIPortal")){return parent;}
return null;};UIPortal.prototype.changeSkin=function(url){var skin='';if(eXo.webui.UIItemSelector.SelectedItem!=undefined){skin=eXo.webui.UIItemSelector.SelectedItem.option;}
if(skin==undefined)skin='';window.location=url+'&skin='+skin;};UIPortal.prototype.changeLanguage=function(url){var language='';if(eXo.webui.UIItemSelector.SelectedItem!=undefined){language=eXo.webui.UIItemSelector.SelectedItem.option;}
if(language==undefined)language='';window.location=url+'&language='+language;};UIPortal.prototype.changePortal=function(accessPath,portal){window.location=eXo.env.server.context+"/"+accessPath+"/"+portal+"/";};UIPortal.prototype.popupButton=function(url,action){if(action==undefined)action='';window.location=url+'&action='+action;};UIPortal.prototype.removeComponent=function(componentId){var comp=document.getElementById(componentId);var viewPage=eXo.core.DOMUtil.findAncestorByClass(comp,"VIEW-PAGE");if(comp.parentNode.nodeName.toUpperCase()=="TD")eXo.core.DOMUtil.removeElement(comp.parentNode);else eXo.core.DOMUtil.removeElement(comp);if(viewPage&&eXo.portal.UIPortal.getUIContainers().length==0&&eXo.portal.UIPortal.getUIPortlets().length==0){viewPage.style.paddingTop="50px";viewPage.style.paddingRight="0px";viewPage.style.paddingBottom="50px";viewPage.style.paddingLeft="0px";}};UIPortal.prototype.changeComposerSaveButton=function(){if(eXo.portal.hasEditted==false){var uiWorkingWS=document.getElementById("UIWorkingWorkspace");var portalComposer=eXo.core.DOMUtil.findFirstDescendantByClass(uiWorkingWS,"div","UIPortalComposer");if(!portalComposer)return;var saveButton=eXo.core.DOMUtil.findFirstDescendantByClass(portalComposer,"a","SaveButton");if(saveButton){eXo.core.DOMUtil.replaceClass(saveButton,"SaveButton","EdittedSaveButton");}
ajaxAsyncGetRequest(eXo.env.server.createPortalURL(portalComposer.id,"ChangeEdittedState",true));}};UIPortal.prototype.toggleComposer=function(clickedEle){var portalComposer=eXo.core.DOMUtil.findAncestorByClass(clickedEle,"UIPortalComposer");var content=eXo.core.DOMUtil.findFirstChildByClass(portalComposer,"div","UIWindowContent");if(content&&content.style.display!="none"){content.style.display="none";eXo.core.DOMUtil.replaceClass(clickedEle,"ExpandIcon","CollapseIcon");}else{content.style.display="block";eXo.core.DOMUtil.replaceClass(clickedEle,"CollapseIcon","ExpandIcon");}
var requestStr=eXo.env.server.createPortalURL(portalComposer.id,"Toggle",true);ajaxAsyncGetRequest(requestStr);};UIPortal.prototype.composerTabChanged=function(tabId){var toolPanel=document.getElementById("UIPortalToolPanel");if(!tabId||!toolPanel)return;var removeCls,addCls;if(tabId==="UIApplicationList"){addCls="ApplicationMode";removeCls="ContainerMode";}else{addCls="ContainerMode";removeCls="ApplicationMode";}
eXo.core.DOMUtil.removeClass(toolPanel,removeCls);eXo.core.DOMUtil.addClass(toolPanel,addCls);}
UIPortal.prototype.collapseExpand=function(element){var subGroup=eXo.core.DOMUtil.findFirstChildByClass(element.parentNode,"div","ChildrenContainer");var className=element.className;if(!subGroup)return;if(subGroup.style.display=="none"){if(className.indexOf("ExpandIcon")==0)element.className="CollapseIcon ClearFix";subGroup.style.display="block";}else{if(className.indexOf("CollapseIcon")==0)element.className="ExpandIcon ClearFix";subGroup.style.display="none";}};eXo.portal.UIPortalComponent=UIComponent.prototype.constructor;eXo.portal.UIPortal=new UIPortal();eXo.portal.UIComponent=UIPortal.prototype.constructor;function UIWorkspace(id){this.id=id;this.isFirstTime=true;};eXo.portal.UIWorkspace=new UIWorkspace("UIWorkspace");if(eXo.portal.UIWorkingWorkspace==undefined){eXo.portal.UIWorkingWorkspace=new UIWorkspace("UIWorkingWorkspace");};eXo.portal.UIWorkingWorkspace.onResize=function(){var uiWorkspace=document.getElementById(eXo.portal.UIWorkingWorkspace.id);if(eXo.core.Browser.isIE6()){var tabs=eXo.core.DOMUtil.findFirstDescendantByClass(uiWorkspace,"div","UIHorizontalTabs");if(tabs)tabs.style.left=0;}};function UIPortalControl(){this.scrollManagers=new Array();};UIPortalControl.prototype.changeWindowState=function(id,state){var params=[{name:"portletId",value:id},{name:"objectId",value:state}];ajaxGet(eXo.env.server.createPortalURL("UIPortal","ChangeWindowState",true,params));};UIPortalControl.prototype.collapseTree=function(selectedElement){var DOMUtil=eXo.core.DOMUtil;var parentNode=DOMUtil.findAncestorByClass(selectedElement,"Node");var childrenContainer=DOMUtil.findFirstDescendantByClass(parentNode,"div","ChildrenContainer");var newHTML="<div onclick=\""+childrenContainer.getAttribute("actionLink")+"\" class=\"ExpandIcon\">"+selectedElement.innerHTML+"</div>";parentNode.innerHTML=newHTML;};UIPortalControl.prototype.onEnterPress=function(e,executeScript){var e=window.event||e;var code;if(!e)e=window.event;if(e.keyCode)code=e.keyCode;else if(e.which)code=e.which;if(code==13){if(window.event){e.returnValue=false;}else{e.preventDefault();}
var uiPortalLoginFormAction=document.getElementById("UIPortalLoginFormAction");if(uiPortalLoginFormAction){uiPortalLoginFormAction.onclick();}
else
{if(executeScript)
eval(executeScript);}}};function ScrollManager(){this.id=null;this.elements=new Array();this.firstVisibleIndex=0;this.lastVisibleIndex=-1;this.otherHiddenElements=new Array();this.axis=0;this.currDirection=null;this.callback=null;this.initFunction=null;this.leftArrow=null;this.rightArrow=null;this.mainContainer=null;this.arrowsContainer=null
this.margin=6.9;};ScrollManager.prototype.initArrowButton=function(arrow,dir,normalClass,overClass,disabledClass){if(arrow){arrow.direction=dir;arrow.overClass=overClass;arrow.disabledClass=disabledClass;arrow.styleClass=normalClass;arrow.scrollMgr=this;arrow.onmouseover=this.mouseOverArrow;arrow.onmouseout=this.mouseOutArrow;arrow.onclick=this.scroll;if(dir=="left")this.leftArrow=arrow;else if(dir=="right")this.rightArrow=arrow;}};ScrollManager.prototype.enableArrow=function(arrow,enabled){if(arrow&&!enabled){arrow.className=arrow.disabledClass;arrow.onclick=null;}else if(arrow&&enabled){arrow.className=arrow.styleClass;arrow.onclick=this.scroll;}};ScrollManager.prototype.mouseOverArrow=function(e){var arrow=this;if(arrow.onclick&&arrow.className==arrow.styleClass){if(!e)e=window.event;if(arrow==eXo.core.Browser.getEventSource(e))arrow.className=arrow.overClass;}};ScrollManager.prototype.mouseOutArrow=function(e){var arrow=this;if(arrow.onclick&&arrow.className==arrow.overClass){arrow.className=arrow.styleClass;}};ScrollManager.prototype.init=function(){this.firstVisibleIndex=0;this.lastVisibleIndex=-1;if(this.arrowsContainer){this.arrowsContainer.style.display="none";this.arrowsContainer.space=null;this.mainContainer.space=null;}
var uiNavigationPortlet=eXo.core.DOMUtil.findAncestorByClass(this.mainContainer,"UINavigationPortlet");if(uiNavigationPortlet){var uiApplication=uiNavigationPortlet.parentNode;uiApplication.style.display="inline";}};ScrollManager.prototype.loadElements=function(elementClass,clean){if(clean)this.cleanElements();this.elements.clear();this.elements.pushAll(eXo.core.DOMUtil.findDescendantsByClass(this.mainContainer,"li",elementClass));};ScrollManager.prototype.checkAvailableSpace=function(maxSpace){if(!maxSpace)maxSpace=this.getElementSpace(this.mainContainer)-this.getElementSpace(this.arrowsContainer);var elementsSpace=0;var margin=0;var length=this.elements.length;for(var i=0;i<length;i++){elementsSpace+=this.getElementSpace(this.elements[i]);if(i+1<length)margin=this.getElementSpace(this.elements[i+1])/3;else margin=this.margin;if(elementsSpace+margin<maxSpace){this.elements[i].isVisible=true;this.lastVisibleIndex=i;}else{this.elements[i].isVisible=false;}}};ScrollManager.prototype.getElementsSpace=function(indexStart,indexEnd){if(indexStart==null&&indexEnd==null){indexStart=0;indexEnd=this.elements.length-1;}
var elementsSpace=0;if(indexStart>=0&&indexEnd<=this.elements.length-1){for(var i=indexStart;i<=indexEnd;i++){elementsSpace+=this.getElementSpace(this.elements[i]);}}
return elementsSpace;};ScrollManager.prototype.getElementSpace=function(element){if(element&&element.space){return element.space;}
var elementSpace=0;var wasHidden=false;if(element){if(element.style.display=="none"){element.style.display="block";wasHidden=true;}
if(this.axis==0){elementSpace+=element.offsetWidth;elementSpace+=eXo.core.DOMUtil.getStyle(element,"marginLeft",true);elementSpace+=eXo.core.DOMUtil.getStyle(element,"marginRight",true);if(element.decorator)elementSpace+=this.getElementSpace(element.decorator);}else if(this.axis==1){elementSpace+=element.offsetHeight;elementSpace+=eXo.core.DOMUtil.getStyle(element,"marginTop",true);elementSpace+=eXo.core.DOMUtil.getStyle(element,"marginBottom",true);if(element.decorator)elementSpace+=this.getElementSpace(element.decorator);}
if(wasHidden)element.style.display="none";element.space=elementSpace;}
return elementSpace;};ScrollManager.prototype.cleanElements=function(){for(var i=0;i<this.elements.length;i++){this.elements[i].space=null;if(this.elements[i].decorator)this.elements[i].decorator.space=null;}};ScrollManager.prototype.scroll=function(e){if(!e)e=window.event;e.cancelBubble=true;var src=eXo.core.Browser.getEventSource(e);if(src.scrollMgr&&src.onclick){if(src.scrollMgr.otherHiddenElements.length>0){for(var i=0;i<src.scrollMgr.otherHiddenElements.length;i++){src.scrollMgr.otherHiddenElements[i].isVisible=true;src.scrollMgr.otherHiddenElements[i].style.display="block";if(src.scrollMgr.currDirection==1)src.scrollMgr.firstVisibleIndex--;else if(src.scrollMgr.currDirection==0)src.scrollMgr.lastVisibleIndex++;}
src.scrollMgr.otherHiddenElements.clear();}
if(src.direction=="left")src.scrollMgr.scrollLeft();else if(src.direction=="right")src.scrollMgr.scrollRight();}
return false;};ScrollManager.prototype.scrollLeft=function(){if(this.firstVisibleIndex>0){this.currDirection=0;this.elements[this.lastVisibleIndex--].isVisible=false;this.getVisibleElements();this.renderElements();}};ScrollManager.prototype.scrollUp=function(){if(this.scrollMgr)this.scrollMgr.scrollLeft();};ScrollManager.prototype.scrollRight=function(){if(this.lastVisibleIndex<this.elements.length-1){this.currDirection=1;this.elements[this.firstVisibleIndex++].isVisible=false;this.getVisibleElements();this.renderElements();}};ScrollManager.prototype.scrollDown=function(){if(this.scrollMgr)this.scrollMgr.scrollRight();};ScrollManager.prototype.getVisibleElements=function(){var availableSpace=this.getElementSpace(this.mainContainer)-this.getElementSpace(this.arrowsContainer);var refereceIndex=0;var margin=0;var elementsSpace=0;if(this.currDirection){var length=this.elements.length;for(var i=this.firstVisibleIndex;i<length;i++){elementsSpace+=this.getElementSpace(this.elements[i]);if(i+1<length)margin=this.getElementSpace(this.elements[i+1])/3;else margin=this.margin;if(elementsSpace+margin<availableSpace){this.elements[i].isVisible=true;refereceIndex=i;}else this.elements[i].isVisible=false;}
if(this.lastVisibleIndex==refereceIndex)this.scrollRight();else this.lastVisibleIndex=refereceIndex;}else{for(var i=this.lastVisibleIndex;i>=0;i--){elementsSpace+=this.getElementSpace(this.elements[i]);margin=this.getElementSpace(this.elements[this.lastVisibleIndex])/3;if(elementsSpace+margin<availableSpace){this.elements[i].isVisible=true;refereceIndex=i;}else this.elements[i].isVisible=false;}
if(this.firstVisibleIndex==refereceIndex)this.scrollLeft();else this.firstVisibleIndex=refereceIndex;}};ScrollManager.prototype.renderElements=function(){for(var i=0;i<this.elements.length;i++){if(this.elements[i].isVisible){this.elements[i].style.display="block";}else{this.elements[i].style.display="none";this.arrowsContainer.style.display="block";}}
if(this.arrowsContainer.style.display=="block"){this.renderArrows();}
if(typeof(this.callback)=="function")this.callback();};ScrollManager.prototype.renderArrows=function(){if(this.firstVisibleIndex==0)this.enableArrow(this.leftArrow,false);else this.enableArrow(this.leftArrow,true);if(this.lastVisibleIndex==this.elements.length-1)this.enableArrow(this.rightArrow,false);else this.enableArrow(this.rightArrow,true);};UIPortalControl.prototype.initAllManagers=function(){var managers=eXo.portal.UIPortalControl.scrollManagers;for(var i=0;i<managers.length;i++){var mgrContainer=document.getElementById(managers[i].id);var mgrParent=eXo.core.DOMUtil.findAncestorByClass(mgrContainer,"UIWindow");var toInit=(mgrContainer!==null)&&(mgrParent===null||(mgrParent!==null&&mgrParent.style.display=="block"))&&(typeof(managers[i].initFunction)=="function");if(toInit){managers[i].initFunction();}}};UIPortalControl.prototype.newScrollManager=function(id_){if(eXo.portal.UIPortalControl.scrollManagers.length==0){eXo.core.Browser.addOnResizeCallback("initAllManagers",eXo.portal.UIPortalControl.initAllManagers);}
if(id_){var tmpMgr=new ScrollManager();tmpMgr.id=id_;eXo.portal.UIPortalControl.scrollManagers.push(tmpMgr);return tmpMgr;}else{alert('You must set an id to the new scroll manager !!');return null;}};function VerticalScrollManager(){repeat=null;}
VerticalScrollManager.prototype.initScroll=function(clickedEle,isUp,step){var DOMUtil=eXo.core.DOMUtil;var verticalScroll=eXo.portal.VerticalScrollManager;var container=DOMUtil.findAncestorByClass(clickedEle,"ItemContainer");var middleCont=DOMUtil.findFirstDescendantByClass(container,"div","MiddleItemContainer");if(!middleCont.id)middleCont.id="IC"+new Date().getTime()+Math.random().toString().substring(2);verticalScroll.scrollComponent(middleCont.id,isUp,step);document.onmouseup=verticalScroll.cancelScroll;};VerticalScrollManager.prototype.scrollComponent=function(id,isUp,step){var verticalScroll=eXo.portal.VerticalScrollManager;var scrollComp=document.getElementById(id);if(isUp){scrollComp.scrollTop-=step;}else{scrollComp.scrollTop+=step;}
if(verticalScroll.repeat){verticalScroll.cancelScroll();}
verticalScroll.repeat=setTimeout("eXo.portal.VerticalScrollManager.scrollComponent('"+id+"',"+isUp+","+step+")",100);};VerticalScrollManager.prototype.cancelScroll=function(){clearTimeout(eXo.portal.VerticalScrollManager.repeat);eXo.portal.VerticalScrollManager.repeat=null;};eXo.portal.VerticalScrollManager=new VerticalScrollManager();eXo.portal.UIPortalControl=new UIPortalControl();function PortalDragDrop(){this.count=0;};PortalDragDrop.prototype.init=function(e){if(eXo.core.DragDrop.dndEvent){return;}
if(!e)e=window.event;if(((e.which)&&(e.which==2||e.which==3))||((e.button)&&(e.button==2)))return;var DOMUtil=eXo.core.DOMUtil;var Browser=eXo.core.Browser;var DragDrop=eXo.core.DragDrop;var Mouse=eXo.core.Mouse;var previewBlock=null;var previewTD=null;DragDrop.initCallback=function(dndEvent){var PortalDragDrop=eXo.portal.PortalDragDrop;this.origDragObjectStyle=new eXo.core.HashMap();var dragObject=dndEvent.dragObject;var properties=["top",eXo.core.I18n.isLT()?"left":"right","zIndex","opacity","filter","position","width"];this.origDragObjectStyle.copyProperties(properties,dragObject.style);var isAddingNewly=!DOMUtil.findFirstDescendantByClass(dragObject,"div","UIComponentBlock");var uiWorkingWS=document.getElementById("UIWorkingWorkspace");PortalDragDrop.positionRootObj=!isAddingNewly?uiWorkingWS:DOMUtil.findFirstDescendantByClass(uiWorkingWS,"div","UIPortalComposer");var originalDragObjectTop=Browser.findPosYInContainer(dragObject,PortalDragDrop.positionRootObj);var originalDragObjectLeft=Browser.findPosXInContainer(dragObject,PortalDragDrop.positionRootObj);PortalDragDrop.deltaYDragObjectAndMouse=Browser.findMouseRelativeY(dragObject,e);PortalDragDrop.deltaXDragObjectAndMouse=Browser.findMouseRelativeX(dragObject,e);if(isAddingNewly){var contentContainer=DOMUtil.findAncestorByClass(dragObject,"PopupContent");originalDragObjectTop-=contentContainer.scrollTop;PortalDragDrop.deltaYDragObjectAndMouse+=contentContainer.scrollTop;}
PortalDragDrop.parentDragObject=dragObject.parentNode;PortalDragDrop.backupParentSibling=DOMUtil.findNextElementByTagName(dragObject.parentNode,"td");PortalDragDrop.backupDragObjectWidth=dragObject.offsetWidth;var componentBlockWidth=300;if(isAddingNewly){var cloneObject=dragObject.cloneNode(true);dragObject.parentNode.insertBefore(cloneObject,dragObject);cloneObject.style.opacity=0.5;cloneObject.style.filter="alpha(opacity=50)";cloneObject.style.width=PortalDragDrop.backupDragObjectWidth+"px";dndEvent.dragObject=cloneObject;dndEvent.dragObject.isAddingNewly=isAddingNewly;}else{previewBlock=PortalDragDrop.createPreview();dragObject.parentNode.insertBefore(previewBlock,dragObject);dragObject.style.width=componentBlockWidth+"px";var componentBlock=eXo.core.DOMUtil.findFirstDescendantByClass(dragObject,"div","UIComponentBlock");var editBlock=eXo.core.DOMUtil.findFirstChildByClass(componentBlock,"div","EDITION-BLOCK");if(editBlock){var newLayer=eXo.core.DOMUtil.findFirstDescendantByClass(editBlock,"div","NewLayer");if(newLayer)newLayer.style.width="300px";}}
dragObject.isAddingNewly=isAddingNewly;dragObject=dndEvent.dragObject;dragObject.style.position="absolute";dragObject.style.top=originalDragObjectTop+"px";var dragObjectLeft=originalDragObjectLeft;if(PortalDragDrop.deltaXDragObjectAndMouse>componentBlockWidth/2){if((PortalDragDrop.backupDragObjectWidth-PortalDragDrop.deltaXDragObjectAndMouse)>componentBlockWidth/2){dragObjectLeft=originalDragObjectLeft+PortalDragDrop.deltaXDragObjectAndMouse-componentBlockWidth/2;}else{dragObjectLeft=originalDragObjectLeft+PortalDragDrop.backupDragObjectWidth-componentBlockWidth;}}
if(eXo.core.I18n.isLT())dragObject.style.left=dragObjectLeft+"px";else dragObject.style.right=PortalDragDrop.positionRootObj.offsetWidth-dragObject.offsetWidth-dragObjectLeft+"px";eXo.portal.isInDragging=true;}
DragDrop.dragCallback=function(dndEvent){var dragObject=dndEvent.dragObject;eXo.portal.PortalDragDrop.scrollOnDrag(dndEvent);if(!dndEvent.foundTargetObject){if(!dndEvent.lastFoundTargetObject){return;}else{dndEvent.foundTargetObject=dndEvent.lastFoundTargetObject;}}
var uiComponentLayout;if(dndEvent.foundTargetObject.className=="UIPage"){uiComponentLayout=DOMUtil.findFirstDescendantByClass(dndEvent.foundTargetObject,"div","VIEW-PAGE");}else if(dndEvent.foundTargetObject.className=="UIPortal"){if(eXo.portal.portalMode%2)uiComponentLayout=DOMUtil.findFirstDescendantByClass(dndEvent.foundTargetObject,"div","LAYOUT-PORTAL");else uiComponentLayout=DOMUtil.findFirstDescendantByClass(dndEvent.foundTargetObject,"div","VIEW-PORTAL");}else{var foundUIComponent=new eXo.portal.UIPortalComponent(dndEvent.foundTargetObject);if(eXo.portal.portalMode%2)uiComponentLayout=foundUIComponent.getLayoutBlock();else uiComponentLayout=foundUIComponent.getViewBlock();uiComponentLayout.style.height="auto";}
dndEvent.foundTargetObject.uiComponentLayoutType=uiComponentLayout;var componentIdElement=DOMUtil.getChildrenByTagName(uiComponentLayout,"div")[0];var layoutTypeElement=DOMUtil.getChildrenByTagName(componentIdElement,"div")[0];eXo.portal.PortalDragDrop.layoutTypeElementNode=layoutTypeElement;if(previewBlock==null)previewBlock=eXo.portal.PortalDragDrop.createPreview();if(layoutTypeElement!=null&&!DOMUtil.hasClass(layoutTypeElement,"UITableColumnContainer")){var rowContainer=DOMUtil.findFirstDescendantByClass(uiComponentLayout,"div","UIRowContainer");var childRowContainer=DOMUtil.getChildrenByTagName(rowContainer,"div");var listComponent=new Array();for(var i=0;i<childRowContainer.length;i++){if((childRowContainer[i].className!="DragAndDropPreview")&&(childRowContainer[i]!=dragObject)){listComponent.push(childRowContainer[i]);}}
dndEvent.foundTargetObject.listComponentInTarget=listComponent;var insertPosition=eXo.portal.PortalDragDrop.findInsertPosition(listComponent,"row",dndEvent.backupMouseEvent);dndEvent.foundTargetObject.foundIndex=insertPosition;if(insertPosition>=0){rowContainer.insertBefore(previewBlock,listComponent[insertPosition]);}else{rowContainer.appendChild(previewBlock);}}else{var columnContainer=DOMUtil.findFirstDescendantByClass(uiComponentLayout,"table","UITableColumnContainer");var trContainer=DOMUtil.findFirstDescendantByClass(uiComponentLayout,"tr","TRContainer");var tdElementList=DOMUtil.getChildrenByTagName(trContainer,"td");var listComponent=new Array();for(var i=0;i<tdElementList.length;i++){if(DOMUtil.hasAncestor(previewBlock,uiComponentLayout)){var td=tdElementList[i];if((td!=previewBlock.parentNode)&&(td!=dragObject.parentNode)){listComponent.push(td);}}else{listComponent.push(tdElementList[i]);}}
dndEvent.foundTargetObject.listComponentInTarget=listComponent;var insertPosition=eXo.portal.PortalDragDrop.findInsertPosition(listComponent,"column",dndEvent.backupMouseEvent);dndEvent.foundTargetObject.foundIndex=insertPosition;if(insertPosition>=0){trContainer.insertBefore(dragObject.parentNode,listComponent[insertPosition]);}else{trContainer.appendChild(dragObject.parentNode);}}
var dragParent=dragObject.parentNode;if(eXo.core.DOMUtil.getChildrenByTagName(dragParent,"div").length===1&&!eXo.core.DOMUtil.hasClass(dragParent,"EmptyContainer")){eXo.core.DOMUtil.addClass(dragParent,"EmptyContainer");}};DragDrop.dropCallback=function(dndEvent){var hasChanged=true;if(dndEvent.backupMouseEvent&&dndEvent.backupMouseEvent.keyCode==27){hasChanged=false;}
if(!dndEvent.foundTargetObject){dndEvent.foundTargetObject=dndEvent.lastFoundTargetObject;}
var targetElement=dndEvent.foundTargetObject;if(!targetElement||targetElement.foundIndex==null){hasChanged=false;}
var DOMUtil=eXo.core.DOMUtil;if(!dndEvent.dragObject.isAddingNewly){if(dndEvent.dragObject.parentNode.tagName.toLowerCase()=="td"){var backupParentSibling=eXo.portal.PortalDragDrop.backupParentSibling;if(DOMUtil.findNextElementByTagName(dndEvent.dragObject.parentNode,"td")==backupParentSibling){hasChanged=false;}}else{var tempObj=DOMUtil.findNextElementByTagName(dndEvent.dragObject,"div");if(tempObj!=null&&tempObj.className=="DragAndDropPreview"){hasChanged=false;}else{tempObj=DOMUtil.findPreviousElementByTagName(dndEvent.dragObject,"div");if(tempObj!=null&&tempObj.className=="DragAndDropPreview"){hasChanged=false;}}}}
if(dndEvent.backupMouseEvent&&dndEvent.backupMouseEvent.keyCode!=27){eXo.portal.PortalDragDrop.doDropCallback(dndEvent);}else{if(dndEvent.dragObject.parentNode&&dndEvent.dragObject.parentNode.tagName.toLowerCase()=="td"){var tdNode=dndEvent.dragObject.parentNode;var lastSibling=eXo.portal.PortalDragDrop.backupParentSibling;if(lastSibling==null){tdNode.parentNode.appendChild(tdNode);}else{tdNode.parentNode.insertBefore(tdNode,lastSibling);}}
if(dndEvent.dragObject.isAddingNewly){dndEvent.dragObject.parentNode.removeChild(dndEvent.dragObject);}}
if(!dndEvent.dragObject.isAddingNewly){var componentBlock=eXo.core.DOMUtil.findFirstDescendantByClass(dndEvent.dragObject,"div","UIComponentBlock");var editBlock=eXo.core.DOMUtil.findFirstChildByClass(componentBlock,"div","EDITION-BLOCK");if(editBlock)editBlock.style.display="none";}
if(previewBlock)previewBlock.parentNode.removeChild(previewBlock);previewBlock=null;eXo.portal.isInDragging=false;if(hasChanged){eXo.portal.UIPortal.changeComposerSaveButton();}
this.origDragObjectStyle.setProperties(dndEvent.dragObject.style,false);};var clickObject=this;var componentBlock=DOMUtil.findAncestorByClass(clickObject,"UIComponentBlock");if(componentBlock!=null){var dragBlock=eXo.portal.UIPortal.findUIComponentOf(componentBlock);DragDrop.init(eXo.portal.PortalDragDrop.findDropableTargets(dragBlock),clickObject,dragBlock,e);}else{var dragBlock=DOMUtil.findAncestorByClass(clickObject,"DragObjectPortlet");if(dragBlock){eXo.debug("The dragBlock is not null");DragDrop.init(eXo.portal.PortalDragDrop.findDropableTargets(dragBlock),clickObject,dragBlock,e);}else{DragDrop.init(eXo.portal.PortalDragDrop.findDropableTargets(dragBlock),clickObject,clickObject,e);}}};PortalDragDrop.prototype.doDropCallback=function(dndEvent){var srcElement=dndEvent.dragObject;var targetElement=dndEvent.foundTargetObject;if(!targetElement||targetElement.foundIndex==null){if(dndEvent.dragObject.isAddingNewly){dndEvent.dragObject.parentNode.removeChild(dndEvent.dragObject);}
dndEvent.dragObject.style.width="auto";return;}
if(!srcElement.isAddingNewly&&(targetElement.foundIndex!=null)){if(eXo.portal.PortalDragDrop.layoutTypeElementNode!=null){eXo.portal.PortalDragDrop.divRowContainerAddChild(srcElement,targetElement,targetElement.foundIndex);}}
if(srcElement.isAddingNewly){eXo.core.DOMUtil.removeElement(srcElement);}
var params=[{name:"srcID",value:(srcElement.id.replace(/^UIPortlet-/,""))},{name:"targetID",value:targetElement.id.replace(/^.*-/,"")},{name:"insertPosition",value:targetElement.foundIndex},{name:"isAddingNewly",value:srcElement.isAddingNewly}];try{dndEvent.lastFoundTargetObject.foundIndex=null;}catch(err){}
ajaxGet(eXo.env.server.createPortalURL("UIPortal","MoveChild",true,params));};PortalDragDrop.prototype.findDropableTargets=function(dragBlock){var DOMUtil=eXo.core.DOMUtil;var dropableTargets=new Array();if(dragBlock&&DOMUtil.hasClass(dragBlock,"UIColumnContainer")){var uiTableContainer=eXo.core.DOMUtil.findAncestorByClass(dragBlock,"UITableColumnContainer");dropableTargets.push(uiTableContainer);return dropableTargets;}
var uiWorkingWorkspace=document.getElementById("UIWorkingWorkspace");var pagebody=document.getElementById("UIPageBody");if(eXo.portal.portalMode&&pagebody){var uiPortal=DOMUtil.findFirstDescendantByClass(uiWorkingWorkspace,"div","UIPortal");dropableTargets.push(uiPortal);}else{var uiPage=DOMUtil.findFirstDescendantByClass(uiWorkingWorkspace,"div","UIPage");if(uiPage)dropableTargets.push(uiPage);}
var uiContainers=DOMUtil.findDescendantsByClass(uiWorkingWorkspace,"div","UIContainer");for(var i=0;i<uiContainers.length;i++){if(DOMUtil.hasAncestor(uiContainers[i],dragBlock))continue;if(DOMUtil.hasClass(uiContainers[i],"ProtectedContainer"))continue;if(DOMUtil.hasClass(uiContainers[i],"UITableColumnContainer"))continue;dropableTargets.push(uiContainers[i]);}
return dropableTargets;};PortalDragDrop.prototype.scrollOnDrag=function(dndEvent){var workspaceHeight=document.getElementById("UIWorkingWorkspace").offsetHeight;var browserHeight=eXo.core.Browser.getBrowserHeight();if(workspaceHeight<=browserHeight)return;var mouseY=eXo.core.Browser.findMouseYInClient(dndEvent.backupMouseEvent);var deltaTop=mouseY-(Math.round(browserHeight*5/6));var deltaBottom=mouseY-(Math.round(browserHeight/6));var currentDragObjPos=parseInt(dndEvent.dragObject.style.top);if(deltaTop>0){document.documentElement.scrollTop+=deltaTop-5;currentDragObjPos+=deltaTop-5;}
if(deltaBottom<0&&document.documentElement.scrollTop>0){document.documentElement.scrollTop+=deltaBottom;currentDragObjPos+=deltaBottom;}
dndEvent.dragObject.style.top=currentDragObjPos+"px";};PortalDragDrop.prototype.findInsertPosition=function(components,layout,mouseEvent){var Browser=eXo.core.Browser;if(layout=="row"){for(var i=0;i<components.length;i++){var componentTop=Browser.findPosY(components[i]);var mouseYInPage=Browser.findMouseYInPage(mouseEvent);var componentMIddle=componentTop+Math.round(components[i].offsetHeight/2);if(mouseYInPage>componentMIddle)continue;else return i;}
return-1;}else{for(var i=0;i<components.length;i++){var mouseXInPage=Browser.findMouseXInPage(mouseEvent);var componentX=Browser.findPosX(components[i],eXo.core.I18n.isRT());if(eXo.core.I18n.isRT()){if(mouseXInPage<componentX)continue;}else if(mouseXInPage>componentX)continue;return i;}
return-1;}};PortalDragDrop.prototype.createPreview=function(layoutType){var previewBlock=document.createElement("div");previewBlock.className="DragAndDropPreview";previewBlock.id="DragAndDropPreview";return previewBlock;};PortalDragDrop.prototype.divRowContainerAddChild=function(srcElement,targetElement,insertPosition){var listComponent=eXo.core.DragDrop.dndEvent.foundTargetObject.listComponentInTarget;var uiRowContainer=eXo.core.DOMUtil.findFirstDescendantByClass(targetElement,"div","UIRowContainer");srcElement.style.width="auto";var parentNode=srcElement.parentNode;if(insertPosition>=0){uiRowContainer.insertBefore(srcElement,listComponent[insertPosition]);}else{uiRowContainer.appendChild(srcElement);}
eXo.core.DOMUtil.removeClass(uiRowContainer,"EmptyContainer");if(parentNode.nodeName.toLowerCase()=="td"){eXo.core.DOMUtil.removeElement(parentNode);}};eXo.portal.PortalDragDrop=new PortalDragDrop();function UIPortalNavigation(){this.currentOpenedMenu=null;this.scrollMgr=null;this.scrollManagerLoaded=false;};UIPortalNavigation.prototype.init=function(popupMenu,container,x,y){this.superClass=eXo.webui.UIPopupMenu;this.superClass.init(popupMenu,container,x,y);this.tabStyleClass="MenuItem";this.itemStyleClass="NormalItem";this.selectedItemStyleClass="SelectedItem";this.itemOverStyleClass="OverItem";this.containerStyleClass="MenuItemContainer";this.buildMenu(popupMenu);};UIPortalNavigation.prototype.onLoad=function(){var uiWorkingWorkspace=document.getElementById("UIWorkingWorkspace");var uiNavPortlets=eXo.core.DOMUtil.findDescendantsByClass(uiWorkingWorkspace,"div","UINavigationPortlet");if(uiNavPortlets.length){var mainContainer=eXo.core.DOMUtil.findFirstDescendantByClass(uiNavPortlets[0],"ul","UIHorizontalTabs");eXo.portal.UIPortalNavigation.init(uiNavPortlets[0],mainContainer,0,0);for(var i=1;i<uiNavPortlets.length;++i){uiNavPortlets[i].style.display="none";}}};UIPortalNavigation.prototype.buildMenu=function(popupMenu){var DOMUtil=eXo.core.DOMUtil;var topContainer=DOMUtil.findFirstDescendantByClass(popupMenu,"ul","UIHorizontalTabs");topContainer.id="PortalNavigationTopContainer";var topItems=DOMUtil.findDescendantsByClass(topContainer,"li","UITab");for(var i=0;i<topItems.length;i++){var item=topItems[i];item.onmouseover=eXo.portal.UIPortalNavigation.setTabStyleOnMouseOver;item.onmouseout=eXo.portal.UIPortalNavigation.setTabStyleOnMouseOut;if(!item.getAttribute('hidesubmenu')){item.onmousemove=eXo.portal.UIPortalNavigation.tabOnMouseMove;}
item.style.width=item.offsetWidth+"px";}
var container=DOMUtil.findFirstDescendantByClass(item,"ul",this.containerStyleClass);if(container){if(eXo.core.Browser.isIE6()){container.style.width=item.offsetWidth+"px";}else{container.style.minWidth=item.offsetWidth+"px";}}
var itemConts=DOMUtil.findDescendantsByClass(topContainer,"ul",this.containerStyleClass);for(var i=0;i<itemConts.length;i++){var cont=itemConts[i];if(!cont.id)cont.id=DOMUtil.generateId("PortalNavigationContainer");cont.resized=false;var items=DOMUtil.findDescendantsByClass(cont,"li",this.tabStyleClass);if(items.length==0)cont.parentNode.removeChild(cont);for(var j=0;j<items.length;j++){items[j].onmouseover=eXo.portal.UIPortalNavigation.onMenuItemOver;items[j].onmouseout=eXo.portal.UIPortalNavigation.onMenuItemOut;}}};UIPortalNavigation.prototype.generateContainer=function(data){var htmlFrags="<ul class='"+this.containerStyleClass+"' style='display: none;' id='";htmlFrags+=eXo.core.DOMUtil.generateId("PortalNavigationContainer")+"' resized='false'>";for(var i=0;i<data.length;i++){var node=data[i];var actionLink=node.actionLink?node.actionLink:"javascript:void(0);";htmlFrags+=("<li class='MenuItem "+(node.hasChild?"ArrowIcon ":"")+(node.isSelected?"SelectedItem'":"NormalItem'"));htmlFrags+=(node.hasChild?(" exo:getNodeURL='"+node.getNodeURL+"' "):"");htmlFrags+=("onmouseover='eXo.portal.UIPortalNavigation.onMenuItemOver(this)' onmouseout='eXo.portal.UIPortalNavigation.onMenuItemOut(this)'");htmlFrags+=("' title='"+node.label+"'>");htmlFrags+=("<a class='ItemIcon "+(node.icon?node.icon:"DefaultPageIcon")+"'"+"href='"+actionLink+"'>"+(node.label.length>40?node.label.substring(0,37)+"...":node.label)+"</a>");if(node.childs.length){htmlFrags+=eXo.portal.UIPortalNavigation.generateContainer(node.childs);}
htmlFrags+="</li>";}
htmlFrags+="</ul>";return htmlFrags;};UIPortalNavigation.prototype.setTabStyleOnMouseOver=function(e){var tab=this;if(eXo.portal.UIPortalNavigation.previousMenuItem!=tab){eXo.portal.UIPortalNavigation.hideMenu();}
eXo.portal.UIPortalNavigation.setTabStyleOnMouseOut(e,tab);eXo.portal.UIPortalNavigation.previousMenuItem=tab;var getNodeURL=tab.getAttribute("exo:getNodeURL");var menuItemContainer=eXo.core.DOMUtil.findFirstDescendantByClass(tab,"ul",eXo.portal.UIPortalNavigation.containerStyleClass);if(getNodeURL&&!menuItemContainer){var jsChilds=ajaxAsyncGetRequest(getNodeURL,false)
try{var data=eXo.core.JSON.parse(jsChilds);}catch(e){}
if(!data||!data.length){return;}
var temp=document.createElement("div");temp.innerHTML=eXo.portal.UIPortalNavigation.generateContainer(data);tab.appendChild(eXo.core.DOMUtil.findFirstChildByClass(temp,"ul",eXo.portal.UIPortalNavigation.containerStyleClass));}
if(!eXo.portal.UIPortalNavigation.menuVisible){var hideSubmenu=tab.getAttribute('hideSubmenu');menuItemContainer=eXo.core.DOMUtil.findFirstDescendantByClass(tab,"ul",eXo.portal.UIPortalNavigation.containerStyleClass);if(menuItemContainer&&!hideSubmenu){var DOMUtil=eXo.core.DOMUtil;if(eXo.core.Browser.browserType=="ie"){var navAncestor=DOMUtil.findAncestorByClass(tab,"UINavigationPortlet");var pageBody=document.getElementById("UIPageBody");if(pageBody){var uicomponents=DOMUtil.getChildrenByTagName(pageBody.parentNode,"div");for(var i=0;i<uicomponents.length;i++){var navPortlet=DOMUtil.findFirstDescendantByClass(uicomponents[i],"div","UINavigationPortlet");if(navPortlet&&(navAncestor!=navPortlet)){var tabsContainer=DOMUtil.findFirstDescendantByClass(navPortlet,"ul","UIHorizontalTabs");tabsContainer.style.position="static";}}}}
eXo.portal.UIPortalNavigation.toggleSubMenu(e,tab,menuItemContainer);}}
eXo.portal.UIPortalNavigation.cancelHideMenuContainer();eXo.portal.UIPortalNavigation.menuVisible=true;};UIPortalNavigation.prototype.setTabStyleOnMouseOut=function(e,src){var tab=src||this;if(!eXo.core.DOMUtil.hasClass(tab,"HighlightNavigationTab")){eXo.webui.UIHorizontalTabs.changeTabNavigationStyle(tab,true);}else{if(tab.id!=eXo.portal.UIPortalNavigation.currentOpenedMenu){eXo.webui.UIHorizontalTabs.changeTabNavigationStyle(tab,false);}}
eXo.portal.UIPortalNavigation.hideMenuTimeout(300);}
UIPortalNavigation.prototype.tabOnMouseMove=function(){eXo.portal.UIPortalNavigation.cancelHideMenuContainer();};UIPortalNavigation.prototype.toggleSubMenu=function(e,tab,menuItemContainer){if(!e)e=window.event;e.cancelBubble=true;var src=eXo.core.Browser.getEventSource(e);if(src.tagName.toLowerCase()=="a"&&!menuItemContainer){if(src.href.substr(0,7)=="http://"){if(!src.target){window.location.href=src.href}else{return true;}}else eval(src.href);return false;}
var item=tab;var DOMUtil=eXo.core.DOMUtil;if(menuItemContainer){if(menuItemContainer.style.display=="none"){if(eXo.portal.UIPortalNavigation.currentOpenedMenu)eXo.portal.UIPortalNavigation.hideMenu();eXo.portal.UIPortalNavigation.superClass.pushVisibleContainer(menuItemContainer.id);menuItemContainer.style.display="block";menuItemContainer.style.position="absolute";var offParent=menuItemContainer.offsetParent;var y=item.offsetHeight+eXo.core.Browser.findPosYInContainer(item,offParent);var x=eXo.core.Browser.findPosXInContainer(item,offParent)+2;if(eXo.core.I18n.isRT()){x=eXo.core.Browser.findPosX(offParent)+offParent.offsetWidth-eXo.core.Browser.findPosX(item)-item.offsetWidth;}
eXo.portal.UIPortalNavigation.superClass.setPosition(menuItemContainer,x,y,eXo.core.I18n.isRT());eXo.portal.UIPortalNavigation.superClass.show(menuItemContainer);menuItemContainer.style.width=menuItemContainer.offsetWidth-parseInt(DOMUtil.getStyle(menuItemContainer,"borderLeftWidth",true))
-parseInt(DOMUtil.getStyle(menuItemContainer,"borderRightWidth",true))+"px";var posXinBrowser=eXo.core.Browser.findPosX(menuItemContainer);if(eXo.core.I18n.isLT()){if(posXinBrowser+menuItemContainer.offsetWidth>=eXo.core.Browser.getBrowserWidth()){x+=(item.offsetWidth-menuItemContainer.offsetWidth);menuItemContainer.style.left=x+"px";}}else{if(posXinBrowser+item.offsetWidth<menuItemContainer.offsetWidth){x+=(item.offsetWidth-menuItemContainer.offsetWidth);menuItemContainer.style.right=x+"px";}}
eXo.portal.UIPortalNavigation.currentOpenedMenu=menuItemContainer.id;var uiPortalApplication=document.getElementById("UIPortalApplication");uiPortalApplication.onclick=eXo.portal.UIPortalNavigation.hideMenu;}else{eXo.portal.UIPortalNavigation.hideMenuContainer();}}};UIPortalNavigation.prototype.cancelHideMenuContainer=function(){if(this.hideMenuTimeoutId){window.clearTimeout(this.hideMenuTimeoutId);}};UIPortalNavigation.prototype.closeMenuTimeout=function(){eXo.portal.UIPortalNavigation.hideMenuTimeout(200);};UIPortalNavigation.prototype.hideMenuTimeout=function(time){this.cancelHideMenuContainer();if(!time||time<=0){time=200;}
this.hideMenuTimeoutId=window.setTimeout('eXo.portal.UIPortalNavigation.hideMenu() ;',time);};UIPortalNavigation.prototype.hideMenuContainer=function(){var menuItemContainer=document.getElementById(eXo.portal.UIPortalNavigation.currentOpenedMenu);if(menuItemContainer){eXo.portal.UIPortalNavigation.superClass.pushHiddenContainer(menuItemContainer.id);eXo.portal.UIPortalNavigation.superClass.popVisibleContainer();eXo.portal.UIPortalNavigation.superClass.setCloseTimeout();eXo.portal.UIPortalNavigation.superClass.hide(menuItemContainer);eXo.portal.UIPortalNavigation.currentOpenedMenu=null;}
this.previousMenuItem=false;eXo.portal.UIPortalNavigation.menuVisible=false;};UIPortalNavigation.prototype.hideMenu=function(){if(eXo.portal.UIPortalNavigation.currentOpenedMenu){var currentItemContainer=document.getElementById(eXo.portal.UIPortalNavigation.currentOpenedMenu);var tab=eXo.core.DOMUtil.findAncestorByClass(currentItemContainer,"UITab");eXo.webui.UIHorizontalTabs.changeTabNavigationStyle(tab,false);}
eXo.portal.UIPortalNavigation.hideMenuContainer();var DOMUtil=eXo.core.DOMUtil;if(eXo.core.Browser.browserType=="ie"){var pageBody=document.getElementById("UIPageBody");if(!pageBody)return;var uicomponents=DOMUtil.getChildrenByTagName(pageBody.parentNode,"div");for(var i=0;i<uicomponents.length;i++){var navPortlet=DOMUtil.findFirstDescendantByClass(uicomponents[i],"div","UINavigationPortlet");if(navPortlet){var tabsContainer=DOMUtil.findFirstDescendantByClass(navPortlet,"ul","UIHorizontalTabs");tabsContainer.style.position="relative";}}}};UIPortalNavigation.prototype.onMenuItemOver=function(menuItem){if(!menuItem||!menuItem.nodeName)menuItem=this;var DOMUtil=eXo.core.DOMUtil;var getNodeURL=menuItem.getAttribute("exo:getNodeURL");var subContainer=DOMUtil.findFirstDescendantByClass(menuItem,"ul",eXo.portal.UIPortalNavigation.containerStyleClass);if(getNodeURL&&!subContainer){var jsChilds=ajaxAsyncGetRequest(getNodeURL,false)
try{var data=eXo.core.JSON.parse(jsChilds);}catch(e){}
if(!data||!data.length){DOMUtil.removeClass(menuItem,"ArrowIcon");menuItem.removeAttribute("exo:getNodeURL");return;}
var temp=document.createElement("div");temp.innerHTML=eXo.portal.UIPortalNavigation.generateContainer(data);menuItem.appendChild(eXo.core.DOMUtil.findFirstChildByClass(temp,"ul",eXo.portal.UIPortalNavigation.containerStyleClass));}
subContainer=DOMUtil.findFirstDescendantByClass(menuItem,"ul",eXo.portal.UIPortalNavigation.containerStyleClass);if(subContainer){eXo.portal.UIPortalNavigation.superClass.pushVisibleContainer(subContainer.id);eXo.portal.UIPortalNavigation.showMenuItemContainer(menuItem,subContainer);if(!subContainer.firstTime){subContainer.style.width=subContainer.offsetWidth+2+"px";subContainer.firstTime=true;}}};UIPortalNavigation.prototype.showMenuItemContainer=function(menuItem,menuItemContainer){var x=menuItem.offsetWidth;var y=menuItem.offsetTop;this.superClass.show(menuItemContainer);var posRight=eXo.core.Browser.getBrowserWidth()-eXo.core.Browser.findPosX(menuItem)-menuItem.offsetWidth;var rootX=(eXo.core.I18n.isLT()?eXo.core.Browser.findPosX(menuItem):posRight);if(x+menuItemContainer.offsetWidth+rootX>eXo.core.Browser.getBrowserWidth()){x-=(menuItemContainer.offsetWidth+menuItem.offsetWidth);}
this.superClass.setPosition(menuItemContainer,x,y,eXo.core.I18n.isRT());};UIPortalNavigation.prototype.onMenuItemOut=function(menuItem){if(!menuItem||!menuItem.nodeName)menuItem=this;var subContainer=eXo.core.DOMUtil.findFirstDescendantByClass(menuItem,"ul",eXo.portal.UIPortalNavigation.containerStyleClass);if(subContainer){eXo.portal.UIPortalNavigation.superClass.pushHiddenContainer(subContainer.id);eXo.portal.UIPortalNavigation.superClass.popVisibleContainer();eXo.portal.UIPortalNavigation.superClass.setCloseTimeout(300);}};UIPortalNavigation.prototype.loadScroll=function(e){var uiNav=eXo.portal.UIPortalNavigation;var portalNav=document.getElementById("PortalNavigationTopContainer");if(portalNav){uiNav.scrollMgr=eXo.portal.UIPortalControl.newScrollManager("PortalNavigationTopContainer");uiNav.scrollMgr.initFunction=uiNav.initScroll;uiNav.scrollMgr.mainContainer=portalNav;uiNav.scrollMgr.arrowsContainer=eXo.core.DOMUtil.findFirstDescendantByClass(portalNav,"li","ScrollButtons");uiNav.scrollMgr.loadElements("UITab");var arrowButtons=eXo.core.DOMUtil.findDescendantsByTagName(uiNav.scrollMgr.arrowsContainer,"a");if(arrowButtons.length==2){uiNav.scrollMgr.initArrowButton(arrowButtons[0],"left","ScrollLeftButton","HighlightScrollLeftButton","DisableScrollLeftButton");uiNav.scrollMgr.initArrowButton(arrowButtons[1],"right","ScrollRightButton","HighlightScrollRightButton","DisableScrollRightButton");}
uiNav.scrollMgr.callback=uiNav.scrollCallback;uiNav.scrollManagerLoaded=true;uiNav.initScroll();}};UIPortalNavigation.prototype.initScroll=function(e){if(!eXo.portal.UIPortalNavigation.scrollManagerLoaded)eXo.portal.UIPortalNavigation.loadScroll();var scrollMgr=eXo.portal.UIPortalNavigation.scrollMgr;scrollMgr.init();scrollMgr.checkAvailableSpace();scrollMgr.renderElements();};UIPortalNavigation.prototype.scrollCallback=function(){};eXo.portal.UIPortalNavigation=new UIPortalNavigation();function UIMaskWorkspace(){};UIMaskWorkspace.prototype.init=function(maskId,show,width,height){var maskWorkpace=document.getElementById(maskId);this.maskWorkpace=maskWorkpace;if(this.maskWorkpace){if(width>-1)this.maskWorkpace.style.width=width+"px";if(show){if(eXo.portal.UIMaskWorkspace.maskLayer==null){var maskLayer=eXo.core.UIMaskLayer.createMask("UIPortalApplication",this.maskWorkpace,30);eXo.portal.UIMaskWorkspace.maskLayer=maskLayer;}
this.maskWorkpace.style.margin="auto";this.maskWorkpace.style.display="block";}else{if(eXo.portal.UIMaskWorkspace.maskLayer==undefined)return;eXo.core.UIMaskLayer.removeMask(eXo.portal.UIMaskWorkspace.maskLayer);eXo.portal.UIMaskWorkspace.maskLayer=null;this.maskWorkpace.style.display="none";}
if(height<0)return;}};UIMaskWorkspace.prototype.resetPosition=function(){var maskWorkpace=eXo.portal.UIMaskWorkspace.maskWorkpace;if(maskWorkpace&&(maskWorkpace.style.display=="block")){try{eXo.core.UIMaskLayer.blockContainer=document.getElementById("UIPortalApplication");eXo.core.UIMaskLayer.object=maskWorkpace;eXo.core.UIMaskLayer.setPosition();}catch(e){}}};eXo.portal.UIMaskWorkspace=new UIMaskWorkspace();function UIBrowseContent(){this.bcManagers=new Array();};UIBrowseContent.prototype.waitForLoadComplete=function(){var homeButton=null;var bcPortlet=document.getElementById("UIBrowseContainer");if(bcPortlet)homeButton=eXo.core.DOMUtil.findFirstDescendantByClass(bcPortlet,"div","HomeTab");var tabs=eXo.core.DOMUtil.findFirstDescendantByClass(bcPortlet,"div","UIHorizontalTabs");if(homeButton&&tabs&&homeButton.offsetWidth==tabs.offsetWidth)window.setTimeout(eXo.portal.UIBrowseContent.waitForLoadComplete,100);else eXo.portal.UIBrowseContent.loadScroll();};UIBrowseContent.prototype.loadScroll=function(){var uiBC=eXo.portal.UIBrowseContent;uiBC.bcManagers.clear();var bcPortlet=document.getElementById("UIBrowseContainer");if(bcPortlet){var mainNav=eXo.core.DOMUtil.findFirstDescendantByClass(bcPortlet,"div","UICBMainNavigation");var mainBarMgr=eXo.portal.UIPortalControl.newScrollManager("UIBrowseContainer");mainBarMgr.mainContainer=mainNav;mainBarMgr.arrowsContainer=eXo.core.DOMUtil.findFirstDescendantByClass(mainNav,"div","NavigationButtonContainer");mainBarMgr.loadElements("UITab",true);var mainArrows=eXo.core.DOMUtil.findDescendantsByClass(mainBarMgr.arrowsContainer,"div","NavigationIcon");if(mainArrows.length==2){mainBarMgr.initArrowButton(mainArrows[0],"left","NavigationIcon ScrollBackArrow16x16Icon","NavigationIcon DisableBackArrow16x16Icon","NavigationIcon DisableBackArrow16x16Icon");mainBarMgr.initArrowButton(mainArrows[1],"right","NavigationIcon ScrollNextArrow16x16Icon","NavigationIcon DisableNextArrow16x16Icon","NavigationIcon DisableNextArrow16x16Icon");}
mainBarMgr.initFunction=uiBC.initScroll;mainBarMgr.callback=uiBC.mainMenuScrollCallback;uiBC.bcManagers.push(mainBarMgr);var subNav=eXo.core.DOMUtil.findFirstDescendantByClass(bcPortlet,"div","UICBSubNavigation");var subBarMgr=eXo.portal.UIPortalControl.newScrollManager("UIBrowseContainer");subBarMgr.mainContainer=subNav;subBarMgr.arrowsContainer=eXo.core.DOMUtil.findFirstDescendantByClass(subNav,"div","NavigationButtonContainer");subBarMgr.loadElements("ChildNodeItem",true);for(var i=0;i<subBarMgr.elements.length;i++){subBarMgr.elements[i].decorator=eXo.core.DOMUtil.findNextElementByTagName(subBarMgr.elements[i],"div");}
var subArrows=eXo.core.DOMUtil.findDescendantsByClass(subBarMgr.arrowsContainer,"div","NavigationIcon");if(subArrows.length==2){subBarMgr.initArrowButton(subArrows[0],"left","NavigationIcon ScrollBackArrow16x16Icon","NavigationIcon DisableBackArrow16x16Icon","NavigationIcon DisableBackArrow16x16Icon");subBarMgr.initArrowButton(subArrows[1],"right","NavigationIcon ScrollNextArrow16x16Icon","NavigationIcon DisableNextArrow16x16Icon","NavigationIcon DisableNextArrow16x16Icon");}
subBarMgr.initFunction=uiBC.initScroll;subBarMgr.callback=uiBC.subMenuScrollCallback;uiBC.bcManagers.push(subBarMgr);var pageNav=eXo.core.DOMUtil.findFirstDescendantByClass(bcPortlet,"div","UIEventViewer");var pageMenus=eXo.core.DOMUtil.findDescendantsByClass(pageNav,"div","SubContentTitle");for(var i=0;i<pageMenus.length;i++){var currMgr=eXo.portal.UIPortalControl.newScrollManager("UIBrowseContainer");currMgr.mainContainer=eXo.core.DOMUtil.findFirstDescendantByClass(pageMenus[i],"div","MiddleBar");currMgr.arrowsContainer=eXo.core.DOMUtil.findFirstDescendantByClass(pageMenus[i],"div","NavigationButtonContainer");currMgr.loadElements("ChildNode",true);for(var j=0;j<currMgr.elements.length;j++){currMgr.elements[j].decorator=eXo.core.DOMUtil.findNextElementByTagName(currMgr.elements[j],"div");}
var currArrows=eXo.core.DOMUtil.findDescendantsByClass(currMgr.arrowsContainer,"div","NavigationIcon");if(currArrows.length==2){currMgr.initArrowButton(currArrows[0],"left","NavigationIcon ScrollBackArrow16x16Icon","NavigationIcon DisableBackArrow16x16Icon","NavigationIcon DisableBackArrow16x16Icon");currMgr.initArrowButton(currArrows[1],"right","NavigationIcon ScrollNextArrow16x16Icon","NavigationIcon DisableNextArrow16x16Icon","NavigationIcon DisableNextArrow16x16Icon");}
currMgr.initFunction=uiBC.initScroll;currMgr.callback=uiBC.subMenuScrollCallback;uiBC.bcManagers.push(currMgr);}
uiBC.initScroll();}};UIBrowseContent.prototype.initScroll=function(){var uiBC=eXo.portal.UIBrowseContent;var bcPortlet=document.getElementById("UIBrowseContainer");var mainNav=eXo.core.DOMUtil.findFirstDescendantByClass(bcPortlet,"div","UICBMainNavigation");if(mainNav){if(uiBC.bcManagers.length>=1){var mainBarMgr=uiBC.bcManagers[0];mainBarMgr.init();mainBarMgr.loadElements("UITab",true);var homeButton=eXo.core.DOMUtil.findFirstDescendantByClass(mainBarMgr.mainContainer,"div","HomeTab");var maxSpace=mainBarMgr.getElementSpace(mainBarMgr.mainContainer)-mainBarMgr.getElementSpace(mainBarMgr.arrowsContainer)-mainBarMgr.margin-100;if(homeButton){maxSpace=maxSpace+100-mainBarMgr.getElementSpace(homeButton);}
mainBarMgr.checkAvailableSpace(maxSpace);mainBarMgr.renderElements();var subBarMgr=uiBC.bcManagers[1];subBarMgr.init();subBarMgr.loadElements("ChildNodeItem",true);subBarMgr.checkAvailableSpace();subBarMgr.renderElements();}
if(uiBC.bcManagers.length>=2){for(var i=2;i<uiBC.bcManagers.length;i++){var currMgr=uiBC.bcManagers[i];currMgr.init();currMgr.loadElements("ChildNode",true);currMgr.checkAvailableSpace();currMgr.renderElements();}}}};UIBrowseContent.prototype.mainMenuScrollCallback=function(){var homeButton=eXo.core.DOMUtil.findFirstDescendantByClass(this.mainContainer,"div","HomeTab");if(eXo.core.Browser.isIE7())this.cleanElements();var maxSpace=this.getElementSpace(this.mainContainer)-this.getElementSpace(this.arrowsContainer)-this.margin-100;if(homeButton){maxSpace=maxSpace+100-this.getElementSpace(homeButton);}
var elementsSpace=this.getElementsSpace(this.firstVisibleIndex,this.lastVisibleIndex);var delta=maxSpace-elementsSpace;if(delta<0){this.hideElements(delta);}};UIBrowseContent.prototype.subMenuScrollCallback=function(){for(var i=0;i<this.elements.length;i++){if(!this.elements[i].isVisible){this.elements[i].decorator.style.display="none";}else{this.elements[i].decorator.style.display="block";}}};eXo.portal.UIBrowseContent=new UIBrowseContent();function UIItemSelector(){this.backupClass;this.backupItem;};UIItemSelector.prototype.onOver=function(selectedElement,mouseOver){if(selectedElement.className=="Item"){eXo.webui.UIItemSelector.beforeActionHappen(selectedElement);}
if(mouseOver){this.backupClass=selectedElement.className;selectedElement.className="OverItem Item";}else{selectedElement.className=this.backupClass;}};UIItemSelector.prototype.onClick=function(clickedElement){var itemListContainer=clickedElement.parentNode;var allItems=eXo.core.DOMUtil.findDescendantsByClass(itemListContainer,"div","Item");eXo.webui.UIItemSelector.beforeActionHappen(clickedElement);if(this.allItems.length<=0)return;for(var i=0;i<allItems.length;i++){if(allItems[i]!=clickedElement){allItems[i].className="Item";this.onChangeItemDetail(clickedElement,true);}else{allItems[i].className="SelectedItem Item";this.backupClass="SelectedItem Item";this.onChangeItemDetail(clickedElement,false);}}};UIItemSelector.prototype.onChangeItemDetail=function(itemSelected,mouseOver){if(!this.allItems||this.allItems.length<=0)return;if(mouseOver){for(var i=0;i<this.allItems.length;i++){if(this.allItems[i]==itemSelected){this.itemDetails[i].style.display="block";}else{this.itemDetails[i].style.display="none";}}}else{for(var i=0;i<this.allItems.length;i++){if(this.allItems[i].className=="SelectedItem Item"){this.itemDetails[i].style.display="block";}else{this.itemDetails[i].style.display="none";}}}};UIItemSelector.prototype.onClickCategory=function(clickedElement,form,component,option){eXo.webui.UIItemSelector.onClick(clickedElement);if(eXo.webui.UIItemSelector.SelectedItem==null){eXo.webui.UIItemSelector.SelectedItem=new Object();}
eXo.webui.UIItemSelector.SelectedItem.component=component;eXo.webui.UIItemSelector.SelectedItem.option=option;};UIItemSelector.prototype.onClickOption=function(clickedElement,form,component,option){var itemDetailList=eXo.core.DOMUtil.findAncestorByClass(clickedElement,"ItemDetailList");var selectedItems=eXo.core.DOMUtil.findDescendantsByClass(itemDetailList,"div","SelectedItem");for(var i=0;i<selectedItems.length;i++){selectedItems[i].className="NormalItem";}
clickedElement.className="SelectedItem";if(eXo.webui.UIItemSelector.SelectedItem==null){eXo.webui.UIItemSelector.SelectedItem=new Object();}
eXo.webui.UIItemSelector.SelectedItem.component=component;eXo.webui.UIItemSelector.SelectedItem.option=option;};UIItemSelector.prototype.beforeActionHappen=function(selectedItem){DOMUtil=eXo.core.DOMUtil;this.uiItemSelector=DOMUtil.findAncestorByClass(selectedItem,"UIItemSelector");this.itemList=DOMUtil.findAncestorByClass(selectedItem,"ItemList");this.itemListContainer=DOMUtil.findAncestorByClass(selectedItem,"ItemListContainer");this.itemListAray=DOMUtil.findDescendantsByClass(this.itemListContainer.parentNode,"div","ItemList");if(this.itemListAray.length>1){this.itemDetailLists=DOMUtil.findDescendantsByClass(this.itemListContainer.parentNode,"div","ItemDetailList");this.itemDetailList=null;for(var i=0;i<this.itemListAray.length;i++){if(this.itemListAray[i].style.display=="none"){this.itemDetailLists[i].style.display="none";}else{this.itemDetailList=this.itemDetailLists[i];this.itemDetailList.style.display="block";}}}else{this.itemDetailList=DOMUtil.findFirstDescendantByClass(this.itemListContainer.parentNode,"div","ItemDetailList");}
this.itemDetails=DOMUtil.findDescendantsByClass(this.itemDetailList,"div","ItemDetail");var firstItemDescendant=DOMUtil.findFirstDescendantByClass(this.itemList,"div","Item");var firstItemParent=firstItemDescendant.parentNode;this.allItems=DOMUtil.findChildrenByClass(firstItemParent,"div","Item");};UIItemSelector.prototype.showPopupCategory=function(selectedNode){var DOMUtil=eXo.core.DOMUtil;var itemListContainer=DOMUtil.findAncestorByClass(selectedNode,"ItemListContainer");var uiPopupCategory=DOMUtil.findFirstDescendantByClass(itemListContainer,"div","UIPopupCategory");itemListContainer.style.position="relative";if(uiPopupCategory.style.display=="none"){uiPopupCategory.style.position="absolute";uiPopupCategory.style.top="23px";uiPopupCategory.style.left="0px";uiPopupCategory.style.display="block";uiPopupCategory.style.width="100%";}else{uiPopupCategory.style.display="none";}};UIItemSelector.prototype.selectCategory=function(selectedNode){var DOMUtil=eXo.core.DOMUtil;var uiPopupCategory=DOMUtil.findAncestorByClass(selectedNode,"UIPopupCategory");var itemListContainer=DOMUtil.findAncestorByClass(selectedNode,"OverflowContainer");var selectedNodeIndex=eXo.webui.UIItemSelector.findIndex(selectedNode);var itemLists=DOMUtil.findDescendantsByClass(itemListContainer,"div","ItemList");var itemDetailLists=DOMUtil.findDescendantsByClass(itemListContainer,"div","ItemDetailList");for(var i=0;i<itemLists.length;i++){if(i!=selectedNodeIndex){itemLists[i].style.display="none";itemDetailLists[i].style.display="none";}else{itemDetailLists[i].style.display="block";itemLists[i].style.display="block";}}
uiPopupCategory.style.display="none";};UIItemSelector.prototype.findIndex=function(object){var parentNode=object.parentNode;var objectElements=eXo.core.DOMUtil.findChildrenByClass(parentNode,"div",object.className);for(var i=0;i<objectElements.length;i++){if(objectElements[i]==object)return i;}};UIItemSelector.prototype.selectPageLayout=function(id,selectedIndex){var DOMUtil=eXo.core.DOMUtil;var uiDropDownControl=document.getElementById(id);var itemSelectorAncestor=DOMUtil.findAncestorByClass(uiDropDownControl,"ItemSelectorAncestor");var itemList=DOMUtil.findDescendantsByClass(itemSelectorAncestor,"div","ItemList");var itemSelectorLabel=DOMUtil.findDescendantsByClass(itemSelectorAncestor,"a","OptionItem");var uiItemSelector=DOMUtil.findAncestorByClass(uiDropDownControl,"UIItemSelector");var itemDetailList=DOMUtil.findDescendantsByClass(uiItemSelector,"div","ItemDetailList");if(itemList==null)return;for(i=0;i<itemSelectorLabel.length;++i){if(i>=itemList.length)continue;if(i==selectedIndex){itemList[i].style.display="block";if(itemDetailList.length<1)continue;itemDetailList[i].style.display="block";var selectedItem=DOMUtil.findFirstDescendantByClass(itemList[i],"div","SelectedItem");if(selectedItem==null)continue;var setValue=DOMUtil.findDescendantById(selectedItem,"SetValue");if(setValue==null)continue;eval(setValue.innerHTML);}else{itemList[i].style.display="none";if(itemDetailList.length>0)itemDetailList[i].style.display="none";}}};eXo.webui.UIItemSelector=new UIItemSelector();function UIForm(){};UIForm.prototype.ajaxPost=function(formElement,callback){if(!callback)callback=null;var queryString=eXo.webui.UIForm.serializeForm(formElement);var url=formElement.action+"&ajaxRequest=true";doRequest("POST",url,queryString,callback);};UIForm.prototype.getFormElemt=function(pattern){if(pattern.indexOf("#")==-1)return document.getElementById(pattern);var strArr=pattern.split("#");var portlet=document.getElementById(strArr[0]);return eXo.core.DOMUtil.findDescendantById(portlet,strArr[1]);}
UIForm.prototype.submitForm=function(formId,action,useAjax,callback){if(!callback)callback=null;var form=this.getFormElemt(formId);try{if(FCKeditorAPI&&typeof FCKeditorAPI=="object"){for(var name in FCKeditorAPI.__Instances){var oEditor;try{oEditor=FCKeditorAPI.__Instances[name];if(oEditor&&oEditor.GetParentForm&&oEditor.GetParentForm()==form){oEditor.UpdateLinkedField();}}catch(e){continue;}}}}catch(e){}
form.elements['formOp'].value=action;if(useAjax)this.ajaxPost(form,callback);else form.submit();};UIForm.prototype.submitEvent=function(formId,action,params){var form=this.getFormElemt(formId);try{if(FCKeditorAPI&&typeof FCKeditorAPI=="object"){for(var name in FCKeditorAPI.__Instances){var oEditor=FCKeditorAPI.__Instances[name];if(oEditor.GetParentForm&&oEditor.GetParentForm()==form){oEditor.UpdateLinkedField();}}}}catch(e){}
form.elements['formOp'].value=action;if(!form.originalAction)form.originalAction=form.action;form.action=form.originalAction+encodeURI(params);this.ajaxPost(form);};UIForm.prototype.selectBoxOnChange=function(formId,elemt){var selectBox=eXo.core.DOMUtil.findAncestorByClass(elemt,"UISelectBoxOnChange");var contentContainer=eXo.core.DOMUtil.findFirstDescendantByClass(selectBox,"div","SelectBoxContentContainer");var tabs=eXo.core.DOMUtil.findChildrenByClass(contentContainer,"div","SelectBoxContent");for(var i=0;i<tabs.length;i++){tabs[i].style.display="none";}
tabs[elemt.selectedIndex].style.display="block";};UIForm.prototype.setHiddenValue=function(formId,typeId,hiddenValue){var form=document.getElementById(formId);if(form==null){maskWorkspace=document.getElementById("UIMaskWorkspace");form=eXo.core.DOMUtil.findDescendantById(maskWorkspace,formId);}
form.elements[typeId].value=hiddenValue;};UIForm.prototype.serializeForm=function(formElement){var queryString="";var element;var elements=formElement.elements;this.addField=function(name,value){if(queryString.length>0)queryString+="&";queryString+=name+"="+encodeURIComponent(value);};for(var i=0;i<elements.length;i++){element=elements[i];switch(element.type){case"text":case"hidden":case"password":case"textarea":this.addField(element.name,element.value.replace(/\r/gi,""));break;case"checkbox":if(element.checked)
this.addField(element.name,"true");else
this.addField(element.name,"false");break;case"radio":if(element.checked)this.addField(element.name,element.value);break;case"select-one":if(element.selectedIndex>-1){this.addField(element.name,element.options[element.selectedIndex].value);}
break;case"select-multiple":for(var j=0;j<element.options.length;j++){if(element.options[j].selected)this.addField(element.name,element.options[j].value);}
break;}}
return queryString;};eXo.webui.UIForm=new UIForm();function UIPopup(){this.zIndex=3;};UIPopup.prototype.init=function(popup,containerId){if(typeof(popup)=="string")popup=document.getElementById(popup);if(containerId)popup.containerId=containerId;popup.onmousedown=this.changezIndex;};UIPopup.prototype.changezIndex=function(){this.style.zIndex=++eXo.webui.UIPopup.zIndex;};UIPopup.prototype.create=function(){var popup=document.createElement("div");with(popup.style){position="relative";display="none";}
return popup;};UIPopup.prototype.setSize=function(popup,w,h){popup.style.width=w+"px";popup.style.height=h+"px";};UIPopup.prototype.show=function(popup){if(typeof(popup)=="string"){popup=document.getElementById(popup);}
var uiMaskWS=document.getElementById("UIMaskWorkspace");if(uiMaskWS){uiMaskWSzIndex=eXo.core.DOMUtil.getStyle(uiMaskWS,"zIndex");if(uiMaskWSzIndex&&(uiMaskWSzIndex>eXo.webui.UIPopup.zIndex)){eXo.webui.UIPopup.zIndex=uiMaskWSzIndex;}}
popup.style.zIndex=++eXo.webui.UIPopup.zIndex;popup.style.display="block";};UIPopup.prototype.hide=function(popup){if(typeof(popup)=="string"){popup=document.getElementById(popup);}
popup.style.display="none";};UIPopup.prototype.setPosition=function(popup,x,y,isRTL){if(popup.containerId){var container=document.getElementById(popup.containerId);container.style.position="relative";}
popup.style.position="absolute";popup.style.top=y+"px";if(isRTL){popup.style.right=x+"px";popup.style.left="";}
else{popup.style.left=x+"px";popup.style.right="";}};UIPopup.prototype.setAlign=function(popup,pos,hozMargin,verMargin){if(typeof(popup)=='string')popup=document.getElementById(popup);var stdLeft=eXo.core.Browser.getBrowserWidth()-eXo.core.Browser.findPosX(document.getElementById("UIWorkingWorkspace"));var intTop=0;var intLeft=0;if(!hozMargin)hozMargin=0;if(!verMargin)verMargin=0;switch(pos){case 1:intTop=verMargin;intLeft=hozMargin;break;case 2:intTop=verMargin;intLeft=(stdLeft-popup.offsetWidth)-hozMargin;break;case 3:intTop=(eXo.core.Browser.getBrowserHeight()-popup.offsetHeight)-verMargin;intLeft=hozMargin;break;case 4:intTop=(eXo.core.Browser.getBrowserHeight()-popup.offsetHeight)-verMargin;intLeft=(stdLeft-popup.offsetWidth)-hozMargin;break;default:intTop=(eXo.core.Browser.getBrowserHeight()-popup.offsetHeight)/2;intLeft=(uiWorkingWS.offsetWidth-popup.offsetWidth)/2;break;}
this.setPosition(popup,intLeft,intTop,eXo.core.I18n.isRT());};UIPopup.prototype.initDND=function(evt){var DragDrop=eXo.core.DragDrop;DragDrop.initCallback=null;DragDrop.dragCallback=null;DragDrop.dropCallback=null;var clickBlock=this;var dragBlock=eXo.core.DOMUtil.findAncestorByClass(this,"UIDragObject");DragDrop.init(null,clickBlock,dragBlock,evt);};eXo.webui.UIPopup=new UIPopup();function UIPopupSelectCategory(){};UIPopupSelectCategory.prototype.hide=function(){var ln=eXo.core.DOMUtil.hideElementList.length;if(ln>0){for(var i=0;i<ln;i++){eXo.core.DOMUtil.hideElementList[i].style.display="none";}}};UIPopupSelectCategory.prototype.show=function(obj,evt){if(!evt)evt=window.event;evt.cancelBubble=true;var DOMUtil=eXo.core.DOMUtil;var uiPopupCategory=DOMUtil.findFirstDescendantByClass(obj,'div','UIPopupCategory');if(!uiPopupCategory)return;if(uiPopupCategory.style.display=="none"){eXo.webui.UIPopupSelectCategory.hide();uiPopupCategory.style.display="block";eXo.core.DOMUtil.listHideElements(uiPopupCategory);}
else uiPopupCategory.style.display="none";}
eXo.webui.UIPopupSelectCategory=new UIPopupSelectCategory();function UIPopupWindow(){};UIPopupWindow.prototype.init=function(popupId,isShow,isResizable,showCloseButton,isShowMask){var DOMUtil=eXo.core.DOMUtil;this.superClass=eXo.webui.UIPopup;var popup=document.getElementById(popupId);if(popup==null)return;popup.style.visibility="hidden";if(isShow){popup.style.display="block";}
var contentBlock=DOMUtil.findFirstDescendantByClass(popup,'div','PopupContent');if(contentBlock&&(eXo.core.Browser.getBrowserHeight()-100<contentBlock.offsetHeight)){contentBlock.style.height=(eXo.core.Browser.getBrowserHeight()-100)+"px";}
var popupBar=DOMUtil.findFirstDescendantByClass(popup,'span','PopupTitle');popupBar.onmousedown=this.initDND;if(isShow==false){this.superClass.hide(popup);if(isShowMask)eXo.webui.UIPopupWindow.showMask(popup,false);}
if(isResizable){var resizeBtn=DOMUtil.findFirstDescendantByClass(popup,"span","ResizeButton");resizeBtn.style.display='block';resizeBtn.onmousedown=this.startResizeEvt;}
popup.style.visibility="hidden";if(isShow==true){var iframes=DOMUtil.findDescendantsByTagName(popup,"iframe");if(iframes.length>0){setTimeout("eXo.webui.UIPopupWindow.show('"+popupId+"',"+isShowMask+")",500);}else{this.show(popup,isShowMask);}}};UIPopupWindow.prototype.showMask=function(popup,isShowPopup){var mask=popup.previousSibling;if(mask&&mask.className!="MaskLayer"){mask=null;}
if(isShowPopup){if(eXo.core.DOMUtil.findAncestorByClass(popup,"PORTLET-FRAGMENT")==null){if(!mask)eXo.core.UIMaskLayer.createMask(popup.parentNode,popup,1);}else{if(!mask)eXo.core.UIMaskLayer.createMaskForFrame(popup.parentNode,popup,1);}}else{if(mask)eXo.core.UIMaskLayer.removeMask(mask);}};UIPopupWindow.prototype.show=function(popup,isShowMask,middleBrowser){var DOMUtil=eXo.core.DOMUtil;if(typeof(popup)=="string")popup=document.getElementById(popup);var portalApp=document.getElementById("UIPortalApplication");var maskLayer=DOMUtil.findFirstDescendantByClass(portalApp,"div","UIMaskWorkspace");var zIndex=0;var currZIndex=0;if(maskLayer!=null){currZIndex=DOMUtil.getStyle(maskLayer,"zIndex");if(!isNaN(currZIndex)&&currZIndex>zIndex)zIndex=currZIndex;}
var popupWindows=DOMUtil.findDescendantsByClass(portalApp,"div","UIPopupWindow");var len=popupWindows.length;for(var i=0;i<len;i++){currZIndex=DOMUtil.getStyle(popupWindows[i],"zIndex");if(!isNaN(currZIndex)&&currZIndex>zIndex)zIndex=currZIndex;}
if(zIndex==0)zIndex=2000;if(isShowMask)eXo.webui.UIPopupWindow.showMask(popup,true);popup.style.visibility="hidden";this.superClass.show(popup);var offsetParent=popup.offsetParent;var scrollY=0;if(window.pageYOffset!=undefined)scrollY=window.pageYOffset;else if(document.documentElement&&document.documentElement.scrollTop)scrollY=document.documentElement.scrollTop;else scrollY=document.body.scrollTop;if(offsetParent){var middleWindow=(eXo.core.DOMUtil.hasClass(offsetParent,"UIPopupWindow")||eXo.core.DOMUtil.hasClass(offsetParent,"UIWindow"));if(middleWindow){popup.style.top=Math.ceil((offsetParent.offsetHeight-popup.offsetHeight)/2)+"px";}
if(middleBrowser||!middleWindow){popup.style.top=Math.ceil((eXo.core.Browser.getBrowserHeight()-popup.offsetHeight)/2)+scrollY+"px";}
if(eXo.core.DOMUtil.hasClass(offsetParent,"UIMaskWorkspace")){popup.style.top=Math.ceil((offsetParent.offsetHeight-popup.offsetHeight)/2)+"px";}
var checkHeight=popup.offsetHeight>300;if(document.getElementById("UIDockBar")&&checkHeight){popup.style.top="6px";}
if(eXo.core.I18n.lt)popup.style.left=Math.ceil((offsetParent.offsetWidth-popup.offsetWidth)/2)+"px";else popup.style.right=Math.ceil((offsetParent.offsetWidth-popup.offsetWidth)/2)+"px";}
if(eXo.core.Browser.findPosY(popup)<0)popup.style.top=scrollY+"px";popup.style.visibility="visible";};UIPopupWindow.prototype.increasezIndex=function(popup){var DOMUtil=eXo.core.DOMUtil;if(typeof(popup)=="string")popup=document.getElementById(popup);var portalApp=document.getElementById("UIPortalApplication");var uiLogin=DOMUtil.findFirstDescendantByClass(portalApp,"div","UILoginForm");if(uiLogin){var curMaskzIndex=parseInt(DOMUtil.getStyle(document.getElementById('UIMaskWorkspace'),"zIndex"));popup.style.zIndex=++curMaskzIndex+"";}}
UIPopupWindow.prototype.closePopupEvt=function(evt){eXo.core.DOMUtil.findAncestorByClass(this,"UIDragObject").style.display="none";}
UIPopupWindow.prototype.startResizeEvt=function(evt){eXo.webui.UIPopupWindow.popupId=eXo.core.DOMUtil.findAncestorByClass(this,"UIPopupWindow").id;document.onmousemove=eXo.webui.UIPopupWindow.resize;document.onmouseup=eXo.webui.UIPopupWindow.endResizeEvt;}
var POPUP_WINDOW_BOTTOM_HEIGHT=50;UIPopupWindow.prototype.resize=function(evt){var targetPopup=document.getElementById(eXo.webui.UIPopupWindow.popupId);var content=eXo.core.DOMUtil.findFirstDescendantByClass(targetPopup,"div","PopupContent");var isRTL=eXo.core.I18n.isRT();var pointerX=eXo.core.Browser.findMouseRelativeX(targetPopup,evt,isRTL);var pointerY=eXo.core.Browser.findMouseRelativeY(targetPopup,evt);var delta=eXo.core.Browser.findPosYInContainer(content,targetPopup)+
content.style.borderWidth+content.style.padding+content.style.margin;if((pointerY-delta)>0)content.style.height=(pointerY-delta-POPUP_WINDOW_BOTTOM_HEIGHT)+"px";targetPopup.style.height="auto";if(isRTL){pointerX=(-1)*pointerX}
if(pointerX>200)targetPopup.style.width=(pointerX+5)+"px";};UIPopupWindow.prototype.endResizeEvt=function(evt){delete eXo.webui.UIPopupWindow.popupId;this.onmousemove=null;this.onmouseup=null;eXo.portal.UIPortalControl.initAllManagers();}
UIPopupWindow.prototype.initDND=function(evt){var DragDrop=eXo.core.DragDrop;var DOMUtil=eXo.core.DOMUtil;DragDrop.initCallback=function(dndEvent){var dragObject=dndEvent.dragObject;dragObject.uiWindowContent=DOMUtil.findFirstDescendantByClass(dragObject,"div","PopupContent");if(!dragObject.uiWindowContent)return;if(eXo.core.Browser.browserType=="mozilla"){dragObject.uiWindowContent.style.overflow="hidden";var elements=eXo.core.DOMUtil.findDescendantsByClass(dragObject.uiWindowContent,"ul","PopupMessageBox");for(var i=0;i<elements.length;i++){elements[i].style.overflow="hidden";}}}
DragDrop.dragCallback=function(dndEvent){}
DragDrop.dropCallback=function(dndEvent){var dragObject=dndEvent.dragObject;if(eXo.core.Browser.browserType=="mozilla"&&dragObject.uiWindowContent){dragObject.uiWindowContent.style.overflow="auto";var elements=eXo.core.DOMUtil.findDescendantsByClass(dragObject.uiWindowContent,"ul","PopupMessageBox");for(var i=0;i<elements.length;i++){elements[i].style.overflow="auto";}}
var offsetParent=dragObject.offsetParent;if(offsetParent){if(eXo.core.Browser.findPosY(dragObject)<0)dragObject.style.top=(0-offsetParent.offsetTop)+"px";}else{dragObject.style.top="0px";}}
var clickBlock=this;var dragBlock=eXo.core.DOMUtil.findAncestorByClass(this,"UIDragObject");DragDrop.init(null,clickBlock,dragBlock,evt);};eXo.webui.UIPopupWindow=new UIPopupWindow();function UIHorizontalTabs(){this.backupNavigationTabStyle;this.backupItemStyle;};UIHorizontalTabs.prototype.init=function(){};UIHorizontalTabs.prototype.changeTabNavigationStyle=function(clickedEle,over){if(clickedEle==null)return;if(!eXo.core.DOMUtil.hasClass(clickedEle,"UITab"))clickedEle=eXo.core.DOMUtil.findAncestorByClass(clickedEle,"UITab");if(over){this.backupNavigationTabStyle=clickedEle.className;clickedEle.className="UITab HighlightNavigationTab";}else if(this.backupNavigationTabStyle){clickedEle.className=this.backupNavigationTabStyle;}}
UIHorizontalTabs.prototype.itemOver=function(selectedElement,over){if(over){this.backupItemStyle=selectedElement.className;if(selectedElement.className=="MenuItem"){selectedElement.className="MenuItemSelected";}else{selectedElement.className="MenuItemSelected MenuItemExpand";}}else{selectedElement.className=this.backupItemStyle;}};UIHorizontalTabs.prototype.displayTabContent=function(clickedEle){this.changeTabForUITabPane(clickedEle,null,null);};UIHorizontalTabs.prototype.changeTabForUITabPane=function(clickedEle,tabId,url){var DOMUtil=eXo.core.DOMUtil;var uiSelectTab=DOMUtil.findAncestorByClass(clickedEle,"UITab");var uiHorizontalTabs=DOMUtil.findAncestorByClass(clickedEle,"UIHorizontalTabs");var uiTabs=eXo.core.DOMUtil.findDescendantsByClass(uiHorizontalTabs,"div","UITab");var parentdHorizontalTab=uiHorizontalTabs.parentNode;var contentTabContainer=DOMUtil.findFirstDescendantByClass(parentdHorizontalTab,"div","UITabContentContainer");var uiTabContents=DOMUtil.findChildrenByClass(contentTabContainer,"div","UITabContent");var form=DOMUtil.getChildrenByTagName(contentTabContainer,"form");if(form.length>0){var tmp=DOMUtil.findChildrenByClass(form[0],"div","UITabContent");for(var i=0;i<tmp.length;i++){uiTabContents.push(tmp[i]);}}
var index=0;for(var i=0;i<uiTabs.length;i++){var styleTabDiv=DOMUtil.getChildrenByTagName(uiTabs[i],"div")[0];if(styleTabDiv.className=="DisabledTab")continue;if(uiSelectTab==uiTabs[i]){styleTabDiv.className="SelectedTab";index=i;continue;}
styleTabDiv.className="NormalTab";uiTabContents[i].style.display="none";}
uiTabContents[index].style.display="block";if(eXo.ecm.UIJCRExplorer){try{eXo.ecm.UIJCRExplorer.initViewNodeScroll();}catch(e){void(0);}}};UIHorizontalTabs.prototype.checkContentAvailable=function(id){var tabContent=document.getElementById(id).parentNode;if(!tabContent.isLoaded){tabContent.isLoaded=true;return false;}
tabContent.style.display='block';return true;};UIHorizontalTabs.prototype.changeTabForUIFormTabpane=function(clickedElemt,formId,hiddenValue){this.displayTabContent(clickedElemt,formId,hiddenValue);eXo.webui.UIForm.setHiddenValue(formId,'currentSelectedTab',hiddenValue);};eXo.webui.UIHorizontalTabs=new UIHorizontalTabs();function UIPopupMenu(){this.elementsToHide=new Array();this.currentVisibleContainers=new Array();this.currentElement=null;};UIPopupMenu.prototype.init=function(popupMenu,container,x,y){this.superClass=eXo.webui.UIPopup;this.superClass.init(popupMenu,container.id);};UIPopupMenu.prototype.setPosition=function(popupMenu,x,y,isRTL){this.superClass.setPosition(popupMenu,x,y,isRTL);};UIPopupMenu.prototype.setSize=function(popup,w,h){this.superClass.setSize(popupMenu,w,h);};UIPopupMenu.prototype.pushVisibleContainer=function(containerId){eXo.webui.UIPopupMenu.currentVisibleContainers.push(containerId);};UIPopupMenu.prototype.popVisibleContainer=function(){eXo.webui.UIPopupMenu.currentVisibleContainers.pop();};UIPopupMenu.prototype.pushHiddenContainer=function(containerId){eXo.webui.UIPopupMenu.elementsToHide.push(containerId);};UIPopupMenu.prototype.setCloseTimeout=function(time){if(!time)time=100;setTimeout("eXo.webui.UIPopupMenu.doOnMenuItemOut()",time);};UIPopupMenu.prototype.createLink=function(menuItem,link){if(link&&link.href){menuItem.onclick=function(e){if(link.href.substr(0,7)=="http://")window.location.href=link.href;else eval(link.href);if(!e)e=window.event;if(e.stopPropagation)e.stopPropagation();e.cancelBubble=true;return false;}}};UIPopupMenu.prototype.doOnMenuItemOut=function(){while(eXo.webui.UIPopupMenu.elementsToHide.length>0){var container=document.getElementById(eXo.webui.UIPopupMenu.elementsToHide.shift());if(container){if(!eXo.webui.UIPopupMenu.currentVisibleContainers.contains(container.id)){eXo.webui.UIPopupMenu.hide(container);}}}};UIPopupMenu.prototype.showMenuItemContainer=function(menuItemContainer,x,y){this.superClass.setPosition(menuItemContainer,x,y);};UIPopupMenu.prototype.hide=function(object){if(typeof(object)=="string")object=document.getElementById(object);object.style.display="none";object.style.visibility="hidden";};UIPopupMenu.prototype.show=function(object){if(typeof(object)=="string")object=document.getElementById(object);object.style.display="block";object.style.visibility="";};eXo.webui.UIPopupMenu=new UIPopupMenu();function UIDropDownControl(){};UIDropDownControl.prototype.init=function(id){};UIDropDownControl.prototype.selectItem=function(method,id,selectedIndex){if(method)method(id,selectedIndex);};UIDropDownControl.prototype.show=function(obj,evt){if(!evt)evt=window.event;evt.cancelBubble=true;var DOMUtil=eXo.core.DOMUtil;var Browser=eXo.core.Browser;var dropDownAnchor=DOMUtil.findNextElementByTagName(obj,'div');if(dropDownAnchor){if(dropDownAnchor.style.display=="none"){dropDownAnchor.style.display="block";dropDownAnchor.style.visibility="visible";var middleCont=DOMUtil.findFirstDescendantByClass(dropDownAnchor,"div","MiddleItemContainer");var topCont=DOMUtil.findPreviousElementByTagName(middleCont,"div");var bottomCont=DOMUtil.findNextElementByTagName(middleCont,"div");topCont.style.display="block";bottomCont.style.display="block";var visibleHeight=Browser.getBrowserHeight()-Browser.findPosY(middleCont)-40;var scrollHeight=middleCont.scrollHeight;if(scrollHeight>visibleHeight){topCont.style.display="block";bottomCont.style.display="block";middleCont.style.height=visibleHeight-topCont.offsetHeight-bottomCont.offsetHeight+"px";topCont.onclick=function(event){event=event||window.event;event.cancelBubble=true;};bottomCont.onclick=function(event){event=event||window.event;event.cancelBubble=true;}}else{topCont.style.display="none";bottomCont.style.display="none";middleCont.scrollTop=0;middleCont.style.height="auto";}
DOMUtil.listHideElements(dropDownAnchor);}
else{dropDownAnchor.style.display="none";dropDownAnchor.style.visibility="hidden";}}};UIDropDownControl.prototype.hide=function(obj){if(typeof(obj)=="string")obj=document.getElementById(obj);obj.style.display="none";};UIDropDownControl.prototype.onclickEvt=function(obj,evt){var DOMUtil=eXo.core.DOMUtil;var uiDropDownAnchor=DOMUtil.findAncestorByClass(obj,'UIDropDownAnchor');var uiDropDownTitle=DOMUtil.findPreviousElementByTagName(uiDropDownAnchor,'div');var uiDropDownMiddleTitle=DOMUtil.findFirstDescendantByClass(uiDropDownTitle,'div','DropDownSelectLabel');uiDropDownMiddleTitle.innerHTML=obj.innerHTML;uiDropDownAnchor.style.display='none';};eXo.webui.UIDropDownControl=new UIDropDownControl();function UIRightClickPopupMenu(){};UIRightClickPopupMenu.prototype.init=function(contextMenuId){var contextMenu=document.getElementById(contextMenuId);if(!contextMenu)return;contextMenu.onmousedown=function(e){if(!e)e=window.event;e.cancelBubble=true;}
var parentNode=contextMenu.parentNode;this.disableContextMenu(parentNode);}
UIRightClickPopupMenu.prototype.hideContextMenu=function(contextId){if(document.getElementById(contextId)){document.getElementById(contextId).style.display='none';eXo.core.MouseEventManager.onMouseDownHandlers=null;}}
UIRightClickPopupMenu.prototype.disableContextMenu=function(comp){if(typeof(comp)=="string")comp=document.getElementById(comp);comp.onmouseover=function(){document.oncontextmenu=function(){return false};}
comp.onmouseout=function(){document.oncontextmenu=function(){return true};}};UIRightClickPopupMenu.prototype.prepareObjectId=function(evt,elemt){eXo.core.MouseEventManager.docMouseDownEvt(evt);var contextMenu=eXo.core.DOMUtil.findAncestorByClass(elemt,"UIRightClickPopupMenu");contextMenu.style.display="none";var href=elemt.getAttribute('href');if(!href){return;}
if(href.indexOf("ajaxGet")!=-1){href=href.replace("ajaxGet","ajaxPost");elemt.setAttribute('href',href);}
if(href.indexOf("objectId")!=-1||!contextMenu.objId){return;}
var objId=encodeURIComponent(contextMenu.objId.replace(/'/g,"\\'"));if(href.indexOf("javascript")==-1){elemt.setAttribute('href',href+"&objectId="+objId);return;}else if(href.indexOf("window.location")!=-1){href=href.substr(0,href.length-1)+"&objectId="+objId+"'";}else if(href.indexOf("ajaxPost")!=-1){href=href.substr(0,href.length-2)+"', 'objectId="+objId+"')";}else{href=href.substr(0,href.length-2)+"&objectId="+objId+"')";}
eval(href);if(evt&&evt.preventDefault)
evt.preventDefault();else
window.event.returnValue=false;return false;};UIRightClickPopupMenu.prototype.clickRightMouse=function(event,elemt,menuId,objId,params,opt){if(!event)event=window.event;eXo.core.MouseEventManager.docMouseDownEvt(event);var contextMenu=document.getElementById(menuId);contextMenu.objId=objId;if(!(((event.which)&&(event.which==2||event.which==3))||((event.button)&&(event.button==2)))){contextMenu.style.display='none';return;}
eXo.core.MouseEventManager.addMouseDownHandler("eXo.webui.UIRightClickPopupMenu.hideContextMenu('"+menuId+"');")
if(params){params=","+params+",";var items=contextMenu.getElementsByTagName("a");for(var i=0;i<items.length;i++){if(params.indexOf(items[i].getAttribute("exo:attr"))>-1){items[i].style.display='block';}else{items[i].style.display='none';}}}
var customItem=eXo.core.DOMUtil.findFirstDescendantByClass(elemt,"div","RightClickCustomItem");var tmpCustomItem=eXo.core.DOMUtil.findFirstDescendantByClass(contextMenu,"div","RightClickCustomItem");if(tmpCustomItem){if(customItem){tmpCustomItem.innerHTML=customItem.innerHTML;tmpCustomItem.style.display="inline";}else{tmpCustomItem.style.display="none";}}
var fixWidthForIE7=0;var UIWorkingWorkspace=document.getElementById("UIWorkingWorkspace");if(eXo.core.Browser.isIE7()&&document.getElementById("UIDockBar")){if(event.clientX>UIWorkingWorkspace.offsetLeft)fixWidthForIE7=UIWorkingWorkspace.offsetLeft;}
eXo.core.Mouse.update(event);eXo.webui.UIPopup.show(contextMenu);var ctxMenuContainer=eXo.core.DOMUtil.findFirstChildByClass(contextMenu,"div","UIContextMenuContainer");var intTop=eXo.core.Mouse.mouseyInPage-(eXo.core.Browser.findPosY(contextMenu)-contextMenu.offsetTop);var intLeft=eXo.core.Mouse.mousexInPage-(eXo.core.Browser.findPosX(contextMenu)-contextMenu.offsetLeft)+fixWidthForIE7;if(eXo.core.I18n.isRT()){var scrollWidth=16;if(eXo.core.Browser.getBrowserType()=="mozilla")scrollWidth=0;intLeft=contextMenu.offsetParent.offsetWidth-intLeft+fixWidthForIE7+scrollWidth;var clickCenter=eXo.core.DOMUtil.findFirstDescendantByClass(contextMenu,"div","ClickCenterBottom");if(clickCenter){var clickCenterWidth=clickCenter?parseInt(eXo.core.DOMUtil.getStyle(clickCenter,"marginRight")):0;intLeft+=(ctxMenuContainer.offsetWidth-2*clickCenterWidth);}}
switch(opt){case 1:intTop-=ctxMenuContainer.offsetHeight;break;case 2:break;case 3:break;case 4:break;default:if((eXo.core.Mouse.mouseyInClient+ctxMenuContainer.offsetHeight)>eXo.core.Browser.getBrowserHeight()&&(intTop>ctxMenuContainer.offsetHeight))
{intTop-=ctxMenuContainer.offsetHeight;}
break;}
if(eXo.core.I18n.isLT()){contextMenu.style.left=eXo.core.Browser.getBrowserWidth()*0.5+"px";ctxMenuContainer.style.width="auto";ctxMenuContainer.style.width=ctxMenuContainer.offsetWidth+2+"px";contextMenu.style.left=(intLeft+1)+"px";}else{contextMenu.style.right=eXo.core.Browser.getBrowserWidth()*0.5+"px";ctxMenuContainer.style.width="auto";ctxMenuContainer.style.width=ctxMenuContainer.offsetWidth+2+"px";contextMenu.style.right=intLeft+"px";}
ctxMenuContainer.style.width=ctxMenuContainer.offsetWidth+"px";if((eXo.core.Mouse.mouseyInClient+ctxMenuContainer.offsetHeight)<=eXo.core.Browser.getBrowserHeight()){intTop+=1}
contextMenu.style.top=intTop+"px";};eXo.webui.UIRightClickPopupMenu=new UIRightClickPopupMenu();function UIVerticalSlideTabs(){};UIVerticalSlideTabs.prototype.slideInEffect=function(){if((parseInt(this.selectedTab.style.height)-30)>0){this.selectedTab.style.height=(parseInt(this.selectedTab.style.height)-30)+"px";setTimeout("eXo.webui.UIVerticalSlideTabs.slideInEffect()",3);}else{this.selectedTab.style.height="0px";this.selectedTab.style.display="none";delete this.selectedTab;this.clickedTab.style.display="block";setTimeout("eXo.webui.UIVerticalSlideTabs.slideOutEffect()",3);}}
UIVerticalSlideTabs.prototype.slideOutEffect=function(){if((parseInt(this.clickedTab.style.height)+30)<this.clickedTab.scrollHeight){this.clickedTab.style.height=(parseInt(this.clickedTab.style.height)+30)+"px";setTimeout("eXo.webui.UIVerticalSlideTabs.slideOutEffect()",3);}else{this.clickedTab.style.height=this.clickedTab.scrollHeight+"px";delete this.clickedTab;}}
UIVerticalSlideTabs.prototype.switchVTab=function(clickedElement){var uiClickedVTab=eXo.core.DOMUtil.findAncestorByClass(clickedElement,"UIVTab");var uiClickedVTabContent=eXo.core.DOMUtil.findFirstChildByClass(uiClickedVTab,"div","UIVTabContent");var uiVerticalSlideTabs=eXo.core.DOMUtil.findAncestorByClass(clickedElement,"UIVerticalSlideTabs");var uiVTabs=eXo.core.DOMUtil.findChildrenByClass(uiVerticalSlideTabs,"div","UIVTab");for(var i=0;i<uiVTabs.length;i++){if(eXo.core.DOMUtil.getChildrenByTagName(uiVTabs[i],"div")[0].className=="SelectedTab"){this.selectedTab=eXo.core.DOMUtil.findFirstChildByClass(uiVTabs[i],"div","UIVTabContent");eXo.core.DOMUtil.getChildrenByTagName(uiVTabs[i],"div")[0].className="NormalTab";break;}}
eXo.core.DOMUtil.getChildrenByTagName(uiClickedVTab,"div")[0].className="SelectedTab";this.clickedTab=uiClickedVTabContent;if(this.clickedTab!=this.selectedTab){if(this.selectedTab)this.slideInEffect();else{this.clickedTab.style.display="block";this.slideOutEffect();}}};UIVerticalSlideTabs.prototype.onTabClick=function(clickedElement,normalStyle,selectedStyle){var uiClickedVTab=eXo.core.DOMUtil.findAncestorByClass(clickedElement,"UIVTab");var uiClickedVTabContent=eXo.core.DOMUtil.findFirstChildByClass(uiClickedVTab,"div","UIVTabContent");var uiVerticalSlideTabs=eXo.core.DOMUtil.findAncestorByClass(clickedElement,"UIVerticalSlideTabs");var uiVTab=eXo.core.DOMUtil.findChildrenByClass(uiVerticalSlideTabs,"div","UIVTab");if(eXo.core.DOMUtil.getChildrenByTagName(uiClickedVTab,"div")[0].className==normalStyle){for(var i=0;i<uiVTab.length;i++){eXo.core.DOMUtil.getChildrenByTagName(uiVTab[i],"div")[0].className=normalStyle;eXo.core.DOMUtil.findFirstChildByClass(uiVTab[i],"div","UIVTabContent").style.display="none";}
eXo.core.DOMUtil.getChildrenByTagName(uiClickedVTab,"div")[0].className=selectedStyle;uiClickedVTabContent.style.display="block";}else{eXo.core.DOMUtil.getChildrenByTagName(uiClickedVTab,"div")[0].className=normalStyle;uiClickedVTabContent.style.display="none";}};UIVerticalSlideTabs.prototype.onResize=function(uiVerticalSlideTabs,width,height){var vTabHeight=35;var uiVTabs=eXo.core.DOMUtil.findChildrenByClass(uiVerticalSlideTabs,"div","UIVTab");var uiVTab=this.getSelectedUIVTab(uiVerticalSlideTabs,"div","UIVTab");if(uiVTab==null)return;if(height!=null){var totalTabHeight=(vTabHeight*uiVTabs.length);var controlArea=eXo.core.DOMUtil.findFirstDescendantByClass(uiVTab,"div","ControlArea");var controlAreaHeight=0;if(controlArea!=null)controlAreaHeight=controlArea.offsetHeight;scrollArea=eXo.core.DOMUtil.findFirstDescendantByClass(uiVTab,"div","ScrollArea");if(scrollArea!=null){scrollArea.style.height=(height-controlAreaHeight-totalTabHeight-35)+"px";}}
if(width!=null){scrollArea.style.width=width+"px";}};UIVerticalSlideTabs.prototype.isSelectedUIVTab=function(uiVtab){var tabRight=eXo.core.DOMUtil.findFirstDescendantByClass(uiVtab,"div","TabRight");var changeIcon=eXo.core.DOMUtil.getChildrenByTagName(tabRight,"div")[0];if(changeIcon.className=="ExpandButton")return true;return false;};UIVerticalSlideTabs.prototype.getSelectedUIVTab=function(uiVerticalSlideTabs){var uiVTab=eXo.core.DOMUtil.findChildrenByClass(uiVerticalSlideTabs,"div","UIVTab");for(var i=0;i<uiVTab.length;i++){if(this.isSelectedUIVTab(uiVTab[i]))return uiVTab[i];}
return null;};UIVerticalSlideTabs.prototype.fitParentHeight=function(obj){this.onResize(obj,null,obj.parentNode.offsetHeight);}
eXo.webui.UIVerticalSlideTabs=new UIVerticalSlideTabs();function UIPermissionSelectorTab(){};UIPermissionSelectorTab.prototype.init=function(){};UIPermissionSelectorTab.prototype.displayBlockContent=function(clickedEle){var permissionTypeBar=eXo.core.DOMUtil.findAncestorByClass(clickedEle,"PermissionTypeBar");var permissionButton=eXo.core.DOMUtil.findChildrenByClass(permissionTypeBar,"div","PermissionButton");var selectedPermissionInfo=eXo.core.DOMUtil.findChildrenByClass(permissionTypeBar.parentNode,"div","SelectedPermissionInfo");for(var i=0;i<permissionButton.length;i++){if(permissionButton[i]==clickedEle){permissionButton[i].style.fontWeight="bold";selectedPermissionInfo[i].style.display="block";}else{permissionButton[i].style.fontWeight="100";selectedPermissionInfo[i].style.display="none";}}};eXo.webui.UIPermissionSelectorTab=new UIPermissionSelectorTab();function UIDashboard(){var currCol=null;var targetObj=null;UIDashboard.prototype.init=function(dragItem,dragObj){var DOMUtil=eXo.core.DOMUtil;eXo.core.DragDrop2.init(dragItem,dragObj);dragObj.onDragStart=function(x,y,lastMouseX,lastMouseY,e){var uiDashboard=eXo.webui.UIDashboard;var portletFragment=DOMUtil.findAncestorByClass(dragObj,"PORTLET-FRAGMENT");if(!portletFragment)return;var uiWorkingWS=document.getElementById("UIWorkingWorkspace");var gadgetContainer=DOMUtil.findFirstDescendantByClass(portletFragment,"div","GadgetContainer");var ggwidth=dragObj.offsetWidth;var ggheight=dragObj.offsetHeight;var mx=eXo.webui.UIDashboardUtil.findMouseRelativeX(uiWorkingWS,e);var ox=eXo.webui.UIDashboardUtil.findMouseRelativeX(dragObj,e);var x=mx-ox;var my=eXo.webui.UIDashboardUtil.findMouseRelativeY(uiWorkingWS,e);var oy=eXo.webui.UIDashboardUtil.findMouseRelativeY(dragObj,e);var y=my-oy;var temp=dragObj;while(temp.parentNode&&DOMUtil.hasDescendant(portletFragment,temp)){if(temp.scrollLeft>0)
x-=temp.scrollLeft;if(temp.scrollTop>0)
y-=temp.scrollTop;temp=temp.parentNode;}
var uiTarget=null;if(!DOMUtil.hasClass(dragObj,"SelectItem")){uiTarget=uiDashboard.createTarget(ggwidth,0);dragObj.parentNode.insertBefore(uiTarget,dragObj.nextSibling);currCol=eXo.webui.UIDashboardUtil.findColIndexInDashboard(dragObj);}else{var dragCopyObj=dragObj.cloneNode(true);DOMUtil.addClass(dragCopyObj,"CopyObj");dragObj.parentNode.insertBefore(dragCopyObj,dragObj);targetObj=null;}
dragObj.style.width=ggwidth+"px";var uiGadgets=DOMUtil.findDescendantsByClass(gadgetContainer,"div","UIGadget");for(var i=0;i<uiGadgets.length;i++){var uiMask=DOMUtil.findFirstDescendantByClass(uiGadgets[i],"div","UIMask");if(uiMask!=null){var gadgetApp=DOMUtil.findFirstDescendantByClass(uiGadgets[i],"div","GadgetApplication");uiMask.style.marginTop=-gadgetApp.offsetHeight+"px";uiMask.style.height=gadgetApp.offsetHeight+"px";uiMask.style.width=gadgetApp.offsetWidth+"px";uiMask.style.display="block";uiMask.style.backgroundColor="white";eXo.core.Browser.setOpacity(uiMask,3);}}
if(!DOMUtil.hasClass(dragObj,"Dragging"))
DOMUtil.addClass(dragObj,"Dragging");dragObj.style.position="absolute";eXo.webui.UIDashboardUtil.setPositionInContainer(uiWorkingWS,dragObj,x,y);if(uiTarget!=null){uiTarget.style.height=ggheight+"px";targetObj=uiTarget;}}
dragObj.onDrag=function(nx,ny,ex,ey,e){var uiTarget=targetObj;var portletFragment=DOMUtil.findAncestorByClass(dragObj,"PORTLET-FRAGMENT");if(!portletFragment)return;var dashboardCont=DOMUtil.findFirstDescendantByClass(portletFragment,"div","GadgetContainer");var cols=null;eXo.webui.UIDashboard.scrollOnDrag(dragObj);if(eXo.webui.UIDashboardUtil.isIn(ex,ey,dashboardCont)){if(!uiTarget){uiTarget=eXo.webui.UIDashboard.createTargetOfAnObject(dragObj);targetObj=uiTarget;}
var uiCol=currCol;if(!uiCol){if(!cols)cols=DOMUtil.findDescendantsByClass(dashboardCont,"div","UIColumn");for(var i=0;i<cols.length;i++){var uiColLeft=eXo.webui.UIDashboardUtil.findPosX(cols[i])-dashboardCont.scrollLeft;if(uiColLeft<ex&&ex<uiColLeft+cols[i].offsetWidth){currCol=uiCol=cols[i];break;}}}
if(!uiCol)return;var uiColLeft=eXo.webui.UIDashboardUtil.findPosX(uiCol)-dashboardCont.scrollLeft;if(uiColLeft<ex&&ex<uiColLeft+uiCol.offsetWidth){var gadgets=DOMUtil.findDescendantsByClass(uiCol,"div","UIGadget");for(var i=0;i<gadgets.length;i++){if(dragObj.id==gadgets[i].id){gadgets.splice(i,1);break;}}
if(gadgets.length==0){uiCol.appendChild(uiTarget);return;}
for(var i=0;i<gadgets.length;i++){var oy=eXo.webui.UIDashboardUtil.findPosY(gadgets[i])+(gadgets[i].offsetHeight/3)-dashboardCont.scrollTop;if(ey<=oy){uiCol.insertBefore(uiTarget,gadgets[i]);break;}
if(i==gadgets.length-1&&ey>oy)uiCol.appendChild(uiTarget);}}else{if(cols==null)cols=DOMUtil.findDescendantsByClass(dashboardCont,"div","UIColumn");for(var i=0;i<cols.length;i++){var uiColLeft=eXo.webui.UIDashboardUtil.findPosX(cols[i])-dashboardCont.scrollLeft;if(uiColLeft<ex&&ex<uiColLeft+cols[i].offsetWidth){currCol=cols[i];break;}}}}else{if(uiTarget!=null&&DOMUtil.hasClass(dragObj,"SelectItem")){uiTarget.parentNode.removeChild(uiTarget);targetObj=uiTarget=null;}}}
dragObj.onDragEnd=function(x,y,clientX,clientY){var uiDashboardUtil=eXo.webui.UIDashboardUtil;var portletFragment=DOMUtil.findAncestorByClass(dragObj,"PORTLET-FRAGMENT");if(!portletFragment)return;var masks=DOMUtil.findDescendantsByClass(portletFragment,"div","UIMask");for(var i=0;i<masks.length;i++){eXo.core.Browser.setOpacity(masks[i],100);masks[i].style.display="none";}
var uiTarget=targetObj;if(uiTarget&&!uiTarget.parentNode){uiTarget=null;}
dragObj.style.position="static";DOMUtil.removeClass(dragObj,"Dragging");var dragCopyObj=DOMUtil.findFirstDescendantByClass(portletFragment,"div","CopyObj");if(dragCopyObj){dragCopyObj.parentNode.replaceChild(dragObj,dragCopyObj);dragObj.style.width="auto";}
if(uiTarget){var col=uiDashboardUtil.findColIndexInDashboard(uiTarget);var row=uiDashboardUtil.findRowIndexInDashboard(uiTarget);var compId=portletFragment.parentNode.id;if(DOMUtil.hasClass(dragObj,"SelectItem")){var params=[{name:"colIndex",value:col},{name:"rowIndex",value:row},{name:"objectId",value:dragObj.id}];var url=uiDashboardUtil.createRequest(compId,'AddNewGadget',params);ajaxGet(url);}else{if(uiDashboardUtil.findColIndexInDashboard(dragObj)==col&&uiDashboardUtil.findRowIndexInDashboard(dragObj)==(row-1)){uiTarget.parentNode.removeChild(uiTarget);}else{uiTarget.parentNode.replaceChild(dragObj,uiTarget);row=uiDashboardUtil.findRowIndexInDashboard(dragObj);var params=[{name:"colIndex",value:col},{name:"rowIndex",value:row},{name:"objectId",value:dragObj.id}];var url=uiDashboardUtil.createRequest(compId,'MoveGadget',params);ajaxGet(url);}}}
uiTarget=DOMUtil.findFirstDescendantByClass(portletFragment,"div","UITarget");while(uiTarget){DOMUtil.removeElement(uiTarget);uiTarget=eXo.core.DOMUtil.findFirstDescendantByClass(portletFragment,"div","UITarget");}
targetObj=currCol=null;}
dragObj.onCancel=function(e){if(eXo.core.Browser.browserType=="ie"&&eXo.core.Browser.findMouseYInClient()<0){eXo.core.DragDrop2.end(e);}}};UIDashboard.prototype.onLoad=function(windowId,canEdit){var portletWindow=document.getElementById(windowId);if(!portletWindow)return;var DOMUtil=eXo.core.DOMUtil;var uiDashboard=DOMUtil.findFirstDescendantByClass(portletWindow,"div","UIDashboard");var portletFragment=DOMUtil.findAncestorByClass(uiDashboard,"PORTLET-FRAGMENT");var uiContainer=DOMUtil.findFirstDescendantByClass(uiDashboard,"div","UIDashboardContainer");if(!uiContainer)return;var gadgetContainer=DOMUtil.findFirstChildByClass(uiContainer,"div","GadgetContainer");uiDashboard.style.overflow="hidden";portletFragment.style.overflow="hidden";if(eXo.core.Browser.isIE6())gadgetContainer.style.width="99.5%";var selectPopup=DOMUtil.findPreviousElementByTagName(uiContainer,"div");var closeButton=DOMUtil.findFirstDescendantByClass(selectPopup,"a","CloseButton");closeButton.onclick=eXo.webui.UIDashboard.showHideSelectContainer;var colsContainer=DOMUtil.findFirstChildByClass(gadgetContainer,"div","UIColumns");var columns=DOMUtil.findChildrenByClass(colsContainer,"div","UIColumn");var colsSize=0;for(var i=0;i<columns.length;i++){if(columns[i].style.display!="none")colsSize++;}
colsContainer.style.width="100%";setTimeout("eXo.webui.UIDashboard.initDragDrop('"+windowId+"',"+canEdit+");",400);};UIDashboard.prototype.initDragDrop=function(windowId,canEdit){var DOMUtil=eXo.core.DOMUtil;var portletWindow=document.getElementById(windowId);var gadgetControls=DOMUtil.findDescendantsByClass(portletWindow,"div","GadgetControl");for(var j=0;j<gadgetControls.length;j++){var uiGadget=DOMUtil.findAncestorByClass(gadgetControls[j],"UIGadget");var minimizeButton=DOMUtil.findFirstDescendantByClass(gadgetControls[j],"span","MinimizeAction");if(canEdit){eXo.webui.UIDashboard.init(gadgetControls[j],uiGadget);if(minimizeButton)minimizeButton.style.display="block";}else{if(minimizeButton){minimizeButton.style.display="none";var controlBar=minimizeButton.parentNode;var closeButton=DOMUtil.findFirstChildByClass(controlBar,"div","CloseGadget");var editButton=DOMUtil.findFirstChildByClass(controlBar,"div","EditGadget");closeButton.style.display="none";editButton.style.display="none";}}}};UIDashboard.prototype.initPopup=function(popup){if(typeof(popup)=="string")popup=document.getElementById(popup);if(!popup||popup.style.display=="none")return;var uiDashboard=eXo.core.DOMUtil.findAncestorByClass(popup,"UIDashboard");var deltaY=Math.ceil((uiDashboard.offsetHeight-popup.offsetHeight)/2);if(deltaY<0){deltaY=0;}
popup.style.top=eXo.core.Browser.findPosY(uiDashboard)+deltaY+"px";};UIDashboard.prototype.createTarget=function(width,height){var uiTarget=document.createElement("div");uiTarget.id="UITarget";uiTarget.className="UITarget";uiTarget.style.width=width+"px";uiTarget.style.height=height+"px";return uiTarget;};UIDashboard.prototype.createTargetOfAnObject=function(obj){var uiTarget=document.createElement("div");uiTarget.id="UITarget";uiTarget.className="UITarget";uiTarget.style.height=obj.offsetHeight+"px";return uiTarget;};UIDashboard.prototype.showHideSelectContainer=function(event){if(!event)event=window.event;var DOMUtil=eXo.core.DOMUtil;var comp=eXo.core.Browser.getEventSource(event);var uiDashboardPortlet=DOMUtil.findAncestorByClass(comp,"UIDashboard");var portletFragment=DOMUtil.findAncestorByClass(uiDashboardPortlet,"PORTLET-FRAGMENT");var uiContainer=DOMUtil.findFirstDescendantByClass(uiDashboardPortlet,"div","UIDashboardContainer");var uiSelectPopup=DOMUtil.findPreviousElementByTagName(uiContainer,"div");var addButton=DOMUtil.findFirstDescendantByClass(uiContainer,"a","AddIcon");var params;if(uiSelectPopup.style.display!="none"){uiSelectPopup.style.visibility="hidden";uiSelectPopup.style.display="none";addButton.style.visibility="visible";params=[{name:"isShow",value:false}];var url=eXo.webui.UIDashboardUtil.createRequest(portletFragment.parentNode.id,"SetShowSelectContainer",params);ajaxAsyncGetRequest(url,false);}else{addButton.style.visibility="hidden";params=[{name:"isShow",value:true}];var url=eXo.webui.UIDashboardUtil.createRequest(portletFragment.parentNode.id,"SetShowSelectContainer",params);ajaxGet(url);}};UIDashboard.prototype.onTabClick=function(clickElement,normalStyle,selectedType){var DOMUtil=eXo.core.DOMUtil;var category=DOMUtil.findAncestorByClass(clickElement,"GadgetCategory");var categoryContent=DOMUtil.findFirstChildByClass(category,"div","ItemsContainer");var categoriesContainer=DOMUtil.findAncestorByClass(category,"GadgetItemsContainer");var categories=DOMUtil.findChildrenByClass(categoriesContainer,"div","GadgetCategory");var gadgetTab=DOMUtil.findFirstChildByClass(category,"div","GadgetTab");if(DOMUtil.hasClass(gadgetTab,normalStyle)){for(var i=0;i<categories.length;i++){DOMUtil.findFirstChildByClass(categories[i],"div","GadgetTab").className="GadgetTab "+normalStyle;DOMUtil.findFirstChildByClass(categories[i],"div","ItemsContainer").style.display="none";}
DOMUtil.findFirstChildByClass(category,"div","GadgetTab").className="GadgetTab "+selectedType;categoryContent.style.display="block";}else{DOMUtil.findFirstChildByClass(category,"div","GadgetTab").className="GadgetTab "+normalStyle;categoryContent.style.display="none";}
var popupContent=DOMUtil.findAncestorByClass(clickElement,"PopupContent");if(eXo.core.Browser.getBrowserHeight()-100<categoriesContainer.offsetHeight){popupContent.style.height=(eXo.core.Browser.getBrowserHeight()-100)+"px";}else{popupContent.style.height="auto";}};UIDashboard.prototype.enableContainer=function(elemt){var DOMUtil=eXo.core.DOMUtil;if(DOMUtil.hasClass(elemt,"DisableContainer")){DOMUtil.replaceClass(elemt," DisableContainer","");}
var arrow=DOMUtil.findFirstChildByClass(elemt,"div","Arrow");if(DOMUtil.hasClass(arrow,"DisableArrowIcon"))DOMUtil.replaceClass(arrow," DisableArrowIcon","");};UIDashboard.prototype.disableContainer=function(elemt){var DOMUtil=eXo.core.DOMUtil;if(!DOMUtil.hasClass(elemt,"DisableContainer")){DOMUtil.addClass(elemt,"DisableContainer");}
var arrow=DOMUtil.findFirstChildByClass(elemt,"div","Arrow");if(!DOMUtil.hasClass(arrow,"DisableArrowIcon"))DOMUtil.addClass(arrow," DisableArrowIcon");};UIDashboard.prototype.scrollOnDrag=function(dragObj){var DOMUtil=eXo.core.DOMUtil;var dashboardUtil=eXo.webui.UIDashboardUtil;var uiDashboard=DOMUtil.findAncestorByClass(dragObj,"UIDashboard");var gadgetContainer=DOMUtil.findFirstDescendantByClass(uiDashboard,"div","GadgetContainer");var colCont=DOMUtil.findFirstChildByClass(gadgetContainer,"div","UIColumns");if(!DOMUtil.findFirstDescendantByClass(colCont,"div","UITarget"))return;var visibleWidth=gadgetContainer.offsetWidth;var visibleHeight=gadgetContainer.offsetHeight;var trueWidth=colCont.offsetWidth;var trueHeight=colCont.offsetHeight;var objLeft=dashboardUtil.findPosXInContainer(dragObj,gadgetContainer);var objRight=objLeft+dragObj.offsetWidth;var objTop=dashboardUtil.findPosYInContainer(dragObj,gadgetContainer);var objBottom=objTop+dragObj.offsetHeight;var deltaX=gadgetContainer.scrollLeft;if((trueWidth-(visibleWidth+deltaX)>0)&&objRight>visibleWidth){gadgetContainer.scrollLeft+=5;}else{if(objLeft<0&&deltaX>0)gadgetContainer.scrollLeft-=5;}
var controlBar=DOMUtil.findFirstChildByClass(gadgetContainer,"div","ContainerControlBarL");var buttonHeight=0;if(controlBar)buttonHeight=controlBar.offsetHeight;var deltaY=gadgetContainer.scrollTop;if((trueHeight-(visibleHeight-10-buttonHeight+deltaY)>0)&&objBottom>visibleHeight){gadgetContainer.scrollTop+=5;}else{if(objTop<0&&deltaY>0)gadgetContainer.scrollTop-=5;}};};eXo.webui.UIDashboard=new UIDashboard();function UIDashboardUtil(){UIDashboardUtil.prototype.findPosX=function(obj){var curleft=0;var uiWorkspaceContainer=document.getElementById("UIWorkspaceContainer");var uiWorkingWorkspace=document.getElementById("UIWorkingWorkspace");while(obj){if(uiWorkspaceContainer!=null&&uiWorkspaceContainer.style.display!="none"&&eXo.core.Browser.getBrowserType()=="ie"){var uiPageDesktop=document.getElementById("UIPageDesktop");if((uiPageDesktop!=null&&eXo.core.DOMUtil.hasClass(obj,"UIPageDesktop")&&eXo.core.Browser.isIE7())||(uiPageDesktop==null&&eXo.core.DOMUtil.hasClass(obj,"PORTLET-FRAGMENT"))){curleft+=(obj.offsetLeft-uiWorkingWorkspace.offsetLeft);obj=obj.offsetParent;continue;}}
curleft+=obj.offsetLeft;obj=obj.offsetParent;}
return curleft;};UIDashboardUtil.prototype.findPosY=function(obj){var curtop=0;while(obj){curtop+=obj.offsetTop;obj=obj.offsetParent;}
return curtop;};UIDashboardUtil.prototype.findMouseRelativeX=function(object,e){var posx=-1;var posXObject=eXo.webui.UIDashboardUtil.findPosX(object);if(!e)e=window.event;if(e.pageX||e.pageY){posx=e.pageX-posXObject;}else if(e.clientX||e.clientY){posx=e.clientX+document.body.scrollLeft-posXObject;}
return posx;};UIDashboardUtil.prototype.findMouseRelativeY=function(object,e){var posy=-1;var posYObject=eXo.webui.UIDashboardUtil.findPosY(object);if(!e)e=window.event;if(e.pageY){posy=e.pageY-posYObject;}else if(e.clientX||e.clientY){if(document.documentElement&&document.documentElement.scrollTop){posy=e.clientY+document.documentElement.scrollTop-posYObject;}else{posy=e.clientY+document.body.scrollTop-posYObject;}}
return posy;};UIDashboardUtil.prototype.findPosXInContainer=function(obj,container){var objX=eXo.webui.UIDashboardUtil.findPosX(obj);var containerX=eXo.webui.UIDashboardUtil.findPosX(container);return(objX-containerX);};UIDashboardUtil.prototype.findPosYInContainer=function(obj,container){var objY=eXo.webui.UIDashboardUtil.findPosY(obj);var containerY=eXo.webui.UIDashboardUtil.findPosY(container);return(objY-containerY);};UIDashboardUtil.prototype.setPositionInContainer=function(container,component,posX,posY){var offsetX=component.offsetLeft;var offsetY=component.offsetTop;var posXInContainer=eXo.webui.UIDashboardUtil.findPosXInContainer(component,container);var posYInContainer=eXo.webui.UIDashboardUtil.findPosYInContainer(component,container);var deltaX=posX-(posXInContainer-offsetX);var deltaY=posY-(posYInContainer-offsetY);component.style.left=deltaX+"px";component.style.top=deltaY+"px";};UIDashboardUtil.prototype.isIn=function(x,y,component){var componentLeft=eXo.webui.UIDashboardUtil.findPosX(component);var componentRight=componentLeft+component.offsetWidth;var componentTop=eXo.webui.UIDashboardUtil.findPosY(component);var componentBottom=componentTop+component.offsetHeight;var isOver=false;if((componentLeft<x)&&(x<componentRight)){if((componentTop<y)&&(y<componentBottom)){isOver=true;}}
return isOver;};UIDashboardUtil.prototype.findColIndexInDashboard=function(dragObj){var col=dragObj.parentNode;if(col==null)return null;var dashboardContainer=eXo.core.DOMUtil.findAncestorByClass(col,"DashboardContainer");var columns=eXo.core.DOMUtil.findDescendantsByClass(dashboardContainer,"div","UIColumn");for(var i=0;i<columns.length;i++){if(col.id==columns[i].id){return i;}}};UIDashboardUtil.prototype.findRowIndexInDashboard=function(dragObj){var modules=eXo.core.DOMUtil.getChildrenByTagName(dragObj.parentNode,"div");for(var i=0;i<modules.length;i++){if(modules[i].id==dragObj.id)return i;}};UIDashboardUtil.prototype.createRequest=function(componentId,action,params){var url=eXo.env.server.portalBaseURL;url+='?portal:componentId='+componentId+'&portal:type=action&uicomponent=UIDashboard&op='+action;url+='&ajaxRequest=true';if(params!=null){var len=params.length;for(var i=0;i<len;i++){url+="&"+params[i].name+"="+params[i].value;}}
return url;};};eXo.webui.UIDashboardUtil=new UIDashboardUtil();function UINotification(){this.timerlen=5;this.slideAniLen=1000;this.timerID=new Array();this.startTime=new Array();this.object=new Array();this.endHeight=new Array();this.moving=new Array();this.endSlideUpCallback=new Array();this.dir=new Array();this.importantNoti=new Array();this.flagNoti=new Array();this.totalCurrentMessage=0;this.numberMessageRecepted=0;this.numImptNoti=0;if(eXo.core.Topic!=null){eXo.core.Topic.subscribe("/eXo/portal/notification",function(event){eXo.webui.UINotification.addMessage(event.message);})}}
UINotification.prototype.slideDown=function(objectName){if(this.moving[objectName])return;if(document.getElementById(objectName).style.display!="none")return;this.moving[objectName]=true;this.dir[objectName]="down";this.startSlide(objectName);}
UINotification.prototype.slideDownUp=function(objectName,endSlideUpCallback){this.slideDown(objectName);this.endSlideUpCallback[objectName]=endSlideUpCallback;if(this.flagNoti[objectName])setTimeout("eXo.webui.UINotification.slideUp('"+objectName+"')",3000);}
UINotification.prototype.closeNotification=function(){for(var i=0;i<this.importantNoti.length;i++){this.flagNoti[this.importantNoti[i]]=true;setTimeout("eXo.webui.UINotification.slideUp('"+this.importantNoti[i]+"')",100);}}
UINotification.prototype.slideUp=function(objectName){if(this.moving[objectName])return;if(document.getElementById(objectName).style.display=="none")return;this.moving[objectName]=true;this.dir[objectName]="up";this.startSlide(objectName);}
UINotification.prototype.startSlide=function(objectName){this.object[objectName]=document.getElementById(objectName);this.endHeight[objectName]=parseInt(this.object[objectName].style.height);this.startTime[objectName]=(new Date()).getTime();if(this.dir[objectName]=="down"){this.object[objectName].style.height="1px";}
this.object[objectName].style.display="block";this.timerID[objectName]=setInterval('eXo.webui.UINotification.slideTick(\''+objectName+'\');',this.timerlen);}
UINotification.prototype.slideTick=function(objectName){var elapsed=(new Date()).getTime()-this.startTime[objectName];if(elapsed>this.slideAniLen)
this.endSlide(objectName);else{var d=Math.round(elapsed/this.slideAniLen*this.endHeight[objectName]);if(this.dir[objectName]=="up")
d=this.endHeight[objectName]-d;this.object[objectName].style.height=d+"px";}
return;}
UINotification.prototype.destroyUINotification=function(){var UINotification=document.getElementById("UINotification");document.getElementsByTagName("body")[0].removeChild(UINotification);}
UINotification.prototype.endSlide=function(objectName){clearInterval(this.timerID[objectName]);if(this.dir[objectName]=="up"){this.object[objectName].style.display="none";if(this.endSlideUpCallback[objectName]){this.endSlideUpCallback[objectName](objectName);this.totalCurrentMessage--;if(this.totalCurrentMessage==0){this.destroyUINotification();return;}}}
this.object[objectName].style.height=this.endHeight[objectName]+"px";delete(this.moving[objectName]);delete(this.timerID[objectName]);delete(this.startTime[objectName]);delete(this.endHeight[objectName]);delete(this.object[objectName]);delete(this.dir[objectName]);delete(this.flagNoti[objectName]);return;}
UINotification.prototype.deleteBox=function(objectName){var el=document.getElementById(objectName);el.parentNode.removeChild(el);}
UINotification.prototype.createFrameForMessages=function(){var htmlString="";htmlString+="<div class=\"UIPopupNotification\">";htmlString+="<div class=\"TLPopupNotification\">";htmlString+="<div class=\"TRPopupNotification\">";htmlString+="<div class=\"TCPopupNotification\" ><span></span></div>";htmlString+="</div>";htmlString+="</div>";htmlString+="<div class=\"MLPopupNotification\">";htmlString+="<div class=\"MRPopupNotification\">";htmlString+="<div class=\"MCPopupNotification\">";htmlString+="<div class=\"TitleNotification\">";htmlString+="<a class=\"ItemTitle\" href=\"#\">Notification</a>";htmlString+="<a class=\"Close\" href=\"#\" onclick=\"eXo.webui.UINotification.closeNotification();\"><span></span></a>";htmlString+="</div>";htmlString+="<div id=\"UINotificationContent\">";htmlString+="</div>";htmlString+="</div>";htmlString+="</div>";htmlString+="</div>";htmlString+="<div class=\"BLPopupNotification\">";htmlString+="<div class=\"BRPopupNotification\">";htmlString+="<div class=\"BCPopupNotification\"><span></span></div>";htmlString+="</div>";htmlString+="</div>";htmlString+="</div>";return htmlString;}
UINotification.prototype.addMessage=function(messageContent,flag){var currMessageBoxId="UIMessageBox_"+this.numberMessageRecepted++;var UIMessageContent=document.createElement('div');this.totalCurrentMessage++;this.flagNoti[currMessageBoxId]=!flag;if(flag){this.importantNoti[this.numImptNoti]=currMessageBoxId;this.numImptNoti++;}
UIMessageContent.id=currMessageBoxId;UIMessageContent.style.height="35px";UIMessageContent.style.display="none";UIMessageContent.className="Item";UIMessageContent.innerHTML="<div>"+messageContent+"</div>";var UINotification=document.getElementById("UINotification");if(UINotification==null){document.body.appendChild(document.createElement('div')).id="UINotification";UINotification=document.getElementById("UINotification");UINotification.className='UINotification';UINotification.innerHTML=this.createFrameForMessages();}
var msPanel=document.getElementById("UINotificationContent");msPanel.appendChild(UIMessageContent);eXo.webui.UINotification.slideDownUp(currMessageBoxId,this.deleteBox);}
eXo.webui.UINotification=new UINotification();function UIUserSelector(){};UIUserSelector.prototype.init=function(cont){if(typeof(cont)=="string")cont=document.getElementById(cont);var checkboxes=eXo.core.DOMUtil.findDescendantsByClass(cont,"input","checkbox");if(checkboxes.length<=0)return;checkboxes[0].onclick=this.checkAll;var len=checkboxes.length;for(var i=1;i<len;i++){checkboxes[i].onclick=this.check;}};UIUserSelector.prototype.checkAll=function(){eXo.webui.UIUserSelector.checkAllItem(this);};UIUserSelector.prototype.getItems=function(obj){var table=eXo.core.DOMUtil.findAncestorByTagName(obj,"table");var checkboxes=eXo.core.DOMUtil.findDescendantsByClass(table,"input","checkbox");return checkboxes;};UIUserSelector.prototype.check=function(){eXo.webui.UIUserSelector.checkItem(this);};UIUserSelector.prototype.checkAllItem=function(obj){var checked=obj.checked;var items=eXo.webui.UIUserSelector.getItems(obj);var len=items.length;for(var i=1;i<len;i++){items[i].checked=checked;}};UIUserSelector.prototype.checkItem=function(obj){var checkboxes=eXo.webui.UIUserSelector.getItems(obj);var len=checkboxes.length;var state=true;if(!obj.checked){checkboxes[0].checked=false;}
else{for(var i=1;i<len;i++){state=state&&checkboxes[i].checked;}
checkboxes[0].checked=state;}};UIUserSelector.prototype.getKeynum=function(event){var keynum=false;if(window.event){keynum=window.event.keyCode;event=window.event;}else if(event.which){keynum=event.which;}
if(keynum==0){keynum=event.keyCode;}
return keynum;};UIUserSelector.prototype.isEnterPress=function(evt){var _e=evt||window.event;var keynum=eXo.webui.UIUserSelector.getKeynum(_e);if(keynum==13)
{return true;}
return false;};UIUserSelector.prototype.cancelSubmit=function(){return false;};eXo.webui.UIUserSelector=new UIUserSelector();function UICombobox(){}
UICombobox.prototype.init=function(textbox){if(typeof(textbox)=="string")textbox=document.getElementById(textbox);textbox=eXo.core.DOMUtil.findNextElementByTagName(textbox,"input");var UICombobox=eXo.webui.UICombobox;var onfocus=textbox.getAttribute("onfocus");var onclick=textbox.getAttribute("onclick");if(!onfocus)textbox.onfocus=UICombobox.show;if(!onclick)textbox.onclick=UICombobox.show;};UICombobox.prototype.show=function(evt){var uiCombo=eXo.webui.UICombobox;uiCombo.items=eXo.core.DOMUtil.findDescendantsByTagName(this.parentNode,"a");if(uiCombo.list)uiCombo.list.style.display="none";uiCombo.list=eXo.core.DOMUtil.findFirstDescendantByClass(this.parentNode,"div","UIComboboxContainer");uiCombo.list.parentNode.style.position="absolute";uiCombo.fixForIE6(this);uiCombo.list.style.display="block";uiCombo.list.style.top=this.offsetHeight+"px";uiCombo.list.style.width=this.offsetWidth+"px";uiCombo.setSelectedItem(this);uiCombo.list.onmousedown=eXo.core.EventManager.cancelEvent;document.onmousedown=uiCombo.hide;};UICombobox.prototype.getSelectedItem=function(textbox){var val=textbox.value;var data=eval(textbox.getAttribute("options"));var len=data.length;for(var i=0;i<len;i++){if(val==data[i])return i;}
return false;};UICombobox.prototype.setSelectedItem=function(textbox){if(this.lastSelectedItem)eXo.core.DOMUtil.replaceClass(this.lastSelectedItem,"UIComboboxSelectedItem","");var selectedIndex=parseInt(this.getSelectedItem(textbox));if(selectedIndex>=0){eXo.core.DOMUtil.addClass(this.items[selectedIndex],"UIComboboxSelectedItem");this.lastSelectedItem=this.items[selectedIndex];var y=eXo.core.Browser.findPosYInContainer(this.lastSelectedItem,this.list);this.list.firstChild.scrollTop=y;var hidden=eXo.core.DOMUtil.findPreviousElementByTagName(textbox,"input");hidden.value=this.items[selectedIndex].getAttribute("value");}};UICombobox.prototype.fixForIE6=function(obj){if(!eXo.core.Browser.isIE6())return;if(eXo.core.DOMUtil.getChildrenByTagName(this.list,"iframe").length>0)return;var iframe=document.createElement("iframe");iframe.frameBorder=0;iframe.style.width=obj.offsetWidth+"px";this.list.appendChild(iframe);};UICombobox.prototype.cancelBubbe=function(evt){var _e=window.event||evt;_e.cancelBubble=true;};UICombobox.prototype.complete=function(obj,evt){if(evt.keyCode==16){this.setSelectedItem(obj);return;}
if(evt.keyCode==13){this.setSelectedItem(obj);this.hide();return;}
var sVal=obj.value.toLowerCase();if(evt.keyCode==8)sVal=sVal.substring(0,sVal.length-1)
if(sVal.length<1)return;var data=eval(obj.getAttribute("options").trim());var len=data.length;var tmp=null;for(var i=0;i<data.length;i++){tmp=data[i].trim();var idx=tmp.toLowerCase().indexOf(sVal,0);if(idx==0&&tmp.length>sVal.length){obj.value=data[i];if(obj.createTextRange){hRange=obj.createTextRange();hRange.findText(data[i].substr(sVal.length));hRange.select();}
else{obj.setSelectionRange(sVal.length,tmp.length);}
break;}}
this.setSelectedItem(obj);};UICombobox.prototype.hide=function(){eXo.webui.UICombobox.list.style.display="none";document.onmousedown=null;};UICombobox.prototype.getValue=function(obj){var UICombobox=eXo.webui.UICombobox;var val=obj.getAttribute("value");var hiddenField=eXo.core.DOMUtil.findNextElementByTagName(UICombobox.list.parentNode,"input");hiddenField.value=val;var text=eXo.core.DOMUtil.findNextElementByTagName(hiddenField,"input");text.value=eXo.core.DOMUtil.findFirstDescendantByClass(obj,"div","UIComboboxLabel").innerHTML;UICombobox.list.style.display="none";};eXo.webui.UICombobox=new UICombobox();function EventManager(){}
EventManager.prototype.cancelBubble=function(evt){if(eXo.core.Browser.browserType=='ie')
window.event.cancelBubble=true;else
evt.stopPropagation();};EventManager.prototype.cancelEvent=function(evt){eXo.core.EventManager.cancelBubble(evt);if(eXo.core.Browser.browserType=='ie')
window.event.returnValue=true;else
evt.preventDefault();};eXo.core.EventManager=new EventManager();function UIVirtualList(){}
UIVirtualList.prototype.init=function(componentId,hasNext,autoAdjustHeight){var uiVirtualList=document.getElementById(componentId);if(uiVirtualList==null)return;if(!hasNext)
{uiVirtualList.isFinished=true;}
var virtualHeight=eXo.core.DOMUtil.getStyle(uiVirtualList,'height',true);if(virtualHeight==0)
{virtualHeight=300;}
uiVirtualList.style.height=virtualHeight+"px";if(autoAdjustHeight)
{uiVirtualList.autoAdjustHeight=autoAdjustHeight;eXo.core.Browser.fillUpFreeSpace(uiVirtualList);}
uiVirtualList.scrollTop=0;this.loadIfNeeded(uiVirtualList);}
UIVirtualList.prototype.loadIfNeeded=function(uiVirtualList)
{if(uiVirtualList.clientHeight==uiVirtualList.scrollHeight)
{if(uiVirtualList.isFinished)
{if(uiVirtualList.autoAdjustHeight)
{uiVirtualList.style.height="auto";}}
else
{uiVirtualList.onscroll();}}}
UIVirtualList.prototype.getFeedBox=function(componentId){var DOMUtil=eXo.core.DOMUtil;var uiVirtualList=document.getElementById(componentId);var feedBox=DOMUtil.findFirstDescendantByClass(uiVirtualList,"div","FeedBox");if(feedBox==null){feedBox=DOMUtil.findFirstDescendantByClass(uiVirtualList,"tbody","FeedBox");}
return feedBox;}
UIVirtualList.prototype.onScroll=function(uiVirtualList,url){if(uiVirtualList.isFinished||uiVirtualList.inProgress)return;var DOMUtil=eXo.core.DOMUtil;var componentHeight=uiVirtualList.offsetHeight;var scrollPosition=uiVirtualList.scrollTop;var scrollerHeight=uiVirtualList.scrollHeight;var scrollable_gap=scrollerHeight-(scrollPosition+componentHeight);if(scrollable_gap<=1){var feedBox=this.getFeedBox(uiVirtualList.id);var html=feedBox.innerHTML;uiVirtualList.backupHTML=html;uiVirtualList.inProgress=true;ajaxGet(url);}}
UIVirtualList.prototype.updateList=function(componentId,hasNext){var DOMUtil=eXo.core.DOMUtil;var uiVirtualList=document.getElementById(componentId);if(uiVirtualList==null)return;if(!hasNext)
{uiVirtualList.isFinished=true;}
var feedBox=this.getFeedBox(uiVirtualList.id);var loadedContent=uiVirtualList.backupHTML;if(eXo.core.Browser.browserType!="ie"){feedBox.innerHTML=loadedContent+feedBox.innerHTML;}else{var index=uiVirtualList.innerHTML.indexOf(feedBox.className);index=uiVirtualList.innerHTML.indexOf(">",index)+1;var firstSec=uiVirtualList.innerHTML.substring(0,index);var secondSec=uiVirtualList.innerHTML.substring(index);uiVirtualList.innerHTML=firstSec+loadedContent+secondSec;}
uiVirtualList.inProgress=false;this.loadIfNeeded(uiVirtualList);}
eXo.webui.UIVirtualList=new UIVirtualList();function UIColorPicker(){}
UIColorPicker.prototype.show=function(obj){document.onmousedown=new Function("eXo.webui.UIColorPicker.hide()");this.tableColor=eXo.core.DOMUtil.findNextElementByTagName(obj,"div");this.title=eXo.core.DOMUtil.findFirstDescendantByClass(obj,"span","DisplayValue");this.input=eXo.core.DOMUtil.findFirstDescendantByClass(obj.parentNode,"input","UIColorPickerValue");this.showHide();this.getSelectedValue();}
UIColorPicker.prototype.setColor=function(color){if(eXo.core.DOMUtil.hasClass(this.title,color)){this.hide();return;}
var className="DisplayValue "+color;this.title.className=className;this.input.value=color;this.hide();};UIColorPicker.prototype.clearSelectedValue=function(){var selectedValue=this.input.value;var colorCell=eXo.core.DOMUtil.findDescendantsByTagName(this.tableColor,"a");var len=colorCell.length;for(var i=0;i<len;i++){if(eXo.core.DOMUtil.hasClass(colorCell[i],"SelectedColorCell")){colorCell[i].className=colorCell[i].className.replace("SelectedColorCell","");break;}}};UIColorPicker.prototype.getSelectedValue=function(){var selectedValue=this.input.value;var colorCell=eXo.core.DOMUtil.findDescendantsByTagName(this.tableColor,"a");var len=colorCell.length;this.clearSelectedValue();for(var i=0;i<len;i++){if(eXo.core.DOMUtil.hasClass(colorCell[i],selectedValue)){eXo.core.DOMUtil.addClass(colorCell[i],"SelectedColorCell");break;}}};UIColorPicker.prototype.hide=function(){if(eXo.webui.UIColorPicker.tableColor){eXo.webui.UIColorPicker.tableColor.style.display="none";eXo.webui.UIColorPicker.tableColor=null;eXo.webui.UIColorPicker.title=null;eXo.webui.UIColorPicker.input=null;document.onmousedown=null;}};UIColorPicker.prototype.showHide=function(){var obj=this.tableColor;if(obj.style.display!="block"){obj.style.display="block";}else{obj.style.display="none";}};eXo.webui.UIColorPicker=new UIColorPicker();function UIPortlet(){this.maxIndex=0;};UIPortlet.prototype.onControlOver=function(element,isOver){var originalElementName=element.className;if(isOver){var overElementName="ControlIcon Over"+originalElementName.substr(originalElementName.indexOf(" ")+1,30);element.className=overElementName;if(element.className=="ControlIcon OverRestoreIcon"){var hiddenAttribute=eval('('+eXo.core.DOMUtil.findFirstChildByClass(element,"div","").innerHTML+')');element.title=hiddenAttribute.modeTitle;}
if(element.className=="ControlIcon OverMaximizedIcon"){var hiddenAttribute=eval('('+eXo.core.DOMUtil.findFirstChildByClass(element,"div","").innerHTML+')');element.title=hiddenAttribute.normalTitle;}}else{var over=originalElementName.indexOf("Over");if(over>=0){var overElementName="ControlIcon "+originalElementName.substr(originalElementName.indexOf(" ")+5,30);element.className=overElementName;}}};eXo.webui.UIPortlet=new UIPortlet();var FCKeditor=function(instanceName,width,height,toolbarSet,value)
{this.InstanceName=instanceName;this.Width=width||'100%';this.Height=height||'200';this.ToolbarSet=toolbarSet||'Default';this.Value=value||'';this.BasePath=FCKeditor.BasePath;this.CheckBrowser=true;this.DisplayErrors=true;this.Config=new Object();this.OnError=null;}
FCKeditor.BasePath='/fckeditor/';FCKeditor.MinHeight=200;FCKeditor.MinWidth=750;FCKeditor.prototype.Version='2.6.6';FCKeditor.prototype.VersionBuild='25427';FCKeditor.prototype.Create=function()
{document.write(this.CreateHtml());}
FCKeditor.prototype.CreateHtml=function()
{if(!this.InstanceName||this.InstanceName.length==0)
{this._ThrowError(701,'You must specify an instance name.');return'';}
var sHtml='';if(!this.CheckBrowser||this._IsCompatibleBrowser())
{sHtml+='<input type="hidden" id="'+this.InstanceName+'" name="'+this.InstanceName+'" value="'+this._HTMLEncode(this.Value)+'" style="display:none" />';sHtml+=this._GetConfigHtml();sHtml+=this._GetIFrameHtml();}
else
{var sWidth=this.Width.toString().indexOf('%')>0?this.Width:this.Width+'px';var sHeight=this.Height.toString().indexOf('%')>0?this.Height:this.Height+'px';sHtml+='<textarea name="'+this.InstanceName+'" rows="4" cols="40" style="width:'+sWidth+';height:'+sHeight;if(this.TabIndex)
sHtml+='" tabindex="'+this.TabIndex;sHtml+='">'+
this._HTMLEncode(this.Value)+'<\/textarea>';}
return sHtml;}
FCKeditor.prototype.ReplaceTextarea=function()
{if(document.getElementById(this.InstanceName+'___Frame'))
return;if(!this.CheckBrowser||this._IsCompatibleBrowser())
{var oTextarea=document.getElementById(this.InstanceName);var colElementsByName=document.getElementsByName(this.InstanceName);var i=0;while(oTextarea||i==0)
{if(oTextarea&&oTextarea.tagName.toLowerCase()=='textarea')
break;oTextarea=colElementsByName[i++];}
if(!oTextarea)
{alert('Error: The TEXTAREA with id or name set to "'+this.InstanceName+'" was not found');return;}
oTextarea.style.display='none';if(oTextarea.tabIndex)
this.TabIndex=oTextarea.tabIndex;this._InsertHtmlBefore(this._GetConfigHtml(),oTextarea);this._InsertHtmlBefore(this._GetIFrameHtml(),oTextarea);}}
FCKeditor.prototype._InsertHtmlBefore=function(html,element)
{if(element.insertAdjacentHTML)
element.insertAdjacentHTML('beforeBegin',html);else
{var oRange=document.createRange();oRange.setStartBefore(element);var oFragment=oRange.createContextualFragment(html);element.parentNode.insertBefore(oFragment,element);}}
FCKeditor.prototype._GetConfigHtml=function()
{var sConfig='';for(var o in this.Config)
{if(sConfig.length>0)sConfig+='&amp;';sConfig+=encodeURIComponent(o)+'='+encodeURIComponent(this.Config[o]);}
return'<input type="hidden" id="'+this.InstanceName+'___Config" value="'+sConfig+'" style="display:none" />';}
FCKeditor.prototype._GetIFrameHtml=function()
{var sFile='fckeditor.html';try
{if((/fcksource=true/i).test(window.top.location.search))
sFile='fckeditor.original.html';}
catch(e){}
var sLink=this.BasePath+'editor/'+sFile+'?InstanceName='+encodeURIComponent(this.InstanceName);if(this.ToolbarSet)
sLink+='&amp;Toolbar='+this.ToolbarSet;var html='<iframe id="'+this.InstanceName+'___Frame" src="'+sLink+'" width="'+this.Width+'" height="'+this.Height;if(this.TabIndex)
html+='" tabindex="'+this.TabIndex;html+='" frameborder="0" scrolling="no"></iframe>';return html;}
FCKeditor.prototype._IsCompatibleBrowser=function()
{return FCKeditor_IsCompatibleBrowser();}
FCKeditor.prototype._ThrowError=function(errorNumber,errorDescription)
{this.ErrorNumber=errorNumber;this.ErrorDescription=errorDescription;if(this.DisplayErrors)
{document.write('<div style="COLOR: #ff0000">');document.write('[ FCKeditor Error '+this.ErrorNumber+': '+this.ErrorDescription+' ]');document.write('</div>');}
if(typeof(this.OnError)=='function')
this.OnError(this,errorNumber,errorDescription);}
FCKeditor.prototype._HTMLEncode=function(text)
{if(typeof(text)!="string")
text=text.toString();text=text.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;");return text;};(function()
{var textareaToEditor=function(textarea)
{var editor=new FCKeditor(textarea.name);editor.Width=Math.max(textarea.offsetWidth,FCKeditor.MinWidth);editor.Height=Math.max(textarea.offsetHeight,FCKeditor.MinHeight);return editor;}
FCKeditor.ReplaceAllTextareas=function()
{var textareas=document.getElementsByTagName('textarea');for(var i=0;i<textareas.length;i++)
{var editor=null;var textarea=textareas[i];var name=textarea.name;if(!name||name.length==0)
continue;if(typeof arguments[0]=='string')
{var classRegex=new RegExp('(?:^| )'+arguments[0]+'(?:$| )');if(!classRegex.test(textarea.className))
continue;}
else if(typeof arguments[0]=='function')
{editor=textareaToEditor(textarea);if(arguments[0](textarea,editor)===false)
continue;}
if(!editor)
editor=textareaToEditor(textarea);editor.ReplaceTextarea();}}})();function FCKeditor_IsCompatibleBrowser()
{var sAgent=navigator.userAgent.toLowerCase();if(false&&sAgent.indexOf("mac")==-1)
{var sBrowserVersion=navigator.appVersion.match(/MSIE (.\..)/)[1];return(sBrowserVersion>=5.5);}
if(navigator.product=="Gecko"&&navigator.productSub>=20030210&&!(typeof(opera)=='object'&&opera.postError))
return true;if(window.opera&&window.opera.version&&parseFloat(window.opera.version())>=9.5)
return true;if(sAgent.indexOf(' adobeair/')!=-1)
return(sAgent.match(/ adobeair\/(\d+)/)[1]>=1);if(sAgent.indexOf(' applewebkit/')!=-1)
return(sAgent.match(/ applewebkit\/(\d+)/)[1]>=522);return false;}
function WCMUIPopupWindow(){};WCMUIPopupWindow.prototype.init=function(popupId,isShow,isResizable,showCloseButton,isShowMask,top,left){var DOMUtil=eXo.core.DOMUtil;this.superClass=eXo.webui.UIPopup;var popup=document.getElementById(popupId);if(popup==null)return;popup.style.visibility="hidden";if(isShow){popup.style.display="block";}
var contentBlock=DOMUtil.findFirstDescendantByClass(popup,'div','PopupContent');if(contentBlock&&(eXo.core.Browser.getBrowserHeight()-100<contentBlock.offsetHeight)){contentBlock.style.height=(eXo.core.Browser.getBrowserHeight()-100)+"px";}
var popupBar=DOMUtil.findFirstDescendantByClass(popup,'span','PopupTitle');popupBar.onmousedown=this.initDND;if(isShow==false){this.superClass.hide(popup);if(isShowMask)eXo.webui.WCMUIPopupWindow.showMask(popup,false);}
if(isResizable){var resizeBtn=DOMUtil.findFirstDescendantByClass(popup,"span","ResizeButton");resizeBtn.style.display='block';resizeBtn.onmousedown=this.startResizeEvt;}
popup.style.visibility="hidden";if(isShow==true){var iframes=DOMUtil.findDescendantsByTagName(popup,"iframe");if(iframes.length>0){setTimeout("eXo.webui.WCMUIPopupWindow.show('"+popupId+"',"+isShowMask+")",500,top,left);}else{this.show(popup,isShowMask,500,top,left);}}};WCMUIPopupWindow.prototype.showMask=function(popup,isShowPopup){var mask=popup.previousSibling;if(mask&&mask.className!="MaskLayer"){mask=null;}
if(isShowPopup){if(eXo.core.DOMUtil.findAncestorByClass(popup,"PORTLET-FRAGMENT")==null){if(!mask)eXo.core.UIMaskLayer.createMask(popup.parentNode,popup,1);}else{if(!mask)eXo.core.UIMaskLayer.createMaskForFrame(popup.parentNode,popup,1);}}else{if(mask)eXo.core.UIMaskLayer.removeMask(mask);}};WCMUIPopupWindow.prototype.show=function(popup,isShowMask,middleBrowser,top,left){var DOMUtil=eXo.core.DOMUtil;if(typeof(popup)=="string")popup=document.getElementById(popup);var portalApp=document.getElementById("UIPortalApplication");var maskLayer=DOMUtil.findFirstDescendantByClass(portalApp,"div","UIMaskWorkspace");var zIndex=0;var currZIndex=0;if(maskLayer!=null){currZIndex=DOMUtil.getStyle(maskLayer,"zIndex");if(!isNaN(currZIndex)&&currZIndex>zIndex)zIndex=currZIndex;}
var popupWindows=DOMUtil.findDescendantsByClass(portalApp,"div","WCMUIPopupWindow");var len=popupWindows.length;for(var i=0;i<len;i++){currZIndex=DOMUtil.getStyle(popupWindows[i],"zIndex");if(!isNaN(currZIndex)&&currZIndex>zIndex)zIndex=currZIndex;}
if(zIndex==0)zIndex=2000;if(isShowMask)eXo.webui.WCMUIPopupWindow.showMask(popup,true);popup.style.visibility="hidden";this.superClass.show(popup);if(top>-1&&left>-1){var pageWidth=0;var wsElement=document.getElementById('UIWorkingWorkspace');if(wsElement)pageWidth=wsElement.clientWidth;if(screen.width-pageWidth<=325)
left=left-(screen.width-pageWidth);else
left=left-(screen.width-pageWidth)/2;popup.style.top=top+10+"px";var deltaX=screen.width-left;if(deltaX<325){left=left-(325-deltaX)-70;}
popup.style.left=left+"px";popup.style.position="fixed";}else{var offsetParent=popup.offsetParent;var scrollY=0;if(window.pageYOffset!=undefined)scrollY=window.pageYOffset;else if(document.documentElement&&document.documentElement.scrollTop)scrollY=document.documentElement.scrollTop;else scrollY=document.body.scrollTop;if(offsetParent){var middleWindow=(eXo.core.DOMUtil.hasClass(offsetParent,"WCMUIPopupWindow")||eXo.core.DOMUtil.hasClass(offsetParent,"UIWindow"));if(middleWindow){popup.style.top=Math.ceil((offsetParent.offsetHeight-popup.offsetHeight)/2)+"px";}
if(middleBrowser||!middleWindow){popup.style.top=Math.ceil((eXo.core.Browser.getBrowserHeight()-popup.offsetHeight)/2)+scrollY+"px";}
if(eXo.core.DOMUtil.hasClass(offsetParent,"UIMaskWorkspace")){popup.style.top=Math.ceil((offsetParent.offsetHeight-popup.offsetHeight)/2)+"px";}
var checkHeight=popup.offsetHeight>300;if(document.getElementById("UIDockBar")&&checkHeight){popup.style.top="6px";}
if(eXo.core.I18n.lt)popup.style.left=Math.ceil((offsetParent.offsetWidth-popup.offsetWidth)/2)+"px";else popup.style.right=Math.ceil((offsetParent.offsetWidth-popup.offsetWidth)/2)+"px";}
if(eXo.core.Browser.findPosY(popup)<0)popup.style.top=scrollY+"px";}
popup.style.visibility="visible";};WCMUIPopupWindow.prototype.increasezIndex=function(popup){var DOMUtil=eXo.core.DOMUtil;if(typeof(popup)=="string")popup=document.getElementById(popup);var portalApp=document.getElementById("UIPortalApplication");var uiLogin=DOMUtil.findFirstDescendantByClass(portalApp,"div","UILoginForm");if(uiLogin){var curMaskzIndex=parseInt(DOMUtil.getStyle(document.getElementById('UIMaskWorkspace'),"zIndex"));popup.style.zIndex=++curMaskzIndex+"";}}
WCMUIPopupWindow.prototype.closePopupEvt=function(evt){eXo.core.DOMUtil.findAncestorByClass(this,"UIDragObject").style.display="none";}
WCMUIPopupWindow.prototype.startResizeEvt=function(evt){eXo.webui.WCMUIPopupWindow.popupId=eXo.core.DOMUtil.findAncestorByClass(this,"WCMUIPopupWindow").id;document.onmousemove=eXo.webui.WCMUIPopupWindow.resize;document.onmouseup=eXo.webui.WCMUIPopupWindow.endResizeEvt;}
var POPUP_WINDOW_BOTTOM_HEIGHT=50;WCMUIPopupWindow.prototype.resize=function(evt){var targetPopup=document.getElementById(eXo.webui.WCMUIPopupWindow.popupId);var content=eXo.core.DOMUtil.findFirstDescendantByClass(targetPopup,"div","PopupContent");var isRTL=eXo.core.I18n.isRT();var pointerX=eXo.core.Browser.findMouseRelativeX(targetPopup,evt,isRTL);var pointerY=eXo.core.Browser.findMouseRelativeY(targetPopup,evt);var delta=eXo.core.Browser.findPosYInContainer(content,targetPopup)+
content.style.borderWidth+content.style.padding+content.style.margin;if((pointerY-delta)>0)content.style.height=(pointerY-delta-POPUP_WINDOW_BOTTOM_HEIGHT)+"px";targetPopup.style.height="auto";if(isRTL){pointerX=(-1)*pointerX}
if(pointerX>200)targetPopup.style.width=(pointerX+5)+"px";};WCMUIPopupWindow.prototype.endResizeEvt=function(evt){delete eXo.webui.WCMUIPopupWindow.popupId;this.onmousemove=null;this.onmouseup=null;eXo.portal.UIPortalControl.initAllManagers();}
WCMUIPopupWindow.prototype.initDND=function(evt){var DragDrop=eXo.core.DragDrop;var DOMUtil=eXo.core.DOMUtil;DragDrop.initCallback=function(dndEvent){var dragObject=dndEvent.dragObject;dragObject.uiWindowContent=DOMUtil.findFirstDescendantByClass(dragObject,"div","PopupContent");if(!dragObject.uiWindowContent)return;if(eXo.core.Browser.browserType=="mozilla"){dragObject.uiWindowContent.style.overflow="hidden";var elements=eXo.core.DOMUtil.findDescendantsByClass(dragObject.uiWindowContent,"div","PopupMessageBox");for(var i=0;i<elements.length;i++){elements[i].style.overflow="hidden";}}}
DragDrop.dragCallback=function(dndEvent){}
DragDrop.dropCallback=function(dndEvent){var dragObject=dndEvent.dragObject;if(eXo.core.Browser.browserType=="mozilla"&&dragObject.uiWindowContent){dragObject.uiWindowContent.style.overflow="auto";var elements=eXo.core.DOMUtil.findDescendantsByClass(dragObject.uiWindowContent,"div","PopupMessageBox");for(var i=0;i<elements.length;i++){elements[i].style.overflow="auto";}}
var offsetParent=dragObject.offsetParent;if(offsetParent){if(eXo.core.Browser.findPosY(dragObject)<0)dragObject.style.top=(0-offsetParent.offsetTop)+"px";}else{dragObject.style.top="0px";}}
var clickBlock=this;var dragBlock=eXo.core.DOMUtil.findAncestorByClass(this,"UIDragObject");DragDrop.init(null,clickBlock,dragBlock,evt);};eXo.webui.WCMUIPopupWindow=new WCMUIPopupWindow();function WCMUtils(){var DOM=eXo.core.DOMUtil;}
WCMUtils.prototype.getHostName=function(){var parentLocation=window.parent.location;return parentLocation.href.substring(0,parentLocation.href.indexOf(parentLocation.pathname));};WCMUtils.prototype.request=function(url){var xmlHttpRequest=false;if(window.XMLHttpRequest){xmlHttpRequest=new window.XMLHttpRequest();xmlHttpRequest.open("GET",url,false);xmlHttpRequest.send("");return xmlHttpRequest.responseXML;}
else if(ActiveXObject("Microsoft.XMLDOM")){xmlHttpRequest=new ActiveXObject("Microsoft.XMLDOM");xmlHttpRequest.async=false;xmlHttpRequest.load(urlRequestXML);return xmlHttpRequest;}
return null;};WCMUtils.prototype.getCurrentNodes=function(navigations,selectedNodeUri){var currentNodes=new Array();var currentNodeUris=new Array();currentNodeUris=selectedNodeUri.split("/");for(var i in navigations){for(var j in navigations[i].nodes){if(navigations[i].nodes[j].name==currentNodeUris[0]){currentNodes[0]=navigations[i].nodes[j];break;}}}
var parent=currentNodes[0];for(var k=1;k<currentNodeUris.length;k++){if(parent.children=='null'){break;}
for(var n in parent.children){var node=parent.children[n];if(currentNodeUris[k]==node.name){currentNodes[k]=node;parent=node;break;}}}
return currentNodes;};WCMUtils.prototype.getRestContext=function(){return eXo.env.portal.context+"/"+eXo.env.portal.rest;};WCMUtils.prototype.openPrintPreview=function(urlToOpen){if(urlToOpen.indexOf("?")==-1){return urlToOpen+'?isPrint=true';}else{return urlToOpen+'&isPrint=true';}};WCMUtils.prototype.showInContextHelp=function(id,isIn){var parentElm=document.getElementById(id);var popupHelp=document.getElementById(id+"ID");var inContextContentHelp=eXo.core.DOMUtil.findFirstDescendantByClass(parentElm,"div","InContextHelpContent");var wTmp=1;if(inContextContentHelp){if(isIn=="true"){inContextContentHelp.style.display="block";var inContextHelpPopup=eXo.core.DOMUtil.findFirstDescendantByClass(inContextContentHelp,"div","InContextHelpPopup");var contentHelp=eXo.core.DOMUtil.findFirstDescendantByClass(popupHelp,"div","InContextHelpContentData");var contentPosition=eXo.core.DOMUtil.findFirstDescendantByClass(inContextContentHelp,"div","ContentPosition");var l=String(contentHelp.innerHTML).length;if(l<100){contentHelp.style.width=(20+l*4)+"px"
inContextContentHelp.style.width=(20+l*4+54)+"px"
wTmp=(20+l*4+54);contentPosition.style.height="auto";}else{contentHelp.style.width="400px"
inContextContentHelp.style.width="454px"
wTmp=454;contentPosition.style.height=(contentHelp.offsetHeight-26)+"px";}
inContextContentHelp.style.left="-"+(wTmp)+"px";popupHelp.className="LeftInContextHelpPopup";var accumulateLeft=0;var parentObj=inContextContentHelp;do{accumulateLeft=accumulateLeft+parentObj.offsetLeft;parentObj=parentObj.offsetParent;}while(parentObj);if(accumulateLeft<0){inContextContentHelp.style.left="12px";popupHelp.className="RightInContextHelpPopup";}}else{inContextContentHelp.style.display="none";}}};WCMUtils.prototype.showHideComponent=function(elemtClicked){var nodeReference=eXo.core.DOMUtil.findAncestorByClass(elemtClicked,"ShowHideContainer");var elemt=eXo.core.DOMUtil.findFirstDescendantByClass(nodeReference,"div","ShowHideComponent");if(elemt.style.display=='none'){elemtClicked.childNodes[0].style.display='none';elemtClicked.childNodes[1].style.display='block';elemt.style.display='block';eXo.ecm.WCMUtils.setScrollBar();}else{elemtClicked.childNodes[0].style.display='block';elemtClicked.childNodes[1].style.display='none';elemt.style.display='none';}};WCMUtils.prototype.setScrollBar=function(){try{var elementWorkingArea=document.getElementById('UIWorkingArea');var parent=document.getElementById('TabContainerParent');if(parent!=null){var elements=eXo.core.DOMUtil.findDescendantsByClass(parent,"div","UITabContent");if(elements!=null){for(i=0;i<elements.length;i++)
{var obj=elements[i];if(obj.style.display!="none"){var height=obj.offsetHeight;if(height>430){obj.style.height=elementWorkingArea.offsetHeight-50+"px";obj.style.overflow="auto";}}}}}}
catch(err){}};WCMUtils.prototype.hideContextMenu=function(menuItemElem){var contextMenu=eXo.core.DOMUtil.findAncestorByClass(menuItemElem,"UIRightClickPopupMenu");contextMenu.style.display="none";}
WCMUtils.prototype.changePriorityCss=function(){priorityField=document.getElementById("priority");if(priorityField!=null){if(isNaN(priorityField.value)){priorityField.className="Tip";}
priorityField.onclick=function(){priorityField.className="SeoPriority";if(isNaN(priorityField.value))
priorityField.value="";};}}
WCMUtils.prototype.addParamIntoAjaxEventRequest=function(eventReq,extParam){return eventReq.substring(0,eventReq.length-2)+extParam+"\')";}
WCMUtils.prototype.searchNodeTypeOnKeyPress=function(){var element=document.getElementById("NodeTypeText");if(element==null)return false;element.onkeypress=function(event){var keynum=false;if(window.event){keynum=window.event.keyCode;event=window.event;}else if(event.which){keynum=event.which;}
if(keynum==0){keynum=event.keyCode;}
if(keynum==13){var divUINodeTypeSearch=eXo.core.DOMUtil.findAncestorByClass(this,"UINodeTypeSearh");var tdButtonCell=eXo.core.DOMUtil.findFirstDescendantByClass(divUINodeTypeSearch,"td","ButtonCell");var btnSearch=eXo.core.DOMUtil.findDescendantsByTagName(tdButtonCell,"a")[0];eval(btnSearch.getAttribute("href"));return false;}}}
eXo.ecm.WCMUtils=new WCMUtils();function NewsletterManager(){}
NewsletterManager.prototype.checkAllSelected=function(checkBox){var elements=checkBox.form.elements;var checked=checkBox.checked;for(i=0;i<elements.length;i++){if(elements[i].type=="checkbox")
elements[i].checked=checked;}};NewsletterManager.prototype.checkBeforeDelete=function(uiSubscriptionsForm,checkMess,confirmMess){var isChecked=false;var elements=document.getElementById(uiSubscriptionsForm).elements;for(var i=0;i<elements.length;i++){if(elements[i].type=="checkbox"&&elements[i].checked==true)isChecked=true;}
if(isChecked==false){alert(checkMess);return false;}
return confirm(confirmMess);}
NewsletterManager.prototype.hide=function(){var ln=eXo.core.DOMUtil.hideElementList.length;if(ln>0){for(var i=0;i<ln;i++){eXo.core.DOMUtil.hideElementList[i].style.display="none";}}};NewsletterManager.prototype.show=function(obj,evt){if(!evt)evt=window.event;evt.cancelBubble=true;var DOMUtil=eXo.core.DOMUtil;var uiPopupCategory=DOMUtil.findFirstDescendantByClass(obj,'div','UIPopupCategory');if(!uiPopupCategory)return;if(uiPopupCategory.style.display=="none"){eXo.ecm.NewsletterManager.hide();if(eXo.core.Browser.isIE7()){uiPopupCategory.style.left="-176px";uiPopupCategory.style.top="16px";uiPopupCategory.style.display="block";}
else{uiPopupCategory.style.display="block";}
eXo.core.DOMUtil.listHideElements(uiPopupCategory);}
else uiPopupCategory.style.display="none";}
eXo.ecm.NewsletterManager=new NewsletterManager();function UIFormGeneratorPortlet(){}
UIFormGeneratorPortlet.prototype.init=function(){var DOMUtil=eXo.core.DOMUtil;var uiTabContentContainer=document.getElementById('UITabContentContainer');var uiTabContent=DOMUtil.findFirstDescendantByClass(uiTabContentContainer,'div','UITabContent');var menuitems=DOMUtil.findDescendantsByClass(uiTabContent,'div','LeftMenu');for(var i=0;i<menuitems.length;i++){menuitems[i].onclick=function(){eXo.ecm.UIFormGeneratorPortlet.renderComponent(this.getAttribute('elementType'));}}};UIFormGeneratorPortlet.prototype.renderComponent=function(typeComp){var formGenerator="";var fieldComponent="";var advancedOption="";var multivalue=false;switch(typeComp){case"label":fieldComponent+="<td class='FieldLabel' value='Label'>Label</td>";fieldComponent+="<td class='FieldComponent'></td>";break;case"input":fieldComponent+="<td class='FieldLabel' value='Input Text'>Input field</td>";fieldComponent+="<td class='FieldComponent'><input type='text' class='InputText' value=''/></td>";break;case"textarea":fieldComponent+="<td class='FieldLabel' value='Textarea'>Textarea field</td>";fieldComponent+="<td class='FieldComponent'><textarea class='Textarea'>Textarea value</textarea></td>";break;case"wysiwyg":if(!eXo.ecm.UIFormGeneratorPortlet.countFCK)eXo.ecm.UIFormGeneratorPortlet.countFCK=1;fieldComponent+="<td class='FieldLabel' value='WYSIWYG'>WYSIWYG field</td>";fieldComponent+="<td class='FieldComponent'><textarea class='Textarea' id='RichTextEditorContent_"+eXo.ecm.UIFormGeneratorPortlet.countFCK+"'>WYSIWYG value</textarea></td>";advancedOption+="<tr>";advancedOption+="<td class='FieldLabel'>Advance Options</td>";advancedOption+="<td class='FileComponent'>";advancedOption+="Toolbar: <select class='SelectBox'><option value='toolbar:SuperBasicWCM'>SuperBasicWCM</option><option value='toolbar:BasicWCM'>BasicWCM</option><option value='toolbar:CompleteWCM'>CompleteWCM</option><option value='toolbar:Basic'>Basic</option></select>";advancedOption+="</td>";advancedOption+="</tr>";break;case"select":fieldComponent+="<td class='FieldLabel' value='Select'>Select field</td>";fieldComponent+="<td class='FieldComponent'><select class='SelectBox'><option idx='1' value='option1'>Option 1</option></select></td>";multivalue=true;break;case"checkbox":fieldComponent+="<td class='FieldLabel' value='Checkbox'>Checkbox field</td>";fieldComponent+="<td class='FieldComponent'><div class='CheckboxButton'><input type='checkbox' class='CheckBox' value='checkbox1'/><span style='padding : 0 5px 0 19px; display:block; line-height:12px'>Checkbox 1</span><div style='clear:left'></div></div></td>";break;case"radio":fieldComponent+="<td class='FieldLabel' value='Radio'>Radio field</td>";fieldComponent+="<td class='FieldComponent'><div class='RadioButton' idx='1'><input type='radio' name='group1' class='Radio' value='radio1'/><span style='padding : 0 5px 0 19px; display:block; line-height:12px'>Radio 1</span><div style='clear:left'></div></div></td>";multivalue=true;break;case"datetime":fieldComponent+="<td class='FieldLabel' value='DateTime'>Datetime field</td>";fieldComponent+="<td class='FieldComponent'><input type='text' class='InputText' value='Datetime value'/></td>";advancedOption+="<tr>";advancedOption+="<td class='FieldLabel'>Advance Options</td>";advancedOption+="<td class='FileComponent'>";advancedOption+="Format: <select><option>dd/mm/yyyy</option><option>dd-mm-yyyy</option></select>";advancedOption+="</td>";advancedOption+="</tr>";break;case"upload":fieldComponent+="<td class='FieldLabel' value='Upload'>Upload field</td>";fieldComponent+="<td class='FieldComponent'><input type='file' class='Upload' disabled='disabled'/><img src='/eXoResources/skin/sharedImages/Blank.gif' alt='' class='UploadButton'/></td>";break;}
formGenerator+="<div class='TopContentBoxStyle'>";formGenerator+="<div class='UIForm UIFormEditBox'>";formGenerator+="<div class='HorizontalLayout'>";formGenerator+="<div class='FormContainer'>";formGenerator+="<table class='UIFormGrid'>";formGenerator+="<tr>";formGenerator+=fieldComponent;formGenerator+="<td class='FieldIcon'>";formGenerator+="<div class='EditBox'>";formGenerator+="<a class='ControlIcon DeleteIcon' onclick='eXo.ecm.UIFormGeneratorPortlet.removeComponent(this);' title='Click here to remove this component'><span></span></a>";formGenerator+="<a class='ControlIcon EditIcon' onclick='eXo.ecm.UIFormGeneratorPortlet.showEditBox(this);' title='Click here to edit property'><span></span></a>";formGenerator+="</div>";formGenerator+="<a class='ControlIcon DownIcon' onclick='eXo.ecm.UIFormGeneratorPortlet.moveDownElement(this);' title='Move down component'><span></span></a>";formGenerator+="<a class='ControlIcon UpIcon' onclick='eXo.ecm.UIFormGeneratorPortlet.moveUpElement(this);' title='Move up component'><span></span></a>";formGenerator+="<div class='ClearRight'><span></span></div>";formGenerator+="</td>";formGenerator+="</tr>";formGenerator+="</table>";formGenerator+="</div>";formGenerator+="</div>";formGenerator+="</div>";formGenerator+="</div>";formGenerator+="<div class='MiddleContentBoxStyle' style='display:none'>";formGenerator+="<div class='UIForm UIFormEditBox'>";formGenerator+="<div class='HorizontalLayout'>";formGenerator+="<div class='FormContainer'>";formGenerator+="<table class='UIFormGrid'>";formGenerator+="<tr>";formGenerator+="<td class='FieldLabel'>Field Label</td>";formGenerator+="<td class='FieldComponent'>";formGenerator+="<input type='text' class='InputText' onkeyup='eXo.ecm.UIFormGeneratorPortlet.updateLabel(this);'/>";formGenerator+="</td>";formGenerator+="</tr>";formGenerator+="<tr>";formGenerator+="<td class='FieldLabel'>Width</td>";formGenerator+="<td class='FieldComponent'>";formGenerator+="<input type='number' value='' class='InputText' style='width: 50%; float:left;' onkeyup='eXo.ecm.UIFormGeneratorPortlet.updateWidth(this);' />";formGenerator+="<div class='BoxRules'>";formGenerator+="Rules: <input class='Requied' type='checkbox' onchange='eXo.ecm.UIFormGeneratorPortlet.updateRequired(this);'>Required</input>";formGenerator+="</div>";formGenerator+="</td>";formGenerator+="<td class='FieldIcon'><span></span></td>";formGenerator+="</tr>";formGenerator+="<tr>";formGenerator+="<td class='FieldLabel'>Height</td>";formGenerator+="<td class='FieldComponent' style='padding:0px;'>";formGenerator+="<input type='number' value='' class='InputText' style='width: 50%; float:left;' onkeyup='eXo.ecm.UIFormGeneratorPortlet.updateHeight(this);' />";formGenerator+="</td>";formGenerator+="<td class='FieldIcon'><span></span></td>";formGenerator+="</tr>";formGenerator+="<tr>";formGenerator+="<td class='FieldLabel'>Default Value</td>";formGenerator+="<td class='FieldComponent' >";formGenerator+="<div class='DivIcon' idx='1'>";formGenerator+="<input type='text' class='InputText' onkeyup='eXo.ecm.UIFormGeneratorPortlet.updateValue(event);' idx='1'/ style=\"float:left;width:90%\">";if(multivalue){formGenerator+="<a class='AddIcon' onclick='eXo.ecm.UIFormGeneratorPortlet.addOption(this);'><span></span></a>";formGenerator+="<a class='RemoveIcon' onclick='eXo.ecm.UIFormGeneratorPortlet.removeOption(this);'><span></span></a>";}else{formGenerator+="<span></span>";}
formGenerator+="<div style='clear:left;'><span></span></div>";formGenerator+="</div>";formGenerator+="</td>";formGenerator+="</tr>";formGenerator+=advancedOption
formGenerator+="<tr>";formGenerator+="<td class='FieldLabel'>Guidelines for User</td>";formGenerator+="<td class='FieldComponent'><textarea class='Textarea' onkeyup='eXo.ecm.UIFormGeneratorPortlet.updateGuide(this);'></textarea></td>";formGenerator+="<td class='FieldIcon'><span></span></td>";formGenerator+="</tr>";formGenerator+="</table>";formGenerator+="</div>";formGenerator+="</div>";formGenerator+="</div>";formGenerator+="</div>";var node=document.createElement('div');node.innerHTML=formGenerator;node.className='BoxContentBoxStyle';node.setAttribute('typeComponent',typeComp);document.getElementById('MiddleCenterViewBoxStyle').appendChild(node);if(typeComp=='wysiwyg'&&!CKEDITOR.instances['RichTextEditorContent']){var idEditor='RichTextEditorContent_'+eXo.ecm.UIFormGeneratorPortlet.countFCK;CKEDITOR.replace(idEditor,{toolbar:'BasicWCM'});}
eXo.ecm.UIFormGeneratorPortlet.countFCK++;};UIFormGeneratorPortlet.prototype.showEditBox=function(obj){var DOMUtil=eXo.core.DOMUtil;var parentNode=DOMUtil.findAncestorByClass(obj,"TopContentBoxStyle");var boxContent=DOMUtil.findNextElementByTagName(parentNode,"div");if(boxContent&&boxContent.style.display!='block'){boxContent.style.display='block';}else{boxContent.style.display='none';}};UIFormGeneratorPortlet.prototype.removeComponent=function(obj){var parentNode=eXo.core.DOMUtil.findAncestorByClass(obj,"BoxContentBoxStyle");if(parentNode){var confirmDelete=confirm("Are you sure to remove?");if(confirmDelete==true){document.getElementById('MiddleCenterViewBoxStyle').removeChild(parentNode);}else{return;}}};UIFormGeneratorPortlet.prototype.moveDownElement=function(obj){var DOMUtil=eXo.core.DOMUtil;var parentNode=DOMUtil.findAncestorByClass(obj,"BoxContentBoxStyle");var middContainer=document.getElementById('MiddleCenterViewBoxStyle');if(!middContainer||!parentNode)return;var tmpNode='';nextElt=DOMUtil.findNextElementByTagName(parentNode,'div');if(nextElt){tmpNode=nextElt.cloneNode(true);middContainer.removeChild(nextElt);middContainer.insertBefore(tmpNode,parentNode);}};UIFormGeneratorPortlet.prototype.moveUpElement=function(obj){var DOMUtil=eXo.core.DOMUtil;var parentNode=DOMUtil.findAncestorByClass(obj,"BoxContentBoxStyle");var middContainer=document.getElementById('MiddleCenterViewBoxStyle');if(!middContainer||!parentNode)return;previousElt=DOMUtil.findPreviousElementByTagName(parentNode,'div');if(!previousElt)return;var tmpNode=parentNode.cloneNode(true);middContainer.removeChild(parentNode);middContainer.insertBefore(parentNode,previousElt);};UIFormGeneratorPortlet.prototype.updateLabel=function(obj){var DOMUtil=eXo.core.DOMUtil;var parentNode=DOMUtil.findAncestorByClass(obj,'BoxContentBoxStyle');var labelNode=DOMUtil.findFirstDescendantByClass(parentNode,'td','FieldLabel');labelNode.innerHTML=obj.value;};UIFormGeneratorPortlet.prototype.updateWidth=function(obj){var DOMUtil=eXo.core.DOMUtil;var width='';if(obj.value==''){width=null;}else if(isNaN(parseFloat(obj.value))){alert('Number only');obj.value='';return false;}else{width=obj.value+'px';}
var parentNode=DOMUtil.findAncestorByClass(obj,'BoxContentBoxStyle');var containerNode=DOMUtil.findFirstDescendantByClass(parentNode,'div','TopContentBoxStyle');var componentNode=DOMUtil.findFirstDescendantByClass(containerNode,'td','FieldComponent');if(componentNode){var inputNode=componentNode.childNodes[0];if(inputNode)inputNode.style.width=width;}};UIFormGeneratorPortlet.prototype.updateHeight=function(obj){var DOMUtil=eXo.core.DOMUtil;var height='';if(obj.value==''){height=null;}else if(isNaN(parseFloat(obj.value))){alert('Number only');obj.value='';return false;}else{height=obj.value+'px';}
var parentNode=DOMUtil.findAncestorByClass(obj,'BoxContentBoxStyle');var containerNode=DOMUtil.findFirstDescendantByClass(parentNode,'div','TopContentBoxStyle');var componentNode=DOMUtil.findFirstDescendantByClass(containerNode,'td','FieldComponent');if(componentNode){var inputNode=componentNode.childNodes[0];if(inputNode)inputNode.style.height=height;}};UIFormGeneratorPortlet.prototype.updateRequired=function(obj){var DOMUtil=eXo.core.DOMUtil;var parentNode=DOMUtil.findAncestorByClass(obj,'BoxContentBoxStyle');var containerNode=DOMUtil.findFirstDescendantByClass(parentNode,'div','TopContentBoxStyle');var componentNode=DOMUtil.findFirstDescendantByClass(containerNode,'td','FieldComponent');var labelNode=DOMUtil.findFirstDescendantByClass(containerNode,'td','FieldLabel');if(!componentNode)return false;if(obj.checked){labelNode.setAttribute('mandatory','true');}else{labelNode.setAttribute('mandatory','false');}
var requiredNode=DOMUtil.getChildrenByTagName(componentNode,'span')[0];if(!requiredNode){requiredNode=document.createElement('span');requiredNode.style.color='red';requiredNode.innerHTML=' *';componentNode.appendChild(requiredNode);}else{componentNode.removeChild(requiredNode);}};UIFormGeneratorPortlet.prototype.updateValue=function(evt){var DOMUtil=eXo.core.DOMUtil;var srcEle=eXo.core.Browser.getEventSource(evt);if(!srcEle)return;var root=DOMUtil.findAncestorByClass(srcEle,'BoxContentBoxStyle');var componentNode=DOMUtil.findFirstDescendantByClass(root,'div','TopContentBoxStyle');var eltName=DOMUtil.findFirstDescendantByClass(componentNode,'td','FieldLabel').getAttribute('value');var srcIndex=parseInt(srcEle.getAttribute("idx"))-1;if(!eltName)return;switch(eltName){case"Label":var labelNode=DOMUtil.findFirstDescendantByClass(componentNode,'td','FieldComponent');labelNode.innerHTML=srcEle.value;break;case"Input Text":var inputNode=DOMUtil.findFirstDescendantByClass(componentNode,'input','InputText');inputNode.value=srcEle.value;break;case"Select":var selectNode=DOMUtil.findFirstDescendantByClass(componentNode,'select','SelectBox');var fieldNode=DOMUtil.findAncestorByClass(srcEle,'FieldComponent');var inputNodes=DOMUtil.getChildrenByTagName(fieldNode,'input');if(selectNode.options.length>srcIndex){selectNode.options[srcIndex].value=srcEle.value;selectNode.options[srcIndex].innerHTML=srcEle.value;}
break;case"Textarea":var textarea=DOMUtil.findFirstDescendantByClass(componentNode,'textarea','Textarea');textarea.value=srcEle.value;break
case"WYSIWYG":var eltComp=DOMUtil.findFirstDescendantByClass(componentNode,'td','FieldComponent');var txtArea=DOMUtil.findFirstChildByClass(eltComp,"textarea","Textarea");var iEditor=txtArea.id;var editor=eval('CKEDITOR.instances.'+iEditor);editor.setText(srcEle.value);break;case"upload":break;case"Radio":var fieldComponent=DOMUtil.findFirstDescendantByClass(componentNode,"td","FieldComponent");var radioNodes=DOMUtil.findDescendantsByClass(fieldComponent,'div','RadioButton');var fieldNode=DOMUtil.findAncestorByClass(srcEle,'FieldComponent');var inputList=DOMUtil.findDescendantsByClass(fieldNode,'input','InputText');for(var i=0;i<inputList.length;i++){if(inputList[i]==srcEle){var radioInputNode=DOMUtil.findFirstDescendantByClass(radioNodes[i],'input','Radio');if(srcEle.value.length>0)radioInputNode.value=srcEle.value;var radioTextNode=DOMUtil.findDescendantsByTagName(radioNodes[i],'span')[0];if(srcEle.value.length>0)radioTextNode.innerHTML=srcEle.value;}}
break;case"Checkbox":var fieldComponent=DOMUtil.findFirstDescendantByClass(componentNode,"td","FieldComponent");var checkboxNodes=DOMUtil.findDescendantsByClass(fieldComponent,'div','CheckboxButton');var fieldNode=DOMUtil.findAncestorByClass(srcEle,'FieldComponent');var inputList=DOMUtil.findDescendantsByClass(fieldNode,'input','InputText');for(var i=0;i<inputList.length;i++){if(inputList[i]==srcEle){var chkInputNode=DOMUtil.findFirstDescendantByClass(checkboxNodes[i],'input','CheckBox');chkInputNode.value=srcEle.value;var chkTextNode=DOMUtil.findDescendantsByTagName(checkboxNodes[i],'span')[0];chkTextNode.innerHTML=srcEle.value;}}
break;}};UIFormGeneratorPortlet.prototype.updateGuide=function(objGuide){var DOMUtil=eXo.core.DOMUtil;var root=DOMUtil.findAncestorByClass(objGuide,'BoxContentBoxStyle');var componentNode=DOMUtil.findFirstDescendantByClass(root,'div','TopContentBoxStyle');var fieldLabel=DOMUtil.findFirstDescendantByClass(componentNode,'td','FieldLabel');fieldLabel.setAttribute("desc",objGuide.value);};UIFormGeneratorPortlet.prototype.insertAfter=function(referenceNode,newNode){referenceNode.parentNode.insertBefore(newNode,referenceNode.nextSibling);}
UIFormGeneratorPortlet.prototype.updateNodeIndex=function(elementNode,index){for(var i=parseInt(index);i<elementNode.length;i++){elementNode[i].setAttribute("idx",parseInt(i)+1);}}
UIFormGeneratorPortlet.prototype.addOption=function(obj){var DOMUtil=eXo.core.DOMUtil;var ancestorNode=DOMUtil.findAncestorByClass(obj,'BoxContentBoxStyle');var containerNode=DOMUtil.findFirstDescendantByClass(ancestorNode,'div','TopContentBoxStyle');var componentNode=DOMUtil.findFirstDescendantByClass(containerNode,'td','FieldComponent');var selectNode=DOMUtil.findFirstDescendantByClass(componentNode,'select','SelectBox');var rowNode=DOMUtil.findAncestorByTagName(obj,'tr');var brotherNode=DOMUtil.findFirstDescendantByClass(rowNode,'td','FieldComponent');var brotherChildNodes=DOMUtil.findDescendantsByClass(brotherNode,'input','InputText');var radioContainer=DOMUtil.findDescendantsByClass(containerNode,'div','RadioButton');var upperIconNode=DOMUtil.findAncestorByClass(obj,'DivIcon');var currentIndex=upperIconNode.getAttribute("idx");var index=parseInt(currentIndex)+1;var strRNode="<input onkeyup=\"eXo.ecm.UIFormGeneratorPortlet.updateValue(event);\" type='text' class='InputText' idx='"+index+"'/ style=\"float:left;width:90%\">";strRNode+="<a class='AddIcon' onclick='eXo.ecm.UIFormGeneratorPortlet.addOption(this);'><span></span></a>";strRNode+="<a class='RemoveIcon' onclick='eXo.ecm.UIFormGeneratorPortlet.removeOption(this);'><span></span></a>";strRNode+="<div style='clear:left;'><span></span></div>";var rNode=document.createElement('div');rNode.className="DivIcon";rNode.setAttribute("idx",index);rNode.innerHTML=strRNode;eXo.ecm.UIFormGeneratorPortlet.insertAfter(upperIconNode,rNode);var arrayInputTexts=DOMUtil.findDescendantsByClass(brotherNode,'input','InputText');var arrayDivIcons=DOMUtil.findDescendantsByClass(brotherNode,'div','DivIcon');eXo.ecm.UIFormGeneratorPortlet.updateNodeIndex(arrayInputTexts,index);eXo.ecm.UIFormGeneratorPortlet.updateNodeIndex(arrayDivIcons,index);switch(ancestorNode.getAttribute("typeComponent")){case"select":var optionNode=document.createElement('option');optionNode.setAttribute("idx",index);optionNode.value="Option"+index;optionNode.innerHTML="Option"+index;if(currentIndex<=selectNode.length){eXo.ecm.UIFormGeneratorPortlet.insertAfter(selectNode[currentIndex-1],optionNode);}
eXo.ecm.UIFormGeneratorPortlet.updateNodeIndex(selectNode,index);for(var i=0;i<arrayInputTexts.length;i++){if(arrayInputTexts[i].value==""||arrayInputTexts[i].value.length<1){selectNode[i].value="Option"+selectNode[i].getAttribute("idx");selectNode[i].text="Option"+selectNode[i].getAttribute("idx");}}
break;case"radio":var radioNode=document.createElement("div");radioNode.setAttribute("idx",index);radioNode.innerHTML='<input type="radio" name="group1" class="Radio" value="radio'+index+'" /><span style="padding : 0 5px 0 19px; display:block; line-height:12px">Radio '+index+'</span><div style="clear:left"></div>';radioNode.className="RadioButton";if(currentIndex<=radioContainer.length){eXo.ecm.UIFormGeneratorPortlet.insertAfter(radioContainer[currentIndex-1],radioNode);}
var rContainer=DOMUtil.findDescendantsByClass(containerNode,'div','RadioButton');var arrInputTexts=DOMUtil.findDescendantsByClass(brotherNode,'input','InputText');eXo.ecm.UIFormGeneratorPortlet.updateNodeIndex(rContainer,index);for(var i=0;i<rContainer.length;i++){if(arrInputTexts[i].value==""||arrInputTexts[i].value.length<1){rContainer[i].firstChild.value="radio"+rContainer[i].getAttribute("idx");rContainer[i].firstChild.nextSibling.innerHTML="Radio "+rContainer[i].getAttribute("idx");}}
break;case"checkbox":var checkboxNode=document.createElement("div");checkboxNode.innerHTML='<input type="checkbox" class="CheckBox" value="checkbox'+index+'" /><span style="padding : 0 5px 0 19px; display:block; line-height:12px">Checkbox '+index+'</span><div style="clear:left"></div>';checkboxNode.className="CheckboxButton";componentNode.appendChild(checkboxNode);break;}};UIFormGeneratorPortlet.prototype.removeOption=function(obj){var DOMUtil=eXo.core.DOMUtil;var ancestorNode=DOMUtil.findAncestorByClass(obj,'BoxContentBoxStyle');var containerNode=DOMUtil.findFirstDescendantByClass(ancestorNode,'div','TopContentBoxStyle');var componentNode=DOMUtil.findFirstDescendantByClass(containerNode,'td','FieldComponent');var selectNode=DOMUtil.findFirstDescendantByClass(componentNode,'select','SelectBox');var rowNode=DOMUtil.findAncestorByTagName(obj,'tr');var brotherNode=DOMUtil.findFirstDescendantByClass(rowNode,'td','FieldComponent');var radioContainer=DOMUtil.findDescendantsByClass(containerNode,'div','RadioButton');var upperIconNode=DOMUtil.findAncestorByClass(obj,'DivIcon');var brotherChildNodes=DOMUtil.findDescendantsByClass(brotherNode,'div','DivIcon');var currentIndex=upperIconNode.getAttribute("idx");var index=parseInt(currentIndex)+1;for(var j=0;j<brotherChildNodes.length;j++){if(brotherChildNodes[j].getAttribute("idx")==currentIndex){brotherChildNodes[j].parentNode.removeChild(brotherChildNodes[j]);break;}}
switch(ancestorNode.getAttribute("typeComponent")){case"select":if(selectNode.length>currentIndex-1){selectNode[0].parentNode.removeChild(selectNode[currentIndex-1]);}
eXo.ecm.UIFormGeneratorPortlet.updateNodeIndex(selectNode,0);var arrInputTexts=DOMUtil.findDescendantsByClass(brotherNode,'input','InputText');for(var i=0;i<arrInputTexts.length;i++){if(arrInputTexts[i].value==""||arrInputTexts[i].value.length<1){selectNode[i].value="Option"+selectNode[i].getAttribute("idx");selectNode[i].text="Option"+selectNode[i].getAttribute("idx");}}
break;case"radio":if(radioContainer.length>currentIndex-1){radioContainer[0].parentNode.removeChild(radioContainer[currentIndex-1]);}
var rContainer=DOMUtil.findDescendantsByClass(containerNode,'div','RadioButton');var arrInputTexts=DOMUtil.findDescendantsByClass(brotherNode,'input','InputText');eXo.ecm.UIFormGeneratorPortlet.updateNodeIndex(rContainer,0);for(var i=0;i<rContainer.length;i++){if(arrInputTexts[i].value==""||arrInputTexts[i].value.length<1){rContainer[i].firstChild.value="Radio "+rContainer[i].getAttribute("idx");rContainer[i].firstChild.nextSibling.innerHTML="Radio "+rContainer[i].getAttribute("idx");}}
break;}
var arrayInputTexts=DOMUtil.findDescendantsByClass(brotherNode,'input','InputText');eXo.ecm.UIFormGeneratorPortlet.updateNodeIndex(arrayInputTexts,0);var arrayDivIcons=DOMUtil.findDescendantsByClass(brotherNode,'div','DivIcon');eXo.ecm.UIFormGeneratorPortlet.updateNodeIndex(arrayDivIcons,0);};UIFormGeneratorPortlet.prototype.getStringJsonObject=function(){var DOMUtil=eXo.core.DOMUtil;var root=document.getElementById('MiddleCenterViewBoxStyle');var boxsContent=DOMUtil.findDescendantsByClass(root,'div','BoxContentBoxStyle');var strJsonObject='{ "inputs" : [';for(var i=0;i<boxsContent.length;i++){strJsonObject+=eXo.ecm.UIFormGeneratorPortlet.getProperties(boxsContent[i]);if(i!=(boxsContent.length-1)){strJsonObject+=',';}}
strJsonObject+="]}";return strJsonObject;};UIFormGeneratorPortlet.prototype.getProperties=function(comp){var DOMUtil=eXo.core.DOMUtil;var strObject='{';strObject+='"type":"'+comp.getAttribute("typeComponent")+'",';var topContent=DOMUtil.findFirstDescendantByClass(comp,'div','TopContentBoxStyle');var fieldLabel=DOMUtil.findFirstDescendantByClass(topContent,'td','FieldLabel');var defaultValue=fieldLabel.getAttribute('value');var nameComp='';if(fieldLabel&&fieldLabel.innerHTML!=''){nameComp=fieldLabel.innerHTML;}else{nameComp=defaultValue;}
strObject+='"name":"'+encodeURIComponent(nameComp)+'",';switch(comp.getAttribute("typeComponent")){case"input":inputNode=DOMUtil.findFirstDescendantByClass(topContent,'input',"InputText");var width=inputNode.offsetWidth;var mandatory=fieldLabel.getAttribute('mandatory');var height=inputNode.offsetHeight;strObject+='"value":"'+inputNode.value+'","width":'+width+',"mandatory":'+mandatory+',"height":'+height+',';break;case"label":var labelNode=DOMUtil.findFirstDescendantByClass(topContent,'td','FieldComponent');strObject+='"value":"'+labelNode.innerHTML+'","width":0,"mandatory":'+mandatory+',"height":0,';break;case"textarea":var textareaNode=DOMUtil.findFirstDescendantByClass(topContent,'textarea',"Textarea");var width=textareaNode.offsetWidth;var mandatory=fieldLabel.getAttribute('mandatory');var height=textareaNode.offsetHeight;strObject+='"value":"'+textareaNode.value+'","width":'+width+',"mandatory":'+mandatory+',"height":'+height+',';break;case"wysiwyg":var midContent=DOMUtil.findNextElementByTagName(topContent,"div");var selectNode=DOMUtil.findFirstDescendantByClass(midContent,'select',"SelectBox");strObject+='"value":"Type content here...","width":0,"mandatory":'+mandatory+',"height":0,"advanced":"'+selectNode.value+'",';break;case"select":var selectNode=DOMUtil.findFirstDescendantByClass(topContent,'select',"SelectBox");var width=selectNode.offsetWidth;var mandatory=fieldLabel.getAttribute('mandatory');var height=selectNode.offsetHeight;strObject+='"value":"'+selectNode.value+'","width":'+width+',"mandatory":'+mandatory+',"height":'+height+',';var options=DOMUtil.getChildrenByTagName(selectNode,'option');var advOptions='';strObject+='"advanced":"';for(var i=0;i<options.length;i++){strObject+=options[i].value;if(i!=(options.length-1)){strObject+=",";}}
strObject+='",';break;case"upload":strObject+='"value":"null","width":0,"mandatory":'+mandatory+',"height":0,';break;case"radio":var radioButtonList=DOMUtil.findDescendantsByClass(topContent,'div','RadioButton');var strAdvanced="";for(var i=0;i<radioButtonList.length;i++){var radioButton=radioButtonList[i];var inputList=DOMUtil.getChildrenByTagName(radioButton,'input');for(var j=0;j<inputList.length;j++){var radioLabel=DOMUtil.findNextElementByTagName(inputList[j],'span');if((radioLabel!=null)&&(radioLabel.innerHTML.length>0)){strAdvanced+=radioLabel.innerHTML+",";}else{strAdvanced+=inputList[j].value+",";}}}
var mandatory=fieldLabel.getAttribute('mandatory');strObject+='"mandatory":'+mandatory+',';strObject+='"advanced":"'+strAdvanced+'",';break;case"checkbox":var checkboxButtonList=DOMUtil.findDescendantsByClass(topContent,'div','CheckboxButton');var strAdvanced="";for(var i=0;i<checkboxButtonList.length;i++){var checkboxButton=checkboxButtonList[i];var inputList=DOMUtil.getChildrenByTagName(checkboxButton,'input');for(var j=0;j<inputList.length;j++){var checkboxLabel=DOMUtil.findNextElementByTagName(inputList[j],'span');if((checkboxLabel!=null)&&(checkboxLabel.innerHTML.length>0)){strAdvanced+=checkboxLabel.innerHTML+",";}else{strAdvanced+=inputList[j].value+",";}}}
var mandatory=fieldLabel.getAttribute('mandatory');strObject+='"mandatory":'+mandatory+',';strObject+='"advanced":"'+strAdvanced+'",';break;}
strObject+='"guideline":"'+fieldLabel.getAttribute('desc')+'"';strObject+="}";return strObject;};UIFormGeneratorPortlet.prototype.submitForm=function(){var strJsonObject=eXo.ecm.UIFormGeneratorPortlet.getStringJsonObject();var inputHidden=document.getElementById("UIFormGeneratorJsonObjectStringInput");if(inputHidden)inputHidden.value=""+strJsonObject;};eXo.ecm.UIFormGeneratorPortlet=new UIFormGeneratorPortlet();function ContentListViewer(){}
ContentListViewer.prototype.initCheckedRadio=function(id){eXo.core.Browser.chkRadioId=id;};ContentListViewer.prototype.initCondition=function(formid){var formElement=document.getElementById(formid);var radioboxes=[];for(var i=0;i<formElement.elements.length;i++){if(formElement.elements[i].type=="radio")radioboxes.push(formElement.elements[i]);}
var i=radioboxes.length;while(i--){radioboxes[i].onclick=eXo.ecm.CLV.chooseCondition;}
if(eXo.core.Browser.chkRadioId&&eXo.core.Browser.chkRadioId!="null"){var selectedRadio=document.getElementById(eXo.core.Browser.chkRadioId);}else{var selectedRadio=radioboxes[0];}
var itemSelectedContainer=eXo.core.DOMUtil.findAncestorByClass(selectedRadio,"ContentSearchForm");var itemContainers=eXo.core.DOMUtil.findDescendantsByClass(selectedRadio.form,"div","ContentSearchForm");for(var i=0;i<itemContainers.length;i++){eXo.ecm.CLV.setCondition(itemContainers[i],true);}
eXo.ecm.CLV.enableCondition(itemSelectedContainer);};ContentListViewer.prototype.chooseCondition=function(){var me=this;var hiddenField=eXo.core.DOMUtil.findFirstDescendantByClass(me.form,"input","hidden");hiddenField.value=me.id;var itemSelectedContainer=eXo.core.DOMUtil.findAncestorByClass(me,"ContentSearchForm");var itemContainers=eXo.core.DOMUtil.findDescendantsByClass(me.form,"div","ContentSearchForm");for(var i=0;i<itemContainers.length;i++){eXo.ecm.CLV.setCondition(itemContainers[i],true);}
eXo.ecm.CLV.enableCondition(itemSelectedContainer);eXo.ecm.lastCondition=itemSelectedContainer;};ContentListViewer.prototype.enableCondition=function(itemContainer){if(eXo.ecm.lastCondition)eXo.ecm.CLV.setCondition(eXo.ecm.lastCondition,true);eXo.ecm.CLV.setCondition(itemContainer,false);};ContentListViewer.prototype.setCondition=function(itemContainer,state){var domUtil=eXo.core.DOMUtil;var action=domUtil.findDescendantsByTagName(itemContainer,"img");if(action&&action.length>0){for(var i=0;i<action.length;i++){if(state){action[i].style.visibility="hidden";}else{action[i].style.visibility="";}}}
var action=domUtil.findDescendantsByTagName(itemContainer,"input");if(action&&(action.length>0)){for(i=0;i<action.length;i++){if(action[i].type!="radio")action[i].disabled=state;}}
var action=domUtil.findDescendantsByTagName(itemContainer,"select");if(action&&(action.length>0)){for(i=0;i<action.length;i++){action[i].disabled=state;}}};ContentListViewer.prototype.setHiddenValue=function(){var inputHidden=document.getElementById("checkedRadioId");if(eXo.core.Browser.chkRadioId=="null"){inputHidden.value="name";document.getElementById("name").checked=true;}else{inputHidden.value=eXo.core.Browser.chkRadioId;document.getElementById(eXo.core.Browser.chkRadioId).checked=true;}};ContentListViewer.prototype.checkModeViewer=function(){var formObj=document.getElementById("UICLVConfig");var OrderOptions=eXo.core.DOMUtil.findDescendantsByClass(formObj,"tr","OrderBlock");var viewerModes=eXo.core.DOMUtil.findDescendantsByTagName(formObj,"input");for(var i=0;i<viewerModes.length;i++){if(viewerModes[i].getAttribute("name")=="ViewerMode"){if(viewerModes[i].value=="AutoViewerMode"){viewerModes[i].onclick=function(){for(var j=0;j<OrderOptions.length;j++){OrderOptions[j].style.display="";}};}else if(viewerModes[i].value=="ManualViewerMode"){viewerModes[i].onclick=function(){for(var k=0;k<OrderOptions.length;k++){OrderOptions[k].style.display="none";}};}}}};ContentListViewer.prototype.checkContextualFolderInput=function(){var formObj=document.getElementById("UICLVConfig");var tdContextualFolder=eXo.core.DOMUtil.findDescendantsByClass(formObj,"td","ContextualRadio")[0];var inputs=eXo.core.DOMUtil.getChildrenByTagName(tdContextualFolder,"input");var enableInput=inputs[0];var disableInput=inputs[1];var trContextual=eXo.core.DOMUtil.findAncestorByTagName(tdContextualFolder,"tr");var trClv=eXo.core.DOMUtil.findNextElementByTagName(trContextual,"tr");var clvInput=eXo.core.DOMUtil.findDescendantsByTagName(trClv,"input")[0];enableInput.setAttribute("onmouseup","eXo.ecm.CLV.enableClvInput(this)");disableInput.setAttribute("onmouseup","eXo.ecm.CLV.disableClvInput(this)");if(enableInput.checked){clvInput.removeAttribute('readonly');}else{clvInput.setAttribute('readonly','');}};ContentListViewer.prototype.enableClvInput=function(obj){var trContextual=eXo.core.DOMUtil.findAncestorByTagName(obj,"tr");var trClv=eXo.core.DOMUtil.findNextElementByTagName(trContextual,"tr");var clvInput=eXo.core.DOMUtil.findDescendantsByTagName(trClv,"input")[0];clvInput.removeAttribute('readonly');};ContentListViewer.prototype.disableClvInput=function(obj){var trContextual=eXo.core.DOMUtil.findAncestorByTagName(obj,"tr");var trClv=eXo.core.DOMUtil.findNextElementByTagName(trContextual,"tr");var clvInput=eXo.core.DOMUtil.findDescendantsByTagName(trClv,"input")[0];clvInput.setAttribute('readonly','');};ContentListViewer.prototype.addURL=function(aDiv){var strHref=aDiv.getAttribute("href");var fIdx=strHref.indexOf("&backto");if(fIdx<0)fIdx=strHref.indexOf("?backto");if(fIdx<0)return;var lIdx=strHref.indexOf("&",fIdx+1);var lString="";var fString=strHref;if(lIdx>0){lString=strHref.substr(lIdx);fString=strHref.substr(0,lIdx);}
strHref=fString+escape(location.search)+lString;aDiv.setAttribute("href",strHref);}
eXo.ecm.CLV=new ContentListViewer();function WCMFCKEditor(){}
WCMFCKEditor.prototype.insertCSSFromTextArea2FCK=function(Instance,ContentCSS){if(!Instance)return;var eContentCSS=document.getElementById(ContentCSS);var sContentCSSId=ContentCSS+"_Inline";var count=1;eContentCSS.onblur=updateStyle;function updateStyle(){var sValue=eContentCSS.value;if(!sValue)return;var iDoc=FCKeditorAPI.Instances[Instance].EditorWindow.document;var eHead=iDoc.getElementsByTagName("head")[0];var eStyle=iDoc.getElementById(sContentCSSId);if(eStyle){eHead.removeChild(eStyle);}
eStyle=iDoc.createElement("style");eStyle.setAttribute("type","text/css");eStyle.setAttribute("id",sContentCSSId);if(eXo.core.Browser.isFF()){eStyle.innerHTML=sValue;}else{eStyle.styleSheet.cssText=sValue;}
eHead.appendChild(eStyle);};(function checkFCKEditorAPI(){if(count<=5){try{updateStyle();if(updateStyle.time){clearTimeout(updateStyle.time);updateStyle.time=null;}}catch(e){count++;updateStyle.time=setTimeout(checkFCKEditorAPI,500);}}})();};eXo.ecm.WCMFCKEditor=new WCMFCKEditor();function CKEditor(){}
CKEditor.prototype.insertCSS=function(Instance,ContentCSS){if(!Instance)return;var eContentCSS=document.getElementById(ContentCSS);var sContentCSSId=ContentCSS+"_Inline";var count=1;eContentCSS.onblur=updateStyle;updateStyle;function updateStyle(){var sValue=eContentCSS.value;if(!sValue)return;var iDoc=CKEDITOR.instances[Instance].document.$;var eHead=iDoc.getElementsByTagName("head")[0];var eStyle=iDoc.getElementById(sContentCSSId);if(eStyle){eHead.removeChild(eStyle);}
eStyle=iDoc.createElement("style");eStyle.setAttribute("type","text/css");eStyle.setAttribute("id",sContentCSSId);if(eXo.core.Browser.isIE6()||eXo.core.Browser.isIE7()){eStyle.styleSheet.cssText=sValue;}else{eStyle.innerHTML=sValue;}
eHead.appendChild(eStyle);};(function checkCKEditorAPI(){if(count<=5){try{updateStyle();if(updateStyle.time){clearTimeout(updateStyle.time);updateStyle.time=null;}}catch(e){count++;updateStyle.time=setTimeout(checkCKEditorAPI,500);}}})();};eXo.ecm.CKEditor=new CKEditor();(function(a,b){function cu(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cr(a){if(!cg[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){ch||(ch=c.createElement("iframe"),ch.frameBorder=ch.width=ch.height=0),b.appendChild(ch);if(!ci||!ch.createElement)ci=(ch.contentWindow||ch.contentDocument).document,ci.write((c.compatMode==="CSS1Compat"?"<!doctype html>":"")+"<html><body>"),ci.close();d=ci.createElement(a),ci.body.appendChild(d),e=f.css(d,"display"),b.removeChild(ch)}cg[a]=e}return cg[a]}function cq(a,b){var c={};f.each(cm.concat.apply([],cm.slice(0,b)),function(){c[this]=a});return c}function cp(){cn=b}function co(){setTimeout(cp,0);return cn=f.now()}function cf(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ce(){try{return new a.XMLHttpRequest}catch(b){}}function b$(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g<i;g++){if(g===1)for(h in a.converters)typeof h=="string"&&(e[h.toLowerCase()]=a.converters[h]);l=k,k=d[g];if(k==="*")k=l;else if(l!=="*"&&l!==k){m=l+" "+k,n=e[m]||e["* "+k];if(!n){p=b;for(o in e){j=o.split(" ");if(j[0]===l||j[0]==="*"){p=e[j[1]+" "+k];if(p){o=e[o],o===!0?n=p:p===!0&&(n=o);break}}}}!n&&!p&&f.error("No conversion from "+m.replace(" "," to ")),n!==!0&&(c=n?n(c):p(o(c)))}}return c}function bZ(a,c,d){var e=a.contents,f=a.dataTypes,g=a.responseFields,h,i,j,k;for(i in g)i in d&&(c[g[i]]=d[i]);while(f[0]==="*")f.shift(),h===b&&(h=a.mimeType||c.getResponseHeader("content-type"));if(h)for(i in e)if(e[i]&&e[i].test(h)){f.unshift(i);break}if(f[0]in d)j=f[0];else{for(i in d){if(!f[0]||a.converters[i+" "+f[0]]){j=i;break}k||(k=i)}j=j||k}if(j){j!==f[0]&&f.unshift(j);return d[j]}}function bY(a,b,c,d){if(f.isArray(b))f.each(b,function(b,e){c||bA.test(a)?d(a,e):bY(a+"["+(typeof e=="object"||f.isArray(e)?b:"")+"]",e,c,d)});else if(!c&&b!=null&&typeof b=="object")for(var e in b)bY(a+"["+e+"]",b[e],c,d);else d(a,b)}function bX(a,c){var d,e,g=f.ajaxSettings.flatOptions||{};for(d in c)c[d]!==b&&((g[d]?a:e||(e={}))[d]=c[d]);e&&f.extend(!0,a,e)}function bW(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h=a[f],i=0,j=h?h.length:0,k=a===bP,l;for(;i<j&&(k||!l);i++)l=h[i](c,d,e),typeof l=="string"&&(!k||g[l]?l=b:(c.dataTypes.unshift(l),l=bW(a,c,d,e,l,g)));(k||!l)&&!g["*"]&&(l=bW(a,c,d,e,"*",g));return l}function bV(a){return function(b,c){typeof b!="string"&&(c=b,b="*");if(f.isFunction(c)){var d=b.toLowerCase().split(bL),e=0,g=d.length,h,i,j;for(;e<g;e++)h=d[e],j=/^\+/.test(h),j&&(h=h.substr(1)||"*"),i=a[h]=a[h]||[],i[j?"unshift":"push"](c)}}}function by(a,b,c){var d=b==="width"?a.offsetWidth:a.offsetHeight,e=b==="width"?bt:bu;if(d>0){c!=="border"&&f.each(e,function(){c||(d-=parseFloat(f.css(a,"padding"+this))||0),c==="margin"?d+=parseFloat(f.css(a,c+this))||0:d-=parseFloat(f.css(a,"border"+this+"Width"))||0});return d+"px"}d=bv(a,b,b);if(d<0||d==null)d=a.style[b]||0;d=parseFloat(d)||0,c&&f.each(e,function(){d+=parseFloat(f.css(a,"padding"+this))||0,c!=="padding"&&(d+=parseFloat(f.css(a,"border"+this+"Width"))||0),c==="margin"&&(d+=parseFloat(f.css(a,c+this))||0)});return d+"px"}function bl(a,b){b.src?f.ajax({url:b.src,async:!1,dataType:"script"}):f.globalEval((b.text||b.textContent||b.innerHTML||"").replace(bd,"/*$0*/")),b.parentNode&&b.parentNode.removeChild(b)}function bk(a){f.nodeName(a,"input")?bj(a):"getElementsByTagName"in a&&f.grep(a.getElementsByTagName("input"),bj)}function bj(a){if(a.type==="checkbox"||a.type==="radio")a.defaultChecked=a.checked}function bi(a){return"getElementsByTagName"in a?a.getElementsByTagName("*"):"querySelectorAll"in a?a.querySelectorAll("*"):[]}function bh(a,b){var c;if(b.nodeType===1){b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase();if(c==="object")b.outerHTML=a.outerHTML;else if(c!=="input"||a.type!=="checkbox"&&a.type!=="radio"){if(c==="option")b.selected=a.defaultSelected;else if(c==="input"||c==="textarea")b.defaultValue=a.defaultValue}else a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value);b.removeAttribute(f.expando)}}function bg(a,b){if(b.nodeType===1&&!!f.hasData(a)){var c=f.expando,d=f.data(a),e=f.data(b,d);if(d=d[c]){var g=d.events;e=e[c]=f.extend({},d);if(g){delete e.handle,e.events={};for(var h in g)for(var i=0,j=g[h].length;i<j;i++)f.event.add(b,h+(g[h][i].namespace?".":"")+g[h][i].namespace,g[h][i],g[h][i].data)}}}}function bf(a,b){return f.nodeName(a,"table")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function V(a,b,c){b=b||0;if(f.isFunction(b))return f.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return f.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=f.grep(a,function(a){return a.nodeType===1});if(Q.test(b))return f.filter(b,d,!c);b=f.filter(b,d)}return f.grep(a,function(a,d){return f.inArray(a,b)>=0===c})}function U(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function M(a,b){return(a&&a!=="*"?a+".":"")+b.replace(y,"`").replace(z,"&")}function L(a){var b,c,d,e,g,h,i,j,k,l,m,n,o,p=[],q=[],r=f._data(this,"events");if(!(a.liveFired===this||!r||!r.live||a.target.disabled||a.button&&a.type==="click")){a.namespace&&(n=new RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)")),a.liveFired=this;var s=r.live.slice(0);for(i=0;i<s.length;i++)g=s[i],g.origType.replace(w,"")===a.type?q.push(g.selector):s.splice(i--,1);e=f(a.target).closest(q,a.currentTarget);for(j=0,k=e.length;j<k;j++){m=e[j];for(i=0;i<s.length;i++){g=s[i];if(m.selector===g.selector&&(!n||n.test(g.namespace))&&!m.elem.disabled){h=m.elem,d=null;if(g.preType==="mouseenter"||g.preType==="mouseleave")a.type=g.preType,d=f(a.relatedTarget).closest(g.selector)[0],d&&f.contains(h,d)&&(d=h);(!d||d!==h)&&p.push({elem:h,handleObj:g,level:m.level})}}}for(j=0,k=p.length;j<k;j++){e=p[j];if(c&&e.level>c)break;a.currentTarget=e.elem,a.data=e.handleObj.data,a.handleObj=e.handleObj,o=e.handleObj.origHandler.apply(e.elem,arguments);if(o===!1||a.isPropagationStopped()){c=e.level,o===!1&&(b=!1);if(a.isImmediatePropagationStopped())break}}return b}}function J(a,c,d){var e=f.extend({},d[0]);e.type=a,e.originalEvent={},e.liveFired=b,f.event.handle.call(c,e),e.isDefaultPrevented()&&d[0].preventDefault()}function D(){return!0}function C(){return!1}function m(a,c,d){var e=c+"defer",g=c+"queue",h=c+"mark",i=f.data(a,e,b,!0);i&&(d==="queue"||!f.data(a,g,b,!0))&&(d==="mark"||!f.data(a,h,b,!0))&&setTimeout(function(){!f.data(a,g,b,!0)&&!f.data(a,h,b,!0)&&(f.removeData(a,e,!0),i.resolve())},0)}function l(a){for(var b in a)if(b!=="toJSON")return!1;return!0}function k(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(j,"$1-$2").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNaN(d)?i.test(d)?f.parseJSON(d):d:parseFloat(d)}catch(g){}f.data(a,c,d)}else d=b}return d}var c=a.document,d=a.navigator,e=a.location,f=function(){function K(){if(!e.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(K,1);return}e.ready()}}var e=function(a,b){return new e.fn.init(a,b,h)},f=a.jQuery,g=a.$,h,i=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/\d/,n=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,o=/^[\],:{}\s]*$/,p=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,q=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,r=/(?:^|:|,)(?:\s*\[)+/g,s=/(webkit)[ \/]([\w.]+)/,t=/(opera)(?:.*version)?[ \/]([\w.]+)/,u=/(msie) ([\w.]+)/,v=/(mozilla)(?:.*? rv:([\w.]+))?/,w=/-([a-z]|[0-9])/ig,x=/^-ms-/,y=function(a,b){return(b+"").toUpperCase()},z=d.userAgent,A,B,C,D=Object.prototype.toString,E=Object.prototype.hasOwnProperty,F=Array.prototype.push,G=Array.prototype.slice,H=String.prototype.trim,I=Array.prototype.indexOf,J={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=n.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.6.3",length:0,size:function(){return this.length},toArray:function(){return G.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?F.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),B.done(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(G.apply(this,arguments),"slice",G.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:F,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j<k;j++)if((a=arguments[j])!=null)for(c in a){d=i[c],f=a[c];if(i===f)continue;l&&f&&(e.isPlainObject(f)||(g=e.isArray(f)))?(g?(g=!1,h=d&&e.isArray(d)?d:[]):h=d&&e.isPlainObject(d)?d:{},i[c]=e.extend(l,h,f)):f!==b&&(i[c]=f)}return i},e.extend({noConflict:function(b){a.$===e&&(a.$=g),b&&a.jQuery===e&&(a.jQuery=f);return e},isReady:!1,readyWait:1,holdReady:function(a){a?e.readyWait++:e.ready(!0)},ready:function(a){if(a===!0&&!--e.readyWait||a!==!0&&!e.isReady){if(!c.body)return setTimeout(e.ready,1);e.isReady=!0;if(a!==!0&&--e.readyWait>0)return;B.resolveWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").unbind("ready")}},bindReady:function(){if(!B){B=e._Deferred();if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",C,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",C),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&K()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNaN:function(a){return a==null||!m.test(a)||isNaN(a)},type:function(a){return a==null?String(a):J[D.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!E.call(a,"constructor")&&!E.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||E.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw a},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(o.test(b.replace(p,"@").replace(q,"]").replace(r,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(x,"ms-").replace(w,y)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g<h;)if(c.apply(a[g++],d)===!1)break}else if(i){for(f in a)if(c.call(a[f],f,a[f])===!1)break}else for(;g<h;)if(c.call(a[g],g,a[g++])===!1)break;return a},trim:H?function(a){return a==null?"":H.call(a)}:function(a){return a==null?"":(a+"").replace(k,"").replace(l,"")},makeArray:function(a,b){var c=b||[];if(a!=null){var d=e.type(a);a.length==null||d==="string"||d==="function"||d==="regexp"||e.isWindow(a)?F.call(c,a):e.merge(c,a)}return c},inArray:function(a,b){if(!b)return-1;if(I)return I.call(b,a);for(var c=0,d=b.length;c<d;c++)if(b[c]===a)return c;return-1},merge:function(a,c){var d=a.length,e=0;if(typeof c.length=="number")for(var f=c.length;e<f;e++)a[d++]=c[e];else while(c[e]!==b)a[d++]=c[e++];a.length=d;return a},grep:function(a,b,c){var d=[],e;c=!!c;for(var f=0,g=a.length;f<g;f++)e=!!b(a[f],f),c!==e&&d.push(a[f]);return d},map:function(a,c,d){var f,g,h=[],i=0,j=a.length,k=a instanceof e||j!==b&&typeof j=="number"&&(j>0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i<j;i++)f=c(a[i],i,d),f!=null&&(h[h.length]=f);else for(g in a)f=c(a[g],g,d),f!=null&&(h[h.length]=f);return h.concat.apply([],h)},guid:1,proxy:function(a,c){if(typeof c=="string"){var d=a[c];c=a,a=d}if(!e.isFunction(a))return b;var f=G.call(arguments,2),g=function(){return a.apply(c,f.concat(G.call(arguments)))};g.guid=a.guid=a.guid||g.guid||e.guid++;return g},access:function(a,c,d,f,g,h){var i=a.length;if(typeof c=="object"){for(var j in c)e.access(a,j,c[j],f,g,d);return a}if(d!==b){f=!h&&f&&e.isFunction(d);for(var k=0;k<i;k++)g(a[k],c,f?d.call(a[k],k,g(a[k],c)):d,h);return a}return i?g(a[0],c):b},now:function(){return(new Date).getTime()},uaMatch:function(a){a=a.toLowerCase();var b=s.exec(a)||t.exec(a)||u.exec(a)||a.indexOf("compatible")<0&&v.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},sub:function(){function a(b,c){return new a.fn.init(b,c)}e.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function(d,f){f&&f instanceof e&&!(f instanceof a)&&(f=a(f));return e.fn.init.call(this,d,f,b)},a.fn.init.prototype=a.fn;var b=a(c);return a},browser:{}}),e.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){J["[object "+b+"]"]=b.toLowerCase()}),A=e.uaMatch(z),A.browser&&(e.browser[A.browser]=!0,e.browser.version=A.version),e.browser.webkit&&(e.browser.safari=!0),j.test(" ")&&(k=/^[\s\xA0]+/,l=/[\s\xA0]+$/),h=e(c),c.addEventListener?C=function(){c.removeEventListener("DOMContentLoaded",C,!1),e.ready()}:c.attachEvent&&(C=function(){c.readyState==="complete"&&(c.detachEvent("onreadystatechange",C),e.ready())});return e}(),g="done fail isResolved isRejected promise then always pipe".split(" "),h=[].slice;f.extend({_Deferred:function(){var a=[],b,c,d,e={done:function(){if(!d){var c=arguments,g,h,i,j,k;b&&(k=b,b=0);for(g=0,h=c.length;g<h;g++)i=c[g],j=f.type(i),j==="array"?e.done.apply(e,i):j==="function"&&a.push(i);k&&e.resolveWith(k[0],k[1])}return this},resolveWith:function(e,f){if(!d&&!b&&!c){f=f||[],c=1;try{while(a[0])a.shift().apply(e,f)}finally{b=[e,f],c=0}}return this},resolve:function(){e.resolveWith(this,arguments);return this},isResolved:function(){return!!c||!!b},cancel:function(){d=1,a=[];return this}};return e},Deferred:function(a){var b=f._Deferred(),c=f._Deferred(),d;f.extend(b,{then:function(a,c){b.done(a).fail(c);return this},always:function(){return b.done.apply(b,arguments).fail.apply(this,arguments)},fail:c.done,rejectWith:c.resolveWith,reject:c.resolve,isRejected:c.isResolved,pipe:function(a,c){return f.Deferred(function(d){f.each({done:[a,"resolve"],fail:[c,"reject"]},function(a,c){var e=c[0],g=c[1],h;f.isFunction(e)?b[a](function(){h=e.apply(this,arguments),h&&f.isFunction(h.promise)?h.promise().then(d.resolve,d.reject):d[g+"With"](this===b?d:this,[h])}):b[a](d[g])})}).promise()},promise:function(a){if(a==null){if(d)return d;d=a={}}var c=g.length;while(c--)a[g[c]]=b[g[c]];return a}}),b.done(c.cancel).fail(b.cancel),delete b.cancel,a&&a.call(b,b);return b},when:function(a){function i(a){return function(c){b[a]=arguments.length>1?h.call(arguments,0):c,--e||g.resolveWith(g,h.call(b,0))}}var b=arguments,c=0,d=b.length,e=d,g=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred();if(d>1){for(;c<d;c++)b[c]&&f.isFunction(b[c].promise)?b[c].promise().then(i(c),g.reject):--e;e||g.resolveWith(g,b)}else g!==a&&g.resolveWith(g,d?[a]:[]);return g.promise()}}),f.support=function(){var a=c.createElement("div"),b=c.documentElement,d,e,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;a.setAttribute("className","t"),a.innerHTML="   <link><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type=checkbox>",d=a.getElementsByTagName("*"),e=a.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=a.getElementsByTagName("input")[0],k={leadingWhitespace:a.firstChild.nodeType===3,tbody:!a.getElementsByTagName("tbody").length,htmlSerialize:!!a.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55$/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:a.className!=="t",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,k.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,k.optDisabled=!h.disabled;try{delete a.test}catch(v){k.deleteExpando=!1}!a.addEventListener&&a.attachEvent&&a.fireEvent&&(a.attachEvent("onclick",function(){k.noCloneEvent=!1}),a.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),k.radioValue=i.value==="t",i.setAttribute("checked","checked"),a.appendChild(i),l=c.createDocumentFragment(),l.appendChild(a.firstChild),k.checkClone=l.cloneNode(!0).cloneNode(!0).lastChild.checked,a.innerHTML="",a.style.width=a.style.paddingLeft="1px",m=c.getElementsByTagName("body")[0],o=c.createElement(m?"div":"body"),p={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},m&&f.extend(p,{position:"absolute",left:"-1000px",top:"-1000px"});for(t in p)o.style[t]=p[t];o.appendChild(a),n=m||b,n.insertBefore(o,n.firstChild),k.appendChecked=i.checked,k.boxModel=a.offsetWidth===2,"zoom"in a.style&&(a.style.display="inline",a.style.zoom=1,k.inlineBlockNeedsLayout=a.offsetWidth===2,a.style.display="",a.innerHTML="<div style='width:4px;'></div>",k.shrinkWrapBlocks=a.offsetWidth!==2),a.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>",q=a.getElementsByTagName("td"),u=q[0].offsetHeight===0,q[0].style.display="",q[1].style.display="none",k.reliableHiddenOffsets=u&&q[0].offsetHeight===0,a.innerHTML="",c.defaultView&&c.defaultView.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",a.appendChild(j),k.reliableMarginRight=(parseInt((c.defaultView.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0),o.innerHTML="",n.removeChild(o);if(a.attachEvent)for(t in{submit:1,change:1,focusin:1})s="on"+t,u=s in a,u||(a.setAttribute(s,"return;"),u=typeof a[s]=="function"),k[t+"Bubbles"]=u;o=l=g=h=m=j=a=i=null;return k}(),f.boxModel=f.support.boxModel;var i=/^(?:\{.*\}|\[.*\])$/,j=/([a-z])([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!l(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i=f.expando,j=typeof c=="string",k=a.nodeType,l=k?f.cache:a,m=k?a[f.expando]:a[f.expando]&&f.expando;if((!m||e&&m&&l[m]&&!l[m][i])&&j&&d===b)return;m||(k?a[f.expando]=m=++f.uuid:m=f.expando),l[m]||(l[m]={},k||(l[m].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?l[m][i]=f.extend(l[m][i],c):l[m]=f.extend(l[m],c);g=l[m],e&&(g[i]||(g[i]={}),g=g[i]),d!==b&&(g[f.camelCase(c)]=d);if(c==="events"&&!g[c])return g[i]&&g[i].events;j?(h=g[c],h==null&&(h=g[f.camelCase(c)])):h=g;return h}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e=f.expando,g=a.nodeType,h=g?f.cache:a,i=g?a[f.expando]:f.expando;if(!h[i])return;if(b){d=c?h[i][e]:h[i];if(d){d[b]||(b=f.camelCase(b)),delete d[b];if(!l(d))return}}if(c){delete h[i][e];if(!l(h[i]))return}var j=h[i][e];f.support.deleteExpando||!h.setInterval?delete h[i]:h[i]=null,j?(h[i]={},g||(h[i].toJSON=f.noop),h[i][e]=j):g&&(f.support.deleteExpando?delete a[f.expando]:a.removeAttribute?a.removeAttribute(f.expando):a[f.expando]=null)}},_data:function(a,b,c){return f.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=f.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),f.fn.extend({data:function(a,c){var d=null;if(typeof a=="undefined"){if(this.length){d=f.data(this[0]);if(this[0].nodeType===1){var e=this[0].attributes,g;for(var h=0,i=e.length;h<i;h++)g=e[h].name,g.indexOf("data-")===0&&(g=f.camelCase(g.substring(5)),k(this[0],g,d[g]))}}return d}if(typeof a=="object")return this.each(function(){f.data(this,a)});var j=a.split(".");j[1]=j[1]?"."+j[1]:"";if(c===b){d=this.triggerHandler("getData"+j[1]+"!",[j[0]]),d===b&&this.length&&(d=f.data(this[0],a),d=k(this[0],a,d));return d===b&&j[1]?this.data(j[0]):d}return this.each(function(){var b=f(this),d=[j[0],c];b.triggerHandler("setData"+j[1]+"!",d),f.data(this,a,c),b.triggerHandler("changeData"+j[1]+"!",d)})},removeData:function(a){return this.each(function(){f.removeData(this,a)})}}),f.extend({_mark:function(a,c){a&&(c=(c||"fx")+"mark",f.data(a,c,(f.data(a,c,b,!0)||0)+1,!0))},_unmark:function(a,c,d){a!==!0&&(d=c,c=a,a=!1);if(c){d=d||"fx";var e=d+"mark",g=a?0:(f.data(c,e,b,!0)||1)-1;g?f.data(c,e,g,!0):(f.removeData(c,e,!0),m(c,d,"mark"))}},queue:function(a,c,d){if(a){c=(c||"fx")+"queue";var e=f.data(a,c,b,!0);d&&(!e||f.isArray(d)?e=f.data(a,c,f.makeArray(d),!0):e.push(d));return e||[]}},dequeue:function(a,b){b=b||"fx";var c=f.queue(a,b),d=c.shift(),e;d==="inprogress"&&(d=c.shift()),d&&(b==="fx"&&c.unshift("inprogress"),d.call(a,function(){f.dequeue(a,b)})),c.length||(f.removeData(a,b+"queue",!0),m(a,b,"queue"))}}),f.fn.extend({queue:function(a,c){typeof a!="string"&&(c=a,a="fx");if(c===b)return f.queue(this[0],a);return this.each(function(){var b=f.queue(this,a,c);a==="fx"&&b[0]!=="inprogress"&&f.dequeue(this,a)})},dequeue:function(a){return this.each(function(){f.dequeue(this,a)})},delay:function(a,b){a=f.fx?f.fx.speeds[a]||a:a,b=b||"fx";return this.queue(b,function(){var c=this;setTimeout(function(){f.dequeue(c,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){function m(){--h||d.resolveWith(e,[e])}typeof a!="string"&&(c=a,a=b),a=a||"fx";var d=f.Deferred(),e=this,g=e.length,h=1,i=a+"defer",j=a+"queue",k=a+"mark",l;while(g--)if(l=f.data(e[g],i,b,!0)||(f.data(e[g],j,b,!0)||f.data(e[g],k,b,!0))&&f.data(e[g],i,f._Deferred(),!0))h++,l.done(m);m();return d.promise()}});var n=/[\n\t\r]/g,o=/\s+/,p=/\r/g,q=/^(?:button|input)$/i,r=/^(?:button|input|object|select|textarea)$/i,s=/^a(?:rea)?$/i,t=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,u,v;f.fn.extend({attr:function(a,b){return f.access(this,a,b,!0,f.attr)},removeAttr:function(a){return this.each(function(){f.removeAttr(this,a)})},prop:function(a,b){return f.access(this,a,b,!0,f.prop)},removeProp:function(a){a=f.propFix[a]||a;return this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,g,h,i;if(f.isFunction(a))return this.each(function(b){f(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(o);for(c=0,d=this.length;c<d;c++){e=this[c];if(e.nodeType===1)if(!e.className&&b.length===1)e.className=a;else{g=" "+e.className+" ";for(h=0,i=b.length;h<i;h++)~g.indexOf(" "+b[h]+" ")||(g+=b[h]+" ");e.className=f.trim(g)}}}return this},removeClass:function(a){var c,d,e,g,h,i,j;if(f.isFunction(a))return this.each(function(b){f(this).removeClass(a.call(this,b,this.className))});if(a&&typeof a=="string"||a===b){c=(a||"").split(o);for(d=0,e=this.length;d<e;d++){g=this[d];if(g.nodeType===1&&g.className)if(a){h=(" "+g.className+" ").replace(n," ");for(i=0,j=c.length;i<j;i++)h=h.replace(" "+c[i]+" "," ");g.className=f.trim(h)}else g.className=""}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";if(f.isFunction(a))return this.each(function(c){f(this).toggleClass(a.call(this,c,this.className,b),b)});return this.each(function(){if(c==="string"){var e,g=0,h=f(this),i=b,j=a.split(o);while(e=j[g++])i=d?i:!h.hasClass(e),h[i?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&f._data(this,"__className__",this.className),this.className=this.className||a===!1?"":f._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ";for(var c=0,d=this.length;c<d;c++)if(this[c].nodeType===1&&(" "+this[c].className+" ").replace(n," ").indexOf(b)>-1)return!0;return!1},val:function(a){var c,d,e=this[0];if(!arguments.length){if(e){c=f.valHooks[e.nodeName.toLowerCase()]||f.valHooks[e.type];if(c&&"get"in c&&(d=c.get(e,"value"))!==b)return d;d=e.value;return typeof d=="string"?d.replace(p,""):d==null?"":d}return b}var g=f.isFunction(a);return this.each(function(d){var e=f(this),h;if(this.nodeType===1){g?h=a.call(this,d,e.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c=a.selectedIndex,d=[],e=a.options,g=a.type==="select-one";if(c<0)return null;for(var h=g?c:0,i=g?c+1:e.length;h<i;h++){var j=e[h];if(j.selected&&(f.support.optDisabled?!j.disabled:j.getAttribute("disabled")===null)&&(!j.parentNode.disabled||!f.nodeName(j.parentNode,"optgroup"))){b=f(j).val();if(g)return b;d.push(b)}}if(g&&!d.length&&e.length)return f(e[c]).val();return d},set:function(a,b){var c=f.makeArray(b);f(a).find("option").each(function(){this.selected=f.inArray(f(this).val(),c)>=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attrFix:{tabindex:"tabIndex"},attr:function(a,c,d,e){var g=a.nodeType;if(!a||g===3||g===8||g===2)return b;if(e&&c in f.attrFn)return f(a)[c](d);if(!("getAttribute"in a))return f.prop(a,c,d);var h,i,j=g!==1||!f.isXMLDoc(a);j&&(c=f.attrFix[c]||c,i=f.attrHooks[c],i||(t.test(c)?i=v:u&&(i=u)));if(d!==b){if(d===null){f.removeAttr(a,c);return b}if(i&&"set"in i&&j&&(h=i.set(a,d,c))!==b)return h;a.setAttribute(c,""+d);return d}if(i&&"get"in i&&j&&(h=i.get(a,c))!==null)return h;h=a.getAttribute(c);return h===null?b:h},removeAttr:function(a,b){var c;a.nodeType===1&&(b=f.attrFix[b]||b,f.attr(a,b,""),a.removeAttribute(b),t.test(b)&&(c=f.propFix[b]||b)in a&&(a[c]=!1))},attrHooks:{type:{set:function(a,b){if(q.test(a.nodeName)&&a.parentNode)f.error("type property can't be changed");else if(!f.support.radioValue&&b==="radio"&&f.nodeName(a,"input")){var c=a.value;a.setAttribute("type",b),c&&(a.value=c);return b}}},value:{get:function(a,b){if(u&&f.nodeName(a,"button"))return u.get(a,b);return b in a?a.value:null},set:function(a,b,c){if(u&&f.nodeName(a,"button"))return u.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e=a.nodeType;if(!a||e===3||e===8||e===2)return b;var g,h,i=e!==1||!f.isXMLDoc(a);i&&(c=f.propFix[c]||c,h=f.propHooks[c]);return d!==b?h&&"set"in h&&(g=h.set(a,d,c))!==b?g:a[c]=d:h&&"get"in h&&(g=h.get(a,c))!==null?g:a[c]},propHooks:{tabIndex:{get:function(a){var c=a.getAttributeNode("tabindex");return c&&c.specified?parseInt(c.value,10):r.test(a.nodeName)||s.test(a.nodeName)&&a.href?0:b}}}}),f.attrHooks.tabIndex=f.propHooks.tabIndex,v={get:function(a,c){var d;return f.prop(a,c)===!0||(d=a.getAttributeNode(c))&&d.nodeValue!==!1?c.toLowerCase():b},set:function(a,b,c){var d;b===!1?f.removeAttr(a,c):(d=f.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase()));return c}},f.support.getSetAttribute||(u=f.valHooks.button={get:function(a,c){var d;d=a.getAttributeNode(c);return d&&d.nodeValue!==""?d.nodeValue:b},set:function(a,b,d){var e=a.getAttributeNode(d);e||(e=c.createAttribute(d),a.setAttributeNode(e));return e.nodeValue=b+""}},f.each(["width","height"],function(a,b){f.attrHooks[b]=f.extend(f.attrHooks[b],{set:function(a,c){if(c===""){a.setAttribute(b,"auto");return c}}})})),f.support.hrefNormalized||f.each(["href","src","width","height"],function(a,c){f.attrHooks[c]=f.extend(f.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),f.support.style||(f.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}}),f.support.optSelected||(f.propHooks.selected=f.extend(f.propHooks.selected,{get:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex);return null}})),f.support.checkOn||f.each(["radio","checkbox"],function(){f.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),f.each(["radio","checkbox"],function(){f.valHooks[this]=f.extend(f.valHooks[this],{set:function(a,b){if(f.isArray(b))return a.checked=f.inArray(f(a).val(),b)>=0}})});var w=/\.(.*)$/,x=/^(?:textarea|input|select)$/i,y=/\./g,z=/ /g,A=/[^\w\s.|`]/g,B=function(a){return a.replace(A,"\\$&")};f.event={add:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){if(d===!1)d=C;else if(!d)return;var g,h;d.handler&&(g=d,d=g.handler),d.guid||(d.guid=f.guid++);var i=f._data(a);if(!i)return;var j=i.events,k=i.handle;j||(i.events=j={}),k||(i.handle=k=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.handle.apply(k.elem,arguments):b}),k.elem=a,c=c.split(" ");var l,m=0,n;while(l=c[m++]){h=g?f.extend({},g):{handler:d,data:e},l.indexOf(".")>-1?(n=l.split("."),l=n.shift(),h.namespace=n.slice(0).sort().join(".")):(n=[],h.namespace=""),h.type=l,h.guid||(h.guid=d.guid);var o=j[l],p=f.event.special[l]||{};if(!o){o=j[l]=[];if(!p.setup||p.setup.call(a,e,n,k)===!1)a.addEventListener?a.addEventListener(l,k,!1):a.attachEvent&&a.attachEvent("on"+l,k)}p.add&&(p.add.call(a,h),h.handler.guid||(h.handler.guid=d.guid)),o.push(h),f.event.global[l]=!0}a=null}},global:{},remove:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){d===!1&&(d=C);var g,h,i,j,k=0,l,m,n,o,p,q,r,s=f.hasData(a)&&f._data(a),t=s&&s.events;if(!s||!t)return;c&&c.type&&(d=c.handler,c=c.type);if(!c||typeof c=="string"&&c.charAt(0)==="."){c=c||"";for(h in t)f.event.remove(a,h+c);return}c=c.split(" ");while(h=c[k++]){r=h,q=null,l=h.indexOf(".")<0,m=[],l||(m=h.split("."),h=m.shift(),n=new RegExp("(^|\\.)"+f.map(m.slice(0).sort(),B).join("\\.(?:.*\\.)?")+"(\\.|$)")),p=t[h];if(!p)continue;if(!d){for(j=0;j<p.length;j++){q=p[j];if(l||n.test(q.namespace))f.event.remove(a,r,q.handler,j),p.splice(j--,1)}continue}o=f.event.special[h]||{};for(j=e||0;j<p.length;j++){q=p[j];if(d.guid===q.guid){if(l||n.test(q.namespace))e==null&&p.splice(j--,1),o.remove&&o.remove.call(a,q);if(e!=null)break}}if(p.length===0||e!=null&&p.length===1)(!o.teardown||o.teardown.call(a,m)===!1)&&f.removeEvent(a,h,s.handle),g=null,delete t[h]}if(f.isEmptyObject(t)){var u=s.handle;u&&(u.elem=null),delete s.events,delete s.handle,f.isEmptyObject(s)&&f.removeData(a,b,!0)}}},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,e,g){var h=c.type||c,i=[],j;h.indexOf("!")>=0&&(h=h.slice(0,-1),j=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if(!!e&&!f.event.customEvent[h]||!!f.event.global[h]){c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.exclusive=j,c.namespace=i.join("."),c.namespace_re=new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)");if(g||!e)c.preventDefault(),c.stopPropagation();if(!e){f.each(f.cache,function(){var a=f.expando,b=this[a];b&&b.events&&b.events[h]&&f.event.trigger(c,d,b.handle.elem)});return}if(e.nodeType===3||e.nodeType===8)return;c.result=b,c.target=e,d=d!=null?f.makeArray(d):[],d.unshift(c);var k=e,l=h.indexOf(":")<0?"on"+h:"";do{var m=f._data(k,"handle");c.currentTarget=k,m&&m.apply(k,d),l&&f.acceptData(k)&&k[l]&&k[l].apply(k,d)===!1&&(c.result=!1,c.preventDefault()),k=k.parentNode||k.ownerDocument||k===c.target.ownerDocument&&a}while(k&&!c.isPropagationStopped());if(!c.isDefaultPrevented()){var n,o=f.event.special[h]||{};if((!o._default||o._default.call(e.ownerDocument,c)===!1)&&(h!=="click"||!f.nodeName(e,"a"))&&f.acceptData(e)){try{l&&e[h]&&(n=e[l],n&&(e[l]=null),f.event.triggered=h,e[h]())}catch(p){}n&&(e[l]=n),f.event.triggered=b}}return c.result}},handle:function(c){c=f.event.fix(c||a.event);var d=((f._data(this,"events")||{})[c.type]||[]).slice(0),e=!c.exclusive&&!c.namespace,g=Array.prototype.slice.call(arguments,0);g[0]=c,c.currentTarget=this;for(var h=0,i=d.length;h<i;h++){var j=d[h];if(e||c.namespace_re.test(j.namespace)){c.handler=j.handler,c.data=j.data,c.handleObj=j;var k=j.handler.apply(this,g);k!==b&&(c.result=k,k===!1&&(c.preventDefault(),c.stopPropagation()));if(c.isImmediatePropagationStopped())break}}return c.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(a){if(a[f.expando])return a;var d=a;a=f.Event(d);for(var e=this.props.length,g;e;)g=this.props[--e],a[g]=d[g];a.target||(a.target=a.srcElement||c),a.target.nodeType===3&&(a.target=a.target.parentNode),!a.relatedTarget&&a.fromElement&&(a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement);if(a.pageX==null&&a.clientX!=null){var h=a.target.ownerDocument||c,i=h.documentElement,j=h.body;a.pageX=a.clientX+(i&&i.scrollLeft||j&&j.scrollLeft||0)-(i&&i.clientLeft||j&&j.clientLeft||0),a.pageY=a.clientY+(i&&i.scrollTop||j&&j.scrollTop||0)-(i&&i.clientTop||j&&j.clientTop||0)}a.which==null&&(a.charCode!=null||a.keyCode!=null)&&(a.which=a.charCode!=null?a.charCode:a.keyCode),!a.metaKey&&a.ctrlKey&&(a.metaKey=a.ctrlKey),!a.which&&a.button!==b&&(a.which=a.button&1?1:a.button&2?3:a.button&4?2:0);return a},guid:1e8,proxy:f.proxy,special:{ready:{setup:f.bindReady,teardown:f.noop},live:{add:function(a){f.event.add(this,M(a.origType,a.selector),f.extend({},a,{handler:L,guid:a.handler.guid}))},remove:function(a){f.event.remove(this,M(a.origType,a.selector),a)}},beforeunload:{setup:function(a,b,c){f.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}}},f.removeEvent=c.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){a.detachEvent&&a.detachEvent("on"+b,c)},f.Event=function(a,b){if(!this.preventDefault)return new f.Event(a,b);a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?D:C):this.type=a,b&&f.extend(this,b),this.timeStamp=f.now(),this[f.expando]=!0},f.Event.prototype={preventDefault:function(){this.isDefaultPrevented=D;var a=this.originalEvent;!a||(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){this.isPropagationStopped=D;var a=this.originalEvent;!a||(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=D,this.stopPropagation()},isDefaultPrevented:C,isPropagationStopped:C,isImmediatePropagationStopped:C};var E=function(a){var b=a.relatedTarget,c=!1,d=a.type;a.type=a.data,b!==this&&(b&&(c=f.contains(this,b)),c||(f.event.handle.apply(this,arguments),a.type=d))},F=function(a){a.type=a.data,f.event.handle.apply(this,arguments)};f.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){f.event.special[a]={setup:function(c){f.event.add(this,b,c&&c.selector?F:E,a)},teardown:function(a){f.event.remove(this,b,a&&a.selector?F:E)}}}),f.support.submitBubbles||(f.event.special.submit={setup:function(a,b){if(!f.nodeName(this,"form"))f.event.add(this,"click.specialSubmit",function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(c==="submit"||c==="image")&&f(b).closest("form").length&&J("submit",this,arguments)}),f.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(c==="text"||c==="password")&&f(b).closest("form").length&&a.keyCode===13&&J("submit",this,arguments)});else return!1},teardown:function(a){f.event.remove(this,".specialSubmit")}});if(!f.support.changeBubbles){var G,H=function(a){var b=f.nodeName(a,"input")?a.type:"",c=a.value;b==="radio"||b==="checkbox"?c=a.checked:b==="select-multiple"?c=a.selectedIndex>-1?f.map(a.options,function(a){return a.selected}).join("-"):"":f.nodeName(a,"select")&&(c=a.selectedIndex);return c},I=function(c){var d=c.target,e,g;if(!!x.test(d.nodeName)&&!d.readOnly){e=f._data(d,"_change_data"),g=H(d),(c.type!=="focusout"||d.type!=="radio")&&f._data(d,"_change_data",g);if(e===b||g===e)return;if(e!=null||g)c.type="change",c.liveFired=b,f.event.trigger(c,arguments[1],d)}};f.event.special.change={filters:{focusout:I,beforedeactivate:I,click:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(c==="radio"||c==="checkbox"||f.nodeName(b,"select"))&&I.call(this,a)},keydown:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(a.keyCode===13&&!f.nodeName(b,"textarea")||a.keyCode===32&&(c==="checkbox"||c==="radio")||c==="select-multiple")&&I.call(this,a)},beforeactivate:function(a){var b=a.target;f._data(b,"_change_data",H(b))}},setup:function(a,b){if(this.type==="file")return!1;for(var c in G)f.event.add(this,c+".specialChange",G[c]);return x.test(this.nodeName)},teardown:function(a){f.event.remove(this,".specialChange");return x.test(this.nodeName)}},G=f.event.special.change.filters,G.focus=G.beforeactivate}f.support.focusinBubbles||f.each({focus:"focusin",blur:"focusout"},function(a,b){function e(a){var c=f.event.fix(a);c.type=b,c.originalEvent={},f.event.trigger(c,null,c.target),c.isDefaultPrevented()&&a.preventDefault()}var d=0;f.event.special[b]={setup:function(){d++===0&&c.addEventListener(a,e,!0)},teardown:function(){--d===0&&c.removeEventListener(a,e,!0)}}}),f.each(["bind","one"],function(a,c){f.fn[c]=function(a,d,e){var g;if(typeof a=="object"){for(var h in a)this[c](h,d,a[h],e);return this}if(arguments.length===2||d===!1)e=d,d=b;c==="one"?(g=function(a){f(this).unbind(a,g);return e.apply(this,arguments)},g.guid=e.guid||f.guid++):g=e;if(a==="unload"&&c!=="one")this.one(a,d,e);else for(var i=0,j=this.length;i<j;i++)f.event.add(this[i],a,g,d);return this}}),f.fn.extend({unbind:function(a,b){if(typeof a=="object"&&!a.preventDefault)for(var c in a)this.unbind(c,a[c]);else for(var d=0,e=this.length;d<e;d++)f.event.remove(this[d],a,b);return this},delegate:function(a,b,c,d){return this.live(b,c,d,a)},undelegate:function(a,b,c){return arguments.length===0?this.unbind("live"):this.die(b,null,c,a)},trigger:function(a,b){return this.each(function(){f.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return f.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||f.guid++,d=0,e=function(c){var e=(f.data(this,"lastToggle"+a.guid)||0)%d;f.data(this,"lastToggle"+a.guid,e+1),c.preventDefault();return b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var K={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};f.each(["live","die"],function(a,c){f.fn[c]=function(a,d,e,g){var h,i=0,j,k,l,m=g||this.selector,n=g?this:f(this.context);if(typeof a=="object"&&!a.preventDefault){for(var o in a)n[c](o,d,a[o],m);return this}if(c==="die"&&!a&&g&&g.charAt(0)==="."){n.unbind(g);return this}if(d===!1||f.isFunction(d))e=d||C,d=b;a=(a||"").split(" ");while((h=a[i++])!=null){j=w.exec(h),k="",j&&(k=j[0],h=h.replace(w,""));if(h==="hover"){a.push("mouseenter"+k,"mouseleave"+k);continue}l=h,K[h]?(a.push(K[h]+k),h=h+k):h=(K[h]||h)+k;if(c==="live")for(var p=0,q=n.length;p<q;p++)f.event.add(n[p],"live."+M(h,m),{data:d,selector:m,handler:e,origType:h,origHandler:e,preType:l});else n.unbind("live."+M(h,m),e)}return this}}),f.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),function(a,b){f.fn[b]=function(a,c){c==null&&(c=a,a=null);return arguments.length>0?this.bind(b,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0)}),function(){function u(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}if(i.nodeType===1){f||(i.sizcache=c,i.sizset=g);if(typeof b!="string"){if(i===b){j=!0;break}}else if(k.filter(b,[i]).length>0){j=i;break}}i=i[a]}d[g]=j}}}function t(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}i.nodeType===1&&!f&&(i.sizcache=c,i.sizset=g);if(i.nodeName.toLowerCase()===b){j=i;break}i=i[a]}d[g]=j}}}var a=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d=0,e=Object.prototype.toString,g=!1,h=!0,i=/\\/g,j=/\W/;[0,0].sort(function(){h=!1;return 0});var k=function(b,d,f,g){f=f||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return f;var i,j,n,o,q,r,s,t,u=!0,w=k.isXML(d),x=[],y=b;do{a.exec(""),i=a.exec(y);if(i){y=i[3],x.push(i[1]);if(i[2]){o=i[3];break}}}while(i);if(x.length>1&&m.exec(b))if(x.length===2&&l.relative[x[0]])j=v(x[0]+x[1],d);else{j=l.relative[x[0]]?[d]:k(x.shift(),d);while(x.length)b=x.shift(),l.relative[b]&&(b+=x.shift()),j=v(b,j)}else{!g&&x.length>1&&d.nodeType===9&&!w&&l.match.ID.test(x[0])&&!l.match.ID.test(x[x.length-1])&&(q=k.find(x.shift(),d,w),d=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]);if(d){q=g?{expr:x.pop(),set:p(g)}:k.find(x.pop(),x.length===1&&(x[0]==="~"||x[0]==="+")&&d.parentNode?d.parentNode:d,w),j=q.expr?k.filter(q.expr,q.set):q.set,x.length>0?n=p(j):u=!1;while(x.length)r=x.pop(),s=r,l.relative[r]?s=x.pop():r="",s==null&&(s=d),l.relative[r](n,s,w)}else n=x=[]}n||(n=j),n||k.error(r||b);if(e.call(n)==="[object Array]")if(!u)f.push.apply(f,n);else if(d&&d.nodeType===1)for(t=0;n[t]!=null;t++)n[t]&&(n[t]===!0||n[t].nodeType===1&&k.contains(d,n[t]))&&f.push(j[t]);else for(t=0;n[t]!=null;t++)n[t]&&n[t].nodeType===1&&f.push(j[t]);else p(n,f);o&&(k(o,h,f,g),k.uniqueSort(f));return f};k.uniqueSort=function(a){if(r){g=h,a.sort(r);if(g)for(var b=1;b<a.length;b++)a[b]===a[b-1]&&a.splice(b--,1)}return a},k.matches=function(a,b){return k(a,null,null,b)},k.matchesSelector=function(a,b){return k(b,null,null,[a]).length>0},k.find=function(a,b,c){var d;if(!a)return[];for(var e=0,f=l.order.length;e<f;e++){var g,h=l.order[e];if(g=l.leftMatch[h].exec(a)){var j=g[1];g.splice(1,1);if(j.substr(j.length-1)!=="\\"){g[1]=(g[1]||"").replace(i,""),d=l.find[h](g,b,c);if(d!=null){a=a.replace(l.match[h],"");break}}}}d||(d=typeof b.getElementsByTagName!="undefined"?b.getElementsByTagName("*"):[]);return{set:d,expr:a}},k.filter=function(a,c,d,e){var f,g,h=a,i=[],j=c,m=c&&c[0]&&k.isXML(c[0]);while(a&&c.length){for(var n in l.filter)if((f=l.leftMatch[n].exec(a))!=null&&f[2]){var o,p,q=l.filter[n],r=f[1];g=!1,f.splice(1,1);if(r.substr(r.length-1)==="\\")continue;j===i&&(i=[]);if(l.preFilter[n]){f=l.preFilter[n](f,j,d,i,e,m);if(!f)g=o=!0;else if(f===!0)continue}if(f)for(var s=0;(p=j[s])!=null;s++)if(p){o=q(p,f,s,j);var t=e^!!o;d&&o!=null?t?g=!0:j[s]=!1:t&&(i.push(p),g=!0)}if(o!==b){d||(j=i),a=a.replace(l.match[n],"");if(!g)return[];break}}if(a===h)if(g==null)k.error(a);else break;h=a}return j},k.error=function(a){throw"Syntax error, unrecognized expression: "+a};var l=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(a){return a.getAttribute("href")},type:function(a){return a.getAttribute("type")}},relative:{"+":function(a,b){var c=typeof b=="string",d=c&&!j.test(b),e=c&&!d;d&&(b=b.toLowerCase());for(var f=0,g=a.length,h;f<g;f++)if(h=a[f]){while((h=h.previousSibling)&&h.nodeType!==1);a[f]=e||h&&h.nodeName.toLowerCase()===b?h||!1:h===b}e&&k.filter(b,a,!0)},">":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!j.test(b)){b=b.toLowerCase();for(;e<f;e++){c=a[e];if(c){var g=c.parentNode;a[e]=g.nodeName.toLowerCase()===b?g:!1}}}else{for(;e<f;e++)c=a[e],c&&(a[e]=d?c.parentNode:c.parentNode===b);d&&k.filter(b,a,!0)}},"":function(a,b,c){var e,f=d++,g=u;typeof b=="string"&&!j.test(b)&&(b=b.toLowerCase(),e=b,g=t),g("parentNode",b,f,a,e,c)},"~":function(a,b,c){var e,f=d++,g=u;typeof b=="string"&&!j.test(b)&&(b=b.toLowerCase(),e=b,g=t),g("previousSibling",b,f,a,e,c)}},find:{ID:function(a,b,c){if(typeof b.getElementById!="undefined"&&!c){var d=b.getElementById(a[1]);return d&&d.parentNode?[d]:[]}},NAME:function(a,b){if(typeof b.getElementsByName!="undefined"){var c=[],d=b.getElementsByName(a[1]);for(var e=0,f=d.length;e<f;e++)d[e].getAttribute("name")===a[1]&&c.push(d[e]);return c.length===0?null:c}},TAG:function(a,b){if(typeof b.getElementsByTagName!="undefined")return b.getElementsByTagName(a[1])}},preFilter:{CLASS:function(a,b,c,d,e,f){a=" "+a[1].replace(i,"")+" ";if(f)return a;for(var g=0,h;(h=b[g])!=null;g++)h&&(e^(h.className&&(" "+h.className+" ").replace(/[\t\n\r]/g," ").indexOf(a)>=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(i,"")},TAG:function(a,b){return a[1].replace(i,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||k.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&k.error(a[0]);a[0]=d++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(i,"");!f&&l.attrMap[g]&&(a[1]=l.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(i,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=k(b[3],null,null,c);else{var g=k.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(l.match.POS.test(b[0])||l.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!k(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return b<c[3]-0},gt:function(a,b,c){return b>c[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=l.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||k.getText([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h<i;h++)if(g[h]===a)return!1;return!0}k.error(e)},CHILD:function(a,b){var c=b[1],d=a;switch(c){case"only":case"first":while(d=d.previousSibling)if(d.nodeType===1)return!1;if(c==="first")return!0;d=a;case"last":while(d=d.nextSibling)if(d.nodeType===1)return!1;return!0;case"nth":var e=b[2],f=b[3];if(e===1&&f===0)return!0;var g=b[0],h=a.parentNode;if(h&&(h.sizcache!==g||!a.nodeIndex)){var i=0;for(d=h.firstChild;d;d=d.nextSibling)d.nodeType===1&&(d.nodeIndex=++i);h.sizcache=g}var j=a.nodeIndex-f;return e===0?j===0:j%e===0&&j/e>=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=l.attrHandle[c]?l.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=l.setFilters[e];if(f)return f(a,c,b,d)}}},m=l.match.POS,n=function(a,b){return"\\"+(b-0+1)};for(var o in l.match)l.match[o]=new RegExp(l.match[o].source+/(?![^\[]*\])(?![^\(]*\))/.source),l.leftMatch[o]=new RegExp(/(^(?:.|\r|\n)*?)/.source+l.match[o].source.replace(/\\(\d+)/g,n));var p=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(q){p=function(a,b){var c=0,d=b||[];if(e.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var f=a.length;c<f;c++)d.push(a[c]);else for(;a[c];c++)d.push(a[c]);return d}}var r,s;c.documentElement.compareDocumentPosition?r=function(a,b){if(a===b){g=!0;return 0}if(!a.compareDocumentPosition||!b.compareDocumentPosition)return a.compareDocumentPosition?-1:1;return a.compareDocumentPosition(b)&4?-1:1}:(r=function(a,b){if(a===b){g=!0;return 0}if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],h=a.parentNode,i=b.parentNode,j=h;if(h===i)return s(a,b);if(!h)return-1;if(!i)return 1;while(j)e.unshift(j),j=j.parentNode;j=i;while(j)f.unshift(j),j=j.parentNode;c=e.length,d=f.length;for(var k=0;k<c&&k<d;k++)if(e[k]!==f[k])return s(e[k],f[k]);return k===c?s(a,f[k],-1):s(e[k],b,1)},s=function(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}),k.getText=function(a){var b="",c;for(var d=0;a[d];d++)c=a[d],c.nodeType===3||c.nodeType===4?b+=c.nodeValue:c.nodeType!==8&&(b+=k.getText(c.childNodes));return b},function(){var a=c.createElement("div"),d="script"+(new Date).getTime(),e=c.documentElement;a.innerHTML="<a name='"+d+"'/>",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(l.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},l.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(l.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(l.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=k,b=c.createElement("div"),d="__sizzle__";b.innerHTML="<p class='TEST'></p>";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){k=function(b,e,f,g){e=e||c;if(!g&&!k.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return p(e.getElementsByTagName(b),f);if(h[2]&&l.find.CLASS&&e.getElementsByClassName)return p(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return p([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return p([],f);if(i.id===h[3])return p([i],f)}try{return p(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var m=e,n=e.getAttribute("id"),o=n||d,q=e.parentNode,r=/^\s*[+~]/.test(b);n?o=o.replace(/'/g,"\\$&"):e.setAttribute("id",o),r&&q&&(e=e.parentNode);try{if(!r||q)return p(e.querySelectorAll("[id='"+o+"'] "+b),f)}catch(s){}finally{n||m.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)k[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}k.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(a))try{if(e||!l.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return k(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="<div class='test e'></div><div class='test'></div>";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;l.order.splice(1,0,"CLASS"),l.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?k.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?k.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:k.contains=function(){return!1},k.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var v=function(a,b){var c,d=[],e="",f=b.nodeType?[b]:b;while(c=l.match.PSEUDO.exec(a))e+=c[0],a=a.replace(l.match.PSEUDO,"");a=l.relative[a]?a+"*":a;for(var g=0,h=f.length;g<h;g++)k(a,f[g],d);return k.filter(e,d)};f.find=k,f.expr=k.selectors,f.expr[":"]=f.expr.filters,f.unique=k.uniqueSort,f.text=k.getText,f.isXMLDoc=k.isXML,f.contains=k.contains}();var N=/Until$/,O=/^(?:parents|prevUntil|prevAll)/,P=/,/,Q=/^.[^:#\[\.,]*$/,R=Array.prototype.slice,S=f.expr.match.POS,T={children:!0,contents:!0,next:!0,prev:!0};f.fn.extend({find:function(a){var b=this,c,d;if(typeof a!="string")return f(a).filter(function(){for(c=0,d=b.length;c<d;c++)if(f.contains(b[c],this))return!0});var e=this.pushStack("","find",a),g,h,i;for(c=0,d=this.length;c<d;c++){g=e.length,f.find(a,this[c],e);if(c>0)for(h=g;h<e.length;h++)for(i=0;i<g;i++)if(e[i]===e[h]){e.splice(h--,1);break}}return e},has:function(a){var b=f(a);return this.filter(function(){for(var a=0,c=b.length;a<c;a++)if(f.contains(this,b[a]))return!0})},not:function(a){return this.pushStack(V(this,a,!1),"not",a)},filter:function(a){return this.pushStack(V(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h,i,j={},k=1;if(g&&a.length){for(d=0,e=a.length;d<e;d++)i=a[d],j[i]||(j[i]=S.test(i)?f(i,b||this.context):i);while(g&&g.ownerDocument&&g!==b){for(i in j)h=j[i],(h.jquery?h.index(g)>-1:f(g).is(h))&&c.push({selector:i,elem:g,level:k});g=g.parentNode,k++}}return c}var l=S.test(a)||typeof a!="string"?f(a,b||this.context):0;for(d=0,e=this.length;d<e;d++){g=this[d];while(g){if(l?l.index(g)>-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(U(c[0])||U(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c),g=R.call(arguments);N.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!T[a]?f.unique(e):e,(this.length>1||P.test(d))&&O.test(a)&&(e=e.reverse());return this.pushStack(e,a,g.join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/<tbody/i,_=/<|&#?\w+;/,ba=/<(?:script|object|embed|option|style)/i,bb=/checked\s*(?:[^=]|=\s*.checked.)/i,bc=/\/(java|ecma)script/i,bd=/^\s*<!(?:\[CDATA\[|\-\-)/,be={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};be.optgroup=be.option,be.tbody=be.tfoot=be.colgroup=be.caption=be.thead,be.th=be.td,f.support.htmlSerialize||(be._default=[1,"div<div>","</div>"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){f(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f(arguments[0]).toArray());return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!be[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1></$2>");try{for(var c=0,d=this.length;c<d;c++)this[c].nodeType===1&&(f.cleanData(this[c].getElementsByTagName("*")),this[c].innerHTML=a)}catch(e){this.empty().append(a)}}else f.isFunction(a)?this.each(function(b){var c=f(this);c.html(a.call(this,b,c.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(f.isFunction(a))return this.each(function(b){var c=f(this),d=c.html();c.replaceWith(a.call(this,b,d))});typeof a!="string"&&(a=f(a).detach());return this.each(function(){var b=this.nextSibling,c=this.parentNode;f(this).remove(),b?f(b).before(a):f(c).append(a)})}return this.length?this.pushStack(f(f.isFunction(a)?a():a),"replaceWith",a):this},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){var e,g,h,i,j=a[0],k=[];if(!f.support.checkClone&&arguments.length===3&&typeof j=="string"&&bb.test(j))return this.each(function(){f(this).domManip(a,c,d,!0)});if(f.isFunction(j))return this.each(function(e){var g=f(this);a[0]=j.call(this,e,c?g.html():b),g.domManip(a,c,d)});if(this[0]){i=j&&j.parentNode,f.support.parentNode&&i&&i.nodeType===11&&i.childNodes.length===this.length?e={fragment:i}:e=f.buildFragment(a,this,k),h=e.fragment,h.childNodes.length===1?g=h=h.firstChild:g=h.firstChild;if(g){c=c&&f.nodeName(g,"tr");for(var l=0,m=this.length,n=m-1;l<m;l++)d.call(c?bf(this[l],g):this[l],e.cacheable||m>1&&l<n?f.clone(h,!0,!0):h)}k.length&&f.each(k,bl)}return this}}),f.buildFragment=function(a,b,d){var e,g,h,i;b&&b[0]&&(i=b[0].ownerDocument||b[0]),i.createDocumentFragment||(i=c),a.length===1&&typeof a[0]=="string"&&a[0].length<512&&i===c&&a[0].charAt(0)==="<"&&!ba.test(a[0])&&(f.support.checkClone||!bb.test(a[0]))&&(g=!0,h=f.fragments[a[0]],h&&h!==1&&(e=h)),e||(e=i.createDocumentFragment(),f.clean(a,i,e,d)),g&&(f.fragments[a[0]]=h?e:1);return{fragment:e,cacheable:g}},f.fragments={},f.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){f.fn[a]=function(c){var d=[],e=f(c),g=this.length===1&&this[0].parentNode;if(g&&g.nodeType===11&&g.childNodes.length===1&&e.length===1){e[b](this[0]);return this}for(var h=0,i=e.length;h<i;h++){var j=(h>0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d=a.cloneNode(!0),e,g,h;if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bh(a,d),e=bi(a),g=bi(d);for(h=0;e[h];++h)g[h]&&bh(e[h],g[h])}if(b){bg(a,d);if(c){e=bi(a),g=bi(d);for(h=0;e[h];++h)bg(e[h],g[h])}}e=g=null;return d},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1></$2>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=be[l]||be._default,n=m[0],o=b.createElement("div");o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]==="<table>"&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof(r=k.length)=="number")for(i=0;i<r;i++)bk(k[i]);else bk(k);k.nodeType?h.push(k):h=f.merge(h,k)}if(d){g=function(a){return!a.type||bc.test(a.type)};for(j=0;h[j];j++)if(e&&f.nodeName(h[j],"script")&&(!h[j].type||h[j].type.toLowerCase()==="text/javascript"))e.push(h[j].parentNode?h[j].parentNode.removeChild(h[j]):h[j]);else{if(h[j].nodeType===1){var s=f.grep(h[j].getElementsByTagName("script"),g);h.splice.apply(h,[j+1,0].concat(s))}d.appendChild(h[j])}}return h},cleanData:function(a){var b,c,d=f.cache,e=f.expando,g=f.event.special,h=f.support.deleteExpando;for(var i=0,j;(j=a[i])!=null;i++){if(j.nodeName&&f.noData[j.nodeName.toLowerCase()])continue;c=j[f.expando];if(c){b=d[c]&&d[c][e];if(b&&b.events){for(var k in b.events)g[k]?f.event.remove(j,k):f.removeEvent(j,k,b.handle);b.handle&&(b.handle.elem=null)}h?delete j[f.expando]:j.removeAttribute&&j.removeAttribute(f.expando),delete d[c]}}}});var bm=/alpha\([^)]*\)/i,bn=/opacity=([^)]*)/,bo=/([A-Z]|^ms)/g,bp=/^-?\d+(?:px)?$/i,bq=/^-?\d/,br=/^([\-+])=([\-+.\de]+)/,bs={position:"absolute",visibility:"hidden",display:"block"},bt=["Left","Right"],bu=["Top","Bottom"],bv,bw,bx;f.fn.css=function(a,c){if(arguments.length===2&&c===b)return this;return f.access(this,a,c,!0,function(a,c,d){return d!==b?f.style(a,c,d):f.css(a,c)})},f.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bv(a,"opacity","opacity");return c===""?"1":c}return a.style.opacity}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":f.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!!a&&a.nodeType!==3&&a.nodeType!==8&&!!a.style){var g,h,i=f.camelCase(c),j=a.style,k=f.cssHooks[i];c=f.cssProps[i]||i;if(d===b){if(k&&"get"in k&&(g=k.get(a,!1,e))!==b)return g;return j[c]}h=typeof d,h==="string"&&(g=br.exec(d))&&(d=+(g[1]+1)*+g[2]+parseFloat(f.css(a,c)),h="number");if(d==null||h==="number"&&isNaN(d))return;h==="number"&&!f.cssNumber[i]&&(d+="px");if(!k||!("set"in k)||(d=k.set(a,d))!==b)try{j[c]=d}catch(l){}}},css:function(a,c,d){var e,g;c=f.camelCase(c),g=f.cssHooks[c],c=f.cssProps[c]||c,c==="cssFloat"&&(c="float");if(g&&"get"in g&&(e=g.get(a,!0,d))!==b)return e;if(bv)return bv(a,c)},swap:function(a,b,c){var d={};for(var e in b)d[e]=a.style[e],a.style[e]=b[e];c.call(a);for(e in b)a.style[e]=d[e]}}),f.curCSS=f.css,f.each(["height","width"],function(a,b){f.cssHooks[b]={get:function(a,c,d){var e;if(c){if(a.offsetWidth!==0)return by(a,b,d);f.swap(a,bs,function(){e=by(a,b,d)});return e}},set:function(a,b){if(!bp.test(b))return b;b=parseFloat(b);if(b>=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return bn.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNaN(b)?"":"alpha(opacity="+b*100+")",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bm,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bm.test(g)?g.replace(bm,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bv(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bw=function(a,c){var d,e,g;c=c.replace(bo,"-$1").toLowerCase();if(!(e=a.ownerDocument.defaultView))return b;if(g=e.getComputedStyle(a,null))d=g.getPropertyValue(c),d===""&&!f.contains(a.ownerDocument.documentElement,a)&&(d=f.style(a,c));return d}),c.documentElement.currentStyle&&(bx=function(a,b){var c,d=a.currentStyle&&a.currentStyle[b],e=a.runtimeStyle&&a.runtimeStyle[b],f=a.style;!bp.test(d)&&bq.test(d)&&(c=f.left,e&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":d||0,d=f.pixelLeft+"px",f.left=c,e&&(a.runtimeStyle.left=e));return d===""?"auto":d}),bv=bw||bx,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bz=/%20/g,bA=/\[\]$/,bB=/\r?\n/g,bC=/#.*$/,bD=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bE=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bF=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bG=/^(?:GET|HEAD)$/,bH=/^\/\//,bI=/\?/,bJ=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,bK=/^(?:select|textarea)/i,bL=/\s+/,bM=/([?&])_=[^&]*/,bN=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bO=f.fn.load,bP={},bQ={},bR,bS,bT=["*/"]+["*"];try{bR=e.href}catch(bU){bR=c.createElement("a"),bR.href="",bR=bR.href}bS=bN.exec(bR.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bO)return bO.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("<div>").append(c.replace(bJ,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bK.test(this.nodeName)||bE.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bB,"\r\n")}}):{name:b.name,value:c.replace(bB,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.bind(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?bX(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),bX(a,b);return a},ajaxSettings:{url:bR,isLocal:bF.test(bS[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bT},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bV(bP),ajaxTransport:bV(bQ),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?bZ(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=b$(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.resolveWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f._Deferred(),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bD.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.done,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bC,"").replace(bH,bS[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bL),d.crossDomain==null&&(r=bN.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bS[1]&&r[2]==bS[2]&&(r[3]||(r[1]==="http:"?80:443))==(bS[3]||(bS[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),bW(bP,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bG.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bI.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bM,"$1_="+x);d.url=y+(y===d.url?(bI.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bT+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=bW(bQ,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){s<2?w(-1,z):f.error(z)}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)bY(g,a[g],c,e);return d.join("&").replace(bz,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var b_=f.now(),ca=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+b_++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ca.test(b.url)||e&&ca.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ca,l),b.url===j&&(e&&(k=k.replace(ca,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cb=a.ActiveXObject?function(){for(var a in cd)cd[a](0,1)}:!1,cc=0,cd;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ce()||cf()}:ce,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cb&&delete cd[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cc,cb&&(cd||(cd={},f(a).unload(cb)),cd[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var cg={},ch,ci,cj=/^(?:toggle|show|hide)$/,ck=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cl,cm=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cn;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cq("show",3),a,b,c);for(var g=0,h=this.length;g<h;g++)d=this[g],d.style&&(e=d.style.display,!f._data(d,"olddisplay")&&e==="none"&&(e=d.style.display=""),e===""&&f.css(d,"display")==="none"&&f._data(d,"olddisplay",cr(d.nodeName)));for(g=0;g<h;g++){d=this[g];if(d.style){e=d.style.display;if(e===""||e==="none")d.style.display=f._data(d,"olddisplay")||""}}return this},hide:function(a,b,c){if(a||a===0)return this.animate(cq("hide",3),a,b,c);for(var d=0,e=this.length;d<e;d++)if(this[d].style){var g=f.css(this[d],"display");g!=="none"&&!f._data(this[d],"olddisplay")&&f._data(this[d],"olddisplay",g)}for(d=0;d<e;d++)this[d].style&&(this[d].style.display="none");return this},_toggle:f.fn.toggle,toggle:function(a,b,c){var d=typeof a=="boolean";f.isFunction(a)&&f.isFunction(b)?this._toggle.apply(this,arguments):a==null||d?this.each(function(){var b=d?a:f(this).is(":hidden");f(this)[b?"show":"hide"]()}):this.animate(cq("toggle",3),a,b,c);return this},fadeTo:function(a,b,c,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=f.speed(b,c,d);if(f.isEmptyObject(a))return this.each(e.complete,[!1]);a=f.extend({},a);return this[e.queue===!1?"each":"queue"](function(){e.queue===!1&&f._mark(this);var b=f.extend({},e),c=this.nodeType===1,d=c&&f(this).is(":hidden"),g,h,i,j,k,l,m,n,o;b.animatedProperties={};for(i in a){g=f.camelCase(i),i!==g&&(a[g]=a[i],delete a[i]),h=a[g],f.isArray(h)?(b.animatedProperties[g]=h[1],h=a[g]=h[0]):b.animatedProperties[g]=b.specialEasing&&b.specialEasing[g]||b.easing||"swing";if(h==="hide"&&d||h==="show"&&!d)return b.complete.call(this);c&&(g==="height"||g==="width")&&(b.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY],f.css(this,"display")==="inline"&&f.css(this,"float")==="none"&&(f.support.inlineBlockNeedsLayout?(j=cr(this.nodeName),j==="inline"?this.style.display="inline-block":(this.style.display="inline",this.style.zoom=1)):this.style.display="inline-block"))}b.overflow!=null&&(this.style.overflow="hidden");for(i in a)k=new f.fx(this,b,i),h=a[i],cj.test(h)?k[h==="toggle"?d?"show":"hide":h]():(l=ck.exec(h),m=k.cur(),l?(n=parseFloat(l[2]),o=l[3]||(f.cssNumber[i]?"":"px"),o!=="px"&&(f.style(this,i,(n||1)+o),m=(n||1)/k.cur()*m,f.style(this,i,m+o)),l[1]&&(n=(l[1]==="-="?-1:1)*n+m),k.custom(m,n,o)):k.custom(m,h,""));return!0})},stop:function(a,b){a&&this.queue([]),this.each(function(){var a=f.timers,c=a.length;b||f._unmark(!0,this);while(c--)a[c].elem===this&&(b&&a[c](!0),a.splice(c,1))}),b||this.dequeue();return this}}),f.each({slideDown:cq("show",1),slideUp:cq("hide",1),slideToggle:cq("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){f.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),f.extend({speed:function(a,b,c){var d=a&&typeof a=="object"?f.extend({},a):{complete:c||!c&&b||f.isFunction(a)&&a,duration:a,easing:c&&b||b&&!f.isFunction(b)&&b};d.duration=f.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in f.fx.speeds?f.fx.speeds[d.duration]:f.fx.speeds._default,d.old=d.complete,d.complete=function(a){f.isFunction(d.old)&&d.old.call(this),d.queue!==!1?f.dequeue(this):a!==!1&&f._unmark(this)};return d},easing:{linear:function(a,b,c,d){return c+d*a},swing:function(a,b,c,d){return(-Math.cos(a*Math.PI)/2+.5)*d+c}},timers:[],fx:function(a,b,c){this.options=b,this.elem=a,this.prop=c,b.orig=b.orig||{}}}),f.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this),(f.fx.step[this.prop]||f.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a,b=f.css(this.elem,this.prop);return isNaN(a=parseFloat(b))?!b||b==="auto"?0:b:a},custom:function(a,b,c){function g(a){return d.step(a)}var d=this,e=f.fx;this.startTime=cn||co(),this.start=a,this.end=b,this.unit=c||this.unit||(f.cssNumber[this.prop]?"":"px"),this.now=this.start,this.pos=this.state=0,g.elem=this.elem,g()&&f.timers.push(g)&&!cl&&(cl=setInterval(e.tick,e.interval))},show:function(){this.options.orig[this.prop]=f.style(this.elem,this.prop),this.options.show=!0,this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur()),f(this.elem).show()},hide:function(){this.options.orig[this.prop]=f.style(this.elem,this.prop),this.options.hide=!0,this.custom(this.cur(),0)},step:function(a){var b=cn||co(),c=!0,d=this.elem,e=this.options,g,h;if(a||b>=e.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),e.animatedProperties[this.prop]=!0;for(g in e.animatedProperties)e.animatedProperties[g]!==!0&&(c=!1);if(c){e.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){d.style["overflow"+b]=e.overflow[a]}),e.hide&&f(d).hide();if(e.hide||e.show)for(var i in e.animatedProperties)f.style(d,i,e.orig[i]);e.complete.call(d)}return!1}e.duration==Infinity?this.now=b:(h=b-this.startTime,this.state=h/e.duration,this.pos=f.easing[e.animatedProperties[this.prop]](this.state,h,0,1,e.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){for(var a=f.timers,b=0;b<a.length;++b)a[b]()||a.splice(b--,1);a.length||f.fx.stop()},interval:13,stop:function(){clearInterval(cl),cl=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){f.style(a.elem,"opacity",a.now)},_default:function(a){a.elem.style&&a.elem.style[a.prop]!=null?a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit:a.elem[a.prop]=a.now}}}),f.expr&&f.expr.filters&&(f.expr.filters.animated=function(a){return f.grep(f.timers,function(b){return a===b.elem}).length});var cs=/^t(?:able|d|h)$/i,ct=/^(?:body|html)$/i;"getBoundingClientRect"in c.documentElement?f.fn.offset=function(a){var b=this[0],c;if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);try{c=b.getBoundingClientRect()}catch(d){}var e=b.ownerDocument,g=e.documentElement;if(!c||!f.contains(g,b))return c?{top:c.top,left:c.left}:{top:0,left:0};var h=e.body,i=cu(e),j=g.clientTop||h.clientTop||0,k=g.clientLeft||h.clientLeft||0,l=i.pageYOffset||f.support.boxModel&&g.scrollTop||h.scrollTop,m=i.pageXOffset||f.support.boxModel&&g.scrollLeft||h.scrollLeft,n=c.top+l-j,o=c.left+m-k;return{top:n,left:o}}:f.fn.offset=function(a){var b=this[0];if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);f.offset.initialize();var c,d=b.offsetParent,e=b,g=b.ownerDocument,h=g.documentElement,i=g.body,j=g.defaultView,k=j?j.getComputedStyle(b,null):b.currentStyle,l=b.offsetTop,m=b.offsetLeft;while((b=b.parentNode)&&b!==i&&b!==h){if(f.offset.supportsFixedPosition&&k.position==="fixed")break;c=j?j.getComputedStyle(b,null):b.currentStyle,l-=b.scrollTop,m-=b.scrollLeft,b===d&&(l+=b.offsetTop,m+=b.offsetLeft,f.offset.doesNotAddBorder&&(!f.offset.doesAddBorderForTableAndCells||!cs.test(b.nodeName))&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),e=d,d=b.offsetParent),f.offset.subtractsBorderForOverflowNotVisible&&c.overflow!=="visible"&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),k=c}if(k.position==="relative"||k.position==="static")l+=i.offsetTop,m+=i.offsetLeft;f.offset.supportsFixedPosition&&k.position==="fixed"&&(l+=Math.max(h.scrollTop,i.scrollTop),m+=Math.max(h.scrollLeft,i.scrollLeft));return{top:l,left:m}},f.offset={initialize:function(){var a=c.body,b=c.createElement("div"),d,e,g,h,i=parseFloat(f.css(a,"marginTop"))||0,j="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";f.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"}),b.innerHTML=j,a.insertBefore(b,a.firstChild),d=b.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,this.doesNotAddBorder=e.offsetTop!==5,this.doesAddBorderForTableAndCells=h.offsetTop===5,e.style.position="fixed",e.style.top="20px",this.supportsFixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",this.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==i,a.removeChild(b),f.offset.initialize=f.noop},bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;f.offset.initialize(),f.offset.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(f.css(a,"marginTop"))||0,c+=parseFloat(f.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var d=f.css(a,"position");d==="static"&&(a.style.position="relative");var e=f(a),g=e.offset(),h=f.css(a,"top"),i=f.css(a,"left"),j=(d==="absolute"||d==="fixed")&&f.inArray("auto",[h,i])>-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=ct.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!ct.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cu(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cu(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a&&a.style?parseFloat(f.css(a,d,"padding")):null},f.fn["outer"+c]=function(a){var b=this[0];return b&&b.style?parseFloat(f.css(b,d,a?"margin":"border")):null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNaN(j)?i:j}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f})(window);jQuery.easing['jswing']=jQuery.easing['swing'];jQuery.extend(jQuery.easing,{def:'easeOutQuad',swing:function(x,t,b,c,d){return jQuery.easing[jQuery.easing.def](x,t,b,c,d);},easeInQuad:function(x,t,b,c,d){return c*(t/=d)*t+b;},easeOutQuad:function(x,t,b,c,d){return-c*(t/=d)*(t-2)+b;},easeInOutQuad:function(x,t,b,c,d){if((t/=d/2)<1)return c/2*t*t+b;return-c/2*((--t)*(t-2)-1)+b;},easeInCubic:function(x,t,b,c,d){return c*(t/=d)*t*t+b;},easeOutCubic:function(x,t,b,c,d){return c*((t=t/d-1)*t*t+1)+b;},easeInOutCubic:function(x,t,b,c,d){if((t/=d/2)<1)return c/2*t*t*t+b;return c/2*((t-=2)*t*t+2)+b;},easeInQuart:function(x,t,b,c,d){return c*(t/=d)*t*t*t+b;},easeOutQuart:function(x,t,b,c,d){return-c*((t=t/d-1)*t*t*t-1)+b;},easeInOutQuart:function(x,t,b,c,d){if((t/=d/2)<1)return c/2*t*t*t*t+b;return-c/2*((t-=2)*t*t*t-2)+b;},easeInQuint:function(x,t,b,c,d){return c*(t/=d)*t*t*t*t+b;},easeOutQuint:function(x,t,b,c,d){return c*((t=t/d-1)*t*t*t*t+1)+b;},easeInOutQuint:function(x,t,b,c,d){if((t/=d/2)<1)return c/2*t*t*t*t*t+b;return c/2*((t-=2)*t*t*t*t+2)+b;},easeInSine:function(x,t,b,c,d){return-c*Math.cos(t/d*(Math.PI/2))+c+b;},easeOutSine:function(x,t,b,c,d){return c*Math.sin(t/d*(Math.PI/2))+b;},easeInOutSine:function(x,t,b,c,d){return-c/2*(Math.cos(Math.PI*t/d)-1)+b;},easeInExpo:function(x,t,b,c,d){return(t==0)?b:c*Math.pow(2,10*(t/d-1))+b;},easeOutExpo:function(x,t,b,c,d){return(t==d)?b+c:c*(-Math.pow(2,-10*t/d)+1)+b;},easeInOutExpo:function(x,t,b,c,d){if(t==0)return b;if(t==d)return b+c;if((t/=d/2)<1)return c/2*Math.pow(2,10*(t-1))+b;return c/2*(-Math.pow(2,-10*--t)+2)+b;},easeInCirc:function(x,t,b,c,d){return-c*(Math.sqrt(1-(t/=d)*t)-1)+b;},easeOutCirc:function(x,t,b,c,d){return c*Math.sqrt(1-(t=t/d-1)*t)+b;},easeInOutCirc:function(x,t,b,c,d){if((t/=d/2)<1)return-c/2*(Math.sqrt(1-t*t)-1)+b;return c/2*(Math.sqrt(1-(t-=2)*t)+1)+b;},easeInElastic:function(x,t,b,c,d){var s=1.70158;var p=0;var a=c;if(t==0)return b;if((t/=d)==1)return b+c;if(!p)p=d*.3;if(a<Math.abs(c)){a=c;var s=p/4;}
else var s=p/(2*Math.PI)*Math.asin(c/a);return-(a*Math.pow(2,10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p))+b;},easeOutElastic:function(x,t,b,c,d){var s=1.70158;var p=0;var a=c;if(t==0)return b;if((t/=d)==1)return b+c;if(!p)p=d*.3;if(a<Math.abs(c)){a=c;var s=p/4;}
else var s=p/(2*Math.PI)*Math.asin(c/a);return a*Math.pow(2,-10*t)*Math.sin((t*d-s)*(2*Math.PI)/p)+c+b;},easeInOutElastic:function(x,t,b,c,d){var s=1.70158;var p=0;var a=c;if(t==0)return b;if((t/=d/2)==2)return b+c;if(!p)p=d*(.3*1.5);if(a<Math.abs(c)){a=c;var s=p/4;}
else var s=p/(2*Math.PI)*Math.asin(c/a);if(t<1)return-.5*(a*Math.pow(2,10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p))+b;return a*Math.pow(2,-10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p)*.5+c+b;},easeInBack:function(x,t,b,c,d,s){if(s==undefined)s=1.70158;return c*(t/=d)*t*((s+1)*t-s)+b;},easeOutBack:function(x,t,b,c,d,s){if(s==undefined)s=1.70158;return c*((t=t/d-1)*t*((s+1)*t+s)+1)+b;},easeInOutBack:function(x,t,b,c,d,s){if(s==undefined)s=1.70158;if((t/=d/2)<1)return c/2*(t*t*(((s*=(1.525))+1)*t-s))+b;return c/2*((t-=2)*t*(((s*=(1.525))+1)*t+s)+2)+b;},easeInBounce:function(x,t,b,c,d){return c-jQuery.easing.easeOutBounce(x,d-t,0,c,d)+b;},easeOutBounce:function(x,t,b,c,d){if((t/=d)<(1/2.75)){return c*(7.5625*t*t)+b;}else if(t<(2/2.75)){return c*(7.5625*(t-=(1.5/2.75))*t+.75)+b;}else if(t<(2.5/2.75)){return c*(7.5625*(t-=(2.25/2.75))*t+.9375)+b;}else{return c*(7.5625*(t-=(2.625/2.75))*t+.984375)+b;}},easeInOutBounce:function(x,t,b,c,d){if(t<d/2)return jQuery.easing.easeInBounce(x,t*2,0,c,d)*.5+b;return jQuery.easing.easeOutBounce(x,t*2-d,0,c,d)*.5+c*.5+b;}});debug=0;if(typeof(window.console)=="undefined")debug=0;function oc(a)
{var o={};for(var i=0;i<a.length;i++)
{o[a[i]]='';}
return o;}
function instrument_downloads(doclist)
{$("a[href|=]").each(function(i)
{var extension=this.href.substring(this.href.lastIndexOf('.')+1).toLowerCase();if(extension in oc(doclist))
{$(this).bind('click',function()
{_lf_remora_tracker(this.href,'1');});if(debug)console.log("instrumented : "+this.href);}});}
var _lf_cid="";var i="";var _lf_mydomain="";var _lf_doc=document;var _lf_doc_title=_lf_doc.title;var _lf_currpage=window.location.href;var _lf_loopfusePageProtocol=window.location.protocol+"//";var _lf_trackdomain="lfov.net";var _lf_loopfuseHomeURL=_lf_loopfusePageProtocol+_lf_trackdomain;var _lf_recorder_path="/webrecorder/w";var _lf_loopfuseVIDURL=_lf_trackdomain+"/webrecorder/g/chimera.js";var _lf_vid;var _lf_kvid;var _lf_kid=_lf_getURLParam("x_lf_kid");var _lf_kt=_lf_getURLParam("x_lf_kt");var _lf_kr=_lf_getURLParam("_x_lf_kr");var _lf_cName="LOOPFUSE";function _lf_remora(){var _lf_trackURL="";if(_lf_cid==undefined||_lf_cid==""){return;}_lf_trackURL+=_lf_loopfuseHomeURL+_lf_recorder_path;var _lf_ref="&from="+_lf_getReferer();var _lf_resolution="&res="+window.screen.width+"x"+window.screen.height;var _lf_title="&t="+escape(_lf_doc_title);var _vid="&vid="+_lf_getVID();var _lf_cp="&cp="+escape(_lf_currpage);var _campy;_lf_trackURL+="?cid="+_lf_cid+_vid+_lf_ref+_lf_title+_lf_resolution+_lf_cp;if(_lf_kid!=""&&_lf_kid!=undefined&&_lf_kt!=undefined&&_lf_kt!=""){_campy="&kid="+_lf_kid+"&kt="+_lf_kt;}if(_lf_kr!=""&&_lf_kr!=undefined){_campy+="&kr="+_lf_kr;}if(_lf_kvid!=undefined&&_lf_kvid!=null&&_lf_kvid!=""){_campy+="&kvid="+_lf_kvid;}if(_campy!=""&&_campy!=undefined){_lf_trackURL+=_campy;}_lf_trackURL+="&"+Math.random();_lf_setCookie();var sentinel=new Image(1,1);sentinel.border=0;sentinel.src=_lf_trackURL;_lf_modForms();}function _lf_remora_tracker(_page,_red){var _lf_trackURL="";if(_lf_cid==undefined||_lf_cid==""){return;}if(_page==undefined||_page==""){return;}_lf_trackURL+=_lf_loopfuseHomeURL+_lf_recorder_path;var _lf_this="&from="+_lf_doc.URL;var _lf_resolution="&res="+window.screen.width+"x"+window.screen.height;var _lf_title="&t="+escape(_lf_doc_title);var _vid="&vid="+_lf_getVID();var _lf_to="&to="+_page;_lf_trackURL+="?cid="+_lf_cid+_vid+_lf_this+_lf_title+_lf_resolution+_lf_to;_lf_trackURL+="&"+Math.random();i=new Image(1,1);i.src=_lf_trackURL;_lf_pause(1500);if(_red==undefined||_red==""){window.location=_page;}}function _lf_pause(_lf_time_msec){var _lf_now=new Date();var _lf_expire=_lf_now.getTime()+_lf_time_msec;while(_lf_now.getTime()<_lf_expire){_lf_now=new Date();}}function _lf_getURLParam(name){var value="";var href=window.location.href;if(href.indexOf("?")>-1){var queryString=href.substr(href.indexOf("?")).toLowerCase();var queryParams=queryString.split("&");for(var i=0;i<queryParams.length;i++){if(queryParams[i].indexOf(name+"=")>-1){var aParam=queryParams[i].split("=");value=aParam[1];break;}}}return value;}function _lf_getGUID(){_lf_vid=_lf_getCookie(_lf_cName);if(_lf_vid==undefined||_lf_vid==""||_lf_vid==null||_lf_vid=="null"){if(_lf_kt=="2"){var tkvid=_lf_getURLParam("_x_lf_kvid");if(tkvid!=undefined&&tkvid!=""&&tkvid!=null){_lf_vid=tkvid;}}}else{if(_lf_kt=="2"){var tkvid=_lf_getURLParam("_x_lf_kvid");if(tkvid!=undefined&&tkvid!=""&&tkvid!=null){if(_lf_vid!=tkvid){_lf_kvid=tkvid;}}}}_lf_processCookie(_lf_vid);}function _lf_processCookie(thevid){_lf_loopfuseVIDURL=_lf_loopfuseVIDURL+"?vid="+thevid;document.write("<SCR"+"IPT TYPE='text/javascript' SRC='"+"http"+(window.location.protocol.indexOf("https:")==0?"s":"")+"://"+_lf_loopfuseVIDURL+"'></SCR"+"IPT>");}function _lf_genCookieID(){_lf_gk=_LFC4()+_LFC4()+"-"+_LFC4()+"-"+_LFC4()+"-"+_LFC4()+"-"+_LFC4()+_LFC4()+_LFC4();return _lf_gk;}function _LFC4(){return(((1+Math.random())*65536)|0).toString(16).substring(1);}function _lf_setCookie(){var date=new Date(2020,1,1);var expires=";expires="+date.toGMTString();var _lf_domain=_lf_getDomain();var path="/";document.cookie=_lf_cName+"="+escape(_lf_vid)+((expires)?";expires="+expires:"")+((path)?";path="+path:"")+((_lf_domain)?";domain="+_lf_domain:"");}function _lf_getVID(){if(_lf_vid==undefined||_lf_vid==""||_lf_vid==null||_lf_vid=="null"){_lf_vid=_lf_genCookieID();}return _lf_vid;}function _lf_getCookie(name){var dc=document.cookie;var prefix=name+"=";var begin=dc.indexOf("; "+prefix);if(begin==-1){begin=dc.indexOf(prefix);if(begin!=0){return null;}}else{begin+=2;}var end=document.cookie.indexOf(";",begin);if(end==-1){end=dc.length;}return unescape(dc.substring(begin+prefix.length,end));}function _lf_getDomain(){var _lf_domain;if(_lf_mydomain==""||_lf_mydomain==undefined||_lf_mydomain==null||_lf_mydomain=="null"){_lf_mydomain=_lf_doc.domain;if(_lf_mydomain.substring(0,4)=="www."){_lf_domain=_lf_mydomain.substring(4,_lf_mydomain.length);}else{var e=_lf_mydomain.split(/\./);if(e.length>1){_lf_domain="."+e[e.length-2]+"."+e[e.length-1];}}return _lf_domain;}else{return"."+_lf_mydomain;}}function _lf_getReferer(){var _lf_ref=escape(_lf_doc.referrer);if(_lf_ref==undefined||_lf_ref==""){return"";}return _lf_ref;}function _lf_modForms(){var _forms=_lf_doc.getElementsByTagName("form");for(var i=0;i<_forms.length;i++){var _objForm=_forms[i];var inputV=document.createElement("input");inputV.type="hidden";inputV.name="vid";inputV.value=_lf_vid;_objForm.appendChild(inputV);var inputC=document.createElement("input");inputC.type="hidden";inputC.name="lf_cid";inputC.value=_lf_cid;_objForm.appendChild(inputC);}}_lf_getGUID();eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(6($){$.1g.1w=6(o){o=$.1f({r:n,x:n,N:n,17:q,J:n,L:1a,16:n,y:q,u:12,H:3,B:0,k:1,K:n,I:n},o||{});8 G.R(6(){p b=q,A=o.y?"15":"w",P=o.y?"t":"s";p c=$(G),9=$("9",c),E=$("10",9),W=E.Y(),v=o.H;7(o.u){9.1h(E.D(W-v-1+1).V()).1d(E.D(0,v).V());o.B+=v}p f=$("10",9),l=f.Y(),4=o.B;c.5("1c","H");f.5({U:"T",1b:o.y?"S":"w"});9.5({19:"0",18:"0",Q:"13","1v-1s-1r":"S","z-14":"1"});c.5({U:"T",Q:"13","z-14":"2",w:"1q"});p g=o.y?t(f):s(f);p h=g*l;p j=g*v;f.5({s:f.s(),t:f.t()});9.5(P,h+"C").5(A,-(4*g));c.5(P,j+"C");7(o.r)$(o.r).O(6(){8 m(4-o.k)});7(o.x)$(o.x).O(6(){8 m(4+o.k)});7(o.N)$.R(o.N,6(i,a){$(a).O(6(){8 m(o.u?o.H+i:i)})});7(o.17&&c.11)c.11(6(e,d){8 d>0?m(4-o.k):m(4+o.k)});7(o.J)1p(6(){m(4+o.k)},o.J+o.L);6 M(){8 f.D(4).D(0,v)};6 m(a){7(!b){7(o.K)o.K.Z(G,M());7(o.u){7(a<=o.B-v-1){9.5(A,-((l-(v*2))*g)+"C");4=a==o.B-v-1?l-(v*2)-1:l-(v*2)-o.k}F 7(a>=l-v+1){9.5(A,-((v)*g)+"C");4=a==l-v+1?v+1:v+o.k}F 4=a}F{7(a<0||a>l-v)8;F 4=a}b=12;9.1o(A=="w"?{w:-(4*g)}:{15:-(4*g)},o.L,o.16,6(){7(o.I)o.I.Z(G,M());b=q});7(!o.u){$(o.r+","+o.x).1n("X");$((4-o.k<0&&o.r)||(4+o.k>l-v&&o.x)||[]).1m("X")}}8 q}})};6 5(a,b){8 1l($.5(a[0],b))||0};6 s(a){8 a[0].1k+5(a,\'1j\')+5(a,\'1i\')};6 t(a){8 a[0].1t+5(a,\'1u\')+5(a,\'1e\')}})(1x);',62,96,'||||curr|css|function|if|return|ul|||||||||||scroll|itemLength|go|null||var|false|btnPrev|width|height|circular||left|btnNext|vertical||animCss|start|px|slice|tLi|else|this|visible|afterEnd|auto|beforeStart|speed|vis|btnGo|click|sizeCss|position|each|none|hidden|overflow|clone|tl|disabled|size|call|li|mousewheel|true|relative|index|top|easing|mouseWheel|padding|margin|200|float|visibility|append|marginBottom|extend|fn|prepend|marginRight|marginLeft|offsetWidth|parseInt|addClass|removeClass|animate|setInterval|0px|type|style|offsetHeight|marginTop|list|jCarouselLite|jQuery'.split('|'),0,{}))
function ImageFlow()
{this.defaults={animationSpeed:150,aspectRatio:2,buttons:false,captions:true,circular:false,imageCursor:'default',ImageFlowID:'imageflow',imageFocusM:1.0,imageFocusMax:2,imagePath:'',imageScaling:true,imagesHeight:0.7,imagesM:0.85,onClick:function(){document.location=this.url;},opacity:true,opacityArray:[10,7,4],percentLandscape:75,percentOther:100,preloadImages:true,reflections:false,reflectionGET:'',reflectionP:0.5,reflectionPNG:false,reflectPath:'',scrollbarP:0.75,slider:true,sliderCursor:'e-resize',sliderWidth:5,slideshow:false,slideshowSpeed:1500,slideshowAutoplay:false,startID:1,glideToStartID:true,startAnimation:false,xStep:90};var my=this;this.init=function(options)
{for(var name in my.defaults)
{this[name]=(options!==undefined&&options[name]!==undefined)?options[name]:my.defaults[name];}
var ImageFlowDiv=document.getElementById(my.ImageFlowID);if(ImageFlowDiv)
{ImageFlowDiv.style.visibility='visible';this.ImageFlowDiv=ImageFlowDiv;if(this.createStructure())
{this.imagesDiv=document.getElementById(my.ImageFlowID+'_images');this.captionDiv=document.getElementById(my.ImageFlowID+'_caption');this.navigationDiv=document.getElementById(my.ImageFlowID+'_navigation');this.scrollbarDiv=document.getElementById(my.ImageFlowID+'_scrollbar');this.sliderDiv=document.getElementById(my.ImageFlowID+'_slider');this.buttonNextDiv=document.getElementById(my.ImageFlowID+'_next');this.buttonPreviousDiv=document.getElementById(my.ImageFlowID+'_previous');this.buttonSlideshow=document.getElementById(my.ImageFlowID+'_slideshow');this.indexArray=[];this.current=0;this.imageID=0;this.target=0;this.memTarget=0;this.firstRefresh=true;this.firstCheck=true;this.busy=false;var width=this.ImageFlowDiv.offsetWidth;var height=Math.round(width/my.aspectRatio);document.getElementById(my.ImageFlowID+'_loading_txt').style.paddingTop=((height*0.5)-22)+'px';ImageFlowDiv.style.height=height-100+'px';this.loadingProgress();}}};this.createStructure=function()
{var imagesDiv=my.Helper.createDocumentElement('div','images');var node,version,src,imageNode;var max=my.ImageFlowDiv.childNodes.length;for(var index=0;index<max;index++)
{node=my.ImageFlowDiv.childNodes[index];if(node&&node.nodeType==1&&node.nodeName=='IMG')
{if(my.reflections===true)
{version=(my.reflectionPNG)?'3':'2';src=my.imagePath+node.getAttribute('src',2);src=my.reflectPath+'reflect'+version+'.php?img='+src+my.reflectionGET;node.setAttribute('src',src);}
imageNode=node.cloneNode(true);imagesDiv.appendChild(imageNode);}}
if(my.circular)
{var first=my.Helper.createDocumentElement('div','images');var last=my.Helper.createDocumentElement('div','images');max=imagesDiv.childNodes.length;if(max<my.imageFocusMax)
{my.imageFocusMax=max;}
if(max>1)
{var i;for(i=0;i<max;i++)
{node=imagesDiv.childNodes[i];if(i<my.imageFocusMax)
{imageNode=node.cloneNode(true);first.appendChild(imageNode);}
if(max-i<my.imageFocusMax+1)
{imageNode=node.cloneNode(true);last.appendChild(imageNode);}}
for(i=0;i<max;i++)
{node=imagesDiv.childNodes[i];imageNode=node.cloneNode(true);last.appendChild(imageNode);}
for(i=0;i<my.imageFocusMax;i++)
{node=first.childNodes[i];imageNode=node.cloneNode(true);last.appendChild(imageNode);}
imagesDiv=last;}}
if(my.slideshow)
{var slideshowButton=my.Helper.createDocumentElement('div','slideshow');imagesDiv.appendChild(slideshowButton);}
var loadingP=my.Helper.createDocumentElement('p','loading_txt');var loadingText=document.createTextNode(' ');loadingP.appendChild(loadingText);var loadingDiv=my.Helper.createDocumentElement('div','loading');var loadingBarDiv=my.Helper.createDocumentElement('div','loading_bar');loadingDiv.appendChild(loadingBarDiv);var captionDiv=my.Helper.createDocumentElement('div','caption');var scrollbarDiv=my.Helper.createDocumentElement('div','scrollbar');var sliderDiv=my.Helper.createDocumentElement('div','slider');scrollbarDiv.appendChild(sliderDiv);if(my.buttons)
{var buttonPreviousDiv=my.Helper.createDocumentElement('div','previous','button');var buttonNextDiv=my.Helper.createDocumentElement('div','next','button');scrollbarDiv.appendChild(buttonPreviousDiv);scrollbarDiv.appendChild(buttonNextDiv);}
var navigationDiv=my.Helper.createDocumentElement('div','navigation');navigationDiv.appendChild(scrollbarDiv);navigationDiv.appendChild(captionDiv);var success=false;if(my.ImageFlowDiv.appendChild(imagesDiv)&&my.ImageFlowDiv.appendChild(loadingP)&&my.ImageFlowDiv.appendChild(loadingDiv)&&my.ImageFlowDiv.appendChild(navigationDiv))
{max=my.ImageFlowDiv.childNodes.length;for(index=0;index<max;index++)
{node=my.ImageFlowDiv.childNodes[index];if(node&&node.nodeType==1&&node.nodeName=='IMG')
{my.ImageFlowDiv.removeChild(node);}}
success=true;}
return success;};this.loadingProgress=function()
{var p=my.loadingStatus();if((p<100||my.firstCheck)&&my.preloadImages)
{if(my.firstCheck&&p==100)
{my.firstCheck=false;window.setTimeout(my.loadingProgress,100);}
else
{window.setTimeout(my.loadingProgress,40);}}
else
{document.getElementById(my.ImageFlowID+'_loading_txt').style.display='none';document.getElementById(my.ImageFlowID+'_loading').style.display='none';window.setTimeout(my.Helper.addResizeEvent,1000);my.refresh();if(my.max>1)
{my.MouseWheel.init();my.MouseDrag.init();my.Touch.init();my.Key.init();if(my.slideshow)
{my.Slideshow.init();}
if(my.slider)
{my.scrollbarDiv.style.visibility='visible';}}}};this.loadingStatus=function()
{var max=my.imagesDiv.childNodes.length;var i=0,completed=0;var image=null;for(var index=0;index<max;index++)
{image=my.imagesDiv.childNodes[index];if(image&&image.nodeType==1&&image.nodeName=='IMG')
{if(image.complete)
{completed++;}
i++;}}
var finished=Math.round((completed/i)*100);var loadingBar=document.getElementById(my.ImageFlowID+'_loading_bar');loadingBar.style.width=finished+'%';if(my.circular)
{i=i-(my.imageFocusMax*2);completed=(finished<1)?0:Math.round((i/100)*finished);}
var loadingP=document.getElementById(my.ImageFlowID+'_loading_txt');var loadingTxt=document.createTextNode('loading images '+completed+'/'+i);loadingP.replaceChild(loadingTxt,loadingP.firstChild);return finished;};this.refresh=function()
{this.imagesDivWidth=my.imagesDiv.offsetWidth+my.imagesDiv.offsetLeft;this.maxHeight=Math.round(my.imagesDivWidth/my.aspectRatio);this.maxFocus=my.imageFocusMax*my.xStep;this.size=my.imagesDivWidth*0.5;this.sliderWidth=my.sliderWidth*0.5;this.scrollbarWidth=(my.imagesDivWidth-(Math.round(my.sliderWidth)*2))*my.scrollbarP;this.imagesDivHeight=Math.round(my.maxHeight*my.imagesHeight);my.ImageFlowDiv.style.height=my.maxHeight-100+'px';my.imagesDiv.style.height=my.imagesDivHeight-90+'px';my.navigationDiv.style.height=(my.maxHeight-my.imagesDivHeight)+'px';my.captionDiv.style.width=my.imagesDivWidth+'px';my.scrollbarDiv.style.width=my.scrollbarWidth+'px';my.scrollbarDiv.style.marginTop=Math.round(my.imagesDivWidth*0.03)+'px';my.scrollbarDiv.style.marginBottom=Math.round(my.imagesDivWidth*0.02)+'px';my.scrollbarDiv.style.marginLeft=Math.round(my.sliderWidth+((my.imagesDivWidth-my.scrollbarWidth)/2))+'px';my.scrollbarDiv.style.paddingTop=Math.round(my.imagesDivWidth*0.03)+'px';my.sliderDiv.style.cursor=my.sliderCursor;my.sliderDiv.onmousedown=function(){my.MouseDrag.start(this);return false;};if(my.buttons)
{my.buttonPreviousDiv.onclick=function(){my.MouseWheel.handle(1);};my.buttonNextDiv.onclick=function(){my.MouseWheel.handle(-1);};}
var multi=(my.reflections===true)?my.reflectionP+1:1;var max=my.imagesDiv.childNodes.length;var i=0;var image=null;for(var index=0;index<max;index++)
{image=my.imagesDiv.childNodes[index];if(image!==null&&image.nodeType==1&&image.nodeName=='IMG')
{this.indexArray[i]=index;image.url=image.getAttribute('longdesc');image.xPosition=(-i*my.xStep);image.i=i;if(my.firstRefresh)
{if(image.getAttribute('width')!==null&&image.getAttribute('height')!==null)
{image.w=image.getAttribute('width');image.h=image.getAttribute('height')*multi;}
else{image.w=image.width;image.h=image.height;}}
if((image.w)>(image.h/(my.reflectionP+1)))
{image.pc=my.percentLandscape;image.pcMem=my.percentLandscape;}
else
{image.pc=my.percentOther;image.pcMem=my.percentOther;}
if(my.imageScaling===false)
{image.style.position='relative';image.style.display='inline';}
image.style.cursor=my.imageCursor;i++;}}
this.max=my.indexArray.length;if(my.imageScaling===false)
{image=my.imagesDiv.childNodes[my.indexArray[0]];this.totalImagesWidth=image.w*my.max;image.style.paddingLeft=(my.imagesDivWidth/2)+(image.w/2)+'px';my.imagesDiv.style.height=image.h+'px';my.navigationDiv.style.height=(my.maxHeight-image.h)+'px';}
if(my.firstRefresh)
{my.firstRefresh=false;my.imageID=my.startID-1;if(my.imageID<0)
{my.imageID=0;}
if(my.circular)
{my.imageID=my.imageID+my.imageFocusMax;}
maxId=(my.circular)?(my.max-(my.imageFocusMax))-1:my.max-1;if(my.imageID>maxId)
{my.imageID=maxId;}
if(my.glideToStartID===false)
{my.moveTo(-my.imageID*my.xStep);}
if(my.startAnimation)
{my.moveTo(5000);}}
if(my.max>1)
{my.glideTo(my.imageID);}
my.moveTo(my.current);};this.moveTo=function(x)
{this.current=x;this.zIndex=my.max;for(var index=0;index<my.max;index++)
{var image=my.imagesDiv.childNodes[my.indexArray[index]];var currentImage=index*-my.xStep;if(my.imageScaling)
{if((currentImage+my.maxFocus)<my.memTarget||(currentImage-my.maxFocus)>my.memTarget)
{image.style.visibility='hidden';image.style.display='none';}
else
{var z=(Math.sqrt(10000+x*x)+100)*my.imagesM;var xs=x/z*my.size+my.size;image.style.display='block';var newImageH=(image.h/image.w*image.pc)/z*my.size;var newImageW=0;switch(newImageH>my.maxHeight)
{case false:newImageW=image.pc/z*my.size;break;default:newImageH=my.maxHeight;newImageW=image.w*newImageH/image.h;break;}
var newImageTop=(my.imagesDivHeight-newImageH)+((newImageH/(my.reflectionP+1))*my.reflectionP)-100;image.style.left=xs-(image.pc/2)/z*my.size+'px';if(newImageW&&newImageH)
{image.style.height=newImageH-15+'px';image.style.width=newImageW+'px';image.style.top=newImageTop+'px';}
image.style.visibility='visible';switch(x<0)
{case true:this.zIndex++;break;default:this.zIndex=my.zIndex-1;break;}
switch(image.i==my.imageID)
{case false:image.onclick=function(){my.glideTo(this.i);};break;default:this.zIndex=my.zIndex+1;if(image.url!=='')
{image.onclick=my.onClick;}
break;}
image.style.zIndex=my.zIndex;}}
else
{if((currentImage+my.maxFocus)<my.memTarget||(currentImage-my.maxFocus)>my.memTarget)
{image.style.visibility='hidden';}
else
{image.style.visibility='visible';switch(image.i==my.imageID)
{case false:image.onclick=function(){my.glideTo(this.i);};break;default:if(image.url!=='')
{image.onclick=my.onClick;}
break;}}
my.imagesDiv.style.marginLeft=(x-my.totalImagesWidth)+'px';}
x+=my.xStep;}};this.glideTo=function(imageID)
{var jumpTarget,clonedImageID;if(my.circular)
{if(imageID+1===my.imageFocusMax)
{clonedImageID=my.max-my.imageFocusMax;jumpTarget=-clonedImageID*my.xStep;imageID=clonedImageID-1;}
if(imageID===(my.max-my.imageFocusMax))
{clonedImageID=my.imageFocusMax-1;jumpTarget=-clonedImageID*my.xStep;imageID=clonedImageID+1;}}
var x=-imageID*my.xStep;this.target=x;this.memTarget=x;this.imageID=imageID;var caption=my.imagesDiv.childNodes[imageID].getAttribute('alt');if(caption===''||my.captions===false)
{caption='&nbsp;';}
my.captionDiv.innerHTML=caption;if(my.MouseDrag.busy===false)
{if(my.circular)
{this.newSliderX=((imageID-my.imageFocusMax)*my.scrollbarWidth)/(my.max-(my.imageFocusMax*2)-1)-my.MouseDrag.newX;}
else
{this.newSliderX=(imageID*my.scrollbarWidth)/(my.max-1)-my.MouseDrag.newX;}
my.sliderDiv.style.marginLeft=(my.newSliderX-my.sliderWidth)+'px';}
if(my.opacity===true||my.imageFocusM!==my.defaults.imageFocusM)
{my.Helper.setOpacity(my.imagesDiv.childNodes[imageID],my.opacityArray[0]);my.imagesDiv.childNodes[imageID].pc=my.imagesDiv.childNodes[imageID].pc*my.imageFocusM;var opacityValue=0;var rightID=0;var leftID=0;var last=my.opacityArray.length;for(var i=1;i<(my.imageFocusMax+1);i++)
{if((i+1)>last)
{opacityValue=my.opacityArray[last-1];}
else
{opacityValue=my.opacityArray[i];}
rightID=imageID+i;leftID=imageID-i;if(rightID<my.max)
{my.Helper.setOpacity(my.imagesDiv.childNodes[rightID],opacityValue);my.imagesDiv.childNodes[rightID].pc=my.imagesDiv.childNodes[rightID].pcMem;}
if(leftID>=0)
{my.Helper.setOpacity(my.imagesDiv.childNodes[leftID],opacityValue);my.imagesDiv.childNodes[leftID].pc=my.imagesDiv.childNodes[leftID].pcMem;}}}
if(jumpTarget)
{my.moveTo(jumpTarget);}
if(my.busy===false)
{my.busy=true;my.animate();}};this.animate=function()
{switch(my.target<my.current-1||my.target>my.current+1)
{case true:my.moveTo(my.current+(my.target-my.current)/3);window.setTimeout(my.animate,my.animationSpeed);my.busy=true;break;default:my.busy=false;break;}};this.glideOnEvent=function(imageID)
{if(my.slideshow)
{my.Slideshow.interrupt();}
my.glideTo(imageID);};this.Slideshow={direction:1,init:function()
{(my.slideshowAutoplay)?my.Slideshow.start():my.Slideshow.stop();},interrupt:function()
{my.Helper.removeEvent(my.ImageFlowDiv,'click',my.Slideshow.interrupt);my.Slideshow.stop();},addInterruptEvent:function()
{my.Helper.addEvent(my.ImageFlowDiv,'click',my.Slideshow.interrupt);},start:function()
{my.Helper.setClassName(my.buttonSlideshow,'slideshow pause');my.buttonSlideshow.onclick=function(){my.Slideshow.stop();};my.Slideshow.action=window.setInterval(my.Slideshow.slide,my.slideshowSpeed);window.setTimeout(my.Slideshow.addInterruptEvent,100);},stop:function()
{my.Helper.setClassName(my.buttonSlideshow,'slideshow play');my.buttonSlideshow.onclick=function(){my.Slideshow.start();};window.clearInterval(my.Slideshow.action);},slide:function()
{var newImageID=my.imageID+my.Slideshow.direction;var reverseDirection=false;if(newImageID===my.max)
{my.Slideshow.direction=-1;reverseDirection=true;}
if(newImageID<0)
{my.Slideshow.direction=1;reverseDirection=true;}
(reverseDirection)?my.Slideshow.slide():my.glideTo(newImageID);}};this.MouseWheel={init:function()
{if(window.addEventListener)
{my.ImageFlowDiv.addEventListener('DOMMouseScroll',my.MouseWheel.get,false);}
my.Helper.addEvent(my.ImageFlowDiv,'mousewheel',my.MouseWheel.get);},get:function(event)
{var delta=0;if(!event)
{event=window.event;}
if(event.wheelDelta)
{delta=event.wheelDelta/120;}
else if(event.detail)
{delta=-event.detail/3;}
if(delta)
{my.MouseWheel.handle(delta);}
my.Helper.suppressBrowserDefault(event);},handle:function(delta)
{var change=false;var newImageID=0;if(delta>0)
{if(my.imageID>=1)
{newImageID=my.imageID-1;change=true;}}
else
{if(my.imageID<(my.max-1))
{newImageID=my.imageID+1;change=true;}}
if(change)
{my.glideOnEvent(newImageID);}}};this.MouseDrag={object:null,objectX:0,mouseX:0,newX:0,busy:false,init:function()
{my.Helper.addEvent(my.ImageFlowDiv,'mousemove',my.MouseDrag.drag);my.Helper.addEvent(my.ImageFlowDiv,'mouseup',my.MouseDrag.stop);my.Helper.addEvent(document,'mouseup',my.MouseDrag.stop);my.ImageFlowDiv.onselectstart=function()
{var selection=true;if(my.MouseDrag.busy)
{selection=false;}
return selection;};},start:function(o)
{my.MouseDrag.object=o;my.MouseDrag.objectX=my.MouseDrag.mouseX-o.offsetLeft+my.newSliderX;},stop:function()
{my.MouseDrag.object=null;my.MouseDrag.busy=false;},drag:function(e)
{var posx=0;if(!e)
{e=window.event;}
if(e.pageX)
{posx=e.pageX;}
else if(e.clientX)
{posx=e.clientX+document.body.scrollLeft+document.documentElement.scrollLeft;}
my.MouseDrag.mouseX=posx;if(my.MouseDrag.object!==null)
{var newX=(my.MouseDrag.mouseX-my.MouseDrag.objectX)+my.sliderWidth;if(newX<(-my.newSliderX))
{newX=-my.newSliderX;}
if(newX>(my.scrollbarWidth-my.newSliderX))
{newX=my.scrollbarWidth-my.newSliderX;}
var step,imageID;if(my.circular)
{step=(newX+my.newSliderX)/(my.scrollbarWidth/(my.max-(my.imageFocusMax*2)-1));imageID=Math.round(step)+my.imageFocusMax;}
else
{step=(newX+my.newSliderX)/(my.scrollbarWidth/(my.max-1));imageID=Math.round(step);}
my.MouseDrag.newX=newX;my.MouseDrag.object.style.left=newX+'px';if(my.imageID!==imageID)
{my.glideOnEvent(imageID);}
my.MouseDrag.busy=true;}}};this.Touch={x:0,startX:0,stopX:0,busy:false,first:true,init:function()
{my.Helper.addEvent(my.navigationDiv,'touchstart',my.Touch.start);my.Helper.addEvent(document,'touchmove',my.Touch.handle);my.Helper.addEvent(document,'touchend',my.Touch.stop);},isOnNavigationDiv:function(e)
{var state=false;if(e.touches)
{var target=e.touches[0].target;if(target===my.navigationDiv||target===my.sliderDiv||target===my.scrollbarDiv)
{state=true;}}
return state;},getX:function(e)
{var x=0;if(e.touches)
{x=e.touches[0].pageX;}
return x;},start:function(e)
{my.Touch.startX=my.Touch.getX(e);my.Touch.busy=true;my.Helper.suppressBrowserDefault(e);},isBusy:function()
{var busy=false;if(my.Touch.busy)
{busy=true;}
return busy;},handle:function(e)
{if(my.Touch.isBusy&&my.Touch.isOnNavigationDiv(e))
{var max=(my.circular)?(my.max-(my.imageFocusMax*2)-1):(my.max-1);if(my.Touch.first)
{my.Touch.stopX=(max-my.imageID)*(my.imagesDivWidth/max);my.Touch.first=false;}
var newX=-(my.Touch.getX(e)-my.Touch.startX-my.Touch.stopX);if(newX<0)
{newX=0;}
if(newX>my.imagesDivWidth)
{newX=my.imagesDivWidth;}
my.Touch.x=newX;var imageID=Math.round(newX/(my.imagesDivWidth/max));imageID=max-imageID;if(my.imageID!==imageID)
{if(my.circular)
{imageID=imageID+my.imageFocusMax;}
my.glideOnEvent(imageID);}
my.Helper.suppressBrowserDefault(e);}},stop:function()
{my.Touch.stopX=my.Touch.x;my.Touch.busy=false;}};this.Key={init:function()
{document.onkeydown=function(event){my.Key.handle(event);};},handle:function(event)
{var charCode=my.Key.get(event);switch(charCode)
{case 39:my.MouseWheel.handle(-1);break;case 37:my.MouseWheel.handle(1);break;}},get:function(event)
{event=event||window.event;return event.keyCode;}};this.Helper={addEvent:function(obj,type,fn)
{if(obj.addEventListener)
{obj.addEventListener(type,fn,false);}
else if(obj.attachEvent)
{obj["e"+type+fn]=fn;obj[type+fn]=function(){obj["e"+type+fn](window.event);};obj.attachEvent("on"+type,obj[type+fn]);}},removeEvent:function(obj,type,fn)
{if(obj.removeEventListener)
{obj.removeEventListener(type,fn,false);}
else if(obj.detachEvent)
{if(obj[type+fn]===undefined)
{alert('Helper.removeEvent » Pointer to detach event is undefined - perhaps you are trying to detach an unattached event?');}
obj.detachEvent('on'+type,obj[type+fn]);obj[type+fn]=null;obj['e'+type+fn]=null;}},setOpacity:function(object,value)
{if(my.opacity===true)
{object.style.opacity=value/10;object.style.filter='alpha(opacity='+value*10+')';}},createDocumentElement:function(type,id,optionalClass)
{var element=document.createElement(type);element.setAttribute('id',my.ImageFlowID+'_'+id);if(optionalClass!==undefined)
{id+=' '+optionalClass;}
my.Helper.setClassName(element,id);return element;},setClassName:function(element,className)
{if(element)
{element.setAttribute('class',className);element.setAttribute('className',className);}},suppressBrowserDefault:function(e)
{if(e.preventDefault)
{e.preventDefault();}
else
{e.returnValue=false;}
return false;},addResizeEvent:function()
{var otherFunctions=window.onresize;if(typeof window.onresize!='function')
{window.onresize=function()
{my.refresh();};}
else
{window.onresize=function(){if(otherFunctions)
{otherFunctions();}
my.refresh();};}}};}
var domReadyEvent={name:"domReadyEvent",events:{},domReadyID:1,bDone:false,DOMContentLoadedCustom:null,add:function(handler)
{if(!handler.$$domReadyID)
{handler.$$domReadyID=this.domReadyID++;if(this.bDone)
{handler();}
this.events[handler.$$domReadyID]=handler;}},remove:function(handler)
{if(handler.$$domReadyID)
{delete this.events[handler.$$domReadyID];}},run:function()
{if(this.bDone)
{return;}
this.bDone=true;for(var i in this.events)
{this.events[i]();}},schedule:function()
{if(this.bDone)
{return;}
if(/KHTML|WebKit/i.test(navigator.userAgent))
{if(/loaded|complete/.test(document.readyState))
{this.run();}
else
{setTimeout(this.name+".schedule()",100);}}
else if(document.getElementById("__ie_onload"))
{return true;}
if(typeof this.DOMContentLoadedCustom==="function")
{if(typeof document.getElementsByTagName!=='undefined'&&(document.getElementsByTagName('body')[0]!==null||document.body!==null))
{if(this.DOMContentLoadedCustom())
{this.run();}
else
{setTimeout(this.name+".schedule()",250);}}}
return true;},init:function()
{if(document.addEventListener)
{document.addEventListener("DOMContentLoaded",function(){domReadyEvent.run();},false);}
setTimeout("domReadyEvent.schedule()",100);function run()
{domReadyEvent.run();}
if(typeof addEvent!=="undefined")
{addEvent(window,"load",run);}
else if(document.addEventListener)
{document.addEventListener("load",run,false);}
else if(typeof window.onload==="function")
{var oldonload=window.onload;window.onload=function()
{domReadyEvent.run();oldonload();};}
else
{window.onload=run;}}};if(!hs){var hs={lang:{cssDirection:'ltr',loadingText:'Loading...',loadingTitle:'Click to cancel',focusTitle:'Click to bring to front',fullExpandTitle:'Expand to actual size (f)',creditsText:'Powered by <i>Highslide JS</i>',creditsTitle:'Go to the Highslide JS homepage',restoreTitle:'Click to close image, click and drag to move.'},graphicsDir:'/company/rest-company/jcr/repository/collaboration/sites content/live/website/medias/images/',expandCursor:'zoomin.cur',restoreCursor:'zoomout.cur',expandDuration:250,restoreDuration:250,marginLeft:15,marginRight:15,marginTop:15,marginBottom:15,zIndexCounter:1001,loadingOpacity:0.75,allowMultipleInstances:true,numberOfImagesToPreload:5,outlineWhileAnimating:2,outlineStartOffset:3,padToMinWidth:false,fullExpandPosition:'bottom right',fullExpandOpacity:1,showCredits:false,creditsHref:'http://highslide.com/',creditsTarget:'_self',enableKeyListener:true,openerTagNames:['a'],dragByHeading:true,minWidth:200,minHeight:150,allowSizeReduction:true,outlineType:'drop-shadow',preloadTheseImages:[],continuePreloading:true,expanders:[],overrides:['allowSizeReduction','useBox','outlineType','outlineWhileAnimating','captionId','captionText','captionEval','captionOverlay','headingId','headingText','headingEval','headingOverlay','creditsPosition','dragByHeading','width','height','wrapperClassName','minWidth','minHeight','maxWidth','maxHeight','slideshowGroup','easing','easingClose','fadeInOut','src'],overlays:[],idCounter:0,oPos:{x:['leftpanel','left','center','right','rightpanel'],y:['above','top','middle','bottom','below']},mouse:{},headingOverlay:{},captionOverlay:{},timers:[],pendingOutlines:{},clones:{},onReady:[],uaVersion:/Trident\/4\.0/.test(navigator.userAgent)?8:parseFloat((navigator.userAgent.toLowerCase().match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,'0'])[1]),ie:(document.all&&!window.opera),safari:/Safari/.test(navigator.userAgent),geckoMac:/Macintosh.+rv:1\.[0-8].+Gecko/.test(navigator.userAgent),$:function(id){if(id)return document.getElementById(id);},push:function(arr,val){arr[arr.length]=val;},createElement:function(tag,attribs,styles,parent,nopad){var el=document.createElement(tag);if(attribs)hs.extend(el,attribs);if(nopad)hs.setStyles(el,{padding:0,border:'none',margin:0});if(styles)hs.setStyles(el,styles);if(parent)parent.appendChild(el);return el;},extend:function(el,attribs){for(var x in attribs)el[x]=attribs[x];return el;},setStyles:function(el,styles){for(var x in styles){if(hs.ie&&x=='opacity'){if(styles[x]>0.99)el.style.removeAttribute('filter');else el.style.filter='alpha(opacity='+(styles[x]*100)+')';}
else el.style[x]=styles[x];}},animate:function(el,prop,opt){var start,end,unit;if(typeof opt!='object'||opt===null){var args=arguments;opt={duration:args[2],easing:args[3],complete:args[4]};}
if(typeof opt.duration!='number')opt.duration=250;opt.easing=Math[opt.easing]||Math.easeInQuad;opt.curAnim=hs.extend({},prop);for(var name in prop){var e=new hs.fx(el,opt,name);start=parseFloat(hs.css(el,name))||0;end=parseFloat(prop[name]);unit=name!='opacity'?'px':'';e.custom(start,end,unit);}},css:function(el,prop){if(document.defaultView){return document.defaultView.getComputedStyle(el,null).getPropertyValue(prop);}else{if(prop=='opacity')prop='filter';var val=el.currentStyle[prop.replace(/\-(\w)/g,function(a,b){return b.toUpperCase();})];if(prop=='filter')
val=val.replace(/alpha\(opacity=([0-9]+)\)/,function(a,b){return b/100});return val===''?1:val;}},getPageSize:function(){var d=document,w=window,iebody=d.compatMode&&d.compatMode!='BackCompat'?d.documentElement:d.body;var width=hs.ie?iebody.clientWidth:(d.documentElement.clientWidth||self.innerWidth),height=hs.ie?iebody.clientHeight:self.innerHeight;hs.page={width:width,height:height,scrollLeft:hs.ie?iebody.scrollLeft:pageXOffset,scrollTop:hs.ie?iebody.scrollTop:pageYOffset}},getPosition:function(el){var p={x:el.offsetLeft,y:el.offsetTop};while(el.offsetParent){el=el.offsetParent;p.x+=el.offsetLeft;p.y+=el.offsetTop;if(el!=document.body&&el!=document.documentElement){p.x-=el.scrollLeft;p.y-=el.scrollTop;}}
return p;},expand:function(a,params,custom,type){if(!a)a=hs.createElement('a',null,{display:'none'},hs.container);if(typeof a.getParams=='function')return params;try{new hs.Expander(a,params,custom);return false;}catch(e){return true;}},focusTopmost:function(){var topZ=0,topmostKey=-1,expanders=hs.expanders,exp,zIndex;for(var i=0;i<expanders.length;i++){exp=expanders[i];if(exp){zIndex=exp.wrapper.style.zIndex;if(zIndex&&zIndex>topZ){topZ=zIndex;topmostKey=i;}}}
if(topmostKey==-1)hs.focusKey=-1;else expanders[topmostKey].focus();},getParam:function(a,param){a.getParams=a.onclick;var p=a.getParams?a.getParams():null;a.getParams=null;return(p&&typeof p[param]!='undefined')?p[param]:(typeof hs[param]!='undefined'?hs[param]:null);},getSrc:function(a){var src=hs.getParam(a,'src');if(src)return src;return a.href;},getNode:function(id){var node=hs.$(id),clone=hs.clones[id],a={};if(!node&&!clone)return null;if(!clone){clone=node.cloneNode(true);clone.id='';hs.clones[id]=clone;return node;}else{return clone.cloneNode(true);}},discardElement:function(d){if(d)hs.garbageBin.appendChild(d);hs.garbageBin.innerHTML='';},transit:function(adj,exp){var last=exp=exp||hs.getExpander();if(hs.upcoming)return false;else hs.last=last;try{hs.upcoming=adj;adj.onclick();}catch(e){hs.last=hs.upcoming=null;}
try{exp.close();}catch(e){}
return false;},previousOrNext:function(el,op){var exp=hs.getExpander(el);if(exp)return hs.transit(exp.getAdjacentAnchor(op),exp);else return false;},previous:function(el){return hs.previousOrNext(el,-1);},next:function(el){return hs.previousOrNext(el,1);},keyHandler:function(e){if(!e)e=window.event;if(!e.target)e.target=e.srcElement;if(typeof e.target.form!='undefined')return true;var exp=hs.getExpander();var op=null;switch(e.keyCode){case 70:if(exp)exp.doFullExpand();return true;case 32:case 34:case 39:case 40:op=1;break;case 8:case 33:case 37:case 38:op=-1;break;case 27:case 13:op=0;}
if(op!==null){hs.removeEventListener(document,window.opera?'keypress':'keydown',hs.keyHandler);if(!hs.enableKeyListener)return true;if(e.preventDefault)e.preventDefault();else e.returnValue=false;if(exp){if(op==0){exp.close();}else{hs.previousOrNext(exp.key,op);}
return false;}}
return true;},registerOverlay:function(overlay){hs.push(hs.overlays,hs.extend(overlay,{hsId:'hsId'+hs.idCounter++}));},getWrapperKey:function(element,expOnly){var el,re=/^highslide-wrapper-([0-9]+)$/;el=element;while(el.parentNode){if(el.id&&re.test(el.id))return el.id.replace(re,"$1");el=el.parentNode;}
if(!expOnly){el=element;while(el.parentNode){if(el.tagName&&hs.isHsAnchor(el)){for(var key=0;key<hs.expanders.length;key++){var exp=hs.expanders[key];if(exp&&exp.a==el)return key;}}
el=el.parentNode;}}
return null;},getExpander:function(el,expOnly){if(typeof el=='undefined')return hs.expanders[hs.focusKey]||null;if(typeof el=='number')return hs.expanders[el]||null;if(typeof el=='string')el=hs.$(el);return hs.expanders[hs.getWrapperKey(el,expOnly)]||null;},isHsAnchor:function(a){return(a.onclick&&a.onclick.toString().replace(/\s/g,' ').match(/hs.(htmlE|e)xpand/));},reOrder:function(){for(var i=0;i<hs.expanders.length;i++)
if(hs.expanders[i]&&hs.expanders[i].isExpanded)hs.focusTopmost();},mouseClickHandler:function(e)
{if(!e)e=window.event;if(e.button>1)return true;if(!e.target)e.target=e.srcElement;var el=e.target;while(el.parentNode&&!(/highslide-(image|move|html|resize)/.test(el.className)))
{el=el.parentNode;}
var exp=hs.getExpander(el);if(exp&&(exp.isClosing||!exp.isExpanded))return true;if(exp&&e.type=='mousedown'){if(e.target.form)return true;var match=el.className.match(/highslide-(image|move|resize)/);if(match){hs.dragArgs={exp:exp,type:match[1],left:exp.x.pos,width:exp.x.size,top:exp.y.pos,height:exp.y.size,clickX:e.clientX,clickY:e.clientY};hs.addEventListener(document,'mousemove',hs.dragHandler);if(e.preventDefault)e.preventDefault();if(/highslide-(image|html)-blur/.test(exp.content.className)){exp.focus();hs.hasFocused=true;}
return false;}}else if(e.type=='mouseup'){hs.removeEventListener(document,'mousemove',hs.dragHandler);if(hs.dragArgs){if(hs.styleRestoreCursor&&hs.dragArgs.type=='image')
hs.dragArgs.exp.content.style.cursor=hs.styleRestoreCursor;var hasDragged=hs.dragArgs.hasDragged;if(!hasDragged&&!hs.hasFocused&&!/(move|resize)/.test(hs.dragArgs.type)){exp.close();}
else if(hasDragged||(!hasDragged&&hs.hasHtmlExpanders)){hs.dragArgs.exp.doShowHide('hidden');}
hs.hasFocused=false;hs.dragArgs=null;}else if(/highslide-image-blur/.test(el.className)){el.style.cursor=hs.styleRestoreCursor;}}
return false;},dragHandler:function(e)
{if(!hs.dragArgs)return true;if(!e)e=window.event;var a=hs.dragArgs,exp=a.exp;a.dX=e.clientX-a.clickX;a.dY=e.clientY-a.clickY;var distance=Math.sqrt(Math.pow(a.dX,2)+Math.pow(a.dY,2));if(!a.hasDragged)a.hasDragged=(a.type!='image'&&distance>0)||(distance>(hs.dragSensitivity||5));if(a.hasDragged&&e.clientX>5&&e.clientY>5){if(a.type=='resize')exp.resize(a);else{exp.moveTo(a.left+a.dX,a.top+a.dY);if(a.type=='image')exp.content.style.cursor='move';}}
return false;},wrapperMouseHandler:function(e){try{if(!e)e=window.event;var over=/mouseover/i.test(e.type);if(!e.target)e.target=e.srcElement;if(hs.ie)e.relatedTarget=over?e.fromElement:e.toElement;var exp=hs.getExpander(e.target);if(!exp.isExpanded)return;if(!exp||!e.relatedTarget||hs.getExpander(e.relatedTarget,true)==exp||hs.dragArgs)return;for(var i=0;i<exp.overlays.length;i++)(function(){var o=hs.$('hsId'+exp.overlays[i]);if(o&&o.hideOnMouseOut){if(over)hs.setStyles(o,{visibility:'visible',display:''});hs.animate(o,{opacity:over?o.opacity:0},o.dur);}})();}catch(e){}},addEventListener:function(el,event,func){if(el==document&&event=='ready')hs.push(hs.onReady,func);try{el.addEventListener(event,func,false);}catch(e){try{el.detachEvent('on'+event,func);el.attachEvent('on'+event,func);}catch(e){el['on'+event]=func;}}},removeEventListener:function(el,event,func){try{el.removeEventListener(event,func,false);}catch(e){try{el.detachEvent('on'+event,func);}catch(e){el['on'+event]=null;}}},preloadFullImage:function(i){if(hs.continuePreloading&&hs.preloadTheseImages[i]&&hs.preloadTheseImages[i]!='undefined'){var img=document.createElement('img');img.onload=function(){img=null;hs.preloadFullImage(i+1);};img.src=hs.preloadTheseImages[i];}},preloadImages:function(number){if(number&&typeof number!='object')hs.numberOfImagesToPreload=number;var arr=hs.getAnchors();for(var i=0;i<arr.images.length&&i<hs.numberOfImagesToPreload;i++){hs.push(hs.preloadTheseImages,hs.getSrc(arr.images[i]));}
if(hs.outlineType)new hs.Outline(hs.outlineType,function(){hs.preloadFullImage(0)});else
hs.preloadFullImage(0);if(hs.restoreCursor)var cur=hs.createElement('img',{src:hs.graphicsDir+hs.restoreCursor});},init:function(){if(!hs.container){hs.getPageSize();hs.ieLt7=hs.ie&&hs.uaVersion<7;for(var x in hs.langDefaults){if(typeof hs[x]!='undefined')hs.lang[x]=hs[x];else if(typeof hs.lang[x]=='undefined'&&typeof hs.langDefaults[x]!='undefined')
hs.lang[x]=hs.langDefaults[x];}
hs.container=hs.createElement('div',{className:'highslide-container'},{position:'absolute',left:0,top:0,width:'100%',zIndex:hs.zIndexCounter,direction:'ltr'},document.body,true);hs.loading=hs.createElement('a',{className:'highslide-loading',title:hs.lang.loadingTitle,innerHTML:hs.lang.loadingText,href:'javascript:;'},{position:'absolute',top:'-9999px',opacity:hs.loadingOpacity,zIndex:1},hs.container);hs.garbageBin=hs.createElement('div',null,{display:'none'},hs.container);Math.linearTween=function(t,b,c,d){return c*t/d+b;};Math.easeInQuad=function(t,b,c,d){return c*(t/=d)*t+b;};hs.hideSelects=hs.ieLt7;hs.hideIframes=((window.opera&&hs.uaVersion<9)||navigator.vendor=='KDE'||(hs.ie&&hs.uaVersion<5.5));}},ready:function(){if(hs.isReady)return;hs.isReady=true;for(var i=0;i<hs.onReady.length;i++)hs.onReady[i]();},updateAnchors:function(){var el,els,all=[],images=[],groups={},re;for(var i=0;i<hs.openerTagNames.length;i++){els=document.getElementsByTagName(hs.openerTagNames[i]);for(var j=0;j<els.length;j++){el=els[j];re=hs.isHsAnchor(el);if(re){hs.push(all,el);if(re[0]=='hs.expand')hs.push(images,el);var g=hs.getParam(el,'slideshowGroup')||'none';if(!groups[g])groups[g]=[];hs.push(groups[g],el);}}}
hs.anchors={all:all,groups:groups,images:images};return hs.anchors;},getAnchors:function(){return hs.anchors||hs.updateAnchors();},close:function(el){var exp=hs.getExpander(el);if(exp)exp.close();return false;}};hs.fx=function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig)options.orig={};};hs.fx.prototype={update:function(){(hs.fx.step[this.prop]||hs.fx.step._default)(this);if(this.options.step)
this.options.step.call(this.elem,this.now,this);},custom:function(from,to,unit){this.startTime=(new Date()).getTime();this.start=from;this.end=to;this.unit=unit;this.now=this.start;this.pos=this.state=0;var self=this;function t(gotoEnd){return self.step(gotoEnd);}
t.elem=this.elem;if(t()&&hs.timers.push(t)==1){hs.timerId=setInterval(function(){var timers=hs.timers;for(var i=0;i<timers.length;i++)
if(!timers[i]())
timers.splice(i--,1);if(!timers.length){clearInterval(hs.timerId);}},13);}},step:function(gotoEnd){var t=(new Date()).getTime();if(gotoEnd||t>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim)
if(this.options.curAnim[i]!==true)
done=false;if(done){if(this.options.complete)this.options.complete.call(this.elem);}
return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=this.options.easing(n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();}
return true;}};hs.extend(hs.fx,{step:{opacity:function(fx){hs.setStyles(fx.elem,{opacity:fx.now});},_default:function(fx){try{if(fx.elem.style&&fx.elem.style[fx.prop]!=null)
fx.elem.style[fx.prop]=fx.now+fx.unit;else
fx.elem[fx.prop]=fx.now;}catch(e){}}}});hs.Outline=function(outlineType,onLoad){this.onLoad=onLoad;this.outlineType=outlineType;var v=hs.uaVersion,tr;this.hasAlphaImageLoader=hs.ie&&v>=5.5&&v<7;if(!outlineType){if(onLoad)onLoad();return;}
hs.init();this.table=hs.createElement('table',{cellSpacing:0},{visibility:'hidden',position:'absolute',borderCollapse:'collapse',width:0},hs.container,true);var tbody=hs.createElement('tbody',null,null,this.table,1);this.td=[];for(var i=0;i<=8;i++){if(i%3==0)tr=hs.createElement('tr',null,{height:'auto'},tbody,true);this.td[i]=hs.createElement('td',null,null,tr,true);var style=i!=4?{lineHeight:0,fontSize:0}:{position:'relative'};hs.setStyles(this.td[i],style);}
this.td[4].className=outlineType+' highslide-outline';this.preloadGraphic();};hs.Outline.prototype={preloadGraphic:function(){var src=hs.graphicsDir+(hs.outlinesDir||"outlines/")+this.outlineType+".png";var appendTo=hs.safari?hs.container:null;this.graphic=hs.createElement('img',null,{position:'absolute',top:'-9999px'},appendTo,true);var pThis=this;this.graphic.onload=function(){pThis.onGraphicLoad();};this.graphic.src=src;},onGraphicLoad:function(){var o=this.offset=this.graphic.width/4,pos=[[0,0],[0,-4],[-2,0],[0,-8],0,[-2,-8],[0,-2],[0,-6],[-2,-2]],dim={height:(2*o)+'px',width:(2*o)+'px'};for(var i=0;i<=8;i++){if(pos[i]){if(this.hasAlphaImageLoader){var w=(i==1||i==7)?'100%':this.graphic.width+'px';var div=hs.createElement('div',null,{width:'100%',height:'100%',position:'relative',overflow:'hidden'},this.td[i],true);hs.createElement('div',null,{filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale, src='"+this.graphic.src+"')",position:'absolute',width:w,height:this.graphic.height+'px',left:(pos[i][0]*o)+'px',top:(pos[i][1]*o)+'px'},div,true);}else{hs.setStyles(this.td[i],{background:'url('+this.graphic.src+') '+(pos[i][0]*o)+'px '+(pos[i][1]*o)+'px'});}
if(window.opera&&(i==3||i==5))
hs.createElement('div',null,dim,this.td[i],true);hs.setStyles(this.td[i],dim);}}
this.graphic=null;if(hs.pendingOutlines[this.outlineType])hs.pendingOutlines[this.outlineType].destroy();hs.pendingOutlines[this.outlineType]=this;if(this.onLoad)this.onLoad();},setPosition:function(pos,offset,vis,dur,easing){var exp=this.exp,stl=exp.wrapper.style,offset=offset||0,pos=pos||{x:exp.x.pos+offset,y:exp.y.pos+offset,w:exp.x.get('wsize')-2*offset,h:exp.y.get('wsize')-2*offset};if(vis)this.table.style.visibility=(pos.h>=4*this.offset)?'visible':'hidden';hs.setStyles(this.table,{left:(pos.x-this.offset)+'px',top:(pos.y-this.offset)+'px',width:(pos.w+2*this.offset)+'px'});pos.w-=2*this.offset;pos.h-=2*this.offset;hs.setStyles(this.td[4],{width:pos.w>=0?pos.w+'px':0,height:pos.h>=0?pos.h+'px':0});if(this.hasAlphaImageLoader)this.td[3].style.height=this.td[5].style.height=this.td[4].style.height;},destroy:function(hide){if(hide)this.table.style.visibility='hidden';else hs.discardElement(this.table);}};hs.Dimension=function(exp,dim){this.exp=exp;this.dim=dim;this.ucwh=dim=='x'?'Width':'Height';this.wh=this.ucwh.toLowerCase();this.uclt=dim=='x'?'Left':'Top';this.lt=this.uclt.toLowerCase();this.ucrb=dim=='x'?'Right':'Bottom';this.rb=this.ucrb.toLowerCase();this.p1=this.p2=0;};hs.Dimension.prototype={get:function(key){switch(key){case'loadingPos':return this.tpos+this.tb+(this.t-hs.loading['offset'+this.ucwh])/2;case'wsize':return this.size+2*this.cb+this.p1+this.p2;case'fitsize':return this.clientSize-this.marginMin-this.marginMax;case'maxsize':return this.get('fitsize')-2*this.cb-this.p1-this.p2;case'opos':return this.pos-(this.exp.outline?this.exp.outline.offset:0);case'osize':return this.get('wsize')+(this.exp.outline?2*this.exp.outline.offset:0);case'imgPad':return this.imgSize?Math.round((this.size-this.imgSize)/2):0;}},calcBorders:function(){this.cb=(this.exp.content['offset'+this.ucwh]-this.t)/2;this.marginMax=hs['margin'+this.ucrb];},calcThumb:function(){this.t=this.exp.el[this.wh]?parseInt(this.exp.el[this.wh]):this.exp.el['offset'+this.ucwh];this.tpos=this.exp.tpos[this.dim];this.tb=(this.exp.el['offset'+this.ucwh]-this.t)/2;if(this.tpos==0||this.tpos==-1){this.tpos=(hs.page[this.wh]/2)+hs.page['scroll'+this.uclt];};},calcExpanded:function(){var exp=this.exp;this.justify='auto';this.pos=this.tpos-this.cb+this.tb;if(this.maxHeight&&this.dim=='x')
exp.maxWidth=Math.min(exp.maxWidth||this.full,exp.maxHeight*this.full/exp.y.full);this.size=Math.min(this.full,exp['max'+this.ucwh]||this.full);this.minSize=exp.allowSizeReduction?Math.min(exp['min'+this.ucwh],this.full):this.full;if(exp.isImage&&exp.useBox){this.size=exp[this.wh];this.imgSize=this.full;}
if(this.dim=='x'&&hs.padToMinWidth)this.minSize=exp.minWidth;this.marginMin=hs['margin'+this.uclt];this.scroll=hs.page['scroll'+this.uclt];this.clientSize=hs.page[this.wh];},setSize:function(i){var exp=this.exp;if(exp.isImage&&(exp.useBox||hs.padToMinWidth)){this.imgSize=i;this.size=Math.max(this.size,this.imgSize);exp.content.style[this.lt]=this.get('imgPad')+'px';}else
this.size=i;exp.content.style[this.wh]=i+'px';exp.wrapper.style[this.wh]=this.get('wsize')+'px';if(exp.outline)exp.outline.setPosition();if(this.dim=='x'&&exp.overlayBox)exp.sizeOverlayBox(true);},setPos:function(i){this.pos=i;this.exp.wrapper.style[this.lt]=i+'px';if(this.exp.outline)this.exp.outline.setPosition();}};hs.Expander=function(a,params,custom,contentType){if(document.readyState&&hs.ie&&!hs.isReady){hs.addEventListener(document,'ready',function(){new hs.Expander(a,params,custom,contentType);});return;}
this.a=a;this.custom=custom;this.contentType=contentType||'image';this.isImage=!this.isHtml;hs.continuePreloading=false;this.overlays=[];hs.init();var key=this.key=hs.expanders.length;for(var i=0;i<hs.overrides.length;i++){var name=hs.overrides[i];this[name]=params&&typeof params[name]!='undefined'?params[name]:hs[name];}
if(!this.src)this.src=a.href;var el=(params&&params.thumbnailId)?hs.$(params.thumbnailId):a;el=this.thumb=el.getElementsByTagName('img')[0]||el;this.thumbsUserSetId=el.id||a.id;for(var i=0;i<hs.expanders.length;i++){if(hs.expanders[i]&&hs.expanders[i].a==a){hs.expanders[i].focus();return false;}}
if(!hs.allowSimultaneousLoading)for(var i=0;i<hs.expanders.length;i++){if(hs.expanders[i]&&hs.expanders[i].thumb!=el&&!hs.expanders[i].onLoadStarted){hs.expanders[i].cancelLoading();}}
hs.expanders[key]=this;if(!hs.allowMultipleInstances&&!hs.upcoming){if(hs.expanders[key-1])hs.expanders[key-1].close();if(typeof hs.focusKey!='undefined'&&hs.expanders[hs.focusKey])
hs.expanders[hs.focusKey].close();}
this.el=el;this.tpos=hs.getPosition(el);hs.getPageSize();var x=this.x=new hs.Dimension(this,'x');x.calcThumb();var y=this.y=new hs.Dimension(this,'y');y.calcThumb();this.wrapper=hs.createElement('div',{id:'highslide-wrapper-'+this.key,className:'highslide-wrapper '+this.wrapperClassName},{visibility:'hidden',position:'absolute',zIndex:hs.zIndexCounter+=2},null,true);this.wrapper.onmouseover=this.wrapper.onmouseout=hs.wrapperMouseHandler;if(this.contentType=='image'&&this.outlineWhileAnimating==2)
this.outlineWhileAnimating=0;if(!this.outlineType){this[this.contentType+'Create']();}else if(hs.pendingOutlines[this.outlineType]){this.connectOutline();this[this.contentType+'Create']();}else{this.showLoading();var exp=this;new hs.Outline(this.outlineType,function(){exp.connectOutline();exp[exp.contentType+'Create']();});}
return true;};hs.Expander.prototype={error:function(e){window.location.href=this.src;},connectOutline:function(){var outline=this.outline=hs.pendingOutlines[this.outlineType];outline.exp=this;outline.table.style.zIndex=this.wrapper.style.zIndex-1;hs.pendingOutlines[this.outlineType]=null;},showLoading:function(){if(this.onLoadStarted||this.loading)return;this.loading=hs.loading;var exp=this;this.loading.onclick=function(){exp.cancelLoading();};var exp=this,l=this.x.get('loadingPos')+'px',t=this.y.get('loadingPos')+'px';setTimeout(function(){if(exp.loading)hs.setStyles(exp.loading,{left:l,top:t,zIndex:hs.zIndexCounter++})},100);},imageCreate:function(){var exp=this;var img=document.createElement('img');this.content=img;img.onload=function(){if(hs.expanders[exp.key])exp.contentLoaded();};if(hs.blockRightClick)img.oncontextmenu=function(){return false;};img.className='highslide-image';hs.setStyles(img,{visibility:'hidden',display:'block',position:'absolute',maxWidth:'9999px',zIndex:3});img.title=hs.lang.restoreTitle;if(hs.safari)hs.container.appendChild(img);if(hs.ie&&hs.flushImgSize)img.src=null;img.src=this.src;this.showLoading();},contentLoaded:function(){try{if(!this.content)return;this.content.onload=null;if(this.onLoadStarted)return;else this.onLoadStarted=true;var x=this.x,y=this.y;if(this.loading){hs.setStyles(this.loading,{top:'-9999px'});this.loading=null;}
x.full=this.content.width;y.full=this.content.height;hs.setStyles(this.content,{width:x.t+'px',height:y.t+'px'});this.wrapper.appendChild(this.content);hs.container.appendChild(this.wrapper);x.calcBorders();y.calcBorders();hs.setStyles(this.wrapper,{left:(x.tpos+x.tb-x.cb)+'px',top:(y.tpos+x.tb-y.cb)+'px'});this.getOverlays();var ratio=x.full/y.full;x.calcExpanded();this.justify(x);y.calcExpanded();this.justify(y);if(this.overlayBox)this.sizeOverlayBox(0,1);if(this.allowSizeReduction){this.correctRatio(ratio);if(this.isImage&&this.x.full>(this.x.imgSize||this.x.size)){this.createFullExpand();if(this.overlays.length==1)this.sizeOverlayBox();}}
this.show();}catch(e){this.error(e);}},justify:function(p,moveOnly){var tgtArr,tgt=p.target,dim=p==this.x?'x':'y';var hasMovedMin=false;var allowReduce=p.exp.allowSizeReduction;p.pos=Math.round(p.pos-((p.get('wsize')-p.t)/2));if(p.pos<p.scroll+p.marginMin){p.pos=p.scroll+p.marginMin;hasMovedMin=true;}
if(!moveOnly&&p.size<p.minSize){p.size=p.minSize;allowReduce=false;}
if(p.pos+p.get('wsize')>p.scroll+p.clientSize-p.marginMax){if(!moveOnly&&hasMovedMin&&allowReduce){p.size=Math.min(p.size,p.get(dim=='y'?'fitsize':'maxsize'));}else if(p.get('wsize')<p.get('fitsize')){p.pos=p.scroll+p.clientSize-p.marginMax-p.get('wsize');}else{p.pos=p.scroll+p.marginMin;if(!moveOnly&&allowReduce)p.size=p.get(dim=='y'?'fitsize':'maxsize');}}
if(!moveOnly&&p.size<p.minSize){p.size=p.minSize;allowReduce=false;}
if(p.pos<p.marginMin){var tmpMin=p.pos;p.pos=p.marginMin;if(allowReduce&&!moveOnly)p.size=p.size-(p.pos-tmpMin);}},correctRatio:function(ratio){var x=this.x,y=this.y,changed=false,xSize=Math.min(x.full,x.size),ySize=Math.min(y.full,y.size),useBox=(this.useBox||hs.padToMinWidth);if(xSize/ySize>ratio){xSize=ySize*ratio;if(xSize<x.minSize){xSize=x.minSize;ySize=xSize/ratio;}
changed=true;}else if(xSize/ySize<ratio){ySize=xSize/ratio;changed=true;}
if(hs.padToMinWidth&&x.full<x.minSize){x.imgSize=x.full;y.size=y.imgSize=y.full;}else if(this.useBox){x.imgSize=xSize;y.imgSize=ySize;}else{x.size=xSize;y.size=ySize;}
changed=this.fitOverlayBox(useBox?null:ratio,changed);if(useBox&&y.size<y.imgSize){y.imgSize=y.size;x.imgSize=y.size*ratio;}
if(changed||useBox){x.pos=x.tpos-x.cb+x.tb;x.minSize=x.size;this.justify(x,true);y.pos=y.tpos-y.cb+y.tb;y.minSize=y.size;this.justify(y,true);if(this.overlayBox)this.sizeOverlayBox();}},fitOverlayBox:function(ratio,changed){var x=this.x,y=this.y;if(this.overlayBox){while(y.size>this.minHeight&&x.size>this.minWidth&&y.get('wsize')>y.get('fitsize')){y.size-=10;if(ratio)x.size=y.size*ratio;this.sizeOverlayBox(0,1);changed=true;}}
return changed;},show:function(){var x=this.x,y=this.y;this.doShowHide('hidden');this.changeSize(1,{wrapper:{width:x.get('wsize'),height:y.get('wsize'),left:x.pos,top:y.pos},content:{left:x.p1+x.get('imgPad'),top:y.p1+y.get('imgPad'),width:x.imgSize||x.size,height:y.imgSize||y.size}},hs.expandDuration);},changeSize:function(up,to,dur){if(this.outline&&!this.outlineWhileAnimating){if(up)this.outline.setPosition();else this.outline.destroy();}
if(!up)this.destroyOverlays();var exp=this,x=exp.x,y=exp.y,easing=this.easing;if(!up)easing=this.easingClose||easing;var after=up?function(){if(exp.outline)exp.outline.table.style.visibility="visible";setTimeout(function(){exp.afterExpand();},50);}:function(){exp.afterClose();};if(up)hs.setStyles(this.wrapper,{width:x.t+'px',height:y.t+'px'});if(this.fadeInOut){hs.setStyles(this.wrapper,{opacity:up?0:1});hs.extend(to.wrapper,{opacity:up});}
hs.animate(this.wrapper,to.wrapper,{duration:dur,easing:easing,step:function(val,args){if(exp.outline&&exp.outlineWhileAnimating&&args.prop=='top'){var fac=up?args.pos:1-args.pos;var pos={w:x.t+(x.get('wsize')-x.t)*fac,h:y.t+(y.get('wsize')-y.t)*fac,x:x.tpos+(x.pos-x.tpos)*fac,y:y.tpos+(y.pos-y.tpos)*fac};exp.outline.setPosition(pos,0,1);}}});hs.animate(this.content,to.content,dur,easing,after);if(up){this.wrapper.style.visibility='visible';this.content.style.visibility='visible';this.a.className+=' highslide-active-anchor';}},afterExpand:function(){this.isExpanded=true;this.focus();if(hs.upcoming&&hs.upcoming==this.a)hs.upcoming=null;this.prepareNextOutline();var p=hs.page,mX=hs.mouse.x+p.scrollLeft,mY=hs.mouse.y+p.scrollTop;this.mouseIsOver=this.x.pos<mX&&mX<this.x.pos+this.x.get('wsize')&&this.y.pos<mY&&mY<this.y.pos+this.y.get('wsize');if(this.overlayBox)this.showOverlays();},prepareNextOutline:function(){var key=this.key;var outlineType=this.outlineType;new hs.Outline(outlineType,function(){try{hs.expanders[key].preloadNext();}catch(e){}});},preloadNext:function(){var next=this.getAdjacentAnchor(1);if(next&&next.onclick.toString().match(/hs\.expand/))
var img=hs.createElement('img',{src:hs.getSrc(next)});},getAdjacentAnchor:function(op){var current=this.getAnchorIndex(),as=hs.anchors.groups[this.slideshowGroup||'none'];if(!as[current+op]&&this.slideshow&&this.slideshow.repeat){if(op==1)return as[0];else if(op==-1)return as[as.length-1];}
return as[current+op]||null;},getAnchorIndex:function(){var arr=hs.getAnchors().groups[this.slideshowGroup||'none'];if(arr)for(var i=0;i<arr.length;i++){if(arr[i]==this.a)return i;}
return null;},cancelLoading:function(){hs.discardElement(this.wrapper);hs.expanders[this.key]=null;if(this.loading)hs.loading.style.left='-9999px';},writeCredits:function(){this.credits=hs.createElement('a',{href:hs.creditsHref,target:hs.creditsTarget,className:'highslide-credits',innerHTML:hs.lang.creditsText,title:hs.lang.creditsTitle});this.createOverlay({overlayId:this.credits,position:this.creditsPosition||'top left'});},getInline:function(types,addOverlay){for(var i=0;i<types.length;i++){var type=types[i],s=null;if(!this[type+'Id']&&this.thumbsUserSetId)
this[type+'Id']=type+'-for-'+this.thumbsUserSetId;if(this[type+'Id'])this[type]=hs.getNode(this[type+'Id']);if(!this[type]&&!this[type+'Text']&&this[type+'Eval'])try{s=eval(this[type+'Eval']);}catch(e){}
if(!this[type]&&this[type+'Text']){s=this[type+'Text'];}
if(!this[type]&&!s){this[type]=hs.getNode(this.a['_'+type+'Id']);if(!this[type]){var next=this.a.nextSibling;while(next&&!hs.isHsAnchor(next)){if((new RegExp('highslide-'+type)).test(next.className||null)){if(!next.id)this.a['_'+type+'Id']=next.id='hsId'+hs.idCounter++;this[type]=hs.getNode(next.id);break;}
next=next.nextSibling;}}}
if(!this[type]&&s)this[type]=hs.createElement('div',{className:'highslide-'+type,innerHTML:s});if(addOverlay&&this[type]){var o={position:(type=='heading')?'above':'below'};for(var x in this[type+'Overlay'])o[x]=this[type+'Overlay'][x];o.overlayId=this[type];this.createOverlay(o);}}},doShowHide:function(visibility){if(hs.hideSelects)this.showHideElements('SELECT',visibility);if(hs.hideIframes)this.showHideElements('IFRAME',visibility);if(hs.geckoMac)this.showHideElements('*',visibility);},showHideElements:function(tagName,visibility){var els=document.getElementsByTagName(tagName);var prop=tagName=='*'?'overflow':'visibility';for(var i=0;i<els.length;i++){if(prop=='visibility'||(document.defaultView.getComputedStyle(els[i],"").getPropertyValue('overflow')=='auto'||els[i].getAttribute('hidden-by')!=null)){var hiddenBy=els[i].getAttribute('hidden-by');if(visibility=='visible'&&hiddenBy){hiddenBy=hiddenBy.replace('['+this.key+']','');els[i].setAttribute('hidden-by',hiddenBy);if(!hiddenBy)els[i].style[prop]=els[i].origProp;}else if(visibility=='hidden'){var elPos=hs.getPosition(els[i]);elPos.w=els[i].offsetWidth;elPos.h=els[i].offsetHeight;var clearsX=(elPos.x+elPos.w<this.x.get('opos')||elPos.x>this.x.get('opos')+this.x.get('osize'));var clearsY=(elPos.y+elPos.h<this.y.get('opos')||elPos.y>this.y.get('opos')+this.y.get('osize'));var wrapperKey=hs.getWrapperKey(els[i]);if(!clearsX&&!clearsY&&wrapperKey!=this.key){if(!hiddenBy){els[i].setAttribute('hidden-by','['+this.key+']');els[i].origProp=els[i].style[prop];els[i].style[prop]='hidden';}else if(hiddenBy.indexOf('['+this.key+']')==-1){els[i].setAttribute('hidden-by',hiddenBy+'['+this.key+']');}}else if((hiddenBy=='['+this.key+']'||hs.focusKey==wrapperKey)&&wrapperKey!=this.key){els[i].setAttribute('hidden-by','');els[i].style[prop]=els[i].origProp||'';}else if(hiddenBy&&hiddenBy.indexOf('['+this.key+']')>-1){els[i].setAttribute('hidden-by',hiddenBy.replace('['+this.key+']',''));}}}}},focus:function(){this.wrapper.style.zIndex=hs.zIndexCounter+=2;for(var i=0;i<hs.expanders.length;i++){if(hs.expanders[i]&&i==hs.focusKey){var blurExp=hs.expanders[i];blurExp.content.className+=' highslide-'+blurExp.contentType+'-blur';blurExp.content.style.cursor=hs.ie?'hand':'pointer';blurExp.content.title=hs.lang.focusTitle;}}
if(this.outline)this.outline.table.style.zIndex=this.wrapper.style.zIndex-1;this.content.className='highslide-'+this.contentType;this.content.title=hs.lang.restoreTitle;if(hs.restoreCursor){hs.styleRestoreCursor=window.opera?'pointer':'url('+hs.graphicsDir+hs.restoreCursor+'), pointer';if(hs.ie&&hs.uaVersion<6)hs.styleRestoreCursor='hand';this.content.style.cursor=hs.styleRestoreCursor;}
hs.focusKey=this.key;hs.addEventListener(document,window.opera?'keypress':'keydown',hs.keyHandler);},moveTo:function(x,y){this.x.setPos(x);this.y.setPos(y);},resize:function(e){var w,h,r=e.width/e.height;w=Math.max(e.width+e.dX,Math.min(this.minWidth,this.x.full));if(this.isImage&&Math.abs(w-this.x.full)<12)w=this.x.full;h=w/r;if(h<Math.min(this.minHeight,this.y.full)){h=Math.min(this.minHeight,this.y.full);if(this.isImage)w=h*r;}
this.resizeTo(w,h);},resizeTo:function(w,h){this.y.setSize(h);this.x.setSize(w);this.wrapper.style.height=this.y.get('wsize')+'px';},close:function(){if(this.isClosing||!this.isExpanded)return;this.isClosing=true;hs.removeEventListener(document,window.opera?'keypress':'keydown',hs.keyHandler);try{this.content.style.cursor='default';this.changeSize(0,{wrapper:{width:this.x.t,height:this.y.t,left:this.x.tpos-this.x.cb+this.x.tb,top:this.y.tpos-this.y.cb+this.y.tb},content:{left:0,top:0,width:this.x.t,height:this.y.t}},hs.restoreDuration);}catch(e){this.afterClose();}},createOverlay:function(o){var el=o.overlayId;if(typeof el=='string')el=hs.getNode(el);if(o.html)el=hs.createElement('div',{innerHTML:o.html});if(!el||typeof el=='string')return;el.style.display='block';this.genOverlayBox();var width=o.width&&/^[0-9]+(px|%)$/.test(o.width)?o.width:'auto';if(/^(left|right)panel$/.test(o.position)&&!/^[0-9]+px$/.test(o.width))width='200px';var overlay=hs.createElement('div',{id:'hsId'+hs.idCounter++,hsId:o.hsId},{position:'absolute',visibility:'hidden',width:width,direction:hs.lang.cssDirection||'',opacity:0},this.overlayBox,true);overlay.appendChild(el);hs.extend(overlay,{opacity:1,offsetX:0,offsetY:0,dur:(o.fade===0||o.fade===false||(o.fade==2&&hs.ie))?0:250});hs.extend(overlay,o);if(this.gotOverlays){this.positionOverlay(overlay);if(!overlay.hideOnMouseOut||this.mouseIsOver)
hs.animate(overlay,{opacity:overlay.opacity},overlay.dur);}
hs.push(this.overlays,hs.idCounter-1);},positionOverlay:function(overlay){var p=overlay.position||'middle center',offX=overlay.offsetX,offY=overlay.offsetY;if(overlay.parentNode!=this.overlayBox)this.overlayBox.appendChild(overlay);if(/left$/.test(p))overlay.style.left=offX+'px';if(/center$/.test(p))hs.setStyles(overlay,{left:'50%',marginLeft:(offX-Math.round(overlay.offsetWidth/2))+'px'});if(/right$/.test(p))overlay.style.right=-offX+'px';if(/^leftpanel$/.test(p)){hs.setStyles(overlay,{right:'100%',marginRight:this.x.cb+'px',top:-this.y.cb+'px',bottom:-this.y.cb+'px',overflow:'auto'});this.x.p1=overlay.offsetWidth;}else if(/^rightpanel$/.test(p)){hs.setStyles(overlay,{left:'100%',marginLeft:this.x.cb+'px',top:-this.y.cb+'px',bottom:-this.y.cb+'px',overflow:'auto'});this.x.p2=overlay.offsetWidth;}
if(/^top/.test(p))overlay.style.top=offY+'px';if(/^middle/.test(p))hs.setStyles(overlay,{top:'50%',marginTop:(offY-Math.round(overlay.offsetHeight/2))+'px'});if(/^bottom/.test(p))overlay.style.bottom=-offY+'px';if(/^above$/.test(p)){hs.setStyles(overlay,{left:(-this.x.p1-this.x.cb)+'px',right:(-this.x.p2-this.x.cb)+'px',bottom:'100%',marginBottom:this.y.cb+'px',width:'auto'});this.y.p1=overlay.offsetHeight;}else if(/^below$/.test(p)){hs.setStyles(overlay,{position:'relative',left:(-this.x.p1-this.x.cb)+'px',right:(-this.x.p2-this.x.cb)+'px',top:'100%',marginTop:this.y.cb+'px',width:'auto'});this.y.p2=overlay.offsetHeight;overlay.style.position='absolute';}},getOverlays:function(){this.getInline(['heading','caption'],true);if(this.heading&&this.dragByHeading)this.heading.className+=' highslide-move';if(hs.showCredits)this.writeCredits();for(var i=0;i<hs.overlays.length;i++){var o=hs.overlays[i],tId=o.thumbnailId,sg=o.slideshowGroup;if((!tId&&!sg)||(tId&&tId==this.thumbsUserSetId)||(sg&&sg===this.slideshowGroup)){this.createOverlay(o);}}
var os=[];for(var i=0;i<this.overlays.length;i++){var o=hs.$('hsId'+this.overlays[i]);if(/panel$/.test(o.position))this.positionOverlay(o);else hs.push(os,o);}
for(var i=0;i<os.length;i++)this.positionOverlay(os[i]);this.gotOverlays=true;},genOverlayBox:function(){if(!this.overlayBox)this.overlayBox=hs.createElement('div',{className:this.wrapperClassName},{position:'absolute',width:(this.x.size||(this.useBox?this.width:null)||this.x.full)+'px',height:(this.y.size||this.y.full)+'px',visibility:'hidden',overflow:'hidden',zIndex:hs.ie?4:'auto'},hs.container,true);},sizeOverlayBox:function(doWrapper,doPanels){var overlayBox=this.overlayBox,x=this.x,y=this.y;hs.setStyles(overlayBox,{width:x.size+'px',height:y.size+'px'});if(doWrapper||doPanels){for(var i=0;i<this.overlays.length;i++){var o=hs.$('hsId'+this.overlays[i]);var ie6=(hs.ieLt7||document.compatMode=='BackCompat');if(o&&/^(above|below)$/.test(o.position)){if(ie6){o.style.width=(overlayBox.offsetWidth+2*x.cb
+x.p1+x.p2)+'px';}
y[o.position=='above'?'p1':'p2']=o.offsetHeight;}
if(o&&ie6&&/^(left|right)panel$/.test(o.position)){o.style.height=(overlayBox.offsetHeight+2*y.cb)+'px';}}}
if(doWrapper){hs.setStyles(this.content,{top:y.p1+'px'});hs.setStyles(overlayBox,{top:(y.p1+y.cb)+'px'});}},showOverlays:function(){var b=this.overlayBox;b.className='';hs.setStyles(b,{top:(this.y.p1+this.y.cb)+'px',left:(this.x.p1+this.x.cb)+'px',overflow:'visible'});if(hs.safari)b.style.visibility='visible';this.wrapper.appendChild(b);for(var i=0;i<this.overlays.length;i++){var o=hs.$('hsId'+this.overlays[i]);o.style.zIndex=4;if(!o.hideOnMouseOut||this.mouseIsOver){o.style.visibility='visible';hs.setStyles(o,{visibility:'visible',display:''});hs.animate(o,{opacity:o.opacity},o.dur);}}},destroyOverlays:function(){if(!this.overlays.length)return;hs.discardElement(this.overlayBox);},createFullExpand:function(){this.fullExpandLabel=hs.createElement('a',{href:'javascript:hs.expanders['+this.key+'].doFullExpand();',title:hs.lang.fullExpandTitle,className:'highslide-full-expand'});this.createOverlay({overlayId:this.fullExpandLabel,position:hs.fullExpandPosition,hideOnMouseOut:true,opacity:hs.fullExpandOpacity});},doFullExpand:function(){try{if(this.fullExpandLabel)hs.discardElement(this.fullExpandLabel);this.focus();var xSize=this.x.size;this.resizeTo(this.x.full,this.y.full);var xpos=this.x.pos-(this.x.size-xSize)/2;if(xpos<hs.marginLeft)xpos=hs.marginLeft;this.moveTo(xpos,this.y.pos);this.doShowHide('hidden');}catch(e){this.error(e);}},afterClose:function(){this.a.className=this.a.className.replace('highslide-active-anchor','');this.doShowHide('visible');if(this.outline&&this.outlineWhileAnimating)this.outline.destroy();hs.discardElement(this.wrapper);hs.expanders[this.key]=null;hs.reOrder();}};hs.langDefaults=hs.lang;var HsExpander=hs.Expander;if(hs.ie){(function(){try{document.documentElement.doScroll('left');}catch(e){setTimeout(arguments.callee,50);return;}
hs.ready();})();}
hs.addEventListener(document,'DOMContentLoaded',hs.ready);hs.addEventListener(window,'load',hs.ready);hs.addEventListener(document,'ready',function(){if(hs.expandCursor){var style=hs.createElement('style',{type:'text/css'},null,document.getElementsByTagName('HEAD')[0]);function addRule(sel,dec){if(!hs.ie){style.appendChild(document.createTextNode(sel+" {"+dec+"}"));}else{var last=document.styleSheets[document.styleSheets.length-1];if(typeof(last.addRule)=="object")last.addRule(sel,dec);}}
function fix(prop){return'expression( ( ( ignoreMe = document.documentElement.'+prop+' ? document.documentElement.'+prop+' : document.body.'+prop+' ) ) + \'px\' );';}
if(hs.expandCursor)addRule('.highslide img','cursor: url('+hs.graphicsDir+hs.expandCursor+'), pointer !important;');}});hs.addEventListener(window,'resize',function(){hs.getPageSize();});hs.addEventListener(document,'mousemove',function(e){hs.mouse={x:e.clientX,y:e.clientY};});hs.addEventListener(document,'mousedown',hs.mouseClickHandler);hs.addEventListener(document,'mouseup',hs.mouseClickHandler);hs.addEventListener(document,'ready',hs.getAnchors);hs.addEventListener(window,'load',hs.preloadImages);}
(function(jQuery){jQuery.fn.extend({eXolightbox:function(options){var defaults={isShowMask:true};var options=jQuery.extend(defaults,options);return this.each(function(){var o=options;jQuery(this).click(function(){var videoContainer=jQuery(jQuery(this).attr("rel"));if(o.isShowMask){var mask=jQuery("<div />",{id:"exo-mask",style:"background:#000; display:block;top:0;left:0;position:absolute;opacity:0.8;width:100%;height:100%;z-index:9998;",click:function(){jQuery(videoContainer).hide();jQuery(this).remove();}});jQuery(videoContainer).before(mask);jQuery("a.CloseVideo").click(function(){jQuery(videoContainer).hide();jQuery("#exo-mask").remove();});var top=(jQuery(window).height()-videoContainer.outerHeight())/2;top+=jQuery(window).scrollTop()||0;var left=jQuery(window).width()/8;videoContainer.css("top",top);videoContainer.css("left",left);videoContainer.show();}});});}})})(jQuery);window['PR_SHOULD_USE_CONTINUATION']=true;window['PR_TAB_WIDTH']=8;window['PR_normalizedHtml']=window['PR']=window['prettyPrintOne']=window['prettyPrint']=void 0;window['_pr_isIE6']=function(){var ieVersion=navigator&&navigator.userAgent&&navigator.userAgent.match(/\bMSIE ([678])\./);ieVersion=ieVersion?+ieVersion[1]:false;window['_pr_isIE6']=function(){return ieVersion;};return ieVersion;};(function(){var FLOW_CONTROL_KEYWORDS="break continue do else for if return while ";var C_KEYWORDS=FLOW_CONTROL_KEYWORDS+"auto case char const default "+"double enum extern float goto int long register short signed sizeof "+"static struct switch typedef union unsigned void volatile ";var COMMON_KEYWORDS=C_KEYWORDS+"catch class delete false import "+"new operator private protected public this throw true try typeof ";var CPP_KEYWORDS=COMMON_KEYWORDS+"alignof align_union asm axiom bool "+"concept concept_map const_cast constexpr decltype "+"dynamic_cast explicit export friend inline late_check "+"mutable namespace nullptr reinterpret_cast static_assert static_cast "+"template typeid typename using virtual wchar_t where ";var JAVA_KEYWORDS=COMMON_KEYWORDS+"abstract boolean byte extends final finally implements import "+"instanceof null native package strictfp super synchronized throws "+"transient ";var CSHARP_KEYWORDS=JAVA_KEYWORDS+"as base by checked decimal delegate descending event "+"fixed foreach from group implicit in interface internal into is lock "+"object out override orderby params partial readonly ref sbyte sealed "+"stackalloc string select uint ulong unchecked unsafe ushort var ";var JSCRIPT_KEYWORDS=COMMON_KEYWORDS+"debugger eval export function get null set undefined var with "+"Infinity NaN ";var PERL_KEYWORDS="caller delete die do dump elsif eval exit foreach for "+"goto if import last local my next no our print package redo require "+"sub undef unless until use wantarray while BEGIN END ";var PYTHON_KEYWORDS=FLOW_CONTROL_KEYWORDS+"and as assert class def del "+"elif except exec finally from global import in is lambda "+"nonlocal not or pass print raise try with yield "+"False True None ";var RUBY_KEYWORDS=FLOW_CONTROL_KEYWORDS+"alias and begin case class def"+" defined elsif end ensure false in module next nil not or redo rescue "+"retry self super then true undef unless until when yield BEGIN END ";var SH_KEYWORDS=FLOW_CONTROL_KEYWORDS+"case done elif esac eval fi "+"function in local set then until ";var ALL_KEYWORDS=(CPP_KEYWORDS+CSHARP_KEYWORDS+JSCRIPT_KEYWORDS+PERL_KEYWORDS+
PYTHON_KEYWORDS+RUBY_KEYWORDS+SH_KEYWORDS);var PR_STRING='str';var PR_KEYWORD='kwd';var PR_COMMENT='com';var PR_TYPE='typ';var PR_LITERAL='lit';var PR_PUNCTUATION='pun';var PR_PLAIN='pln';var PR_TAG='tag';var PR_DECLARATION='dec';var PR_SOURCE='src';var PR_ATTRIB_NAME='atn';var PR_ATTRIB_VALUE='atv';var PR_NOCODE='nocode';var REGEXP_PRECEDER_PATTERN=function(){var preceders=["!","!=","!==","#","%","%=","&","&&","&&=","&=","(","*","*=","+=",",","-=","->","/","/=",":","::",";","<","<<","<<=","<=","=","==","===",">",">=",">>",">>=",">>>",">>>=","?","@","[","^","^=","^^","^^=","{","|","|=","||","||=","~","break","case","continue","delete","do","else","finally","instanceof","return","throw","try","typeof"];var pattern='(?:^^|[+-]';for(var i=0;i<preceders.length;++i){pattern+='|'+preceders[i].replace(/([^=<>:&a-z])/g,'\\$1');}
pattern+=')\\s*';return pattern;}();var pr_amp=/&/g;var pr_lt=/</g;var pr_gt=/>/g;var pr_quot=/\"/g;function attribToHtml(str){return str.replace(pr_amp,'&amp;').replace(pr_lt,'&lt;').replace(pr_gt,'&gt;').replace(pr_quot,'&quot;');}
function textToHtml(str){return str.replace(pr_amp,'&amp;').replace(pr_lt,'&lt;').replace(pr_gt,'&gt;');}
var pr_ltEnt=/&lt;/g;var pr_gtEnt=/&gt;/g;var pr_aposEnt=/&apos;/g;var pr_quotEnt=/&quot;/g;var pr_ampEnt=/&amp;/g;var pr_nbspEnt=/&nbsp;/g;function htmlToText(html){var pos=html.indexOf('&');if(pos<0){return html;}
for(--pos;(pos=html.indexOf('&#',pos+1))>=0;){var end=html.indexOf(';',pos);if(end>=0){var num=html.substring(pos+3,end);var radix=10;if(num&&num.charAt(0)==='x'){num=num.substring(1);radix=16;}
var codePoint=parseInt(num,radix);if(!isNaN(codePoint)){html=(html.substring(0,pos)+String.fromCharCode(codePoint)+
html.substring(end+1));}}}
return html.replace(pr_ltEnt,'<').replace(pr_gtEnt,'>').replace(pr_aposEnt,"'").replace(pr_quotEnt,'"').replace(pr_nbspEnt,' ').replace(pr_ampEnt,'&');}
function isRawContent(node){return'XMP'===node.tagName;}
var newlineRe=/[\r\n]/g;function isPreformatted(node,content){if('PRE'===node.tagName){return true;}
if(!newlineRe.test(content)){return true;}
var whitespace='';if(node.currentStyle){whitespace=node.currentStyle.whiteSpace;}else if(window.getComputedStyle){whitespace=window.getComputedStyle(node,null).whiteSpace;}
return!whitespace||whitespace==='pre';}
function normalizedHtml(node,out){switch(node.nodeType){case 1:var name=node.tagName.toLowerCase();out.push('<',name);for(var i=0;i<node.attributes.length;++i){var attr=node.attributes[i];if(!attr.specified){continue;}
out.push(' ');normalizedHtml(attr,out);}
out.push('>');for(var child=node.firstChild;child;child=child.nextSibling){normalizedHtml(child,out);}
if(node.firstChild||!/^(?:br|link|img)$/.test(name)){out.push('<\/',name,'>');}
break;case 2:out.push(node.name.toLowerCase(),'="',attribToHtml(node.value),'"');break;case 3:case 4:out.push(textToHtml(node.nodeValue));break;}}
function combinePrefixPatterns(regexs){var capturedGroupIndex=0;var needToFoldCase=false;var ignoreCase=false;for(var i=0,n=regexs.length;i<n;++i){var regex=regexs[i];if(regex.ignoreCase){ignoreCase=true;}else if(/[a-z]/i.test(regex.source.replace(/\\u[0-9a-f]{4}|\\x[0-9a-f]{2}|\\[^ux]/gi,''))){needToFoldCase=true;ignoreCase=false;break;}}
function decodeEscape(charsetPart){if(charsetPart.charAt(0)!=='\\'){return charsetPart.charCodeAt(0);}
switch(charsetPart.charAt(1)){case'b':return 8;case't':return 9;case'n':return 0xa;case'v':return 0xb;case'f':return 0xc;case'r':return 0xd;case'u':case'x':return parseInt(charsetPart.substring(2),16)||charsetPart.charCodeAt(1);case'0':case'1':case'2':case'3':case'4':case'5':case'6':case'7':return parseInt(charsetPart.substring(1),8);default:return charsetPart.charCodeAt(1);}}
function encodeEscape(charCode){if(charCode<0x20){return(charCode<0x10?'\\x0':'\\x')+charCode.toString(16);}
var ch=String.fromCharCode(charCode);if(ch==='\\'||ch==='-'||ch==='['||ch===']'){ch='\\'+ch;}
return ch;}
function caseFoldCharset(charSet){var charsetParts=charSet.substring(1,charSet.length-1).match(new RegExp('\\\\u[0-9A-Fa-f]{4}'
+'|\\\\x[0-9A-Fa-f]{2}'
+'|\\\\[0-3][0-7]{0,2}'
+'|\\\\[0-7]{1,2}'
+'|\\\\[\\s\\S]'
+'|-'
+'|[^-\\\\]','g'));var groups=[];var ranges=[];var inverse=charsetParts[0]==='^';for(var i=inverse?1:0,n=charsetParts.length;i<n;++i){var p=charsetParts[i];switch(p){case'\\B':case'\\b':case'\\D':case'\\d':case'\\S':case'\\s':case'\\W':case'\\w':groups.push(p);continue;}
var start=decodeEscape(p);var end;if(i+2<n&&'-'===charsetParts[i+1]){end=decodeEscape(charsetParts[i+2]);i+=2;}else{end=start;}
ranges.push([start,end]);if(!(end<65||start>122)){if(!(end<65||start>90)){ranges.push([Math.max(65,start)|32,Math.min(end,90)|32]);}
if(!(end<97||start>122)){ranges.push([Math.max(97,start)&~32,Math.min(end,122)&~32]);}}}
ranges.sort(function(a,b){return(a[0]-b[0])||(b[1]-a[1]);});var consolidatedRanges=[];var lastRange=[NaN,NaN];for(var i=0;i<ranges.length;++i){var range=ranges[i];if(range[0]<=lastRange[1]+1){lastRange[1]=Math.max(lastRange[1],range[1]);}else{consolidatedRanges.push(lastRange=range);}}
var out=['['];if(inverse){out.push('^');}
out.push.apply(out,groups);for(var i=0;i<consolidatedRanges.length;++i){var range=consolidatedRanges[i];out.push(encodeEscape(range[0]));if(range[1]>range[0]){if(range[1]+1>range[0]){out.push('-');}
out.push(encodeEscape(range[1]));}}
out.push(']');return out.join('');}
function allowAnywhereFoldCaseAndRenumberGroups(regex){var parts=regex.source.match(new RegExp('(?:'
+'\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]'
+'|\\\\u[A-Fa-f0-9]{4}'
+'|\\\\x[A-Fa-f0-9]{2}'
+'|\\\\[0-9]+'
+'|\\\\[^ux0-9]'
+'|\\(\\?[:!=]'
+'|[\\(\\)\\^]'
+'|[^\\x5B\\x5C\\(\\)\\^]+'
+')','g'));var n=parts.length;var capturedGroups=[];for(var i=0,groupIndex=0;i<n;++i){var p=parts[i];if(p==='('){++groupIndex;}else if('\\'===p.charAt(0)){var decimalValue=+p.substring(1);if(decimalValue&&decimalValue<=groupIndex){capturedGroups[decimalValue]=-1;}}}
for(var i=1;i<capturedGroups.length;++i){if(-1===capturedGroups[i]){capturedGroups[i]=++capturedGroupIndex;}}
for(var i=0,groupIndex=0;i<n;++i){var p=parts[i];if(p==='('){++groupIndex;if(capturedGroups[groupIndex]===undefined){parts[i]='(?:';}}else if('\\'===p.charAt(0)){var decimalValue=+p.substring(1);if(decimalValue&&decimalValue<=groupIndex){parts[i]='\\'+capturedGroups[groupIndex];}}}
for(var i=0,groupIndex=0;i<n;++i){if('^'===parts[i]&&'^'!==parts[i+1]){parts[i]='';}}
if(regex.ignoreCase&&needToFoldCase){for(var i=0;i<n;++i){var p=parts[i];var ch0=p.charAt(0);if(p.length>=2&&ch0==='['){parts[i]=caseFoldCharset(p);}else if(ch0!=='\\'){parts[i]=p.replace(/[a-zA-Z]/g,function(ch){var cc=ch.charCodeAt(0);return'['+String.fromCharCode(cc&~32,cc|32)+']';});}}}
return parts.join('');}
var rewritten=[];for(var i=0,n=regexs.length;i<n;++i){var regex=regexs[i];if(regex.global||regex.multiline){throw new Error(''+regex);}
rewritten.push('(?:'+allowAnywhereFoldCaseAndRenumberGroups(regex)+')');}
return new RegExp(rewritten.join('|'),ignoreCase?'gi':'g');}
var PR_innerHtmlWorks=null;function getInnerHtml(node){if(null===PR_innerHtmlWorks){var testNode=document.createElement('PRE');testNode.appendChild(document.createTextNode('<!DOCTYPE foo PUBLIC "foo bar">\n<foo />'));PR_innerHtmlWorks=!/</.test(testNode.innerHTML);}
if(PR_innerHtmlWorks){var content=node.innerHTML;if(isRawContent(node)){content=textToHtml(content);}else if(!isPreformatted(node,content)){content=content.replace(/(<br\s*\/?>)[\r\n]+/g,'$1').replace(/(?:[\r\n]+[ \t]*)+/g,' ');}
return content;}
var out=[];for(var child=node.firstChild;child;child=child.nextSibling){normalizedHtml(child,out);}
return out.join('');}
function makeTabExpander(tabWidth){var SPACES='                ';var charInLine=0;return function(plainText){var out=null;var pos=0;for(var i=0,n=plainText.length;i<n;++i){var ch=plainText.charAt(i);switch(ch){case'\t':if(!out){out=[];}
out.push(plainText.substring(pos,i));var nSpaces=tabWidth-(charInLine%tabWidth);charInLine+=nSpaces;for(;nSpaces>=0;nSpaces-=SPACES.length){out.push(SPACES.substring(0,nSpaces));}
pos=i+1;break;case'\n':charInLine=0;break;default:++charInLine;}}
if(!out){return plainText;}
out.push(plainText.substring(pos));return out.join('');};}
var pr_chunkPattern=new RegExp('[^<]+'
+'|<\!--[\\s\\S]*?--\>'
+'|<!\\[CDATA\\[[\\s\\S]*?\\]\\]>'
+'|<\/?[a-zA-Z](?:[^>\"\']|\'[^\']*\'|\"[^\"]*\")*>'
+'|<','g');var pr_commentPrefix=/^<\!--/;var pr_cdataPrefix=/^<!\[CDATA\[/;var pr_brPrefix=/^<br\b/i;var pr_tagNameRe=/^<(\/?)([a-zA-Z][a-zA-Z0-9]*)/;function extractTags(s){var matches=s.match(pr_chunkPattern);var sourceBuf=[];var sourceBufLen=0;var extractedTags=[];if(matches){for(var i=0,n=matches.length;i<n;++i){var match=matches[i];if(match.length>1&&match.charAt(0)==='<'){if(pr_commentPrefix.test(match)){continue;}
if(pr_cdataPrefix.test(match)){sourceBuf.push(match.substring(9,match.length-3));sourceBufLen+=match.length-12;}else if(pr_brPrefix.test(match)){sourceBuf.push('\n');++sourceBufLen;}else{if(match.indexOf(PR_NOCODE)>=0&&isNoCodeTag(match)){var name=match.match(pr_tagNameRe)[2];var depth=1;var j;end_tag_loop:for(j=i+1;j<n;++j){var name2=matches[j].match(pr_tagNameRe);if(name2&&name2[2]===name){if(name2[1]==='/'){if(--depth===0){break end_tag_loop;}}else{++depth;}}}
if(j<n){extractedTags.push(sourceBufLen,matches.slice(i,j+1).join(''));i=j;}else{extractedTags.push(sourceBufLen,match);}}else{extractedTags.push(sourceBufLen,match);}}}else{var literalText=htmlToText(match);sourceBuf.push(literalText);sourceBufLen+=literalText.length;}}}
return{source:sourceBuf.join(''),tags:extractedTags};}
function isNoCodeTag(tag){return!!tag.replace(/\s(\w+)\s*=\s*(?:\"([^\"]*)\"|'([^\']*)'|(\S+))/g,' $1="$2$3$4"').match(/[cC][lL][aA][sS][sS]=\"[^\"]*\bnocode\b/);}
function appendDecorations(basePos,sourceCode,langHandler,out){if(!sourceCode){return;}
var job={source:sourceCode,basePos:basePos};langHandler(job);out.push.apply(out,job.decorations);}
function createSimpleLexer(shortcutStylePatterns,fallthroughStylePatterns){var shortcuts={};var tokenizer;(function(){var allPatterns=shortcutStylePatterns.concat(fallthroughStylePatterns);var allRegexs=[];var regexKeys={};for(var i=0,n=allPatterns.length;i<n;++i){var patternParts=allPatterns[i];var shortcutChars=patternParts[3];if(shortcutChars){for(var c=shortcutChars.length;--c>=0;){shortcuts[shortcutChars.charAt(c)]=patternParts;}}
var regex=patternParts[1];var k=''+regex;if(!regexKeys.hasOwnProperty(k)){allRegexs.push(regex);regexKeys[k]=null;}}
allRegexs.push(/[\0-\uffff]/);tokenizer=combinePrefixPatterns(allRegexs);})();var nPatterns=fallthroughStylePatterns.length;var notWs=/\S/;var decorate=function(job){var sourceCode=job.source,basePos=job.basePos;var decorations=[basePos,PR_PLAIN];var pos=0;var tokens=sourceCode.match(tokenizer)||[];var styleCache={};for(var ti=0,nTokens=tokens.length;ti<nTokens;++ti){var token=tokens[ti];var style=styleCache[token];var match=void 0;var isEmbedded;if(typeof style==='string'){isEmbedded=false;}else{var patternParts=shortcuts[token.charAt(0)];if(patternParts){match=token.match(patternParts[1]);style=patternParts[0];}else{for(var i=0;i<nPatterns;++i){patternParts=fallthroughStylePatterns[i];match=token.match(patternParts[1]);if(match){style=patternParts[0];break;}}
if(!match){style=PR_PLAIN;}}
isEmbedded=style.length>=5&&'lang-'===style.substring(0,5);if(isEmbedded&&!(match&&typeof match[1]==='string')){isEmbedded=false;style=PR_SOURCE;}
if(!isEmbedded){styleCache[token]=style;}}
var tokenStart=pos;pos+=token.length;if(!isEmbedded){decorations.push(basePos+tokenStart,style);}else{var embeddedSource=match[1];var embeddedSourceStart=token.indexOf(embeddedSource);var embeddedSourceEnd=embeddedSourceStart+embeddedSource.length;if(match[2]){embeddedSourceEnd=token.length-match[2].length;embeddedSourceStart=embeddedSourceEnd-embeddedSource.length;}
var lang=style.substring(5);appendDecorations(basePos+tokenStart,token.substring(0,embeddedSourceStart),decorate,decorations);appendDecorations(basePos+tokenStart+embeddedSourceStart,embeddedSource,langHandlerForExtension(lang,embeddedSource),decorations);appendDecorations(basePos+tokenStart+embeddedSourceEnd,token.substring(embeddedSourceEnd),decorate,decorations);}}
job.decorations=decorations;};return decorate;}
function sourceDecorator(options){var shortcutStylePatterns=[],fallthroughStylePatterns=[];if(options['tripleQuotedStrings']){shortcutStylePatterns.push([PR_STRING,/^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,null,'\'"']);}else if(options['multiLineStrings']){shortcutStylePatterns.push([PR_STRING,/^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,null,'\'"`']);}else{shortcutStylePatterns.push([PR_STRING,/^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,null,'"\'']);}
if(options['verbatimStrings']){fallthroughStylePatterns.push([PR_STRING,/^@\"(?:[^\"]|\"\")*(?:\"|$)/,null]);}
if(options['hashComments']){if(options['cStyleComments']){shortcutStylePatterns.push([PR_COMMENT,/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\r\n]*)/,null,'#']);fallthroughStylePatterns.push([PR_STRING,/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,null]);}else{shortcutStylePatterns.push([PR_COMMENT,/^#[^\r\n]*/,null,'#']);}}
if(options['cStyleComments']){fallthroughStylePatterns.push([PR_COMMENT,/^\/\/[^\r\n]*/,null]);fallthroughStylePatterns.push([PR_COMMENT,/^\/\*[\s\S]*?(?:\*\/|$)/,null]);}
if(options['regexLiterals']){var REGEX_LITERAL=('/(?=[^/*])'
+'(?:[^/\\x5B\\x5C]'
+'|\\x5C[\\s\\S]'
+'|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+'
+'/');fallthroughStylePatterns.push(['lang-regex',new RegExp('^'+REGEXP_PRECEDER_PATTERN+'('+REGEX_LITERAL+')')]);}
var keywords=options['keywords'].replace(/^\s+|\s+$/g,'');if(keywords.length){fallthroughStylePatterns.push([PR_KEYWORD,new RegExp('^(?:'+keywords.replace(/\s+/g,'|')+')\\b'),null]);}
shortcutStylePatterns.push([PR_PLAIN,/^\s+/,null,' \r\n\t\xA0']);fallthroughStylePatterns.push([PR_LITERAL,/^@[a-z_$][a-z_$@0-9]*/i,null],[PR_TYPE,/^@?[A-Z]+[a-z][A-Za-z_$@0-9]*/,null],[PR_PLAIN,/^[a-z_$][a-z_$@0-9]*/i,null],[PR_LITERAL,new RegExp('^(?:'
+'0x[a-f0-9]+'
+'|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)'
+'(?:e[+\\-]?\\d+)?'
+')'
+'[a-z]*','i'),null,'0123456789'],[PR_PUNCTUATION,/^.[^\s\w\.$@\'\"\`\/\#]*/,null]);return createSimpleLexer(shortcutStylePatterns,fallthroughStylePatterns);}
var decorateSource=sourceDecorator({'keywords':ALL_KEYWORDS,'hashComments':true,'cStyleComments':true,'multiLineStrings':true,'regexLiterals':true});function recombineTagsAndDecorations(job){var sourceText=job.source;var extractedTags=job.extractedTags;var decorations=job.decorations;var html=[];var outputIdx=0;var openDecoration=null;var currentDecoration=null;var tagPos=0;var decPos=0;var tabExpander=makeTabExpander(window['PR_TAB_WIDTH']);var adjacentSpaceRe=/([\r\n ]) /g;var startOrSpaceRe=/(^| ) /gm;var newlineRe=/\r\n?|\n/g;var trailingSpaceRe=/[ \r\n]$/;var lastWasSpace=true;function emitTextUpTo(sourceIdx){if(sourceIdx>outputIdx){if(openDecoration&&openDecoration!==currentDecoration){html.push('</span>');openDecoration=null;}
if(!openDecoration&&currentDecoration){openDecoration=currentDecoration;html.push('<span class="',openDecoration,'">');}
var htmlChunk=textToHtml(tabExpander(sourceText.substring(outputIdx,sourceIdx))).replace(lastWasSpace?startOrSpaceRe:adjacentSpaceRe,'$1&nbsp;');lastWasSpace=trailingSpaceRe.test(htmlChunk);var lineBreakHtml=window['_pr_isIE6']()?'&nbsp;<br />':'<br />';html.push(htmlChunk.replace(newlineRe,lineBreakHtml));outputIdx=sourceIdx;}}
while(true){var outputTag;if(tagPos<extractedTags.length){if(decPos<decorations.length){outputTag=extractedTags[tagPos]<=decorations[decPos];}else{outputTag=true;}}else{outputTag=false;}
if(outputTag){emitTextUpTo(extractedTags[tagPos]);if(openDecoration){html.push('</span>');openDecoration=null;}
html.push(extractedTags[tagPos+1]);tagPos+=2;}else if(decPos<decorations.length){emitTextUpTo(decorations[decPos]);currentDecoration=decorations[decPos+1];decPos+=2;}else{break;}}
emitTextUpTo(sourceText.length);if(openDecoration){html.push('</span>');}
job.prettyPrintedHtml=html.join('');}
var langHandlerRegistry={};function registerLangHandler(handler,fileExtensions){for(var i=fileExtensions.length;--i>=0;){var ext=fileExtensions[i];if(!langHandlerRegistry.hasOwnProperty(ext)){langHandlerRegistry[ext]=handler;}else if('console'in window){console.warn('cannot override language handler %s',ext);}}}
function langHandlerForExtension(extension,source){if(!(extension&&langHandlerRegistry.hasOwnProperty(extension))){extension=/^\s*</.test(source)?'default-markup':'default-code';}
return langHandlerRegistry[extension];}
registerLangHandler(decorateSource,['default-code']);registerLangHandler(createSimpleLexer([],[[PR_PLAIN,/^[^<?]+/],[PR_DECLARATION,/^<!\w[^>]*(?:>|$)/],[PR_COMMENT,/^<\!--[\s\S]*?(?:-\->|$)/],['lang-',/^<\?([\s\S]+?)(?:\?>|$)/],['lang-',/^<%([\s\S]+?)(?:%>|$)/],[PR_PUNCTUATION,/^(?:<[%?]|[%?]>)/],['lang-',/^<xmp\b[^>]*>([\s\S]+?)<\/xmp\b[^>]*>/i],['lang-js',/^<script\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],['lang-css',/^<style\b[^>]*>([\s\S]*?)(<\/style\b[^>]*>)/i],['lang-in.tag',/^(<\/?[a-z][^<>]*>)/i]]),['default-markup','htm','html','mxml','xhtml','xml','xsl']);registerLangHandler(createSimpleLexer([[PR_PLAIN,/^[\s]+/,null,' \t\r\n'],[PR_ATTRIB_VALUE,/^(?:\"[^\"]*\"?|\'[^\']*\'?)/,null,'\"\'']],[[PR_TAG,/^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],[PR_ATTRIB_NAME,/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],['lang-uq.val',/^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],[PR_PUNCTUATION,/^[=<>\/]+/],['lang-js',/^on\w+\s*=\s*\"([^\"]+)\"/i],['lang-js',/^on\w+\s*=\s*\'([^\']+)\'/i],['lang-js',/^on\w+\s*=\s*([^\"\'>\s]+)/i],['lang-css',/^style\s*=\s*\"([^\"]+)\"/i],['lang-css',/^style\s*=\s*\'([^\']+)\'/i],['lang-css',/^style\s*=\s*([^\"\'>\s]+)/i]]),['in.tag']);registerLangHandler(createSimpleLexer([],[[PR_ATTRIB_VALUE,/^[\s\S]+/]]),['uq.val']);registerLangHandler(sourceDecorator({'keywords':CPP_KEYWORDS,'hashComments':true,'cStyleComments':true}),['c','cc','cpp','cxx','cyc','m']);registerLangHandler(sourceDecorator({'keywords':'null true false'}),['json']);registerLangHandler(sourceDecorator({'keywords':CSHARP_KEYWORDS,'hashComments':true,'cStyleComments':true,'verbatimStrings':true}),['cs']);registerLangHandler(sourceDecorator({'keywords':JAVA_KEYWORDS,'cStyleComments':true}),['java']);registerLangHandler(sourceDecorator({'keywords':SH_KEYWORDS,'hashComments':true,'multiLineStrings':true}),['bsh','csh','sh']);registerLangHandler(sourceDecorator({'keywords':PYTHON_KEYWORDS,'hashComments':true,'multiLineStrings':true,'tripleQuotedStrings':true}),['cv','py']);registerLangHandler(sourceDecorator({'keywords':PERL_KEYWORDS,'hashComments':true,'multiLineStrings':true,'regexLiterals':true}),['perl','pl','pm']);registerLangHandler(sourceDecorator({'keywords':RUBY_KEYWORDS,'hashComments':true,'multiLineStrings':true,'regexLiterals':true}),['rb']);registerLangHandler(sourceDecorator({'keywords':JSCRIPT_KEYWORDS,'cStyleComments':true,'regexLiterals':true}),['js']);registerLangHandler(createSimpleLexer([],[[PR_STRING,/^[\s\S]+/]]),['regex']);function applyDecorator(job){var sourceCodeHtml=job.sourceCodeHtml;var opt_langExtension=job.langExtension;job.prettyPrintedHtml=sourceCodeHtml;try{var sourceAndExtractedTags=extractTags(sourceCodeHtml);var source=sourceAndExtractedTags.source;job.source=source;job.basePos=0;job.extractedTags=sourceAndExtractedTags.tags;langHandlerForExtension(opt_langExtension,source)(job);recombineTagsAndDecorations(job);}catch(e){if('console'in window){console.log(e);console.trace();}}}
function prettyPrintOne(sourceCodeHtml,opt_langExtension){var job={sourceCodeHtml:sourceCodeHtml,langExtension:opt_langExtension};applyDecorator(job);return job.prettyPrintedHtml;}
function prettyPrint(opt_whenDone){var isIE678=window['_pr_isIE6']();var ieNewline=isIE678===6?'\r\n':'\r';var codeSegments=[document.getElementsByTagName('pre'),document.getElementsByTagName('code'),document.getElementsByTagName('xmp')];var elements=[];for(var i=0;i<codeSegments.length;++i){for(var j=0,n=codeSegments[i].length;j<n;++j){elements.push(codeSegments[i][j]);}}
codeSegments=null;var clock=Date;if(!clock['now']){clock={'now':function(){return(new Date).getTime();}};}
var k=0;var prettyPrintingJob;function doWork(){var endTime=(window['PR_SHOULD_USE_CONTINUATION']?clock.now()+250:Infinity);for(;k<elements.length&&clock.now()<endTime;k++){var cs=elements[k];if(cs.className&&cs.className.indexOf('prettyprint')>=0){var langExtension=cs.className.match(/\blang-(\w+)\b/);if(langExtension){langExtension=langExtension[1];}
var nested=false;for(var p=cs.parentNode;p;p=p.parentNode){if((p.tagName==='pre'||p.tagName==='code'||p.tagName==='xmp')&&p.className&&p.className.indexOf('prettyprint')>=0){nested=true;break;}}
if(!nested){var content=getInnerHtml(cs);content=content.replace(/(?:\r\n?|\n)$/,'');prettyPrintingJob={sourceCodeHtml:content,langExtension:langExtension,sourceNode:cs};applyDecorator(prettyPrintingJob);replaceWithPrettyPrintedHtml();}}}
if(k<elements.length){setTimeout(doWork,250);}else if(opt_whenDone){opt_whenDone();}}
function replaceWithPrettyPrintedHtml(){var newContent=prettyPrintingJob.prettyPrintedHtml;if(!newContent){return;}
var cs=prettyPrintingJob.sourceNode;if(!isRawContent(cs)){cs.innerHTML=newContent;}else{var pre=document.createElement('PRE');for(var i=0;i<cs.attributes.length;++i){var a=cs.attributes[i];if(a.specified){var aname=a.name.toLowerCase();if(aname==='class'){pre.className=a.value;}else{pre.setAttribute(a.name,a.value);}}}
pre.innerHTML=newContent;cs.parentNode.replaceChild(pre,cs);cs=pre;}
if(isIE678&&cs.tagName==='PRE'){var lineBreaks=cs.getElementsByTagName('br');for(var j=lineBreaks.length;--j>=0;){var lineBreak=lineBreaks[j];lineBreak.parentNode.replaceChild(document.createTextNode(ieNewline),lineBreak);}}}
doWork();}
window['PR_normalizedHtml']=normalizedHtml;window['prettyPrintOne']=prettyPrintOne;window['prettyPrint']=prettyPrint;window['PR']={'combinePrefixPatterns':combinePrefixPatterns,'createSimpleLexer':createSimpleLexer,'registerLangHandler':registerLangHandler,'sourceDecorator':sourceDecorator,'PR_ATTRIB_NAME':PR_ATTRIB_NAME,'PR_ATTRIB_VALUE':PR_ATTRIB_VALUE,'PR_COMMENT':PR_COMMENT,'PR_DECLARATION':PR_DECLARATION,'PR_KEYWORD':PR_KEYWORD,'PR_LITERAL':PR_LITERAL,'PR_NOCODE':PR_NOCODE,'PR_PLAIN':PR_PLAIN,'PR_PUNCTUATION':PR_PUNCTUATION,'PR_SOURCE':PR_SOURCE,'PR_STRING':PR_STRING,'PR_TAG':PR_TAG,'PR_TYPE':PR_TYPE};})();function getLink(key,id,label){jQuery.getJSON(window.location.protocol+'//'+window.location.host+'/rest-company/linkmanager/getlink/'+key+'/'+eXo.env.portal.language,function(data){var rootElement=document.getElementById(id);rootElement.setAttribute('href',data.target);if(label){rootElement.innerHTML=data.label;}})};function AutoSuggest(){}
AutoSuggest.prototype.init=function(id){this.txtKeyword=document.getElementById(id);this.suggestMenu=this.createSuggestMenu(id);jQuery(this.txtKeyword).keypress(function(event){cwiAutoSuggest.typeCallback(event);});jQuery(this.txtKeyword).blur(function(event){cwiAutoSuggest.hideMenu();});this.txtKeyword.setAttribute("autocomplete","off");jQuery(this.txtKeyword.form).submit(function(){return false;});eXo.core.DOMUtil.listHideElements(this.suggestMenu);}
AutoSuggest.prototype.typeCallback=function(evt){if(!evt)var evt=window.event;var self=cwiAutoSuggest;evt.stopPropagation();if(evt.shiftKey||evt.ctrlKey||evt.altKey||(keyNum==35)||(keyNum==36))return;var keyNum=self.getKeynum(evt);switch(keyNum){case 13:self.enterHandler();break;case 9:case 27:self.escapeHandler();break;case 37:case 38:self.arrowUpHandler();break;case 39:case 40:self.arrowDownHandler();break;default:setTimeout(self.typeHandler,100);}
return;}
AutoSuggest.prototype.createSuggestMenu=function(id){var id="CWIAutoSuggest-"+id;if(document.getElementById(id))return document.getElementById(id);var tmp=document.createElement("div");tmp.id=id;tmp.className="CWIAutoSuggest";document.body.appendChild(tmp);return tmp;}
AutoSuggest.prototype.createRestURL=function(){this.cboType=eXo.core.DOMUtil.findNextElementByTagName(this.txtKeyword,"select");var keyword=(this.txtKeyword.value!='')?this.txtKeyword.value:null;var type=this.cboType.value;if(eXo.env.portal.autolanguage=='undefined')eXo.env.portal.autolanguage='en';return window.location.protocol+'//'+window.location.host+'/rest-company/linkmanager/searchlink/'+type+"/"+keyword+'/'+eXo.env.portal.autolanguage;}
AutoSuggest.prototype.positioning=function(){var menu=this.suggestMenu;var input=this.txtKeyword;var pos=jQuery(input).offset();var x=pos.left;var y=pos.top+input.offsetHeight;var minwidth=input.offsetWidth-2;jQuery(menu).css("left",x+"px");jQuery(menu).css("top",y+"px");jQuery(menu).css("min-width",minwidth+"px");jQuery(menu).fadeIn("slow");}
AutoSuggest.prototype.typeHandler=function(){var url=cwiAutoSuggest.createRestURL();jQuery.getJSON(url,cwiAutoSuggest.render);}
AutoSuggest.prototype.render=function(serverData){var data=serverData.data;if(!data||data.length<=0){cwiAutoSuggest.hideMenu();return;}
var type=cwiAutoSuggest.cboType.value;jQuery(cwiAutoSuggest.suggestMenu).empty();for(var i=0,len=data.length;i<len;i++){var item=cwiAutoSuggest.createItem(data[i][type]);jQuery(cwiAutoSuggest.suggestMenu).append(item);}
cwiAutoSuggest.addEventHandler();cwiAutoSuggest.positioning();}
AutoSuggest.prototype.createItem=function(label){var item=document.createElement("div");item.className="item";item.innerHTML=label;return item;}
AutoSuggest.prototype.enterHandler=function(){var me=cwiAutoSuggest;if(me.currentItem)jQuery(me.txtKeyword).val(me.currentItem.innerHTML);me.hideMenu();}
AutoSuggest.prototype.escapeHandler=function(){cwiAutoSuggest.hideMenu();}
AutoSuggest.prototype.arrowDownHandler=function(){var me=cwiAutoSuggest;if(!me.currentItem){me.currentItem=me.suggestMenu.firstChild;eXo.core.DOMUtil.addClass(me.currentItem,"itemover");return;}
eXo.core.DOMUtil.replaceClass(me.currentItem,"itemover","");if(me.currentItem.nextSibling)me.currentItem=me.currentItem.nextSibling;else me.currentItem=me.suggestMenu.firstChild;eXo.core.DOMUtil.addClass(me.currentItem,"itemover");};AutoSuggest.prototype.arrowUpHandler=function(){var me=cwiAutoSuggest;if(!me.currentItem){return;}
eXo.core.DOMUtil.replaceClass(me.currentItem,"itemover","");if(me.currentItem.previousSibling)me.currentItem=me.currentItem.previousSibling;else me.currentItem=me.suggestMenu.lastChild;eXo.core.DOMUtil.addClass(me.currentItem,"itemover");};AutoSuggest.prototype.getKeynum=function(e){var code=-1;if(window.event)
code=e.keyCode;else if(e.which)
code=e.which;return code;}
AutoSuggest.prototype.addEventHandler=function(){var items=jQuery(cwiAutoSuggest.suggestMenu).children(".item");for(var i=0,len=items.length;i<len;i++){jQuery(items[i]).click(function(){jQuery(cwiAutoSuggest.txtKeyword).val(this.innerHTML);cwiAutoSuggest.hideMenu();});jQuery(items[i]).mouseover(function(){eXo.core.DOMUtil.addClass(this,"itemover");});jQuery(items[i]).mouseout(function(){eXo.core.DOMUtil.replaceClass(this,"itemover","");});}}
AutoSuggest.prototype.hideMenu=function(){delete cwiAutoSuggest.currentItem;jQuery(cwiAutoSuggest.suggestMenu).fadeOut('slow');}
var cwiAutoSuggest=new AutoSuggest();function CompanySearchPortlet(){}
CompanySearchPortlet.prototype.setKeyword=function(comId,keyword){var searchForm=document.getElementById(comId);var inputKey=eXo.core.DOMUtil.findDescendantById(searchForm,"keywordInput");if(inputKey.value==''){inputKey.value=keyword+' ';inputKey.style.background="#eff1fa";}
inputKey.onfocus=function(event){if(inputKey.value==keyword+' ')
{inputKey.value='';}
inputKey.style.background="#ffffff";}
inputKey.onblur=function(event){if(inputKey.value==''){inputKey.value=keyword+' ';inputKey.style.background="#eff1fa";}}}
eXo.ecm.CompanySearchPortlet=new CompanySearchPortlet();if(!eXo)
eXo={};if(!eXo.commons)
eXo.commons={};function DocumentSelector(){this.defaultDriveType="personal";this.getDrives="";this.getFoldersAndFiles="";this.deleteFolderOrFile="";this.createFolder="";this.isFolderOnlyParam="";this.folderNameParam="";this.driveTypeParam="";this.driveNameParam="";this.workspaceNameParam="";this.currentFolderParam="";this.itemPathParam="";this.xmlHttpRequest=false;this.selectFile=null;this.selectFileLink=null;this.selectFolderLink=null;this.allowDeleteItem=true;this.dataId=null;this.selectedItem=null;};function DocumentItem(){driveType=null;driveName=null;workspaceName=null;currentFolder=null;jcrPath=null;};DocumentSelector.prototype.init=function(uicomponentId,restContext){var me=eXo.commons.DocumentSelector;this.uiComponent=document.getElementById(uicomponentId);this.selectFileLink=eXo.core.DOMUtil.findFirstDescendantByClass(this.uiComponent,"a","SelectFile");this.selectFolderLink=eXo.core.DOMUtil.findFirstDescendantByClass(this.uiComponent,"a","SelectFolder");this.getDrivesURL=restContext+this.getDrives;this.getFoldersAndFilesURL=restContext+this.getFoldersAndFiles;this.deleteFolderOrFileURL=restContext+this.deleteFolderOrFile;this.createFolderURL=restContext+this.createFolder;var documentItem=new DocumentItem();documentItem.driveType=this.defaultDriveType;me.renderDetails(documentItem);};DocumentSelector.prototype.changeDrive=function(selectBox){var documentItem=new DocumentItem();documentItem.driveType=selectBox.value;eXo.commons.DocumentSelector.renderDetails(documentItem);};DocumentSelector.prototype.renderDetails=function(documentItem){var me=eXo.commons.DocumentSelector;var domUtil=eXo.core.DOMUtil;var rightWS=domUtil.findFirstDescendantByClass(this.uiComponent,"div","RightWorkspace");var actionBar=domUtil.findFirstDescendantByClass(this.uiComponent,"div","ActionBar");var tblRWS=domUtil.findDescendantsByTagName(rightWS,"table")[0];var rowsRWS=domUtil.findDescendantsByTagName(tblRWS,"tr");if(rowsRWS&&rowsRWS.length>0){for(var i=0;i<rowsRWS.length;i++){if(i>0)
tblRWS.deleteRow(rowsRWS[i].rowIndex);}}
me.selectedItem=documentItem;if(!me.selectedItem||!me.selectedItem.driveName){actionBar.style.display="none";}else{actionBar.style.display="block";}
if(!me.selectedItem.currentFolder)me.selectedItem.currentFolder='';me.renderBreadcrumbs(documentItem,null);if(!documentItem.driveName){me.renderDrives(tblRWS,documentItem);}else{me.renderDetailsFolder(tblRWS,documentItem);}};DocumentSelector.prototype.renderDrives=function(tableContainer,documentItem){var me=eXo.commons.DocumentSelector;var driveType=documentItem.driveType;var url=this.getDrivesURL;url+="?"+this.driveTypeParam+"="+driveType;var data=me.request(url);var folderContainer=data.getElementsByTagName("Folders")[0];var folderList=folderContainer.getElementsByTagName("Folder");if(!folderList||folderList.length<=0){var tdNoContent=tableContainer.insertRow(1).insertCell(0);tdNoContent.innerHTML="There is no drive";tdNoContent.className="Item TRNoContent";return;}
var clazz='EventItem';var k=0;for(var i=0;i<folderList.length;i++){k=i+1;var name=folderList[i].getAttribute("name");var driveName=folderList[i].getAttribute("name");var nodeType=folderList[i].getAttribute("nodeType");var workspaceName=folderList[i].getAttribute("workspaceName");var canAddChild=folderList[i].getAttribute("canAddChild");var newRow=tableContainer.insertRow(i+1);newRow.className=clazz+" Cell";var cellZero=newRow.insertCell(0);cellZero.onclick=function(){eXo.commons.DocumentSelector.browseFolder(this);}
cellZero.innerHTML='<a class="Item Drive_'+nodeType+'" name="'+name
+'" driveType="'+driveType+'" driveName="'+driveName
+'" workspaceName="'+workspaceName+'" canAddChild="'+canAddChild
+'" onclick="javascript:void(0);">'+name
+'</a>';}};DocumentSelector.prototype.renderDetailsFolder=function(tableContainer,documentItem){var me=eXo.commons.DocumentSelector;var driveType=documentItem.driveType;var driveName=documentItem.driveName;var workSpaceName=documentItem.workspaceName;var currentFolder=documentItem.currentFolder;if(!currentFolder)
currentFolder="";var url=this.getFoldersAndFilesURL;url+="?"+this.driveNameParam+"="+driveName;url+="&"+this.workspaceNameParam+"="+workSpaceName;url+="&"+this.currentFolderParam+"="+currentFolder;url+="&"+this.isFolderOnlyParam+"=false";var data=me.request(url);var folderContainer=data.getElementsByTagName("Folders")[0];var folderList=folderContainer.getElementsByTagName("Folder");var fileContainer=data.getElementsByTagName("Files")[0];var fileList=fileContainer.getElementsByTagName("File");if((!fileList||fileList.length<=0)&&(!folderList||folderList.length<=0)){var tdNoContent=tableContainer.insertRow(1).insertCell(0);tdNoContent.innerHTML="There is no folder or file";tdNoContent.className="Item TRNoContent";return;}else{var listItem='';var clazz='EventItem';var k=0;for(var i=0;i<folderList.length;i++){k=i+1;var clazzItem=me.getClazzIcon(folderList[i].getAttribute("nodeType"));var jcrPath=folderList[i].getAttribute("path");var nodeType=folderList[i].getAttribute("folderType");var name=folderList[i].getAttribute("name");var childFolder=folderList[i].getAttribute("currentFolder");var canRemove=folderList[i].getAttribute("canRemove");var canAddChild=folderList[i].getAttribute("canAddChild");var newRow=tableContainer.insertRow(i+1);newRow.className=clazz+" Cell";var cellZero=newRow.insertCell(0);cellZero.onclick=function(){eXo.commons.DocumentSelector.browseFolder(this);}
cellZero.innerHTML='<a class="Item IconDefault '+clazzItem+'" name="'
+name+'" driveType="'+driveType+'" driveName="'
+driveName+'"workSpaceName="'+workSpaceName+'" canAddChild="'+canAddChild
+'" currentFolder="'+childFolder+'" jcrPath="'+jcrPath
+'" onclick="javascript:void(0);">'+name
+'</a>';}
for(var j=0;j<fileList.length;j++){var jcrPath=fileList[j].getAttribute("path");var nodeType=fileList[j].getAttribute("nodeType");var nodeTypeIcon=nodeType.replace(":","_")+"48x48Icon Folder";var node=fileList[j].getAttribute("name");var size=fileList[j].getAttribute("size");if(size<1024)
size+='&nbsp;Byte(s)';else if(size>1024&&size<(1024*1024)){size=(Math.round(size/1024*100))/100;size+='&nbsp;KB';}else{size=(Math.round(size/(1024*1024)*100))/100;size+='&nbsp;MB';}
var clazzItem=me.getClazzIcon(fileList[j].getAttribute("nodeType"));var newRow=tableContainer.insertRow(k+j+1);newRow.className=clazz+" Cell";var cellZero=newRow.insertCell(0);cellZero.tabIndex="1";cellZero.onclick=function(){eXo.commons.DocumentSelector.submitSelectedFile(this);}
cellZero.innerHTML='<a class="Item '+clazzItem+'" jcrPath="'
+jcrPath+'" name="'+node+'" onclick="javascript:void(0);">'
+node+'</a>';}}};DocumentSelector.prototype.selectUploadedFile=function(fileName){var domUtil=eXo.core.DOMUtil;var rightWS=domUtil.findFirstDescendantByClass(this.uiComponent,"div","RightWorkspace");var tblRWS=domUtil.findDescendantsByTagName(rightWS,"table")[0];var items=domUtil.findDescendantsByClass(tblRWS,"a","Item");for(var j=0;j<items.length;j++){var item=items[j];var itemName=item.getAttribute("name");if(itemName&&itemName==fileName){item.parentNode.onclick();item.parentNode.focus();}}};DocumentSelector.prototype.submitSelectedFile=function(tableCell){var me=eXo.commons.DocumentSelector;var domUtil=eXo.core.DOMUtil;var detailNode=domUtil.getChildrenByTagName(tableCell,"a")[0];var nodePath=detailNode.getAttribute("jcrPath");var fileName=detailNode.getAttribute("name");if(me.selectFileLink){var link=me.selectFileLink.href;var endParamIndex=link.lastIndexOf("')");if(endParamIndex>0)
link=link.substring(0,endParamIndex)+"&"+me.dataId+"="+nodePath+"')";window.location=link;}
if(me.selectFile){if(eXo.core.DOMUtil.hasClass(me.selectFile,"Selected")){eXo.core.DOMUtil.removeClass(me.selectFile,"Selected");}}
me.selectFile=tableCell.parentNode;domUtil.addClass(me.selectFile,"Selected");if(me.selectedItem){me.renderBreadcrumbs(me.selectedItem,fileName);}};DocumentSelector.prototype.submitSelectedFolder=function(documentItem){var me=eXo.commons.DocumentSelector;var workspaceName=documentItem.workspaceName;var jcrPath=documentItem.jcrPath;if(me.selectFolderLink){var link=me.selectFolderLink.href;var endParamIndex=link.lastIndexOf("')");if(endParamIndex>0)
link=link.substring(0,endParamIndex)+"&"+me.dataId+"="
+workspaceName+jcrPath+"')";window.location=link;}};DocumentSelector.prototype.browseFolder=function(tableCell){var me=eXo.commons.DocumentSelector;var domUtil=eXo.core.DOMUtil;var detailNode=domUtil.getChildrenByTagName(tableCell,"a")[0];var documentItem=new DocumentItem();documentItem.driveType=detailNode.getAttribute("driveType");documentItem.driveName=detailNode.getAttribute("driveName");documentItem.workspaceName=detailNode.getAttribute("workspaceName");documentItem.currentFolder=detailNode.getAttribute("currentFolder");documentItem.jcrPath=detailNode.getAttribute("jcrPath");documentItem.canAddChild=detailNode.getAttribute("canAddChild");me.renderDetails(documentItem);me.submitSelectedFolder(documentItem);};DocumentSelector.prototype.remove=function(tableCell){var me=eXo.commons.DocumentSelector;var domUtil=eXo.core.DOMUtil;var detailNode=domUtil.getChildrenByTagName(tableCell,"a")[0];var name=detailNode.getAttribute("name");var r=confirm("Are you sure you want remove "+name+" ?");if(r==false)
return;var driveName=detailNode.getAttribute("driveName");var workspaceName=detailNode.getAttribute("workspaceName");var itemPath=detailNode.getAttribute("itemPath");var url=me.deleteFolderOrFileURL;url+="?"+me.driveNameParam+"="+driveName;url+="&"+me.workspaceNameParam+"="+workspaceName;url+="&"+me.itemPathParam+"="+itemPath;me.request(url);if(me.selectedItem){me.renderDetails(me.selectedItem);}};DocumentSelector.prototype.newFolder=function(inputFolderName){var me=eXo.commons.DocumentSelector;var domUtil=eXo.core.DOMUtil;var msg_new_folder_not_allow=inputFolderName.getAttribute("msg_new_folder_not_allow");var msg_select_folder=inputFolderName.getAttribute("msg_select_drive");var msg_enter_folder_name=inputFolderName.getAttribute("msg_enter_folder_name");var msg_empty_folder_name=inputFolderName.getAttribute("msg_empty_folder_name");if(!me.selectedItem||!me.selectedItem.driveName){alert(msg_select_folder);return;}
var folderName=prompt(msg_enter_folder_name,"");if(folderName==null||folderName==""){alert(msg_empty_folder_name);return;}
var canAddChild=me.selectedItem.canAddChild;if(canAddChild=="false"){alert(msg_new_folder_not_allow);return;}
var driveName=me.selectedItem.driveName;var workspaceName=me.selectedItem.workspaceName;var url=me.createFolderURL;url+="?"+me.driveNameParam+"="+driveName;url+="&"+me.workspaceNameParam+"="+workspaceName;url+="&"+me.currentFolderParam+"="+me.selectedItem.currentFolder;url+="&"+me.folderNameParam+"="+folderName;me.request(url);me.renderDetails(me.selectedItem);};DocumentSelector.prototype.actionBreadcrumbs=function(driveType,driveName,workspaceName,currentFolder){var documentItem=new DocumentItem();documentItem.driveType=driveType;documentItem.driveName=driveName;documentItem.workspaceName=workspaceName;documentItem.currentFolder=currentFolder;eXo.commons.DocumentSelector.renderDetails(documentItem);}
DocumentSelector.prototype.renderBreadcrumbs=function(documentItem,fileName){var domUtil=eXo.core.DOMUtil;var breadcrumbContainer=domUtil.findFirstDescendantByClass(this.uiComponent,"div","BreadcumbsContainer");breadcrumbContainer.innerHTML='';var breadCrumbObject=new BreadCrumbs();breadCrumbObject.breadCrumb=breadcrumbContainer;if(fileName){breadCrumbObject.renderFileName(documentItem,fileName);}else if(documentItem.currentFolder){breadCrumbObject.renderFolder(documentItem,fileName);}else if(documentItem.driveName){breadCrumbObject.renderDrive(documentItem,fileName);}else{breadCrumbObject.renderDriveType(documentItem,fileName);}
var linkNode=eXo.core.DOMUtil.findDescendantsByTagName(breadcrumbContainer,"a");eXo.core.DOMUtil.replaceClass(linkNode[linkNode.length-1],'Normal','Selected');};function BreadCrumbs(){breadCrumb=null;BreadCrumbs.prototype.renderDriveType=function(documentItem){if(this.breadCrumb){this.appendBreadCrumbNode(documentItem,null);}};BreadCrumbs.prototype.renderDrive=function(documentItem){if(this.breadCrumb){var tmpDocumentItem=new DocumentItem();tmpDocumentItem.driveType=documentItem.driveType;this.renderDriveType(tmpDocumentItem);this.appendBreadCrumbNode(documentItem,documentItem.driveName);}};BreadCrumbs.prototype.renderFolder=function(documentItem){if(this.breadCrumb){var tmpDocumentItem=new DocumentItem();tmpDocumentItem.driveType=documentItem.driveType;tmpDocumentItem.driveName=documentItem.driveName;tmpDocumentItem.workspaceName=documentItem.workspaceName;this.renderDrive(tmpDocumentItem);var breadCrumbItem=documentItem.currentFolder.split("/");if(breadCrumbItem!=""){tmpDocumentItem.currentFolder='';for(var i=0;i<breadCrumbItem.length;i++){tmpDocumentItem.currentFolder+=breadCrumbItem[i];this.appendBreadCrumbNode(tmpDocumentItem,breadCrumbItem[i]);tmpDocumentItem.currentFolder+="/";}}}};BreadCrumbs.prototype.renderFileName=function(documentItem,fileName){if(this.breadCrumb){this.renderFolder(documentItem)
var fileNode=document.createElement("div");fileNode.className='BreadcumbTab';fileNode.innerHTML='<a class="Normal">'+"/"
+fileName+'</a>';this.breadCrumb.appendChild(fileNode);}};BreadCrumbs.prototype.appendBreadCrumbNode=function(documentItem,name){var node=document.createElement("div");var className='Normal';if(name==null){name='';className='HomeIcon';}else{name="/"+name;}
var driveType=documentItem.driveType;if(driveType)
driveType="'"+driveType+"'";var driveName=documentItem.driveName;if(driveName)
driveName="'"+driveName+"'";var workspaceName=documentItem.workspaceName;if(workspaceName)
workspaceName="'"+workspaceName+"'";var currentFolder=documentItem.currentFolder;if(currentFolder)
currentFolder="'"+currentFolder+"'";node.className='BreadcumbTab';strOnclick="eXo.commons.DocumentSelector.actionBreadcrumbs("+driveType
+","+driveName+","+workspaceName+","+currentFolder+");";node.innerHTML='<a class="'+className+' href="javascript:void(0);" onclick="'
+strOnclick+'">'+name
+'</a>&nbsp;&nbsp;';this.breadCrumb.appendChild(node);};};DocumentSelector.prototype.getClazzIcon=function(nodeType){var strClassIcon='';if(!nodeType){strClassIcon=".nt_file";return strClassIcon;}
strClassIcon=nodeType.replace("/","_").replace(":","_").toLowerCase()+"16x16Icon";return strClassIcon;};DocumentSelector.prototype.request=function(url){var xmlHttpRequest=false;if(window.XMLHttpRequest){xmlHttpRequest=new window.XMLHttpRequest();xmlHttpRequest.open("GET",url,false);xmlHttpRequest.send("");if(xmlHttpRequest.responseXML)
return xmlHttpRequest.responseXML;}
else
if(ActiveXObject("Microsoft.XMLDOM")){xmlHttpRequest=new ActiveXObject("Microsoft.XMLDOM");xmlHttpRequest.async=false;xmlHttpRequest.load(urlRequestXML);return xmlHttpRequest;}
return null;};String.prototype.trunc=function(n,useWordBoundary){var toLong=this.length>n,s_=toLong?this.substr(0,n-1):this;s_=useWordBoundary&&toLong?s_.substr(0,s_.lastIndexOf(' ')):s_;return toLong?s_+'...':s_;};eXo.commons.DocumentSelector=new DocumentSelector();if(!eXo.commons)eXo.commons={};function UIDSUpload(){this.listUpload=new Array();this.isAutoUpload=true;};UIDSUpload.prototype.initUploadEntry=function(uploadId,isAutoUpload){UIDSUpload.isAutoUpload=isAutoUpload;this.restContext=eXo.env.portal.context+"/"+eXo.env.portal.rest+"/managedocument/uploadFile";this.createUploadEntry(uploadId,isAutoUpload);};UIDSUpload.prototype.createUploadEntry=function(uploadId,isAutoUpload){var me=eXo.commons.UIDSUpload;var iframe=document.getElementById(uploadId+'uploadFrame');var idoc=iframe.contentWindow.document;if(eXo.core.Browser.gecko){idoc.open();idoc.close();me.createUploadEntryForFF(idoc,uploadId,isAutoUpload);return;}
var uploadAction=me.restContext+"/upload?";uploadAction+="uploadId="+uploadId;var uploadHTML="";uploadHTML+="<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>";uploadHTML+="<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='"+eXo.core.I18n.lang+"' dir='"+eXo.core.I18n.dir+"'>";uploadHTML+="<head>";uploadHTML+="<style type='text/css'>";uploadHTML+=this.getStyleSheetContent();uploadHTML+="</style>";uploadHTML+="<script type='text/javascript'>var eXo = parent.eXo</script>";uploadHTML+="</head>";uploadHTML+="<body style='margin: 0px; border: 0px;'>";uploadHTML+=this.getUploadContent(uploadId,uploadAction,isAutoUpload);uploadHTML+="</body>";uploadHTML+="</html>";if(navigator.userAgent.toLowerCase().indexOf('chrome')>-1){idoc.open();idoc.close();idoc.documentElement.innerHTML=uploadHTML;}else{idoc.open();idoc.write(uploadHTML);idoc.close();}};UIDSUpload.prototype.createUploadEntryForFF=function(idoc,uploadId,isAutoUpload){var uploadAction=eXo.env.server.context+"/upload?";uploadAction+="uploadId="+uploadId+"&action=upload";var newDoctype=document.implementation.createDocumentType('html','-//W3C//DTD XHTML 1.0 Transitional//EN','http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd');if(idoc.doctype){idoc.replaceChild(newDoctype,idoc.doctype);}
idoc.lang=eXo.core.I18n.lang;idoc.xmlns='http://www.w3.org/1999/xhtml';idoc.dir=eXo.core.I18n.dir;idoc.head=idoc.head||idoc.getElementsByTagName('head')[0];var script=document.createElement('script');script.type="text/javascript";script.text="var eXo = parent.eXo";idoc.head=idoc.head||idoc.getElementsByTagName('head')[0];idoc.head.appendChild(script);var style=document.createElement('style');style.type="text/css";var styleText=this.getStyleSheetContent();var cssText=document.createTextNode(styleText);style.appendChild(cssText);idoc.head.appendChild(style);idoc.body.innerHTML=this.getUploadContent(uploadId,uploadAction,isAutoUpload);}
UIDSUpload.prototype.getUploadContent=function(uploadId,uploadAction,isAutoUpload){var container=parent.document.getElementById(uploadId);var uploadIframe=eXo.core.DOMUtil.findDescendantById(container,uploadId+"UploadIframe");var uploadText=uploadIframe.title;var uploadHTML="";uploadHTML+="  <form id='"+uploadId+"' class='UIDSUploadForm' style='margin: 0px; padding: 0px' action='"+uploadAction+"' enctype='multipart/form-data' method='post'>";uploadHTML+="    <div class='BrowseDiv'>";uploadHTML+="      <a class='BrowseLink'>";uploadHTML+="        <input type='file' name='file' size='1' id='file' class='FileHidden' value='' onchange='parent.eXo.commons.UIDSUpload.upload(this, "+uploadId+")'/>";uploadHTML+="     &nbsp;</a>";uploadHTML+="    </div>";uploadHTML+="  </form>";return uploadHTML;}
UIDSUpload.prototype.getStyleSheetContent=function(){var styleText="";styleText+="body { margin:0; padding:0}";styleText+=".UIDSUploadForm {position: relative; }";styleText+=".FileHidden { opacity: 0; overflow: hidden; position: absolute; height: 32px; top: 0px; left: 0px; width: 100%; -moz-opacity:0 ; filter:alpha(opacity: 0); z-index: 1;} ";styleText+=".BrowseLink { position: relative; font-family: Arial, Helvetica, sans-serif; text-align: left; top:5px;padding: 3px 10px 3px 11px;";styleText+="     text-decoration: none;";styleText+="    background: url('/ecmexplorer/skin/icons/24x24/DefaultSkin/UploadFile.png') no-repeat 2px center;}";styleText+=".UIDSUploadForm a:hover {text-decoration: underline;}";return styleText;}
UIDSUpload.prototype.refeshProgress=function(elementId){var me=eXo.commons.UIDSUpload;var documentSelector=eXo.commons.DocumentSelector;var list=me.listUpload;var selectedItem=documentSelector.selectedItem;if(!selectedItem)return;if(list.length<1)return;var currentFolder=selectedItem.currentFolder;if(!currentFolder)currentFolder='';var url=me.restContext+"/control?";url+="action=progress"+"&workspaceName="+selectedItem.workspaceName
+"&driveName="+selectedItem.driveName+"&currentFolder="
+currentFolder+"&currentPortal="+eXo.env.portal.portalName+"&language="
+eXo.env.portal.language+"&uploadId="+elementId;var data=null;if(list.length>0){var data=documentSelector.request(url);setTimeout("eXo.commons.UIDSUpload.refeshProgress('"+elementId+"');",1000);}
else{return;}
var container=parent.document.getElementById(elementId);if(!data){this.abortUpload(elementId);var message=eXo.core.DOMUtil.findFirstChildByClass(container,"div","LimitMessage").innerHTML;alert(message.replace("{0}",response.upload[id].size));return;}else{var element=document.getElementById(elementId+"ProgressIframe");var nodeList=data.getElementsByTagName("UploadProgress");if(!nodeList)return;var oProgress;if(nodeList.length>0)oProgress=nodeList[0];var percent=oProgress.getAttribute("percent");var fileName=oProgress.getAttribute("fileName");var progressBarLabel=eXo.core.DOMUtil.findFirstDescendantByClass(container,"div","ProgressBarLabel");progressBarLabel.innerHTML=percent+"%";if(percent==100){me.listUpload.remove(elementId);if(!fileName||fileName==""){alert(container.getAttribute("upload_failed"));}
me.saveUploaded(elementId,fileName);documentSelector.renderDetails(selectedItem);documentSelector.selectUploadedFile(fileName);var refreshUpload=eXo.core.DOMUtil.findFirstDescendantByClass(container,"a","RefreshUpload");if(refreshUpload){eval(refreshUpload.href);}}}};UIDSUpload.prototype.saveUploaded=function(uploadId,fileName){var me=eXo.commons.UIDSUpload;var selectedItem=eXo.commons.DocumentSelector.selectedItem;var url=me.restContext+"/control?";url+="action=save"+"&workspaceName="+selectedItem.workspaceName
+"&driveName="+selectedItem.driveName+"&currentFolder="
+selectedItem.currentFolder+"&currentPortal="+eXo.env.portal.portalName+"&language="
+eXo.env.portal.language+"&uploadId="+uploadId+"&fileName="+fileName;var responseText=ajaxAsyncGetRequest(url,false);};UIDSUpload.prototype.showUploaded=function(id){eXo.commons.UIDSUpload.listUpload.remove(id);var container=parent.document.getElementById(id);var element=document.getElementById(id+"ProgressIframe");element.innerHTML="<span></span>";var uploadIframe=eXo.core.DOMUtil.findDescendantById(container,id+"UploadIframe");uploadIframe.style.display="block";var progressIframe=eXo.core.DOMUtil.findDescendantById(container,id+"ProgressIframe");progressIframe.style.display="none";var progressBarFrame=eXo.core.DOMUtil.findFirstDescendantByClass(container,"div","ProgressBarFrame");progressBarFrame.style.display="none";var tmp=element.parentNode;var temp=tmp.parentNode;var input=parent.document.getElementById('input'+id);input.value="true";};UIDSUpload.prototype.abortUpload=function(id){var me=eXo.commons.UIDSUpload;me.listUpload.remove(id);var url=me.restContext+"/control?";url+="uploadId="+id+"&action=abort";var request=eXo.core.Browser.createHttpRequest();request.open('GET',url,false);request.setRequestHeader("Cache-Control","max-age=86400");request.send(null);var container=parent.document.getElementById(id);var uploadIframe=eXo.core.DOMUtil.findDescendantById(container,id+"UploadIframe");uploadIframe.style.display="block";me.createUploadEntry(id,UIDSUpload.isAutoUpload);var progressIframe=eXo.core.DOMUtil.findDescendantById(container,id+"ProgressIframe");progressIframe.style.display="none";var tmp=progressIframe.parentNode;var temp=tmp.parentNode;var progressBarFrame=eXo.core.DOMUtil.findFirstDescendantByClass(container,"div","ProgressBarFrame");progressBarFrame.style.display="none";var selectFileFrame=eXo.core.DOMUtil.findFirstDescendantByClass(container,"div","SelectFileFrame");selectFileFrame.style.display="none";var input=parent.document.getElementById('input'+id);input.value="false";};UIDSUpload.prototype.upload=function(clickEle,id){var DOMUtil=eXo.core.DOMUtil;var me=eXo.commons.UIDSUpload;var selectedItem=eXo.commons.DocumentSelector.selectedItem;var container=parent.document.getElementById(id);var uploadIFrame=parent.document.getElementById(id+"UploadIframe");var uploadFrame=parent.document.getElementById(id+"uploadFrame");if(!selectedItem||!selectedItem.driveName){alert(uploadIFrame.getAttribute("select_drive"));file.value=='';return;}
var canAddChild=selectedItem.canAddChild;if(canAddChild=="false"){alert(uploadIFrame.getAttribute("permission_required"));file.value=='';return;}
var form=uploadFrame.contentWindow.document.getElementById(id);var file=DOMUtil.findDescendantById(form,"file");if(file.value==null||file.value=='')return;var progressBarFrame=DOMUtil.findFirstDescendantByClass(container,"div","ProgressBarFrame");progressBarFrame.style.display="block";var progressBarLabel=DOMUtil.findFirstChildByClass(progressBarFrame,"div","ProgressBarLabel");progressBarLabel.innerHTML="0%";var input=parent.document.getElementById('input'+id);input.value="true";var uploadIframe=DOMUtil.findDescendantById(container,id+"UploadIframe");uploadIframe.style.display="none";var progressIframe=DOMUtil.findDescendantById(container,id+"ProgressIframe");progressIframe.style.display="none";var tmp=progressIframe.parentNode;var temp=tmp.parentNode;form.submit();var list=me.listUpload;if(list.length==0){me.listUpload.push(form.id);setTimeout("eXo.commons.UIDSUpload.refeshProgress('"+id+"');",1000);}else{me.listUpload.push(form.id);}};UIDSUpload.prototype.validate=function(name){if(name.indexOf(':')>=0||name.indexOf('/')>=0||name.indexOf('\\')>=0||name.indexOf('|')>=0||name.indexOf('^')>=0||name.indexOf('#')>=0||name.indexOf(';')>=0||name.indexOf('[')>=0||name.indexOf(']')>=0||name.indexOf('{')>=0||name.indexOf('}')>=0||name.indexOf('<')>=0||name.indexOf('>')>=0||name.indexOf('*')>=0||name.indexOf('\'')>=0||name.indexOf('\"')>=0||name.indexOf('+')>=0){return false;}else{return true;}}
eXo.commons.UIDSUpload=new UIDSUpload();function UISiteMap(){};UISiteMap.prototype.updateTreeNode=function(nodeToUpdate,getNodeURL){if(!nodeToUpdate||!getNodeURL)return;var subGroup=eXo.core.DOMUtil.findFirstChildByClass(nodeToUpdate.parentNode,"div","ChildrenContainer");if(!subGroup||subGroup.innerHTML.trim()!=="")return;var jsChilds=ajaxAsyncGetRequest(getNodeURL,false);try{var data=eXo.core.JSON.parse(jsChilds);}catch(e){}
if(data&&data.length){eXo.webui.UISiteMap.generateHtml(data,nodeToUpdate,subGroup);return;}
eXo.core.DOMUtil.removeClass(nodeToUpdate,"CollapseIcon");eXo.core.DOMUtil.addClass(nodeToUpdate,"NullItem");};UISiteMap.prototype.generateHtml=function(data,nodeToUpdate,subGroup){function toHtml(node,isLast){if(!node)return;var lastNode=isLast?"LastNode":"";var actionLink=node.actionLink?node.actionLink:"javascript:void(0);";var actionExpand='eXo.webui.UISiteMap.updateTreeNode(this, "'+node.getNodeURL+'")';var actionCollapse='ajaxAsyncGetRequest("'+node.collapseURL+'", true)';var str="";if(node.hasChild){str+="<div class='"+lastNode+" Node'>";if(node.isExpanded){str+="<div class='CollapseIcon ClearFix' onclick='eXo.portal.UIPortal.collapseExpand(this); "+actionCollapse+"'>";str+="<a class='NodeIcon DefaultPageIcon' href='"+actionLink+"'>"+node.label+"</a>";str+="</div><div class='ChildrenContainer' style='display: block'>";for(var idx=0;idx<node.childs.length;idx++){str+=toHtml(node.childs[idx],idx==node.childs.length-1);}}else{str+="<div class='ExpandIcon ClearFix' onclick='eXo.portal.UIPortal.collapseExpand(this); "+actionExpand+"'>";str+="<a class='NodeIcon DefaultPageIcon' href='"+actionLink+"'>"+node.label+"</a>";str+="</div><div class='ChildrenContainer' style='display: none'>";for(var idx=0;idx<node.childs.length;idx++){str+=toHtml(node.childs[idx],idx==node.childs.length-1);}}
str+="</div></div>";}else{str+="<div class='"+lastNode+" Node ClearFix'><div class='NullItem'><div class='ClearFix'>";str+="<a class='NodeIcon DefaultPageIcon' href='"+actionLink+"'>"+node.label+"</a></div></div></div>";}
return str;}
var htmlFrags="";for(var i=0;i<data.length;i++){htmlFrags+=toHtml(data[i],i==data.length-1);}
subGroup.innerHTML=htmlFrags;subGroup.style.display="block";};eXo.webui.UISiteMap=new UISiteMap();UIForm.prototype.submitForm=function(formId,action,useAjax,callback){if(!callback)callback=null;var form=this.getFormElemt(formId);try{if(FCKeditorAPI&&typeof FCKeditorAPI=="object"){for(var name in FCKeditorAPI.__Instances){var oEditor;try{oEditor=FCKeditorAPI.__Instances[name];if(oEditor&&oEditor.GetParentForm&&oEditor.GetParentForm()==form){oEditor.UpdateLinkedField();}}catch(e){continue;}}}}catch(e){}
try{if(CKEDITOR&&typeof CKEDITOR=="object"){for(var i in CKEDITOR.instances){if(document.getElementById(i))CKEDITOR.instances[i].updateElement();}}}catch(e){}
form.elements['formOp'].value=action;if(useAjax)this.ajaxPost(form,callback);else form.submit();};function getUrlParam(paramName){var oRegex=new RegExp("[\?&]"+paramName+"=([^&]+)","i");var oMatch=oRegex.exec(window.location.search);if(oMatch&&oMatch.length>1)return oMatch[1];else return"";}
function ajaxGet(url,callback){if(!callback)callback=null;var path=getUrlParam("path");if(path)url+="&path="+path;doRequest("Get",url,null,callback);};UIForm.prototype.ajaxPost=function(formElement,callback){if(!callback)callback=null;var queryString=eXo.webui.UIForm.serializeForm(formElement);var url=formElement.action+"&ajaxRequest=true";var path=getUrlParam("path");if(path)url+="&path="+path;doRequest("POST",url,queryString,callback);};function Cometd(){this._connected=false;this._polling=false;this._connecting=false;this.currentTransport=null;this.url='/cometd/cometd';this.id=null;this.exoId=null;this.exoToken=null;var Browser=eXo.core.Browser;this.clientId=Browser.getCookie('cometdClientID')||false;this.messageId=0;this.batch=0;this._subscriptions=[];this._messageQ=[];this._connectionReadyCallbacks=[];this._maxInterval=5*1000;this._backoffInterval=1000;this._maxTry=5;this._tryToOpenTunnelCnt=0;this._retryInterval=0;this._multiClientsDetectCnt=0;}
Cometd.prototype.init=function(forceDisconnect){this._tryToOpenTunnelCnt=0;if((!forceDisconnect&&this._connected)||this._connecting){return;}
if(!this.currentTransport){this.currentTransport=new eXo.portal.LongPollTransport();this.currentTransport.init(this);}
if(this.clientId)
this.currentTransport.initTunnel();else
this.currentTransport.initHandshake();};Cometd.prototype.addOnConnectionReadyCallback=function(handle){if(handle){this._connectionReadyCallbacks.push(handle);}};Cometd.prototype.removeOnConnectionReadtCallback=function(handle){for(var i=0;i<this._connectionReadyCallbacks.length;i++){if(this._connectionReadyCallbacks[i]==handle){this._connectionReadyCallbacks[i]=this._connectionReadyCallbacks[this._connectionReadyCallbacks.length-1];this._connectionReadyCallbacks.pop();break;}}};Cometd.prototype.deliver=function(messages){messages.each(this._deliver,this);return messages;}
Cometd.prototype.isConnected=function(){return this._connected;}
Cometd.prototype._deliver=function(message){if(!message['channel']){if(message['success']!==true){return;}}
this.lastMessage=message;if(message.advice){this.adviceBackup=this.advice;this.advice=message.advice;this.multiClients=message.advice['multiple-clients'];if(this.multiClients){this._multiClientsDetectCnt++;if(this._multiClientsDetectCnt==1){if(window.console&&window.console.error)
window.console.error('You has multiple tab/window using Cometd!\nPlease keep only once.');}}else{this._multiClientsDetectCnt=0;this.resetRetryInterval();}}
if((message['channel'])&&(message.channel.length>5)&&(message.channel.substr(0,5)=='/meta')){switch(message.channel){case'/meta/connect':if(message.successful&&!this._connected){this._connected=true;this.endBatch();}
break;case'/meta/subscribe':if(!message.successful){throw(new Error('todo manage error subscription'));return;}
break;case'/meta/unsubscribe':if(!message.successful){throw(new Error('todo manage error unsubscription'));return;}
break;}}
if(message.data){var tname=message.channel;var def=this._subscriptions[tname];if(def)
def(message);}}
Cometd.prototype._sendMessage=function(message){if(this.currentTransport&&this._connected&&this.batch==0){return this.currentTransport.sendMessages([message]);}
else{this._messageQ.push(message);}}
Cometd.prototype.subscribe=function(channel,callback){if(callback){var tname=channel;var subs=this._subscriptions[tname];if(!subs||subs.length==0){subs=[];var message={channel:'/meta/subscribe',subscription:channel,exoId:this.exoId,exoToken:this.exoToken}
this._sendMessage(message);}
this._subscriptions[tname]=callback;}}
Cometd.prototype.unsubscribe=function(channel){var tname=channel;if(this._subscriptions[tname]){this._subscriptions[tname]=null;}
this._sendMessage({channel:'/meta/unsubscribe',subscription:channel,exoId:this.exoId,exoToken:this.exoToken});}
Cometd.prototype.startBatch=function(){this.batch++;}
Cometd.prototype.increaseRetryInterval=function(){this.advice=this.advice||{};if(!this.advice.interval||(this.advice.interval&&this.advice.interval>this._maxInterval)){this.resetRetryInterval();}else{this._retryInterval+=this._backoffInterval;this.advice.interval=this._retryInterval;}}
Cometd.prototype.resetRetryInterval=function(){if(this.advice)
this.advice.interval=1000;this._retryInterval=1000;}
Cometd.prototype.endBatch=function(){this._tryToOpenTunnelCnt=0;this._connecting=false;for(var i=0;i<this._connectionReadyCallbacks.length;i++){var handler=this._connectionReadyCallbacks[i];if(handler){handler();}}
if(--this.batch<=0&&this.currentTransport&&this._connected){this.batch=0;var messages=this._messageQ;this._messageQ=[];if(messages.length>0){this.currentTransport.sendMessages(messages);}}}
Cometd.prototype.disconnect=function(){this._tryToOpenTunnelCnt=0;this._subscriptions.each(this.unsubscribe,this);this._messageQ=[];if(this.currentTransport){this.currentTransport.disconnect();}
if(!this._polling)
this._connected=false;}
Cometd.prototype._backoff=function(){if(!this.advice||!this.advice.interval){this.advice={reconnect:'retry',interval:0};}
this.increaseRetryInterval();}
function LongPollTransport(){var instance=new Object();instance.init=function(cometd){this._connectionType='long-polling';this._cometd=cometd;}
instance.startup=function(){var request=new eXo.portal.AjaxRequest('POST',this._cometd.url);request.onSuccess=this._cometd.deliver;request.process();}
instance.initHandshake=function(){var message={channel:'/meta/handshake',id:this._cometd.messageId++,exoId:this._cometd.exoId,exoToken:this._cometd.exoToken};var query='message='+eXo.core.JSON.stringify(message);var request=new eXo.portal.AjaxRequest('POST',this._cometd.url,query);request.onSuccess=function(request){this.finishInitHandshake(request.evalResponse());}.bind(this);request.onError=function(err){throw(new Error('request Error, need to manage this error'));}.bind(this);request.process();}
instance.finishInitHandshake=function(data){data=data[0];this._cometd.handshakeReturn=data;if(data['advice']){this._cometd.advice=data.advice;}
if(!data.successful){if(this._cometd.advice&&this._cometd.advice['reconnect']=='none'){return;}
if(this._cometd.advice&&this._cometd.advice['interval']&&this._cometd.advice.interval>0){setTimeout(function(){eXo.core.Cometd.init();},this._cometd._retryInterval);}else{this._cometd.init(this.url,this._props);}
return;}
if(data.version<this.minimumVersion){return;}
this._cometd.clientId=data.clientId;eXo.core.Browser.setCookie('cometdClientID',this._cometd.clientId,1);this.initTunnel();}
instance.initTunnel=function(){var message={channel:'/meta/connect',clientId:this._cometd.clientId,connectionType:this._connectionType,id:this._cometd.messageId++};this.openTunnelWith({message:eXo.core.JSON.stringify(message)});}
instance.openTunnelWith=function(content,url){this._cometd._polling=true;var query='message='+content.message;var request=new eXo.portal.AjaxRequest('POST',(url||this._cometd.url),query);request.timeout=180000;request.onSuccess=function(request){this._cometd._polling=false;if(request.status>=200&&request.status<300){this._cometd.deliver(request.evalResponse());}
else
this._cometd._backoff();this.tunnelReq=null;this.tunnelCollapse();}.bind(this);request.onError=function(err){this.tunnelReq=null;this._cometd._polling=false;this._cometd._tryToOpenTunnelCnt++;this.tunnelCollapse();throw(new Error('tunnel opening failed'));}.bind(this);request.process();}
instance.tunnelCollapse=function(){if(this._cometd._tryToOpenTunnelCnt>this._cometd._maxTry){return;}
if(!this._cometd._polling){this._cometd._polling=false;if(this._cometd['advice']){if(this._cometd.advice['reconnect']=='none'){return;}
if((this._cometd.advice['interval'])&&(this._cometd.advice.interval>0)){var transport=this;setTimeout(function(){transport._connect();},this._cometd._retryInterval);this._cometd.increaseRetryInterval();}else{this._connect();this._cometd.increaseRetryInterval();}}else{this._connect();this._cometd.increaseRetryInterval();}}}
instance._connect=function(){if((this._cometd['advice'])&&(this._cometd.advice['reconnect']=='handshake')){this._cometd.clientId=null;this._cometd.init(this._cometd.url,this._cometd._props);}else if(this._cometd._connected){this.openTunnelWith({message:eXo.core.JSON.stringify([{channel:'/meta/connect',connectionType:this._connectionType,clientId:this._cometd.clientId,timestamp:this.lastTimestamp,id:''+this._cometd.messageId++}])});}}
instance.sendMessages=function(messages){for(var i=0;i<messages.length;i++){messages[i].clientId=this._cometd.clientId;messages[i].id=''+this._cometd.messageId++;}
var query='message='+eXo.core.JSON.stringify(messages);var request=new eXo.portal.AjaxRequest('POST',this._cometd.url,query);request.onSuccess=function(request){this._cometd.deliver(request.evalResponse());}.bind(this);request.onError=function(err){throw(new Error('error sending the message'));}.bind(this);request.process();}
instance.disconnect=function(){var query='message='+eXo.core.JSON.stringify([{channel:'/meta/disconnect',clientId:this._cometd.clientId,id:''+this._cometd.messageId++}]);var request=new eXo.portal.AjaxRequest('POST',this._cometd.url,query);request.process();}
return instance;}
eXo.core.Cometd=new Cometd();eXo.portal.LongPollTransport=LongPollTransport.prototype.constructor;var FCKeditor=function(instanceName,width,height,toolbarSet,value)
{this.InstanceName=instanceName;this.Width=width||'100%';this.Height=height||'200';this.ToolbarSet=toolbarSet||'Default';this.Value=value||'';this.BasePath=FCKeditor.BasePath;this.CheckBrowser=true;this.DisplayErrors=true;this.Config=new Object();this.OnError=null;}
FCKeditor.BasePath='/fckeditor/';FCKeditor.MinHeight=200;FCKeditor.MinWidth=750;FCKeditor.prototype.Version='2.6.3';FCKeditor.prototype.VersionBuild='19836';FCKeditor.prototype.Create=function()
{document.write(this.CreateHtml());}
FCKeditor.prototype.CreateHtml=function()
{if(!this.InstanceName||this.InstanceName.length==0)
{this._ThrowError(701,'You must specify an instance name.');return'';}
var sHtml='';if(!this.CheckBrowser||this._IsCompatibleBrowser())
{sHtml+='<input type="hidden" id="'+this.InstanceName+'" name="'+this.InstanceName+'" value="'+this._HTMLEncode(this.Value)+'" style="display:none" />';sHtml+=this._GetConfigHtml();sHtml+=this._GetIFrameHtml();}
else
{var sWidth=this.Width.toString().indexOf('%')>0?this.Width:this.Width+'px';var sHeight=this.Height.toString().indexOf('%')>0?this.Height:this.Height+'px';sHtml+='<textarea name="'+this.InstanceName+'" rows="4" cols="40" style="width:'+sWidth+';height:'+sHeight;if(this.TabIndex)
sHtml+='" tabindex="'+this.TabIndex;sHtml+='">'+
this._HTMLEncode(this.Value)+'<\/textarea>';}
return sHtml;}
FCKeditor.prototype.ReplaceTextarea=function()
{if(!this.CheckBrowser||this._IsCompatibleBrowser())
{var oTextarea=document.getElementById(this.InstanceName);var value=oTextarea.value;value=value.replace(/  /g,"&#32;&nbsp;");oTextarea.value=value;var colElementsByName=document.getElementsByName(this.InstanceName);var i=0;while(oTextarea||i==0)
{if(oTextarea&&oTextarea.tagName.toLowerCase()=='textarea')
break;oTextarea=colElementsByName[i++];}
if(!oTextarea)
{alert('Error: The TEXTAREA with id or name set to "'+this.InstanceName+'" was not found');return;}
oTextarea.style.display='none';if(oTextarea.tabIndex)
this.TabIndex=oTextarea.tabIndex;this._InsertHtmlBefore(this._GetConfigHtml(),oTextarea);this._InsertHtmlBefore(this._GetIFrameHtml(),oTextarea);}}
FCKeditor.prototype._InsertHtmlBefore=function(html,element)
{if(element.insertAdjacentHTML)
element.insertAdjacentHTML('beforeBegin',html);else
{var oRange=document.createRange();oRange.setStartBefore(element);var oFragment=oRange.createContextualFragment(html);element.parentNode.insertBefore(oFragment,element);}}
FCKeditor.prototype._GetConfigHtml=function()
{var sConfig='';for(var o in this.Config)
{if(sConfig.length>0)sConfig+='&amp;';sConfig+=encodeURIComponent(o)+'='+encodeURIComponent(this.Config[o]);}
return'<input type="hidden" id="'+this.InstanceName+'___Config" value="'+sConfig+'" style="display:none" />';}
FCKeditor.prototype._GetIFrameHtml=function()
{var sFile='fckeditor.html';try
{if((/fcksource=true/i).test(window.top.location.search))
sFile='fckeditor.original.html';}
catch(e){}
var sLink=this.BasePath+'editor/'+sFile+'?InstanceName='+encodeURIComponent(this.InstanceName);if(this.ToolbarSet)
sLink+='&amp;Toolbar='+this.ToolbarSet;html='<iframe id="'+this.InstanceName+'___Frame" src="'+sLink+'" width="'+this.Width+'" height="'+this.Height;if(this.TabIndex)
html+='" tabindex="'+this.TabIndex;html+='" frameborder="0" scrolling="no"></iframe>';return html;}
FCKeditor.prototype._IsCompatibleBrowser=function()
{return FCKeditor_IsCompatibleBrowser();}
FCKeditor.prototype._ThrowError=function(errorNumber,errorDescription)
{this.ErrorNumber=errorNumber;this.ErrorDescription=errorDescription;if(this.DisplayErrors)
{document.write('<div style="COLOR: #ff0000">');document.write('[ FCKeditor Error '+this.ErrorNumber+': '+this.ErrorDescription+' ]');document.write('</div>');}
if(typeof(this.OnError)=='function')
this.OnError(this,errorNumber,errorDescription);}
FCKeditor.prototype._HTMLEncode=function(text)
{if(typeof(text)!="string")
text=text.toString();text=text.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;");return text;};(function()
{var textareaToEditor=function(textarea)
{var editor=new FCKeditor(textarea.name);editor.Width=Math.max(textarea.offsetWidth,FCKeditor.MinWidth);editor.Height=Math.max(textarea.offsetHeight,FCKeditor.MinHeight);return editor;}
FCKeditor.ReplaceAllTextareas=function()
{var textareas=document.getElementsByTagName('textarea');for(var i=0;i<textareas.length;i++)
{var editor=null;var textarea=textareas[i];var name=textarea.name;if(!name||name.length==0)
continue;if(typeof arguments[0]=='string')
{var classRegex=new RegExp('(?:^| )'+arguments[0]+'(?:$| )');if(!classRegex.test(textarea.className))
continue;}
else if(typeof arguments[0]=='function')
{editor=textareaToEditor(textarea);if(arguments[0](textarea,editor)===false)
continue;}
if(!editor)
editor=textareaToEditor(textarea);editor.ReplaceTextarea();}}})();function FCKeditor_IsCompatibleBrowser()
{return true;var sAgent=navigator.userAgent.toLowerCase();if(false&&sAgent.indexOf("mac")==-1)
{var sBrowserVersion=navigator.appVersion.match(/MSIE (.\..)/)[1];return(sBrowserVersion>=5.5);}
if(navigator.product=="Gecko"&&navigator.productSub>=20030210&&!(typeof(opera)=='object'&&opera.postError))
return true;if(window.opera&&window.opera.version&&parseFloat(window.opera.version())>=9.5)
return true;if(sAgent.indexOf(' adobeair/')!=-1)
return(sAgent.match(/ adobeair\/(\d+)/)[1]>=1);if(sAgent.indexOf(' applewebkit/')!=-1)
return(sAgent.match(/ applewebkit\/(\d+)/)[1]>=522);return false;}
