').parent();\r\n _.$slideTrack.css('opacity', 0);\r\n\r\n if (_.options.centerMode === true || _.options.swipeToSlide === true) {\r\n _.options.slidesToScroll = 1;\r\n }\r\n\r\n $('img[data-lazy]', _.$slider).not('[src]').addClass('slick-loading');\r\n\r\n _.setupInfinite();\r\n\r\n _.buildArrows();\r\n\r\n _.buildDots();\r\n\r\n _.updateDots();\r\n\r\n\r\n _.setSlideClasses(typeof _.currentSlide === 'number' ? _.currentSlide : 0);\r\n\r\n if (_.options.draggable === true) {\r\n _.$list.addClass('draggable');\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.buildRows = function() {\r\n\r\n var _ = this, a, b, c, newSlides, numOfSlides, originalSlides,slidesPerSection;\r\n\r\n newSlides = document.createDocumentFragment();\r\n originalSlides = _.$slider.children();\r\n\r\n if(_.options.rows > 1) {\r\n\r\n slidesPerSection = _.options.slidesPerRow * _.options.rows;\r\n numOfSlides = Math.ceil(\r\n originalSlides.length / slidesPerSection\r\n );\r\n\r\n for(a = 0; a < numOfSlides; a++){\r\n var slide = document.createElement('div');\r\n for(b = 0; b < _.options.rows; b++) {\r\n var row = document.createElement('div');\r\n for(c = 0; c < _.options.slidesPerRow; c++) {\r\n var target = (a * slidesPerSection + ((b * _.options.slidesPerRow) + c));\r\n if (originalSlides.get(target)) {\r\n row.appendChild(originalSlides.get(target));\r\n }\r\n }\r\n slide.appendChild(row);\r\n }\r\n newSlides.appendChild(slide);\r\n }\r\n\r\n _.$slider.empty().append(newSlides);\r\n _.$slider.children().children().children()\r\n .css({\r\n 'width':(100 / _.options.slidesPerRow) + '%',\r\n 'display': 'inline-block'\r\n });\r\n\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.checkResponsive = function(initial, forceUpdate) {\r\n\r\n var _ = this,\r\n breakpoint, targetBreakpoint, respondToWidth, triggerBreakpoint = false;\r\n var sliderWidth = _.$slider.width();\r\n var windowWidth = window.innerWidth || $(window).width();\r\n\r\n if (_.respondTo === 'window') {\r\n respondToWidth = windowWidth;\r\n } else if (_.respondTo === 'slider') {\r\n respondToWidth = sliderWidth;\r\n } else if (_.respondTo === 'min') {\r\n respondToWidth = Math.min(windowWidth, sliderWidth);\r\n }\r\n\r\n if ( _.options.responsive &&\r\n _.options.responsive.length &&\r\n _.options.responsive !== null) {\r\n\r\n targetBreakpoint = null;\r\n\r\n for (breakpoint in _.breakpoints) {\r\n if (_.breakpoints.hasOwnProperty(breakpoint)) {\r\n if (_.originalSettings.mobileFirst === false) {\r\n if (respondToWidth < _.breakpoints[breakpoint]) {\r\n targetBreakpoint = _.breakpoints[breakpoint];\r\n }\r\n } else {\r\n if (respondToWidth > _.breakpoints[breakpoint]) {\r\n targetBreakpoint = _.breakpoints[breakpoint];\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (targetBreakpoint !== null) {\r\n if (_.activeBreakpoint !== null) {\r\n if (targetBreakpoint !== _.activeBreakpoint || forceUpdate) {\r\n _.activeBreakpoint =\r\n targetBreakpoint;\r\n if (_.breakpointSettings[targetBreakpoint] === 'unslick') {\r\n _.unslick(targetBreakpoint);\r\n } else {\r\n _.options = $.extend({}, _.originalSettings,\r\n _.breakpointSettings[\r\n targetBreakpoint]);\r\n if (initial === true) {\r\n _.currentSlide = _.options.initialSlide;\r\n }\r\n _.refresh(initial);\r\n }\r\n triggerBreakpoint = targetBreakpoint;\r\n }\r\n } else {\r\n _.activeBreakpoint = targetBreakpoint;\r\n if (_.breakpointSettings[targetBreakpoint] === 'unslick') {\r\n _.unslick(targetBreakpoint);\r\n } else {\r\n _.options = $.extend({}, _.originalSettings,\r\n _.breakpointSettings[\r\n targetBreakpoint]);\r\n if (initial === true) {\r\n _.currentSlide = _.options.initialSlide;\r\n }\r\n _.refresh(initial);\r\n }\r\n triggerBreakpoint = targetBreakpoint;\r\n }\r\n } else {\r\n if (_.activeBreakpoint !== null) {\r\n _.activeBreakpoint = null;\r\n _.options = _.originalSettings;\r\n if (initial === true) {\r\n _.currentSlide = _.options.initialSlide;\r\n }\r\n _.refresh(initial);\r\n triggerBreakpoint = targetBreakpoint;\r\n }\r\n }\r\n\r\n // only trigger breakpoints during an actual break. not on initialize.\r\n if( !initial && triggerBreakpoint !== false ) {\r\n _.$slider.trigger('breakpoint', [_, triggerBreakpoint]);\r\n }\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.changeSlide = function(event, dontAnimate) {\r\n\r\n var _ = this,\r\n $target = $(event.currentTarget),\r\n indexOffset, slideOffset, unevenOffset;\r\n\r\n // If target is a link, prevent default action.\r\n if($target.is('a')) {\r\n event.preventDefault();\r\n }\r\n\r\n // If target is not the
element (ie: a child), find the .\r\n if(!$target.is('li')) {\r\n $target = $target.closest('li');\r\n }\r\n\r\n unevenOffset = (_.slideCount % _.options.slidesToScroll !== 0);\r\n indexOffset = unevenOffset ? 0 : (_.slideCount - _.currentSlide) % _.options.slidesToScroll;\r\n\r\n switch (event.data.message) {\r\n\r\n case 'previous':\r\n slideOffset = indexOffset === 0 ? _.options.slidesToScroll : _.options.slidesToShow - indexOffset;\r\n if (_.slideCount > _.options.slidesToShow) {\r\n _.slideHandler(_.currentSlide - slideOffset, false, dontAnimate);\r\n }\r\n break;\r\n\r\n case 'next':\r\n slideOffset = indexOffset === 0 ? _.options.slidesToScroll : indexOffset;\r\n if (_.slideCount > _.options.slidesToShow) {\r\n _.slideHandler(_.currentSlide + slideOffset, false, dontAnimate);\r\n }\r\n break;\r\n\r\n case 'index':\r\n var index = event.data.index === 0 ? 0 :\r\n event.data.index || $target.index() * _.options.slidesToScroll;\r\n\r\n _.slideHandler(_.checkNavigable(index), false, dontAnimate);\r\n $target.children().trigger('focus');\r\n break;\r\n\r\n default:\r\n return;\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.checkNavigable = function(index) {\r\n\r\n var _ = this,\r\n navigables, prevNavigable;\r\n\r\n navigables = _.getNavigableIndexes();\r\n prevNavigable = 0;\r\n if (index > navigables[navigables.length - 1]) {\r\n index = navigables[navigables.length - 1];\r\n } else {\r\n for (var n in navigables) {\r\n if (index < navigables[n]) {\r\n index = prevNavigable;\r\n break;\r\n }\r\n prevNavigable = navigables[n];\r\n }\r\n }\r\n\r\n return index;\r\n };\r\n\r\n Slick.prototype.cleanUpEvents = function() {\r\n\r\n var _ = this;\r\n\r\n if (_.options.dots && _.$dots !== null) {\r\n\r\n $('li', _.$dots)\r\n .off('click.slick', _.changeSlide)\r\n .off('mouseenter.slick', $.proxy(_.interrupt, _, true))\r\n .off('mouseleave.slick', $.proxy(_.interrupt, _, false));\r\n\r\n }\r\n\r\n _.$slider.off('focus.slick blur.slick');\r\n\r\n if (_.options.arrows === true && _.slideCount > _.options.slidesToShow) {\r\n _.$prevArrow && _.$prevArrow.off('click.slick', _.changeSlide);\r\n _.$nextArrow && _.$nextArrow.off('click.slick', _.changeSlide);\r\n }\r\n\r\n _.$list.off('touchstart.slick mousedown.slick', _.swipeHandler);\r\n _.$list.off('touchmove.slick mousemove.slick', _.swipeHandler);\r\n _.$list.off('touchend.slick mouseup.slick', _.swipeHandler);\r\n _.$list.off('touchcancel.slick mouseleave.slick', _.swipeHandler);\r\n\r\n _.$list.off('click.slick', _.clickHandler);\r\n\r\n $(document).off(_.visibilityChange, _.visibility);\r\n\r\n _.cleanUpSlideEvents();\r\n\r\n if (_.options.accessibility === true) {\r\n _.$list.off('keydown.slick', _.keyHandler);\r\n }\r\n\r\n if (_.options.focusOnSelect === true) {\r\n $(_.$slideTrack).children().off('click.slick', _.selectHandler);\r\n }\r\n\r\n $(window).off('orientationchange.slick.slick-' + _.instanceUid, _.orientationChange);\r\n\r\n $(window).off('resize.slick.slick-' + _.instanceUid, _.resize);\r\n\r\n $('[draggable!=true]', _.$slideTrack).off('dragstart', _.preventDefault);\r\n\r\n $(window).off('load.slick.slick-' + _.instanceUid, _.setPosition);\r\n $(document).off('ready.slick.slick-' + _.instanceUid, _.setPosition);\r\n\r\n };\r\n\r\n Slick.prototype.cleanUpSlideEvents = function() {\r\n\r\n var _ = this;\r\n\r\n _.$list.off('mouseenter.slick', $.proxy(_.interrupt, _, true));\r\n _.$list.off('mouseleave.slick', $.proxy(_.interrupt, _, false));\r\n\r\n };\r\n\r\n Slick.prototype.cleanUpRows = function() {\r\n\r\n var _ = this, originalSlides;\r\n\r\n if(_.options.rows > 1) {\r\n originalSlides = _.$slides.children().children();\r\n originalSlides.removeAttr('style');\r\n _.$slider.empty().append(originalSlides);\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.clickHandler = function(event) {\r\n\r\n var _ = this;\r\n\r\n if (_.shouldClick === false) {\r\n event.stopImmediatePropagation();\r\n event.stopPropagation();\r\n event.preventDefault();\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.destroy = function(refresh) {\r\n\r\n var _ = this;\r\n\r\n _.autoPlayClear();\r\n\r\n _.touchObject = {};\r\n\r\n _.cleanUpEvents();\r\n\r\n $('.slick-cloned', _.$slider).detach();\r\n\r\n if (_.$dots) {\r\n _.$dots.remove();\r\n }\r\n\r\n\r\n if ( _.$prevArrow && _.$prevArrow.length ) {\r\n\r\n _.$prevArrow\r\n .removeClass('slick-disabled slick-arrow slick-hidden')\r\n .removeAttr('aria-hidden aria-disabled tabindex')\r\n .css('display','');\r\n\r\n if ( _.htmlExpr.test( _.options.prevArrow )) {\r\n _.$prevArrow.remove();\r\n }\r\n }\r\n\r\n if ( _.$nextArrow && _.$nextArrow.length ) {\r\n\r\n _.$nextArrow\r\n .removeClass('slick-disabled slick-arrow slick-hidden')\r\n .removeAttr('aria-hidden aria-disabled tabindex')\r\n .css('display','');\r\n\r\n if ( _.htmlExpr.test( _.options.nextArrow )) {\r\n _.$nextArrow.remove();\r\n }\r\n\r\n }\r\n\r\n\r\n if (_.$slides) {\r\n\r\n _.$slides\r\n .removeClass('slick-slide slick-active slick-center slick-visible slick-current')\r\n .removeAttr('aria-hidden')\r\n .removeAttr('data-slick-index')\r\n .each(function(){\r\n $(this).attr('style', $(this).data('originalStyling'));\r\n });\r\n\r\n _.$slideTrack.children(this.options.slide).detach();\r\n\r\n _.$slideTrack.detach();\r\n\r\n _.$list.detach();\r\n\r\n _.$slider.append(_.$slides);\r\n }\r\n\r\n _.cleanUpRows();\r\n\r\n _.$slider.removeClass('slick-slider');\r\n _.$slider.removeClass('slick-initialized');\r\n _.$slider.removeClass('slick-dotted');\r\n\r\n _.unslicked = true;\r\n\r\n if(!refresh) {\r\n _.$slider.trigger('destroy', [_]);\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.disableTransition = function(slide) {\r\n\r\n var _ = this,\r\n transition = {};\r\n\r\n transition[_.transitionType] = '';\r\n\r\n if (_.options.fade === false) {\r\n _.$slideTrack.css(transition);\r\n } else {\r\n _.$slides.eq(slide).css(transition);\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.fadeSlide = function(slideIndex, callback) {\r\n\r\n var _ = this;\r\n\r\n if (_.cssTransitions === false) {\r\n\r\n _.$slides.eq(slideIndex).css({\r\n zIndex: _.options.zIndex\r\n });\r\n\r\n _.$slides.eq(slideIndex).animate({\r\n opacity: 1\r\n }, _.options.speed, _.options.easing, callback);\r\n\r\n } else {\r\n\r\n _.applyTransition(slideIndex);\r\n\r\n _.$slides.eq(slideIndex).css({\r\n opacity: 1,\r\n zIndex: _.options.zIndex\r\n });\r\n\r\n if (callback) {\r\n setTimeout(function() {\r\n\r\n _.disableTransition(slideIndex);\r\n\r\n callback.call();\r\n }, _.options.speed);\r\n }\r\n\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.fadeSlideOut = function(slideIndex) {\r\n\r\n var _ = this;\r\n\r\n if (_.cssTransitions === false) {\r\n\r\n _.$slides.eq(slideIndex).animate({\r\n opacity: 0,\r\n zIndex: _.options.zIndex - 2\r\n }, _.options.speed, _.options.easing);\r\n\r\n } else {\r\n\r\n _.applyTransition(slideIndex);\r\n\r\n _.$slides.eq(slideIndex).css({\r\n opacity: 0,\r\n zIndex: _.options.zIndex - 2\r\n });\r\n\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.filterSlides = Slick.prototype.slickFilter = function(filter) {\r\n\r\n var _ = this;\r\n\r\n if (filter !== null) {\r\n\r\n _.$slidesCache = _.$slides;\r\n\r\n _.unload();\r\n\r\n _.$slideTrack.children(this.options.slide).detach();\r\n\r\n _.$slidesCache.filter(filter).appendTo(_.$slideTrack);\r\n\r\n _.reinit();\r\n\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.focusHandler = function() {\r\n\r\n var _ = this;\r\n\r\n _.$slider\r\n .off('focus.slick blur.slick')\r\n .on('focus.slick blur.slick',\r\n '*:not(.slick-arrow)', function(event) {\r\n\r\n event.stopImmediatePropagation();\r\n var $sf = $(this);\r\n\r\n setTimeout(function() {\r\n\r\n if( _.options.pauseOnFocus ) {\r\n _.focussed = $sf.is(':focus');\r\n _.autoPlay();\r\n }\r\n\r\n }, 0);\r\n\r\n });\r\n };\r\n\r\n Slick.prototype.getCurrent = Slick.prototype.slickCurrentSlide = function() {\r\n\r\n var _ = this;\r\n return _.currentSlide;\r\n\r\n };\r\n\r\n Slick.prototype.getDotCount = function() {\r\n\r\n var _ = this;\r\n\r\n var breakPoint = 0;\r\n var counter = 0;\r\n var pagerQty = 0;\r\n\r\n if (_.options.infinite === true) {\r\n while (breakPoint < _.slideCount) {\r\n ++pagerQty;\r\n breakPoint = counter + _.options.slidesToScroll;\r\n counter += _.options.slidesToScroll <= _.options.slidesToShow ? _.options.slidesToScroll : _.options.slidesToShow;\r\n }\r\n } else if (_.options.centerMode === true) {\r\n pagerQty = _.slideCount;\r\n } else if(!_.options.asNavFor) {\r\n pagerQty = 1 + Math.ceil((_.slideCount - _.options.slidesToShow) / _.options.slidesToScroll);\r\n }else {\r\n while (breakPoint < _.slideCount) {\r\n ++pagerQty;\r\n breakPoint = counter + _.options.slidesToScroll;\r\n counter += _.options.slidesToScroll <= _.options.slidesToShow ? _.options.slidesToScroll : _.options.slidesToShow;\r\n }\r\n }\r\n\r\n return pagerQty - 1;\r\n\r\n };\r\n\r\n Slick.prototype.getLeft = function(slideIndex) {\r\n\r\n var _ = this,\r\n targetLeft,\r\n verticalHeight,\r\n verticalOffset = 0,\r\n targetSlide;\r\n\r\n _.slideOffset = 0;\r\n verticalHeight = _.$slides.first().outerHeight(true);\r\n\r\n if (_.options.infinite === true) {\r\n if (_.slideCount > _.options.slidesToShow) {\r\n _.slideOffset = (_.slideWidth * _.options.slidesToShow) * -1;\r\n verticalOffset = (verticalHeight * _.options.slidesToShow) * -1;\r\n }\r\n if (_.slideCount % _.options.slidesToScroll !== 0) {\r\n if (slideIndex + _.options.slidesToScroll > _.slideCount && _.slideCount > _.options.slidesToShow) {\r\n if (slideIndex > _.slideCount) {\r\n _.slideOffset = ((_.options.slidesToShow - (slideIndex - _.slideCount)) * _.slideWidth) * -1;\r\n verticalOffset = ((_.options.slidesToShow - (slideIndex - _.slideCount)) * verticalHeight) * -1;\r\n } else {\r\n _.slideOffset = ((_.slideCount % _.options.slidesToScroll) * _.slideWidth) * -1;\r\n verticalOffset = ((_.slideCount % _.options.slidesToScroll) * verticalHeight) * -1;\r\n }\r\n }\r\n }\r\n } else {\r\n if (slideIndex + _.options.slidesToShow > _.slideCount) {\r\n _.slideOffset = ((slideIndex + _.options.slidesToShow) - _.slideCount) * _.slideWidth;\r\n verticalOffset = ((slideIndex + _.options.slidesToShow) - _.slideCount) * verticalHeight;\r\n }\r\n }\r\n\r\n if (_.slideCount <= _.options.slidesToShow) {\r\n _.slideOffset = 0;\r\n verticalOffset = 0;\r\n }\r\n\r\n if (_.options.centerMode === true && _.options.infinite === true) {\r\n _.slideOffset += _.slideWidth * Math.floor(_.options.slidesToShow / 2) - _.slideWidth;\r\n } else if (_.options.centerMode === true) {\r\n _.slideOffset = 0;\r\n _.slideOffset += _.slideWidth * Math.floor(_.options.slidesToShow / 2);\r\n }\r\n\r\n if (_.options.vertical === false) {\r\n targetLeft = ((slideIndex * _.slideWidth) * -1) + _.slideOffset;\r\n } else {\r\n targetLeft = ((slideIndex * verticalHeight) * -1) + verticalOffset;\r\n }\r\n\r\n if (_.options.variableWidth === true) {\r\n\r\n if (_.slideCount <= _.options.slidesToShow || _.options.infinite === false) {\r\n targetSlide = _.$slideTrack.children('.slick-slide').eq(slideIndex);\r\n } else {\r\n targetSlide = _.$slideTrack.children('.slick-slide').eq(slideIndex + _.options.slidesToShow);\r\n }\r\n\r\n if (_.options.rtl === true) {\r\n if (targetSlide[0]) {\r\n targetLeft = (_.$slideTrack.width() - targetSlide[0].offsetLeft - targetSlide.width()) * -1;\r\n } else {\r\n targetLeft = 0;\r\n }\r\n } else {\r\n targetLeft = targetSlide[0] ? targetSlide[0].offsetLeft * -1 : 0;\r\n }\r\n\r\n if (_.options.centerMode === true) {\r\n if (_.slideCount <= _.options.slidesToShow || _.options.infinite === false) {\r\n targetSlide = _.$slideTrack.children('.slick-slide').eq(slideIndex);\r\n } else {\r\n targetSlide = _.$slideTrack.children('.slick-slide').eq(slideIndex + _.options.slidesToShow + 1);\r\n }\r\n\r\n if (_.options.rtl === true) {\r\n if (targetSlide[0]) {\r\n targetLeft = (_.$slideTrack.width() - targetSlide[0].offsetLeft - targetSlide.width()) * -1;\r\n } else {\r\n targetLeft = 0;\r\n }\r\n } else {\r\n targetLeft = targetSlide[0] ? targetSlide[0].offsetLeft * -1 : 0;\r\n }\r\n\r\n targetLeft += (_.$list.width() - targetSlide.outerWidth()) / 2;\r\n }\r\n }\r\n\r\n return targetLeft;\r\n\r\n };\r\n\r\n Slick.prototype.getOption = Slick.prototype.slickGetOption = function(option) {\r\n\r\n var _ = this;\r\n\r\n return _.options[option];\r\n\r\n };\r\n\r\n Slick.prototype.getNavigableIndexes = function() {\r\n\r\n var _ = this,\r\n breakPoint = 0,\r\n counter = 0,\r\n indexes = [],\r\n max;\r\n\r\n if (_.options.infinite === false) {\r\n max = _.slideCount;\r\n } else {\r\n breakPoint = _.options.slidesToScroll * -1;\r\n counter = _.options.slidesToScroll * -1;\r\n max = _.slideCount * 2;\r\n }\r\n\r\n while (breakPoint < max) {\r\n indexes.push(breakPoint);\r\n breakPoint = counter + _.options.slidesToScroll;\r\n counter += _.options.slidesToScroll <= _.options.slidesToShow ? _.options.slidesToScroll : _.options.slidesToShow;\r\n }\r\n\r\n return indexes;\r\n\r\n };\r\n\r\n Slick.prototype.getSlick = function() {\r\n\r\n return this;\r\n\r\n };\r\n\r\n Slick.prototype.getSlideCount = function() {\r\n\r\n var _ = this,\r\n slidesTraversed, swipedSlide, centerOffset;\r\n\r\n centerOffset = _.options.centerMode === true ? _.slideWidth * Math.floor(_.options.slidesToShow / 2) : 0;\r\n\r\n if (_.options.swipeToSlide === true) {\r\n _.$slideTrack.find('.slick-slide').each(function(index, slide) {\r\n if (slide.offsetLeft - centerOffset + ($(slide).outerWidth() / 2) > (_.swipeLeft * -1)) {\r\n swipedSlide = slide;\r\n return false;\r\n }\r\n });\r\n\r\n slidesTraversed = Math.abs($(swipedSlide).attr('data-slick-index') - _.currentSlide) || 1;\r\n\r\n return slidesTraversed;\r\n\r\n } else {\r\n return _.options.slidesToScroll;\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.goTo = Slick.prototype.slickGoTo = function(slide, dontAnimate) {\r\n\r\n var _ = this;\r\n\r\n _.changeSlide({\r\n data: {\r\n message: 'index',\r\n index: parseInt(slide)\r\n }\r\n }, dontAnimate);\r\n\r\n };\r\n\r\n Slick.prototype.init = function(creation) {\r\n\r\n var _ = this;\r\n\r\n if (!$(_.$slider).hasClass('slick-initialized')) {\r\n\r\n $(_.$slider).addClass('slick-initialized');\r\n\r\n _.buildRows();\r\n _.buildOut();\r\n _.setProps();\r\n _.startLoad();\r\n _.loadSlider();\r\n _.initializeEvents();\r\n _.updateArrows();\r\n _.updateDots();\r\n _.checkResponsive(true);\r\n _.focusHandler();\r\n\r\n }\r\n\r\n if (creation) {\r\n _.$slider.trigger('init', [_]);\r\n }\r\n\r\n if (_.options.accessibility === true) {\r\n _.initADA();\r\n }\r\n\r\n if ( _.options.autoplay ) {\r\n\r\n _.paused = false;\r\n _.autoPlay();\r\n\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.initADA = function() {\r\n var _ = this;\r\n _.$slides.add(_.$slideTrack.find('.slick-cloned')).attr({\r\n 'aria-hidden': 'true',\r\n 'tabindex': '-1'\r\n }).find('a, input, button, select').attr({\r\n 'tabindex': '-1'\r\n });\r\n\r\n _.$slideTrack.attr('role', 'listbox');\r\n\r\n _.$slides.not(_.$slideTrack.find('.slick-cloned')).each(function(i) {\r\n $(this).attr({\r\n 'role': 'option',\r\n 'aria-describedby': 'slick-slide' + _.instanceUid + i + ''\r\n });\r\n });\r\n\r\n if (_.$dots !== null) {\r\n _.$dots.attr('role', 'tablist').find('li').each(function(i) {\r\n $(this).attr({\r\n 'role': 'presentation',\r\n 'aria-selected': 'false',\r\n 'aria-controls': 'navigation' + _.instanceUid + i + '',\r\n 'id': 'slick-slide' + _.instanceUid + i + ''\r\n });\r\n })\r\n .first().attr('aria-selected', 'true').end()\r\n .find('button').attr('role', 'button').end()\r\n .closest('div').attr('role', 'toolbar');\r\n }\r\n _.activateADA();\r\n\r\n };\r\n\r\n Slick.prototype.initArrowEvents = function() {\r\n\r\n var _ = this;\r\n\r\n if (_.options.arrows === true && _.slideCount > _.options.slidesToShow) {\r\n _.$prevArrow\r\n .off('click.slick')\r\n .on('click.slick', {\r\n message: 'previous'\r\n }, _.changeSlide);\r\n _.$nextArrow\r\n .off('click.slick')\r\n .on('click.slick', {\r\n message: 'next'\r\n }, _.changeSlide);\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.initDotEvents = function() {\r\n\r\n var _ = this;\r\n\r\n if (_.options.dots === true && _.slideCount > _.options.slidesToShow) {\r\n $('li', _.$dots).on('click.slick', {\r\n message: 'index'\r\n }, _.changeSlide);\r\n }\r\n\r\n if ( _.options.dots === true && _.options.pauseOnDotsHover === true ) {\r\n\r\n $('li', _.$dots)\r\n .on('mouseenter.slick', $.proxy(_.interrupt, _, true))\r\n .on('mouseleave.slick', $.proxy(_.interrupt, _, false));\r\n\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.initSlideEvents = function() {\r\n\r\n var _ = this;\r\n\r\n if ( _.options.pauseOnHover ) {\r\n\r\n _.$list.on('mouseenter.slick', $.proxy(_.interrupt, _, true));\r\n _.$list.on('mouseleave.slick', $.proxy(_.interrupt, _, false));\r\n\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.initializeEvents = function() {\r\n\r\n var _ = this;\r\n\r\n _.initArrowEvents();\r\n\r\n _.initDotEvents();\r\n _.initSlideEvents();\r\n\r\n _.$list.on('touchstart.slick mousedown.slick', {\r\n action: 'start'\r\n }, _.swipeHandler);\r\n _.$list.on('touchmove.slick mousemove.slick', {\r\n action: 'move'\r\n }, _.swipeHandler);\r\n _.$list.on('touchend.slick mouseup.slick', {\r\n action: 'end'\r\n }, _.swipeHandler);\r\n _.$list.on('touchcancel.slick mouseleave.slick', {\r\n action: 'end'\r\n }, _.swipeHandler);\r\n\r\n _.$list.on('click.slick', _.clickHandler);\r\n\r\n $(document).on(_.visibilityChange, $.proxy(_.visibility, _));\r\n\r\n if (_.options.accessibility === true) {\r\n _.$list.on('keydown.slick', _.keyHandler);\r\n }\r\n\r\n if (_.options.focusOnSelect === true) {\r\n $(_.$slideTrack).children().on('click.slick', _.selectHandler);\r\n }\r\n\r\n $(window).on('orientationchange.slick.slick-' + _.instanceUid, $.proxy(_.orientationChange, _));\r\n\r\n $(window).on('resize.slick.slick-' + _.instanceUid, $.proxy(_.resize, _));\r\n\r\n $('[draggable!=true]', _.$slideTrack).on('dragstart', _.preventDefault);\r\n\r\n $(window).on('load.slick.slick-' + _.instanceUid, _.setPosition);\r\n $(document).on('ready.slick.slick-' + _.instanceUid, _.setPosition);\r\n\r\n };\r\n\r\n Slick.prototype.initUI = function() {\r\n\r\n var _ = this;\r\n\r\n if (_.options.arrows === true && _.slideCount > _.options.slidesToShow) {\r\n\r\n _.$prevArrow.show();\r\n _.$nextArrow.show();\r\n\r\n }\r\n\r\n if (_.options.dots === true && _.slideCount > _.options.slidesToShow) {\r\n\r\n _.$dots.show();\r\n\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.keyHandler = function(event) {\r\n\r\n var _ = this;\r\n //Dont slide if the cursor is inside the form fields and arrow keys are pressed\r\n if(!event.target.tagName.match('TEXTAREA|INPUT|SELECT')) {\r\n if (event.keyCode === 37 && _.options.accessibility === true) {\r\n _.changeSlide({\r\n data: {\r\n message: _.options.rtl === true ? 'next' : 'previous'\r\n }\r\n });\r\n } else if (event.keyCode === 39 && _.options.accessibility === true) {\r\n _.changeSlide({\r\n data: {\r\n message: _.options.rtl === true ? 'previous' : 'next'\r\n }\r\n });\r\n }\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.lazyLoad = function() {\r\n\r\n var _ = this,\r\n loadRange, cloneRange, rangeStart, rangeEnd;\r\n\r\n function loadImages(imagesScope) {\r\n\r\n $('img[data-lazy]', imagesScope).each(function() {\r\n\r\n var image = $(this),\r\n imageSource = $(this).attr('data-lazy'),\r\n imageToLoad = document.createElement('img');\r\n\r\n imageToLoad.onload = function() {\r\n\r\n image\r\n .animate({ opacity: 0 }, 100, function() {\r\n image\r\n .attr('src', imageSource)\r\n .animate({ opacity: 1 }, 200, function() {\r\n image\r\n .removeAttr('data-lazy')\r\n .removeClass('slick-loading');\r\n });\r\n _.$slider.trigger('lazyLoaded', [_, image, imageSource]);\r\n });\r\n\r\n };\r\n\r\n imageToLoad.onerror = function() {\r\n\r\n image\r\n .removeAttr( 'data-lazy' )\r\n .removeClass( 'slick-loading' )\r\n .addClass( 'slick-lazyload-error' );\r\n\r\n _.$slider.trigger('lazyLoadError', [ _, image, imageSource ]);\r\n\r\n };\r\n\r\n imageToLoad.src = imageSource;\r\n\r\n });\r\n\r\n }\r\n\r\n if (_.options.centerMode === true) {\r\n if (_.options.infinite === true) {\r\n rangeStart = _.currentSlide + (_.options.slidesToShow / 2 + 1);\r\n rangeEnd = rangeStart + _.options.slidesToShow + 2;\r\n } else {\r\n rangeStart = Math.max(0, _.currentSlide - (_.options.slidesToShow / 2 + 1));\r\n rangeEnd = 2 + (_.options.slidesToShow / 2 + 1) + _.currentSlide;\r\n }\r\n } else {\r\n rangeStart = _.options.infinite ? _.options.slidesToShow + _.currentSlide : _.currentSlide;\r\n rangeEnd = Math.ceil(rangeStart + _.options.slidesToShow);\r\n if (_.options.fade === true) {\r\n if (rangeStart > 0) rangeStart--;\r\n if (rangeEnd <= _.slideCount) rangeEnd++;\r\n }\r\n }\r\n\r\n loadRange = _.$slider.find('.slick-slide').slice(rangeStart, rangeEnd);\r\n loadImages(loadRange);\r\n\r\n if (_.slideCount <= _.options.slidesToShow) {\r\n cloneRange = _.$slider.find('.slick-slide');\r\n loadImages(cloneRange);\r\n } else\r\n if (_.currentSlide >= _.slideCount - _.options.slidesToShow) {\r\n cloneRange = _.$slider.find('.slick-cloned').slice(0, _.options.slidesToShow);\r\n loadImages(cloneRange);\r\n } else if (_.currentSlide === 0) {\r\n cloneRange = _.$slider.find('.slick-cloned').slice(_.options.slidesToShow * -1);\r\n loadImages(cloneRange);\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.loadSlider = function() {\r\n\r\n var _ = this;\r\n\r\n _.setPosition();\r\n\r\n _.$slideTrack.css({\r\n opacity: 1\r\n });\r\n\r\n _.$slider.removeClass('slick-loading');\r\n\r\n _.initUI();\r\n\r\n if (_.options.lazyLoad === 'progressive') {\r\n _.progressiveLazyLoad();\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.next = Slick.prototype.slickNext = function() {\r\n\r\n var _ = this;\r\n\r\n _.changeSlide({\r\n data: {\r\n message: 'next'\r\n }\r\n });\r\n\r\n };\r\n\r\n Slick.prototype.orientationChange = function() {\r\n\r\n var _ = this;\r\n\r\n _.checkResponsive();\r\n _.setPosition();\r\n\r\n };\r\n\r\n Slick.prototype.pause = Slick.prototype.slickPause = function() {\r\n\r\n var _ = this;\r\n\r\n _.autoPlayClear();\r\n _.paused = true;\r\n\r\n };\r\n\r\n Slick.prototype.play = Slick.prototype.slickPlay = function() {\r\n\r\n var _ = this;\r\n\r\n _.autoPlay();\r\n _.options.autoplay = true;\r\n _.paused = false;\r\n _.focussed = false;\r\n _.interrupted = false;\r\n\r\n };\r\n\r\n Slick.prototype.postSlide = function(index) {\r\n\r\n var _ = this;\r\n\r\n if( !_.unslicked ) {\r\n\r\n _.$slider.trigger('afterChange', [_, index]);\r\n\r\n _.animating = false;\r\n\r\n _.setPosition();\r\n\r\n _.swipeLeft = null;\r\n\r\n if ( _.options.autoplay ) {\r\n _.autoPlay();\r\n }\r\n\r\n if (_.options.accessibility === true) {\r\n _.initADA();\r\n }\r\n\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.prev = Slick.prototype.slickPrev = function() {\r\n\r\n var _ = this;\r\n\r\n _.changeSlide({\r\n data: {\r\n message: 'previous'\r\n }\r\n });\r\n\r\n };\r\n\r\n Slick.prototype.preventDefault = function(event) {\r\n\r\n event.preventDefault();\r\n\r\n };\r\n\r\n Slick.prototype.progressiveLazyLoad = function( tryCount ) {\r\n\r\n tryCount = tryCount || 1;\r\n\r\n var _ = this,\r\n $imgsToLoad = $( 'img[data-lazy]', _.$slider ),\r\n image,\r\n imageSource,\r\n imageToLoad;\r\n\r\n if ( $imgsToLoad.length ) {\r\n\r\n image = $imgsToLoad.first();\r\n imageSource = image.attr('data-lazy');\r\n imageToLoad = document.createElement('img');\r\n\r\n imageToLoad.onload = function() {\r\n\r\n image\r\n .attr( 'src', imageSource )\r\n .removeAttr('data-lazy')\r\n .removeClass('slick-loading');\r\n\r\n if ( _.options.adaptiveHeight === true ) {\r\n _.setPosition();\r\n }\r\n\r\n _.$slider.trigger('lazyLoaded', [ _, image, imageSource ]);\r\n _.progressiveLazyLoad();\r\n\r\n };\r\n\r\n imageToLoad.onerror = function() {\r\n\r\n if ( tryCount < 3 ) {\r\n\r\n /**\r\n * try to load the image 3 times,\r\n * leave a slight delay so we don't get\r\n * servers blocking the request.\r\n */\r\n setTimeout( function() {\r\n _.progressiveLazyLoad( tryCount + 1 );\r\n }, 500 );\r\n\r\n } else {\r\n\r\n image\r\n .removeAttr( 'data-lazy' )\r\n .removeClass( 'slick-loading' )\r\n .addClass( 'slick-lazyload-error' );\r\n\r\n _.$slider.trigger('lazyLoadError', [ _, image, imageSource ]);\r\n\r\n _.progressiveLazyLoad();\r\n\r\n }\r\n\r\n };\r\n\r\n imageToLoad.src = imageSource;\r\n\r\n } else {\r\n\r\n _.$slider.trigger('allImagesLoaded', [ _ ]);\r\n\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.refresh = function( initializing ) {\r\n\r\n var _ = this, currentSlide, lastVisibleIndex;\r\n\r\n lastVisibleIndex = _.slideCount - _.options.slidesToShow;\r\n\r\n // in non-infinite sliders, we don't want to go past the\r\n // last visible index.\r\n if( !_.options.infinite && ( _.currentSlide > lastVisibleIndex )) {\r\n _.currentSlide = lastVisibleIndex;\r\n }\r\n\r\n // if less slides than to show, go to start.\r\n if ( _.slideCount <= _.options.slidesToShow ) {\r\n _.currentSlide = 0;\r\n\r\n }\r\n\r\n currentSlide = _.currentSlide;\r\n\r\n _.destroy(true);\r\n\r\n $.extend(_, _.initials, { currentSlide: currentSlide });\r\n\r\n _.init();\r\n\r\n if( !initializing ) {\r\n\r\n _.changeSlide({\r\n data: {\r\n message: 'index',\r\n index: currentSlide\r\n }\r\n }, false);\r\n\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.registerBreakpoints = function() {\r\n\r\n var _ = this, breakpoint, currentBreakpoint, l,\r\n responsiveSettings = _.options.responsive || null;\r\n\r\n if ( $.type(responsiveSettings) === 'array' && responsiveSettings.length ) {\r\n\r\n _.respondTo = _.options.respondTo || 'window';\r\n\r\n for ( breakpoint in responsiveSettings ) {\r\n\r\n l = _.breakpoints.length-1;\r\n currentBreakpoint = responsiveSettings[breakpoint].breakpoint;\r\n\r\n if (responsiveSettings.hasOwnProperty(breakpoint)) {\r\n\r\n // loop through the breakpoints and cut out any existing\r\n // ones with the same breakpoint number, we don't want dupes.\r\n while( l >= 0 ) {\r\n if( _.breakpoints[l] && _.breakpoints[l] === currentBreakpoint ) {\r\n _.breakpoints.splice(l,1);\r\n }\r\n l--;\r\n }\r\n\r\n _.breakpoints.push(currentBreakpoint);\r\n _.breakpointSettings[currentBreakpoint] = responsiveSettings[breakpoint].settings;\r\n\r\n }\r\n\r\n }\r\n\r\n _.breakpoints.sort(function(a, b) {\r\n return ( _.options.mobileFirst ) ? a-b : b-a;\r\n });\r\n\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.reinit = function() {\r\n\r\n var _ = this;\r\n\r\n _.$slides =\r\n _.$slideTrack\r\n .children(_.options.slide)\r\n .addClass('slick-slide');\r\n\r\n _.slideCount = _.$slides.length;\r\n\r\n if (_.currentSlide >= _.slideCount && _.currentSlide !== 0) {\r\n _.currentSlide = _.currentSlide - _.options.slidesToScroll;\r\n }\r\n\r\n if (_.slideCount <= _.options.slidesToShow) {\r\n _.currentSlide = 0;\r\n }\r\n\r\n _.registerBreakpoints();\r\n\r\n _.setProps();\r\n _.setupInfinite();\r\n _.buildArrows();\r\n _.updateArrows();\r\n _.initArrowEvents();\r\n _.buildDots();\r\n _.updateDots();\r\n _.initDotEvents();\r\n _.cleanUpSlideEvents();\r\n _.initSlideEvents();\r\n\r\n _.checkResponsive(false, true);\r\n\r\n if (_.options.focusOnSelect === true) {\r\n $(_.$slideTrack).children().on('click.slick', _.selectHandler);\r\n }\r\n\r\n _.setSlideClasses(typeof _.currentSlide === 'number' ? _.currentSlide : 0);\r\n\r\n _.setPosition();\r\n _.focusHandler();\r\n\r\n _.paused = !_.options.autoplay;\r\n _.autoPlay();\r\n\r\n _.$slider.trigger('reInit', [_]);\r\n\r\n };\r\n\r\n Slick.prototype.resize = function() {\r\n\r\n var _ = this;\r\n\r\n if ($(window).width() !== _.windowWidth) {\r\n clearTimeout(_.windowDelay);\r\n _.windowDelay = window.setTimeout(function() {\r\n _.windowWidth = $(window).width();\r\n _.checkResponsive();\r\n if( !_.unslicked ) { _.setPosition(); }\r\n }, 50);\r\n }\r\n };\r\n\r\n Slick.prototype.removeSlide = Slick.prototype.slickRemove = function(index, removeBefore, removeAll) {\r\n\r\n var _ = this;\r\n\r\n if (typeof(index) === 'boolean') {\r\n removeBefore = index;\r\n index = removeBefore === true ? 0 : _.slideCount - 1;\r\n } else {\r\n index = removeBefore === true ? --index : index;\r\n }\r\n\r\n if (_.slideCount < 1 || index < 0 || index > _.slideCount - 1) {\r\n return false;\r\n }\r\n\r\n _.unload();\r\n\r\n if (removeAll === true) {\r\n _.$slideTrack.children().remove();\r\n } else {\r\n _.$slideTrack.children(this.options.slide).eq(index).remove();\r\n }\r\n\r\n _.$slides = _.$slideTrack.children(this.options.slide);\r\n\r\n _.$slideTrack.children(this.options.slide).detach();\r\n\r\n _.$slideTrack.append(_.$slides);\r\n\r\n _.$slidesCache = _.$slides;\r\n\r\n _.reinit();\r\n\r\n };\r\n\r\n Slick.prototype.setCSS = function(position) {\r\n\r\n var _ = this,\r\n positionProps = {},\r\n x, y;\r\n\r\n if (_.options.rtl === true) {\r\n position = -position;\r\n }\r\n x = _.positionProp == 'left' ? Math.ceil(position) + 'px' : '0px';\r\n y = _.positionProp == 'top' ? Math.ceil(position) + 'px' : '0px';\r\n\r\n positionProps[_.positionProp] = position;\r\n\r\n if (_.transformsEnabled === false) {\r\n _.$slideTrack.css(positionProps);\r\n } else {\r\n positionProps = {};\r\n if (_.cssTransitions === false) {\r\n positionProps[_.animType] = 'translate(' + x + ', ' + y + ')';\r\n _.$slideTrack.css(positionProps);\r\n } else {\r\n positionProps[_.animType] = 'translate3d(' + x + ', ' + y + ', 0px)';\r\n _.$slideTrack.css(positionProps);\r\n }\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.setDimensions = function() {\r\n\r\n var _ = this;\r\n\r\n if (_.options.vertical === false) {\r\n if (_.options.centerMode === true) {\r\n _.$list.css({\r\n padding: ('0px ' + _.options.centerPadding)\r\n });\r\n }\r\n } else {\r\n _.$list.height(_.$slides.first().outerHeight(true) * _.options.slidesToShow);\r\n if (_.options.centerMode === true) {\r\n _.$list.css({\r\n padding: (_.options.centerPadding + ' 0px')\r\n });\r\n }\r\n }\r\n\r\n _.listWidth = _.$list.width();\r\n _.listHeight = _.$list.height();\r\n\r\n\r\n if (_.options.vertical === false && _.options.variableWidth === false) {\r\n _.slideWidth = Math.ceil(_.listWidth / _.options.slidesToShow);\r\n _.$slideTrack.width(Math.ceil((_.slideWidth * _.$slideTrack.children('.slick-slide').length)));\r\n\r\n } else if (_.options.variableWidth === true) {\r\n _.$slideTrack.width(5000 * _.slideCount);\r\n } else {\r\n _.slideWidth = Math.ceil(_.listWidth);\r\n _.$slideTrack.height(Math.ceil((_.$slides.first().outerHeight(true) * _.$slideTrack.children('.slick-slide').length)));\r\n }\r\n\r\n var offset = _.$slides.first().outerWidth(true) - _.$slides.first().width();\r\n if (_.options.variableWidth === false) _.$slideTrack.children('.slick-slide').width(_.slideWidth - offset);\r\n\r\n };\r\n\r\n Slick.prototype.setFade = function() {\r\n\r\n var _ = this,\r\n targetLeft;\r\n\r\n _.$slides.each(function(index, element) {\r\n targetLeft = (_.slideWidth * index) * -1;\r\n if (_.options.rtl === true) {\r\n $(element).css({\r\n position: 'relative',\r\n right: targetLeft,\r\n top: 0,\r\n zIndex: _.options.zIndex - 2,\r\n opacity: 0\r\n });\r\n } else {\r\n $(element).css({\r\n position: 'relative',\r\n left: targetLeft,\r\n top: 0,\r\n zIndex: _.options.zIndex - 2,\r\n opacity: 0\r\n });\r\n }\r\n });\r\n\r\n _.$slides.eq(_.currentSlide).css({\r\n zIndex: _.options.zIndex - 1,\r\n opacity: 1\r\n });\r\n\r\n };\r\n\r\n Slick.prototype.setHeight = function() {\r\n\r\n var _ = this;\r\n\r\n if (_.options.slidesToShow === 1 && _.options.adaptiveHeight === true && _.options.vertical === false) {\r\n var targetHeight = _.$slides.eq(_.currentSlide).outerHeight(true);\r\n _.$list.css('height', targetHeight);\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.setOption =\r\n Slick.prototype.slickSetOption = function() {\r\n\r\n /**\r\n * accepts arguments in format of:\r\n *\r\n * - for changing a single option's value:\r\n * .slick(\"setOption\", option, value, refresh )\r\n *\r\n * - for changing a set of responsive options:\r\n * .slick(\"setOption\", 'responsive', [{}, ...], refresh )\r\n *\r\n * - for updating multiple values at once (not responsive)\r\n * .slick(\"setOption\", { 'option': value, ... }, refresh )\r\n */\r\n\r\n var _ = this, l, item, option, value, refresh = false, type;\r\n\r\n if( $.type( arguments[0] ) === 'object' ) {\r\n\r\n option = arguments[0];\r\n refresh = arguments[1];\r\n type = 'multiple';\r\n\r\n } else if ( $.type( arguments[0] ) === 'string' ) {\r\n\r\n option = arguments[0];\r\n value = arguments[1];\r\n refresh = arguments[2];\r\n\r\n if ( arguments[0] === 'responsive' && $.type( arguments[1] ) === 'array' ) {\r\n\r\n type = 'responsive';\r\n\r\n } else if ( typeof arguments[1] !== 'undefined' ) {\r\n\r\n type = 'single';\r\n\r\n }\r\n\r\n }\r\n\r\n if ( type === 'single' ) {\r\n\r\n _.options[option] = value;\r\n\r\n\r\n } else if ( type === 'multiple' ) {\r\n\r\n $.each( option , function( opt, val ) {\r\n\r\n _.options[opt] = val;\r\n\r\n });\r\n\r\n\r\n } else if ( type === 'responsive' ) {\r\n\r\n for ( item in value ) {\r\n\r\n if( $.type( _.options.responsive ) !== 'array' ) {\r\n\r\n _.options.responsive = [ value[item] ];\r\n\r\n } else {\r\n\r\n l = _.options.responsive.length-1;\r\n\r\n // loop through the responsive object and splice out duplicates.\r\n while( l >= 0 ) {\r\n\r\n if( _.options.responsive[l].breakpoint === value[item].breakpoint ) {\r\n\r\n _.options.responsive.splice(l,1);\r\n\r\n }\r\n\r\n l--;\r\n\r\n }\r\n\r\n _.options.responsive.push( value[item] );\r\n\r\n }\r\n\r\n }\r\n\r\n }\r\n\r\n if ( refresh ) {\r\n\r\n _.unload();\r\n _.reinit();\r\n\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.setPosition = function() {\r\n\r\n var _ = this;\r\n\r\n _.setDimensions();\r\n\r\n _.setHeight();\r\n\r\n if (_.options.fade === false) {\r\n _.setCSS(_.getLeft(_.currentSlide));\r\n } else {\r\n _.setFade();\r\n }\r\n\r\n _.$slider.trigger('setPosition', [_]);\r\n\r\n };\r\n\r\n Slick.prototype.setProps = function() {\r\n\r\n var _ = this,\r\n bodyStyle = document.body.style;\r\n\r\n _.positionProp = _.options.vertical === true ? 'top' : 'left';\r\n\r\n if (_.positionProp === 'top') {\r\n _.$slider.addClass('slick-vertical');\r\n } else {\r\n _.$slider.removeClass('slick-vertical');\r\n }\r\n\r\n if (bodyStyle.WebkitTransition !== undefined ||\r\n bodyStyle.MozTransition !== undefined ||\r\n bodyStyle.msTransition !== undefined) {\r\n if (_.options.useCSS === true) {\r\n _.cssTransitions = true;\r\n }\r\n }\r\n\r\n if ( _.options.fade ) {\r\n if ( typeof _.options.zIndex === 'number' ) {\r\n if( _.options.zIndex < 3 ) {\r\n _.options.zIndex = 3;\r\n }\r\n } else {\r\n _.options.zIndex = _.defaults.zIndex;\r\n }\r\n }\r\n\r\n if (bodyStyle.OTransform !== undefined) {\r\n _.animType = 'OTransform';\r\n _.transformType = '-o-transform';\r\n _.transitionType = 'OTransition';\r\n if (bodyStyle.perspectiveProperty === undefined && bodyStyle.webkitPerspective === undefined) _.animType = false;\r\n }\r\n if (bodyStyle.MozTransform !== undefined) {\r\n _.animType = 'MozTransform';\r\n _.transformType = '-moz-transform';\r\n _.transitionType = 'MozTransition';\r\n if (bodyStyle.perspectiveProperty === undefined && bodyStyle.MozPerspective === undefined) _.animType = false;\r\n }\r\n if (bodyStyle.webkitTransform !== undefined) {\r\n _.animType = 'webkitTransform';\r\n _.transformType = '-webkit-transform';\r\n _.transitionType = 'webkitTransition';\r\n if (bodyStyle.perspectiveProperty === undefined && bodyStyle.webkitPerspective === undefined) _.animType = false;\r\n }\r\n if (bodyStyle.msTransform !== undefined) {\r\n _.animType = 'msTransform';\r\n _.transformType = '-ms-transform';\r\n _.transitionType = 'msTransition';\r\n if (bodyStyle.msTransform === undefined) _.animType = false;\r\n }\r\n if (bodyStyle.transform !== undefined && _.animType !== false) {\r\n _.animType = 'transform';\r\n _.transformType = 'transform';\r\n _.transitionType = 'transition';\r\n }\r\n _.transformsEnabled = _.options.useTransform && (_.animType !== null && _.animType !== false);\r\n };\r\n\r\n\r\n Slick.prototype.setSlideClasses = function(index) {\r\n\r\n var _ = this,\r\n centerOffset, allSlides, indexOffset, remainder;\r\n\r\n allSlides = _.$slider\r\n .find('.slick-slide')\r\n .removeClass('slick-active slick-center slick-current')\r\n .attr('aria-hidden', 'true');\r\n\r\n _.$slides\r\n .eq(index)\r\n .addClass('slick-current');\r\n\r\n if (_.options.centerMode === true) {\r\n\r\n centerOffset = Math.floor(_.options.slidesToShow / 2);\r\n\r\n if (_.options.infinite === true) {\r\n\r\n if (index >= centerOffset && index <= (_.slideCount - 1) - centerOffset) {\r\n\r\n _.$slides\r\n .slice(index - centerOffset, index + centerOffset + 1)\r\n .addClass('slick-active')\r\n .attr('aria-hidden', 'false');\r\n\r\n } else {\r\n\r\n indexOffset = _.options.slidesToShow + index;\r\n allSlides\r\n .slice(indexOffset - centerOffset + 1, indexOffset + centerOffset + 2)\r\n .addClass('slick-active')\r\n .attr('aria-hidden', 'false');\r\n\r\n }\r\n\r\n if (index === 0) {\r\n\r\n allSlides\r\n .eq(allSlides.length - 1 - _.options.slidesToShow)\r\n .addClass('slick-center');\r\n\r\n } else if (index === _.slideCount - 1) {\r\n\r\n allSlides\r\n .eq(_.options.slidesToShow)\r\n .addClass('slick-center');\r\n\r\n }\r\n\r\n }\r\n\r\n _.$slides\r\n .eq(index)\r\n .addClass('slick-center');\r\n\r\n } else {\r\n\r\n if (index >= 0 && index <= (_.slideCount - _.options.slidesToShow)) {\r\n\r\n _.$slides\r\n .slice(index, index + _.options.slidesToShow)\r\n .addClass('slick-active')\r\n .attr('aria-hidden', 'false');\r\n\r\n } else if (allSlides.length <= _.options.slidesToShow) {\r\n\r\n allSlides\r\n .addClass('slick-active')\r\n .attr('aria-hidden', 'false');\r\n\r\n } else {\r\n\r\n remainder = _.slideCount % _.options.slidesToShow;\r\n indexOffset = _.options.infinite === true ? _.options.slidesToShow + index : index;\r\n\r\n if (_.options.slidesToShow == _.options.slidesToScroll && (_.slideCount - index) < _.options.slidesToShow) {\r\n\r\n allSlides\r\n .slice(indexOffset - (_.options.slidesToShow - remainder), indexOffset + remainder)\r\n .addClass('slick-active')\r\n .attr('aria-hidden', 'false');\r\n\r\n } else {\r\n\r\n allSlides\r\n .slice(indexOffset, indexOffset + _.options.slidesToShow)\r\n .addClass('slick-active')\r\n .attr('aria-hidden', 'false');\r\n\r\n }\r\n\r\n }\r\n\r\n }\r\n\r\n if (_.options.lazyLoad === 'ondemand') {\r\n _.lazyLoad();\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.setupInfinite = function() {\r\n\r\n var _ = this,\r\n i, slideIndex, infiniteCount;\r\n\r\n if (_.options.fade === true) {\r\n _.options.centerMode = false;\r\n }\r\n\r\n if (_.options.infinite === true && _.options.fade === false) {\r\n\r\n slideIndex = null;\r\n\r\n if (_.slideCount > _.options.slidesToShow) {\r\n\r\n if (_.options.centerMode === true) {\r\n infiniteCount = _.options.slidesToShow + 1;\r\n } else {\r\n infiniteCount = _.options.slidesToShow;\r\n }\r\n\r\n for (i = _.slideCount; i > (_.slideCount -\r\n infiniteCount); i -= 1) {\r\n slideIndex = i - 1;\r\n $(_.$slides[slideIndex]).clone(true).attr('id', '')\r\n .attr('data-slick-index', slideIndex - _.slideCount)\r\n .prependTo(_.$slideTrack).addClass('slick-cloned');\r\n }\r\n for (i = 0; i < infiniteCount; i += 1) {\r\n slideIndex = i;\r\n $(_.$slides[slideIndex]).clone(true).attr('id', '')\r\n .attr('data-slick-index', slideIndex + _.slideCount)\r\n .appendTo(_.$slideTrack).addClass('slick-cloned');\r\n }\r\n _.$slideTrack.find('.slick-cloned').find('[id]').each(function() {\r\n $(this).attr('id', '');\r\n });\r\n\r\n }\r\n\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.interrupt = function( toggle ) {\r\n\r\n var _ = this;\r\n\r\n if( !toggle ) {\r\n _.autoPlay();\r\n }\r\n _.interrupted = toggle;\r\n\r\n };\r\n\r\n Slick.prototype.selectHandler = function(event) {\r\n\r\n var _ = this;\r\n\r\n var targetElement =\r\n $(event.target).is('.slick-slide') ?\r\n $(event.target) :\r\n $(event.target).parents('.slick-slide');\r\n\r\n var index = parseInt(targetElement.attr('data-slick-index'));\r\n\r\n if (!index) index = 0;\r\n\r\n if (_.slideCount <= _.options.slidesToShow) {\r\n\r\n _.setSlideClasses(index);\r\n _.asNavFor(index);\r\n return;\r\n\r\n }\r\n\r\n _.slideHandler(index);\r\n\r\n };\r\n\r\n Slick.prototype.slideHandler = function(index, sync, dontAnimate) {\r\n\r\n var targetSlide, animSlide, oldSlide, slideLeft, targetLeft = null,\r\n _ = this, navTarget;\r\n\r\n sync = sync || false;\r\n\r\n if (_.animating === true && _.options.waitForAnimate === true) {\r\n return;\r\n }\r\n\r\n if (_.options.fade === true && _.currentSlide === index) {\r\n return;\r\n }\r\n\r\n if (_.slideCount <= _.options.slidesToShow) {\r\n return;\r\n }\r\n\r\n if (sync === false) {\r\n _.asNavFor(index);\r\n }\r\n\r\n targetSlide = index;\r\n targetLeft = _.getLeft(targetSlide);\r\n slideLeft = _.getLeft(_.currentSlide);\r\n\r\n _.currentLeft = _.swipeLeft === null ? slideLeft : _.swipeLeft;\r\n\r\n if (_.options.infinite === false && _.options.centerMode === false && (index < 0 || index > _.getDotCount() * _.options.slidesToScroll)) {\r\n if (_.options.fade === false) {\r\n targetSlide = _.currentSlide;\r\n if (dontAnimate !== true) {\r\n _.animateSlide(slideLeft, function() {\r\n _.postSlide(targetSlide);\r\n });\r\n } else {\r\n _.postSlide(targetSlide);\r\n }\r\n }\r\n return;\r\n } else if (_.options.infinite === false && _.options.centerMode === true && (index < 0 || index > (_.slideCount - _.options.slidesToScroll))) {\r\n if (_.options.fade === false) {\r\n targetSlide = _.currentSlide;\r\n if (dontAnimate !== true) {\r\n _.animateSlide(slideLeft, function() {\r\n _.postSlide(targetSlide);\r\n });\r\n } else {\r\n _.postSlide(targetSlide);\r\n }\r\n }\r\n return;\r\n }\r\n\r\n if ( _.options.autoplay ) {\r\n clearInterval(_.autoPlayTimer);\r\n }\r\n\r\n if (targetSlide < 0) {\r\n if (_.slideCount % _.options.slidesToScroll !== 0) {\r\n animSlide = _.slideCount - (_.slideCount % _.options.slidesToScroll);\r\n } else {\r\n animSlide = _.slideCount + targetSlide;\r\n }\r\n } else if (targetSlide >= _.slideCount) {\r\n if (_.slideCount % _.options.slidesToScroll !== 0) {\r\n animSlide = 0;\r\n } else {\r\n animSlide = targetSlide - _.slideCount;\r\n }\r\n } else {\r\n animSlide = targetSlide;\r\n }\r\n\r\n _.animating = true;\r\n\r\n _.$slider.trigger('beforeChange', [_, _.currentSlide, animSlide]);\r\n\r\n oldSlide = _.currentSlide;\r\n _.currentSlide = animSlide;\r\n\r\n _.setSlideClasses(_.currentSlide);\r\n\r\n if ( _.options.asNavFor ) {\r\n\r\n navTarget = _.getNavTarget();\r\n navTarget = navTarget.slick('getSlick');\r\n\r\n if ( navTarget.slideCount <= navTarget.options.slidesToShow ) {\r\n navTarget.setSlideClasses(_.currentSlide);\r\n }\r\n\r\n }\r\n\r\n _.updateDots();\r\n _.updateArrows();\r\n\r\n if (_.options.fade === true) {\r\n if (dontAnimate !== true) {\r\n\r\n _.fadeSlideOut(oldSlide);\r\n\r\n _.fadeSlide(animSlide, function() {\r\n _.postSlide(animSlide);\r\n });\r\n\r\n } else {\r\n _.postSlide(animSlide);\r\n }\r\n _.animateHeight();\r\n return;\r\n }\r\n\r\n if (dontAnimate !== true) {\r\n _.animateSlide(targetLeft, function() {\r\n _.postSlide(animSlide);\r\n });\r\n } else {\r\n _.postSlide(animSlide);\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.startLoad = function() {\r\n\r\n var _ = this;\r\n\r\n if (_.options.arrows === true && _.slideCount > _.options.slidesToShow) {\r\n\r\n _.$prevArrow.hide();\r\n _.$nextArrow.hide();\r\n\r\n }\r\n\r\n if (_.options.dots === true && _.slideCount > _.options.slidesToShow) {\r\n\r\n _.$dots.hide();\r\n\r\n }\r\n\r\n _.$slider.addClass('slick-loading');\r\n\r\n };\r\n\r\n Slick.prototype.swipeDirection = function() {\r\n\r\n var xDist, yDist, r, swipeAngle, _ = this;\r\n\r\n xDist = _.touchObject.startX - _.touchObject.curX;\r\n yDist = _.touchObject.startY - _.touchObject.curY;\r\n r = Math.atan2(yDist, xDist);\r\n\r\n swipeAngle = Math.round(r * 180 / Math.PI);\r\n if (swipeAngle < 0) {\r\n swipeAngle = 360 - Math.abs(swipeAngle);\r\n }\r\n\r\n if ((swipeAngle <= 45) && (swipeAngle >= 0)) {\r\n return (_.options.rtl === false ? 'left' : 'right');\r\n }\r\n if ((swipeAngle <= 360) && (swipeAngle >= 315)) {\r\n return (_.options.rtl === false ? 'left' : 'right');\r\n }\r\n if ((swipeAngle >= 135) && (swipeAngle <= 225)) {\r\n return (_.options.rtl === false ? 'right' : 'left');\r\n }\r\n if (_.options.verticalSwiping === true) {\r\n if ((swipeAngle >= 35) && (swipeAngle <= 135)) {\r\n return 'down';\r\n } else {\r\n return 'up';\r\n }\r\n }\r\n\r\n return 'vertical';\r\n\r\n };\r\n\r\n Slick.prototype.swipeEnd = function(event) {\r\n\r\n var _ = this,\r\n slideCount,\r\n direction;\r\n\r\n _.dragging = false;\r\n _.interrupted = false;\r\n _.shouldClick = ( _.touchObject.swipeLength > 10 ) ? false : true;\r\n\r\n if ( _.touchObject.curX === undefined ) {\r\n return false;\r\n }\r\n\r\n if ( _.touchObject.edgeHit === true ) {\r\n _.$slider.trigger('edge', [_, _.swipeDirection() ]);\r\n }\r\n\r\n if ( _.touchObject.swipeLength >= _.touchObject.minSwipe ) {\r\n\r\n direction = _.swipeDirection();\r\n\r\n switch ( direction ) {\r\n\r\n case 'left':\r\n case 'down':\r\n\r\n slideCount =\r\n _.options.swipeToSlide ?\r\n _.checkNavigable( _.currentSlide + _.getSlideCount() ) :\r\n _.currentSlide + _.getSlideCount();\r\n\r\n _.currentDirection = 0;\r\n\r\n break;\r\n\r\n case 'right':\r\n case 'up':\r\n\r\n slideCount =\r\n _.options.swipeToSlide ?\r\n _.checkNavigable( _.currentSlide - _.getSlideCount() ) :\r\n _.currentSlide - _.getSlideCount();\r\n\r\n _.currentDirection = 1;\r\n\r\n break;\r\n\r\n default:\r\n\r\n\r\n }\r\n\r\n if( direction != 'vertical' ) {\r\n\r\n _.slideHandler( slideCount );\r\n _.touchObject = {};\r\n _.$slider.trigger('swipe', [_, direction ]);\r\n\r\n }\r\n\r\n } else {\r\n\r\n if ( _.touchObject.startX !== _.touchObject.curX ) {\r\n\r\n _.slideHandler( _.currentSlide );\r\n _.touchObject = {};\r\n\r\n }\r\n\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.swipeHandler = function(event) {\r\n\r\n var _ = this;\r\n\r\n if ((_.options.swipe === false) || ('ontouchend' in document && _.options.swipe === false)) {\r\n return;\r\n } else if (_.options.draggable === false && event.type.indexOf('mouse') !== -1) {\r\n return;\r\n }\r\n\r\n _.touchObject.fingerCount = event.originalEvent && event.originalEvent.touches !== undefined ?\r\n event.originalEvent.touches.length : 1;\r\n\r\n _.touchObject.minSwipe = _.listWidth / _.options\r\n .touchThreshold;\r\n\r\n if (_.options.verticalSwiping === true) {\r\n _.touchObject.minSwipe = _.listHeight / _.options\r\n .touchThreshold;\r\n }\r\n\r\n switch (event.data.action) {\r\n\r\n case 'start':\r\n _.swipeStart(event);\r\n break;\r\n\r\n case 'move':\r\n _.swipeMove(event);\r\n break;\r\n\r\n case 'end':\r\n _.swipeEnd(event);\r\n break;\r\n\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.swipeMove = function(event) {\r\n\r\n var _ = this,\r\n edgeWasHit = false,\r\n curLeft, swipeDirection, swipeLength, positionOffset, touches;\r\n\r\n touches = event.originalEvent !== undefined ? event.originalEvent.touches : null;\r\n\r\n if (!_.dragging || touches && touches.length !== 1) {\r\n return false;\r\n }\r\n\r\n curLeft = _.getLeft(_.currentSlide);\r\n\r\n _.touchObject.curX = touches !== undefined ? touches[0].pageX : event.clientX;\r\n _.touchObject.curY = touches !== undefined ? touches[0].pageY : event.clientY;\r\n\r\n _.touchObject.swipeLength = Math.round(Math.sqrt(\r\n Math.pow(_.touchObject.curX - _.touchObject.startX, 2)));\r\n\r\n if (_.options.verticalSwiping === true) {\r\n _.touchObject.swipeLength = Math.round(Math.sqrt(\r\n Math.pow(_.touchObject.curY - _.touchObject.startY, 2)));\r\n }\r\n\r\n swipeDirection = _.swipeDirection();\r\n\r\n if (swipeDirection === 'vertical') {\r\n return;\r\n }\r\n\r\n if (event.originalEvent !== undefined && _.touchObject.swipeLength > 4) {\r\n event.preventDefault();\r\n }\r\n\r\n positionOffset = (_.options.rtl === false ? 1 : -1) * (_.touchObject.curX > _.touchObject.startX ? 1 : -1);\r\n if (_.options.verticalSwiping === true) {\r\n positionOffset = _.touchObject.curY > _.touchObject.startY ? 1 : -1;\r\n }\r\n\r\n\r\n swipeLength = _.touchObject.swipeLength;\r\n\r\n _.touchObject.edgeHit = false;\r\n\r\n if (_.options.infinite === false) {\r\n if ((_.currentSlide === 0 && swipeDirection === 'right') || (_.currentSlide >= _.getDotCount() && swipeDirection === 'left')) {\r\n swipeLength = _.touchObject.swipeLength * _.options.edgeFriction;\r\n _.touchObject.edgeHit = true;\r\n }\r\n }\r\n\r\n if (_.options.vertical === false) {\r\n _.swipeLeft = curLeft + swipeLength * positionOffset;\r\n } else {\r\n _.swipeLeft = curLeft + (swipeLength * (_.$list.height() / _.listWidth)) * positionOffset;\r\n }\r\n if (_.options.verticalSwiping === true) {\r\n _.swipeLeft = curLeft + swipeLength * positionOffset;\r\n }\r\n\r\n if (_.options.fade === true || _.options.touchMove === false) {\r\n return false;\r\n }\r\n\r\n if (_.animating === true) {\r\n _.swipeLeft = null;\r\n return false;\r\n }\r\n\r\n _.setCSS(_.swipeLeft);\r\n\r\n };\r\n\r\n Slick.prototype.swipeStart = function(event) {\r\n\r\n var _ = this,\r\n touches;\r\n\r\n _.interrupted = true;\r\n\r\n if (_.touchObject.fingerCount !== 1 || _.slideCount <= _.options.slidesToShow) {\r\n _.touchObject = {};\r\n return false;\r\n }\r\n\r\n if (event.originalEvent !== undefined && event.originalEvent.touches !== undefined) {\r\n touches = event.originalEvent.touches[0];\r\n }\r\n\r\n _.touchObject.startX = _.touchObject.curX = touches !== undefined ? touches.pageX : event.clientX;\r\n _.touchObject.startY = _.touchObject.curY = touches !== undefined ? touches.pageY : event.clientY;\r\n\r\n _.dragging = true;\r\n\r\n };\r\n\r\n Slick.prototype.unfilterSlides = Slick.prototype.slickUnfilter = function() {\r\n\r\n var _ = this;\r\n\r\n if (_.$slidesCache !== null) {\r\n\r\n _.unload();\r\n\r\n _.$slideTrack.children(this.options.slide).detach();\r\n\r\n _.$slidesCache.appendTo(_.$slideTrack);\r\n\r\n _.reinit();\r\n\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.unload = function() {\r\n\r\n var _ = this;\r\n\r\n $('.slick-cloned', _.$slider).remove();\r\n\r\n if (_.$dots) {\r\n _.$dots.remove();\r\n }\r\n\r\n if (_.$prevArrow && _.htmlExpr.test(_.options.prevArrow)) {\r\n _.$prevArrow.remove();\r\n }\r\n\r\n if (_.$nextArrow && _.htmlExpr.test(_.options.nextArrow)) {\r\n _.$nextArrow.remove();\r\n }\r\n\r\n _.$slides\r\n .removeClass('slick-slide slick-active slick-visible slick-current')\r\n .attr('aria-hidden', 'true')\r\n .css('width', '');\r\n\r\n };\r\n\r\n Slick.prototype.unslick = function(fromBreakpoint) {\r\n\r\n var _ = this;\r\n _.$slider.trigger('unslick', [_, fromBreakpoint]);\r\n _.destroy();\r\n\r\n };\r\n\r\n Slick.prototype.updateArrows = function() {\r\n\r\n var _ = this,\r\n centerOffset;\r\n\r\n centerOffset = Math.floor(_.options.slidesToShow / 2);\r\n\r\n if ( _.options.arrows === true &&\r\n _.slideCount > _.options.slidesToShow &&\r\n !_.options.infinite ) {\r\n\r\n _.$prevArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');\r\n _.$nextArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');\r\n\r\n if (_.currentSlide === 0) {\r\n\r\n _.$prevArrow.addClass('slick-disabled').attr('aria-disabled', 'true');\r\n _.$nextArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');\r\n\r\n } else if (_.currentSlide >= _.slideCount - _.options.slidesToShow && _.options.centerMode === false) {\r\n\r\n _.$nextArrow.addClass('slick-disabled').attr('aria-disabled', 'true');\r\n _.$prevArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');\r\n\r\n } else if (_.currentSlide >= _.slideCount - 1 && _.options.centerMode === true) {\r\n\r\n _.$nextArrow.addClass('slick-disabled').attr('aria-disabled', 'true');\r\n _.$prevArrow.removeClass('slick-disabled').attr('aria-disabled', 'false');\r\n\r\n }\r\n\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.updateDots = function() {\r\n\r\n var _ = this;\r\n\r\n if (_.$dots !== null) {\r\n\r\n _.$dots\r\n .find('li')\r\n .removeClass('slick-active')\r\n .attr('aria-hidden', 'true');\r\n\r\n _.$dots\r\n .find('li')\r\n .eq(Math.floor(_.currentSlide / _.options.slidesToScroll))\r\n .addClass('slick-active')\r\n .attr('aria-hidden', 'false');\r\n\r\n }\r\n\r\n };\r\n\r\n Slick.prototype.visibility = function() {\r\n\r\n var _ = this;\r\n\r\n if ( _.options.autoplay ) {\r\n\r\n if ( document[_.hidden] ) {\r\n\r\n _.interrupted = true;\r\n\r\n } else {\r\n\r\n _.interrupted = false;\r\n\r\n }\r\n\r\n }\r\n\r\n };\r\n\r\n $.fn.slick = function() {\r\n var _ = this,\r\n opt = arguments[0],\r\n args = Array.prototype.slice.call(arguments, 1),\r\n l = _.length,\r\n i,\r\n ret;\r\n for (i = 0; i < l; i++) {\r\n if (typeof opt == 'object' || typeof opt == 'undefined')\r\n _[i].slick = new Slick(_[i], opt);\r\n else\r\n ret = _[i].slick[opt].apply(_[i].slick, args);\r\n if (typeof ret != 'undefined') return ret;\r\n }\r\n return _;\r\n };\r\n\r\n}));\r\n","\r\n\r\nfunction OpenAccountPaymentButton(){\r\n $(document).on(\"submit\", \"#CardForm\", function (e) {\r\n e.preventDefault();\r\n $.ajax({\r\n type: 'post',\r\n url: $(\"#CardForm\").attr(\"action\"),\r\n data: $(\"#CardForm\").serialize(),\r\n async: true,\r\n success: function (dt) {\r\n if(dt == \"true\"){\r\n document.location.href = \"/tr/p/User/PayGaranti3DSecureResultForOpenAccount\";\r\n } else {\r\n $(\".ErrorArea\").html('' + dt + '
');\r\n }\r\n \r\n },\r\n error: function () {\r\n $(\".ErrorArea\").html('Bir Hata Oluştu Lütfen Tekrar Deneyimniz.
');\r\n }\r\n });\r\n\r\n\r\n });\r\n\r\n\r\n $(document).on(\"click\", \"#OpenAccountPaymentTable .PaymentDetails\", function () {\r\n\r\n var ID = $(this).data(\"id\");\r\n\r\n if (ID != undefined && ID != '')\r\n {\r\n $.ajax({\r\n type: 'get',\r\n url: '/tr/p/User/OpenAccountPaymentResult?ID='+ID,\r\n async: true,\r\n success: function (dt) {\r\n $(\"#OpenAccountPaymentDetails .modal-body\").html(\"\");\r\n $(\"#OpenAccountPaymentDetails .modal-body\").html(dt);\r\n $(\"#OpenAccountPaymentDetails\").modal();\r\n },\r\n error: function () {\r\n alert(\"Bir Hata Oluştu Lütfen Tekrar Deneyiniz\");\r\n }\r\n });\r\n \r\n }\r\n \r\n\r\n });\r\n\r\n\r\n\r\n}\r\n\r\nfunction ReturnOrder() {\r\n\r\n\r\n\r\n $(document).on(\"click\", \".CancelOrder\", function (e) {\r\n\r\n $(this).removeAttr(\"disabled\", \"disabled\");\r\n $(this).removeClass(\"disabled\");\r\n $('#MyOrderModal').find(\".yes\").attr(\"data-ajax\", $(this).attr(\"data-ajax\"));\r\n\r\n });\r\n\r\n $(document).on(\"click\", \"#MyOrderModal .yes\", function () {\r\n $(this).attr(\"disabled\", \"disabled\");\r\n $(this).addClass(\"disabled\");\r\n $.ajax({\r\n type: \"GET\",\r\n url: $(this).attr(\"data-ajax\"),\r\n success: function (data) {\r\n //console.log(data);\r\n if (data.Sonuc) {\r\n $(\"#MyOrderModal\").modal(\"toggle\");\r\n $(\"#UserAlertsModal .modal-body\").html(\"Sipariş iptal talebi Alındı incelenerek dönüş yapılacaktır.\");\r\n $(\"#UserAlertsModal .modal-title\").html(\"Sipariş İptal Talebi Alındı\");\r\n $(\"#UserAlertsModal\").delay(500).modal(\"toggle\");\r\n \r\n } else {\r\n $(\"#MyOrderModal\").modal(\"toggle\");\r\n $(\"#UserAlertsModal .modal-title\").html(\"Bir Hata Oluştu\");\r\n $(\"#UserAlertsModal .modal-body\").html(\"Bir Hata oluştu lütfen daha sonra tekrar deneyiniz.\");\r\n $(\"#UserAlertsModal\").delay(500).modal(\"toggle\");\r\n }\r\n }\r\n });\r\n \r\n });\r\n \r\n}\r\n\r\nfunction LoadCargoEvents(){\r\n\r\n\r\n\r\n $(document).on(\"click\", \"a.CargoDetailModal\", function (event) {\r\n\r\n event.preventDefault();\r\n\r\n var x = $(this);\r\n var OrderModal = $(\"div#long\");\r\n var ModalTitle = $(\"h3.modal-title\", OrderModal);\r\n var ModalContent = $(\"div.modal-body\", OrderModal);\r\n\r\n var CurrentTitle = $(x).children(\"td:first\").html();\r\n \r\n $(ModalContent).html(\"\")\r\n\r\n $(ModalTitle).html($(\"h3.ModalTitle\").text());\r\n \r\n $.ajax({\r\n type: \"GET\",\r\n url: x.attr(\"data-trackFile\"),\r\n success: function (data) {\r\n $(ModalContent).find(\".mloader\").remove();\r\n $(ModalContent).html(data);\r\n }\r\n });\r\n\r\n });\r\n \r\n}\r\n\r\nfunction CopyTexttoClipboard(element) {\r\n var $temp = $(\" \");\r\n $(\"body\").append($temp);\r\n $temp.val(element).select();\r\n document.execCommand(\"copy\");\r\n $temp.remove();\r\n}\r\n\r\nfunction MaskInput() {\r\n\r\n if ($(\".UserInfoForm\").length > 0) {\r\n\r\n if ($(\".UserInfoForm #localPassVM_User_Gsm\").length > 0) {\r\n\r\n if ($(\".UserInfoForm #localPassVM_User_Gsm\").val().length <= 0) {\r\n $(\".UserInfoForm #localPassVM_User_Gsm\").val(\"0\");\r\n }\r\n\r\n $(\".UserInfoForm #localPassVM_User_Gsm\").mask(\"0999 999 99 99\");\r\n }\r\n }\r\n}\r\n\r\n$(document).ready(function () {\r\n\r\n $(\".FollowItems .copyButton\").on(\"click\", function () {\r\n var iban = $(this).attr(\"data-iban\");\r\n CopyTexttoClipboard(iban.substr(2));\r\n $btn = $(this);\r\n $(this).addClass(\"CopyText\");\r\n $(this).html(\"Kopyalandı\");\r\n $(this).attr(\"disabled\", true);\r\n setTimeout(function () {\r\n $btn.removeClass(\"CopyText\");\r\n $btn.html(\"Kopyala\");\r\n $btn.attr(\"disabled\", false);\r\n }, 3000);\r\n });\r\n\r\n OpenAccountPaymentButton();\r\n MaskInput();\r\n\r\n LoadCargoEvents();\r\n ReturnOrder();\r\n\r\n $(\"a.AjaxLink\").live(\"click\", function () {\r\n\r\n var callUrl = $(this).attr(\"href\");\r\n var dynform = $(this).attr(\"data-dynform\");\r\n\r\n $DynformDiv = $(\"div.\" + dynform + \":first\");\r\n\r\n var dt = \"\";\r\n\r\n $.ajax({\r\n type: \"GET\",\r\n url: callUrl,\r\n success: function (data) {\r\n\r\n dt = data;\r\n $DynformDiv.html(data);\r\n\r\n\r\n // Adres formunda fatura bilgileri inputları için\r\n if ($(\"#AdresTipi2\").is(\":checked\")) {\r\n $(\".vergi\").show(); $(\".tcno\").hide();\r\n }\r\n\r\n if ($(\"#AdresTipi1\").is(\":checked\")) {\r\n $(\".vergi\").hide(); $(\".tcno\").show();\r\n }\r\n\r\n if ($(\".ddl_ulke option[value='\" + $(\".ddl_ulke\").val() + \"']\").attr(\"data-code\") == \"TR\"\r\n || $(\".ddl_ulke option[value='\" + $(\".ddl_ulke\").val() + \"']\").attr(\"data-code\") == \"KKTC\") { // TR\r\n $(\".tr_group\").show();\r\n $(\".stateDiv\").hide();\r\n $(\".cityDiv\").hide();\r\n\r\n }\r\n\r\n if (($(\".ddl_ulke option[value='\" + $(\".ddl_ulke\").val() + \"']\").attr(\"data-code\") != \"TR\"\r\n &&\r\n $(\".ddl_ulke option[value='\" + $(\".ddl_ulke\").val() + \"']\").attr(\"data-code\") != \"KKTC\")\r\n &&\r\n $(\".ddl_ulke option[value='\" + $(\".ddl_ulke\").val() + \"']\").attr(\"data-code\") != \"CA\"\r\n &&\r\n $(\".ddl_ulke option[value='\" + $(\".ddl_ulke\").val() + \"']\").attr(\"data-code\") != \"US\") { //Rest of world\r\n\r\n $(\".tr_group\").hide();\r\n $(\".stateDiv\").hide();\r\n $(\".cityDiv\").show();\r\n\r\n }\r\n if ($(\".ddl_ulke option[value='\" + $(\".ddl_ulke\").val() + \"']\").attr(\"data-code\") == \"CA\"\r\n ||\r\n $(\".ddl_ulke option[value='\" + $(\".ddl_ulke\").val() + \"']\").attr(\"data-code\") == \"US\") { //USA & CA\r\n\r\n $(\".tr_group\").hide();\r\n $(\".stateDiv\").show();\r\n $(\".cityDiv\").show();\r\n\r\n }\r\n\r\n },\r\n error: function () {\r\n\r\n alert('Talebiniz yerine getirilirken bir hata oluştu. Lütfen daha sonra tekrar deneyiniz.!');\r\n }\r\n\r\n });\r\n\r\n\r\n\r\n return false;\r\n\r\n });\r\n \r\n $(\".PassChange\").live(\"click\", function () {\r\n\r\n $.ajax({\r\n type: 'POST',\r\n url: '/' + $(\"#SmallLangCode\").val() + '/p/User/ChangePass',\r\n data: $(\".ChangePassForm\").serialize(),\r\n success: function (dt) {\r\n $(\".cp\").html(dt);\r\n }\r\n });\r\n\r\n return false;\r\n\r\n });\r\n \r\n $(\"form.davetform\").live(\"submit\", function (e) {\r\n\r\n $form = $(this);\r\n\r\n $.ajax({\r\n type: $form.attr(\"method\"),\r\n url: $form.attr(\"action\"),\r\n data: $form.serialize(),\r\n dataType: 'json',\r\n success: function (data) {\r\n\r\n if ($('.validation-summary-errors').length) {\r\n\r\n $('.validation-summary-errors')\r\n .addClass('alert alert-error');\r\n }\r\n\r\n $(\".AjaxLoader\").hide();\r\n\r\n if (data.Sonuc != true) {\r\n\r\n $form.find(\".jsCreated\").remove();\r\n $form.prepend(' ' + data.IslemSonucAciklama + ' ');\r\n\r\n return false;\r\n }\r\n else {\r\n\r\n $form.find(\"div.jsCreated, .validation-summary-valid\").remove();\r\n $(' ' + data.IslemSonucAciklama + ' ').insertBefore($form).slideDown(\"slow\");\r\n\r\n $(\".temizle\").val('');\r\n\r\n\r\n }\r\n\r\n\r\n },\r\n error: function () {\r\n\r\n alert('Talebiniz yerine getirilirken bir hata oluştu. Lütfen daha sonra tekrar deneyiniz.!');\r\n }\r\n\r\n });\r\n\r\n\r\n e.preventDefault;\r\n return false;\r\n\r\n });\r\n\r\n\r\n\r\n $(\"form.UserMessageForm\").live(\"submit\", function () {\r\n\r\n $(\".AjaxLoader\").show();\r\n\r\n $.ajax({\r\n type: $(this).attr(\"method\"),\r\n url: $(this).attr(\"action\"),\r\n data: $(this).serialize(),\r\n cache: false,\r\n success: function (data) {\r\n console.log(data);\r\n\r\n $(\".MessageBody\").html(data);\r\n\r\n $(\".AjaxLoader\").hide();\r\n }\r\n });\r\n\r\n return false;\r\n\r\n });\r\n\r\n\r\n\r\n if (document.URL.indexOf(\"/p/User/\") > -1 || document.URL.indexOf(\"/p/Orders/\") > -1) {\r\n\r\n $(\".grey .menuitem a\").each(function (index) {\r\n\r\n var CurUrl = document.URL.split('/p/User/')[1];\r\n\r\n var CurLink = \"\";\r\n\r\n if (document.URL.indexOf(\"/p/Orders/\") > -1) {\r\n\r\n CurUrl = document.URL.split('/p/Orders/')[1];\r\n CurLink = $(\"#SmallLangCode\").val() + \"/p/Orders/\" + $(\"#AName\").val();\r\n\r\n }\r\n else {\r\n CurLink = $(\"#SmallLangCode\").val() + \"/p/User/\" + $(\"#AName\").val();\r\n\r\n }\r\n\r\n if ($(this).attr(\"href\").indexOf(CurLink) > 0) {\r\n\r\n if ($(this).attr(\"href\").indexOf(\"hb=t\") < 0) {\r\n $(this).closest(\"li\").addClass(\"current\");\r\n\r\n }\r\n else if ($(this).attr(\"href\").indexOf(\"hb=t\") > 0 && document.URL.indexOf(\"hb=t\") > -1) {\r\n $(\".grey li\").removeClass(\"current\");\r\n $(this).closest(\"li\").addClass(\"current\");\r\n }\r\n }\r\n\r\n });\r\n\r\n $(\".ToggleAccountMenu\").html($(\".menuitem.current:first\").text() + \" \");\r\n\r\n if($(\".menuitem.current:first\").length<=0)\r\n {\r\n $(\".ToggleAccountMenu\").html($(\".menuitem:first\").text() + \" \");\r\n }\r\n }\r\n\r\n if ($(\".HighlightLinkFromUrl\").length > 0) {\r\n\r\n $(\".HighlightLinkFromUrl a\").each(function (index) {\r\n\r\n var CurLink = $(\"#CName\").val() + \"/\" + $(\"#AName\").val();\r\n\r\n if ($(this).attr(\"href\").indexOf(CurLink) > 0) {\r\n $(this).addClass(\"active\");\r\n $(this).parent().addClass(\"active\");\r\n }\r\n\r\n });\r\n\r\n }\r\n\r\n $('.ToggleAccountMenu').click(function () {\r\n $(this).toggleClass(\"open\");\r\n $(\".AccountMenu\").toggleClass(\"open\");\r\n\r\n });\r\n\r\n PhoneFormatAccount();\r\n});\r\n\r\nfunction PhoneFormatAccount() {\r\n\r\n //$(\"#localPassVM_User_Gsm\").mask(\"9999 999 99 99\");\r\n}","$(document).ready(function () {\n \n\n $(\"form.AdresForm\").live(\"submit\", function () {\n\n $form = $(this);\n\n $.ajax({\n type: \"POST\",\n url: $form.attr(\"action\"),\n data: $form.serialize(),\n dataType: \"json\",\n success: function (dt) {\n\n if (dt.Sonuc == true) {\n\n $(\"#AlertResult\").removeClass(\"alert-error\");\n $(\"#AlertResult\").addClass(\"alert-success\").show().find(\"span\").html(dt.IslemSonucAciklama);\n $(\".CloseAfter\").hide();\n\n $(\".AdressList\").hide();\n\n $.ajax({\n type: \"GET\",\n url: \"/User/AdressInfo\",\n success: function (dta) {\n\n $(\".AdressList\").html(dta);\n $(\".AdressList\").fadeIn(\"fast\");\n\n }\n\n });\n\n\n $form.remove();\n\n }\n else {\n\n $(\"#AlertResult\").removeClass(\"alert-success\");\n $(\"#AlertResult\").addClass(\"alert-error\").show().find(\"span\").html(dt.IslemSonucAciklama);\n\n if (isMobile(true)) {\n $('html, body').animate({ scrollTop: 280 }, 'slow');\n }\n\n\n }\n\n },\n error: function () {\n\n alert('Talebiniz yerine getirilirken bir hata oluştu. Lütfen daha sonra tekrar deneyiniz.!');\n }\n\n });\n\n\n return false;\n\n\n });\n\n\n $(\".Foreign\").change(function () {\n\n if ($(\".Foreign\").attr(\"checked\") == \"checked\") {\n $(\".tcno\").hide(\"slow\");\n }\n else {\n $(\".tcno\").show(\"slow\");\n }\n\n });\n\n $(\".adrestipradio\").live(\"change\", function () {\n\n if ($(\"#AdresTipi2\").is(\":checked\")) {\n $(\".vergi\").show(\"slow\"); $(\".tcno\").hide(\"hide\");\n }\n else {\n $(\".vergi\").hide(\"slow\"); $(\".tcno\").show(\"slow\");\n }\n\n });\n\n // ILCELERI GETIR \n\n if ($(\".ddl_ulke option[value='\" + $(this).val() + \"']\").attr(\"data-code\") != \"TR\") {\n\n $(\".ddl_sehir, .ddl_ilce\").attr('disabled', true);\n $(\".ddl_sehir, .ddl_ilce\").css('opacity', \"0.5\");\n }\n\n $(\".ddl_ulke\").live(\"change\", function () {\n\n if ($(\".ddl_ulke option[value='\" + $(this).val() + \"']\").attr(\"data-code\") == \"TR\" || $(\".ddl_ulke option[value='\" + $(this).val() + \"']\").attr(\"data-code\") == \"KKTC\") { // TR\n\n $(\".tr_group\").show(\"slow\");\n $(\".stateDiv\").hide(\"slow\");\n $(\".cityDiv\").hide(\"slow\");\n\n }\n\n if ($(\".ddl_ulke option[value='\" + $(this).val() + \"']\").attr(\"data-code\") != \"TR\" && $(\".ddl_ulke option[value='\" + $(this).val() + \"']\").attr(\"data-code\") != \"KKTC\" && $(\".ddl_ulke option[value='\" + $(this).val() + \"']\").attr(\"data-code\") != \"CA\" && $(\".ddl_ulke option[value='\" + $(this).val() + \"']\").attr(\"data-code\") != \"US\") { //Rest of world\n\n $(\".tr_group\").hide(\"slow\");\n $(\".stateDiv\").hide(\"slow\");\n $(\".cityDiv\").show(\"slow\");\n\n }\n if ($(\".ddl_ulke option[value='\" + $(this).val() + \"']\").attr(\"data-code\") == \"CA\" || $(\".ddl_ulke option[value='\" + $(this).val() + \"']\").attr(\"data-code\") == \"US\") { //USA & CA\n\n $(\".tr_group\").hide(\"slow\");\n $(\".stateDiv\").show(\"slow\");\n $(\".cityDiv\").show(\"slow\");\n }\n\n\n });\n\n $(\".ddl_sehir\").live(\"change\", function () {\n\n var seciliSehirOID = $(this).val();\n\n if (seciliSehirOID != undefined && seciliSehirOID != \"\") {\n\n $(\".ajaxilce\").show();\n\n $.ajax({\n type: 'get',\n url: \"/\" + $(\"#SmallLangCode\").val() + '/p/User/GetTowns',\n data: 'cityid=' + seciliSehirOID,\n dataType: 'json',\n success: function (dt) {\n\n var icerik = \"\";\n $('#TownID option').remove();\n\n $('#TownID')\n .append($(\" \")\n .attr(\"value\", \"\")\n .text(\"Lütfen Seçin\"));\n\n\n $('#TownID').parent().find(\"span\").html(\"Lütfen Seçin\");\n\n for (var i = 0; i < dt.length; i++) {\n\n\n $('#TownID')\n .append($(\" \")\n .attr(\"value\", dt[i].ID)\n .text(dt[i].Name));\n\n }\n\n $(\".ajaxilce\").hide();\n\n\n }\n });\n\n }\n else {\n\n $('#TownID option:gt(0)').remove();\n }\n\n });\n\n\n $(\".ItemDelete\").live(\"click\", function () {\n\n $silinecekSatir = $(this).closest(\"fieldset\");\n\n $('#myModal .modal-body').html($(this).attr(\"data-name\") + \" \");\n $('#myModal').modal('show');\n\n return false;\n\n });\n\n //Silmeyi Onayla\n $(\"#SilmeOnayla\").click(function () {\n\n var dataProp = \"id\";\n\n if ($('#myModal .modal-body #Silinecek').attr(\"data-prop\")) {\n dataProp = $('#myModal .modal-body #Silinecek').attr(\"data-prop\");\n }\n\n $.ajax({\n type: \"POST\",\n url: $('#myModal .modal-body #Silinecek').attr(\"data-action\"),\n data: dataProp + \"=\" + $('#myModal .modal-body #Silinecek').attr(\"data-rel\"),\n cache: false,\n success: function (data) {\n\n if (data == \"true\") {\n\n $silinecekSatir.css(\"background-color\", \"yellow\");\n\n $('#myModal').modal('hide');\n\n $silinecekSatir.hide(\"slow\");\n\n }\n else {\n\n alert('Talebiniz yerine getirilirken bir hata oluştu. Lütfen daha sonra tekrar deneyiniz.!');\n }\n\n },\n error: function () {\n\n alert('Talebiniz yerine getirilirken bir hata oluştu. Lütfen daha sonra tekrar deneyiniz.!');\n }\n\n });\n\n\n });\n \n\n PhoneFormat();\n\n});\n\nfunction PhoneFormat() {\n\n //$(\"#Phone2\").mask(\"9999 999 99 99\");\n}","function isScrolledIntoView(elem) {\r\n\r\n var $elem = $(elem);\r\n var $window = $(window);\r\n if ($elem.offset() != undefined) {\r\n var docViewTop = $window.scrollTop();\r\n var docViewBottom = docViewTop + $window.height();\r\n var elemTop = $elem.offset().top;\r\n var elemBottom = elemTop + $elem.height();\r\n return (((elemBottom - 750) <= (docViewBottom)));\r\n }\r\n}\r\n\r\nfunction ChangeHashedStringParamValue(params, removedParam, newValue) {\r\n\r\n if (params != undefined && params.length > 0) {\r\n\r\n var splitStr = (removedParam + \"=\");\r\n var newParamsArray = params.split(splitStr);\r\n\r\n if (newParamsArray.length >= 2) {\r\n var firstPartOfParams = newParamsArray[0];\r\n var secondPartOfParams = \"\";\r\n var beginCalc = false;\r\n for (var i = 0; i < newParamsArray[1].length; i++) {\r\n\r\n if (beginCalc) {\r\n secondPartOfParams += newParamsArray[1][i];\r\n }\r\n\r\n if (newParamsArray[1][i] == \"&\") {\r\n beginCalc = true;\r\n }\r\n\r\n\r\n }\r\n\r\n params = firstPartOfParams + removedParam + \"=\" + newValue + \"&\" + secondPartOfParams;\r\n\r\n }\r\n\r\n }\r\n\r\n return params;\r\n\r\n}\r\n\r\nfunction GetQuickLookEvents() {\r\n $(\"#QuickLookModal .SmallProductImages img\").live(\"click\", function () {\r\n var ImageIndex = $(this).index();\r\n $(\"#QuickLookModal .ProductDetailImages ul li\").each(function () {\r\n if ($(this).index() == ImageIndex) {\r\n $(this).removeClass(\"gizli\");\r\n $(this).find(\"a img\").attr(\"src\", $(this).find(\"a img\").data(\"src\"));\r\n }\r\n else {\r\n $(this).addClass(\"gizli\");\r\n }\r\n\r\n\r\n });\r\n $(\"#QuickLookModal .SmallProductImages img\").each(function () {\r\n if ($(this).index() == ImageIndex) {\r\n $(this).addClass(\"Selected\");\r\n } else {\r\n $(this).removeClass(\"Selected\");\r\n }\r\n\r\n\r\n });\r\n\r\n\r\n });\r\n\r\n}\r\n\r\nfunction LeftMenuFixedOptions() {\r\n $(window).scroll(function () {\r\n var TopValue = $(\"footer\").height();\r\n\r\n if ($(window).scrollTop() + ($(window).height() + 300) > $(document).height()) {\r\n $(\".CategoryLeftBar\").css(\"top\", \"-\" + (TopValue) + \"px\");\r\n\r\n } else {\r\n\r\n $(\".CategoryLeftBar\").css(\"top\", \"inherit\");\r\n }\r\n });\r\n}\r\n\r\n//function GetLeftCatalogList() {\r\n// $curCatalog = $(\"#MainNewMenu a[data-rel='\" + $(\"#PID\").val() + \"']\");\r\n\r\n// if ($curCatalog.length > 0) {\r\n// $curUL = $curCatalog.closest(\".itemsWrapper\").closest(\"li\").first().clone();\r\n\r\n// if ($curUL.length < 1) {\r\n// $curUL = $curCatalog.closest(\"li\").first().clone();\r\n// }\r\n\r\n// $(\".leftCatalogList\").html(\"\");\r\n// $(\".leftCatalogList\").append($curUL);\r\n\r\n// $selectedCats = $(\"#MainNewMenu a[data-rel='\" + $(\"#PID\").val() + \"']\");\r\n// $selectedCats2 = $(\"#SubCatNavs a[data-rel='\" + $(\"#PID\").val() + \"']\");\r\n\r\n// $selectedCats2.css(\"font-weight\", \"bold\");\r\n// $selectedCats2.css(\"color\", \"#797979\");\r\n\r\n// if ($selectedCats2.parent().parent().parent().hasClass(\"ListWrapper\")) {\r\n// $selectedCats2.parent().addClass(\"opened\");\r\n// } else {\r\n// $selectedCats2.parent().closest(\"div\").parent().addClass(\"opened\");\r\n// }\r\n// }\r\n\r\n// $(\".SubCatNavs>li .itemsWrapper .ListWrapper>ul>\").each(function () {\r\n\r\n// if ($(this).find(\"div\").length == 0) {\r\n// $(this).addClass(\"hidePlusIcon\");\r\n// }\r\n// });\r\n\r\n// FixedLeftBar();\r\n// //LeftMenuFixedOptions();\r\n//}\r\n\r\nfunction GetNewLeftCatalogList() {\r\n\r\n var root = document.querySelector(\".leftCatalogList\");\r\n}\r\n\r\nfunction GetLeftCatalogList() {\r\n\r\n $curCatalog = $(\"#MainMenu a[data-rel='\" + $(\"#PID\").val() + \"']\");\r\n\r\n if ($curCatalog.length > 0) {\r\n $curUL = $curCatalog.closest(\".itemsWrapper\").closest(\"li\").first().clone();\r\n\r\n if ($curUL.length < 1) {\r\n $curUL = $curCatalog.closest(\"li\").first().clone();\r\n }\r\n\r\n $(\".leftCatalogList\").html(\"\");\r\n $(\".leftCatalogList\").append($curUL);\r\n\r\n $selectedCats = $(\"#MainMenu a[data-rel='\" + $(\"#PID\").val() + \"']\");\r\n $selectedCats2 = $(\"#SubCatNavs a[data-rel='\" + $(\"#PID\").val() + \"']\");\r\n\r\n $selectedCats2.css(\"font-weight\", \"bold\");\r\n $selectedCats2.css(\"color\", \"#797979\");\r\n\r\n if ($selectedCats2.parent().parent().parent().hasClass(\"ListWrapper\")) {\r\n $selectedCats2.parent().addClass(\"opened\");\r\n } else {\r\n $selectedCats2.parent().closest(\"div\").parent().addClass(\"opened\");\r\n }\r\n\r\n }\r\n\r\n $(\".SubCatNavs>li .itemsWrapper .ListWrapper>ul>\").each(function () {\r\n\r\n if ($(this).find(\"div\").length == 0) {\r\n $(this).addClass(\"hidePlusIcon\");\r\n }\r\n });\r\n\r\n FixedLeftBar();\r\n //LeftMenuFixedOptions();\r\n}\r\n\r\nfunction FixedLeftBar() {\r\n $(window).scroll(function () {\r\n if ($(\".contentTopSpace > div\").height() > 689) {\r\n if ($(\"body\").hasClass(\"Scrolled\")) {\r\n if ($(window).width() > 767) {\r\n $(\"#LeftWrapper\").addClass(\"FixedLeftBar\");\r\n }\r\n\r\n } else {\r\n $(\"#LeftWrapper\").removeClass(\"FixedLeftBar\");\r\n }\r\n }\r\n\r\n\r\n\r\n });\r\n}\r\n\r\nfunction ToggleLeftBarItems() {\r\n if ($(window).width() > 767) {\r\n $(\".itemsWrapper > .ListWrapper > ul > li\").live(\"click\", function () {\r\n $(\".itemsWrapper .ListWrapper ul li\").not(this).removeClass(\"opened\");\r\n $(this).toggleClass(\"opened\");\r\n });\r\n }\r\n}\r\n\r\nfunction ToggleLeftBar() {\r\n $(\".FilterForm .filterLink\").live(\"click\", function () {\r\n $(this).parent().find(\".FilterBoxes\").slideToggle();\r\n $(this).toggleClass(\"toggle-minus\");\r\n\r\n });\r\n\r\n $(\".SubCatNavs > li > a\").live(\"click\", function (e) {\r\n $(this).parent().find(\".itemsWrapper\").slideToggle();\r\n $(this).parent().toggleClass(\"toggle-minus\");\r\n e.preventDefault;\r\n return false;\r\n });\r\n}\r\n\r\nfunction GetMemberCardPriceForQuickLook() {\r\n\r\n var Amount2 = $(\"#ForMemberCardAmount2\").val();\r\n var OldAmount2 = $(\"#ForMemberCardOldAmount2\").val();\r\n var MemberCardGroupID2 = $(\"#MemberCardGroupID\").val();\r\n var ForMemberCardCurrencyCode2 = $(\"#ForMemberCardCurrencyCode2\").val();\r\n if (Amount2 != undefined && OldAmount2 != undefined && MemberCardGroupID2 != undefined && ForMemberCardCurrencyCode2 != undefined && MemberCardGroupID2 != -1) {\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/ProductDetails/GetMemberCardPrice\",\r\n data: 'Amount=' + Amount2 + \"&AmountOld=\" + OldAmount2 + \"&MemberCardGroupID=\" + MemberCardGroupID2,\r\n dataType: 'json',\r\n async: true,\r\n success: function (dt) {\r\n if (dt.TotalAmount != \"0\" && dt.TotalAmount != 0) {\r\n $(\"#QuickLookModal .RPrice\").html(dt.TotalAmount + \" \" + ForMemberCardCurrencyCode2);\r\n $(\"#QuickLookModal .MemberCardPrice\").css(\"display\", \"inline-block\");\r\n }\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction MarkToLastVisitedProducts() {\r\n\r\n var LastVisitedProducts = localStorage.LastVisitedProducts;\r\n\r\n if (LastVisitedProducts == undefined) {\r\n LastVisitedProducts = [];\r\n } else {\r\n LastVisitedProducts = JSON.parse(LastVisitedProducts);\r\n }\r\n\r\n //console.log(LastVisitedProducts);\r\n\r\n $(\".Products .ProductList .Prd > .productImageWrapper > a\").each(function (index) {\r\n var that = $(this);\r\n\r\n $.each(LastVisitedProducts, function (index, value) {\r\n if (that.attr(\"data-product\") == LastVisitedProducts[index].ProductID && that.attr(\"data-color\") == LastVisitedProducts[index].ColorID) {\r\n if (that.find(\".Viewed\").length <= 0) {\r\n that.append(\"\" + $(\"#Incelendi\").val() + \" \");\r\n }\r\n }\r\n });\r\n });\r\n}\r\n\r\nfunction SetPriceSlider() {\r\n var IsAutoScrollOpen = Boolean($(\"#AutoScroll\").val());\r\n if ($(\".CatalogLeftMenu\").length > 0) {\r\n\r\n var slider = document.getElementById('PriceSlider');\r\n var min = $(\"#MinPrice\").val();\r\n var max = $(\"#MaxPrice\").val();\r\n\r\n noUiSlider.create(slider, {\r\n start: [min, max],\r\n connect: true,\r\n step: 1,\r\n range: {\r\n 'min': parseInt(min),\r\n 'max': parseInt(max)\r\n }\r\n });\r\n\r\n slider.noUiSlider.on('change', function () {\r\n var values = slider.noUiSlider.get();\r\n $(\"#MinPrice\").val(Math.round(values[0]));\r\n $(\"#MaxPrice\").val(Math.round(values[1]));\r\n $(\"#SliderValue\").val(Math.round(values[0]) + \"-\" + Math.round(values[1]));\r\n\r\n if (IsAutoScrollOpen) {\r\n $(\".Products\").html(\"\");\r\n }\r\n\r\n window.location.hash = compress($(\"form#FilterForm\").serialize());\r\n });\r\n\r\n slider.noUiSlider.on('update', function () {\r\n var values = slider.noUiSlider.get();\r\n $(\"#MinPrice\").val(Math.round(values[0]));\r\n $(\"#MaxPrice\").val(Math.round(values[1]));\r\n $(\".priceView\").html(\"\").html(Math.round(values[0]) + \" \" + $(\"#CurrencyCode\").val() + \" - \" + Math.round(values[1]) + \" \" + $(\"#CurrencyCode\").val());\r\n });\r\n }\r\n}\r\n\r\nfunction SetFixedLeftBarHeigt() {\r\n var windowHeight = ($(window).height() - 150);\r\n if ($(window).width() > 991) {\r\n $(\"#SubCatNavs\").height(windowHeight);\r\n }\r\n}\r\n\r\nfunction FixedLeftBar() {\r\n $(window).scroll(function () {\r\n if ($(\"body\").hasClass(\"Scrolled\")) {\r\n $(\"#SubCatNavs\").addClass(\"FixedLeftBar\");\r\n } else {\r\n $(\"#SubCatNavs\").removeClass(\"FixedLeftBar\");\r\n }\r\n });\r\n}\r\n\r\nfunction HammerActions() {\r\n var toggleFilterElem = document.getElementById('ToogleFilters');\r\n\r\n //var hammer = new Hammer(toggleFilterElem);\r\n\r\n // Hammer Event Listener \r\n //hammer.on(\"tap\", function (ev) {\r\n // $(\"#FilterForm\").slideToggle();\r\n // alert(\"girdi\");\r\n //});\r\n}\r\n\r\nfunction FilterRefresh() {\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/Cat/CatFilter\",\r\n data: compress($(\".FilterForm\").serialize()),\r\n success: function (dt) {\r\n $(\"#LeftWrapper\").html(dt);\r\n GetLeftCatalogList();\r\n SetPriceSlider();\r\n }\r\n })\r\n}\r\n\r\nfunction SetMobileGridIcon() {\r\n $(\".MobileGridIcons > ul > li > input\").on(\"change\", function () {\r\n\r\n $(\"#MobileGridIcons input\").removeAttr(\"checked\");\r\n $(\"#MobileGridIcons label\").removeClass(\"checked\");\r\n $(\"#MobileGridIcons label\").removeClass(\"c_on\");\r\n\r\n $(this).attr(\"checked\", \"checked\");\r\n $(this).closest(\"li.gr\").find(\"label\").addClass(\"c_on\");\r\n $(this).closest(\"li.gr\").find(\"label\").addClass(\"checked\");\r\n\r\n var inputID = $(this).attr(\"id\");\r\n $(\".MobileGridIconsTirgger input#\" + inputID).trigger(\"change\")\r\n\r\n //console.log(\"geldiiii\");\r\n });\r\n}\r\n\r\nfunction leftCatalogClick() {\r\n\r\n $(document).on(\"click\", \".leftCatalogList > li > a\", function (e) {\r\n\r\n $(this).closest(\".leftCatalogList\").find(\" > li > .itemsWrapper\").slideToggle();\r\n $(this).toggleClass(\"minusIcon\");\r\n e.preventDefault();\r\n return false;\r\n });\r\n}\r\n\r\nfunction TitleChange(pageNo) {\r\n\r\n if ($(\"body\").hasClass(\"Cat\")) {\r\n\r\n var PageHandler = /( - Sayfa| - Page) \\d+/g;\r\n var titleVal = document.title;\r\n titleVal = titleVal.replace(PageHandler, '');\r\n var sayfa = \" - Sayfa \";\r\n\r\n if ($(\"#SmallLangCode\").val() == \"en\") {\r\n sayfa = \" - Page \";\r\n }\r\n\r\n document.title = titleVal + sayfa + pageNo;\r\n\r\n var metaDesc = $(\"meta[name=description]\").attr(\"content\");\r\n metaDesc = metaDesc.replace(PageHandler, '');\r\n $(\"meta[name=description]\").attr(\"content\", metaDesc + sayfa + pageNo);\r\n }\r\n}\r\n\r\nfunction GetQuickLookModal(ProductID, ColorID) {\r\n\r\n $Modal = $(\"div#QuickLookModal\");\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/ProductDetails/QuickLook\",\r\n data: 'ProductID=' + ProductID + \"&ColorID=\" + ColorID,\r\n success: function (dt) {\r\n $(\"div#QuickLookModal .modal-body\").html(dt);\r\n $(\".ProductDetail .Colors a[data-id='\" + ColorID + \"']\").trigger(\"click\");\r\n }\r\n });\r\n\r\n $Modal.modal(\"show\");\r\n return false;\r\n e.preventDefault();\r\n}\r\n\r\nfunction IsFollowCatagory() {\r\n\r\n if ($(\".ProductList .Prd div .QuickLookLikeBtn\").length <= 0) {\r\n return;\r\n }\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/ProductDetails/IsFollowAll\",\r\n dataType: 'json',\r\n async: true,\r\n success: function (dt) {\r\n updateList(dt);\r\n }\r\n });\r\n\r\n var updateList = function (dt) {\r\n\r\n $(\".ProductList .Prd .QuickLookLikeBtn\").addClass(\"QuickLookLikePassive\");\r\n $(\".ProductList .Prd .QuickLookLikeBtn\").removeClass(\"QuickLookLikeActive\");\r\n\r\n for (var i in dt) {\r\n var item = dt[i];\r\n\r\n //console.log(dt[i]);\r\n\r\n var followlar = $(\".ProductList .Prd div .QuickLookLikeBtn\").filter(function (index) {\r\n return $(this).attr(\"data-productidlike\") == item[\"ProductID\"] && $(this).attr(\"data-coloridlike\") == item[\"ColorID\"];\r\n });\r\n\r\n if (followlar.length > 0) {\r\n var followItem = $(followlar[0]);\r\n followItem.removeClass(\"QuickLookLikePassive\");\r\n followItem.addClass(\"QuickLookLikeActive\");\r\n\r\n if (followItem.hasClass(\"QuickLookLikeActive\")) {\r\n //followItem.css(\"background-image\", \"url(/Images/OXNW/like_full.png)\");\r\n followItem.children(\"img\").attr(\"src\", \"/Images/OXNW/like_full.svg\");\r\n }\r\n }\r\n }\r\n };\r\n}\r\n\r\nvar isNewRequestAllowed = true;\r\nvar isFirstLoad = false;\r\nvar isScrolling = false;\r\nvar LoadPage = 1;\r\n\r\nfunction ProductClickForDataLayer() {\r\n $(\".Cat .Products .ProductList .productImageWrapper a\").click(function () {\r\n\r\n event.preventDefault();\r\n\r\n var redirectUrl = $(this).attr(\"href\");\r\n var ProductID = $(this).attr(\"data-product\");\r\n var ColorID = $(this).attr(\"data-color\");\r\n var LangID = $(\"#LangID\").val();\r\n var SmallLangCode = $(\"#SmallLangCode\").val();\r\n\r\n var CurrentCatalogID = $(\"#PID\").val();\r\n\r\n if (CurrentCatalogID == null || CurrentCatalogID == \"\" || CurrentCatalogID == undefined) {\r\n CurrentCatalogID = $(\"#PgCatalogs\").val();\r\n }\r\n\r\n if (ProductID == null || ProductID == \"\" || ProductID == undefined || ColorID == null || ColorID == \"\" || ColorID == undefined) {\r\n document.location = redirectUrl;\r\n }\r\n else {\r\n\r\n var params = \"ProductID=\" + ProductID + \"&ColorID=\" + ColorID + \"&LangID=\" + LangID + \"&SmallLangCode=\" + SmallLangCode + \"&CurrentCatalogID=\" + CurrentCatalogID;\r\n\r\n $AjaxLoader = $(\".PrdContainer .AjaxLoaderDiv\");\r\n $AjaxLoader.addClass(\"AjaxLoaderPleaseWait\");\r\n\r\n var SelectedProductID = $(this).attr(\"data-product\") + \"-\" + $(this).attr(\"data-color\");\r\n\r\n var i = 0;\r\n $(\".PrdContainer .Products .Prd\").each(function () {\r\n i++;\r\n\r\n var CurrentProductID = $(this).find(\".productImageWrapper > a\").attr(\"data-product\") + \"-\" + $(this).find(\".productImageWrapper > a\").attr(\"data-color\");\r\n\r\n if (SelectedProductID == CurrentProductID) {\r\n return false;\r\n }\r\n });\r\n\r\n if (i > 0) {\r\n params += \"&Position=\" + i;\r\n }\r\n\r\n $.ajax({\r\n type: \"GET\",\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/Cat/GetProductDataLayerData\",\r\n data: params,\r\n cache: false,\r\n success: function (data) {\r\n if (data == null || data == \"\" || data == undefined) {\r\n document.location = redirectUrl;\r\n }\r\n else {\r\n window.dataLayer = window.dataLayer || [];\r\n dataLayer.push(JSON.parse(data));\r\n\r\n document.location = redirectUrl;\r\n }\r\n },\r\n error: function (data) {\r\n document.location = redirectUrl;\r\n }\r\n });\r\n }\r\n\r\n // return false;\r\n });\r\n}\r\n\r\nfunction isOnScreen(elem) {\r\n\r\n if (elem.length == 0) {\r\n return;\r\n }\r\n\r\n var $window = jQuery(window);\r\n var viewport_top = $window.scrollTop();\r\n var viewport_height = $window.height();\r\n var viewport_bottom = viewport_top + viewport_height;\r\n var $elem = jQuery(elem);\r\n var top = $elem.offset().top;\r\n var height = $elem.height();\r\n var bottom = top + height;\r\n\r\n return (top >= viewport_top && top < viewport_bottom) ||\r\n (bottom > viewport_top && bottom <= viewport_bottom) ||\r\n (height > viewport_height && top <= viewport_top && bottom >= viewport_bottom)\r\n}\r\n\r\nfunction DataLayerScrollView() {\r\n\r\n var say = 0;\r\n var hash = window.location.hash;\r\n\r\n if (hash == \"\") {\r\n $(\".Products .ProductList .Prd\").each(function () {\r\n say++;\r\n if (say % 6 == 1 && say != 1) {\r\n point++;\r\n $(this).addClass(\"DataLayerPushPoint\");\r\n }\r\n });\r\n }\r\n\r\n var point = 0;\r\n setInterval(function () {\r\n\r\n if (isOnScreen($(\".DataLayerPushPoint\")) == true) {\r\n\r\n point++;\r\n\r\n $firstData = $(\".DataLayerPushPoint\").first();\r\n var Grid = $(\"input[name='g']:checked\").val();\r\n\r\n var pgNo = $(\".Products .Pages a.selected\").attr(\"data-pgno\");\r\n\r\n var param = \"_catalogIDs=\" + $(\"#PID\").val() + \"&gridSize=\" + Grid + \"&PgNo=\" + pgNo + \"&DataLayerPoint=\" + point;\r\n\r\n $.ajax({\r\n type: \"GET\",\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/Cat/GetDataLayerScrollViewData\",\r\n data: param,\r\n cache: false,\r\n success: function (data) {\r\n\r\n if (data != null && data != \"\" && data != undefined) {\r\n window.dataLayer = window.dataLayer || [];\r\n dataLayer.push(JSON.parse(data));\r\n }\r\n }\r\n });\r\n\r\n $firstData.removeClass(\"DataLayerPushPoint\");\r\n\r\n if (point % 8 == 0) {\r\n point = 0;\r\n }\r\n }\r\n }, 200);\r\n}\r\n\r\n$(document).ready(function () {\r\n\r\n var _gaa = null;\r\n var SwProductLastTrackListId = [];\r\n\r\n // DataLayer\r\n //ProductClickForDataLayer();\r\n DataLayerScrollView();\r\n // DataLayer\r\n\r\n //var onScrollTrack = function () {\r\n // bindScrollTrack = true;\r\n // $(window).scroll(function () {\r\n // clearTimeout($.data(this, \"scrollCheck\"));\r\n // $.data(this, \"scrollCheck\", setTimeout(function () {\r\n // if (!isScrolling) {\r\n // trackFunction();\r\n // }\r\n // }, 250));\r\n // });\r\n //}\r\n\r\n //var trackBindClick = function () {\r\n // $('.row.Products .Prd').each(function () {\r\n // $(this).unbind(\"click\");\r\n\r\n // $(this).click(function (event) {\r\n\r\n // //event.preventDefault();\r\n\r\n // var productId = $(this).find(\".productImageWrapper a\").data(\"product\") + \"-\" + $(this).find(\".productImageWrapper a\").data(\"color\");\r\n // //var trackActionData = {\r\n // // \"Request\": [\r\n // // {\r\n // // \"Action\": \"Click\",\r\n // // \"ClientId\": \"SW-OXXO\", \r\n // // \"ActionId\": productId,\r\n // // \"ActionValues\": {\r\n // // \"Url\": $(location).attr('href').split(\"#\")[0].split(\"?\")[0],\r\n // // \"PageNo\": Math.ceil(($(\".row.Products .Prd\").index(this) + 1) / 48).toString(),\r\n // // \"PageId\": $('input:hidden[name=PID]').val(),\r\n // // \"PositionInList\": $(\".row.Products .Prd\").index(this) + 1,\r\n // // \"Quantity\": 0,\r\n // // \"UserId\": (!$.isBlank($('input:hidden[name=UserID]').val())) ? $('input:hidden[name=UserID]').val() : \"\",\r\n // // \"SessionId\": $.cookie(\"sw_track_id\")\r\n // // }\r\n // // }\r\n // // ]\r\n // //};\r\n\r\n // //console.log(trackActionData);\r\n // //_gaa.trackAction(trackActionData);\r\n // });\r\n // })\r\n //};\r\n\r\n //var trackFunction = function () {\r\n\r\n // if ($.isBlank($('input:hidden[name=PID]').val()))\r\n // return;\r\n\r\n // /* Track */\r\n // var SwProductTrackList = [];\r\n // $('.row.Products .Prd').each(function () {\r\n // if ($(this).find(\".productImageWrapper\").visible(true)) {\r\n // var productId = $(this).find(\".productImageWrapper a\").data(\"product\") + \"-\" + $(this).find(\".productImageWrapper a\").data(\"color\");\r\n\r\n // if ($.inArray(productId, SwProductLastTrackListId) < 0 ) {\r\n // SwProductTrackList.push({\r\n // \"clientId\": \"SW-OXXO\",\r\n // \"PageType\": \"category\",\r\n // \"PageId\": $('input:hidden[name=PID]').val(),\r\n // \"PageNo\": Math.ceil(($(\".row.Products .Prd\").index(this) + 1) / 48).toString(),\r\n // \"Url\": $(location).attr('href').split(\"#\")[0].split(\"?\")[0],\r\n // \"ActionId\": productId,\r\n // });\r\n // }\r\n // }\r\n // });\r\n\r\n // //trackBindClick();\r\n\r\n // if (SwProductTrackList.length > 0) { \r\n // //seen products\r\n // SwProductTrackList.forEach(function (value, index) {\r\n // SwProductLastTrackListId.push(value.ActionId); \r\n // }); \r\n\r\n // //console.log(\"list\");\r\n // //console.log(SwProductTrackList);\r\n // //_gaa.trackPageview(SwProductTrackList);\r\n // }\r\n //};\r\n\r\n $('.ToogleFilters').click(function (e) {\r\n\r\n var type = $(this).attr(\"data-type\");\r\n\r\n if (type == \"filter\") {\r\n $(\"#FilterForm .FilterItem\").show();\r\n $(\"#FilterForm .SortItem\").hide();\r\n }\r\n else if (type == \"sort\") {\r\n $(\"#FilterForm .FilterItem\").hide();\r\n $(\"#FilterForm .SortItem\").show();\r\n }\r\n\r\n $(\"#FilterForm\").slideToggle();\r\n });\r\n\r\n $(\".CloseMobilFilterArea\").click(function () {\r\n $(\"#FilterForm\").slideToggle();\r\n });\r\n\r\n if ($(\"#PgType\").val() == \"Cat\" || $(\"#PgType\").val() == \"NewSearch\") {\r\n IsFollowCatagory();\r\n }\r\n else {\r\n $(\".QuickLookLikeBtn\").parent(\"div\").css(\"display\", \"none\");\r\n }\r\n\r\n //TitleChange(1);\r\n var IsAutoScrollOpen = Boolean($(\"#AutoScroll\").val());\r\n\r\n if (IsAutoScrollOpen) {\r\n\r\n $(\".Pages\").hide();\r\n }\r\n //console.log(\"'\"+$(\".CatFirstPart\").html()+\"'\");\r\n\r\n if ($(\".CatFirstPart\").html() != undefined\r\n && $(\".CatFirstPart\").html() != null\r\n && $(\".CatFirstPart\").html() != \"\"\r\n && $(\".CatFirstPart\").html() != \" \"\r\n ) {\r\n //if ($(window).width() < 992) {\r\n // $(\".CatFirstPart\").textSummary({ maxlength: 55, morechar: \"\" });\r\n //} else {\r\n // $(\".CatFirstPart\").textSummary({ maxlength: 220, morechar: \"\" });\r\n //}\r\n }\r\n\r\n function GetHashParamValue(param) {\r\n if (window.location.hash.indexOf(\"&\" + param + \"=\") == -1) {\r\n return \"\";\r\n }\r\n\r\n var nmVL = window.location.hash.split(\"&\" + param + \"=\");\r\n\r\n return nmVL[1].split(\"&\")[0];\r\n }\r\n\r\n SetMobileGridIcon();\r\n GetQuickLookEvents();\r\n GetLeftCatalogList();\r\n ToggleLeftBarItems();\r\n ToggleLeftBar();\r\n SetFixedLeftBarHeigt();\r\n MarkToLastVisitedProducts();\r\n SetPriceSlider();\r\n FixedLeftBar();\r\n leftCatalogClick();\r\n\r\n if ($(\".Cat.Index\").length > 0 || $(\".Cat.NewSearch\").length > 0) {\r\n if ($(\".dortyuzdort\").length <= 0) {\r\n HammerActions();\r\n }\r\n }\r\n\r\n $(window).on(\"resize\", function () {\r\n SetFixedLeftBarHeigt();\r\n });\r\n\r\n if ($(window).width() > 991) {\r\n $(\".PageWidth\").attr(\"value\", \"1\");\r\n } else {\r\n $(\".PageWidth\").attr(\"value\", \"2\");\r\n }\r\n\r\n $(window).on(\"resize\", function () {\r\n\r\n if ($(window).width() > 991) {\r\n $(\".PageWidth\").attr(\"value\", \"1\");\r\n\r\n } else {\r\n $(\".PageWidth\").attr(\"value\", \"2\");\r\n }\r\n });\r\n\r\n var ScrollContentID = \"LastScrollTop\" + $(\"#PID\").val();\r\n var LastScrollTop = $.cookie(ScrollContentID);\r\n\r\n if (window.location.hash != undefined && window.location.hash.length > 0) {\r\n isScrolling = true;\r\n isFirstLoad = true;\r\n LoadPage = Number(GetHashParamValue(\"p\"));\r\n } else {\r\n isScrolling = false;\r\n if ($(window).width() < 767) {\r\n setTimeout(function () {\r\n $('html, body').scrollTop(0);\r\n }, 1000);\r\n }\r\n //on init sors analytics\r\n //setTimeout(function () {\r\n // _gaa = new jQuery.sorsAnalyticsClient(\"SW-OXXO\", {\r\n // onready: function () {\r\n\r\n // trackFunction();\r\n // onScrollTrack();\r\n // }\r\n // });\r\n //}, 500);\r\n }\r\n\r\n var grd = GetHashParamValue(\"g\");\r\n\r\n if ($(window).width() < 767 && grd != undefined && grd == \"\") {\r\n //$(\"#GridIcons input, #GridIcons label\").removeAttr(\"checked\");\r\n //$(\"#GridIcons input, #GridIcons label\").removeClass(\"checked\");\r\n //$(\"#GridIcons input, #GridIcons label\").removeClass(\"c_on\");\r\n\r\n var $checked = $(\"#GridIcons input[value='6']\");\r\n $checked.closest(\"li.gr\").find(\"label\").addClass(\"c_on checked\");\r\n\r\n $checked.prop(\"checked\", true);\r\n }\r\n\r\n $(window).bind('hashchange', function (e) {\r\n\r\n var hs = window.location.hash;\r\n\r\n var params = hs.replace(\"#\", \"\");\r\n\r\n if (hs == \"#_=_\") {\r\n window.location.hash = \"\";\r\n document.location.href = \"\";\r\n }\r\n\r\n if ($(\"form#FilterForm\").length > 0 && $(\"#Tag\").length == 0 || $(\"#CombineList\").length > 0) {\r\n\r\n //&& $(\"#sr\").length == 0\r\n\r\n $gizlenecekSecim = $(\".Products\");\r\n //$gizlenecekSecim.css(\"opacity\", \"0.1\");\r\n $(\".AjaxLoader\").show();\r\n\r\n var nmVL = params.split(\"&\");\r\n\r\n for (var i = 0; i < nmVL.length; i++) {\r\n var nmVL2 = nmVL[i].split(\"=\");\r\n\r\n for (var j = 0; j < nmVL2.length; j++) {\r\n if (nmVL2[0] == \"u\") {\r\n\r\n $(\"select#u option\").removeAttr(\"selected\");\r\n $(\"select#u option[value='\" + nmVL2[1] + \"']\").prop(\"selected\", true);\r\n\r\n $(\"#PrdItemNo input, #PrdItemNo label\").removeAttr(\"checked\");\r\n $(\"#PrdItemNo input, #PrdItemNo label\").removeClass(\"checked\");\r\n $(\"#PrdItemNo input, #PrdItemNo label\").removeClass(\"c_on\");\r\n\r\n var $checked = $(\"#PrdItemNo input[value='\" + nmVL2[1] + \"']\");\r\n $checked.prop(\"checked\", true);\r\n\r\n $checked.parent().find(\"label\").addClass(\"checked\");\r\n $checked.parent().find(\"label\").addClass(\"c_on\");\r\n $(\".FlinkItemCount\").text($checked.parent().find(\"label\").text());\r\n }\r\n\r\n if (nmVL2[0] == \"o\") {\r\n $(\"#PrdSort input, #PrdSort label\").removeAttr(\"checked\");\r\n $(\"#PrdSort input, #PrdSort label\").removeClass(\"checked\");\r\n $(\"#PrdSort input, #PrdSort label\").removeClass(\"c_on\");\r\n\r\n var $checked = $(\"#PrdSort input[value='\" + nmVL2[1] + \"']\");\r\n $checked.prop(\"checked\", true);\r\n\r\n $checked.parent().find(\"label\").addClass(\"checked\");\r\n $checked.parent().find(\"label\").addClass(\"c_on\");\r\n //$(\".fLinkSortNo\").html($checked.parent().find(\"label\").text() + \"
\");\r\n }\r\n\r\n if (nmVL2[0] == \"c\") {\r\n var selectedColor = nmVL2[1]; // Color değerleri alınır\r\n if (selectedColor != null && selectedColor != \"\" && selectedColor != undefined) {\r\n var selectedColors = selectedColor.split(',');\r\n $.each(selectedColors, function (key, value) {\r\n var $checked = $(\"#ColorFilters input[value='\" + value + \"']\");\r\n $checked.parent().addClass(\"selected\");\r\n });\r\n }\r\n }\r\n\r\n if (nmVL2[0] == \"prc\") {\r\n var selectedPrice = nmVL2[1]; // Color değerleri alınır\r\n if (selectedPrice != null && selectedPrice != \"\" && selectedPrice != undefined) {\r\n\r\n $(\"#SliderValue\").val(selectedPrice);\r\n var SelectedPrices = selectedPrice.split('-');\r\n\r\n var slider = document.getElementById('PriceSlider');\r\n slider.noUiSlider.set([SelectedPrices[0], SelectedPrices[1]]);\r\n }\r\n }\r\n\r\n if (nmVL2[0] == \"g\") {\r\n\r\n $(\"#GridIcons input, #GridIcons label\").removeAttr(\"checked\");\r\n $(\"#GridIcons input, #GridIcons label\").removeClass(\"checked\");\r\n $(\"#GridIcons input, #GridIcons label\").removeClass(\"c_on\");\r\n\r\n var $checked = $(\"#GridIcons input[value='\" + nmVL2[1] + \"']\");\r\n $checked.prop(\"checked\", true);\r\n\r\n $checked.parent().find(\"label\").addClass(\"checked\");\r\n $checked.parent().find(\"label\").addClass(\"c_on\");\r\n }\r\n\r\n var filterSelector = \"none\";\r\n if (nmVL2[0] == \"sc\") filterSelector = \"sc\";\r\n if (nmVL2[0] == \"c\") filterSelector = \"cl\";\r\n if (nmVL2[0] == \"b\") filterSelector = \"mr\";\r\n if (nmVL2[0] == \"sty\") filterSelector = \"sty\";\r\n if (nmVL2[0] == \"s\") filterSelector = \"sz\";\r\n\r\n //if (nmVL2[0] == \"prc\") {\r\n // $(\"input#prc\").attr(\"data-slider-value\", \"[\" + nmVL2[1] + \"]\");\r\n // var vlDefault = $(\"input#prc\").attr(\"data-slider-value\").replace(\"[\", \"\").replace(\"]\", \"\").split(\"-\");\r\n // $(\"input#prc\").attr(\"value\", vlDefault[0] + '-' + vlDefault[1]);\r\n // //$(\"input#prc\").val(nmVL2[1].split('-')[1]); \r\n //}\r\n\r\n if (filterSelector != \"none\") {\r\n $(\".fil\" + filterSelector + \" label\").removeAttr(\"checked\");\r\n $(\".fil\" + filterSelector + \" input\").removeClass(\"checked\");\r\n $(\".fil\" + filterSelector + \" label\").removeClass(\"c_on\");\r\n\r\n var ParamValues = nmVL2[1].split(\",\");\r\n\r\n for (var q = 0; q < ParamValues.length; q++) {\r\n\r\n var $checked = $(\".fil\" + filterSelector + \" input[value='\" + ParamValues[q] + \"']\");\r\n $checked.prop(\"checked\", true);\r\n\r\n $checked.parent().find(\"label\").addClass(\"checked\");\r\n $checked.parent().find(\"label\").addClass(\"c_on\");\r\n\r\n $(\".fil\" + filterSelector).closest(\"div\").find(\".RemoveFilter\").show();\r\n }\r\n }\r\n }\r\n }\r\n\r\n //var NewGrid = GetHashParamValue(\"g\");\r\n\r\n if (params == undefined || params == null || params == \"\") {\r\n existParams = compress($(\"form#FilterForm\").serialize());\r\n params = existParams.replace(\"#\", \"\");\r\n }\r\n\r\n if (params != undefined && params != null) {\r\n\r\n $(\".AjaxLoader\").show();\r\n isNewRequestAllowed = false;\r\n\r\n var defAdress = \"/Home/GetProductList\";\r\n\r\n if ($(\"#CombineList\").length > 0) {\r\n defAdress = \"/Cat/Combines\";\r\n }\r\n\r\n //calculate all loaded pages till current page\r\n if (isFirstLoad && LoadPage > 1) {\r\n var uParam = GetHashParamValue(\"u\");\r\n if (uParam == undefined || uParam == \"\") {\r\n uParam = 1;\r\n }\r\n else {\r\n uParam = Number(uParam);\r\n }\r\n\r\n var newUParam = LoadPage * uParam;\r\n\r\n params = ChangeHashedStringParamValue(params, \"u\", newUParam);\r\n params = ChangeHashedStringParamValue(params, \"p\", 1);\r\n }\r\n var lastindex = 0;\r\n\r\n $.ajax({\r\n type: \"GET\",\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p\" + defAdress + ($(\"#sr\").length > 0 ? \"?sr=\" + $(\"#sr\").val() : \"\"),\r\n data: params,\r\n cache: false,\r\n success: function (data) {\r\n\r\n //console.log(\"data\" + data);\r\n //$gizlenecekSecim.animate({\r\n // opacity: 1\r\n //}, 500, function () {\r\n //});\r\n\r\n if (defAdress === \"/Home/GetProductList\") {\r\n //#region DataLayer\r\n var DataLayerBegin = data.indexOf(\"\");\r\n\r\n var dataLayerCode = data.slice(DataLayerBegin, DataLayerEnd).replace(\"\", \"\");\r\n //console.log(\"dataLayerCode1: \" + dataLayerCode);\r\n\r\n if (dataLayerCode != null && dataLayerCode != undefined && dataLayerCode != \"\") {\r\n window.dataLayer = window.dataLayer || [];\r\n dataLayer.push(JSON.parse(dataLayerCode));\r\n }\r\n //#endregion DataLayer\r\n\r\n //#region InsiderObject\r\n var InsiderObjectBegin = data.indexOf(\"\");\r\n\r\n var InsiderObjectCode = data.slice(InsiderObjectBegin, InsiderObjectEnd).replace(\"\", \"\");\r\n //console.log(\"InsiderObjectCode:\" + InsiderObjectCode);\r\n\r\n if (InsiderObjectCode != null && InsiderObjectCode != undefined && InsiderObjectCode != \"\") {\r\n window.insider_object = JSON.parse(InsiderObjectCode);\r\n }\r\n //#endregion InsiderObject\r\n }\r\n\r\n $(\".AjaxLoader\").hide();\r\n isNewRequestAllowed = true;\r\n\r\n if (IsAutoScrollOpen && !isFirstLoad) {\r\n if ($(\".ProductList .NotFound\").length <= 0) {\r\n if ($(\"#GridIcons li label.checked\").parent().find(\"input\").val() == 3) {\r\n $(\".ProductColumn\").removeClass(\"col-md-16\");\r\n $(\".ProductColumn\").addClass(\"col-md-19\");\r\n } else {\r\n $(\".ProductColumn\").removeClass(\"col-md-19\");\r\n $(\".ProductColumn\").addClass(\"col-md-16\");\r\n }\r\n\r\n //after append data..\r\n $(\".Products\").promise().done(function () {\r\n\r\n if (!isScrolling) {\r\n //setTimeout(function () {\r\n // //console.log(\"first load = false\");\r\n // trackFunction();\r\n //}, 300);\r\n }\r\n });\r\n\r\n $(\".Products\").append(data);\r\n //$(\".FilterForm .FilterBoxes\").hide();\r\n\r\n //BEGIN - Filtreden seçim yapıldığında toplam ürün sayısını güncelliyoruz.\r\n var totalProductCount = $(\".Products #ProductCountTotal\").last().text();;\r\n $(\"#TotalSearchCount\").html(totalProductCount);\r\n //END\r\n }\r\n\r\n $(\".Pages:first\").html($(\".Products .Pages:eq(2)\").html());\r\n\r\n $(\".Products .Pages:gt(0)\").remove();\r\n\r\n if (IsAutoScrollOpen && $(\"#CombineList\").length <= 0) {\r\n\r\n $(\".Pages\").hide();\r\n }\r\n\r\n isFirstLoad = false;\r\n\r\n lastindex = $(\".Products .ProductList\").length;\r\n\r\n if (UseTagManager && lastindex != undefined) {\r\n AddFilterEvent(),\r\n AddImpression('');\r\n SendGaDataLayerVirtual();\r\n }\r\n\r\n //FilterRefresh();\r\n }\r\n else {\r\n\r\n if ($(\"#GridIcons li label.checked\").parent().find(\"input\").val() == 3) {\r\n $(\".ProductColumn\").removeClass(\"col-md-16\");\r\n $(\".ProductColumn\").addClass(\"col-md-19\");\r\n } else {\r\n $(\".ProductColumn\").removeClass(\"col-md-19\");\r\n $(\".ProductColumn\").addClass(\"col-md-16\");\r\n }\r\n\r\n $(\".Products\").html(data);\r\n\r\n //BEGIN - Filtreden seçim yapıldığında toplam ürün sayısını güncelliyoruz.\r\n var totalProductCount = $(\".Products #ProductCountTotal\").last().text();;\r\n $(\"#TotalSearchCount\").html(totalProductCount);\r\n //END\r\n\r\n isFirstLoad = false;\r\n\r\n if (LastScrollTop != undefined && LastScrollTop.length > 0) {\r\n LastScrollTop = Number(LastScrollTop);\r\n\r\n isScrolling = true;\r\n $('html, body').animate({\r\n scrollTop: LastScrollTop\r\n }, 500).promise().then(function () {\r\n if (_gaa == null) { //first init.\r\n\r\n //console.log(\"scroll\");\r\n\r\n isScrolling = false;\r\n\r\n //_gaa = new jQuery.sorsAnalyticsClient(\"SW-OXXO\", {\r\n // onready: function () {\r\n\r\n // trackFunction();\r\n // onScrollTrack();\r\n // }\r\n //});\r\n } else {\r\n //trackFunction(); \r\n }\r\n });\r\n\r\n $.cookie(ScrollContentID, null, { expires: -1 });\r\n }\r\n //FilterRefresh();\r\n }\r\n\r\n $(\".ProductList .Prd .UseLazyLoad\").Lazy();\r\n\r\n //#region DataLayer\r\n if (GetHashParamValue(\"f\") == \"\") {\r\n var say = 0;\r\n var page = Number(GetHashParamValue(\"p\"));\r\n\r\n var nextPage = (page - 1) * 48;\r\n\r\n $(\".Products .ProductList .Prd\").each(function () {\r\n say++;\r\n if (say % 6 == 1 && say > nextPage) {\r\n $(this).addClass(\"DataLayerPushPoint\");\r\n }\r\n });\r\n }\r\n\r\n ProductClickForDataLayer();\r\n //#endregion DataLayer\r\n\r\n IsFollowCatagory();\r\n\r\n if ($(\".CatBannerContainer\").length > 0 && $(\".backdrop\").length > 0) {\r\n\r\n $(\".PrdContainer .ProductList .Prd\").addClass(\"col-sm-12\");\r\n\r\n if ($(\"#GridIcons .gr input:checked:first\").val() != \"4\") {\r\n $(\".PrdContainer .ProductList .Prd\").removeClass(\"col-xs-24\").addClass(\"col-xs-12\");\r\n }\r\n else {\r\n $(\".PrdContainer .ProductList .Prd\").removeClass(\"col-xs-12\").addClass(\"col-xs-24\");\r\n }\r\n }\r\n }\r\n });\r\n }\r\n }\r\n });\r\n\r\n var finished = false;\r\n\r\n $('#ColorFilters > li.colorfilter a').click(function (event) {\r\n\r\n $li = $(this).closest(\"li\");\r\n\r\n if ($li.find(\"input:checked\").length > 0) {\r\n\r\n $li.find(\"input\").removeAttr(\"checked\");\r\n $li.removeClass(\"selected\");\r\n\r\n }\r\n else {\r\n\r\n $li.find(\"input\").attr(\"checked\", \"checked\");\r\n $li.addClass(\"selected\");\r\n\r\n }\r\n\r\n $li.find(\"input\").trigger(\"change\");\r\n\r\n });\r\n\r\n $(\".RemoveFilter\").live(\"click\", function () {\r\n\r\n $filterContainers = $(this).closest(\"div\");\r\n\r\n if ($filterContainers.find(\"input:checked\").length > 0) {\r\n\r\n $filterContainers.find(\"input\").removeAttr(\"checked\");\r\n $filterContainers.find(\"label\").removeClass(\"checked\");\r\n $filterContainers.find(\"label\").removeClass(\"c_on\");\r\n\r\n }\r\n\r\n $filterContainers.find(\"ul > li > input\").trigger(\"change\");\r\n\r\n });\r\n\r\n $('#ColorFilters > li input, #Styles > li input,#Departments > li input, #Sizes > li input, #PrdSort > li input, #Molds > li input, #PrdItemNo > li input, #GridIcons > li.gr input').live(\"change\", function (e) {\r\n\r\n //console.log(\"durum-1\");\r\n\r\n $curIput = $(this);\r\n $curLi = $(this).closest(\"li\");\r\n $curLabel = $curLi.find(\"label:first\");\r\n\r\n if ($(this).hasClass(\"RemoveFilter\")) {\r\n\r\n $filtercontainer = $(this).closest(\"div\");\r\n\r\n if ($filtercontainer.find(\"input:checked\").length > 0) {\r\n\r\n $filtercontainer.find(\"input\").removeAttr(\"checked\");\r\n $filtercontainer.find(\"label\").removeClass(\"checked\");\r\n $filtercontainer.find(\"label\").removeClass(\"c_on\");\r\n\r\n }\r\n\r\n //$(this).hide();\r\n }\r\n\r\n var GridVal = \"\";\r\n var SortVal = \"\";\r\n var ItemOnPage = \"&u=\" + $(\"#GridIcons #u\").val();\r\n\r\n\r\n\r\n if ($(this).closest(\"#GridIcons\").length > 0) {\r\n\r\n $(\"#GridIcons input\").removeAttr(\"checked\");\r\n $(\"#GridIcons label\").removeClass(\"checked\");\r\n $(\"#GridIcons label\").removeClass(\"c_on\");\r\n //console.log(\"durum-2\");\r\n\r\n if ($curIput.val() == '6' && $(\"#u option:selected\").val() == '16') {\r\n\r\n $(\"select#u option\").removeAttr(\"selected\");\r\n $(\"select#u option[value='24']\").prop(\"selected\", true);\r\n $(\"select#u\").parent().find(\"span.select\").html(\"24\");\r\n //console.log(\"durum-3\");\r\n }\r\n\r\n $curIput.attr(\"checked\", \"checked\");\r\n $curLabel.addClass(\"c_on\");\r\n\r\n GridVal = \"&g=\" + $curIput.val();\r\n\r\n if (IsAutoScrollOpen && GridVal != grd) {\r\n\r\n $(\".Products\").html(\"\");\r\n grd = GridVal;\r\n //console.log(\"durum-4\");\r\n }\r\n\r\n\r\n }\r\n\r\n if ($(this).closest(\"#PrdSort\").length > 0) {\r\n\r\n SortVal = \"&o=\" + $curIput.val();\r\n\r\n $(\"#PrdSort input\").removeAttr(\"checked\");\r\n $(\"#PrdSort label\").removeClass(\"checked\");\r\n $(\"#PrdSort label\").removeClass(\"c_on\");\r\n\r\n $curIput.attr(\"checked\", \"checked\");\r\n $curLabel.addClass(\"c_on\");\r\n\r\n //$(\"#PrdSort\").parent().hide();\r\n\r\n if ($(this).closest(\".FilterSortBy\").length > 0) {\r\n //$(this).closest(\"#PrdSort\").parent().hide();\r\n //$(this).closest(\".FilterSortBy\").find(\".filterLink\").text($(this).find(\"label:first\").text());\r\n }\r\n\r\n //$(\".fLinkSortNo\").text($(\"label\", $(this)).text());\r\n\r\n if (IsAutoScrollOpen) {\r\n $(\".Products\").html(\"\");\r\n }\r\n }\r\n\r\n if ($(this).closest(\"#Sizes\").length > 0) {\r\n\r\n if (IsAutoScrollOpen) {\r\n\r\n $(\".Products\").html(\"\");\r\n }\r\n }\r\n\r\n\r\n if ($(this).closest(\"#Styles\").length > 0) {\r\n\r\n if (IsAutoScrollOpen) {\r\n\r\n $(\".Products\").html(\"\");\r\n }\r\n }\r\n\r\n if ($(this).closest(\"#Departments\").length > 0) {\r\n\r\n if (IsAutoScrollOpen) {\r\n\r\n $(\".Products\").html(\"\");\r\n }\r\n }\r\n\r\n if ($(this).closest(\"#Molds\").length > 0) {\r\n\r\n if (IsAutoScrollOpen) {\r\n\r\n $(\".Products\").html(\"\");\r\n }\r\n }\r\n\r\n if ($(this).closest(\".filcl\").length > 0) {\r\n\r\n if (IsAutoScrollOpen) {\r\n $(\".Products\").html(\"\");\r\n }\r\n }\r\n\r\n if ($(this).closest(\"#PrdItemNo\").length > 0) {\r\n\r\n SortVal = \"&u=\" + $(\"input\", $(this)).val();\r\n\r\n $(\"#PrdItemNo input\").removeAttr(\"checked\");\r\n $(\"#PrdItemNo label\").removeClass(\"checked\");\r\n $(\"#PrdItemNo label\").removeClass(\"c_on\");\r\n\r\n $curIput.attr(\"checked\", \"checked\");\r\n $curLabel.addClass(\"c_on checked\");\r\n\r\n $(\"#PrdItemNo\").parent().hide();\r\n\r\n\r\n $(this).closest(\"#PrdItemNo\").parent().hide();\r\n $(\".FlinkItemCount\").text($(\"input\", $(this)).val());\r\n\r\n if (IsAutoScrollOpen) {\r\n $(\".Products\").html(\"\");\r\n }\r\n\r\n }\r\n\r\n //var $li = $(this);\r\n\r\n\r\n //if ($(\"input#prc\").length > 0) {\r\n // $(\"input#prc\").val($(\"input#prc\").val().replace(\",\", \"-\"));\r\n //}\r\n\r\n if ($curLi.find(\"input:first\").is(':checked')) {\r\n $curLi.find(\"input\").attr(\"checked\", \"checked\");\r\n $curLi.find(\"label:first\").addClass(\"c_on\");\r\n }\r\n else {\r\n $curLi.find(\"input\").removeAttr(\"checked\");\r\n $curLi.find(\"label\").removeClass(\"checked\");\r\n $curLi.find(\"label\").removeClass(\"c_on\");\r\n\r\n }\r\n\r\n //if ( !e.target.nodeName == \"INPUT\") {\r\n\r\n window.location.hash = compress($(this).closest(\"form\").serialize());\r\n\r\n //e.preventDefault();\r\n //return;\r\n //}\r\n\r\n\r\n\r\n\r\n });\r\n\r\n //$(\"#ColorFilters > li > label, #ColorFilters > li input\").live(\"click\", function (e)\r\n //{\r\n // e.preventDefault();\r\n // return;\r\n //});\r\n\r\n var a = window.location.hash;\r\n\r\n if ($(\"form#FilterForm\").length > 0 && a == \"\" && $(\"#sr\").length == 0 && $(\"#Tag\").length == 0) {\r\n\r\n var pgNo = \"1\";\r\n\r\n if ($('.Pages a.selected').length > 0) {\r\n\r\n pgNo = $('.Pages a.selected:first').attr(\"data-pgno\");\r\n }\r\n\r\n if ($(\"input#prc\").length > 0) {\r\n $(\"input#prc\").val($(\"input#prc\").val().replace(\",\", \"-\"));\r\n }\r\n\r\n if (IsAutoScrollOpen) {\r\n var paramPgNo = GetHashParamValue(\"p\");\r\n\r\n if (paramPgNo != undefined && paramPgNo.length > 0) {\r\n pgNo = pgNo;\r\n }\r\n }\r\n\r\n if (pgNo != \"1\" && (document.URL.indexOf(\"page=\").length <= 0 || window.location.hash.length > 0)) {\r\n window.location.hash = compress($(\"form#FilterForm\").closest(\"form\").serialize() + \"&p=\" + pgNo);\r\n //TitleChange(pgNo);\r\n }\r\n\r\n } else if ($(\"form#FilterForm\").length > 0 && a != \"\") {\r\n\r\n //change params on refresh\r\n var paramF = GetHashParamValue(\"f\");\r\n\r\n if (paramF == \"\") {\r\n paramF = \"&f=1\";\r\n }\r\n else {\r\n paramF = \"&f=\" + (Number(paramF) + 1);\r\n }\r\n\r\n var curHash = a.split(\"&f=\")[0] + paramF;\r\n\r\n window.location.hash = curHash;\r\n }\r\n\r\n $('.Pages a').live(\"click\", function (e) {\r\n\r\n $curPage = $(this);\r\n\r\n if (IsAutoScrollOpen) {\r\n\r\n //$nextPage = $('.Pages a.selected').next(); \r\n //$('.Pages a').removeClass(\"selected\");\r\n //$nextPage.addClass(\"selected\");\r\n\r\n\r\n } else {\r\n\r\n $('html, body').animate({\r\n scrollTop: $(\"div.row.Products\").offset().top + -90\r\n }, 500);\r\n\r\n }\r\n\r\n if ($(\"input#prc\").length > 0) {\r\n $(\"input#prc\").val($(\"input#prc\").val().replace(\",\", \"-\"));\r\n }\r\n\r\n\r\n if ($(\"#CombineList\").length > 0) {\r\n\r\n window.location.hash = \"p=\" + $curPage.attr(\"data-pgno\");\r\n //TitleChange(pgNo);\r\n\r\n }\r\n else {\r\n\r\n pgNo = $curPage.attr(\"data-pgno\");\r\n\r\n if (IsAutoScrollOpen) {\r\n\r\n var paramPgNo = GetHashParamValue(\"p\");\r\n\r\n if (paramPgNo != undefined && paramPgNo.length > 0) {\r\n pgNo = Number(paramPgNo) + 1;\r\n }\r\n }\r\n\r\n window.location.hash = compress($(\"form#FilterForm\").serialize()) + \"&p=\" + pgNo;\r\n //TitleChange(pgNo);\r\n\r\n }\r\n\r\n e.preventDefault;\r\n return false;\r\n\r\n });\r\n\r\n $('#GridIcons #u').live(\"change\", function () {\r\n //console.log(\"geldi\");\r\n if (IsAutoScrollOpen == false) {\r\n $('html, body').animate({\r\n scrollTop: $(\"div.row.Products\").offset().top\r\n }, 500);\r\n }\r\n\r\n\r\n if ($(\"input#prc\").length > 0) {\r\n $(\"input#prc\").val($(\"input#prc\").val().replace(\",\", \"-\"));\r\n }\r\n\r\n $curPage(\".Pages a.selected\");\r\n\r\n pgNo = $curPage.attr(\"data-pgno\");\r\n\r\n if (IsAutoScrollOpen) {\r\n\r\n var paramPgNo = GetHashParamValue(\"p\");\r\n\r\n if (paramPgNo != undefined && paramPgNo.length > 0) {\r\n pgNo = Number(paramPgNo);\r\n }\r\n\r\n }\r\n\r\n window.location.hash = compress($(\"form#FilterForm\").serialize()) + \"&p=\" + pgNo;\r\n //TitleChange(pgNo);\r\n });\r\n\r\n //$(\".filterLink\").on(\"click\", function () {\r\n // $(\".FilterBoxes\").not($(this).next(\".FilterBoxes\")).hide();\r\n // $(this).next(\".FilterBoxes\").toggle();\r\n // if ($(this).closest(\".FilterSortBy\").length > 0) {\r\n // $(this).next(\".FilterBoxes\").toggle();\r\n // }\r\n //});\r\n\r\n //$(\".filterLink\").live(\"click\",function (e) {\r\n // $(\".FilterBoxes\").not($(this).next(\".FilterBoxes\")).slideUp(\"fast\");\r\n // $(this).next(\".FilterBoxes\").slideToggle(\"fast\");\r\n\r\n // if ($(this).closest(\".FilterSortBy\").length > 0) {\r\n // $(this).next(\".FilterBoxes\").toggle(\"fast\");\r\n // }\r\n //});\r\n\r\n var hs1 = window.location.hash;\r\n\r\n if ($(\"form#FilterForm\").length <= 0 && location.href.indexOf(\"ct=\") != -1) {\r\n if (hs1 == \"#_=_\") {\r\n window.location.hash = \"\";\r\n document.location.href = \"\";\r\n }\r\n\r\n hs1 = hs1.replace(\"#\", \"\");\r\n\r\n if ($(\"#\" + hs1 + \"\").length > 0) {\r\n $(\"#ContactMap, #ContactInfo, #ContactForm\").hide();\r\n\r\n $(\"#\" + hs1 + \"\").show(\"slow\");\r\n }\r\n }\r\n\r\n //$('.ToogleFilters').on('click', function (e, index) {\r\n // $(\".FilterForm\").toggleClass(\"ShowFilters\");\r\n // $(this).toggleClass(\"active\");\r\n //});\r\n\r\n $(\"section.FilterOption ul>li>input[type=checkbox]\").live(\"change\", function () {\r\n\r\n if ($(this).is(':checked')) {\r\n $(this).next(\"label\").addClass(\"checked\");\r\n }\r\n else {\r\n $(this).next(\"label\").removeClass(\"checked\");\r\n }\r\n });\r\n\r\n if ($(\"ul#ColorFilters>li>label\").exists) {\r\n\r\n $(\"ul#ColorFilters>li>label.Colored\").each(function () {\r\n var c = $(this).css(\"background-color\");\r\n var xColor = [];\r\n if (c.length <= 7) {\r\n xColor = [hexToRgb(c).r, hexToRgb(c).g, hexToRgb(c).b];\r\n }\r\n else {\r\n xColor = c.replace(/^(rgb|rgba)\\(/, '').replace(/\\)$/, '').replace(/\\s/g, '').split(',');\r\n }\r\n\r\n $(this).css(\"color\", RenkKontrol(xColor) ? \"white\" : \"black\");\r\n });\r\n }\r\n\r\n //if ($(\"input#prc\").length > 0) {\r\n // var vlDefault = $(\"input#prc\").attr(\"data-slider-value\").replace(\"[\", \"\").replace(\"]\", \"\").split(\",\");\r\n\r\n // $(\"input#prc\").attr(\"value\", vlDefault[0] + '-' + vlDefault[1]);\r\n\r\n // $(\"#prc\").slider({\r\n // //formater: function (value) {\r\n // // return '' + $(\".TL\").first().html() + ' ' + value;\r\n // //}\r\n // });\r\n\r\n // $(\"#prc\").slider().on('slideStop', function (ev) {\r\n\r\n // var vl = $(\"input#prc\").val().split(\",\");\r\n\r\n // $(\"input#prc\").attr(\"value\", vl[0] + '-' + vl[1]);\r\n // $(\"input#prc\").attr(\"value\", $(\"input#prc\").attr(\"value\").replace(\"-undefined\", \"\"));\r\n\r\n // if ($(\".CurMinPrice\").length > 0) {\r\n\r\n // var curCode = $(\".CurValues\").data(\"code\");\r\n\r\n // $(\".CurMinPrice\").text(vl[0] + \" \" + curCode);\r\n // $(\".CurMaxPrice\").text(vl[1] + \" \" + curCode);\r\n // }\r\n\r\n // window.location.hash = compress($(\"form#FilterForm\").serialize());\r\n\r\n // if (IsAutoScrollOpen == false) {\r\n\r\n // if ($(\"div.row-fluid.Products\").length > 0) {\r\n // $('html, body').animate({\r\n // scrollTop: $(\"div.row-fluid.Products\").offset().top + -130\r\n // }, 500);\r\n // }\r\n // else if ($(\"div.row.Products\").length > 0) {\r\n // $('html, body').animate({\r\n // scrollTop: $(\"div.row.Products\").offset().top + -130\r\n // }, 500);\r\n // }\r\n // }\r\n // else {\r\n // $(\".Products\").html(\"\");\r\n // }\r\n // });\r\n\r\n // $(\".FilterOption .slider-horizontal\").removeAttr(\"style\");\r\n // $(\".FilterOption .slider-horizontal\").width(\"\");\r\n\r\n // $(\"input#prc\").hide();\r\n //}\r\n\r\n //if ($(\"input#prc\").length > 0) {\r\n // $(\"#prc\").slider({\r\n // formater: function (value) {\r\n // return '' + $(\".TL\").first().html() + ' ' + value;\r\n // }\r\n // });\r\n //}\r\n\r\n $('.CatShowMore').on('click', function (e, index) {\r\n\r\n $(this).hide();\r\n $('.CatShowLess').show();\r\n $('.CatSecondPart').show();\r\n });\r\n\r\n $('.CatShowLess').on('click', function (e, index) {\r\n\r\n $(this).hide();\r\n $('.CatShowMore').show();\r\n $('.CatSecondPart').hide();\r\n\r\n });\r\n\r\n if ($(\".CatBannerContainer\").length > 0 && $(\".backdrop\").length > 0) {\r\n $(\".PrdContainer .ProductList .Prd\").addClass(\"col-sm-12\");\r\n $(\".PrdContainer .ProductList .Prd\").addClass(\"col-xs-12\");\r\n }\r\n\r\n $curCatalog = $(\"#MainNewMenu a[data-rel='\" + $(\"#PID\").val() + \"']\");\r\n\r\n //if ($curCatalog.length > 0) {\r\n // $curUL = $curCatalog.closest(\"li\").find(\"ul\").first().clone();\r\n\r\n // $(\".SubCatNavs\").html(\"\");\r\n // $(\".SubCatNavs\").append($curUL);\r\n // $(\".WithSub .SubCatNavs ul li:gt(6)\").remove();\r\n //}\r\n\r\n $(\"#QuickLookModal .ProductSuggestHeader\").live(\"click\", function (e) {\r\n\r\n $(\"#QuickLookModal .Productsuggest\").toggle();\r\n $(\"#QuickLookModal .CombineInfoPd\").toggle();\r\n\r\n });\r\n\r\n $(\".QuickLookBtn\").live(\"click\", function (e) {\r\n\r\n\r\n var ProductID = $(this).data(\"productid\");\r\n var ColorID = $(this).data(\"colorid\");\r\n\r\n $Modal = $(\"div#QuickLookModal\");\r\n $productLink = $(this).closest(\".Prd\").find(\"a\").first().attr(\"href\");\r\n\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/ProductDetails/QuickLook\",\r\n data: 'ProductID=' + ProductID + \"&ColorID=\" + ColorID,\r\n success: function (dt) {\r\n $(\"div#QuickLookModal .modal-body\").html(dt);\r\n\r\n $(\".ProductDetail .Colors a[data-id='\" + ColorID + \"']\").trigger(\"click\");\r\n $(\"#QuickLookModal .DropItems a:first-child\").trigger(\"click\");\r\n\r\n $(\"a.fullDetailBtn\").live(\"click\", function () {\r\n window.location.href = $productLink;\r\n });\r\n\r\n\r\n }\r\n });\r\n\r\n\r\n $Modal.modal(\"show\");\r\n\r\n if (typeof UseSwStat != 'undefined' && UseSwStat == true) {\r\n\r\n var swParams = GetSwPageParams();\r\n\r\n swParams = ChangeSwHashedStringParamValue(swParams, \"ActionType\", \"UrunGoruntuleme\");\r\n\r\n swParams = AddSwParam(swParams, \"ProductID\", ProductID);\r\n swParams = AddSwParam(swParams, \"ColorID\", ColorID);\r\n\r\n swParams = AddSwParam(swParams, \"SubActionType\", \"HizliBakis\");\r\n \r\n\r\n }\r\n\r\n return false;\r\n e.preventDefault();\r\n\r\n\r\n });\r\n\r\n $(\".QuickLookLikeBtn.QuickLookLikePassive\").live(\"click\", function (event) {\r\n\r\n $(\".AjaxLoader\").show();\r\n $(\".backdrop\").addClass(\"ShowBackdropWithMenu\");\r\n\r\n var ProductID = \"\";\r\n var ColorID = \"\";\r\n $That = $(this);\r\n ProductID = $($(this)).attr(\"data-productidlike\");\r\n ColorID = $($(this)).attr(\"data-coloridlike\");\r\n event.preventDefault();\r\n\r\n $.ajax($(this).attr('href')).done(function (response) {\r\n\r\n if ($That.hasClass(\"QuickLookLikePassive\")) {\r\n if (ColorID != undefined && ProductID != undefined) {\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/Cart/AddToFollowList\",\r\n data: 'colorID=' + ColorID + \"&productID=\" + ProductID,\r\n dataType: 'json',\r\n async: false,\r\n success: function (dt) {\r\n if (dt.Sonuc == true) {\r\n\r\n $That.removeClass(\"QuickLookLikePassive\");\r\n $That.addClass(\"QuickLookLikeActive\");\r\n\r\n if ($($That).hasClass(\"QuickLookLikeActive\")) {\r\n //$($That).css(\"background-image\", \"url(/Images/OXNW/like_full.png)\");\r\n $($That).children(\"img\").attr(\"src\", \"/Images/OXNW/like_full.svg\");\r\n }\r\n }\r\n else {\r\n alert('Favorilere Eklemek için giriş yapınız.');\r\n }\r\n\r\n $(\".AjaxLoader\").hide();\r\n $(\".backdrop\").removeClass(\"ShowBackdropWithMenu\");\r\n },\r\n error: function (httpObj, textStatus) {\r\n if (httpObj.status == 401) { alert('Favorilere Eklemek için giriş yapınız.'); }\r\n else { alert('Talebiniz yerine getirilirken bir hata oluştu. Lütfen daha sonra tekrar deneyiniz.!'); }\r\n $(\".AjaxLoader\").hide();\r\n $(\".backdrop\").removeClass(\"ShowBackdropWithMenu\");\r\n }\r\n });\r\n }\r\n }\r\n\r\n });\r\n });\r\n\r\n $(\".QuickLookLikeBtn.QuickLookLikeActive\").live(\"click\", function (event) {\r\n\r\n $(\".AjaxLoader\").show();\r\n $(\".backdrop\").addClass(\"ShowBackdropWithMenu\");\r\n\r\n var ProductID = \"\";\r\n var ColorID = \"\";\r\n $That = $(this);\r\n ProductID = $($(this)).attr(\"data-productidlike\");\r\n ColorID = $($(this)).attr(\"data-coloridlike\");\r\n event.preventDefault();\r\n\r\n $.ajax($(this).attr('href')).done(function (response) {\r\n\r\n if ($That.hasClass(\"QuickLookLikeActive\")) {\r\n if (ProductID != undefined) {\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/Cart/RemoveFromList\",\r\n data: 'id=' + ProductID + \"&IsDetail=true\",\r\n dataType: 'json',\r\n async: false,\r\n success: function (dt) {\r\n if (dt.Sonuc == true) {\r\n $That.removeClass(\"QuickLookLikeActive\");\r\n $That.addClass(\"QuickLookLikePassive\");\r\n\r\n if ($($That).hasClass(\"QuickLookLikePassive\")) {\r\n //$($That).css(\"background-image\", \"url(/Images/OXNW/new_like_transparent.png)\");\r\n $($That).children(\"img\").attr(\"src\", \"/Images/OXNW/like_none.svg\");\r\n }\r\n }\r\n $(\".AjaxLoader\").hide();\r\n $(\".backdrop\").removeClass(\"ShowBackdropWithMenu\");\r\n },\r\n error: function (httpObj, textStatus) {\r\n if (httpObj.status == 401) {\r\n alert('Favorilerden çıkartmak için giriş yapınız.');\r\n }\r\n else {\r\n alert('Talebiniz yerine getirilirken bir hata oluştu. Lütfen daha sonra tekrar deneyiniz.!');\r\n }\r\n $(\".AjaxLoader\").hide();\r\n $(\".backdrop\").removeClass(\"ShowBackdropWithMenu\");\r\n }\r\n });\r\n }\r\n }\r\n\r\n });\r\n });\r\n\r\n $('#QuickLookModal').on('shown.bs.modal', function () {\r\n GetMemberCardPriceForQuickLook();\r\n\r\n });\r\n\r\n\r\n\r\n //$('.ToogleFilters').live('click', function (e, index) {\r\n\r\n // $(\"#FilterForm\").slideToggle(); //toggleClass(\"ShowFilters\");\r\n // //$(this).toggleClass(\"active\");\r\n\r\n //});\r\n\r\n $(window).scroll(function () {\r\n\r\n var scroltoview = isScrolledIntoView($(\".Products\"));\r\n\r\n if (scroltoview && isNewRequestAllowed) {\r\n\r\n $nextPg = $(\".Pages:first a.selected:first\").next(\"a\");\r\n\r\n if ($nextPg.length > 0 && $(\".ProductList .NotFound\").length <= 0) {\r\n\r\n $nextPg.trigger(\"click\");\r\n\r\n } else {\r\n\r\n $(\"#CatalogEnded\").show();\r\n $(\".ProductList .NotFound\").hide();\r\n }\r\n }\r\n\r\n\r\n });\r\n\r\n});","var CheckOutPath = \"CheckOut\";\r\nvar CheckOutAddressPath = \"CheckOutAddress\";\r\nvar CheckOutValidator = \"CheckoutValidation\";\r\nvar CheckoutPayment = \"CheckoutPayment\";\r\nvar isSingleLineCreditCard = false;\r\n\r\nfunction ShowInstallmentByBankCode(BankCode, cardType, BankLogoPath) {\r\n var activeCls = $(\"#PaymentGroups .PaymentGroupItem.active:first input:first\").attr(\"data-payment\");\r\n\r\n //console.warn(\"Durum-3 \" + BankCode + \"*\" + \"--\" + cardType + \"*\" + \"--\" + BankLogoPath + \"*--\" + activeCls);\r\n\r\n\r\n\r\n $(\"#PosGroups .PosGroupItem\").hide();\r\n\r\n switch (cardType) {\r\n\r\n\r\n case \"Credit\":\r\n if (activeCls != \"KrediKarti\") {\r\n\r\n AutoFillBankLogo = BankLogoPath;\r\n activeCls = \"KrediKarti\";\r\n\r\n $(\".PaymentGroupSelectNew li\").removeClass(\"active\");\r\n $(\".PaymentGroupSelectNew li a.KrediKarti\").parent().addClass(\"active\");\r\n $(\".PaymentGroupSelectNew li a input\").removeAttr(\"checked\");\r\n $(\".PaymentGroupSelectNew li a.KrediKarti input\").attr(\"checked\", \"checked\");\r\n $(\".PaymentGroupSelectNew li a.KrediKarti input\").trigger(\"change\");\r\n //console.warn(\"Durum-4\");\r\n if (BankLogoPath != undefined && BankLogoPath != \"\") {\r\n\r\n $(\"div#CreditCardLogo > img\").show();\r\n $(\"div#CreditCardLogo > img\").attr(\"src\", \"/ContentImages/Banks/\" + BankLogoPath);\r\n }\r\n\r\n }\r\n break;\r\n\r\n case \"Debit\":\r\n if (activeCls != \"DebitCard\") {\r\n\r\n //console.warn(\"Durum-5\");\r\n AutoFillBankLogo = BankLogoPath;\r\n\r\n activeCls = \"DebitCard\";\r\n\r\n $(\".PaymentGroupSelectNew li\").removeClass(\"active\");\r\n $(\".PaymentGroupSelectNew li a.DebitCard\").parent().addClass(\"active\");\r\n\r\n $(\".PaymentGroupSelectNew li a input\").removeAttr(\"checked\");\r\n $(\".PaymentGroupSelectNew li a.DebitCard input\").attr(\"checked\", \"checked\");\r\n\r\n //Debite Geçiş\r\n $(\".PaymentGroupSelectNew li a.DebitCard input\").trigger(\"change\");\r\n\r\n if (BankLogoPath != undefined && BankLogoPath != \"\") {\r\n\r\n $(\"div#CreditCardLogo > img\").show();\r\n $(\"div#CreditCardLogo > img\").attr(\"src\", \"/ContentImages/Banks/\" + BankLogoPath);\r\n\r\n }\r\n\r\n\r\n\r\n }\r\n\r\n break;\r\n\r\n }\r\n\r\n $(\".Installments ul\").hide();\r\n\r\n if (activeCls == \"KrediKarti\") {\r\n $(\".Installments ul.InstallmentHeader\").show();\r\n } else {\r\n $(\".AllInstallments\").hide();\r\n $(\"#PaymentBanners\").hide();\r\n }\r\n\r\n //Banka kredi kartı title\r\n $(\".Installments .BarInner span\").hide();\r\n $(\".Installments .BarInner span.\" + activeCls).show();\r\n\r\n var cardown = $(\"#CardOwner:first\").val();\r\n\r\n //Amex ve ShopAndMiles Taksit gösterme, ama garantiden geç\r\n var isAmex = false;\r\n var isShopAndMiles = false;\r\n if (LastCardName.toUpperCase().indexOf(\"AMEX\") > -1) isAmex = true;\r\n if (LastCardName.toUpperCase().indexOf(\"MASTER SM\") > -1 || LastCardName.toUpperCase().indexOf(\"VISA SM\") > -1) isShopAndMiles = true;\r\n if (isAmex || isShopAndMiles) BankCode = \"62\";\r\n\r\n //Banka koduna ait taksit seçeneği varsa\r\n if ($(\".Installments ul[data-rel='\" + BankCode + \"'][data-cardtype='\" + activeCls + \"']\").length > 0 && cardown.toUpperCase() != \"BÜTÜN POSLAR\") {\r\n\r\n $(\"#PosGroups .PosGroupItem[data-rel='\" + BankCode + \"']\").show();\r\n $(\"#PosGroups .PosGroupItem[data-rel='\" + BankCode + \"']\").addClass(\"active\");\r\n\r\n $(\".Installments ul[data-rel='\" + BankCode + \"'][data-cardtype='\" + activeCls + \"']\").show();\r\n $(\".Installments ul[data-rel='\" + BankCode + \"'][data-cardtype='\" + activeCls + \"'] li\").show();\r\n\r\n //Pos başlık logo ile birlikte göster/gizle hide olduğunda sadece taksitler görünür.\r\n $(\".Installments ul[data-rel='\" + BankCode + \"'][data-cardtype='\" + activeCls + \"'] .PosHeader\").show();\r\n $(\".Installments ul[data-rel='\" + BankCode + \"'][data-cardtype='\" + activeCls + \"'] li.FirstInstallment:first input\").attr(\"checked\", \"checked\");\r\n $(\".Installments ul[data-rel='\" + BankCode + \"'][data-cardtype='\" + activeCls + \"'] li.FirstInstallment:first input\").trigger(\"change\");\r\n $(\".Installments ul.InstallmentHeader\").show();\r\n\r\n if (isAmex || isShopAndMiles) {\r\n\r\n $(\".Installments ul[data-rel='\" + BankCode + \"'][data-cardtype='\" + activeCls + \"'] li\").hide();\r\n $(\".Installments ul[data-rel='\" + BankCode + \"'][data-cardtype='\" + activeCls + \"'] li.FirstInstallment\").show();\r\n\r\n }\r\n\r\n }\r\n else {\r\n\r\n //Banka koduna ait taksit seçeneği YOKSA tek çekim göster \r\n if (cardown != \"BÜTÜN POSLAR\") {\r\n\r\n\r\n //if (BankCode != -1 && BankCode != 0)\r\n //{\r\n\r\n // $(\"#PosGroups .PosGroupItem[data-webposid='other']\").show();\r\n // $(\"#PosGroups .PosGroupItem[data-webposid='other']\").addClass(\"active\");\r\n\r\n // $(\".Installments ul.DefaultPos[data-cardtype='\" + activeCls + \"'] li\").hide();\r\n // $(\".Installments ul.DefaultPos[data-cardtype='\" + activeCls + \"'] .PosHeader\").hide();\r\n // $(\".Installments ul.DefaultPos[data-cardtype='\" + activeCls + \"']:first\").show();\r\n // $(\".Installments ul.DefaultPos[data-cardtype='\" + activeCls + \"'] li.FirstInstallment:first\").show();\r\n // $(\".Installments ul.DefaultPos[data-cardtype='\" + activeCls + \"'] li.FirstInstallment:first input\").attr(\"checked\", \"checked\");\r\n // $(\".Installments ul.DefaultPos[data-cardtype='\" + activeCls + \"'] li.FirstInstallment:first input\").trigger(\"change\");\r\n // $(\".Installments ul.InstallmentHeader\").hide();\r\n //}\r\n //else {\r\n\r\n $(\".Installments ul.DefaultPos\").show();\r\n $(\".Installments ul.DefaultPos\").find(\"li.FirstInstallment:first input\").attr(\"checked\", \"checked\");\r\n $(\".Installments ul.DefaultPos\").find(\"li.FirstInstallment:first input\").trigger(\"change\");\r\n\r\n //}\r\n\r\n\r\n\r\n }\r\n else {\r\n\r\n //--------------------------------------------------------------------------------------------------------------------- \r\n //Banka koduna ait taksit seçeneği YOKSA tüm taksitleri göster \r\n $(\".Installments ul[data-cardtype='\" + activeCls + \"']\").show();\r\n $(\".Installments ul[data-cardtype='\" + activeCls + \"'] li\").show();\r\n $(\".Installments ul[data-cardtype='\" + activeCls + \"'] .PosHeader\").show();\r\n $(\".Installments ul.DefaultPos[data-cardtype='\" + activeCls + \"'] li.FirstInstallment:first input\").attr(\"checked\", \"checked\");\r\n $(\".Installments ul.DefaultPos[data-cardtype='\" + activeCls + \"'] li.FirstInstallment:first input\").trigger(\"change\");\r\n }\r\n\r\n\r\n }\r\n\r\n\r\n}\r\n\r\nvar firstBin = \"\";\r\nvar lastBin = \"\";\r\nvar AutoFillCard1 = \"\";\r\nvar AutoFillBankCode = \"-1\";\r\nvar AutoFillCard2 = \"\";\r\nvar AutoFillName = \"\";\r\nvar AutoFillBankLogo = \"\";\r\nvar LastCardName = \"\";\r\n\r\nfunction CheckBinNumber(t, t_1, t_2) {\r\n\r\n var t_1 = $(\"#CardNumbers > input#CardNumber1\").val().replace(/\\D/g, '');\r\n var t_2 = $(\"#CardNumbers > input#CardNumber2\").val().replace(/\\D/g, '');\r\n var t_3 = $(\"#CardNumbers > input#CardNumber3\").val().replace(/\\D/g, '');\r\n var t_4 = $(\"#CardNumbers > input#CardNumber4\").val().replace(/\\D/g, '');\r\n\r\n var t = (t_1 + t_2);\r\n\r\n if (t.length >= 8 && (isSingleLineCreditCard || (t_1.length == 4 && t_2.length >= 4))) {\r\n\r\n var tval6 = t.substring(0, 8);\r\n lastBin = tval6;\r\n\r\n if (lastBin != firstBin) {\r\n\r\n $.ajax({\r\n url: \"/\" + CheckoutPayment + \"/CardDetails\",\r\n dataType: 'json',\r\n async: true,\r\n data: \"BinNo=\" + tval6,\r\n success: function (jsonReturn) {\r\n\r\n if (jsonReturn.length !== 0) {\r\n\r\n $.each(jsonReturn, function (index, element) {\r\n var ax = (element.ID + \"-\");\r\n\r\n $(\"div#CreditCardLogo > img\").show();\r\n $(\"div#CreditCardLogo > img\").attr(\"src\", \"/ContentImages/Banks/\" + element.BankLogoPath);\r\n\r\n $bankCode = element.BankCode;\r\n $cardType = element.CardType;\r\n\r\n bnkCode = element.BankCode;\r\n cardType = element.CardType;\r\n AutoFillBankCode = bnkCode;\r\n var LogoPath = element.BankLogoPath;\r\n //console.warn(element);\r\n if (element.CardLogoPath != undefined && element.CardLogoPath.length > 0) {\r\n LogoPath = element.BankLogoPath;\r\n }\r\n\r\n LastCardName = element.CardName;\r\n ShowInstallmentByBankCode(bnkCode, cardType, LogoPath);\r\n\r\n\r\n });\r\n\r\n }\r\n else {\r\n var cType = $(\"#PaymentGroups > label > input[name='PaymentGroup']:checked\").data(\"payment\");\r\n var card = \"\";\r\n\r\n if (cType == \"KrediKarti\") {\r\n card = \"Credit\";\r\n }\r\n else if (cType == \"DebitCard\") {\r\n card = \"Debit\";\r\n }\r\n\r\n //console.warn(\"Durum-2\" + \"**\" + card);\r\n bnkCode = \"-1\";\r\n AutoFillBankCode = \"-1\";\r\n ShowInstallmentByBankCode(bnkCode, -1, \"\");\r\n }\r\n\r\n\r\n }\r\n\r\n\r\n });\r\n\r\n firstBin = lastBin;\r\n\r\n }\r\n }\r\n}\r\n\r\n\r\n\r\nfunction formatCC(value) {\r\n var v = value.replace(/\\s+/g, '').replace(/[^0-9]/gi, '')\r\n var matches = v.match(/\\d{4,16}/g);\r\n var match = matches && matches[0] || ''\r\n var parts = []\r\n for (i = 0, len = match.length; i < len; i += 4) {\r\n parts.push(match.substring(i, i + 4))\r\n }\r\n if (parts.length) {\r\n return parts.join(' ')\r\n } else {\r\n return value\r\n }\r\n}\r\n\r\nfunction validateCardNumber(number) {\r\n var regex = new RegExp(\"^[0-9]{16}$\");\r\n if (!regex.test(number))\r\n return false;\r\n\r\n return luhnCheck(number);\r\n}\r\n\r\nfunction luhnCheck(val) {\r\n var sum = 0;\r\n for (var i = 0; i < val.length; i++) {\r\n var intVal = parseInt(val.substr(i, 1));\r\n if (i % 2 == 0) {\r\n intVal *= 2;\r\n if (intVal > 9) {\r\n intVal = 1 + (intVal % 10);\r\n }\r\n }\r\n sum += intVal;\r\n }\r\n return (sum % 10) == 0;\r\n}\r\n\r\nfunction IsNumeric(n) {\r\n return !isNaN(parseFloat(n)) && isFinite(n);\r\n}\r\n\r\nfunction ReloadOnTimeOut(dt) {\r\n\r\n if (dt != undefined) {\r\n\r\n //timeout no state found reload\r\n if (dt.StatusText == \"CheckOutStateTimeOut\" || dt.StatusText == \"Reload\") {\r\n\r\n $(\".AjaxLoader\").show();\r\n document.location.reload(true);\r\n }\r\n }\r\n}\r\n\r\nfunction PrepareAddressAndPayment() {\r\n\r\n if ($(\"#CurStep\").length > 0) {\r\n\r\n\r\n var step = $(\"#CurStep\").val();\r\n\r\n var url = \"\";\r\n\r\n if (step == \"Sepet\") {\r\n url = \"/\" + $(\"#SmallLangCode\").val() + \"/p/CheckOutAddress/PrepareUserAdresses\";\r\n }\r\n\r\n if (step == \"Adres\") {\r\n url = \"/\" + $(\"#SmallLangCode\").val() + \"/p/CheckOutPayment/PreparePayment\";\r\n }\r\n\r\n if (url.length > 0) {\r\n $.ajax({\r\n type: 'post',\r\n url: url,\r\n success: function (dt) {\r\n\r\n }\r\n });\r\n }\r\n\r\n }\r\n}\r\n\r\n\r\nfunction SetPaymentType(webPosInstallmentID, BankID) {\r\n\r\n if (BankID == undefined) { BankID = 0; }\r\n\r\n $.ajax({\r\n type: 'post',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/CheckOutPayment/SetPaymentType?webPosInstallmentID=\" + webPosInstallmentID + \"&bankID=\" + BankID,\r\n success: function (dt) {\r\n\r\n ReloadOnTimeOut(dt);\r\n\r\n if (dt.Status) {\r\n\r\n //window.dataLayer = window.dataLayer || [];\r\n //dataLayer.push({\r\n // \"event\" : \"ee_checkout3\",\r\n // \"option\": dt.Result\r\n //});\r\n\r\n RefreshOrderSummary(false, false);\r\n\r\n } else {\r\n\r\n SetErrorResults($(\"#Erros\"), dt.ResultDescription, true, true);\r\n }\r\n }\r\n\r\n });\r\n\r\n}\r\n\r\nfunction ReloadPure() {\r\n $(\".AjaxLoader\").show();\r\n $(\".container\").css(\"opacity\", \"0.5\");\r\n document.location.reload(true);\r\n}\r\n\r\nfunction ReloadPage() {\r\n\r\n $(\".AjaxLoader\").show();\r\n $(\".container\").css(\"opacity\", \"0.5\");\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + '/p/CheckOutCart/RemoveCoupon',\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: 'json',\r\n success: function (dt) {\r\n\r\n }\r\n });\r\n\r\n\r\n document.location.reload(true);\r\n\r\n}\r\n\r\nfunction SetErrorResults(target, errors, clear, slideDown) {\r\n\r\n\r\n $('html,body').animate({ scrollTop: 0 }, 'slow', function () { });\r\n\r\n if (clear) {\r\n $(target).html(\"\");\r\n }\r\n\r\n if (errors != undefined && errors.length > 0) {\r\n\r\n for (var i = 0; i < errors.length; i++) {\r\n if (errors[i] != \"\" && errors[i] != undefined && errors[i] != null) {\r\n $(target).append(\"- \" + errors[i] + \" \");\r\n }\r\n\r\n }\r\n\r\n if (slideDown) {\r\n\r\n $(target).show();\r\n }\r\n else {\r\n $(target).show();\r\n }\r\n }\r\n\r\n}\r\n\r\nfunction GetAddressForm(url) {\r\n\r\n if ($(\"#AddressArea\").length > 0) {\r\n\r\n $.ajax({\r\n type: \"GET\",\r\n cache: false,\r\n url: url,\r\n success: function (dt) {\r\n\r\n ReloadOnTimeOut(dt);\r\n $(\"#AddressArea\").html(dt);\r\n HandleAddressInputs();\r\n\r\n }\r\n });\r\n\r\n }\r\n}\r\n\r\nfunction GetAdressFromFirstLoad() {\r\n\r\n if ($(\".loadform\").length > 0) {\r\n var url = \"/\" + $(\"#SmallLangCode\").val() + \"/p/\" + CheckOutAddressPath + \"/EditOrCreate\";\r\n GetAddressForm(url);\r\n }\r\n\r\n}\r\n\r\nfunction RefreshOrderSummary(animateTop, showCouponLine) {\r\n\r\n\r\n $.ajax({\r\n type: 'get',\r\n cache: false,\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/\" + CheckOutPath + \"/summary\",\r\n success: function (dt) {\r\n $(\"#OrderSummary\").html(dt);\r\n\r\n if (showCouponLine) {\r\n\r\n $(\".CouponLine\").hide();\r\n $(\".CouponLine\").show(\"slow\");\r\n\r\n if ($(\"#CouponModal\").length > 0) {\r\n $(\"#CouponModal\").modal(\"hide\");\r\n }\r\n }\r\n\r\n //if (animateTop) {\r\n // $('html,body').animate({ scrollTop: 2000 }, 'slow', function () { });\r\n //}\r\n\r\n }\r\n\r\n });\r\n\r\n\r\n\r\n}\r\n\r\nfunction RefreshCargoList() {\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/CheckOutAddress/GetCargoList\",\r\n success: function (dt) {\r\n $(\"#CargoList\").html(dt);\r\n }\r\n });\r\n}\r\n\r\nfunction HandleAddressInputs() {\r\n console.log(\"Telefon değişikliği filtrelemesi\");\r\n\r\n if ($(\".OrderAdressForm\").length > 0) {\r\n\r\n if ($(\".OrderAdressForm #Phone2\").length > 0) {\r\n\r\n if ($(\".OrderAdressForm #Phone2\").val().length <= 0) {\r\n $(\".OrderAdressForm #Phone2\").val(\"0\");\r\n }\r\n\r\n $(\".OrderAdressForm #Phone2\").mask(\"0999 999 99 99\");\r\n }\r\n }\r\n}\r\n\r\nfunction UseCoupon(couponCode) {\r\n\r\n $.ajax({\r\n type: 'get',\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: 'json',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/CheckOutCart/AddCoupon?couponCode=\" + couponCode,\r\n success: function (dt) {\r\n\r\n ReloadOnTimeOut(dt);\r\n\r\n if (dt.Status == true) {\r\n //Sipariş özetini Yenile\r\n RefreshOrderSummary(true, true);\r\n\r\n $(\"#OrderCoupons tr\").removeClass(\"added\");\r\n $(\"#OrderCoupons tr button[data-value=\" + couponCode + \"]\").closest(\"tr\").addClass(\"added\");\r\n }\r\n else {\r\n SetErrorResults($(\"#Erros\"), dt.ResultDescription, true, true);\r\n }\r\n }\r\n });\r\n}\r\n\r\nfunction SetCreditCartAndStep(adim, href) {\r\n\r\n if ($(\"#CardForm\").length > 0) {\r\n\r\n $form = $(\"#CardForm\");\r\n\r\n $.ajax({\r\n type: 'post',\r\n async: true,\r\n cache: false,\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/CheckoutPayment/SetCreditCard\",\r\n data: $form.serialize(),\r\n success: function (dt) {\r\n\r\n ReloadOnTimeOut(dt);\r\n\r\n if (dt.Status == true) {\r\n\r\n SetStep(adim, href);\r\n //Sipariş özetini Yenile\r\n //RefreshOrderSummary(true, true); \r\n }\r\n else {\r\n SetErrorResults($(\"#Erros\"), dt.ResultDescription, true, true);\r\n }\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction SetStep(adim, href) {\r\n if ((typeof adim != 'undefined')) {\r\n\r\n var OrdNote = \"\";\r\n if ($(\"#OrderNoteText\").length > 0) {\r\n OrdNote += \"OrderNote=\" + $(\"#OrderNoteText\").val();\r\n }\r\n\r\n $.ajax({\r\n type: 'POST',\r\n cache: false,\r\n url: \"/\" + SmallLangCode + \"/p/\" + CheckOutValidator + \"/SetStep?step=\" + adim,\r\n data: OrdNote,\r\n success: function (dt) {\r\n\r\n ReloadOnTimeOut(dt);\r\n\r\n if (dt.Status == false) {\r\n\r\n //ask for login or memberless\r\n if (dt.ReturnCode == 12) {\r\n\r\n $(\"#LoginRegisterModal\").modal();\r\n }\r\n\r\n //Edit Address Or Create Address\r\n if ($(\"#AddressArea\").length > 0 && (dt.StatusText == \"MissingAddress\" || dt.StatusText == \"InvalidAddress\")) {\r\n\r\n var url = \"/\" + $(\"#SmallLangCode\").val() + \"/p/\" + CheckOutAddressPath + \"/EditOrCreate?id=0\";\r\n\r\n GetAddressForm(url);\r\n\r\n } else if (dt.Status == false) {\r\n SetErrorResults($(\"#Erros\"), dt.ResultDescription, true, true);\r\n }\r\n }\r\n\r\n if (dt.Status == true) {\r\n\r\n $(\"#Steps button, #Steps .StepName, #nextbtn, .Bottom #nextbtn, #backbutton, .Bottom #backbutton\").attr(\"disabled\", \"disabled\");\r\n\r\n // Hata yoksa ve progress ise bekleyinizi göster\r\n if (adim == \"progress\") {\r\n\r\n $(\"#nextbtn, .Bottom #nextbtn, #backbutton, .Bottom #backbutton\").text($(\"#PleaseWait\").val());\r\n\r\n $(\".AjaxLoaderDiv\").css(\"left\", \"44%\");\r\n }\r\n\r\n // Goto next step\r\n document.location.href = \"/\" + SmallLangCode + \"/p/\" + CheckOutPath + \"/\" + adim;\r\n }\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction startTimer(duration, display) {\r\n var timer = duration, minutes, seconds;\r\n setInterval(function () {\r\n minutes = parseInt(timer / 60, 10)\r\n seconds = parseInt(timer % 60, 10);\r\n\r\n minutes = minutes < 10 ? \"0\" + minutes : minutes;\r\n seconds = seconds < 10 ? \"0\" + seconds : seconds;\r\n\r\n if (minutes == \"00\" && seconds == \"00\") {\r\n window.location.reload(false);\r\n }\r\n\r\n display.html(minutes + \":\" + seconds);\r\n\r\n if (--timer < 0) {\r\n timer = duration;\r\n }\r\n }, 1000);\r\n}\r\n\r\nfunction ToggleAgreements() {\r\n $(\".AgreementHeader\").on(\"click\", function () {\r\n $(this).next(\".toggle\").slideToggle();\r\n $(this).find(\"i\").toggleClass(\"minus-icon\");\r\n\r\n });\r\n}\r\n\r\nfunction ToggleMobileExpress() {\r\n $(\".MobilExpressText\").on(\"click\", function () {\r\n if ($(this).parent().find(\"#SaveMobileExpress\").prop(\"checked\")) {\r\n $(this).parent().find(\"#SaveMobileExpress\").val(false);\r\n\r\n } else {\r\n $(this).parent().find(\"#SaveMobileExpress\").val(true);\r\n }\r\n });\r\n}\r\n\r\n// Go to the main page alert popup show function\r\nfunction BackHome() {\r\n\r\n $(document).on(\"click\", \".CheckOut .Logo a, .CheckOut #NextBackButtons .backbtn, .CheckOut .AnnouncementArea a, .CheckOut .LegalWarning a, .CheckOut #UserWelcome a\", function (e) {\r\n if ($(this).attr(\"href\") != \"javascript:;\" && !$(this).hasClass(\"ExportToExcel\")) {\r\n $globalhref = $(this).attr(\"href\");\r\n\r\n $(\"#BackToHomeModal\").modal();\r\n e.preventDefault();\r\n }\r\n });\r\n\r\n $(\"#backHomeYes\").on(\"click\", function () {\r\n $(\"#BackToHomeModal\").modal('toggle');\r\n\r\n window.location.href = $globalhref;\r\n });\r\n}\r\n\r\nfunction AddInstallmentModal() {\r\n $(document).on(\"click\", \".CheckOut .PrInstallmentOptions\", function (e) {\r\n\r\n var Amount = $(\"#TotalBasketAmount\").val();\r\n $.ajax({\r\n type: \"GET\",\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/CheckOutPayment/GetInstallmentOptions?Amount=\" + Amount.replace(\".\", \"\"),\r\n success: function (data) {\r\n\r\n $(\"#InstallmentModal .modal-body\").html(\"\");\r\n $(\"#InstallmentModal .modal-body\").html(data);\r\n $(\"#InstallmentModal\").modal('toggle');\r\n }\r\n });\r\n });\r\n}\r\n\r\nfunction AddToolTip() {\r\n $('.CardTooltip').tooltip({ placement: \"right\" });\r\n}\r\n\r\nfunction closeForgottenPass() {\r\n $(\"#forgottenpassModal\").modal(\"hide\");\r\n\r\n console.log(\"Checkout 'forgottenpassModal' hide.\");\r\n}\r\n\r\nfunction checkLoginModal() {\r\n\r\n if ($(\"body\").hasClass(\"loginModal\") && $(\"#UserID\").val() == \"\") {\r\n $(\"#LoginRegisterModal\").modal();\r\n }\r\n}\r\n\r\n//function clickAddressRow() {\r\n// $(document).on(\"click\", \"#OrderAdress tr\", function () {\r\n// $(this).find(\"input[type=radio]\").trigger(\"click\");\r\n// $(this).find(\"input[type=radio]\").prop('checked', true);\r\n// });\r\n//}\r\n\r\nfunction triggerEvent(el, type) {\r\n if ('createEvent' in document) {\r\n // modern browsers, IE9+\r\n var e = document.createEvent('HTMLEvents');\r\n e.initEvent(type, false, true);\r\n el.dispatchEvent(e);\r\n } else {\r\n // IE 8\r\n var e = document.createEventObject();\r\n e.eventType = type;\r\n el.fireEvent('on' + e.eventType, e);\r\n }\r\n}\r\n\r\nfunction CheckOutQuickLookLinkResize() {\r\n\r\n var link = $(\".BasketProductName a\");\r\n link.attr(\"href\", \"javascript:;\");\r\n\r\n //if ($(window).width() < 992) {\r\n // link.attr(\"href\", link.data(\"url\"));\r\n //}\r\n //else {\r\n // link.attr(\"href\", \"javascript:;\");\r\n //}\r\n}\r\n\r\nfunction CheckOutQuickLook() {\r\n\r\n CheckOutQuickLookLinkResize();\r\n $(window).resize(function () {\r\n CheckOutQuickLookLinkResize();\r\n });\r\n\r\n $(document).on(\"click\", \".OpenQuickModal, .BasketProductName a\", function (e) {\r\n if ($(window).width() > 0) {\r\n $(\"#QuickLookModal .Loader\").show();\r\n\r\n if (!window.location.href.indexOf(\"oxxo.com.tr\") || !window.location.href.indexOf(\"oxxoshop.com\") || (!$(this).parent(\"div\").hasClass(\"BasketProductName\") && !$(this).hasClass(\"OpenQuickModal\"))) {\r\n e.preventDefault();\r\n return false;\r\n }\r\n\r\n var productID = \"\";\r\n var ColorID = \"\";\r\n var BasketID = \"\";\r\n\r\n if ($(this).parent(\"div\").hasClass(\"BasketProductName\")) {\r\n productID = $(this).data(\"productid\");\r\n ColorID = $(this).data(\"colorid\");\r\n BasketID = $(this).data(\"basketid\");\r\n }\r\n else {\r\n productID = $(this).data(\"productid\");\r\n ColorID = $(this).data(\"colorid\");\r\n BasketID = $(this).data(\"basketid\");\r\n }\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/ProductDetails/QuickLook?ProductID=\" + productID + \"&ColorID=\" + ColorID + \"&BasketID=\" + BasketID,\r\n success: function (dt) {\r\n $(\"#QuickLookModal .Content\").html(\"\");\r\n $(\"#QuickLookModal .Content\").html(dt);\r\n $(\".CheckOut .ProductContent .Colors .ColorName\").html($(\".CheckOut .ProductContent .Colors a.active\").data(\"name\"));\r\n $(\"#QuickLookModal .Loader\").hide();\r\n $(\"#QuickLookModal\").modal();\r\n }\r\n });\r\n }\r\n });\r\n\r\n $(document).on(\"click\", \".CheckOut .ProductContent .ChangeToBasket button\", function (e) {\r\n var Amount = $(\".CheckOut .ProductContent .SizeAndAmount #Amount\").val();\r\n var SizeID = $(\".CheckOut .ProductContent .SizeAndAmount #SizeID\").val();\r\n var ColorID = $(\".CheckOut .ProductContent .Colors #ColorID\").val();\r\n var ProductID = $(\".CheckOut .ProductHeader #ProductID\").val();\r\n var LangID = $(\".CheckOut .ProductHeader #LangID\").val();\r\n var BasketID = $(\".CheckOut .ProductHeader #BasketID\").val();\r\n\r\n $basketButton = $(this);\r\n\r\n if (SizeID != undefined && ColorID != undefined && ProductID != undefined && SizeID != \"\" && ColorID != \"\" && ProductID != \"\") {\r\n var NormalText = $basketButton.text();\r\n var AddingText = $basketButton.attr(\"data-adding\");\r\n $basketButton.text(AddingText);\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/Cart/AddToCart\",\r\n data: 'sizeID=' + SizeID + \"&colorID=\" + ColorID + \"&productID=\" + ProductID + \"&adet=\" + Amount + \"&langID=\" + LangID + \"&BasketID=\" + BasketID,\r\n dataType: 'json',\r\n async: true,\r\n success: function (dt) {\r\n $basketButton.text(NormalText);\r\n //if ($(window).width() < 768) {\r\n // $basketButton.html(\"
\" + NormalText);\r\n //}\r\n //else {\r\n // $basketButton.text(NormalText);\r\n //}\r\n\r\n //$(\"#GeneralModal .modal-header h3\").html(dt.IslemSonucAciklama);\r\n\r\n if (dt.Sonuc == true) {\r\n\r\n if ($(\"#QuickLookModal\").length > 0) {\r\n $(\"#QuickLookModal\").modal(\"hide\");\r\n location.reload();\r\n }\r\n\r\n if (typeof UseSwStat != 'undefined' && UseSwStat == true) {\r\n\r\n var basketParams = GetSwPageParams();\r\n\r\n basketParams = ChangeSwHashedStringParamValue(basketParams, \"ActionType\", \"SepeteEkleme\");\r\n basketParams = ChangeSwHashedStringParamValue(basketParams, \"ProductID\", ProductID);\r\n basketParams = ChangeSwHashedStringParamValue(basketParams, \"ColorID\", ColorID);\r\n basketParams += \"&CatalogID=\" + $(\"#CurCatalogID\").val();\r\n\r\n \r\n }\r\n\r\n if (UseTagManager) {\r\n\r\n SendCartAddEvent('');\r\n }\r\n }\r\n else {\r\n alert(dt.IslemSonucAciklama);\r\n }\r\n }\r\n });\r\n } else {\r\n\r\n if (SizeID == undefined || SizeID == \"\") {\r\n\r\n $(\"#PrdBlackBg\").show();\r\n $(\".SizeOptions.open\").addClass(\"PleaseSelect\");\r\n $(\".SizeOptions.open\").addClass(\"PleaseSelectChange\");\r\n $(\".AddToBasketOuther\").addClass(\"PleaseSelect\");\r\n\r\n $('html, body').animate({\r\n scrollTop: $(\".SizeOptions\").offset().top - 150\r\n }, 500);\r\n\r\n if ($(\".AutoTextRep\").length > 0) {\r\n\r\n $(\".ChangeToBasket button\").attr(\"data-first\", $(\".ChangeToBasket button\").text());\r\n $(\".ChangeToBasket button\").text($('#BedenSec').val());\r\n\r\n $(\".AddCombineToBasket button\").attr(\"data-first\", $(\".AddCombineToBasket button\").text());\r\n $(\".AddCombineToBasket button\").text($('#BedenSec').val());\r\n }\r\n }\r\n\r\n if (ColorID == undefined || ColorID == \"\") {\r\n\r\n alert(RenkSec);\r\n\r\n $(\".ChangeToBasket button\").attr(\"data-first\", $(\".ChangeToBasket button\").text());\r\n $(\".AddCombineToBasket button\").attr(\"data-first\", $(\".AddCombineToBasket button\").text());\r\n\r\n if ($(\".AutoTextRep\").length > 0) {\r\n $(\".ChangeToBasket button\").text($('#BedenSec').val());\r\n $(\".AddCombineToBasket button\").text($('#BedenSec').val());\r\n }\r\n }\r\n\r\n if (ProductID == undefined || ProductID == \"\") alert(UrunYok);\r\n }\r\n });\r\n\r\n $(document).on(\"click\", \".CheckOut .ProductContent .AddToBasket button\", function (e) {\r\n var Amount = $(\".CheckOut .ProductContent .SizeAndAmount #Amount\").val();\r\n var SizeID = $(\".CheckOut .ProductContent .SizeAndAmount #SizeID\").val();\r\n var ColorID = $(\".CheckOut .ProductContent .Colors #ColorID\").val();\r\n var ProductID = $(\".CheckOut .ProductHeader #ProductID\").val();\r\n var LangID = $(\".CheckOut .ProductHeader #LangID\").val();\r\n\r\n $basketButton = $(this);\r\n if (SizeID != undefined && ColorID != undefined && ProductID != undefined && SizeID != \"\" && ColorID != \"\" && ProductID != \"\") {\r\n var NormalText = $basketButton.text();\r\n var AddingText = $basketButton.attr(\"data-adding\");\r\n $basketButton.text(AddingText);\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/Cart/AddToCart\",\r\n data: 'sizeID=' + SizeID + \"&colorID=\" + ColorID + \"&productID=\" + ProductID + \"&adet=\" + Amount + \"&langID=\" + LangID,\r\n dataType: 'json',\r\n async: true,\r\n success: function (dt) {\r\n $basketButton.text(NormalText);\r\n\r\n if (dt.Sonuc == true) {\r\n\r\n if ($(\"#QuickLookModal\").length > 0) {\r\n $(\"#QuickLookModal\").modal(\"hide\");\r\n location.reload();\r\n }\r\n\r\n if (dt.JsonRs != null && dt.JsonRs != undefined && dt.JsonRs != \"\") {\r\n window.dataLayer = window.dataLayer || [];\r\n dataLayer.push(JSON.parse(dt.JsonRs));\r\n }\r\n }\r\n else {\r\n alert(dt.IslemSonucAciklama);\r\n }\r\n }\r\n });\r\n } else {\r\n if (SizeID == undefined || SizeID == \"\") {\r\n\r\n $(\"#PrdBlackBg\").show();\r\n $(\".SizeOptions.open\").addClass(\"PleaseSelect\");\r\n $(\".SizeOptions.open\").addClass(\"PleaseSelectAdd\");\r\n $(\".AddToBasketOuther\").addClass(\"PleaseSelect\");\r\n\r\n $('html, body').animate({\r\n scrollTop: $(\".SizeOptions\").offset().top - 150\r\n }, 500);\r\n\r\n if ($(\".AutoTextRep\").length > 0) {\r\n\r\n $(\".AddToBasket button\").attr(\"data-first\", $(\".AddToBasket button\").text());\r\n $(\".AddToBasket button\").text($('#BedenSec').val());\r\n\r\n $(\".AddCombineToBasket button\").attr(\"data-first\", $(\".AddCombineToBasket button\").text());\r\n $(\".AddCombineToBasket button\").text($('#BedenSec').val());\r\n }\r\n }\r\n\r\n if (ColorID == undefined || ColorID == \"\") {\r\n\r\n alert(RenkSec);\r\n\r\n $(\".AddToBasket button\").attr(\"data-first\", $(\".AddToBasket button\").text());\r\n $(\".AddCombineToBasket button\").attr(\"data-first\", $(\".AddCombineToBasket button\").text());\r\n\r\n if ($(\".AutoTextRep\").length > 0) {\r\n $(\".AddToBasket button\").text($('#BedenSec').val());\r\n $(\".AddCombineToBasket button\").text($('#BedenSec').val());\r\n }\r\n }\r\n\r\n if (ProductID == undefined || ProductID == \"\") {\r\n alert(UrunYok);\r\n }\r\n }\r\n });\r\n\r\n $(document).on(\"click\", \".CheckOut .ProductContent .SizeOptions a\", function (e) {\r\n\r\n var TrigAddBasket = false;\r\n var TrigChangeBasket = false;\r\n\r\n if ($(\".CheckOut .ProductContent .SizeOptions.PleaseSelect.PleaseSelectAdd\").length == 1) {\r\n TrigAddBasket = true;\r\n }\r\n\r\n if ($(\".CheckOut .ProductContent .SizeOptions.PleaseSelect.PleaseSelectChange\").length == 1) {\r\n TrigChangeBasket = true;\r\n }\r\n\r\n if (TrigChangeBasket) {\r\n var Amount = $(\".CheckOut .ProductContent .SizeAndAmount #Amount\").val();\r\n var SizeID = $(this).data('id');\r\n var ColorID = $(\".CheckOut .ProductContent .Colors #ColorID\").val();\r\n var ProductID = $(\".CheckOut .ProductHeader #ProductID\").val();\r\n var LangID = $(\".CheckOut .ProductHeader #LangID\").val();\r\n var BasketID = $(\".CheckOut .ProductHeader #BasketID\").val();\r\n\r\n $basketButton = $(\".CheckOut .ProductContent .ChangeToBasket button\");\r\n\r\n if (SizeID != undefined && ColorID != undefined && ProductID != undefined && SizeID != \"\" && ColorID != \"\" && ProductID != \"\") {\r\n var NormalText = $basketButton.text();\r\n var AddingText = $basketButton.attr(\"data-adding\");\r\n $basketButton.text(AddingText);\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/Cart/AddToCart\",\r\n data: 'sizeID=' + SizeID + \"&colorID=\" + ColorID + \"&productID=\" + ProductID + \"&adet=\" + Amount + \"&langID=\" + LangID + \"&BasketID=\" + BasketID,\r\n dataType: 'json',\r\n async: true,\r\n success: function (dt) {\r\n $basketButton.text(NormalText);\r\n\r\n if (dt.Sonuc == true) {\r\n if ($(\"#QuickLookModal\").length > 0) {\r\n $(\"#QuickLookModal\").modal(\"hide\");\r\n location.reload();\r\n }\r\n }\r\n else {\r\n alert(dt.IslemSonucAciklama);\r\n }\r\n }\r\n });\r\n }\r\n }\r\n\r\n if (TrigAddBasket) {\r\n var Amount = $(\".CheckOut .ProductContent .SizeAndAmount #Amount\").val();\r\n var SizeID = $(this).data('id');\r\n var ColorID = $(\".CheckOut .ProductContent .Colors #ColorID\").val();\r\n var ProductID = $(\".CheckOut .ProductHeader #ProductID\").val();\r\n var LangID = $(\".CheckOut .ProductHeader #LangID\").val();\r\n\r\n $basketButton = $(\".CheckOut .ProductContent .AddToBasket button\");\r\n //$(\".CheckOut .ProductContent .AddToBasket button\").trigger(\"click\");\r\n\r\n if (SizeID != undefined && ColorID != undefined && ProductID != undefined && SizeID != \"\" && ColorID != \"\" && ProductID != \"\") {\r\n\r\n var NormalText = $basketButton.text();\r\n var AddingText = $basketButton.attr(\"data-adding\");\r\n $basketButton.text(AddingText);\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/Cart/AddToCart\",\r\n data: 'sizeID=' + SizeID + \"&colorID=\" + ColorID + \"&productID=\" + ProductID + \"&adet=\" + Amount + \"&langID=\" + LangID,\r\n dataType: 'json',\r\n async: true,\r\n success: function (dt) {\r\n $basketButton.text(NormalText);\r\n\r\n if (dt.Sonuc == true) {\r\n\r\n if ($(\"#QuickLookModal\").length > 0) {\r\n $(\"#QuickLookModal\").modal(\"hide\");\r\n location.reload();\r\n }\r\n }\r\n else {\r\n alert(dt.IslemSonucAciklama);\r\n }\r\n }\r\n });\r\n }\r\n }\r\n\r\n if ($(\".LastProducts\").length > 0) {\r\n\r\n var params = \"ProductID=\" + $(\"#ProductID\").val() + \"&ColorID=\" + $(\"#ColorID\").val() + \"&SizeID=\" + $(\"#SizeID\").val();\r\n\r\n $.ajax({\r\n type: \"GET\",\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/ProductDetails/StokWarn\",\r\n data: params,\r\n success: function (data) {\r\n\r\n if (data != \"0\" && data != 0 && data < 5) {\r\n\r\n $(\".SizeAndAmount .LastProducts .LastX\").html(data);\r\n $(\".SizeAndAmount .LastProducts\").css(\"display\", \"inline-block\");\r\n }\r\n else {\r\n $(\".SizeAndAmount .LastProducts\").hide();\r\n }\r\n }\r\n });\r\n }\r\n\r\n $(\".CheckOut .ProductContent .SizeOptions a\").removeClass(\"active\");\r\n $(this).addClass(\"active\");\r\n $(\".CheckOut .ProductContent .SizeAndAmount #SizeID\").val($(this).data(\"id\"));\r\n });\r\n\r\n $(document).on(\"click\", \".CheckOut .PrdImgRight\", function (e) {\r\n var ImageList = $(\".ProductDetailImages .pdImageList\");\r\n var ImageListItem = $(\".ProductDetailImages .pdImageList li\");\r\n\r\n var active = $(\".ProductDetailImages .pdImageList li.active\")\r\n\r\n ImageListItem.removeClass(\"active\");\r\n\r\n if ((active.index() + 1) == ImageListItem.size()) {\r\n $(\".ProductDetailImages .pdImageList li:first-child\").addClass(\"active\");\r\n } else {\r\n active.next().addClass(\"active\");\r\n }\r\n });\r\n\r\n $(document).on(\"click\", \".CheckOut .PrdImgLeft\", function (e) {\r\n var ImageList = $(\".ProductDetailImages .pdImageList\");\r\n var ImageListItem = $(\".ProductDetailImages .pdImageList li\");\r\n\r\n var active = $(\".ProductDetailImages .pdImageList li.active\")\r\n\r\n ImageListItem.removeClass(\"active\");\r\n\r\n if (active.index() == 0) {\r\n $(\".ProductDetailImages .pdImageList li:last-child\").addClass(\"active\");\r\n } else {\r\n active.prev().addClass(\"active\");\r\n }\r\n });\r\n\r\n $(document).on(\"click\", \".CheckOut .ProductContent .Colors a\", function (e) {\r\n\r\n $(\".CheckOut .ProductContent .Colors a\").removeClass(\"active\");\r\n $(this).addClass(\"active\");\r\n $(\".CheckOut .ProductContent .Colors #ColorID\").val($(this).data(\"id\"));\r\n\r\n $(\".CheckOut .ProductContent .Colors .ColorName\").html($(this).data(\"name\"));\r\n\r\n var params = \"ColorID=\" + $(this).attr(\"data-id\") + \"&ProductID=\" + $(this).attr(\"data-productid\");\r\n\r\n $.ajax({\r\n type: \"GET\",\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/ProductDetails/GetAllDetailInfoByColorID\",\r\n data: params,\r\n success: function (data) {\r\n\r\n $(\".SizeOptions\").html(\"\");\r\n $(\".ProductDetailImages .pdImageList\").html(\"\");\r\n var j = 0;\r\n\r\n var stockImages = data.filter(function (item) { return item.Type == \"StockImage\" }).reverse();\r\n\r\n for (var k = 0; k < stockImages.length; k++) {\r\n\r\n if (stockImages[k].Type == \"StockImage\") {\r\n var url = stockImages[k].Name.replace(/\\/$/g, \"\");\r\n\r\n var img = $(\" \")\r\n var li = $(\" \");\r\n li.addClass('ImgArea');\r\n if (j == 0) {\r\n li.addClass('active');\r\n }\r\n li.append(img);\r\n\r\n $(\".ProductDetailImages .pdImageList\").append(li);\r\n j++\r\n }\r\n }\r\n\r\n for (var i = 0; i < data.length; i++) {\r\n\r\n if (data[i].Type == \"Size\") {\r\n\r\n var stil = \"\";\r\n\r\n var DisplayName = data[i].Name;\r\n\r\n if (data[i].SizeValue != \"\" && data[i].SizeValue != null && data[i].SizeValue != undefined) {\r\n DisplayName = data[i].SizeValue;\r\n }\r\n\r\n //$(\".SizeOptions\").html(\"\");\r\n if (data[i].InStock == false || data[i].PStatus != 1) {\r\n\r\n stil = \"OutOfQuantity\";\r\n\r\n if ($(\".NewPD\").length > 0) {\r\n $(\".SizeOptions\").append('
' +\r\n ' Bu Ürünün ' + DisplayName + ' Bedeni Stoklarla Kalmamıştır. ' +\r\n 'Ürün stoğa geldiğinde haber ver! ' +\r\n ' '\r\n + '' + DisplayName + ' ');\r\n } else {\r\n $(\".SizeOptions\").append('
' + DisplayName + ' ');\r\n }\r\n }\r\n\r\n else {\r\n $(\".SizeOptions\").append('
' + DisplayName + ' ');\r\n }\r\n }\r\n }\r\n }\r\n });\r\n });\r\n}\r\n\r\nfunction KvkkModal() {\r\n $(document).on(\"click\", \".KVKKTrigger\", function () {\r\n $(\"#KVKKModal\").modal();\r\n });\r\n}\r\n\r\n//function MobileKeyboardListener() {\r\n\r\n// $(document).on('focus', '.OrderAdressForm input,.OrderAdressForm textarea, #CouponForm input,#CardForm input', function () {\r\n// if (!$('body').hasClass('keyboardOpened')) {\r\n// $('body').addClass('keyboardOpened');\r\n// }\r\n// });\r\n\r\n// $(document).on('blur', '.OrderAdressForm input,.OrderAdressForm textarea, #CouponForm input,#CardForm input', function () {\r\n// $('body').removeClass('keyboardOpened');\r\n// });\r\n//}\r\n\r\nfunction GarantiBonusScore() {\r\n $bankCode = \"\";\r\n $cardType = \"\";\r\n\r\n $(\"#CardForm .cvc\").keyup(function () {\r\n\r\n if ($(\"#CardOwner\").val().length > 1 && $(\"#CardForm .ExpiresMonth\").val() != \"\" && $(\"#CardForm .ExpiresYear\").val() != \"\") {\r\n\r\n //console.log(\"bank : \" + $bankCode);\r\n //console.log(\"type : \" + $cardType);\r\n //console.log(\"length : \" + $(\"#CardForm .cvc\").val().length);\r\n\r\n if ($(\"#CardForm .cvc\").val().length == 3 && $bankCode == 62 && $cardType == \"Credit\") {\r\n\r\n $.ajax({\r\n type: 'POST',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/CheckoutPayment/GarantiBonusPointRequest\",\r\n cache: false,\r\n data: $(\"#CardForm\").serialize() + \"&IdendityDateNow=\" + $(\"#DateNow\").val(),\r\n success: function (dt) {\r\n\r\n if (dt != null && dt != \"\" && dt != undefined && dt.BonusPointIsSuccess) {\r\n $(\".UseBonusPointHeader\").show();\r\n\r\n $(\".UseBonusPointHeader #BonusPointIsSuccess\").val(dt.BonusPointIsSuccess);\r\n $(\".UseBonusPointHeader #BonusPointTotalAmount\").val(dt.BonusPointTotalAmount);\r\n $(\".UseBonusPointHeader .UseBonusPointText b\").html(dt.BonusPointTotalAmount + \" TL\");\r\n $(\".UseBonusPointHeader #BonusPointType\").val(dt.BonusPointType);\r\n $(\".UseBonusPointHeader #BonusPointOrderIdentyKey\").val(dt.BonusPointOrderIdentyKey);\r\n $(\".UseBonusPointHeader #BonusPointLastTxnGainAmount\").val(dt.BonusPointLastTxnGainAmount);\r\n }\r\n else {\r\n $(\".UseBonusPointHeader #BonusPointIsSuccess\").val(false);\r\n $(\".UseBonusPointHeader #BonusPointTotalAmount\").val(\"\");\r\n $(\".UseBonusPointHeader .UseBonusPointText b\").html(\"0 TL\");\r\n $(\".UseBonusPointHeader #UseBonusPoint\").prop(\"checked\", false);\r\n }\r\n }\r\n });\r\n }\r\n else {\r\n $(\".UseBonusPointHeader\").hide();\r\n $(\".UseBonusPointHeader #UseBonusPoint\").prop(\"checked\", false);\r\n }\r\n }\r\n else {\r\n $(\".UseBonusPointHeader\").hide();\r\n $(\".UseBonusPointHeader #UseBonusPoint\").prop(\"checked\", false);\r\n }\r\n });\r\n}\r\n\r\n$(document).ready(function () {\r\n\r\n GetAdressFromFirstLoad();\r\n checkLoginModal();\r\n PrepareAddressAndPayment();\r\n ToggleAgreements();\r\n ToggleMobileExpress();\r\n BackHome();\r\n AddInstallmentModal();\r\n AddToolTip();\r\n CheckOutQuickLook();\r\n KvkkModal();\r\n GarantiBonusScore();\r\n\r\n if ($(\".SingleLineCart\").length > 0) {\r\n isSingleLineCreditCard = true;\r\n }\r\n\r\n //if ($(window).width() <= 768) {\r\n // MobileKeyboardListener();\r\n //}\r\n\r\n // SetStep Validate and Navigate\r\n $(\"body\").on(\"click\", \"#Steps button, #Steps .StepName, #nextbtn, #backbtn\", function () {\r\n\r\n var adim = $(this).attr(\"data-next\");\r\n var href = $(this).attr(\"data-href\");\r\n\r\n if (href != undefined && href != \"\") {\r\n document.location.href = href;\r\n return;\r\n }\r\n\r\n if ($(\".PaymentDetail.KrediKarti\").hasClass(\"active\") && adim == \"progress\") {\r\n\r\n var PaymentType = $(\"#PaymentGroups .PaymentGroupItem.active input\").attr(\"data-payment\");\r\n if (PaymentType != null && PaymentType != \"\" && PaymentType != undefined) {\r\n window.dataLayer = window.dataLayer || [];\r\n dataLayer.push({\r\n \"event\": \"ee_checkout3\",\r\n \"option\": PaymentType\r\n });\r\n }\r\n\r\n SetCreditCartAndStep(adim, href);\r\n\r\n } else {\r\n SetStep(adim, href);\r\n }\r\n });\r\n\r\n //$(\".withoutMember\").on(\"click\", function () {\r\n\r\n // $.ajax({\r\n // type: 'get',\r\n // url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/\" + CheckOutValidator + \"/SetMemberless?memberless=true\",\r\n // success: function (dt) {\r\n // ReloadOnTimeOut(dt);\r\n\r\n // if (dt.Status == true) {\r\n // //SetStep(adim, href);\r\n // //Sipariş özetini Yenile\r\n // //RefreshOrderSummary(true, true); \r\n // }\r\n // else {\r\n // SetErrorResults($(\"#Erros\"), dt.ResultDescription, true, true);\r\n // }\r\n // }\r\n // });\r\n //});\r\n\r\n $(\"#LoginRegisterModal\").on(\"click\", \".ContinueWithoutMember\", function (e) {\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/\" + CheckOutValidator + \"/SetMemberless?memberless=true\",\r\n success: function (dt) {\r\n\r\n ReloadOnTimeOut(dt);\r\n\r\n if (dt.Status == true) {\r\n location.reload();\r\n //SetStep(adim, href);\r\n //Sipariş özetini Yenile\r\n //RefreshOrderSummary(true, true); \r\n }\r\n else {\r\n\r\n SetErrorResults($(\"#Erros\"), dt.ResultDescription, true, true);\r\n }\r\n }\r\n });\r\n\r\n return false;\r\n e.preventDefault();\r\n });\r\n\r\n\r\n //Cart Change Delete \r\n $('input.sepetAdet').keyup(function () {\r\n\r\n var updateID = $(this).attr(\"data-id\");\r\n var yeniAdet = $(this).val();\r\n var adetKutusu = $(this);\r\n var LangID = $(\"#LangID\").val();\r\n\r\n if (yeniAdet <= 1) {\r\n $(adetKutusu).val(1);\r\n }\r\n else if (yeniAdet >= 9) {\r\n $(adetKutusu).val(9);\r\n }\r\n\r\n //update'den Sonra\r\n var sepetToplami = 0;\r\n var ToplamAdet = $(\"#ustSepetAdet\").html();\r\n var guncellenecekContainerObje = $(this).parent().parent();\r\n\r\n $(guncellenecekContainerObje).find(\".ustSepetAjaxLoader\").show();\r\n $(guncellenecekContainerObje).find(\".ustSepetDelete\").hide();\r\n $(guncellenecekContainerObje).css(\"opacity\", \"0.5\");\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: '/Cart/UpdateCartAmount',\r\n data: 'id=' + updateID + \"&adet=\" + yeniAdet + \"&langID=\" + LangID,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: 'json',\r\n cahce: false,\r\n success: function (dt) {\r\n if (dt.Sonuc == true) {\r\n ReloadPage();\r\n }\r\n else {\r\n alert(dt.IslemSonucAciklama);\r\n }\r\n\r\n $(guncellenecekContainerObje).find(\".ustSepetAjaxLoader\").hide();\r\n $(guncellenecekContainerObje).find(\".ustSepetDelete\").show();\r\n $(guncellenecekContainerObje).css(\"opacity\", \"1\");\r\n }\r\n });\r\n \r\n //ISNUMERIC ADET SONU\r\n });\r\n \r\n $(\".SmsFirstStep\").on(\"click\", function () {\r\n $.ajax({\r\n type: 'GET',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + '/p/CheckOutPayment/SmsComfirmationStepOne',\r\n success: function (dt) {\r\n\r\n $(\".SmsOnayArea\").html(\"\");\r\n $(\".SmsOnayArea\").html(dt);\r\n\r\n var fiveMinutes = 60 * 3,\r\n display = $('.geriSayim .counter');\r\n startTimer(fiveMinutes, display);\r\n }\r\n });\r\n });\r\n \r\n $(document).on(\"submit\", \"#SmsForm\", function (e) {\r\n e.preventDefault();\r\n $.ajax({\r\n type: 'post',\r\n url: $(\"#SmsForm\").attr(\"action\"),\r\n data: $(\"#SmsForm\").serialize(),\r\n async: true,\r\n success: function (dt) {\r\n\r\n if (dt.Status) {\r\n var successText = \"\";\r\n for (var i in dt.ResultDescription) {\r\n successText += \" \" + dt.ResultDescription[i];\r\n }\r\n\r\n $(\".SmsOnayArea\").html(\"\");\r\n $(\".SmsOnayArea\").html(\"
\" + successText + \"
\");\r\n $(\".SmsOnayInfo\").hide();\r\n }\r\n else {\r\n var errorText = \"\";\r\n for (var i in dt.ResultDescription) {\r\n errorText += \" \" + dt.ResultDescription[i];\r\n }\r\n\r\n $(\"#Erros\").html(errorText);\r\n $(\"#Erros\").show();\r\n }\r\n },\r\n error: function () {\r\n\r\n alert('Talebiniz yerine getirilirken bir hata oluştu. Lütfen daha sonra tekrar deneyiniz.!');\r\n }\r\n });\r\n\r\n });\r\n\r\n // Amount Option Change\r\n $('.BasketDetails .GenMinus, .BasketDetails .GenPlus').click(function () {\r\n\r\n $SepetAdet = $(this).closest(\".BasketDetails\").find(\"input.sepetAdet\");\r\n if ($(this).hasClass(\"GenPlus\") == true) {\r\n if ($SepetAdet.val() >= 9) {\r\n $SepetAdet.val(parseInt(9));\r\n }\r\n else {\r\n $SepetAdet.val(parseInt($SepetAdet.val()) + 1);\r\n }\r\n }\r\n else {\r\n $SepetAdet.val(parseInt($SepetAdet.val()) - 1);\r\n }\r\n\r\n if ($SepetAdet.val() != \"0\") {\r\n $SepetAdet.trigger('keyup');\r\n }\r\n else {\r\n $SepetAdet.val(1)\r\n }\r\n });\r\n\r\n $(\"#OrderBasket .RemoveIcon, .LeftBasketItem div.row div.col-xs-3 div.RemoveIcon\").click(function () {\r\n \r\n var Silid = $(this).attr(\"data-id\").replace(\"sepetsil\", \"\");\r\n var LangID = $(\"#LangID\").val();\r\n\r\n $(this).closest(\".LeftBasketItem\").css(\"opacity\", \"0.5\");\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + '/p/Cart/RemoveFromCart',\r\n data: 'id=' + Silid + \"&langID=\" + LangID,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: 'json',\r\n success: function (dt) {\r\n\r\n //ReloadOnTimeOut(dt);\r\n\r\n if (dt.Sonuc == false) {\r\n\r\n SetErrorResults($(\"#Erros\"), dt.ResultDescription, true, true);\r\n } else {\r\n if (dt.JsonRs != null && dt.JsonRs != undefined && dt.JsonRs != \"\") {\r\n window.dataLayer = window.dataLayer || [];\r\n dataLayer.push(JSON.parse(dt.JsonRs));\r\n }\r\n\r\n ReloadPage();\r\n }\r\n }\r\n });\r\n });\r\n\r\n //COUPON\r\n $(\"#CouponForm\").submit(function (e) {\r\n\r\n couponCode = $(\"#CouponCodeInput\", $(this)).val();\r\n\r\n UseCoupon(couponCode);\r\n\r\n e.preventDefault();\r\n return false;\r\n });\r\n\r\n $(\"body .UsetCouponTd\").click(function (e) {\r\n\r\n couponCode = $(this).attr(\"data-value\");\r\n\r\n UseCoupon(couponCode);\r\n\r\n e.preventDefault();\r\n return false;\r\n });\r\n\r\n $(\"body\").on(\"click\", \".RemoveCoupon\", function (e) {\r\n\r\n $.ajax({\r\n type: 'post',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + '/p/CheckOutCart/RemoveCoupon',\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: 'json',\r\n success: function (dt) {\r\n\r\n if (dt.Sonuc == false) {\r\n\r\n SetErrorResults($(\"#Erros\"), dt.ResultDescription, true, true);\r\n\r\n } else {\r\n\r\n RefreshOrderSummary(false, false);\r\n $(\"#OrderCoupons tr\").removeClass(\"added\");\r\n }\r\n }\r\n });\r\n\r\n e.preventDefault();\r\n return false;\r\n });\r\n\r\n //END CCOUPON\r\n\r\n //Adress Create And Edit\r\n $(\"body\").on(\"click\", \".AdresPopup\", function () {\r\n\r\n if ($(\".AdressFormLoaded\").length > 0 && $(\".OrderAdressForm\").length > 0) {\r\n $(\".OrderAdressForm\").slideToggle();\r\n $(this).toggleClass(\"on\");\r\n\r\n } else {\r\n $(this).addClass(\"opened\");\r\n $(this).addClass(\"on\");\r\n $(this).addClass(\"AdressFormLoaded\");\r\n var url = $(this).attr(\"data-href\");\r\n\r\n GetAddressForm(url);\r\n }\r\n\r\n if ($(this).hasClass(\"on\")) {\r\n $(\"#NextButton > #nextbtn\").attr(\"disabled\", \"disabled\");\r\n }\r\n else {\r\n $(\"#NextButton > #nextbtn\").removeAttr(\"disabled\");\r\n }\r\n\r\n\r\n });\r\n\r\n\r\n\r\n $(\"#OrderAdress\").on(\"click\", \".RemoveIcon\", function () {\r\n\r\n $(this).closest(\"tr\").css(\"opacity\", \"0.5\");\r\n var id = $(this).attr(\"data-id\");\r\n\r\n var url = \"/\" + $(\"#SmallLangCode\").val() + \"/p/\" + CheckOutAddressPath + \"/Delete?adresid=\" + id;\r\n\r\n $.ajax({\r\n type: 'post',\r\n url: url,\r\n dataType: 'json',\r\n success: function (data) {\r\n\r\n ReloadOnTimeOut(data);\r\n\r\n if (data.Status == true) {\r\n\r\n $(\"#OpStatusBar div.alert-success ul li\").html(data.ResultDescription[0]);\r\n $(\"#OpStatusBar > div.alert-sucess \").show();\r\n\r\n ReloadPure();\r\n\r\n }\r\n else {\r\n\r\n SetErrorResults($(\"#OpStatusBar div.alert-danger ul li\"), data.ResultDescription, true, false);\r\n $(\"#OpStatusBar > div.alert-danger \").show();\r\n }\r\n\r\n },\r\n error: function (data) {\r\n\r\n $(\"#Errors .alert-error\").html(data.ResultDescription[0]);\r\n }\r\n });\r\n\r\n\r\n });\r\n\r\n\r\n $(\"body\").on(\"change\", \".ddl_ulke\", function () {\r\n\r\n var seciliUlkeID = $(this).val();\r\n $(\".ajaxilce\").show();\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: '/User/GetCities',\r\n data: 'countryid=' + seciliUlkeID,\r\n dataType: 'json',\r\n success: function (dt) {\r\n\r\n var icerik = \"\";\r\n\r\n $('#CityID option').remove();\r\n $('.ddl_sehir option').remove();\r\n $('.ddl_ilce option').remove();\r\n $('.ddl_mahalle option').remove();\r\n\r\n $('#CityID')\r\n .append($(\"
\")\r\n .attr(\"value\", \"\")\r\n .text(\"Lütfen Seçin\"));\r\n\r\n\r\n $('#CityID').parent().find(\"span\").html(\"Lütfen Seçin\");\r\n\r\n for (var i = 0; i < dt.length; i++) {\r\n\r\n\r\n $('#CityID')\r\n .append($(\"
\")\r\n .attr(\"value\", dt[i].ID)\r\n .text(dt[i].Name));\r\n\r\n }\r\n\r\n $(\".ajaxilce\").hide();\r\n\r\n\r\n }\r\n });\r\n\r\n RefReshCityAndTowns();\r\n\r\n });\r\n\r\n $(\"body\").on(\"change\", \".ddl_sehir\", function () {\r\n\r\n var seciliSehirOID = $(this).val();\r\n $(\".ajaxilce\").show();\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: '/User/GetTowns',\r\n data: 'cityid=' + seciliSehirOID,\r\n dataType: 'json',\r\n success: function (dt) {\r\n\r\n var icerik = \"\";\r\n $('#TownID option').remove();\r\n\r\n $('#TownID')\r\n .append($(\"
\")\r\n .attr(\"value\", \"\")\r\n .text(\"Lütfen Seçin\"));\r\n\r\n\r\n $('#TownID').parent().find(\"span\").html(\"Lütfen Seçin\");\r\n\r\n for (var i = 0; i < dt.length; i++) {\r\n\r\n $('#TownID')\r\n .append($(\"
\")\r\n .attr(\"value\", dt[i].ID)\r\n .text(dt[i].Name));\r\n\r\n }\r\n\r\n $(\".ajaxilce\").hide();\r\n\r\n\r\n }\r\n });\r\n\r\n\r\n });\r\n\r\n $(\"body\").on(\"change\", \".ddl_ilce\", function () {\r\n\r\n var seciliIlceID = $(this).val();\r\n $(\".ajaxilce\").show();\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: '/User/GetQuarters',\r\n data: 'TownID=' + seciliIlceID,\r\n dataType: 'json',\r\n success: function (dt) {\r\n\r\n var icerik = \"\";\r\n $('#QuarterID option').remove();\r\n\r\n $('#QuarterID')\r\n .append($(\"
\")\r\n .attr(\"value\", \"\")\r\n .text(\"Lütfen Seçin\"));\r\n\r\n\r\n $('#QuarterID').parent().find(\"span\").html(\"Lütfen Seçin\");\r\n\r\n for (var i = 0; i < dt.length; i++) {\r\n\r\n $('#QuarterID')\r\n .append($(\"
\")\r\n .attr(\"value\", dt[i].ID)\r\n .text(dt[i].Name));\r\n\r\n }\r\n\r\n $(\".ajaxilce\").hide();\r\n\r\n\r\n }\r\n });\r\n\r\n\r\n });\r\n\r\n $(\"#AddressArea\").on(\"submit\", \"form.OrderAdressForm\", function (e) {\r\n\r\n $form = $(this);\r\n $(\"#OpStatusBar div\").hide();\r\n\r\n $.ajax({\r\n type: \"POST\",\r\n url: $form.attr(\"action\"),\r\n data: $form.serialize(),\r\n dataType: \"json\",\r\n cache: false,\r\n success: function (data) {\r\n\r\n ReloadOnTimeOut(data);\r\n\r\n if (data.Status == true) {\r\n\r\n $(\"#OpStatusBar div.alert-success ul li\").html(data.ResultDescription[0]);\r\n $(\"#OpStatusBar > div.alert-sucess \").show();\r\n\r\n\r\n ReloadPure();\r\n\r\n }\r\n else {\r\n\r\n SetErrorResults($(\"#OpStatusBar div.alert-danger ul li\"), data.ResultDescription, true, false);\r\n $(\"#OpStatusBar > div.alert-danger \").show();\r\n }\r\n\r\n },\r\n error: function (data) {\r\n\r\n $(\"#Errors .alert-error\").html(data.ResultDescription[0]);\r\n }\r\n\r\n });\r\n\r\n e.preventDefault();\r\n return false;\r\n\r\n });\r\n\r\n var deliverCheckedVal = 0;\r\n var billingCheckedVal = 0;\r\n\r\n if ($(\"#OrderAdress input[name=adr_del]:checked\").length > 0) {\r\n deliverCheckedVal = $(\"#OrderAdress input[name=adr_del]:checked\").val();\r\n }\r\n\r\n if ($(\"#OrderAdress input[name=adr_bil]:checked\").length > 0) {\r\n\r\n billingCheckedVal = $(\"#OrderAdress input[name=adr_bil]:checked\").val();\r\n }\r\n\r\n //SetAdres\r\n $(\"#OrderAdress\").on(\"change\", \"input[type=radio]\", function (e) {\r\n\r\n var adrtype = $(this).attr(\"data-adrtype\");\r\n var id = $(this).val();\r\n $clicked = $(this);\r\n\r\n $.ajax({\r\n type: 'post',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/\" + CheckOutAddressPath + \"/SetAddress?addressID=\" + id + \"&addressType=\" + adrtype,\r\n success: function (dt) {\r\n\r\n ReloadOnTimeOut(dt);\r\n\r\n if (dt.Status) {\r\n\r\n //Sipariş özetini Yenile\r\n RefreshOrderSummary(false, false);\r\n //KargoListesini Yenile \r\n\r\n if (adrtype == \"Delivery\") {\r\n RefreshCargoList();\r\n }\r\n\r\n $(\"#AddressArea\").html(\"\");\r\n $(\".AddAdress\").removeClass(\"AdressFormLoaded\");\r\n $(\".AddAdress\").removeClass(\"opened\");\r\n $(\".AddAdress\").removeClass(\"on\");\r\n\r\n }\r\n\r\n if (dt.Status == false && dt.StatusText == \"InvalidAddress\" && $(\"#AddressArea\").length > 0) {\r\n\r\n var url = \"/\" + $(\"#SmallLangCode\").val() + \"/p/\" + CheckOutAddressPath + \"/EditOrCreate?id=\" + id;\r\n\r\n GetAddressForm(url);\r\n\r\n } else if (dt.Status == false) {\r\n\r\n SetErrorResults($(\"#Erros\"), dt.ResultDescription, true, true);\r\n }\r\n\r\n if (dt.Status == false) {\r\n\r\n //Remove Checked Status Before go\r\n if (adrtype == \"Delivery\") {\r\n\r\n $(\"#OrderAdress input[name=adr_del]\").removeAttr(\"checked\");\r\n $(\"#OrderAdress input[name=adr_del][value=\" + deliverCheckedVal + \"]\").prop(\"checked\", \"checked\");\r\n\r\n } else if (adrtype == \"Billing\") {\r\n\r\n $(\"#OrderAdress input[name=adr_bil]\").removeAttr(\"checked\");\r\n $(\"#OrderAdress input[name=adr_bil][value=\" + billingCheckedVal + \"]\").prop(\"checked\", \"checked\");\r\n\r\n }\r\n }\r\n else {\r\n\r\n if (adrtype == \"Delivery\") {\r\n\r\n deliverCheckedVal = id;\r\n\r\n } else if (adrtype == \"Billing\") {\r\n\r\n billingCheckedVal = id;\r\n\r\n }\r\n\r\n }\r\n }\r\n\r\n });\r\n if (adrtype != \"Billing\") {\r\n $(this).closest(\"tr\").find(\".billingClass\").trigger(\"change\");\r\n }\r\n\r\n });\r\n\r\n //SetKargo\r\n\r\n var selectedCargoPriceID = 0;\r\n\r\n if ($(\"#CargoTable input:checked\").length > 0) {\r\n selectedCargoPriceID = $(\"#CargoTable input:checked\").val();\r\n }\r\n\r\n //$(\"body\").on(\"click\", \"#OrderAdress td\", function () {\r\n\r\n // $lbl = $(this).find(\"label\");\r\n\r\n // if ($lbl.length <= 0) {\r\n\r\n // $(this).closest(\"tr\").find(\"label\").trigger(\"click\");\r\n // } \r\n //});\r\n\r\n $(\"body\").on(\"click\", \"#CargoTable td\", function () {\r\n\r\n $lbl = $(this).find(\"label\");\r\n\r\n if ($lbl.length <= 0) {\r\n\r\n $(this).closest(\"tr\").find(\"label\").trigger(\"click\");\r\n }\r\n });\r\n\r\n $(\"#GiftTable\").on(\"change\", \"input\", function () {\r\n\r\n var wantGift = $(this).is(\":checked\");\r\n\r\n $.ajax({\r\n type: 'post',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/CheckoutCart/SetGift?wantGift=\" + wantGift,\r\n success: function (dt) {\r\n\r\n ReloadOnTimeOut(dt);\r\n\r\n if (dt.Status == true) {\r\n\r\n RefreshOrderSummary();\r\n\r\n }\r\n else {\r\n\r\n SetErrorResults($(\"#Erros\"), dt.ResultDescription, true, true);\r\n\r\n $(\"#GiftTable input\").removeProp(\"checked\");\r\n $(\"#GiftTable input[value=\" + selectedCargoPriceID + \"]\").prop(\"checked\", \"checked\");\r\n }\r\n }\r\n\r\n });\r\n\r\n });\r\n\r\n\r\n\r\n $(\"body\").on(\"click\", \"#GiftTable td:not(.RadioTd)\", function (e) {\r\n\r\n $radinput = $(this).closest(\"tr\").find(\"input:first\");\r\n $radinput.prop(\"checked\", !$radinput.is(\":checked\"));\r\n $(this).closest(\"tr\").find(\"input\").trigger(\"change\");\r\n\r\n });\r\n\r\n\r\n $(\"body\").on(\"change\", \"#PaymentGroups input, .WebPosItem input, #BankList input,#PayAtDoor input\", function (e) {\r\n\r\n $label = $(this).closest(\"label\");\r\n $input = $(this);\r\n\r\n var paymentType = $input.attr(\"data-payment\");\r\n var paymentTypeValue = $input.val();\r\n\r\n var webposinstallmentid = $input.attr(\"data-webposinstallment-id\");\r\n var bankid = $input.attr(\"data-bankid\");\r\n\r\n $(\"#PaymentGroups input\").removeProp(\"checked\");\r\n $(\"#PaymentGroups label, .TaksitLabel\").removeClass(\"active\");\r\n\r\n $label2 = $(\"#PaymentGroups label input[data-payment='\" + paymentType + \"']:first\").closest(\"label\");\r\n\r\n\r\n $label.addClass(\"active\");\r\n $label2.addClass(\"active\");\r\n\r\n $label.find(\"input\").prop(\"checked\", \"checked\");\r\n\r\n\r\n\r\n $(\".PaymentDetail\").removeClass(\"active\");\r\n $(\".PaymentDetail.\" + paymentType).addClass(\"active\");\r\n\r\n if ($(this).closest(\"#PaymentGroups\").length > 0) {\r\n\r\n $(\"#Erros\").html(\"\");\r\n $(\"#Erros\").hide();\r\n $(\".WebPosItem\").hide();\r\n\r\n var webPosId = $(\".WebPosItem.active\").attr(\"data-webposid\");\r\n\r\n $(\".WebPosItem[data-webposid='\" + webPosId + \"']\").show();\r\n //$(\".WebPosItem[data-cardtype='\" + paymentType + \"']\").show();\r\n\r\n\r\n }\r\n\r\n SetPaymentType(webposinstallmentid, bankid);\r\n\r\n });\r\n\r\n if ($(\"#PaymentGroups input\").length > 0) {\r\n\r\n $(\"#PaymentGroups input:eq(0)\").trigger(\"change\");\r\n }\r\n\r\n $(\"body\").on(\"click\", \".PosGroupItem\", function (e) {\r\n $(\".PosGroupItem\").removeClass(\"active\");\r\n $(this).addClass(\"active\");\r\n var webPosId = $(this).attr(\"data-webposid\");\r\n\r\n $(\".WebPosItem\").hide();\r\n $(\".WebPosItem[data-webposid='\" + webPosId + \"']\").show();\r\n\r\n });\r\n\r\n $(\"#CardOwner\").keyup(function (e) {\r\n var regex = /^[a-zA-ZğüşöçİĞÜŞÖÇı ]+$/;\r\n if (regex.test(this.value) !== true)\r\n this.value = this.value.replace(/[^a-zA-ZğüşöçİĞÜŞÖÇı ]+/, '');\r\n\r\n });\r\n\r\n $(\"#CardForm .cvc\").keyup(function (e) {\r\n var regex = /^[0-9]*$/;\r\n if (regex.test(this.value) !== true)\r\n this.value = this.value.replace(/[^0-9]+/, '');\r\n });\r\n\r\n $(\"body\").on(\"keyup\", \"#CardNumbers input\", function (e) {\r\n\r\n var cr_1 = $(\"#CardNumbers > input#CardNumber1\").val().replace(/\\D/g, '');\r\n cr_1 = formatCC(cr_1);\r\n $(\"#CardNumbers > input#CardNumber1\").val(cr_1);\r\n\r\n var cardNumber = cr_1.replace(/\\D/g, '');\r\n\r\n isAllValid = false;\r\n\r\n if (cardNumber.length == 16 && validateCardNumber(cardNumber) == false) {\r\n\r\n $(\"#CardNumbers > input\").addClass(\"NotValid\");\r\n isAllValid = false;\r\n\r\n } else {\r\n $(\"#CardNumbers > input\").removeClass(\"NotValid\");\r\n isAllValid = true;\r\n }\r\n\r\n\r\n if (IsNumeric($(this).val().replace(/\\D/g, '')) == false && $(this).val() != \"\" && $(this).hasClass(\"cardno\")) {\r\n\r\n $(this).addClass(\"NotValid\");\r\n }\r\n else {\r\n\r\n if (isAllValid || cardNumber.length < 16 || !$(this).hasClass(\"cardno\")) {\r\n $(this).removeClass(\"NotValid\");\r\n }\r\n\r\n if (isAllValid) {\r\n $(\"#CardNumbers > input\").removeClass(\"NotValid\");\r\n }\r\n }\r\n\r\n\r\n\r\n CheckBinNumber();\r\n\r\n //if ($(this).attr(\"id\") == \"CardOwner\" && IsNumeric($(this).val().replace(/\\D/g, ''))) {\r\n\r\n // $(this).addClass(\"NotValid\");\r\n // $(\".CardOwnerHeader\").addClass(\"MoveNeeded\");\r\n //}\r\n //else if ($(this).attr(\"id\") == \"CardOwner\") {\r\n\r\n // $(this).removeClass(\"NotValid\");\r\n // $(\".CardOwnerHeader\").removeClass(\"MoveNeeded\");\r\n\r\n //}\r\n\r\n });\r\n\r\n\r\n $(document).on(\"change\", \"#CargoTable input\", function () {\r\n\r\n var id = $(this).val();\r\n $clicked = $(this);\r\n\r\n $.ajax({\r\n type: 'post',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/CheckoutAddress/SetCargoPrice?cargoPriceID=\" + id,\r\n success: function (dt) {\r\n\r\n ReloadOnTimeOut(dt);\r\n\r\n if (dt.Status == true) {\r\n\r\n RefreshOrderSummary();\r\n selectedCargoPriceID = id;\r\n\r\n }\r\n else {\r\n\r\n\r\n SetErrorResults($(\"#Erros\"), dt.ResultDescription, true, true);\r\n\r\n $(\"#CargoTable input\").removeProp(\"checked\");\r\n $(\"#CargoTable input[value=\" + selectedCargoPriceID + \"]\").prop(\"checked\", \"checked\");\r\n\r\n }\r\n }\r\n\r\n });\r\n\r\n });\r\n\r\n $(\"body\").on(\"change\", \"#AggrementApprove\", function () {\r\n\r\n var IsApproved = $(this).is(\":checked\");\r\n\r\n $.ajax({\r\n type: 'post',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/CheckoutPayment/SetAgreement?isApproved=\" + IsApproved,\r\n success: function (dt) {\r\n\r\n ReloadOnTimeOut(dt);\r\n\r\n if (dt.Status == true) {\r\n\r\n RefreshOrderSummary();\r\n\r\n }\r\n else {\r\n\r\n SetErrorResults($(\"#Erros\"), dt.ResultDescription, true, true);\r\n\r\n }\r\n }\r\n\r\n });\r\n\r\n });\r\n\r\n\r\n\r\n //LOGIN & REGISTER\r\n var UseTagManager = false;\r\n $(\"body\").on(\"submit\", \"form.UyeGiris\", function () {\r\n\r\n $form = $(this);\r\n\r\n $(\"#LoginButton\").attr(\"disabled\", \"disabled\");\r\n $(\".AjaxLoader\").show();\r\n\r\n $.ajax({\r\n type: \"POST\",\r\n url: $form.attr(\"action\"),\r\n data: $form.serialize(),\r\n dataType: \"json\",\r\n success: function (dt) {\r\n\r\n $(\".AjaxLoader\").hide();\r\n $(\"#LoginButton\").removeAttr(\"disabled\");\r\n\r\n if (dt.Sonuc == true) {\r\n\r\n if (UseTagManager) {\r\n\r\n AddUserAction(\"Login\");\r\n }\r\n\r\n if (dt.JsonRs == \"Reload\") {\r\n\r\n $(\"#AlertResult\").removeClass(\"alert-danger\");\r\n $(\"#AlertResult\").addClass(\"alert-success\").show().find(\"span\").html(dt.IslemSonucAciklama);\r\n\r\n $(\".AjaxLoader\").show();\r\n $form.hide();\r\n $(\".RwRegisterLogin\").hide();\r\n\r\n document.location.reload();\r\n\r\n }\r\n\r\n if (dt.JsonRs == \"Redirect\") {\r\n\r\n $form.hide();\r\n $(\".AjaxLoader\").show();\r\n $(\".RwRegisterLogin\").hide();\r\n\r\n document.location = dt.Deger5;\r\n }\r\n\r\n $(\"#AlertResult\").removeClass(\"alert-danger\");\r\n\r\n if ($(\"#register_FbRedirectUrl\").length > 0 && $(\"#register_FbRedirectUrl\").val() != \"\" && $(\"#register_FbRedirectUrl\").val().indexOf(\"undefined\") != -1) {\r\n document.location = $(\"#register_FbRedirectUrl\").val();\r\n }\r\n\r\n\r\n }\r\n else {\r\n\r\n $(\"#AlertResult\").removeClass(\"alert-success\");\r\n $(\"#AlertResult\").addClass(\"alert-danger\").show().find(\"span\").html(dt.IslemSonucAciklama);\r\n }\r\n\r\n },\r\n error: function () {\r\n\r\n alert('Talebiniz yerine getirilirken bir hata oluştu. Lütfen daha sonra tekrar deneyiniz.!');\r\n }\r\n\r\n });\r\n\r\n\r\n return false;\r\n\r\n\r\n });\r\n\r\n $(\"body\").on(\"submit\", \"form.UyeOl\", function () {\r\n\r\n $form = $(this);\r\n\r\n $(\"#LoginButton\").attr(\"disabled\", \"disabled\");\r\n $(\".AjaxLoader\").show();\r\n\r\n $.ajax({\r\n type: \"POST\",\r\n url: $form.attr(\"action\"),\r\n data: $form.serialize(),\r\n dataType: \"json\",\r\n success: function (dt) {\r\n\r\n $(\".AjaxLoader\").hide();\r\n $(\"#LoginButton\").removeAttr(\"disabled\");\r\n\r\n if (dt.Sonuc == true) {\r\n\r\n if (UseTagManager) {\r\n AddUserAction(\"Signup\");\r\n }\r\n\r\n if (dt.JsonRs == \"Redirect\") {\r\n\r\n $form.hide();\r\n $(\".AjaxLoader\").show();\r\n $(\".RwRegisterLogin\").hide();\r\n\r\n document.location = \"/\";\r\n }\r\n\r\n if (dt.JsonRs == \"Reload\") {\r\n\r\n $form.hide();\r\n\r\n $(\".AjaxLoader\").show();\r\n $(\".RwRegisterLogin\").hide();\r\n\r\n document.location.reload();\r\n }\r\n\r\n $(\"#AlertResult\").removeClass(\"alert-error\");\r\n $(\"#AlertResult\").hide();\r\n //$(\"#AlertResult\").addClass(\"alert-success\").show().find(\"span\").html(dt.IslemSonucAciklama);\r\n\r\n\r\n\r\n if ($(\"#register_FbRedirectUrl\").length > 0 && $(\"#register_FbRedirectUrl\").val() != \"\" && $(\"#register_FbRedirectUrl\").val().indexOf(\"undefined\") != -1) {\r\n document.location = $(\"#register_FbRedirectUrl\").val();\r\n }\r\n\r\n }\r\n else {\r\n\r\n $(\"#AlertResult\").removeClass(\"alert-success\");\r\n $(\"#AlertResult\").addClass(\"alert-error\").show().find(\"span\").html(dt.IslemSonucAciklama);\r\n }\r\n\r\n },\r\n error: function () {\r\n\r\n alert('Talebiniz yerine getirilirken bir hata oluştu. Lütfen daha sonra tekrar deneyiniz.!');\r\n }\r\n\r\n });\r\n\r\n\r\n return false;\r\n\r\n\r\n });\r\n\r\n $(\"#UserWelcome a\").on(\"click\", function () {\r\n\r\n $(\"#LoginRegisterModal\").modal('show');\r\n\r\n });\r\n\r\n\r\n\r\n\r\n $(\"body\").on(\"click\", \"a.RegisterIcon, a.LoginIcon, #CheckoutHeader .RegisterIcon a, #CheckoutHeader .LoginIcon a, #CheckoutHeader a.RegisterIcon , #CheckoutHeader a.LoginIcon\", function (e) {\r\n\r\n $(\"#LoginRegisterModal\").modal('show');\r\n\r\n if (typeof UseSwStat != 'undefined' && UseSwStat == true) {\r\n\r\n var swparams = GetSwPageParams();\r\n swparams = ChangeSwHashedStringParamValue(swparams, \"ActionType\", \"SiparisUyelikPopupAcma\");\r\n \r\n }\r\n\r\n if (UseTagManager) {\r\n AddCheckOutView('', 2);\r\n SendGaDataLayerVirtual();\r\n }\r\n\r\n if ($(this).closest(\"li\").hasClass(\"RegisterIcon\") || $(this).hasClass(\"RegisterIcon\")) {\r\n\r\n if ($(\".UyeKayitCol\").hasClass(\"pull-right\") == false) {\r\n\r\n $(\".RegisterInBanner\").trigger(\"click\");\r\n }\r\n\r\n }\r\n else {\r\n if ($(\".UyeKayitCol\").hasClass(\"pull-right\")) {\r\n\r\n $(\".RegisterInBanner\").trigger(\"click\");\r\n }\r\n }\r\n\r\n e.preventDefault();\r\n return false;\r\n });\r\n\r\n $(\"body\").on(\"click\", \"#ReadAgreement\", function (e) {\r\n\r\n $(\"#AgreementModal .modal-body\").html($(\"#AgreementDetails\").html() + $(\"#OnBilgilendirmetails\").html());\r\n $(\"#AgreementModal\").modal('show');\r\n\r\n return false;\r\n });\r\n\r\n $(\"#UserWelcome\").on(\"click\", \"a.Popup\", function (e) {\r\n\r\n $(\"#LoginRegisterModal\").modal('show');\r\n\r\n e.preventDefault();\r\n return false;\r\n });\r\n\r\n\r\n $(\"body .LogRegTabs\").on(\"click\", \"li.tb\", function (e) {\r\n\r\n var target = $(this).attr(\"data-target\");\r\n\r\n $(\".Tab1, .Tab2\").hide();\r\n $(\".\" + target).show();\r\n\r\n $(\".LogRegTabs li\").removeClass(\"active\");\r\n $(this).addClass(\"active\");\r\n\r\n e.preventDefault();\r\n return false;\r\n });\r\n\r\n\r\n $(\"body\").on(\"click\", \".ForgetPass\", function (e) {\r\n\r\n $(\"#forgottenpassModal\").modal('show');\r\n\r\n console.log(\"Checkout 'forgottenpassModal' show.\");\r\n\r\n });\r\n\r\n $(\"body\").on(\"submit\", \"form.ForgettenForm\", function () {\r\n\r\n $form = $(\"form.ForgettenForm\");\r\n\r\n $.ajax({\r\n type: \"POST\",\r\n url: $form.attr(\"action\"),\r\n data: $form.serialize(),\r\n dataType: 'json',\r\n success: function (dta) {\r\n\r\n if (dta.Sonuc == true) {\r\n\r\n $(\".ForgettenForm p:first\").html(dta.IslemSonucAciklama);\r\n\r\n $(\"#email\").hide();\r\n $(\"#forgottenPassSubmit\").hide();\r\n setInterval(closeForgottenPass, 3000);\r\n $(\".ForgettenForm p:first\").removeClass(\"alert-danger\");\r\n $(\".ForgettenForm p:first\").addClass(\"alert alert-success\");\r\n\r\n }\r\n else {\r\n\r\n $(\".ForgettenForm p:first\").html(dta.IslemSonucAciklama);\r\n $(\".ForgettenForm p:first\").addClass(\"alert alert-danger\");\r\n }\r\n\r\n\r\n\r\n },\r\n error: function () {\r\n\r\n alert('Talebiniz yerine getirilirken bir hata oluştu. Lütfen daha sonra tekrar deneyiniz.!');\r\n }\r\n\r\n });\r\n\r\n\r\n return false;\r\n\r\n\r\n });\r\n\r\n\r\n //LOGIN & REGISTER END\r\n\r\n\r\n});\r\n\r\n\r\n\r\n\r\n/* KEYBOARD DETECT */\r\n\r\nfunction updateWindowSize() {\r\n window.lastInnerWidth = window.innerWidth;\r\n window.lastInnerHeight = window.innerHeight;\r\n window.lastOrientation = window.orientation;\r\n window.lastBodyHeight = document.body.clientHeight;\r\n};\r\n\r\nfunction detectKeyboard() {\r\n function orientationChange() {\r\n if (((window.lastOrientation == 0 || window.lastOrientation == 180) && (window.orientation == 0 || window.orientation == 180)) || ((window.lastOrientation == 90 || window.lastOrientation == -90) && (window.orientation == 90 || window.orientation == -90))) return false\r\n else return true;\r\n }\r\n\r\n if ((window.lastInnerHeight - window.innerHeight > 150) && window.innerWidth == window.lastInnerWidth) {\r\n var keyboardHeight = window.lastInnerHeight - window.innerHeight;\r\n updateWindowSize();\r\n return keyboardHeight;\r\n }\r\n\r\n if (orientationChange() && document.body.classList.contains(\"keyboard-open\")) {\r\n var keyboardHeight = screen.height - window.topBarHeight - window.innerHeight;\r\n updateWindowSize();\r\n return keyboardHeight;\r\n }\r\n\r\n if ((window.innerHeight - window.lastInnerHeight > 150) && window.innerWidth == window.lastInnerWidth) {\r\n var keyboardHeight = -1;\r\n updateWindowSize();\r\n return keyboardHeight;\r\n\r\n }\r\n\r\n var keyboardHeight = 0;\r\n updateWindowSize();\r\n return keyboardHeight;\r\n};\r\n\r\nfunction keyboardShift(keyboardHeight) {\r\n if (!document.body.classList.contains(\"keyboard-open\")) document.body.classList.add(\"keyboard-open\");\r\n document.body.setAttribute(\"style\", \"height: calc(100% + \" + keyboardHeight + \"px);\");\r\n};\r\n\r\nfunction removeKeyboardShift() {\r\n document.body.classList.remove(\"keyboard-open\");\r\n document.body.removeAttribute(\"style\");\r\n};\r\n\r\n$(document).ready(function () {\r\n\r\n if ($(window).width() <= 768) {\r\n updateWindowSize();\r\n window.topBarHeight = screen.height - window.innerHeight;\r\n window.addEventListener(\"resize\", resizeThrottler, false);\r\n\r\n var resizeTimeout;\r\n function resizeThrottler() {\r\n if (!resizeTimeout) {\r\n resizeTimeout = setTimeout(function () {\r\n resizeTimeout = null;\r\n actualResizeHandler();\r\n }, 66);\r\n }\r\n }\r\n\r\n function actualResizeHandler() {\r\n var keyboardHeight = detectKeyboard();\r\n if (keyboardHeight > 0) { keyboardShift(keyboardHeight); }\r\n else if (keyboardHeight == -1) { removeKeyboardShift(); }\r\n }\r\n }\r\n\r\n\r\n});\r\n\r\n//(());\r\n\r\n/* KEYBOARD DETECT -- END */","\r\nfunction CalculateCombinePrice() {\r\n\r\n var CombineSubTotal = 0;\r\n var FreeCargoLimit = parseFloat($(\"#FreeCargoLimit\").val().replace(\",\", \".\"));\r\n\r\n $(\".CombineColors input.SizeID\").each(function (index) {\r\n\r\n if ($(this).closest(\".CombineColors\").next().find(\"a.SizeLink.active\").length > 0) {\r\n\r\n var CombineItemPriceAmount = parseFloat($(this).closest(\".CombineItemRow\").find(\".CombineItemAmount\").attr(\"data-amount\").replace(\",\", \".\"));\r\n CombineSubTotal += CombineItemPriceAmount;\r\n }\r\n\r\n });\r\n\r\n $(\".CombineSelectedPrice\").html(CombineSubTotal.toFixed(2));\r\n\r\n if (CombineSubTotal >= FreeCargoLimit) {\r\n $(\".BottomFreeCargoInfo\").slideDown(\"slow\");\r\n }\r\n else {\r\n $(\".BottomFreeCargoInfo\").slideUp(\"slow\");\r\n }\r\n}\r\n\r\nfunction RunSlickSlider() {\r\n if ($('.ProductDetailImages ul li').length > 0) {\r\n\r\n $(\".VideoArea\").closest(\"li\").remove();\r\n $(\".DownloadImage\").remove();\r\n\r\n $('.ProductDetailImages ul li img').each(function () {\r\n if ($(this).attr(\"data-src\") != undefined && $(this).attr(\"data-src\") != \"\") {\r\n $(this).attr(\"src\", $(this).attr(\"data-src\"));\r\n }\r\n });\r\n\r\n $slc = $('.ProductDetailImages ul').slick({\r\n centerMode: false,\r\n prevArrow: \"
\",\r\n nextArrow: \"
\",\r\n });\r\n\r\n\r\n $miniImage.slick({\r\n slidesToShow: 5,\r\n vertical: false,\r\n slidesToScroll: 1,\r\n asNavFor: '.ProductDetailImages ul',\r\n focusOnSelect: true\r\n //centerMode: false\r\n });\r\n\r\n\r\n $ItemIndex = $('.ProductDetailImages ul li.slick-current').data(\"slick-index\");\r\n $(\".SmallProductImages img\").each(function (x) {\r\n var Item = $(this)\r\n if (Item.index() == $ItemIndex) {\r\n Item.addClass(\"Selected\");\r\n }\r\n });\r\n $(\".SmallProductImages\").hide();\r\n }\r\n\r\n if ($(\".PdIcons > div\").length <= 0) $(\".PdIcons\").hide();\r\n\r\n}\r\n\r\nfunction MobileAddCombineToBasketScrollEvent() {\r\n\r\n if ($(window).width() < 767) {\r\n\r\n $(window).scroll(function (event) {\r\n var y = $(this).scrollTop();\r\n\r\n if (y >= 250) {\r\n $(\".AddCombineToBasket\").slideDown(\"slow\");\r\n\r\n } else {\r\n $(\".AddCombineToBasket\").slideUp(\"slow\");\r\n }\r\n });\r\n }\r\n}\r\n\r\n\r\n$(document).ready(function () {\r\n\r\n\r\n MobileAddCombineToBasketScrollEvent();\r\n\r\n $miniImage = $(\".SmallProductImages\");\r\n\r\n //RunSlickSlider();\r\n\r\n //$slc.slick(\"slickGoTo\", $(\"#ImageAngle\").val() - 1, true);\r\n //$miniImage.slick(\"slickGoTo\", $(\"#ImageAngle\").val() - 1, true);\r\n\r\n //$(\".ProductName > .SizeTableLink\").on(\"click\", function () {\r\n\r\n // $(\"#SizeTableModal\").modal();\r\n // var ProductID = $(this).closest(\".ProductName\").next(\".CombineColors\").find(\".ProductID\").val();\r\n // var ColorID = $(this).closest(\".ProductName\").next(\".CombineColors\").find(\".ColorID\").val();\r\n\r\n // $.ajax({\r\n // type: \"GET\",\r\n // url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/ProductDetails/SizeChart?ProductID=\" + ProductID + \"&ColorID=\" + ColorID,\r\n // success: function (data) {\r\n\r\n // $(\".SizeTableDiv\").html(data);\r\n\r\n // }\r\n // });\r\n\r\n\r\n //});\r\n\r\n //$(\".combineDecription\").on(\"click\", function () {\r\n\r\n // $(this).next().slideToggle();\r\n // $(this).find(\".ToggleIcon\").toggleClass(\"AcIcon\");\r\n // $(this).find(\".ToggleIcon\").toggleClass(\"KapaIcon\");\r\n\r\n //});\r\n\r\n //SEPETE EKLE TEK TEK\r\n $(\".AddCombineItemToBasket\").on(\"click\", function (e) {\r\n\r\n // $(\".AddToBasket button\").append(\"
\");\r\n\r\n var SizeID = $(this).parent().parent().parent().find(\".CombineColors .SizeID\").val();\r\n var ColorID = $(this).parent().parent().parent().find(\".CombineColors .ColorID\").val();\r\n var ProductID = $(this).parent().parent().parent().find(\".CombineColors .ProductID\").val();\r\n var Amount = \"1\";\r\n var LangID = $(\"#LangID\").val();\r\n var BedenSec = $('#BedenSec').val();\r\n var RenkSec = $('#RenkSec').val();\r\n var UrunYok = $('#UrunYok').val();\r\n\r\n $basketButton = $(this);\r\n\r\n if (SizeID != undefined && ColorID != undefined && ProductID != undefined && SizeID != \"\" && ColorID != \"\" && ProductID != \"\") {\r\n\r\n var NormalText = $basketButton.attr(\"title\");\r\n var AddingText = \"Ekleniyor...\";\r\n $basketButton.find(\"span\").html(AddingText);\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/Cart/AddToCart\",\r\n data: 'sizeID=' + SizeID + \"&colorID=\" + ColorID + \"&productID=\" + ProductID + \"&adet=\" + Amount + \"&langID=\" + LangID,\r\n dataType: 'json',\r\n async: true,\r\n success: function (dt) {\r\n $basketButton.html(\"
\" + NormalText + \" \");\r\n\r\n $basketButton.addClass(\"BasketActive\");\r\n\r\n //alert(NormalText);\r\n\r\n $(\"#GeneralModal .modal-header h3\").html(dt.IslemSonucAciklama);\r\n\r\n if (dt.Sonuc == true) {\r\n\r\n $Modal = $(\"div#QuickLookModal\");\r\n\r\n if ($Modal.length > 0) {\r\n $Modal.modal(\"hide\");\r\n }\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/Cart/GetSepetIcerik\",\r\n data: \"\",\r\n async: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: 'text',\r\n success: function (dt) {\r\n $(\"#UserAndBasket\").html(dt);\r\n\r\n $('html, body').animate({ scrollTop: 0 }, 'slow');\r\n $(\".RightBasket\").addClass(\"active\");\r\n $(\"body\").addClass(\"BasketDropped\");\r\n setContentHeight();\r\n\r\n //$(\".SepetProducts\").hide();\r\n //$(\".SepetProducts\").addClass(\"activeBasket\");\r\n\r\n }\r\n });\r\n\r\n if (typeof UseSwStat != 'undefined' && UseSwStat == true) {\r\n\r\n var basketParams = GetSwPageParams();\r\n\r\n basketParams = ChangeSwHashedStringParamValue(basketParams, \"ActionType\", \"SepeteEkleme\");\r\n basketParams = ChangeSwHashedStringParamValue(basketParams, \"ProductID\", ProductID);\r\n basketParams = ChangeSwHashedStringParamValue(basketParams, \"ColorID\", ColorID);\r\n basketParams += \"&CatalogID=\" + $(\"#CurCatalogID\").val();\r\n\r\n }\r\n\r\n if (UseTagManager) {\r\n\r\n SendCartAddEvent('');\r\n }\r\n\r\n\r\n }\r\n else {\r\n\r\n alert(dt.IslemSonucAciklama);\r\n }\r\n\r\n\r\n }\r\n });\r\n\r\n\r\n\r\n\r\n }\r\n else {\r\n\r\n if (SizeID == undefined || SizeID == \"\") {\r\n\r\n\r\n if ($(\".NewPD\").length <= 0) {\r\n\r\n alert(BedenSec);\r\n\r\n } else {\r\n\r\n $(\"#PrdBlackBg\").show();\r\n $basketButton.parent().parent().parent().find(\".CombineSizes .CombineSizeOptions.open\").addClass(\"PleaseSelect\");\r\n $basketButton.parent().parent().parent().find(\".CombineSizes .CombineSizeOptions.open\").addClass(\"singleSelect\");\r\n\r\n }\r\n\r\n if ($(\".NewPD\").length > 0 && $(\".AutoTextRep\").length > 0) {\r\n\r\n $(\".AddCombineToBasket button\").attr(\"data-first\", $(\".AddCombineToBasket button\").text());\r\n $(\".AddCombineToBasket button\").text($('#BedenSec').val());\r\n }\r\n\r\n }\r\n\r\n if (ColorID == undefined || ColorID == \"\") {\r\n\r\n alert(RenkSec);\r\n\r\n $(\".AddCombineToBasket button\").attr(\"data-first\", $(\".AddCombineToBasket button\").text());\r\n\r\n if ($(\".NewPD\").length > 0 && $(\".AutoTextRep\").length > 0) {\r\n $(\".AddCombineToBasket button\").text($('#BedenSec').val());\r\n }\r\n\r\n }\r\n\r\n if (ProductID == undefined || ProductID == \"\") alert(UrunYok);\r\n\r\n\r\n }\r\n\r\n e.preventDefault();\r\n return false;\r\n\r\n });\r\n\r\n //SEPETE EKLE TÜMÜ\r\n $(\".AddCombineToBasket #Basket\").on(\"click\", function () {\r\n //console.log(\"1\");\r\n var SizeError = \"\";\r\n var ColorError = \"\";\r\n\r\n var Amount = $(\".CombineAmountOptions #Amount\").val();\r\n\r\n var LangID = $(\"#LangID\").val();\r\n\r\n var BedenSec = $('#BedenSec').val();\r\n var RenkSec = $('#RenkSec').val();\r\n var UrunYok = $('#UrunYok').val();\r\n var ItemOnly = $(this).hasClass(\"AddCombineItemToBasket\");\r\n $basketButton = $(this);\r\n\r\n $Inputs = $(\".CombineColors input\");\r\n\r\n if (ItemOnly) {\r\n //console.log(\"2\");\r\n $(\".AddPleaseSelect\").removeClass(\"PleaseSelect AddPleaseSelect\");\r\n $Inputs = $(this).closest(\".ProductName\").next(\".CombineColors\").find(\"input\");\r\n }\r\n\r\n $Inputs.each(function (index) {\r\n //console.log(\"3\");\r\n if ($(this).hasClass(\"SizeID\")) {\r\n var sizeIDValue = $(this).val();\r\n\r\n if ($(\"a.SizeLink.active\").length <= 0) {\r\n\r\n SizeError = BedenSec;\r\n $(this).closest(\".CombineColors\").next().addClass(\"AddPleaseSelect\");\r\n $(\".PrdBlackBg\").css(\"display\", \"block\");\r\n }\r\n\r\n if ((sizeIDValue == undefined || sizeIDValue == \"\") && $(this).closest(\".CombineColors\").next().find(\"a.SizeLink\").length > 0) {\r\n\r\n //SizeError = BedenSec; \r\n // $(this).closest(\".CombineColors\").next().addClass(\"AddPleaseSelect\");\r\n }\r\n }\r\n\r\n if ($(this).hasClass(\"ColorID\")) {\r\n //console.log(\"4\");\r\n var colorIDValue = $(this).val();\r\n\r\n if (colorIDValue == undefined || colorIDValue == \"\") {\r\n ColorError = RenkSec;\r\n }\r\n\r\n }\r\n\r\n });\r\n\r\n if (SizeError == \"\" && ColorError == \"\") // SizeID != undefined && ColorID != undefined && ProductID != undefined && SizeID != \"\" && ColorID != \"\" && ProductID != \"\"\r\n {\r\n var NormalText = $basketButton.text();\r\n var AddingText = $basketButton.attr(\"data-adding\");\r\n //console.log(\"5\");\r\n $basketButton.text(AddingText);\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/Cart/AddCombineToCart\",\r\n data: $(\"#ProductCombineContent\").find(\"input\").serialize() + \"&adet=\" + Amount + \"&langID=\" + LangID,\r\n dataType: 'json',\r\n async: true,\r\n success: function (dt) {\r\n\r\n $basketButton.text(NormalText);\r\n\r\n //alert(dt.Sonuc + dt.IslemSonucAciklama);\r\n //console.log(\"6\");\r\n $(\"#GeneralModal .modal-header h3\").html(dt.IslemSonucAciklama);\r\n\r\n if (dt.Sonuc == true) {\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/Cart/GetSepetIcerik\",\r\n data: \"\",\r\n async: true,\r\n contentType: \"application/json; charset=utf-8\",\r\n dataType: 'text',\r\n success: function (dt) {\r\n\r\n $(\"#UserAndBasket\").html(dt);\r\n\r\n $('html, body').animate({ scrollTop: 0 }, 'slow');\r\n\r\n $(\".RightBasket\").addClass(\"active\");\r\n $(\"body\").addClass(\"BackDropped\");\r\n setContentHeight();\r\n //$(\".SepetProducts\").hide();\r\n //$(\".SepetProducts\").addClass(\"activeBasket\");\r\n\r\n }\r\n });\r\n\r\n }\r\n else {\r\n\r\n alert(dt.IslemSonucAciklama);\r\n }\r\n\r\n\r\n\r\n }\r\n });\r\n\r\n\r\n\r\n }\r\n else {\r\n\r\n if (SizeError != \"\") {\r\n\r\n if ($(\".NewPD\").length <= 0) {\r\n\r\n alert(BedenSec);\r\n\r\n } else {\r\n\r\n $(\"#PrdBlackBg\").show();\r\n\r\n $(\".AddPleaseSelect .CombineSizeOptions.open\").addClass(\"PleaseSelect\");\r\n\r\n }\r\n\r\n if ($(\".NewPD\").length > 0 && $(\".AutoTextRep\").length > 0) {\r\n\r\n $(\".AddCombineToBasket button\").attr(\"data-first\", $(\".AddCombineToBasket button\").text());\r\n $(\".AddCombineToBasket button\").text($('#BedenSec').val());\r\n }\r\n\r\n }\r\n\r\n if (ColorError != \"\") {\r\n\r\n alert(RenkSec);\r\n\r\n $(\".AddCombineToBasket button\").attr(\"data-first\", $(\".AddCombineToBasket button\").text());\r\n\r\n if ($(\".NewPD\").length > 0 && $(\".AutoTextRep\").length > 0) {\r\n $(\".AddCombineToBasket button\").text($('#BedenSec').val());\r\n }\r\n }\r\n\r\n }\r\n\r\n });\r\n\r\n //Combine Size Selection\r\n $('.CombineSizeOptions a').live(\"click\", function () {\r\n\r\n\r\n $combineSizes = $(this).parents(\".CombineSizes\");\r\n $combineColors = $combineSizes.prev();\r\n\r\n if ($(this).hasClass(\"active\")) {\r\n\r\n $combineSizes.find(\".Name\").html(\"\");\r\n $combineColors.find(\".SizeID\").val(\"\");\r\n $(this).removeClass(\"active\");\r\n\r\n CalculateCombinePrice();\r\n\r\n }\r\n else {\r\n\r\n $combineSizes.find(\".Name\").html($(this).attr(\"data-name\"));\r\n $combineColors.find(\".SizeID\").val($(this).attr(\"data-id\"));\r\n\r\n $(this).parent().find(\"a\").removeClass(\"active\");\r\n $(this).addClass(\"active\");\r\n\r\n\r\n if ($(\".NewPD\").length > 0) {\r\n\r\n $combineSizes.find(\".CombineSizeOptions\").addClass(\"passed\");\r\n\r\n $(\".CombineSizeAndAmount span.ChooseTitle \").addClass(\"passed\");\r\n\r\n $combineColors.find(\"span.ChooseTitle\").removeClass(\"current\");\r\n $combineColors.find(\"span.ChooseTitle\").addClass(\"passed\");\r\n\r\n $combineSizes.find(\"span.ChooseTitle\").removeClass(\"current\");\r\n $combineSizes.find(\"span.ChooseTitle\").addClass(\"passed\");\r\n\r\n $(\".SizeAndAmount > span.ChooseTitle\").removeClass(\"current\");\r\n $(\".SizeAndAmount > span.ChooseTitle\").addClass(\"passed\");\r\n\r\n $(\".AmountOptions span.ChooseTitle\").removeClass(\"passed\");\r\n $(\".AmountOptions span.ChooseTitle\").addClass(\"current\");\r\n\r\n $(\".AmountOptions\").addClass(\"open\");\r\n\r\n var isAllSizesSelected = true;\r\n var SelectedSizeCount = $(\"a.SizeLink.active\").length;\r\n\r\n $(\".CombineSelected\").html(SelectedSizeCount);\r\n\r\n var TrigAddBasket = false;\r\n\r\n if ($(\".CombineSizeOptions.PleaseSelect\").length == 1) {\r\n TrigAddBasket = true;\r\n }\r\n\r\n if ($(\".AutoTextRep\").length > 0) {\r\n\r\n CalculateCombinePrice();\r\n\r\n if (isAllSizesSelected) {\r\n\r\n $(\".AddCombineToBasket button\").removeClass(\"NotSelected\");\r\n $(\".AddCombineToBasket button\").text($(\".AddCombineToBasket button\").attr(\"data-first\"));\r\n $(\".CombineSizeOptions\").removeClass(\"PleaseSelect\");\r\n $(\"#PrdBlackBg\").hide();\r\n\r\n if (TrigAddBasket) {\r\n $(\".AddCombineToBasket #Basket\").click();\r\n }\r\n }\r\n\r\n }\r\n\r\n\r\n }\r\n\r\n\r\n }\r\n\r\n });\r\n\r\n $('.ProductDetail .CombineColors a').on(\"click\", function () {\r\n\r\n $combineColors = $(this).closest(\".CombineColors\");\r\n $combineSizes = $combineColors.next(\".CombineSizes\").first();\r\n\r\n $combineItemRow = $(this).closest(\".CombineItemRow\");\r\n $('#RemindModal .modal-body .alert-error').hide();\r\n $('#RemindModal .modal-body .remind-success').hide();\r\n $('.RemindInfo').show();\r\n\r\n $combineColors.find(\".Name\").html($(this).attr(\"data-name\"));\r\n $combineColors.find(\".ColorID\").val($(this).attr(\"data-id\"));\r\n $combineColors.find(\".SizeID\").val(\"\");\r\n\r\n var ProductID = $combineColors.find(\".ProductID\").val();\r\n\r\n $(this).parent().find(\"a\").removeClass(\"active\");\r\n $(this).addClass(\"active\");\r\n\r\n $combineColors.find(\".SizeID\").val(\"\");\r\n\r\n $(\".AjaxLoader\").show();\r\n\r\n var params = \"ColorID=\" + $(this).attr(\"data-id\") + \"&ProductID=\" + ProductID;\r\n\r\n var lastColorID = 0;\r\n\r\n //$(\".CombineDetails a.NotifyWhen\").live(\"click\", function myfunction() {\r\n\r\n // $(\"#NotifyModal\").modal(\"show\");\r\n // var ColorID = $(this).closest(\".CombineItemRow\").find(\".ColorID\").val();\r\n // var SizeID = $(this).closest(\".CombineItemRow\").find(\".SizeID\").val();\r\n // var ProductID = $(this).closest(\".CombineItemRow\").find(\".ProductID\").val();\r\n\r\n // if (typeof ProductID !== 'undefined') {\r\n // $.ajax({\r\n // type: \"GET\",\r\n // url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/ProductDetails/GetListForRemind?ProductID=\" + ProductID,\r\n // cache: true,\r\n // success: function (data) {\r\n\r\n // $(\"#NotifyModal .modal-body\").html(data);\r\n // $(\".NotifyColors a:first\").trigger(\"click\");\r\n // }\r\n // });\r\n // }\r\n\r\n\r\n //});\r\n\r\n\r\n if (lastColorID != $(this).attr(\"data-id\")) {\r\n\r\n lastColorID = $(this).attr(\"data-id\");\r\n\r\n if ($(\".ProductHeader #ProductID\").length > 0) {\r\n\r\n var newhash = \"#C=\" + $(this).attr(\"data-id\");\r\n window.location.hash = newhash;\r\n }\r\n\r\n\r\n\r\n\r\n $.ajax({\r\n type: \"GET\",\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/ProductDetails/GetAllDetailInfoByColorID\",\r\n data: params,\r\n success: function (data) {\r\n\r\n $selectSizePopup = $(\".CombineSizeOptions .SelectSizePopup:first\");\r\n\r\n if ($selectSizePopup.length > 0) {\r\n\r\n $selectSizePopup = $(\".CombineSizeOptions .SelectSizePopup\").clone();\r\n }\r\n\r\n $combineSizes.find(\".CombineSizeOptions\").html(\"\");\r\n\r\n if ($selectSizePopup.length > 0) {\r\n $combineSizes.find(\".CombineSizeOptions\").append($selectSizePopup);\r\n }\r\n\r\n var imgCount = 0;\r\n\r\n var ImageCount = data.filter(function (val) {\r\n return val.Type === \"StockImage\";\r\n });\r\n\r\n if (ImageCount.length > 0) {\r\n $(\".SmallProductImages img\").remove();\r\n $('.ProductDetailImages ul li.ImgArea').remove();\r\n $('.ProductDetailImages ul li.ImgArea').html(\"\");\r\n $(\".SmallProductImages\").html(\"\");\r\n }\r\n\r\n\r\n\r\n\r\n for (var i = 0; i < data.length; i++) {\r\n if (data[i].Type == \"Size\") {\r\n var stil = \"\";\r\n\r\n var DisplayName = data[i].Name;\r\n\r\n if (data[i].SizeValue != \"\" && data[i].SizeValue != null && data[i].SizeValue != undefined) {\r\n DisplayName = data[i].SizeValue;\r\n }\r\n\r\n if (data[i].InStock == false || data[i].PStatus != 1) {\r\n\r\n stil = \"OutOfQuantity\";\r\n\r\n $('.AddToRemindList').show();\r\n }\r\n\r\n else {\r\n $combineSizes.find(\".CombineSizeOptions\").append('
' + DisplayName + ' ');\r\n }\r\n $(\".AjaxLoader\").hide();\r\n\r\n }\r\n\r\n\r\n\r\n if (data[i].Type == \"StockImage\") {\r\n\r\n $imgKucuk = $('
');\r\n $imgKucuk.attr('src', data[i].Name.replace(\"_buyuk\", \"_kucuk\"));\r\n $combineItemRow.find(\".CombineItemImg img\").remove();\r\n\r\n if ($combineItemRow.find(\".CombineItemImg img\").attr(\"src\") != data[i].Name.replace(\"_buyuk\", \"_kucuk\")) {\r\n $combineItemRow.find(\".CombineItemImg\").append($imgKucuk);\r\n $imgKucuk.show(\"slow\");\r\n }\r\n\r\n $(\".SmallProductImages\").prepend($imgKucuk.clone());\r\n\r\n\r\n if (imgCount == 0) {\r\n //$(\".CombineItemImg img:first\", $combineItemRow).trigger(\"click\");\r\n }\r\n\r\n var srcAttr = \"src\";\r\n\r\n if (imgCount == 0) {\r\n //srcAttr = \"data-src\";\r\n }\r\n\r\n var $img = $('
');\r\n $img.attr(srcAttr, data[i].Name.replace(\"_buyuk\", \"_detay\"));\r\n\r\n var $li = $('
');\r\n\r\n if (imgCount >= 1) {\r\n $li.addClass(\"gizli\");\r\n }\r\n\r\n //var $a = $('');\r\n //$a.attr('href', data[i].Name);\r\n //$a.attr('class', \"cloudzoomManuel cloud-zoom\");\r\n\r\n //$a.append();\r\n $li.append($img);\r\n\r\n $li.prependTo('.ProductDetailImages ul');\r\n // $li.clone().prependTo($newul);\r\n\r\n imgCount++;\r\n\r\n\r\n\r\n }\r\n\r\n\r\n }\r\n\r\n //$miniImage.slick('unslick');\r\n //$slc.slick('unslick');\r\n //$(\".SmallProductImages\").slick('unslick');\r\n //$(\".ProductDetailImages ul\").slick('unslick');\r\n\r\n //RunSlickSlider();\r\n\r\n // küçük slider resmi ile büyük slider resmi aynı olması için\r\n //$(\"#ProductsImages > .SmallProductImages button.slick-next\").trigger(\"click\");\r\n\r\n\r\n //$(\".ProductDetailImages ul li\").each(function () {\r\n // if ($(this).hasClass(\"slick-current\")) {\r\n // var ClickedItem = $(this);\r\n // $(\".SmallProductImages img\").remove(\"Selected\");\r\n // $(\".SmallProductImages img\").each(function () {\r\n // if ($(this).data(\"slick-index\") == ClickedItem.data(\"slick-index\")) {\r\n // $(this).find(\"img\").addClass(\"Selected\");\r\n // }\r\n\r\n // });\r\n\r\n // }\r\n\r\n //});\r\n\r\n if ($(\".NewPD\").length > 0) {\r\n\r\n $combineSizes.find(\".CombineSizeOptions, .SizeAndAmount span.ChooseTitle\").addClass(\"open\");\r\n\r\n $combineSizes.find(\".CombineColors span.ChooseTitle\").removeClass(\"current\");\r\n $combineColors.find(\"span.ChooseTitle\").addClass(\"passed\");\r\n\r\n $combineSizes.find(\".CombineSizeAndAmount span.ChooseTitle\").addClass(\"current\");\r\n $combineSizes.find(\".CombineSizeAndAmount span.ChooseTitle\").removeClass(\"passed\");\r\n\r\n $combineSizes.find(\".Name\").html(\"\");\r\n\r\n $(\".AddToBasket button\").addClass(\"NotSelected\");\r\n\r\n if ($(\".AddToBasket button\").attr(\"data-first\") != undefined && $(\".AddToBasket button\").attr(\"data-first\").length > 0) {\r\n $(\".AddToBasket button\").text($(\".AddToBasket button\").attr(\"data-first\"));\r\n }\r\n\r\n }\r\n\r\n },\r\n error: function () {\r\n\r\n alert('Talebiniz yerine getirilirken bir hata oluştu. Lütfen daha sonra tekrar deneyiniz.!');\r\n }\r\n\r\n });\r\n\r\n\r\n\r\n\r\n }\r\n\r\n CalculateCombinePrice();\r\n\r\n });\r\n\r\n //ürün küçük resmine tıklandığında sol büyük galeride görüntüler.\r\n //$(\".CombineItemImg img\").on(\"click\", function () {\r\n\r\n // $(this).parent().parent().find(\"a.active\").trigger(\"click\");\r\n // //$(this).parent().parent().find(\"a.active\").trigger(\"click\");\r\n // ////alert$(\".ProductDetailImages ul img.sagOk\").length);\r\n\r\n //});\r\n\r\n $(document).on(\"click\", \".CombineDetails .SmallProductImages img\", function () {\r\n $(\".CombineDetails .SmallProductImages img\").removeClass(\"Selected\");\r\n $(this).addClass(\"Selected\");\r\n var thatIndex = $(this).index();\r\n //console.log(thatIndex);\r\n $(\".ProductDetailImages ul li\").addClass(\"gizli\");\r\n\r\n $(\".CombineDetails .ProductDetailImages ul li\").each(function () {\r\n\r\n if (thatIndex == $(this).index()) {\r\n $(this).removeClass(\"gizli\");\r\n }\r\n });\r\n });\r\n\r\n\r\n\r\n //$('.ProductDetailImages ul').on('afterChange', function (event, slick, currentSlide, nextSlide) {\r\n // // alert(\"change\");\r\n // $(\".SmallProductImages\").slick(\"slickGoTo\", currentSlide);\r\n // //alert(\"Slide --> \" + currentSlide);\r\n\r\n // $(\".SmallProductImages img\").each(function () {\r\n\r\n // //$(this).addClass(\"slick-current\");\r\n\r\n // if ($(this).hasClass(\"slick-current\")) {\r\n // $(this).addClass(\"Selected\");\r\n\r\n // //alert($(this).index());\r\n // }\r\n // else {\r\n // $(this).removeClass(\"Selected\");\r\n // }\r\n\r\n // });\r\n\r\n\r\n //});\r\n\r\n\r\n //ilk küçük resime tıklamayı tetikliyoruz. (küçük slider için)\r\n //$(\"#ProductCombineContent > .CombineItemRow > .CombineItemImg:first img\").parent().parent().find(\"a.active\").trigger(\"click\");\r\n\r\n});\r\n\r\n//jQuery(window).load(function () {\r\n// $(\"#ProductsImages > .SmallProductImages button.slick-next\").trigger(\"click\");\r\n//});","$(document).ready(function () {\r\n\r\n $(\"body\").off(\"submit\").on(\"submit\",\"form.ContactForm , form.AdvantageForm\", function (e) {\r\n\r\n $form = $(this);\r\n\r\n var normalText = $(\".SendFormButton .btn\").val();\r\n var PleaseWaitText = $(\".SendFormButton #SendButtonText\").val();\r\n\r\n if ($(\".AvdInput button\").length>0)\r\n {\r\n $(\".AvdInput button\").text(PleaseWaitText);\r\n }\r\n\r\n if ($(\".SendFormButton .btn\").length > 0)\r\n {\r\n $(\".SendFormButton .btn\").val(PleaseWaitText);\r\n }\r\n \r\n $.ajax({\r\n type: \"POST\",\r\n url: $form.attr(\"action\"),\r\n data: $form.serialize(),\r\n dataType: \"json\",\r\n success: function (dt) {\r\n if (dt.Sonuc == true) {\r\n $(\"#AlertResult\").show().find(\"span\").html(dt.IslemSonucAciklama);\r\n $form.hide();\r\n $(\".SendFormButton .btn\").val(normalText);\r\n }\r\n else {\r\n $(\"#AlertResult\").show().find(\"span\").html(dt.IslemSonucAciklama);\r\n $(\".SendFormButton .btn\").val(normalText);\r\n }\r\n },\r\n error: function () {\r\n alert('Talebiniz yerine getirilirken bir hata oluştu. Lütfen daha sonra tekrar deneyiniz.!');\r\n }\r\n });\r\n \r\n e.preventDefault();\r\n return false;\r\n\r\n });\r\n\r\n $(\"form.AdvantageForm label input\").live(\"change\", function (e) {\r\n var solution = $('input[name=FindSolution]:checked', '.AdvantageForm').val();\r\n\r\n if (solution == \"False\" || solution == false) {\r\n $(\".AvdInput, .AvdInput div, .AvdInput textarea\").show();\r\n var firstval = \"bilgiler yardımcı oldu teşekkür ederim.\";\r\n $(\".AvdInput textarea\").val($(\".AvdInput textarea\").val().replace(firstval, \"\"));\r\n }\r\n\r\n if (solution == \"True\") {\r\n $(\".AvdInput, .AvdInput button\").show();\r\n $(\".AvdInput div, .AvdInput textarea\").hide();\r\n $(\".AvdInput textarea\").val(\"bilgiler yardımcı oldu teşekkür ederim.\");\r\n $(\"form.AdvantageForm\").submit();\r\n }\r\n });\r\n\r\n $(\".AdvList li\").live(\"click\", function (e) {\r\n $(this).find(\"> div\").toggle();\r\n });\r\n});","var SSSJs = function () {\r\n\r\n return {\r\n //main function to initiate the module\r\n init: function () {\r\n $('#SSSDesc .panel').off('show.bs.collapse').on('show.bs.collapse', function (e) {\r\n $(this).addClass('acik');\r\n });\r\n\r\n $('#SSSDesc .panel').off('hide.bs.collapse').on('hide.bs.collapse', function (e) {\r\n $(this).removeClass('acik');\r\n });\r\n }\r\n };\r\n\r\n}();\r\n\r\n$(document).ready(function () {\r\n \r\n //$('.catalogSliderList').slick({\r\n // infinite: true,\r\n // autoplay: true,\r\n // autoplaySpeed: 3000,\r\n // dots: true\r\n //}),\r\n\r\n //$('.ZeroCatList').slick({\r\n // infinite: true,\r\n // autoplay: true,\r\n // autoplaySpeed: 3000,\r\n // dots: true\r\n //}),\r\n\r\n \r\n $('#ContentPageAccordion .panel-heading[name=\"CntPqAccordion\"]').on('click', function () {\r\n\r\n var t = $(this).attr('aria-expanded');\r\n\r\n if (t != \"true\") {\r\n $(this).find('span').removeClass(\"glyphicon glyphicon-plus\");\r\n $(this).find('span').addClass(\"glyphicon glyphicon-minus\")\r\n }\r\n\r\n\r\n if (t == \"true\") {\r\n $(this).find('span').removeClass(\"glyphicon glyphicon-minus\");\r\n $(this).find('span').addClass(\"glyphicon glyphicon-plus\")\r\n }\r\n });\r\n \r\n\r\n $('.fancybox-media').fancybox({\r\n openEffect: 'none',\r\n closeEffect: 'none',\r\n helpers: {\r\n media: {}\r\n }\r\n }),\r\n\r\n SSSJs.init();\r\n});","function ticarisec(id) {\r\n\r\n if (id == '1') {\r\n $('#ticarivar').hide(\"fast\");\r\n $('#ticariyok').show(\"fast\");\r\n }\r\n else {\r\n $('#ticariyok').hide(\"fast\");\r\n $('#ticarivar').show(\"fast\");\r\n }\r\n}\r\n\r\nfunction ortaksec(id) {\r\n if (id == '0') {\r\n $('#ortakvar').hide(\"fast\");\r\n }\r\n else {\r\n $('#ortakvar').show(\"fast\");\r\n }\r\n}\r\n\r\nfunction magazasec(id) {\r\n if (id == '0') {\r\n $('#magazasiyok').hide(\"fast\");\r\n $('#magazadusunuyor').hide(\"fast\");\r\n $('#magazasivar').show(\"fast\");\r\n }\r\n else if (id == '1') {\r\n $('#magazasiyok').hide(\"fast\");\r\n $('#magazasivar').hide(\"fast\");\r\n $('#magazadusunuyor').show(\"fast\");\r\n }\r\n else if (id == '2') {\r\n $('#magazasivar').hide(\"fast\");\r\n $('#magazadusunuyor').hide(\"fast\");\r\n $('#magazasiyok').show(\"fast\");\r\n }\r\n}\r\n\r\nfunction ilcegoster(il, tip) {\r\n\r\n if (il != null && tip != null) {\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + '/p/Contact/GetTownsByCityName',\r\n data: 'cityName=' + il,\r\n //url: \"/Contact/GetTownsByCityName?cityName=\"+il,\r\n dataType: 'json',\r\n success: function (dt) {\r\n\r\n $select = $(\"#iilce\");\r\n\r\n switch (tip) {\r\n\r\n case \"i\": $select = $(\"#iilce\"); break;\r\n case \"s\": $select = $(\"#silce\"); break;\r\n case \"m\": $select = $(\"#milce\"); break;\r\n case \"d\": $select = $(\"#dilce\"); break;\r\n case \"y\": $select = $(\"#yilce\"); break;\r\n\r\n }\r\n\r\n $select.find('option').remove();\r\n\r\n $select\r\n .append($(\" \")\r\n .attr(\"value\", \"\")\r\n .text(\"Lütfen Seçin\"));\r\n\r\n for (var i = 0; i < dt.length; i++) {\r\n\r\n $select\r\n .append($(\" \")\r\n .attr(\"value\", dt[i].Name)\r\n .text(dt[i].Name));\r\n\r\n }\r\n\r\n if ($('#secondstep input[name=\"magaza\"]:checked').length > 0) {\r\n magazasec($('#secondstep input[name=\"magaza\"]:checked').val());\r\n }\r\n\r\n }\r\n });\r\n }\r\n \r\n\r\n\r\n}\r\n\r\n\r\n$(document).ready(function () {\r\n\r\n $(\".TicariSec input\").removeAttr(\"checked\");\r\n $('input[name=\"magaza\"], input[name=\"mvs92\"], input[name=\"s9b\"], input[name=\"s12c\"], input[name=\"s11d\"], input[name=\"s11d\"], input[name=\"s15a\"], input[name=\"s14b\"] , input[name=\"s18a\"]').removeAttr(\"checked\");\r\n\r\n $(\"#Bayilikformgonder\").on(\"click\", function () {\r\n\r\n $(\"#PstResult\").html(\"\");\r\n $(\"#AjaxLoader\").show();\r\n\r\n $.ajax({\r\n type: \"POST\",\r\n url: \"/\" + $(\"#SmallLangCode\").val() + '/p/Contact/DealerAppTake',\r\n cache: false,\r\n data: $('#BayilikForm').serialize(),\r\n success: function (data) {\r\n\r\n $(\"#AjaxLoader\").hide();\r\n $(\"#PstResult\").show();\r\n $(\"#PstResult\").html(data);\r\n\r\n if ($(\".SuccessArea\").length > 0) {\r\n $(\"#BayilikForm > div, .nextb, .prevb, .gonderb\").hide();\r\n $(\"#PstResult\").show();\r\n }\r\n else {\r\n\r\n }\r\n\r\n }\r\n });\r\n\r\n return false;\r\n\r\n });\r\n\r\n $(\"#BayilikForm .label_radio input\").on(\"change\", function () {\r\n\r\n var name = $(this).attr(\"name\");\r\n\r\n $(\"#BayilikForm input[name='\" + name + \"']\").each(function (e) {\r\n $(this).closest(\"label\").removeClass(\"r_on\");\r\n });\r\n\r\n if ($(this).is(\":checked\")) {\r\n\r\n $(this).closest(\"label\").addClass(\"r_on\");\r\n\r\n }\r\n\r\n\r\n });\r\n\r\n var StepCount = $(\"#steps > li\").length - 1;\r\n var CurStep = $(\"#steps > li.current\").index();\r\n var StepIsValid = true;\r\n\r\n\r\n function ValidateStep(i) {\r\n\r\n // alert(\"aaaaaassxx \" + i);\r\n var IsValid = false;\r\n\r\n var stepName = \"step\" + i;\r\n\r\n $(\"#\" + stepName + \" *\").removeClass(\"NotValid\");\r\n\r\n $('#hatalar').html('').hide();\r\n var error = 0;\r\n\r\n if (i == 1) {\r\n\r\n var fields = $('#firststep input:not(#fax), #firststep select, #firststep textarea');\r\n\r\n fields.each(function () {\r\n\r\n var value = $(this).val();\r\n var ne = $(this).attr('id');\r\n //console.log(ne);\r\n\r\n switch (ne) {\r\n case 'mail':\r\n var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,4}$/;\r\n if (emailPattern.test(value)) {\r\n $(this).addClass('valid');\r\n } else {\r\n //$(this).effect(\"shake\", { times: 3 }, 50);\r\n $(this).addClass(\"NotValid\");\r\n\r\n error++;\r\n $('#hatalar').append('• Geçerli Bir mail adresi girmelisiniz. ').show();\r\n }\r\n break;\r\n case 'tc':\r\n if (value.length > 0) {\r\n var tckontrol, toplam1, toplam2, sonuc, carpim, fark, mod;\r\n tckontrol = value;\r\n tcno = value;\r\n toplam1 = Number(tcno.substring(0, 1)) + Number(tcno.substring(2, 3)) + Number(tcno.substring(4, 5)) + Number(tcno.substring(6, 7)) + Number(tcno.substring(8, 9));\r\n toplam2 = Number(tcno.substring(1, 2)) + Number(tcno.substring(3, 4)) + Number(tcno.substring(5, 6)) + Number(tcno.substring(7, 8));\r\n carpim = toplam1 * 7;\r\n fark = carpim - toplam2;\r\n if (fark < 0) {\r\n fark = fark + 10;\r\n }\r\n mod = fark % 10;\r\n if (mod == tcno.substring(9, 10)) {\r\n var lastDigit = value % 10;\r\n var sum = 0;\r\n for (var i = 0; i < 10; ++i) {\r\n sum += Number(value.substring(i, i + 1));\r\n }\r\n var checksumDigit = sum % 10;\r\n if (checksumDigit == lastDigit) {\r\n $(this).addClass('valid');\r\n } else {\r\n //$(this).effect(\"shake\", { times: 3 }, 50);\r\n $(this).addClass(\"NotValid\");\r\n error++;\r\n $('#hatalar').append('• Geçerli Bir TC Kimlik Numarası girmelisiniz. ').show();\r\n }\r\n } else {\r\n //$(this).effect(\"shake\", { times: 3 }, 50);\r\n $(this).addClass(\"NotValid\");\r\n error++;\r\n $('#hatalar').append('• Geçerli Bir TC Kimlik Numarası girmelisiniz. ').show();\r\n }\r\n } else {\r\n //$(this).effect(\"shake\", { times: 3 }, 50);\r\n $(this).addClass(\"NotValid\");\r\n error++;\r\n $('#hatalar').append('• Geçerli Bir TC Kimlik Numarası girmelisiniz. ').show();\r\n }\r\n\r\n break;\r\n case 'ogrenim':\r\n if (value != 0) {\r\n $(this).addClass('valid');\r\n } else {\r\n //$(this).effect(\"shake\", { times: 3 }, 50);\r\n $(this).addClass(\"NotValid\");\r\n\r\n error++;\r\n $('#hatalar').append('• Öğrenim Durumunu Belirtmeniz Gerekmektedir. ').show();\r\n }\r\n break;\r\n\r\n case 'isim':\r\n if (value.length > 4) {\r\n $(this).addClass('valid');\r\n } else {\r\n //$(this).effect(\"shake\", { times: 3 }, 50);\r\n $(this).addClass(\"NotValid\");\r\n error++;\r\n $('#hatalar').append('• Ad ve Soyad Bilgisi yetersiz. Lütfen Kontrol Ediniz. ').show();\r\n }\r\n break;\r\n case 'dogum':\r\n if (value.length > 4) {\r\n $(this).addClass('valid');\r\n } else {\r\n //$(this).effect(\"shake\", { times: 3 }, 50);\r\n $(this).addClass(\"NotValid\");\r\n error++;\r\n $('#hatalar').append('• Doğum Yeri ve Tarihi Bilgisi yetersiz. Lütfen Kontrol Ediniz. ').show();\r\n }\r\n break;\r\n case 'iadres':\r\n if (value.length > 10) {\r\n $(this).addClass('valid');\r\n } else {\r\n //$(this).effect(\"shake\", { times: 3 }, 50);\r\n $(this).addClass(\"NotValid\");\r\n error++;\r\n $('#hatalar').append('• Adres Bilgisi yetersiz. Lütfen Kontrol Ediniz. ').show();\r\n }\r\n break;\r\n case 'iil':\r\n if (value.length > 2) {\r\n $(this).addClass('valid');\r\n } else {\r\n //$(this).effect(\"shake\", { times: 3 }, 50);\r\n $(this).addClass(\"NotValid\");\r\n error++;\r\n $('#hatalar').append('• İl Bilgisi yetersiz. Lütfen Kontrol Ediniz. ').show();\r\n }\r\n break;\r\n case 'iilce':\r\n if (value.length > 2) {\r\n $(this).addClass('valid');\r\n } else {\r\n //$(this).effect(\"shake\", { times: 3 }, 50);\r\n $(this).addClass(\"NotValid\");\r\n error++;\r\n $('#hatalar').append('• İlçe Bilgisi yetersiz. Lütfen Kontrol Ediniz. ').show();\r\n }\r\n break;\r\n case 'tel':\r\n if (value.length > 9) {\r\n $(this).addClass('valid');\r\n } else {\r\n //$(this).effect(\"shake\", { times: 3 }, 50);\r\n $(this).addClass(\"NotValid\");\r\n error++;\r\n $('#hatalar').append('• Telefon Bilgisi yetersiz. Lütfen Alan Kodu ile Birlikte yazınız. ').show();\r\n }\r\n break;\r\n case 'gsm':\r\n if (value.length > 9) {\r\n $(this).addClass('valid');\r\n } else {\r\n //$(this).effect(\"shake\", { times: 3 }, 50);\r\n $(this).addClass(\"NotValid\");\r\n error++;\r\n $('#hatalar').append('• Cep Telefonu Bilgisi yetersiz. Lütfen Alan Kodu ile Birlikte yazınız. ').show();\r\n }\r\n break;\r\n default:\r\n if (value.length > 4) {\r\n $(this).addClass('valid');\r\n } else {\r\n //$(this).effect(\"shake\", { times: 3 }, 50);\r\n $(this).addClass(\"NotValid\");\r\n error++;\r\n $('#hatalar').append('• Tüm alanların doldurulması gerekmektedir. ').show();\r\n }\r\n break;\r\n }\r\n\r\n });\r\n if (error == 0) {\r\n gidebilir(stepName, i);\r\n IsValid = true;\r\n }\r\n } else if (i == 2) {\r\n var error = 0;\r\n var fields = $('#secondstep input[name=\"ticari\"]:checked');\r\n if (fields.length < 1) {\r\n alert('Lütfen uygun ticari tanımınızı seçiniz');\r\n error++;\r\n }\r\n\r\n if (error == 0) {\r\n gidebilir(stepName, i);\r\n IsValid = true;\r\n }\r\n } else if (i == 3) {\r\n var error = 0;\r\n var fields = $('#thirdstep input[name=\"magaza\"]:checked');\r\n if (fields.length < 1) {\r\n alert('Lütfen Mağaza durumunuzu seçiniz');\r\n error++;\r\n }\r\n if (error == 0) {\r\n gidebilir(stepName, i);\r\n IsValid = true;\r\n }\r\n } else {\r\n //$(\"#\" + stepName).hide();\r\n //$(\"#step\" + (i + 1)).show();\r\n //if (i + 2 == StepCount)\r\n // $(submmitButtonName).show();\r\n //selectStep(i + 1);\r\n }\r\n\r\n // console.log($(\"#hatalar\").html() + \" - \" + error);\r\n\r\n if (error == 0) {\r\n\r\n IsValid = true;\r\n }\r\n\r\n return IsValid;\r\n\r\n }\r\n\r\n function gidebilir(step, adim) {\r\n\r\n //$(\"#\" + step).hide();\r\n //$(\"#step\" + (adim + 1)).show();\r\n\r\n if (adim == StepCount) {\r\n\r\n $(\"#SubmitBayi, #SubmitBayi > input\").show();\r\n $(\".nextb\").hide();\r\n }\r\n else {\r\n $(\".nextb\").show();\r\n }\r\n\r\n $(\"#PstResult\").hide();\r\n\r\n //selectStep(adim + 1);\r\n }\r\n\r\n $(\"#step1Prev, #step1Next\").on(\"click\", function () {\r\n\r\n var isNext = $(this).hasClass(\"nextb\");\r\n var isStepChanged = false;\r\n\r\n\r\n if (isNext) {\r\n StepIsValid = ValidateStep(CurStep);\r\n\r\n if (StepIsValid) {\r\n CurStep++;\r\n isStepChanged = true;\r\n }\r\n\r\n }\r\n\r\n if (!isNext && CurStep > 0) {\r\n CurStep--;\r\n isStepChanged = true;\r\n }\r\n\r\n if (isStepChanged) {\r\n\r\n $(\"#steps > li\").removeClass(\"current\");\r\n $(\"#steps > #stepDesc\" + CurStep).addClass(\"current\");\r\n\r\n $(\"#BayilikForm > div\").removeClass(\"CurStep\");\r\n $(\"#BayilikForm > #step\" + CurStep).addClass(\"CurStep\");\r\n }\r\n\r\n //console.log(CurStep);\r\n\r\n if (CurStep == 0) {\r\n $(\".prevb\").hide();\r\n }\r\n else {\r\n $(\".prevb\").show();\r\n }\r\n\r\n if (CurStep == StepCount) {\r\n $(\".gonderb\").show();\r\n $(\".nextb\").hide();\r\n }\r\n else {\r\n $(\".nextb\").show();\r\n $(\".gonderb\").hide();\r\n }\r\n\r\n });\r\n\r\n\r\n $(\"#BayilikForm input\").on(\"keypress\", function () {\r\n $(this).removeClass(\"Valid\");\r\n });\r\n\r\n\r\n\r\n $(\"#BayilikForm input\").on(\"click\", function () {\r\n $(this).removeClass(\"Valid\");\r\n });\r\n\r\n\r\n\r\n});","(function() {\r\n\r\n var device,\r\n previousDevice,\r\n addClass,\r\n documentElement,\r\n find,\r\n handleOrientation,\r\n hasClass,\r\n orientationEvent,\r\n removeClass,\r\n userAgent;\r\n\r\n previousDevice = window.device;\r\n\r\n device = {};\r\n\r\n window.device = device;\r\n\r\n documentElement = window.document.documentElement;\r\n\r\n userAgent = window.navigator.userAgent.toLowerCase();\r\n\r\n\r\n device.ios = function () {\r\n return device.iphone() || device.ipod() || device.ipad();\r\n };\r\n\r\n device.iphone = function () {\r\n return !device.windows() && find('iphone');\r\n };\r\n\r\n device.ipod = function () {\r\n return find('ipod');\r\n };\r\n\r\n device.ipad = function () {\r\n return find('ipad');\r\n };\r\n\r\n device.android = function () {\r\n return !device.windows() && find('android');\r\n };\r\n\r\n device.androidPhone = function () {\r\n return device.android() && find('mobile');\r\n };\r\n\r\n device.androidTablet = function () {\r\n return device.android() && !find('mobile');\r\n };\r\n\r\n device.blackberry = function () {\r\n return find('blackberry') || find('bb10') || find('rim');\r\n };\r\n\r\n device.blackberryPhone = function () {\r\n return device.blackberry() && !find('tablet');\r\n };\r\n\r\n device.blackberryTablet = function () {\r\n return device.blackberry() && find('tablet');\r\n };\r\n\r\n device.windows = function () {\r\n return find('windows');\r\n };\r\n\r\n device.windowsPhone = function () {\r\n return device.windows() && find('phone');\r\n };\r\n\r\n device.windowsTablet = function () {\r\n return device.windows() && (find('touch') && !device.windowsPhone());\r\n };\r\n\r\n device.fxos = function () {\r\n return (find('(mobile;') || find('(tablet;')) && find('; rv:');\r\n };\r\n\r\n device.fxosPhone = function () {\r\n return device.fxos() && find('mobile');\r\n };\r\n\r\n device.fxosTablet = function () {\r\n return device.fxos() && find('tablet');\r\n };\r\n\r\n device.meego = function () {\r\n return find('meego');\r\n };\r\n\r\n device.cordova = function () {\r\n return window.cordova && location.protocol === 'file:';\r\n };\r\n\r\n device.nodeWebkit = function () {\r\n return typeof window.process === 'object';\r\n };\r\n\r\n device.mobile = function () {\r\n return device.androidPhone() || device.iphone() || device.ipod() || device.windowsPhone() || device.blackberryPhone() || device.fxosPhone() || device.meego();\r\n };\r\n\r\n device.tablet = function () {\r\n return device.ipad() || device.androidTablet() || device.blackberryTablet() || device.windowsTablet() || device.fxosTablet();\r\n };\r\n\r\n device.desktop = function () {\r\n return !device.tablet() && !device.mobile();\r\n };\r\n\r\n device.television = function() {\r\n var i, television = [\r\n \"googletv\",\r\n \"viera\",\r\n \"smarttv\",\r\n \"internet.tv\",\r\n \"netcast\",\r\n \"nettv\",\r\n \"appletv\",\r\n \"boxee\",\r\n \"kylo\",\r\n \"roku\",\r\n \"dlnadoc\",\r\n \"roku\",\r\n \"pov_tv\",\r\n \"hbbtv\",\r\n \"ce-html\"\r\n ];\r\n\r\n i = 0;\r\n while (i < television.length) {\r\n if (find(television[i])) {\r\n return true;\r\n }\r\n i++;\r\n }\r\n return false;\r\n };\r\n\r\n device.portrait = function () {\r\n return (window.innerHeight / window.innerWidth) > 1;\r\n };\r\n\r\n device.landscape = function () {\r\n return (window.innerHeight / window.innerWidth) < 1;\r\n };\r\n\r\n device.noConflict = function () {\r\n window.device = previousDevice;\r\n return this;\r\n };\r\n\r\n find = function (needle) {\r\n return userAgent.indexOf(needle) !== -1;\r\n };\r\n\r\n hasClass = function (className) {\r\n var regex;\r\n regex = new RegExp(className, 'i');\r\n return documentElement.className.match(regex);\r\n };\r\n\r\n addClass = function (className) {\r\n var currentClassNames = null;\r\n if (!hasClass(className)) {\r\n currentClassNames = documentElement.className.replace(/^\\s+|\\s+$/g, '');\r\n documentElement.className = currentClassNames + \" \" + className;\r\n }\r\n };\r\n\r\n removeClass = function (className) {\r\n if (hasClass(className)) {\r\n documentElement.className = documentElement.className.replace(\" \" + className, \"\");\r\n }\r\n };\r\n\r\n\r\n if (device.ios()) {\r\n if (device.ipad()) {\r\n addClass(\"ios ipad tablet\");\r\n } else if (device.iphone()) {\r\n addClass(\"ios iphone mobile\");\r\n } else if (device.ipod()) {\r\n addClass(\"ios ipod mobile\");\r\n }\r\n } else if (device.android()) {\r\n if (device.androidTablet()) {\r\n addClass(\"android tablet\");\r\n } else {\r\n addClass(\"android mobile\");\r\n }\r\n } else if (device.blackberry()) {\r\n if (device.blackberryTablet()) {\r\n addClass(\"blackberry tablet\");\r\n } else {\r\n addClass(\"blackberry mobile\");\r\n }\r\n } else if (device.windows()) {\r\n if (device.windowsTablet()) {\r\n addClass(\"windows tablet\");\r\n } else if (device.windowsPhone()) {\r\n addClass(\"windows mobile\");\r\n } else {\r\n addClass(\"desktop\");\r\n }\r\n } else if (device.fxos()) {\r\n if (device.fxosTablet()) {\r\n addClass(\"fxos tablet\");\r\n } else {\r\n addClass(\"fxos mobile\");\r\n }\r\n } else if (device.meego()) {\r\n addClass(\"meego mobile\");\r\n } else if (device.nodeWebkit()) {\r\n addClass(\"node-webkit\");\r\n } else if (device.television()) {\r\n addClass(\"television\");\r\n } else if (device.desktop()) {\r\n addClass(\"desktop\");\r\n }\r\n\r\n if (device.cordova()) {\r\n addClass(\"cordova\");\r\n }\r\n\r\n handleOrientation = function () {\r\n if (device.landscape()) {\r\n removeClass(\"portrait\");\r\n addClass(\"landscape\");\r\n } else {\r\n removeClass(\"landscape\");\r\n addClass(\"portrait\");\r\n }\r\n };\r\n\r\n if (Object.prototype.hasOwnProperty.call(window, \"onorientationchange\")) {\r\n orientationEvent = \"orientationchange\";\r\n } else {\r\n orientationEvent = \"resize\";\r\n }\r\n\r\n if (window.addEventListener) {\r\n window.addEventListener(orientationEvent, handleOrientation, false);\r\n } else if (window.attachEvent) {\r\n window.attachEvent(orientationEvent, handleOrientation);\r\n } else {\r\n window[orientationEvent] = handleOrientation;\r\n }\r\n\r\n handleOrientation();\r\n\r\n if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\r\n define(function() {\r\n return device;\r\n });\r\n } else if (typeof module !== 'undefined' && module.exports) {\r\n module.exports = device;\r\n } else {\r\n window.device = device;\r\n }\r\n\r\n}).call(this);\r\n","function GetHelp(x) {\r\n\r\n $('.help_div').hide();\r\n $('.help_' + x).show();\r\n $('.help_' + x).children(\"div.subhelp:first\").show();\r\n\r\n}\r\n \r\n$(document).ready(function () {\r\n\r\n\r\n\r\n var path = window.location.href.split('#')[1];\r\n if (path != undefined && path != null && path != \"_=_\") {\r\n GetHelp(path);\r\n $('#helpMenu ul #' + path +' a').addClass(\"secili\");\r\n }\r\n else {\r\n $('.help_Uyelik, .help_Uyelik .subhelp:first').show();\r\n $('#helpMenu ul li:first a').addClass(\"secili\");\r\n }\r\n\r\n \r\n $('#helpMenu ul li a').on('click', function (e, index) {\r\n\r\n $('#helpMenu ul li a').removeClass('secili');\r\n $(this).addClass('secili');\r\n GetHelp($(this).attr('href').replace(/#/ig, \"\"));\r\n });\r\n\r\n $('.subhelptitle').on('click', function (e, index) { \r\n\r\n\r\n var c = $(this).attr('id').replace(/title/, \"\");\r\n $('.subhelp:visible').slideUp('fast');\r\n $('.' + c).slideDown('fast');\r\n\r\n });\r\n\r\n $(\"#HelpNavs div ul\").first().show();\r\n $(\"#HelpContents ul li\").hide();\r\n $(\"#HelpContents div\").eq($(\"#HelpNavs div .HelpNavTitles\").first().parent().index()).find(\"ul li:first\").show();\r\n\r\n $('#HelpNavs li').click(function () {\r\n\r\n $(\"#HelpContents ul li\").hide();\r\n\r\n $(\"#HelpContents div\").eq($(this).closest(\"div\").index()).find(\"ul li\").eq($(this).index()).show();\r\n\r\n });\r\n\r\n $('#HelpNavs > div').click(function () {\r\n\r\n\r\n $(\"#HelpNavs div > ul\").hide();\r\n $(this).find(\"ul\").show(\"normal\");\r\n\r\n\r\n });\r\n\r\n $('.HelpNavTitles').click(function () {\r\n\r\n $(\"#HelpContents ul li\").hide();\r\n $(\"#HelpContents div\").eq($(this).parent().index()).find(\"ul li:first\").show();\r\n\r\n });\r\n\r\n});\r\n\r\n","\r\nfunction NewsletterPopupControl() {\r\n if ($.cookie('NewsletterPopup') != \"undefined\" && $.cookie('NewsletterPopup') != \"false\") {\r\n $.ajax({\r\n type: 'get',\r\n async: true,\r\n cache: false,\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/User/UserCheck\",\r\n success: function (dt) {\r\n console.log(dt);\r\n if (dt.USER == -1 && $(\"#SmallLangCode\").val() == \"tr\") {\r\n $(\"#NewsletterPopup\").modal();\r\n\r\n }\r\n }\r\n });\r\n\r\n }\r\n\r\n //$('#NewsletterPopup').on('hidden.bs.modal', function () {\r\n // var expireDate = new Date();\r\n // var minutes = 30;\r\n // expireDate.setTime(expireDate.getTime() + (minutes * 60 * 1000) * 6);\r\n\r\n // $.cookie('NewsletterPopup', false, { expires: expireDate, path: '/' });\r\n // $(\".NewsLetterResult\").hide();\r\n // $(\".NewsletterFormHead\").show();\r\n //})\r\n\r\n\r\n $(\"#IgnoreLink > a,.DialogClose\").live(\"click\", function () {\r\n\r\n var expireDate = new Date();\r\n var minutes = 30;\r\n expireDate.setTime(expireDate.getTime() + (minutes * 60 * 1000) * 6);\r\n $.cookie('NewsletterPopup', false, { expires: expireDate, path: '/' });\r\n $(\"#NewsletterPopup\").modal(\"hide\");\r\n\r\n });\r\n\r\n\r\n $(\"#newsletterFormSubmit\").live(\"click\", function () {\r\n var expireDate = new Date();\r\n var minutes = 30;\r\n expireDate.setTime(expireDate.getTime() + (minutes * 60 * 1000) * 6);\r\n $.cookie('NewsletterPopup', false, { expires: expireDate, path: '/' });\r\n });\r\n\r\n}\r\n\r\nfunction HomeCatalogTabs() {\r\n $(\"#HomeCatalogTabs .ProductList .Prd\").removeClass(\"col-md-4\").removeClass(\"col-sm-8\");\r\n $(\"#HomeCatalogTabs .ProductList .Prd\").addClass(\"col-md-6\").addClass(\"col-sm-12\");\r\n\r\n}\r\n\r\nfunction BasketButtonFixed() {\r\n $(window).scroll(function () {\r\n\r\n if ($(\"body\").hasClass(\"Scrolled\")) {\r\n\r\n $(\"#Basket\").addClass(\"BasketFixed\");\r\n\r\n }\r\n else {\r\n $(\"#Basket\").removeClass(\"BasketFixed\");\r\n }\r\n\r\n });\r\n}\r\n\r\nfunction HeaderFixer() {\r\n $(window).scroll(function () {\r\n\r\n if ($(\"body\").hasClass(\"Scrolled\")) {\r\n\r\n $(\"header\").addClass(\"fixedHeader\");\r\n\r\n }\r\n else {\r\n $(\"header\").removeClass(\"fixedHeader\");\r\n }\r\n\r\n });\r\n}\r\n\r\nfunction TextBanner() {\r\n $PrevSelectedDesktop = $(\"#AnoncementArea ul.desktopSlide li.selectedBannerDesktop\")\r\n $PrevSelectedDesktop.removeClass(\"selectedBannerDesktop\")\r\n if ($(\"#AnoncementArea ul.desktopSlide li\").length != $PrevSelectedDesktop.index() + 1) {\r\n $PrevSelectedDesktop.next().addClass(\"selectedBannerDesktop\");\r\n } else {\r\n $(\"#AnoncementArea ul.desktopSlide li\").first().addClass(\"selectedBannerDesktop\");\r\n }\r\n\r\n $PrevSelectedMobile = $(\"#AnoncementArea ul.mobileSlide li.selectedBannerMobile\")\r\n $PrevSelectedMobile.removeClass(\"selectedBannerMobile\")\r\n if ($(\"#AnoncementArea ul.mobileSlide li\").length != $PrevSelectedMobile.index() + 1) {\r\n $PrevSelectedMobile.next().addClass(\"selectedBannerMobile\");\r\n } else {\r\n $(\"#AnoncementArea ul.mobileSlide li\").first().addClass(\"selectedBannerMobile\");\r\n }\r\n\r\n}\r\n\r\nfunction settingTextBanner() {\r\n setInterval(TextBanner, 7000);\r\n}\r\n\r\n\r\nfunction GetLayoutTextBanners() {\r\n $.ajax({\r\n type: 'get',\r\n async: true,\r\n cache: false,\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/Home/GetTextBannerList\",\r\n success: function (dt) {\r\n if (dt.length > 0) {\r\n var desktopCounter = 0;\r\n var mobileCounter = 0;\r\n for (var i = 0; i < dt.length; i++) {\r\n if (dt[i].Area == 12) {\r\n if (desktopCounter == 0) {\r\n $(\"#AnoncementArea ul.desktopSlide\").append(\"\" + dt[i].Content + \" \");\r\n desktopCounter++;\r\n } else {\r\n $(\"#AnoncementArea ul.desktopSlide\").append(\"\" + dt[i].Content + \" \");\r\n desktopCounter++;\r\n }\r\n } else {\r\n if (mobileCounter == 0) {\r\n $(\"#AnoncementArea ul.mobileSlide\").append(\"\" + dt[i].Content + \" \");\r\n mobileCounter++;\r\n } else {\r\n $(\"#AnoncementArea ul.mobileSlide\").append(\"\" + dt[i].Content + \" \");\r\n mobileCounter++;\r\n }\r\n }\r\n\r\n\r\n }\r\n }\r\n settingTextBanner();\r\n }\r\n });\r\n\r\n\r\n}\r\n\r\n\r\nfunction RememberCheck() {\r\n $(\".RememberCheck #cbox\").on(\"change\", function () {\r\n if ($(this).prop(\"checked\")) {\r\n $(\".RememberCheck .customCheck\").addClass(\"checked\");\r\n } else {\r\n $(\".RememberCheck .customCheck\").removeClass(\"checked\");\r\n }\r\n });\r\n}\r\n\r\nfunction HometabSlider() {\r\n $(\"#HomeCatalogContens img.img2\").remove();\r\n $(\"#HomeCatalogContens\").slick({\r\n nextArrow: '
',\r\n prevArrow: '
',\r\n arrows: true,\r\n autoplay: true,\r\n autoplaySpeed: 8000,\r\n });\r\n}\r\n\r\n$(window).load(function () {\r\n $(\".UseLazyLoad\").Lazy();\r\n});\r\n\r\n$(document).ready(function () {\r\n \r\n \r\n //HomeCatalogTabs();\r\n //settingTextBanner();\r\n RememberCheck();\r\n //HometabSlider();\r\n // GetLayoutTextBanners();\r\n\r\n if ($(window).width() > 992) {\r\n // NewsletterPopupControl();\r\n }\r\n else {\r\n $(\"#NewsletterPopup\").modal(\"hide\");\r\n }\r\n\r\n if ($(\".HomeProducts\").length > 0) {\r\n\r\n //$(\".HomeProducts .Prd\").addClass(\"col-sm-8\");\r\n //$(\".HomeProducts .Prd\").addClass(\"col-xs-12\");\r\n\r\n $(\".HomeProducts div.Prd > a\").each(function (index) {\r\n\r\n var imgBG = $(this).find(\"img:first\").attr(\"src\");\r\n\r\n if (imgBG.indexOf(\"404\") != -1 && $(this).find(\"img:first\").attr(\"data-qazy-src\") != undefined) {\r\n imgBG = $(this).find(\"img:first\").attr(\"data-qazy-src\");\r\n }\r\n\r\n $(this).css(\"background-image\", \"url(\" + imgBG + \")\");\r\n $(this).parent().append(\" \" + $(\"#GotoDetailsVl\").val() + \" \");\r\n\r\n });\r\n }\r\n\r\n if (!isMobile(true)) {\r\n\r\n $(\"#CatalogTabs > li\").live({\r\n mouseenter:\r\n function () {\r\n\r\n $(\"#CatalogTabs > li, #HomeCatalogContens > div\").removeClass(\"active\");\r\n $(this).addClass(\"active\");\r\n\r\n\r\n\r\n $(\"#HomeCatalogContens > div\").eq($(this).index()).addClass(\"active\");\r\n\r\n },\r\n mouseleave:\r\n function () {\r\n\r\n\r\n }\r\n });\r\n\r\n if ($(\"#CatalogTabs li[data-id='173']\").length > 0) {\r\n\r\n $(\"#CatalogTabs > li, #HomeCatalogContens > div\").removeClass(\"active\");\r\n $(\"#CatalogTabs > li\").removeClass(\"active\");\r\n\r\n $(\"#CatalogTabs li[data-id='173']\").addClass(\"active\");\r\n var index = $(\"#CatalogTabs li[data-id='173']\").index();\r\n $(\"#HomeCatalogContens > div\").eq(index).addClass(\"active\");\r\n\r\n }\r\n\r\n\r\n }\r\n\r\n $(\"#CatalogTabs li\").live(\"click\", function () {\r\n\r\n var href = $(\"#MainMenu li a[data-rel='\" + $(\"#CatalogTabs li.active\").data(\"id\") + \"']\").attr(\"href\");\r\n\r\n\r\n if (!isMobile(true)) {\r\n\r\n if (href != undefined && href != null) {\r\n document.location.href = href;\r\n }\r\n\r\n } else if ($(this).hasClass(\"active\")) {\r\n\r\n if (href != undefined && href != null) {\r\n document.location.href = href;\r\n }\r\n\r\n }\r\n else {\r\n $(\"#CatalogTabs > li, #HomeCatalogContens > div\").removeClass(\"active\");\r\n $(this).addClass(\"active\");\r\n $(\"#HomeCatalogContens > div\").eq($(this).index()).addClass(\"active\");\r\n }\r\n\r\n });\r\n\r\n\r\n //if ($(\".HomeProducts\").length > 0) {\r\n\r\n\r\n\r\n // $(\".HomeProducts div.Prd > a\").each(function (index) {\r\n\r\n // var imgBG = $(this).find(\"img:first\").attr(\"src\");\r\n\r\n // if (imgBG.indexOf(\"404\") != -1 && $(this).find(\"img:first\").attr(\"data-qazy-src\") != undefined) {\r\n // imgBG = $(this).find(\"img:first\").attr(\"data-qazy-src\");\r\n // }\r\n\r\n // $(this).css(\"background-image\", \"url(\" + imgBG + \")\");\r\n // $(this).parent().append(\"\" + $(\"#GotoDetailsVl\").val() + \" \");\r\n\r\n // });\r\n //}\r\n\r\n //if (!isMobile(true)) {\r\n\r\n // $(\".HomeCatalogTabs > ul > li\").live({\r\n // mouseenter:function () {\r\n\r\n // $(\".HomeCatalogTabs ul > li, #HomeCatalogContens > div\").removeClass(\"active\");\r\n // $(this).addClass(\"active\");\r\n\r\n // $(\"#HomeCatalogContens > div\").eq($(this).index()).addClass(\"active\");\r\n\r\n // },\r\n // mouseleave:function () {\r\n\r\n\r\n // }\r\n\r\n // });\r\n\r\n\r\n \r\n // if ($(\"#CatalogTabs li[data-id='173']\").length > 0) {\r\n\r\n // $(\"#CatalogTabs > li, #HomeCatalogContens > div\").removeClass(\"active\");\r\n // $(\"#CatalogTabs > li\").removeClass(\"active\");\r\n\r\n // $(\"#CatalogTabs li[data-id='173']\").addClass(\"active\");\r\n // var index = $(\"#CatalogTabs li[data-id='173']\").index();\r\n // $(\"#HomeCatalogContens > div\").eq(index).addClass(\"active\");\r\n\r\n // }\r\n \r\n\r\n //}\r\n\r\n\r\n\r\n $(\"#pieceBanner1, .pieceBannerMiddle1 , .pieceBannerRight1 , .pieceBannerMiddle2 , .pieceBannerRight2 \").live(\"click\", function () {\r\n\r\n var href = $(this).find(\".middleText\").find(\"a\").first().attr(\"href\");\r\n\r\n if (href != undefined && href != null) {\r\n\r\n document.location.href = href;\r\n }\r\n\r\n });\r\n\r\n\r\n //function GetLastVisitedProducts() {\r\n\r\n // if ($(\".AutoGetLastVisited\").length > 0) {\r\n\r\n // $.ajax({\r\n // type: \"GET\",\r\n // url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/ProductDetails/GetLastVisitedProducts?SpecialTo=true\", \r\n // cache: false,\r\n // success: function (dt) {\r\n\r\n // $(\".LastViewedProducts.AutoSetted\").remove();\r\n\r\n // if (dt != \"\") {\r\n\r\n // $(\".AutoGetLastVisited\").append(dt);\r\n\r\n // $(\".LastViewedProducts .ProductList .Prd\").addClass(\"col-sm-6\");\r\n // $(\".LastViewedProducts .ProductList .Prd\").addClass(\"col-xs-12\");\r\n // $(\".LastViewedProducts .ProductList .Prd:gt(3)\").addClass(\"hidden-sm\");\r\n\r\n // if( $(\".LastViewedProducts .ProductList .Prd\").length >= 6)\r\n // {\r\n // $(\".AutoGetLastVisited\").show();\r\n // }\r\n\r\n // }\r\n\r\n // }\r\n // });\r\n // }\r\n //}\r\n\r\n //GetLastVisitedProducts();\r\n\r\n //homebannerFull2\r\n\r\n\r\n\r\n});","\r\n;( function( $, window, document, options ) {\r\n\r\n\t\"use strict\";\r\n\r\n\t\t\r\n\t\tvar pluginName = \"clickZoom\",\r\n\t\t\tdefaults = {\r\n\t\t\t active: true,\r\n\t\t\t zoomLimit: 3\r\n\t\t\t};\r\n\r\n\t\tfunction Plugin ( element, options ) {\r\n\t\t\tthis.element = element;\r\n\r\n\t\t\tthis.settings = $.extend( {}, defaults, options );\r\n\t\t\tthis._defaults = defaults;\r\n\t\t\tthis._name = pluginName;\r\n\t\t\tthis.init(); \r\n\t\t}\r\n\r\n\t\t$.extend(Plugin.prototype, {\r\n\t\t val1: 1,\r\n\t\t val2: 0,\r\n\t\t init: function () {\r\n\t\t this.setSize();\r\n\t\t this.onResize();\r\n\t\t $(this.element).bind(\"click\",this.ImageClick);\r\n\t\t },\r\n\t\t onResize:function(){\r\n\t\t $(window).on(\"resize\", function () {\r\n\t\t console.log(\"resize\");\r\n\t\t });\r\n\t\t },\r\n\t\t setSize: function () {\r\n\r\n\t\t var that = this;\r\n\r\n\t\t $(\" \")\r\n .attr(\"src\", $(that.element).find(\"img\").attr(\"src\"))\r\n .load(function () {\r\n $(that.element).parent().height(this.height);\r\n $(that.element).parent().width(this.width);\r\n $(that.element).parent().css('display', 'inline-block');\r\n $(that.element).parent().css('overflow', 'hidden');\r\n $(that.element).find(\"img\").attr(\"data-zv\",0);\r\n\r\n $(that.element).find(\"img\").on(\"click\", function (e) {\r\n that.val2 = $(that.element).find(\"img\").attr(\"data-zv\"),\r\n that.val2 = parseInt(that.val2) + 1;\r\n console.log(that.val2);\r\n that.zoomVal(that.val1 + \".\" + that.val2);\r\n $(that.element).find(\"img\").attr(\"data-zv\", that.val2)\r\n });\r\n });\r\n\t\t\t},\r\n\t\t zoomVal: function (value) {\r\n var that = this;\r\n\t\t $(that.element).find(\"img\").css('zoom',value);\r\n\t\t }\r\n\r\n\t\t});\r\n\r\n\t\t$.fn[pluginName] = function( options ) {\r\n\t\t\treturn this.each( function() {\r\n\t\t\t\tif ( !$.data( this, \"plugin_\" + pluginName ) ) {\r\n\t\t\t\t\t$.data( this, \"plugin_\" +\r\n\t\t\t\t\t\tpluginName, new Plugin( this, options ) );\r\n\t\t\t\t}\r\n\t\t\t} );\r\n\t\t};\r\n\r\n})(jQuery, window, document);\r\n","/* jshint -W071, -W074 */\n/* global jQuery:false */\n\n/* Disabled options are:\n * W071: This function has too many statements\n * W074: This function's cyclomatic complexity is too high\n */\n\n/*\n *\tjQuery ezPlus 1.1.6\n *\tDemo's and documentation:\n *\thttp://igorlino.github.io/elevatezoom-plus/\n *\n *\tlicensed under MIT license.\n *\thttp://en.wikipedia.org/wiki/MIT_License\n *\n */\n\nif (typeof Object.create !== 'function') {\n Object.create = function (obj) {\n function F() {\n }\n\n F.prototype = obj;\n return new F();\n };\n}\n\n(function ($, window, document, undefined) {\n var EZP = {\n init: function (options, elem) {\n var self = this;\n var $galleries;\n\n self.elem = elem;\n self.$elem = $(elem);\n\n self.imageSrc = self.$elem.data('zoom-image') ? self.$elem.data('zoom-image') : self.$elem.attr('src');\n\n self.options = $.extend({}, $.fn.ezPlus.options, self.responsiveConfig(options || {}));\n\n if (!self.options.enabled) {\n return;\n }\n\n //TINT OVERRIDE SETTINGS\n if (self.options.tint) {\n self.options.lensColour = 'none'; //colour of the lens background\n self.options.lensOpacity = '1'; //opacity of the lens\n }\n //INNER OVERRIDE SETTINGS\n if (self.options.zoomType === 'inner') {\n self.options.showLens = false;\n }\n\n //Remove alt on hover\n\n self.$elem.parent().removeAttr('title').removeAttr('alt');\n\n self.zoomImage = self.imageSrc;\n\n self.refresh(1);\n\n //Create the image swap from the gallery\n $galleries = $(self.options.gallery ? ('#' + self.options.gallery) : self.options.gallerySelector);\n $galleries.on('click.zoom', self.options.galleryItem, function (e) {\n\n //Set a class on the currently active gallery image\n if (self.options.galleryActiveClass) {\n $(self.options.galleryItem, $galleries).removeClass(self.options.galleryActiveClass);\n $(this).addClass(self.options.galleryActiveClass);\n }\n //stop any link on the a tag from working\n if (this.tagName === 'A') {\n e.preventDefault();\n }\n\n //call the swap image function\n if ($(this).data('zoom-image')) {\n self.zoomImagePre = $(this).data('zoom-image');\n }\n else {\n self.zoomImagePre = $(this).data('image');\n }\n self.swaptheimage($(this).data('image'), self.zoomImagePre);\n if (this.tagName === 'A') {\n return false;\n }\n });\n },\n refresh: function (length) {\n var self = this;\n\n setTimeout(function () {\n self.fetch(self.imageSrc);\n\n }, length || self.options.refresh);\n },\n fetch: function (imgsrc) {\n //get the image\n var self = this;\n var newImg = new Image();\n newImg.onload = function () {\n //set the large image dimensions - used to calculte ratio's\n self.largeWidth = newImg.width;\n self.largeHeight = newImg.height;\n //once image is loaded start the calls\n self.startZoom();\n self.currentImage = self.imageSrc;\n //let caller know image has been loaded\n self.options.onZoomedImageLoaded(self.$elem);\n };\n self.setImageSource(newImg, imgsrc); // this must be done AFTER setting onload\n\n return;\n },\n setImageSource: function (image, src) {\n //sets an image's source.\n image.src = src;\n },\n startZoom: function () {\n var self = this;\n //get dimensions of the non zoomed image\n self.nzWidth = self.$elem.width();\n self.nzHeight = self.$elem.height();\n\n //activated elements\n self.isWindowActive = false;\n self.isLensActive = false;\n self.isTintActive = false;\n self.overWindow = false;\n\n //CrossFade Wrapper\n if (self.options.imageCrossfade) {\n self.zoomWrap = self.$elem.wrap('
');\n self.$elem.css('position', 'absolute');\n }\n\n self.zoomLock = 1;\n self.scrollingLock = false;\n self.changeBgSize = false;\n self.currentZoomLevel = self.options.zoomLevel;\n\n //get offset of the non zoomed image\n self.nzOffset = self.$elem.offset();\n //calculate the width ratio of the large/small image\n self.widthRatio = (self.largeWidth / self.currentZoomLevel) / self.nzWidth;\n self.heightRatio = (self.largeHeight / self.currentZoomLevel) / self.nzHeight;\n\n function getWindowZoomStyle() {\n return 'overflow: hidden;' +\n 'background-position: 0px 0px;text-align:center;' +\n 'background-color: ' + String(self.options.zoomWindowBgColour) + ';' +\n 'width: ' + String(self.options.zoomWindowWidth) + 'px;' +\n 'height: ' + String(self.options.zoomWindowHeight) + 'px;' +\n 'float: left;' +\n 'background-size: ' + self.largeWidth / self.currentZoomLevel + 'px ' + self.largeHeight / self.currentZoomLevel + 'px;' +\n 'display: none;z-index:100;' +\n 'border: ' + String(self.options.borderSize) + 'px solid ' + self.options.borderColour + ';' +\n 'background-repeat: no-repeat;' +\n 'position: absolute;';\n }\n\n //if window zoom\n if (self.options.zoomType === 'window') {\n self.zoomWindowStyle = getWindowZoomStyle();\n }\n\n function getInnerZoomStyle() {\n //has a border been put on the image? Lets cater for this\n var borderWidth = self.$elem.css('border-left-width');\n\n return 'overflow: hidden;' +\n 'margin-left: ' + String(borderWidth) + ';' +\n 'margin-top: ' + String(borderWidth) + ';' +\n 'background-position: 0px 0px;' +\n 'width: ' + String(self.nzWidth) + 'px;' +\n 'height: ' + String(self.nzHeight) + 'px;' +\n 'float: left;' +\n 'display: none;' +\n 'cursor:' + (self.options.cursor) + ';' +\n 'px solid ' + self.options.borderColour + ';' +\n 'background-repeat: no-repeat;' +\n 'position: absolute;';\n }\n\n //if inner zoom\n if (self.options.zoomType === 'inner') {\n self.zoomWindowStyle = getInnerZoomStyle();\n }\n\n function getWindowLensStyle() {\n var lensHeight, lensWidth;\n // adjust images less than the window height\n\n if (self.nzHeight < self.options.zoomWindowHeight / self.heightRatio) {\n lensHeight = self.nzHeight;\n }\n else {\n lensHeight = String(self.options.zoomWindowHeight / self.heightRatio);\n }\n if (self.largeWidth < self.options.zoomWindowWidth) {\n lensWidth = self.nzWidth;\n }\n else {\n lensWidth = String(self.options.zoomWindowWidth / self.widthRatio);\n }\n\n return 'background-position: 0px 0px;width: ' + String((self.options.zoomWindowWidth) / self.widthRatio) + 'px;' +\n 'height: ' + String((self.options.zoomWindowHeight) / self.heightRatio) +\n 'px;float: right;display: none;' +\n 'overflow: hidden;' +\n 'z-index: 998;' +\n 'opacity:' + (self.options.lensOpacity) + ';filter: alpha(opacity = ' + (self.options.lensOpacity * 100) + '); zoom:1;' +\n 'width:' + lensWidth + 'px;' +\n 'height:' + lensHeight + 'px;' +\n 'background-color:' + (self.options.lensColour) + ';' +\n 'cursor:' + (self.options.cursor) + ';' +\n 'border: ' + (self.options.lensBorderSize) + 'px' +\n ' solid ' + (self.options.lensBorderColour) + ';background-repeat: no-repeat;position: absolute;';\n }\n\n //lens style for window zoom\n if (self.options.zoomType === 'window') {\n self.lensStyle = getWindowLensStyle();\n }\n\n //tint style\n self.tintStyle = 'display: block;' +\n 'position: absolute;' +\n 'background-color: ' + self.options.tintColour + ';' +\n 'filter:alpha(opacity=0);' +\n 'opacity: 0;' +\n 'width: ' + self.nzWidth + 'px;' +\n 'height: ' + self.nzHeight + 'px;';\n\n //lens style for lens zoom with optional round for modern browsers\n self.lensRound = '';\n\n if (self.options.zoomType === 'lens') {\n self.lensStyle = 'background-position: 0px 0px;' +\n 'float: left;display: none;' +\n 'border: ' + String(self.options.borderSize) + 'px solid ' + self.options.borderColour + ';' +\n 'width:' + String(self.options.lensSize) + 'px;' +\n 'height:' + String(self.options.lensSize) + 'px;' +\n 'background-repeat: no-repeat;position: absolute;';\n }\n\n //does not round in all browsers\n if (self.options.lensShape === 'round') {\n self.lensRound = 'border-top-left-radius: ' + String(self.options.lensSize / 2 + self.options.borderSize) + 'px;' +\n 'border-top-right-radius: ' + String(self.options.lensSize / 2 + self.options.borderSize) + 'px;' +\n 'border-bottom-left-radius: ' + String(self.options.lensSize / 2 + self.options.borderSize) + 'px;' +\n 'border-bottom-right-radius: ' + String(self.options.lensSize / 2 + self.options.borderSize) + 'px;';\n }\n\n //create the div's + \"\"\n //self.zoomContainer = $('
').addClass('zoomContainer').css({\"position\":\"relative\", \"height\":self.nzHeight, \"width\":self.nzWidth});\n\n self.zoomContainer =\n $('
');\n $(self.options.zoomContainerAppendTo).append(self.zoomContainer);\n\n //this will add overflow hidden and contrain the lens on lens mode\n if (self.options.containLensZoom && self.options.zoomType === 'lens') {\n self.zoomContainer.css('overflow', 'hidden');\n }\n if (self.options.zoomType !== 'inner') {\n self.zoomLens = $('
')\n .appendTo(self.zoomContainer)\n .click(function () {\n self.$elem.trigger('click');\n });\n\n if (self.options.tint) {\n self.tintContainer = $('
').addClass('tintContainer');\n self.zoomTint = $('
');\n\n self.zoomLens.wrap(self.tintContainer);\n\n self.zoomTintcss = self.zoomLens.after(self.zoomTint);\n\n //if tint enabled - set an image to show over the tint\n\n self.zoomTintImage = $(' ')\n .appendTo(self.zoomLens)\n .click(function () {\n\n self.$elem.trigger('click');\n });\n }\n }\n\n var targetZoomContainer = isNaN(self.options.zoomWindowPosition) ? 'body' : self.zoomContainer;\n //create zoom window\n self.zoomWindow = $('
')\n .appendTo(targetZoomContainer).click(function () {\n self.$elem.trigger('click');\n });\n self.zoomWindowContainer = $('
').addClass('zoomWindowContainer').css('width', self.options.zoomWindowWidth);\n self.zoomWindow.wrap(self.zoomWindowContainer);\n\n // self.captionStyle = \"text-align: left;background-color: black;'+\n // 'color: white;font-weight: bold;padding: 10px;font-family: sans-serif;font-size: 11px\";\n // self.zoomCaption = $('INSERT ALT TAG
').appendTo(self.zoomWindow.parent());\n\n if (self.options.zoomType === 'lens') {\n self.zoomLens.css('background-image', 'url(\"' + self.imageSrc + '\")');\n }\n if (self.options.zoomType === 'window') {\n self.zoomWindow.css('background-image', 'url(\"' + self.imageSrc + '\")');\n }\n if (self.options.zoomType === 'inner') {\n self.zoomWindow.css('background-image', 'url(\"' + self.imageSrc + '\")');\n }\n\n /*-------------------END THE ZOOM WINDOW AND LENS----------------------------------*/\n if (self.options.touchEnabled) {\n //touch events\n self.$elem.bind('touchmove', function (e) {\n e.preventDefault();\n var touch = e.originalEvent.touches[0] || e.originalEvent.changedTouches[0];\n self.setPosition(touch);\n });\n self.zoomContainer.bind('touchmove', function (e) {\n if (self.options.zoomType === 'inner') {\n self.showHideWindow('show');\n\n }\n e.preventDefault();\n var touch = e.originalEvent.touches[0] || e.originalEvent.changedTouches[0];\n self.setPosition(touch);\n\n });\n self.zoomContainer.bind('touchend', function (e) {\n self.showHideWindow('hide');\n if (self.options.showLens) {\n self.showHideLens('hide');\n }\n if (self.options.tint && self.options.zoomType !== 'inner') {\n self.showHideTint('hide');\n }\n });\n\n self.$elem.bind('touchend', function (e) {\n self.showHideWindow('hide');\n if (self.options.showLens) {\n self.showHideLens('hide');\n }\n if (self.options.tint && self.options.zoomType !== 'inner') {\n self.showHideTint('hide');\n }\n });\n if (self.options.showLens) {\n self.zoomLens.bind('touchmove', function (e) {\n\n e.preventDefault();\n var touch = e.originalEvent.touches[0] || e.originalEvent.changedTouches[0];\n self.setPosition(touch);\n });\n\n self.zoomLens.bind('touchend', function (e) {\n self.showHideWindow('hide');\n if (self.options.showLens) {\n self.showHideLens('hide');\n }\n if (self.options.tint && self.options.zoomType !== 'inner') {\n self.showHideTint('hide');\n }\n });\n }\n }\n //Needed to work in IE\n self.$elem.bind('mousemove', function (e) {\n if (self.overWindow === false) {\n self.setElements('show');\n }\n //make sure on orientation change the setposition is not fired\n if (self.lastX !== e.clientX || self.lastY !== e.clientY) {\n self.setPosition(e);\n self.currentLoc = e;\n }\n self.lastX = e.clientX;\n self.lastY = e.clientY;\n\n });\n\n self.zoomContainer.bind('click', self.options.onImageClick);\n\n self.zoomContainer.bind('mousemove', function (e) {\n if (self.overWindow === false) {\n self.setElements('show');\n }\n mouseMoveZoomHandler(e);\n });\n\n function mouseMoveZoomHandler(e) {\n //self.overWindow = true;\n //make sure on orientation change the setposition is not fired\n if (self.lastX !== e.clientX || self.lastY !== e.clientY) {\n self.setPosition(e);\n self.currentLoc = e;\n }\n self.lastX = e.clientX;\n self.lastY = e.clientY;\n }\n\n var elementToTrack = null;\n if (self.options.zoomType !== 'inner') {\n elementToTrack = self.zoomLens;\n }\n if (self.options.tint && self.options.zoomType !== 'inner') {\n elementToTrack = self.zoomTint;\n }\n if (self.options.zoomType === 'inner') {\n elementToTrack = self.zoomWindow;\n }\n\n //register the mouse tracking\n if (elementToTrack) {\n elementToTrack.bind('mousemove', mouseMoveZoomHandler);\n }\n\n // lensFadeOut: 500, zoomTintFadeIn\n self.zoomContainer.add(self.$elem).mouseenter(function () {\n if (self.overWindow === false) {\n self.setElements('show');\n }\n }).mouseleave(function () {\n if (!self.scrollLock) {\n self.setElements('hide');\n self.options.onDestroy(self.$elem);\n }\n });\n //end ove image\n\n if (self.options.zoomType !== 'inner') {\n self.zoomWindow.mouseenter(function () {\n self.overWindow = true;\n self.setElements('hide');\n }).mouseleave(function () {\n self.overWindow = false;\n });\n }\n //end ove image\n\n // var delta = parseInt(e.originalEvent.wheelDelta || -e.originalEvent.detail);\n\n // $(this).empty();\n // return false;\n\n //fix for initial zoom setting\n //if (self.options.zoomLevel !== 1) {\n // \tself.changeZoomLevel(self.currentZoomLevel);\n //}\n //set the min zoomlevel\n if (self.options.minZoomLevel) {\n self.minZoomLevel = self.options.minZoomLevel;\n }\n else {\n self.minZoomLevel = self.options.scrollZoomIncrement * 2;\n }\n\n if (self.options.scrollZoom) {\n self.zoomContainer.add(self.$elem).bind('wheel DOMMouseScroll MozMousePixelScroll', function (e) {\n // in IE there is issue with firing of mouseleave - So check whether still scrolling\n // and on mouseleave check if scrolllock\n self.scrollLock = true;\n clearTimeout($.data(this, 'timer'));\n $.data(this, 'timer', setTimeout(function () {\n self.scrollLock = false;\n //do something\n }, 250));\n\n var theEvent = e.originalEvent.deltaY || e.originalEvent.detail * -1;\n\n //this.scrollTop += ( delta < 0 ? 1 : -1 ) * 30;\n // e.preventDefault();\n\n e.stopImmediatePropagation();\n e.stopPropagation();\n e.preventDefault();\n\n if (theEvent / 120 > 0) {\n //scrolling up\n if (self.currentZoomLevel >= self.minZoomLevel) {\n self.changeZoomLevel(self.currentZoomLevel - self.options.scrollZoomIncrement);\n }\n }\n else {\n //scrolling down\n\n //Check if it has to maintain original zoom window aspect ratio or not\n if ((!self.fullheight && !self.fullwidth) || !self.options.mantainZoomAspectRatio) {\n if (self.options.maxZoomLevel) {\n if (self.currentZoomLevel <= self.options.maxZoomLevel) {\n self.changeZoomLevel(parseFloat(self.currentZoomLevel) + self.options.scrollZoomIncrement);\n }\n }\n else {\n //andy\n self.changeZoomLevel(parseFloat(self.currentZoomLevel) + self.options.scrollZoomIncrement);\n }\n }\n }\n return false;\n });\n }\n },\n setElements: function (type) {\n var self = this;\n if (!self.options.zoomEnabled) {\n return false;\n }\n if (type === 'show') {\n if (self.isWindowSet) {\n if (self.options.zoomType === 'inner') {\n self.showHideWindow('show');\n }\n if (self.options.zoomType === 'window') {\n self.showHideWindow('show');\n }\n if (self.options.showLens) {\n self.showHideLens('show');\n }\n if (self.options.tint && self.options.zoomType !== 'inner') {\n self.showHideTint('show');\n }\n }\n }\n\n if (type === 'hide') {\n if (self.options.zoomType === 'window') {\n self.showHideWindow('hide');\n }\n if (!self.options.tint) {\n self.showHideWindow('hide');\n }\n if (self.options.showLens) {\n self.showHideLens('hide');\n }\n if (self.options.tint) {\n self.showHideTint('hide');\n }\n }\n },\n setPosition: function (e) {\n\n var self = this;\n\n if (!self.options.zoomEnabled) {\n return false;\n }\n\n //recaclc offset each time in case the image moves\n //this can be caused by other on page elements\n self.nzHeight = self.$elem.height();\n self.nzWidth = self.$elem.width();\n self.nzOffset = self.$elem.offset();\n\n if (self.options.tint && self.options.zoomType !== 'inner') {\n self.zoomTint.css({\n top: 0,\n left: 0\n });\n }\n //set responsive\n //will checking if the image needs changing before running this code work faster?\n if (self.options.responsive && !self.options.scrollZoom) {\n if (self.options.showLens) {\n var lensHeight, lensWidth;\n if (self.nzHeight < self.options.zoomWindowWidth / self.widthRatio) {\n lensHeight = self.nzHeight;\n }\n else {\n lensHeight = String((self.options.zoomWindowHeight / self.heightRatio));\n }\n if (self.largeWidth < self.options.zoomWindowWidth) {\n lensWidth = self.nzWidth;\n }\n else {\n lensWidth = (self.options.zoomWindowWidth / self.widthRatio);\n }\n self.widthRatio = self.largeWidth / self.nzWidth;\n self.heightRatio = self.largeHeight / self.nzHeight;\n if (self.options.zoomType !== 'lens') {\n //possibly dont need to keep recalcalculating\n //if the lens is heigher than the image, then set lens size to image size\n if (self.nzHeight < self.options.zoomWindowWidth / self.widthRatio) {\n lensHeight = self.nzHeight;\n\n }\n else {\n lensHeight = String((self.options.zoomWindowHeight / self.heightRatio));\n }\n\n if (self.nzWidth < self.options.zoomWindowHeight / self.heightRatio) {\n lensWidth = self.nzWidth;\n }\n else {\n lensWidth = String((self.options.zoomWindowWidth / self.widthRatio));\n }\n\n self.zoomLens.css({\n 'width': lensWidth,\n 'height': lensHeight\n });\n\n if (self.options.tint) {\n self.zoomTintImage.css({\n 'width': self.nzWidth,\n 'height': self.nzHeight\n });\n }\n\n }\n if (self.options.zoomType === 'lens') {\n self.zoomLens.css({\n width: String(self.options.lensSize) + 'px',\n height: String(self.options.lensSize) + 'px'\n });\n }\n //end responsive image change\n }\n }\n\n //container fix\n self.zoomContainer.css({\n top: self.nzOffset.top,\n left: self.nzOffset.left\n });\n self.mouseLeft = parseInt(e.pageX - self.nzOffset.left);\n self.mouseTop = parseInt(e.pageY - self.nzOffset.top);\n //calculate the Location of the Lens\n\n //calculate the bound regions - but only if zoom window\n if (self.options.zoomType === 'window') {\n var zoomLensHeight = self.zoomLens.height() / 2;\n var zoomLensWidth = self.zoomLens.width() / 2;\n self.Etoppos = (self.mouseTop < 0 + zoomLensHeight);\n self.Eboppos = (self.mouseTop > self.nzHeight - zoomLensHeight - (self.options.lensBorderSize * 2));\n self.Eloppos = (self.mouseLeft < 0 + zoomLensWidth);\n self.Eroppos = (self.mouseLeft > (self.nzWidth - zoomLensWidth - (self.options.lensBorderSize * 2)));\n }\n //calculate the bound regions - but only for inner zoom\n if (self.options.zoomType === 'inner') {\n self.Etoppos = (self.mouseTop < ((self.nzHeight / 2) / self.heightRatio));\n self.Eboppos = (self.mouseTop > (self.nzHeight - ((self.nzHeight / 2) / self.heightRatio)));\n self.Eloppos = (self.mouseLeft < 0 + (((self.nzWidth / 2) / self.widthRatio)));\n self.Eroppos = (self.mouseLeft > (self.nzWidth - (self.nzWidth / 2) / self.widthRatio - (self.options.lensBorderSize * 2)));\n }\n\n // if the mouse position of the slider is one of the outerbounds, then hide window and lens\n if (self.mouseLeft < 0 || self.mouseTop < 0 || self.mouseLeft > self.nzWidth || self.mouseTop > self.nzHeight) {\n self.setElements('hide');\n return;\n }\n //else continue with operations\n else {\n //lens options\n if (self.options.showLens) {\n //\t\tself.showHideLens('show');\n //set background position of lens\n self.lensLeftPos = String(Math.floor(self.mouseLeft - self.zoomLens.width() / 2));\n self.lensTopPos = String(Math.floor(self.mouseTop - self.zoomLens.height() / 2));\n }\n //adjust the background position if the mouse is in one of the outer regions\n\n //Top region\n if (self.Etoppos) {\n self.lensTopPos = 0;\n }\n //Left Region\n if (self.Eloppos) {\n self.windowLeftPos = 0;\n self.lensLeftPos = 0;\n self.tintpos = 0;\n }\n //Set bottom and right region for window mode\n if (self.options.zoomType === 'window') {\n if (self.Eboppos) {\n self.lensTopPos = Math.max((self.nzHeight) - self.zoomLens.height() - (self.options.lensBorderSize * 2), 0);\n }\n if (self.Eroppos) {\n self.lensLeftPos = (self.nzWidth - (self.zoomLens.width()) - (self.options.lensBorderSize * 2));\n }\n }\n //Set bottom and right region for inner mode\n if (self.options.zoomType === 'inner') {\n if (self.Eboppos) {\n self.lensTopPos = Math.max(((self.nzHeight) - (self.options.lensBorderSize * 2)), 0);\n }\n if (self.Eroppos) {\n self.lensLeftPos = (self.nzWidth - (self.nzWidth) - (self.options.lensBorderSize * 2));\n }\n }\n //if lens zoom\n if (self.options.zoomType === 'lens') {\n\n self.windowLeftPos = String(((e.pageX - self.nzOffset.left) * self.widthRatio - self.zoomLens.width() / 2) * (-1));\n self.windowTopPos = String(((e.pageY - self.nzOffset.top) * self.heightRatio - self.zoomLens.height() / 2) * (-1));\n self.zoomLens.css('background-position', self.windowLeftPos + 'px ' + self.windowTopPos + 'px');\n\n if (self.changeBgSize) {\n if (self.nzHeight > self.nzWidth) {\n if (self.options.zoomType === 'lens') {\n self.zoomLens.css('background-size',\n self.largeWidth / self.newvalueheight + 'px ' +\n self.largeHeight / self.newvalueheight + 'px');\n }\n\n self.zoomWindow.css('background-size',\n self.largeWidth / self.newvalueheight + 'px ' +\n self.largeHeight / self.newvalueheight + 'px');\n }\n else {\n if (self.options.zoomType === 'lens') {\n self.zoomLens.css('background-size',\n self.largeWidth / self.newvaluewidth + 'px ' +\n self.largeHeight / self.newvaluewidth + 'px');\n }\n self.zoomWindow.css('background-size',\n self.largeWidth / self.newvaluewidth + 'px ' +\n self.largeHeight / self.newvaluewidth + 'px');\n }\n self.changeBgSize = false;\n }\n\n self.setWindowPosition(e);\n }\n //if tint zoom\n if (self.options.tint && self.options.zoomType !== 'inner') {\n self.setTintPosition(e);\n }\n //set the css background position\n if (self.options.zoomType === 'window') {\n self.setWindowPosition(e);\n }\n if (self.options.zoomType === 'inner') {\n self.setWindowPosition(e);\n }\n if (self.options.showLens) {\n if (self.fullwidth && self.options.zoomType !== 'lens') {\n self.lensLeftPos = 0;\n }\n self.zoomLens.css({\n left: self.lensLeftPos + 'px',\n top: self.lensTopPos + 'px'\n });\n }\n\n } //end else\n },\n showHideZoomContainer: function (change) {\n var self = this;\n if (change === 'show') {\n if (self.zoomContainer) {\n self.zoomContainer.show();\n }\n }\n if (change === 'hide') {\n if (self.zoomContainer) {\n self.zoomContainer.hide();\n }\n }\n },\n showHideWindow: function (change) {\n var self = this;\n if (change === 'show') {\n if (!self.isWindowActive && self.zoomWindow) {\n self.options.onShow(self);\n if (self.options.zoomWindowFadeIn) {\n self.zoomWindow.stop(true, true, false).fadeIn(self.options.zoomWindowFadeIn);\n }\n else {\n self.zoomWindow.show();\n }\n self.isWindowActive = true;\n }\n }\n if (change === 'hide') {\n if (self.isWindowActive) {\n if (self.options.zoomWindowFadeOut) {\n self.zoomWindow.stop(true, true).fadeOut(self.options.zoomWindowFadeOut, function () {\n if (self.loop) {\n //stop moving the zoom window when zoom window is faded out\n clearInterval(self.loop);\n self.loop = false;\n }\n });\n }\n else {\n self.zoomWindow.hide();\n }\n self.isWindowActive = false;\n }\n }\n },\n showHideLens: function (change) {\n var self = this;\n if (change === 'show') {\n if (!self.isLensActive) {\n if (self.options.lensFadeIn && self.zoomLens) {\n self.zoomLens.stop(true, true, false).fadeIn(self.options.lensFadeIn);\n }\n else {\n self.zoomLens.show();\n }\n self.isLensActive = true;\n }\n }\n if (change === 'hide') {\n if (self.isLensActive) {\n if (self.options.lensFadeOut) {\n self.zoomLens.stop(true, true).fadeOut(self.options.lensFadeOut);\n }\n else {\n self.zoomLens.hide();\n }\n self.isLensActive = false;\n }\n }\n },\n showHideTint: function (change) {\n var self = this;\n if (change === 'show') {\n if (!self.isTintActive && self.zoomTint) {\n\n if (self.options.zoomTintFadeIn) {\n self.zoomTint.css('opacity', self.options.tintOpacity).animate().stop(true, true).fadeIn('slow');\n }\n else {\n self.zoomTint.css('opacity', self.options.tintOpacity).animate();\n self.zoomTint.show();\n }\n self.isTintActive = true;\n }\n }\n if (change === 'hide') {\n if (self.isTintActive) {\n\n if (self.options.zoomTintFadeOut) {\n self.zoomTint.stop(true, true).fadeOut(self.options.zoomTintFadeOut);\n }\n else {\n self.zoomTint.hide();\n }\n self.isTintActive = false;\n }\n }\n },\n\n setLensPosition: function (e) {\n },\n\n setWindowPosition: function (e) {\n //return obj.slice( 0, count );\n var self = this;\n\n if (!isNaN(self.options.zoomWindowPosition)) {\n\n switch (self.options.zoomWindowPosition) {\n case 1: //done\n self.windowOffsetTop = (self.options.zoomWindowOffsetY);//DONE - 1\n self.windowOffsetLeft = (+self.nzWidth); //DONE 1, 2, 3, 4, 16\n break;\n case 2:\n if (self.options.zoomWindowHeight > self.nzHeight) { //positive margin\n\n self.windowOffsetTop = ((self.options.zoomWindowHeight / 2) - (self.nzHeight / 2)) * (-1);\n self.windowOffsetLeft = (self.nzWidth); //DONE 1, 2, 3, 4, 16\n }\n else { //negative margin\n $.noop();\n }\n break;\n case 3: //done\n self.windowOffsetTop = (self.nzHeight - self.zoomWindow.height() - (self.options.borderSize * 2)); //DONE 3,9\n self.windowOffsetLeft = (self.nzWidth); //DONE 1, 2, 3, 4, 16\n break;\n case 4: //done\n self.windowOffsetTop = (self.nzHeight); //DONE - 4,5,6,7,8\n self.windowOffsetLeft = (self.nzWidth); //DONE 1, 2, 3, 4, 16\n break;\n case 5: //done\n self.windowOffsetTop = (self.nzHeight); //DONE - 4,5,6,7,8\n self.windowOffsetLeft = (self.nzWidth - self.zoomWindow.width() - (self.options.borderSize * 2)); //DONE - 5,15\n break;\n case 6:\n if (self.options.zoomWindowHeight > self.nzHeight) { //positive margin\n self.windowOffsetTop = (self.nzHeight); //DONE - 4,5,6,7,8\n\n self.windowOffsetLeft = ((self.options.zoomWindowWidth / 2) - (self.nzWidth / 2) + (self.options.borderSize * 2)) * (-1);\n }\n else { //negative margin\n $.noop();\n }\n\n break;\n case 7: //done\n self.windowOffsetTop = (self.nzHeight); //DONE - 4,5,6,7,8\n self.windowOffsetLeft = 0; //DONE 7, 13\n break;\n case 8: //done\n self.windowOffsetTop = (self.nzHeight); //DONE - 4,5,6,7,8\n self.windowOffsetLeft = (self.zoomWindow.width() + (self.options.borderSize * 2)) * (-1); //DONE 8,9,10,11,12\n break;\n case 9: //done\n self.windowOffsetTop = (self.nzHeight - self.zoomWindow.height() - (self.options.borderSize * 2)); //DONE 3,9\n self.windowOffsetLeft = (self.zoomWindow.width() + (self.options.borderSize * 2)) * (-1); //DONE 8,9,10,11,12\n break;\n case 10:\n if (self.options.zoomWindowHeight > self.nzHeight) { //positive margin\n\n self.windowOffsetTop = ((self.options.zoomWindowHeight / 2) - (self.nzHeight / 2)) * (-1);\n self.windowOffsetLeft = (self.zoomWindow.width() + (self.options.borderSize * 2)) * (-1); //DONE 8,9,10,11,12\n }\n else { //negative margin\n $.noop();\n }\n break;\n case 11:\n self.windowOffsetTop = (self.options.zoomWindowOffsetY);\n self.windowOffsetLeft = (self.zoomWindow.width() + (self.options.borderSize * 2)) * (-1); //DONE 8,9,10,11,12\n break;\n case 12: //done\n self.windowOffsetTop = (self.zoomWindow.height() + (self.options.borderSize * 2)) * (-1); //DONE 12,13,14,15,16\n self.windowOffsetLeft = (self.zoomWindow.width() + (self.options.borderSize * 2)) * (-1); //DONE 8,9,10,11,12\n break;\n case 13: //done\n self.windowOffsetTop = (self.zoomWindow.height() + (self.options.borderSize * 2)) * (-1); //DONE 12,13,14,15,16\n self.windowOffsetLeft = (0); //DONE 7, 13\n break;\n case 14:\n if (self.options.zoomWindowHeight > self.nzHeight) { //positive margin\n self.windowOffsetTop = (self.zoomWindow.height() + (self.options.borderSize * 2)) * (-1); //DONE 12,13,14,15,16\n\n self.windowOffsetLeft = ((self.options.zoomWindowWidth / 2) - (self.nzWidth / 2) + (self.options.borderSize * 2)) * (-1);\n }\n else { //negative margin\n $.noop();\n }\n break;\n case 15://done\n self.windowOffsetTop = (self.zoomWindow.height() + (self.options.borderSize * 2)) * (-1); //DONE 12,13,14,15,16\n self.windowOffsetLeft = (self.nzWidth - self.zoomWindow.width() - (self.options.borderSize * 2)); //DONE - 5,15\n break;\n case 16: //done\n self.windowOffsetTop = (self.zoomWindow.height() + (self.options.borderSize * 2)) * (-1); //DONE 12,13,14,15,16\n self.windowOffsetLeft = (self.nzWidth); //DONE 1, 2, 3, 4, 16\n break;\n default: //done\n self.windowOffsetTop = (self.options.zoomWindowOffsetY);//DONE - 1\n self.windowOffsetLeft = (self.nzWidth); //DONE 1, 2, 3, 4, 16\n }\n } //end isNAN\n else {\n //WE CAN POSITION IN A CLASS - ASSUME THAT ANY STRING PASSED IS\n self.externalContainer = $('#' + self.options.zoomWindowPosition);\n self.externalContainerWidth = self.externalContainer.width();\n self.externalContainerHeight = self.externalContainer.height();\n self.externalContainerOffset = self.externalContainer.offset();\n\n self.windowOffsetTop = self.externalContainerOffset.top;//DONE - 1\n self.windowOffsetLeft = self.externalContainerOffset.left; //DONE 1, 2, 3, 4, 16\n\n }\n self.isWindowSet = true;\n self.windowOffsetTop = self.windowOffsetTop + self.options.zoomWindowOffsetY;\n self.windowOffsetLeft = self.windowOffsetLeft + self.options.zoomWindowOffsetX;\n\n self.zoomWindow.css({\n top: self.windowOffsetTop,\n left: self.windowOffsetLeft\n });\n\n if (self.options.zoomType === 'inner') {\n self.zoomWindow.css({\n top: 0,\n left: 0\n });\n\n }\n\n self.windowLeftPos = String(((e.pageX - self.nzOffset.left) * self.widthRatio - self.zoomWindow.width() / 2) * (-1));\n self.windowTopPos = String(((e.pageY - self.nzOffset.top) * self.heightRatio - self.zoomWindow.height() / 2) * (-1));\n if (self.Etoppos) {\n self.windowTopPos = 0;\n }\n if (self.Eloppos) {\n self.windowLeftPos = 0;\n }\n if (self.Eboppos) {\n self.windowTopPos = (self.largeHeight / self.currentZoomLevel - self.zoomWindow.height()) * (-1);\n }\n if (self.Eroppos) {\n self.windowLeftPos = ((self.largeWidth / self.currentZoomLevel - self.zoomWindow.width()) * (-1));\n }\n\n //stops micro movements\n if (self.fullheight) {\n self.windowTopPos = 0;\n }\n if (self.fullwidth) {\n self.windowLeftPos = 0;\n }\n\n //set the css background position\n if (self.options.zoomType === 'window' || self.options.zoomType === 'inner') {\n\n if (self.zoomLock === 1) {\n //overrides for images not zoomable\n if (self.widthRatio <= 1) {\n self.windowLeftPos = 0;\n }\n if (self.heightRatio <= 1) {\n self.windowTopPos = 0;\n }\n }\n // adjust images less than the window height\n\n if (self.options.zoomType === 'window') {\n if (self.largeHeight < self.options.zoomWindowHeight) {\n self.windowTopPos = 0;\n }\n if (self.largeWidth < self.options.zoomWindowWidth) {\n self.windowLeftPos = 0;\n }\n }\n //set the zoomwindow background position\n if (self.options.easing) {\n\n // if(self.changeZoom){\n // clearInterval(self.loop);\n // self.changeZoom = false;\n // self.loop = false;\n\n // }\n //set the pos to 0 if not set\n if (!self.xp) {\n self.xp = 0;\n }\n if (!self.yp) {\n self.yp = 0;\n }\n //if loop not already started, then run it\n if (!self.loop) {\n self.loop = setInterval(function () {\n //using zeno's paradox\n\n self.xp += (self.windowLeftPos - self.xp) / self.options.easingAmount;\n self.yp += (self.windowTopPos - self.yp) / self.options.easingAmount;\n if (self.scrollingLock) {\n\n clearInterval(self.loop);\n self.xp = self.windowLeftPos;\n self.yp = self.windowTopPos;\n\n self.xp = ((e.pageX - self.nzOffset.left) * self.widthRatio - self.zoomWindow.width() / 2) * (-1);\n self.yp = (((e.pageY - self.nzOffset.top) * self.heightRatio - self.zoomWindow.height() / 2) * (-1));\n\n if (self.changeBgSize) {\n if (self.nzHeight > self.nzWidth) {\n if (self.options.zoomType === 'lens') {\n self.zoomLens.css('background-size',\n self.largeWidth / self.newvalueheight + 'px ' +\n self.largeHeight / self.newvalueheight + 'px');\n }\n self.zoomWindow.css('background-size',\n self.largeWidth / self.newvalueheight + 'px ' +\n self.largeHeight / self.newvalueheight + 'px');\n }\n else {\n if (self.options.zoomType !== 'lens') {\n self.zoomLens.css('background-size',\n self.largeWidth / self.newvaluewidth + 'px ' +\n self.largeHeight / self.newvalueheight + 'px');\n }\n self.zoomWindow.css('background-size',\n self.largeWidth / self.newvaluewidth + 'px ' +\n self.largeHeight / self.newvaluewidth + 'px');\n }\n\n /*\n if(!self.bgxp){self.bgxp = self.largeWidth/self.newvalue;}\n if(!self.bgyp){self.bgyp = self.largeHeight/self.newvalue ;}\n if (!self.bgloop){\n self.bgloop = setInterval(function(){\n\n self.bgxp += (self.largeWidth/self.newvalue - self.bgxp) / self.options.easingAmount;\n self.bgyp += (self.largeHeight/self.newvalue - self.bgyp) / self.options.easingAmount;\n\n self.zoomWindow.css('background-size', self.bgxp + 'px ' + self.bgyp + 'px' );\n\n\n }, 16);\n\n }\n */\n self.changeBgSize = false;\n }\n\n self.zoomWindow.css('background-position', self.windowLeftPos + 'px ' + self.windowTopPos + 'px');\n self.scrollingLock = false;\n self.loop = false;\n\n }\n else if (Math.round(Math.abs(self.xp - self.windowLeftPos) + Math.abs(self.yp - self.windowTopPos)) < 1) {\n //stops micro movements\n clearInterval(self.loop);\n self.zoomWindow.css('background-position', self.windowLeftPos + 'px ' + self.windowTopPos + 'px');\n self.loop = false;\n }\n else {\n if (self.changeBgSize) {\n if (self.nzHeight > self.nzWidth) {\n if (self.options.zoomType === 'lens') {\n self.zoomLens.css('background-size',\n self.largeWidth / self.newvalueheight + 'px ' +\n self.largeHeight / self.newvalueheight + 'px');\n }\n self.zoomWindow.css('background-size',\n self.largeWidth / self.newvalueheight + 'px ' +\n self.largeHeight / self.newvalueheight + 'px');\n }\n else {\n if (self.options.zoomType !== 'lens') {\n self.zoomLens.css('background-size',\n self.largeWidth / self.newvaluewidth + 'px ' +\n self.largeHeight / self.newvaluewidth + 'px');\n }\n self.zoomWindow.css('background-size',\n self.largeWidth / self.newvaluewidth + 'px ' +\n self.largeHeight / self.newvaluewidth + 'px');\n }\n self.changeBgSize = false;\n }\n\n self.zoomWindow.css('background-position', self.xp + 'px ' + self.yp + 'px');\n }\n }, 16);\n }\n }\n else {\n if (self.changeBgSize) {\n if (self.nzHeight > self.nzWidth) {\n if (self.options.zoomType === 'lens') {\n self.zoomLens.css('background-size',\n self.largeWidth / self.newvalueheight + 'px ' +\n self.largeHeight / self.newvalueheight + 'px');\n }\n\n self.zoomWindow.css('background-size',\n self.largeWidth / self.newvalueheight + 'px ' +\n self.largeHeight / self.newvalueheight + 'px');\n }\n else {\n if (self.options.zoomType === 'lens') {\n self.zoomLens.css('background-size',\n self.largeWidth / self.newvaluewidth + 'px ' +\n self.largeHeight / self.newvaluewidth + 'px');\n }\n if ((self.largeHeight / self.newvaluewidth) < self.options.zoomWindowHeight) {\n\n self.zoomWindow.css('background-size',\n self.largeWidth / self.newvaluewidth + 'px ' +\n self.largeHeight / self.newvaluewidth + 'px');\n }\n else {\n\n self.zoomWindow.css('background-size',\n self.largeWidth / self.newvalueheight + 'px ' +\n self.largeHeight / self.newvalueheight + 'px');\n }\n\n }\n self.changeBgSize = false;\n }\n\n self.zoomWindow.css('background-position',\n self.windowLeftPos + 'px ' +\n self.windowTopPos + 'px');\n }\n }\n },\n\n setTintPosition: function (e) {\n var self = this;\n var zoomLensWidth = self.zoomLens.width();\n var zoomLensHeight = self.zoomLens.height();\n self.nzOffset = self.$elem.offset();\n self.tintpos = String(((e.pageX - self.nzOffset.left) - (zoomLensWidth / 2)) * (-1));\n self.tintposy = String(((e.pageY - self.nzOffset.top) - zoomLensHeight / 2) * (-1));\n if (self.Etoppos) {\n self.tintposy = 0;\n }\n if (self.Eloppos) {\n self.tintpos = 0;\n }\n if (self.Eboppos) {\n self.tintposy = (self.nzHeight - zoomLensHeight - (self.options.lensBorderSize * 2)) * (-1);\n }\n if (self.Eroppos) {\n self.tintpos = ((self.nzWidth - zoomLensWidth - (self.options.lensBorderSize * 2)) * (-1));\n }\n if (self.options.tint) {\n //stops micro movements\n if (self.fullheight) {\n self.tintposy = 0;\n\n }\n if (self.fullwidth) {\n self.tintpos = 0;\n\n }\n self.zoomTintImage.css({\n 'left': self.tintpos + 'px',\n 'top': self.tintposy + 'px'\n });\n }\n },\n\n swaptheimage: function (smallimage, largeimage) {\n var self = this;\n var newImg = new Image();\n\n if (self.options.loadingIcon) {\n self.spinner = $('
');\n self.$elem.after(self.spinner);\n }\n\n self.options.onImageSwap(self.$elem);\n\n newImg.onload = function () {\n self.largeWidth = newImg.width;\n self.largeHeight = newImg.height;\n self.zoomImage = largeimage;\n self.zoomWindow.css('background-size', self.largeWidth + 'px ' + self.largeHeight + 'px');\n\n self.swapAction(smallimage, largeimage);\n return;\n };\n self.setImageSource(newImg, largeimage); // this must be done AFTER setting onload\n },\n\n swapAction: function (smallimage, largeimage) {\n var self = this;\n var elemWidth = self.$elem.width();\n var elemHeight = self.$elem.height();\n var newImg2 = new Image();\n newImg2.onload = function () {\n //re-calculate values\n self.nzHeight = newImg2.height;\n self.nzWidth = newImg2.width;\n self.options.onImageSwapComplete(self.$elem);\n\n self.doneCallback();\n return;\n };\n self.setImageSource(newImg2, smallimage);\n\n //reset the zoomlevel to that initially set in options\n self.currentZoomLevel = self.options.zoomLevel;\n self.options.maxZoomLevel = false;\n\n //swaps the main image\n //self.$elem.attr('src',smallimage);\n //swaps the zoom image\n if (self.options.zoomType === 'lens') {\n self.zoomLens.css('background-image', 'url(\"' + largeimage + '\")');\n }\n if (self.options.zoomType === 'window') {\n self.zoomWindow.css('background-image', 'url(\"' + largeimage + '\")');\n }\n if (self.options.zoomType === 'inner') {\n self.zoomWindow.css('background-image', 'url(\"' + largeimage + '\")');\n }\n\n self.currentImage = largeimage;\n\n if (self.options.imageCrossfade) {\n var oldImg = self.$elem;\n var newImg = oldImg.clone();\n self.$elem.attr('src', smallimage);\n self.$elem.after(newImg);\n newImg.stop(true).fadeOut(self.options.imageCrossfade, function () {\n $(this).remove();\n });\n\n // if(self.options.zoomType === 'inner'){\n //remove any attributes on the cloned image so we can resize later\n self.$elem.width('auto').removeAttr('width');\n self.$elem.height('auto').removeAttr('height');\n // }\n\n oldImg.fadeIn(self.options.imageCrossfade);\n\n if (self.options.tint && self.options.zoomType !== 'inner') {\n\n var oldImgTint = self.zoomTintImage;\n var newImgTint = oldImgTint.clone();\n self.zoomTintImage.attr('src', largeimage);\n self.zoomTintImage.after(newImgTint);\n newImgTint.stop(true).fadeOut(self.options.imageCrossfade, function () {\n $(this).remove();\n });\n\n oldImgTint.fadeIn(self.options.imageCrossfade);\n\n //self.zoomTintImage.attr('width',elem.data('image'));\n\n //resize the tint window\n self.zoomTint.css({\n height: elemHeight,\n width: elemWidth\n });\n }\n\n self.zoomContainer.css({\n 'height': elemHeight,\n 'width': elemWidth\n });\n\n if (self.options.zoomType === 'inner') {\n if (!self.options.constrainType) {\n self.zoomWrap.parent().css({\n 'height': elemHeight,\n 'width': elemWidth\n });\n\n self.zoomWindow.css({\n 'height': elemHeight,\n 'width': elemWidth\n });\n }\n }\n\n if (self.options.imageCrossfade) {\n self.zoomWrap.css({\n 'height': elemHeight,\n 'width': elemWidth\n });\n }\n }\n else {\n self.$elem.attr('src', smallimage);\n if (self.options.tint) {\n self.zoomTintImage.attr('src', largeimage);\n //self.zoomTintImage.attr('width',elem.data('image'));\n self.zoomTintImage.attr('height', elemHeight);\n //self.zoomTintImage.attr('src') = elem.data('image');\n self.zoomTintImage.css('height', elemHeight);\n self.zoomTint.css('height', elemHeight);\n\n }\n self.zoomContainer.css({\n 'height': elemHeight,\n 'width': elemWidth\n });\n\n if (self.options.imageCrossfade) {\n self.zoomWrap.css({\n 'height': elemHeight,\n 'width': elemWidth\n });\n }\n }\n if (self.options.constrainType) {\n\n //This will contrain the image proportions\n if (self.options.constrainType === 'height') {\n\n var autoWDimension = {\n 'height': self.options.constrainSize,\n 'width': 'auto'\n };\n self.zoomContainer.css(autoWDimension);\n\n if (self.options.imageCrossfade) {\n self.zoomWrap.css(autoWDimension);\n self.constwidth = self.zoomWrap.width();\n }\n else {\n self.$elem.css(autoWDimension);\n self.constwidth = elemWidth;\n }\n\n var constWDim = {\n 'height': self.options.constrainSize,\n 'width': self.constwidth\n };\n if (self.options.zoomType === 'inner') {\n\n self.zoomWrap.parent().css(constWDim);\n self.zoomWindow.css(constWDim);\n }\n if (self.options.tint) {\n self.tintContainer.css(constWDim);\n self.zoomTint.css(constWDim);\n self.zoomTintImage.css(constWDim);\n }\n\n }\n if (self.options.constrainType === 'width') {\n var autoHDimension = {\n 'height': 'auto',\n 'width': self.options.constrainSize\n };\n self.zoomContainer.css(autoHDimension);\n\n if (self.options.imageCrossfade) {\n self.zoomWrap.css(autoHDimension);\n self.constheight = self.zoomWrap.height();\n }\n else {\n self.$elem.css(autoHDimension);\n self.constheight = elemHeight;\n }\n\n var constHDim = {\n 'height': self.constheight,\n 'width': self.options.constrainSize\n };\n if (self.options.zoomType === 'inner') {\n self.zoomWrap.parent().css(constHDim);\n self.zoomWindow.css(constHDim);\n }\n if (self.options.tint) {\n self.tintContainer.css(constHDim);\n self.zoomTint.css(constHDim);\n self.zoomTintImage.css(constHDim);\n }\n }\n }\n },\n\n doneCallback: function () {\n var self = this;\n if (self.options.loadingIcon) {\n self.spinner.hide();\n }\n\n self.nzOffset = self.$elem.offset();\n self.nzWidth = self.$elem.width();\n self.nzHeight = self.$elem.height();\n\n // reset the zoomlevel back to default\n self.currentZoomLevel = self.options.zoomLevel;\n\n //ratio of the large to small image\n self.widthRatio = self.largeWidth / self.nzWidth;\n self.heightRatio = self.largeHeight / self.nzHeight;\n\n //NEED TO ADD THE LENS SIZE FOR ROUND\n // adjust images less than the window height\n if (self.options.zoomType === 'window') {\n var lensHeight, lensWidth;\n\n if (self.nzHeight < self.options.zoomWindowHeight / self.heightRatio) {\n lensHeight = self.nzHeight;\n\n }\n else {\n lensHeight = String((self.options.zoomWindowHeight / self.heightRatio));\n }\n\n if (self.nzWidth < self.options.zoomWindowWidth) {\n lensWidth = self.nzWidth;\n }\n else {\n lensWidth = (self.options.zoomWindowWidth / self.widthRatio);\n }\n\n if (self.zoomLens) {\n self.zoomLens.css({\n 'width': lensWidth,\n 'height': lensHeight\n });\n }\n }\n },\n\n getCurrentImage: function () {\n var self = this;\n return self.zoomImage;\n },\n\n getGalleryList: function () {\n var self = this;\n //loop through the gallery options and set them in list for fancybox\n self.gallerylist = [];\n if (self.options.gallery) {\n $('#' + self.options.gallery + ' a').each(function () {\n\n var imgSrc = '';\n if ($(this).data('zoom-image')) {\n imgSrc = $(this).data('zoom-image');\n }\n else if ($(this).data('image')) {\n imgSrc = $(this).data('image');\n }\n //put the current image at the start\n if (imgSrc === self.zoomImage) {\n self.gallerylist.unshift({\n href: '' + imgSrc + '',\n title: $(this).find('img').attr('title')\n });\n }\n else {\n self.gallerylist.push({\n href: '' + imgSrc + '',\n title: $(this).find('img').attr('title')\n });\n }\n });\n }\n //if no gallery - return current image\n else {\n self.gallerylist.push({\n href: '' + self.zoomImage + '',\n title: $(this).find('img').attr('title')\n });\n }\n return self.gallerylist;\n },\n\n changeZoomLevel: function (value) {\n var self = this;\n\n //flag a zoom, so can adjust the easing during setPosition\n self.scrollingLock = true;\n\n //round to two decimal places\n self.newvalue = parseFloat(value).toFixed(2);\n var newvalue = self.newvalue;\n\n //maxwidth & Maxheight of the image\n var maxheightnewvalue = self.largeHeight / ((self.options.zoomWindowHeight / self.nzHeight) * self.nzHeight);\n var maxwidthtnewvalue = self.largeWidth / ((self.options.zoomWindowWidth / self.nzWidth) * self.nzWidth);\n\n //calculate new heightratio\n if (self.options.zoomType !== 'inner') {\n if (maxheightnewvalue <= newvalue) {\n self.heightRatio = (self.largeHeight / maxheightnewvalue) / self.nzHeight;\n self.newvalueheight = maxheightnewvalue;\n self.fullheight = true;\n }\n else {\n self.heightRatio = (self.largeHeight / newvalue) / self.nzHeight;\n self.newvalueheight = newvalue;\n self.fullheight = false;\n }\n\n // calculate new width ratio\n\n if (maxwidthtnewvalue <= newvalue) {\n self.widthRatio = (self.largeWidth / maxwidthtnewvalue) / self.nzWidth;\n self.newvaluewidth = maxwidthtnewvalue;\n self.fullwidth = true;\n }\n else {\n self.widthRatio = (self.largeWidth / newvalue) / self.nzWidth;\n self.newvaluewidth = newvalue;\n self.fullwidth = false;\n }\n if (self.options.zoomType === 'lens') {\n if (maxheightnewvalue <= newvalue) {\n self.fullwidth = true;\n self.newvaluewidth = maxheightnewvalue;\n } else {\n self.widthRatio = (self.largeWidth / newvalue) / self.nzWidth;\n self.newvaluewidth = newvalue;\n\n self.fullwidth = false;\n }\n }\n }\n\n if (self.options.zoomType === 'inner') {\n maxheightnewvalue = parseFloat(self.largeHeight / self.nzHeight).toFixed(2);\n maxwidthtnewvalue = parseFloat(self.largeWidth / self.nzWidth).toFixed(2);\n if (newvalue > maxheightnewvalue) {\n newvalue = maxheightnewvalue;\n }\n if (newvalue > maxwidthtnewvalue) {\n newvalue = maxwidthtnewvalue;\n }\n\n if (maxheightnewvalue <= newvalue) {\n self.heightRatio = (self.largeHeight / newvalue) / self.nzHeight;\n if (newvalue > maxheightnewvalue) {\n self.newvalueheight = maxheightnewvalue;\n } else {\n self.newvalueheight = newvalue;\n }\n self.fullheight = true;\n }\n else {\n self.heightRatio = (self.largeHeight / newvalue) / self.nzHeight;\n\n if (newvalue > maxheightnewvalue) {\n\n self.newvalueheight = maxheightnewvalue;\n } else {\n self.newvalueheight = newvalue;\n }\n self.fullheight = false;\n }\n\n if (maxwidthtnewvalue <= newvalue) {\n\n self.widthRatio = (self.largeWidth / newvalue) / self.nzWidth;\n if (newvalue > maxwidthtnewvalue) {\n\n self.newvaluewidth = maxwidthtnewvalue;\n } else {\n self.newvaluewidth = newvalue;\n }\n\n self.fullwidth = true;\n }\n else {\n self.widthRatio = (self.largeWidth / newvalue) / self.nzWidth;\n self.newvaluewidth = newvalue;\n self.fullwidth = false;\n }\n } //end inner\n var scrcontinue = false;\n\n if (self.options.zoomType === 'inner') {\n if (self.nzWidth >= self.nzHeight) {\n if (self.newvaluewidth <= maxwidthtnewvalue) {\n scrcontinue = true;\n }\n else {\n scrcontinue = false;\n self.fullheight = true;\n self.fullwidth = true;\n }\n }\n if (self.nzHeight > self.nzWidth) {\n if (self.newvaluewidth <= maxwidthtnewvalue) {\n scrcontinue = true;\n }\n else {\n scrcontinue = false;\n self.fullheight = true;\n self.fullwidth = true;\n }\n }\n }\n\n if (self.options.zoomType !== 'inner') {\n scrcontinue = true;\n }\n\n if (scrcontinue) {\n self.zoomLock = 0;\n self.changeZoom = true;\n\n //if lens height is less than image height\n if (((self.options.zoomWindowHeight) / self.heightRatio) <= self.nzHeight) {\n self.currentZoomLevel = self.newvalueheight;\n if (self.options.zoomType !== 'lens' && self.options.zoomType !== 'inner') {\n self.changeBgSize = true;\n self.zoomLens.css('height', String(self.options.zoomWindowHeight / self.heightRatio) + 'px');\n }\n if (self.options.zoomType === 'lens' || self.options.zoomType === 'inner') {\n self.changeBgSize = true;\n }\n }\n\n if ((self.options.zoomWindowWidth / self.widthRatio) <= self.nzWidth) {\n if (self.options.zoomType !== 'inner') {\n if (self.newvaluewidth > self.newvalueheight) {\n self.currentZoomLevel = self.newvaluewidth;\n }\n }\n\n if (self.options.zoomType !== 'lens' && self.options.zoomType !== 'inner') {\n self.changeBgSize = true;\n\n self.zoomLens.css('width', String(self.options.zoomWindowWidth / self.widthRatio) + 'px');\n }\n if (self.options.zoomType === 'lens' || self.options.zoomType === 'inner') {\n self.changeBgSize = true;\n }\n\n }\n if (self.options.zoomType === 'inner') {\n self.changeBgSize = true;\n\n if (self.nzWidth > self.nzHeight) {\n self.currentZoomLevel = self.newvaluewidth;\n }\n if (self.nzHeight > self.nzWidth) {\n self.currentZoomLevel = self.newvaluewidth;\n }\n }\n } //under\n\n //sets the boundry change, called in setWindowPos\n self.setPosition(self.currentLoc);\n //\n },\n\n closeAll: function () {\n var self = this;\n if (self.zoomWindow) {\n self.zoomWindow.hide();\n }\n if (self.zoomLens) {\n self.zoomLens.hide();\n }\n if (self.zoomTint) {\n self.zoomTint.hide();\n }\n },\n\n changeState: function (value) {\n var self = this;\n if (value === 'enable') {\n self.options.zoomEnabled = true;\n }\n if (value === 'disable') {\n self.options.zoomEnabled = false;\n }\n },\n\n responsiveConfig: function (options) {\n if (options.respond && options.respond.length > 0) {\n return $.extend({}, options, this.configByScreenWidth(options));\n }\n return options;\n },\n\n configByScreenWidth: function (options) {\n var screenWidth = $(window).width();\n\n var config = $.grep(options.respond, function (item) {\n var range = item.range.split('-');\n return (screenWidth >= range[0]) && (screenWidth <= range[1]);\n });\n\n if (config.length > 0) {\n return config[0];\n } else {\n return options;\n }\n }\n };\n\n $.fn.ezPlus = function (options) {\n return this.each(function () {\n var elevate = Object.create(EZP);\n\n elevate.init(options, this);\n\n $.data(this, 'ezPlus', elevate);\n\n });\n };\n\n $.fn.ezPlus.options = {\n borderColour: '#888',\n borderSize: 4,\n constrainSize: false, //in pixels the dimensions you want to constrain on\n constrainType: false, //width or height\n containLensZoom: false,\n cursor: 'inherit', // user should set to what they want the cursor as, if they have set a click function\n debug: false,\n easing: false,\n easingAmount: 12,\n enabled: true,\n\n gallery: false,\n galleryActiveClass: 'zoomGalleryActive',\n gallerySelector: false,\n galleryItem: 'a',\n\n imageCrossfade: false,\n\n lensBorderColour: '#000',\n lensBorderSize: 1,\n lensColour: 'white', //colour of the lens background\n lensFadeIn: false,\n lensFadeOut: false,\n lensOpacity: 0.4, //opacity of the lens\n lensShape: 'square', //can be 'round'\n lensSize: 200,\n lenszoom: false,\n\n loadingIcon: false, //http://www.example.com/spinner.gif\n\n // This change will allow to decide if you want to decrease\n // zoom of one of the dimensions once the other reached it's top value,\n // or keep the aspect ratio, default behaviour still being as always,\n // allow to continue zooming out, so it keeps retrocompatibility.\n mantainZoomAspectRatio: false,\n maxZoomLevel: false,\n minZoomLevel: false,\n\n onComplete: $.noop,\n onDestroy: $.noop,\n onImageClick: $.noop,\n onImageSwap: $.noop,\n onImageSwapComplete: $.noop,\n onShow: $.noop,\n onZoomedImageLoaded: $.noop,\n\n preloading: 1, //by default, load all the images, if 0, then only load images after activated (PLACEHOLDER FOR NEXT VERSION)\n respond: [],\n responsive: true,\n scrollZoom: false, //allow zoom on mousewheel, true to activate\n scrollZoomIncrement: 0.1, //steps of the scrollzoom\n showLens: true,\n tint: false, //enable the tinting\n tintColour: '#333', //default tint color, can be anything, red, #ccc, rgb(0,0,0)\n tintOpacity: 0.4, //opacity of the tint\n touchEnabled: true,\n\n zoomActivation: 'hover', // Can also be click (PLACEHOLDER FOR NEXT VERSION)\n zoomContainerAppendTo: 'body', //zoom container parent selector\n zoomLevel: 100, //default zoom level of image\n zoomTintFadeIn: false,\n zoomTintFadeOut: false,\n zoomType: 'window', //window is default, also 'lens' available -\n zoomWindowAlwaysShow: false,\n zoomWindowBgColour: '#fff',\n zoomWindowFadeIn: false,\n zoomWindowFadeOut: false,\n zoomWindowHeight: 400,\n zoomWindowOffsetX: 0,\n zoomWindowOffsetY: 0,\n zoomWindowPosition: 1,\n zoomWindowWidth: 400,\n zoomEnabled: true, //false disables zoomwindow from showing\n zIndex: 998\n };\n\n})(jQuery, window, document);\n","/*!\n * jQuery TextSummary - v0.0.1 - 2017-12-07\n * github: necmi\n */\n$.fn.textSummary = function (options, callback) {\n var settings = {\n maxlength: 250,\n morechar: \"\"\n };\n\n var options = $.extend(true, settings, options);\n\n return this.each(function () {\n var $context = $(this).hide().append($('', {\n \"class\": \"showless\",\n href: \"javascript:;\",\n text: \"(\"+$(\"#DahaKisa\").val()+\")\",\n click: function (e) {\n e.preventDefault();\n $context.hide();\n $(\".announcement-summary\").show();\n\n }\n }));\n var contentChunks = $context.html().split(' ');\n //console.log(\"***\");\n //console.log(contentChunks);\n //console.log(\"***\");\n var summarytext = new String();\n var exceeded = false;\n $.each(contentChunks, function (i, v) {\n if ((summarytext.length + v.length <= options.maxlength) && !exceeded) {\n if (i > 0) {\n summarytext += ' ';\n }\n summarytext += v;\n } else {\n exceeded = true;\n }\n });\n\n var $summary = $('', {\n \"class\": \"announcement-summary\"\n }).html(summarytext + options.morechar).insertBefore($context);\n\n if ($context.html().length > options.maxlength) {\n var sm = $(\"..(\" + $(\"#DahaFazla\").val() + \") \");\n if ($summary.find(\"p,span\").eq(0).length > 0) {\n\n $summary.find(\"p,span\").eq(0).append(sm);\n\n } else {\n\n $summary.append(sm);\n\n }\n sm.on(\"click\", function (e) {\n e.preventDefault();\n $context.show();\n $(\".announcement-summary\").hide();\n });\n }\n if ($.isFunction(callback)) { callback(); }\n });\n};","$(document).ready(function () {\r\n \r\n $(\".CurrencyItem\").live(\"click\", function () {\r\n $(\".CurrencyItem\").removeClass(\"active\");\r\n $(this).addClass(\"active\");\r\n });\r\n\r\n var currencyID = $('input[name=currencyID]:checked').val();\r\n\r\n if (currencyID == undefined || currencyID == null)\r\n {\r\n $(\".CurrencyItem\").first().find(\".currencyID\").attr(\"checked\", \"checked\");\r\n $(\".CurrencyItem\").first().addClass(\"active\");\r\n }\r\n\r\n $(document).on(\"click\", \"#CurrencySelectFromBar\", function (e) {\r\n var hs = window.location.hash;\r\n hs = hs.replace(\"=\", \"[_]\");\r\n hs = hs.replace(\"&\", \"[and]\")\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: '/Home/ChangeCurrency',\r\n data: 'Url=' + $(\"#Url\").val() + \"¤cyID=\" + $('input[name=currencyID]:checked').val() + \"&hash=\" + window.location.hash + \"&countryCode=\" + $(\"#CountryCode\").val(),\r\n success: function (dt) {\r\n var param = \"PgType=\" + $(\"#PgType\").val() + \"&langID=\" + $(\"#LangList\").val();\r\n\r\n $.ajax({\r\n type: 'get',\r\n url: '/Home/ChangePageLang',\r\n data: param,\r\n success: function (data) {\r\n window.parent.location.href = data;\r\n }\r\n });\r\n }\r\n });\r\n });\r\n});","$(document).ready(function () {\r\n\r\n\r\n if ($(\"img.LookBookItemImage\").length > 0) {\r\n\r\n $(\"img.LookBookItemImage\").rwdImageMaps();\r\n\r\n $('map area[data-curname!=\"\"]').qtip({ // Grab all elements with a non-blank data-tooltip attr.\r\n //content: {\r\n // attr: 'href' // Tell qTip2 to look inside this attr for its content\r\n //},\r\n //content: {\r\n // text: 'I really like owls!',\r\n // title: 'About me'\r\n //},\r\n style: {\r\n classes: 'blue qtip-blue qtip-shadow'\r\n },\r\n content: {\r\n text: function (event, api) {\r\n // Retrieve content from ALT attribute of the $('.selector') element\r\n return $(this).data('curname');\r\n },\r\n title: function (event, api) {\r\n // Retrieve content from ALT attribute of the $('.selector') element\r\n return $(this).data('curprice');\r\n }\r\n },\r\n position: {\r\n target: 'mouse',\r\n adjust: {\r\n x: 20,\r\n y: 10// Can be omitted (e.g. default behaviour)\r\n }\r\n }\r\n });\r\n\r\n\r\n $(\"map area\").live({\r\n mouseenter:\r\n function (event) {\r\n\r\n var map = $(this).closest(\"map\").attr(\"id\").replace(\"#\", \"\");\r\n\r\n $img = $(\"img[usemap$='\" + map + \"']\");\r\n\r\n $Areacon = $(\"img[usemap$='\" + map + \"']\").closest(\".LookBookItemArea\");\r\n\r\n //$curNameAndPrice = $Areacon.find(\".CurrentNameAndPrice\");\r\n\r\n //$curNameAndPrice.find(\".CurName\").html($(this).data(\"curname\"));\r\n //$curNameAndPrice.find(\".CurPrice\").html($(this).data(\"curprice\"));\r\n\r\n //$curNameAndPrice.stop().fadeIn();\r\n\r\n // $Areacon.find(\".CurrentNameAndPrice\").stop().fadeIn();\r\n \r\n //var x = event.offsetX === undefined ? event.originalEvent.layerX : event.offsetX;\r\n //var y = event.offsetY === undefined ? event.originalEvent.layerY : event.offsetY;\r\n \r\n\r\n },\r\n mouseleave:\r\n function (event) {\r\n\r\n var map = $(this).closest(\"map\").attr(\"id\").replace(\"#\", \"\");\r\n\r\n $Areacon = $(\"img[usemap$='\" + map + \"']\").closest(\".LookBookItemArea\");\r\n\r\n\r\n //$curNameAndPrice = $Areacon.find(\".CurrentNameAndPrice\");\r\n //$curNameAndPrice.stop().fadeOut();\r\n\r\n //$curNameAndPrice.find(\".CurName\").html(\"\");\r\n //$curNameAndPrice.find(\".CurPrice\").html(\"\");\r\n \r\n }\r\n\r\n\r\n });\r\n\r\n\r\n $(\".LookBookItemAreaContainer map area\").live(\"click\", function (e) {\r\n\r\n var href = $(this).attr(\"href\");\r\n var ProductID = $(this).data(\"productid\");\r\n var ColorID = $(this).data(\"colorid\");\r\n\r\n if (ColorID == undefined || ColorID == \"\") {\r\n ColorID = 0;\r\n }\r\n\r\n if (ProductID == undefined || ProductID == \"\") {\r\n ProductID = 0;\r\n }\r\n\r\n if (ProductID == 0 || ColorID == 0 && href != undefined && href.length > 0) {\r\n //document.location = href;\r\n //return;\r\n // e.preventDefault();\r\n }\r\n else {\r\n\r\n $Modal = $(\"div#QuickLookModal\");\r\n $.ajax({\r\n type: 'get',\r\n url: \"/\" + $(\"#SmallLangCode\").val() + \"/p/ProductDetails/QuickLook\",\r\n data: 'ProductID=' + ProductID + \"&ColorID=\" + ColorID,\r\n success: function (dt) {\r\n\r\n $(\"div#QuickLookModal .modal-body\").html(dt);\r\n\r\n // var parentURL = $(this).closest(\".Prd\").find(\"a:first\").attr(\"href\");\r\n\r\n $(\".ProductDetail .Colors a[data-id='\" + ColorID + \"']\").trigger(\"click\");\r\n //$(this).closest(\".Prd\").find(\"a:first, a.GotoDetails\").attr(\"href\", parentURL.split(\"#\")[0] + \"#C=\" + $(this).attr(\"data-color\"));\r\n\r\n\r\n\r\n }\r\n });\r\n\r\n\r\n $Modal.modal(\"show\");\r\n return false;\r\n e.preventDefault;\r\n\r\n }\r\n\r\n\r\n });\r\n\r\n\r\n $(\"#QuickLookModal .ProductSuggestHeader\").live(\"click\", function (e) {\r\n\r\n $(\"#QuickLookModal .Productsuggest\").toggle();\r\n $(\"#QuickLookModal .CombineInfoPd\").toggle();\r\n\r\n });\r\n\r\n }\r\n\r\n\r\n\r\n});","if (typeof UseSwStat == 'undefined' || typeof UseSwStat == 'null') {\r\n var UseSwStat = false;\r\n}\r\n\r\nif (typeof UseTagManager == 'undefined' || typeof UseTagManager == 'null') {\r\n UseTagManager = false;\r\n}\r\n\r\nfunction setContentHeight() {\r\n if (!$(\"body\").hasClass(\"KioskMode\")) {\r\n\r\n var sepetPHeight = $(window).height() - 140;\r\n\r\n if ($(window).width() < 768) {\r\n $(\".SepetProducts\").css(\"max-height\", sepetPHeight + 47);\r\n $(\".SepetProducts\").css(\"height\", sepetPHeight + 47);\r\n var ContentHeight = $(\".SepetProducts\").height() - 255;\r\n\r\n $(\".BasketCenterContent\").height(ContentHeight);\r\n $(\".BasketCenterContent\").css(\"max-height\", ContentHeight);\r\n\r\n } else {\r\n $(\".SepetProducts\").css(\"max-height\", sepetPHeight);\r\n $(\".SepetProducts\").css(\"height\", sepetPHeight);\r\n\r\n var ContentHeight = $(\".SepetProducts\").height() - 255;\r\n $(\".BasketCenterContent\").height(ContentHeight);\r\n $(\".BasketCenterContent\").css(\"max-height\", ContentHeight);\r\n }\r\n\r\n $(window).resize(function () {\r\n var sepetPHeight = $(window).height() - 140;\r\n\r\n if ($(window).width() < 768) {\r\n $(\".SepetProducts\").css(\"max-height\", sepetPHeight + 47);\r\n $(\".SepetProducts\").css(\"height\", sepetPHeight + 47);\r\n\r\n var ContentHeight = $(\".SepetProducts\").height() - 255;\r\n $(\".BasketCenterContent\").height(ContentHeight);\r\n $(\".BasketCenterContent\").css(\"max-height\", ContentHeight);\r\n } else {\r\n $(\".SepetProducts\").css(\"max-height\", sepetPHeight);\r\n $(\".SepetProducts\").css(\"height\", sepetPHeight);\r\n\r\n var ContentHeight = $(\".SepetProducts\").height() - 255;\r\n $(\".BasketCenterContent\").height(ContentHeight);\r\n $(\".BasketCenterContent\").css(\"max-height\", ContentHeight);\r\n }\r\n });\r\n }\r\n else {\r\n var sepetPHeight = $(window).height() / 2;\r\n $(\".SepetProducts\").css(\"max-height\", sepetPHeight);\r\n $(\".SepetProducts\").css(\"height\", sepetPHeight);\r\n\r\n var ContentHeight = $(\".SepetProducts\").height() - 255;\r\n $(\".BasketCenterContent\").height(ContentHeight);\r\n $(\".BasketCenterContent\").css(\"max-height\", ContentHeight);\r\n\r\n $(window).resize(function () {\r\n var sepetPHeight = $(window).height() / 2;\r\n $(\".SepetProducts\").css(\"max-height\", sepetPHeight);\r\n $(\".SepetProducts\").css(\"height\", sepetPHeight);\r\n\r\n var ContentHeight = $(\".SepetProducts\").height() - 255;\r\n $(\".BasketCenterContent\").height(ContentHeight);\r\n $(\".BasketCenterContent\").css(\"max-height\", ContentHeight);\r\n });\r\n }\r\n}\r\n\r\nfunction toggleBasket() {\r\n if ($(\".RightBasket\").hasClass(\"active\")) {\r\n $(\".RightBasket\").removeClass(\"active\");\r\n $(\"body\").removeClass(\"BasketDropped\");\r\n }\r\n else {\r\n $(\".RightBasket\").addClass(\"active\");\r\n $(\"body\").addClass(\"BasketDropped\");\r\n setContentHeight();\r\n }\r\n}\r\n\r\n//function searchAutoComplete() {\r\n// $(\"#SearchForm > .searchInput\").autocomplete({\r\n// source: \"/\" + $(\"#SmallLangCode\").val() + \"/p/Cat/AutoCompleteSearch\",\r\n// minLength: 2,\r\n// select: function (event, ui) {\r\n\r\n// // console.log(ui);\r\n\r\n// if (ui.item.Type == 0) {\r\n// window.location.href = \"/\" + ui.item.Url;\r\n// }\r\n\r\n// if (ui.item.Type == 1) {\r\n// window.location.href = \"/\" + ui.item.Url;\r\n// }\r\n\r\n// if (ui.item.Type == 2) {\r\n// window.location.href = \"/\" + $(\"#SmallLangCode\").val() + \"/p/Cat/NewSearch?sr=\" + ui.item.Url;\r\n// }\r\n// },\r\n// create: function () {\r\n// $(this).data('ui-autocomplete')._renderItem = function (ul, item) {\r\n\r\n// // console.log(item);\r\n// if (item.Type == 0) {\r\n\r\n// var Names = item.Name.split(\";\");\r\n\r\n// $li = $('
').append(' ');\r\n\r\n// $li.append(\"\");\r\n// $li.append(\" \");\r\n\r\n// $li.appendTo(ul);\r\n\r\n// return $li;\r\n\r\n// }\r\n// if (item.Type == 1) {\r\n\r\n// $li = $(' ').append('');\r\n\r\n// $li.append(\"\");\r\n// $li.append(\"Katalog \");\r\n// $li.append(\" \");\r\n\r\n// $li.appendTo(ul);\r\n\r\n// return $li;\r\n// }\r\n// else\r\n// if (item.Type == 2) {\r\n// $li = $(' ').append(' ');\r\n\r\n// $li.append(\"