
if(typeof czen=='undefined')czen={};czen.myCaregivers=[];dojo.require('dojo.fx');dojo.declare('czen.MyCaregivers',null,{constructor:function(el){this.el=el;this.id=this.el.id.replace('_','');this.fadeTransitions=czen.MyCaregivers.myCaregiversProps.fadeTransitions||true;this.use=czen.MyCaregivers.myCaregiversProps.use||'searchResults';this.serviceProfileId=this.id;this.reviewProfileURL=this.el.getAttribute('reviewprofileurl');this.providerName=this.el.getAttribute('name');if(!this.serviceProfileId){try{czen.logError('czen.MyCaregivers','ID of favIcons div: '+this.el.id);}catch(err){};return;}
this.faviconInnerNode=this.el.getElementsByTagName('div')[0];this.favoriteEl=dojo.query('.fav a',this.el)[0];this.maybeEl=dojo.query('.maybe a',this.el)[0];if(dojo.query('.hide a',this.el)){this.hiddenEl=dojo.query('.hide a',this.el)[0];}else{this.hiddenEl=null;}
this.unhideEl=null;if(this.use=='profile'){this.indResultExpanded=this.el.parentNode.parentNode.parentNode;this.indResult_HiddenInnerHTML=null;this.transitionNode=dojo.query('.buffer',this.indResultExpanded)[0];this.transitionNode.style.overflow='hidden';this.indResult_ContentContainer=this.transitionNode.getElementsByTagName('div')[0];this.indResult_ExpandedInnerHTML=null;}else{this.indResultExpanded=this.el.parentNode.parentNode;this.indResultContainer=dojo.byId('indResultContainer'+this.id)
this.indResult_ContentContainer=null;this.indResult_ExpandedInnerHTML=null;this.indResult_HiddenInnerHTML=null;this.transitionNode=null;};this.currentState=null;this.currentType=null;this.desiredState=null;this.desiredType=null;this.determineCurrentTypeAndState();if(dojo.hasClass(this.faviconInnerNode,'hidden')){this.setUpUnhide();this.hideResult()};this.req=null;dojo.connect(this.favoriteEl,'onclick',dojo.hitch(this,function(){this.desiredType='FAVORITE';if(this.currentType=='FAVORITE'&&this.currentState=='on'){this.desiredState='off';}else{this.desiredState='on';}
this.callHome();}));dojo.connect(this.maybeEl,'onclick',dojo.hitch(this,function(){this.desiredType='MAYBE';if(this.currentType=='MAYBE'&&this.currentState=='on'){this.desiredState='off';}else{this.desiredState='on';}
this.callHome();}));if(this.hiddenEl!=null){dojo.connect(this.hiddenEl,'onclick',dojo.hitch(this,function(){this.desiredType='HIDDEN';if(this.currentType=='HIDDEN'&&this.currentState=='on'){this.desiredState='off';}else{this.desiredState='on';}
this.callHome();}));}},url:'/visitor/saveAsFavorite.do',callHome:function(){this.req=dojo.xhrPost({url:this.url,content:{serviceProfileId:this.serviceProfileId,desiredState:this.desiredState,type:this.desiredType},handleAs:'json',load:dojo.hitch(this,this.handleResponse),error:dojo.hitch(this,this.handleResponse),timeout:15000});},handleResponse:function(response,ioArgs){switch(response[0].outcome){case'success':this.showSuccess();break;case'error':this.showErrors();break;case'timeout':window.location='/login-p1002.html';break;default:this.showErrors();}},showSuccess:function(){this.currentState=this.desiredState;this.currentType=this.desiredType;dojo.removeClass(this.favoriteEl,'on');dojo.removeClass(this.maybeEl,'on');if(this.hiddenEl!=null){dojo.removeClass(this.hiddenEl,'on');}
if(this.currentState!='on'){if(this.currentType=='HIDDEN')this.unhideResult();return;}
switch(this.currentType){case'FAVORITE':dojo.addClass(this.favoriteEl,'on');break;case'MAYBE':dojo.addClass(this.maybeEl,'on');break;case'HIDDEN':this.hideResult();break;default:break;}},showErrors:function(){alert('An error occured. Please try again.');},determineCurrentTypeAndState:function(){if(!this.favoriteEl||!this.favoriteEl||!this.favoriteEl){throw new Error('Error mapping favorites icons for id: '+this.id);return;};if(dojo.hasClass(this.favoriteEl,'on')){this.currentState='on';this.currentType='FAVORITE';}else if(dojo.hasClass(this.maybeEl,'on')){this.currentState='on';this.currentType='MAYBE';}else if(this.hiddenEl!=null){if(dojo.hasClass(this.hiddenEl,'on')){this.currentState='on';this.currentType='HIDDEN';}}else{this.currentState='off';this.currentType='NONE';};},createIndResult_HiddenInnerHTML:function(){if(this.use=='profile'){this.indResult_HiddenInnerHTML='<div class="indResultHidden"><span style="left:235px;">This caregiver has been hidden from your results.</span></div>';}else{this.indResult_HiddenInnerHTML='<div class="indResultHidden"><span>This caregiver has been hidden from your results.</span></div>';}},saveIndResult_ExpandedInnerHTML:function(){this.indResult_ExpandedInnerHTML=this.indResult_ContentContainer.innerHTML;},hideResult:function(){if(!this.unhideEl)this.setUpUnhide();if(!this.indResult_ContentContainer)this.indResult_ContentContainer=dojo.query('.c',this.indResultExpanded)[0];if(!this.transitionNode&&this.fadeTransitions){this.transitionNode=this.indResult_ContentContainer.parentNode;this.transitionNode.style.overflow='hidden';};if(!this.indResult_HiddenInnerHTML)this.createIndResult_HiddenInnerHTML();if(!this.indResult_ExpandedInnerHTML)this.saveIndResult_ExpandedInnerHTML();this.faviconInnerNode.style.display='none';this.unhideEl.style.display='block';if(this.fadeTransitions)this.fadeOutResult();else this.indResult_ContentContainer.innerHTML=this.indResult_HiddenInnerHTML;},unhideResult:function(){this.faviconInnerNode.style.display='block';this.unhideEl.style.display='none';if(this.fadeTransitions){this.fadeInResult();}else{this.indResult_ContentContainer.innerHTML=this.indResult_ExpandedInnerHTML;}},fadeOutResult:function(){dojo.animateProperty({node:this.transitionNode,duration:400,properties:{height:{end:36},opacity:{end:0}},onEnd:dojo.hitch(this,function(){dojo.removeClass(this.indResult_ContentContainer,'hidden');this.indResult_ContentContainer.innerHTML=this.indResult_HiddenInnerHTML;dojo.fadeIn({node:this.transitionNode,duration:400}).play();})}).play();},fadeInResult:function(){dojo.fadeOut({node:this.transitionNode,duration:400,onEnd:dojo.hitch(this,function(){this.indResult_ContentContainer.innerHTML=this.indResult_ExpandedInnerHTML;if(dojo.query('.sendMessage',this.indResultExpanded)[0]){dojo.query('.sendMessage',this.indResultExpanded).forEach(function(item,index,array){messagePop.push(new MessagePop(item,true,false));});}
dojo.animateProperty({node:this.transitionNode,duration:400,properties:{height:{end:this.transitionNode.scrollHeight},opacity:{end:1}}}).play();})}).play();},setUpUnhide:function(){this.unhideEl=dojo.query('.unhide',this.el)[0];dojo.connect(this.unhideEl,'onclick',dojo.hitch(this,function(){this.desiredType='HIDDEN';this.desiredState='off';this.callHome();}))}});dojo.addOnLoad(function(){if(window.myCaregiversProps){czen.MyCaregivers.myCaregiversProps=window.myCaregiversProps;dojo.query('.favIcons',window.myCaregiversProps.container).forEach(function(item){if(!dojo.hasClass(item,'noFavIcons'))
czen.myCaregivers.push(new czen.MyCaregivers(item));});}});