var ionBadge=function(){var opt={};var config={};var Util={};var Instance={};var User={};var Core={};var Template={};var reqModule={};var loginURL=[];var Msg=null;var Feedback={};Instance.flag=[];User.flag=[];var serverRoot=location.protocol+"//community.adobe.com/help/";config={proxyId:"ionProxy",proxyFile:serverRoot+"badge/proxy/proxy",retryDelay:200,langFolder:serverRoot+"badge/lang/",getReviewsURL:serverRoot+"api/v1/commenting/lrev.html",getCommentsURL:serverRoot+"api/v1/commenting/lcomm.html",postCommentsURL:serverRoot+"api/v1/commenting/acomm.html",starRatingURL:serverRoot+"api/v1/rating/arate.html",thumbsUpRatingURL:serverRoot+"api/v1/thumbs/thumb-up.html",thumbsDownRatingURL:serverRoot+"api/v1/thumbs/thumb-down.html",getAvgStarRatingURL:serverRoot+"api/v1/rating/avgrate.html",getAvgThumbRatingURL:serverRoot+"api/v1/thumbs/avgthumb.html",profileServer:serverRoot+"profile/index.html",updateUserURL:serverRoot+"api/v1/admin/updateMe.html",commentsFeedURL:serverRoot+"rss/comments.html",recoveryCookieName:"ach-badge-recovery",screenNameCookieName:"ach-scr",CHCUserAgent:"Community Help Client",sSkyApp:"ion",sSkyBucket:"url",sSkyFormat:"json",comPerPage:50};var ionResponse={error:null,queue:[],queueRequest:function(reqId){if(!reqId||typeof reqId!=="string"){throw new Error("ionResponse.addRequestToQueue: missing request id")}this.queue[reqId]=null},parse:function(JSONString){var obj=(typeof JSONString=="string")?eval("("+JSONString+")"):null;return obj},deliverResponse:function(respText,param2,param3,responseId){if(this.queue[responseId]===null){this.queue[responseId]=this.parse(respText)}},deliverError:function(errorMsg){this.error=errorMsg}};var Message=function(){var CSS_ERROR="ionComErr";var CSS_NOTICE="ionComNotice";var CSS_MESSAGE="ionComMessage";var CSS_LOADING="ionComLoading";var activeList={};var map={SERVICE_OFF:{text:ionLang.error.noService,canReplace:["NO_COMM","NO_REVIEW","LOAD_COMM"],cssClass:CSS_ERROR},SERVICE_ERROR:{text:ionLang.error.errServer,canReplace:["LOAD_COMM","LOAD_REVIEW","LOAD_COMM","ADD_COMM","ADD_RATING","NO_COMM","NO_REVIEW","SERVICE_ERROR"],cssClass:CSS_ERROR},LOAD_COMM:{text:ionLang.prompt.loadingComments,canReplace:[],cssClass:CSS_LOADING},LOAD_FORM:{text:ionLang.prompt.loadingAddForm,canReplace:[],cssClass:CSS_LOADING},POST_ERROR:{text:ionLang.error.postComment,canReplace:["ADD_COMM","ADD_RATING"],cssClass:CSS_ERROR},ADD_COMM:{text:ionLang.prompt.postComment,canReplace:["NULL_COMM","NO_COMM","NO_REVIEW","LOGIN_EXPIRED","POST_ERROR","NO_LOGIN","SERVICE_ERROR"],cssClass:CSS_LOADING},ADD_RATING:{text:ionLang.prompt.postRating,canReplace:["NULL_COMM","NO_RATING","NO_REVIEW","LOGIN_EXPIRED","POST_ERROR","NO_LOGIN","SERVICE_ERROR"],cssClass:CSS_LOADING},ADD_RATING_ERROR:{text:ionLang.error.errAddRating,canReplace:["ADD_RATING","NO_COMM","NO_REVIEW","NO_RATING"],cssClass:CSS_ERROR},AVG_RATING_ERROR:{text:ionLang.error.errAvgRating,canReplace:["ADD_RATING"],cssClass:CSS_NOTICE},NULL_COMM:{text:ionLang.prompt.blankComment,canReplace:["NULL_COMM"],cssClass:CSS_NOTICE},NO_LOGIN:{text:Template.getLoginString(),canReplace:["LOAD_COMM","ADD_COMM","ADD_RATING","NO_LOGIN"],cssClass:CSS_MESSAGE},LOGIN_EXPIRED:{text:ionLang.prompt.loginExpired,canReplace:["LOAD_COMM","ADD_COMM","ADD_RATING"],cssClass:CSS_NOTICE},NO_SCREENNAME:{text:Template.getNoScreenNameString(),canReplace:["LOAD_COMM"],cssClass:CSS_NOTICE},NO_RATING:{text:ionLang.prompt.noRatings,canReplace:["LOAD_COMM"],cssClass:CSS_MESSAGE},NO_COMM:{text:ionLang.prompt.noComments,canReplace:["LOAD_COMM"],cssClass:CSS_MESSAGE},NO_REVIEW:{text:ionLang.prompt.noReviews,canReplace:["LOAD_REVIEW"],cssClass:CSS_MESSAGE}};var removeObsoleteMessages=function(msgCode){for(var i in map[msgCode].canReplace){var msgToReplace=map[msgCode].canReplace[i];if(typeof activeList[msgToReplace]!=="undefined"){removeMessageNode(activeList[msgToReplace]);delete activeList[msgToReplace]}}};var removeMessageNode=function(node){if(typeof node=="object"){Template.msgContainer.removeChild(node)}};var createMessage=function(msgObj){var msgNode=document.createElement("div");msgNode.className=msgObj.cssClass;msgNode.innerHTML=msgObj.text;return msgNode};return{show:function(msgCode){var msgObj=map[msgCode];if(msgObj){removeObsoleteMessages(msgCode);var msg=createMessage(msgObj);Template.msgContainer.appendChild(msg);activeList[msgCode]=msg}},remove:function(msgCode){if(activeList[msgCode]){removeMessageNode(activeList[msgCode]);delete activeList[msgCode]}}}};Core.setup=function(){var ua=Util.getUserAgent();if(ua&&ua.indexOf(config.CHCUserAgent)!=-1){Core.stopBadge();return false}Core.setFlags();Core.loadLocale();var flashOk=Core.checkFlashVersion();if(flashOk===true){Core.deployProxy()}else{reqModule.proxy=false}Core.checkRequiredModules(opt.timeOutDelay/config.retryDelay)};Template.buildBase=function(){var base=document.createElement("div");base.id="ionCom";opt.container.appendChild(base);Template.base=$("#ionCom");if(Instance.type!==3){Template.buildHeader();Template.buildList()}var msgContainer=document.createElement("div");msgContainer.id="ionMessageContainer";Template.base.appendChild(msgContainer);Template.msgContainer=$("#ionMessageContainer");return base};Template.buildList=function(){var commentsList=document.createElement("ul");commentsList.id="ionComList";Template.base.appendChild(commentsList);Template.comList=$("#ionComList")};Template.buildHeader=function(){Template.buildHeaderContainer();Template.buildCommentsHeading();if(opt.ratingType==2){Template.buildRatingHeading()}Template.buildFeedHeading();Template.buildFeedAutodiscovery();var floatFix=Template.getClearFix();Template.comHeader.appendChild(floatFix)};Template.buildFeedHeading=function(){var feedContainer=Template.createEl("div",{id:"ionSummary-feed",className:"inline-right"});var feedLink=Template.getFeedLink();feedContainer.appendChild(feedLink);Template.comHeader.appendChild(feedContainer)};Template.buildFeedAutodiscovery=function(){var url=Core.getFeedURL();var title=ionLang.label.commentPlural+" - "+document.title.toString();Util.setRSSAutodiscovery(url,title)};Template.buildRatingHeading=function(){var ratingHeading=Template.createEl("div",{id:"ionSummary-ratings",className:"inline-left"});var ratingSummary=Template.getRatingSummary(false);ratingHeading.appendChild(ratingSummary);Template.comHeader.appendChild(ratingHeading);Template.ratingHeading=ratingHeading};Template.updateRatingHeading=function(){if(opt.ratingType==2&&Instance.type==1){var newRating=Template.getRatingSummary(false);if(typeof newRating=="object"){Template.ratingHeading.innerHTML="";Template.ratingHeading.appendChild(newRating)}}};Template.buildHeaderContainer=function(){var header=Template.createEl("div",{id:"ionComHeader"});Template.base.appendChild(header);Template.comHeader=header};Template.buildCommentsHeading=function(){var headingContainer=Template.createEl("div",{id:"ionSummary-comments",className:"inline-left"});var headingEl=Template.createEl("strong",{id:"ionComHeading",className:"ionIcon ionIconComment",text:Template.getHeadingCountString()});headingContainer.appendChild(headingEl);Template.comHeader.appendChild(headingContainer);Template.comHeading=$("#ionComHeading")};Template.updateHeadingCount=function(){Template.comHeading.innerHTML=Template.getHeadingCountString(Instance.commentCount)};Template.getFeedLink=function(){var feedLink=Template.createEl("a",{className:"ionIcon ionIconFeed",title:ionLang.label.commentFeedTitle,text:ionLang.label.commentPlural,href:Core.getFeedURL()});return feedLink};Core.getFeedURL=function(){return config.commentsFeedURL+"?resource_id="+opt.url+"&hl="+opt.locale};Template.buildCallToAction=function(){Template.buildAddForm();if(Instance.type!==3){Template.buildAddButton()}if(Instance.type!==2){Template.buildRatingContainer();Template.buildRatingModule()}var fix=Template.getClearFix();Template.addForm.appendChild(fix)};Template.setDefaultCommentText=function(){var lang=ionLang.label;if(Instance.type==1){Template.defaultCommentText=lang.ratingDefaultText}else{Template.defaultCommentText=lang.commentDefaultText}};Template.behavior={onCancel:function(){Template.resetAddForm()},onPreview:function(){var hasComment=Core.isValidComment();if(!hasComment){Msg.show("NULL_COMM")}else{Core.showCommentPreview();var previewEl=document.createElement("div");var contentEl=document.createElement("p");var content=Template.commentTextarea.value;contentEl.innerHTML=Util.formatText(content);Template.commentPreviewArea.innerHTML="";if(typeof Feedback.rating=="number"){var ratingPreview=Template.getStaticRating(opt.ratingType,Feedback.rating);previewEl.appendChild(ratingPreview);Template.commentPreviewArea.appendChild(previewEl)}Template.commentPreviewArea.appendChild(contentEl);Msg.remove("NULL_COMM");Util.hide(Template.commentForm);Util.hide(Template.ratingModule)}},onEdit:function(){Util.hide(Template.commentPreview);Util.show(Template.commentForm);Util.show(Template.ratingModule)},onSubmit:function(){var hasComment=Core.isValidComment();if(!hasComment){if(Instance.type==1&&typeof Feedback.rating=="number"){Core.postRating();Util.hide(Template.addForm);Util.hide(Template.commentPreview)}else{Msg.show("NULL_COMM")}}else{Msg.show("ADD_COMM");Core.postComment();Util.hide(Template.addForm);Util.hide(Template.commentPreview)}},onAppendComment:function(){if(typeof Feedback.rating=="number"){Core.getAvgRating(Core.updateAvgRating);Core.deleteRating()}Template.resetAddForm();if(typeof User.flag.rating=="number"){Template.rebuildRatingUI()}Template.refreshAnchor();Template.updateRatingHeading();Util.deleteCookie(config.recoveryCookieName)},onAddCommentError:function(){Core.setRecoveryCookie();if(Template.addForm){Util.show(Template.addForm);Util.show(Template.commentForm)}},onFocusTextarea:function(){if(Template.commentTextarea.className!=="ionComLegend"){return}else{Template.commentTextarea.value="";Template.commentTextarea.className=""}},onBlurTextarea:function(){if(Template.commentTextarea.value===""){Template.resetTextarea();return}}};Template.resetTextarea=function(){Template.commentTextarea.className="ionComLegend";Template.commentTextarea.value=Template.defaultCommentText};Template.resetAddForm=function(){Util.hide(Template.commentPreview);Util.hide(Template.commentForm);Util.show(Template.butAdd);Util.show(Template.ratingModule);Util.show(Template.addForm);Msg.remove("NULL_COMM");Msg.remove("LONG_COMM");Msg.remove("LIMIT_COMM");Msg.remove("ADD_COMM");Template.resetTextarea();if(opt.rating){Core.resetRating()}};Template.rebuildRatingUI=function(){if(opt.rating){Template.ratingModule.innerHTML="";Template.buildRatingModule()}};Template.getButton=function(text,onClick,idName){var but=document.createElement("a");but.className="ionButton";but.href="#";but.innerHTML=text;if(idName&&typeof idName=="string"){but.id=idName}Util.setEventListener(but,"click",function(e){Util.stopBehavior(e);onClick()},false);return but};Template.getCommentForm=function(){Template.setDefaultCommentText();var addBlock=document.createElement("div");addBlock.id="ionComAdd";var textArea=document.createElement("textarea");textArea.rows="6";textArea.cols="50";textArea.id="ionComTextArea";textArea.className="ionComLegend";textArea.innerHTML=Template.defaultCommentText;Util.setEventListener(textArea,"focus",Template.behavior.onFocusTextarea,false);Util.setEventListener(textArea,"blur",Template.behavior.onBlurTextarea,false);Template.commentTextarea=textArea;var controls=document.createElement("fieldset");var butSubmit=Template.getButton(ionLang.label.butSubmit,Template.behavior.onSubmit);var butPreview=Template.getButton(ionLang.label.butPreview,Template.behavior.onPreview);var butCancel=Template.getButton(ionLang.label.butCancel,Template.behavior.onCancel);controls.appendChild(butSubmit);controls.appendChild(butPreview);controls.appendChild(butCancel);addBlock.appendChild(textArea);addBlock.appendChild(controls);return addBlock};Template.getCommentPreview=function(){var previewBlock=document.createElement("div");previewBlock.id="ionComPreview";var previewHeading=document.createElement("h4");previewHeading.innerHTML=ionLang.label.previewComment;var previewTextArea=document.createElement("div");previewTextArea.id="ionComPreviewTextArea";var controls=document.createElement("fieldset");var butCancel=Template.getButton(ionLang.label.butCancel,Template.behavior.onCancel);var butEdit=Template.getButton(ionLang.label.butEdit,Template.behavior.onEdit);var butSubmit=Template.getButton(ionLang.label.butSubmit,Template.behavior.onSubmit);controls.appendChild(butSubmit);controls.appendChild(butEdit);controls.appendChild(butCancel);previewBlock.appendChild(previewHeading);previewBlock.appendChild(previewTextArea);previewBlock.appendChild(controls);Template.commentPreviewArea=previewTextArea;return previewBlock};Template.buildRatingContainer=function(){var module=document.createElement("div");module.id="ionComRating";Template.addForm.appendChild(module);Template.ratingModule=$("#ionComRating")};Template.buildRatingModule=function(){Template.buildRatingLabel();Template.buildRatingControl()};Template.buildRatingLabel=function(){var label=document.createElement("span");label.className="ionLabel";label.innerHTML=Template.getRatingLabelString();Template.ratingModule.appendChild(label)};Template.getRatingLabelString=function(){var str;var getRatedString=function(){var ratedStr;if(opt.ratingType==2){ratedStr=(User.flag.rating===0)?ionLang.label.ratingLabelNotHelpful:ionLang.label.ratingLabelHelpful}else{ratedStr=ionLang.label.ratingLabelRated}return ratedStr};var getUnRatedString=function(){var unRatedStr;if(opt.ratingType==2){unRatedStr=ionLang.label.ratingLabelThumbs}else{unRatedStr=ionLang.label.ratingLabelStars}return unRatedStr};if(User.flag.canRate===true){str=getUnRatedString()}else{str=getRatedString()}return str};Template.getInlineWrapper=function(){var inline=document.createElement("span");inline.className="inline-block";return inline};Template.buildRatingControl=function(){var ratingControl;var buildStarRating=function(){var wrapper=Template.getInlineWrapper();var baseList=Template.getStarRatingList();var preview=Template.getStarRating();preview.id="ionUserRating";baseList.appendChild(preview);wrapper.appendChild(baseList);var stars=getActiveRatingStars();if(stars instanceof Array){var len=stars.length;for(var i=0;i<len;i++){baseList.appendChild(stars[i])}}Template.currRating=preview;Template.starList=baseList;Template.ratingModule.appendChild(wrapper)};var getActiveRatingStars=function(){var activeStars=[];var stars={"1":"one-star","2":"two-stars","3":"three-stars","4":"four-stars","5":"five-stars"};for(var i in stars){var li=document.createElement("li");var ctrl=document.createElement("a");ctrl.className=stars[i];ctrl.innerHTML=i;ctrl.href="#";Util.setEventListener(ctrl,"click",function(value){return function(evt){Util.stopBehavior(evt);Core.setRating(parseInt(value,10))}}(i),false);li.appendChild(ctrl);activeStars.push(li)}return activeStars};var buildStaticStarRating=function(){if(typeof User.flag.rating=="number"){var ratingPreview=Template.getStaticStarRating(User.flag.rating);var wrapper=Template.getInlineWrapper();wrapper.appendChild(ratingPreview);Template.ratingModule.appendChild(wrapper)}};var getActiveThumb=function(name,value){var thumb;try{thumb=document.createElement('<input type="radio" name="'+name+'">')}catch(e){}if(!thumb||!thumb.name){thumb=document.createElement("input");thumb.type="radio";thumb.name=name}thumb.value=value;return thumb};var buildThumbsRating=function(){var container=document.createElement("span");container.id="ionThumbRatingGroup";var yesLabel=document.createElement("label");var noLabel=document.createElement("label");var yesInput=getActiveThumb("ionThumbsRating",1);var noInput=getActiveThumb("ionThumbsRating",0);yesLabel.innerHTML=ionLang.label.labelYes;noLabel.innerHTML=ionLang.label.labelNo;Util.setEventListener(yesLabel,"click",function(){yesInput.click()});Util.setEventListener(noLabel,"click",function(){noInput.click()});Util.setEventListener(yesInput,"click",function(){Core.setRating(yesInput.value)});Util.setEventListener(noInput,"click",function(){Core.setRating(noInput.value)});container.appendChild(yesInput);container.appendChild(yesLabel);container.appendChild(noInput);container.appendChild(noLabel);Template.ratingModule.appendChild(container)};if(User.flag.canRate===true){ratingControl=(opt.ratingType===2)?buildThumbsRating():buildStarRating()}else{ratingControl=(opt.ratingType===2)?"":buildStaticStarRating()}};Template.createEl=function(elType,elParams){if(elParams&&typeof elParams!=="object"){throw new Error("Template.createEl() Incorect parameter: elParams Expected: object, got: "+typeof elParams)}var el=document.createElement(elType);if(elParams){for(var key in elParams){switch(key.toString()){case"value":el.value=elParams[key];break;case"innerHTML":case"html":case"text":el.innerHTML=elParams[key];break;case"className":el.className=elParams[key];break;default:el.setAttribute(key.toString(),elParams[key])}}}return el};Template.getRatingCountElement=function(type,params){var count=(typeof Instance.ratingCount!=="number")?0:Instance.ratingCount;params=params||{};params.text=Template.getRatingCountString(count);var el=Template.createEl(type,params);return el};Template.getRatingSummary=function(isAnchor){var getAnchorTarget=function(){var target=Template.base.id;if(Template.addForm){target=Template.addForm.id}else{if(Template.comHeading){target=Template.comHeading.id}}return"#"+target};var getSummaryContainer=function(){var params={};if(isAnchor){params.id="ionRatingAnchor"}return Template.createEl("div",params)};var getThumbsSummary=function(){var baseString;var nrYes=(typeof Instance.thumbsUpCount=="number")?Instance.thumbsUpCount:0;var count=(typeof Instance.ratingCount!=="number")?0:Instance.ratingCount;if(count===0){baseString="0"}else{baseString=ionLang.label.summaryThumbs.replace(/\{proRatingCount\}/g,nrYes).replace(/\{ratingCount\}/g,count)}var container=Template.createEl("span",{text:baseString,className:"ionSummary"});return container};var getRatingsLabel=function(){var label,type;var params={};params.text=ionLang.label.ratingPlural+":";if(isAnchor){type="a";params.href=getAnchorTarget()}else{type="strong"}return Template.createEl(type,params)};var cont=getSummaryContainer();if(opt.ratingType==2){var ratingsLabel=getRatingsLabel();var summary=getThumbsSummary();cont.appendChild(ratingsLabel);cont.appendChild(summary)}else{var anchorTarget=getAnchorTarget();var ratingStars=Template.getStaticStarRating(Instance.avgRating,"small");var nrRatingsEl=Template.getRatingCountElement("a",{href:anchorTarget});var wrapper=Template.getInlineWrapper();wrapper.appendChild(ratingStars);cont.appendChild(wrapper);cont.appendChild(nrRatingsEl)}return cont};Template.getAnchorElement=function(){var getCommentAnchor=function(){var commentAnchor=document.createElement("a");if(Template.comHeading){commentAnchor.href="#"+Template.comHeading.id}if(typeof Instance.commentCount=="number"){commentAnchor.innerHTML=Template.getHeadingCountString(Instance.commentCount)}else{commentAnchor.innerHTML=Template.getHeadingCountString(0)}commentAnchor.className="ionIcon ionIconComment";return commentAnchor};var anchorEl=document.createElement("ul");anchorEl.className="ionAnchor";var anchorChildren=[];switch(Instance.type){case 1:anchorChildren.push(getCommentAnchor());anchorChildren.push(Template.getRatingSummary(true));break;case 2:anchorChildren.push(getCommentAnchor());break;case 3:anchorChildren.push(Template.getRatingSummary(true));break}for(var i=0;i<anchorChildren.length;i++){var li=document.createElement("li");li.appendChild(anchorChildren[i]);anchorEl.appendChild(li)}return anchorEl};Template.refreshAnchor=function(){if(!opt.anchor||typeof opt.anchor!=="object"){return}var newAnchor=Template.getAnchorElement();if(newAnchor){opt.anchor.innerHTML="";opt.anchor.appendChild(newAnchor)}};Template.getRatingCountString=function(count){if(typeof count!="number"){throw new Error("Template.getRatingCountString() Incorect parameter: count Expected: number, got: "+typeof count)}var baseString=(count===1)?ionLang.label.ratingSingular:ionLang.label.ratingPlural;var str="("+count+" "+baseString+")";return str};Template.getStaticRating=function(ratingType,rating){var el=null;if(!isNaN(ratingType)&&typeof ratingType=="number"&&ratingType!==0&&typeof rating=="number"){el=(ratingType==2)?Template.getThumbsOpinion(rating):Template.getStaticStarRating(rating,"small")}return el};Template.getStaticStarRating=function(value,size){var starList=Template.getStarRatingList(size);var starRating=Template.getStarRating(value);starList.appendChild(starRating);return starList};Template.getThumbsOpinion=function(value){var opinion=document.createElement("span");if(value===0){opinion.innerHTML=ionLang.label.helpfulNo;opinion.className="ionNegative"}else{opinion.innerHTML=ionLang.label.helpfulYes;opinion.className="ionPositive"}return opinion};Template.getStarRatingList=function(size){var list=document.createElement("ul");list.className=(size&&size==="small")?"ionStarRating small-star":"ionStarRating";return list};Template.getStarRating=function(value){var rate=document.createElement("li");rate.className="current-rating";rate.style.width=(typeof value=="number")?Core.calculateRatingPercent(value)+"%":"0%";return rate};Template.updateUserRatingUI=function(value){if(Template.currRating){var percent=Core.calculateRatingPercent(value)+"%";Template.currRating.style.width=percent}};Template.buildAddButton=function(){var addBut=Template.getButton(ionLang.label.butAdd,Core.showCommentForm,"ionComButAdd");Template.addForm.appendChild(addBut);Template.butAdd=$("#ionComButAdd")};Template.getClearFix=function(){var el=document.createElement("br");el.className="ionClearFix";return el};Template.buildPagination=function(selectedPageNr){var getPageItem=function(pageNumber){var li=document.createElement("li");var page;if(pageNumber===selectedPageNr){page=document.createElement("strong")}else{page=document.createElement("a");page.href="#";Util.setEventListener(page,"click",function(evt){Util.stopBehavior(evt);Core.getPage(pageNumber,true)},false)}page.innerHTML=pageNumber;li.appendChild(page);return li};var buildPaginationControl=function(){var pagBase=document.createElement("ul");pagBase.id="ionComPagination";var pagLabel=document.createElement("li");pagLabel.innerHTML=ionLang.label.pageName;pagBase.appendChild(pagLabel);for(var i=1;i<nrPages+1;i++){var item=getPageItem(i);pagBase.appendChild(item)}Template.base.insertBefore(pagBase,Template.msgContainer);Template.pagination=pagBase};var nrPages=Math.ceil(Instance.commentCount/config.comPerPage);if(nrPages>1){buildPaginationControl()}};Core.getPage=function(pageNumber,fromCache){var getCachedPage=function(pagNr){if(Instance.pageCache[pagNr]){Core.listCommentsFromCache(pagNr)}else{getFreshPage(pagNr)}};var getFreshPage=function(pagNr){Core.getComments(pagNr);Msg.show("LOAD_COMM")};Template.flushCommentList();if(Template.pagination){Template.base.removeChild(Template.pagination);delete Template.pagination}var operation=(fromCache===false)?getFreshPage:getCachedPage;operation(pageNumber)};Core.listCommentsFromCache=function(pageNumber){if(Instance.pageCache[pageNumber]){Instance.currPage=pageNumber;Template.comList.innerHTML="";Template.comList.innerHTML=Instance.pageCache[pageNumber];Template.buildPagination(pageNumber)}};Core.checkHashAction=function(){var action=null;switch(opt.hash){case"ach-setscr":action=Core.hashActions[opt.hash];break}if(typeof action=="function"){action.call()}};Core.hashActions={"ach-setscr":function(){var adobeSNCookie=Util.getCookie("SCREENNAME");if(typeof adobeSNCookie=="string"){Util.setCookie(config.screenNameCookieName,adobeSNCookie,365);User.flag.screenName=User.hasScreenName();var request=new ServerRequest();request.url=config.updateUserURL;request.method="GET";request.id="ach-setscr";request.onSuccess=function(){};request.onError=function(){};request.send()}}};Template.flushCommentList=function(){Instance.pageCache[Instance.currPage]=Template.comList.innerHTML;Template.comList.innerHTML=""};Template.getLoginString=function(){var url=(typeof loginURL[opt.system]=="string")?loginURL[opt.system]:ionLang.prompt.signInLinkPrefix;var loginLink="<a";loginLink+=' href="'+url+encodeURIComponent(window.location)+'"';loginLink+=' title="'+ionLang.prompt.signInLinkTitle+'">';loginLink+=ionLang.prompt.signInLink+"</a>";var template=null;switch(Instance.type){case 1:template=ionLang.prompt.anonymusUserReview;break;case 2:template=ionLang.prompt.anonymusUserComment;break;case 3:template=ionLang.prompt.anonymusUserRating;break}var loginString=(template!==null)?template.replace(/\{signInLink\}/g,loginLink):"Login to adobe.com";return loginString};Template.getNoScreenNameString=function(){var url=ionLang.prompt.setScreenNameUrl;var returnURl=window.location.toString();returnURl+="#ach-setscr";var snLink="<a";snLink+=' href="'+url+encodeURIComponent(returnURl)+'"';snLink+=' title="'+ionLang.prompt.setScreenNameTitle+'">';snLink+=ionLang.prompt.setScreenNameLink+"</a>";var snString=ionLang.prompt.setScreenName.replace(/\{setScreenNameLink\}/g,snLink);return snString};Template.getHeadingCountString=function(count){var str=ionLang.label.commentsHeading;var comNr=(count)?count:"0";str+=" ("+comNr+")";return str};Template.getCommentItem=function(comData){if(!comData||typeof comData!=="object"){return}var comItem=document.createElement("li");var comItemMeta=document.createElement("div");comItemMeta.className="ionComMetaData";var authorBlock=document.createElement("span");authorBlock.className="ionComAuthor";var authorAnchor=document.createElement("a");authorAnchor.className=(comData.adobeEmployee==1)?"ionIcon ionIconAdobe":"";authorAnchor.target="_blank";authorAnchor.href=config.profileServer+"?id="+encodeURIComponent(comData.authorId);authorAnchor.innerHTML=Util.cleanInput(comData.authorName);authorBlock.appendChild(authorAnchor);var roleLabel;switch(comData.authorRole.toString()){case"1":roleLabel=ionLang.label.administratorRole;break;case"2":roleLabel=ionLang.label.moderatorRole;break}if(roleLabel){authorBlock.appendChild(document.createTextNode("("+roleLabel+")"))}var dateBlock=document.createElement("span");dateBlock.className="ionComPostDate";dateBlock.innerHTML=comData.createdOn;var commentBlock=document.createElement("p");commentBlock.innerHTML=comData.content;comItemMeta.appendChild(authorBlock);comItemMeta.appendChild(dateBlock);comItemMeta.appendChild(document.createElement("br"));comItem.appendChild(comItemMeta);var ratingBlock=Template.getStaticRating(comData.ratingType,comData.rating);if(ratingBlock){comItem.appendChild(ratingBlock)}comItem.appendChild(commentBlock);return comItem};Template.buildAddForm=function(){var addForm=document.createElement("form");addForm.id="ionComAddForm";addForm.method="POST";addForm.action="#";Template.base.appendChild(addForm);Template.addForm=$("#ionComAddForm")};Template.incrementHeadingCount=function(){Instance.commentCount++;Template.updateHeadingCount()};Core.checkRequiredModules=function(attempt){if(attempt<1){Core.stopBadge();return}var pendingModules=0;for(var i in reqModule){if(reqModule[i]===false){++pendingModules}}if(pendingModules>0){setTimeout(function(){Core.checkRequiredModules(attempt-1)},config.retryDelay)}else{Core.deployBadge()}};Core.checkFlashVersion=function(){var cond=false;var flashVer=ionComProxy.getPlayerVersion();if(flashVer&&flashVer.major>=9){cond=true}return cond};Core.deployProxy=function(){ionComProxy.embedProxy(config.proxyId,config.proxyFile);setTimeout(function(){Core.checkProxy(opt.timeOutDelay/config.retryDelay)},1500)};Core.checkProxy=function(attempt){var proxy=document.getElementById(config.proxyId);if(attempt<1){return}if(typeof proxy.doGETRequest!=="function"){setTimeout(function(){Core.checkProxy(attempt-1)},config.retryDelay)}else{Template.proxy=proxy;reqModule.proxy=true}};Core.setFlags=function(){reqModule.locale=false;reqModule.proxy=false;loginURL.adc="https://www.adobe.com/cfusion/entitlement/index.cfm?e=adc&returnurl=";User.flag.canRate=true;User.flag.rating=null;User.flag.login=false;Instance.flag.hasComments=false;Instance.flag.hasRatings=false;Instance.flag.loadedData=false;Instance.currPage=null;Instance.pageCache=[]};Core.getBadgeInstance=function(){var inst=0;switch(opt.commenting){case true:if(opt.rating===false){inst=2}else{inst=1}break;case false:if(opt.rating===false){inst=0}else{inst=3}break}return inst};Core.deployBadge=function(){Instance.type=Core.getBadgeInstance();if(Instance.type===0){Core.stopBadge();return}Msg=new Message();User.flag.login=User.isLoggedIn();Template.buildBase();window.ionResponse=ionResponse;Core.triggerBranch()};Core.triggerBranch=function(){switch(Instance.type){case 1:Core.getComments(1);Core.getAvgRating(Core.updateAvgRating);Msg.show("LOAD_COMM");break;case 2:Core.getComments(1);Msg.show("LOAD_COMM");break;case 3:Core.getAvgRating(Core.setAvgRating);break}};Core.stopBadge=function(){};Core.loadLocale=function(forcedLocale){var lang=(!forcedLocale||typeof forcedLocale!="string")?opt.locale:forcedLocale;var isChinese=lang.substring(0,2).match("zh");lang=isChinese?lang:lang.substring(0,2);var langPack=new LazyLoader();langPack.src=config.langFolder+"ionLang_"+lang+".js";langPack.objToLoad="ionLang";langPack.onLoad=function(){reqModule.locale=true};langPack.onError=function(){if(opt.locale!=="en_US"){Core.loadLocale("en_US")}};langPack.load()};Core.getBasicServiceParams=function(){var params=[["app",config.sSkyApp],["bucket",config.sSkyBucket],["format",config.sSkyFormat]];return params};Core.getComments=function(pageNr){if(!pageNr){pageNr=1}var pLabelsString=Core.getProductLabelsString();var parameters=Core.getBasicServiceParams();parameters.push(["page_size",config.comPerPage]);parameters.push(["page",pageNr]);parameters.push(["fields","content,ion.author_role,author,ion.adbe,ion.rating,ion.rating_type,ion.author_id,created"]);parameters.push(["where","ion.language:"+opt.locale+","+pLabelsString+"resource_id:"+opt.url+",ion.visible:true"]);if(opt.ratingType==2){parameters.push(["thumbs",true])}var request=new ServerRequest();request.url=(Instance.type===1)?config.getReviewsURL:config.getCommentsURL;request.method="GET";request.params=parameters;request.id="lcomm";request.onSuccess=Core.listComments;request.send()};Core.postComment=function(){var content=Template.commentTextarea.value;var parameters=[["app",config.sSkyApp],["bucket",config.sSkyBucket],["o",config.sSkyFormat],["ion.language",opt.locale],["resource_id",opt.url],["content",encodeURIComponent(content)]];if(opt.productLabel){var labelValue="";if(typeof opt.productLabel=="string"){labelValue=opt.productLabel}else{if(typeof opt.productLabel!=="string"&&opt.productLabel.length){labelValue=Util.arrayToString(opt.productLabel)}}parameters.push(["ion..label",labelValue])}if(opt.siteArea&&typeof opt.siteArea=="string"){parameters.push(["ion.site",opt.siteArea])}if(typeof Feedback.rating=="number"){parameters.push(["ion.rating",Feedback.rating]);parameters.push(["ion.rating_type",opt.ratingType])}var request=new ServerRequest();request.url=config.postCommentsURL;request.method="POST";request.params=parameters;request.id="acomm";request.onSuccess=Core.appendComment;request.onError=function(){Msg.show("POST_ERROR");Template.behavior.onAddCommentError()};request.send()};Core.postRating=function(){if(typeof Feedback.rating!=="number"){return}var parameters=Core.getBasicServiceParams();parameters.push(["resource_id",opt.url]);parameters.push(["content",Feedback.rating]);parameters.push(["ion.language",opt.locale]);if(opt.productLabel){var labelValue="";if(typeof opt.productLabel=="string"){labelValue=opt.productLabel}else{if(typeof opt.productLabel!=="string"&&opt.productLabel.length){labelValue=Util.arrayToString(opt.productLabel)}}parameters.push(["ion.label",labelValue])}if(opt.siteArea&&typeof opt.siteArea=="string"){parameters.push(["ion.site",opt.siteArea])}var request=new ServerRequest();request.url=Core.getRatingUrl();request.method="GET";request.params=parameters;request.id="arate";request.onSuccess=Core.updateRating;request.onError=function(){Msg.show("ADD_RATING_ERROR")};request.send();Msg.show("ADD_RATING")};Core.getRatingUrl=function(){var url=null;if(opt.ratingType===2){url=(Feedback.rating===0)?config.thumbsDownRatingURL:config.thumbsUpRatingURL}else{url=config.starRatingURL}return url};Core.getAvgRating=function(callback){var request=new ServerRequest();var parameters=Core.getBasicServiceParams();parameters.push(["where","resource_id:"+opt.url]);if(opt.ratingType===2){request.url=config.getAvgThumbRatingURL;parameters.push(["fields","up,down,content,count"])}else{request.url=config.getAvgStarRatingURL}request.url=(opt.ratingType===2)?config.getAvgThumbRatingURL:config.getAvgStarRatingURL;request.method="GET";request.params=parameters;request.id="avgrate";request.onSuccess=callback||Core.updateAvgRating;request.onError=function(){Msg.show("AVG_RATING_ERROR")};request.send()};Core.getProductLabelsString=function(){var string="";if(!opt.productLabel){return string}if(typeof opt.productLabel=="string"){string="ion..label:"+opt.productLabel+","}if(opt.productLabel.length&&typeof opt.productLabel!=="string"){for(var i=0;i<opt.productLabel.length;i++){string=string+"ion..label:"+opt.productLabel[i]+","}}return string};Core.recoverComment=function(cookie){var decodeCookie=function(cookieObj){var obj={};var parts=cookieObj.split("|split|");if(parts){obj.url=(parts[0]!=="")?parts[0]:null;obj.comment=(parts[1]!=="")?parts[1]:null}return obj};var populateTextarea=function(value){if(value&&typeof value=="string"){Template.commentTextarea.value=value;Template.commentTextarea.className=""}};var recoverObj=decodeCookie(unescape(cookie));if(recoverObj&&recoverObj.url&&recoverObj.url==opt.url){populateTextarea(recoverObj.comment)}};Core.setRecoveryCookie=function(){if(Template.commentTextarea){recoveryObj=opt.url+"|split|"+Template.commentTextarea.value;Util.setCookie(config.recoveryCookieName,recoveryObj,1)}};function retryChecker(){var self=this;var checkErrCondition=function(){var err=false;if(self.errorCondition){err=self.errorCondition()}return err};var doRetry=function(){if(self.attempt<1){self.errorHandler();return}var isError=checkErrCondition();if(isError===true){self.errorHandler();return}var isValid=self.validCondition();if(isValid===false){setTimeout(function(){self.attempt=self.attempt-1;doRetry()},self.delay)}else{self.validHandler()}};return{start:function(){self.attempt=this.attempts||10;self.validCondition=this.validCondition;self.validHandler=this.validHandler;self.errorCondition=this.errorCondition;self.errorHandler=this.errorHandler;self.delay=this.delay||200;doRetry()}}}function ServerRequest(){var self=this;var sendRequest=function(){var request=buildRequest();var requestHandler=buildHandler();ionResponse.queueRequest(self.id);ionResponse.error=null;request.send();requestHandler.start()};var buildRequest=function(){var req=Util.URLRequest();req.url=self.url;req.method=self.method;req.params=self.params;req.onLoad=self.SWFonLoad;req.onError=self.SWFonError;req.id=self.id;return req};var buildHandler=function(){var checker=new retryChecker();checker.attempts=self.attempts;checker.delay=self.delay;checker.validCondition=isValidResponse;checker.validHandler=checkForErrors;checker.errorCondition=isServerError;checker.errorHandler=self.onError;return checker};var isValidResponse=function(){var isValid=(typeof ionResponse.queue[self.id]!=="object"||ionResponse.queue[self.id]===null)?false:true;return isValid};var checkForErrors=function(){Core.checkForServiceErros(ionResponse.queue[self.id],self.onSuccess)};var isServerError=function(){var isErr=(ionResponse.error!==null)?true:false;return isErr};return{send:function(){self.url=this.url;self.id=this.id;self.onSuccess=this.onSuccess;self.onError=this.onError||Core.showServerError;self.attempts=this.attempts||opt.timeOutDelay/config.retryDelay;self.delay=this.delay||config.retryDelay;self.method=this.method||"GET";self.params=this.params||[];self.SWFonLoad=this.SWFonLoad||"ionResponse.deliverResponse";self.SWFonError=this.SWFonError||"ionResponse.deliverError";sendRequest()}}}Core.showServerError=function(){Msg.show("SERVICE_ERROR")};Core.setRating=function(value){Feedback.rating=parseInt(value,10);if(opt.ratingType==1){Template.updateUserRatingUI(value)}if(Instance.type!==3){Core.showCommentForm()}else{Core.postRating();Util.hide(Template.addForm)}};Core.showCommentForm=function(){Util.hide(Template.butAdd);if(Template.commentForm){Util.show(Template.commentForm)}else{var form=Template.getCommentForm();var recoveryCookie=Util.getCookie(config.recoveryCookieName);if(recoveryCookie){Core.recoverComment(recoveryCookie)}Template.addForm.appendChild(form);Template.commentForm=form}};Core.showCommentPreview=function(){if(Template.commentPreview){Util.show(Template.commentPreview)}else{var comPreview=Template.getCommentPreview();Template.addForm.appendChild(comPreview);Template.commentPreview=comPreview}};Core.isValidComment=function(){var isValid=true;var content=Template.commentTextarea.value;var bogusText=Util.isJustWhiteSpace(content);if(content===""||content==Template.defaultCommentText||bogusText){isValid=false}return isValid};Core.resetRating=function(){var resetThumbs=function(){var inputs=Template.ratingModule.getElementsByTagName("input");if(inputs){for(var i=0;i<inputs.length;i++){inputs[i].checked=false}}};Core.deleteRating();switch(opt.ratingType){case 1:Template.updateUserRatingUI(0);break;case 2:resetThumbs();break}};Core.deleteRating=function(){if(typeof Feedback.rating=="number"){delete Feedback.rating}};Core.calculateRatingPercent=function(value){var coverage=value*20;return coverage};Core.checkForServiceErros=function(response,handleResponse){if(response.ion&&response.ion.error){switch(response.ion.errorCode){case"LOGIN_REQUIRED":Msg.show("LOGIN_EXPIRED");Msg.show("NO_LOGIN");Template.behavior.onAddCommentError();break;case"FATAL_EXCEPTION":Msg.show("SERVICE_ERROR");break;default:Msg.show("SERVICE_ERROR")}if(Instance.type!==3){Template.behavior.onAddCommentError()}}else{handleResponse(response)}};Core.listComments=function(responseBody){var comItems=responseBody.response[1];if(typeof responseBody.userRating!=="undefined"){var prevRating;if(opt.ratingType===2){prevRating=Core.decodeThumbValue(responseBody.userRating)}else{prevRating=parseInt(responseBody.userRating,10)}if(!isNaN(prevRating)){User.setRatingFags(opt.ratingType,prevRating)}}if(typeof Instance.commentCount!=="number"){Instance.commentCount=parseInt(responseBody.response[0].total,10)}Instance.currPage=parseInt(responseBody.response[0].page,10);if(comItems&&comItems.length>0){for(var index=0;index<comItems.length;++index){var comData={};comData.adobeEmployee=comItems[index]["ion.adbe"];comData.authorId=comItems[index]["ion.author_id"];comData.authorName=comItems[index].author;comData.authorRole=comItems[index]["ion.author_role"];comData.createdOn=Util.formatDate("",Number(comItems[index].created)*1000);comData.content=Util.formatText(comItems[index].content);comData.ratingType=comItems[index]["ion.rating_type"];comData.rating=comItems[index]["ion.rating"];var commentItem=Template.getCommentItem(comData);if(index%2){commentItem.className="even"}Template.comList.appendChild(commentItem)}}else{if(comItems.length<1){Core.showNoContentMessage()}}Template.buildPagination(Instance.currPage);Msg.remove("LOAD_COMM");var online=Core.getServiceStatus(responseBody.status);if(Instance.currPage===1){Core.checkHashAction();User.flag.screenName=User.hasScreenName();if(online===true){Core.handleInteractionControls()}Template.updateHeadingCount();Template.updateRatingHeading();Template.refreshAnchor()}};Core.showNoContentMessage=function(){switch(Instance.type){case 1:if(User.flag.canRate===false){Msg.show("NO_COMM")}else{Msg.show("NO_REVIEW")}break;case 2:Msg.show("NO_COMM");break;case 3:Msg.show("NO_RATING");break}};Core.appendComment=function(responseBody){var comItem=responseBody.ion.comments[0];var comData={};comData.ratingType=parseInt(comItem["ion.rating_type"],10);comData.rating=parseInt(comItem["ion.rating"],10);User.setRatingFags(comData.ratingType,comData.rating);Template.incrementHeadingCount();var nrPages=Math.ceil(Instance.commentCount/config.comPerPage);if(nrPages!==Instance.currPage){Core.getPage(nrPages,false)}else{comData.adobeEmployee=comItem["ion.adbe"];comData.authorId=comItem["ion.author_id"];comData.authorName=comItem.author;comData.authorRole=comItem["ion.author_role"];comData.createdOn=Util.formatDate("",Number(comItem.created)*1000);comData.content=Util.formatText(comItem.content);var commentItem=Template.getCommentItem(comData);if(Instance.commentCount%2===0){commentItem.className="even"}Template.comList.appendChild(commentItem);Template.showThanks()}Template.behavior.onAppendComment()};Template.showThanks=function(){var getThanksMessage=function(){var el=document.createElement("p");el.innerHTML=ionLang.prompt.thanks;el.className="ionComMessage";return el};var comments=Template.comList.getElementsByTagName("li");var lastComm=comments[comments.length-1];if(lastComm.parentNode.className.indexOf("ionStarRating")!==-1){lastComm=lastComm.parentNode.parentNode}var thanks=(Template.thanks)?Template.thanks:getThanksMessage();if(lastComm){lastComm.appendChild(thanks);Template.thanks=thanks}};Core.updateRating=function(responseBody){var userRating=null;if(responseBody.ion.ratings){userRating=parseInt(responseBody.ion.ratings[0]["content"],10)}if(responseBody.ion.thumbs){userRating=Core.decodeThumbValue(responseBody.ion.thumbs[0].content)}if(typeof userRating=="number"){User.flag.canRate=false;User.flag.rating=parseInt(userRating,10)}Util.hide(Template.commentForm);Util.show(Template.butAdd);Util.show(Template.ratingModule);Util.show(Template.addForm);Template.rebuildRatingUI();Template.updateRatingHeading();Core.deleteRating();Core.getAvgRating(Core.updateAvgRating);Msg.remove("ADD_RATING")};Core.decodeThumbValue=function(thumb){if(!thumb||typeof thumb!=="string"){return null}var val=(thumb=="down")?0:1;return val};Core.updateAvgRating=function(responseBody){Core.setRatingInstanceVariables(responseBody);Template.refreshAnchor();Template.updateRatingHeading()};Core.setAvgRating=function(responseBody){Core.setRatingInstanceVariables(responseBody);Core.handleInteractionControls();Template.refreshAnchor();if(typeof Instance.avgRating!=="number"){Core.showNoContentMessage()}};Core.setRatingInstanceVariables=function(responseBody){if(responseBody.userRating){var uRating=responseBody.userRating;User.flag.canRate=false;User.flag.rating=parseInt(uRating,10)}if(responseBody.userThumb){User.flag.canRate=false;User.flag.rating=Core.decodeThumbValue(responseBody.userThumb)}if(responseBody.response[1][0]){var resp=responseBody.response[1][0]}if(resp){Instance.avgRating=(typeof resp.content!=="undefined")?parseInt(resp.content,10):0;Instance.ratingCount=(typeof resp.count!=="undefined")?parseInt(resp.count,10):0;Instance.thumbsUpCount=(typeof resp.up!=="undefined")?parseInt(resp.up,10):0;Instance.thumbsDownCount=(typeof resp.down!=="undefined")?parseInt(resp.down,10):0}};Core.handleInteractionControls=function(){var validUser=User.canInteract();if(validUser===true){Template.buildCallToAction()}};Core.getServiceStatus=function(status){var serviceOn=true;if(!status||status!=="ok"){serviceOn=false;Msg.show("SERVICE_OFF")}return serviceOn};User.isLoggedIn=function(){var login=Util.getCookie("WCDServer");if(!login){return false}else{return true}};User.hasScreenName=function(){var sn=Util.getCookie(config.screenNameCookieName);if(typeof sn!=="string"||sn.length<1){return false}else{return true}};User.canInteract=function(){var canInteract=true;if(User.flag.login!==true){canInteract=false;Msg.show("NO_LOGIN")}else{if(Instance.type!==3&&User.flag.screenName!==true){canInteract=false;Msg.show("NO_SCREENNAME");Util.deleteCookie(config.screenNameCookieName)}}return canInteract};User.setRatingFags=function(ratingType,rating){if(User.flag.canRate===false){return}if(typeof ratingType=="number"&&!isNaN(ratingType)&&ratingType!==0&&typeof rating=="number"){User.flag.canRate=false;User.flag.rating=rating}};function LazyLoader(){var src=null;var objToLoad="";var onLoad=function(){};var onError=function(){};var attempts=10;var delay=1000;return{load:function(){var that=this;that.delay=that.delay?that.delay:delay;that.attempts=that.attempts?that.attempts:attempts;if(!that.src){that.onError();return}var scriptEl=document.createElement("script");scriptEl.src=that.src;scriptEl.type="text/javascript";scriptEl.addEventListener&&function(){scriptEl.addEventListener("error",function(){that.onError();that.unload()},false);scriptEl.addEventListener("load",function(){that.waitToLoad(0)},false)}();scriptEl.onreadystatechange=function(){if((this.readyState!=="complete"&&this.readyState!=="loaded")||this.readyState=="complete"){that.waitToLoad(0)}};document.getElementsByTagName("head")[0].appendChild(scriptEl);that.scriptEl=scriptEl},unload:function(){document.getElementsByTagName("head")[0].removeChild(this.scriptEl)},waitToLoad:function(attempt){var that=this;if(attempt>=that.attempts){that.onError();that.unload();return}var pattern=new RegExp(/^\w+$/);var typeofObject=pattern.test(that.objToLoad)?eval("typeof "+that.objToLoad):"undefined";if(typeofObject=="object"||typeofObject=="function"){that.onLoad()}else{setTimeout(function(){that.waitToLoad(attempt+1)},delay);return}}}}Util.getUserAgent=function(){return(window.navigator&&window.navigator.userAgent)?window.navigator.userAgent:null};Util.hide=function(element){if(element&&typeof element=="object"){element.style.display="none"}};Util.show=function(element){if(element&&typeof element=="object"){element.style.display="block"}};Util.arrayToString=function(arr,separator){if(!arr||arr.length=="undefined"){throw new Error("Util.arrayToString: no array specified")}if(!separator||typeof separator!=="string"){separator=","}var string="";var i=arr.length;while(i--){string=string+arr[i];if(i!==0){string=string+separator}}return string};Util.URLRequest=function(){var url,method,params,onLoad,onError,id;var callURL=function(){var proxyInstance=Template.proxy;switch(method){case"GET":proxyInstance.doGETRequest(url,params,onLoad,onError,id);break;case"POST":proxyInstance.doPOSTRequest(url,params,onLoad,onError,id);break}};return{send:function(){url=this.url||null;method=this.method||"GET";params=this.params||{};onLoad=this.onLoad||null;onError=this.onError||null;id=this.id||"";callURL()}}};Util.isJustWhiteSpace=function(string){if(!string||typeof string!=="string"){return true}string=string.replace(/(\s)/g,"");var isWhiteSpace=(string.length===0)?true:false;return isWhiteSpace};Util.trim=function(str){if(typeof str!=="string"){return null}return str.replace(/^(\s)+/g,"")};Util.cleanInput=function(input){if(!input){return}else{var cleanInput=input.replace(/&/g,"&amp;");cleanInput=cleanInput.replace(/</g,"&lt;");cleanInput=cleanInput.replace(/>/g,"&gt;");return cleanInput}};Util.formatText=function(input){if(!input){return}else{var text=Util.cleanInput(input);text=Util.URLToHyperlink(text);text=text.replace(/\n/g," <br /> ");text=text.replace(/(\s){2}/g,"&nbsp;&nbsp;");return text}};Util.URLToHyperlink=function(string){var pattern=/((https?:\/\/|www\.)[-A-Za-z0-9+&@#\/%?=~_()|!:,.;]*[A-Za-z0-9+&@#\/%=~_|])/g;var matches=string.match(pattern);if(matches){var result=string;for(var x=0;x<matches.length;++x){var validURL="";if(matches[x].substr(0,4)!="http"){validURL="http://"+matches[x]}else{validURL=matches[x]}result=result.replace(matches[x],'<a href="'+validURL+'">'+matches[x]+"</a>")}return result}else{return string}};Util.formatDate=function(format,UTCString){var rawDate=null;if(UTCString){rawDate=new Date(UTCString)}else{rawDate=new Date()}var monthNames="January,February,March,April,May,June,July,August,September,October,November,December";var month=monthNames.split(",");var monthName=month[rawDate.getMonth()];var fullYear=rawDate.getFullYear();var day=rawDate.getDate();if(!format){return monthName+" "+day+", "+fullYear}};Util.cleanURL=function(url){url=url.replace(/#(.*)/,"");url=encodeURIComponent(url);return url};Util.setEventListener=function(element,eventType,handler,capture){try{if(element){if(element.attachEvent){element.attachEvent("on"+eventType,handler);Util.stopProp(window.event)}else{if(element.addEventListener){element.addEventListener(eventType,handler,capture)}}}return false}catch(e){}};Util.stopProp=function(e){e=e||window.event;if(!e.stopPropagation){e.stopPropagation=function(){this.cancelBubble=true}}e.stopPropagation()};Util.stopBehavior=function(e){e=e||window.event;if(!e.preventDefault){e.preventDefault=function(){this.returnValue=false}}e.preventDefault()};Util.getCookie=function(cookieName){var results=document.cookie.match("(^|;) ?"+cookieName+"=([^;]*)(;|$)");if(results){return results[2]}else{return null}};Util.setCookie=function(cookieName,value,expiredays){var exdate=new Date();exdate.setDate(exdate.getDate()+expiredays);document.cookie=cookieName+"="+escape(value)+((expiredays===null)?"":";expires="+exdate.toGMTString())};Util.deleteCookie=function(cookieName){Util.setCookie(cookieName,"",-1)};Util.setRSSAutodiscovery=function(rssFeed,title){if(!rssFeed||typeof rssFeed!=="string"||!title||typeof title!=="string"){return}var autodiscovery=Template.createEl("link",{rel:"alternate",type:"application/rss+xml",href:rssFeed,title:title});document.getElementsByTagName("head")[0].appendChild(autodiscovery)};var $=function(selector){var domObj;if(!selector){return null}if(typeof selector=="object"&&selector.parentNode){domObj=selector}else{if(typeof selector=="string"){switch(selector.substring(0,1)){case"#":domObj=document.getElementById(selector.substring(1));break;case".":break}}}return domObj};var ionComProxy={createSWF:function(attObj,parObj,id){var SHOCKWAVE_FLASH="Shockwave Flash";var SHOCKWAVE_FLASH_AX="ShockwaveFlash.ShockwaveFlash";var FLASH_MIME_TYPE="application/x-shockwave-flash";var UNDEF="undefined";var ua={};ua.ie=(navigator.appVersion.indexOf("MSIE")!=-1)?true:false;ua.win=(navigator.appVersion.toLowerCase().indexOf("win")!=-1)?true:false;var isOpera=(navigator.userAgent.indexOf("Opera")!=-1)?true:false;var u=navigator.userAgent.toLowerCase();ua.webkit=/webkit/.test(u)?parseFloat(u.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false;var r,el=document.getElementById(id);if(el){if(typeof attObj.id==UNDEF){attObj.id=id}if(ua.ie&&ua.win){var att="";for(var i in attObj){if(attObj[i]!=Object.prototype[i]){if(i.toLowerCase()=="data"){parObj.movie=attObj[i]}else{if(i.toLowerCase()=="styleclass"){att+=' class="'+attObj[i]+'"'}else{if(i.toLowerCase()!="classid"){att+=" "+i+'="'+attObj[i]+'"'}}}}}var par="";for(var j in parObj){if(parObj[j]!=Object.prototype[j]){par+='<param name="'+j+'" value="'+parObj[j]+'" />'}}el.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+att+">"+par+"</object>";r=document.getElementById(attObj.id)}else{if(ua.webkit&&ua.webkit<312){var e=createElement("embed");e.setAttribute("type",FLASH_MIME_TYPE);for(var k in attObj){if(attObj[k]!=Object.prototype[k]){if(k.toLowerCase()=="data"){e.setAttribute("src",attObj[k])}else{if(k.toLowerCase()=="styleclass"){e.setAttribute("class",attObj[k])}else{if(k.toLowerCase()!="classid"){e.setAttribute(k,attObj[k])}}}}}for(var l in parObj){if(parObj[l]!=Object.prototype[l]){if(l.toLowerCase()!="movie"){e.setAttribute(l,parObj[l])}}}el.parentNode.replaceChild(e,el);r=e}else{var o=document.createElement("object");o.setAttribute("type",FLASH_MIME_TYPE);for(var m in attObj){if(attObj[m]!=Object.prototype[m]){if(m.toLowerCase()=="styleclass"){o.setAttribute("class",attObj[m])}else{if(m.toLowerCase()!="classid"){o.setAttribute(m,attObj[m])}}}}for(var n in parObj){if(parObj[n]!=Object.prototype[n]&&n.toLowerCase()!="movie"){ionComProxy.createObjParam(o,n,parObj[n])}}el.parentNode.replaceChild(o,el);r=o}}}return r},createObjParam:function(el,pName,pValue){var p=document.createElement("param");p.setAttribute("name",pName);p.setAttribute("value",pValue);el.appendChild(p)},AC_Generateobj:function(objAttrs,params,embedAttrs){var isIE=(navigator.appVersion.indexOf("MSIE")!=-1)?true:false;var isWin=(navigator.appVersion.toLowerCase().indexOf("win")!=-1)?true:false;var isOpera=(navigator.userAgent.indexOf("Opera")!=-1)?true:false;var str="";if(isIE&&isWin&&!isOpera){str+="<object ";for(var i in objAttrs){str+=i+'="'+objAttrs[i]+'" '}str+=">";for(var i in params){str+='<param name="'+i+'" value="'+params[i]+'" /> '}str+="</object>"}else{str+="<embed ";for(var i in embedAttrs){str+=i+'="'+embedAttrs[i]+'" '}str+="> </embed>"}return str},AC_FL_RunContent:function(){var now=new Date();var cacheControl=Date.parse(now);var ret=this.AC_GetArgs(arguments,".swf?cc="+cacheControl,"movie","clsid:d27cdb6e-ae6d-11cf-96b8-444553540000","application/x-shockwave-flash");return this.AC_Generateobj(ret.objAttrs,ret.params,ret.embedAttrs)},AC_GetArgs:function(args,ext,srcParamName,classid,mimeType){var ret=[];ret.embedAttrs=[];ret.params=[];ret.objAttrs=[];for(var i=0;i<args.length;i=i+2){var currArg=args[i].toLowerCase();switch(currArg){case"classid":break;case"pluginspage":ret.embedAttrs[args[i]]=args[i+1];break;case"src":case"movie":args[i+1]=this.AC_AddExtension(args[i+1],ext);ret.embedAttrs.src=args[i+1];ret.params[srcParamName]=args[i+1];break;case"onclick":case"onload":case"type":case"codebase":ret.objAttrs[args[i]]=args[i+1];break;case"id":case"width":case"height":case"name":case"tabindex":ret.embedAttrs[args[i]]=ret.objAttrs[args[i]]=args[i+1];break;default:ret.embedAttrs[args[i]]=ret.params[args[i]]=args[i+1]}}ret.objAttrs.classid=classid;if(mimeType){ret.embedAttrs.type=mimeType}return ret},getPlayerVersion:function(){var PlayerVersion=new ionComProxy.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeTypes.length){var x=navigator.plugins["Shockwave Flash"];if(x&&x.description){PlayerVersion=new ionComProxy.PlayerVersion(x.description.replace(/([a-z]|[A-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."))}}else{try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");for(var i=3;axo!==null;i++){axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+i);PlayerVersion=new ionComProxy.PlayerVersion([i,0,0])}}catch(e){}if(PlayerVersion.major!=6){try{PlayerVersion=new ionComProxy.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","))}catch(e){}}}return PlayerVersion},PlayerVersion:function(arrVersion){this.major=parseInt(arrVersion[0],10)!==null?parseInt(arrVersion[0],10):0;this.minor=parseInt(arrVersion[1],10)||0;this.rev=parseInt(arrVersion[2],10)||0},embedSWF:function(swfUrlStr,replaceElemIdStr,widthStr,heightStr,swfVersionStr,xiSwfUrlStr,flashvarsObj,parObj,attObj){if(!swfUrlStr||!replaceElemIdStr||!widthStr||!heightStr||!swfVersionStr){return}var OBJECT="object";widthStr+="";heightStr+="";var att={};if(attObj&&typeof attObj===OBJECT){for(var i in attObj){if(attObj[i]!=Object.prototype[i]){att[i]=attObj[i]}}}att.data=swfUrlStr;att.width=widthStr;att.height=heightStr;var par={};if(parObj&&typeof parObj===OBJECT){for(var j in parObj){if(parObj[j]!=Object.prototype[j]){par[j]=parObj[j]}}}if(flashvarsObj&&typeof flashvarsObj===OBJECT){for(var k in flashvarsObj){if(flashvarsObj[k]!=Object.prototype[k]){if(typeof par.flashvars!=UNDEF){par.flashvars+="&"+k+"="+flashvarsObj[k]}else{par.flashvars=k+"="+flashvarsObj[k]}}}}ionComProxy.createSWF(att,par,replaceElemIdStr)},embedProxy:function(proxyId,proxyFile){var proxyContainer=document.createElement("div");proxyContainer.id=proxyId;document.body.appendChild(proxyContainer);var file=config.proxyFile+".swf";var flvars={};var params={allowscriptaccess:"always"};ionComProxy.embedSWF(file,config.proxyId,"1","1","9.0.0","",flvars,params)}};return{load:function(){if(this.url&&typeof this.url=="string"){var safeURL=Util.trim(this.url)}var _url=(safeURL&&safeURL.length>1)?safeURL:window.location.toString();var _mcl=this.maxCommentLength;var _hash=window.location.hash.toString();opt.hash=_hash.substring(1);opt.url=Util.cleanURL(_url);opt.locale=this.locale||"en_US";opt.container=(typeof this.container=="object")?this.container:document.body;opt.anchor=(typeof this.anchor=="object")?this.anchor:null;opt.commenting=(this.commenting===false)?false:true;opt.rating=(this.rating===false)?false:true;opt.ratingType=(this.ratingType=="thumbs")?2:1;opt.siteArea=this.siteArea||null;opt.productLabel=this.productLabel||null;opt.timeOutDelay=(typeof this.timeOutDelay=="number")?this.timeOutDelay:30000;opt.maxComLength=(typeof _mcl=="number"&&_mcl<5000)?_mcl:5000;opt.system=this.system||null;Core.setup();window.ionBadgeBeacon=this},getSetupParams:function(){return(typeof opt.url!=="undefined")?opt:null}}};var ionReadyLoad=function(a){var b=window.onload;if(typeof window.onload!="function"){window.onload=a}else{window.onload=function(){if(b){b()}a()}}};
