(function(el,args){var F=this,getCookies=window.Msn.Util.GetCookie,setCookies=window.Msn.Util.SetCookie,dom=window.Msn.DOM,nextElem=dom.NextElem,delClass=dom.DelClass,hasClass=dom.HasClass,addClass=dom.AddClass,parentElem=dom.ParentElem,childElem=dom.ChildElem,deptsArr=",familyandparenting,foodandentertaining,beautyandfashion,relationships,specialguides,homeandgarden,homesweethome,green,messageboards,mindbodyandsoul".split(","),subDeptArr=",babyandpregnancy,raisingkids,couplesandmarriage,recipes,quickandeasymeals,beveragesandspirits,entertainingandspecialoccasions,grillingguide,personalstyle,hair,makeupandskincare,celebritystyle,home,garden,anewearth,bediscovered,oprahbiggive,friendship,loveandromance,jacquespepin,personalgrowth,womenintheworld".split(","),cookieName="lfsFavs",cookieDomain=args.domain||".msn.com",cookiePath=args.path||"/",removeOneText="",maxLinks=parseInt(args.maxlinks)||5,homePage=document.getElementById("hp3")?true:false,delim="|",lines=1,loc=window.location,hostName=loc.protocol+"//"+loc.hostname,url=unescape(loc.href).toLowerCase().replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;"),docId=/cp\-documentid=/gi.test(loc.search),imgIdx=/imageindex=/gi.test(loc.search);F.Cookies=readCookies();F.Add=0;F.DeleteLink=0;F.Container=0;F.ArtHeaderLink=0;var alreadyAdded=homePage||searchObjectArray(F.Cookies,"url",url)>-1;F.dispose=function(){if(!F.Container)return;var ul=F.Container.getElementsByTagName("UL")[0],li=ul?ul.getElementsByTagName("LI"):[],i=li.length;while(i--)F.DeleteFavorite.unhook(childElem(li[i],"A",true));if(F.ArtHeaderLink)F.SaveThis.unhook(F.ArtHeaderLink,"click");if(F.orphanLink){F.SaveThis.unhook(F.orphanLink,"click");F.orphanLink=0}F.SaveThis.unhook(F.Add,"click");F.DeleteAll.unhook(F.DeleteLink,"click");ul=0;li=0;F.Add=0;F.Cookies=0;F.Container=0;F.DeleteLink=0;F.ArtHeaderLink=0;F=0};F.SaveThis=function(){if(!alreadyAdded){var dpt=0,subDpt=0,title=window.document.title.collapse(),path=url.replace(hostName,"");if(url!=="/"){var tArr=path.substr(1).split("/");i=tArr.length;if(i){dpt=searchArray(deptsArr,tArr[0]);if(dpt===-1)dpt=0;else path=path.replace("/"+deptsArr[dpt],"");if(i>1){subDpt=searchArray(subDeptArr,tArr[1]);if(subDpt===-1)subDpt=0;else path=path.replace("/"+subDeptArr[subDpt],"")}}}if(title.indexOf("MSN")>1){title=title.substring(0,title.indexOf("MSN"));if(title.lastIndexOf(" - ")>-1)title=title.substring(0,title.lastIndexOf(" - "))}var pattern=path.indexOf("&imageindex=")>-1?"&imageindex=([0-9]+)":path.indexOf("&page=")>-1?"&page=([0-9]+)":"";if(pattern&&!/page ?\d+/gi.test(title)){var rxp=new RegExp(pattern,"gi"),match=rxp.exec(path);if(match&&match[1]){title+=" pg.";title+=match[1]}}var obj={};obj.dept=dpt;obj.subDept=subDpt;obj.path=path;obj.url=url;obj.title=title;F.Cookies[F.Cookies.length]=obj;alreadyAdded=true;updateFavoriteLinks()}};F.DeleteFavorite=function(ev){var link=dom.NextElem(dom.Target(ev),"A"),linkHref=unescape(link.href),idx=searchObjectArray(F.Cookies,"url",linkHref);if(idx>-1){F.DeleteFavorite.unhook(link,"click");F.Cookies.splice(idx,1)}link=0;alreadyAdded=false;updateFavoriteLinks()};F.DeleteAll=function(){F.Cookies=[];alreadyAdded=false;updateFavoriteLinks()};F.Initialize=function(){if(!el)return;F.Container=c("DIV");F.Container.id=args.containerID;addClass(F.Container,"favoritesParentContainer");F.Container.innerHTML='<div class="favsMainContainer"><div class="favsMainHeader"><h3>{3}</h3><a class="favoritesWhatsThis" target="_blank" href="{1}" title="{2}"></a><a href="javascript:void(0);" class="favoritesAddLink">{4}</a></div><strong>{8}</strong><ul></ul><div class="delLinkContainer"><span>{6}</span><a class="favoritesDelLink" href="javascript:void(0);">{7}</a></div>'.format(args.containerID,args.whatsthisurl,args.whatsthistxt,args.heading,args.addonetxt,args.listheader,args.maxlinkstext,args.removealltxt,args.listheader);F.Add=F.Container.getElementsByTagName("A")[1];F.DeleteLink=F.Container.getElementsByTagName("A")[2];F.SaveThis.hook(F.Add,"click");F.DeleteAll.hook(F.DeleteLink,"click");removeOneText=args.removeonetxt;AddArticleHeaderLink();var child=childElem(el,"DIV",true),i=1,inserted=false;while(child){if(i===args.position&&child){el.insertBefore(F.Container,child);inserted=true;break}i++;child=nextElem(child,"DIV")}if(!inserted)el.appendChild(F.Container);child=0;updateFavoriteLinks()};function updateFavoriteLinks(){var len=F.Cookies.length,ul=F.Container.getElementsByTagName("UL")[0],elNum=ul?ul.getElementsByTagName("LI").length:0,bArt=docId&&F.ArtHeaderLink;if(alreadyAdded){addClass(F.Add,"alreadyAdded");if(bArt)addClass(F.ArtHeaderLink,"alreadyAdded");else if(!homePage&&F.orphanLink)addClass(F.orphanLink,"alreadyAdded")}else{delClass(F.Add,"alreadyAdded");if(bArt)delClass(F.ArtHeaderLink,"alreadyAdded");else if(!homePage&&F.orphanLink)delClass(F.orphanLink,"alreadyAdded")}switch(true){case len>maxLinks:F.Cookies.splice(0,len-maxLinks);len=maxLinks;break;case elNum<len:do{var li=favoriteListItem();F.DeleteFavorite.hook(li.getElementsByTagName("A")[0],"click");ul.appendChild(li)}while(++elNum<len);break;case elNum>len:do{F.DeleteFavorite.unhook(dom.ChildElem(ul.getElementsByTagName("LI")[--elNum],"A",true));ul.removeChild(ul.getElementsByTagName("LI")[elNum])}while(elNum>len);break}for(var i=0;i<len;i++){var li=ul.getElementsByTagName("LI")[i],cookieLink;if(li){cookieLink=li.getElementsByTagName("A")[1];if(cookieLink&&cookieLink.tagName){cookieLink.href=F.Cookies[i].url;cookieLink.innerHTML=truncateTitle(F.Cookies[i].title);cookieLink.title=F.Cookies[i].title}}}ul=cookieLink=0;F.DeleteLink.style.display=len?"block":"none";F.Container.getElementsByTagName("STRONG")[0].style.display=len?"none":"block";saveCookies();dom.Updated()}function AddArticleHeaderLink(){if(docId){var parent=document.getElementById("ahead"),author=false,date=false;if(!parent){parent=document.getElementById("area1");while(parent=childElem(parent,"DIV",true))if(hasClass(parent,"control"))break;if(!parent){parent=document.getElementsByTagName("H1")[0];if(parent)parent=parentElem(parent("DIV"))}}else{var p=parent.getElementsByTagName("P");if(p){var i=p.length;while(i--){if(hasClass(p[i],"date")){date=true;parent=p[i];break}if(hasClass(p[i],"author")){author=true;parent=p[i]}}p=0}}if(parent&&F.Add){F.ArtHeaderLink=F.Add.cloneNode(true);F.SaveThis.hook(F.ArtHeaderLink,"click");addClass(F.ArtHeaderLink,"favoritesArtHeaderLink");switch(true){case date:parent.appendChild(F.ArtHeaderLink);break;case author:parent.insertBefore(F.ArtHeaderLink,parent.firstChild);break;case parent.id=="ahead":parent.appendChild(F.ArtHeaderLink);break;case !!parent.lastChild:parent.insertBefore(F.ArtHeaderLink,parent.lastChild);break;default:parent.appendChild(F.ArtHeaderLink)}}parent=0}else if(!homePage)addOrphanLink()}function addOrphanLink(){var a=document.getElementById("area2").getElementsByTagName("A"),i=a.length;while(i--)if(hasClass(a[i],"favoritesAddLink")){F.orphanLink=a[i];F.SaveThis.hook(F.orphanLink,"click");break}a=0}function readCookies(){var c=unescape(getCookies(cookieName)),a=c.split(delim),j=a.length,i=0,arr=[],deptArrLen=deptsArr.length,subDeptLen=subDeptArr.length;if(j&&!(j%4))while(j){arr[i]={};arr[i].title=a[--j];arr[i].path=a[--j];var subDpt="/",n=arr[i].subDept=parseInt(a[--j]);if(!n||n>=subDeptLen){subDpt="";arr[i].subDept=0}else subDpt+=subDeptArr[n];var dpt="/";n=arr[i].dept=parseInt(a[--j]);if(!n||n>=deptArrLen){arr[i].dept=0;dpt=""}else dpt+=deptsArr[n];arr[i].url=hostName;arr[i].url+=dpt;arr[i].url+=subDpt;arr[i].url+=arr[i].path;i++}return arr}function saveCookies(){var expiry=args.expires||180,i=F.Cookies.length,a=[];if(i--){do a[a.length]=[F.Cookies[i].dept,F.Cookies[i].subDept,escape(F.Cookies[i].path),escape(F.Cookies[i].title)].join(delim);while(i--);setCookies(cookieName,a.join(delim),expiry,cookieDomain,cookiePath)}else setCookies(cookieName,"",-1,cookieDomain,cookiePath)}function searchArray(arr,val){var i=arr.length;if(i--)do if(arr[i]===val)return i;while(i--);return -1}function searchObjectArray(arr,key,val){var i=arr.length;if(i--)do if(arr[i][key]===val)return i;while(i--);return -1}function writeText(element,text){if(element)element.innerHTML=text;return element}function truncateTitle(s){var len=50;len*=lines;if(s.length>len){s=s.substring(0,len);len=s.lastIndexOf(" ");if(len>0)s=s.substring(0,len)+"..."}return s.encodeHtml()}function favoriteListItem(){var li=c("LI"),delA=c("A"),a=c("A");addClass(delA,"deleteLink");addClass(a,"favoritesLink");writeText(delA," ");delA.setAttribute("title",removeOneText);li.appendChild(delA);li.appendChild(a);try{return li}catch(e){}finally{li=delA=a=0}}function c(tag){return window.document.createElement(tag)}F.Initialize()}).as("Msn.Lifestyle.Favorites")