1window._g=window._g||{};_g.shared={};if(window.console===undefined)window.console={log:function(m){}}; 2_g.shared.HTTP=new function(){var createResponse=function(){var response=new Object;response.headers=new Object;response.body=new Object;return response};var getResponseFromXhr=function(request){if(!request)return null;var response=createResponse();response.body=request.responseText;response.headers[_g.HTTP.HEADER_STATUS]=request.status;response.responseText=request.responseText;response.status=request.status;return response};return{EXTENSION_HTML:".html",EXTENSION_JSON:".json",EXTENSION_RES:".res", 3HEADER_STATUS:"Status",HEADER_MESSAGE:"Message",HEADER_LOCATION:"Location",HEADER_PATH:"Path",PARAM_NO_CACHE:"cq_ck",get:function(url,callback,scope,suppressForbiddenCheck){url=_g.HTTP.getXhrHookedURL(_g.HTTP.externalize(url,true));if(callback!=undefined)return _g.$.ajax({type:"GET",url:url,externalize:false,encodePath:false,hook:false,complete:function(request,textStatus){var response=getResponseFromXhr(request);if(!suppressForbiddenCheck)_g.HTTP.handleForbidden(response);callback.call(scope||this, 4this,textStatus=="success",response)}});else try{var request=_g.$.ajax({type:"GET",url:url,async:false,externalize:false,encodePath:false,hook:false});var response=getResponseFromXhr(request);if(!suppressForbiddenCheck)_g.HTTP.handleForbidden(response);return response}catch(e){return null}},post:function(url,callback,params,scope,suppressErrorMsg,suppressForbiddenCheck){url=_g.HTTP.externalize(url,true);var hook=_g.HTTP.getXhrHook(url,"POST",params);if(hook){url=hook.url;params=hook.params}if(callback!= 5undefined)return _g.$.ajax({type:"POST",url:url,data:params,externalize:false,encodePath:false,hook:false,complete:function(request,textStatus){var response=_g.HTTP.buildPostResponseFromHTML(request.responseText);if(!suppressForbiddenCheck)_g.HTTP.handleForbidden(request);callback.call(scope||this,this,textStatus=="success",response)}});else try{var request=_g.$.ajax({type:"POST",url:url,data:params,async:false,externalize:false,encodePath:false,hook:false});var response=_g.HTTP.buildPostResponseFromHTML(request.responseText); 6if(!suppressForbiddenCheck)_g.HTTP.handleForbidden(request);return response}catch(e){return null}},getParameter:function(url,name){var params=_g.HTTP.getParameters(url,name);return params!=null?params[0]:null},getParameters:function(url,name){var values=[];if(!name)return null;name=encodeURIComponent(name);if(url.indexOf("?")==-1)return null;if(url.indexOf("#")!=-1)url=url.substring(0,url.indexOf("#"));var query=url.substring(url.indexOf("?")+1);if(query.indexOf(name)==-1)return null;var queryPts= 7query.split("\x26");for(var i=0;i<queryPts.length;i++){var paramPts=queryPts[i].split("\x3d");if(paramPts[0]==name)values.push(paramPts.length>1?decodeURIComponent(paramPts[1]):"")}return values.length>0?values:null},addParameter:function(url,name,value){if(value&&value instanceof Array){for(var i=0;i<value.length;i++)url=_g.HTTP.addParameter(url,name,value[i]);return url}var separator=url.indexOf("?")==-1?"?":"\x26";var hashIdx=url.indexOf("#");if(hashIdx<0)return url+separator+encodeURIComponent(name)+ 8"\x3d"+encodeURIComponent(value);else{var hash=url.substring(hashIdx);url=url.substring(0,hashIdx);return url+separator+encodeURIComponent(name)+"\x3d"+encodeURIComponent(value)+hash}},setParameter:function(url,name,value){url=_g.HTTP.removeParameter(url,name);return _g.HTTP.addParameter(url,name,value)},removeParameter:function(url,name){var pattern0="?"+encodeURIComponent(name)+"\x3d";var pattern1="\x26"+encodeURIComponent(name)+"\x3d";var pattern;if(url.indexOf(pattern0)!=-1)pattern=pattern0;else if(url.indexOf(pattern1)!= 9-1)pattern=pattern1;else return url;var indexCutStart=url.indexOf(pattern);var begin=url.substring(0,indexCutStart);var indexCutEnd=url.indexOf("\x26",indexCutStart+1);var end="";if(indexCutEnd!=-1){end=url.substring(indexCutEnd);if(end.indexOf("\x26")==0)end=end.replace("\x26","?")}return begin+end},removeParameters:Granite.HTTP.removeParameters,addSelector:function(url,selector,index){if(!index)index=0;var post="";var pIndex=url.indexOf("?");if(pIndex==-1)pIndex=url.indexOf("#");if(pIndex!=-1){post= 10url.substring(pIndex);url=url.substring(0,pIndex)}var sIndex=url.lastIndexOf("/");var main=url.substring(sIndex);if(main.indexOf("."+selector+".")==-1){var path=url.substring(0,sIndex);var obj=main.split(".");var newMain="";var delim="";if(index>obj.length-2||index==-1)index=obj.length-2;for(var i=0;i<obj.length;i++){newMain+=delim+obj[i];delim=".";if(index==i)newMain+=delim+selector}return path+newMain+post}else return url},setSelector:function(url,selector,index){var post="";var pIndex=url.indexOf("?"); 11if(pIndex==-1)pIndex=url.indexOf("#");if(pIndex!=-1){post=url.substring(pIndex);url=url.substring(0,pIndex)}var selectors=_g.HTTP.getSelectors(url);var ext=url.substring(url.lastIndexOf("."));url=url.substring(0,url.lastIndexOf("."));var fragment=selectors.length>0?url.replace("."+selectors.join("."),""):url;if(selectors.length>0)for(var i=0;i<selectors.length;i++)if(index==i)fragment+="."+selector;else fragment+="."+selectors[i];else fragment+="."+selector;return fragment+ext+post},addSelectors:function(url, 12selectors){var res=url;if(url&&selectors&&selectors.length)for(var i=0;i<selectors.length;i++)res=_g.HTTP.addSelector(res,selectors[i],i);return res},getAnchor:function(url){if(url.indexOf("#")!=-1)return url.substring(url.indexOf("#")+1);return""},setAnchor:function(url,anchor){return _g.HTTP.removeAnchor(url)+"#"+anchor},removeAnchor:Granite.HTTP.removeAnchor,noCaching:function(url){return _g.HTTP.setParameter(url,_g.HTTP.PARAM_NO_CACHE,(new Date).valueOf())},buildPostResponseFromNode:function(node, 13response){if(!node)return null;if(response==undefined)response=createResponse();for(var i=0;i<node.childNodes.length;i++){var child=node.childNodes[i];if(child.tagName){if(child.id)if(child.href)response.headers[child.id]=child.href;else response.headers[child.id]=child.innerHTML;response=_g.HTTP.buildPostResponseFromNode(child,response)}}return response},buildPostResponseFromHTML:function(html){var response=createResponse();try{if(html.responseText!=undefined)html=html.responseText;else if(typeof html!= 14"string")html=html.toString();var div=document.createElement("div");div.innerHTML=html;response=_g.HTTP.buildPostResponseFromNode(div,response);div=null}catch(e){}return response},getCookie:function(name){var cname=encodeURIComponent(name)+"\x3d";var dc=document.cookie;if(dc.length>0){var begin=dc.indexOf(cname);if(begin!=-1){begin+=cname.length;var end=dc.indexOf(";",begin);if(end==-1)end=dc.length;return decodeURIComponent(dc.substring(begin,end))}}return null},setCookie:function(name,value,path, 15days,domain,secure){if(typeof days!="number")days=7;var date;if(days>0){date=new Date;date.setTime(date.getTime()+days*24*60*60*1E3)}else date=new Date(0);document.cookie=encodeURIComponent(name)+"\x3d"+encodeURIComponent(value)+";
15 "+(days!=0?"expires\x3d"+date.toGMTString()+"; ":"")+(domain?"domain\x3d"+domain+"; ":"")+(path?"path\x3d"+path:"")+(secure?"; secure":"");return value},clearCookie:function(name,path,domain,secure){_g.HTTP.setCookie(name,"null",path||"",-1,domain||"",secure||"")},getSchemeAndAuthority:Granite.HTTP.getSchemeAndAuthority, 16getContextPath:Granite.HTTP.getContextPath,externalize:function(url,encode){if(typeof G_IS_HOOKED!="undefined"&&G_IS_HOOKED(url))return url;if(encode)url=_g.HTTP.encodePathOfURI(url);url=Granite.HTTP.externalize(url);return url},internalize:Granite.HTTP.internalize,getPath:Granite.HTTP.getPath,getSuffix:function(){if(window.CQURLInfo&&CQURLInfo.suffix)return CQURLInfo.suffix;return null},getSelectors:function(url){if(!url&&window.CQURLInfo)if(CQURLInfo.selectors)return CQURLInfo.selectors;var selectors= 17[];url=url||window.location.href;url=_g.HTTP.removeParameters(url);url=_g.HTTP.removeAnchor(url);var fragment=url.substring(url.lastIndexOf("/"));if(fragment){var split=fragment.split(".");if(split.length>2)for(var i=0;i<split.length;i++)if(i>0&&i<split.length-1)selectors.push(split[i])}return selectors},getExtension:function(url){if(!url&&window.CQURLInfo)if(CQURLInfo.extension)return CQURLInfo.extension;url=url||window.location.href;url=_g.HTTP.removeParameters(url);url=_g.HTTP.removeAnchor(url); 18var pos=url.lastIndexOf(".");if(pos<0)return"";url=url.substring(pos+1);pos=url.indexOf("/");if(pos<0)return url;return url.substring(0,pos)},encodePathOfURI:Granite.HTTP.encodePathOfURI,encodePath:Granite.HTTP.encodePath,eval:Granite.HTTP.eval,isOkStatus:function(status){try{return(new String(status)).indexOf("2")==0}catch(e){return false}},isOk:function(response){try{return _g.HTTP.isOkStatus(response.headers[_g.HTTP.HEADER_STATUS])}catch(e){return false}},handleForbidden:function(response,suppressLogin){try{if(response[_g.HTTP.HEADER_STATUS.toLowerCase()]== 19403){Granite.HTTP.handleLoginRedirect();return true}return false}catch(e){return false}},getXhrHook:Granite.HTTP.getXhrHook,getXhrHookedURL:function(url,method,params){var hook=_g.HTTP.getXhrHook(url,method,params);if(hook)return hook.url;return url},reloadHook:function(url){if(typeof G_RELOAD_HOOK!="undefined"&&_g.$.isFunction(G_RELOAD_HOOK)){if(CQURLInfo.selectorString!="")url=_g.HTTP.addSelector(url,CQURLInfo.selectorString);url=G_RELOAD_HOOK(url)||url}return url}}};_g.HTTP=_g.shared.HTTP; 20_g.shared.Util=new function(){return{reload:function(win,url,preventHistory){if(!win)win=window;if(!url)url=_g.HTTP.noCaching(win.location.href);url=_g.HTTP.reloadHook(url);if(preventHistory)win.location.replace(url);else win.location.href=url},load:function(url,preventHistory){_g.Util.reload(window,url,preventHistory)},open:function(url,win,name,options){if(!win)win=window;if(!url)return;url=_g.HTTP.reloadHook(url);if(!name)name="";if(!options)options="";return win.open(url,name,options)},htmlEncode:function(value){return!value? 21value:String(value).replace(/&/g,"\x26amp;").replace(/>/g,"\x26gt;").replace(/</g,"\x26lt;").replace(/"/g,"\x26quot;")},htmlDecode:function(value){return!value?value:String(value).replace(/>/g,"\x3e").replace(/</g,"\x3c").replace(/"/g,'"').replace(/&/g,"\x26")},ellipsis:function(value,length,word){if(value&&value.length>length)if(word){var vs=value.substr(0,length-2);var index=Math.max(vs.lastIndexOf(" "),vs.lastIndexOf("."),vs.lastIndexOf("!"),vs.lastIndexOf("?"),vs.lastIndexOf(";")); 22if(index==-1||index<length-15)return value.substr(0,length-3)+"...";else return vs.substr(0,index)+"..."}else return value.substr(0,length-3)+"...";return value},patchText:Granite.Util.patchText,eval:function(response){return _g.HTTP.eval(response)},getTopWindow:Granite.Util.getTopWindow,setIFrameMode:Granite.Util.setIFrameMode}};_g.Util=_g.shared.Util; 23_g.shared.Sling=function(){return{SELECTOR_INFINITY:Granite.Sling.SELECTOR_INFINITY,CHARSET:Granite.Sling.CHARSET,STATUS:Granite.Sling.STATUS,STATUS_BROWSER:Granite.Sling.STATUS_BROWSER,OPERATION:Granite.Sling.OPERATION,OPERATION_DELETE:Granite.Sling.OPERATION_DELETE,OPERATION_MOVE:Granite.Sling.OPERATION_MOVE,DELETE_SUFFIX:Granite.Sling.DELETE_SUFFIX,TYPEHINT_SUFFIX:Granite.Sling.TYPEHINT_SUFFIX,COPY_SUFFIX:Granite.Sling.COPY_SUFFIX,MOVE_SUFFIX:Granite.Sling.MOVE_SUFFIX,ORDER:Granite.Sling.ORDER, 24REPLACE:Granite.Sling.REPLACE,DESTINATION:Granite.Sling.DESTINATION,SAVE_PARAM_PREFIX:Granite.Sling.SAVE_PARAM_PREFIX,IGNORE_PARAM:Granite.Sling.IGNORE_PARAM,REQUEST_LOGIN_PARAM:Granite.Sling.REQUEST_LOGIN_PARAM,LOGIN_URL:Granite.Sling.LOGIN_URL,LOGOUT_URL:Granite.Sling.LOGOUT_URL,processBinaryData:function(value){if(value&&value[":jcr:data"]!=undefined){var o=new Object;o.size=value[":jcr:data"];o.type=value["jcr:mimeType"];o.date=value["jcr:lastModified"];value=o}return value},getContentPath:function(relPath, 25absPath,allowParentPaths){var path=absPath;if(path.lastIndexOf(".")>path.lastIndexOf("/"))path=path.substr(0,path.indexOf(".",path.lastIndexOf("/")));if(relPath)if(relPath.indexOf("/")==0)path=relPath;else{if(allowParentPaths)while(relPath.indexOf("../")==0){relPath=relPath.substring(3);path=path.substring(0,path.lastIndexOf("/"))}relPath=relPath.replace("./","");path=path+"/"+relPath}return path}}}();_g.Sling=_g.shared.Sling; 26_g.shared.XSS=new function(){return{getXSSPropertyName:function(propertyName){if(!propertyName)return"";if(_g.XSS.KEY_REGEXP.test(propertyName))return propertyName;return propertyName+=_g.XSS.KEY_SUFFIX},getXSSRecordPropertyValue:function(rec,propertyName,ellipsisLimit){var value="";if(rec&&propertyName){var xssPropValue=rec.get(this.getXSSPropertyName(propertyName));if(xssPropValue)value=xssPropValue;else value=this.getXSSValue(rec.get(propertyName));if(ellipsisLimit&&!isNaN(ellipsisLimit))value= 27_g.Util.ellipsis(value,ellipsisLimit,true)}return value},getXSSTablePropertyValue:function(table,propertyName,ellipsisLimit){var value="";if(table&&propertyName){var xssPropValue=table[this.getXSSPropertyName(propertyName)];if(xssPropValue)value=xssPropValue;else value=this.getXSSValue(table[propertyName]);if(ellipsisLimit&&!isNaN(ellipsisLimit))value=_g.Util.ellipsis(value,ellipsisLimit,true)}return value},getXSSValue:function(val){if(val)return _g.Util.htmlEncode(val);else return""},updatePropertyName:function(cfg, 28propertyName){if(!cfg||!propertyName||!cfg[propertyName])return;if(cfg["xssProtect"]&&!cfg["xssKeepPropName"])cfg[propertyName]=this.getXSSPropertyName(cfg[propertyName])},xssPropertyRenderer:function(val,meta,rec,cfg){if(cfg&&cfg["dataIndex"]&&rec&&rec.data&&rec.data[this.getXSSPropertyName(cfg["dataIndex"])]){val=rec.data[this.getXSSPropertyName(cfg["dataIndex"])];if(cfg["ellipsisLimit"]&&!isNaN(cfg["ellipsisLimit"]))val=_g.Util.ellipsis(val,cfg["ellipsisLimit"],true);return val}else if(val)return val; 29else return""}}};_g.XSS=_g.shared.XSS;_g.XSS.KEY_SUFFIX="_xss";_g.XSS.KEY_REGEXP=new RegExp(_g.XSS.KEY_SUFFIX+"$");_g.shared.I18n=Granite.I18n;_g.I18n=_g.shared.I18n;_g.shared.I18n.getMessage=Granite.I18n.get;_g.shared.I18n.getVarMessage=Granite.I18n.getVar; 30_g.shared.String=new function(){return{startsWith:function(str,prefix){if(str==null||prefix==null)return str==null&&prefix==null;if(prefix.length>str.length)return false;var sMatch=str.toString();var sSearch=prefix.toString();return sMatch.indexOf(sSearch)==0},endsWith:function(str,suffix){if(str==null||suffix==null)return str==null&&suffix==null;if(suffix.length>str.length)return false;str=str.toString();suffix=suffix.toString();return str.lastIndexOf(suffix)==str.length-suffix.length},contains:function(str, 31searchStr){if(str==null||searchStr==null)return false;str=str.toString();searchStr=searchStr.toString();return str.indexOf(searchStr)>=0}}};_g.String=_g.shared.String; 32_g.shared.ClientSidePersistence=function(cfg){var session={PERSISTENCE_NAME:_g.shared.ClientSidePersistence.decoratePersistenceName("ClientSidePersistence"),config:{},cache:null,getMode:function(){return this.config.mode},getWindow:function(){return this.config["window"]||_g.shared.Util.getTopWindow()},debug:function(){if(console){var map=this.getMap();var debugInfo="[ClientSidePersistence -\x3e mode\x3d"+this.getMode().name+", container\x3d"+(this.config.container||"")+"]\n";var count=0;var containerRE= 33new RegExp("^"+this.config.container+"/");for(var idx=0,keys=Object.keys(map).sort(),last=null;idx<keys.length;idx++){var key=keys[idx];if(this.config.container&&typeof key=="string"&&!key.match(containerRE))continue;var value=map[key];debugInfo+="-["+ ++count+"]-\x3e '"+key.replace(containerRE,"")+"' \x3d '"+decodeURIComponent(value)+"'\n"}if(!count)debugInfo+="(container is empty)";console.log(debugInfo)}},keyName:function(key){return(this.config.container?this.config.container+"/":"")+key},getKeys:function(){var map= 34this.getMap();var keys=[];if(map)for(var k in map)if(this.config.container){if(k.indexOf(this.config.container+"/")==0){var key=k.substring(this.config.container.length+1);keys.push(key)}}else keys.push(k);return keys},get:function(key){var value=this.getMap()[this.keyName(key)];return value?decodeURIComponent(value):value}
34,set:function(key,value){key=typeof key==="string"?key.replace(/:=/g,""):"";var eventData={"key":key};key=this.keyName(key);if(!key.length)return;var result=[];var map=this.getMap(); 35eventData.action=map[key]?"update":"set";if(value)map[key]=encodeURIComponent(value);else{eventData.action="remove";delete map[key]}for(var entry in map)result.push(entry+":\x3d"+map[entry]);this.cache=map;this.write(result.join("|"));_g.$.extend(eventData,{"value":value,"mode":this.getMode().name,"container":this.config.container});_g.$(_g.shared.ClientSidePersistence).trigger(_g.shared.ClientSidePersistence.EVENT_NAME,eventData)},getMap:function(){if(!this.cache||!this.config.useCache){var data= 36this.read().split("|");var result={};for(var idx=0;idx<data.length;idx++){var chunks=data[idx].split(":\x3d");var key=chunks[0];if(key&&key.length)result[key]=chunks[1]||""}this.cache=result}return this.cache},remove:function(key){this.set(key)},clearMap:function(){this.write()},read:function(){return this.config.mode.read(this)||""},write:function(data){this.config.mode.write(this,data||"")}};_g.$.extend(session.config,_g.shared.ClientSidePersistence.getDefaultConfig(),cfg);if(session.config.useContainer=== 37false)session.config.container=null;var useFallback;var testItem="test-"+Math.random();if(session.config.mode===_g.shared.ClientSidePersistence.MODE_SESSION){useFallback=false;try{window.sessionStorage.setItem(testItem,testItem);window.sessionStorage.removeItem(testItem)}catch(error){useFallback=true}if(useFallback)session.config.mode=_g.shared.ClientSidePersistence.MODE_LOCAL}if(session.config.mode===_g.shared.ClientSidePersistence.MODE_LOCAL){useFallback=false;try{window.localStorage.setItem(testItem, 38testItem);window.localStorage.removeItem(testItem)}catch(error$0){useFallback=true}if(useFallback)session.config.mode=_g.shared.ClientSidePersistence.MODE_WINDOW}return session};_g.shared.ClientSidePersistence.EVENT_NAME="ClientSidePersistence"; 39_g.shared.ClientSidePersistence.MODE_SESSION={name:"session",read:function(self){return self.getWindow().sessionStorage.getItem(self.PERSISTENCE_NAME)},write:function(self,value){if(Granite.OptOutUtil.isOptedOut())return;try{self.getWindow().sessionStorage.setItem(self.PERSISTENCE_NAME,value)}catch(error){return}}}; 40_g.shared.ClientSidePersistence.MODE_LOCAL={name:"local",read:function(self){return self.getWindow().localStorage.getItem(self.PERSISTENCE_NAME)},write:function(self,value){if(Granite.OptOutUtil.isOptedOut())return;try{self.getWindow().localStorage.setItem(self.PERSISTENCE_NAME,value)}catch(error){return}}};_g.shared.ClientSidePersistence.decoratePersistenceName=function(name){return name}; 41_g.shared.ClientSidePersistence.MODE_WINDOW={"name":"window",read:function(self){return self.getWindow().name},write:function(self,value){if(Granite.OptOutUtil.isOptedOut())return;self.getWindow().name=value}}; 42_g.shared.ClientSidePersistence.MODE_COOKIE={COOKIE_NAME:_g.shared.ClientSidePersistence.decoratePersistenceName("SessionPersistence"),name:"cookie",read:function(self){return _g.shared.ClientSidePersistence.CookieHelper.read(this.COOKIE_NAME)},write:function(self,value){if(Granite.OptOutUtil.isOptedOut()&&!Granite.OptOutUtil.maySetCookie(this.COOKIE_NAME))return;if(!value)_g.shared.ClientSidePersistence.CookieHelper.erase(this.COOKIE_NAME);else _g.shared.ClientSidePersistence.CookieHelper.set(this.COOKIE_NAME, 43value,365)}};_g.shared.ClientSidePersistence.getDefaultConfig=function(){return{window:_g.shared.Util.getTopWindow(),useCache:false,container:null,mode:_g.shared.ClientSidePersistence.MODE_LOCAL}}; 44_g.shared.ClientSidePersistence.CookieHelper={set:function(name,value,days){var expires="";if(days){var date=new Date;date.setTime(date.getTime()+days*24*60*60*1E3);expires="; expires\x3d"+date.toGMTString()}if(value)value=encodeURIComponent(value);document.cookie=name+"\x3d"+value+expires+"; path\x3d/"},read:function(name){var nameEQ=name+"\x3d";var ca=document.cookie.split(";");for(var i=0;i<ca.length;i++){var c=ca[i];while(c.charAt(0)==" ")c=c.substring(1,c.length);if(c.indexOf(nameEQ)==0){var value= 45c.substring(nameEQ.length,c.length);return value?decodeURIComponent(value):null}}return null},erase:function(name){_g.shared.ClientSidePersistence.CookieHelper.set(name,"",-1)}}; 46_g.shared.ClientSidePersistence.clearAllMaps=function(){var modes=[_g.shared.ClientSidePersistence.MODE_COOKIE,_g.shared.ClientSidePersistence.MODE_LOCAL,_g.shared.ClientSidePersistence.MODE_SESSION,_g.shared.ClientSidePersistence.MODE_WINDOW];_g.$.each(modes,function(id,mode){var persistence=new _g.shared.ClientSidePersistence({"mode":mode});persistence.clearMap()})};_g.I18n.init();window.CQ=window.CQ||{};CQ.shared=_g.shared;CQ.Sling=CQ.shared.Sling;CQ.I18n=CQ.shared.I18n; 47G_XHR_HOOK=typeof CQ_XHR_HOOK!="undefined"?CQ_XHR_HOOK:undefined;G_RELOAD_HOOK=typeof CQ_RELOAD_HOOK!="undefined"?CQ_RELOAD_HOOK:undefined;G_IS_HOOKED=typeof CQ_IS_HOOKED!="undefined"?CQ_IS_HOOKED:undefined;G_CONTENT_PATH=typeof CQ_CONTENT_PATH!="undefined"?CQ_CONTENT_PATH:undefined; 48CQ.shared.Form=function(){var getDocumentLabelMap=function(){var contentFrame=parent.frames["ContentFrame"],doc=contentFrame!==undefined?contentFrame.contentDocument:document;var labelMap=new Object;var labelNodes=doc.getElementsByTagName("label");for(var i=0;i<labelNodes.length;i++){var forId=labelNodes[i].htmlFor;if(forId)labelMap[forId]=labelNodes[i]}return labelMap};var getLabelNodeTextContent=function(node){var text="";var walkTree=function(node){if(node.nodeType==3)text+=node.nodeValue;if(node.nodeName.toLowerCase()== 49"select"||node.nodeName.toLowerCase()=="input"||node.nodeName.toLowerCase()=="textarea"||node.nodeName.toLowerCase()=="button")return;for(var i=0;node.childNodes&&i<node.childNodes.length;i++)walkTree(node.childNodes[i])};walkTree(node);return text};var getSectionIdForIndexedId=function(id){return id.replace(/-\d+$/,"")};var getLabelForId=function(id,documentLabelMap){if(!documentLabelMap)documentLabelMap=getDocumentLabelMap();if(documentLabelMap[id])return getLabelNodeTextContent(documentLabelMap[id]); 50return null};var getDefaultValue=function(node){var defaultValue;var nodeName=node.nodeName.toLowerCase();var nodeType=hasAttribute(node,"type")?node.getAttribute("type"):undefined;if(nodeName=="input")if(nodeType=="radio"||nodeType=="checkbox"){if(hasAttribute(node,"checked"))defaultValue=node.getAttribute("value")}else if(node.type=="text")defaultValue=node.defaultValue;else defaultValue=node.value;
50else if(nodeName=="textarea")defaultValue=node.value;else if(nodeName=="option"&&hasAttribute(node, 51"selected"))defaultValue=node.getAttribute("value");return defaultValue};var hasAttribute=function(el,attr){if(el==null)return false;return $CQ(el).attr(attr)!=undefined};return{searchArray:function(arr,testProperty,testValue){for(var i=0;i<arr.length;i++)if(arr[i][testProperty]&&arr[i][testProperty]==testValue)return arr[i];return null},getLabelForField:function(fieldNode,documentLabelMap){if(!documentLabelMap)documentLabelMap=getDocumentLabelMap();var id=fieldNode.getAttribute("id");if(id&&documentLabelMap[id])return getLabelNodeTextContent(documentLabelMap[id]); 52var parent=fieldNode.parentNode;while(parent){if(parent.nodeName.toLowerCase()=="label")return getLabelNodeTextContent(parent);parent=parent.parentNode}return fieldNode.getAttribute("name")},getFields:function(){var contentFrame=parent.frames["ContentFrame"],doc=contentFrame!==undefined?contentFrame.contentDocument:document,documentLabelMap=getDocumentLabelMap();var fields=[];var visitNamedNode=function(node,inLocalNode,selector){var name=node.getAttribute("name");var nodeType=node.nodeName.toLowerCase(); 53var field;if(nodeType=="input"||nodeType=="textarea"){var controlType=hasAttribute(node,"type")?node.getAttribute("type").toLowerCase():"text";if(controlType=="button"||controlType=="submit"||controlType=="reset")return;field=CQ.shared.Form.searchArray(fields,"value",name);if(!field){fields.push({"text":CQ.shared.Form.getLabelForField(node,documentLabelMap),"value":name,"name":name,"enumeration":undefined,"local":inLocalNode,"selector":selector,"type":nodeType,"defaultValue":getDefaultValue(node), 54"node":node});field=fields[fields.length-1]}if(controlType=="radio"||field.local&&controlType=="checkbox"){if(!field.enumeration){var inputId=node.getAttribute("id");if(inputId){var sectionId=getSectionIdForIndexedId(inputId);var sectionLabel=getLabelForId(sectionId,documentLabelMap);field.text=sectionLabel?sectionLabel:name}else field.text=name;field.enumeration=[]}field.enumeration.push({"text":CQ.shared.Form.getLabelForField(node,documentLabelMap),"value":node.getAttribute("value"),"defaultValue":getDefaultValue(node), 55"node":node})}}else if(nodeType=="select"){fields.push({"text":CQ.shared.Form.getLabelForField(node,documentLabelMap),"value":name,"name":name,"enumeration":[],"local":inLocalNode,"type":nodeType,"selector":selector,"defaultValue":undefined,"node":node});field=fields[fields.length-1];var optionNodes=node.getElementsByTagName("option");for(var i=0;i<optionNodes.length;i++)field.enumeration.push({"text":optionNodes[i].innerHTML,"value":optionNodes[i].getAttribute("value"),"defaultValue":getDefaultValue(optionNodes[i]), 56"node":optionNodes[i]})}};var walkTree=function(node,inLocalNode,selector){if(node.nodeName.toLowerCase()=="div"&&$CQ(node).children(".form_row").length>0){inLocalNode=true;selector=$CQ(node).attr("class").replace(/\s/g,".")}if(node.getAttribute&&node.getAttribute("name"))visitNamedNode(node,inLocalNode,selector);for(var i=0;node.childNodes&&i<node.childNodes.length;i++){var child=node.childNodes[i];if(child.nodeType==1)walkTree(child,inLocalNode,selector)}};walkTree(doc,false,undefined);return fields}}}(); 57CQ.shared.User=function(infoData){return{data:null,language:null,userPropsPath:null,getUserPropsUrl:function(){if(!this.userPropsPath)this.userPropsPath=CQ.shared.User.PROXY_URI;return this.userPropsPath},load:function(){var url=this.getUserPropsUrl();url=CQ.shared.HTTP.noCaching(url);var response=CQ.shared.HTTP.get(url);if(CQ.shared.HTTP.isOk(response))this.data=CQ.shared.Util.eval(response)},init:function(infoData,force){if(!this.initialized||force){if(infoData)this.data=infoData;else this.load(); 58this.initialized=true}return this.data},lazyInit:function(){this.lazyLoad=function(){this.load();this.initialized=true}},isInitialized:function(){return this.initialized},getLanguage:function(){if(!this.isInitialized()&&this.lazyLoad)this.lazyLoad.call(this);this.language=this.data&&this.data["preferences"]&&this.data["preferences"]["language"]?this.data["preferences"]["language"]:"en";return this.language}}}();CQ.shared.User.PROXY_URI=CQ.shared.HTTP.externalize("/libs/cq/security/userinfo"+CQ.shared.HTTP.EXTENSION_JSON); 59CQ.shared.User.lazyInit();CQ.shared.I18n.init({locale:function(){return document.documentElement.lang||CQ.shared.User.getLanguage()},urlPrefix:"/libs/cq/i18n/dict."});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.