Mother’s day is here, and they must be held every day. While there is a day really dedicated to them, it is not necessary to say that mothers must be celebrated and made to feel special because they are really the epitome of patience and grace. While there are many ways to make them feel special, and they don’t ask, their life is about giving. Today, in this blog, we will talk about 6 unique ideas of Mother’s Day gifts for Mother’s Day to feel special. Then, let’s jump towards it.
Declaration jewelry pieces
One thing that never goes out of style is a jewel. This will surely bring a wide smile to your mother’s face. This will work well for her while attending those family events or when she is out of brunch or dinner with her ladies. In addition, if you ask if the jewels are an expensive gift, then it is absolutely wrong. Because you can pay Giva jewelry pieces, they satisfy every budgetary need. A piece of silver jewelry with anything you use can navigate the website and select what is best for you to feel special. On the use of our exclusive coupon code Guru75, You can get an additional discount of up to 25%. In addition, the brand also offers personalized pendants, which makes it a better gift option.
A perfect bag
For those weddings, parties, brunch or simply to keep your mother’s things safely, which often forgets, nothing like a bag. Be it a handbag, a sling or a bag, never goes out of style. There are many types of bags to choose from. You can visit the Zouk website and select according to your preferences, and there you have it: the perfect gift of Mother’s Day. In a purchase of 1 bag greater than 1399, you can get a free, to take advantage of the same, you can use the Zouk B1GI coupon code
Nothing like flowers
You can feel that this is not the simplest gift, but aren’t the simple mothers with anything you choose to give? Flowers can be a complement. Surely they will give a wide smile to his face, with options that range from roses, hortans, gerberas and more. This is the most reflective gift, especially if your mother is shy; This will make her feel special.
You can get beautiful fern flowers and petals; Choose whatever you want and will quickly get to your door. At the same time, it is the most affordable mother’s day gift option. There are many more gift options so you can choose.
A personalized gift basket
If you are confused, you must give perfumed candles, perfumes, small bag or a cup of coffee. What happens if we tell you that you can provide all this and add more things such as chocolates, a keychain, a cartoon and more? You can modify it to your preference and make this a more personalized gift to awaken your mother. To honor him, IGP is your friend. You have several gift options for Mother’s Day, which you can choose or customize according to your preference, such as adding a photo frame, cartoon, chocolates, candles, perfume, and there. A Gift of Mother’s Day that will not forget.
Some take care of your skin
The mothers we know to take care of ourselves, and there is no need to say it. He will ensure that all our things are in place while she is her last priority. With that, she often also skips the skin. A simple box that contains a moisturizer, hand cream, sunscreen, body lotions and moisturizing masks is a good way to pamper it on this mother’s day. Remember those childhood days in which you want to take a bit of your mother’s moisturizer and smell well. It is time to give him the goodness of the best products for skin care this mother’s day, which can take her to the days of her childhood, and nothing like good memories and incredible gifts, right? It will easily obtain a wide range of skin care products for all skin types in Nykaa.
A pink gold belt bracelet
The classic wristwatch never goes wrong for Mother’s Day; The new will will be moms. After all, it is a good time to remember when you are a mother, right? The best way is to decorate it with a rose gold belt and maintain this memory throughout life. Today, there are also smart watches with rose gold belts; Despite how many has enough, especially if your mother loves the watches. This, very much, is the best gift of Mother’s Day. In addition, this will surely go with any attire you choose. You can navigate Amazon or Flipkart and choose the clock you feel will appreciate it better.
Ethnic clothes
There is nothing better than a piece of clothes and, to top it off, a beautiful ethnic cotton suit. It is comfortable and gives a more radiant look. It works well, since the mothers would always prefer a Kurt or sawar suit for several occasions and trips. You should have experienced your mother using the specifications and come and ask you to choose the options you have. Do the opposite this time; Sort her with the best kurt suit, sawar or sari suit; After all, who does not like surprises. You can navigate Amazon and Myntra to find ethnic clothes for your mother. You can even navigate through more options if you want to give your mother apart from ethnic clothes.
For the Council: The Kurta suit is a perfect option, even for new or possible mothers, for their comfort. So, you have many options if you have a friend or someone in your family. Simply sail and select the one that suits your preference.
Final word
There is not much that we can do or say to appreciate the sacrifice of a mother. But surely we can make her feel special with these 7 ideas of unique gifts for Mother’s Day. Then, navigate the options that we have provided and reduce the search for the gift idea of the perfect Mother’s Day; Simply choose and make your mother feel special on this mother’s day! Remember that these are efforts more than the gift.
Very good, gangs hunters, prepare to upload your savings game because Sam’s Club is about to become her new best friend. At this time, as part of the sale of its presidents, you can obtain a membership by Justo $ 20.
Yes, that’s 60% discount The regular price of $ 50! If you have been waiting for you to finally be a signal, this is. But let’s not stop alone in the deal. I will share some intelligent ways that you can also make that membership work in extra time for you too. You are welcome.
How to maximize your membership
Now that you are in the fast track to join Sam’s Club, let’s see how you can stretch that investment of $ 20. Being a member is not just about saving money, it’s about making life easier and more intelligent.
Do you want to save money and avoid the dreaded question of “what’s for dinner”? Sam’s Club can help you stock up on all the essential elements to facilitate meal preparation. Buy in bulk meals and prepare throughout the week! Here is a combo that will cause the greatness of meal preparation:
Take your packages in beef or ground chicken to cook and freeze.
ABOX your pantry with rice, pasta or quinoa for easy sides (hello, carbohydrates).
Do not forget the Fresh Products section: You can cut, portion and bag vegetables for fast snacks or sauteed kits.
Pinterest idea: Create a Mason’s bottle salad station! Use Sam’s Mason’s bottles and take them with layers of vegetables, proteins and dressings, all of bulk portions. It is convenient, healthy and looks super cute in its refrigerator (read Instagram’s gold).
2. Give bulk purchases a creative touch
Buying in bulk does not mean wasting food or drowning in snacks. It’s about thinking about it. For example, take those boxes of bars or marola chips of mega size in Sam’s Club. Use them for:
Build affordable snack packages for school or work.
Create personalized gift bags for birthday parties or team events.
Moment of Vibes de Pinterest? Use chips bags the size of a snack to make mini piñatas or party favors for children’s birthdays!
Do you want even easier things? Sam’s Club regularly offers kits all in one for parties and events, from sandwiches trays to dessert dishes. Ah, and your frozen section? Perfect for quick comforting foods (we are talking about pizza and gofres rolls for days).
3. Holidays and parties with a budget
Organizing people can be expensive, but not if you have a Sam’s Club card. The dishes of his party are super affordable, and can obtain thematic supplies and bulk supplies such as cups, dishes and utensils for any meeting. And you do not sleep in its floral department, it is a beautiful already a price less than the specialized stores.
Idea worthy of Pinterest: Buy Mini Mason Jars by Sam’s Club, fill them with bulk sweets and put them with printable labels for personalized party favors. Ideal for weddings, Baby Showers or, Devils, on Tuesday afternoon.
4. Save on the essential elements of the home
Laundry detergent, paper towels, cleaning products, you know, the It is not fun but totally necessary stuff. Sam’s Club has those giant packages of essential elements at much better prices than most groceries. Buy them once and be ready for months. Less shopping trips = more time for things like seeing your favorite programs.
Hack Pinterest: Convert bulk cleaning supplies into a nice DIY project of home organizer! Gócalos in transparent jars or containers, tag them with slate stickers and voilà: functional fantasy and Pinterest level.
5. Exclusive offers on great savings
Another secret weapon? You will find good crazy prices in everything from electronics to mattresses. Do you need a new iPhone? A grill for outdoor meals? Verify the Sam Club first. In addition, its health and beauty section often carries brand products at better prices, and maybe even some luxury robberies (think of skin care and hair care care brands).
Final thoughts
There you have it, it is not only this offer of the presidents of the presidents of $ 20 the perfect excuse to join Sam’s Club finally, but it is also your gold ticket for a more friendly life for the budget and worthy of Pinterest. Whether you are preparing, buying vacations or simply tired of paying more essential, savings are endless.
Don’t forget, this one 60% discount The membership agreement ends February 26And once he is gone, he has gone. Register online Or go to your local Sam Club and start enjoying all the advantages. Happy bulk purchase!
PD: If you make those mason bottle salads or mini sweet bottles, tag in Pinterest; I need to see your brilliance in action.
See the places of interest in Madrid and Barcelona, with a customizable itinerary. It will fly to Madrid and outside of Barcelona, with international round trip tickets included, and hundreds of hotels to choose from, while you can choose the duration of your stay in each city, and which of the optional activities you want to add to your trip (at an additional cost). Reserve this travel agreement before July 31.
Start planning your summer empties and autumn with all our best travel offers. Buy now in tripmasters
“;outerWrapper.insertAdjacentHTML(getInsertPosition(options.navPosition),navHtml);navContainer=outerWrapper.querySelector(“.tns-nav”);navItems=navContainer.children}updateNavVisibility();if(TRANSITIONDURATION){var prefix=TRANSITIONDURATION.substring(0,TRANSITIONDURATION.length-18).toLowerCase(),str=”transition: all “+speed/1000+”s”;if(prefix){str=”-“+prefix+”-“+str}addCSSRule(sheet,”(aria-controls^=”+slideId+”-item)”,str,getCssRulesLength(sheet))}setAttrs(navItems(navCurrentIndex),{“aria-label”:navStr+(navCurrentIndex+1)+navStrCurrent});removeAttrs(navItems(navCurrentIndex),”tabindex”);addClass(navItems(navCurrentIndex),navActiveClass);addEvents(navContainer,navEvents)}if(hasControls){if(!controlsContainer&&(!prevButton||!nextButton)){outerWrapper.insertAdjacentHTML(getInsertPosition(options.controlsPosition),”
“);controlsContainer=outerWrapper.querySelector(“.tns-controls”)}if(!prevButton||!nextButton){prevButton=controlsContainer.children(0);nextButton=controlsContainer.children(1)}if(options.controlsContainer){setAttrs(controlsContainer,{“aria-label”:”Carousel Navigation”,”tabindex”:”0″})}if(options.controlsContainer||options.prevButton&&options.nextButton){setAttrs((prevButton,nextButton),{“aria-controls”:slideId,”tabindex”:”-1″})}if(options.controlsContainer||options.prevButton&&options.nextButton){setAttrs(prevButton,{“data-controls”:”prev”});setAttrs(nextButton,{“data-controls”:”next”})}prevIsButton=isButton(prevButton);nextIsButton=isButton(nextButton);updateControlsStatus();if(controlsContainer){addEvents(controlsContainer,controlsEvents)}else{addEvents(prevButton,controlsEvents);addEvents(nextButton,controlsEvents)}}disableUI()}function initEvents(){if(carousel&&TRANSITIONEND){var eve={};eve(TRANSITIONEND)=onTransitionEnd;addEvents(container,eve)}if(touch){addEvents(container,touchEvents,options.preventScrollOnTouch)}if(mouseDrag){addEvents(container,dragEvents)}if(arrowKeys){addEvents(doc,docmentKeydownEvent)}if(nested===”inner”){events.on(“outerResized”,function(){resizeTasks();events.emit(“innerLoaded”,info())})}else if(responsive||fixedWidth||autoWidth||autoHeight||!horizontal){addEvents(win,{“resize”:onResize})}if(autoHeight){if(nested===”outer”){events.on(“innerLoaded”,doAutoHeight)}else if(!disable){doAutoHeight()}}doLazyLoad();if(disable){disableSlider()}else if(freeze){freezeSlider()}events.on(“indexChanged”,additionalUpdates);if(nested===”inner”){events.emit(“innerLoaded”,info())}if(typeof onInit===”function”){onInit(info())}isOn=true}function destroy(){sheet.disabled=true;if(sheet.ownerNode){sheet.ownerNode.remove()}removeEvents(win,{“resize”:onResize});if(arrowKeys){removeEvents(doc,docmentKeydownEvent)}if(controlsContainer){removeEvents(controlsContainer,controlsEvents)}if(navContainer){removeEvents(navContainer,navEvents)}removeEvents(container,hoverEvents);removeEvents(container,visibilityEvent);if(autoplayButton){removeEvents(autoplayButton,{“click”:toggleAutoplay})}if(autoplay){clearInterval(autoplayTimer)}if(carousel&&TRANSITIONEND){var eve={};eve(TRANSITIONEND)=onTransitionEnd;removeEvents(container,eve)}if(touch){removeEvents(container,touchEvents)}if(mouseDrag){removeEvents(container,dragEvents)}var htmlList=(containerHTML,controlsContainerHTML,prevButtonHTML,nextButtonHTML,navContainerHTML,autoplayButtonHTML);tnsList.forEach(function(item,i){var el=item===”container”?outerWrapper:options(item);if(typeof el===”object”){var prevEl=el.previousElementSibling?el.previousElementSibling:false,parentEl=el.parentNode;el.outerHTML=htmlList(i);options(item)=prevEl?prevEl.nextElementSibling:parentEl.firstElementChild}});tnsList=animateIn=animateOut=animateDelay=animateNormal=horizontal=outerWrapper=innerWrapper=container=containerParent=containerHTML=slideItems=slideCount=breakpointZone=windowWidth=autoWidth=fixedWidth=edgePadding=gutter=viewport=items=slideBy=viewportMax=arrowKeys=speed=rewind=loop=autoHeight=sheet=lazyload=slidePositions=slideItemsOut=cloneCount=slideCountNew=hasRightDeadZone=rightBoundary=updateIndexBeforeTransform=transformAttr=transformPrefix=transformPostfix=getIndexMax=index=indexCached=indexMin=indexMax=resizeTimer=swipeAngle=moveDirectionExpected=running=onInit=events=newContainerClasses=slideId=disable=disabled=freezable=freeze=frozen=controlsEvents=navEvents=hoverEvents=visibilityEvent=docmentKeydownEvent=touchEvents=dragEvents=hasControls=hasNav=navAsThumbnails=hasAutoplay=hasTouch=hasMouseDrag=slideActiveClass=imgCompleteClass=imgEvents=imgsComplete=controls=controlsText=controlsContainer=controlsContainerHTML=prevButton=nextButton=prevIsButton=nextIsButton=nav=navContainer=navContainerHTML=navItems=pages=pagesCached=navClicked=navCurrentIndex=navCurrentIndexCached=navActiveClass=navStr=navStrCurrent=autoplay=autoplayTimeout=autoplayDirection=autoplayText=autoplayHoverPause=autoplayButton=autoplayButtonHTML=autoplayResetOnVisibility=autoplayHtmlStrings=autoplayTimer=animating=autoplayHoverPaused=autoplayUserPaused=autoplayVisibilityPaused=initPosition=lastPosition=translateInit=disX=disY=panStart=rafIndex=getDist=touch=mouseDrag=null;for(var a in this){if(a!==”rebuild”){this(a)=null}}isOn=false}function onResize(e){raf(function(){resizeTasks(getEvent(e))})}function resizeTasks(e){if(!isOn){return}if(nested===”outer”){events.emit(“outerResized”,info(e))}windowWidth=getWindowWidth();var bpChanged,breakpointZoneTem=breakpointZone,needContainerTransform=false;if(responsive){setBreakpointZone();bpChanged=breakpointZoneTem!==breakpointZone;if(bpChanged){events.emit(“newBreakpointStart”,info(e))}}var indChanged,itemsChanged,itemsTem=items,disableTem=disable,freezeTem=freeze,arrowKeysTem=arrowKeys,controlsTem=controls,navTem=nav,touchTem=touch,mouseDragTem=mouseDrag,autoplayTem=autoplay,autoplayHoverPauseTem=autoplayHoverPause,autoplayResetOnVisibilityTem=autoplayResetOnVisibility,indexTem=index;if(bpChanged){var fixedWidthTem=fixedWidth,autoHeightTem=autoHeight,controlsTextTem=controlsText,centerTem=center,autoplayTextTem=autoplayText;if(!CSSMQ){var gutterTem=gutter,edgePaddingTem=edgePadding}}arrowKeys=getOption(“arrowKeys”);controls=getOption(“controls”);nav=getOption(“nav”);touch=getOption(“touch”);center=getOption(“center”);mouseDrag=getOption(“mouseDrag”);autoplay=getOption(“autoplay”);autoplayHoverPause=getOption(“autoplayHoverPause”);autoplayResetOnVisibility=getOption(“autoplayResetOnVisibility”);if(bpChanged){disable=getOption(“disable”);fixedWidth=getOption(“fixedWidth”);speed=getOption(“speed”);autoHeight=getOption(“autoHeight”);controlsText=getOption(“controlsText”);autoplayText=getOption(“autoplayText”);autoplayTimeout=getOption(“autoplayTimeout”);if(!CSSMQ){edgePadding=getOption(“edgePadding”);gutter=getOption(“gutter”)}}resetVariblesWhenDisable(disable);viewport=getViewportWidth();if((!horizontal||autoWidth)&&!disable){setSlidePositions();if(!horizontal){updateContentWrapperHeight();needContainerTransform=true}}if(fixedWidth||autoWidth){rightBoundary=getRightBoundary();indexMax=getIndexMax()}if(bpChanged||fixedWidth){items=getOption(“items”);slideBy=getOption(“slideBy”);itemsChanged=items!==itemsTem;if(itemsChanged){if(!fixedWidth&&!autoWidth){indexMax=getIndexMax()}updateIndex()}}if(bpChanged){if(disable!==disableTem){if(disable){disableSlider()}else{enableSlider()}}}if(freezable&&(bpChanged||fixedWidth||autoWidth)){freeze=getFreeze();if(freeze!==freezeTem){if(freeze){doContainerTransform(getContainerTransformValue(getStartIndex(0)));freezeSlider()}else{unfreezeSlider();needContainerTransform=true}}}resetVariblesWhenDisable(disable||freeze);if(!autoplay){autoplayHoverPause=autoplayResetOnVisibility=false}if(arrowKeys!==arrowKeysTem){arrowKeys?addEvents(doc,docmentKeydownEvent):removeEvents(doc,docmentKeydownEvent)}if(controls!==controlsTem){if(controls){if(controlsContainer){showElement(controlsContainer)}else{if(prevButton){showElement(prevButton)}if(nextButton){showElement(nextButton)}}}else{if(controlsContainer){hideElement(controlsContainer)}else{if(prevButton){hideElement(prevButton)}if(nextButton){hideElement(nextButton)}}}}if(nav!==navTem){nav?showElement(navContainer):hideElement(navContainer)}if(touch!==touchTem){touch?addEvents(container,touchEvents,options.preventScrollOnTouch):removeEvents(container,touchEvents)}if(mouseDrag!==mouseDragTem){mouseDrag?addEvents(container,dragEvents):removeEvents(container,dragEvents)}if(autoplay!==autoplayTem){if(autoplay){if(autoplayButton){showElement(autoplayButton)}if(!animating&&!autoplayUserPaused){startAutoplay()}}else{if(autoplayButton){hideElement(autoplayButton)}if(animating){stopAutoplay()}}}if(autoplayHoverPause!==autoplayHoverPauseTem){autoplayHoverPause?addEvents(container,hoverEvents):removeEvents(container,hoverEvents)}if(autoplayResetOnVisibility!==autoplayResetOnVisibilityTem){autoplayResetOnVisibility?addEvents(doc,visibilityEvent):removeEvents(doc,visibilityEvent)}if(bpChanged){if(fixedWidth!==fixedWidthTem||center!==centerTem){needContainerTransform=true}if(autoHeight!==autoHeightTem){if(!autoHeight){innerWrapper.style.height=””}}if(controls&&controlsText!==controlsTextTem){prevButton.innerHTML=controlsText(0);nextButton.innerHTML=controlsText(1)}if(autoplayButton&&autoplayText!==autoplayTextTem){var i=autoplay?1:0,html=autoplayButton.innerHTML,len=html.length-autoplayTextTem(i).length;if(html.substring(len)===autoplayTextTem(i)){autoplayButton.innerHTML=html.substring(0,len)+autoplayText(i)}}}else{if(center&&(fixedWidth||autoWidth)){needContainerTransform=true}}if(itemsChanged||fixedWidth&&!autoWidth){pages=getPages();updateNavVisibility()}indChanged=index!==indexTem;if(indChanged){events.emit(“indexChanged”,info());needContainerTransform=true}else if(itemsChanged){if(!indChanged){additionalUpdates()}}else if(fixedWidth||autoWidth){doLazyLoad();updateSlideStatus();updateLiveRegion()}if(itemsChanged||!carousel){updateGallerySlidePositions()}if(!disable&&!freeze){if(bpChanged&&!CSSMQ){if(autoHeight!==autoheightTem||speed!==speedTem){update_carousel_transition_duration()}if(edgePadding!==edgePaddingTem||gutter!==gutterTem){innerWrapper.style.cssText=getInnerWrapperStyles(edgePadding,gutter,fixedWidth,speed,autoHeight)}if(horizontal){if(carousel){container.style.width=getContainerWidth(fixedWidth,gutter,items)}var str=getSlideWidthStyle(fixedWidth,gutter,items)+getSlideGutterStyle(gutter);removeCSSRule(sheet,getCssRulesLength(sheet)-1);addCSSRule(sheet,”#”+slideId+” > .tns-item”,str,getCssRulesLength(sheet))}}if(autoHeight){doAutoHeight()}if(needContainerTransform){doContainerTransformSilent();indexCached=index}}if(bpChanged){events.emit(“newBreakpointEnd”,info(e))}}function getFreeze(){if(!fixedWidth&&!autoWidth){var a=center?items-(items-1)/2:items;return slideCount<=a}var width=fixedWidth?(fixedWidth+gutter)*slideCount:slidePositions(slideCount),vp=edgePadding?viewport+edgePadding*2:viewport+gutter;if(center){vp-=fixedWidth?(viewport-fixedWidth)/2:(viewport-(slidePositions(index+1)-slidePositions(index)-gutter))/2}return width=bp){breakpointZone=bp}}}var updateIndex=function(){return loop?carousel?function(){var leftEdge=indexMin,rightEdge=indexMax;leftEdge+=slideBy;rightEdge-=slideBy;if(edgePadding){leftEdge+=1;rightEdge-=1}else if(fixedWidth){if((viewport+gutter)%(fixedWidth+gutter)){rightEdge-=1}}if(cloneCount){if(index>rightEdge){index-=slideCount}else if(indexindexMax){while(index>=indexMin+slideCount){index-=slideCount}}else if(index<indexMin){while(index<=indexMax-slideCount){index+=slideCount}}}:function(){index=Math.max(indexMin,Math.min(indexMax,index))}}();function disableUI(){if(!autoplay&&autoplayButton){hideElement(autoplayButton)}if(!nav&&navContainer){hideElement(navContainer)}if(!controls){if(controlsContainer){hideElement(controlsContainer)}else{if(prevButton){hideElement(prevButton)}if(nextButton){hideElement(nextButton)}}}}function enableUI(){if(autoplay&&autoplayButton){showElement(autoplayButton)}if(nav&&navContainer){showElement(navContainer)}if(controls){if(controlsContainer){showElement(controlsContainer)}else{if(prevButton){showElement(prevButton)}if(nextButton){showElement(nextButton)}}}}function freezeSlider(){if(frozen){return}if(edgePadding){innerWrapper.style.margin="0px"}if(cloneCount){var str="tns-transparent";for(var i=cloneCount;i–;){if(carousel){addClass(slideItems(i),str)}addClass(slideItems(slideCountNew-i-1),str)}}disableUI();frozen=true}function unfreezeSlider(){if(!frozen){return}if(edgePadding&&CSSMQ){innerWrapper.style.margin=""}if(cloneCount){var str="tns-transparent";for(var i=cloneCount;i–;){if(carousel){removeClass(slideItems(i),str)}removeClass(slideItems(slideCountNew-i-1),str)}}enableUI();frozen=false}function disableSlider(){if(disabled){return}sheet.disabled=true;container.className=container.className.replace(newContainerClasses.substring(1),"");removeAttrs(container,("style"));if(loop){for(var j=cloneCount;j–;){if(carousel){hideElement(slideItems(j))}hideElement(slideItems(slideCountNew-j-1))}}if(!horizontal||!carousel){removeAttrs(innerWrapper,("style"))}if(!carousel){for(var i=index,l=index+slideCount;i<l;i++){var item=slideItems(i);removeAttrs(item,("style"));removeClass(item,animateIn);removeClass(item,animateNormal)}}disableUI();disabled=true}function enableSlider(){if(!disabled){return}sheet.disabled=false;container.className+=newContainerClasses;doContainerTransformSilent();if(loop){for(var j=cloneCount;j–;){if(carousel){showElement(slideItems(j))}showElement(slideItems(slideCountNew-j-1))}}if(!carousel){for(var i=index,l=index+slideCount;i<l;i++){var item=slideItems(i),classN=i<index+items?animateIn:animateNormal;item.style.left=(i-index)*100/items+"%";addClass(item,classN)}}enableUI();disabled=false}function updateLiveRegion(){var str=getLiveRegionStr();if(liveregionCurrent.innerHTML!==str){liveregionCurrent.innerHTML=str}}function getLiveRegionStr(){var arr=getVisibleSlideRange(),start=arr(0)+1,end=arr(1)+1;return start===end?start+"":start+" to "+end}function getVisibleSlideRange(val){if(val==null){val=getContainerTransformValue()}var start=index,end,rangestart,rangeend;if(center||edgePadding){if(autoWidth||fixedWidth){rangestart=-(parseFloat(val)+edgePadding);rangeend=rangestart+viewport+edgePadding*2}}else{if(autoWidth){rangestart=slidePositions(index);rangeend=rangestart+viewport}}if(autoWidth){slidePositions.forEach(function(point,i){if(i<slideCountNew){if((center||edgePadding)&&point=0.5){end=i}}})}else{if(fixedWidth){var cell=fixedWidth+gutter;if(center||edgePadding){start=Math.floor(rangestart/cell);end=Math.ceil(rangeend/cell-1)}else{end=start+Math.ceil(viewport/cell)-1}}else{if(center||edgePadding){var a=items-1;if(center){start-=a/2;end=index+a/2}else{end=index+a}if(edgePadding){var b=edgePadding*items/viewport;start-=b;end+=b}start=Math.floor(start);end=Math.ceil(end)}else{end=start+items-1}}start=Math.max(start,0);end=Math.min(end,slideCountNew-1)}return(start,end)}function doLazyLoad(){if(lazyload&&!disable){getImageArray.apply(null,getVisibleSlideRange()).forEach(function(img){if(!hasClass(img,imgCompleteClass)){var eve={};eve(TRANSITIONEND)=function(e){e.stopPropagation()};addEvents(img,eve);addEvents(img,imgEvents);img.src=getAttr(img,”data-src”);var srcset=getAttr(img,”data-srcset”);if(srcset){img.srcset=srcset}addClass(img,”loading”)}})}}function onImgLoaded(e){imgLoaded(getTarget(e))}function onImgFailed(e){imgFailed(getTarget(e))}function imgLoaded(img){addClass(img,”loaded”);imgCompleted(img)}function imgFailed(img){addClass(img,”failed”);imgCompleted(img)}function imgCompleted(img){addClass(img,”tns-complete”);removeClass(img,”loading”);removeEvents(img,imgEvents)}function getImageArray(start,end){var imgs=();while(start<=end){forEach(slideItems(start).querySelectorAll("img"),function(img){imgs.push(img)});start++}return imgs}function doAutoHeight(){var imgs=getImageArray.apply(null,getVisibleSlideRange());raf(function(){imgsLoadedCheck(imgs,updateInnerWrapperHeight)})}function imgsLoadedCheck(imgs,cb){if(imgsComplete){return cb()}imgs.forEach(function(img,index){if(hasClass(img,imgCompleteClass)){imgs.splice(index,1)}});if(!imgs.length){return cb()}raf(function(){imgsLoadedCheck(imgs,cb)})}function additionalUpdates(){doLazyLoad();updateSlideStatus();updateLiveRegion();updateControlsStatus();updateNavStatus()}function update_carousel_transition_duration(){if(carousel&&autoHeight){middleWrapper.style(TRANSITIONDURATION)=speed/1000+"s"}}function getMaxSlideHeight(slideStart,slideRange){var heights=();for(var i=slideStart,l=Math.min(slideStart+slideRange,slideCountNew);i=start&&i=index&&i=0?navClicked:getCurrentNavIndex();navClicked=-1;if(navCurrentIndex!==navCurrentIndexCached){var navPrev=navItems(navCurrentIndexCached),navCurrent=navItems(navCurrentIndex);setAttrs(navPrev,{“tabindex”:”-1″,”aria-label”:navStr+(navCurrentIndexCached+1)});removeClass(navPrev,navActiveClass);setAttrs(navCurrent,{“aria-label”:navStr+(navCurrentIndex+1)+navStrCurrent});removeAttrs(navCurrent,”tabindex”);addClass(navCurrent,navActiveClass);navCurrentIndexCached=navCurrentIndex}}}function getLowerCaseNodeName(el){return el.nodeName.toLowerCase()}function isButton(el){return getLowerCaseNodeName(el)===”button”}function isAriaDisabled(el){return el.getAttribute(“aria-disabled”)===”true”}function disEnableElement(isButton,el,val){if(isButton){el.disabled=val}else{el.setAttribute(“aria-disabled”,val.toString())}}function updateControlsStatus(){if(!controls||rewind||loop){return}var prevDisabled=prevIsButton?prevButton.disabled:isAriaDisabled(prevButton),nextDisabled=nextIsButton?nextButton.disabled:isAriaDisabled(nextButton),disablePrev=index=indexMax?true:false;if(disablePrev&&!prevDisabled){disEnableElement(prevIsButton,prevButton,true)}if(!disablePrev&&prevDisabled){disEnableElement(prevIsButton,prevButton,false)}if(disableNext&&!nextDisabled){disEnableElement(nextIsButton,nextButton,true)}if(!disableNext&&nextDisabled){disEnableElement(nextIsButton,nextButton,false)}}function resetDuration(el,str){if(TRANSITIONDURATION){el.style(TRANSITIONDURATION)=str}}function getSliderWidth(){return fixedWidth?(fixedWidth+gutter)*slideCountNew:slidePositions(slideCountNew)}function getCenterGap(num){if(num==null){num=index}var gap=edgePadding?gutter:0;return autoWidth?(viewport-gap-(slidePositions(num+1)-slidePositions(num)-gutter))/2:fixedWidth?(viewport-fixedWidth)/2:(items-1)/2}function getRightBoundary(){var gap=edgePadding?gutter:0,result=viewport+gap-getSliderWidth();if(center&&!loop){result=fixedWidth?-(fixedWidth+gutter)*(slideCountNew-1)-getCenterGap():getCenterGap(slideCountNew-1)-slidePositions(slideCountNew-1)}if(result>0){result=0}return result}function getContainerTransformValue(num){if(num==null){num=index}var val;if(horizontal&&!autoWidth){if(fixedWidth){val=-(fixedWidth+gutter)*num;if(center){val+=getCenterGap()}}else{var denominator=TRANSFORM?slideCountNew:items;if(center){num-=getCenterGap()}val=-num*100/denominator}}else{val=-slidePositions(num);if(center&&autoWidth){val+=getCenterGap()}}if(hasRightDeadZone){val=Math.max(val,rightBoundary)}val+=horizontal&&!autoWidth&&!fixedWidth?”%”:”px”;return val}function doContainerTransformSilent(val){resetDuration(container,”0s”);doContainerTransform(val)}function doContainerTransform(val){if(val==null){val=getContainerTransformValue()}container.style(transformAttr)=transformPrefix+val+transformPostfix}function animateSlide(number,classOut,classIn,isOut){var l=number+items;if(!loop){l=Math.min(l,slideCountNew)}for(var i=number;i=0){stopAutoplay()}running=true;transformCore()}}function strTrans(str){return str.toLowerCase().replace(/-/g,””)}function onTransitionEnd(event){if(carousel||running){events.emit(“transitionEnd”,info(event));if(!carousel&&slideItemsOut.length>0){for(var i=0;i<slideItemsOut.length;i++){var item=slideItemsOut(i);item.style.left="";if(ANIMATIONDELAY&&TRANSITIONDELAY){item.style(ANIMATIONDELAY)="";item.style(TRANSITIONDELAY)=""}removeClass(item,animateOut);addClass(item,animateNormal)}}if(!event||!carousel&&event.target.parentNode===container||event.target===container&&strTrans(event.propertyName)===strTrans(transformAttr)){if(!updateIndexBeforeTransform){var indexTem=index;updateIndex();if(index!==indexTem){events.emit("indexChanged",info());doContainerTransformSilent()}}if(nested==="inner"){events.emit("innerLoaded",info())}running=false;indexCached=index}}}function goTo(targetIndex,e){if(freeze){return}if(targetIndex==="prev"){onControlsClick(e,-1)}else if(targetIndex==="next"){onControlsClick(e,1)}else{if(running){if(preventActionWhenRunning){return}else{onTransitionEnd()}}var absIndex=getAbsIndex(),indexGap=0;if(targetIndex==="first"){indexGap=-absIndex}else if(targetIndex==="last"){indexGap=carousel?slideCount-items-absIndex:slideCount-1-absIndex}else{if(typeof targetIndex!=="number"){targetIndex=parseInt(targetIndex)}if(!isNaN(targetIndex)){if(!e){targetIndex=Math.max(0,Math.min(slideCount-1,targetIndex))}indexGap=targetIndex-absIndex}}if(!carousel&&indexGap&&Math.abs(indexGap)0?1:-1;indexGap+=index+indexGap-slideCount>=indexMin?slideCount*factor:slideCount*2*factor*-1}index+=indexGap;if(carousel&&loop){if(indexindexMax){index-=slideCount}}if(getAbsIndex(index)!==getAbsIndex(indexCached)){render(e)}}}function onControlsClick(e,dir){if(running){if(preventActionWhenRunning){return}else{onTransitionEnd()}}var passEventObject;if(!dir){e=getEvent(e);var target=getTarget(e);while(target!==controlsContainer&&(prevButton,nextButton).indexOf(target)=0){passEventObject=true;dir=targetIn===0?-1:1}}if(rewind){if(index===indexMin&&dir===-1){goTo(“last”,e);return}else if(index===indexMax&&dir===1){goTo(“first”,e);return}}if(dir){index+=slideBy*dir;if(autoWidth){index=Math.floor(index)}render(passEventObject||e&&e.type===”keydown”?e:null)}}function onNavClick(e){if(running){if(preventActionWhenRunning){return}else{onTransitionEnd()}}e=getEvent(e);var target=getTarget(e),navIndex;while(target!==navContainer&&!hasAttr(target,”data-nav”)){target=target.parentNode}if(hasAttr(target,”data-nav”)){var navIndex=navClicked=Number(getAttr(target,”data-nav”)),targetIndexBase=fixedWidth||autoWidth?navIndex*slideCount/pages:navIndex*items,targetIndex=navAsThumbnails?navIndex:Math.min(Math.ceil(targetIndexBase),slideCount-1);goTo(targetIndex,e);if(navCurrentIndex===navIndex){if(animating){stopAutoplay()}navClicked=-1}}}function setAutoplayTimer(){autoplayTimer=setInterval(function(){onControlsClick(null,autoplayDirection)},autoplayTimeout);animating=true}function stopAutoplayTimer(){clearInterval(autoplayTimer);animating=false}function updateAutoplayButton(action,txt){setAttrs(autoplayButton,{“data-action”:action});autoplayButton.innerHTML=autoplayHtmlStrings(0)+action+autoplayHtmlStrings(1)+txt}function startAutoplay(){setAutoplayTimer();if(autoplayButton){updateAutoplayButton(“stop”,autoplayText(1))}}function stopAutoplay(){stopAutoplayTimer();if(autoplayButton){updateAutoplayButton(“start”,autoplayText(0))}}function play(){if(autoplay&&!animating){startAutoplay();autoplayUserPaused=false}}function pause(){if(animating){stopAutoplay();autoplayUserPaused=true}}function toggleAutoplay(){if(animating){stopAutoplay();autoplayUserPaused=true}else{startAutoplay();autoplayUserPaused=false}}function onVisibilityChange(){if(doc.hidden){if(animating){stopAutoplayTimer();autoplayVisibilityPaused=true}}else if(autoplayVisibilityPaused){setAutoplayTimer();autoplayVisibilityPaused=false}}function mouseoverPause(){if(animating){stopAutoplayTimer();autoplayHoverPaused=true}}function mouseoutRestart(){if(autoplayHoverPaused){setAutoplayTimer();autoplayHoverPaused=false}}function onDocumentKeydown(e){e=getEvent(e);var keyIndex=(KEYS.LEFT,KEYS.RIGHT).indexOf(e.keyCode);if(keyIndex>=0){onControlsClick(e,keyIndex===0?-1:1)}}function onControlsKeydown(e){e=getEvent(e);var keyIndex=(KEYS.LEFT,KEYS.RIGHT).indexOf(e.keyCode);if(keyIndex>=0){if(keyIndex===0){if(!prevButton.disabled){onControlsClick(e,-1)}}else if(!nextButton.disabled){onControlsClick(e,1)}}}function setFocus(el){el.focus()}function onNavKeydown(e){e=getEvent(e);var curElement=doc.activeElement;if(!hasAttr(curElement,”data-nav”)){return}var keyIndex=(KEYS.LEFT,KEYS.RIGHT,KEYS.ENTER,KEYS.SPACE).indexOf(e.keyCode),navIndex=Number(getAttr(curElement,”data-nav”));if(keyIndex>=0){if(keyIndex===0){if(navIndex>0){setFocus(navItems(navIndex-1))}}else if(keyIndex===1){if(navIndex=0}function preventDefaultBehavior(e){e.preventDefault?e.preventDefault():e.returnValue=false}function getMoveDirectionExpected(){return getTouchDirection(toDegree(lastPosition.y-initPosition.y,lastPosition.x-initPosition.x),swipeAngle)===options.axis}function onPanStart(e){if(running){if(preventActionWhenRunning){return}else{onTransitionEnd()}}if(autoplay&&animating){stopAutoplayTimer()}panStart=true;if(rafIndex){caf(rafIndex);rafIndex=null}var $=getEvent(e);events.emit(isTouchEvent(e)?”touchStart”:”dragStart”,info(e));if(!isTouchEvent(e)&&(“img”,”a”).indexOf(getLowerCaseNodeName(getTarget(e)))>=0){preventDefaultBehavior(e)}lastPosition.x=initPosition.x=$.clientX;lastPosition.y=initPosition.y=$.clientY;if(carousel){translateInit=parseFloat(container.style(transformAttr).replace(transformPrefix,””));resetDuration(container,”0s”)}}function onPanMove(e){if(panStart){var $=getEvent(e);lastPosition.x=$.clientX;lastPosition.y=$.clientY;if(carousel){if(!rafIndex){rafIndex=raf(function(){panUpdate(e)})}}else{if(moveDirectionExpected===”?”){moveDirectionExpected=getMoveDirectionExpected()}if(moveDirectionExpected){preventScroll=true}}if(preventScroll){e.preventDefault()}}}function panUpdate(e){if(!moveDirectionExpected){panStart=false;return}caf(rafIndex);if(panStart){rafIndex=raf(function(){panUpdate(e)})}if(moveDirectionExpected===”?”){moveDirectionExpected=getMoveDirectionExpected()}if(moveDirectionExpected){if(!preventScroll&&isTouchEvent(e)){preventScroll=true}try{if(e.type){events.emit(isTouchEvent(e)?”touchMove”:”dragMove”,info(e))}}catch(err){}var x=translateInit,dist=getDist(lastPosition,initPosition);if(!horizontal||fixedWidth||autoWidth){x+=dist;x+=”px”}else{var percentageX=TRANSFORM?dist*items*100/((viewport+gutter)*slideCountNew):dist*100/(viewport+gutter);x+=percentageX;x+=”%”}container.style(transformAttr)=transformPrefix+x+transformPostfix}}function onPanEnd(e){if(panStart){if(rafIndex){caf(rafIndex);rafIndex=null}if(carousel){resetDuration(container,””)}panStart=false;var $=getEvent(e);lastPosition.x=$.clientX;lastPosition.y=$.clientY;var dist=getDist(lastPosition,initPosition);if(Math.abs(dist)){if(!isTouchEvent(e)){var target=getTarget(e);addEvents(target,{“click”:function preventClick(e){preventDefaultBehavior(e);removeEvents(target,{“click”:preventClick})}})}if(carousel){rafIndex=raf(function(){if(horizontal&&!autoWidth){var indexMoved=-dist*items/(viewport+gutter);indexMoved=dist>0?Math.floor(indexMoved):Math.ceil(indexMoved);index+=indexMoved}else{var moved=-(translateInit+dist);if(moved=slidePositions(slideCountNew-1)){index=indexMax}else{var i=0;while(i=slidePositions(i)){index=i;if(moved>slidePositions(i)&&dist0?-1:1)}}}}if(options.preventScrollOnTouch===”auto”){preventScroll=false}if(swipeAngle){moveDirectionExpected=”?”}if(autoplay&&!animating){setAutoplayTimer()}}function updateContentWrapperHeight(){var wp=middleWrapper?middleWrapper:innerWrapper;wp.style.height=slidePositions(index+items)-slidePositions(index)+”px”}function getPages(){var rough=fixedWidth?(fixedWidth+gutter)*slideCount/viewport:slideCount/items;return Math.min(Math.ceil(rough),slideCount)}function updateNavVisibility(){if(!nav||navAsThumbnails){return}if(pages!==pagesCached){var min=pagesCached,max=pages,fn=showElement;if(pagesCached>pages){min=pages;max=pagesCached;fn=hideElement}while(min<max){fn(navItems(min));min++}pagesCached=pages}}function info(e){return{container:container,slideItems:slideItems,navContainer:navContainer,navItems:navItems,controlsContainer:controlsContainer,hasControls:hasControls,prevButton:prevButton,nextButton:nextButton,items:items,slideBy:slideBy,cloneCount:cloneCount,slideCount:slideCount,slideCountNew:slideCountNew,index:index,indexCached:indexCached,displayIndex:getCurrentSlide(),navCurrentIndex:navCurrentIndex,navCurrentIndexCached:navCurrentIndexCached,pages:pages,pagesCached:pagesCached,sheet:sheet,isOn:isOn,event:e||{}}}return{version:"2.9.1",getInfo:info,events:events,goTo:goTo,play:play,pause:pause,isOn:isOn,updateSliderHeight:updateInnerWrapperHeight,refresh:initSliderTransform,destroy:destroy,rebuild:function(){return tns(extend(options,optionsElements))}}};return tns}();
/* save_content */
DN.saveContent=function(element){this.contentElement=element;this.contentId=element.getAttribute("data-id");this.contentType=element.getAttribute("data-type");this.source="site-"+DN.pageData.publication_id+"-"+DN.pageData.type;if(deviceTarget){this.source+="-"+deviceTarget}var subSource=element.getAttribute("data-sub-source");if(!DN.empty(subSource)){this.source+="-"+subSource}this.saveURL=document.location.protocol+"//"+document.location.hostname+"/async/content/save/";this.removeURL=document.location.protocol+"//"+document.location.hostname+"/async/content/remove/";this.xhr=null;this.doAction=function(remove){var params="";var url=null;params+="content_id="+encodeURIComponent(this.contentId);params+="&content_type="+encodeURIComponent(this.contentType);if(remove){url=this.removeURL}else{url=this.saveURL;params+="&source="+encodeURIComponent(this.source)}this.xhr=new DN.xhr(url,this.handleResponse,params,this)};this.handleResponse=function(responseText){if(responseText!==undefined){var data=JSON.parse(responseText);if(data("success")){var title=this.contentElement.getAttribute("data-title");if(title==undefined||title.length==0){title="This Content"}if(data("removed")){title="Click To Save "+title;if(DN.hasClass(this.contentElement,"icon-saved-heart")){DN.swapClass(this.contentElement,"icon-saved-heart","icon-unsaved-heart");DN.swapClass(this.contentElement,"remove-content","save-content");this.contentElement.setAttribute("aria-label",title);this.contentElement.setAttribute("title",title)}else if(DN.hasClass(this.contentElement,"material-save-heart")){DN.swapClass(this.contentElement,"remove-content","save-content");DN.get("svg.icon use",this.contentElement).setAttribute("xlink:href","#ic-save");this.contentElement.setAttribute("aria-label",title);this.contentElement.setAttribute("title",title)}else{var parent=this.contentElement.parentNode;while(!DN.hasClass(parent,"tile")){parent=parent.parentNode;if(!parent){break}}if(parent){parent.style.opacity=0.25;element.style.visibility="hidden"}if(DN.hasClass(this.contentElement.parentNode,"saved-content")){this.contentElement.parentNode.style.display="none";var saveButton=DN.get(".save-content",this.contentElement.parentNode.parentNode);if(saveButton){saveButton.style.display="inline-block"}if(parent){parent.style.opacity=1;this.contentElement.style.visibility="visible"}}}DN.saveContentHandler.afterUnsave.fire(this.contentElement)}else{title="Click To Unsave "+title;if(DN.hasClass(this.contentElement,"icon-unsaved-heart")){DN.swapClass(this.contentElement,"icon-unsaved-heart","icon-saved-heart");DN.swapClass(this.contentElement,"save-content","remove-content");this.contentElement.setAttribute("aria-label",title);this.contentElement.setAttribute("title",title)}else if(DN.hasClass(this.contentElement,"material-save-heart")){DN.swapClass(this.contentElement,"save-content","remove-content");DN.get("svg.icon use",this.contentElement).setAttribute("xlink:href","#ic-save-checked");this.contentElement.setAttribute("aria-label",title);this.contentElement.setAttribute("title",title)}else{savedURL="https://"+document.location.hostname+"/mydealnews/saved/";this.contentElement.style.display="none";var savedDiv=DN.get(".saved-content",this.contentElement.parentNode);if(savedDiv){savedDiv.style.display="inline-block"}else{newEl=document.createElement("span");newEl.className="saved-content";newEl.innerHTML="Saved! (undo)”;this.contentElement.parentNode.insertBefore(newEl,this.contentElement);DN.event.bind(DN.get(“.remove-content”,this.contentElement.parentNode),”click”,DN.saveContentHandler.clickHandler)}}DN.saveContentHandler.afterSave.fire(this.contentElement)}var newText;var savedCountElements=DN.getAll(“.saved-count”);for(var x=0;x<savedCountElements.length;x++){savedCountElements(x).innerHTML=data("saved_count_fmt")}var savedCountLinkElements=DN.getAll(".saved-count-link");for(var x=0;x0){DN.removeClass(savedCountLinkElements(x),”saved-count-link-hidden”)}else{DN.addClass(savedCountLinkElements(x),”saved-count-link-hidden”)}}var savedCount=DN.get(“header-saved-count”);if(savedCount){var savedCountText=data(“saved_count_fmt”);if(data(“saved_count”)>9){savedCountText=”9+”}if(parseInt(data(“saved_count”),0)===0){DN.swapClass(savedCount,”heart-number-saved”,”heart-number-unsaved”);DN.swapClass(savedCount,”heart-number-saved-shift”,”heart-number-unsaved”)}else{DN.swapClass(savedCount,”heart-number-unsaved”,”heart-number-saved”);if(data(“saved_count”)>9){data(“saved_count”)=”9+”;DN.swapClass(savedCount,”heart-number-unsaved”,”heart-number-saved-shift”);DN.swapClass(savedCount,”heart-number-saved”,”heart-number-saved-shift”)}else{DN.swapClass(savedCount,”heart-number-unsaved”,”heart-number-saved”);DN.swapClass(savedCount,”heart-number-saved-shift”,”heart-number-saved”)}}savedCount.innerHTML=savedCountText}var savedTabBar=DN.get(“saved-tab-bar”);if(savedTabBar){selTab=DN.get(“.sel .txt”,savedTabBar,true);if(selTab){newText=selTab.innerHTML.substr(0,selTab.innerHTML.indexOf(“(“)+1)+data(“saved_count_fmt”)+”)”;selTab.innerHTML=newText}}}else{if(data(“not_logged_in”)){DN.loginForm.show.call(this.contentElement)}else{if(!data(“error”)||data(“error”)===””){data(“error”)=”An unknown error occured”}this.showError(data(“error”))}}}else{this.showError(“An unknown error occurred”)}};this.showError=function(error){alert(error)}};if(!DN.saveContentHandler){DN.saveContentHandler={objCache:{},afterSave:new DN.customEvent({passArgs:true}),afterUnsave:new DN.customEvent({passArgs:true}),afterChange:new DN.customEvent({passArgs:true}),addListeners:function(){var links=DN.getAll(“.save-content”);for(n=0;n<links.length;n++){if(!links(n).getAttribute("data-bound")){links(n).setAttribute("data-bound",1);DN.event.bind(links(n),"click",DN.saveContentHandler.clickHandler)}}links=DN.getAll(".remove-content");for(n=0;n<links.length;n++){if(!links(n).getAttribute("data-bound")){links(n).setAttribute("data-bound",1);DN.event.bind(links(n),"click",DN.saveContentHandler.clickHandler)}}},clickHandler:function(e){DN.preventDefault(e);var contentId=this.getAttribute("data-id");var contentType=this.getAttribute("data-type");if(contentId&&contentType){var key=contentType+contentId;var isUnsave=DN.hasClass(this,"remove-content");if(isUnsave){key+="remove"}if(!DN.saveContentHandler.objCache(key)||!DN.saveContentHandler.objCache(key).contentElement){DN.saveContentHandler.objCache(key)=new DN.saveContent(this)}var saveContentObj=DN.saveContentHandler.objCache(key);saveContentObj.doAction(isUnsave)}}}}DN.onDOMReady.bind(DN.saveContentHandler.addListeners);
/* content_overflow_menu */
function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function")}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props(i);descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor)}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor}(function(scopeVar){var ContentOverflowMenu=function(){"use strict";function ContentOverflowMenu(){_classCallCheck(this,ContentOverflowMenu)}_createClass(ContentOverflowMenu,({key:"attachListeners",value:function attachListeners(){var menus=DN.getAll(".content-card .action-menu");for(var x=0;x<menus.length;x++){if(menus(x).getAttribute("data-overflow-menu-bound")!=="true"){DN.event.bind(menus(x),"mouseenter",this.setAttributes,this);DN.event.bind(menus(x),"focus",this.setAttributes,this);menus(x).setAttribute("data-overflow-menu-bound","true")}}}},{key:"setAttributes",value:function setAttributes(ev){var menu=DN.getRealTarget(ev);var sheet=DN.get(menu.dataset.bottomSheetId);if(sheet){DN.get(".open-link",sheet).href=menu.dataset.offerUrl;DN.get(".alert-signup",sheet).setAttribute("category",menu.dataset.category);DN.get(".alert-signup",sheet).setAttribute("brand",menu.dataset.brand);DN.get(".alert-signup",sheet).setAttribute("store",menu.dataset.store);if(menu.dataset.expired==="1"){DN.get(".report-error",sheet).classList.add("hidden");DN.get(".report-error",sheet).setAttribute("data-id","");DN.get(".report-error",sheet).setAttribute("data-type","")}else{DN.get(".report-error",sheet).classList.remove("hidden");DN.get(".report-error",sheet).setAttribute("data-id",menu.dataset.contentId);DN.get(".report-error",sheet).setAttribute("data-type",menu.dataset.contentType)}var shareSheet=DN.get(DN.get(".action-menu-share",sheet).dataset.bottomSheetId);DN.get(".share-email",shareSheet).href=menu.dataset.shareEmailUrl;DN.get(".share-facebook",shareSheet).href=menu.dataset.shareFacebookUrl;DN.get(".share-twitter",shareSheet).href=menu.dataset.shareTwitterUrl;DN.get(".share-pinterest",shareSheet).href=menu.dataset.sharePinterestUrl}}}));return ContentOverflowMenu}();scopeVar.ContentOverflowMenu=ContentOverflowMenu})(DN);DN.onDOMReady.bind(function(){if(!DN.contentOverflowMenu){DN.contentOverflowMenu=new DN.ContentOverflowMenu}DN.contentOverflowMenu.attachListeners()});
/* content_card */
function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function")}}function _defineProperties(target,props){for(var i=0;ip>a”,this.card);if(el){this.addSalesLeadAttributes(el,”snippet”)}el=DN.get(“div.summary>p>a”,this.card);if(el){this.addSalesLeadAttributes(el,”summary”)}var related=DN.getAll(“div.related-offers>ul>li>a”,this.card);for(var x=0;x<related.length;x++){related(x).dataset.saleslead="related"}var image=DN.getAll(".cover-link, .attractor, .title-link",this.card);if(image){DN.event.bind(image,"click",function(e){if(!DN.hasClass(_this.card,"expanded")){if(_this.ctaDisabled){DN.preventDefault(e)}var fakeEvent={target:_this.media,srcElement:_this.media};_this.mediaClick(fakeEvent);e.stopPropagation()}},this)}this.expandButton=DN.get(".expand",this.card);if(this.expandButton){DN.event.bind(this.expandButton,"click",this.expand,this);DN.event.bind(this.expandButton,"keydown",this.expand,this)}var expandDefaults=DN.getAll(".expand-default",this.card);if(expandDefaults){DN.event.bind(expandDefaults,"click",function(){this.expand()},this)}this.collapseButton=DN.get(".collapse",this.card);if(this.collapseButton){DN.event.bind(this.collapseButton,"click",this.collapse,this);DN.event.bind(this.collapseButton,"keydown",this.collapse,this)}var less=DN.get(".less",this.card);if(less){DN.event.bind(less,"click",this.collapse,this);DN.event.bind(less,"keydown",this.collapse,this)}var more=DN.get(".more",this.card);if(more){DN.event.bind(more,"click",this.expand,this);DN.event.bind(more,"keydown",this.expand,this)}}},{key:"mediaClick",value:function mediaClick(e){var foundAnchor=false;var target=DN.getTarget(e);while(target!=this.media){if(target.tagName=="A"){foundAnchor=true;break}target=target.parentNode}if(!foundAnchor){if(!DN.hasClass(this.card,"expanded")){this.expand(e)}}}},{key:"expand",value:function expand(e){if(e){if(e.keyCode&&!(e.keyCode==13||e.keyCode==32)){return}DN.preventDefault(e)}if(this.detailsLoaded){this.revealDetails()}else{new DN.xhr(this.expandBaseURL+this.media.getAttribute("data-id")+".html",this.loadDetails,null,this,{"Accept":"dealnews/json","Content-Accept":"dealnews/json"})}}},{key:"collapse",value:function collapse(e){if(e){if(e.keyCode&&!(e.keyCode==13||e.keyCode==32)){return}DN.preventDefault(e)}this.card.classList.remove("expanded");this.media.classList.remove("details");this.card.setAttribute("aria-expanded","false");this.setStyle(this.collapseButton,"display","none");this.setStyle(this.expandButton,"display","inline-block");if(this.cta&&this.ctaDisabled){this.cta.setAttribute("disabled","")}}},{key:"revealDetails",value:function revealDetails(){var card=this.card;var scrollIntoView=function(){var cardRegion=DN.getRegion(card);var block;if(cardRegion.topdocument.documentElement.scrollTop+document.documentElement.clientHeight){block=”end”}if(block){card.scrollIntoView({behavior:”smooth”,block:block})}};this.card.classList.add(“expanded”);this.media.classList.add(“details”);this.card.setAttribute(“aria-expanded”,”true”);this.setStyle(this.expandButton,”display”,”none”);this.setStyle(this.collapseButton,”display”,”inline-block”);if(this.cta&&this.ctaDisabled){this.cta.removeAttribute(“disabled”)}window.setTimeout(scrollIntoView,100)}},{key:”setStyle”,value:function setStyle(elem,style,value){if(elem){elem.style(style)=value}}},{key:”loadDetails”,value:function loadDetails(responseText){try{var response=JSON.parse(responseText)}catch(error){var response=null}if(response){DN.loadDNJson(this.detailsContainer,response);this.detailsLoaded=true;this.revealDetails()}}}));return ContentCard}();scopeVar.ContentCard=ContentCard})(DN);DN.onDOMReady.bind(function(){DN.createObjects(“contentCards”,”.content-card”,DN.ContentCard)});
/* get_code */
DN.getCode=function(el){this.handleClick=function(e){var href=this.el.getAttribute(“data-href”);if(!href){href=this.el.getAttribute(“href”)}var permalink=this.el.getAttribute(“data-permalink”);if(permalink&&href){DN.preventDefault(e);window.open(permalink);window.location.href=href}};this.el=el;DN.event.bind(el,”click”,this.handleClick,this)};DN.onDOMReady.bind(function(){DN.createObjects(“getCodeObjects”,”.get-code”,DN.getCode,false)});
/* views */
DN.contentViewTracker=function(){this.content={};this.viewed={};this.sent={};this.scrollTimer=null;this.sendTimer=null;this.init=function(){if(typeof publicationID==”undefined”||publicationID===null||publicationID===0){return}var contentElements=DN.getAll(“.article, .content-view”);for(var x=0;x<contentElements.length;x++){var c=contentElements(x);if(!c.getAttribute("data-id")||c.getAttribute("data-id").lengthviewTop&&c.center=200){this.makeRequest(content);content={};count=0}}if(count>0){this.makeRequest(content);this.viewed={}}};this.makeRequest=function(content){var url=document.location.protocol+”//”+document.location.hostname+”/lw/views.php”;var data={publicationID:publicationID,content:content};data=DN.addStdLogData(data);data=JSON.stringify(data);try{DN.xhr(url,null,data)}catch(e){}};this.init()};DN.onDOMReady.bind(function(){if(!DN.contentViewTrackerObject){DN.contentViewTrackerObject=new DN.contentViewTracker}else{DN.contentViewTrackerObject.init()}});
/* lightbox_pop */
function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError(“Cannot call a class as a function”)}}function _defineProperties(target,props){for(var i=0;i0){for(var i=0;i0){for(var h=0;h<offers.length;h++){attr=offers(h).getAttribute("data-singleuseloaded");if(!attr){offers(h).setAttribute("data-singleuseloaded",1);new DN.singleUseCouponLightbox(offers(h))}}}var continue_browsing=DN.get(".continue-browsing");if(continue_browsing&&DN.hasOwnProperty("lightboxPanels")&&DN.lightboxPanels.hasOwnProperty("singleusecouponpanel")){DN.event.bind(continue_browsing,"click",function(){DN.lightboxPanels("singleusecouponpanel").hide()})}});
/* loading_bar */
function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function")}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props(i);descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor)}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor}(function(scopeVar){var LoadingBar=function(){"use strict";function LoadingBar(elem){_classCallCheck(this,LoadingBar);this.elem=elem;this.id=elem.id;this.scrim_elem=DN.get(this.id+"_scrim")}_createClass(LoadingBar,({key:"show",value:function show(){DN.removeClass(this.elem,"loading-ellipsis-hide");if(this.scrim_elem){DN.removeClass(this.scrim_elem,"loading-ellipsis-hide")}}},{key:"hide",value:function hide(){DN.addClass(this.elem,"loading-ellipsis-hide");if(this.scrim_elem){DN.addClass(this.scrim_elem,"loading-ellipsis-hide")}}}));return LoadingBar}();DN.onDOMReady.bind(function(){scopeVar.LoadingBar=LoadingBar;DN.createObjects("loadingBars",".loading-ellipsis",LoadingBar)})})(DN);
/* wizard */
function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function")}}function _defineProperties(target,props){for(var i=0;i=this.step_timeout){clearInterval(this.interval);this.interval=null;this.activateStep(this.error_step_name)}}else{if(!DN.empty(this.interval)){clearInterval(this.interval);this.interval=null}for(var i in this.steps){if(i===step_name){DN.addClass(this.steps(i),”dnwizard-step-active”);this.active_step=step_name;this.stepActivated.fire(step_name)}else{DN.removeClass(this.steps(i),”dnwizard-step-active”)}}this.hideBar()}}},{key:”cancelStep”,value:function cancelStep(deactivate_loadingbar){if(typeof deactivate_loadingbar===”undefined”){deactivate_loadingbar=true}if(!DN.empty(this.interval)){clearInterval(this.interval);this.interval=null}if(deactivate_loadingbar){this.hideBar()}}},{key:”showBar”,value:function showBar(){this.initializeObject(“loadingbar”,this.loadingbar_id,DN.loadingBars);if(this.loadingbar){this.loadingbar.show()}}},{key:”hideBar”,value:function hideBar(){this.initializeObject(“loadingbar”,this.loadingbar_id,DN.loadingBars);if(this.loadingbar){this.loadingbar.hide()}}},{key:”initializeObject”,value:function initializeObject(property_name,object_name,object_container){if(!this(property_name)){if(object_container&&typeof object_container===”object”){if(object_container.hasOwnProperty(object_name)){this(property_name)=object_container(object_name)}}}}},{key:”initialize”,value:function initialize(){this.steps={};this.steps_status={};this.default_step=null;var step_name=null;var step_status=0;var step_default=0;var steps=DN.getAll(“.dnwizard-step”,this.elem);if(steps&&steps.length>0){for(var i=0;i=o.length)return{done:true};return{done:false,value:o(i++)}},e:function(e){throw e},f:F}}throw new TypeError(“Invalid attempt to iterate non-iterable instance.nIn order to be iterable, non-array objects must have a (Symbol.iterator)() method.”)}var normalCompletion=true,didErr=false,err;return{s:function(){it=o(Symbol.iterator)()},n:function(){var step=it.next();normalCompletion=step.done;return step},e:function(e){didErr=true;err=e},f:function(){try{if(!normalCompletion&&it.return!=null)it.return()}finally{if(didErr)throw err}}}}function _unsupportedIterableToArray(o,minLen){if(!o)return;if(typeof o===”string”)return _arrayLikeToArray(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n===”Object”&&o.constructor)n=o.constructor.name;if(n===”Map”||n===”Set”)return Array.from(o);if(n===”Arguments”||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(o,minLen)}function _arrayLikeToArray(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++){arr2(i)=arr(i)}return arr2}(function(scopeVar){if(!scopeVar.recaptchaLoaded){window.CaptchaCallback=function(){var recaptchas=DN.getAll(".g-recaptcha-explicit");if(recaptchas){var _iterator=_createForOfIteratorHelper(recaptchas),_step;try{for(_iterator.s();!(_step=_iterator.n()).done;){var el=_step.value;var id=grecaptcha.render(el,{"sitekey":el.getAttribute("data-sitekey"),"theme":el.getAttribute("data-theme"),"size":el.getAttribute("data-size"),"tabindex":el.getAttribute("data-tabindex"),"callback":el.getAttribute("data-callback"),"expired-callback":el.getAttribute("data-expired-callback"),"error-callback":el.getAttribute("data-error-callback"),"client-id":el.getAttribute("data-widget-id")});el.setAttribute("data-widget-id",id)}}catch(err){_iterator.e(err)}finally{_iterator.f()}}if(DN.MessageBus){DN.MessageBus.post("recaptchaAvailable")}};var js=document.createElement("script");js.src="https://www.google.com/recaptcha/api.js?onload=CaptchaCallback&render=explicit";js.async=true;js.defer=true;document.head.appendChild(js);scopeVar.recaptchaLoaded=true}})(DN);
/* async_form */
function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function")}}function _defineProperties(target,props){for(var i=0;i0){for(var x=0;x<fields.length;x++){if(fields(x).type!=="submit"&&(fields(x).type!=="checkbox"||fields(x).checked)){if(post_data!==""){post_data+="&"}post_data+=fields(x).name+"="+encodeURIComponent(fields(x).value)}}}}return post_data}},{key:"responseCallback",value:function responseCallback(responseText){var response={};try{response=JSON.parse(responseText)}catch(e){response={};console.log(e)}if(response){this.submitted.fire(response,this.form)}}},{key:"initialize",value:function initialize(){if(this.form){DN.event.bind(this.form,"submit",this.submitForm,this)}}}));return AsyncForm}();scopeVar.AsyncForm=AsyncForm})(DN);
/* google_login */
function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function")}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props(i);descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor)}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor}(function(scopeVar){if(scopeVar.GoogleLogin){return}var GoogleLogin=function(){"use strict";function GoogleLogin(){_classCallCheck(this,GoogleLogin);this.ready=false;this.onReady=new DN.customEvent;this.onSignIn=new DN.customEvent({passArgs:true,returnResult:false,returnArgs:false});this.clientId="240283651047-2k9j9dpqt61kh002lfn5f9dptm2vo4bt.apps.googleusercontent.com"}_createClass(GoogleLogin,({key:"load",value:function load(){(function(d,s,id){var js,fjs=d.getElementsByTagName(s)(0);if(d.getElementById(id)){return}js=d.createElement(s);js.id=id;js.src="https://accounts.google.com/gsi/client";js.async=true;js.defer=true;fjs.parentNode.insertBefore(js,fjs)})(document,"script","google-jssdk");var self=this;window.onGoogleLibraryLoad=function(){if(!self.ready){google.accounts.id.initialize({client_id:self.clientId,context:"signin",itp_support:true,callback:function(CredentialResponse){self.onSignIn.fire(CredentialResponse)}});self.setReady();google.accounts.id.prompt()}}}},{key:"setReady",value:function setReady(){this.ready=true;this.onReady.fire()}},{key:"attachOnReadyCallback",value:function attachOnReadyCallback(callback){if(this.ready){callback()}else{this.onReady.bind(callback)}}},{key:"renderButton",value:function renderButton(container){if(this.ready){google.accounts.id.renderButton(container,{type:"standard",shape:"rectangular",theme:"outline",text:"continue_with",size:"large",logo_alignment:"left",width:240})}else{this.onReady.bind(function(){this.renderButton(container)},this)}}}));return GoogleLogin}();scopeVar.GoogleLogin=new GoogleLogin;if(DN.MessageBus){DN.MessageBus.post("thirdPartyLoginAvailable")}})(DN);
/* facebook_login */
function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function")}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props(i);descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if("value"in descriptor)descriptor.writable=true;Object.defineProperty(target,descriptor.key,descriptor)}}function _createClass(Constructor,protoProps,staticProps){if(protoProps)_defineProperties(Constructor.prototype,protoProps);if(staticProps)_defineProperties(Constructor,staticProps);return Constructor}(function(scopeVar){if(scopeVar.FacebookLogin){return}var FacebookLogin=function(){"use strict";function FacebookLogin(){_classCallCheck(this,FacebookLogin);this.FB=null;this.onReady=new DN.customEvent}_createClass(FacebookLogin,({key:"load",value:function load(){(function(d,s,id){var js,fjs=d.getElementsByTagName(s)(0);if(d.getElementById(id)){return}js=d.createElement(s);js.id=id;js.src="https://connect.facebook.net/en_US/sdk.js";fjs.parentNode.insertBefore(js,fjs)})(document,"script","facebook-jssdk")}},{key:"setFB",value:function setFB(FB){this.FB=FB;this.onReady.fire()}},{key:"loginOrPop",value:function loginOrPop(callback,context){var that=this;this.FB.getLoginStatus(function(response){if(response.status==="connected"){that.loadUser(callback,context)}else{that.FB.login(function(response){if(response.authResponse){that.loadUser(callback,context)}},{scope:"public_profile,email"})}})}},{key:"loadUser",value:function loadUser(callback,context){this.FB.api("/me?fields=email,name",function(response){if(context){callback.apply(context,(response))}else{callback.apply(null,(response))}})}},{key:"attachListener",value:function attachListener(element,callback,context){if(this.FB){DN.event.bind(element,"click",function(){this.loginOrPop(callback,context)},this)}else{this.onReady.bind(function(){this.attachListener(element,callback,context)},this)}}},{key:"attachOnReadyCallback",value:function attachOnReadyCallback(callback){if(this.FB){callback()}else{this.onReady.bind(callback)}}}));return FacebookLogin}();scopeVar.FacebookLogin=new FacebookLogin;if(DN.MessageBus){DN.MessageBus.post("thirdPartyLoginAvailable")}})(DN);window.fbAsyncInit=function(){FB.init({appId:"16976398217",xfbml:true,version:"v3.3"});FB.AppEvents.logPageView();DN.FacebookLogin.setFB(FB)};
/* login */
function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function")}}function _defineProperties(target,props){for(var i=0;i0){for(var i=0;i0){for(var j=0;j0){for(var x=0;x<fields.length;x++){if(fields(x).type!=="submit"&&(fields(x).type!=="checkbox"||fields(x).checked)){if(post_data!==""){post_data+="&"}post_data+=fields(x).name+"="+encodeURIComponent(fields(x).value)}}}this.beforeSubmit.fire(post_data);if(!DN.empty(post_data)){new DN.xhr(this.endpoint,this.responseCallback,post_data,this,this.postFormResultsHeaders,"POST")}}}},{key:"responseCallback",value:function responseCallback(responseText){this.form=null;var response={};try{response=JSON.parse(responseText)}catch(e){console.log(e)}if(response&&DN.isDNJson(response)){if(DN.loadDNJson(this.container,response)){this.form=DN.get(this.form_selector,this.container);if(this.form){DN.event.bind(this.form,"submit",this.submitForm,this)}this.dnjsonLoaded.fire()}}else if(response){this.success.fire(response)}}},{key:"postAuthCallback",value:function postAuthCallback(responseText){var response={};try{response=JSON.parse(responseText)}catch(e){console.log(e)}if(response&&response.hasOwnProperty("post_auth")){if(this.form){if(this.postauth_field){var field=DN.get(this.postauth_field,this.form);field.value=response.post_auth;this.postData()}}}}}));return XHRForm}();scopeVar.XHRForm=XHRForm})(DN);
/* modal/onboard */
function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function")}}function _defineProperties(target,props){for(var i=0;i0){for(var x=0;x0){for(var y=0;y0){for(var j=0;j0){var step_index=0;if(step||this.wizard.active_step){if(step){step_index=steps.indexOf(step)}else if(this.wizard.active_step){step_index=steps.indexOf(this.wizard.active_step)}if(step_index>=0){step_index++}}if(step_index>=0&&steps(step_index)){next_step=steps(step_index)}else{next_step=false}}if(!DN.hasOwnProperty(“onboardpreferences”)||!DN.onboardpreferences){if(next_step===”entry”||next_step===”preferences”||next_step===”success”){next_step=this.getNextStep(next_step)}}else if(DN.userLoggedIn&&(next_step===”entry”||next_step===”account”)){next_step=this.getNextStep(next_step)}else if(DN.userHasPref&&(next_step===”preferences”||next_step===”success”)){if(next_step===”preferences”||!this.pref_changed){next_step=this.getNextStep(next_step)}}else if(!DN.userHasPref&&next_step===”success”){next_step=this.getNextStep(next_step)}if(next_step===”entry”||next_step===”success”){var cookie_name=this.entry_cookie_name;if(next_step===”success”){cookie_name=this.success_cookie_name}var cookie=DN.getCookie(cookie_name);if(!DN.empty(cookie)){next_step=this.getNextStep(next_step)}}return next_step}}));return Onboard}();scopeVar.Onboard=new Onboard})(DN);
/* modal/onboard-login */
DN.loginForm={show:function(e){if(DN.hasOwnProperty(“Onboard”)){if(typeof e!==”object”){if(typeof this===”object”&&this instanceof HTMLElement){e={currentTarget:this}}}DN.Onboard.toggle(e)}}};
/* widgets/newsletter */
DN.NewsletterSignup=function(baseElement){this.baseElement=DN.get(baseElement);if(baseElement.tagName==”FORM”){this.element=this.baseElement}else{this.element=DN.get(“form”,this.baseElement)}this.onSuccess=new DN.customEvent({passArgs:true});this.onFailure=new DN.customEvent;this.onSubmit=new DN.customEvent;this.shown=false;this.scrollTimer=null;this.source=””;this.source_type=””;this.lastResponse={};this.campaignCheckbox=false;this.closeEl=false;this.closeCookieName=false;this.baseURL=document.location.protocol+”//”+document.location.hostname+”/async/newsletter/signup/”;this.data={};this.submitForm=function(responseText){if(responseText){var data=JSON.parse(responseText);if(data(“post_auth”)){var queryData=””;for(var i in this.data){if(queryData.length>0){queryData+=”&”}queryData+=i+”=”;if(i==”campaign”){queryData+=this.data(i).join(“,”)}else{queryData+=encodeURIComponent(this.data(i))}}queryData+=”&post_auth=”+encodeURIComponent(data(“post_auth”));var buttons=DN.getAll(“.button, input(type=submit)”,this.element);if(buttons){for(var x=0;x<buttons.length;x++){buttons(x).setAttribute("disabled","1")}}this.logNavEvent("submitted");var xhr=new DN.xhr(this.baseURL,this.handleResponse,queryData,this);return}}alert("An unknown error has occured.")};this.validate=function(e){if(e){DN.preventDefault(e)}this.data={};this.getData();if(!this.data.hasOwnProperty("uid")&&!this.data.hasOwnProperty("email")){alert("An unknown error has occured. Please reload the page and try again.");return}else if(!this.data.hasOwnProperty("uid")&&DN.empty(this.data.email)){alert("You must provide a valid email address in order to subscribe.");return}if((!this.data.hasOwnProperty("campaign")||this.data.campaign.length<1)&&this.campaignCheckbox===true){alert("Please choose at least one newsletter campaign, before clicking "Subscribe".");return}if(!this.data.hasOwnProperty("source")&&!this.data.hasOwnProperty("source_page")){alert("An unknown error has occured. Please reload the page and try again.");return}this.onSubmit.fire();this.pA.fetch()};this.getData=function(){if(JSON.stringify(this.data)=="{}"){var emailField=DN.get(".nl-email",this.element);var uidField=DN.get(".nl-user_id",this.element);var zipField=DN.get(".nl-zipcode",this.element);var pubField=DN.get(".nl-pub",this.element);if(emailField){this.data("email")=emailField.value}if(uidField&&!DN.empty(uidField.value)){this.data("uid")=uidField.value}if(zipField&&!DN.empty(zipField.value)){this.data("zip")=zipField.value}if(pubField&&!DN.empty(pubField.value)){this.data("pub")=pubField.value}else if(publicationID){this.data("pub")=publicationID}this.getSource();if(this.source_type=="form"){this.data("source")=this.source}else if(this.source_type=="page"){this.data("source_page")=this.source}this.data("campaign")=this.getCampaigns()}};this.handleResponse=function(responseText){if(responseText){var data=JSON.parse(responseText);this.lastResponse=data;if(data("success")){frmBlock=DN.get(".frm",this.baseElement);if(data("sent_confirm")){successBlock=DN.get(".success-confirm-sent",this.baseElement)}else{successBlock=DN.get(".success-confirmed",this.baseElement)}if(frmBlock&&successBlock){if(successBlock.innerHTML===""){successBlock.innerHTML=data("message_html")}emailSpan=DN.get(".email",successBlock);if(emailSpan){emailSpan.innerHTML=data("email")}frmBlock.style.display="none";successBlock.style.display="block";this.logNavEvent("subscribed");if(this.closeEl){this.setCloseCookie();var self=this;this.scrollTimer=setTimeout(function(){self.dismiss.call(self)},5000)}}this.onSuccess.fire(data)}else{errorBlock=DN.get(".nl-error",this.element);if(errorBlock){errorBlock.innerHTML=data("errors")(0)}else{alert(data("errors")(0))}var buttons=DN.getAll(".button, input(type=submit)",this.element);if(buttons){for(var x=0;xdocument.body.scrollTop){viewTop=document.documentElement.scrollTop}else{viewTop=document.body.scrollTop}if(document.documentElement&&document.documentElement.clientHeight>document.body.clientHeight){viewBottom=viewTop+document.body.clientHeight}else{viewBottom=viewTop+document.documentElement.clientHeight}var center=region.top+region.height/2;if(center>viewTop&¢er<viewBottom){this.isShown()}}};this.isShown=function(){if(!this.shown){this.shown=true;this.logNavEvent("shown");DN.event.unbind(window,"optimizedScroll",this.checkOnScreen)}};this.handleScroll=function(){if(this.scrollTimer){clearTimeout(this.scrollTimer)}var self=this;this.scrollTimer=setTimeout(function(){self.checkOnScreen.call(self)},500)};this.getSource=function(){var sourceValue=null;if(this.source===""||this.source_type===""){var sourcePageField=DN.get(".nl-source-page",this.element);var sourceField=DN.get(".nl-source",this.element);if(sourceField){sourceValue=encodeURIComponent(sourceField.value);this.source=sourceValue;this.source_type="form"}else if(sourcePageField){sourceValue=encodeURIComponent(sourcePageField.value);this.source=sourceValue;this.source_type="page"}}else{sourceValue=this.source}return sourceValue};this.getCampaigns=function(){var campaignFields=DN.getAll(".nl-campaign",this.element);var camps=();if(campaignFields){for(x=0;x0){for(var i=0;i<buttons.length;i++){if(buttons(i).getAttribute("data-manage-newsletters")!=="1"){DN.event.bind(buttons(i),"click",DN.manage_newsletters.action);buttons(i).setAttribute("data-manage-newsletters","1")}}}}};DN.onDOMReady.bind(DN.manage_newsletters.init);
/* back_to_top */
DN.backToTop=function(){this.el=DN.get(".back-to-top-outer");if(this.el){DN.event.bind(this.el,"click",function(e){DN.preventDefault(e);DN.scrollTo(document.body)},this)}};DN.onDOMReady.bind(function(){DN.backToTopButton=new DN.backToTop});