From 123340137d16156159fb47284a3cee1f321e9f63 Mon Sep 17 00:00:00 2001 From: zhangxiaoru <1282857928@qq.com> Date: Thu, 22 Sep 2016 19:11:17 +0800 Subject: [PATCH] gulp ge --- static/dist/myohobuy/4.9.24/index-debug.js | 18556 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- static/dist/myohobuy/4.9.24/index.js | 12 ++++++------ static/dist/myohobuy/4.9.24/lib.js | 20 ++++++++++---------- static/dist/myohobuy/assets/img/sprite.me.png | Bin 25292 -> 0 bytes 4 files changed, 9294 insertions(+), 9294 deletions(-) diff --git a/static/dist/myohobuy/4.9.24/index-debug.js b/static/dist/myohobuy/4.9.24/index-debug.js index 2b6adbe..030f3d4 100644 --- a/static/dist/myohobuy/4.9.24/index-debug.js +++ b/static/dist/myohobuy/4.9.24/index-debug.js @@ -563,6800 +563,5648 @@ $nav.on('touchstart', 'li', function() { }); define("js/category/brand", ["jquery","hammer","swiper","lazyload","index"], function(require, exports, module){ -/** - * 品牌一览 - * @author: liangzhifeng<zhifeng.liang@yoho.cn> - * @date: 2015/10/23 - */ - -var $ = require("jquery"), - Hammer = require("hammer"), - Swiper = require("swiper"), - loading = require("js/plugin/loading"), - lazyLoad = require("lazyload"); - -var ranToken = ' ??++ '; -var ranToken2 = ' ???--- '; - -var swiper, - $fixTitleBar, - $brandList = $('.brand-list'), - $icon = $('.search-icon'), - $genderItem = $('.genderNav li'), - $brandItem = $('.brandNav li'), - $newBrandWall = $('.new-brand-wall'), - $recommandBrandWall = $('.recommand-brand-wall'), - $searchAction = $('.search-action'), - $homebuttom = $('.homebuttom'), - $genderNav = $('.genderNav'), - $newSearch = $('.newbrand-search'), - $netHistory = $('.net-history'), - $navBtn = $('.nav-home'), - hotBrandsSwiper; - -var searchH = $('.newbrand-search').outerHeight(), - headerH = $('.yoho-header').outerHeight(), - brandSwipe = parseInt(searchH) + parseInt(headerH) - 1, - minBrandListTop; - -var brandsData, - $keyword = $('#keyword'), - clearTextHammer; - -var $history = $('.local-history'); -var $searchPage = $('.search-brand-page'); -var $historySearch = $('.history-search'); -var $hotSearch = $('.hot-search'); - -var $clearHistory = $('#clear-history'); - -var chHammer; - - -function changeBackground() { - var $brandList = $('.brand-list').find('p'); - - $brandList.on('touchstart', function() { - $brandList.css('background', '#fff'); - $(this).css('background', '#eee'); - }).on('touchend touchcancel', function() { - $(this).css('background', '#fff'); - }); -} -changeBackground(); +/** + * 品牌一览 + * @author: liangzhifeng<zhifeng.liang@yoho.cn> + * @date: 2015/10/23 + */ + +var $ = require("jquery"), + Hammer = require("hammer"), + Swiper = require("swiper"), + loading = require("js/plugin/loading"), + lazyLoad = require("lazyload"); + +var ranToken = ' ??++ '; +var ranToken2 = ' ???--- '; + +var swiper, + $fixTitleBar, + $brandList = $('.brand-list'), + $icon = $('.search-icon'), + $genderItem = $('.genderNav li'), + $brandItem = $('.brandNav li'), + $newBrandWall = $('.new-brand-wall'), + $recommandBrandWall = $('.recommand-brand-wall'), + $searchAction = $('.search-action'), + $homebuttom = $('.homebuttom'), + $genderNav = $('.genderNav'), + $newSearch = $('.newbrand-search'), + $netHistory = $('.net-history'), + $navBtn = $('.nav-home'), + hotBrandsSwiper; + +var searchH = $('.newbrand-search').outerHeight(), + headerH = $('.yoho-header').outerHeight(), + brandSwipe = parseInt(searchH) + parseInt(headerH) - 1, + minBrandListTop; + +var brandsData, + $keyword = $('#keyword'), + clearTextHammer; + +var $history = $('.local-history'); +var $searchPage = $('.search-brand-page'); +var $historySearch = $('.history-search'); +var $hotSearch = $('.hot-search'); + +var $clearHistory = $('#clear-history'); + +var chHammer; + + +function changeBackground() { + var $brandList = $('.brand-list').find('p'); + + $brandList.on('touchstart', function() { + $brandList.css('background', '#fff'); + $(this).css('background', '#eee'); + }).on('touchend touchcancel', function() { + $(this).css('background', '#fff'); + }); +} +changeBackground(); + +/** + * 增加单条记录 + */ +function addHistory(brandName) { + $.ajax({ + type: 'POST', + url: '/brands/addBrandSearch', + data: 'brandName=' + encodeURIComponent(brandName), + success: function(data) { + }, + error: function() { + } + }); +} + +//比较大小 +function sequence(a, b) { + if (a.time > b.time) { + return 1; + } else if (a.time < b.time) { + return -1; + } else { + return 0; + } +} + +function searchInput() { + if ($keyword.val().length) { + $icon.css('color', '#444'); + + // $(this).closest('.search-box').css('width', '11.25rem'); + $searchAction.show().find('.clear-text').show(); + } else { + $icon.css('color', '#b2b2b2'); + + // $(this).closest('.search-box').css('width', '12.5rem'); + $searchAction.find('.clear-text').hide(); + + } + searchResult(); +} + +function isLocalStorageSupported() { + var testKey = 'test', + storage = Window.prototype.localStorage; + + try { + storage.setItem(testKey, 'testValue'); + storage.removeItem(testKey); + return true; + } catch (error) { + return false; + } +} + +//绑定提交前的存local操作 +function bindWriteLocal($brandList, list) { + $brandList.on('click', 'p , li', function(e) { + var brandName, brandId, brandDomain, url; + var a = $(this).find('a'); + var myDate = new Date(); + var query = a.attr('brandName') + ranToken2 + myDate.getTime(), + historys; + + brandName = a.attr('brandName'); + + brandId = a.attr('brandId'); + + brandDomain = a.attr('brandDomain'); + + url = a.attr('href'); + + e.preventDefault(); + + if ($netHistory.length > 0) { + addHistory(brandName); + + if (list) { + location.href = url; + return; + } + + $keyword.val(brandName); + searchInput(); + return; + } + + if (localStorage) { + if (isLocalStorageSupported()) { + historys = localStorage.getItem('historys-brand'); + } + + historys = historys ? historys : ''; + + if (historys.indexOf(ranToken + query + ranToken) > -1) { + + + $keyword.val(brandName); + searchInput(); + return; + } + + if (historys === '') { + query = ranToken + query; + } + + historys += query + ranToken; + + if (isLocalStorageSupported()) { + localStorage.setItem('historys-brand', historys); + } + } + + if (list) { + location.href = url; + return; + } + + $keyword.val(brandName); + searchInput(); + }); +} + +function searchResult() { + var keyword = ($keyword.val() + '').toLowerCase(); + var result = {}, + i = 0, + html = ''; + + if (keyword !== '') { + + // 遍历首字母搜索 + $.each(brandsData, function(k, v) { + if ($.isArray(v)) { + + // 遍历品牌,进行匹配 + $.each(v, function(i, brand) { + if (brand.searchName.toLowerCase().indexOf(keyword) > -1) { + result[k] = result[k] || []; + result[k].push(brand); + } + }); + } + }); + + // 根据搜索结果生成 HTML + $.each(result, function(k, v) { + var brandHtml = ['<div class="brand-list bar-', i, '">']; + + i++; + brandHtml.push('<div class="title-bar"><h2>'); + brandHtml.push(k); + brandHtml.push('</h2></div>'); + $.each(v, function(i, brand) { + + brandHtml.push('<p><a href="' + brand.url + '" brandName = "' + brand.name + + '" brandId = "' + brand.brandId + '" brandDomain = "' + brand.brandDomain + '">' + brand.name); + if (brand.isNew) { + brandHtml.push('<i class="icon-new">NEW</i>'); + } + if (brand.isHot) { + brandHtml.push('<i class="icon-hot">HOT</i>'); + } + brandHtml.push('</a></p>'); + }); + brandHtml.push('</div>'); + html += brandHtml.join(''); + + }); + } + + //没填入关键词时显示最热搜索 + if (keyword.length > 0) { + $('.search-brand-page').addClass('hide'); + } else { + $('.search-brand-page').removeClass('hide'); + } + + // 插入 dom,绑定事件 + $('.search-result').html(html); + changeBackground(); + bindWriteLocal($('.brand-list'), true); +} + +loading.showLoadingMask(); + +lazyLoad($('img.lazy')); +$('.yoho-header').css({ + 'z-index': 2, + position: 'fixed', + top: 0 +}); + +$homebuttom.css('top', '47px'); +$homebuttom.css('position', 'fixed'); + +$navBtn.on('touchstart', function() { + if ($homebuttom.hasClass('hide')) { + $genderNav.css('top', '47px'); + $newSearch.css('margin-top', '0px'); + $searchPage.css('margin-top', '0px'); + $('.banner-top').css('margin-top', '0px'); + } else { + $genderNav.css('top', '97px'); + $newSearch.css('margin-top', '47px'); + $searchPage.css('margin-top', '47px'); + $('.banner-top').css('margin-top', '47px'); + } +}); + +(function() { + if ($('.banner-top').length > 0) { + $('.hot-brands').css('padding-top', '0'); + } + + $('.hide-when-loading').show(); + loading.hideLoadingMask(); + + //banner滑动 + swiper = new Swiper('.swiper-container', { + lazyLoading: true, + loop: true, + autoplay: 3000, + pagination: '.swiper-pagination .pagination-inner' + }); + + //热门品牌滑动 + hotBrandsSwiper = new Swiper('.brands-swiper', { + grabCursor: true, + slidesPerView: 'auto', + wrapperClass: 'brands-list', + slideElement: 'li' + }); +})(); + +$fixTitleBar = $('<div class="title-bar fixed-title-bar"><h2></h2></div>'); +$fixTitleBar.css({ + position: 'fixed', + top: brandSwipe +}).hide(); +minBrandListTop = brandSwipe + $('.hot-brands').outerHeight() + $('.banner-top').outerHeight(); +$brandList.last().append($fixTitleBar); + +function scrollHandler() { + var scrTop = $(window).scrollTop(); + + if ($brandList.eq(0).offset().top < minBrandListTop) { + $fixTitleBar.hide(); + } + + $brandList.each(function() { + var offTop = $(this).offset().top - brandSwipe; + + if (scrTop >= offTop) { + $fixTitleBar.css({ + display: 'block' + }).find('h2').html($(this).find('.title-bar').text()); + } + + }); +} + +if ($('.brand-index-page').length > 0) { + /** + * srcoll to load more + */ + $(window).scroll(function() { + window.requestAnimationFrame(scrollHandler); + }); +} + + +if ($('.history-search').length > 0) { + bindWriteLocal($('.history-search'), false); +} + +if ($('.hot-search').length > 0) { + bindWriteLocal($('.hot-search'), false); +} + +if ($('.brand-search-page').length > 0) { + brandsData = $.parseJSON($('#brands-data').html()); + + $keyword.on('input', function() { + searchInput(); + }); + + // 2016.1.13 产品(高扬)要求进入页面默认显示取消按钮 + $icon.css('color', '#444'); + $keyword.closest('.search-box').css('width', '11.25rem'); + $searchAction.show().find('.clear-text').hide(); + + clearTextHammer = new Hammer($('.clear-text')[0]); + clearTextHammer.on('tap', function(e) { + $('.search-result').html(''); + $('#keyword').val('').trigger('input'); + e.preventDefault(); + e.srcEvent.stopPropagation(); + }); + + $('form.search-box').on('submit', function() { + return false; + }); + +} + +if ($genderItem.length > 0) { + $genderItem.on('touchstart', function() { + var index = $(this).data('id') + 1; + + $('.genderNav ul .active').removeClass('active'); + $(this).addClass('active'); + $('.hide-when-loading').hide(); + loading.showLoadingMask(); + function reload() { + window.location.search = 'channel=' + index; + } + setTimeout(reload.bind(this), 100); + }); +} + +if ($brandItem.length > 0) { + $brandItem.on('click', function() { + var index = $(this).data('id'); + + $('.brandNav ul .active').removeClass('active'); + $(this).addClass('active'); + + + if (index === 0) { + + $recommandBrandWall.not('.hide').addClass('hide'); + $newBrandWall.not('.hide').addClass('hide'); + $brandList.removeClass('hide'); + + } else if (index === 1) { + + $newBrandWall.removeClass('hide'); + $brandList.not('.hide').addClass('hide'); + $recommandBrandWall.not('.hide').addClass('hide'); + + } else { + + $recommandBrandWall.removeClass('hide'); + $brandList.not('.hide').addClass('hide'); + $newBrandWall.not('.hide').addClass('hide'); + + } + + }); +} + +/** + * 清除记录 + */ +function removeHistory() { + $.ajax({ + type: 'GET', + url: '/brands/delBrandHistory', + data: '', + success: function(data) { + }, + error: function() { + } + }); +} + +//初始化历史搜索的内容 + +if ($('.brand-search-page').length > 0) { + + chHammer = new Hammer($clearHistory[0]); + chHammer.on('tap', function() { + if (isLocalStorageSupported()) { + localStorage.removeItem('historys-brand'); + } + $history.html(''); + $historySearch.hide(); + $clearHistory.hide(); + + if ($('.net-search').length > 0) { + removeHistory(); + } + + window.rePosFooter(); + }); + + //搜索页面 + + (function() { + var html = '', + history, + historys, i, + localHistory, + brand,data, + time,netArr,dict,dictc,localArr, + combinArr,key,date,temp; + + localArr = []; + combinArr = []; + netArr = []; + + $netHistory.find('li').each(function() { + + brand = $(this).find('a').attr('brandName'); + time = $(this).find('a').attr('collectTime'); + dict = { + brand: brand, + time: time + },dictc,dict; + netArr.push(dict); + }); + + + if (localStorage) { + if (isLocalStorageSupported()) { + historys = localStorage.getItem('historys-brand'); + } + + if (historys && historys.length > 0) { + historys = historys.split(ranToken); + for (i = historys.length; i > 0; i--) { + history = historys[i - 1]; + + if (history === '') { + continue; + } + localHistory = history.split(ranToken2); + + brand = localHistory[0]; + time = localHistory[1]; + + dict = { + brand: brand, + time: time + }; + + localArr.push(dict); + + } + } + } + + if (localArr.length === 0 && netArr.length === 0) { + $historySearch.addClass('hide'); + return; + } + + + date = {}; + temp = {}; + if (localArr.length > 0) { + for (dictc in localArr) { + if (localArr.hasOwnProperty(dictc)) { + temp = localArr[dictc]; + if (!date[temp.brand] || date[temp.brand] < temp.time) { + date[temp.brand] = temp.time; + } + } + } + } + + if (netArr.length > 0) { + for (dict in netArr) { + if (netArr.hasOwnProperty(dict)) { + temp = netArr[dict]; + if (!date[temp.brand] || date[temp.brand] < temp.time) { + date[temp.brand] = temp.time; + } + } + } + } + + data = {}; + for (key in date) { + if (date.hasOwnProperty(key)) { + data = { + brand: key, + time: date[key] + }; + combinArr.push(data); + } + } + + combinArr.sort(sequence); + + if (combinArr.length > 0) { + for (i = combinArr.length - 1; i >= ((combinArr.length > 10) ? (combinArr.length - 10) : 0); i--) { + + brand = combinArr[i].brand; + time = combinArr[i].time; + + html += '<li><a brandName = "' + brand + + '">' + brand + '</li>'; + $history.removeClass('hide'); + + $history.html(html); + $clearHistory.removeClass('hide'); + + $hotSearch.removeClass('hide'); + window.rePosFooter(); + + } + } else { + $history.addClass('hide'); + } + + }()); + +} +}); +define("js/plugin/loading", ["jquery"], function(require, exports, module){ +/** + * Loading mask + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/29 + */ + +var $ = require("jquery"); + +var $page = $('.yoho-page'); + +var $loading, + hasInit = false; + +/** modify by liangzhifeng at 2015.11.2 */ + +// 初始化 +function init($container) { + var html = '<div class="loading-mask hide">' + + '<div class="loading">' + + '<div></div><div></div><div></div>' + + '</div>' + + '</div>'; + + hasInit = true; + if ($container === undefined) { + $container = $page; + } + + $container.append(html); + + $loading = $container.children('.loading-mask'); +} + +//显示loading +function showLoadingMask() { + if (!hasInit) { + init(); + hasInit = true; + } + $loading.removeClass('hide'); +} + +//隐藏loading +function hideLoadingMask() { + $loading.addClass('hide'); +} + +exports.init = init; +exports.showLoadingMask = showLoadingMask; +exports.hideLoadingMask = hideLoadingMask; +}); +define("js/guang/entry", ["jquery","lazyload","swiper","hammer","mlellipsis","iscroll-probe","index"], function(require, exports, module){ +/** + * 逛打包入口 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/9 + */ + +require("js/guang/plus-star/list"); +require("js/guang/plus-star/detail"); + +require("js/guang/home"); +require("js/guang/list"); +require("js/guang/detail"); +require("js/guang/star-classroom"); +require("js/guang/calendar"); +require("js/guang/collocation-list"); +require("js/guang/check-top"); +}); +define("js/guang/plus-star/list", ["jquery","lazyload","swiper","index"], function(require, exports, module){ +/** + * PLUS+STAR列表页 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/10 + */ + +var $ = require("jquery"), + lazyLoad = require("lazyload"), + Swiper = require("swiper"); + +var $navs = $('#nav-tab > li'), + $contents = $('#ps-content > .content'); + +var mySwiper; + +lazyLoad($('img.lazy')); + +$('.star-content li').each(function(key, item) { + $(item).find('.swiper-container').addClass('swiper-' + key); + + mySwiper = new Swiper('.swiper-' + key, { + lazyLoading: true, + pagination: '.swiper-' + key + ' .pagination-inner' + }); +}); + +$('#nav-tab').bind('contextmenu', function(e) { + return false; +}); +$('#nav-tab').on('touchend touchcancel', function(e) { + var $this = $(e.target).closest('li'); + + if ($this.hasClass('focus')) { + return; + } + + $navs.toggleClass('focus'); + $contents.toggleClass('hide'); + + $(document).trigger('scroll'); //Trigger lazyLoad +}); +$('#nav-tab').on('touchstart', function(e) { + var target = e.target || e.srcElement; + + target.className = 'bytouch ' + target.className; +}).on('touchend touchcancel', function() { + $navs.removeClass('bytouch'); +}); +}); +define("js/guang/plus-star/detail", ["jquery","hammer","mlellipsis","lazyload","swiper","index"], function(require, exports, module){ +/** + * PLUS+STAR详情页 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/10 + */ + +var $ = require("jquery"), + Hammer = require("hammer"), + ellipsis = require("mlellipsis"), + lazyLoad = require("lazyload"); + +var $intro = $('#intro'), + $imt = $('#intro-more-txt'), + $infosContainer = $('#related-infos-container'); + +var info = require("js/guang/info"); + +var tip = require("js/plugin/tip"); + +var brandId = $('#brand-info').data('id'); + +var jumpToApp = $('#jump-to-app').val(); + +var mIntro, aIntro; + +var moreHammer, likeHammer, $goodName, $title; + +require("js/plugin/wx-share"); + +ellipsis.init(); + +//Init LazyLoad +lazyLoad($('img.lazy')); + +if ($('.good-detail-text .name').length > 0) { + $('.good-detail-text .name').each(function() { + $goodName = $(this); + $title = $goodName.find('a'); + + $title[0].mlellipsis(2); + }); +} + +//文字介绍文字截取 +$intro[0].mlellipsis(3); + +//获取截取文字和完整文字 +setTimeout(function() { + mIntro = $intro.text(); + aIntro = $intro.attr('title'); +}); + +info.initInfosEvt($infosContainer); + +//文字介绍收起与展开 +moreHammer = new Hammer(document.getElementById('more-intro-click-range')); +moreHammer.on('tap', function(e) { + var $this = $imt.parent(); + + $this.toggleClass('spread'); + + if ($this.hasClass('spread')) { + + //显示 + $intro.text(aIntro); + $imt.text('收起'); + } else { + + //隐藏 + $intro.text(mIntro); + $imt.text('more'); + + $(window).scrollTop(0, 400); //滑动到顶部 + } + + e.preventDefault(); //防止收缩后误点到商品产生跳转 +}); + +//品牌收藏 +likeHammer = new Hammer(document.getElementById('brand-like')); +likeHammer.on('tap', function(e) { + var opt = 'ok', + $this = $(e.target); + + + //jumpToApp = 1表示APP未登录的情况,此时不发送ajax请求而由a链接直接跳转APP + if (jumpToApp === '1') { + return; + } + + e.preventDefault(); + + if ($this.hasClass('like')) { + opt = 'cancel'; + } + + $.ajax({ + type: 'POST', + url: '/guang/opt/favoriteBrand', + data: { + id: brandId, + opt: opt + }, + success: function(data) { + if (data.code === 200) { + $this.toggleClass('like'); + tip.show(data.message); + } else if (data.code === 400 || data.code === 412) { + location.href = data.data; //未登录跳转登录页面 + } else { + tip.show(data.message); + } + }, + error: function() { + tip.show('网络断开连接了~'); + } + }); +}); +}); +define("js/guang/info", ["jquery","hammer","mlellipsis","lazyload","swiper","index"], function(require, exports, module){ /** - * 增加单条记录 + * 资讯相关API + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/10 */ -function addHistory(brandName) { - $.ajax({ - type: 'POST', - url: '/brands/addBrandSearch', - data: 'brandName=' + encodeURIComponent(brandName), - success: function(data) { - }, - error: function() { - } - }); -} -//比较大小 -function sequence(a, b) { - if (a.time > b.time) { - return 1; - } else if (a.time < b.time) { - return -1; - } else { - return 0; - } -} +var $ = require("jquery"), + Hammer = require("hammer"), + ellipsis = require("mlellipsis"), + lazyLoad = require("lazyload"), + Swiper = require("swiper"); -function searchInput() { - if ($keyword.val().length) { - $icon.css('color', '#444'); +var tip = require("js/plugin/tip"); +var loading = require("js/plugin/loading"); - // $(this).closest('.search-box').css('width', '11.25rem'); - $searchAction.show().find('.clear-text').show(); - } else { - $icon.css('color', '#b2b2b2'); +var $loadMoreInfo = $('#load-more-info'); +var $loading = $(''), + $noMore = $(''), + $swiper = $(''); - // $(this).closest('.search-box').css('width', '12.5rem'); - $searchAction.find('.clear-text').hide(); +var searching = false; +var mySwiper = {}; - } - searchResult(); -} +var isLoading = false; -function isLocalStorageSupported() { - var testKey = 'test', - storage = Window.prototype.localStorage; +ellipsis.init(); - try { - storage.setItem(testKey, 'testValue'); - storage.removeItem(testKey); - return true; - } catch (error) { - return false; - } +if ($loadMoreInfo.length > 0) { + $loading = $loadMoreInfo.children('.loading'); + $noMore = $loadMoreInfo.children('.no-more'); } -//绑定提交前的存local操作 -function bindWriteLocal($brandList, list) { - $brandList.on('click', 'p , li', function(e) { - var brandName, brandId, brandDomain, url; - var a = $(this).find('a'); - var myDate = new Date(); - var query = a.attr('brandName') + ranToken2 + myDate.getTime(), - historys; - - brandName = a.attr('brandName'); - - brandId = a.attr('brandId'); - - brandDomain = a.attr('brandDomain'); +// 获取url中的参数 +function getUrlParam(name) { - url = a.attr('href'); + // 构造一个含有目标参数的正则表达式对象 + var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)'); - e.preventDefault(); + // 匹配目标参数 + var r = window.location.search.substr(1).match(reg); - if ($netHistory.length > 0) { - addHistory(brandName); + // 返回参数值 + if (r != null) { + return r[2]; + } - if (list) { - location.href = url; - return; - } + return null; +} - $keyword.val(brandName); - searchInput(); - return; - } +//初始化swiper +function initSwiper(typeId) { + if (typeof typeId === undefined) { + return; + } + mySwiper[typeId] = new Swiper('.swiper-cont-' + typeId, { + lazyLoading: true, + wrapperClass: 'swiper-wrap-' + typeId, + pagination: '.swiper-pagi-' + typeId, + autoplay: 3000 + }); +} - if (localStorage) { - if (isLocalStorageSupported()) { - historys = localStorage.getItem('historys-brand'); - } +/** + * 设置指定资讯项的Lazyload和文字截取 + * @params $infos 资讯项 + */ +function setLazyLoadAndMellipsis($infos) { + lazyLoad($infos.find('img.lazy')); - historys = historys ? historys : ''; + $infos.each(function() { + var $this = $(this), + $title = $this.find('.info-title'), + $text = $this.find('.info-text'); - if (historys.indexOf(ranToken + query + ranToken) > -1) { + $title[0].mlellipsis(2); + $text[0].mlellipsis(2); + }); +} +/** + * 初始化资讯列表事件绑定 + * @params $container 逛资讯列表容器 + */ +function initInfosEvt($container) { + var cHammer; - $keyword.val(brandName); - searchInput(); - return; - } + if (typeof $container === 'undefined') { + return; + } + if (typeof $container[0] === 'undefined') { + return; + } + cHammer = new Hammer($container[0]); - if (historys === '') { - query = ranToken + query; - } + //点赞或者收藏事件 + cHammer.on('tap', function(e) { + var $this = $(e.target), + opt = 'ok', + $btn, + $info, + yhChannel; - historys += query + ranToken; + //e.preventDefault(); - if (isLocalStorageSupported()) { - localStorage.setItem('historys-brand', historys); + //点赞 + $btn = $this.closest('.like-btn'); + if ($btn.length > 0 && !isLoading) { + e.preventDefault(); + if ($btn.hasClass('like')) { + opt = 'cancel'; } - } - if (list) { - location.href = url; - return; - } + $info = $this.closest('.guang-info'); - $keyword.val(brandName); - searchInput(); - }); -} + isLoading = true; -function searchResult() { - var keyword = ($keyword.val() + '').toLowerCase(); - var result = {}, - i = 0, - html = ''; + $.ajax({ + type: 'POST', + url: '/guang/opt/praiseArticle', + data: { + id: $info.data('id'), + opt: opt + }, + success: function(data) { + var code = data.code; - if (keyword !== '') { - // 遍历首字母搜索 - $.each(brandsData, function(k, v) { - if ($.isArray(v)) { + if (code === 200) { + $btn.next('.like-count').text(data.data); - // 遍历品牌,进行匹配 - $.each(v, function(i, brand) { - if (brand.searchName.toLowerCase().indexOf(keyword) > -1) { - result[k] = result[k] || []; - result[k].push(brand); + //切换点赞状态 + $btn.toggleClass('like'); } - }); - } - }); - - // 根据搜索结果生成 HTML - $.each(result, function(k, v) { - var brandHtml = ['<div class="brand-list bar-', i, '">']; - - i++; - brandHtml.push('<div class="title-bar"><h2>'); - brandHtml.push(k); - brandHtml.push('</h2></div>'); - $.each(v, function(i, brand) { - - brandHtml.push('<p><a href="' + brand.url + '" brandName = "' + brand.name + - '" brandId = "' + brand.brandId + '" brandDomain = "' + brand.brandDomain + '">' + brand.name); - if (brand.isNew) { - brandHtml.push('<i class="icon-new">NEW</i>'); - } - if (brand.isHot) { - brandHtml.push('<i class="icon-hot">HOT</i>'); + }, + error: function() { + tip.show('网络断开连接了~'); + }, + complete: function() { + isLoading = false; } - brandHtml.push('</a></p>'); }); - brandHtml.push('</div>'); - html += brandHtml.join(''); - - }); - } - - //没填入关键词时显示最热搜索 - if (keyword.length > 0) { - $('.search-brand-page').addClass('hide'); - } else { - $('.search-brand-page').removeClass('hide'); - } - - // 插入 dom,绑定事件 - $('.search-result').html(html); - changeBackground(); - bindWriteLocal($('.brand-list'), true); -} - -loading.showLoadingMask(); - -lazyLoad($('img.lazy')); -$('.yoho-header').css({ - 'z-index': 2, - position: 'fixed', - top: 0 -}); - -$homebuttom.css('top', '47px'); -$homebuttom.css('position', 'fixed'); - -$navBtn.on('touchstart', function() { - if ($homebuttom.hasClass('hide')) { - $genderNav.css('top', '47px'); - $newSearch.css('margin-top', '0px'); - $searchPage.css('margin-top', '0px'); - $('.banner-top').css('margin-top', '0px'); - } else { - $genderNav.css('top', '97px'); - $newSearch.css('margin-top', '47px'); - $searchPage.css('margin-top', '47px'); - $('.banner-top').css('margin-top', '47px'); - } -}); - -(function() { - if ($('.banner-top').length > 0) { - $('.hot-brands').css('padding-top', '0'); - } - - $('.hide-when-loading').show(); - loading.hideLoadingMask(); - - //banner滑动 - swiper = new Swiper('.swiper-container', { - lazyLoading: true, - loop: true, - autoplay: 3000, - pagination: '.swiper-pagination .pagination-inner' - }); - - //热门品牌滑动 - hotBrandsSwiper = new Swiper('.brands-swiper', { - grabCursor: true, - slidesPerView: 'auto', - wrapperClass: 'brands-list', - slideElement: 'li' - }); -})(); + return; + } -$fixTitleBar = $('<div class="title-bar fixed-title-bar"><h2></h2></div>'); -$fixTitleBar.css({ - position: 'fixed', - top: brandSwipe -}).hide(); -minBrandListTop = brandSwipe + $('.hot-brands').outerHeight() + $('.banner-top').outerHeight(); -$brandList.last().append($fixTitleBar); + //APP收藏 + $btn = $this.closest('.collect-btn'); + if ($btn.length > 0) { + e.preventDefault(); + if ($btn.hasClass('collected')) { + opt = 'cancel'; + } -function scrollHandler() { - var scrTop = $(window).scrollTop(); + $info = $this.closest('.guang-info'); - if ($brandList.eq(0).offset().top < minBrandListTop) { - $fixTitleBar.hide(); - } + if (getUrlParam('yh_channel')) { + yhChannel = getUrlParam('yh_channel'); + } - $brandList.each(function() { - var offTop = $(this).offset().top - brandSwipe; + $.ajax({ + type: 'POST', + url: '/guang/opt/collectArticle', + data: { + id: $info.data('id'), + opt: opt, + yh_channel: yhChannel, + uid: getUrlParam('uid') + }, + success: function(data) { + if (data.code && data.code === 200) { - if (scrTop >= offTop) { - $fixTitleBar.css({ - display: 'block' - }).find('h2').html($(this).find('.title-bar').text()); + //切换收藏状态 + $btn.toggleClass('collected'); + } + }, + error: function() { + tip.show('网络断开连接了~'); + } + }); } - - }); -} - -if ($('.brand-index-page').length > 0) { - /** - * srcoll to load more - */ - $(window).scroll(function() { - window.requestAnimationFrame(scrollHandler); }); -} - - -if ($('.history-search').length > 0) { - bindWriteLocal($('.history-search'), false); -} -if ($('.hot-search').length > 0) { - bindWriteLocal($('.hot-search'), false); + setLazyLoadAndMellipsis($container.find('.guang-info')); } -if ($('.brand-search-page').length > 0) { - brandsData = $.parseJSON($('#brands-data').html()); - - $keyword.on('input', function() { - searchInput(); - }); - - // 2016.1.13 产品(高扬)要求进入页面默认显示取消按钮 - $icon.css('color', '#444'); - $keyword.closest('.search-box').css('width', '11.25rem'); - $searchAction.show().find('.clear-text').hide(); - - clearTextHammer = new Hammer($('.clear-text')[0]); - clearTextHammer.on('tap', function(e) { - $('.search-result').html(''); - $('#keyword').val('').trigger('input'); - e.preventDefault(); - e.srcEvent.stopPropagation(); - }); +/** + * 资讯LoadMore + * @param $container 资讯容器 jqyeryObject + * @param opt 请求参数 + * @param url[可选], 扩展请求的url而不使用默认值 + */ +function loadMore($container, opt, url) { + var num; - $('form.search-box').on('submit', function() { - return false; - }); + if (searching) { + return; + } -} + if (opt.end) { + return; + } -if ($genderItem.length > 0) { - $genderItem.on('touchstart', function() { - var index = $(this).data('id') + 1; + if (opt.page === 1) { - $('.genderNav ul .active').removeClass('active'); - $(this).addClass('active'); - $('.hide-when-loading').hide(); + //显示loading loading.showLoadingMask(); - function reload() { - window.location.search = 'channel=' + index; - } - setTimeout(reload.bind(this), 100); - }); -} - -if ($brandItem.length > 0) { - $brandItem.on('click', function() { - var index = $(this).data('id'); - - $('.brandNav ul .active').removeClass('active'); - $(this).addClass('active'); - - - if (index === 0) { - - $recommandBrandWall.not('.hide').addClass('hide'); - $newBrandWall.not('.hide').addClass('hide'); - $brandList.removeClass('hide'); - - } else if (index === 1) { - - $newBrandWall.removeClass('hide'); - $brandList.not('.hide').addClass('hide'); - $recommandBrandWall.not('.hide').addClass('hide'); - - } else { - - $recommandBrandWall.removeClass('hide'); - $brandList.not('.hide').addClass('hide'); - $newBrandWall.not('.hide').addClass('hide'); - - } - - }); -} + } -/** - * 清除记录 - */ -function removeHistory() { + num = $container.find('.guang-info').length; + searching = true; $.ajax({ type: 'GET', - url: '/brands/delBrandHistory', - data: '', + url: url ? url : '/guang/index/page',//对于指定url的使用指定url(存在不同的控制器) + data: opt, success: function(data) { - }, - error: function() { - } - }); -} - -//初始化历史搜索的内容 - -if ($('.brand-search-page').length > 0) { - - chHammer = new Hammer($clearHistory[0]); - chHammer.on('tap', function() { - if (isLocalStorageSupported()) { - localStorage.removeItem('historys-brand'); - } - $history.html(''); - $historySearch.hide(); - $clearHistory.hide(); - - if ($('.net-search').length > 0) { - removeHistory(); - } - - window.rePosFooter(); - }); - - //搜索页面 - - (function() { - var html = '', - history, - historys, i, - localHistory, - brand,data, - time,netArr,dict,dictc,localArr, - combinArr,key,date,temp; + var $newItems; - localArr = []; - combinArr = []; - netArr = []; + if (data === ' ') { + opt.end = true; + searching = false; - $netHistory.find('li').each(function() { + // + $loading.addClass('hide'); + $noMore.removeClass('hide'); - brand = $(this).find('a').attr('brandName'); - time = $(this).find('a').attr('collectTime'); - dict = { - brand: brand, - time: time - },dictc,dict; - netArr.push(dict); - }); + return; + } + $container.append(data); - if (localStorage) { - if (isLocalStorageSupported()) { - historys = localStorage.getItem('historys-brand'); + $swiper = $container.find('.swiper-container'); + if ($swiper.length) { + $swiper.addClass('swiper-cont-' + opt.type); + $swiper.children('.swiper-wrapper').addClass('swiper-wrap-' + opt.type); + $swiper.children('.swiper-pagination').addClass('swiper-pagi-' + opt.type); + initSwiper(opt.type); } - if (historys && historys.length > 0) { - historys = historys.split(ranToken); - for (i = historys.length; i > 0; i--) { - history = historys[i - 1]; - - if (history === '') { - continue; - } - localHistory = history.split(ranToken2); + if (num > 0) { + $newItems = $container.find('.guang-info:gt(' + (num - 1) + ')'); + } else { + $newItems = $container.find('.guang-info'); + } - brand = localHistory[0]; - time = localHistory[1]; + setLazyLoadAndMellipsis($newItems); - dict = { - brand: brand, - time: time - }; + if (opt.page === 1) { + loading.hideLoadingMask(); - localArr.push(dict); + $loading.removeClass('hide');//显示空屏加载时hide的隐藏 - } + window.rePosFooter();//插入内容后重新计算底部位置 } - } - - if (localArr.length === 0 && netArr.length === 0) { - $historySearch.addClass('hide'); - return; - } - - date = {}; - temp = {}; - if (localArr.length > 0) { - for (dictc in localArr) { - if (localArr.hasOwnProperty(dictc)) { - temp = localArr[dictc]; - if (!date[temp.brand] || date[temp.brand] < temp.time) { - date[temp.brand] = temp.time; - } - } - } - } + opt.page++; - if (netArr.length > 0) { - for (dict in netArr) { - if (netArr.hasOwnProperty(dict)) { - temp = netArr[dict]; - if (!date[temp.brand] || date[temp.brand] < temp.time) { - date[temp.brand] = temp.time; - } - } - } - } - - data = {}; - for (key in date) { - if (date.hasOwnProperty(key)) { - data = { - brand: key, - time: date[key] - }; - combinArr.push(data); - } - } - - combinArr.sort(sequence); - - if (combinArr.length > 0) { - for (i = combinArr.length - 1; i >= ((combinArr.length > 10) ? (combinArr.length - 10) : 0); i--) { - - brand = combinArr[i].brand; - time = combinArr[i].time; - - html += '<li><a brandName = "' + brand + - '">' + brand + '</li>'; - $history.removeClass('hide'); - - $history.html(html); - $clearHistory.removeClass('hide'); - - $hotSearch.removeClass('hide'); - window.rePosFooter(); - - } - } else { - $history.addClass('hide'); - } - - }()); - -} - -}); -define("js/plugin/loading", ["jquery"], function(require, exports, module){ -/** - * Loading mask - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/29 - */ - -var $ = require("jquery"); - -var $page = $('.yoho-page'); - -var $loading, - hasInit = false; - -/** modify by liangzhifeng at 2015.11.2 */ - -// 初始化 -function init($container) { - var html = '<div class="loading-mask hide">' + - '<div class="loading">' + - '<div></div><div></div><div></div>' + - '</div>' + - '</div>'; - - hasInit = true; - if ($container === undefined) { - $container = $page; - } - - $container.append(html); - - $loading = $container.children('.loading-mask'); -} - -//显示loading -function showLoadingMask() { - if (!hasInit) { - init(); - hasInit = true; - } - $loading.removeClass('hide'); -} - -//隐藏loading -function hideLoadingMask() { - $loading.addClass('hide'); -} - -exports.init = init; -exports.showLoadingMask = showLoadingMask; -exports.hideLoadingMask = hideLoadingMask; -}); -define("js/guang/entry", ["jquery","lazyload","swiper","hammer","mlellipsis","iscroll-probe","index"], function(require, exports, module){ -/** - * 逛打包入口 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/9 - */ - -require("js/guang/plus-star/list"); -require("js/guang/plus-star/detail"); - -require("js/guang/home"); -require("js/guang/list"); -require("js/guang/detail"); -require("js/guang/star-classroom"); -require("js/guang/calendar"); -require("js/guang/collocation-list"); -require("js/guang/check-top"); -}); -define("js/guang/plus-star/list", ["jquery","lazyload","swiper","index"], function(require, exports, module){ -/** - * PLUS+STAR列表页 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/10 - */ - -var $ = require("jquery"), - lazyLoad = require("lazyload"), - Swiper = require("swiper"); - -var $navs = $('#nav-tab > li'), - $contents = $('#ps-content > .content'); - -var mySwiper; - -lazyLoad($('img.lazy')); - -$('.star-content li').each(function(key, item) { - $(item).find('.swiper-container').addClass('swiper-' + key); - - mySwiper = new Swiper('.swiper-' + key, { - lazyLoading: true, - pagination: '.swiper-' + key + ' .pagination-inner' - }); -}); - -$('#nav-tab').bind('contextmenu', function(e) { - return false; -}); -$('#nav-tab').on('touchend touchcancel', function(e) { - var $this = $(e.target).closest('li'); - - if ($this.hasClass('focus')) { - return; - } - - $navs.toggleClass('focus'); - $contents.toggleClass('hide'); - - $(document).trigger('scroll'); //Trigger lazyLoad -}); -$('#nav-tab').on('touchstart', function(e) { - var target = e.target || e.srcElement; - - target.className = 'bytouch ' + target.className; -}).on('touchend touchcancel', function() { - $navs.removeClass('bytouch'); -}); -}); -define("js/guang/plus-star/detail", ["jquery","hammer","mlellipsis","lazyload","swiper","index"], function(require, exports, module){ -/** - * PLUS+STAR详情页 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/10 - */ - -var $ = require("jquery"), - Hammer = require("hammer"), - ellipsis = require("mlellipsis"), - lazyLoad = require("lazyload"); - -var $intro = $('#intro'), - $imt = $('#intro-more-txt'), - $infosContainer = $('#related-infos-container'); - -var info = require("js/guang/info"); - -var tip = require("js/plugin/tip"); - -var brandId = $('#brand-info').data('id'); - -var jumpToApp = $('#jump-to-app').val(); - -var mIntro, aIntro; - -var moreHammer, likeHammer, $goodName, $title; - -require("js/plugin/wx-share"); - -ellipsis.init(); - -//Init LazyLoad -lazyLoad($('img.lazy')); - -if ($('.good-detail-text .name').length > 0) { - $('.good-detail-text .name').each(function() { - $goodName = $(this); - $title = $goodName.find('a'); - - $title[0].mlellipsis(2); - }); -} - -//文字介绍文字截取 -$intro[0].mlellipsis(3); - -//获取截取文字和完整文字 -setTimeout(function() { - mIntro = $intro.text(); - aIntro = $intro.attr('title'); -}); - -info.initInfosEvt($infosContainer); - -//文字介绍收起与展开 -moreHammer = new Hammer(document.getElementById('more-intro-click-range')); -moreHammer.on('tap', function(e) { - var $this = $imt.parent(); - - $this.toggleClass('spread'); - - if ($this.hasClass('spread')) { - - //显示 - $intro.text(aIntro); - $imt.text('收起'); - } else { - - //隐藏 - $intro.text(mIntro); - $imt.text('more'); - - $(window).scrollTop(0, 400); //滑动到顶部 - } - - e.preventDefault(); //防止收缩后误点到商品产生跳转 -}); - -//品牌收藏 -likeHammer = new Hammer(document.getElementById('brand-like')); -likeHammer.on('tap', function(e) { - var opt = 'ok', - $this = $(e.target); - - - //jumpToApp = 1表示APP未登录的情况,此时不发送ajax请求而由a链接直接跳转APP - if (jumpToApp === '1') { - return; - } - - e.preventDefault(); - - if ($this.hasClass('like')) { - opt = 'cancel'; - } - - $.ajax({ - type: 'POST', - url: '/guang/opt/favoriteBrand', - data: { - id: brandId, - opt: opt - }, - success: function(data) { - if (data.code === 200) { - $this.toggleClass('like'); - tip.show(data.message); - } else if (data.code === 400 || data.code === 412) { - location.href = data.data; //未登录跳转登录页面 - } else { - tip.show(data.message); - } + searching = false; + delete opt.isTab; }, error: function() { tip.show('网络断开连接了~'); + searching = false; + delete opt.isTab; } }); -}); -}); -define("js/guang/info", ["jquery","hammer","mlellipsis","lazyload","swiper","index"], function(require, exports, module){ -/** - * 资讯相关API - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/10 - */ - -var $ = require("jquery"), - Hammer = require("hammer"), - ellipsis = require("mlellipsis"), - lazyLoad = require("lazyload"), - Swiper = require("swiper"); - -var tip = require("js/plugin/tip"); -var loading = require("js/plugin/loading"); - -var $loadMoreInfo = $('#load-more-info'); -var $loading = $(''), - $noMore = $(''), - $swiper = $(''); - -var searching = false; -var mySwiper = {}; - -var isLoading = false; - -ellipsis.init(); - -if ($loadMoreInfo.length > 0) { - $loading = $loadMoreInfo.children('.loading'); - $noMore = $loadMoreInfo.children('.no-more'); -} - -// 获取url中的参数 -function getUrlParam(name) { - - // 构造一个含有目标参数的正则表达式对象 - var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)'); - - // 匹配目标参数 - var r = window.location.search.substr(1).match(reg); - - // 返回参数值 - if (r != null) { - return r[2]; - } - - return null; -} - -//初始化swiper -function initSwiper(typeId) { - if (typeof typeId === undefined) { - return; - } - mySwiper[typeId] = new Swiper('.swiper-cont-' + typeId, { - lazyLoading: true, - wrapperClass: 'swiper-wrap-' + typeId, - pagination: '.swiper-pagi-' + typeId, - autoplay: 3000 - }); } - -/** - * 设置指定资讯项的Lazyload和文字截取 - * @params $infos 资讯项 - */ -function setLazyLoadAndMellipsis($infos) { - lazyLoad($infos.find('img.lazy')); - - $infos.each(function() { - var $this = $(this), - $title = $this.find('.info-title'), - $text = $this.find('.info-text'); - - $title[0].mlellipsis(2); - $text[0].mlellipsis(2); - }); -} - -/** - * 初始化资讯列表事件绑定 - * @params $container 逛资讯列表容器 - */ -function initInfosEvt($container) { - var cHammer; - - if (typeof $container === 'undefined') { - return; - } - if (typeof $container[0] === 'undefined') { - return; - } - cHammer = new Hammer($container[0]); - - //点赞或者收藏事件 - cHammer.on('tap', function(e) { - var $this = $(e.target), - opt = 'ok', - $btn, - $info, - yhChannel; - - //e.preventDefault(); - - //点赞 - $btn = $this.closest('.like-btn'); - if ($btn.length > 0 && !isLoading) { - e.preventDefault(); - if ($btn.hasClass('like')) { - opt = 'cancel'; - } - - $info = $this.closest('.guang-info'); - - isLoading = true; - - $.ajax({ - type: 'POST', - url: '/guang/opt/praiseArticle', - data: { - id: $info.data('id'), - opt: opt - }, - success: function(data) { - var code = data.code; - - - if (code === 200) { - $btn.next('.like-count').text(data.data); - - //切换点赞状态 - $btn.toggleClass('like'); - } - }, - error: function() { - tip.show('网络断开连接了~'); - }, - complete: function() { - isLoading = false; - } - }); - return; - } - - //APP收藏 - $btn = $this.closest('.collect-btn'); - if ($btn.length > 0) { - e.preventDefault(); - if ($btn.hasClass('collected')) { - opt = 'cancel'; - } - - $info = $this.closest('.guang-info'); - - if (getUrlParam('yh_channel')) { - yhChannel = getUrlParam('yh_channel'); - } - - $.ajax({ - type: 'POST', - url: '/guang/opt/collectArticle', - data: { - id: $info.data('id'), - opt: opt, - yh_channel: yhChannel, - uid: getUrlParam('uid') - }, - success: function(data) { - if (data.code && data.code === 200) { - - //切换收藏状态 - $btn.toggleClass('collected'); - } - }, - error: function() { - tip.show('网络断开连接了~'); - } - }); - } - }); - - setLazyLoadAndMellipsis($container.find('.guang-info')); -} - -/** - * 资讯LoadMore - * @param $container 资讯容器 jqyeryObject - * @param opt 请求参数 - * @param url[可选], 扩展请求的url而不使用默认值 - */ -function loadMore($container, opt, url) { - var num; - - if (searching) { - return; - } - - if (opt.end) { - return; - } - - if (opt.page === 1) { - - //显示loading - loading.showLoadingMask(); - } - - num = $container.find('.guang-info').length; - searching = true; - $.ajax({ - type: 'GET', - url: url ? url : '/guang/index/page',//对于指定url的使用指定url(存在不同的控制器) - data: opt, - success: function(data) { - var $newItems; - - if (data === ' ') { - opt.end = true; - searching = false; - - // - $loading.addClass('hide'); - $noMore.removeClass('hide'); - - return; - } - - $container.append(data); - - $swiper = $container.find('.swiper-container'); - if ($swiper.length) { - $swiper.addClass('swiper-cont-' + opt.type); - $swiper.children('.swiper-wrapper').addClass('swiper-wrap-' + opt.type); - $swiper.children('.swiper-pagination').addClass('swiper-pagi-' + opt.type); - initSwiper(opt.type); - } - - if (num > 0) { - $newItems = $container.find('.guang-info:gt(' + (num - 1) + ')'); - } else { - $newItems = $container.find('.guang-info'); - } - - setLazyLoadAndMellipsis($newItems); - - if (opt.page === 1) { - loading.hideLoadingMask(); - - $loading.removeClass('hide');//显示空屏加载时hide的隐藏 - - window.rePosFooter();//插入内容后重新计算底部位置 - } - - opt.page++; - - searching = false; - delete opt.isTab; - }, - error: function() { - tip.show('网络断开连接了~'); - searching = false; - delete opt.isTab; - } - }); -} - - -exports.mySwiper = mySwiper; -exports.initSwiper = initSwiper; -exports.initInfosEvt = initInfosEvt; -exports.setLazyLoadAndMellipsis = setLazyLoadAndMellipsis; -exports.loadMore = loadMore; - -}); -define("js/plugin/tip", ["jquery"], function(require, exports, module){ -/** - * 弹框提示 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/10 - */ -var $ = require("jquery"); - -var $tip, tipItime; - -/** - * 初始化提示框 - */ -(function() { - var tipHtml = '<div id="yoho-tip" class="yoho-tip"></div>'; - - //插入提示HTML - $('.yoho-page').append(tipHtml); - - $tip = $('#yoho-tip'); - $tip.on('touchend', function() { - $tip.hide(); - - //清除Timeout - clearTimeout(tipItime); - }); -}()); - -/** - * 显示提示 - */ -function show(con, dur) { - var content, duration; - - if (typeof con === 'undefined') { - return; - } - - content = con.toString(); - duration = (dur && dur > 0) ? dur : 2000; - - $tip.text(content).show(); - - tipItime = setTimeout(function() { - if ($tip.css('display') === 'block') { - $tip.hide(); - } - }, duration); -} - -exports.show = show; -}); -define("js/plugin/wx-share", ["jquery"], function(require, exports, module){ -/** - * 微信分享 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/30 - */ - -var $ = require("jquery"); - -module.exports = function() { - var _weChatInterface = '/life/getSignPackage'; - $.getJSON(_weChatInterface + '?pageurl=' + - encodeURIComponent(location.href.split('#')[0]) + '&callback=?', function (json) { - var _appId, _timestamp, _nonceStr, _signature; - - if (!wx) { - return; - } - - if (json !== undefined && json !== '') { - _appId = json.appId.toString(); - _timestamp = json.timestamp; - _nonceStr = json.nonceStr.toString(); - _signature = json.signature.toString(); - - wx.config({ - debug: false, - appId: _appId, - timestamp: _timestamp, - nonceStr: _nonceStr, - signature: _signature, - jsApiList: [ - 'checkJsApi', - 'onMenuShareTimeline', - 'onMenuShareAppMessage', - 'onMenuShareQQ', - 'onMenuShareWeibo', - 'hideMenuItems', - 'showMenuItems', - 'hideAllNonBaseMenuItem', - 'showAllNonBaseMenuItem', - 'translateVoice', - 'startRecord', - 'stopRecord', - 'onRecordEnd', - 'playVoice', - 'pauseVoice', - 'stopVoice', - 'uploadVoice', - 'downloadVoice', - 'chooseImage', - 'previewImage', - 'uploadImage', - 'downloadImage', - 'getNetworkType', - 'openLocation', - 'getLocation', - 'hideOptionMenu', - 'showOptionMenu', - 'closeWindow', - 'scanQRCode', - 'chooseWXPay', - 'openProductSpecificView', - 'addCard', - 'chooseCard', - 'openCard' - ] - }); - } - }); - - wx.ready(function () { - var shareTitle = $('#shareTitle').val(); - var shareImg = $('#shareImg').val(); - var shareDesc = $('#shareDesc').val(); - var shareLink = $('#shareLink').val(); - var shareData = { - title: shareTitle, - desc: shareDesc, - imgUrl: shareImg, - link: shareLink - }; - - wx.onMenuShareAppMessage(shareData); - wx.onMenuShareTimeline(shareData); - wx.onMenuShareQQ(shareData); - wx.onMenuShareWeibo(shareData); - wx.onMenuShareQZone(shareData); - }); -}; - -}); -define("js/guang/home", ["jquery","hammer","mlellipsis","lazyload","swiper","index"], function(require, exports, module){ -/** - * 逛首页 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/10 - */ - -var $ = require("jquery"); - -var info = require("js/guang/info"), - loadMore = info.loadMore; - -var $loadMoreInfo = $('#load-more-info'); -var $loading = $(''), - $noMore = $(''); - -var winH = $(window).height(); - -var $infoList = $('#info-list'), - $infos = $infoList.children('.info-list'), - $nav = $('#guang-nav'), - $curNav = $nav.children('.focus'), - curType = $curNav.data('type'); - -var state = {}; - -if ($loadMoreInfo.length > 0) { - $loading = $loadMoreInfo.children('.loading'); - $noMore = $loadMoreInfo.children('.no-more'); -} - -info.initSwiper(curType); - -info.initInfosEvt($infoList); - -//初始化各Nav下资讯加载的状态 -(function() { - var gender = $('#gender').val(); - - $nav.children('.guang-nav-item').each(function() { - var type = $(this).data('type'), - focus = $(this).hasClass('focus'); - - state[type] = { - page: focus ? 2 : 1, - gender: gender, - type: type, - end: false - }; - }); -}()); -$nav.bind('contextmenu', function(e) { - return false; -}); -$nav.on('touchend touchcancel', function(e) { - - var $this = $(e.target).closest('.guang-nav-item'), - $content, - index; - - if ($this.hasClass('focus')) { - return; - } - - - index = $this.index(); - - $this.addClass('focus'); - $curNav.removeClass('focus'); - - $content = $infos.eq(index); - - $curNav = $this; - curType = $this.data('type'); - - //当未加载数据时去请求数据 - if (state[curType].page === 1) { - - //无数据时隐藏正在加载和没有更多字样 - $loading.addClass('hide'); - $noMore.addClass('hide'); - - state[curType].isTab = true; - loadMore($content, state[curType]); - } else { - - //重置当前Tab的load-more - if (state[curType].end) { - $loading.addClass('hide'); - $noMore.removeClass('hide'); - } else { - $loading.removeClass('hide'); - $noMore.addClass('hide'); - } - } - - $infos.not('.hide').addClass('hide'); - $content.removeClass('hide'); - - if (state[curType].page === 1) { - window.rePosFooter();//进入空内容时重新定位footer位置 - } -}); - -function scrollHandler() { - var $c = $infos.not('.hide'); - - if ($(window).scrollTop() + winH >= $(document).height() - 0.25 * $c.height()) { - loadMore($c, state[curType]); - } -} - -//srcoll to load more -$(document).scroll(function() { - window.requestAnimationFrame(scrollHandler); -}); - -$nav.on('touchstart', function(e) { - var target = e.target || e.srcElement; - - target.className = 'bytouch ' + target.className; -}).on('touchend touchcancel', function() { - $nav.find('li').removeClass('bytouch'); -}); -}); -define("js/guang/list", ["jquery","hammer","mlellipsis","lazyload","swiper","index"], function(require, exports, module){ -/** - * 列表页,编辑页 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/10 - */ - -var $ = require("jquery"); - -var info = require("js/guang/info"), - loadMore = info.loadMore; - -var winH = $(window).height(); - -var $author = $('#author-infos'); -var $tag = $('#tag'); -var $gender = $('#gender'); -var $isApp = $('#isApp'); - -var setting = { - page: 2, - end: false -}; - -var $infos = $('#info-list'); - -info.initInfosEvt($infos); - -if ($author.length > 0) { - $.extend(setting, { - authorId: $author.data('id'), - isApp: $isApp.val() - }); -} - -if ($tag.length > 0) { - $.extend(setting, { - tag: $tag.val(), - gender: $gender.val(), - isApp: $isApp.val() - }); -} - -function scrollHandler() { - if ($(window).scrollTop() + winH >= $(document).height() - 0.25 * $infos.height()) { - loadMore($infos, setting); - } -} - -//srcoll to load more -$(window).scroll(function() { - window.requestAnimationFrame(scrollHandler); -}); - -}); -define("js/guang/detail", ["jquery","mlellipsis","lazyload","iscroll-probe"], function(require, exports, module){ -/** - * 逛详情页 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/13 - */ - -var $ = require("jquery"), - ellipsis = require("mlellipsis"), - lazyLoad = require("lazyload"), - IScroll = require("iscroll-probe"); - -var $authorIntro = $('.author .intro'); - -var pageInIscroll = false; - -var hasCollocationBlock = $('.collocation-block').length > 0 ? true : false; - -//collocation block variable -var thumbWidth = 0, - $fixedThumbContainer = $(''), - $coBlock, $thumbContainer, $thumbs, $prods, - scrollToEl; - -var scrollToEl = document.querySelector('#wrapper .collocation-block'); - -var winW = $(window).width(); - -var myScroll; - -//require('../plugin/wx-share')(); - -/** - * 计算搭配的箭头的位置 - * @param $curPos 当前focus的搭配项 - */ -function posCollocationArrow($curCo) { - var left = $curCo.offset().left, - bgPos = -winW + left + (thumbWidth / 2) + 'px'; - - $thumbContainer.css({ - backgroundPosition: bgPos + ' bottom' - }); - - if (pageInIscroll) { - $fixedThumbContainer.css({ - backgroundPosition: bgPos + ' bottom' - }); - } -} - -//搭配thumb的touch事件句柄 -function thumbTouchEvt(e) { - var $curCo = $(e.currentTarget), - index = $curCo.index(), - $brother, $brotherCo, - $curProds; - - if ($curCo.hasClass('focus')) { - return; - } - - $thumbs.filter('.focus').removeClass('focus'); - - if (pageInIscroll) { - if ($curCo.closest('.fixed-thumb-container').length > 0) { - $brother = $thumbContainer; - } else { - $brother = $fixedThumbContainer; - } - - $brotherCo = $brother.find('.thumb').eq(index); - $fixedThumbContainer.find('.thumb.focus').removeClass('focus'); - $brotherCo.addClass('focus'); - } - - $curCo.addClass('focus'); - - //定位arrow - posCollocationArrow($curCo); - - $prods.not('.hide').addClass('hide'); - $curProds = $prods.eq(index); - $curProds.removeClass('hide'); - - // - lazyLoad($curProds.find('.lazy')); - - if (pageInIscroll) { - if (myScroll) { - myScroll.scrollToElement(scrollToEl, 400); - } - } else { - $('body').animate({ - scrollTop: $coBlock.offset().top - }, 400); - } - - myScroll && myScroll.refresh(); -} - -// 初始化iscroll -function initIscroll() { - var $scroller = $('#scroller'), - $yohoHeader = $('.yoho-header'); - - var hH = 0, - winH, tcH, cbH, cbTop, fixedThumbDom; - - //考虑通用头部的影响:对offset().top以及winH做对应偏移 - if ($yohoHeader.length > 0) { - hH = $yohoHeader.outerHeight(); - } - - myScroll = new IScroll('#wrapper', { - probeType: 3, - mouseWheel: true, - click: true - }); - - document.addEventListener('touchmove', function(e) { - e.preventDefault(); - }, false); - - if (!hasCollocationBlock) { - myScroll.on('scroll', function() { - $scroller.trigger('scroll'); - }); - return; - } - - winH = $(window).height() - hH; - fixedThumbDom = $fixedThumbContainer[0]; - - tcH = $thumbContainer.outerHeight(); - cbH = $coBlock.outerHeight(); - cbTop = $coBlock.offset().top - hH; - - myScroll.on('scroll', function() { - var sTop = -this.y; - var classList = fixedThumbDom.className; - - if (sTop <= cbTop - winH + tcH) { - if (classList.indexOf('fixed-bottom') === -1) { - $fixedThumbContainer - .addClass('fixed-bottom') - .removeClass('hide'); - } - } else if (sTop <= cbTop) { - if (classList.indexOf('hide') === -1) { - $fixedThumbContainer - .addClass('hide') - .removeClass('fixed-bottom fixed-top'); - } - } else if (sTop <= cbTop + cbH - tcH) { - if (classList.indexOf('fixed-top') === -1) { - $fixedThumbContainer - .addClass('fixed-top') - .removeClass('hide absolute') - .css('top', ''); - } - } else if (sTop <= cbTop + cbH) { - if (classList.indexOf('absolute') === -1) { - $fixedThumbContainer - .addClass('absolute') - .removeClass('fixed-top hide'); - } - fixedThumbDom.style.top = cbTop + hH + cbH - tcH - sTop + 'px'; - } else if (sTop > cbTop + cbH) { - if (classList.indexOf('hide') === -1) { - $fixedThumbContainer - .addClass('hide') - .removeClass('absolute'); - } - } - $scroller.trigger('scroll'); - }); -} - -//window onload 后重新refresh iscroll -window.onload = function() { - myScroll && myScroll.refresh(); -}; - -// 图片加载完成之后重新 refresh iscroll -$('img').on('load', function() { - myScroll && myScroll.refresh(); -}); - -//初始化页面,包括是否使用iscorll初始化页面 -//接口暴露在HTML中,使用压缩名 -exports.i = function(useIscroll) { - var isIphone = navigator.userAgent.indexOf('iPhone') > 0 ? true : false; - var $this, $title; - - pageInIscroll = isIphone && useIscroll; - - ellipsis.init(); - - if ($('.good-detail-text .name').length > 0) { - $('.good-detail-text .name').each(function() { - $this = $(this); - $title = $this.find('a'); - - $title[0].mlellipsis(2); - }); - } - - lazyLoad($('.lazy')); - - //title mlellipsis - $('.info-list .title, .one-good .reco-name').each(function() { - this.mlellipsis(2); - }); - - //offset.left约等于marginLeft的值则表示介绍被换行,则清除intro的paddingTop让其更靠近头像和作者名 - if ($authorIntro.offset() && (parseInt($authorIntro.offset().left, 10) === - parseInt($authorIntro.css('margin-left'), 10))) { - $authorIntro.css('padding-top', 0); - } - - if (pageInIscroll) { - if ($('.yoho-header').length > 0) { - $('#wrapper').addClass('ios has-head'); - } else { - $('#wrapper').addClass('ios'); - } - } - - //有搭配模块,iphone使用iscroll初始化滚动并有固定的搭配栏,其他的没有 - if (hasCollocationBlock) { - $coBlock = $('.collocation-block'); - $thumbContainer = $coBlock.children('.thumb-container'); - $thumbs = $thumbContainer.find('li'); - $prods = $coBlock.find('.prod'); - - thumbWidth = $thumbs.width(); - - if (pageInIscroll) { - $fixedThumbContainer = $('#wrapper') - .after($thumbContainer.clone().addClass('fixed-thumb-container fixed-bottom')) - .next('.thumb-container'); - - //load img of fixed thumb container - lazyLoad($fixedThumbContainer.find('.lazy'), { - event: 'sporty' - }); - } - - //Init Arrow Position - posCollocationArrow($thumbs.filter('.focus')); - - $thumbContainer.delegate('.thumb', 'touchend', thumbTouchEvt); - - if (pageInIscroll) { - $fixedThumbContainer.delegate('.thumb', 'touchend', thumbTouchEvt); - - } - } - - if (pageInIscroll) { - initIscroll(); - } -}; - -$(".focus-btn").on("touchstart", function() { - var $e = $(this).siblings('textarea'); //对象是content - - $e.select(); //选择对象 - document.execCommand("Copy"); //执行浏览器复制命令 - - $('.weixin-pop-up').removeClass('hide'); -}); - -$('.know').on('touchstart', function() { - $('.weixin-pop-up').addClass('hide'); -}) -}); -define("js/guang/star-classroom", ["jquery","swiper","lazyload","index"], function(require, exports, module){ -/** - * 星潮教室-首页 - * @author: wsl<shuiling.wang@yoho.cn> - * @date: 2016/4/11 - */ - -var $ = require("jquery"), - Swiper = require("swiper"), - calendar = require("js/guang/calendar"), - lazyLoad = require("lazyload"), - tip = require("js/plugin/tip"); - -var bannerSwiper, collocationSwiper; - -lazyLoad($('img.lazy')); - -$('body').addClass('star-class-body'); - -function setAvatar($userAvatar) { - var myImage = new Image(), - avatar; - - // 部分老用户没有头像,显示默认头像 - avatar = $userAvatar.data('avatar'); - myImage.src = avatar; - myImage.onload = function() { - $userAvatar.css('background-image', 'url(' + avatar + ')'); - }; -} - -// 日历弹出框显示及粉丝排行榜数据组装 -function intimacyData(data) { - var $ul = $('.fan-charts-cont'), - $myIntimacy = $('.my-intimacy'), - $increased = $('.increased'), - signDay = data.signDay.split(','), - html = '', - style = '', - nowDate = new Date(), - nowYear = nowDate.getFullYear(), - nowMonth = nowDate.getMonth(), - nowDaysNub = calendar.calculateMonthDays(nowMonth, nowYear); - - var i, j; - - if (signDay.length > 0) { - for (i = 0; i < nowDaysNub; i++) { - for (j = 0; j < signDay.length; j++) { - if (i === parseInt(signDay[j])) { - $('.now-days').eq(i - 1).addClass('sign-item'); - } - } - } - } - - for (i = 0; i < data.fanCharts.length; i++) { - if (i === 0) { - style = 'font-bold'; - } else { - style = ''; - } - - html += '<li>' + - '<i class="rank-ico">' + data.fanCharts[i].num + '</i>' + - '<span data-avatar="' + data.fanCharts[i].img + '" class="rank-avatar"></span>' + - '<span class="fans-name">' + data.fanCharts[i].name + '</span>' + - '<div class="fans-intimacy">亲密度<span class="' + style + '">' + - data.fanCharts[i].intimacyNum + '</span></div>' + - '</li>'; - } - - $ul.html(html); - - $('.fan-charts-cont .rank-avatar').each(function(key, item) { - if ($(item).attr('data-avatar') !== '') { - setAvatar($(item)); - } - }); - - $myIntimacy.find('span').html(data.todayIntimacy); - $increased.find('span').html(data.todayIntimacy); - - if (data.intimacyNum === 0) { - $('.my-intimacy').hide(); - $('.increased').show(); - } else { - $('.my-intimacy').show(); - $('.increased').hide(); - } - - $('.pop-intimacy').css({ - zIndex: '10' - }).show(); - $('.classroom-mask').css({ - zIndex: '9' - }).show(); - $('body').css({ - overflow: 'hidden' - }); -} - -//当前字符串字节数统计 -function bytesCountAction(code, bytesCount) { - if (/^[\u0000-\u00ff]$/.test(code)) { - bytesCount += 1; - } else { - bytesCount += 2; - } - - return bytesCount; -} - -// 亲密度用户名字字数限制 -function limitUsername() { - var $name = $('.home-floor-sign').find('.user-name'), - nameVal = $name.html(), - nameSize = nameVal.length, - bytesCount = 0, - newName = ''; - - var i, code; - - for (i = 0; i < nameSize; i++) { - code = nameVal.charAt(i); - bytesCount = bytesCountAction(code, bytesCount); - - if (bytesCount < 5) { - newName += code; - } - } - - if (bytesCount > 8) { - newName += '..' + nameVal.charAt(nameSize - 1); - } else { - newName = nameVal; - } - - $name.html(newName); -} - -if ($('.banner-swiper').find('li').length > 1) { - bannerSwiper = new Swiper('.banner-swiper', { - lazyLoading: true, - lazyLoadingInPrevNext: true, - loop: true, - autoplay: 3000, - autoplayDisableOnInteraction: false, - paginationClickable: true, - slideElement: 'li', - pagination: '.banner-top .pagination-inner' - }); -} - -if ($('.collocation-swiper').find('li').length > 1) { - collocationSwiper = new Swiper('.collocation-swiper', { - lazyLoading: true, - lazyLoadingInPrevNext: true, - lazyLoadingOnTransitionStart: true, - grabCursor: true, - slidesPerView: 'auto', - slideElement: 'li', - watchSlidesVisibility: true - }); -} - -// 星鲜事显示点赞人数的区域 -if ($('.artice-zan').find('li').length > 0) { - $('.zan-more').show(); -} - -if ($('.home-floor-sign').length > 0) { - limitUsername(); -} - -// 星鲜事点赞事件 -$(document).on('touchstart', '.like-ico', function(event) { - var $that = $(this), - addString = ''; - - event.stopPropagation(); - - $.ajax({ - type: 'POST', - url: '/guang/starclass/setPraise', - data: { - articleId: $that.parents('li').attr('articleId') - }, - success: function(data) { - var code = data.code; - - if (code === 200) { - if ($that.hasClass('like')) { - $that.removeClass('like'); - } else { - $that.addClass('like'); - } - - if (data.num > 99) { - addString = '+'; - } else { - addString = ''; - } - - $that.parent().find('.zan-more').html(data.num + addString); - } - }, - error: function() { - tip.show('网络断开连接了~'); - } - }); -}); - -// 增加亲密度请求 -$('.add-intimacy').on('touchstart', function(event) { - event.stopPropagation(); - event.preventDefault(); - - $.ajax({ - type: 'GET', - url: '/guang/starclass/sign', - success: function(data) { - var code = data.code; - - if (code === 200) { - intimacyData(data.data); - } - - if (code === 201) { - if ($('#intimacy-link').length <= 0) { - $('body').append('<a href=\'' + data.data + '\' style="display:none;" id="intimacy-link">' + - '<span class="intimacy-link"></span></a>'); - } - - $('.intimacy-link').click(); - } - }, - error: function() { - tip.show('网络断开连接了~'); - } - }); -}); - -// 关闭日历弹出窗事件 -$('.pop-intimacy .pop-close, .classroom-mask').on('click', function() { - history.go(0); -}); - - -if ($('.user-head').attr('data-avatar') !== '') { - setAvatar($('.user-head')); -} - -}); -define("js/guang/calendar", ["jquery"], function(require, exports, module){ -/** - * 星潮教室 亲密度·日期 - * @author: wsl<shuiling.wang@yoho.cn> - * @date: 2016/4/11 - */ - -var $ = require("jquery"); - -var CalendarHandler = { - currentYear: 0, - currentMonth: 0, - initialize: function() { - var $calendarItem; - - $calendarItem = this.createCalendar(0, 0); - $('#Container').append($calendarItem); - }, - isRuiYear: function(aDate) { - return 0 === aDate % 4 && (aDate % 100 !== 0 || aDate % 400 === 0); - }, - calculateWeek: function(y, m, d) { - var arr, vDay, week; - - arr = '7123456'.split(''); - vDay = parseInt(d, 10); - week = arr[new Date(y, m - 1, vDay).getDay()]; - return week; - }, - calculateMonthDays: function(m, y) { - var mDay = 0; - var isRn; - - if (m === 0 || m === 1 || m === 3 || m === 5 || m === 7 || m === 8 || m === 10 || m === 12) { - mDay = 31; - } else { - if (m === 2) { - - // 判断是否为芮年 - isRn = this.isRuiYear(y); - if (isRn === true) { - mDay = 29; - } else { - mDay = 28; - } - } else { - mDay = 30; - } - } - return mDay; - }, - createCalendar: function(y, m) { - var $dayItem, nowDate, nowYear, nowMonth, nowDaysNub, nowWeek, lastMonthDaysNub, i, hasCreateDaysNub; - - var months = ['January', 'February', 'March', 'April', 'May', - 'June', 'July', 'August', 'September', 'October', 'November', 'December']; - - // var signDay = $('.sign-day').val(); - - $dayItem = $('<div class="day-item"></div>'); - - // 获取当前月份的天数 - nowDate = new Date(); - - nowYear = y === 0 ? nowDate.getFullYear() : y; - this.currentYear = nowYear; - nowMonth = m === 0 ? nowDate.getMonth() + 1 : m; - this.currentMonth = nowMonth; - nowDaysNub = this.calculateMonthDays(nowMonth, nowYear); - - window.nowDaysNub = nowDaysNub; - - $('.cur-year').html(nowYear); - $('.cur-month').html(months[nowMonth - 1]); - - // 获取当月第一天是星期几 - nowWeek = parseInt(this.calculateWeek(nowYear, nowMonth, 1)); - - // 获取上个月的天数 - lastMonthDaysNub = this.calculateMonthDays((nowMonth - 1), nowYear); - - if (nowWeek !== 0) { - - // 生成上月剩下的日期 - for (i = (lastMonthDaysNub - nowWeek); i < lastMonthDaysNub; i++) { - $dayItem.append('<div class="item last-item">' + (i + 1) + '</div>'); - } - } - - // 生成当月的日期 - for (i = 1; i <= nowDaysNub; i++) { - - // if (signDay.indexOf(i) > -1) { - // $dayItem.append('<div class="item signItem">' + i + '</div>'); - // } else { - // $dayItem.append('<div class="item">' + i + '</div>'); - // } - - $dayItem.append('<div class="item now-days">' + i + '</div>'); - } - - // 获取总共已经生成的天数 - hasCreateDaysNub = nowWeek + nowDaysNub; - - // 如果小于42,往下个月推算 - if (hasCreateDaysNub < 41) { - for (i = 0; i <= (41 - hasCreateDaysNub); i++) { - $dayItem.append('<div class="item last-item">' + (i + 1) + '</div>'); - } - } - - return $dayItem; - } -}; - -$(document).ready(function() { - CalendarHandler.initialize(); -}); - -exports.calculateMonthDays = CalendarHandler.calculateMonthDays; - -}); -define("js/guang/collocation-list", ["jquery","lazyload","mlellipsis"], function(require, exports, module){ -/** - * 星潮教室-星搭配分页加载 - * @author: wsl<shuiling.wang@yoho.cn> - * @date: 2016/4/12 - */ - -var $ = require("jquery"), - tip = require("js/plugin/tip"), - loading = require("js/plugin/loading"), - lazyLoad = require("lazyload"), - ellipsis = require("mlellipsis"), - stopLoading = false; - -var page = 1; - -ellipsis.init(); - -$('body').addClass('star-class-body'); - -function massageAJAX(page) { - var $this, $title, $cont; - - loading.showLoadingMask(); - $.ajax({ - type: 'GET', - url: '/guang/starclass/ajaxCollocation', - data: { - page: page - }, - dataType: 'html', - success: function(data) { - stopLoading = false; - - if (data === ' ') { - stopLoading = true; - tip.show('没有更多内容了'); - } - - $('.collocation-list').append(data); - - // 限制标题字数 - $('.cont-area').each(function() { - $this = $(this); - $title = $this.find('.title'); - $cont = $this.find('.cont-txt'); - - $title[0].mlellipsis(2); - $cont[0].mlellipsis(2); - }); - - loading.hideLoadingMask(); - lazyLoad($('img.lazy')); - }, - error: function() { - tip.show('网络断开连接了~'); - } - }); -} - -function scrollHandler() { - if (!stopLoading && ($(window).scrollTop() + $(window).height() > $('body').height() - 100)) { - stopLoading = true; - page++; - massageAJAX(page); - } -} - -// 分享成功 -window.successShare = function() { - $.ajax({ - type: 'POST', - url: '/guang/starclass/forward', - success: function(data) { - var code = data.code; - - if (code === 200 && data.data > 0) { - tip.show('分享成功,亲密度+10'); - } - }, - error: function() { - tip.show('网络断开连接了~'); - } - }); -}; - -$(window).scroll(function() { - scrollHandler(); -}); - -if ($('.collocation-list').find('li').length === 0) { - massageAJAX(1); -} - -// 星搭配收藏请求 -$(document).on('touchstart', '.collection', function(event) { - var $that = $(this), - $icon = $that.find('.collected-ico'); - - var type; - - event.stopPropagation(); - - if ($icon.hasClass('collected')) { - type = 'del'; - } else { - type = 'fav'; - } - - - $.ajax({ - type: 'POST', - url: '/guang/starclass/setFavorite', - data: { - articleId: $that.parents('li').attr('articleId'), - type: type - }, - success: function(data) { - var code = data.code; - - if (code === 200) { - if ($icon.hasClass('collected')) { - $icon.removeClass('collected'); - } else { - $icon.addClass('collected'); - } - - } - - if (code === 201) { - if ($('#collocation-link').length <= 0) { - $('body').append('<a href=\'' + data.data + '\' style="display:none;" id="collocation-link">' + - '<span class="collocation-link"></span></a>'); - } - - $('.collocation-link').click(); - } - }, - error: function() { - tip.show('网络断开连接了~'); - } - }); -}); - -}); -define("js/guang/check-top", ["jquery"], function(require, exports, module){ -/** - * 星潮教室-top100 - * @author: wsl<shuiling.wang@yoho.cn> - * @date: 2016/4/12 - */ - -var $ = require("jquery"); - -$('body').addClass('star-class-body'); - -function setAvatar($userAvatar) { - var myImage = new Image(), - avatar; - - // 部分老用户没有头像,显示默认头像 - avatar = $userAvatar.data('avatar'); - myImage.src = avatar; - myImage.onload = function() { - $userAvatar.css('background-image', 'url(' + avatar + ')'); - }; -} - -if ($('.ranking-area li').length > 0) { - $.each($('.ranking-area li'), function(key, item) { - setAvatar($(item).find('.rank-avatar')); - }); -} - -if ($('.user-avatar').attr('data-avatar') !== '') { - setAvatar($('.user-avatar')); -} -}); -define("js/home/entry", ["jquery","swiper","lazyload","hammer","mlellipsis","index"], function(require, exports, module){ -/** - * 首页打包入口 - * @author: liangzhifeng<zhifeng.liang@yoho.cn> - * @date: 2015/10/12 - */ - -require("js/home/home"); -require("js/home/maybe-like"); -}); -define("js/home/home", ["jquery","swiper","lazyload","hammer","mlellipsis","index"], function(require, exports, module){ -/** - * 首页 - * @author: liangzhifeng<zhifeng.liang@yoho.cn> - * @date: 2015/10/12 - */ -var $ = require("jquery"), - Swiper = require("swiper"), - lazyLoad = require("lazyload"), - noticeScroll = require("js/plugin/notice-scroll"), - $mobileWrap = $('.mobile-wrap'), - $overlay = $('.overlay'), - $sideNav = $('.side-nav'), - $subNav = $('.sub-nav'), - bannerSwiper, - recommendSwiper, - hotBrandsSwiper, - trendTopicSwiper, - goodsSwiper, - freshSwiper; - -var start = 0, - swiperClass, - $logotrans = $('.home-header .logo'), - openSideNav = false, - isen = true; - -var attachFastClick = require("js/home/fastclick"); -attachFastClick(document.body); - -lazyLoad($('img.lazy')); -noticeScroll('.notice', $('.notice').data('time') * 1000); - -$('.nav-btn').on('touchstart', function() { - $sideNav.css('pointer-events', 'none'); - $mobileWrap.addClass('menu-open'); - $overlay.show().css('opacity', 0.3); - $sideNav.addClass('on'); - openSideNav = true; - - setTimeout(function() { - $sideNav.css('pointer-events', 'auto'); - }, 400); - - return false; -}); - -function hideSideBar(){ - openSideNav = false; - if ($mobileWrap.hasClass('menu-open')) { - $mobileWrap.removeClass('menu-open'); - $overlay.hide(); - $('.sub-nav').removeClass('show'); - $sideNav.removeClass('on'); - } -} - -$overlay.on('touchstart', function() { - hideSideBar(); - return false; -}); - -$sideNav.on('touchmove scroll', function() { - return false; -}); - -// 点击一级导航,弹出二级导航 -$sideNav.on('touchend', 'li', function(e) { - if ($(this).find('.sub-nav').size() > 0) { - $('.sub-nav').removeClass('show'); - $(this).find('.sub-nav').addClass('show'); - $(this).find('.highlight').removeClass('highlight'); - } - - if (e.target.pathname === location.pathname) { - hideSideBar(); - return false; - } -}); - -// 返回一级导航,收起二级导航 -$subNav.each(function() { - $(this).find('li').eq(0).on('click', function() { - $('.sub-nav').removeClass('show'); - return false; - }); -}).on('touchstart', function(e) { - if (e.currentTarget !== e.target) { - $subNav.find('li').removeClass('current'); - } -}); - -// 侧边栏点击背景色变化 -function highlight($elem) { - $elem.find('li').on('touchstart', function() { - $elem.find('.highlight').removeClass('highlight'); - $(this).addClass('highlight'); - }).on('touchend touchcancel', function() { - $(this).removeClass('highlight'); - }); -} -highlight($sideNav); -highlight($subNav); - - -// 头部banner轮播 -if ($('.banner-swiper').find('li').size() > 1) { - bannerSwiper = new Swiper('.banner-swiper', { - lazyLoading: true, - lazyLoadingInPrevNext: true, - loop: true, - autoplay: 3000, - autoplayDisableOnInteraction: false, - paginationClickable: true, - slideElement: 'li', - pagination: '.banner-top .pagination-inner' - }); -} - -// 热门品牌滑动 -hotBrandsSwiper = new Swiper('.brands-swiper', { - grabCursor: true, - slidesPerView: 'auto', - wrapperClass: 'brands-list', - slideElement: 'li' -}); - -// 推荐搭配滑动 -recommendSwiper = new Swiper('.recommend-swiper', { - grabCursor: true, - slidesPerView: 'auto', - wrapperClass: 'recommend-list', - slideElement: 'li' -}); - -// 潮品话题轮播 -if ($('.trend-topic-swiper').find('li').size() > 1) { - trendTopicSwiper = new Swiper('.trend-topic-swiper', { - loop: true, - autoplay: 3000, - autoplayDisableOnInteraction: false, - paginationClickable: true, - slideElement: 'li', - pagination: '.trend-topic-content .pagination-inner' - }); -} - -// 新人专享轮播 -if ($('.fresh-list-swiper').find('li').size() > 1) { - freshSwiper = new Swiper('.fresh-list-swiper', { - lazyLoading: true, - lazyLoadingInPrevNext: true, - grabCursor: true, - slidesPerView: 'auto', - slideElement: 'li', - watchSlidesVisibility: true - }); -} - -// 潮流上装/经典裤装等轮播 -$('.category-swiper').each(function(i, index) { - swiperClass = 'category-swiper' + i; - $(this).addClass(swiperClass); - if ($('.' + swiperClass).find('.swiper-slide').size() > 1) { - goodsSwiper = new Swiper('.' + swiperClass, { - loop: true, - autoplay: 3000, - autoplayDisableOnInteraction: false, - paginationClickable: true, - slideElement: 'li', - pagination: '.' + swiperClass + ' .pagination-inner' - }); - } -}); - -// logo动画 -function tsAnimate() { - start = start + 10; - $logotrans.css({ - transform: 'rotateX(' + start + 'deg)', - '-webkit-transform': 'rotateX(' + start + 'deg)', - '-moz-transform': 'rotateX(' + start + 'deg)' - }); - if (start / 90 % 2 === 1) { - if (isen) { - $logotrans.addClass('animate'); - isen = false; - } else { - $logotrans.removeClass('animate'); - isen = true; - } - } - if (start / 90 % 2 === 0 && start % 360 !== 0) { - window.setTimeout(tsAnimate, 3000); - } else { - if (start % 360 === 0) { - window.setTimeout(tsAnimate, 60 * 1000); - } else { - window.requestAnimationFrame(tsAnimate); - } - } -} - -setTimeout(tsAnimate, 3000); - -$('.home-header .iconfont').on('touchstart', function() { - $(this).addClass('highlight'); -}).on('touchend touchcancel', function() { - $(this).removeClass('highlight'); -}); - -// 底部留出tab 的高度 -window.reMarginFooter('.footer-tab'); - -// set cookie -exports.set = function(c) { - window.setCookie('_Channel', c, { - expires: 365, - domain: '.m.yohobuy.com' - }); -}; - -require("js/home/maybe-like")(); - -}); -define("js/plugin/notice-scroll", ["jquery"], function(require, exports, module){ -/** - * 公告栏目滚动 - * bikai kai.bi@yoho.cn - */ - -var $ = require("jquery"); - -function noticeScroll(selecter, time) { - var $notice = $(selecter), - $noticeItem = $notice.find('.notice-item'), - count = $noticeItem.length, - i = 1; - - selecter = selecter || '.notice'; - time = time || 3000; - - if (count > 1) { - setInterval(function() { - if (i >= count) { - i = 0; - } - $noticeItem.fadeOut(); - $notice.find('.item-' + i).fadeIn(); - i++; - }, time); - } -} - -module.exports = noticeScroll; - -}); -define("js/home/fastclick", [], function(require, exports, module){ -;(function () { - 'use strict'; - - /** - * @preserve FastClick: polyfill to remove click delays on browsers with touch UIs. - * - * @codingstandard ftlabs-jsv2 - * @copyright The Financial Times Limited [All Rights Reserved] - * @license MIT License (see LICENSE.txt) - */ - - /*jslint browser:true, node:true*/ - /*global define, Event, Node*/ - - - /** - * Instantiate fast-clicking listeners on the specified layer. - * - * @constructor - * @param {Element} layer The layer to listen on - * @param {Object} [options={}] The options to override the defaults - */ - function FastClick(layer, options) { - var oldOnClick; - - options = options || {}; - - /** - * Whether a click is currently being tracked. - * - * @type boolean - */ - this.trackingClick = false; - - - /** - * Timestamp for when click tracking started. - * - * @type number - */ - this.trackingClickStart = 0; - - - /** - * The element being tracked for a click. - * - * @type EventTarget - */ - this.targetElement = null; - - - /** - * X-coordinate of touch start event. - * - * @type number - */ - this.touchStartX = 0; - - - /** - * Y-coordinate of touch start event. - * - * @type number - */ - this.touchStartY = 0; - - - /** - * ID of the last touch, retrieved from Touch.identifier. - * - * @type number - */ - this.lastTouchIdentifier = 0; - - - /** - * Touchmove boundary, beyond which a click will be cancelled. - * - * @type number - */ - this.touchBoundary = options.touchBoundary || 10; - - - /** - * The FastClick layer. - * - * @type Element - */ - this.layer = layer; - - /** - * The minimum time between tap(touchstart and touchend) events - * - * @type number - */ - this.tapDelay = options.tapDelay || 200; - - /** - * The maximum time for a tap - * - * @type number - */ - this.tapTimeout = options.tapTimeout || 700; - - if (FastClick.notNeeded(layer)) { - return; - } - - // Some old versions of Android don't have Function.prototype.bind - function bind(method, context) { - return function() { return method.apply(context, arguments); }; - } - - - var methods = ['onMouse', 'onClick', 'onTouchStart', 'onTouchMove', 'onTouchEnd', 'onTouchCancel']; - var context = this; - for (var i = 0, l = methods.length; i < l; i++) { - context[methods[i]] = bind(context[methods[i]], context); - } - - // Set up event handlers as required - if (deviceIsAndroid) { - layer.addEventListener('mouseover', this.onMouse, true); - layer.addEventListener('mousedown', this.onMouse, true); - layer.addEventListener('mouseup', this.onMouse, true); - } - - layer.addEventListener('click', this.onClick, true); - layer.addEventListener('touchstart', this.onTouchStart, false); - layer.addEventListener('touchmove', this.onTouchMove, false); - layer.addEventListener('touchend', this.onTouchEnd, false); - layer.addEventListener('touchcancel', this.onTouchCancel, false); - - // Hack is required for browsers that don't support Event#stopImmediatePropagation (e.g. Android 2) - // which is how FastClick normally stops click events bubbling to callbacks registered on the FastClick - // layer when they are cancelled. - if (!Event.prototype.stopImmediatePropagation) { - layer.removeEventListener = function(type, callback, capture) { - var rmv = Node.prototype.removeEventListener; - if (type === 'click') { - rmv.call(layer, type, callback.hijacked || callback, capture); - } else { - rmv.call(layer, type, callback, capture); - } - }; - - layer.addEventListener = function(type, callback, capture) { - var adv = Node.prototype.addEventListener; - if (type === 'click') { - adv.call(layer, type, callback.hijacked || (callback.hijacked = function(event) { - if (!event.propagationStopped) { - callback(event); - } - }), capture); - } else { - adv.call(layer, type, callback, capture); - } - }; - } - - // If a handler is already declared in the element's onclick attribute, it will be fired before - // FastClick's onClick handler. Fix this by pulling out the user-defined handler function and - // adding it as listener. - if (typeof layer.onclick === 'function') { - - // Android browser on at least 3.2 requires a new reference to the function in layer.onclick - // - the old one won't work if passed to addEventListener directly. - oldOnClick = layer.onclick; - layer.addEventListener('click', function(event) { - oldOnClick(event); - }, false); - layer.onclick = null; - } - } - - /** - * Windows Phone 8.1 fakes user agent string to look like Android and iPhone. - * - * @type boolean - */ - var deviceIsWindowsPhone = navigator.userAgent.indexOf("Windows Phone") >= 0; - - /** - * Android requires exceptions. - * - * @type boolean - */ - var deviceIsAndroid = navigator.userAgent.indexOf('Android') > 0 && !deviceIsWindowsPhone; - - - /** - * iOS requires exceptions. - * - * @type boolean - */ - var deviceIsIOS = /iP(ad|hone|od)/.test(navigator.userAgent) && !deviceIsWindowsPhone; - - - /** - * iOS 4 requires an exception for select elements. - * - * @type boolean - */ - var deviceIsIOS4 = deviceIsIOS && (/OS 4_\d(_\d)?/).test(navigator.userAgent); - - - /** - * iOS 6.0-7.* requires the target element to be manually derived - * - * @type boolean - */ - var deviceIsIOSWithBadTarget = deviceIsIOS && (/OS [6-7]_\d/).test(navigator.userAgent); - - /** - * BlackBerry requires exceptions. - * - * @type boolean - */ - var deviceIsBlackBerry10 = navigator.userAgent.indexOf('BB10') > 0; - - /** - * Determine whether a given element requires a native click. - * - * @param {EventTarget|Element} target Target DOM element - * @returns {boolean} Returns true if the element needs a native click - */ - FastClick.prototype.needsClick = function(target) { - switch (target.nodeName.toLowerCase()) { - - // Don't send a synthetic click to disabled inputs (issue #62) - case 'button': - case 'select': - case 'textarea': - if (target.disabled) { - return true; - } - - break; - case 'input': - - // File inputs need real clicks on iOS 6 due to a browser bug (issue #68) - if ((deviceIsIOS && target.type === 'file') || target.disabled) { - return true; - } - - break; - case 'label': - case 'iframe': // iOS8 homescreen apps can prevent events bubbling into frames - case 'video': - return true; - } - - return (/\bneedsclick\b/).test(target.className); - }; - - - /** - * Determine whether a given element requires a call to focus to simulate click into element. - * - * @param {EventTarget|Element} target Target DOM element - * @returns {boolean} Returns true if the element requires a call to focus to simulate native click. - */ - FastClick.prototype.needsFocus = function(target) { - switch (target.nodeName.toLowerCase()) { - case 'textarea': - return true; - case 'select': - return !deviceIsAndroid; - case 'input': - switch (target.type) { - case 'button': - case 'checkbox': - case 'file': - case 'image': - case 'radio': - case 'submit': - return false; - } - - // No point in attempting to focus disabled inputs - return !target.disabled && !target.readOnly; - default: - return (/\bneedsfocus\b/).test(target.className); - } - }; - - - /** - * Send a click event to the specified element. - * - * @param {EventTarget|Element} targetElement - * @param {Event} event - */ - FastClick.prototype.sendClick = function(targetElement, event) { - var clickEvent, touch; - - // On some Android devices activeElement needs to be blurred otherwise the synthetic click will have no effect (#24) - if (document.activeElement && document.activeElement !== targetElement) { - document.activeElement.blur(); - } - - touch = event.changedTouches[0]; - - // Synthesise a click event, with an extra attribute so it can be tracked - clickEvent = document.createEvent('MouseEvents'); - clickEvent.initMouseEvent(this.determineEventType(targetElement), true, true, window, 1, touch.screenX, touch.screenY, touch.clientX, touch.clientY, false, false, false, false, 0, null); - clickEvent.forwardedTouchEvent = true; - targetElement.dispatchEvent(clickEvent); - }; - - FastClick.prototype.determineEventType = function(targetElement) { - - //Issue #159: Android Chrome Select Box does not open with a synthetic click event - if (deviceIsAndroid && targetElement.tagName.toLowerCase() === 'select') { - return 'mousedown'; - } - - return 'click'; - }; - - - /** - * @param {EventTarget|Element} targetElement - */ - FastClick.prototype.focus = function(targetElement) { - var length; - - // Issue #160: on iOS 7, some input elements (e.g. date datetime month) throw a vague TypeError on setSelectionRange. These elements don't have an integer value for the selectionStart and selectionEnd properties, but unfortunately that can't be used for detection because accessing the properties also throws a TypeError. Just check the type instead. Filed as Apple bug #15122724. - if (deviceIsIOS && targetElement.setSelectionRange && targetElement.type.indexOf('date') !== 0 && targetElement.type !== 'time' && targetElement.type !== 'month') { - length = targetElement.value.length; - targetElement.setSelectionRange(length, length); - } else { - targetElement.focus(); - } - }; - - - /** - * Check whether the given target element is a child of a scrollable layer and if so, set a flag on it. - * - * @param {EventTarget|Element} targetElement - */ - FastClick.prototype.updateScrollParent = function(targetElement) { - var scrollParent, parentElement; - - scrollParent = targetElement.fastClickScrollParent; - - // Attempt to discover whether the target element is contained within a scrollable layer. Re-check if the - // target element was moved to another parent. - if (!scrollParent || !scrollParent.contains(targetElement)) { - parentElement = targetElement; - do { - if (parentElement.scrollHeight > parentElement.offsetHeight) { - scrollParent = parentElement; - targetElement.fastClickScrollParent = parentElement; - break; - } - - parentElement = parentElement.parentElement; - } while (parentElement); - } - - // Always update the scroll top tracker if possible. - if (scrollParent) { - scrollParent.fastClickLastScrollTop = scrollParent.scrollTop; - } - }; - - - /** - * @param {EventTarget} targetElement - * @returns {Element|EventTarget} - */ - FastClick.prototype.getTargetElementFromEventTarget = function(eventTarget) { - - // On some older browsers (notably Safari on iOS 4.1 - see issue #56) the event target may be a text node. - if (eventTarget.nodeType === Node.TEXT_NODE) { - return eventTarget.parentNode; - } - - return eventTarget; - }; - - - /** - * On touch start, record the position and scroll offset. - * - * @param {Event} event - * @returns {boolean} - */ - FastClick.prototype.onTouchStart = function(event) { - var targetElement, touch, selection; - - // Ignore multiple touches, otherwise pinch-to-zoom is prevented if both fingers are on the FastClick element (issue #111). - if (event.targetTouches.length > 1) { - return true; - } - - targetElement = this.getTargetElementFromEventTarget(event.target); - touch = event.targetTouches[0]; - - if (deviceIsIOS) { - - // Only trusted events will deselect text on iOS (issue #49) - selection = window.getSelection(); - if (selection.rangeCount && !selection.isCollapsed) { - return true; - } - - if (!deviceIsIOS4) { - - // Weird things happen on iOS when an alert or confirm dialog is opened from a click event callback (issue #23): - // when the user next taps anywhere else on the page, new touchstart and touchend events are dispatched - // with the same identifier as the touch event that previously triggered the click that triggered the alert. - // Sadly, there is an issue on iOS 4 that causes some normal touch events to have the same identifier as an - // immediately preceeding touch event (issue #52), so this fix is unavailable on that platform. - // Issue 120: touch.identifier is 0 when Chrome dev tools 'Emulate touch events' is set with an iOS device UA string, - // which causes all touch events to be ignored. As this block only applies to iOS, and iOS identifiers are always long, - // random integers, it's safe to to continue if the identifier is 0 here. - if (touch.identifier && touch.identifier === this.lastTouchIdentifier) { - event.preventDefault(); - return false; - } - - this.lastTouchIdentifier = touch.identifier; - - // If the target element is a child of a scrollable layer (using -webkit-overflow-scrolling: touch) and: - // 1) the user does a fling scroll on the scrollable layer - // 2) the user stops the fling scroll with another tap - // then the event.target of the last 'touchend' event will be the element that was under the user's finger - // when the fling scroll was started, causing FastClick to send a click event to that layer - unless a check - // is made to ensure that a parent layer was not scrolled before sending a synthetic click (issue #42). - this.updateScrollParent(targetElement); - } - } - - this.trackingClick = true; - this.trackingClickStart = event.timeStamp; - this.targetElement = targetElement; - - this.touchStartX = touch.pageX; - this.touchStartY = touch.pageY; - - // Prevent phantom clicks on fast double-tap (issue #36) - if ((event.timeStamp - this.lastClickTime) < this.tapDelay) { - event.preventDefault(); - } - - return true; - }; - - - /** - * Based on a touchmove event object, check whether the touch has moved past a boundary since it started. - * - * @param {Event} event - * @returns {boolean} - */ - FastClick.prototype.touchHasMoved = function(event) { - var touch = event.changedTouches[0], boundary = this.touchBoundary; - - if (Math.abs(touch.pageX - this.touchStartX) > boundary || Math.abs(touch.pageY - this.touchStartY) > boundary) { - return true; - } - - return false; - }; - - - /** - * Update the last position. - * - * @param {Event} event - * @returns {boolean} - */ - FastClick.prototype.onTouchMove = function(event) { - if (!this.trackingClick) { - return true; - } - - // If the touch has moved, cancel the click tracking - if (this.targetElement !== this.getTargetElementFromEventTarget(event.target) || this.touchHasMoved(event)) { - this.trackingClick = false; - this.targetElement = null; - } - - return true; - }; - - - /** - * Attempt to find the labelled control for the given label element. - * - * @param {EventTarget|HTMLLabelElement} labelElement - * @returns {Element|null} - */ - FastClick.prototype.findControl = function(labelElement) { - - // Fast path for newer browsers supporting the HTML5 control attribute - if (labelElement.control !== undefined) { - return labelElement.control; - } - - // All browsers under test that support touch events also support the HTML5 htmlFor attribute - if (labelElement.htmlFor) { - return document.getElementById(labelElement.htmlFor); - } - - // If no for attribute exists, attempt to retrieve the first labellable descendant element - // the list of which is defined here: http://www.w3.org/TR/html5/forms.html#category-label - return labelElement.querySelector('button, input:not([type=hidden]), keygen, meter, output, progress, select, textarea'); - }; - - - /** - * On touch end, determine whether to send a click event at once. - * - * @param {Event} event - * @returns {boolean} - */ - FastClick.prototype.onTouchEnd = function(event) { - var forElement, trackingClickStart, targetTagName, scrollParent, touch, targetElement = this.targetElement; - - if (!this.trackingClick) { - return true; - } - - // Prevent phantom clicks on fast double-tap (issue #36) - if ((event.timeStamp - this.lastClickTime) < this.tapDelay) { - this.cancelNextClick = true; - return true; - } - - if ((event.timeStamp - this.trackingClickStart) > this.tapTimeout) { - return true; - } - - // Reset to prevent wrong click cancel on input (issue #156). - this.cancelNextClick = false; - - this.lastClickTime = event.timeStamp; - - trackingClickStart = this.trackingClickStart; - this.trackingClick = false; - this.trackingClickStart = 0; - - // On some iOS devices, the targetElement supplied with the event is invalid if the layer - // is performing a transition or scroll, and has to be re-detected manually. Note that - // for this to function correctly, it must be called *after* the event target is checked! - // See issue #57; also filed as rdar://13048589 . - if (deviceIsIOSWithBadTarget) { - touch = event.changedTouches[0]; - - // In certain cases arguments of elementFromPoint can be negative, so prevent setting targetElement to null - targetElement = document.elementFromPoint(touch.pageX - window.pageXOffset, touch.pageY - window.pageYOffset) || targetElement; - targetElement.fastClickScrollParent = this.targetElement.fastClickScrollParent; - } - - targetTagName = targetElement.tagName.toLowerCase(); - if (targetTagName === 'label') { - forElement = this.findControl(targetElement); - if (forElement) { - this.focus(targetElement); - if (deviceIsAndroid) { - return false; - } - - targetElement = forElement; - } - } else if (this.needsFocus(targetElement)) { - - // Case 1: If the touch started a while ago (best guess is 100ms based on tests for issue #36) then focus will be triggered anyway. Return early and unset the target element reference so that the subsequent click will be allowed through. - // Case 2: Without this exception for input elements tapped when the document is contained in an iframe, then any inputted text won't be visible even though the value attribute is updated as the user types (issue #37). - if ((event.timeStamp - trackingClickStart) > 100 || (deviceIsIOS && window.top !== window && targetTagName === 'input')) { - this.targetElement = null; - return false; - } - - this.focus(targetElement); - this.sendClick(targetElement, event); - - // Select elements need the event to go through on iOS 4, otherwise the selector menu won't open. - // Also this breaks opening selects when VoiceOver is active on iOS6, iOS7 (and possibly others) - if (!deviceIsIOS || targetTagName !== 'select') { - this.targetElement = null; - event.preventDefault(); - } - - return false; - } - - if (deviceIsIOS && !deviceIsIOS4) { - - // Don't send a synthetic click event if the target element is contained within a parent layer that was scrolled - // and this tap is being used to stop the scrolling (usually initiated by a fling - issue #42). - scrollParent = targetElement.fastClickScrollParent; - if (scrollParent && scrollParent.fastClickLastScrollTop !== scrollParent.scrollTop) { - return true; - } - } - - // Prevent the actual click from going though - unless the target node is marked as requiring - // real clicks or if it is in the whitelist in which case only non-programmatic clicks are permitted. - if (!this.needsClick(targetElement)) { - event.preventDefault(); - this.sendClick(targetElement, event); - } - - return false; - }; - - - /** - * On touch cancel, stop tracking the click. - * - * @returns {void} - */ - FastClick.prototype.onTouchCancel = function() { - this.trackingClick = false; - this.targetElement = null; - }; - - - /** - * Determine mouse events which should be permitted. - * - * @param {Event} event - * @returns {boolean} - */ - FastClick.prototype.onMouse = function(event) { - - // If a target element was never set (because a touch event was never fired) allow the event - if (!this.targetElement) { - return true; - } + + +exports.mySwiper = mySwiper; +exports.initSwiper = initSwiper; +exports.initInfosEvt = initInfosEvt; +exports.setLazyLoadAndMellipsis = setLazyLoadAndMellipsis; +exports.loadMore = loadMore; + +}); +define("js/plugin/tip", ["jquery"], function(require, exports, module){ +/** + * 弹框提示 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/10 + */ +var $ = require("jquery"); - if (event.forwardedTouchEvent) { - return true; - } +var $tip, tipItime; - // Programmatically generated events targeting a specific element should be permitted - if (!event.cancelable) { - return true; - } +/** + * 初始化提示框 + */ +(function() { + var tipHtml = '<div id="yoho-tip" class="yoho-tip"></div>'; - // Derive and check the target element to see whether the mouse event needs to be permitted; - // unless explicitly enabled, prevent non-touch click events from triggering actions, - // to prevent ghost/doubleclicks. - if (!this.needsClick(this.targetElement) || this.cancelNextClick) { + //插入提示HTML + $('.yoho-page').append(tipHtml); - // Prevent any user-added listeners declared on FastClick element from being fired. - if (event.stopImmediatePropagation) { - event.stopImmediatePropagation(); - } else { + $tip = $('#yoho-tip'); + $tip.on('touchend', function() { + $tip.hide(); - // Part of the hack for browsers that don't support Event#stopImmediatePropagation (e.g. Android 2) - event.propagationStopped = true; - } + //清除Timeout + clearTimeout(tipItime); + }); +}()); - // Cancel the event - event.stopPropagation(); - event.preventDefault(); +/** + * 显示提示 + */ +function show(con, dur) { + var content, duration; - return false; - } + if (typeof con === 'undefined') { + return; + } - // If the mouse event is permitted, return true for the action to go through. - return true; - }; + content = con.toString(); + duration = (dur && dur > 0) ? dur : 2000; + $tip.text(content).show(); - /** - * On actual clicks, determine whether this is a touch-generated click, a click action occurring - * naturally after a delay after a touch (which needs to be cancelled to avoid duplication), or - * an actual click which should be permitted. - * - * @param {Event} event - * @returns {boolean} - */ - FastClick.prototype.onClick = function(event) { - var permitted; + tipItime = setTimeout(function() { + if ($tip.css('display') === 'block') { + $tip.hide(); + } + }, duration); +} - // It's possible for another FastClick-like library delivered with third-party code to fire a click event before FastClick does (issue #44). In that case, set the click-tracking flag back to false and return early. This will cause onTouchEnd to return early. - if (this.trackingClick) { - this.targetElement = null; - this.trackingClick = false; - return true; - } +exports.show = show; +}); +define("js/plugin/wx-share", ["jquery"], function(require, exports, module){ +/** + * 微信分享 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/30 + */ + +var $ = require("jquery"); + +module.exports = function() { + var _weChatInterface = '/life/getSignPackage'; + $.getJSON(_weChatInterface + '?pageurl=' + + encodeURIComponent(location.href.split('#')[0]) + '&callback=?', function (json) { + var _appId, _timestamp, _nonceStr, _signature; + + if (!wx) { + return; + } + + if (json !== undefined && json !== '') { + _appId = json.appId.toString(); + _timestamp = json.timestamp; + _nonceStr = json.nonceStr.toString(); + _signature = json.signature.toString(); + + wx.config({ + debug: false, + appId: _appId, + timestamp: _timestamp, + nonceStr: _nonceStr, + signature: _signature, + jsApiList: [ + 'checkJsApi', + 'onMenuShareTimeline', + 'onMenuShareAppMessage', + 'onMenuShareQQ', + 'onMenuShareWeibo', + 'hideMenuItems', + 'showMenuItems', + 'hideAllNonBaseMenuItem', + 'showAllNonBaseMenuItem', + 'translateVoice', + 'startRecord', + 'stopRecord', + 'onRecordEnd', + 'playVoice', + 'pauseVoice', + 'stopVoice', + 'uploadVoice', + 'downloadVoice', + 'chooseImage', + 'previewImage', + 'uploadImage', + 'downloadImage', + 'getNetworkType', + 'openLocation', + 'getLocation', + 'hideOptionMenu', + 'showOptionMenu', + 'closeWindow', + 'scanQRCode', + 'chooseWXPay', + 'openProductSpecificView', + 'addCard', + 'chooseCard', + 'openCard' + ] + }); + } + }); + + wx.ready(function () { + var shareTitle = $('#shareTitle').val(); + var shareImg = $('#shareImg').val(); + var shareDesc = $('#shareDesc').val(); + var shareLink = $('#shareLink').val(); + var shareData = { + title: shareTitle, + desc: shareDesc, + imgUrl: shareImg, + link: shareLink + }; + + wx.onMenuShareAppMessage(shareData); + wx.onMenuShareTimeline(shareData); + wx.onMenuShareQQ(shareData); + wx.onMenuShareWeibo(shareData); + wx.onMenuShareQZone(shareData); + }); +}; + +}); +define("js/guang/home", ["jquery","hammer","mlellipsis","lazyload","swiper","index"], function(require, exports, module){ +/** + * 逛首页 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/10 + */ - // Very odd behaviour on iOS (issue #18): if a submit element is present inside a form and the user hits enter in the iOS simulator or clicks the Go button on the pop-up OS keyboard the a kind of 'fake' click event will be triggered with the submit-type input element as the target. - if (event.target.type === 'submit' && event.detail === 0) { - return true; - } +var $ = require("jquery"); - permitted = this.onMouse(event); +var info = require("js/guang/info"), + loadMore = info.loadMore; - // Only unset targetElement if the click is not permitted. This will ensure that the check for !targetElement in onMouse fails and the browser's click doesn't go through. - if (!permitted) { - this.targetElement = null; - } +var $loadMoreInfo = $('#load-more-info'); +var $loading = $(''), + $noMore = $(''); - // If clicks are permitted, return true for the action to go through. - return permitted; - }; +var winH = $(window).height(); +var $infoList = $('#info-list'), + $infos = $infoList.children('.info-list'), + $nav = $('#guang-nav'), + $curNav = $nav.children('.focus'), + curType = $curNav.data('type'); - /** - * Remove all FastClick's event listeners. - * - * @returns {void} - */ - FastClick.prototype.destroy = function() { - var layer = this.layer; +var state = {}; - if (deviceIsAndroid) { - layer.removeEventListener('mouseover', this.onMouse, true); - layer.removeEventListener('mousedown', this.onMouse, true); - layer.removeEventListener('mouseup', this.onMouse, true); - } +if ($loadMoreInfo.length > 0) { + $loading = $loadMoreInfo.children('.loading'); + $noMore = $loadMoreInfo.children('.no-more'); +} - layer.removeEventListener('click', this.onClick, true); - layer.removeEventListener('touchstart', this.onTouchStart, false); - layer.removeEventListener('touchmove', this.onTouchMove, false); - layer.removeEventListener('touchend', this.onTouchEnd, false); - layer.removeEventListener('touchcancel', this.onTouchCancel, false); - }; +info.initSwiper(curType); +info.initInfosEvt($infoList); - /** - * Check whether FastClick is needed. - * - * @param {Element} layer The layer to listen on - */ - FastClick.notNeeded = function(layer) { - var metaViewport; - var chromeVersion; - var blackberryVersion; - var firefoxVersion; +//初始化各Nav下资讯加载的状态 +(function() { + var gender = $('#gender').val(); - // Devices that don't support touch don't need FastClick - if (typeof window.ontouchstart === 'undefined') { - return true; - } + $nav.children('.guang-nav-item').each(function() { + var type = $(this).data('type'), + focus = $(this).hasClass('focus'); - // Chrome version - zero for other browsers - chromeVersion = +(/Chrome\/([0-9]+)/.exec(navigator.userAgent) || [,0])[1]; + state[type] = { + page: focus ? 2 : 1, + gender: gender, + type: type, + end: false + }; + }); +}()); +$nav.bind('contextmenu', function(e) { + return false; +}); +$nav.on('touchend touchcancel', function(e) { - if (chromeVersion) { + var $this = $(e.target).closest('.guang-nav-item'), + $content, + index; - if (deviceIsAndroid) { - metaViewport = document.querySelector('meta[name=viewport]'); + if ($this.hasClass('focus')) { + return; + } - if (metaViewport) { - // Chrome on Android with user-scalable="no" doesn't need FastClick (issue #89) - if (metaViewport.content.indexOf('user-scalable=no') !== -1) { - return true; - } - // Chrome 32 and above with width=device-width or less don't need FastClick - if (chromeVersion > 31 && document.documentElement.scrollWidth <= window.outerWidth) { - return true; - } - } - // Chrome desktop doesn't need FastClick (issue #15) - } else { - return true; - } - } + index = $this.index(); - if (deviceIsBlackBerry10) { - blackberryVersion = navigator.userAgent.match(/Version\/([0-9]*)\.([0-9]*)/); + $this.addClass('focus'); + $curNav.removeClass('focus'); - // BlackBerry 10.3+ does not require Fastclick library. - // https://github.com/ftlabs/fastclick/issues/251 - if (blackberryVersion[1] >= 10 && blackberryVersion[2] >= 3) { - metaViewport = document.querySelector('meta[name=viewport]'); + $content = $infos.eq(index); - if (metaViewport) { - // user-scalable=no eliminates click delay. - if (metaViewport.content.indexOf('user-scalable=no') !== -1) { - return true; - } - // width=device-width (or less than device-width) eliminates click delay. - if (document.documentElement.scrollWidth <= window.outerWidth) { - return true; - } - } - } - } + $curNav = $this; + curType = $this.data('type'); - // IE10 with -ms-touch-action: none or manipulation, which disables double-tap-to-zoom (issue #97) - if (layer.style.msTouchAction === 'none' || layer.style.touchAction === 'manipulation') { - return true; - } + //当未加载数据时去请求数据 + if (state[curType].page === 1) { - // Firefox version - zero for other browsers - firefoxVersion = +(/Firefox\/([0-9]+)/.exec(navigator.userAgent) || [,0])[1]; + //无数据时隐藏正在加载和没有更多字样 + $loading.addClass('hide'); + $noMore.addClass('hide'); - if (firefoxVersion >= 27) { - // Firefox 27+ does not have tap delay if the content is not zoomable - https://bugzilla.mozilla.org/show_bug.cgi?id=922896 + state[curType].isTab = true; + loadMore($content, state[curType]); + } else { - metaViewport = document.querySelector('meta[name=viewport]'); - if (metaViewport && (metaViewport.content.indexOf('user-scalable=no') !== -1 || document.documentElement.scrollWidth <= window.outerWidth)) { - return true; - } - } + //重置当前Tab的load-more + if (state[curType].end) { + $loading.addClass('hide'); + $noMore.removeClass('hide'); + } else { + $loading.removeClass('hide'); + $noMore.addClass('hide'); + } + } - // IE11: prefixed -ms-touch-action is no longer supported and it's recomended to use non-prefixed version - // http://msdn.microsoft.com/en-us/library/windows/apps/Hh767313.aspx - if (layer.style.touchAction === 'none' || layer.style.touchAction === 'manipulation') { - return true; - } + $infos.not('.hide').addClass('hide'); + $content.removeClass('hide'); - return false; - }; + if (state[curType].page === 1) { + window.rePosFooter();//进入空内容时重新定位footer位置 + } +}); +function scrollHandler() { + var $c = $infos.not('.hide'); - /** - * Factory method for creating a FastClick object - * - * @param {Element} layer The layer to listen on - * @param {Object} [options={}] The options to override the defaults - */ - FastClick.attach = function(layer, options) { - return new FastClick(layer, options); - }; + if ($(window).scrollTop() + winH >= $(document).height() - 0.25 * $c.height()) { + loadMore($c, state[curType]); + } +} +//srcoll to load more +$(document).scroll(function() { + window.requestAnimationFrame(scrollHandler); +}); - if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) { +$nav.on('touchstart', function(e) { + var target = e.target || e.srcElement; - // AMD. Register as an anonymous module. - define(function() { - return FastClick; - }); - } else if (typeof module !== 'undefined' && module.exports) { - module.exports = FastClick.attach; - module.exports.FastClick = FastClick; - } else { - window.FastClick = FastClick; - } -}()); - + target.className = 'bytouch ' + target.className; +}).on('touchend touchcancel', function() { + $nav.find('li').removeClass('bytouch'); }); -define("js/home/maybe-like", ["jquery","hammer","mlellipsis","lazyload"], function(require, exports, module){ -/** - * “你可能喜欢”模块JS - * @author: liangzhifeng<zhifeng.liang@yoho.cn> - * @date: 2015/10/12 - */ - -module.exports = function(specificGender) { - var $ = require("jquery"), - Hammer = require("hammer"), - tip = require("js/plugin/tip"), - loading = require("js/plugin/loading"), - ellipsis = require("mlellipsis"), - lazyLoad = require("lazyload"); - - var navHammer, - winH = $(window).height(), - $goodList = $('#goods-list'), - searching = false, - page = 0, - gender = null, - num, - url, - RECPOSE = '110001'; - - //The kidsType can be specified by the parameter. Add by @ZhaoBiao - var kidsType = specificGender === 'kids' || $('.mobile-wrap').hasClass('kids-wrap') ? true : false, - lifestyleType = specificGender === 'lifestyle' || - $('.mobile-wrap').hasClass('lifestyle-wrap') ? true : false, - yohoCoinType = $('.coin').length ? true : false, - logisticType = $('.logistic-page').length ? true : false; - var $curNav, - index, - $navList = $('#maybe-like-nav'); - - var $footer; - - ellipsis.init(); - - //ajax url - if (kidsType) { - - url = '/product/recom/maylikekids'; - } else if (lifestyleType) { - - //有货币页面加载男生首页的数据 - url = specificGender === 'lifestyle' ? '/product/recom/maylike?gender=1,3&rec_pos=100001' : '/product/recom/maylikelife'; - } else if (yohoCoinType) { - - gender = (specificGender === 'boys' || $('.mobile-wrap').hasClass('boys-wrap')) ? - '1,3&rec_pos=100009' : '2,3&rec_pos=100009', - url = '/product/recom/maylike?gender=' + gender; - RECPOSE = 110009; - - } else if (logisticType) { //物流页面 - gender = (specificGender === 'boys' || $('.mobile-wrap').hasClass('boys-wrap')) ? - '1,3&rec_pos=100006' : '2,3&rec_pos=100006', - url = '/product/recom/maylike?gender=' + gender; - RECPOSE = 110006; - - } else { - gender = (specificGender === 'boys' || $('.mobile-wrap').hasClass('boys-wrap')) ? - '1,3&rec_pos=100001' : '2,3&rec_pos=100002', - url = '/product/recom/maylike?gender=' + gender; - } - - //日韩馆-你可能喜欢的 - if ($('.mobile-wrap').hasClass('yoho-channel-page')) { - url = '/product/recom/newPreference?template_id=' + $.queryString().template_id; - } - - //首页男生和女生,推荐位ID,埋点 - if (window.location.pathname === '/boys') { - RECPOSE = 110001; - } else if (window.location.pathname === '/girls') { - RECPOSE = 110002; - } - - $curNav = $navList.children('.focus'); - - if (lifestyleType) { - navHammer = $navList[0] ? new Hammer($navList[0]) : undefined; - if (navHammer) { - navHammer.on('tap', function(e) { - var $this = $(e.target).closest('li'), - $goods = $('.goods-list'), - $content; - - e.preventDefault(); - if ($this.hasClass('focus')) { - return; - } - - index = $this.index(); - - $this.addClass('focus'); - $curNav.removeClass('focus'); - - $goods.not('.hide').addClass('hide'); - $content = $goods.eq(index); - $content.removeClass('hide'); - - $curNav = $this; - - $(document).trigger('scroll'); //Trigger lazyLoad - e.srcEvent.stopPropagation(); - }); - } - } - - loading.init($('.maybe-like')); +}); +define("js/guang/list", ["jquery","hammer","mlellipsis","lazyload","swiper","index"], function(require, exports, module){ +/** + * 列表页,编辑页 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/10 + */ + +var $ = require("jquery"); + +var info = require("js/guang/info"), + loadMore = info.loadMore; + +var winH = $(window).height(); + +var $author = $('#author-infos'); +var $tag = $('#tag'); +var $gender = $('#gender'); +var $isApp = $('#isApp'); + +var setting = { + page: 2, + end: false +}; + +var $infos = $('#info-list'); + +info.initInfosEvt($infos); + +if ($author.length > 0) { + $.extend(setting, { + authorId: $author.data('id'), + isApp: $isApp.val() + }); +} + +if ($tag.length > 0) { + $.extend(setting, { + tag: $tag.val(), + gender: $gender.val(), + isApp: $isApp.val() + }); +} + +function scrollHandler() { + if ($(window).scrollTop() + winH >= $(document).height() - 0.25 * $infos.height()) { + loadMore($infos, setting); + } +} + +//srcoll to load more +$(window).scroll(function() { + window.requestAnimationFrame(scrollHandler); +}); - function search() { - if (searching) { - return; - } - searching = true; +}); +define("js/guang/detail", ["jquery","mlellipsis","lazyload","iscroll-probe"], function(require, exports, module){ +/** + * 逛详情页 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/13 + */ - loading.showLoadingMask(); +var $ = require("jquery"), + ellipsis = require("mlellipsis"), + lazyLoad = require("lazyload"), + IScroll = require("iscroll-probe"); - //num = $goodList.find('.good-info').length; - $.ajax({ - type: 'GET', - url: url, - data: { - page: page + 1 - }, - success: function(data) { - var PRDID = []; - if (data === ' ') { - searching = false; - loading.hideLoadingMask(); +var $authorIntro = $('.author .intro'); - // 有货币页面不加载底部 - if (gender && !specificGender) { - if (gender === '1,3') { - url = '/boys/bottomBanner'; - } else { - url = '/girls/bottomBanner'; - } - $.ajax({ - type: 'GET', - url: url, - success: function(data) { - if (data && data.img) { - $('#load-more-img').show(); - $('#load-more-img a').attr('href', data.url); - $('#load-more-img a > img').attr('src', data.img); - } - }, - error: function() { - } - }); +var pageInIscroll = false; - } - return; - } +var hasCollocationBlock = $('.collocation-block').length > 0 ? true : false; - //加载到数据后,去除bottom样式,使得footer能够随着页面长度的增加改变位置 - if (data.length > 1) { - $footer ? null : $footer = $('#yoho-footer'); - $footer.hasClass('bottom') ? $footer.removeClass('bottom') : null; - } +//collocation block variable +var thumbWidth = 0, + $fixedThumbContainer = $(''), + $coBlock, $thumbContainer, $thumbs, $prods, + scrollToEl; - num = $goodList.find('.good-info').length; +var scrollToEl = document.querySelector('#wrapper .collocation-block'); - $goodList.append(data); +var winW = $(window).width(); - // 2015/10/31 fei.hong: 修复第一页分页不显示图片的问题 - if (num === 0) { - lazyLoad($goodList.find('.good-info').find('img.lazy')); - } else { - lazyLoad($goodList.find('.good-info:gt(' + (num - 1) + ')').find('img.lazy')); - } +var myScroll; - searching = false; - loading.hideLoadingMask(); - page++; +//require('../plugin/wx-share')(); - $('.good-detail-text .name').each(function() { - var $this = $(this), - $title = $this.find('a'); +/** + * 计算搭配的箭头的位置 + * @param $curPos 当前focus的搭配项 + */ +function posCollocationArrow($curCo) { + var left = $curCo.offset().left, + bgPos = -winW + left + (thumbWidth / 2) + 'px'; - $title[0].mlellipsis(2); - }); + $thumbContainer.css({ + backgroundPosition: bgPos + ' bottom' + }); - //为您优选埋点 start - $(data).closest('.good-info').each(function() { - PRDID.push($(this).data('id')); - }); - window.givePoint({ - 'REC_POSE': RECPOSE, - 'PRD_ID': PRDID.join(','), - 'PRD_NUM': $(data).closest('.good-info').length, - 'ACTION_ID': 0, - 'page_num': RECPOSE === 110009 ? 1 : page - }); - //为您优选埋点 end - }, - error: function() { - tip.show('网络断开连接了~'); - searching = false; - loading.hideLoadingMask(); - } + if (pageInIscroll) { + $fixedThumbContainer.css({ + backgroundPosition: bgPos + ' bottom' }); } +} - $('.maybe-like p').on('touchstart', function(e) { - search(); - }); - - function scrollHandler() { - if ($(window).scrollTop() + winH >= $(document).height() - 200) { - search(); - } - } +//搭配thumb的touch事件句柄 +function thumbTouchEvt(e) { + var $curCo = $(e.currentTarget), + index = $curCo.index(), + $brother, $brotherCo, + $curProds; - // 优惠券页面直接加载你可能喜欢。add by @zhaobiao - if (specificGender) { - search(); + if ($curCo.hasClass('focus')) { + return; } - //srcoll to load more - $(window).scroll(function() { - window.requestAnimationFrame(scrollHandler); - }); - - //为您优选埋点 http://redmine.yoho.cn/issues/10116 - $('.maybe-like .goods-list').on('click', 'a', function() { - var index = $(this).closest('.good-info').index() + 1, - pageNum = 50; - window.givePoint({ - 'REC_POSE': RECPOSE, - 'PRD_ID': $(this).closest('.good-info').data('id'), - 'PRD_NUM': index % pageNum === 0 ? pageNum : index % pageNum, - 'ACTION_ID': 1, - 'page_num': Math.ceil(index / pageNum) - }); - return true; - }); -}; - -}); -define("js/index/entry", ["jquery","hammer","handlebars","source-map","swiper","index"], function(require, exports, module){ -/** - * Index打包入口 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/19 - */ - -require("js/index/search"); -require("js/index/footer"); -require("js/index/channel"); -require("js/index/coupon"); -}); -define("js/index/search", ["jquery","hammer","handlebars","source-map"], function(require, exports, module){ -/** - * 搜索JS - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/19 - */ - -var $ = require("jquery"), - security = require("js/plugin/security"), - tip = require("js/plugin/tip"), - Hammer = require("hammer"), - dialog = require("js/me/dialog"); - -var $input = $('#search-input input'); - -var $clear = $('#search-input .clear-input'); + $thumbs.filter('.focus').removeClass('focus'); -var $form = $('#search-form'); + if (pageInIscroll) { + if ($curCo.closest('.fixed-thumb-container').length > 0) { + $brother = $thumbContainer; + } else { + $brother = $fixedThumbContainer; + } -var $history = $('.history'); -var $historySearch = $('.history-search'); -var $clearHistory = $('#clear-history'); -var $buriedpoint = $('.buriedpoint'); -var $search = $('#search'); -var searchUrl = $search.closest('form').attr('action'); + $brotherCo = $brother.find('.thumb').eq(index); + $fixedThumbContainer.find('.thumb.focus').removeClass('focus'); + $brotherCo.addClass('focus'); + } -var writeSearch = require("js/index/write-search"); + $curCo.addClass('focus'); -var ranToken = writeSearch.getRanToken(); -var historyval = writeSearch.getHistoryval(); + //定位arrow + posCollocationArrow($curCo); -var chHammer, cHammer; + $prods.not('.hide').addClass('hide'); + $curProds = $prods.eq(index); + $curProds.removeClass('hide'); -chHammer = new Hammer($clearHistory[0]); + // + lazyLoad($curProds.find('.lazy')); -chHammer.on('tap', function() { - dialog.showDialog({ - dialogText: '您确定要删除您的最近搜索吗?', - hasFooter: { - leftBtnText: '取消', - rightBtnText: '确定' + if (pageInIscroll) { + if (myScroll) { + myScroll.scrollToElement(scrollToEl, 400); } - }, function() { + } else { + $('body').animate({ + scrollTop: $coBlock.offset().top + }, 400); + } - if (localStorage) { - localStorage.removeItem(historyval); - } + myScroll && myScroll.refresh(); +} - $history.html(''); - $historySearch.hide(); - $clearHistory.hide(); +// 初始化iscroll +function initIscroll() { + var $scroller = $('#scroller'), + $yohoHeader = $('.yoho-header'); - window.rePosFooter(); + var hH = 0, + winH, tcH, cbH, cbTop, fixedThumbDom; - dialog.showDialog({ - dialogText: '删除成功', - autoHide: true, - fast: true - }); + //考虑通用头部的影响:对offset().top以及winH做对应偏移 + if ($yohoHeader.length > 0) { + hH = $yohoHeader.outerHeight(); + } + + myScroll = new IScroll('#wrapper', { + probeType: 3, + mouseWheel: true, + click: true }); -}); -// 搜索输入联动 -function inputAction() { - var $searchAssociate = $('.search-associate'); - var $icon = $('.search-icon'); - var $searchItems = $('.search-items'); + document.addEventListener('touchmove', function(e) { + e.preventDefault(); + }, false); - $input.on('input', function() { - if ($input.val() === '') { - $icon.css('color', '#b2b2b2'); - $clear.addClass('hide'); - $searchAssociate.html(''); - $searchItems.show(); - $searchAssociate.hide(); - } else { - $icon.css('color', '#666'); - $clear.removeClass('hide'); - $searchAssociate.show(); - } + if (!hasCollocationBlock) { + myScroll.on('scroll', function() { + $scroller.trigger('scroll'); + }); + return; + } - // 联动搜索 - $.ajax({ - url: '/index/search/fuzzyDatas', - data: { - keyword: $input.val() - }, - dataType: 'json', - success: function(data) { - var ajaxHtml = ''; - var i; + winH = $(window).height() - hH; + fixedThumbDom = $fixedThumbContainer[0]; - if (data.length > 0) { - for (i = 0; i < data.length; i++) { - ajaxHtml += '<li><span class="keyword">' + data[i].keyword + '</span><span class="count">' + - data[i].count + ' items<i class="iconfont"></i></span></li>'; - } + tcH = $thumbContainer.outerHeight(); + cbH = $coBlock.outerHeight(); + cbTop = $coBlock.offset().top - hH; - $searchAssociate.html(ajaxHtml); - $searchItems.hide(); - } else { - $searchAssociate.html(''); - } + myScroll.on('scroll', function() { + var sTop = -this.y; + var classList = fixedThumbDom.className; - $searchAssociate.find('li').on('touchend', function() { - GoSearch($(this).find('.keyword').html()); - }); - }, - error: function() { - tip.show('网络断开连接了~'); + if (sTop <= cbTop - winH + tcH) { + if (classList.indexOf('fixed-bottom') === -1) { + $fixedThumbContainer + .addClass('fixed-bottom') + .removeClass('hide'); } - }); + } else if (sTop <= cbTop) { + if (classList.indexOf('hide') === -1) { + $fixedThumbContainer + .addClass('hide') + .removeClass('fixed-bottom fixed-top'); + } + } else if (sTop <= cbTop + cbH - tcH) { + if (classList.indexOf('fixed-top') === -1) { + $fixedThumbContainer + .addClass('fixed-top') + .removeClass('hide absolute') + .css('top', ''); + } + } else if (sTop <= cbTop + cbH) { + if (classList.indexOf('absolute') === -1) { + $fixedThumbContainer + .addClass('absolute') + .removeClass('fixed-top hide'); + } + fixedThumbDom.style.top = cbTop + hH + cbH - tcH - sTop + 'px'; + } else if (sTop > cbTop + cbH) { + if (classList.indexOf('hide') === -1) { + $fixedThumbContainer + .addClass('hide') + .removeClass('absolute'); + } + } + $scroller.trigger('scroll'); }); } -//跳到搜索页 -function GoSearch(query) { - //保存搜索的内容 - writeSearch.setHistoryValFun(query); - document.location.href = searchUrl + '?query=' + query; -} +//window onload 后重新refresh iscroll +window.onload = function() { + myScroll && myScroll.refresh(); +}; -//热门搜索、最近搜索事件 -$('.search-items .search-group').on('click', 'li', function(event) { - var query = ''; +// 图片加载完成之后重新 refresh iscroll +$('img').on('load', function() { + myScroll && myScroll.refresh(); +}); - if (event.target.nodeName === 'A') { - query = $(event.target).html(); - } +//初始化页面,包括是否使用iscorll初始化页面 +//接口暴露在HTML中,使用压缩名 +exports.i = function(useIscroll) { + var isIphone = navigator.userAgent.indexOf('iPhone') > 0 ? true : false; + var $this, $title; - if (event.target.nodeName === 'LI') { - query = $(event.target).find('a').html(); - } + pageInIscroll = isIphone && useIscroll; - GoSearch(query); -}); + ellipsis.init(); -inputAction(); + if ($('.good-detail-text .name').length > 0) { + $('.good-detail-text .name').each(function() { + $this = $(this); + $title = $this.find('a'); -cHammer = new Hammer($clear[0]); -cHammer.on('tap', function() { - $input.val('').trigger('input'); -}); + $title[0].mlellipsis(2); + }); + } -$search.on('touchend', function() { - var $buriedpoint = $form.find('.buriedpoint'); + lazyLoad($('.lazy')); - if ($buriedpoint.val() === '') { - $buriedpoint.val($('#default-terms').val()); - } + //title mlellipsis + $('.info-list .title, .one-good .reco-name').each(function() { + this.mlellipsis(2); + }); - //保存搜索的内容 - writeSearch.setHistoryValFun($buriedpoint.val()); + //offset.left约等于marginLeft的值则表示介绍被换行,则清除intro的paddingTop让其更靠近头像和作者名 + if ($authorIntro.offset() && (parseInt($authorIntro.offset().left, 10) === + parseInt($authorIntro.css('margin-left'), 10))) { + $authorIntro.css('padding-top', 0); + } - if (security.hasDangerInput()) { - return false; + if (pageInIscroll) { + if ($('.yoho-header').length > 0) { + $('#wrapper').addClass('ios has-head'); + } else { + $('#wrapper').addClass('ios'); + } } - $(this).closest('form').submit(); - return false; -}); + //有搭配模块,iphone使用iscroll初始化滚动并有固定的搭配栏,其他的没有 + if (hasCollocationBlock) { + $coBlock = $('.collocation-block'); + $thumbContainer = $coBlock.children('.thumb-container'); + $thumbs = $thumbContainer.find('li'); + $prods = $coBlock.find('.prod'); -//初始化历史搜索的内容 -(function() { - var html = '', - history, - historys, i, num = 1; + thumbWidth = $thumbs.width(); + + if (pageInIscroll) { + $fixedThumbContainer = $('#wrapper') + .after($thumbContainer.clone().addClass('fixed-thumb-container fixed-bottom')) + .next('.thumb-container'); + + //load img of fixed thumb container + lazyLoad($fixedThumbContainer.find('.lazy'), { + event: 'sporty' + }); + } + + //Init Arrow Position + posCollocationArrow($thumbs.filter('.focus')); + + $thumbContainer.delegate('.thumb', 'touchend', thumbTouchEvt); + + if (pageInIscroll) { + $fixedThumbContainer.delegate('.thumb', 'touchend', thumbTouchEvt); - if (localStorage) { - historys = localStorage.getItem(historyval); + } + } - if (historys && historys.length > 0) { - historys = historys.split(ranToken); - for (i = historys.length; i > 0; i--) { - history = historys[i - 1]; + if (pageInIscroll) { + initIscroll(); + } +}; - if (history === '') { - continue; - } +$(".focus-btn").on("touchstart", function() { + var $e = $(this).siblings('textarea'); //对象是content - if (num++ > 10) { - break; - } + $e.select(); //选择对象 + document.execCommand("Copy"); //执行浏览器复制命令 - html += '<li><a href="javascript:void(0);">' + history + '</li>'; - } + $('.weixin-pop-up').removeClass('hide'); +}); + +$('.know').on('touchstart', function() { + $('.weixin-pop-up').addClass('hide'); +}) +}); +define("js/guang/star-classroom", ["jquery","swiper","lazyload","index"], function(require, exports, module){ +/** + * 星潮教室-首页 + * @author: wsl<shuiling.wang@yoho.cn> + * @date: 2016/4/11 + */ + +var $ = require("jquery"), + Swiper = require("swiper"), + calendar = require("js/guang/calendar"), + lazyLoad = require("lazyload"), + tip = require("js/plugin/tip"); + +var bannerSwiper, collocationSwiper; + +lazyLoad($('img.lazy')); + +$('body').addClass('star-class-body'); + +function setAvatar($userAvatar) { + var myImage = new Image(), + avatar; + + // 部分老用户没有头像,显示默认头像 + avatar = $userAvatar.data('avatar'); + myImage.src = avatar; + myImage.onload = function() { + $userAvatar.css('background-image', 'url(' + avatar + ')'); + }; +} + +// 日历弹出框显示及粉丝排行榜数据组装 +function intimacyData(data) { + var $ul = $('.fan-charts-cont'), + $myIntimacy = $('.my-intimacy'), + $increased = $('.increased'), + signDay = data.signDay.split(','), + html = '', + style = '', + nowDate = new Date(), + nowYear = nowDate.getFullYear(), + nowMonth = nowDate.getMonth(), + nowDaysNub = calendar.calculateMonthDays(nowMonth, nowYear); + + var i, j; + + if (signDay.length > 0) { + for (i = 0; i < nowDaysNub; i++) { + for (j = 0; j < signDay.length; j++) { + if (i === parseInt(signDay[j])) { + $('.now-days').eq(i - 1).addClass('sign-item'); + } + } + } + } + + for (i = 0; i < data.fanCharts.length; i++) { + if (i === 0) { + style = 'font-bold'; + } else { + style = ''; + } + + html += '<li>' + + '<i class="rank-ico">' + data.fanCharts[i].num + '</i>' + + '<span data-avatar="' + data.fanCharts[i].img + '" class="rank-avatar"></span>' + + '<span class="fans-name">' + data.fanCharts[i].name + '</span>' + + '<div class="fans-intimacy">亲密度<span class="' + style + '">' + + data.fanCharts[i].intimacyNum + '</span></div>' + + '</li>'; + } + + $ul.html(html); + + $('.fan-charts-cont .rank-avatar').each(function(key, item) { + if ($(item).attr('data-avatar') !== '') { + setAvatar($(item)); + } + }); + + $myIntimacy.find('span').html(data.todayIntimacy); + $increased.find('span').html(data.todayIntimacy); + + if (data.intimacyNum === 0) { + $('.my-intimacy').hide(); + $('.increased').show(); + } else { + $('.my-intimacy').show(); + $('.increased').hide(); + } + + $('.pop-intimacy').css({ + zIndex: '10' + }).show(); + $('.classroom-mask').css({ + zIndex: '9' + }).show(); + $('body').css({ + overflow: 'hidden' + }); +} + +//当前字符串字节数统计 +function bytesCountAction(code, bytesCount) { + if (/^[\u0000-\u00ff]$/.test(code)) { + bytesCount += 1; + } else { + bytesCount += 2; + } + + return bytesCount; +} + +// 亲密度用户名字字数限制 +function limitUsername() { + var $name = $('.home-floor-sign').find('.user-name'), + nameVal = $name.html(), + nameSize = nameVal.length, + bytesCount = 0, + newName = ''; + + var i, code; + + for (i = 0; i < nameSize; i++) { + code = nameVal.charAt(i); + bytesCount = bytesCountAction(code, bytesCount); + + if (bytesCount < 5) { + newName += code; + } + } + + if (bytesCount > 8) { + newName += '..' + nameVal.charAt(nameSize - 1); + } else { + newName = nameVal; + } + + $name.html(newName); +} + +if ($('.banner-swiper').find('li').length > 1) { + bannerSwiper = new Swiper('.banner-swiper', { + lazyLoading: true, + lazyLoadingInPrevNext: true, + loop: true, + autoplay: 3000, + autoplayDisableOnInteraction: false, + paginationClickable: true, + slideElement: 'li', + pagination: '.banner-top .pagination-inner' + }); +} + +if ($('.collocation-swiper').find('li').length > 1) { + collocationSwiper = new Swiper('.collocation-swiper', { + lazyLoading: true, + lazyLoadingInPrevNext: true, + lazyLoadingOnTransitionStart: true, + grabCursor: true, + slidesPerView: 'auto', + slideElement: 'li', + watchSlidesVisibility: true + }); +} + +// 星鲜事显示点赞人数的区域 +if ($('.artice-zan').find('li').length > 0) { + $('.zan-more').show(); +} + +if ($('.home-floor-sign').length > 0) { + limitUsername(); +} + +// 星鲜事点赞事件 +$(document).on('touchstart', '.like-ico', function(event) { + var $that = $(this), + addString = ''; + + event.stopPropagation(); + + $.ajax({ + type: 'POST', + url: '/guang/starclass/setPraise', + data: { + articleId: $that.parents('li').attr('articleId') + }, + success: function(data) { + var code = data.code; + + if (code === 200) { + if ($that.hasClass('like')) { + $that.removeClass('like'); + } else { + $that.addClass('like'); + } + + if (data.num > 99) { + addString = '+'; + } else { + addString = ''; + } + + $that.parent().find('.zan-more').html(data.num + addString); + } + }, + error: function() { + tip.show('网络断开连接了~'); + } + }); +}); + +// 增加亲密度请求 +$('.add-intimacy').on('touchstart', function(event) { + event.stopPropagation(); + event.preventDefault(); + + $.ajax({ + type: 'GET', + url: '/guang/starclass/sign', + success: function(data) { + var code = data.code; + + if (code === 200) { + intimacyData(data.data); + } + + if (code === 201) { + if ($('#intimacy-link').length <= 0) { + $('body').append('<a href=\'' + data.data + '\' style="display:none;" id="intimacy-link">' + + '<span class="intimacy-link"></span></a>'); + } + + $('.intimacy-link').click(); + } + }, + error: function() { + tip.show('网络断开连接了~'); + } + }); +}); + +// 关闭日历弹出窗事件 +$('.pop-intimacy .pop-close, .classroom-mask').on('click', function() { + history.go(0); +}); + + +if ($('.user-head').attr('data-avatar') !== '') { + setAvatar($('.user-head')); +} - $history.html(html); - if (html !== '') { - $clearHistory.removeClass('hide'); - $historySearch.removeClass('hide'); - } - window.rePosFooter(); - } - } -}()); }); -define("js/plugin/security", ["jquery"], function(require, exports, module){ +define("js/guang/calendar", ["jquery"], function(require, exports, module){ /** - * 校验input, 防止SQL注入 - * @author: 赵彪<bill.zhao@yoho.cn> - * @date: 2015/11/30 + * 星潮教室 亲密度·日期 + * @author: wsl<shuiling.wang@yoho.cn> + * @date: 2016/4/11 */ -var $ = require("jquery"), - tip = require("js/plugin/tip"); - -/** - * hasStrangeInput() return true when input have danger value - * - * @param {Bool} needConvert Set if the danger input value should be converted to space - * @return {Bool} true/false If the input have danger value - */ -function hasDangerInput(needConvert) { +var $ = require("jquery"); - var $inputs = $('input[type!=hidden], textarea'); +var CalendarHandler = { + currentYear: 0, + currentMonth: 0, + initialize: function() { + var $calendarItem; - var validationPartten = /['"<>&\|]|--/g, - inputsLength = $inputs.length, - val, - i, - matchChars, + $calendarItem = this.createCalendar(0, 0); + $('#Container').append($calendarItem); + }, + isRuiYear: function(aDate) { + return 0 === aDate % 4 && (aDate % 100 !== 0 || aDate % 400 === 0); + }, + calculateWeek: function(y, m, d) { + var arr, vDay, week; - // to set if the input value should be coverted, and its default value is true; - willConvert = needConvert === undefined || typeof needConvert !== 'boolean' ? true : needConvert; + arr = '7123456'.split(''); + vDay = parseInt(d, 10); + week = arr[new Date(y, m - 1, vDay).getDay()]; + return week; + }, + calculateMonthDays: function(m, y) { + var mDay = 0; + var isRn; + if (m === 0 || m === 1 || m === 3 || m === 5 || m === 7 || m === 8 || m === 10 || m === 12) { + mDay = 31; + } else { + if (m === 2) { - for (i = 0; i < inputsLength; i++) { - val = $inputs.eq(i).val(); - if (validationPartten.test(val)) { - if (willConvert) { - $inputs.eq(i).val(val.replace(validationPartten, ' ')); + // 判断是否为芮年 + isRn = this.isRuiYear(y); + if (isRn === true) { + mDay = 29; + } else { + mDay = 28; + } } else { - matchChars = val.match(validationPartten).join(' '); - tip.show('不可以输入 ' + matchChars + ' 哦!'); + mDay = 30; } + } + return mDay; + }, + createCalendar: function(y, m) { + var $dayItem, nowDate, nowYear, nowMonth, nowDaysNub, nowWeek, lastMonthDaysNub, i, hasCreateDaysNub; + var months = ['January', 'February', 'March', 'April', 'May', + 'June', 'July', 'August', 'September', 'October', 'November', 'December']; - return !willConvert && true; - } - } + // var signDay = $('.sign-day').val(); + $dayItem = $('<div class="day-item"></div>'); - return false; -} + // 获取当前月份的天数 + nowDate = new Date(); + nowYear = y === 0 ? nowDate.getFullYear() : y; + this.currentYear = nowYear; + nowMonth = m === 0 ? nowDate.getMonth() + 1 : m; + this.currentMonth = nowMonth; + nowDaysNub = this.calculateMonthDays(nowMonth, nowYear); -exports.hasDangerInput = hasDangerInput; - -}); -define("js/me/dialog", ["jquery","handlebars","source-map","hammer"], function(require, exports, module){ -/* - * @Description: dialog - * @Time: 2015/11/18 - * @author: chenglong.wang - */ + window.nowDaysNub = nowDaysNub; -var $ = require("jquery"), - Handlebars = require("handlebars"), - Hammer = require("hammer"); + $('.cur-year').html(nowYear); + $('.cur-month').html(months[nowMonth - 1]); -var $dialogWrapper, - dialogTpl, - dialogTemplate; + // 获取当月第一天是星期几 + nowWeek = parseInt(this.calculateWeek(nowYear, nowMonth, 1)); -function getInstance() { - if (dialogTpl === undefined) { - dialogTpl = '<div id="dialog-wrapper" class="dialog-wrapper">' + - '<div class="dialog-box">' + - '{{# hasHeader}}' + - '{{/ hasHeader}}' + - '<div class="dialog-content">{{dialogText}}</div>' + - '{{# hasFooter}}' + - '<div class="dialog-footer">' + - '{{# leftBtnText}}' + - '<span class="dialog-left-btn tap-hightlight">{{.}}</span>' + - '{{/ leftBtnText}}' + - '{{# rightBtnText}}' + - '<span class="dialog-right-btn tap-hightlight">{{.}}</span>' + - '{{/ rightBtnText}}' + - '</div>' + - '{{/ hasFooter}}' + - '</div>' + - '</div>'; + // 获取上个月的天数 + lastMonthDaysNub = this.calculateMonthDays((nowMonth - 1), nowYear); - dialogTemplate = Handlebars.compile(dialogTpl); + if (nowWeek !== 0) { + + // 生成上月剩下的日期 + for (i = (lastMonthDaysNub - nowWeek); i < lastMonthDaysNub; i++) { + $dayItem.append('<div class="item last-item">' + (i + 1) + '</div>'); + } + } + + // 生成当月的日期 + for (i = 1; i <= nowDaysNub; i++) { + + // if (signDay.indexOf(i) > -1) { + // $dayItem.append('<div class="item signItem">' + i + '</div>'); + // } else { + // $dayItem.append('<div class="item">' + i + '</div>'); + // } + + $dayItem.append('<div class="item now-days">' + i + '</div>'); + } + + // 获取总共已经生成的天数 + hasCreateDaysNub = nowWeek + nowDaysNub; + + // 如果小于42,往下个月推算 + if (hasCreateDaysNub < 41) { + for (i = 0; i <= (41 - hasCreateDaysNub); i++) { + $dayItem.append('<div class="item last-item">' + (i + 1) + '</div>'); + } + } + + return $dayItem; } - return dialogTemplate; -} +}; -// fullWithBtn是供详情页获取限购码使用的特殊参数 -exports.showDialog = function(data, callback, callbackForLeft, fullWithBtn) { +$(document).ready(function() { + CalendarHandler.initialize(); +}); - var dialogTemplate = getInstance(), - dialogStr = dialogTemplate(data), - $dialogBox, - defaultHideDuraton, - dialogWrapperHammer; +exports.calculateMonthDays = CalendarHandler.calculateMonthDays; + +}); +define("js/guang/collocation-list", ["jquery","lazyload","mlellipsis"], function(require, exports, module){ +/** + * 星潮教室-星搭配分页加载 + * @author: wsl<shuiling.wang@yoho.cn> + * @date: 2016/4/12 + */ - $('.dialog-wrapper').remove(); +var $ = require("jquery"), + tip = require("js/plugin/tip"), + loading = require("js/plugin/loading"), + lazyLoad = require("lazyload"), + ellipsis = require("mlellipsis"), + stopLoading = false; - $('body').append($(dialogStr)); +var page = 1; - $dialogBox = $('.dialog-box'); - $dialogWrapper = $('.dialog-wrapper'); +ellipsis.init(); +$('body').addClass('star-class-body'); - dialogWrapperHammer = new Hammer(document.getElementById('dialog-wrapper')); +function massageAJAX(page) { + var $this, $title, $cont; - // 显示 - if (data.fast) { - $dialogWrapper.css({ - display: 'block' - }); - } else { - $dialogWrapper.fadeIn(); - } + loading.showLoadingMask(); + $.ajax({ + type: 'GET', + url: '/guang/starclass/ajaxCollocation', + data: { + page: page + }, + dataType: 'html', + success: function(data) { + stopLoading = false; + + if (data === ' ') { + stopLoading = true; + tip.show('没有更多内容了'); + } - if (fullWithBtn) { - $('.dialog-wrapper .dialog-footer > span').css('width', '100%'); - $('.dialog-wrapper .dialog-content').css({ - 'padding-left': '1.85rem', - 'padding-right': '1.85rem' - }); - $dialogWrapper.css('z-index', '10'); - } + $('.collocation-list').append(data); - $dialogBox.css({ - top: '50%', - marginTop: -($dialogBox.height() / 2) - }); + // 限制标题字数 + $('.cont-area').each(function() { + $this = $(this); + $title = $this.find('.title'); + $cont = $this.find('.cont-txt'); - //隐藏 - if (data.autoHide) { - defaultHideDuraton = 1000; - if (data.autoHide > 1) { - defaultHideDuraton = data.autoHide; - } - setTimeout(function() { - $dialogWrapper.fadeOut(); - }, defaultHideDuraton); - } + $title[0].mlellipsis(2); + $cont[0].mlellipsis(2); + }); - //禁止在dialog上可以上下滚动 - $dialogWrapper.on('touchmove', function() { - return false; + loading.hideLoadingMask(); + lazyLoad($('img.lazy')); + }, + error: function() { + tip.show('网络断开连接了~'); + } }); +} - dialogWrapperHammer.on('tap', function(event) { +function scrollHandler() { + if (!stopLoading && ($(window).scrollTop() + $(window).height() > $('body').height() - 100)) { + stopLoading = true; + page++; + massageAJAX(page); + } +} - if ($(event.target).hasClass('dialog-left-btn')) { - if (typeof callbackForLeft === 'function') { - callbackForLeft(); +// 分享成功 +window.successShare = function() { + $.ajax({ + type: 'POST', + url: '/guang/starclass/forward', + success: function(data) { + var code = data.code; + + if (code === 200 && data.data > 0) { + tip.show('分享成功,亲密度+10'); } - $dialogWrapper.fadeOut(); - } else if ($(event.target).hasClass('dialog-right-btn')) { - callback(); + }, + error: function() { + tip.show('网络断开连接了~'); } - - // 防止出现点透问题 - event.preventDefault(); - event.srcEvent.stopPropagation(); }); }; -exports.hideDialog = function() { - $('.dialog-wrapper').remove(); -}; - -}); -define("js/index/write-search", [], function(require, exports, module){ -/** - * 将搜索结果存localStorage - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/29 - */ - -var ranToken = ',', - historyval = 'historys1'; - -//获取分隔符 -function getRanToken() { - return ranToken; -} - -//存变量 -function getHistoryval() { - return historyval; -} - -//绑定提交前的存local操作 -function bindWirteLocal($form) { - $form.on('submit', function() { - var query = this.query.value; - - setHistoryValFun(query); - }); -} - -function setHistoryValFun(query) { - var historys; - if (localStorage) { - historys = localStorage.getItem(historyval); - - historys = historys ? historys.replace(new RegExp((query + ranToken), 'g'), '') : ''; - - if (historys === '') { - query = ranToken + query; - } - - historys += query + ranToken; - localStorage.setItem(historyval, historys); - } -} - -exports.getRanToken = getRanToken; -exports.getHistoryval = getHistoryval; -exports.setHistoryValFun = setHistoryValFun; - -exports.bindWirteLocal = bindWirteLocal; -}); -define("js/index/footer", ["jquery","hammer"], function(require, exports, module){ -/** - * 底部JS - * @author: liangzhifeng<zhifeng.liang@yoho.cn> - * @date: 2015/10/26 - */ - -var $ = require("jquery"), - Hammer = require("hammer"); - -var floatLayerBtnHammer; - -require("js/common"); - -/** - * 获取url参数 - */ -function getQueryString(name) { - var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i'); - var r = window.location.search.substr(1).match(reg); - - if (r != null) { - return window.unescape(r[2]); - } - return null; -} - -function downLoadApp() { - var appUrl = 'http://www.yohoshow.com/about/index/yohobuyqr/'; - var clickedAt = new Date(); - - setTimeout(function() { - var mkt = getQueryString('mkt_code'); - - if ((new Date()) - clickedAt < 2000) { - if (mkt) { - appUrl += '?union_type=' + mkt; - } - window.location = appUrl; - } - }, 500); -} - -$('#float-layer-close').on('touchend', function(e) { - $('#float-layer-app').hide(); - window.setCookie('_float-layer-app', 'id490655927', - { - domain: '.yohobuy.com' - }); - window.setCookie('_float-layer-app-close', 1, - { - domain: '.yohobuy.com', - expires: 1 - }); - return false; -}); - -if ($('#float-layer-btn') && $('#float-layer-btn')[0]) { - floatLayerBtnHammer = new Hammer($('#float-layer-btn')[0]); - floatLayerBtnHammer.on('tap', function(e) { - downLoadApp('bottom'); - e.srcEvent.stopPropagation(); - }); - - if (typeof window.cookie === 'function' && !window.cookie('_float-layer-app')) { - $('#float-layer-app').show(); - } else { - $('#float-layer-app').hide(); - } -} - -}); -define("js/index/channel", ["jquery","hammer"], function(require, exports, module){ -/** - * 频道选择页面顶部搜索 - * @author: bikai<kai.bi@yoho.cn> - * @date: 2015/10/28 - */ -var $ = require("jquery"), - security = require("js/plugin/security"); +$(window).scroll(function() { + scrollHandler(); +}); -var $searchBox = $('.search-box'), - $box = $('.box'), - $indexSearch = $('.index-search'), - $indexLogo = $('.index-logo'), - $channelLink = $('.index-channel a:not(#yohood)'); +if ($('.collocation-list').find('li').length === 0) { + massageAJAX(1); +} -var $search = $searchBox.children('input[type="text"]'), - $cancelSearch = $box.children('.no-search'), - $searchIcon = $searchBox.children('.search-icon'); +// 星搭配收藏请求 +$(document).on('touchstart', '.collection', function(event) { + var $that = $(this), + $icon = $that.find('.collected-ico'); -require("js/common"); + var type; -$search.on('focus', function() { - $box.addClass('action'); - $indexLogo.addClass('action'); -}).on('input', function() { - if ($search.val() === '') { - $searchIcon.addClass('empty'); + event.stopPropagation(); + + if ($icon.hasClass('collected')) { + type = 'del'; } else { - $searchIcon.removeClass('empty'); + type = 'fav'; } -}); -$cancelSearch.on('touchend', function() { - $box.removeClass('action'); - $indexLogo.removeClass('action'); - $search.blur(); - return false; -}); -$searchBox.children('.clear-text').on('touchstart', function() { - $search.val('').focus().trigger('input'); -}); + $.ajax({ + type: 'POST', + url: '/guang/starclass/setFavorite', + data: { + articleId: $that.parents('li').attr('articleId'), + type: type + }, + success: function(data) { + var code = data.code; -$searchBox.children('.search-icon').on('touchstart', function() { - if (security.hasDangerInput()) { - return false; - } - $indexSearch.submit(); -}); + if (code === 200) { + if ($icon.hasClass('collected')) { + $icon.removeClass('collected'); + } else { + $icon.addClass('collected'); + } -$searchBox.keyup(function(e) { - if (e.keyCode === 13) { - if (security.hasDangerInput()) { - return false; - } - $indexSearch.submit(); - } -}); + } -$('.index-channel img').on('load error', function() { - window.rePosFooter && window.rePosFooter(); -}); + if (code === 201) { + if ($('#collocation-link').length <= 0) { + $('body').append('<a href=\'' + data.data + '\' style="display:none;" id="collocation-link">' + + '<span class="collocation-link"></span></a>'); + } -$channelLink.on('touchstart', function() { - $channelLink.css({ - background: '#000', - color: '#fff', - borderColor: '#fff' - }); - $(this).css({ - background: 'rgba(255, 255, 255, 0.5)', - color: '#000', - borderColor: '#000' - }); -}).on('touchend touchcancel', function() { - $(this).css({ - background: '#000', - color: '#fff', - borderColor: '#fff' + $('.collocation-link').click(); + } + }, + error: function() { + tip.show('网络断开连接了~'); + } }); }); }); -define("js/index/coupon", ["jquery","swiper","index"], function(require, exports, module){ -/** - * Created by Administrator on 2016/4/13. - */ -var $ = require("jquery"), - Swiper = require("swiper"), - $receive = $('.main-right-receive'), - $mask = $('.floor-mask'), - $message = $('.floor-message'), - $tooltip = $('.floor-tooltip'), - tip = require("js/plugin/tip"); - -var bannerSwiper; - -// 获取url中的参数 -function getUrlParam(name) { - - // 构造一个含有目标参数的正则表达式对象 - var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)'); - - // 匹配目标参数 - var r = window.location.search.substr(1).match(reg); - - // 返回参数值 - if (r != null) { - return r[2]; - } - - return null; -} - -$receive.on('click', function() { - var $curDom = $(this), - req = ''; - - if (getUrlParam('app_version')) { - req += '&app_version=' + getUrlParam('app_version'); - } - - if (getUrlParam('uid')) { - req += '&uid=' + getUrlParam('uid'); - } - - $.ajax({ - url: '//m.yohobuy.com/coupon/receiveCoupon?code=' + getUrlParam('code') + req, - data: { - couponID: $curDom.parents('.coupon-floor').attr('coupon-id') - }, - dataType: 'json', - success: function(data) { - var msg = data.msg, - status = data.status, - newUrl = data.url + '?code=' + getUrlParam('code'); - - - if (data.isApp === true) { - newUrl = data.url; - } - if (data.noLogin === true) { - if ($('#intimacy-link').length <= 0) { - $('body').append('<a href=\'' + newUrl + '\' style="display:none;" id="intimacy-link">' + - '<span class="intimacy-link"></span></a>'); - } - - $('.intimacy-link').click(); - } else { - if (status) { - $curDom.hide(); - $curDom.next().show(); - $tooltip.show(); - - setTimeout(function() { - $tooltip.hide(); - }, 3000); - } else { - $message.find('.coupon-message-content').text(msg); - $mask.show(); - $message.show(); - } - } - }, - error: function() { - tip.show('网络异常!'); - } - }); -}); - -$('.coupon-floor a, .banner-top a').on('click', function() { - if ($(this).attr('href').length <= 0 || $(this).attr('href') === '#') { - return false; - } -}); - -if ($('.banner-swiper').find('li').length > 1) { - bannerSwiper = new Swiper('.banner-swiper', { - lazyLoading: true, - lazyLoadingInPrevNext: true, - loop: true, - autoplay: 3000, - autoplayDisableOnInteraction: false, - paginationClickable: true, - slideElement: 'li', - pagination: '.banner-top .pagination-inner' - }); -} - -$('.coupon-message-op-rel').on('click', function() { - location.reload(); -}); - -if ($('#noData').length > 0) { - if (location.href.indexOf('?openby:yohobuy=') <= 0) { - tip.show('网络异常!'); - } +define("js/guang/check-top", ["jquery"], function(require, exports, module){ +/** + * 星潮教室-top100 + * @author: wsl<shuiling.wang@yoho.cn> + * @date: 2016/4/12 + */ + +var $ = require("jquery"); + +$('body').addClass('star-class-body'); + +function setAvatar($userAvatar) { + var myImage = new Image(), + avatar; + + // 部分老用户没有头像,显示默认头像 + avatar = $userAvatar.data('avatar'); + myImage.src = avatar; + myImage.onload = function() { + $userAvatar.css('background-image', 'url(' + avatar + ')'); + }; +} + +if ($('.ranking-area li').length > 0) { + $.each($('.ranking-area li'), function(key, item) { + setAvatar($(item).find('.rank-avatar')); + }); +} + +if ($('.user-avatar').attr('data-avatar') !== '') { + setAvatar($('.user-avatar')); } - -$mask.on('click', function() { - $mask.hide(); - $message.hide(); }); - - +define("js/home/entry", ["jquery","swiper","lazyload","hammer","mlellipsis","index"], function(require, exports, module){ +/** + * 首页打包入口 + * @author: liangzhifeng<zhifeng.liang@yoho.cn> + * @date: 2015/10/12 + */ + +require("js/home/home"); +require("js/home/maybe-like"); }); -define("js/passport/entry", ["jquery","handlebars","source-map","hammer"], function(require, exports, module){ +define("js/home/home", ["jquery","swiper","lazyload","hammer","mlellipsis","index"], function(require, exports, module){ /** - * 注册、登录、密码找回打包入口 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/8 + * 首页 + * @author: liangzhifeng<zhifeng.liang@yoho.cn> + * @date: 2015/10/12 */ +var $ = require("jquery"), + Swiper = require("swiper"), + lazyLoad = require("lazyload"), + noticeScroll = require("js/plugin/notice-scroll"), + $mobileWrap = $('.mobile-wrap'), + $overlay = $('.overlay'), + $sideNav = $('.side-nav'), + $subNav = $('.sub-nav'), + bannerSwiper, + recommendSwiper, + hotBrandsSwiper, + trendTopicSwiper, + goodsSwiper, + freshSwiper; + +var start = 0, + swiperClass, + $logotrans = $('.home-header .logo'), + openSideNav = false, + isen = true; + +var attachFastClick = require("js/home/fastclick"); +attachFastClick(document.body); + +lazyLoad($('img.lazy')); +noticeScroll('.notice', $('.notice').data('time') * 1000); + +$('.nav-btn').on('touchstart', function() { + $sideNav.css('pointer-events', 'none'); + $mobileWrap.addClass('menu-open'); + $overlay.show().css('opacity', 0.3); + $sideNav.addClass('on'); + openSideNav = true; -//注册 -require("js/passport/register/register"); -require("js/passport/register/code"); -require("js/passport/register/password"); + setTimeout(function() { + $sideNav.css('pointer-events', 'auto'); + }, 400); -//登录 -require("js/passport/login/login"); -require("js/passport/login/international"); + return false; +}); -//密码找回 -require("js/passport/back/mobile"); -require("js/passport/back/code"); -require("js/passport/back/email"); -require("js/passport/back/email-success"); -require("js/passport/back/new-password"); +function hideSideBar(){ + openSideNav = false; + if ($mobileWrap.hasClass('menu-open')) { + $mobileWrap.removeClass('menu-open'); + $overlay.hide(); + $('.sub-nav').removeClass('show'); + $sideNav.removeClass('on'); + } +} -//绑定手机 -require("js/passport/bind/bind"); -require("js/passport/bind/code"); -require("js/passport/bind/password"); +$overlay.on('touchstart', function() { + hideSideBar(); + return false; +}); -// 关联手机 -require("js/passport/bind/relate"); - -}); -define("js/passport/register/register", ["jquery"], function(require, exports, module){ -/** - * 注册 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/8 - */ -var $ = require("jquery"); +$sideNav.on('touchmove scroll', function() { + return false; +}); -var $phoneNum = $('#phone-num'), - $countrySelect = $('#country-select'), - $areaCode = $('#area-code'), - $btnNext = $('#btn-next'); +// 点击一级导航,弹出二级导航 +$sideNav.on('touchend', 'li', function(e) { + if ($(this).find('.sub-nav').size() > 0) { + $('.sub-nav').removeClass('show'); + $(this).find('.sub-nav').addClass('show'); + $(this).find('.highlight').removeClass('highlight'); + } -var api = require("js/passport/api"); -var tip = require("js/plugin/tip"); + if (e.target.pathname === location.pathname) { + hideSideBar(); + return false; + } +}); -var trim = $.trim; -var showErrTip = tip.show; +// 返回一级导航,收起二级导航 +$subNav.each(function() { + $(this).find('li').eq(0).on('click', function() { + $('.sub-nav').removeClass('show'); + return false; + }); +}).on('touchstart', function(e) { + if (e.currentTarget !== e.target) { + $subNav.find('li').removeClass('current'); + } +}); -var requested = false; +// 侧边栏点击背景色变化 +function highlight($elem) { + $elem.find('li').on('touchstart', function() { + $elem.find('.highlight').removeClass('highlight'); + $(this).addClass('highlight'); + }).on('touchend touchcancel', function() { + $(this).removeClass('highlight'); + }); +} +highlight($sideNav); +highlight($subNav); -api.selectCssHack($('#country-select')); -api.bindClearEvt(); +// 头部banner轮播 +if ($('.banner-swiper').find('li').size() > 1) { + bannerSwiper = new Swiper('.banner-swiper', { + lazyLoading: true, + lazyLoadingInPrevNext: true, + loop: true, + autoplay: 3000, + autoplayDisableOnInteraction: false, + paginationClickable: true, + slideElement: 'li', + pagination: '.banner-top .pagination-inner' + }); +} -$phoneNum.bind('input', function() { - if (trim($phoneNum.val()) === '') { - $btnNext.addClass('disable'); - } else { - $btnNext.removeClass('disable'); - } +// 热门品牌滑动 +hotBrandsSwiper = new Swiper('.brands-swiper', { + grabCursor: true, + slidesPerView: 'auto', + wrapperClass: 'brands-list', + slideElement: 'li' }); -$countrySelect.change(function() { - $areaCode.text($countrySelect.val()); +// 推荐搭配滑动 +recommendSwiper = new Swiper('.recommend-swiper', { + grabCursor: true, + slidesPerView: 'auto', + wrapperClass: 'recommend-list', + slideElement: 'li' }); -$btnNext.on('touchstart', function() { - var pn = trim($phoneNum.val()), - areaCode = $countrySelect.val(); +// 潮品话题轮播 +if ($('.trend-topic-swiper').find('li').size() > 1) { + trendTopicSwiper = new Swiper('.trend-topic-swiper', { + loop: true, + autoplay: 3000, + autoplayDisableOnInteraction: false, + paginationClickable: true, + slideElement: 'li', + pagination: '.trend-topic-content .pagination-inner' + }); +} - if ($btnNext.hasClass('disable')) { - return; +// 新人专享轮播 +if ($('.fresh-list-swiper').find('li').size() > 1) { + freshSwiper = new Swiper('.fresh-list-swiper', { + lazyLoading: true, + lazyLoadingInPrevNext: true, + grabCursor: true, + slidesPerView: 'auto', + slideElement: 'li', + watchSlidesVisibility: true + }); +} + +// 潮流上装/经典裤装等轮播 +$('.category-swiper').each(function(i, index) { + swiperClass = 'category-swiper' + i; + $(this).addClass(swiperClass); + if ($('.' + swiperClass).find('.swiper-slide').size() > 1) { + goodsSwiper = new Swiper('.' + swiperClass, { + loop: true, + autoplay: 3000, + autoplayDisableOnInteraction: false, + paginationClickable: true, + slideElement: 'li', + pagination: '.' + swiperClass + ' .pagination-inner' + }); } +}); - if (requested) { - return false; +// logo动画 +function tsAnimate() { + start = start + 10; + $logotrans.css({ + transform: 'rotateX(' + start + 'deg)', + '-webkit-transform': 'rotateX(' + start + 'deg)', + '-moz-transform': 'rotateX(' + start + 'deg)' + }); + if (start / 90 % 2 === 1) { + if (isen) { + $logotrans.addClass('animate'); + isen = false; + } else { + $logotrans.removeClass('animate'); + isen = true; + } + } + if (start / 90 % 2 === 0 && start % 360 !== 0) { + window.setTimeout(tsAnimate, 3000); + } else { + if (start % 360 === 0) { + window.setTimeout(tsAnimate, 60 * 1000); + } else { + window.requestAnimationFrame(tsAnimate); + } } +} +setTimeout(tsAnimate, 3000); - if (api.phoneRegx[areaCode].test(pn)) { +$('.home-header .iconfont').on('touchstart', function() { + $(this).addClass('highlight'); +}).on('touchend touchcancel', function() { + $(this).removeClass('highlight'); +}); - requested = true; +// 底部留出tab 的高度 +window.reMarginFooter('.footer-tab'); - $.ajax({ - url: '/passport/reg/verifymobile', - type: 'POST', - data: { - areaCode: areaCode.replace('+', ''), - phoneNum: pn - }, - success: function(data) { - if (data.code === 200) { - location.href = data.data; - } else { - showErrTip(data.message); - requested = false; - } - }, - error: function(err) { - showErrTip('出错了,请重试'); - requested = false; +// set cookie +exports.set = function(c) { + window.setCookie('_Channel', c, { + expires: 365, + domain: '.m.yohobuy.com' + }); +}; + +require("js/home/maybe-like")(); + +}); +define("js/plugin/notice-scroll", ["jquery"], function(require, exports, module){ +/** + * 公告栏目滚动 + * bikai kai.bi@yoho.cn + */ + +var $ = require("jquery"); + +function noticeScroll(selecter, time) { + var $notice = $(selecter), + $noticeItem = $notice.find('.notice-item'), + count = $noticeItem.length, + i = 1; + + selecter = selecter || '.notice'; + time = time || 3000; + + if (count > 1) { + setInterval(function() { + if (i >= count) { + i = 0; } - }); - } else { - showErrTip('手机号格式不正确,请重新输入'); + $noticeItem.fadeOut(); + $notice.find('.item-' + i).fadeIn(); + i++; + }, time); } -}); +} + +module.exports = noticeScroll; }); -define("js/passport/api", ["jquery"], function(require, exports, module){ -/** - * 登录注册公用API - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/8 - */ -var $ = require("jquery"); +define("js/home/fastclick", [], function(require, exports, module){ +;(function () { + 'use strict'; -var trim = $.trim; + /** + * @preserve FastClick: polyfill to remove click delays on browsers with touch UIs. + * + * @codingstandard ftlabs-jsv2 + * @copyright The Financial Times Limited [All Rights Reserved] + * @license MIT License (see LICENSE.txt) + */ -//邮箱验证规则 -var emailRegx = /^([a-zA-Z0-9]+[_|\_|\.|-]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.|-]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/; + /*jslint browser:true, node:true*/ + /*global define, Event, Node*/ -//手机号码验证规则 -var phoneRegx = { - '+86': /^1[35847]{1}[0-9]{9}$/, - '+852': /^[965]{1}[0-9]{7}$/, - '+853': /^[0-9]{8}$/, - '+886': /^[0-9]{10}$/, - '+65': /^[98]{1}[0-9]{7}$/, - '+60': /^1[1234679]{1}[0-9]{8}$/, - '+1': /^[0-9]{10}$/, - '+82': /^01[0-9]{9}$/, - '+44': /^7[789][0-9]{8}$/, - '+81': /^0[9|8|7][0-9]{9}$/, - '+61': /^[0-9]{11}$/ -}; -/** - * 密码显示隐藏 - * @params opt 初始化参数 - */ -function bindEyesEvt(opt) { - var $hasEye = $('.has-eye'), - $eye; + /** + * Instantiate fast-clicking listeners on the specified layer. + * + * @constructor + * @param {Element} layer The layer to listen on + * @param {Object} [options={}] The options to override the defaults + */ + function FastClick(layer, options) { + var oldOnClick; - if (opt && opt.status === 'open') { - $hasEye.append('<div class="eye"></div>'); - } else { - $hasEye.append('<div class="eye close"></div>'); - } - $eye = $hasEye.children('.eye'); + options = options || {}; - $eye.on('touchstart', function(e) { - var $this = $(this), - $pwd = $this.siblings('.pwd'); + /** + * Whether a click is currently being tracked. + * + * @type boolean + */ + this.trackingClick = false; - e.preventDefault(); - $this.toggleClass('close'); - //切换密码显示和文本显示 - if ($this.hasClass('close')) { - $pwd.attr('type', 'password'); - } else { - $pwd.attr('type', 'text'); - } - $pwd.focus(); - }); -} + /** + * Timestamp for when click tracking started. + * + * @type number + */ + this.trackingClickStart = 0; -// 清空账号显示 -function bindClearEvt() { - var $hasClear = $('.has-clear'), - $clear; - $hasClear.append('<div class="clear-input"></div>'); - $clear = $hasClear.children('.clear-input'); + /** + * The element being tracked for a click. + * + * @type EventTarget + */ + this.targetElement = null; - $clear.on('touchstart', function(e) { - var $input = $clear.siblings('.input'); - $input.val('').trigger('input').focus(); - e.preventDefault(); - }); + /** + * X-coordinate of touch start event. + * + * @type number + */ + this.touchStartX = 0; - //反向逻辑 - $hasClear.children('.input').bind('input', function() { - var $this = $(this), - $thisClear = $this.siblings('.clear-input'), - val = trim($this.val()); - if (val === '') { - $thisClear.hide(); - } else { - $thisClear.show(); - } - }); -} + /** + * Y-coordinate of touch start event. + * + * @type number + */ + this.touchStartY = 0; -// 密码长度验证 -function pwdValidate(pwd) { - if (pwd.length >= 6 && pwd.length <= 20) { - return true; - } - return false; -} -// hack for resolving direction:rtl didn't work in android uc -function selectCssHack($countrySelect) { - var u = navigator.userAgent; + /** + * ID of the last touch, retrieved from Touch.identifier. + * + * @type number + */ + this.lastTouchIdentifier = 0; - function autoSelectWidth() { - var wordCount = $countrySelect.find('option:selected').text().length; - switch (wordCount) { + /** + * Touchmove boundary, beyond which a click will be cancelled. + * + * @type number + */ + this.touchBoundary = options.touchBoundary || 10; - //分别有2,3,4个汉字的情况 - case 2: - $countrySelect.outerWidth(90); - break; - case 3: - $countrySelect.outerWidth(110); - break; - default: - $countrySelect.outerWidth(130); - } - } - if (u.match(/uc/i) && u.match(/android/i)) { - $countrySelect.change(function() { - autoSelectWidth(); - }); - } else { - $countrySelect.removeClass('in-android-uc'); - } -} + /** + * The FastClick layer. + * + * @type Element + */ + this.layer = layer; -//Exports APIs -module.exports = { - emailRegx: emailRegx, - phoneRegx: phoneRegx, - bindEyesEvt: bindEyesEvt, - bindClearEvt: bindClearEvt, - pwdValidate: pwdValidate, - selectCssHack: selectCssHack -}; -}); -define("js/passport/register/code", ["jquery"], function(require, exports, module){ -/** - * 注册-验证码 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/8 - */ + /** + * The minimum time between tap(touchstart and touchend) events + * + * @type number + */ + this.tapDelay = options.tapDelay || 200; -require("js/passport/code")(true); -}); -define("js/passport/code", ["jquery"], function(require, exports, module){ -/** - * 注册/找回密码-验证码 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/8 - */ -var $ = require("jquery"); + /** + * The maximum time for a tap + * + * @type number + */ + this.tapTimeout = options.tapTimeout || 700; + + if (FastClick.notNeeded(layer)) { + return; + } + + // Some old versions of Android don't have Function.prototype.bind + function bind(method, context) { + return function() { return method.apply(context, arguments); }; + } + + + var methods = ['onMouse', 'onClick', 'onTouchStart', 'onTouchMove', 'onTouchEnd', 'onTouchCancel']; + var context = this; + for (var i = 0, l = methods.length; i < l; i++) { + context[methods[i]] = bind(context[methods[i]], context); + } + + // Set up event handlers as required + if (deviceIsAndroid) { + layer.addEventListener('mouseover', this.onMouse, true); + layer.addEventListener('mousedown', this.onMouse, true); + layer.addEventListener('mouseup', this.onMouse, true); + } + + layer.addEventListener('click', this.onClick, true); + layer.addEventListener('touchstart', this.onTouchStart, false); + layer.addEventListener('touchmove', this.onTouchMove, false); + layer.addEventListener('touchend', this.onTouchEnd, false); + layer.addEventListener('touchcancel', this.onTouchCancel, false); -module.exports = function(useInRegister, useForBind, useForRelate) { - var $captcha = $('#captcha'), - $btnNext = $('#btn-next'), - $captchaTip = $('#captcha-tip'), - nickname = $('#nickname').val(), - sourceType = $('#sourceType').val(), - openId = $('#openId').val(), - phoneNum = $('#phone-num').val(), - areaCode = $('#area-code').val().replace('+', ''); + // Hack is required for browsers that don't support Event#stopImmediatePropagation (e.g. Android 2) + // which is how FastClick normally stops click events bubbling to callbacks registered on the FastClick + // layer when they are cancelled. + if (!Event.prototype.stopImmediatePropagation) { + layer.removeEventListener = function(type, callback, capture) { + var rmv = Node.prototype.removeEventListener; + if (type === 'click') { + rmv.call(layer, type, callback.hijacked || callback, capture); + } else { + rmv.call(layer, type, callback, capture); + } + }; - var api = require("js/passport/api"); - var tip = require("js/plugin/tip"); + layer.addEventListener = function(type, callback, capture) { + var adv = Node.prototype.addEventListener; + if (type === 'click') { + adv.call(layer, type, callback.hijacked || (callback.hijacked = function(event) { + if (!event.propagationStopped) { + callback(event); + } + }), capture); + } else { + adv.call(layer, type, callback, capture); + } + }; + } - var trim = $.trim; - var showErrTip = tip.show; + // If a handler is already declared in the element's onclick attribute, it will be fired before + // FastClick's onClick handler. Fix this by pulling out the user-defined handler function and + // adding it as listener. + if (typeof layer.onclick === 'function') { - var urlMid = useInRegister ? 'reg' : 'back'; + // Android browser on at least 3.2 requires a new reference to the function in layer.onclick + // - the old one won't work if passed to addEventListener directly. + oldOnClick = layer.onclick; + layer.addEventListener('click', function(event) { + oldOnClick(event); + }, false); + layer.onclick = null; + } + } - var isReg = parseInt($('#isReg').val()); + /** + * Windows Phone 8.1 fakes user agent string to look like Android and iPhone. + * + * @type boolean + */ + var deviceIsWindowsPhone = navigator.userAgent.indexOf("Windows Phone") >= 0; - function startBind() { - $.ajax({ - url: useForBind ? '/passport/bind/bindMobile' : '/passport/bind/relateMobile', - type: 'post', - data: { - areaCode: areaCode.replace('+', ''), - phoneNum: phoneNum, - openId: openId, - sourceType: sourceType, - nickname: nickname, - password: '', - code: trim($captcha.val()) - }, - success: function(res) { - if (res.code === 200) { - tip.show('登录成功'); - setTimeout(function() { - location.href = res.data.refer; - }, 2000); - } else { - tip.show(res.message); - } - }, - error: function(err) { - tip.show('登录失败,请重试!'); - } - }); - } + /** + * Android requires exceptions. + * + * @type boolean + */ + var deviceIsAndroid = navigator.userAgent.indexOf('Android') > 0 && !deviceIsWindowsPhone; - function startReg() { - $.ajax({ - type: 'POST', - url: '/passport/' + urlMid + '/verifycode', - data: { - phoneNum: phoneNum, - areaCode: areaCode, - code: trim($captcha.val()), - token: $('#token').val() - }, - success: function(data) { - if (data.code === 200) { - location.href = data.data; - } else { - //验证码不正确,显示提示 - showErrTip(data.message); - } + /** + * iOS requires exceptions. + * + * @type boolean + */ + var deviceIsIOS = /iP(ad|hone|od)/.test(navigator.userAgent) && !deviceIsWindowsPhone; - } - }); - } - function countDown() { - var count = 59, - itime; + /** + * iOS 4 requires an exception for select elements. + * + * @type boolean + */ + var deviceIsIOS4 = deviceIsIOS && (/OS 4_\d(_\d)?/).test(navigator.userAgent); - itime = setInterval(function() { - if (count === 0) { - $captchaTip.text('重新发送').removeClass('disable'); - clearInterval(itime); - } else { - $captchaTip.text('重新发送 (' + count-- + '秒)'); - } - }, 1000); - } - api.bindClearEvt(); + /** + * iOS 6.0-7.* requires the target element to be manually derived + * + * @type boolean + */ + var deviceIsIOSWithBadTarget = deviceIsIOS && (/OS [6-7]_\d/).test(navigator.userAgent); - $captcha.bind('input', function() { - if (trim($captcha.val()) !== '') { - $btnNext.removeClass('disable'); - } else { - $btnNext.addClass('disable'); - } - }); + /** + * BlackBerry requires exceptions. + * + * @type boolean + */ + var deviceIsBlackBerry10 = navigator.userAgent.indexOf('BB10') > 0; - //重新发送验证码 - $captchaTip.on('touchstart', function() { - if ($captchaTip.hasClass('disable')) { - return; - } + /** + * Determine whether a given element requires a native click. + * + * @param {EventTarget|Element} target Target DOM element + * @returns {boolean} Returns true if the element needs a native click + */ + FastClick.prototype.needsClick = function(target) { + switch (target.nodeName.toLowerCase()) { - $.ajax({ - type: 'POST', - url: (useForBind || useForRelate) ? '/passport/bind/sendBindMsg' : '/passport/' + urlMid + '/sendcode', - data: { - phoneNum: phoneNum, - areaCode: areaCode - }, - success: function(data) { - if (data.code === 200) { - $captchaTip.text('重发验证码 (60秒)').addClass('disable'); - countDown(); - } else { + // Don't send a synthetic click to disabled inputs (issue #62) + case 'button': + case 'select': + case 'textarea': + if (target.disabled) { + return true; + } - //验证码不正确,显示提示 - showErrTip(data.message); - } - } - }); - }); + break; + case 'input': - $btnNext.on('touchstart', function() { - if ($btnNext.hasClass('disable')) { - return; - } + // File inputs need real clicks on iOS 6 due to a browser bug (issue #68) + if ((deviceIsIOS && target.type === 'file') || target.disabled) { + return true; + } - if (useForBind || useForRelate) { - if (isReg) { - startBind(); - } else { - location.href = '/passport/bind/password?phoneNum=' + - phoneNum + '&areaCode=' + areaCode + '&openId=' + - openId + '&sourceType=' + sourceType + '&nickname=' + nickname + '&code=' + trim($captcha.val()); - } + break; + case 'label': + case 'iframe': // iOS8 homescreen apps can prevent events bubbling into frames + case 'video': + return true; + } - } else { - startReg(); - } - }); + return (/\bneedsclick\b/).test(target.className); + }; - countDown(); -}; - -}); -define("js/passport/register/password", ["jquery"], function(require, exports, module){ -/** - * 注册-密码 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/8 - */ -var $ = require("jquery"); -var $pwd = $('#pwd'), - $btnSure = $('#btn-sure'); + /** + * Determine whether a given element requires a call to focus to simulate click into element. + * + * @param {EventTarget|Element} target Target DOM element + * @returns {boolean} Returns true if the element requires a call to focus to simulate native click. + */ + FastClick.prototype.needsFocus = function(target) { + switch (target.nodeName.toLowerCase()) { + case 'textarea': + return true; + case 'select': + return !deviceIsAndroid; + case 'input': + switch (target.type) { + case 'button': + case 'checkbox': + case 'file': + case 'image': + case 'radio': + case 'submit': + return false; + } + + // No point in attempting to focus disabled inputs + return !target.disabled && !target.readOnly; + default: + return (/\bneedsfocus\b/).test(target.className); + } + }; -var api = require("js/passport/api"); -var tip = require("js/plugin/tip"); -var trim = $.trim; -var showErrTip = tip.show; + /** + * Send a click event to the specified element. + * + * @param {EventTarget|Element} targetElement + * @param {Event} event + */ + FastClick.prototype.sendClick = function(targetElement, event) { + var clickEvent, touch; -api.bindEyesEvt({ - status: 'open' //默认眼睛打开 -}); + // On some Android devices activeElement needs to be blurred otherwise the synthetic click will have no effect (#24) + if (document.activeElement && document.activeElement !== targetElement) { + document.activeElement.blur(); + } -$pwd.bind('input', function() { - if (trim($pwd.val()) === '') { - $btnSure.addClass('disable'); - } else { - $btnSure.removeClass('disable'); - } -}); + touch = event.changedTouches[0]; -$btnSure.on('touchstart', function() { - var pwd = trim($pwd.val()); + // Synthesise a click event, with an extra attribute so it can be tracked + clickEvent = document.createEvent('MouseEvents'); + clickEvent.initMouseEvent(this.determineEventType(targetElement), true, true, window, 1, touch.screenX, touch.screenY, touch.clientX, touch.clientY, false, false, false, false, 0, null); + clickEvent.forwardedTouchEvent = true; + targetElement.dispatchEvent(clickEvent); + }; - if ($btnSure.hasClass('disable')) { - return; - } + FastClick.prototype.determineEventType = function(targetElement) { - if (api.pwdValidate(pwd) === false) { - showErrTip('密码6-20位,请重新输入'); - } else { - $.ajax({ - type: 'POST', - url: '/passport/reg/setpassword', - data: { - password: pwd, - phoneNum: $('#phone-num').val(), - areaCode: $('#area-code').val(), - token: $('#token').val() - }, - success: function(data) { - var res; + //Issue #159: Android Chrome Select Box does not open with a synthetic click event + if (deviceIsAndroid && targetElement.tagName.toLowerCase() === 'select') { + return 'mousedown'; + } - if (data.code === 200) { - res = data.data; - showErrTip('注册成功'); + return 'click'; + }; - $.ajax({ - url: res.session, - dataType: 'jsonp' - }); - //1000ms后跳转页面 - setTimeout(function() { - location.href = res.href; - }, 1000); - } else { - showErrTip(data.message); - } - } - }); - } -}); -}); -define("js/passport/login/login", ["jquery"], function(require, exports, module){ -/** - * 登录 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/9/30 - */ -var $ = require("jquery"); + /** + * @param {EventTarget|Element} targetElement + */ + FastClick.prototype.focus = function(targetElement) { + var length; -var $account = $('#account'), - $pwd = $('#pwd'), - $loginBtn = $('#btn-login'), + // Issue #160: on iOS 7, some input elements (e.g. date datetime month) throw a vague TypeError on setSelectionRange. These elements don't have an integer value for the selectionStart and selectionEnd properties, but unfortunately that can't be used for detection because accessing the properties also throws a TypeError. Just check the type instead. Filed as Apple bug #15122724. + if (deviceIsIOS && targetElement.setSelectionRange && targetElement.type.indexOf('date') !== 0 && targetElement.type !== 'time' && targetElement.type !== 'month') { + length = targetElement.value.length; + targetElement.setSelectionRange(length, length); + } else { + targetElement.focus(); + } + }; - $mask = $('#retrive-pwd-mask'), - $ways = $('#retrive-pwd-ways'), - accPass = false, - pwdPass = false; + /** + * Check whether the given target element is a child of a scrollable layer and if so, set a flag on it. + * + * @param {EventTarget|Element} targetElement + */ + FastClick.prototype.updateScrollParent = function(targetElement) { + var scrollParent, parentElement; -var api = require("js/passport/api"); -var tip = require("js/plugin/tip"); + scrollParent = targetElement.fastClickScrollParent; -var trim = $.trim; -var showErrTip = tip.show; + // Attempt to discover whether the target element is contained within a scrollable layer. Re-check if the + // target element was moved to another parent. + if (!scrollParent || !scrollParent.contains(targetElement)) { + parentElement = targetElement; + do { + if (parentElement.scrollHeight > parentElement.offsetHeight) { + scrollParent = parentElement; + targetElement.fastClickScrollParent = parentElement; + break; + } -//登录按钮状态切换 -function switchLoginBtnStatus() { - if (accPass && pwdPass) { - $loginBtn.removeClass('disable'); - } else { - $loginBtn.addClass('disable'); - } -} + parentElement = parentElement.parentElement; + } while (parentElement); + } -//显示找回密码面板 -function showRetrivePanel() { - $mask.show(); - $ways.show(); -} + // Always update the scroll top tracker if possible. + if (scrollParent) { + scrollParent.fastClickLastScrollTop = scrollParent.scrollTop; + } + }; -//隐藏找回密码面板 -function hideRetrivePanel() { - $mask.hide(); - $ways.hide(); -} -//密码显示与隐藏 -api.bindEyesEvt(); + /** + * @param {EventTarget} targetElement + * @returns {Element|EventTarget} + */ + FastClick.prototype.getTargetElementFromEventTarget = function(eventTarget) { -//清空账号输入框 -api.bindClearEvt(); + // On some older browsers (notably Safari on iOS 4.1 - see issue #56) the event target may be a text node. + if (eventTarget.nodeType === Node.TEXT_NODE) { + return eventTarget.parentNode; + } -$account.bind('input', function() { - if (trim($account.val()) !== '') { - accPass = true; - } else { - accPass = false; - } - switchLoginBtnStatus(); -}); + return eventTarget; + }; -$pwd.bind('input', function() { - if (trim($pwd.val()) === '') { - pwdPass = false; - } else { - pwdPass = true; - } - switchLoginBtnStatus(); -}); + /** + * On touch start, record the position and scroll offset. + * + * @param {Event} event + * @returns {boolean} + */ + FastClick.prototype.onTouchStart = function(event) { + var targetElement, touch, selection; -// Login -$loginBtn.on('touchstart', function() { - var acc = trim($account.val()), - pwd = trim($pwd.val()); + // Ignore multiple touches, otherwise pinch-to-zoom is prevented if both fingers are on the FastClick element (issue #111). + if (event.targetTouches.length > 1) { + return true; + } - if ($loginBtn.hasClass('disable')) { - return; - } + targetElement = this.getTargetElementFromEventTarget(event.target); + touch = event.targetTouches[0]; - $loginBtn.text('正在登录...').addClass('disable'); + if (deviceIsIOS) { - //验证账号(数字或者邮箱)和密码合理性 - if ((/^[0-9]+$/.test(acc) || api.emailRegx.test(acc)) && api.pwdValidate(pwd)) { - $.ajax({ - type: 'POST', - url: '/passport/login/auth', - data: { - account: acc, - password: pwd - }, - success: function(data) { - var res; + // Only trusted events will deselect text on iOS (issue #49) + selection = window.getSelection(); + if (selection.rangeCount && !selection.isCollapsed) { + return true; + } - if (data.code === 200) { - res = data.data; + if (!deviceIsIOS4) { - showErrTip('登录成功'); - location.href = res.href; - } else { - showErrTip(data.message); - } - }, - error: function() { - showErrTip('网络断开连接啦~'); - }, - complete: function() { - $loginBtn.text('登录').removeClass('disable'); - } - }); - } else { - showErrTip('账号或密码有错误,请重新输入'); - $loginBtn.text('登录').removeClass('disable'); - } -}); + // Weird things happen on iOS when an alert or confirm dialog is opened from a click event callback (issue #23): + // when the user next taps anywhere else on the page, new touchstart and touchend events are dispatched + // with the same identifier as the touch event that previously triggered the click that triggered the alert. + // Sadly, there is an issue on iOS 4 that causes some normal touch events to have the same identifier as an + // immediately preceeding touch event (issue #52), so this fix is unavailable on that platform. + // Issue 120: touch.identifier is 0 when Chrome dev tools 'Emulate touch events' is set with an iOS device UA string, + // which causes all touch events to be ignored. As this block only applies to iOS, and iOS identifiers are always long, + // random integers, it's safe to to continue if the identifier is 0 here. + if (touch.identifier && touch.identifier === this.lastTouchIdentifier) { + event.preventDefault(); + return false; + } + this.lastTouchIdentifier = touch.identifier; -$('#forget-pwd').on('touchstart', function() { - showRetrivePanel(); -}); + // If the target element is a child of a scrollable layer (using -webkit-overflow-scrolling: touch) and: + // 1) the user does a fling scroll on the scrollable layer + // 2) the user stops the fling scroll with another tap + // then the event.target of the last 'touchend' event will be the element that was under the user's finger + // when the fling scroll was started, causing FastClick to send a click event to that layer - unless a check + // is made to ensure that a parent layer was not scrolled before sending a synthetic click (issue #42). + this.updateScrollParent(targetElement); + } + } -$mask.on('touchstart', function() { - hideRetrivePanel(); -}); + this.trackingClick = true; + this.trackingClickStart = event.timeStamp; + this.targetElement = targetElement; -$('#cancel-retrive').on('touchstart', function(e) { - e.preventDefault(); - hideRetrivePanel(); -}); + this.touchStartX = touch.pageX; + this.touchStartY = touch.pageY; -//对初始有默认值的情况去初始化登录按钮状态 -$account.trigger('input'); -$pwd.trigger('input'); - -}); -define("js/passport/login/international", ["jquery"], function(require, exports, module){ -/** - * 国际账号登录 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/8 - */ -var $ = require("jquery"); + // Prevent phantom clicks on fast double-tap (issue #36) + if ((event.timeStamp - this.lastClickTime) < this.tapDelay) { + event.preventDefault(); + } -var $phoneNum = $('#phone-num'), - $countrySelect = $('#country-select'), - $areaCode = $('#area-code'), - $pwd = $('#pwd'), - $loginBtn = $('#btn-login'), + return true; + }; - pnPass = false, - pwdPass = false; -var api = require("js/passport/api"); -var tip = require("js/plugin/tip"); + /** + * Based on a touchmove event object, check whether the touch has moved past a boundary since it started. + * + * @param {Event} event + * @returns {boolean} + */ + FastClick.prototype.touchHasMoved = function(event) { + var touch = event.changedTouches[0], boundary = this.touchBoundary; -var trim = $.trim; -var showErrTip = tip.show; + if (Math.abs(touch.pageX - this.touchStartX) > boundary || Math.abs(touch.pageY - this.touchStartY) > boundary) { + return true; + } -//登录按钮状态切换 -function switchLoginBtnStatus() { - if (pnPass && pwdPass) { - $loginBtn.removeClass('disable'); - } else { - $loginBtn.addClass('disable'); - } -} + return false; + }; -//Android-UC下显示select的direction:rtl无效的临时解决办法 -api.selectCssHack($countrySelect); -//显示隐藏密码 -api.bindEyesEvt(); + /** + * Update the last position. + * + * @param {Event} event + * @returns {boolean} + */ + FastClick.prototype.onTouchMove = function(event) { + if (!this.trackingClick) { + return true; + } -//清空手机号码 -api.bindClearEvt(); + // If the touch has moved, cancel the click tracking + if (this.targetElement !== this.getTargetElementFromEventTarget(event.target) || this.touchHasMoved(event)) { + this.trackingClick = false; + this.targetElement = null; + } -$phoneNum.bind('input', function() { - if (trim($phoneNum.val()) === '') { - pnPass = false; - } else { - pnPass = true; - } + return true; + }; - switchLoginBtnStatus(); -}); -$pwd.bind('input', function() { - var pwd = trim($pwd.val()); + /** + * Attempt to find the labelled control for the given label element. + * + * @param {EventTarget|HTMLLabelElement} labelElement + * @returns {Element|null} + */ + FastClick.prototype.findControl = function(labelElement) { - if (pwd === '') { - pwdPass = false; - } else { - pwdPass = true; - } + // Fast path for newer browsers supporting the HTML5 control attribute + if (labelElement.control !== undefined) { + return labelElement.control; + } - switchLoginBtnStatus(); -}); + // All browsers under test that support touch events also support the HTML5 htmlFor attribute + if (labelElement.htmlFor) { + return document.getElementById(labelElement.htmlFor); + } -$countrySelect.change(function() { - $areaCode.text($countrySelect.val()); -}); + // If no for attribute exists, attempt to retrieve the first labellable descendant element + // the list of which is defined here: http://www.w3.org/TR/html5/forms.html#category-label + return labelElement.querySelector('button, input:not([type=hidden]), keygen, meter, output, progress, select, textarea'); + }; -$loginBtn.on('touchstart', function() { - var pn = trim($phoneNum.val()), - areaCode = $countrySelect.val(), - pwd = trim($pwd.val()); - if ($loginBtn.hasClass('disable')) { - return; - } + /** + * On touch end, determine whether to send a click event at once. + * + * @param {Event} event + * @returns {boolean} + */ + FastClick.prototype.onTouchEnd = function(event) { + var forElement, trackingClickStart, targetTagName, scrollParent, touch, targetElement = this.targetElement; - $loginBtn.text('正在登录...').addClass('disable'); + if (!this.trackingClick) { + return true; + } - if (api.phoneRegx[areaCode].test(pn) && api.pwdValidate(pwd)) { - $.ajax({ - type: 'POST', - url: '/passport/login/auth', - data: { - areaCode: areaCode.replace('+', ''), - account: pn, - password: pwd - }, - success: function(data) { - var res, - time; + // Prevent phantom clicks on fast double-tap (issue #36) + if ((event.timeStamp - this.lastClickTime) < this.tapDelay) { + this.cancelNextClick = true; + return true; + } - if (data.code === 200) { - res = data.data; - showErrTip('登录成功'); + if ((event.timeStamp - this.trackingClickStart) > this.tapTimeout) { + return true; + } - $.ajax({ - url: res.session, - dataType: 'jsonp', - success: function() { - clearTimeout(time); + // Reset to prevent wrong click cancel on input (issue #156). + this.cancelNextClick = false; - //Cookie写入成功后,1s后跳转页面 - setTimeout(function() { - location.href = res.href; - }, 1000); - } - }); + this.lastClickTime = event.timeStamp; - //3秒后强制跳转 - time = setTimeout(function() { - location.href = res.href; - }, 3000); + trackingClickStart = this.trackingClickStart; + this.trackingClick = false; + this.trackingClickStart = 0; - showErrTip('登录成功'); - } else { - showErrTip(data.message); - } - }, - error: function() { - showErrTip('网络断开连接啦~'); - }, - complete: function() { - $loginBtn.text('登录').removeClass('disable'); - } - }); - } else { - showErrTip('账号或密码有错误,请重新输入'); - $loginBtn.text('登录').removeClass('disable'); - } -}); + // On some iOS devices, the targetElement supplied with the event is invalid if the layer + // is performing a transition or scroll, and has to be re-detected manually. Note that + // for this to function correctly, it must be called *after* the event target is checked! + // See issue #57; also filed as rdar://13048589 . + if (deviceIsIOSWithBadTarget) { + touch = event.changedTouches[0]; -//对初始有默认值的情况去初始化登录按钮状态 -$phoneNum.trigger('input'); -$pwd.trigger('input'); -}); -define("js/passport/back/mobile", ["jquery"], function(require, exports, module){ -/** - * 找回密码-手机 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/8 - */ -var $ = require("jquery"); + // In certain cases arguments of elementFromPoint can be negative, so prevent setting targetElement to null + targetElement = document.elementFromPoint(touch.pageX - window.pageXOffset, touch.pageY - window.pageYOffset) || targetElement; + targetElement.fastClickScrollParent = this.targetElement.fastClickScrollParent; + } + + targetTagName = targetElement.tagName.toLowerCase(); + if (targetTagName === 'label') { + forElement = this.findControl(targetElement); + if (forElement) { + this.focus(targetElement); + if (deviceIsAndroid) { + return false; + } -var $phoneNum = $('#phone-num'), - $countrySelect = $('#country-select'), - $areaCode = $('#area-code'), - $btnNext = $('#btn-next'); + targetElement = forElement; + } + } else if (this.needsFocus(targetElement)) { -var api = require("js/passport/api"); -var tip = require("js/plugin/tip"); + // Case 1: If the touch started a while ago (best guess is 100ms based on tests for issue #36) then focus will be triggered anyway. Return early and unset the target element reference so that the subsequent click will be allowed through. + // Case 2: Without this exception for input elements tapped when the document is contained in an iframe, then any inputted text won't be visible even though the value attribute is updated as the user types (issue #37). + if ((event.timeStamp - trackingClickStart) > 100 || (deviceIsIOS && window.top !== window && targetTagName === 'input')) { + this.targetElement = null; + return false; + } -var trim = $.trim; -var showErrTip = tip.show; + this.focus(targetElement); + this.sendClick(targetElement, event); -api.selectCssHack($('#country-select')); + // Select elements need the event to go through on iOS 4, otherwise the selector menu won't open. + // Also this breaks opening selects when VoiceOver is active on iOS6, iOS7 (and possibly others) + if (!deviceIsIOS || targetTagName !== 'select') { + this.targetElement = null; + event.preventDefault(); + } -api.bindClearEvt(); + return false; + } -$phoneNum.bind('input', function() { - if (trim($phoneNum.val()) === '') { - $btnNext.addClass('disable'); - } else { - $btnNext.removeClass('disable'); - } -}); + if (deviceIsIOS && !deviceIsIOS4) { -$countrySelect.change(function() { - $areaCode.text($countrySelect.val()); -}); + // Don't send a synthetic click event if the target element is contained within a parent layer that was scrolled + // and this tap is being used to stop the scrolling (usually initiated by a fling - issue #42). + scrollParent = targetElement.fastClickScrollParent; + if (scrollParent && scrollParent.fastClickLastScrollTop !== scrollParent.scrollTop) { + return true; + } + } -$btnNext.on('touchstart', function() { - var pn = trim($phoneNum.val()), - area = $countrySelect.val(); + // Prevent the actual click from going though - unless the target node is marked as requiring + // real clicks or if it is in the whitelist in which case only non-programmatic clicks are permitted. + if (!this.needsClick(targetElement)) { + event.preventDefault(); + this.sendClick(targetElement, event); + } - if ($btnNext.hasClass('disable')) { - return; - } + return false; + }; - if (api.phoneRegx[area].test(pn)) { - $.ajax({ - url: '/passport/back/sendcode', - type: 'POST', - data: { - areaCode: area.replace('+', ''), - phoneNum: pn - }, - success: function(data) { - if (data.code === 200) { - location.href = data.data; - } else { - showErrTip(data.message); - } - } - }); - } else { - showErrTip('手机号格式不正确,请重新输入'); - } -}); -}); -define("js/passport/back/code", ["jquery"], function(require, exports, module){ -/** - * 找回密码-验证码 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/8 - */ -require("js/passport/code")(false); -}); -define("js/passport/back/email", ["jquery"], function(require, exports, module){ -/** - * 找回密码-邮箱找回 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/8 - */ -var $ = require("jquery"); + /** + * On touch cancel, stop tracking the click. + * + * @returns {void} + */ + FastClick.prototype.onTouchCancel = function() { + this.trackingClick = false; + this.targetElement = null; + }; -var $email = $('#email'), - $btnSure = $('#btn-sure'); -var api = require("js/passport/api"); -var tip = require("js/plugin/tip"); + /** + * Determine mouse events which should be permitted. + * + * @param {Event} event + * @returns {boolean} + */ + FastClick.prototype.onMouse = function(event) { -var trim = $.trim; -var showErrTip = tip.show; + // If a target element was never set (because a touch event was never fired) allow the event + if (!this.targetElement) { + return true; + } -api.bindClearEvt(); + if (event.forwardedTouchEvent) { + return true; + } -$email.bind('input', function() { - if (trim($email.val()) === '') { - $btnSure.addClass('disable'); - } else { - $btnSure.removeClass('disable'); - } -}); + // Programmatically generated events targeting a specific element should be permitted + if (!event.cancelable) { + return true; + } -$btnSure.on('touchstart', function() { - var email = trim($email.val()); + // Derive and check the target element to see whether the mouse event needs to be permitted; + // unless explicitly enabled, prevent non-touch click events from triggering actions, + // to prevent ghost/doubleclicks. + if (!this.needsClick(this.targetElement) || this.cancelNextClick) { - if ($btnSure.hasClass('disable')) { - return; - } + // Prevent any user-added listeners declared on FastClick element from being fired. + if (event.stopImmediatePropagation) { + event.stopImmediatePropagation(); + } else { - if (api.emailRegx.test(email)) { - $.ajax({ - url: '/passport/back/sendemail', - type: 'POST', - data: { - email: email - }, - success: function(data) { - if (data.code === 200) { - location.href = data.data; - } else { - showErrTip(data.message); - } - } - }); - } else { - showErrTip('邮箱格式不正确,请重新输入'); - } -}); -}); -define("js/passport/back/email-success", ["jquery"], function(require, exports, module){ -/** - * 找回密码-邮箱找回成功 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/8 - */ + // Part of the hack for browsers that don't support Event#stopImmediatePropagation (e.g. Android 2) + event.propagationStopped = true; + } -var $ = require("jquery"); + // Cancel the event + event.stopPropagation(); + event.preventDefault(); -var $resend = $('#resend'); + return false; + } -var tip = require("js/plugin/tip"), - showTip = tip.show; + // If the mouse event is permitted, return true for the action to go through. + return true; + }; -$resend.on('touchstart', function(e) { - e.preventDefault(); - $.ajax({ - url: $resend.data('url'), - type: 'GET', - success: function(data) { - showTip(data.message); - } - }); -}); -}); -define("js/passport/back/new-password", ["jquery"], function(require, exports, module){ -/** - * 密码找回-新密码 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/8 - */ -var $ = require("jquery"); + /** + * On actual clicks, determine whether this is a touch-generated click, a click action occurring + * naturally after a delay after a touch (which needs to be cancelled to avoid duplication), or + * an actual click which should be permitted. + * + * @param {Event} event + * @returns {boolean} + */ + FastClick.prototype.onClick = function(event) { + var permitted; -var $pwd = $('#pwd'), - $btnOk = $('#btn-ok'); + // It's possible for another FastClick-like library delivered with third-party code to fire a click event before FastClick does (issue #44). In that case, set the click-tracking flag back to false and return early. This will cause onTouchEnd to return early. + if (this.trackingClick) { + this.targetElement = null; + this.trackingClick = false; + return true; + } -var api = require("js/passport/api"); -var tip = require("js/plugin/tip"); + // Very odd behaviour on iOS (issue #18): if a submit element is present inside a form and the user hits enter in the iOS simulator or clicks the Go button on the pop-up OS keyboard the a kind of 'fake' click event will be triggered with the submit-type input element as the target. + if (event.target.type === 'submit' && event.detail === 0) { + return true; + } -var trim = $.trim; -var showErrTip = tip.show; + permitted = this.onMouse(event); -var $phoneNum = $('#phone-num'); + // Only unset targetElement if the click is not permitted. This will ensure that the check for !targetElement in onMouse fails and the browser's click doesn't go through. + if (!permitted) { + this.targetElement = null; + } -api.bindEyesEvt({ - status: 'open' -}); + // If clicks are permitted, return true for the action to go through. + return permitted; + }; + + + /** + * Remove all FastClick's event listeners. + * + * @returns {void} + */ + FastClick.prototype.destroy = function() { + var layer = this.layer; -$pwd.bind('input', function() { - if (trim($pwd.val()) === '') { - $btnOk.addClass('disable'); - } else { - $btnOk.removeClass('disable'); - } -}); + if (deviceIsAndroid) { + layer.removeEventListener('mouseover', this.onMouse, true); + layer.removeEventListener('mousedown', this.onMouse, true); + layer.removeEventListener('mouseup', this.onMouse, true); + } -$btnOk.on('touchstart', function() { - var pwd = trim($pwd.val()), - mobileBack = true, - setting, - url; + layer.removeEventListener('click', this.onClick, true); + layer.removeEventListener('touchstart', this.onTouchStart, false); + layer.removeEventListener('touchmove', this.onTouchMove, false); + layer.removeEventListener('touchend', this.onTouchEnd, false); + layer.removeEventListener('touchcancel', this.onTouchCancel, false); + }; - if ($btnOk.hasClass('disable')) { - return; - } - setting = { - password: pwd - }; + /** + * Check whether FastClick is needed. + * + * @param {Element} layer The layer to listen on + */ + FastClick.notNeeded = function(layer) { + var metaViewport; + var chromeVersion; + var blackberryVersion; + var firefoxVersion; - if ($phoneNum.length === 0) { - mobileBack = false; - } + // Devices that don't support touch don't need FastClick + if (typeof window.ontouchstart === 'undefined') { + return true; + } - if (mobileBack) { - $.extend(setting, { - phoneNum: $phoneNum.val(), - areaCode: $('#areaCode').val(), - token: $('#token').val() - }); + // Chrome version - zero for other browsers + chromeVersion = +(/Chrome\/([0-9]+)/.exec(navigator.userAgent) || [,0])[1]; - url = '/passport/back/passwordByMobile'; - } else { - $.extend(setting, { - code: $('#email-code').val() - }); + if (chromeVersion) { - url = '/passport/back/passwordByEmail'; - } + if (deviceIsAndroid) { + metaViewport = document.querySelector('meta[name=viewport]'); + if (metaViewport) { + // Chrome on Android with user-scalable="no" doesn't need FastClick (issue #89) + if (metaViewport.content.indexOf('user-scalable=no') !== -1) { + return true; + } + // Chrome 32 and above with width=device-width or less don't need FastClick + if (chromeVersion > 31 && document.documentElement.scrollWidth <= window.outerWidth) { + return true; + } + } - if (api.pwdValidate(pwd)) { - $.ajax({ - type: 'POST', - url: url, - data: setting, - success: function(data) { - if (data.code === 200) { - showErrTip('密码修改成功'); + // Chrome desktop doesn't need FastClick (issue #15) + } else { + return true; + } + } - //1000ms后跳转页面 - setTimeout(function() { - location.href = data.data; - }, 1000); - } else { - showErrTip(data.message); - } - } - }); - } else { - showErrTip('密码6-20位,请重新输入'); - } -}); -}); -define("js/passport/bind/bind", ["jquery","handlebars","source-map","hammer"], function(require, exports, module){ -/** - * 注册 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/8 - */ -var $ = require("jquery"); - -var $phoneNum = $('#phone-num'), - $countrySelect = $('#country-select'), - $areaCode = $('#area-code'), - $openId = $('#openId'), - $nickname = $('#nickname'), - $sourceType = $('#sourceType'), - $btnNext = $('#btn-next'); - -var api = require("js/passport/api"), - tip = require("js/plugin/tip"), - dialog = require("js/me/dialog"); - -var trim = $.trim; -var showErrTip = tip.show; - -var requested = false; - -require("js/common"); - -function nextStep(url, mobileNo, areaCode) { - if (requested) { - return false; - } - - requested = true; - $btnNext.addClass('disable').html('绑定中...'); - - $.ajax({ - type: 'POST', - url: '/passport/bind/sendBindMsg', - data: { - phoneNum: mobileNo, - areaCode: areaCode.replace('+', '') - }, - success: function(res) { - - if (res.code === 200) { - - // 统计代码:用于统计从哪个渠道登录 - if (window._yas && window._yas.sendCustomInfo) { - window._yas.sendCustomInfo({ - 'loginRefer' : $sourceType.val() - }, false); - } - - location.href = url; - } else { - tip.show(res.message); - } - }, - error: function() { - tip.show('出错了,请重试!'); - $btnNext.removeClass('disable').html('下一步'); - requested = false; - } - }); -} - -api.selectCssHack($('#country-select')); - -api.bindClearEvt(); - -$phoneNum.bind('input', function() { - if (trim($phoneNum.val()) === '') { - $btnNext.addClass('disable'); - } else { - $btnNext.removeClass('disable'); - } -}); - -$countrySelect.change(function() { - $areaCode.text($countrySelect.val()); -}); - -$btnNext.on('touchstart', function() { - var pn = trim($phoneNum.val()), - openId = trim($openId.val()), - nickname = trim($nickname.val()), - sourceType = trim($sourceType.val()), - areaCode = $countrySelect.val(); - - if ($btnNext.hasClass('disable')) { - return; - } - - if (api.phoneRegx[areaCode].test(pn)) { - $.ajax({ - url: '/passport/bind/bindCheck', - type: 'POST', - data: { - areaCode: areaCode.replace('+', ''), - phoneNum: pn, - openId: openId, - sourceType: sourceType, - nickname: nickname - }, - success: function(res) { - if (res.code === 200) { - if (res.data.isReg === 1) { - dialog.showDialog({ - dialogText: '该手机号已注册过有货\n' + pn + ',确定绑定吗?', - hasFooter: { - leftBtnText: '更换号码', - rightBtnText: '继续绑定' - } - }, function() { - nextStep(res.data.next, pn, areaCode); - }); - } else if (res.data.isReg === 3) { - dialog.showDialog({ - dialogText: '该手机号已注册过有货\n' + pn + ',是否进行关联?', - hasFooter: { - leftBtnText: '更换号码', - rightBtnText: '确定' - } - }, function() { - nextStep(res.data.next, pn, areaCode); - }); - } else { - nextStep(res.data.next, pn, areaCode); - } - } else { - showErrTip(res.message); - } - } - }); - } else { - showErrTip('手机号格式不正确,请重新输入'); - } -}); - -if (/MicroMessenger/i.test(navigator.userAgent) && $.queryString().refer) { - $('.go-back').attr('href', decodeURIComponent($.queryString().refer)); -} - -}); -define("js/passport/bind/code", ["jquery"], function(require, exports, module){ -/** - * 注册-验证码 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/8 - */ + if (deviceIsBlackBerry10) { + blackberryVersion = navigator.userAgent.match(/Version\/([0-9]*)\.([0-9]*)/); -require("js/passport/code")(true, true); - -}); -define("js/passport/bind/password", ["jquery"], function(require, exports, module){ -/** - * 注册-密码 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/8 - */ -var $ = require("jquery"); + // BlackBerry 10.3+ does not require Fastclick library. + // https://github.com/ftlabs/fastclick/issues/251 + if (blackberryVersion[1] >= 10 && blackberryVersion[2] >= 3) { + metaViewport = document.querySelector('meta[name=viewport]'); -var $pwd = $('#pwd'), - $btnSure = $('#btn-sure'); + if (metaViewport) { + // user-scalable=no eliminates click delay. + if (metaViewport.content.indexOf('user-scalable=no') !== -1) { + return true; + } + // width=device-width (or less than device-width) eliminates click delay. + if (document.documentElement.scrollWidth <= window.outerWidth) { + return true; + } + } + } + } -var api = require("js/passport/api"); -var tip = require("js/plugin/tip"); + // IE10 with -ms-touch-action: none or manipulation, which disables double-tap-to-zoom (issue #97) + if (layer.style.msTouchAction === 'none' || layer.style.touchAction === 'manipulation') { + return true; + } -var trim = $.trim; -var showErrTip = tip.show; + // Firefox version - zero for other browsers + firefoxVersion = +(/Firefox\/([0-9]+)/.exec(navigator.userAgent) || [,0])[1]; -var nickname = $('#nickname').val(), - sourceType = $('#sourceType').val(), - openId = $('#openId').val(), - phoneNum = $('#phone-num').val(), - areaCode = $('#area-code').val().replace('+', ''), - code = $('#code').val(); + if (firefoxVersion >= 27) { + // Firefox 27+ does not have tap delay if the content is not zoomable - https://bugzilla.mozilla.org/show_bug.cgi?id=922896 -function startBind(password) { - $.ajax({ - url: '/passport/bind/bindMobile', - type: 'post', - data: { - areaCode: areaCode.replace('+', ''), - phoneNum: phoneNum, - openId: openId, - sourceType: sourceType, - nickname: nickname, - password: password, - code: code - }, - success: function(res) { - if (res.code === 200) { - tip.show('登录成功'); - setTimeout(function() { - location.href = res.data.refer; - }, 2000); - } else { - tip.show(res.message); - } - }, - error: function(err) { - tip.show('登录失败,请重试!'); - } - }); -} + metaViewport = document.querySelector('meta[name=viewport]'); + if (metaViewport && (metaViewport.content.indexOf('user-scalable=no') !== -1 || document.documentElement.scrollWidth <= window.outerWidth)) { + return true; + } + } -api.bindEyesEvt({ - status: 'open' //默认眼睛打开 -}); + // IE11: prefixed -ms-touch-action is no longer supported and it's recomended to use non-prefixed version + // http://msdn.microsoft.com/en-us/library/windows/apps/Hh767313.aspx + if (layer.style.touchAction === 'none' || layer.style.touchAction === 'manipulation') { + return true; + } -$pwd.bind('input', function() { - if (trim($pwd.val()) === '') { - $btnSure.addClass('disable'); - } else { - $btnSure.removeClass('disable'); - } -}); + return false; + }; -$btnSure.on('touchstart', function() { - var pwd = trim($pwd.val()); - if ($btnSure.hasClass('disable')) { - return; - } + /** + * Factory method for creating a FastClick object + * + * @param {Element} layer The layer to listen on + * @param {Object} [options={}] The options to override the defaults + */ + FastClick.attach = function(layer, options) { + return new FastClick(layer, options); + }; - if (api.pwdValidate(pwd) === false) { - showErrTip('密码6-20位,请重新输入'); - } else { - startBind(pwd); - } -}); - -}); -define("js/passport/bind/relate", ["jquery"], function(require, exports, module){ -/** - * 关联手机号-验证码 - */ -require("js/passport/code")(true, false, true); - -}); -define("js/product/entry", ["jquery","swiper","mlellipsis","lazyload","iscroll-probe","hammer","handlebars","source-map","index"], function(require, exports, module){ -/** - * 产品打包入口 - * @author: liangzhifeng<zhifeng.liang@yoho.cn> - * @date: 2015/10/12 - */ + if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) { -require("js/product/newsale/newarrival"); -require("js/product/newsale/discount"); -require("js/product/list"); -require("js/product/detail/detail"); -require("js/product/detail/consultform"); -require("js/product/newsale/hot-rank"); -require("js/product/product-category"); -require("js/product/shop"); + // AMD. Register as an anonymous module. + define(function() { + return FastClick; + }); + } else if (typeof module !== 'undefined' && module.exports) { + module.exports = FastClick.attach; + module.exports.FastClick = FastClick; + } else { + window.FastClick = FastClick; + } +}()); + }); -define("js/product/newsale/newarrival", ["jquery","swiper","mlellipsis","lazyload","iscroll-probe","hammer","index"], function(require, exports, module){ +define("js/home/maybe-like", ["jquery","hammer","mlellipsis","lazyload"], function(require, exports, module){ /** - * 新品到着 + * “你可能喜欢”模块JS * @author: liangzhifeng<zhifeng.liang@yoho.cn> - * @date: 2015/10/24 + * @date: 2015/10/12 */ -var $ = require("jquery"), - Swiper = require("swiper"), - ellipsis = require("mlellipsis"), - lazyLoad = require("lazyload"); +module.exports = function(specificGender) { + var $ = require("jquery"), + Hammer = require("hammer"), + tip = require("js/plugin/tip"), + loading = require("js/plugin/loading"), + ellipsis = require("mlellipsis"), + lazyLoad = require("lazyload"); -var swiper, - $ngc, - $pgc, - $dgc; + var navHammer, + winH = $(window).height(), + $goodList = $('#goods-list'), + searching = false, + page = 0, + gender = null, + num, + url, + RECPOSE = '110001'; + + //The kidsType can be specified by the parameter. Add by @ZhaoBiao + var kidsType = specificGender === 'kids' || $('.mobile-wrap').hasClass('kids-wrap') ? true : false, + lifestyleType = specificGender === 'lifestyle' || + $('.mobile-wrap').hasClass('lifestyle-wrap') ? true : false, + yohoCoinType = $('.coin').length ? true : false, + logisticType = $('.logistic-page').length ? true : false; + var $curNav, + index, + $navList = $('#maybe-like-nav'); + + var $footer; + + ellipsis.init(); + + //ajax url + if (kidsType) { + + url = '/product/recom/maylikekids'; + } else if (lifestyleType) { + + //有货币页面加载男生首页的数据 + url = specificGender === 'lifestyle' ? '/product/recom/maylike?gender=1,3&rec_pos=100001' : '/product/recom/maylikelife'; + } else if (yohoCoinType) { + + gender = (specificGender === 'boys' || $('.mobile-wrap').hasClass('boys-wrap')) ? + '1,3&rec_pos=100009' : '2,3&rec_pos=100009', + url = '/product/recom/maylike?gender=' + gender; + RECPOSE = 110009; + + } else if (logisticType) { //物流页面 + gender = (specificGender === 'boys' || $('.mobile-wrap').hasClass('boys-wrap')) ? + '1,3&rec_pos=100006' : '2,3&rec_pos=100006', + url = '/product/recom/maylike?gender=' + gender; + RECPOSE = 110006; + + } else { + gender = (specificGender === 'boys' || $('.mobile-wrap').hasClass('boys-wrap')) ? + '1,3&rec_pos=100001' : '2,3&rec_pos=100002', + url = '/product/recom/maylike?gender=' + gender; + } + + //日韩馆-你可能喜欢的 + if ($('.mobile-wrap').hasClass('yoho-channel-page')) { + url = '/product/recom/newPreference?template_id=' + $.queryString().template_id; + } + + //首页男生和女生,推荐位ID,埋点 + if (window.location.pathname === '/boys') { + RECPOSE = 110001; + } else if (window.location.pathname === '/girls') { + RECPOSE = 110002; + } + + $curNav = $navList.children('.focus'); + + if (lifestyleType) { + navHammer = $navList[0] ? new Hammer($navList[0]) : undefined; + if (navHammer) { + navHammer.on('tap', function(e) { + var $this = $(e.target).closest('li'), + $goods = $('.goods-list'), + $content; + + e.preventDefault(); + if ($this.hasClass('focus')) { + return; + } + + index = $this.index(); + + $this.addClass('focus'); + $curNav.removeClass('focus'); + + $goods.not('.hide').addClass('hide'); + $content = $goods.eq(index); + $content.removeClass('hide'); -var tip = require("js/plugin/tip"), - filter = require("js/plugin/filter"), - loading = require("js/plugin/loading"); + $curNav = $this; -var $goodsContainer = $('#goods-container'), - $goodsChildren = $goodsContainer.children(), - $ngc = $($goodsChildren.get(0)), - $pgc = $($goodsChildren.get(1)).addClass('hide'), - $dgc = $($goodsChildren.get(2)).addClass('hide'); + $(document).trigger('scroll'); //Trigger lazyLoad + e.srcEvent.stopPropagation(); + }); + } + } -var winH = $(window).height(), - noResult = '<p class="no-result">未找到相关搜索结果</p>'; + loading.init($('.maybe-like')); -//默认筛选条件 -var defaultOpt = require("js/product/query-param"); + function search() { + if (searching) { + return; + } + searching = true; -var storeOpt = $.extend({}, defaultOpt); //存储默认筛选条件以便重置 + loading.showLoadingMask(); -var now = new Date(), - month = now.getMonth() + 1, - date = now.getDate(); + //num = $goodList.find('.good-info').length; + $.ajax({ + type: 'GET', + url: url, + data: { + page: page + 1 + }, + success: function(data) { + var PRDID = []; + if (data === ' ') { + searching = false; + loading.hideLoadingMask(); -var $listNav = $('#list-nav'), + // 有货币页面不加载底部 + if (gender && !specificGender) { + if (gender === '1,3') { + url = '/boys/bottomBanner'; + } else { + url = '/girls/bottomBanner'; + } + $.ajax({ + type: 'GET', + url: url, + success: function(data) { + if (data && data.img) { + $('#load-more-img').show(); + $('#load-more-img a').attr('href', data.url); + $('#load-more-img a > img').attr('src', data.img); + } + }, + error: function() { + } + }); - //导航数据信息 - navInfo = { - today: { - reload: true, - page: 0, - end: false - }, - week: { - reload: true, - page: 0, - end: false - }, - sale: { - reload: true, - page: 0, - end: false - } - }, - $pre = $listNav.find('.active'), //纪录进入筛选前的active项,初始为选中项 - searching; + } + return; + } -require("js/product/suspend-cart"); //悬浮购物车 + //加载到数据后,去除bottom样式,使得footer能够随着页面长度的增加改变位置 + if (data.length > 1) { + $footer ? null : $footer = $('#yoho-footer'); + $footer.hasClass('bottom') ? $footer.removeClass('bottom') : null; + } -ellipsis.init(); + num = $goodList.find('.good-info').length; -$('#today a').text(month + '月' + date + '号'); + $goodList.append(data); -if ($('.swiper-container .swiper-slide').length > 1) { - swiper = new Swiper('.swiper-container', { - lazyLoading: true, - lazyLoadingInPrevNext: true, - loop: true, - autoplay: 3000, - autoplayDisableOnInteraction: true, - paginationClickable: true, - pagination: '.banner-top .pagination-inner' - }); -} + // 2015/10/31 fei.hong: 修复第一页分页不显示图片的问题 + if (num === 0) { + lazyLoad($goodList.find('.good-info').find('img.lazy')); + } else { + lazyLoad($goodList.find('.good-info:gt(' + (num - 1) + ')').find('img.lazy')); + } -/** - * 筛选注册的回调,筛选子项点击后逻辑 - * 需要执行search的场景:1.点选筛选项;2.relaod为true时切换导航;3.下拉加载 - * @param opt {type, id} - */ -function search(opt) { - var setting = {}, - ext, - att, - nav, navType, - dayLimit, - page; + searching = false; + loading.hideLoadingMask(); + page++; - if (searching) { - return; - } + $('.good-detail-text .name').each(function() { + var $this = $(this), + $title = $this.find('a'); - if (opt) { + $title[0].mlellipsis(2); + }); - //筛选项变更则重置reload为true - for (att in navInfo) { - if (navInfo.hasOwnProperty(att)) { - navInfo[att].reload = true; + //为您优选埋点 start + $(data).closest('.good-info').each(function() { + PRDID.push($(this).data('id')); + }); + window.givePoint({ + 'REC_POSE': RECPOSE, + 'PRD_ID': PRDID.join(','), + 'PRD_NUM': $(data).closest('.good-info').length, + 'ACTION_ID': 0, + 'page_num': RECPOSE === 110009 ? 1 : page + }); + //为您优选埋点 end + }, + error: function() { + tip.show('网络断开连接了~'); + searching = false; + loading.hideLoadingMask(); } - } + }); + } - //处理active状态 - $listNav.children('.active').removeClass('active'); - $pre.addClass('active'); + $('.maybe-like p').on('touchstart', function(e) { + search(); + }); - switch (opt.type) { - case 'gender': - ext = { - gender: opt.id - }; - break; - case 'brand': - ext = { - brand: opt.id - }; - break; - case 'sort': - ext = { - sort: opt.id - }; - break; - case 'color': - ext = { - color: opt.id - }; - break; - case 'ageLevel': - ext = { - age_level: opt.id - }; - break; - case 'size': - ext = { - size: opt.id - }; - break; - case 'price': - ext = { - price: opt.id - }; - break; - case 'discount': - ext = { - discount: opt.id - }; - break; - case 'limit': - ext = { - limit: opt.id - }; - break; - case 'channel': - ext = { - channel: opt.id - }; - break; - case 'p_d': - ext = { - p_d: opt.id - }; - break; + function scrollHandler() { + if ($(window).scrollTop() + winH >= $(document).height() - 200) { + search(); } + } - $.extend(defaultOpt, ext); //扩展筛选项 + // 优惠券页面直接加载你可能喜欢。add by @zhaobiao + if (specificGender) { + search(); } - //导航类别 - if ($pre.hasClass('today')) { - navType = 'today'; - dayLimit = 1; - } else if ($pre.hasClass('week')) { - navType = 'week'; - dayLimit = 2; - } else if ($pre.hasClass('sale')) { - navType = 'sale'; - dayLimit = 3; - } + //srcoll to load more + $(window).scroll(function() { + window.requestAnimationFrame(scrollHandler); + }); + + //为您优选埋点 http://redmine.yoho.cn/issues/10116 + $('.maybe-like .goods-list').on('click', 'a', function() { + var index = $(this).closest('.good-info').index() + 1, + pageNum = 50; + window.givePoint({ + 'REC_POSE': RECPOSE, + 'PRD_ID': $(this).closest('.good-info').data('id'), + 'PRD_NUM': index % pageNum === 0 ? pageNum : index % pageNum, + 'ACTION_ID': 1, + 'page_num': Math.ceil(index / pageNum) + }); + return true; + }); +}; + +}); +define("js/index/entry", ["jquery","hammer","handlebars","source-map","swiper","index"], function(require, exports, module){ +/** + * Index打包入口 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/19 + */ + +require("js/index/search"); +require("js/index/footer"); +require("js/index/channel"); +require("js/index/coupon"); +}); +define("js/index/search", ["jquery","hammer","handlebars","source-map"], function(require, exports, module){ +/** + * 搜索JS + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/19 + */ + +var $ = require("jquery"), + security = require("js/plugin/security"), + tip = require("js/plugin/tip"), + Hammer = require("hammer"), + dialog = require("js/me/dialog"); - nav = navInfo[navType]; +var $input = $('#search-input input'); - page = nav.page + 1; - if (nav.reload) { - page = 1; - } else if (nav.end) { +var $clear = $('#search-input .clear-input'); - //不需要重新加载并且数据请求结束 - return; - } +var $form = $('#search-form'); - $.extend(setting, defaultOpt, { - dayLimit: dayLimit, - page: page - }); +var $history = $('.history'); +var $historySearch = $('.history-search'); +var $clearHistory = $('#clear-history'); +var $buriedpoint = $('.buriedpoint'); +var $search = $('#search'); +var searchUrl = $search.closest('form').attr('action'); - searching = true; - loading.showLoadingMask(); +var writeSearch = require("js/index/write-search"); - $.ajax({ - type: 'GET', - url: '/product/newsale/selectNewSale', - data: setting, - success: function(data) { - var $container, - num; +var ranToken = writeSearch.getRanToken(); +var historyval = writeSearch.getHistoryval(); - switch (navType) { - case 'today': - $container = $ngc; - break; - case 'week': - $container = $pgc; - break; - case 'sale': - $container = $dgc; - break; - } +var chHammer, cHammer; - if (data === ' ') { - nav.end = true; - if (nav.reload) { - $container.html(noResult); - } - } else { - if (nav.reload) { - $container.html(data); - lazyLoad($container.find('.lazy')); - } else { - num = $container.find('.good-info').length; - $container.append(data); +chHammer = new Hammer($clearHistory[0]); - //lazy good-infos who append in - lazyLoad($container.find('.good-info:gt(' + (num - 1) + ') .lazy')); - } +chHammer.on('tap', function() { + dialog.showDialog({ + dialogText: '您确定要删除您的最近搜索吗?', + hasFooter: { + leftBtnText: '取消', + rightBtnText: '确定' + } + }, function() { - } + if (localStorage) { + localStorage.removeItem(historyval); + } - nav.reload = false; - nav.page = page; + $history.html(''); + $historySearch.hide(); + $clearHistory.hide(); - searching = false; - loading.hideLoadingMask(); + window.rePosFooter(); - window.rePosFooter(); + dialog.showDialog({ + dialogText: '删除成功', + autoHide: true, + fast: true + }); + }); +}); - $('.good-detail-text .name').each(function() { - var $this = $(this), - $title = $this.find('a'); +// 搜索输入联动 +function inputAction() { + var $searchAssociate = $('.search-associate'); + var $icon = $('.search-icon'); + var $searchItems = $('.search-items'); - $title[0].mlellipsis(2); - }); - }, - error: function() { - tip.show('网络断开连接了~'); - searching = false; - loading.hideLoadingMask(); + $input.on('input', function() { + if ($input.val() === '') { + $icon.css('color', '#b2b2b2'); + $clear.addClass('hide'); + $searchAssociate.html(''); + $searchItems.show(); + $searchAssociate.hide(); + } else { + $icon.css('color', '#666'); + $clear.removeClass('hide'); + $searchAssociate.show(); } - }); -} + // 联动搜索 + $.ajax({ + url: '/index/search/fuzzyDatas', + data: { + keyword: $input.val() + }, + dataType: 'json', + success: function(data) { + var ajaxHtml = ''; + var i; -$.ajax({ - type: 'GET', - url: '/product/newsale/filter', - data: defaultOpt, - success: function(data) { - $goodsContainer.append(data); + if (data.length > 0) { + for (i = 0; i < data.length; i++) { + ajaxHtml += '<li><span class="keyword">' + data[i].keyword + '</span><span class="count">' + + data[i].count + ' items<i class="iconfont"></i></span></li>'; + } - //初始化filter&注册filter回调 - filter.initFilter({ - fCbFn: search, - hCbFn: function() { + $searchAssociate.html(ajaxHtml); + $searchItems.hide(); + } else { + $searchAssociate.html(''); + } - //切换active状态到$pre上 - $pre.addClass('active'); - $pre.siblings('.filter').removeClass('active'); + $searchAssociate.find('li').on('touchend', function() { + GoSearch($(this).find('.keyword').html()); + }); + }, + error: function() { + tip.show('网络断开连接了~'); } }); - } -}); -lazyLoad($('.lazy')); + }); +} -$listNav.bind('contextmenu', function(e) { - return false; -}); +//跳到搜索页 +function GoSearch(query) { + //保存搜索的内容 + writeSearch.setHistoryValFun(query); + document.location.href = searchUrl + '?query=' + query; +} -//导航栏点击逻辑说明: -//1.点击非active项时切换active状态 -//2.价格和折扣active状态时继续点击切换排序 -//3.筛选无active时点击展开筛选面板 -//4.筛选有active时点击隐藏筛选面板并恢复点击筛选前active项的active状态 -//5.当前active为筛选并且点击其他项时,隐藏筛选面板 -// navHammer = new Hammer($listNav[0]); -$listNav.on('touchend touchcancel', function(e) { - var $this = $(e.target).closest('li'), - nav, - navType, - $active; +//热门搜索、最近搜索事件 +$('.search-items .search-group').on('click', 'li', function(event) { + var query = ''; - e.preventDefault(); - if ($this.hasClass('filter')) { + if (event.target.nodeName === 'A') { + query = $(event.target).html(); + } - //筛选面板切换状态 - if ($this.hasClass('active')) { - filter.hideFilter(); + if (event.target.nodeName === 'LI') { + query = $(event.target).find('a').html(); + } - //点击筛选钱的active项回复active - $pre.addClass('active'); - $this.removeClass('active'); - } else { - $pre = $this.siblings('.active'); + GoSearch(query); +}); - $pre.removeClass('active'); - $this.addClass('active'); - filter.showFilter(); - } - } else { +inputAction(); - if ($this.hasClass('today')) { - navType = 'today'; - } else if ($this.hasClass('week')) { - navType = 'week'; - } else if ($this.hasClass('sale')) { - navType = 'sale'; - } +cHammer = new Hammer($clear[0]); +cHammer.on('tap', function() { + $input.val('').trigger('input'); +}); - nav = navInfo[navType]; +$search.on('touchend', function() { + var $buriedpoint = $form.find('.buriedpoint'); - if (!($this.hasClass('active'))) { + if ($buriedpoint.val() === '') { + $buriedpoint.val($('#default-terms').val()); + } - $active = $this.siblings('.active'); + //保存搜索的内容 + writeSearch.setHistoryValFun($buriedpoint.val()); - $pre = $this; //$pre为除筛选导航的其他导航项,若当前active的为筛选,则把$pre置为当前点击项 + if (security.hasDangerInput()) { + return false; + } - if ($active.hasClass('filter')) { + $(this).closest('form').submit(); + return false; +}); - //若之前active项为筛选,则隐藏筛选面板 - filter.hideFilter(); - } else { +//初始化历史搜索的内容 +(function() { + var html = '', + history, + historys, i, num = 1; - //切换container显示 - $goodsContainer.children('.container:not(.hide)').addClass('hide'); + if (localStorage) { + historys = localStorage.getItem(historyval); - switch (navType) { - case 'today': - $ngc.removeClass('hide'); - break; + if (historys && historys.length > 0) { + historys = historys.split(ranToken); + for (i = historys.length; i > 0; i--) { + history = historys[i - 1]; - case 'week': - $pgc.removeClass('hide'); - break; + if (history === '') { + continue; + } - case 'sale': - $dgc.removeClass('hide'); - break; + if (num++ > 10) { + break; } - //重置筛选项 - filter.resetFilter(); - defaultOpt = $.extend({}, storeOpt); + html += '<li><a href="javascript:void(0);">' + history + '</li>'; } - $active.removeClass('active'); - $this.addClass('active'); - } - - if (nav.reload) { - search(); - } - } - e.stopPropagation(); -}); - -function scrollHandler() { - - //当scroll到1/4$goodsContainer高度后继续请求下一页数据 - if ($(window).scrollTop() + winH > - $(document).height() - 0.25 * $goodsContainer.height() - 50) { - if ($pre !== undefined) { - search(); + $history.html(html); + if (html !== '') { + $clearHistory.removeClass('hide'); + $historySearch.removeClass('hide'); + } + window.rePosFooter(); } } -} - -//srcoll to load more -$(window).scroll(function() { - window.requestAnimationFrame(scrollHandler); +}()); }); +define("js/plugin/security", ["jquery"], function(require, exports, module){ +/** + * 校验input, 防止SQL注入 + * @author: 赵彪<bill.zhao@yoho.cn> + * @date: 2015/11/30 + */ + +var $ = require("jquery"), + tip = require("js/plugin/tip"); + +/** + * hasStrangeInput() return true when input have danger value + * + * @param {Bool} needConvert Set if the danger input value should be converted to space + * @return {Bool} true/false If the input have danger value + */ +function hasDangerInput(needConvert) { + + var $inputs = $('input[type!=hidden], textarea'); + + var validationPartten = /['"<>&\|]|--/g, + inputsLength = $inputs.length, + val, + i, + matchChars, + + // to set if the input value should be coverted, and its default value is true; + willConvert = needConvert === undefined || typeof needConvert !== 'boolean' ? true : needConvert; + + + for (i = 0; i < inputsLength; i++) { + val = $inputs.eq(i).val(); + if (validationPartten.test(val)) { + if (willConvert) { + $inputs.eq(i).val(val.replace(validationPartten, ' ')); + } else { + matchChars = val.match(validationPartten).join(' '); + tip.show('不可以输入 ' + matchChars + ' 哦!'); + } + + + return !willConvert && true; + } + } + + + return false; +} + + +exports.hasDangerInput = hasDangerInput; -//初始请求最新第一页数据 -search(); - -$listNav.on('touchstart', 'li', function(e) { - $(this).addClass('bytouch'); -}).on('touchend touchcancel', function() { - $listNav.find('li').removeClass('bytouch'); }); +define("js/me/dialog", ["jquery","handlebars","source-map","hammer"], function(require, exports, module){ +/* + * @Description: dialog + * @Time: 2015/11/18 + * @author: chenglong.wang + */ + +var $ = require("jquery"), + Handlebars = require("handlebars"), + Hammer = require("hammer"); + +var $dialogWrapper, + dialogTpl, + dialogTemplate; + +function getInstance() { + if (dialogTpl === undefined) { + dialogTpl = '<div id="dialog-wrapper" class="dialog-wrapper">' + + '<div class="dialog-box">' + + '{{# hasHeader}}' + + '{{/ hasHeader}}' + + '<div class="dialog-content">{{dialogText}}</div>' + + '{{# hasFooter}}' + + '<div class="dialog-footer">' + + '{{# leftBtnText}}' + + '<span class="dialog-left-btn tap-hightlight">{{.}}</span>' + + '{{/ leftBtnText}}' + + '{{# rightBtnText}}' + + '<span class="dialog-right-btn tap-hightlight">{{.}}</span>' + + '{{/ rightBtnText}}' + + '</div>' + + '{{/ hasFooter}}' + + '</div>' + + '</div>'; + + dialogTemplate = Handlebars.compile(dialogTpl); + } + return dialogTemplate; +} + +// fullWithBtn是供详情页获取限购码使用的特殊参数 +exports.showDialog = function(data, callback, callbackForLeft, fullWithBtn) { + + var dialogTemplate = getInstance(), + dialogStr = dialogTemplate(data), + $dialogBox, + defaultHideDuraton, + dialogWrapperHammer; + + $('.dialog-wrapper').remove(); + + $('body').append($(dialogStr)); + + $dialogBox = $('.dialog-box'); + $dialogWrapper = $('.dialog-wrapper'); + + + dialogWrapperHammer = new Hammer(document.getElementById('dialog-wrapper')); + + // 显示 + if (data.fast) { + $dialogWrapper.css({ + display: 'block' + }); + } else { + $dialogWrapper.fadeIn(); + } + + if (fullWithBtn) { + $('.dialog-wrapper .dialog-footer > span').css('width', '100%'); + $('.dialog-wrapper .dialog-content').css({ + 'padding-left': '1.85rem', + 'padding-right': '1.85rem' + }); + $dialogWrapper.css('z-index', '10'); + } + + $dialogBox.css({ + top: '50%', + marginTop: -($dialogBox.height() / 2) + }); + + //隐藏 + if (data.autoHide) { + defaultHideDuraton = 1000; + if (data.autoHide > 1) { + defaultHideDuraton = data.autoHide; + } + setTimeout(function() { + $dialogWrapper.fadeOut(); + }, defaultHideDuraton); + } + + //禁止在dialog上可以上下滚动 + $dialogWrapper.on('touchmove', function() { + return false; + }); + + dialogWrapperHammer.on('tap', function(event) { + + if ($(event.target).hasClass('dialog-left-btn')) { + if (typeof callbackForLeft === 'function') { + callbackForLeft(); + } + $dialogWrapper.fadeOut(); + } else if ($(event.target).hasClass('dialog-right-btn')) { + callback(); + } + + // 防止出现点透问题 + event.preventDefault(); + event.srcEvent.stopPropagation(); + }); +}; + +exports.hideDialog = function() { + $('.dialog-wrapper').remove(); +}; }); -define("js/plugin/filter", ["jquery","iscroll-probe","hammer"], function(require, exports, module){ +define("js/index/write-search", [], function(require, exports, module){ /** - * 筛选JS - * 暴露三个接口:注册回调、显示filter、隐藏filter + * 将搜索结果存localStorage * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/19 + * @date: 2015/10/29 */ -var $ = require("jquery"), - IScroll = require("iscroll-probe") - Hammer = require("hammer"); - -var $filter; - -var fCbFn, hCbFn; //筛选和关闭的回调 - -var missStatus; //是否忽略选中状态 +var ranToken = ',', + historyval = 'historys1'; -//隐藏筛选界面 -function hideFilter() { - $filter.addClass('hide'); +//获取分隔符 +function getRanToken() { + return ranToken; } -//显示筛选界面 -function showFilter() { - $filter.removeClass('hide'); +//存变量 +function getHistoryval() { + return historyval; } -// 一级菜单点击时背景高亮 -function highlightMainItem() { - var $mainItem = $('.filter-body .classify'); - - $mainItem.on('touchstart', '.shower', function() { - var bpIdData = $(this).attr('data-bp-id') || ''; - - $mainItem.removeClass('highlight'); - $(this).addClass('highlight'); +//绑定提交前的存local操作 +function bindWirteLocal($form) { + $form.on('submit', function() { + var query = this.query.value; - $(document).trigger('shouldSendBpData', [bpIdData]); - }).on('touchend touchcancel', '.shower', function() { - $(this).removeClass('highlight'); + setHistoryValFun(query); }); } -// 子菜单点击时背景高亮 -function highlightSubItem() { - var $subItem = $('.filter-body .sub-item'); +function setHistoryValFun(query) { + var historys; + if (localStorage) { + historys = localStorage.getItem(historyval); - $subItem.on('touchstart', function() { - $subItem.removeClass('highlight'); - $(this).addClass('highlight'); - }).on('touchend touchcancel', function() { - $(this).removeClass('highlight'); - }); -} + historys = historys ? historys.replace(new RegExp((query + ranToken), 'g'), '') : ''; -//主筛选项Tap事件句柄 -function classifyTapEvt($this) { - if ($this.hasClass('active')) { - return; + if (historys === '') { + query = ranToken + query; + } + + historys += query + ranToken; + localStorage.setItem(historyval, historys); } +} - $this.siblings('.active').removeClass('active'); +exports.getRanToken = getRanToken; +exports.getHistoryval = getHistoryval; +exports.setHistoryValFun = setHistoryValFun; - $this.addClass('active'); +exports.bindWirteLocal = bindWirteLocal; +}); +define("js/index/footer", ["jquery","hammer"], function(require, exports, module){ +/** + * 底部JS + * @author: liangzhifeng<zhifeng.liang@yoho.cn> + * @date: 2015/10/26 + */ -} +var $ = require("jquery"), + Hammer = require("hammer"); -//子筛选项选中处理 -function setSubClassify($this) { - var $sub = $this.closest('.sub-classify'); +var floatLayerBtnHammer; - var $shower = $sub.siblings('.shower'); +require("js/common"); - var html, shower; +/** + * 获取url参数 + */ +function getQueryString(name) { + var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i'); + var r = window.location.search.substr(1).match(reg); - if ($this.hasClass('chosed')) { - return $sub; + if (r != null) { + return window.unescape(r[2]); } + return null; +} - $sub.children('.chosed').removeClass('chosed'); - $this.addClass('chosed'); +function downLoadApp() { + var appUrl = 'http://www.yohoshow.com/about/index/yohobuyqr/'; + var clickedAt = new Date(); - html = $.trim($this.html()); + setTimeout(function() { + var mkt = getQueryString('mkt_code'); - shower = $.trim($shower.html()); + if ((new Date()) - clickedAt < 2000) { + if (mkt) { + appUrl += '?union_type=' + mkt; + } + window.location = appUrl; + } + }, 500); +} - $shower.html( - shower.substring(0, shower.indexOf('</span>') + 7) + //拆分出shower的title - html.substring(0, html.indexOf('<i')) //拆分选中筛选值 - ); +$('#float-layer-close').on('touchend', function(e) { + $('#float-layer-app').hide(); + window.setCookie('_float-layer-app', 'id490655927', + { + domain: '.yohobuy.com' + }); + window.setCookie('_float-layer-app-close', 1, + { + domain: '.yohobuy.com', + expires: 1 + }); + return false; +}); - if ($this.index() === 0) { - $shower.addClass('default'); +if ($('#float-layer-btn') && $('#float-layer-btn')[0]) { + floatLayerBtnHammer = new Hammer($('#float-layer-btn')[0]); + floatLayerBtnHammer.on('tap', function(e) { + downLoadApp('bottom'); + e.srcEvent.stopPropagation(); + }); + + if (typeof window.cookie === 'function' && !window.cookie('_float-layer-app')) { + $('#float-layer-app').show(); } else { - $shower.removeClass('default'); + $('#float-layer-app').hide(); } - - return $sub; } -//子筛选项Tap句柄 -function subClassifyTapEvt($this) { - var id = $this.data('id'); +}); +define("js/index/channel", ["jquery","hammer"], function(require, exports, module){ +/** + * 频道选择页面顶部搜索 + * @author: bikai<kai.bi@yoho.cn> + * @date: 2015/10/28 + */ +var $ = require("jquery"), + security = require("js/plugin/security"); + +var $searchBox = $('.search-box'), + $box = $('.box'), + $indexSearch = $('.index-search'), + $indexLogo = $('.index-logo'), + $channelLink = $('.index-channel a:not(#yohood)'); + +var $search = $searchBox.children('input[type="text"]'), + $cancelSearch = $box.children('.no-search'), + $searchIcon = $searchBox.children('.search-icon'); + +require("js/common"); + +$search.on('focus', function() { + $box.addClass('action'); + $indexLogo.addClass('action'); +}).on('input', function() { + if ($search.val() === '') { + $searchIcon.addClass('empty'); + } else { + $searchIcon.removeClass('empty'); + } +}); + +$cancelSearch.on('touchend', function() { + $box.removeClass('action'); + $indexLogo.removeClass('action'); + $search.blur(); + return false; +}); + +$searchBox.children('.clear-text').on('touchstart', function() { + $search.val('').focus().trigger('input'); +}); + +$searchBox.children('.search-icon').on('touchstart', function() { + if (security.hasDangerInput()) { + return false; + } + $indexSearch.submit(); +}); + +$searchBox.keyup(function(e) { + if (e.keyCode === 13) { + if (security.hasDangerInput()) { + return false; + } + $indexSearch.submit(); + } +}); + +$('.index-channel img').on('load error', function() { + window.rePosFooter && window.rePosFooter(); +}); + +$channelLink.on('touchstart', function() { + $channelLink.css({ + background: '#000', + color: '#fff', + borderColor: '#fff' + }); + $(this).css({ + background: 'rgba(255, 255, 255, 0.5)', + color: '#000', + borderColor: '#000' + }); +}).on('touchend touchcancel', function() { + $(this).css({ + background: '#000', + color: '#fff', + borderColor: '#fff' + }); +}); + +}); +define("js/index/coupon", ["jquery","swiper","index"], function(require, exports, module){ +/** + * Created by Administrator on 2016/4/13. + */ +var $ = require("jquery"), + Swiper = require("swiper"), + $receive = $('.main-right-receive'), + $mask = $('.floor-mask'), + $message = $('.floor-message'), + $tooltip = $('.floor-tooltip'), + tip = require("js/plugin/tip"); + +var bannerSwiper; - var $sub; +// 获取url中的参数 +function getUrlParam(name) { - $sub = setSubClassify($this); + // 构造一个含有目标参数的正则表达式对象 + var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)'); - if (fCbFn) { - fCbFn({ - type: $sub.data('type'), - id: id - }); + // 匹配目标参数 + var r = window.location.search.substr(1).match(reg); + + // 返回参数值 + if (r != null) { + return r[2]; } - hideFilter(); + return null; } -//初始化筛选 -function initFilter(opt) { - var filterHammer; - - //注册回调 - fCbFn = opt.fCbFn; - hCbFn = opt.hCbFn; - - missStatus = opt.missStatus; +$receive.on('click', function() { + var $curDom = $(this), + req = ''; - highlightMainItem(); - highlightSubItem(); + if (getUrlParam('app_version')) { + req += '&app_version=' + getUrlParam('app_version'); + } - $filter = $('.filter-mask'); + if (getUrlParam('uid')) { + req += '&uid=' + getUrlParam('uid'); + } - filterHammer = new Hammer($filter[0]); - filterHammer.on('tap', function(e) { - var $this = $(e.target), - $cur; - // e.preventDefault();//防止透点 + $.ajax({ + url: '//m.yohobuy.com/coupon/receiveCoupon?code=' + getUrlParam('code') + req, + data: { + couponID: $curDom.parents('.coupon-floor').attr('coupon-id') + }, + dataType: 'json', + success: function(data) { + var msg = data.msg, + status = data.status, + newUrl = data.url + '?code=' + getUrlParam('code'); - if ($this.closest('.filter-body').length > 0) { - $cur = $this.closest('.sub-item'); - if ($cur.length > 0) { - //tap subclassify - $cur = $this.closest('li'); + if (data.isApp === true) { + newUrl = data.url; + } + if (data.noLogin === true) { + if ($('#intimacy-link').length <= 0) { + $('body').append('<a href=\'' + newUrl + '\' style="display:none;" id="intimacy-link">' + + '<span class="intimacy-link"></span></a>'); + } - subClassifyTapEvt($cur); + $('.intimacy-link').click(); } else { + if (status) { + $curDom.hide(); + $curDom.next().show(); + $tooltip.show(); - //tap classify - $cur = $this.closest('.classify-item'); - - e.srcEvent.stopPropagation(); - - classifyTapEvt($cur); - } - } else { - hideFilter(); - - if (hCbFn) { - hCbFn(); + setTimeout(function() { + $tooltip.hide(); + }, 3000); + } else { + $message.find('.coupon-message-content').text(msg); + $mask.show(); + $message.show(); + } } + }, + error: function() { + tip.show('网络异常!'); } }); - if(opt.isScroll){ - $("ul.sub-classify").each(function(){ - - $(this).wrap("<div class='sub-classify-farther' data-type='" + $(this).data("type") + "'></div>"); - // $(this).removeClass("sub-classify"); - - var lastY=0,y=0; - var $slider=$(this); +}); - $slider.on('touchstart', function(e) { - lastY = e.originalEvent.touches[0].pageY; - }); - $slider.on('touchmove', function(e) { - var curY = e.originalEvent.touches[0].pageY; - var deltaY = curY - lastY; - var height = $(this)[0].scrollHeight; - var limit = height - $(this).parent().height(); - y = y + deltaY; - if (y < limit * -1) - y = limit * -1; - if (y > 0) - y = 0; - var translate = 'translate3d(0,' + y + 'px,0)'; - $(this).css({ - '-moz-transform': translate, - '-ms-transform': translate, - 'transform': translate, - '-webkit-transform': translate, - }); - lastY = curY; - }); - $slider.on('touchend', function(e) {}); - }); +$('.coupon-floor a, .banner-top a').on('click', function() { + if ($(this).attr('href').length <= 0 || $(this).attr('href') === '#') { + return false; } - +}); +if ($('.banner-swiper').find('li').length > 1) { + bannerSwiper = new Swiper('.banner-swiper', { + lazyLoading: true, + lazyLoadingInPrevNext: true, + loop: true, + autoplay: 3000, + autoplayDisableOnInteraction: false, + paginationClickable: true, + slideElement: 'li', + pagination: '.banner-top .pagination-inner' + }); } -//重置筛选面板 -function resetFilter() { - if (typeof $filter === 'undefined') { - return; +$('.coupon-message-op-rel').on('click', function() { + location.reload(); +}); + +if ($('#noData').length > 0) { + if (location.href.indexOf('?openby:yohobuy=') <= 0) { + tip.show('网络异常!'); } +} - //重置子筛选项 - $('.sub-classify').each(function() { - setSubClassify($(this).children(':first-child')); - }); +$mask.on('click', function() { + $mask.hide(); + $message.hide(); +}); - //重置主筛选项 - classifyTapEvt($('.classify > :first-child')); -} -exports.initFilter = initFilter; +}); +define("js/passport/entry", ["jquery","handlebars","source-map","hammer"], function(require, exports, module){ +/** + * 注册、登录、密码找回打包入口 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/8 + */ + +//注册 +require("js/passport/register/register"); +require("js/passport/register/code"); +require("js/passport/register/password"); + +//登录 +require("js/passport/login/login"); +require("js/passport/login/international"); + +//密码找回 +require("js/passport/back/mobile"); +require("js/passport/back/code"); +require("js/passport/back/email"); +require("js/passport/back/email-success"); +require("js/passport/back/new-password"); + +//绑定手机 +require("js/passport/bind/bind"); +require("js/passport/bind/code"); +require("js/passport/bind/password"); + +// 关联手机 +require("js/passport/bind/relate"); -exports.showFilter = showFilter; +}); +define("js/passport/register/register", ["jquery"], function(require, exports, module){ +/** + * 注册 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/8 + */ +var $ = require("jquery"); + +var $phoneNum = $('#phone-num'), + $countrySelect = $('#country-select'), + $areaCode = $('#area-code'), + $btnNext = $('#btn-next'); + +var api = require("js/passport/api"); +var tip = require("js/plugin/tip"); + +var trim = $.trim; +var showErrTip = tip.show; + +var requested = false; + +api.selectCssHack($('#country-select')); + +api.bindClearEvt(); + +$phoneNum.bind('input', function() { + if (trim($phoneNum.val()) === '') { + $btnNext.addClass('disable'); + } else { + $btnNext.removeClass('disable'); + } +}); + +$countrySelect.change(function() { + $areaCode.text($countrySelect.val()); +}); + +$btnNext.on('touchstart', function() { + var pn = trim($phoneNum.val()), + areaCode = $countrySelect.val(); + + if ($btnNext.hasClass('disable')) { + return; + } + + if (requested) { + return false; + } + + + if (api.phoneRegx[areaCode].test(pn)) { + + requested = true; + + $.ajax({ + url: '/passport/reg/verifymobile', + type: 'POST', + data: { + areaCode: areaCode.replace('+', ''), + phoneNum: pn + }, + success: function(data) { + if (data.code === 200) { + location.href = data.data; + } else { + showErrTip(data.message); + requested = false; + } + }, + error: function(err) { + showErrTip('出错了,请重试'); + requested = false; + } + }); + } else { + showErrTip('手机号格式不正确,请重新输入'); + } +}); -exports.hideFilter = hideFilter; +}); +define("js/passport/api", ["jquery"], function(require, exports, module){ +/** + * 登录注册公用API + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/8 + */ +var $ = require("jquery"); + +var trim = $.trim; + +//邮箱验证规则 +var emailRegx = /^([a-zA-Z0-9]+[_|\_|\.|-]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.|-]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/; + +//手机号码验证规则 +var phoneRegx = { + '+86': /^1[35847]{1}[0-9]{9}$/, + '+852': /^[965]{1}[0-9]{7}$/, + '+853': /^[0-9]{8}$/, + '+886': /^[0-9]{10}$/, + '+65': /^[98]{1}[0-9]{7}$/, + '+60': /^1[1234679]{1}[0-9]{8}$/, + '+1': /^[0-9]{10}$/, + '+82': /^01[0-9]{9}$/, + '+44': /^7[789][0-9]{8}$/, + '+81': /^0[9|8|7][0-9]{9}$/, + '+61': /^[0-9]{11}$/ +}; + +/** + * 密码显示隐藏 + * @params opt 初始化参数 + */ +function bindEyesEvt(opt) { + var $hasEye = $('.has-eye'), + $eye; + + if (opt && opt.status === 'open') { + $hasEye.append('<div class="eye"></div>'); + } else { + $hasEye.append('<div class="eye close"></div>'); + } + $eye = $hasEye.children('.eye'); + + $eye.on('touchstart', function(e) { + var $this = $(this), + $pwd = $this.siblings('.pwd'); + + e.preventDefault(); + $this.toggleClass('close'); + + //切换密码显示和文本显示 + if ($this.hasClass('close')) { + $pwd.attr('type', 'password'); + } else { + $pwd.attr('type', 'text'); + } + $pwd.focus(); + }); +} + +// 清空账号显示 +function bindClearEvt() { + var $hasClear = $('.has-clear'), + $clear; + + $hasClear.append('<div class="clear-input"></div>'); + $clear = $hasClear.children('.clear-input'); + + $clear.on('touchstart', function(e) { + var $input = $clear.siblings('.input'); + + $input.val('').trigger('input').focus(); + e.preventDefault(); + }); + + //反向逻辑 + $hasClear.children('.input').bind('input', function() { + var $this = $(this), + $thisClear = $this.siblings('.clear-input'), + val = trim($this.val()); + + if (val === '') { + $thisClear.hide(); + } else { + $thisClear.show(); + } + }); +} + +// 密码长度验证 +function pwdValidate(pwd) { + if (pwd.length >= 6 && pwd.length <= 20) { + return true; + } + return false; +} + +// hack for resolving direction:rtl didn't work in android uc +function selectCssHack($countrySelect) { + var u = navigator.userAgent; + + function autoSelectWidth() { + var wordCount = $countrySelect.find('option:selected').text().length; + + switch (wordCount) { + + //分别有2,3,4个汉字的情况 + case 2: + $countrySelect.outerWidth(90); + break; + case 3: + $countrySelect.outerWidth(110); + break; + default: + $countrySelect.outerWidth(130); + } + } + + if (u.match(/uc/i) && u.match(/android/i)) { + $countrySelect.change(function() { + autoSelectWidth(); + }); + } else { + $countrySelect.removeClass('in-android-uc'); + } +} + +//Exports APIs +module.exports = { + emailRegx: emailRegx, + phoneRegx: phoneRegx, + bindEyesEvt: bindEyesEvt, + bindClearEvt: bindClearEvt, + pwdValidate: pwdValidate, + selectCssHack: selectCssHack +}; +}); +define("js/passport/register/code", ["jquery"], function(require, exports, module){ +/** + * 注册-验证码 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/8 + */ + +require("js/passport/code")(true); +}); +define("js/passport/code", ["jquery"], function(require, exports, module){ +/** + * 注册/找回密码-验证码 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/8 + */ +var $ = require("jquery"); + +module.exports = function(useInRegister, useForBind, useForRelate) { + var $captcha = $('#captcha'), + $btnNext = $('#btn-next'), + $captchaTip = $('#captcha-tip'), + nickname = $('#nickname').val(), + sourceType = $('#sourceType').val(), + openId = $('#openId').val(), + phoneNum = $('#phone-num').val(), + areaCode = $('#area-code').val().replace('+', ''); + + var api = require("js/passport/api"); + var tip = require("js/plugin/tip"); + + var trim = $.trim; + var showErrTip = tip.show; + + var urlMid = useInRegister ? 'reg' : 'back'; + + var isReg = parseInt($('#isReg').val()); + + function startBind() { + $.ajax({ + url: useForBind ? '/passport/bind/bindMobile' : '/passport/bind/relateMobile', + type: 'post', + data: { + areaCode: areaCode.replace('+', ''), + phoneNum: phoneNum, + openId: openId, + sourceType: sourceType, + nickname: nickname, + password: '', + code: trim($captcha.val()) + }, + success: function(res) { + if (res.code === 200) { + tip.show('登录成功'); + setTimeout(function() { + location.href = res.data.refer; + }, 2000); + } else { + tip.show(res.message); + } + }, + error: function(err) { + tip.show('登录失败,请重试!'); + } + }); + } + + function startReg() { + $.ajax({ + type: 'POST', + url: '/passport/' + urlMid + '/verifycode', + data: { + phoneNum: phoneNum, + areaCode: areaCode, + code: trim($captcha.val()), + token: $('#token').val() + }, + success: function(data) { + if (data.code === 200) { + location.href = data.data; + } else { + + //验证码不正确,显示提示 + showErrTip(data.message); + } + + } + }); + } + + function countDown() { + var count = 59, + itime; + + itime = setInterval(function() { + if (count === 0) { + $captchaTip.text('重新发送').removeClass('disable'); + clearInterval(itime); + } else { + $captchaTip.text('重新发送 (' + count-- + '秒)'); + } + }, 1000); + } + + api.bindClearEvt(); + + $captcha.bind('input', function() { + if (trim($captcha.val()) !== '') { + $btnNext.removeClass('disable'); + } else { + $btnNext.addClass('disable'); + } + }); + + //重新发送验证码 + $captchaTip.on('touchstart', function() { + if ($captchaTip.hasClass('disable')) { + return; + } + + $.ajax({ + type: 'POST', + url: (useForBind || useForRelate) ? '/passport/bind/sendBindMsg' : '/passport/' + urlMid + '/sendcode', + data: { + phoneNum: phoneNum, + areaCode: areaCode + }, + success: function(data) { + if (data.code === 200) { + $captchaTip.text('重发验证码 (60秒)').addClass('disable'); + countDown(); + } else { + + //验证码不正确,显示提示 + showErrTip(data.message); + } + } + }); + }); + + $btnNext.on('touchstart', function() { + if ($btnNext.hasClass('disable')) { + return; + } + + if (useForBind || useForRelate) { + if (isReg) { + startBind(); + } else { + location.href = '/passport/bind/password?phoneNum=' + + phoneNum + '&areaCode=' + areaCode + '&openId=' + + openId + '&sourceType=' + sourceType + '&nickname=' + nickname + '&code=' + trim($captcha.val()); + } + + } else { + startReg(); + } + }); + + countDown(); +}; -exports.resetFilter = resetFilter; +}); +define("js/passport/register/password", ["jquery"], function(require, exports, module){ +/** + * 注册-密码 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/8 + */ +var $ = require("jquery"); + +var $pwd = $('#pwd'), + $btnSure = $('#btn-sure'); + +var api = require("js/passport/api"); +var tip = require("js/plugin/tip"); + +var trim = $.trim; +var showErrTip = tip.show; + +api.bindEyesEvt({ + status: 'open' //默认眼睛打开 +}); + +$pwd.bind('input', function() { + if (trim($pwd.val()) === '') { + $btnSure.addClass('disable'); + } else { + $btnSure.removeClass('disable'); + } +}); + +$btnSure.on('touchstart', function() { + var pwd = trim($pwd.val()); + + if ($btnSure.hasClass('disable')) { + return; + } + + if (api.pwdValidate(pwd) === false) { + showErrTip('密码6-20位,请重新输入'); + } else { + $.ajax({ + type: 'POST', + url: '/passport/reg/setpassword', + data: { + password: pwd, + phoneNum: $('#phone-num').val(), + areaCode: $('#area-code').val(), + token: $('#token').val() + }, + success: function(data) { + var res; + + if (data.code === 200) { + res = data.data; + showErrTip('注册成功'); + + $.ajax({ + url: res.session, + dataType: 'jsonp' + }); + + //1000ms后跳转页面 + setTimeout(function() { + location.href = res.href; + }, 1000); + } else { + showErrTip(data.message); + } + } + }); + } +}); +}); +define("js/passport/login/login", ["jquery"], function(require, exports, module){ +/** + * 登录 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/9/30 + */ +var $ = require("jquery"); + +var $account = $('#account'), + $pwd = $('#pwd'), + $loginBtn = $('#btn-login'), + + $mask = $('#retrive-pwd-mask'), + $ways = $('#retrive-pwd-ways'), + + accPass = false, + pwdPass = false; + +var api = require("js/passport/api"); +var tip = require("js/plugin/tip"); + +var trim = $.trim; +var showErrTip = tip.show; + +//登录按钮状态切换 +function switchLoginBtnStatus() { + if (accPass && pwdPass) { + $loginBtn.removeClass('disable'); + } else { + $loginBtn.addClass('disable'); + } +} + +//显示找回密码面板 +function showRetrivePanel() { + $mask.show(); + $ways.show(); +} + +//隐藏找回密码面板 +function hideRetrivePanel() { + $mask.hide(); + $ways.hide(); +} + +//密码显示与隐藏 +api.bindEyesEvt(); + +//清空账号输入框 +api.bindClearEvt(); + +$account.bind('input', function() { + if (trim($account.val()) !== '') { + accPass = true; + } else { + accPass = false; + } + switchLoginBtnStatus(); +}); + +$pwd.bind('input', function() { + if (trim($pwd.val()) === '') { + pwdPass = false; + } else { + pwdPass = true; + } + switchLoginBtnStatus(); +}); + + +// Login +$loginBtn.on('touchstart', function() { + var acc = trim($account.val()), + pwd = trim($pwd.val()); + + if ($loginBtn.hasClass('disable')) { + return; + } + + $loginBtn.text('正在登录...').addClass('disable'); + + //验证账号(数字或者邮箱)和密码合理性 + if ((/^[0-9]+$/.test(acc) || api.emailRegx.test(acc)) && api.pwdValidate(pwd)) { + $.ajax({ + type: 'POST', + url: '/passport/login/auth', + data: { + account: acc, + password: pwd + }, + success: function(data) { + var res; + + if (data.code === 200) { + res = data.data; + + showErrTip('登录成功'); + location.href = res.href; + } else { + showErrTip(data.message); + } + }, + error: function() { + showErrTip('网络断开连接啦~'); + }, + complete: function() { + $loginBtn.text('登录').removeClass('disable'); + } + }); + } else { + showErrTip('账号或密码有错误,请重新输入'); + $loginBtn.text('登录').removeClass('disable'); + } +}); + + +$('#forget-pwd').on('touchstart', function() { + showRetrivePanel(); +}); + +$mask.on('touchstart', function() { + hideRetrivePanel(); +}); + +$('#cancel-retrive').on('touchstart', function(e) { + e.preventDefault(); + hideRetrivePanel(); +}); + +//对初始有默认值的情况去初始化登录按钮状态 +$account.trigger('input'); +$pwd.trigger('input'); }); -define("js/product/query-param", ["jquery"], function(require, exports, module){ +define("js/passport/login/international", ["jquery"], function(require, exports, module){ +/** + * 国际账号登录 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/8 + */ +var $ = require("jquery"); + +var $phoneNum = $('#phone-num'), + $countrySelect = $('#country-select'), + $areaCode = $('#area-code'), + $pwd = $('#pwd'), + $loginBtn = $('#btn-login'), + + pnPass = false, + pwdPass = false; + +var api = require("js/passport/api"); +var tip = require("js/plugin/tip"); + +var trim = $.trim; +var showErrTip = tip.show; + +//登录按钮状态切换 +function switchLoginBtnStatus() { + if (pnPass && pwdPass) { + $loginBtn.removeClass('disable'); + } else { + $loginBtn.addClass('disable'); + } +} + +//Android-UC下显示select的direction:rtl无效的临时解决办法 +api.selectCssHack($countrySelect); + +//显示隐藏密码 +api.bindEyesEvt(); + +//清空手机号码 +api.bindClearEvt(); + +$phoneNum.bind('input', function() { + if (trim($phoneNum.val()) === '') { + pnPass = false; + } else { + pnPass = true; + } + + switchLoginBtnStatus(); +}); + +$pwd.bind('input', function() { + var pwd = trim($pwd.val()); + + if (pwd === '') { + pwdPass = false; + } else { + pwdPass = true; + } + + switchLoginBtnStatus(); +}); + +$countrySelect.change(function() { + $areaCode.text($countrySelect.val()); +}); + +$loginBtn.on('touchstart', function() { + var pn = trim($phoneNum.val()), + areaCode = $countrySelect.val(), + pwd = trim($pwd.val()); + + if ($loginBtn.hasClass('disable')) { + return; + } + + $loginBtn.text('正在登录...').addClass('disable'); + + if (api.phoneRegx[areaCode].test(pn) && api.pwdValidate(pwd)) { + $.ajax({ + type: 'POST', + url: '/passport/login/auth', + data: { + areaCode: areaCode.replace('+', ''), + account: pn, + password: pwd + }, + success: function(data) { + var res, + time; + + if (data.code === 200) { + res = data.data; + showErrTip('登录成功'); + + $.ajax({ + url: res.session, + dataType: 'jsonp', + success: function() { + clearTimeout(time); + + //Cookie写入成功后,1s后跳转页面 + setTimeout(function() { + location.href = res.href; + }, 1000); + } + }); + + //3秒后强制跳转 + time = setTimeout(function() { + location.href = res.href; + }, 3000); + + showErrTip('登录成功'); + } else { + showErrTip(data.message); + } + }, + error: function() { + showErrTip('网络断开连接啦~'); + }, + complete: function() { + $loginBtn.text('登录').removeClass('disable'); + } + }); + } else { + showErrTip('账号或密码有错误,请重新输入'); + $loginBtn.text('登录').removeClass('disable'); + } +}); + +//对初始有默认值的情况去初始化登录按钮状态 +$phoneNum.trigger('input'); +$pwd.trigger('input'); +}); +define("js/passport/back/mobile", ["jquery"], function(require, exports, module){ +/** + * 找回密码-手机 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/8 + */ +var $ = require("jquery"); + +var $phoneNum = $('#phone-num'), + $countrySelect = $('#country-select'), + $areaCode = $('#area-code'), + $btnNext = $('#btn-next'); + +var api = require("js/passport/api"); +var tip = require("js/plugin/tip"); + +var trim = $.trim; +var showErrTip = tip.show; + +api.selectCssHack($('#country-select')); + +api.bindClearEvt(); + +$phoneNum.bind('input', function() { + if (trim($phoneNum.val()) === '') { + $btnNext.addClass('disable'); + } else { + $btnNext.removeClass('disable'); + } +}); + +$countrySelect.change(function() { + $areaCode.text($countrySelect.val()); +}); + +$btnNext.on('touchstart', function() { + var pn = trim($phoneNum.val()), + area = $countrySelect.val(); + + if ($btnNext.hasClass('disable')) { + return; + } + + if (api.phoneRegx[area].test(pn)) { + $.ajax({ + url: '/passport/back/sendcode', + type: 'POST', + data: { + areaCode: area.replace('+', ''), + phoneNum: pn + }, + success: function(data) { + if (data.code === 200) { + location.href = data.data; + } else { + showErrTip(data.message); + } + } + }); + } else { + showErrTip('手机号格式不正确,请重新输入'); + } +}); +}); +define("js/passport/back/code", ["jquery"], function(require, exports, module){ +/** + * 找回密码-验证码 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/8 + */ + +require("js/passport/code")(false); +}); +define("js/passport/back/email", ["jquery"], function(require, exports, module){ +/** + * 找回密码-邮箱找回 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/8 + */ +var $ = require("jquery"); + +var $email = $('#email'), + $btnSure = $('#btn-sure'); + +var api = require("js/passport/api"); +var tip = require("js/plugin/tip"); + +var trim = $.trim; +var showErrTip = tip.show; + +api.bindClearEvt(); + +$email.bind('input', function() { + if (trim($email.val()) === '') { + $btnSure.addClass('disable'); + } else { + $btnSure.removeClass('disable'); + } +}); + +$btnSure.on('touchstart', function() { + var email = trim($email.val()); + + if ($btnSure.hasClass('disable')) { + return; + } + + if (api.emailRegx.test(email)) { + $.ajax({ + url: '/passport/back/sendemail', + type: 'POST', + data: { + email: email + }, + success: function(data) { + if (data.code === 200) { + location.href = data.data; + } else { + showErrTip(data.message); + } + } + }); + } else { + showErrTip('邮箱格式不正确,请重新输入'); + } +}); +}); +define("js/passport/back/email-success", ["jquery"], function(require, exports, module){ /** - * 提取查询参数 + * 找回密码-邮箱找回成功 * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/11/19 + * @date: 2015/10/8 */ -var $ = require("jquery"), - opt = {}; +var $ = require("jquery"); -$('.query-param').each(function() { - var $this = $(this); +var $resend = $('#resend'); - opt[$this.data('attr')] = $this.val(); -}); +var tip = require("js/plugin/tip"), + showTip = tip.show; -module.exports = opt; +$resend.on('touchstart', function(e) { + e.preventDefault(); + + $.ajax({ + url: $resend.data('url'), + type: 'GET', + success: function(data) { + showTip(data.message); + } + }); }); -define("js/product/suspend-cart", ["jquery"], function(require, exports, module){ +}); +define("js/passport/back/new-password", ["jquery"], function(require, exports, module){ /** - * 悬浮购物车 + * 密码找回-新密码 * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/11/1 + * @date: 2015/10/8 */ - var $ = require("jquery"); -var $cart = $('#suspend-cart'); +var $pwd = $('#pwd'), + $btnOk = $('#btn-ok'); -$.ajax({ - type: 'GET', - url: '/cart/index/count', - success: function(data) { - var count; +var api = require("js/passport/api"); +var tip = require("js/plugin/tip"); - if (data.code === 200) { - count = data.data.cart_goods_count; - if (count > 99) { - count = '99+'; - } - if (count === 0) { - $('.cart-count').remove(); - } - $cart.find('.cart-count').html(count).removeClass('hide'); - } +var trim = $.trim; +var showErrTip = tip.show; + +var $phoneNum = $('#phone-num'); + +api.bindEyesEvt({ + status: 'open' +}); + +$pwd.bind('input', function() { + if (trim($pwd.val()) === '') { + $btnOk.addClass('disable'); + } else { + $btnOk.removeClass('disable'); } }); + +$btnOk.on('touchstart', function() { + var pwd = trim($pwd.val()), + mobileBack = true, + setting, + url; + + if ($btnOk.hasClass('disable')) { + return; + } + + setting = { + password: pwd + }; + + if ($phoneNum.length === 0) { + mobileBack = false; + } + + if (mobileBack) { + $.extend(setting, { + phoneNum: $phoneNum.val(), + areaCode: $('#areaCode').val(), + token: $('#token').val() + }); + + url = '/passport/back/passwordByMobile'; + } else { + $.extend(setting, { + code: $('#email-code').val() + }); + + url = '/passport/back/passwordByEmail'; + } + + + if (api.pwdValidate(pwd)) { + $.ajax({ + type: 'POST', + url: url, + data: setting, + success: function(data) { + if (data.code === 200) { + showErrTip('密码修改成功'); + + //1000ms后跳转页面 + setTimeout(function() { + location.href = data.data; + }, 1000); + } else { + showErrTip(data.message); + } + } + }); + } else { + showErrTip('密码6-20位,请重新输入'); + } +}); +}); +define("js/passport/bind/bind", ["jquery","handlebars","source-map","hammer"], function(require, exports, module){ +/** + * 注册 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/8 + */ +var $ = require("jquery"); -}); -define("js/product/newsale/discount", ["jquery","swiper","mlellipsis","lazyload","iscroll-probe","hammer","index"], function(require, exports, module){ -/** - * 商品列表页 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/20 - */ - -var $ = require("jquery"), - Swiper = require("swiper"), - ellipsis = require("mlellipsis"), - lazyLoad = require("lazyload"); - -var swiper; - -var tip = require("js/plugin/tip"), - filter = require("js/plugin/filter"), - loading = require("js/plugin/loading"); - -var $goodsContainer = $('#goods-container'), - $goodsChildren = $goodsContainer.children(), - $ngc = $($goodsChildren.get(0)), - $pgc = $($goodsChildren.get(1)), - $dgc = $($goodsChildren.get(2)); - -var winH = $(window).height(), - noResult = '<p class="no-result">未找到相关搜索结果</p>'; - -//默认筛选条件 -var defaultOpt = require("js/product/query-param"); - -var $listNav = $('#list-nav'), - - //导航数据信息 - navInfo = { - newest: { - order: 1, - reload: true, - page: 0, - end: false - }, - price: { - order: 1, - reload: true, - page: 0, - end: false - }, - discount: { - order: 1, - reload: true, - page: 0, - end: false - } - }, - $pre = $listNav.find('.active'), //纪录进入筛选前的active项,初始为选中项 - searching; - -require("js/product/suspend-cart"); //悬浮购物车 - -ellipsis.init(); - -if ($('.swiper-container .swiper-slide').length > 1) { - swiper = new Swiper('.swiper-container', { - lazyLoading: true, - lazyLoadingInPrevNext: true, - loop: true, - autoplay: 3000, - autoplayDisableOnInteraction: true, - paginationClickable: true, - pagination: '.banner-top .pagination-inner' - }); -} - -/** - * 筛选注册的回调,筛选子项点击后逻辑 - * 需要执行search的场景:1.点选筛选项;2.relaod为true时切换导航;3.下拉加载 - * @param opt {type, id} - */ -function search(opt) { - var setting = {}, - ext, - att, - nav, navType, - page; - - if (searching) { - return; - } - - if (opt) { - - //筛选项变更则重置reload为true - for (att in navInfo) { - if (navInfo.hasOwnProperty(att)) { - navInfo[att].reload = true; - } - } - - //处理active状态 - $listNav.children('.active').removeClass('active'); - $pre.addClass('active'); - - switch (opt.type) { - case 'gender': - ext = { - gender: opt.id - }; - break; - case 'brand': - ext = { - brand: opt.id - }; - break; - case 'ageLevel': - ext = { - age_level: opt.id - }; - break; - case 'sort': - ext = { - sort: opt.id - }; - break; - case 'color': - ext = { - color: opt.id - }; - break; - case 'size': - ext = { - size: opt.id - }; - break; - case 'price': - ext = { - price: opt.id - }; - break; - case 'discount': - ext = { - discount: opt.id - }; - break; - } - - $.extend(defaultOpt, ext); //扩展筛选项 - } +var $phoneNum = $('#phone-num'), + $countrySelect = $('#country-select'), + $areaCode = $('#area-code'), + $openId = $('#openId'), + $nickname = $('#nickname'), + $sourceType = $('#sourceType'), + $btnNext = $('#btn-next'); +var api = require("js/passport/api"), + tip = require("js/plugin/tip"), + dialog = require("js/me/dialog"); - //导航类别 - if ($pre.hasClass('new')) { - navType = 'newest'; - } else if ($pre.hasClass('price')) { - navType = 'price'; - } else if ($pre.hasClass('discount')) { - navType = 'discount'; - } +var trim = $.trim; +var showErrTip = tip.show; - nav = navInfo[navType]; +var requested = false; - page = nav.page + 1; - if (nav.reload) { - page = 1; - } else if (nav.end) { +require("js/common"); - //不需要重新加载并且数据请求结束 - return; +function nextStep(url, mobileNo, areaCode) { + if (requested) { + return false; } - $.extend(setting, defaultOpt, { - type: navType, - order: nav.order, - page: page - }); - - searching = true; - loading.showLoadingMask(); + requested = true; + $btnNext.addClass('disable').html('绑定中...'); $.ajax({ - type: 'GET', - url: '/product/newsale/selectNewSale', - data: setting, - success: function(data) { - var $container, - num; - - switch (navType) { - case 'newest': - $container = $ngc; - break; - case 'price': - $container = $pgc; - break; - case 'discount': - $container = $dgc; - break; - } + type: 'POST', + url: '/passport/bind/sendBindMsg', + data: { + phoneNum: mobileNo, + areaCode: areaCode.replace('+', '') + }, + success: function(res) { - if (data === ' ') { - nav.end = true; + if (res.code === 200) { - if (nav.reload) { - $container.html(noResult); + // 统计代码:用于统计从哪个渠道登录 + if (window._yas && window._yas.sendCustomInfo) { + window._yas.sendCustomInfo({ + 'loginRefer' : $sourceType.val() + }, false); } - } else { - if (nav.reload) { - $container.html(data); - lazyLoad($container.find('.lazy')); - } else { - num = $container.find('.good-info').length; - $container.append(data); - //lazy good-infos who append in - lazyLoad($container.find('.good-info:gt(' + (num - 1) + ') .lazy')); - } + location.href = url; + } else { + tip.show(res.message); } - - nav.reload = false; - nav.page = page; - - searching = false; - loading.hideLoadingMask(); - - window.rePosFooter(); - - $('.good-detail-text .name').each(function() { - var $this = $(this), - $title = $this.find('a'); - - $title[0].mlellipsis(2); - }); }, error: function() { - tip.show('网络断开连接了~'); - searching = false; - loading.hideLoadingMask(); - } - }); - -} - -$.ajax({ - type: 'GET', - url: '/product/newsale/filter', - data: defaultOpt, - success: function(data) { - $goodsContainer.append(data); - - //初始化filter&注册filter回调 - filter.initFilter({ - fCbFn: search, - hCbFn: function() { - - //切换active状态到$pre上 - $pre.addClass('active'); - $pre.siblings('.filter').removeClass('active'); - }, - missStatus: true - }); - } -}); -lazyLoad($('.lazy')); - -//导航栏点击逻辑说明: -//1.点击非active项时切换active状态 -//2.价格和折扣active状态时继续点击切换排序 -//3.筛选无active时点击展开筛选面板 -//4.筛选有active时点击隐藏筛选面板并恢复点击筛选前active项的active状态 -//5.当前active为筛选并且点击其他项时,隐藏筛选面板 -$listNav.bind('contextmenu', function(e) { - return false; -}); - -$listNav.on('touchend touchcancel', function(e) { - var $this = $(e.target).closest('li'), - nav, - navType, - $active; - - e.preventDefault(); - - if (typeof $this === 'undefined' || $this.length === 0) { - return; - } - - if ($this.hasClass('filter')) { - - //筛选面板切换状态 - if ($this.hasClass('active')) { - filter.hideFilter(); - - //点击筛选钱的active项回复active - $pre.addClass('active'); - $this.removeClass('active'); - } else { - $pre = $this.siblings('.active'); - - $pre.removeClass('active'); - $this.addClass('active'); - - filter.showFilter(); - } - } else { - - if ($this.hasClass('new')) { - navType = 'newest'; - } else if ($this.hasClass('price')) { - navType = 'price'; - } else if ($this.hasClass('discount')) { - navType = 'discount'; + tip.show('出错了,请重试!'); + $btnNext.removeClass('disable').html('下一步'); + requested = false; } + }); +} - nav = navInfo[navType]; - - if ($this.hasClass('active')) { - - //最新无排序切换 - if ($this.hasClass('new')) { - return; - } - - if ($this.hasClass('price') || $this.hasClass('discount')) { - - // 价格/折扣切换排序状态 - $this.find('.icon > .iconfont').toggleClass('cur'); - $pre = $this; //更新pre为当前项 - nav.reload = true; //重置reload,HTML会被替换为逆序的HTML - nav.order = nav.order === 0 ? 1 : 0; //切换排序 - } - } else { - $active = $this.siblings('.active'); - - $pre = $this; //$pre为除筛选导航的其他导航项,若当前active的为筛选,则把$pre置为当前点击项 +api.selectCssHack($('#country-select')); - if ($active.hasClass('filter')) { +api.bindClearEvt(); - //若之前active项为筛选,则隐藏筛选面板 - filter.hideFilter(); - } else { +$phoneNum.bind('input', function() { + if (trim($phoneNum.val()) === '') { + $btnNext.addClass('disable'); + } else { + $btnNext.removeClass('disable'); + } +}); - //切换container显示 - $goodsContainer.children('.container:not(.hide)').addClass('hide'); +$countrySelect.change(function() { + $areaCode.text($countrySelect.val()); +}); - switch (navType) { - case 'newest': - $ngc.removeClass('hide'); - break; +$btnNext.on('touchstart', function() { + var pn = trim($phoneNum.val()), + openId = trim($openId.val()), + nickname = trim($nickname.val()), + sourceType = trim($sourceType.val()), + areaCode = $countrySelect.val(); - case 'price': - $pgc.removeClass('hide'); - break; + if ($btnNext.hasClass('disable')) { + return; + } - case 'discount': - $dgc.removeClass('hide'); - break; + if (api.phoneRegx[areaCode].test(pn)) { + $.ajax({ + url: '/passport/bind/bindCheck', + type: 'POST', + data: { + areaCode: areaCode.replace('+', ''), + phoneNum: pn, + openId: openId, + sourceType: sourceType, + nickname: nickname + }, + success: function(res) { + if (res.code === 200) { + if (res.data.isReg === 1) { + dialog.showDialog({ + dialogText: '该手机号已注册过有货\n' + pn + ',确定绑定吗?', + hasFooter: { + leftBtnText: '更换号码', + rightBtnText: '继续绑定' + } + }, function() { + nextStep(res.data.next, pn, areaCode); + }); + } else if (res.data.isReg === 3) { + dialog.showDialog({ + dialogText: '该手机号已注册过有货\n' + pn + ',是否进行关联?', + hasFooter: { + leftBtnText: '更换号码', + rightBtnText: '确定' + } + }, function() { + nextStep(res.data.next, pn, areaCode); + }); + } else { + nextStep(res.data.next, pn, areaCode); + } + } else { + showErrTip(res.message); } } - - $active.removeClass('active'); - $this.addClass('active'); - } - - if (nav.reload) { - search(); - } + }); + } else { + showErrTip('手机号格式不正确,请重新输入'); } - e.stopPropagation(); }); -function scrollHandler() { - - //当scroll到1/4$goodsContainer高度后继续请求下一页数据 - if ($(window).scrollTop() + winH > - $(document).height() - 0.25 * $goodsContainer.height() - 50) { - if ($pre !== undefined) { - search(); - } - } +if (/MicroMessenger/i.test(navigator.userAgent) && $.queryString().refer) { + $('.go-back').attr('href', decodeURIComponent($.queryString().refer)); } -//srcoll to load more -$(window).scroll(function() { - window.requestAnimationFrame(scrollHandler); }); +define("js/passport/bind/code", ["jquery"], function(require, exports, module){ +/** + * 注册-验证码 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/8 + */ + +require("js/passport/code")(true, true); -//初始请求最新第一页数据 -search(); +}); +define("js/passport/bind/password", ["jquery"], function(require, exports, module){ +/** + * 注册-密码 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/8 + */ +var $ = require("jquery"); + +var $pwd = $('#pwd'), + $btnSure = $('#btn-sure'); + +var api = require("js/passport/api"); +var tip = require("js/plugin/tip"); + +var trim = $.trim; +var showErrTip = tip.show; + +var nickname = $('#nickname').val(), + sourceType = $('#sourceType').val(), + openId = $('#openId').val(), + phoneNum = $('#phone-num').val(), + areaCode = $('#area-code').val().replace('+', ''), + code = $('#code').val(); + +function startBind(password) { + $.ajax({ + url: '/passport/bind/bindMobile', + type: 'post', + data: { + areaCode: areaCode.replace('+', ''), + phoneNum: phoneNum, + openId: openId, + sourceType: sourceType, + nickname: nickname, + password: password, + code: code + }, + success: function(res) { + if (res.code === 200) { + tip.show('登录成功'); + setTimeout(function() { + location.href = res.data.refer; + }, 2000); + } else { + tip.show(res.message); + } + }, + error: function(err) { + tip.show('登录失败,请重试!'); + } + }); +} + +api.bindEyesEvt({ + status: 'open' //默认眼睛打开 +}); + +$pwd.bind('input', function() { + if (trim($pwd.val()) === '') { + $btnSure.addClass('disable'); + } else { + $btnSure.removeClass('disable'); + } +}); + +$btnSure.on('touchstart', function() { + var pwd = trim($pwd.val()); + + if ($btnSure.hasClass('disable')) { + return; + } + + if (api.pwdValidate(pwd) === false) { + showErrTip('密码6-20位,请重新输入'); + } else { + startBind(pwd); + } +}); -$listNav.on('touchstart', 'li', function(e) { - $(this).addClass('bytouch'); -}).on('touchend touchcancel', function() { - $listNav.find('li').removeClass('bytouch'); }); +define("js/passport/bind/relate", ["jquery"], function(require, exports, module){ +/** + * 关联手机号-验证码 + */ + +require("js/passport/code")(true, false, true); }); -define("js/product/list", ["jquery","hammer","mlellipsis","lazyload","iscroll-probe"], function(require, exports, module){ +define("js/product/entry", ["jquery","swiper","mlellipsis","lazyload","iscroll-probe","hammer","handlebars","source-map","index"], function(require, exports, module){ +/** + * 产品打包入口 + * @author: liangzhifeng<zhifeng.liang@yoho.cn> + * @date: 2015/10/12 + */ + +require("js/product/newsale/newarrival"); +require("js/product/newsale/discount"); +require("js/product/list"); +require("js/product/detail/detail"); +require("js/product/detail/consultform"); +require("js/product/newsale/hot-rank"); +require("js/product/product-category"); +require("js/product/shop"); +}); +define("js/product/newsale/newarrival", ["jquery","swiper","mlellipsis","lazyload","iscroll-probe","hammer","index"], function(require, exports, module){ /** - * 商品列表页 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/20 + * 新品到着 + * @author: liangzhifeng<zhifeng.liang@yoho.cn> + * @date: 2015/10/24 */ var $ = require("jquery"), - Hammer = require("hammer"), + Swiper = require("swiper"), ellipsis = require("mlellipsis"), lazyLoad = require("lazyload"); +var swiper, + $ngc, + $pgc, + $dgc; -//品牌页参数 -var $brandHeader = $('#brand-header'), - $introBox = $('#intro-box'); - -var filter = require("js/plugin/filter"); - -var writeSearch = require("js/index/write-search"); - -var tip = require("js/plugin/tip"); -var loading = require("js/plugin/loading"); +var tip = require("js/plugin/tip"), + filter = require("js/plugin/filter"), + loading = require("js/plugin/loading"); var $goodsContainer = $('#goods-container'), - $ngc = $goodsContainer.children('.new-goods'), - $pgc = $goodsContainer.children('.price-goods'), - $dgc = $goodsContainer.children('.discount-goods'); - -var winH = $(window).height(); - -var $input = $('#search-input input'), - $clear = $('#search-input .clear-input'), - $buriedpoint = $('.buriedpoint'), - $search = $('#search'); + $goodsChildren = $goodsContainer.children(), + $ngc = $($goodsChildren.get(0)), + $pgc = $($goodsChildren.get(1)).addClass('hide'), + $dgc = $($goodsChildren.get(2)).addClass('hide'); -var shopId,sort,brand,outlets,app_type; +var winH = $(window).height(), + noResult = '<p class="no-result">未找到相关搜索结果</p>'; //默认筛选条件 var defaultOpt = require("js/product/query-param"); +var storeOpt = $.extend({}, defaultOpt); //存储默认筛选条件以便重置 + +var now = new Date(), + month = now.getMonth() + 1, + date = now.getDate(); + var $listNav = $('#list-nav'), //导航数据信息 navInfo = { - newest: { - order: 1, + today: { reload: true, page: 0, end: false }, - price: { - order: 1, + week: { reload: true, page: 0, end: false }, - discount: { - order: 1, + sale: { reload: true, page: 0, end: false } }, $pre = $listNav.find('.active'), //纪录进入筛选前的active项,初始为选中项 - searching, - btnIntroHammer, - introHammer, - brandColHammer; - -ellipsis.init(); - -// 搜索输入联动 -function inputAction() { - var $searchAssociate = $('.search-associate'); - var $icon = $('.search-icon'); - var $searchItems = $('.search-items'); - - $input.on('input', function() { - if ($input.val() === '') { - $icon.css('color', '#b2b2b2'); - $clear.addClass('hide'); - $searchAssociate.html(''); - $searchItems.show(); - $searchAssociate.hide(); - } else { - $icon.css('color', '#666'); - $clear.removeClass('hide'); - $searchAssociate.show(); - } + searching; - // 联动搜索 - $.ajax({ - url: '/index/search/fuzzyDatas', - data: { - keyword: $input.val() - }, - dataType: 'json', - success: function(data) { - var ajaxHtml = ''; - var i; +require("js/product/suspend-cart"); //悬浮购物车 - if (data.length > 0) { - for (i = 0; i < data.length; i++) { - ajaxHtml += '<li><span class="keyword">' + data[i].keyword + '</span><span class="count">' + - data[i].count + ' items<i class="iconfont"></i></span></li>'; - } +ellipsis.init(); - $searchAssociate.html(ajaxHtml); - $searchItems.hide(); - } else { - $searchAssociate.html(''); - } +$('#today a').text(month + '月' + date + '号'); - $searchAssociate.find('li').on('touchend', function() { - $buriedpoint.val($(this).find('.keyword').html()); - $search.closest('form').submit(); - }); - }, - error: function() { - tip.show('网络断开连接了~'); - } - }); +if ($('.swiper-container .swiper-slide').length > 1) { + swiper = new Swiper('.swiper-container', { + lazyLoading: true, + lazyLoadingInPrevNext: true, + loop: true, + autoplay: 3000, + autoplayDisableOnInteraction: true, + paginationClickable: true, + pagination: '.banner-top .pagination-inner' }); } -inputAction(); - -$clear.on('touchend', function() { - $input.val('').trigger('input'); -}); - -/** - * 手动触发搜索 - */ -$search.on('touchend', function() { - $(this).closest('form').submit(); - return false; -}); - -/** - * 获取url参数 - */ -function getQueryString(name) { - var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i'); - var r = window.location.search.substr(1).match(reg); - - if (r != null) { - return window.unescape(r[2]); - } - return null; -} - -shopId = getQueryString('shop_id'); -sort = getQueryString('sort'); -outlets = getQueryString('outlets'); -age_level = getQueryString('ageLevel'); -app_type = getQueryString('app_type'); - /** * 筛选注册的回调,筛选子项点击后逻辑 * 需要执行search的场景:1.点选筛选项;2.relaod为true时切换导航;3.下拉加载 @@ -7367,10 +6215,8 @@ function search(opt) { ext, att, nav, navType, - page, - $this, - $title, - params; + dayLimit, + page; if (searching) { return; @@ -7388,12 +6234,8 @@ function search(opt) { //处理active状态 $listNav.children('.active').removeClass('active'); $pre.addClass('active'); + switch (opt.type) { - case 'shop_id': - ext = { - shop_id: opt.id - }; - break; case 'gender': ext = { gender: opt.id @@ -7434,9 +6276,19 @@ function search(opt) { discount: opt.id }; break; - case 'outlets': + case 'limit': ext = { - outlets: opt.id + limit: opt.id + }; + break; + case 'channel': + ext = { + channel: opt.id + }; + break; + case 'p_d': + ext = { + p_d: opt.id }; break; } @@ -7445,12 +6297,15 @@ function search(opt) { } //导航类别 - if ($pre.hasClass('new')) { - navType = 'newest'; - } else if ($pre.hasClass('price')) { - navType = 'price'; - } else if ($pre.hasClass('discount')) { - navType = 'discount'; + if ($pre.hasClass('today')) { + navType = 'today'; + dayLimit = 1; + } else if ($pre.hasClass('week')) { + navType = 'week'; + dayLimit = 2; + } else if ($pre.hasClass('sale')) { + navType = 'sale'; + dayLimit = 3; } nav = navInfo[navType]; @@ -7464,65 +6319,36 @@ function search(opt) { return; } - params = { - type: navType, - order: nav.order, + $.extend(setting, defaultOpt, { + dayLimit: dayLimit, page: page - }; - - if (shopId) { - params.shop_id = shopId; - } - - if (age_level) { - params.age_level = age_level - } - - if (sort) { - params.sort = sort; - } - - if (brand) { - params.brand = brand; - } - - if (outlets) { - params.outlets = outlets; - } - - if (app_type) { - params.app_type = app_type; - } - - $.extend(setting, defaultOpt, params); + }); searching = true; loading.showLoadingMask(); $.ajax({ type: 'GET', - url: location.protocol + '//m.yohobuy.com/index/search/search', + url: '/product/newsale/selectNewSale', data: setting, success: function(data) { - var noResult = '<p class="no-result">未找到相关搜索结果</p>', - num, - $container; + var $container, + num; switch (navType) { - case 'newest': + case 'today': $container = $ngc; break; - case 'price': + case 'week': $container = $pgc; break; - case 'discount': + case 'sale': $container = $dgc; break; } if (data === ' ') { nav.end = true; - if (nav.reload) { $container.html(noResult); } @@ -7549,44 +6375,24 @@ function search(opt) { window.rePosFooter(); $('.good-detail-text .name').each(function() { - $this = $(this); - $title = $this.find('a'); + var $this = $(this), + $title = $this.find('a'); $title[0].mlellipsis(2); }); - - // 用于统计点击了商品列表的第几个商品,序号从1开始计算。 - if (window._yas) { - switch (navType) { - case 'newest': - window._yas(1 * new Date(), '1.0.16', 'yohobuy_m', window._ozuid, - '', $('.new-goods .good-info .good-detail-img .good-thumb')); - break; - case 'price': - window._yas(1 * new Date(), '1.0.16', 'yohobuy_m', window._ozuid, - '', $('.price-goods .good-info .good-detail-img .good-thumb')); - break; - case 'discount': - window._yas(1 * new Date(), '1.0.16', 'yohobuy_m', window._ozuid, - '', $('.discount-goods .good-info .good-detail-img .good-thumb')); - break; - } - } + }, + error: function() { + tip.show('网络断开连接了~'); + searching = false; + loading.hideLoadingMask(); } }); } -require("js/product/suspend-cart"); //悬浮购物车 - -/* tar add 160914 */ -if ($brandHeader.data('isbaseshop') === 1) { - Object.assign(defaultOpt, {shop_id: $brandHeader.data('id')}); -} - $.ajax({ type: 'GET', - url: location.protocol + '//m.yohobuy.com/search/filter', + url: '/product/newsale/filter', data: defaultOpt, success: function(data) { $goodsContainer.append(data); @@ -7603,10 +6409,11 @@ $.ajax({ }); } }); - lazyLoad($('.lazy')); -writeSearch.bindWirteLocal($('#search-form')); +$listNav.bind('contextmenu', function(e) { + return false; +}); //导航栏点击逻辑说明: //1.点击非active项时切换active状态 @@ -7614,18 +6421,14 @@ writeSearch.bindWirteLocal($('#search-form')); //3.筛选无active时点击展开筛选面板 //4.筛选有active时点击隐藏筛选面板并恢复点击筛选前active项的active状态 //5.当前active为筛选并且点击其他项时,隐藏筛选面板 - -$listNav.bind('contextmenu', function(e) { - return false; -}); - +// navHammer = new Hammer($listNav[0]); $listNav.on('touchend touchcancel', function(e) { var $this = $(e.target).closest('li'), nav, navType, $active; - var bpIdData = $(this).find('.buriedpoint').attr('data-bp-id') || ''; + e.preventDefault(); if ($this.hasClass('filter')) { //筛选面板切换状态 @@ -7640,37 +6443,22 @@ $listNav.on('touchend touchcancel', function(e) { $pre.removeClass('active'); $this.addClass('active'); - filter.showFilter(); } } else { - if ($this.hasClass('new')) { - navType = 'newest'; - } else if ($this.hasClass('price')) { - navType = 'price'; - } else if ($this.hasClass('discount')) { - navType = 'discount'; + if ($this.hasClass('today')) { + navType = 'today'; + } else if ($this.hasClass('week')) { + navType = 'week'; + } else if ($this.hasClass('sale')) { + navType = 'sale'; } nav = navInfo[navType]; - if ($this.hasClass('active')) { - - //最新无排序切换 - if ($this.hasClass('new')) { - return; - } - - if ($this.hasClass('price') || $this.hasClass('discount')) { + if (!($this.hasClass('active'))) { - // 价格/折扣切换排序状态 - $this.find('.icon > .iconfont').toggleClass('cur'); - $pre = $this; //更新pre为当前项 - nav.reload = true; //重置reload,HTML会被替换为逆序的HTML - nav.order = nav.order === 0 ? 1 : 0; //切换排序 - } - } else { $active = $this.siblings('.active'); $pre = $this; //$pre为除筛选导航的其他导航项,若当前active的为筛选,则把$pre置为当前点击项 @@ -7685,36 +6473,43 @@ $listNav.on('touchend touchcancel', function(e) { $goodsContainer.children('.container:not(.hide)').addClass('hide'); switch (navType) { - case 'newest': + case 'today': $ngc.removeClass('hide'); break; - case 'price': + case 'week': $pgc.removeClass('hide'); break; - case 'discount': + case 'sale': $dgc.removeClass('hide'); break; } + + //重置筛选项 + filter.resetFilter(); + defaultOpt = $.extend({}, storeOpt); } $active.removeClass('active'); $this.addClass('active'); } + if (nav.reload) { - $(document).trigger('shouldSendBpData', [bpIdData]); search(); } } + e.stopPropagation(); }); function scrollHandler() { //当scroll到1/4$goodsContainer高度后继续请求下一页数据 if ($(window).scrollTop() + winH > - $(document).height() - 0.25 * $goodsContainer.height()) { - search(); + $(document).height() - 0.25 * $goodsContainer.height() - 50) { + if ($pre !== undefined) { + search(); + } } } @@ -7723,253 +6518,272 @@ $(window).scroll(function() { window.requestAnimationFrame(scrollHandler); }); -if ($brandHeader.length > 0) { +//初始请求最新第一页数据 +search(); - //品牌介绍 - btnIntroHammer = new Hammer($brandHeader.children('.btn-intro')[0]); - btnIntroHammer.on('tap', function() { - $introBox.removeClass('hide'); +$listNav.on('touchstart', 'li', function(e) { + $(this).addClass('bytouch'); +}).on('touchend touchcancel', function() { + $listNav.find('li').removeClass('bytouch'); +}); - //防止混合scroll发生 - $('body').addClass('overflow-hidden'); - }); +}); +define("js/plugin/filter", ["jquery","iscroll-probe","hammer"], function(require, exports, module){ +/** + * 筛选JS + * 暴露三个接口:注册回调、显示filter、隐藏filter + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/19 + */ - //关闭品牌介绍 - introHammer = new Hammer(document.getElementById('intro-box')); - introHammer.on('tap', function(e) { - var $this = $(e.target); +var $ = require("jquery"), + IScroll = require("iscroll-probe") + Hammer = require("hammer"); - e.srcEvent.preventDefault(); +var $filter; - //关闭品牌介绍box - if ($this.closest('#brand-intro').length === 0 || $this.hasClass('close-intro')) { - $introBox.addClass('hide'); - $('body').removeClass('overflow-hidden'); - } +var fCbFn, hCbFn; //筛选和关闭的回调 + +var missStatus; //是否忽略选中状态 + +//隐藏筛选界面 +function hideFilter() { + $filter.addClass('hide'); +} + +//显示筛选界面 +function showFilter() { + $filter.removeClass('hide'); +} + +// 一级菜单点击时背景高亮 +function highlightMainItem() { + var $mainItem = $('.filter-body .classify'); + + $mainItem.on('touchstart', '.shower', function() { + var bpIdData = $(this).attr('data-bp-id') || ''; + + $mainItem.removeClass('highlight'); + $(this).addClass('highlight'); + + $(document).trigger('shouldSendBpData', [bpIdData]); + }).on('touchend touchcancel', '.shower', function() { + $(this).removeClass('highlight'); }); +} - //品牌收藏 - brandColHammer = new Hammer($brandHeader.children('.btn-col')[0]); - brandColHammer.on('tap', function(e) { - var $this = $(e.target).closest('.btn-col'); +// 子菜单点击时背景高亮 +function highlightSubItem() { + var $subItem = $('.filter-body .sub-item'); - var id = $brandHeader.data('id'), // ID 在 PHP 程序里已经根据是否是基础店铺或者品牌动态处理了 - isBaseShop = $brandHeader.data('isbaseshop'), //tar add 160825 标记是否是基础店铺,否则是品牌 - postUrl = '', // tar add 160825 根据是否是基础店铺,收藏还是取消动态更改 URL 地址 - postData = {}; // tar add 160825 根据是否是基础店铺,收藏还是取消动态更改 POST 数据 + $subItem.on('touchstart', function() { + $subItem.removeClass('highlight'); + $(this).addClass('highlight'); + }).on('touchend touchcancel', function() { + $(this).removeClass('highlight'); + }); +} - /* 根据是基础店铺还是品牌做处理 */ - if (isBaseShop) { - var appVersion = $('input[name="app_version"]').val(); +//主筛选项Tap事件句柄 +function classifyTapEvt($this) { + if ($this.hasClass('active')) { + return; + } - /* 如果是基础店铺,POST 的数据一样 */ - if ($this.hasClass('coled')) { - postData = { - shop_id: id, - app_version: appVersion, - opt: 'cancel' - }; - postUrl = '/product/index/cancelShopFav'; - } else { - postData = { - shop_id: id, - app_version: appVersion, - opt: 'ok' - }; - postUrl = '/product/index/shopFav'; - } - } else { + $this.siblings('.active').removeClass('active'); - /* 品牌,收藏与取消收藏,请求 URL 一样 */ - postUrl = '/product/opt/favoriteBrand'; - if ($this.hasClass('coled')) { - postData = { - id: id, - opt: 'cancel' - }; + $this.addClass('active'); + +} + +//子筛选项选中处理 +function setSubClassify($this) { + var $sub = $this.closest('.sub-classify'); + + var $shower = $sub.siblings('.shower'); + + var html, shower; + + if ($this.hasClass('chosed')) { + return $sub; + } + + $sub.children('.chosed').removeClass('chosed'); + $this.addClass('chosed'); + + html = $.trim($this.html()); + + shower = $.trim($shower.html()); + + $shower.html( + shower.substring(0, shower.indexOf('</span>') + 7) + //拆分出shower的title + html.substring(0, html.indexOf('<i')) //拆分选中筛选值 + ); + + if ($this.index() === 0) { + $shower.addClass('default'); + } else { + $shower.removeClass('default'); + } + + return $sub; +} + +//子筛选项Tap句柄 +function subClassifyTapEvt($this) { + var id = $this.data('id'); + + var $sub; + + $sub = setSubClassify($this); + + if (fCbFn) { + fCbFn({ + type: $sub.data('type'), + id: id + }); + } + + hideFilter(); +} + +//初始化筛选 +function initFilter(opt) { + var filterHammer; + + //注册回调 + fCbFn = opt.fCbFn; + hCbFn = opt.hCbFn; + + missStatus = opt.missStatus; + + highlightMainItem(); + highlightSubItem(); + + $filter = $('.filter-mask'); + + filterHammer = new Hammer($filter[0]); + filterHammer.on('tap', function(e) { + var $this = $(e.target), + $cur; + // e.preventDefault();//防止透点 + + if ($this.closest('.filter-body').length > 0) { + $cur = $this.closest('.sub-item'); + if ($cur.length > 0) { + + //tap subclassify + $cur = $this.closest('li'); + + subClassifyTapEvt($cur); } else { - postData = { - id: id, - opt: 'ok' - }; + + //tap classify + $cur = $this.closest('.classify-item'); + + e.srcEvent.stopPropagation(); + + classifyTapEvt($cur); + } + } else { + hideFilter(); + + if (hCbFn) { + hCbFn(); } } + }); + if(opt.isScroll){ + $("ul.sub-classify").each(function(){ + $(this).wrap("<div class='sub-classify-farther' data-type='" + $(this).data("type") + "'></div>"); + // $(this).removeClass("sub-classify"); - $.ajax({ - type: 'GET', - url: location.protocol + '//m.yohobuy.com' + postUrl, - data: postData, - xhrFields: { - withCredentials: true - }, - success: function(data) { - if (data.code === 200) { - $this.toggleClass('coled'); + var lastY=0,y=0; + var $slider=$(this); - //提示 - if (postData.opt === 'ok') { - tip.show('添加收藏成功'); - } else { - tip.show('取消收藏成功'); - } - } else if (data.code === 401) { - url = data.url; - if ($('#jump-login').length <= 0) { - $('body').append('<a href=\'' + url + '\'><span id="jump-login"><span></a>'); - } - $('#jump-login').click(); - } else { - tip.show(data.message); - } - }, - error: function() { - tip.show('网络断开连接了~'); - } + $slider.on('touchstart', function(e) { + lastY = e.originalEvent.touches[0].pageY; + }); + $slider.on('touchmove', function(e) { + var curY = e.originalEvent.touches[0].pageY; + var deltaY = curY - lastY; + var height = $(this)[0].scrollHeight; + var limit = height - $(this).parent().height(); + y = y + deltaY; + if (y < limit * -1) + y = limit * -1; + if (y > 0) + y = 0; + var translate = 'translate3d(0,' + y + 'px,0)'; + $(this).css({ + '-moz-transform': translate, + '-ms-transform': translate, + 'transform': translate, + '-webkit-transform': translate, + }); + lastY = curY; + }); + $slider.on('touchend', function(e) {}); }); + } + + +} + +//重置筛选面板 +function resetFilter() { + if (typeof $filter === 'undefined') { + return; + } + + //重置子筛选项 + $('.sub-classify').each(function() { + setSubClassify($(this).children(':first-child')); }); + + //重置主筛选项 + classifyTapEvt($('.classify > :first-child')); } -//初始请求最新第一页数据 -search(); +exports.initFilter = initFilter; -$listNav.on('touchstart', 'li', function() { - $listNav.find('li').removeClass('bytouch'); - $(this).addClass('bytouch'); -}).on('touchend touchcancel', 'li', function() { - $listNav.find('li').removeClass('bytouch'); -}); +exports.showFilter = showFilter; + +exports.hideFilter = hideFilter; + +exports.resetFilter = resetFilter; }); -define("js/product/detail/detail", ["jquery","swiper","hammer","lazyload","handlebars","source-map","index"], function(require, exports, module){ +define("js/product/query-param", ["jquery"], function(require, exports, module){ /** - * 商品详情 - * @author: liangzhifeng<zhifeng.liang@yoho.cn> - * @date: 2015/10/20 + * 提取查询参数 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/11/19 */ -var $ = require("jquery"), - Swiper = require("swiper"), - Hammer = require("hammer"), - lazyLoad = require("lazyload"); - -var goodsSwiper, - $discountFolder = $('.goodsDiscount .discount-folder'), - $discountArrow = $('.goodsDiscount .first-item span'); - -var goodsDiscountEl = document.getElementById('goodsDiscount'), - goodsDiscountHammer = goodsDiscountEl && new Hammer(goodsDiscountEl), - $discountFirstItem = $(goodsDiscountEl).find('.first-item'); - -var $cart = $('.cart-bar'); - -var appUrl = $('input[name="limitCodeUrl"]').val(); - -var dialog = require("js/me/dialog"); +var $ = require("jquery"), + opt = {}; -//add extra marign-bottom for footer to show the yoho copyright -function showFooter() { - var $cartBar = $('.cart-bar'); - - var timer = setInterval(function() { - if ($cartBar) { - window.reMarginFooter('.cart-bar'); - clearInterval(timer); - } else { - $cartBar = $('.cart-bar'); - } - }, 200); -} - -showFooter(); - -require("js/product/detail/like"); - -lazyLoad($('img.lazy')); - -if ($('#goodsDiscount h1').length < 1) { - $('.dropdown').remove(); -} +$('.query-param').each(function() { + var $this = $(this); -//顶部swiper -goodsSwiper = new Swiper('.banner-swiper', { - lazyLoading: true, - lazyLoadingInPrevNext: true, - paginationClickable: true, - pagination: '.banner-top .pagination-inner', - nextButton: '.my-swiper-button-next', - prevButton: '.my-swiper-button-prev', - spaceBetween: 3 + opt[$this.data('attr')] = $this.val(); }); +module.exports = opt; +}); +define("js/product/suspend-cart", ["jquery"], function(require, exports, module){ +/** + * 悬浮购物车 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/11/1 + */ -//初始化goods-discount -if (0 === $discountFolder.children().length) { - $discountFolder.css('display', 'none'); - $discountArrow.html(''); -} - -//goods-discount下拉按钮点击事件 -if (goodsDiscountHammer && $discountFolder.children().length > 0) { - goodsDiscountHammer.on('tap', function(e) { - if ($discountFolder.is(':hidden')) { - $discountFirstItem.removeClass('short-text'); - $discountArrow.removeClass('icon-down').addClass('icon-up').html(''); - $discountFolder.slideDown(); - } else { - $discountFirstItem.addClass('short-text'); - $discountArrow.removeClass('icon-up').addClass('icon-down').html(''); - $discountFolder.slideUp(); - } - }); -} - -$('#limit-sale').on('touchend', function(e) { - var loginUrl = $('#loginUrl').val(), - time, - ifr; - - e.stopPropagation(); - - if(loginUrl) { - window.location = loginUrl; - } else { - dialog.showDialog({ - dialogText: '进入有货APP,获取限购码', - hasFooter: { - rightBtnText: '打开Yoho!Buy有货APP' - } - }, function() { - ifr = document.createElement('iframe'); - ifr.src = appUrl; - ifr.style.display = 'none'; - document.body.appendChild(ifr); - window.location.href = appUrl; - - time = Date.now(); - window.setTimeout(function() { - document.body.removeChild(ifr); - if (Date.now()- time < 3200) { - window.location.href = 'http://a.app.qq.com/o/simple.jsp?pkgname=com.yoho'; - } - }, 3000); - - }, undefined, true); - - $('.dialog-wrapper').off('touchstart').on('touchstart', function(e) { - e.stopPropagation(); - if ($(e.target).hasClass('dialog-wrapper')) { - dialog.hideDialog(); - } - }); - } -}); +var $ = require("jquery"); -require("js/product/detail/desc"); -require("js/product/detail/comments-consults"); -require("js/product/recommend-for-you-product-desc"); +var $cart = $('#suspend-cart'); -//购物车商品数量 $.ajax({ type: 'GET', url: '/cart/index/count', @@ -7977,3092 +6791,4278 @@ $.ajax({ var count; if (data.code === 200) { - count = data.data.cart_goods_count || 0; - if (count === 0) { - return false; - } + count = data.data.cart_goods_count; if (count > 99) { count = '99+'; } - $cart.find('.num-tag').html(count).removeClass('hide'); + if (count === 0) { + $('.cart-count').remove(); + } + $cart.find('.cart-count').html(count).removeClass('hide'); } } }); - -if ($('.good-detail-page').length > 0) { - $('#yoho-footer').css('border-top', '1px solid #e0e0e0'); -} - - }); -define("js/product/detail/like", ["jquery"], function(require, exports, module){ +define("js/product/newsale/discount", ["jquery","swiper","mlellipsis","lazyload","iscroll-probe","hammer","index"], function(require, exports, module){ /** - * 商品详情 --添加收藏 - * @author: Lynnic - * @date: 2015/11/24 + * 商品列表页 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/20 */ - var $ = require("jquery"), - tip = require("js/plugin/tip"), - chosePanel = require("js/cart/chose-panel"); + Swiper = require("swiper"), + ellipsis = require("mlellipsis"), + lazyLoad = require("lazyload"); -var productId = $('#productId').val(); +var swiper; -var skn = $('#productSkn').val(), - productCode = $('#limitProductCode').val(); +var tip = require("js/plugin/tip"), + filter = require("js/plugin/filter"), + loading = require("js/plugin/loading"); - //门票 限购数量 -var ticketsLimit = $('#limitNum').val() || 0; +var $goodsContainer = $('#goods-container'), + $goodsChildren = $goodsContainer.children(), + $ngc = $($goodsChildren.get(0)), + $pgc = $($goodsChildren.get(1)), + $dgc = $($goodsChildren.get(2)); -$('#likeBtn').on('touchstart', function() { - var opt, - favorite; +var winH = $(window).height(), + noResult = '<p class="no-result">未找到相关搜索结果</p>'; - var $this = $(this); +//默认筛选条件 +var defaultOpt = require("js/product/query-param"); - if ($this.hasClass('liked')) { - opt = 'cancel'; - favorite = 0; - } else { - opt = 'ok'; - favorite = 1; +var $listNav = $('#list-nav'), + + //导航数据信息 + navInfo = { + newest: { + order: 1, + reload: true, + page: 0, + end: false + }, + price: { + order: 1, + reload: true, + page: 0, + end: false + }, + discount: { + order: 1, + reload: true, + page: 0, + end: false + } + }, + $pre = $listNav.find('.active'), //纪录进入筛选前的active项,初始为选中项 + searching; + +require("js/product/suspend-cart"); //悬浮购物车 + +ellipsis.init(); + +if ($('.swiper-container .swiper-slide').length > 1) { + swiper = new Swiper('.swiper-container', { + lazyLoading: true, + lazyLoadingInPrevNext: true, + loop: true, + autoplay: 3000, + autoplayDisableOnInteraction: true, + paginationClickable: true, + pagination: '.banner-top .pagination-inner' + }); +} + +/** + * 筛选注册的回调,筛选子项点击后逻辑 + * 需要执行search的场景:1.点选筛选项;2.relaod为true时切换导航;3.下拉加载 + * @param opt {type, id} + */ +function search(opt) { + var setting = {}, + ext, + att, + nav, navType, + page; + + if (searching) { + return; + } + + if (opt) { + + //筛选项变更则重置reload为true + for (att in navInfo) { + if (navInfo.hasOwnProperty(att)) { + navInfo[att].reload = true; + } + } + + //处理active状态 + $listNav.children('.active').removeClass('active'); + $pre.addClass('active'); + + switch (opt.type) { + case 'gender': + ext = { + gender: opt.id + }; + break; + case 'brand': + ext = { + brand: opt.id + }; + break; + case 'ageLevel': + ext = { + age_level: opt.id + }; + break; + case 'sort': + ext = { + sort: opt.id + }; + break; + case 'color': + ext = { + color: opt.id + }; + break; + case 'size': + ext = { + size: opt.id + }; + break; + case 'price': + ext = { + price: opt.id + }; + break; + case 'discount': + ext = { + discount: opt.id + }; + break; + } + + $.extend(defaultOpt, ext); //扩展筛选项 + } + + + //导航类别 + if ($pre.hasClass('new')) { + navType = 'newest'; + } else if ($pre.hasClass('price')) { + navType = 'price'; + } else if ($pre.hasClass('discount')) { + navType = 'discount'; + } + + nav = navInfo[navType]; + + page = nav.page + 1; + if (nav.reload) { + page = 1; + } else if (nav.end) { + + //不需要重新加载并且数据请求结束 + return; } + $.extend(setting, defaultOpt, { + type: navType, + order: nav.order, + page: page + }); + + searching = true; + loading.showLoadingMask(); + $.ajax({ - type: 'POST', - url: '/product/opt/favoriteProduct', - data: { - id: productId, - opt: opt - }, + type: 'GET', + url: '/product/newsale/selectNewSale', + data: setting, success: function(data) { - if (data.code === 200) { - $this.toggleClass('liked'); + var $container, + num; - if ('cancel' === opt) { - tip.show('取消收藏成功'); - } else if ('ok' === opt) { - tip.show('收藏成功'); + switch (navType) { + case 'newest': + $container = $ngc; + break; + case 'price': + $container = $pgc; + break; + case 'discount': + $container = $dgc; + break; + } + + if (data === ' ') { + nav.end = true; + + if (nav.reload) { + $container.html(noResult); } - } else if (data.code === 400) { - location.href = data.data;//未登录跳转登录页 } else { - tip.show(data.message); + if (nav.reload) { + $container.html(data); + lazyLoad($container.find('.lazy')); + } else { + num = $container.find('.good-info').length; + $container.append(data); + + //lazy good-infos who append in + lazyLoad($container.find('.good-info:gt(' + (num - 1) + ') .lazy')); + } } - }, - error: function() { - tip.show('网络断开连接了~'); - } - }); - // 统计代码:用于统计用户加入或取消商品收藏的动作 - if (window._yas) { - window._yas.sendCustomInfo({ - pd: productId, - fa: favorite - }, true); - } + nav.reload = false; + nav.page = page; - return false; -}); + searching = false; + loading.hideLoadingMask(); -$('#addtoCart').on('touchstart', function() { + window.rePosFooter(); + + $('.good-detail-text .name').each(function() { + var $this = $(this), + $title = $this.find('a'); - //门票验证登录 - if (ticketsLimit) { - if (!ticketCheckLogin()) { - return false; + $title[0].mlellipsis(2); + }); + }, + error: function() { + tip.show('网络断开连接了~'); + searching = false; + loading.hideLoadingMask(); } - } + }); - $('.cart-bar').hide(); +} - productCode && chosePanel.setLimitGoodModeWithSknId(productCode, skn); - chosePanel.show(); +$.ajax({ + type: 'GET', + url: '/product/newsale/filter', + data: defaultOpt, + success: function(data) { + $goodsContainer.append(data); - //统计代码:用于统计用户加入购物车的动作 - if (window._yas) { - window._yas.sendCustomInfo({ - pd: productId, - by: 1 - }, true); - } + //初始化filter&注册filter回调 + filter.initFilter({ + fCbFn: search, + hCbFn: function() { - return false; + //切换active状态到$pre上 + $pre.addClass('active'); + $pre.siblings('.filter').removeClass('active'); + }, + missStatus: true + }); + } }); +lazyLoad($('.lazy')); -ticketCheckOpen(); - -$('#buyLimit').on('touchstart', function() { - tip.show('打开APP可抢购该商品哦~'); +//导航栏点击逻辑说明: +//1.点击非active项时切换active状态 +//2.价格和折扣active状态时继续点击切换排序 +//3.筛选无active时点击展开筛选面板 +//4.筛选有active时点击隐藏筛选面板并恢复点击筛选前active项的active状态 +//5.当前active为筛选并且点击其他项时,隐藏筛选面板 +$listNav.bind('contextmenu', function(e) { return false; }); -//门票立即购买验证登录 - function ticketCheckLogin() { +$listNav.on('touchend touchcancel', function(e) { + var $this = $(e.target).closest('li'), + nav, + navType, + $active; - if (!window.getUid()) { - var urlArray = window.location.href.split('?'); - window.location.href = '//m.yohobuy.com/signin.html?refer=' + urlArray[0] + '?product_type=ticket'; - return false; - } - return true; - } + e.preventDefault(); -// 门票登录后自动弹出 - function ticketCheckOpen() { - var showPannel = $('#showPannel').val(); - if (showPannel) { - chosePanel.show(); - } - } + if (typeof $this === 'undefined' || $this.length === 0) { + return; + } -}); -define("js/cart/chose-panel", ["jquery"], function(require, exports, module){ -/** - * 购物车选择尺寸、颜色和数量面板 - * 显示时构造当前商品信息的HTML插入yoho-page;消失则是直接清除HTML - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/10/21 - */ + if ($this.hasClass('filter')) { + //筛选面板切换状态 + if ($this.hasClass('active')) { + filter.hideFilter(); -// bikai -// 增加init函数,异步请求的接口需要重新初始化一下选择列表 -// 异步渲染的模板统一插入 #chose-panel ,兼容页面多个选择框 + //点击筛选钱的active项回复active + $pre.addClass('active'); + $this.removeClass('active'); + } else { + $pre = $this.siblings('.active'); -var $ = require("jquery"), - tip = require("js/plugin/tip"), - loading = require("js/plugin/loading"); + $pre.removeClass('active'); + $this.addClass('active'); -var innerScroll = require("js/plugin/inner-scroll"); + filter.showFilter(); + } + } else { -var $chosePanel = $('#chose-panel'), - $num, - $chosed, - $imgsThumb, - $leftNum, - leftNum, - confirming, - curColorIndex, - curSizeIndex, - hasChooseColor, - hasChooseSize, - $curSizeBlock, - $sizeRowList, - $curColorBlock, - $colorRowList, - cbFn, - $allChoseItems, - queryString, - $choseArea, - $cartBar, - $soonSoldOut = $('.soonSoldOut-tag'), - $yohoPage = $('.yoho-page'), - //门票 限购数量 - ticketsLimit = $('#limitNum').val() || 0, - single = $('#single').val() || 0; - $productSku = $('#productSku'), - $buyNumber = $('#buyNumber'), - $buyNowForm = $('#buyNowForm'); + if ($this.hasClass('new')) { + navType = 'newest'; + } else if ($this.hasClass('price')) { + navType = 'price'; + } else if ($this.hasClass('discount')) { + navType = 'discount'; + } -// 购物车编辑标相关变量 -var isEdit, - isSelected, - oldSknId; + nav = navInfo[navType]; -// 限购商品的商品码。只有限购商品时才会设置。 -var limitProductCode, + if ($this.hasClass('active')) { - // 限购商品的skn。只有限购商品时才会设置。 - skn; + //最新无排序切换 + if ($this.hasClass('new')) { + return; + } -//禁用数字编辑 -function disableNumEdit() { - var $numBtn = $('.chose-panel').find('.num .btn>.iconfont'); + if ($this.hasClass('price') || $this.hasClass('discount')) { - //添加disabled样式 - $numBtn.hasClass('disabled') ? null : $numBtn.addClass('disabled'); + // 价格/折扣切换排序状态 + $this.find('.icon > .iconfont').toggleClass('cur'); + $pre = $this; //更新pre为当前项 + nav.reload = true; //重置reload,HTML会被替换为逆序的HTML + nav.order = nav.order === 0 ? 1 : 0; //切换排序 + } + } else { + $active = $this.siblings('.active'); - $yohoPage.off('touchstart', '.btn-minus'); - $yohoPage.off('touchstart', '.btn-plus'); -} + $pre = $this; //$pre为除筛选导航的其他导航项,若当前active的为筛选,则把$pre置为当前点击项 -// 初始化购物车面板显示 -function init() { - hasChooseColor = false; - hasChooseSize = false; - $curSizeBlock = null; - queryString = $.queryString(); - $imgsThumb = $('.chose-panel').find('.thumb'); - $choseArea = $('.chose-panel .main .chose-items'); - $allChoseItems = $('.chose-items'); - $sizeRowList = $('.size-list ul'); - $colorRowList = $('.color-list ul'); - $leftNum = $('#left-num'); - $cartBar = $('.cart-bar'); - curColorIndex = 0; - curSizeIndex = 0; - isEdit = 0; -} + if ($active.hasClass('filter')) { -/* - * 设置当前面板为编辑模式 - * - * @param {String} sknId. 当前编辑商品的sknId - * - * @param {Bool} isThisGoodSelected. 当前编辑商品的在购物车中是否被选中 - * - * @return {undefined} - */ -function setEditModeWithSknId(sknId, isThisGoodSelected) { - $('#chose-btn-sure').html('确认'); - isEdit = 1; - oldSknId = sknId; - isSelected = isThisGoodSelected; -} + //若之前active项为筛选,则隐藏筛选面板 + filter.hideFilter(); + } else { -/* - * 设置当前面板为限购商品模式 - * - * @param {String} code 当前限购商品的商品码 - * - * @param {String} sknId. 当前限购商品的sknId - * - * @return {undefined} - */ -function setLimitGoodModeWithSknId(code, sknId) { - disableNumEdit(); - $('#chose-btn-sure').html('立即购买'); - limitProductCode = code; - skn = sknId; -} + //切换container显示 + $goodsContainer.children('.container:not(.hide)').addClass('hide'); -//删除面板 -function removePannel() { - var $pannel = $('.chose-panel'), - $promotionId = $('#promotionId'); + switch (navType) { + case 'newest': + $ngc.removeClass('hide'); + break; - if ($pannel) { - $pannel.remove(); - } + case 'price': + $pgc.removeClass('hide'); + break; - if ($promotionId) { - $promotionId.remove(); - } -} + case 'discount': + $dgc.removeClass('hide'); + break; + } + } -function checkColorSizeNum() { + $active.removeClass('active'); + $this.addClass('active'); + } - if (ticketsLimit) { - //门票 - if (!checkTickets()) { - return; + if (nav.reload) { + search(); } } + e.stopPropagation(); +}); - if (!hasChooseColor && !hasChooseSize) { - tip.show('请选择颜色和尺码~'); - return false; - } else if (!hasChooseColor) { - tip.show('请选择颜色~'); - return false; - } else if (!hasChooseSize) { - tip.show('请选择尺码~'); - return false; - } - return true; -} +function scrollHandler() { -//检查门票选择 -function checkTickets() { - if (!hasChooseColor && !hasChooseSize) { - if (single) { - tip.show('请选择日期~'); - } else { - tip.show('请选择日期和区域~'); - }; - return false; - } else if (!hasChooseColor) { - tip.show('请选择日期~'); - return false; - } else if (!hasChooseSize && !single) { - tip.show('请选择区域~'); - return false; + //当scroll到1/4$goodsContainer高度后继续请求下一页数据 + if ($(window).scrollTop() + winH > + $(document).height() - 0.25 * $goodsContainer.height() - 50) { + if ($pre !== undefined) { + search(); + } } - return true; } +//srcoll to load more +$(window).scroll(function() { + window.requestAnimationFrame(scrollHandler); +}); -function show(html, cb) { - if (html) { - $chosePanel.html(html); - if ($('#promotionId').val() !== '') { - disableNumEdit(); - } - init(); - } +//初始请求最新第一页数据 +search(); - $('.chose-panel').show(); - $num = $('#good-num'); - cbFn = cb; +$listNav.on('touchstart', 'li', function(e) { + $(this).addClass('bytouch'); +}).on('touchend touchcancel', function() { + $listNav.find('li').removeClass('bytouch'); +}); +}); +define("js/product/list", ["jquery","hammer","mlellipsis","lazyload","iscroll-probe"], function(require, exports, module){ +/** + * 商品列表页 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/20 + */ - innerScroll.disableScroll($choseArea); -} +var $ = require("jquery"), + Hammer = require("hammer"), + ellipsis = require("mlellipsis"), + lazyLoad = require("lazyload"); -//隐藏当前Panel -function hide() { - $('.chose-panel').hide(); - innerScroll.enableScroll($choseArea); - if ($cartBar.length > 0) { - $cartBar.show(); - } -} +//品牌页参数 +var $brandHeader = $('#brand-header'), + $introBox = $('#intro-box'); -//修改加入购物车的文字和背景 -function updateConformButtonClassAndText() { - $chosed = $allChoseItems.find('.chosed'); - if (2 === $chosed.closest('.zero-stock').length) { - $('#chose-btn-sure').css('background-color', '#c0c0c0').html('已售罄'); - } else if (limitProductCode || ticketsLimit) { - $('#chose-btn-sure').css('background-color', '#eb0313').html('立即购买'); - } else { - $('#chose-btn-sure').css('background-color', '#eb0313').html(isEdit ? '确认' : '加入购物车'); - } -} +var filter = require("js/plugin/filter"); -//显示剩余件数 -function displayGoodNum(curGoodNum) { +var writeSearch = require("js/index/write-search"); - //门票限购 - if (ticketsLimit) { - $allChoseItems.find('.num .left-num').html('限购' + ticketsLimit + '件'); - $leftNum.val(curGoodNum); - return; - } +var tip = require("js/plugin/tip"); +var loading = require("js/plugin/loading"); - //数量大于 - if (curGoodNum > 0) { - if ($soonSoldOut.length > 0) { - $allChoseItems.find('.num .left-num').html('即将售罄'); - } else { - $allChoseItems.find('.num .left-num').html('剩余' + curGoodNum + '件'); - } +var $goodsContainer = $('#goods-container'), + $ngc = $goodsContainer.children('.new-goods'), + $pgc = $goodsContainer.children('.price-goods'), + $dgc = $goodsContainer.children('.discount-goods'); - $leftNum.val(curGoodNum); +var winH = $(window).height(); - //数量小于0 - } else { - $allChoseItems.find('.num .left-num').html(''); - $leftNum.val(0); - } -} +var $input = $('#search-input input'), + $clear = $('#search-input .clear-input'), + $buriedpoint = $('.buriedpoint'), + $search = $('#search'); -//老的选中尺码去掉勾选,新的选中尺码加上勾选 -function changeSizeChosed(newSizeIndex) { - var sizes, - queryString, - i; +var shopId,sort,brand,outlets,app_type; - if (curColorIndex && $curSizeBlock && $curSizeBlock.length > 0) { - $curSizeBlock.removeClass('chosed'); - sizes = $sizeRowList.eq(newSizeIndex).children(); - for (i = 0; i < sizes.length; i++) { - if ($(sizes[i]).data('id') === $curSizeBlock.data('id')) { - $curSizeBlock = $(sizes[i]); - queryString = '#' + $curSizeBlock.data('id'); - curColorIndex = $(queryString).data('index'); - $curSizeBlock.addClass('chosed'); - return $curSizeBlock.data('num'); - } - } +//默认筛选条件 +var defaultOpt = require("js/product/query-param"); - //特殊处理: 老的选中尺码在新选中的颜色对应尺码中不存在,需要下述1,2,3 - // 1.重置尺码选择的标志变量. - $curSizeBlock = null; - hasChooseSize = false; +var $listNav = $('#list-nav'), - // 2.当前颜色行隐藏 - $colorRowList.eq(curColorIndex).addClass('hide'); + //导航数据信息 + navInfo = { + newest: { + order: 1, + reload: true, + page: 0, + end: false + }, + price: { + order: 1, + reload: true, + page: 0, + end: false + }, + discount: { + order: 1, + reload: true, + page: 0, + end: false + } + }, + $pre = $listNav.find('.active'), //纪录进入筛选前的active项,初始为选中项 + searching, + btnIntroHammer, + introHammer, + brandColHammer; - // 3.目标颜色行第一行显示 - $colorRowList.eq(0).removeClass('hide'); - curColorIndex = 0; +ellipsis.init(); - return -1; - } - return 0; -} +// 搜索输入联动 +function inputAction() { + var $searchAssociate = $('.search-associate'); + var $icon = $('.search-icon'); + var $searchItems = $('.search-items'); -//老的选中颜色去掉勾选,新的选中颜色加上勾选 -function changeColorChosed(newColorIndex) { - if (curSizeIndex && $curColorBlock && $curColorBlock.length > 0) { - $curColorBlock.removeClass('chosed'); - $curColorBlock = $($colorRowList.eq(newColorIndex).children().get(curSizeIndex - 1)); - $curColorBlock.addClass('chosed'); - return $curColorBlock.data('num'); - } - return 0; -} + $input.on('input', function() { + if ($input.val() === '') { + $icon.css('color', '#b2b2b2'); + $clear.addClass('hide'); + $searchAssociate.html(''); + $searchItems.show(); + $searchAssociate.hide(); + } else { + $icon.css('color', '#666'); + $clear.removeClass('hide'); + $searchAssociate.show(); + } -//添加门票 -function addTickets(productSku, buyNumber) { - var data = { - productSku: productSku, - buyNumber: buyNumber - }; + // 联动搜索 + $.ajax({ + url: '/index/search/fuzzyDatas', + data: { + keyword: $input.val() + }, + dataType: 'json', + success: function(data) { + var ajaxHtml = ''; + var i; - //校验电子票 - $.ajax({ - url: '/cart/index/checkTickets', - dataType: 'json', - data: data, - type: 'post', - success: function (addRestult) { - if (addRestult.code != 200) { - if (addRestult.code == 401) { - var refer = window.location.href; - window.location.href = '//m.yohobuy.com/signin.html?refer=' + refer; + if (data.length > 0) { + for (i = 0; i < data.length; i++) { + ajaxHtml += '<li><span class="keyword">' + data[i].keyword + '</span><span class="count">' + + data[i].count + ' items<i class="iconfont"></i></span></li>'; + } + + $searchAssociate.html(ajaxHtml); + $searchItems.hide(); + } else { + $searchAssociate.html(''); } - tip.show(addRestult.message); - } else { - $productSku.val(productSku); - $buyNumber.val(buyNumber); - $buyNowForm.submit(); - } - }, - error: function () { - tip.show('网络异常~'); - } + $searchAssociate.find('li').on('touchend', function() { + $buriedpoint.val($(this).find('.keyword').html()); + $search.closest('form').submit(); + }); + }, + error: function() { + tip.show('网络断开连接了~'); + } + }); }); } -init(); - - -$yohoPage.on('touchstart', '.chose-panel', function(e) { - var $cur = $(e.target); - - if ($cur.closest('.main').length > 0) { - return; - } +inputAction(); - //点击蒙版消失 - hide(); +$clear.on('touchend', function() { + $input.val('').trigger('input'); +}); +/** + * 手动触发搜索 + */ +$search.on('touchend', function() { + $(this).closest('form').submit(); return false; }); -$yohoPage.on('touchstart', '.color-list .block', function() { - var $this = $(this), - index = $this.index(), - curGoodNum; - - // 当前颜色已经是选中状态,再点击时 - if ($this.hasClass('chosed')) { - - //清空剩余件数的提示 - $allChoseItems.find('.num .left-num').html(''); - $leftNum.val(0); - hasChooseColor = false; - - //当前尺码行隐藏 - $sizeRowList.eq(curSizeIndex).addClass('hide'); - - //目标尺码行显示 - $sizeRowList.eq(0).removeClass('hide'); +/** + * 获取url参数 + */ +function getQueryString(name) { + var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i'); + var r = window.location.search.substr(1).match(reg); - curSizeIndex = 0; + if (r != null) { + return window.unescape(r[2]); + } + return null; +} - //老的选中尺码去掉勾选,新的选中尺码加上勾选 - changeSizeChosed(0); +shopId = getQueryString('shop_id'); +sort = getQueryString('sort'); +outlets = getQueryString('outlets'); +age_level = getQueryString('ageLevel'); +app_type = getQueryString('app_type'); - // 当前颜色不是选中状态,选中时 - } else { - hasChooseColor = true; +/** + * 筛选注册的回调,筛选子项点击后逻辑 + * 需要执行search的场景:1.点选筛选项;2.relaod为true时切换导航;3.下拉加载 + * @param opt {type, id} + */ +function search(opt) { + var setting = {}, + ext, + att, + nav, navType, + page, + $this, + $title, + params; - // 尺码行当前行隐藏 - $sizeRowList.eq(curSizeIndex).addClass('hide'); + if (searching) { + return; + } - //老的选中尺码去掉勾选,新的选中尺码加上勾选 - curGoodNum = changeSizeChosed(index + 1); - // 显示剩余数量 - displayGoodNum(curGoodNum); + if (opt) { - //尺码对应行显示 - $sizeRowList.eq(index + 1).removeClass('hide'); + //筛选项变更则重置reload为true + for (att in navInfo) { + if (navInfo.hasOwnProperty(att)) { + navInfo[att].reload = true; + } + } - curSizeIndex = index + 1; - $curColorBlock = $this; + //处理active状态 + $listNav.children('.active').removeClass('active'); + $pre.addClass('active'); + switch (opt.type) { + case 'shop_id': + ext = { + shop_id: opt.id + }; + break; + case 'gender': + ext = { + gender: opt.id + }; + break; + case 'brand': + ext = { + brand: opt.id + }; + break; + case 'sort': + ext = { + sort: opt.id + }; + break; + case 'color': + ext = { + color: opt.id + }; + break; + case 'ageLevel': + ext = { + age_level: opt.id + }; + break; + case 'size': + ext = { + size: opt.id + }; + break; + case 'price': + ext = { + price: opt.id + }; + break; + case 'discount': + ext = { + discount: opt.id + }; + break; + case 'outlets': + ext = { + outlets: opt.id + }; + break; + } - // 修改颜色时修改商品图片 - $imgsThumb.addClass('hide').eq(index).removeClass('hide'); + $.extend(defaultOpt, ext); //扩展筛选项 } - // 颜色块切换勾选样式 - $this.siblings('.chosed').removeClass('chosed'); - - // 特殊处理: 老的选中尺码在新选中的颜色对应尺码中不存在, 需要将颜色的第一行对应的颜色块加上勾选样式. - if (-1 === curGoodNum) { - $curColorBlock = $($colorRowList.eq(0).children().get(index)); - $curColorBlock.addClass('chosed'); - - // 当前选择的颜色块,加上勾选样式 - } else { - $this.toggleClass('chosed'); + //导航类别 + if ($pre.hasClass('new')) { + navType = 'newest'; + } else if ($pre.hasClass('price')) { + navType = 'price'; + } else if ($pre.hasClass('discount')) { + navType = 'discount'; } - $('#good-num').val(1); + nav = navInfo[navType]; - // 设置按钮的样式和文字 - updateConformButtonClassAndText(); + page = nav.page + 1; + if (nav.reload) { + page = 1; + } else if (nav.end) { - //展览票 - if (ticketsLimit && single) { - //选中日期 - $curSizeBlock = $('.size-list .size-row .block').eq(index + 1); - $curSizeBlock.addClass('chosed'); - // 显示剩余数量 - displayGoodNum($curColorBlock.data('num')); - hasChooseSize = true; - return false; + //不需要重新加载并且数据请求结束 + return; } + params = { + type: navType, + order: nav.order, + page: page + }; -}).on('touchstart', '.size-list .block', function() { - var $this = $(this), - index, - curGoodNum; - - // 当前尺码已经是选中状态,再点击时 - if ($this.hasClass('chosed')) { - - //清空剩余件数的提示 - $allChoseItems.find('.num .left-num').html(''); - $leftNum.val(0); - hasChooseSize = false; - - //当前颜色行隐藏 - $colorRowList.eq(curColorIndex).addClass('hide'); + if (shopId) { + params.shop_id = shopId; + } - //目标颜色行显示 - $colorRowList.eq(0).removeClass('hide'); + if (age_level) { + params.age_level = age_level + } - curColorIndex = 0; + if (sort) { + params.sort = sort; + } - //老的选中颜色去掉勾选,新的选中颜色加上勾选 - changeColorChosed(0); + if (brand) { + params.brand = brand; + } - // 当前尺码不是选中状态,选中时 - } else { - hasChooseSize = true; + if (outlets) { + params.outlets = outlets; + } - index = $('#' + $this.data('id')).data('index') - 1; + if (app_type) { + params.app_type = app_type; + } - // 颜色当前行隐藏 - $colorRowList.eq(curColorIndex).addClass('hide'); + $.extend(setting, defaultOpt, params); - //老的选中颜色去掉勾选,新的选中颜色加上勾选 - curGoodNum = changeColorChosed(index + 1); + searching = true; + loading.showLoadingMask(); - // 显示剩余数量 - displayGoodNum(curGoodNum); + $.ajax({ + type: 'GET', + url: location.protocol + '//m.yohobuy.com/index/search/search', + data: setting, + success: function(data) { + var noResult = '<p class="no-result">未找到相关搜索结果</p>', + num, + $container; - //颜色对应行显示 - $colorRowList.eq(index + 1).removeClass('hide'); + switch (navType) { + case 'newest': + $container = $ngc; + break; + case 'price': + $container = $pgc; + break; + case 'discount': + $container = $dgc; + break; + } - curColorIndex = index + 1; - $curSizeBlock = $this; - } + if (data === ' ') { + nav.end = true; - // 颜色块切换勾选样式 - $this.siblings('.chosed').removeClass('chosed'); - $this.toggleClass('chosed'); - $('#good-num').val(1); + if (nav.reload) { + $container.html(noResult); + } + } else { + if (nav.reload) { + $container.html(data); + lazyLoad($container.find('.lazy')); + } else { + num = $container.find('.good-info').length; + $container.append(data); - // 设置按钮的样式和文字 - updateConformButtonClassAndText(); -}); + //lazy good-infos who append in + lazyLoad($container.find('.good-info:gt(' + (num - 1) + ') .lazy')); + } -$yohoPage.on('touchstart', '.btn-minus', function() { - var num = parseInt($num.val(), 10); + } - leftNum = $('#left-num').val(); + nav.reload = false; + nav.page = page; - if (!checkColorSizeNum()) { - return; - } + searching = false; + loading.hideLoadingMask(); - if (num === 1 || 0 === leftNum - 0) { - tip.show('您选择的数量不能为零~'); - return; - } - if (num < 0) { - tip.show('您选择的数量不能为负数~'); - return; - } + window.rePosFooter(); - $num.val(num - 1); -}).on('touchstart', '.btn-plus', function() { - var num = parseInt($num.val(), 10), - maxTips = ticketsLimit ? '每人只可购买' + ticketsLimit + '张当日门票' : '您选择的数量超过了最大库存量~'; + $('.good-detail-text .name').each(function() { + $this = $(this); + $title = $this.find('a'); - leftNum = ticketsLimit || $('#left-num').val(); + $title[0].mlellipsis(2); + }); - if (!checkColorSizeNum()) { - return; - } + // 用于统计点击了商品列表的第几个商品,序号从1开始计算。 + if (window._yas) { + switch (navType) { + case 'newest': + window._yas(1 * new Date(), '1.0.16', 'yohobuy_m', window._ozuid, + '', $('.new-goods .good-info .good-detail-img .good-thumb')); + break; + case 'price': + window._yas(1 * new Date(), '1.0.16', 'yohobuy_m', window._ozuid, + '', $('.price-goods .good-info .good-detail-img .good-thumb')); + break; + case 'discount': + window._yas(1 * new Date(), '1.0.16', 'yohobuy_m', window._ozuid, + '', $('.discount-goods .good-info .good-detail-img .good-thumb')); + break; + } + } + } + }); - if (num - 0 === leftNum || 0 === leftNum) { - return; - } +} - //TODO:库存数验证 - if (num > leftNum - 1) { - tip.show(maxTips); - return; - } - $num.val(num + 1); -}).on('touchstart', '#chose-btn-sure', function() { +require("js/product/suspend-cart"); //悬浮购物车 - var productSku, - buyNumber = $('#good-num').val() - 0, +/* tar add 160914 */ +if ($brandHeader.data('isbaseshop') === 1) { + Object.assign(defaultOpt, {shop_id: $brandHeader.data('id')}); +} - promotionId, - cartGoodData, - url, - num = parseInt($num.val(), 10); +$.ajax({ + type: 'GET', + url: location.protocol + '//m.yohobuy.com/search/filter', + data: defaultOpt, + success: function(data) { + $goodsContainer.append(data); - //颜色尺码没有选择 - if (!checkColorSizeNum()) { - return; - } + //初始化filter&注册filter回调 + filter.initFilter({ + fCbFn: search, + hCbFn: function() { - if ($('#chose-btn-sure').html() === '已售罄') { - return; + //切换active状态到$pre上 + $pre.addClass('active'); + $pre.siblings('.filter').removeClass('active'); + } + }); } +}); - leftNum = $('#left-num').val() - 0; - - if (num > leftNum) { - tip.show('您选择的数量超过了最大库存量~'); - return; - } - if (num < 0) { - tip.show('您选择的数量小于一件~'); - return; - } - $chosed = $('.block-list>ul>li.chosed'); +lazyLoad($('.lazy')); - if (2 === $chosed.length && 0 === $chosed.closest('.zero-stock').length) { - productSku = $curSizeBlock.data('skuid'); - promotionId = $('#promotionId').val(); - if (confirming) { - return false; - } +writeSearch.bindWirteLocal($('#search-form')); - if (!ticketsLimit) { - confirming = true; - } +//导航栏点击逻辑说明: +//1.点击非active项时切换active状态 +//2.价格和折扣active状态时继续点击切换排序 +//3.筛选无active时点击展开筛选面板 +//4.筛选有active时点击隐藏筛选面板并恢复点击筛选前active项的active状态 +//5.当前active为筛选并且点击其他项时,隐藏筛选面板 - loading.showLoadingMask(); +$listNav.bind('contextmenu', function(e) { + return false; +}); - //立即购买门票 - if (ticketsLimit) { - addTickets(productSku, buyNumber); - return; - } +$listNav.on('touchend touchcancel', function(e) { + var $this = $(e.target).closest('li'), + nav, + navType, + $active; + var bpIdData = $(this).find('.buriedpoint').attr('data-bp-id') || ''; - //针对是否处于编辑模式设置不同的url和需要post的数据 - if (isEdit) { - cartGoodData = { - new_product_sku: productSku, - old_product_sku: oldSknId, - buy_number: buyNumber, - selected: isSelected - }; + if ($this.hasClass('filter')) { - url = '/cart/index/modify'; + //筛选面板切换状态 + if ($this.hasClass('active')) { + filter.hideFilter(); - } else if (limitProductCode) { + //点击筛选钱的active项回复active + $pre.addClass('active'); + $this.removeClass('active'); + } else { + $pre = $this.siblings('.active'); - $(this).css('background-color', '#ccc').removeAttr('id'); + $pre.removeClass('active'); + $this.addClass('active'); - // 当前面板选择的是限购商品 - url = $('#limitProductPay').val() + '?limitproductcode=' + limitProductCode + '&sku=' + - productSku + '&skn=' + skn + '&buy_number=' + buyNumber; + filter.showFilter(); + } + } else { - removePannel(); - loading.showLoadingMask(); + if ($this.hasClass('new')) { + navType = 'newest'; + } else if ($this.hasClass('price')) { + navType = 'price'; + } else if ($this.hasClass('discount')) { + navType = 'discount'; + } - // 调用接口判断商品是否可以购买 - $.ajax({ - url: url - }).then(function(res) { + nav = navInfo[navType]; - // 如果有错,则商品不可购买,执行页面刷新,否则跳到结算页面 - if (res.error) { - tip.show(res.message); - setTimeout(function() { - location.reload(); - }, 2000); - } else { - location.href = url; - } - }).fail(function() { - tip.show('网络异常!'); - setTimeout(function() { - location.reload(); - }, 2000); - }); + if ($this.hasClass('active')) { - return false; + //最新无排序切换 + if ($this.hasClass('new')) { + return; + } + + if ($this.hasClass('price') || $this.hasClass('discount')) { + // 价格/折扣切换排序状态 + $this.find('.icon > .iconfont').toggleClass('cur'); + $pre = $this; //更新pre为当前项 + nav.reload = true; //重置reload,HTML会被替换为逆序的HTML + nav.order = nav.order === 0 ? 1 : 0; //切换排序 + } } else { - cartGoodData = { - productSku: productSku, - buyNumber: buyNumber, - promotionId: promotionId, - isEdit: isEdit, - cartType: queryString.cartType - }; + $active = $this.siblings('.active'); - url = '/cart/index/add'; - } + $pre = $this; //$pre为除筛选导航的其他导航项,若当前active的为筛选,则把$pre置为当前点击项 - $.ajax({ - method: 'POST', - url: url, - data: cartGoodData - }).done(function(res) { - var cartNum; + if ($active.hasClass('filter')) { - loading.hideLoadingMask(); - if (res.code === 200 && !isEdit) { - cartNum = res.data.goods_count; - if (cartNum > 99) { - cartNum = '99+'; - } - $('.num-tag').html(cartNum).removeClass('hide'); - confirming = false; + //若之前active项为筛选,则隐藏筛选面板 + filter.hideFilter(); + } else { - if (cbFn) { - cbFn(); + //切换container显示 + $goodsContainer.children('.container:not(.hide)').addClass('hide'); + + switch (navType) { + case 'newest': + $ngc.removeClass('hide'); + break; + + case 'price': + $pgc.removeClass('hide'); + break; + + case 'discount': + $dgc.removeClass('hide'); + break; } } - if (res.message && !isEdit) { - tip.show(res.message); - } - - hide(); - if (isEdit) { - loading.showLoadingMask(); + $active.removeClass('active'); + $this.addClass('active'); + } + if (nav.reload) { + $(document).trigger('shouldSendBpData', [bpIdData]); + search(); + } + } +}); - //延迟刷新,否则面板可能无法隐藏 - setTimeout(function() { +function scrollHandler() { - //获取当前页面商品类型:普通商品/预售商品 - window.location.href = '/cart/index/index?cartType=' + $('#cartType').val(); - }, 1); - } - }).fail(function() { - tip.show('网络出了点问题~'); - }).always(function() { - confirming = false; - }); + //当scroll到1/4$goodsContainer高度后继续请求下一页数据 + if ($(window).scrollTop() + winH > + $(document).height() - 0.25 * $goodsContainer.height()) { + search(); } +} +//srcoll to load more +$(window).scroll(function() { + window.requestAnimationFrame(scrollHandler); }); -exports.init = init; -exports.show = show; -exports.remove = removePannel; -exports.setEditModeWithSknId = setEditModeWithSknId; -exports.disableNumEdit = disableNumEdit; -exports.setLimitGoodModeWithSknId = setLimitGoodModeWithSknId; +if ($brandHeader.length > 0) { + //品牌介绍 + btnIntroHammer = new Hammer($brandHeader.children('.btn-intro')[0]); + btnIntroHammer.on('tap', function() { + $introBox.removeClass('hide'); + + //防止混合scroll发生 + $('body').addClass('overflow-hidden'); + }); + + //关闭品牌介绍 + introHammer = new Hammer(document.getElementById('intro-box')); + introHammer.on('tap', function(e) { + var $this = $(e.target); + + e.srcEvent.preventDefault(); + + //关闭品牌介绍box + if ($this.closest('#brand-intro').length === 0 || $this.hasClass('close-intro')) { + $introBox.addClass('hide'); + $('body').removeClass('overflow-hidden'); + } + }); + + //品牌收藏 + brandColHammer = new Hammer($brandHeader.children('.btn-col')[0]); + brandColHammer.on('tap', function(e) { + var $this = $(e.target).closest('.btn-col'); + + var id = $brandHeader.data('id'), // ID 在 PHP 程序里已经根据是否是基础店铺或者品牌动态处理了 + isBaseShop = $brandHeader.data('isbaseshop'), //tar add 160825 标记是否是基础店铺,否则是品牌 + postUrl = '', // tar add 160825 根据是否是基础店铺,收藏还是取消动态更改 URL 地址 + postData = {}; // tar add 160825 根据是否是基础店铺,收藏还是取消动态更改 POST 数据 + + /* 根据是基础店铺还是品牌做处理 */ + if (isBaseShop) { + var appVersion = $('input[name="app_version"]').val(); + + /* 如果是基础店铺,POST 的数据一样 */ + if ($this.hasClass('coled')) { + postData = { + shop_id: id, + app_version: appVersion, + opt: 'cancel' + }; + postUrl = '/product/index/cancelShopFav'; + } else { + postData = { + shop_id: id, + app_version: appVersion, + opt: 'ok' + }; + postUrl = '/product/index/shopFav'; + } + } else { + + /* 品牌,收藏与取消收藏,请求 URL 一样 */ + postUrl = '/product/opt/favoriteBrand'; + if ($this.hasClass('coled')) { + postData = { + id: id, + opt: 'cancel' + }; + } else { + postData = { + id: id, + opt: 'ok' + }; + } + } + + + $.ajax({ + type: 'GET', + url: location.protocol + '//m.yohobuy.com' + postUrl, + data: postData, + xhrFields: { + withCredentials: true + }, + success: function(data) { + if (data.code === 200) { + $this.toggleClass('coled'); + + //提示 + if (postData.opt === 'ok') { + tip.show('添加收藏成功'); + } else { + tip.show('取消收藏成功'); + } + } else if (data.code === 401) { + url = data.url; + if ($('#jump-login').length <= 0) { + $('body').append('<a href=\'' + url + '\'><span id="jump-login"><span></a>'); + } + $('#jump-login').click(); + } else { + tip.show(data.message); + } + }, + error: function() { + tip.show('网络断开连接了~'); + } + }); + }); +} + +//初始请求最新第一页数据 +search(); + +$listNav.on('touchstart', 'li', function() { + $listNav.find('li').removeClass('bytouch'); + $(this).addClass('bytouch'); +}).on('touchend touchcancel', 'li', function() { + $listNav.find('li').removeClass('bytouch'); }); -define("js/plugin/inner-scroll", ["jquery"], function(require, exports, module){ -/** - * 弹出层可以滚动,遮盖层禁止滚动插件 - * - * @author liangzhifeng<zhifeng.liang@yoho.cn> - * @date: 2016/02/22 - */ - -var $ = require("jquery"); - -function preventDefault(e) { - e = e || window.event; - e.preventDefault && e.preventDefault(); - e.returnValue = false; -} - -function stopPropagation(e) { - e = e || window.event; - e.stopPropagation && e.stopPropagation(); - e.cancelBubble = false; -} - -function innerScroll(e) { - var delta = e.wheelDelta || e.originalEvent.wheelDelta || e.detail || 0, - box = $(this).get(0); - - // 阻止冒泡到document - // document上已经preventDefault - stopPropagation(e); - - - if ($(box).height() + box.scrollTop >= box.scrollHeight) { - if (delta < 0) { - preventDefault(e); - return false; - } - } - if (box.scrollTop === 0) { - if (delta > 0) { - preventDefault(e); - return false; - } - } -} - -function disableScroll($choseArea) { - var startX, startY; - - // 内部可滚 - $choseArea.on('mousewheel', innerScroll); - - // 移动端touch重写 - $choseArea.on('touchstart', function(e) { - startX = e.originalEvent.changedTouches[0].pageX; - startY = e.originalEvent.changedTouches[0].pageY; - }); - - // 仿innerScroll方法 - $choseArea.on('touchmove', function(e) { - var deltaX = e.originalEvent.changedTouches[0].pageX - startX, - deltaY = e.originalEvent.changedTouches[0].pageY - startY; - - var box = $(this).get(0); - - e.stopPropagation(); - - - // 只能纵向滚 - if (Math.abs(deltaY) < Math.abs(deltaX)) { - e.preventDefault(); - return false; - } - - - if ($(box).height() + box.scrollTop >= box.scrollHeight) { - if (deltaY < 0) { - e.preventDefault(); - return false; - } - } - if (box.scrollTop === 0) { - if (deltaY > 0) { - e.preventDefault(); - return false; - } - } - }); - - $(document).on('mousewheel', preventDefault); - $(document).on('touchmove', preventDefault); -} - -function enableScroll($choseArea) { - - $choseArea.off('touchstart'); - $choseArea.off('touchmove'); - $choseArea.off('mousewheel'); - - $(document).off('mousewheel', preventDefault); - $(document).off('touchmove', preventDefault); -} - -exports.enableScroll = enableScroll; -exports.disableScroll = disableScroll; -}); -define("js/product/detail/desc", ["jquery","lazyload","swiper","index"], function(require, exports, module){ + +}); +define("js/product/detail/detail", ["jquery","swiper","hammer","lazyload","handlebars","source-map","index"], function(require, exports, module){ /** - * 商品详情 --异步加载页面下半部分 + * 商品详情 * @author: liangzhifeng<zhifeng.liang@yoho.cn> - * @date: 2015/11/18 + * @date: 2015/10/20 */ var $ = require("jquery"), - lazyLoad = require("lazyload"), Swiper = require("swiper"), - loading = require("js/plugin/loading"), - tip = require("js/plugin/tip"); + Hammer = require("hammer"), + lazyLoad = require("lazyload"); -var introUrl = $('#introUrl').val(), - winH = $(window).height(), - $productDesc, - searching = false, - end = false; +var goodsSwiper, + $discountFolder = $('.goodsDiscount .discount-folder'), + $discountArrow = $('.goodsDiscount .first-item span'); -var sizeSwiper, - refSwiper; +var goodsDiscountEl = document.getElementById('goodsDiscount'), + goodsDiscountHammer = goodsDiscountEl && new Hammer(goodsDiscountEl), + $discountFirstItem = $(goodsDiscountEl).find('.first-item'); +var $cart = $('.cart-bar'); -//判断是否要显示向左滑动提示 -function hiddenTips($ele) { - var offsetContainer, - offsetLastColumn; +var appUrl = $('input[name="limitCodeUrl"]').val(); - if ($ele.length > 0) { - offsetContainer = $ele[0].getBoundingClientRect().right; - offsetLastColumn = $ele.find('.swiper-slide:last-child')[0].getBoundingClientRect().right; +var dialog = require("js/me/dialog"); - if (offsetLastColumn - offsetContainer < 0) { - $ele.next('.tips').css('display', 'none'); +//add extra marign-bottom for footer to show the yoho copyright +function showFooter() { + var $cartBar = $('.cart-bar'); + + var timer = setInterval(function() { + if ($cartBar) { + window.reMarginFooter('.cart-bar'); + clearInterval(timer); } else { - $ele.next('.tips').css('display', 'block'); + $cartBar = $('.cart-bar'); } - } + }, 200); } -//function isFlexSupport() { -// var flex = document.createElement('p').style.flex, -// webkitFlex = document.createElement('p').style.webkitFlex, -// flexWrap = document.createElement('p').style.flexWrap; -// -// if ((flex === '' || webkitFlex === '') && flexWrap === '') { -// return true; -// } else { -// return false; -// } -//} +showFooter(); -function wrapElements(selector, count) { - var elArr = null; +require("js/product/detail/like"); - $(selector).each(function(idx, el) { - elArr = $(selector).slice(idx, idx + count); +lazyLoad($('img.lazy')); - if (elArr.length === count && idx % count === 0) { - $(elArr).wrapAll($('<div class="js-wraper"></div>')); - } - }); +if ($('#goodsDiscount h1').length < 1) { + $('.dropdown').remove(); } +//顶部swiper +goodsSwiper = new Swiper('.banner-swiper', { + lazyLoading: true, + lazyLoadingInPrevNext: true, + paginationClickable: true, + pagination: '.banner-top .pagination-inner', + nextButton: '.my-swiper-button-next', + prevButton: '.my-swiper-button-prev', + spaceBetween: 3 +}); -function search() { - if (searching || end) { - return; - } - searching = true; +//初始化goods-discount +if (0 === $discountFolder.children().length) { + $discountFolder.css('display', 'none'); + $discountArrow.html(''); +} - // alert($('#reference-swiper-container .swiper-wrapper').width()); +//goods-discount下拉按钮点击事件 +if (goodsDiscountHammer && $discountFolder.children().length > 0) { + goodsDiscountHammer.on('tap', function(e) { + if ($discountFolder.is(':hidden')) { + $discountFirstItem.removeClass('short-text'); + $discountArrow.removeClass('icon-down').addClass('icon-up').html(''); + $discountFolder.slideDown(); + } else { + $discountFirstItem.addClass('short-text'); + $discountArrow.removeClass('icon-up').addClass('icon-down').html(''); + $discountFolder.slideUp(); + } + }); +} - loading.showLoadingMask(); +$('#limit-sale').on('touchend', function(e) { + var loginUrl = $('#loginUrl').val(), + time, + ifr; - $.ajax({ - type: 'GET', - url: introUrl, - success: function(data) { - $productDesc = $('#productDesc'); - $productDesc.append(data); + e.stopPropagation(); - window.rePosFooter(); + if(loginUrl) { + window.location = loginUrl; + } else { + dialog.showDialog({ + dialogText: '进入有货APP,获取限购码', + hasFooter: { + rightBtnText: '打开Yoho!Buy有货APP' + } + }, function() { + ifr = document.createElement('iframe'); + ifr.src = appUrl; + ifr.style.display = 'none'; + document.body.appendChild(ifr); + window.location.href = appUrl; - lazyLoad($productDesc.find('img.lazy')); + time = Date.now(); + window.setTimeout(function() { + document.body.removeChild(ifr); + if (Date.now()- time < 3200) { + window.location.href = 'http://a.app.qq.com/o/simple.jsp?pkgname=com.yoho'; + } + }, 3000); - //尺码信息左右滑动 - sizeSwiper = new Swiper('#size-swiper-container',{ - slidesPerView: 'auto' - }); + }, undefined, true); - //模特试穿左右滑动 - refSwiper = new Swiper('#reference-swiper-container',{ - slidesPerView: 'auto' - }); + $('.dialog-wrapper').off('touchstart').on('touchstart', function(e) { + e.stopPropagation(); + if ($(e.target).hasClass('dialog-wrapper')) { + dialog.hideDialog(); + } + }); + } +}); - hiddenTips($('#size-swiper-container')); - hiddenTips($('#reference-swiper-container')); +require("js/product/detail/desc"); +require("js/product/detail/comments-consults"); +require("js/product/recommend-for-you-product-desc"); - //if (!isFlexSupport()) { - // $('.detail .column').removeClass('column').addClass('oldbox'); - //} - wrapElements('.detail .column', 2); - searching = false; - end = true; - loading.hideLoadingMask(); - }, - error: function() { - tip.show('网络断开连接了~'); - searching = false; - loading.hideLoadingMask(); +//购物车商品数量 +$.ajax({ + type: 'GET', + url: '/cart/index/count', + success: function(data) { + var count; + + if (data.code === 200) { + count = data.data.cart_goods_count || 0; + if (count === 0) { + return false; + } + if (count > 99) { + count = '99+'; + } + $cart.find('.num-tag').html(count).removeClass('hide'); } - }); -} - -function scrollHandler() { - if (!end || $(window).scrollTop() + winH >= $(document).height() - 200) { - search(); } +}); + +if ($('.good-detail-page').length > 0) { + $('#yoho-footer').css('border-top', '1px solid #e0e0e0'); } -//srcoll to load more -$(window).scroll(function() { - window.requestAnimationFrame(scrollHandler); -}); }); -define("js/product/detail/comments-consults", ["jquery","hammer"], function(require, exports, module){ +define("js/product/detail/like", ["jquery"], function(require, exports, module){ /** - * 商品详情 --评论和咨询tab + * 商品详情 --添加收藏 * @author: Lynnic - * @date: 2015/11/18 + * @date: 2015/11/24 */ + + var $ = require("jquery"), - tip = require("js/plugin/tip"), - Hammer = require("hammer"); + tip = require("js/plugin/tip"), + chosePanel = require("js/cart/chose-panel"); + +var productId = $('#productId').val(); + +var skn = $('#productSkn').val(), + productCode = $('#limitProductCode').val(); + + //门票 限购数量 +var ticketsLimit = $('#limitNum').val() || 0; + +$('#likeBtn').on('touchstart', function() { + var opt, + favorite; + + var $this = $(this); + + if ($this.hasClass('liked')) { + opt = 'cancel'; + favorite = 0; + } else { + opt = 'ok'; + favorite = 1; + } + + $.ajax({ + type: 'POST', + url: '/product/opt/favoriteProduct', + data: { + id: productId, + opt: opt + }, + success: function(data) { + if (data.code === 200) { + $this.toggleClass('liked'); + + if ('cancel' === opt) { + tip.show('取消收藏成功'); + } else if ('ok' === opt) { + tip.show('收藏成功'); + } + } else if (data.code === 400) { + location.href = data.data;//未登录跳转登录页 + } else { + tip.show(data.message); + } + }, + error: function() { + tip.show('网络断开连接了~'); + } + }); + + // 统计代码:用于统计用户加入或取消商品收藏的动作 + if (window._yas) { + window._yas.sendCustomInfo({ + pd: productId, + fa: favorite + }, true); + } + + return false; +}); + +$('#addtoCart').on('touchstart', function() { + + //门票验证登录 + if (ticketsLimit) { + if (!ticketCheckLogin()) { + return false; + } + } + + $('.cart-bar').hide(); + + productCode && chosePanel.setLimitGoodModeWithSknId(productCode, skn); + chosePanel.show(); + + //统计代码:用于统计用户加入购物车的动作 + if (window._yas) { + window._yas.sendCustomInfo({ + pd: productId, + by: 1 + }, true); + } + + return false; +}); + +ticketCheckOpen(); + +$('#buyLimit').on('touchstart', function() { + tip.show('打开APP可抢购该商品哦~'); + return false; +}); + +//门票立即购买验证登录 + function ticketCheckLogin() { + + if (!window.getUid()) { + var urlArray = window.location.href.split('?'); + window.location.href = '//m.yohobuy.com/signin.html?refer=' + urlArray[0] + '?product_type=ticket'; + return false; + } + return true; + } -var commentsNum,consultsNum; +// 门票登录后自动弹出 + function ticketCheckOpen() { + var showPannel = $('#showPannel').val(); + if (showPannel) { + chosePanel.show(); + } + } + +}); +define("js/cart/chose-panel", ["jquery"], function(require, exports, module){ +/** + * 购物车选择尺寸、颜色和数量面板 + * 显示时构造当前商品信息的HTML插入yoho-page;消失则是直接清除HTML + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/10/21 + */ + + +// bikai +// 增加init函数,异步请求的接口需要重新初始化一下选择列表 +// 异步渲染的模板统一插入 #chose-panel ,兼容页面多个选择框 + +var $ = require("jquery"), + tip = require("js/plugin/tip"), + loading = require("js/plugin/loading"); + +var innerScroll = require("js/plugin/inner-scroll"); + +var $chosePanel = $('#chose-panel'), + $num, + $chosed, + $imgsThumb, + $leftNum, + leftNum, + confirming, + curColorIndex, + curSizeIndex, + hasChooseColor, + hasChooseSize, + $curSizeBlock, + $sizeRowList, + $curColorBlock, + $colorRowList, + cbFn, + $allChoseItems, + queryString, + $choseArea, + $cartBar, + $soonSoldOut = $('.soonSoldOut-tag'), + $yohoPage = $('.yoho-page'), + //门票 限购数量 + ticketsLimit = $('#limitNum').val() || 0, + single = $('#single').val() || 0; + $productSku = $('#productSku'), + $buyNumber = $('#buyNumber'), + $buyNowForm = $('#buyNowForm'); + +// 购物车编辑标相关变量 +var isEdit, + isSelected, + oldSknId; + +// 限购商品的商品码。只有限购商品时才会设置。 +var limitProductCode, -var navtabEle = document.getElementById('nav-tab'), - navtabHammer = navtabEle && new Hammer(navtabEle), + // 限购商品的skn。只有限购商品时才会设置。 + skn; + +//禁用数字编辑 +function disableNumEdit() { + var $numBtn = $('.chose-panel').find('.num .btn>.iconfont'); + + //添加disabled样式 + $numBtn.hasClass('disabled') ? null : $numBtn.addClass('disabled'); + + $yohoPage.off('touchstart', '.btn-minus'); + $yohoPage.off('touchstart', '.btn-plus'); +} + +// 初始化购物车面板显示 +function init() { + hasChooseColor = false; + hasChooseSize = false; + $curSizeBlock = null; + queryString = $.queryString(); + $imgsThumb = $('.chose-panel').find('.thumb'); + $choseArea = $('.chose-panel .main .chose-items'); + $allChoseItems = $('.chose-items'); + $sizeRowList = $('.size-list ul'); + $colorRowList = $('.color-list ul'); + $leftNum = $('#left-num'); + $cartBar = $('.cart-bar'); + curColorIndex = 0; + curSizeIndex = 0; + isEdit = 0; +} - gotoConsultEle = document.getElementById('goto-consult'), - gotoConsultHammer = gotoConsultEle && new Hammer(gotoConsultEle), +/* + * 设置当前面板为编辑模式 + * + * @param {String} sknId. 当前编辑商品的sknId + * + * @param {Bool} isThisGoodSelected. 当前编辑商品的在购物车中是否被选中 + * + * @return {undefined} + */ +function setEditModeWithSknId(sknId, isThisGoodSelected) { + $('#chose-btn-sure').html('确认'); + isEdit = 1; + oldSknId = sknId; + isSelected = isThisGoodSelected; +} - readmore = document.getElementById('readmore'), - readmoreHammer = readmore && new Hammer(readmore); +/* + * 设置当前面板为限购商品模式 + * + * @param {String} code 当前限购商品的商品码 + * + * @param {String} sknId. 当前限购商品的sknId + * + * @return {undefined} + */ +function setLimitGoodModeWithSknId(code, sknId) { + disableNumEdit(); + $('#chose-btn-sure').html('立即购买'); + limitProductCode = code; + skn = sknId; +} +//删除面板 +function removePannel() { + var $pannel = $('.chose-panel'), + $promotionId = $('#promotionId'); + if ($pannel) { + $pannel.remove(); + } -(function() { - consultsNum = $('#nav-tab .consults-num').html() - 0; + if ($promotionId) { + $promotionId.remove(); + } +} - commentsNum = $('#nav-tab .comments-num').html() - 0; +function checkColorSizeNum() { - $('#nav-tab li').each(function() { - $(this).removeClass('focus'); - }); + if (ticketsLimit) { + //门票 + if (!checkTickets()) { + return; + } + } - $('#feedback-content .content').each(function() { - $(this).addClass('hide'); - }); - if (0 !== commentsNum) { - $('#nav-tab .comment-nav').addClass('focus'); - $('#feedback-content .comment-content').removeClass('hide'); + if (!hasChooseColor && !hasChooseSize) { + tip.show('请选择颜色和尺码~'); + return false; + } else if (!hasChooseColor) { + tip.show('请选择颜色~'); + return false; + } else if (!hasChooseSize) { + tip.show('请选择尺码~'); + return false; + } + return true; +} - } else if (0 !== consultsNum) { - $('#nav-tab .consult-nav').addClass('focus'); - $('#feedback-content .consult-content').removeClass('hide'); +//检查门票选择 +function checkTickets() { + if (!hasChooseColor && !hasChooseSize) { + if (single) { + tip.show('请选择日期~'); + } else { + tip.show('请选择日期和区域~'); + }; + return false; + } else if (!hasChooseColor) { + tip.show('请选择日期~'); + return false; + } else if (!hasChooseSize && !single) { + tip.show('请选择区域~'); + return false; } + return true; +} - $('.goods-consults .consult-item:lt(2)').removeClass('hide'); -})(); -if (navtabHammer) { - navtabHammer.on('tap', function(e) { - var $this = $(e.target).closest('li'); - var index = $this.index(); +function show(html, cb) { + if (html) { + $chosePanel.html(html); + if ($('#promotionId').val() !== '') { + disableNumEdit(); + } + init(); + } - if ($this.hasClass('comment-nav') && 0 === commentsNum) { - tip.show('暂无商品评价'); - } else { - if (!$this.hasClass('focus')) { + $('.chose-panel').show(); + $num = $('#good-num'); + cbFn = cb; - $('#nav-tab li').each(function() { - $(this).removeClass('focus'); - }); - $('#feedback-content .content').each(function() { - $(this).addClass('hide'); - }); - $this.addClass('focus'); - $('#feedback-content .content:eq(' + index + ')').removeClass('hide'); - } - } - }); + innerScroll.disableScroll($choseArea); } -// if (consultFooterHammer) { -// consultFooterHammer.on('tap', function() { -// location.href = $(consultFooterEle).data('href'); -// }); -// } +//隐藏当前Panel +function hide() { + $('.chose-panel').hide(); + innerScroll.enableScroll($choseArea); -if (gotoConsultHammer) { - gotoConsultHammer.on('tap', function() { - location.href = $(gotoConsultEle).find('a').attr('href'); - }); + if ($cartBar.length > 0) { + $cartBar.show(); + } } -//咨询页面固定header -if ($('.goods-consults-page').length > 0) { - $('#yoho-header').css('position', 'fixed').css('top', '0'); +//修改加入购物车的文字和背景 +function updateConformButtonClassAndText() { + $chosed = $allChoseItems.find('.chosed'); + if (2 === $chosed.closest('.zero-stock').length) { + $('#chose-btn-sure').css('background-color', '#c0c0c0').html('已售罄'); + } else if (limitProductCode || ticketsLimit) { + $('#chose-btn-sure').css('background-color', '#eb0313').html('立即购买'); + } else { + $('#chose-btn-sure').css('background-color', '#eb0313').html(isEdit ? '确认' : '加入购物车'); + } } -if ($('.goods-consults-page').length > 0) { - $('#yoho-footer').css('border-top', '1px solid #e0e0e0'); -} +//显示剩余件数 +function displayGoodNum(curGoodNum) { -if (readmoreHammer) { - readmoreHammer.on('tap', function() { - $('.readmore').hide(); - $('.goods-consults').find('.consult-item').removeClass('hide'); - return false; - }); -} + //门票限购 + if (ticketsLimit) { + $allChoseItems.find('.num .left-num').html('限购' + ticketsLimit + '件'); + $leftNum.val(curGoodNum); + return; + } -require("js/product/detail/fav"); + //数量大于 + if (curGoodNum > 0) { + if ($soonSoldOut.length > 0) { + $allChoseItems.find('.num .left-num').html('即将售罄'); + } else { + $allChoseItems.find('.num .left-num').html('剩余' + curGoodNum + '件'); + } -}); -define("js/product/detail/fav", ["jquery","hammer"], function(require, exports, module){ -/** - * 商品详情咨询页 --点赞和帮助功能 - * @author: Lynnic - * @date: 2015/12/09 - */ - - var $ = require("jquery"), - Hammer = require("hammer"), - tip = require("js/plugin/tip"); - -var goodsConsultsEle = $('#goods-consults')[0], - goodsConsultsHammer = goodsConsultsEle && new Hammer(goodsConsultsEle); - -var productId, - total; - -function showCountPlus($el) { - var $count = $el.find('.animate-count'); - - $count.css('display', 'inline'); - $count.animate({ - opacity: 0.25, - fontSize: '0.7rem', - right: '-=5' - }, 300, function() { - $count.css('display', 'none'); - }); -} - -(function() { - var queryStr = window.location.search.substring(1); - - productId = queryStr.split('&')[0].split('=')[1]; - total = queryStr.split('&')[1] ? queryStr.split('&')[1].split('=')[1] : undefined; -})(); - -if (goodsConsultsHammer) { - - goodsConsultsHammer.on('tap', function(e) { - - var $this = $(e.target).closest('li'), - id = $this.closest('.consult-item').data('id'), - count = $this.find('.count').html() - 0, - url; - - if (!$this.hasClass('highlight')) { - - if ($this.hasClass('fav')) { - url = '/product/detail/consultupvote'; - } else if ($this.hasClass('useful')) { - url = '/product/detail/consultuseful'; - } - - $.ajax({ - method: 'post', - url: url, - data: { - id: id, - productId: productId, - total: total - } - }).done(function(data) { - if (data.code === 200) { - showCountPlus($this); - $this.addClass('highlight'); - $this.find('.count').html(count + 1); - } else if (data.code === 401) { - location.href = data.data;//未登录跳转登录页 - } - }).fail(function(data) { - tip.show('网络断开连接了~'); - }); - - } - }); -} + $leftNum.val(curGoodNum); -}); -define("js/product/recommend-for-you-product-desc", ["swiper","jquery","index"], function(require, exports, module){ -/** - * 为您优选 - * @author: liangzhifeng<zhifeng.liang@yoho.cn> - * @date: 2015/11/16 - */ - - -var Swiper = require("swiper"), - $ = require("jquery"); - -var recommendSwiper, - $recommendForYou = $('.recommend-for-you'), - preferenceUrl = $('#preferenceUrl').val(), - winH = $(window).height(), - end = false, - requesting = false; - - -function request() { - if (requesting || end) { - return; - } - - requesting = true; - - if (preferenceUrl) { - $.get(preferenceUrl).then(function(html) { - if (html.length < 5) { - $recommendForYou.css('display', 'none'); - } else { - $recommendForYou.html(html).show(); - if ($('#swiper-recommend').length) { - recommendSwiper = new Swiper('#swiper-recommend', { - slidesPerView: 'auto', - grabCursor: true, - slideElement: 'a', - lazyLoading: true, - watchSlidesVisibility: true - }); - } - } - - requesting = false; - end = true; - - window.rePosFooter(); - - }).fail(function() { - $recommendForYou.hide(); - }); - } -} - -function scrollHandler() { - if (!end || $(window).scrollTop() + winH >= $(document).height() - 200) { - request(); - } -} - -$(window).scroll(function() { - window.requestAnimationFrame(scrollHandler); -}); + //数量小于0 + } else { + $allChoseItems.find('.num .left-num').html(''); + $leftNum.val(0); + } +} + +//老的选中尺码去掉勾选,新的选中尺码加上勾选 +function changeSizeChosed(newSizeIndex) { + var sizes, + queryString, + i; -}); -define("js/product/detail/consultform", ["jquery"], function(require, exports, module){ -/** - * 我要咨询提交页面 - * @author: liangzhifeng<zhifeng.liang@yoho.cn> - * @date: 2015/12/01 - */ -var $ = require("jquery"), - tip = require("js/plugin/tip"), - loading = require("js/plugin/loading"); - -var $consultForm = $('.consult-form'), - $submit = $('#submit'), - $content = $('#content'), - productId = $('#product_id').val(), - isSubmiting; - -$submit.on('touchend', function() { - $content.blur(); - $consultForm.submit(); - return false; -}).on('touchstart', function() { - $(this).addClass('highlight'); -}).on('touchend touchcancel', function() { - $(this).removeClass('highlight'); -}); - -$content.on('focus', function() { - if ($content.val() === '请输入咨询内容') { - $content.val(''); - } -}).on('blur', function() { - if ($content.val() === '') { - $content.val('请输入咨询内容'); - } -}); - -// 提交表单请求 -$consultForm.on('submit', function() { - var content; - - if (isSubmiting) { - return false; - } - - // 简单的表单校验 - content = $content.val(); - if (!content || content === '请输入咨询内容') { - tip.show('咨询内容不能为空'); - return false; - } - - isSubmiting = true; - loading.showLoadingMask(); - $.ajax({ - method: 'POST', - url: '/product/detail/consultsubmit', - data: { - product_id: productId, - content: content - } - }).then(function(res) { - if ($.type(res) !== 'object') { - res = {}; - } - if (res.code !== 200) { - tip.show(res.message || '网络出了点问题~'); - isSubmiting = false; - loading.hideLoadingMask(); - } else { - tip.show('提交成功~'); - setTimeout(function() { - window.history.go(-1); - }, 3000); - } - }).fail(function() { - tip.show('网络出了点问题~'); - isSubmiting = false; - }); - return false; -}); + if (curColorIndex && $curSizeBlock && $curSizeBlock.length > 0) { + $curSizeBlock.removeClass('chosed'); + sizes = $sizeRowList.eq(newSizeIndex).children(); + for (i = 0; i < sizes.length; i++) { + if ($(sizes[i]).data('id') === $curSizeBlock.data('id')) { + $curSizeBlock = $(sizes[i]); + queryString = '#' + $curSizeBlock.data('id'); + curColorIndex = $(queryString).data('index'); + $curSizeBlock.addClass('chosed'); + return $curSizeBlock.data('num'); + } + } -}); -define("js/product/newsale/hot-rank", ["jquery","swiper","lazyload","index"], function(require, exports, module){ -var $ = require("jquery"), - Swiper = require("swiper"), - lazyLoad = require("lazyload"), - loading = require("js/plugin/loading"); - -var page = 1, - winH, - listTop, - navSwiper, - notab = 0, - sort = '', - id = '', - hotrankNav, - noResult = '<p class="no-result">未找到相关搜索结果</p>'; - -require("js/product/suspend-cart"); - -function hotrank(page, sort, tabId, notab) { - loading.showLoadingMask(); - $.ajax({ - type: 'GET', - url: '/product/newsale/selectHotrank?' + sort, - dataType: 'html', - data: { - page: page, - tab_id: tabId, - notab: notab - }, - success: function(data) { - if (data === ' ') { - if ($('.rank-main').length < 1 && $('.goods-nav').length < 1) { - $('#hotRank').html(noResult); - } else { - if (page === 1) { - hotrankNav = $('.goods-nav').prop('outerHTML'); - - $('#hotRank').html(hotrankNav + noResult); - } - } - } else { - $('.no-result').remove(); - if (page === 1) { - $('.rank-main').remove(); - } - $('#hotRank').append(data); - } - - lazyLoad($('img.lazy')); - $('.rank-main ul li:gt(9)').find('.item-content i').removeClass('top'); - winH = $(window).height(); - if ($('.rank-main').length !== 0) { - $('#yoho-footer').css('position', 'static'); - listTop = $('.rank-main').find('ul').offset().top; - } else { - $('#yoho-footer').css({ - position: 'fixed', - width: '100%' - }); - } - navSwiper = new Swiper('.s-goods-nav', { - grabCursor: true, - slidesPerView: 'auto', - slideElement: 'li' - }); - loading.hideLoadingMask(); - } - }); -} - -function scrollHandler() { - if (page === 2) { - return; - } - if ($(window).scrollTop() + winH < listTop + $('#hotRank').height() - 100) { - return; - } - page = 2; - notab = 1; - hotrank(page, sort, id, notab); -} - -$(window).scroll(function() { - window.requestAnimationFrame(scrollHandler); -}); - -hotrank(page, sort, id, notab); -$('#hotRank').on('touchend touchcancel', function(e) { - var ev = ev || window.event; - var target = ev.target || ev.srcElement; - - if (target.nodeName.toLowerCase() === 'span') { - $('.s-goods-nav .nav-item').removeClass('active'); - target.parentNode.className = 'active ' + target.parentNode.className; - id = target.getAttribute('data-id') ? target.getAttribute('data-id') : ''; - sort = target.getAttribute('data-sort') ? target.getAttribute('data-sort') : ''; - page = 1; - notab = 1; - hotrank(page, sort, id, notab); - } -}); -$('#hotRank').bind('contextmenu', function(e) { - return false; -}); -$('#hotRank').on('touchstart', function(e) { - var ev = ev || window.event; - var target = ev.target || ev.srcElement; - - if (target.nodeName.toLowerCase() === 'span') { - target.parentNode.className = 'bgActive ' + target.parentNode.className; - } -}).on('touchend touchcancel', function() { - $('.s-goods-nav .nav-item').removeClass('bgActive'); -}); - + //特殊处理: 老的选中尺码在新选中的颜色对应尺码中不存在,需要下述1,2,3 + // 1.重置尺码选择的标志变量. + $curSizeBlock = null; + hasChooseSize = false; + + // 2.当前颜色行隐藏 + $colorRowList.eq(curColorIndex).addClass('hide'); + + // 3.目标颜色行第一行显示 + $colorRowList.eq(0).removeClass('hide'); + curColorIndex = 0; + + return -1; + } + return 0; +} + +//老的选中颜色去掉勾选,新的选中颜色加上勾选 +function changeColorChosed(newColorIndex) { + if (curSizeIndex && $curColorBlock && $curColorBlock.length > 0) { + $curColorBlock.removeClass('chosed'); + $curColorBlock = $($colorRowList.eq(newColorIndex).children().get(curSizeIndex - 1)); + $curColorBlock.addClass('chosed'); + return $curColorBlock.data('num'); + } + return 0; +} + +//添加门票 +function addTickets(productSku, buyNumber) { + var data = { + productSku: productSku, + buyNumber: buyNumber + }; + + //校验电子票 + $.ajax({ + url: '/cart/index/checkTickets', + dataType: 'json', + data: data, + type: 'post', + success: function (addRestult) { + if (addRestult.code != 200) { + if (addRestult.code == 401) { + var refer = window.location.href; + window.location.href = '//m.yohobuy.com/signin.html?refer=' + refer; + } + tip.show(addRestult.message); + } else { + $productSku.val(productSku); + $buyNumber.val(buyNumber); + $buyNowForm.submit(); + } + }, + error: function () { + tip.show('网络异常~'); + } + }); +} + +init(); + + +$yohoPage.on('touchstart', '.chose-panel', function(e) { + var $cur = $(e.target); + + if ($cur.closest('.main').length > 0) { + return; + } + + //点击蒙版消失 + hide(); + + return false; }); -define("js/product/product-category", ["jquery"], function(require, exports, module){ -/** - * 分类 - * @author: berry<lixia.zhang@yoho.cn> - * @date: 2016/4/25 - */ -var $ = require("jquery"); - -var $allProductCell = $('.allproduct'), - $categoryContainer = $('.category-container'), - $contents = $categoryContainer.children('.content'), - $subLevelItem = $categoryContainer.find('.sub-level li'), - $trilangle = $categoryContainer.find('.primary-level-trilangle'); - -//初始化container高度 -(function() { - var $header = $('.yoho-header'); - var h = $(window).height() - $header.outerHeight() - $allProductCell.outerHeight(); - var trilangleRightMargin = $(window).width() * 0.55; - - $categoryContainer.css('min-height', h); - $trilangle.css('margin-right', trilangleRightMargin); - $contents.height(h); - -}()); - - -$categoryContainer.on('touchend', function(e) { - var $this = $(e.target), - $subLevel, - $cur, index, - $subLevelContainer, $trilangleItem; - - $cur = $this.closest('.p-level-item'); - - $subLevelContainer = $this.closest('.content').find('.sub-level-container'); - $subLevelContainer.removeClass('hide'); - - if ($cur.length > 0) { - index = $cur.index(); - $subLevel = $this.closest('.content').find('.sub-level'); - $trilangleItem = $this.closest('.content').find('.primary-level-trilangle'); - - if ($this.hasClass('focus')) { - return; - } - - $subLevel.not('.hide').addClass('hide'); - $subLevel.eq(index).removeClass('hide'); - - $trilangleItem.not('.hide').addClass('hide'); - $trilangleItem.eq(index).removeClass('hide'); - } -}); - -$categoryContainer.find('.sub-level').on('touchstart', 'li', function() { - $subLevelItem.removeClass('highlight'); - $(this).addClass('highlight'); -}).on('touchend touchcancel', 'li', function() { - $(this).removeClass('highlight'); -}); - -$allProductCell.on('touchstart', function() { - $(this).addClass('highlight'); -}).on('touchend touchcancel', function() { - $(this).removeClass('highlight'); -}); -}); -define("js/product/shop", ["jquery","iscroll-probe","lazyload","swiper","hammer","index"], function(require, exports, module){ -/** - * 品牌店铺首页 - */ -var $ = require("jquery"), - IScroll = require("iscroll-probe"), - lazyLoad = require("lazyload"), - Swiper = require("swiper"), - bannerSwiper, - multiSwiper, - myScroll, - imgH, - nav1H, - main1H, - main1oH, - nav2H, - main2oH, - scH, - $nav1 = $('#pos-nav'), - $nav2 = $('#pos-list'), - sTop; +$yohoPage.on('touchstart', '.color-list .block', function() { + var $this = $(this), + index = $this.index(), + curGoodNum; -var tip = require("js/plugin/tip"), - filter = require("js/plugin/filter"), - loading = require("js/plugin/loading"); + // 当前颜色已经是选中状态,再点击时 + if ($this.hasClass('chosed')) { -var $subNav = $('.home-sub-nav'), - $goodsContainer = $('#goods-container'), - $goodsChildren = $goodsContainer.children(), - $ngc = $($goodsChildren.get(0)), - $pgc = $($goodsChildren.get(1)), - $dgc = $($goodsChildren.get(2)), - shopId = $('input[name="shop_id"]').val(), - appVersion = $('input[name="app_version"]').val(), - brand = $('input[name="brand"]').val(), - coverChannel = $('input[name="coverChannel"]').val(), - favId = $('input[name="favId"]').val(); + //清空剩余件数的提示 + $allChoseItems.find('.num .left-num').html(''); + $leftNum.val(0); + hasChooseColor = false; -var winH = $(window).height(), - noResult = '<p class="no-result">未找到相关搜索结果</p>'; + //当前尺码行隐藏 + $sizeRowList.eq(curSizeIndex).addClass('hide'); -//默认筛选条件 -var defaultOpt = require("js/product/query-param"); + //目标尺码行显示 + $sizeRowList.eq(0).removeClass('hide'); + + curSizeIndex = 0; + + //老的选中尺码去掉勾选,新的选中尺码加上勾选 + changeSizeChosed(0); + + // 当前颜色不是选中状态,选中时 + } else { + hasChooseColor = true; + + // 尺码行当前行隐藏 + $sizeRowList.eq(curSizeIndex).addClass('hide'); + + //老的选中尺码去掉勾选,新的选中尺码加上勾选 + curGoodNum = changeSizeChosed(index + 1); + // 显示剩余数量 + displayGoodNum(curGoodNum); + + //尺码对应行显示 + $sizeRowList.eq(index + 1).removeClass('hide'); + + curSizeIndex = index + 1; + $curColorBlock = $this; + + // 修改颜色时修改商品图片 + $imgsThumb.addClass('hide').eq(index).removeClass('hide'); + } + + // 颜色块切换勾选样式 + $this.siblings('.chosed').removeClass('chosed'); + + // 特殊处理: 老的选中尺码在新选中的颜色对应尺码中不存在, 需要将颜色的第一行对应的颜色块加上勾选样式. + if (-1 === curGoodNum) { + $curColorBlock = $($colorRowList.eq(0).children().get(index)); + $curColorBlock.addClass('chosed'); + + // 当前选择的颜色块,加上勾选样式 + } else { + $this.toggleClass('chosed'); + } + + $('#good-num').val(1); + + // 设置按钮的样式和文字 + updateConformButtonClassAndText(); + + //展览票 + if (ticketsLimit && single) { + //选中日期 + $curSizeBlock = $('.size-list .size-row .block').eq(index + 1); + $curSizeBlock.addClass('chosed'); + // 显示剩余数量 + displayGoodNum($curColorBlock.data('num')); + hasChooseSize = true; + return false; + } + + +}).on('touchstart', '.size-list .block', function() { + var $this = $(this), + index, + curGoodNum; + + // 当前尺码已经是选中状态,再点击时 + if ($this.hasClass('chosed')) { + + //清空剩余件数的提示 + $allChoseItems.find('.num .left-num').html(''); + $leftNum.val(0); + hasChooseSize = false; + + //当前颜色行隐藏 + $colorRowList.eq(curColorIndex).addClass('hide'); + + //目标颜色行显示 + $colorRowList.eq(0).removeClass('hide'); + + curColorIndex = 0; + + //老的选中颜色去掉勾选,新的选中颜色加上勾选 + changeColorChosed(0); + + // 当前尺码不是选中状态,选中时 + } else { + hasChooseSize = true; + + index = $('#' + $this.data('id')).data('index') - 1; + + // 颜色当前行隐藏 + $colorRowList.eq(curColorIndex).addClass('hide'); + + //老的选中颜色去掉勾选,新的选中颜色加上勾选 + curGoodNum = changeColorChosed(index + 1); + + // 显示剩余数量 + displayGoodNum(curGoodNum); + + //颜色对应行显示 + $colorRowList.eq(index + 1).removeClass('hide'); + + curColorIndex = index + 1; + $curSizeBlock = $this; + } -var $listNav = $('#list-nav'), + // 颜色块切换勾选样式 + $this.siblings('.chosed').removeClass('chosed'); + $this.toggleClass('chosed'); + $('#good-num').val(1); - //导航数据信息 - navInfo = { - new: { - order: 1, - reload: true, - page: 1, - end: false - }, - hot: { - order: 1, - reload: true, - page: 1, - end: false - }, - newest: { - order: 1, - reload: true, - page: 0, - end: false - }, - price: { - order: 1, - reload: true, - page: 0, - end: false - }, - discount: { - order: 1, - reload: true, - page: 0, - end: false - } - }, - $pre = $listNav.find('.active'), //纪录进入筛选前的active项,初始为选中项 - searching; + // 设置按钮的样式和文字 + updateConformButtonClassAndText(); +}); -var viewType = 1, // 1-首页,2-上新,3-人气 - listCount = $('.category-list li').length, - listModValue = 4 - listCount % 4, - listIndex; +$yohoPage.on('touchstart', '.btn-minus', function() { + var num = parseInt($num.val(), 10); + leftNum = $('#left-num').val(); + if (!checkColorSizeNum()) { + return; + } -//焦点效果 -if ($('.banner-swiper').find('li').size() > 1) { - bannerSwiper = new Swiper('.banner-swiper', { - lazyLoading: true, - lazyLoadingInPrevNext: true, - loop: true, - autoplay: 3000, - autoplayDisableOnInteraction: false, - paginationClickable: true, - slideElement: 'li', - pagination: '.banner-top .pagination-inner' - }); -} + if (num === 1 || 0 === leftNum - 0) { + tip.show('您选择的数量不能为零~'); + return; + } + if (num < 0) { + tip.show('您选择的数量不能为负数~'); + return; + } -if ($('.multi-browse').find('li').size() > 1) { - multiSwiper = new Swiper('.multi-browse', { - lazyLoading: true, - lazyLoadingInPrevNext: true, - lazyLoadingOnTransitionStart: true, - grabCursor: true, - slidesPerView: 'auto', - slideElement: 'li', - watchSlidesVisibility: true - }); -} + $num.val(num - 1); +}).on('touchstart', '.btn-plus', function() { + var num = parseInt($num.val(), 10), + maxTips = ticketsLimit ? '每人只可购买' + ticketsLimit + '张当日门票' : '您选择的数量超过了最大库存量~'; -//根据热门品类的个数来改变样式展示 -// -if ($('.category-list li').length % 4 !== 0) { - $('.category-list li:last-child').addClass('category-list-last-li'); -} + leftNum = ticketsLimit || $('#left-num').val(); -if ($('.category-list li').length < 4) { - $('.category-list').addClass('category-list-top-board'); - $('.category-list').find('.buriedpoint').addClass('category-list-only-one-row'); -} else if ($('.category-list li').length >= 5) { - for (listIndex = listModValue; listIndex >= 0; listIndex--) { - $('.category-list li').eq(listCount - 4 + listIndex - 1).addClass('category-list-last-full-row'); + if (!checkColorSizeNum()) { + return; } -} -function getPageGoods(info) { - var nav, navType; + if (num - 0 === leftNum || 0 === leftNum) { + return; + } - if (searching) { + //TODO:库存数验证 + if (num > leftNum - 1) { + tip.show(maxTips); return; } + $num.val(num + 1); +}).on('touchstart', '#chose-btn-sure', function() { - navType = info.data.type; - nav = navInfo[navType]; + var productSku, + buyNumber = $('#good-num').val() - 0, - //不需要重新加载并且数据请求结束 - if (nav.end) { + promotionId, + cartGoodData, + url, + num = parseInt($num.val(), 10); + //颜色尺码没有选择 + if (!checkColorSizeNum()) { return; } - if (info.data && coverChannel) { - info.data.coverChannel = coverChannel; + if ($('#chose-btn-sure').html() === '已售罄') { + return; } - searching = true; - $.ajax({ - type: 'GET', - url: info.url, - data: info.data, - success: function(data) { - if (data === ' ') { - nav.end = true; - } + leftNum = $('#left-num').val() - 0; - info.callBack(data); - }, - error: function() { - tip.show('网络断开连接了~'); - searching = false; + if (num > leftNum) { + tip.show('您选择的数量超过了最大库存量~'); + return; + } + if (num < 0) { + tip.show('您选择的数量小于一件~'); + return; + } + $chosed = $('.block-list>ul>li.chosed'); + + if (2 === $chosed.length && 0 === $chosed.closest('.zero-stock').length) { + productSku = $curSizeBlock.data('skuid'); + promotionId = $('#promotionId').val(); + if (confirming) { + return false; } - }); -} -function getParam(req) { - if (brand) { - req.data.brand = brand; - } + if (!ticketsLimit) { + confirming = true; + } - if (shopId) { - req.data.shop_id = shopId; - } -} + loading.showLoadingMask(); -function newData(callback) { - var req = {}; + //立即购买门票 + if (ticketsLimit) { + addTickets(productSku, buyNumber); + return; + } - req.url = location.protocol + '//m.yohobuy.com/index/search/search'; - req.data = { - type: 'new', - order: '1', - page: navInfo.new.page, - tagNew: '1' - }; + //针对是否处于编辑模式设置不同的url和需要post的数据 + if (isEdit) { + cartGoodData = { + new_product_sku: productSku, + old_product_sku: oldSknId, + buy_number: buyNumber, + selected: isSelected + }; - getParam(req); + url = '/cart/index/modify'; - req.callBack = function(data) { - $('#new-arrival').append(data); - navInfo.new.page++; - myScroll.refresh(); - lazyLoad($('#new-arrival .lazy')); - scH = $('#scroller').outerHeight(); - searching = false; - callback && $.isFunction(callback) && callback(); - }; - getPageGoods(req); -} + } else if (limitProductCode) { -function hotData(callback) { - var req = {}; + $(this).css('background-color', '#ccc').removeAttr('id'); + + // 当前面板选择的是限购商品 + url = $('#limitProductPay').val() + '?limitproductcode=' + limitProductCode + '&sku=' + + productSku + '&skn=' + skn + '&buy_number=' + buyNumber; + + removePannel(); + loading.showLoadingMask(); + + // 调用接口判断商品是否可以购买 + $.ajax({ + url: url + }).then(function(res) { + + // 如果有错,则商品不可购买,执行页面刷新,否则跳到结算页面 + if (res.error) { + tip.show(res.message); + setTimeout(function() { + location.reload(); + }, 2000); + } else { + location.href = url; + } + }).fail(function() { + tip.show('网络异常!'); + setTimeout(function() { + location.reload(); + }, 2000); + }); + + return false; + + } else { + cartGoodData = { + productSku: productSku, + buyNumber: buyNumber, + promotionId: promotionId, + isEdit: isEdit, + cartType: queryString.cartType + }; + + url = '/cart/index/add'; + } - req.url = location.protocol + '//m.yohobuy.com/index/search/search'; - req.data = { - type: 'hot', - order: '1', - page: navInfo.hot.page, - showTag: '1' - }; + $.ajax({ + method: 'POST', + url: url, + data: cartGoodData + }).done(function(res) { + var cartNum; - getParam(req); + loading.hideLoadingMask(); + if (res.code === 200 && !isEdit) { + cartNum = res.data.goods_count; + if (cartNum > 99) { + cartNum = '99+'; + } + $('.num-tag').html(cartNum).removeClass('hide'); + confirming = false; - req.callBack = function(data) { - $('#popularity').append(data); - navInfo.hot.page++; - // myScroll.refresh(); - lazyLoad($('#popularity .lazy')); - scH = $('#scroller').outerHeight(); - searching = false; - callback && $.isFunction(callback) && callback(); - }; - getPageGoods(req); -} + if (cbFn) { + cbFn(); + } + } + if (res.message && !isEdit) { + tip.show(res.message); + } -function tabChange(dom, index) { - var li = dom.eq(index); + hide(); - dom.removeClass('active color'); - li.addClass('active color'); -} + if (isEdit) { + loading.showLoadingMask(); + //延迟刷新,否则面板可能无法隐藏 + setTimeout(function() { + //获取当前页面商品类型:普通商品/预售商品 + window.location.href = '/cart/index/index?cartType=' + $('#cartType').val(); + }, 1); + } + }).fail(function() { + tip.show('网络出了点问题~'); + }).always(function() { + confirming = false; + }); + } +}); -//首页导航 -(function(nav, posNav, main) { +exports.init = init; +exports.show = show; +exports.remove = removePannel; +exports.setEditModeWithSknId = setEditModeWithSknId; +exports.disableNumEdit = disableNumEdit; +exports.setLimitGoodModeWithSknId = setLimitGoodModeWithSknId; - $(nav + ' li, ' + posNav + ' li').not('li.all-goods').on('touchstart', function() { +}); +define("js/plugin/inner-scroll", ["jquery"], function(require, exports, module){ +/** + * 弹出层可以滚动,遮盖层禁止滚动插件 + * + * @author liangzhifeng<zhifeng.liang@yoho.cn> + * @date: 2016/02/22 + */ + +var $ = require("jquery"); + +function preventDefault(e) { + e = e || window.event; + e.preventDefault && e.preventDefault(); + e.returnValue = false; +} + +function stopPropagation(e) { + e = e || window.event; + e.stopPropagation && e.stopPropagation(); + e.cancelBubble = false; +} + +function innerScroll(e) { + var delta = e.wheelDelta || e.originalEvent.wheelDelta || e.detail || 0, + box = $(this).get(0); + + // 阻止冒泡到document + // document上已经preventDefault + stopPropagation(e); + + + if ($(box).height() + box.scrollTop >= box.scrollHeight) { + if (delta < 0) { + preventDefault(e); + return false; + } + } + if (box.scrollTop === 0) { + if (delta > 0) { + preventDefault(e); + return false; + } + } +} + +function disableScroll($choseArea) { + var startX, startY; + + // 内部可滚 + $choseArea.on('mousewheel', innerScroll); + + // 移动端touch重写 + $choseArea.on('touchstart', function(e) { + startX = e.originalEvent.changedTouches[0].pageX; + startY = e.originalEvent.changedTouches[0].pageY; + }); + + // 仿innerScroll方法 + $choseArea.on('touchmove', function(e) { + var deltaX = e.originalEvent.changedTouches[0].pageX - startX, + deltaY = e.originalEvent.changedTouches[0].pageY - startY; + + var box = $(this).get(0); + + e.stopPropagation(); + + + // 只能纵向滚 + if (Math.abs(deltaY) < Math.abs(deltaX)) { + e.preventDefault(); + return false; + } + + + if ($(box).height() + box.scrollTop >= box.scrollHeight) { + if (deltaY < 0) { + e.preventDefault(); + return false; + } + } + if (box.scrollTop === 0) { + if (deltaY > 0) { + e.preventDefault(); + return false; + } + } + }); + + $(document).on('mousewheel', preventDefault); + $(document).on('touchmove', preventDefault); +} + +function enableScroll($choseArea) { + + $choseArea.off('touchstart'); + $choseArea.off('touchmove'); + $choseArea.off('mousewheel'); + + $(document).off('mousewheel', preventDefault); + $(document).off('touchmove', preventDefault); +} + +exports.enableScroll = enableScroll; +exports.disableScroll = disableScroll; +}); +define("js/product/detail/desc", ["jquery","lazyload","swiper","index"], function(require, exports, module){ +/** + * 商品详情 --异步加载页面下半部分 + * @author: liangzhifeng<zhifeng.liang@yoho.cn> + * @date: 2015/11/18 + */ +var $ = require("jquery"), + lazyLoad = require("lazyload"), + Swiper = require("swiper"), + loading = require("js/plugin/loading"), + tip = require("js/plugin/tip"); + +var introUrl = $('#introUrl').val(), + winH = $(window).height(), + $productDesc, + searching = false, + end = false; + +var sizeSwiper, + refSwiper; + + +//判断是否要显示向左滑动提示 +function hiddenTips($ele) { + var offsetContainer, + offsetLastColumn; + + if ($ele.length > 0) { + offsetContainer = $ele[0].getBoundingClientRect().right; + offsetLastColumn = $ele.find('.swiper-slide:last-child')[0].getBoundingClientRect().right; + + + if (offsetLastColumn - offsetContainer < 0) { + $ele.next('.tips').css('display', 'none'); + } else { + $ele.next('.tips').css('display', 'block'); + } + } +} + +//function isFlexSupport() { +// var flex = document.createElement('p').style.flex, +// webkitFlex = document.createElement('p').style.webkitFlex, +// flexWrap = document.createElement('p').style.flexWrap; +// +// if ((flex === '' || webkitFlex === '') && flexWrap === '') { +// return true; +// } else { +// return false; +// } +//} + +function wrapElements(selector, count) { + var elArr = null; + + $(selector).each(function(idx, el) { + elArr = $(selector).slice(idx, idx + count); + + if (elArr.length === count && idx % count === 0) { + $(elArr).wrapAll($('<div class="js-wraper"></div>')); + } + }); +} + + + +function search() { + if (searching || end) { + return; + } + searching = true; + + // alert($('#reference-swiper-container .swiper-wrapper').width()); + + loading.showLoadingMask(); + + $.ajax({ + type: 'GET', + url: introUrl, + success: function(data) { + $productDesc = $('#productDesc'); + $productDesc.append(data); + + window.rePosFooter(); + + lazyLoad($productDesc.find('img.lazy')); + + //尺码信息左右滑动 + sizeSwiper = new Swiper('#size-swiper-container',{ + slidesPerView: 'auto' + }); + + //模特试穿左右滑动 + refSwiper = new Swiper('#reference-swiper-container',{ + slidesPerView: 'auto' + }); + + hiddenTips($('#size-swiper-container')); + hiddenTips($('#reference-swiper-container')); + + //if (!isFlexSupport()) { + // $('.detail .column').removeClass('column').addClass('oldbox'); + //} + wrapElements('.detail .column', 2); + searching = false; + end = true; + loading.hideLoadingMask(); + }, + error: function() { + tip.show('网络断开连接了~'); + searching = false; + loading.hideLoadingMask(); + } + }); +} + +function scrollHandler() { + if (!end || $(window).scrollTop() + winH >= $(document).height() - 200) { + search(); + } +} + +//srcoll to load more +$(window).scroll(function() { + window.requestAnimationFrame(scrollHandler); +}); + - var index = $(this).index(), - activeTab = $(this).attr('tab'); +}); +define("js/product/detail/comments-consults", ["jquery","hammer"], function(require, exports, module){ +/** + * 商品详情 --评论和咨询tab + * @author: Lynnic + * @date: 2015/11/18 + */ +var $ = require("jquery"), + tip = require("js/plugin/tip"), + Hammer = require("hammer"); + +var commentsNum,consultsNum; + +var navtabEle = document.getElementById('nav-tab'), + navtabHammer = navtabEle && new Hammer(navtabEle), + + gotoConsultEle = document.getElementById('goto-consult'), + gotoConsultHammer = gotoConsultEle && new Hammer(gotoConsultEle), + + readmore = document.getElementById('readmore'), + readmoreHammer = readmore && new Hammer(readmore); + + + +(function() { + consultsNum = $('#nav-tab .consults-num').html() - 0; + + commentsNum = $('#nav-tab .comments-num').html() - 0; + + $('#nav-tab li').each(function() { + $(this).removeClass('focus'); + }); + + $('#feedback-content .content').each(function() { + $(this).addClass('hide'); + }); + if (0 !== commentsNum) { + $('#nav-tab .comment-nav').addClass('focus'); + $('#feedback-content .comment-content').removeClass('hide'); + + } else if (0 !== consultsNum) { + $('#nav-tab .consult-nav').addClass('focus'); + $('#feedback-content .consult-content').removeClass('hide'); + } + + $('.goods-consults .consult-item:lt(2)').removeClass('hide'); +})(); + +if (navtabHammer) { + navtabHammer.on('tap', function(e) { + var $this = $(e.target).closest('li'); + var index = $this.index(); + + if ($this.hasClass('comment-nav') && 0 === commentsNum) { + tip.show('暂无商品评价'); + } else { + if (!$this.hasClass('focus')) { + + $('#nav-tab li').each(function() { + $(this).removeClass('focus'); + }); + $('#feedback-content .content').each(function() { + $(this).addClass('hide'); + }); + + $this.addClass('focus'); + $('#feedback-content .content:eq(' + index + ')').removeClass('hide'); + } + } + }); +} + +// if (consultFooterHammer) { +// consultFooterHammer.on('tap', function() { +// location.href = $(consultFooterEle).data('href'); +// }); +// } + +if (gotoConsultHammer) { + gotoConsultHammer.on('tap', function() { + location.href = $(gotoConsultEle).find('a').attr('href'); + }); +} + +//咨询页面固定header +if ($('.goods-consults-page').length > 0) { + $('#yoho-header').css('position', 'fixed').css('top', '0'); +} + +if ($('.goods-consults-page').length > 0) { + $('#yoho-footer').css('border-top', '1px solid #e0e0e0'); +} + +if (readmoreHammer) { + readmoreHammer.on('tap', function() { + $('.readmore').hide(); + $('.goods-consults').find('.consult-item').removeClass('hide'); + return false; + }); +} + +require("js/product/detail/fav"); - if (!$('.filter-mask').hasClass('hide')) { - return; - } +}); +define("js/product/detail/fav", ["jquery","hammer"], function(require, exports, module){ +/** + * 商品详情咨询页 --点赞和帮助功能 + * @author: Lynnic + * @date: 2015/12/09 + */ + + var $ = require("jquery"), + Hammer = require("hammer"), + tip = require("js/plugin/tip"); + +var goodsConsultsEle = $('#goods-consults')[0], + goodsConsultsHammer = goodsConsultsEle && new Hammer(goodsConsultsEle); + +var productId, + total; + +function showCountPlus($el) { + var $count = $el.find('.animate-count'); + + $count.css('display', 'inline'); + $count.animate({ + opacity: 0.25, + fontSize: '0.7rem', + right: '-=5' + }, 300, function() { + $count.css('display', 'none'); + }); +} + +(function() { + var queryStr = window.location.search.substring(1); + + productId = queryStr.split('&')[0].split('=')[1]; + total = queryStr.split('&')[1] ? queryStr.split('&')[1].split('=')[1] : undefined; +})(); + +if (goodsConsultsHammer) { + + goodsConsultsHammer.on('tap', function(e) { + + var $this = $(e.target).closest('li'), + id = $this.closest('.consult-item').data('id'), + count = $this.find('.count').html() - 0, + url; + + if (!$this.hasClass('highlight')) { + + if ($this.hasClass('fav')) { + url = '/product/detail/consultupvote'; + } else if ($this.hasClass('useful')) { + url = '/product/detail/consultuseful'; + } + + $.ajax({ + method: 'post', + url: url, + data: { + id: id, + productId: productId, + total: total + } + }).done(function(data) { + if (data.code === 200) { + showCountPlus($this); + $this.addClass('highlight'); + $this.find('.count').html(count + 1); + } else if (data.code === 401) { + location.href = data.data;//未登录跳转登录页 + } + }).fail(function(data) { + tip.show('网络断开连接了~'); + }); + + } + }); +} - $nav1.removeClass('fixed-top'); - tabChange($(nav + ' li'), index); - tabChange($(posNav + ' li'), index); - $(main).hide(); - $('#' + activeTab).fadeIn(); - if (activeTab === 'new-arrival') { - newData(); - viewType = 2; - } else if (activeTab === 'popularity') { - hotData(); - viewType = 3; - } else if (activeTab === 'home-page') { - $nav1.removeClass('fixed-top absolute'); - $nav2.removeClass('fixed-top absolute'); - } - // myScroll && myScroll.refresh(); - scH = $('#scroller').outerHeight(); - if (!$nav1.hasClass('hide')) { - myScroll && myScroll.scrollTo(0, 0 - imgH); - } - $nav1.addClass('hide'); - }); -}('#nav', '#pos-nav', '.main')); +}); +define("js/product/recommend-for-you-product-desc", ["swiper","jquery","index"], function(require, exports, module){ +/** + * 为您优选 + * @author: liangzhifeng<zhifeng.liang@yoho.cn> + * @date: 2015/11/16 + */ + + +var Swiper = require("swiper"), + $ = require("jquery"); + +var recommendSwiper, + $recommendForYou = $('.recommend-for-you'), + preferenceUrl = $('#preferenceUrl').val(), + winH = $(window).height(), + end = false, + requesting = false; + + +function request() { + if (requesting || end) { + return; + } + + requesting = true; + + if (preferenceUrl) { + $.get(preferenceUrl).then(function(html) { + if (html.length < 5) { + $recommendForYou.css('display', 'none'); + } else { + $recommendForYou.html(html).show(); + if ($('#swiper-recommend').length) { + recommendSwiper = new Swiper('#swiper-recommend', { + slidesPerView: 'auto', + grabCursor: true, + slideElement: 'a', + lazyLoading: true, + watchSlidesVisibility: true + }); + } + } + + requesting = false; + end = true; + + window.rePosFooter(); + + }).fail(function() { + $recommendForYou.hide(); + }); + } +} + +function scrollHandler() { + if (!end || $(window).scrollTop() + winH >= $(document).height() - 200) { + request(); + } +} + +$(window).scroll(function() { + window.requestAnimationFrame(scrollHandler); +}); -var theY; +}); +define("js/product/detail/consultform", ["jquery"], function(require, exports, module){ +/** + * 我要咨询提交页面 + * @author: liangzhifeng<zhifeng.liang@yoho.cn> + * @date: 2015/12/01 + */ +var $ = require("jquery"), + tip = require("js/plugin/tip"), + loading = require("js/plugin/loading"); + +var $consultForm = $('.consult-form'), + $submit = $('#submit'), + $content = $('#content'), + productId = $('#product_id').val(), + isSubmiting; + +$submit.on('touchend', function() { + $content.blur(); + $consultForm.submit(); + return false; +}).on('touchstart', function() { + $(this).addClass('highlight'); +}).on('touchend touchcancel', function() { + $(this).removeClass('highlight'); +}); + +$content.on('focus', function() { + if ($content.val() === '请输入咨询内容') { + $content.val(''); + } +}).on('blur', function() { + if ($content.val() === '') { + $content.val('请输入咨询内容'); + } +}); + +// 提交表单请求 +$consultForm.on('submit', function() { + var content; + + if (isSubmiting) { + return false; + } + + // 简单的表单校验 + content = $content.val(); + if (!content || content === '请输入咨询内容') { + tip.show('咨询内容不能为空'); + return false; + } + + isSubmiting = true; + loading.showLoadingMask(); + $.ajax({ + method: 'POST', + url: '/product/detail/consultsubmit', + data: { + product_id: productId, + content: content + } + }).then(function(res) { + if ($.type(res) !== 'object') { + res = {}; + } + if (res.code !== 200) { + tip.show(res.message || '网络出了点问题~'); + isSubmiting = false; + loading.hideLoadingMask(); + } else { + tip.show('提交成功~'); + setTimeout(function() { + window.history.go(-1); + }, 3000); + } + }).fail(function() { + tip.show('网络出了点问题~'); + isSubmiting = false; + }); + return false; +}); + +}); +define("js/product/newsale/hot-rank", ["jquery","swiper","lazyload","index"], function(require, exports, module){ +var $ = require("jquery"), + Swiper = require("swiper"), + lazyLoad = require("lazyload"), + loading = require("js/plugin/loading"); + +var page = 1, + winH, + listTop, + navSwiper, + notab = 0, + sort = '', + id = '', + hotrankNav, + noResult = '<p class="no-result">未找到相关搜索结果</p>'; + +require("js/product/suspend-cart"); + +function hotrank(page, sort, tabId, notab) { + loading.showLoadingMask(); + $.ajax({ + type: 'GET', + url: '/product/newsale/selectHotrank?' + sort, + dataType: 'html', + data: { + page: page, + tab_id: tabId, + notab: notab + }, + success: function(data) { + if (data === ' ') { + if ($('.rank-main').length < 1 && $('.goods-nav').length < 1) { + $('#hotRank').html(noResult); + } else { + if (page === 1) { + hotrankNav = $('.goods-nav').prop('outerHTML'); + + $('#hotRank').html(hotrankNav + noResult); + } + } + } else { + $('.no-result').remove(); + if (page === 1) { + $('.rank-main').remove(); + } + $('#hotRank').append(data); + } + + lazyLoad($('img.lazy')); + $('.rank-main ul li:gt(9)').find('.item-content i').removeClass('top'); + winH = $(window).height(); + if ($('.rank-main').length !== 0) { + $('#yoho-footer').css('position', 'static'); + listTop = $('.rank-main').find('ul').offset().top; + } else { + $('#yoho-footer').css({ + position: 'fixed', + width: '100%' + }); + } + navSwiper = new Swiper('.s-goods-nav', { + grabCursor: true, + slidesPerView: 'auto', + slideElement: 'li' + }); + loading.hideLoadingMask(); + } + }); +} + +function scrollHandler() { + if (page === 2) { + return; + } + if ($(window).scrollTop() + winH < listTop + $('#hotRank').height() - 100) { + return; + } + page = 2; + notab = 1; + hotrank(page, sort, id, notab); +} + +$(window).scroll(function() { + window.requestAnimationFrame(scrollHandler); +}); + +hotrank(page, sort, id, notab); +$('#hotRank').on('touchend touchcancel', function(e) { + var ev = ev || window.event; + var target = ev.target || ev.srcElement; + + if (target.nodeName.toLowerCase() === 'span') { + $('.s-goods-nav .nav-item').removeClass('active'); + target.parentNode.className = 'active ' + target.parentNode.className; + id = target.getAttribute('data-id') ? target.getAttribute('data-id') : ''; + sort = target.getAttribute('data-sort') ? target.getAttribute('data-sort') : ''; + page = 1; + notab = 1; + hotrank(page, sort, id, notab); + } +}); +$('#hotRank').bind('contextmenu', function(e) { + return false; +}); +$('#hotRank').on('touchstart', function(e) { + var ev = ev || window.event; + var target = ev.target || ev.srcElement; + + if (target.nodeName.toLowerCase() === 'span') { + target.parentNode.className = 'bgActive ' + target.parentNode.className; + } +}).on('touchend touchcancel', function() { + $('.s-goods-nav .nav-item').removeClass('bgActive'); +}); + +}); +define("js/product/product-category", ["jquery"], function(require, exports, module){ +/** + * 分类 + * @author: berry<lixia.zhang@yoho.cn> + * @date: 2016/4/25 + */ +var $ = require("jquery"); + +var $allProductCell = $('.allproduct'), + $categoryContainer = $('.category-container'), + $contents = $categoryContainer.children('.content'), + $subLevelItem = $categoryContainer.find('.sub-level li'), + $trilangle = $categoryContainer.find('.primary-level-trilangle'); + +//初始化container高度 +(function() { + var $header = $('.yoho-header'); + var h = $(window).height() - $header.outerHeight() - $allProductCell.outerHeight(); + var trilangleRightMargin = $(window).width() * 0.55; + + $categoryContainer.css('min-height', h); + $trilangle.css('margin-right', trilangleRightMargin); + $contents.height(h); + +}()); + + +$categoryContainer.on('touchend', function(e) { + var $this = $(e.target), + $subLevel, + $cur, index, + $subLevelContainer, $trilangleItem; + + $cur = $this.closest('.p-level-item'); + + $subLevelContainer = $this.closest('.content').find('.sub-level-container'); + $subLevelContainer.removeClass('hide'); + + if ($cur.length > 0) { + index = $cur.index(); + $subLevel = $this.closest('.content').find('.sub-level'); + $trilangleItem = $this.closest('.content').find('.primary-level-trilangle'); + + if ($this.hasClass('focus')) { + return; + } + + $subLevel.not('.hide').addClass('hide'); + $subLevel.eq(index).removeClass('hide'); + + $trilangleItem.not('.hide').addClass('hide'); + $trilangleItem.eq(index).removeClass('hide'); + } +}); + +$categoryContainer.find('.sub-level').on('touchstart', 'li', function() { + $subLevelItem.removeClass('highlight'); + $(this).addClass('highlight'); +}).on('touchend touchcancel', 'li', function() { + $(this).removeClass('highlight'); +}); + +$allProductCell.on('touchstart', function() { + $(this).addClass('highlight'); +}).on('touchend touchcancel', function() { + $(this).removeClass('highlight'); +}); +}); +define("js/product/shop", ["jquery","iscroll-probe","lazyload","swiper","hammer","index"], function(require, exports, module){ /** - * 筛选后内容变化,导致nav1位置错掉,重新计算确保位置正确显示 + * 品牌店铺首页 */ -function reNav1Pos() { - var sTop = theY ? theY : 0; - if (sTop < imgH + main1oH + nav1H) { - if ($nav1.hasClass('hide')) { - $nav1.removeClass('hide'); - } - - if (sTop < imgH + main1H) { - tra = 'translate3d(0, ' + (-scH) + 'px, 0)'; - $nav1.addClass('fixed-top') - .removeClass('absolute') - .css({ - transform: tra, - '-moz-transform': tra, - '-ms-transform': tra, - '-webkit-transform': tra - }); - } else if (sTop < imgH + main1H + nav1H) { - if ($('#home-page').is(':hidden')) { - return false; - } - $nav1.addClass('absolute') - .removeClass('fixed-top'); - tra = 'translate3d(0, ' + (imgH + main1H - sTop - scH) + 'px, 0)'; - $nav1.css({ - transform: tra, - '-moz-transform': tra, - '-ms-transform': tra, - '-webkit-transform': tra - }); - } - } else { - if (!$nav1.hasClass('hide')) { - $nav1.addClass('hide'); - } - } -} - - -function scrollHandler() { - var scrollCall, - sTop = -this.y; - - var tra; - - theY = sTop; - if (sTop + winH > scH - 0.25 * $goodsContainer.height() - 50) { - if ($pre !== undefined) { - search({ - type: 'shop_id', - id: shopId, - brand: brand, - url: location.protocol + '//m.yohobuy.com/index/search/search', - nextPage: true - }); - } - } - - if (sTop + winH * 2 > scH) { - scrollCall = function() { - var translate = 'translate3d(0, ' + (-scH) + 'px, 0)'; - $nav1.css({ - transform: translate, - '-moz-transform': translate, - '-ms-transform': translate, - '-webkit-transform': translate - }); - }; - switch (viewType) { - case 2: - newData(scrollCall); - break; - case 3: - hotData(scrollCall); - break; - } - } - - if (sTop < imgH) { - if (!$nav1.hasClass('hide')) { - $nav1.addClass('hide'); - } - if (!$nav2.hasClass('hide')) { - $nav2.addClass('hide'); - } //滑动距离不到导航1 - } else if (sTop < imgH + main1oH + nav1H) { - if ($nav1.hasClass('hide')) { - $nav1.removeClass('hide'); - } - if (!$nav2.hasClass('hide')) { - $nav2.addClass('hide'); - } //滑动距离不到导航2 - - if (sTop < imgH + main1H) { - if (!$nav1.hasClass('fixed-top')) { - tra = 'translate3d(0, ' + (-scH) + 'px, 0)'; - $nav1.addClass('fixed-top') - .removeClass('absolute') - .css({ - transform: tra, - '-moz-transform': tra, - '-ms-transform': tra, - '-webkit-transform': tra - }); - } - } else if (sTop < imgH + main1H + nav1H) { - if ($('#home-page').is(':hidden')) { - return false; - } - if (!$nav1.hasClass('absolute')) { - $nav1.addClass('absolute') - .removeClass('fixed-top'); - } - tra = 'translate3d(0, ' + (imgH + main1H - sTop - scH) + 'px, 0)'; - $nav1.css({ - transform: tra, - '-moz-transform': tra, - '-ms-transform': tra, - '-webkit-transform': tra - }); - } - } else { - if ($('#home-page').is(':hidden')) { - return false; - } - - if (!$nav1.hasClass('hide')) { - $nav1.addClass('hide'); - } - if ($nav2.hasClass('hide')) { - $nav2.removeClass('hide'); - } - - if (sTop < scH) { - if (!$nav2.hasClass('absolute')) { - $nav2.addClass('absolute') - .removeClass('fixed-top'); - } - tra = 'translate3d(0, ' + (-scH) + 'px, 0)'; - $nav2.css({ - transform: tra, - '-moz-transform': tra, - '-ms-transform': tra, - '-webkit-transform': tra - }); - } - } -} - -document.addEventListener('touchmove', function(e) { - // sub classify不阻止默认事件 - if ($(e.target).closest('.sub-classify').length === 0) { - e.preventDefault(); - } -}, false); -/*if (!isIphone) { - return; -}*/ +var $ = require("jquery"), + IScroll = require("iscroll-probe"), + lazyLoad = require("lazyload"), + Swiper = require("swiper"), + bannerSwiper, + multiSwiper, + myScroll, + imgH, + nav1H, + main1H, + main1oH, + nav2H, + main2oH, + scH, + $nav1 = $('#pos-nav'), + $nav2 = $('#pos-list'), + sTop; +var tip = require("js/plugin/tip"), + filter = require("js/plugin/filter"), + loading = require("js/plugin/loading"); -//window ready 后重新refresh iscroll -$(window).ready(function() { - myScroll && myScroll.refresh(); - imgH = $('#nav-top').outerHeight(); - nav1H = $('#nav').outerHeight(); - main1H = $('#nav-main').height(); - main1oH = $('#nav-main').outerHeight(); - nav2H = $('#list-nav').outerHeight(); - main2oH = $('#goods-container').outerHeight(); +var $subNav = $('.home-sub-nav'), + $goodsContainer = $('#goods-container'), + $goodsChildren = $goodsContainer.children(), + $ngc = $($goodsChildren.get(0)), + $pgc = $($goodsChildren.get(1)), + $dgc = $($goodsChildren.get(2)), + shopId = $('input[name="shop_id"]').val(), + appVersion = $('input[name="app_version"]').val(), + brand = $('input[name="brand"]').val(), + coverChannel = $('input[name="coverChannel"]').val(), + favId = $('input[name="favId"]').val(); +var winH = $(window).height(), + noResult = '<p class="no-result">未找到相关搜索结果</p>'; - myScroll = new IScroll('#wrapper', { - probeType: 2, - mouseWheel: false, - click: true - }); +//默认筛选条件 +var defaultOpt = require("js/product/query-param"); - setTimeout(function() { - scH = $('#scroller').outerHeight(); - }, 500); +var $listNav = $('#list-nav'), + //导航数据信息 + navInfo = { + new: { + order: 1, + reload: true, + page: 1, + end: false + }, + hot: { + order: 1, + reload: true, + page: 1, + end: false + }, + newest: { + order: 1, + reload: true, + page: 0, + end: false + }, + price: { + order: 1, + reload: true, + page: 0, + end: false + }, + discount: { + order: 1, + reload: true, + page: 0, + end: false + } + }, + $pre = $listNav.find('.active'), //纪录进入筛选前的active项,初始为选中项 + searching; - myScroll.on('scroll', scrollHandler); +var viewType = 1, // 1-首页,2-上新,3-人气 + listCount = $('.category-list li').length, + listModValue = 4 - listCount % 4, + listIndex; - myScroll.on('scrollStart', function() { - // stop auto play when scroll - bannerSwiper && bannerSwiper.stopAutoplay(); - multiSwiper && multiSwiper.stopAutoplay(); +//焦点效果 +if ($('.banner-swiper').find('li').size() > 1) { + bannerSwiper = new Swiper('.banner-swiper', { + lazyLoading: true, + lazyLoadingInPrevNext: true, + loop: true, + autoplay: 3000, + autoplayDisableOnInteraction: false, + paginationClickable: true, + slideElement: 'li', + pagination: '.banner-top .pagination-inner' }); +} - myScroll.on('scrollEnd', function() { - - // start auto play when scroll end - bannerSwiper && bannerSwiper.startAutoplay(); - - multiSwiper && multiSwiper.startAutoplay(); - - $('#scroller').trigger('scroll'); - scrollHandler.bind(this)(); +if ($('.multi-browse').find('li').size() > 1) { + multiSwiper = new Swiper('.multi-browse', { + lazyLoading: true, + lazyLoadingInPrevNext: true, + lazyLoadingOnTransitionStart: true, + grabCursor: true, + slidesPerView: 'auto', + slideElement: 'li', + watchSlidesVisibility: true }); - lazyLoad($('img.lazy')); -}); - -function bindGoodThumbClick() { - $(document).trigger('rebindBpEvent'); } -function search(opt) { - var setting = {}, - ext, - att, - nav, navType, - page; - - if (searching) { - return; - } +//根据热门品类的个数来改变样式展示 +// +if ($('.category-list li').length % 4 !== 0) { + $('.category-list li:last-child').addClass('category-list-last-li'); +} - if (!opt.url) { - opt.url = location.protocol + '//m.yohobuy.com/index/search/search'; +if ($('.category-list li').length < 4) { + $('.category-list').addClass('category-list-top-board'); + $('.category-list').find('.buriedpoint').addClass('category-list-only-one-row'); +} else if ($('.category-list li').length >= 5) { + for (listIndex = listModValue; listIndex >= 0; listIndex--) { + $('.category-list li').eq(listCount - 4 + listIndex - 1).addClass('category-list-last-full-row'); } +} - $pre = $listNav.find('.active').eq(0); - - if (!opt.nextPage) { - - //筛选项变更则重置reload为true - for (att in navInfo) { - if (navInfo.hasOwnProperty(att)) { - navInfo[att].reload = true; - } - } - - $listNav.children('.active').removeClass('active'); - $pre.addClass('active'); - if (opt.hasOwnProperty('id')) { - switch (opt.type) { - case 'shop_id': - ext = { - shop_id: opt.id - }; - break; - case 'gender': - ext = { - gender: opt.id - }; +function getPageGoods(info) { + var nav, navType; - ext.coverChannel = opt.id; - break; - case 'brand': - ext = { - brand: opt.id - }; - break; - case 'sort': - ext = { - sort: opt.id - }; - break; - case 'color': - ext = { - color: opt.id - }; - break; - case 'size': - ext = { - size: opt.id - }; - break; - case 'price': - ext = { - price: opt.id - }; - break; - case 'discount': - ext = { - discount: opt.id - }; - break; - case 'ageLevel': - ext = { - age_level: opt.id - }; - break; - } - $.extend(defaultOpt, ext); //扩展筛选项 - } + if (searching) { + return; } - //导航类别 - if ($pre.hasClass('new')) { - navType = 'newest'; - } else if ($pre.hasClass('price')) { - navType = 'price'; - } else if ($pre.hasClass('discount')) { - navType = 'discount'; - } + navType = info.data.type; nav = navInfo[navType]; - page = nav.page + 1; - if (nav.reload) { - page = 1; - } else if (nav.end) { + //不需要重新加载并且数据请求结束 + if (nav.end) { - //不需要重新加载并且数据请求结束 return; } - //封面图,defaultOpt对象也有可能包含coverChannel,但defaultOpt优先级高 - if (coverChannel) { - setting.coverChannel = coverChannel; + if (info.data && coverChannel) { + info.data.coverChannel = coverChannel; } - $.extend(setting, defaultOpt, { - type: navType, - order: nav.order, - page: page + searching = true; + $.ajax({ + type: 'GET', + url: info.url, + data: info.data, + success: function(data) { + if (data === ' ') { + nav.end = true; + } + + info.callBack(data); + }, + error: function() { + tip.show('网络断开连接了~'); + searching = false; + } }); +} +function getParam(req) { if (brand) { - setting.brand = brand; + req.data.brand = brand; } if (shopId) { - setting.shop_id = shopId; + req.data.shop_id = shopId; } +} - +function newData(callback) { + var req = {}; - searching = true; - loading.showLoadingMask(); + req.url = location.protocol + '//m.yohobuy.com/index/search/search'; + req.data = { + type: 'new', + order: '1', + page: navInfo.new.page, + tagNew: '1' + }; - $.ajax({ - type: 'GET', - url: opt.url ? opt.url : '', - data: setting, - success: function(data) { - var $container, - num; + getParam(req); + + req.callBack = function(data) { + $('#new-arrival').append(data); + navInfo.new.page++; + myScroll.refresh(); + lazyLoad($('#new-arrival .lazy')); + scH = $('#scroller').outerHeight(); + searching = false; + callback && $.isFunction(callback) && callback(); + }; + getPageGoods(req); +} + +function hotData(callback) { + var req = {}; + + req.url = location.protocol + '//m.yohobuy.com/index/search/search'; + req.data = { + type: 'hot', + order: '1', + page: navInfo.hot.page, + showTag: '1' + }; + + getParam(req); + + req.callBack = function(data) { + $('#popularity').append(data); + navInfo.hot.page++; + // myScroll.refresh(); + lazyLoad($('#popularity .lazy')); + scH = $('#scroller').outerHeight(); + searching = false; + callback && $.isFunction(callback) && callback(); + }; + getPageGoods(req); +} - switch (navType) { - case 'newest': - $container = $ngc; - break; - case 'price': - $container = $pgc; - break; - case 'discount': - $container = $dgc; - break; - } +function tabChange(dom, index) { + var li = dom.eq(index); - if (data === ' ') { - nav.end = true; + dom.removeClass('active color'); + li.addClass('active color'); +} - if (nav.reload) { - $container.html(noResult); - } - } else { - if (nav.reload) { - $container.html(data); - lazyLoad($container.find('.lazy')); - } else { - num = $container.find('.good-info').length; - $container.append(data); - lazyLoad($container.find('.good-info:gt(' + (num - 1) + ') .lazy')); - } - } - scH = $('#scroller').outerHeight(); - nav.reload = false; - nav.page = page; - searching = false; - loading.hideLoadingMask(); +//首页导航 +(function(nav, posNav, main) { - window.rePosFooter(); + $(nav + ' li, ' + posNav + ' li').not('li.all-goods').on('touchstart', function() { - myScroll && myScroll.refresh(); - reNav1Pos(); + var index = $(this).index(), + activeTab = $(this).attr('tab'); - bindGoodThumbClick(); - }, - error: function() { - tip.show('网络断开连接了~'); - searching = false; - loading.hideLoadingMask(); + if (!$('.filter-mask').hasClass('hide')) { + return; } - }); -} + $nav1.removeClass('fixed-top'); + tabChange($(nav + ' li'), index); + tabChange($(posNav + ' li'), index); + $(main).hide(); + $('#' + activeTab).fadeIn(); + if (activeTab === 'new-arrival') { + newData(); + viewType = 2; + } else if (activeTab === 'popularity') { + hotData(); + viewType = 3; + } else if (activeTab === 'home-page') { + $nav1.removeClass('fixed-top absolute'); + $nav2.removeClass('fixed-top absolute'); + } + // myScroll && myScroll.refresh(); + scH = $('#scroller').outerHeight(); + if (!$nav1.hasClass('hide')) { + myScroll && myScroll.scrollTo(0, 0 - imgH); + } + $nav1.addClass('hide'); + }); +}('#nav', '#pos-nav', '.main')); -$listNav.bind('contextmenu', function(e) { - return false; -}); - -$subNav.on('touchend touchcancel', function(e) { - var $this = $(e.target).closest('li'), - cname, - nav, - navType, - $active; - var bpIdData = $this.attr('data-bp-id') || ''; +var theY; - e.preventDefault(); - $(document).trigger('shouldSendBpData', [bpIdData]); +/** + * 筛选后内容变化,导致nav1位置错掉,重新计算确保位置正确显示 + */ +function reNav1Pos() { + var sTop = theY ? theY : 0; + if (sTop < imgH + main1oH + nav1H) { + if ($nav1.hasClass('hide')) { + $nav1.removeClass('hide'); + } - if (typeof $this === 'undefined' || $this.length === 0) { - return; + if (sTop < imgH + main1H) { + tra = 'translate3d(0, ' + (-scH) + 'px, 0)'; + $nav1.addClass('fixed-top') + .removeClass('absolute') + .css({ + transform: tra, + '-moz-transform': tra, + '-ms-transform': tra, + '-webkit-transform': tra + }); + } else if (sTop < imgH + main1H + nav1H) { + if ($('#home-page').is(':hidden')) { + return false; + } + $nav1.addClass('absolute') + .removeClass('fixed-top'); + tra = 'translate3d(0, ' + (imgH + main1H - sTop - scH) + 'px, 0)'; + $nav1.css({ + transform: tra, + '-moz-transform': tra, + '-ms-transform': tra, + '-webkit-transform': tra + }); + } + } else { + if (!$nav1.hasClass('hide')) { + $nav1.addClass('hide'); + } } +} - if ($this.hasClass('filter')) { - //筛选面板切换状态 - if ($this.hasClass('active')) { - filter.hideFilter(); - myScroll && myScroll.enable(); - } else { - - myScroll && myScroll.scrollTo(0, -(imgH + main1oH + nav1H)); +function scrollHandler() { + var scrollCall, + sTop = -this.y; - theY = imgH + main1oH + nav1H; + var tra; - reNav1Pos(); + theY = sTop; + if (sTop + winH > scH - 0.25 * $goodsContainer.height() - 50) { + if ($pre !== undefined) { + search({ + type: 'shop_id', + id: shopId, + brand: brand, + url: location.protocol + '//m.yohobuy.com/index/search/search', + nextPage: true + }); + } + } - filter.showFilter(); + if (sTop + winH * 2 > scH) { + scrollCall = function() { + var translate = 'translate3d(0, ' + (-scH) + 'px, 0)'; + $nav1.css({ + transform: translate, + '-moz-transform': translate, + '-ms-transform': translate, + '-webkit-transform': translate + }); + }; + switch (viewType) { + case 2: + newData(scrollCall); + break; + case 3: + hotData(scrollCall); + break; + } + } - if ($this.closest('.pos-list').length > 0) { - $('.filter-mask').addClass('call-by-fix').css('top', ''); - } else { - $('.filter-mask').removeClass('call-by-fix').css('top', $this.offset().top + nav1H); - } + if (sTop < imgH) { + if (!$nav1.hasClass('hide')) { + $nav1.addClass('hide'); + } + if (!$nav2.hasClass('hide')) { + $nav2.addClass('hide'); + } //滑动距离不到导航1 + } else if (sTop < imgH + main1oH + nav1H) { + if ($nav1.hasClass('hide')) { + $nav1.removeClass('hide'); + } + if (!$nav2.hasClass('hide')) { + $nav2.addClass('hide'); + } //滑动距离不到导航2 - myScroll && myScroll.disable(); + if (sTop < imgH + main1H) { + if (!$nav1.hasClass('fixed-top')) { + tra = 'translate3d(0, ' + (-scH) + 'px, 0)'; + $nav1.addClass('fixed-top') + .removeClass('absolute') + .css({ + transform: tra, + '-moz-transform': tra, + '-ms-transform': tra, + '-webkit-transform': tra + }); + } + } else if (sTop < imgH + main1H + nav1H) { + if ($('#home-page').is(':hidden')) { + return false; + } + if (!$nav1.hasClass('absolute')) { + $nav1.addClass('absolute') + .removeClass('fixed-top'); + } + tra = 'translate3d(0, ' + (imgH + main1H - sTop - scH) + 'px, 0)'; + $nav1.css({ + transform: tra, + '-moz-transform': tra, + '-ms-transform': tra, + '-webkit-transform': tra + }); } } else { - if ($this.hasClass('new')) { - cname = '.new'; - navType = 'newest'; - } else if ($this.hasClass('price')) { - cname = '.price'; - navType = 'price'; - } else if ($this.hasClass('discount')) { - cname = '.discount'; - navType = 'discount'; + if ($('#home-page').is(':hidden')) { + return false; + } + + if (!$nav1.hasClass('hide')) { + $nav1.addClass('hide'); + } + if ($nav2.hasClass('hide')) { + $nav2.removeClass('hide'); + } + + if (sTop < scH) { + if (!$nav2.hasClass('absolute')) { + $nav2.addClass('absolute') + .removeClass('fixed-top'); + } + tra = 'translate3d(0, ' + (-scH) + 'px, 0)'; + $nav2.css({ + transform: tra, + '-moz-transform': tra, + '-ms-transform': tra, + '-webkit-transform': tra + }); } + } +} - myScroll && myScroll.enable(); - - nav = navInfo[navType]; +document.addEventListener('touchmove', function(e) { + // sub classify不阻止默认事件 + if ($(e.target).closest('.sub-classify').length === 0) { + e.preventDefault(); + } +}, false); - if ($this.hasClass('active')) { +/*if (!isIphone) { + return; +}*/ - //最新无排序切换 - if ($this.hasClass('new')) { - return; - } - if ($this.hasClass('price') || $this.hasClass('discount')) { - $this = $subNav.find(cname); +//window ready 后重新refresh iscroll +$(window).ready(function() { + myScroll && myScroll.refresh(); + imgH = $('#nav-top').outerHeight(); + nav1H = $('#nav').outerHeight(); + main1H = $('#nav-main').height(); + main1oH = $('#nav-main').outerHeight(); + nav2H = $('#list-nav').outerHeight(); + main2oH = $('#goods-container').outerHeight(); - // 价格/折扣切换排序状态 - $this.find('.icon > .iconfont').toggleClass('cur'); - nav.reload = true; //重置reload,HTML会被替换为逆序的HTML - nav.order = nav.order === 0 ? 1 : 0; //切换排序 - $goodsContainer.children('.container:not(.hide)').addClass('hide'); + myScroll = new IScroll('#wrapper', { + probeType: 2, + mouseWheel: false, + click: true + }); - switch (navType) { - case 'newest': - $ngc.removeClass('hide'); - break; + setTimeout(function() { + scH = $('#scroller').outerHeight(); + }, 500); - case 'price': - $pgc.removeClass('hide'); - break; - case 'discount': - $dgc.removeClass('hide'); - break; - } + myScroll.on('scroll', scrollHandler); - } - } else { - $active = $subNav.find('.active'); + myScroll.on('scrollStart', function() { - if ($active.hasClass('filter')) { + // stop auto play when scroll + bannerSwiper && bannerSwiper.stopAutoplay(); - //若之前active项为筛选,则隐藏筛选面板 - filter.hideFilter(); - } else { + multiSwiper && multiSwiper.stopAutoplay(); + }); - //切换container显示 - $goodsContainer.children('.container:not(.hide)').addClass('hide'); + myScroll.on('scrollEnd', function() { - switch (navType) { - case 'newest': - $ngc.removeClass('hide'); - break; + // start auto play when scroll end + bannerSwiper && bannerSwiper.startAutoplay(); - case 'price': - $pgc.removeClass('hide'); - break; + multiSwiper && multiSwiper.startAutoplay(); - case 'discount': - $dgc.removeClass('hide'); - break; - } + $('#scroller').trigger('scroll'); + scrollHandler.bind(this)(); + }); + lazyLoad($('img.lazy')); +}); - theY = imgH + main1oH + nav1H; - reNav1Pos(); - } +function bindGoodThumbClick() { + $(document).trigger('rebindBpEvent'); +} - $subNav.children().removeClass('active'); - $subNav.find(cname).addClass('active'); - } +function search(opt) { + var setting = {}, + ext, + att, + nav, navType, + page; - if (nav.reload) { - search({ - type: 'shop_id', - id: shopId, - brand: brand, - url: location.protocol + '//m.yohobuy.com/index/search/search', - nextPage: false - }); - } + if (searching) { + return; } - - e.stopPropagation(); -}); + if (!opt.url) { + opt.url = location.protocol + '//m.yohobuy.com/index/search/search'; + } -filter.initFilter({ - fCbFn: function(option) { - search(option); - myScroll && myScroll.enable(); - }, - hCbFn: function() { + $pre = $listNav.find('.active').eq(0); - //切换active状态到$pre上 - $pre.addClass('active'); - $pre.siblings('.filter').removeClass('active'); + if (!opt.nextPage) { - myScroll && myScroll.enable(); - }, - missStatus: true -}); + //筛选项变更则重置reload为true + for (att in navInfo) { + if (navInfo.hasOwnProperty(att)) { + navInfo[att].reload = true; + } + } -$listNav.on('touchstart', 'li', function(e) { - $(this).addClass('bytouch'); -}).on('touchend touchcancel', function() { - $listNav.find('li').removeClass('bytouch'); - // myScroll && myScroll.refresh(); -}); + $listNav.children('.active').removeClass('active'); + $pre.addClass('active'); + if (opt.hasOwnProperty('id')) { + switch (opt.type) { + case 'shop_id': + ext = { + shop_id: opt.id + }; + break; + case 'gender': + ext = { + gender: opt.id + }; -$nav2.on('touchstart', 'li', function(e) { - $(this).addClass('bytouch'); -}).on('touchend touchcancel', function() { - $nav2.find('li').removeClass('bytouch'); - // myScroll && myScroll.refresh(); -}); + ext.coverChannel = opt.id; + break; + case 'brand': + ext = { + brand: opt.id + }; + break; + case 'sort': + ext = { + sort: opt.id + }; + break; + case 'color': + ext = { + color: opt.id + }; + break; + case 'size': + ext = { + size: opt.id + }; + break; + case 'price': + ext = { + price: opt.id + }; + break; + case 'discount': + ext = { + discount: opt.id + }; + break; + case 'ageLevel': + ext = { + age_level: opt.id + }; + break; + } + $.extend(defaultOpt, ext); //扩展筛选项 + } + } -//底部导航点击 -function fotterClick(group) { - $(group + ' li').on('touchstart', function() { - $('.sub-group').addClass('hide'); - $(this).find('.sub-group').removeClass('hide'); - }); -} + //导航类别 + if ($pre.hasClass('new')) { + navType = 'newest'; + } else if ($pre.hasClass('price')) { + navType = 'price'; + } else if ($pre.hasClass('discount')) { + navType = 'discount'; + } + nav = navInfo[navType]; -fotterClick('.shop-foot-wrapper'); + page = nav.page + 1; + if (nav.reload) { + page = 1; + } else if (nav.end) { -function stopPropagation(e) { - if (e.stopPropagation) { - e.stopPropagation(); - } else { - e.cancelBubble = true; + //不需要重新加载并且数据请求结束 + return; } -} - -$(document).bind('touchstart', function() { - $('.sub-group').addClass('hide'); -}); -$('.shop-foot-wrapper').bind('touchstart', function(e) { - stopPropagation(e); -}); + //封面图,defaultOpt对象也有可能包含coverChannel,但defaultOpt优先级高 + if (coverChannel) { + setting.coverChannel = coverChannel; + } -//收藏 -function postCollect(info) { - var url = ''; + $.extend(setting, defaultOpt, { + type: navType, + order: nav.order, + page: page + }); - if (searching) { - return; + if (brand) { + setting.brand = brand; + } + + if (shopId) { + setting.shop_id = shopId; } + + + searching = true; + loading.showLoadingMask(); $.ajax({ - method: 'get', - url: location.protocol + '//m.yohobuy.com' + info.url, - data: info.data, - xhrFields: { - withCredentials: true - }, + type: 'GET', + url: opt.url ? opt.url : '', + data: setting, success: function(data) { + var $container, + num; - if (data.code === 200) { - if ($('#collect').hasClass('alreadyCollect')) { - $('#collect').attr('class', 'notCollect'); - tip.show('取消收藏成功'); - } else { - $('#collect').attr('class', 'alreadyCollect'); - tip.show('收藏成功'); - } + switch (navType) { + case 'newest': + $container = $ngc; + break; + case 'price': + $container = $pgc; + break; + case 'discount': + $container = $dgc; + break; } - if (data.code === 401) { - // url = 'http://m.yohobuy.com/signin.html?refer=' + encodeURIComponent(location.href) + '&openby:yohobuy='; - // url += JSON.stringify({"action": "go.weblogin", "params": { "jumpurl": { "url": 'http://m.yohobuy.com' + location.pathname, "param": info.data }, "requesturl": { "param": {}, "url": "" }, "priority": "N" } }); - url = data.url; - if ($('#jump-login').length <= 0) { - $('body').append('<a href=\'' + url + '\'><span id="jump-login"><span></a>'); + if (data === ' ') { + nav.end = true; + + if (nav.reload) { + $container.html(noResult); + } + } else { + if (nav.reload) { + $container.html(data); + lazyLoad($container.find('.lazy')); + } else { + num = $container.find('.good-info').length; + $container.append(data); + lazyLoad($container.find('.good-info:gt(' + (num - 1) + ') .lazy')); } - $('#jump-login').click(); } - setTimeout(function() { - // myScroll.refresh(); - scH = $('#scroller').outerHeight(); - }, 500); + scH = $('#scroller').outerHeight(); + + nav.reload = false; + nav.page = page; + searching = false; + loading.hideLoadingMask(); + + window.rePosFooter(); + + myScroll && myScroll.refresh(); + reNav1Pos(); + + bindGoodThumbClick(); }, error: function() { tip.show('网络断开连接了~'); searching = false; + loading.hideLoadingMask(); } }); } -function collectShop() { - var qew = {}; - - qew.url = '/product/index/shopFav'; - qew.data = { - shop_id: favId ? favId : shopId, - app_version: appVersion - }; - postCollect(qew); -} - -function cancelShop() { - var qew = {}; - - qew.url = '/product/index/cancelShopFav'; - qew.data = { - shop_id: favId ? favId : shopId, - app_version: appVersion - }; - postCollect(qew); -} - -$('#collect').on('touchstart', function(e) { - if ($('#collect').hasClass('alreadyCollect')) { - cancelShop(); - } else { - collectShop(); - } -}); +$listNav.bind('contextmenu', function(e) { + return false; }); -define("js/me/entry", ["jquery","hammer","lazyload","swiper","handlebars","source-map","mlellipsis","index"], function(require, exports, module){ -/** - * 个人中心js打包入口文件 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/11/10 - */ - -require("js/me/order"); -require("js/me/order-detail"); -require("js/me/fav"); -require("js/me/suggest"); -require("js/me/index"); -require("js/me/coupons"); -require("js/me/online-service"); -require("js/me/address"); -require("js/me/suggest"); -require("js/me/browse-record"); -require("js/me/address-act"); -require("js/me/logistic"); -require("js/me/pay"); -require("js/me/personal-details"); -require("js/me/currency"); -require("js/me/currency-new"); -require("js/me/message"); -require("js/me/message-detail"); -require("js/me/address-modify"); -}); -define("js/me/order", ["jquery","hammer","lazyload","swiper","handlebars","source-map","index"], function(require, exports, module){ -/** - * 个人中心--我的订单 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/11/10 - */ +$subNav.on('touchend touchcancel', function(e) { + var $this = $(e.target).closest('li'), + cname, + nav, + navType, + $active; + var bpIdData = $this.attr('data-bp-id') || ''; -var $ = require("jquery"), - Hammer = require("hammer"), - lazyLoad = require("lazyload"), - tip = require("js/plugin/tip"), - Swiper = require("swiper"); + e.preventDefault(); + $(document).trigger('shouldSendBpData', [bpIdData]); -var $navLi = $('#order-nav > li'), - $orderContainer = $('#order-container'); + if (typeof $this === 'undefined' || $this.length === 0) { + return; + } -var $curContainer = $orderContainer.children('.orders:not(.hide)');//保存当前显示的order-container + if ($this.hasClass('filter')) { -var winH = $(window).height(); + //筛选面板切换状态 + if ($this.hasClass('active')) { + filter.hideFilter(); + myScroll && myScroll.enable(); + } else { + + myScroll && myScroll.scrollTo(0, -(imgH + main1oH + nav1H)); -var activeType = $navLi.filter('.active').data('type'); //当前active的项的index + theY = imgH + main1oH + nav1H; -var order = { - page: 0, - end: false -}; + reNav1Pos(); -var inAjax = false; + filter.showFilter(); -var loading = require("js/plugin/loading"); + if ($this.closest('.pos-list').length > 0) { + $('.filter-mask').addClass('call-by-fix').css('top', ''); + } else { + $('.filter-mask').removeClass('call-by-fix').css('top', $this.offset().top + nav1H); + } -var dialog = require("js/me/dialog"); - -var orderHammer, - $reaMask = $('.reason-mask'), - reasonSwiper; - -// 减少计时 -function downCount(item) { - var hoursItem = item.find('.hours'); - - var difference = hoursItem.text(),// difference of dates - interval; - /** - * Main downCount function that calculates everything - */ - function countdown() { - - // basic math variables - var _second = 1000, - _minute = _second * 60, - _hour = _minute * 60, - _day = _hour * 24, - hours, - minutes, - seconds; - - // calculate dates - hours = Math.floor((difference % _day) / _hour), - minutes = Math.floor((difference % _hour) / _minute), - seconds = Math.floor((difference % _minute) / _second); - - // fix dates so that it will show two digets - hours = (String(hours).length >= 2) ? hours : '0' + hours; - minutes = (String(minutes).length >= 2) ? minutes : '0' + minutes; - seconds = (String(seconds).length >= 2) ? seconds : '0' + seconds; - - // set to DOM - item.removeClass('hide'); - if (hours === '00') { - hoursItem.text('剩余' + minutes + ':' + seconds); - } else { - hoursItem.text('剩余' + hours + ':' + minutes + ':' + seconds); + myScroll && myScroll.disable(); } - - difference -= 1000; - - if (difference <= 0) { - clearInterval(interval);// stop timer - return; + } else { + if ($this.hasClass('new')) { + cname = '.new'; + navType = 'newest'; + } else if ($this.hasClass('price')) { + cname = '.price'; + navType = 'price'; + } else if ($this.hasClass('discount')) { + cname = '.discount'; + navType = 'discount'; } - } - if (difference !== '' && difference > 0) { - interval = setInterval(countdown, 1000);// start - } -} -// 初始化时间 -function setTime() { - - $('.order').each(function() { - var item = $(this).find('.count-down'); + myScroll && myScroll.enable(); - if (!$(this).hasClass('hide')) { - downCount(item); - } - }); -} + nav = navInfo[navType]; -//加载订单 -function getOrders(option) { - var opt = { - type: activeType, - page: order.page + 1 - }; + if ($this.hasClass('active')) { - var show = option && !option.noLoadingMask; + //最新无排序切换 + if ($this.hasClass('new')) { + return; + } - if (inAjax) { - return; - } + if ($this.hasClass('price') || $this.hasClass('discount')) { + $this = $subNav.find(cname); - inAjax = true; - show && loading.showLoadingMask(); + // 价格/折扣切换排序状态 + $this.find('.icon > .iconfont').toggleClass('cur'); + nav.reload = true; //重置reload,HTML会被替换为逆序的HTML + nav.order = nav.order === 0 ? 1 : 0; //切换排序 - $.ajax({ - type: 'GET', - url: '/home/getOrders', - data: opt, - success: function(data) { - var num; + $goodsContainer.children('.container:not(.hide)').addClass('hide'); - if (data !== ' ') { - order.page = opt.page; + switch (navType) { + case 'newest': + $ngc.removeClass('hide'); + break; - if (opt.page === 1) { - $curContainer.html(data); - lazyLoad($curContainer.find('.lazy'), { - try_again_css: 'order-failure' - }); - } else { - num = $curContainer.children('.order').length; - $curContainer.append(data); + case 'price': + $pgc.removeClass('hide'); + break; - //lazyload - lazyLoad($curContainer.children('.order:gt(' + (num - 1) + ')').find('.lazy'), { - try_again_css: 'order-failure' - }); + case 'discount': + $dgc.removeClass('hide'); + break; } - window.rePosFooter(); //重新计算底部位置 - } else { - order.end = true; } + } else { + $active = $subNav.find('.active'); - inAjax = false; - show && loading.hideLoadingMask(); - setTime(); - } - }); -} - -lazyLoad({ - try_again_css: 'order-failure' -}); - -//初始化导航 -(function() { - var liCount = $navLi.length; - - //默认4个导航项 - if (liCount === 4) { - return; - } - - $navLi.width(100 / liCount + '%'); -}()); - -loading.init($('body')); //满屏loading - -//点击订单区域跳转订单详情页 -orderHammer = new Hammer(document.getElementById('order-container')); -orderHammer.on('tap', function(e) { - var $cur = $(e.target), - $order, - id, - url; - - if ($cur.closest('.locHref').length > 0) { - return; - } - - $order = $cur.closest('.order'); - id = $order.data('id'); + if ($active.hasClass('filter')) { - $reaMask.data('orderId', id); + //若之前active项为筛选,则隐藏筛选面板 + filter.hideFilter(); + } else { - if ($cur.closest('.del').length > 0) { + //切换container显示 + $goodsContainer.children('.container:not(.hide)').addClass('hide'); - //Order delete - dialog.showDialog({ - dialogText: '确定删除订单吗?', - hasFooter: { - leftBtnText: '取消', - rightBtnText: '确定' - } - }, function() { - $.ajax({ - type: 'GET', - url: '/home/delOrder', - data: { - id: id - }, - success: function(data) { - dialog.hideDialog(); - if (data.message) { - tip.show(data.message); - } - if (data.code === 200) { + switch (navType) { + case 'newest': + $ngc.removeClass('hide'); + break; - //删除订单页面刷新 - window.location.reload(); - } - }, - error: function() { - tip.show('取消订单失败'); + case 'price': + $pgc.removeClass('hide'); + break; + + case 'discount': + $dgc.removeClass('hide'); + break; } - }); - }); - } else if ($cur.closest('.cancel').length > 0) { - $reaMask.css('visibility', 'visible'); - } else if ($cur.closest('.order-goods').length > 0) { - - //Location to order detail - url = $order.data('href'); - location.href = url; - } else if ($cur.closest('.rebuy').length > 0) { - $.ajax({ - type: 'GET', - url: '/home/readd', - data: { - orderCode: id - }, - success: function(res) { - tip.show(res.message); - location.href = '/cart/index/index'; - }, - error: function(res) { - tip.show(res.message); + + theY = imgH + main1oH + nav1H; + reNav1Pos(); } - }); - } -}); -function scrollHandler() { - if (order.end === false && $(window).scrollTop() + winH > - $(document).height() - 0.25 * $orderContainer.height()) { + $subNav.children().removeClass('active'); + $subNav.find(cname).addClass('active'); + } - //下拉请求时不显示mask - getOrders({ - noLoadingMask: true - }); + if (nav.reload) { + search({ + type: 'shop_id', + id: shopId, + brand: brand, + url: location.protocol + '//m.yohobuy.com/index/search/search', + nextPage: false + }); + } } -} -//srcoll to load more -$(window).scroll(function() { - window.requestAnimationFrame(scrollHandler); + + e.stopPropagation(); }); -//初始化请求第一页数据 -getOrders(); - -$(function() { - reasonSwiper = new Swiper('.box-main', { - direction: 'vertical', - slidesPerView: 5, - centeredSlides: true, - initialSlide: 0, - onSlideChangeStart: function(reasonSwiper) { - var activeIndex = reasonSwiper.activeIndex, - slides = reasonSwiper.slides, - i = 0; - - if (slides.length !== 1) { - if (activeIndex === 0) { - for (i = 1; i < slides.length; i++) { - $(slides[i]).css('transform', ''); - } - } else if (activeIndex === slides.length - 1) { - for (i = 0; i < activeIndex; i++) { - $(slides[i]).css('transform', 'rotateX(' + (30 + (activeIndex - i) * 12) + 'deg)'); - } - } else { - for (i = 0; i < activeIndex; i++) { - $(slides[i]).css('transform', 'rotateX(' + (30 + (activeIndex - i) * 12) + 'deg)'); - } - for (i = activeIndex + 1; i < slides.length; i++) { - $(slides[i]).css('transform', ''); - } - } - } - $(slides[activeIndex]).css('transform', ''); - } - }); -}); +filter.initFilter({ + fCbFn: function(option) { + search(option); + myScroll && myScroll.enable(); + }, + hCbFn: function() { -$reaMask.find('.box-cmp').on('touchend', function(e) { - var selSolid = reasonSwiper.slides[reasonSwiper.activeIndex], - reason = $(selSolid).text(), - reasonId = $(selSolid).data('reasonId'); + //切换active状态到$pre上 + $pre.addClass('active'); + $pre.siblings('.filter').removeClass('active'); - $.ajax({ - type: 'GET', - url: '/home/cancelOrder', - data: { - id: $reaMask.data('orderId'), - reason: reason, - reasonId: reasonId - } - }).then(function(res) { - $reaMask.fadeOut(); - if ($.type(res) !== 'object') { - return; - } - if (res.message) { - tip.show(res.message); - } - setTimeout(function() { - window.location.href = '/home/orders'; - }, 2000); - }).fail(function() { - tip.show('网络错误'); - }); + myScroll && myScroll.enable(); + }, + missStatus: true }); -$reaMask.on('touchend', function(event) { - if (event.target.className !== 'reason-mask') { - return false; - } - - $reaMask.css('visibility', 'hidden'); - event.stopPropagation(); +$listNav.on('touchstart', 'li', function(e) { + $(this).addClass('bytouch'); +}).on('touchend touchcancel', function() { + $listNav.find('li').removeClass('bytouch'); + // myScroll && myScroll.refresh(); }); + +$nav2.on('touchstart', 'li', function(e) { + $(this).addClass('bytouch'); +}).on('touchend touchcancel', function() { + $nav2.find('li').removeClass('bytouch'); + // myScroll && myScroll.refresh(); }); -define("js/me/order-detail", ["jquery","lazyload","hammer","handlebars","source-map","swiper","index"], function(require, exports, module){ -/** - * 订单详情页 - * @author: xuqi<qi.xu@yoho.cn> - * @date: 2015/11/16 - */ -var $ = require("jquery"), - lazyLoad = require("lazyload"), - Hammer = require("hammer"), - dialog = require("js/me/dialog"), - tip = require("js/plugin/tip"), - orderId = $('#order-detail').data('id'), - $countDownHours = $('.hours'), - $countdownContainer = $('.count-down'), - Swiper = require("swiper"), - $ownerInfo = $('.owner-info'), - $reaMask = $('.reason-mask'), - reasonSwiper, - optHammer; - -lazyLoad({ - try_again_css: 'order-failure' -}); - -function downCount(options) { - - var difference = options,// difference of dates - interval; - /** - * Main downCount function that calculates everything - */ - function countdown() { - - // basic math variables - var _second = 1000, - _minute = _second * 60, - _hour = _minute * 60, - _day = _hour * 24, - hours, - minutes, - seconds; - - // calculate dates - hours = Math.floor((difference % _day) / _hour), - minutes = Math.floor((difference % _hour) / _minute), - seconds = Math.floor((difference % _minute) / _second); - - // fix dates so that it will show two digets - hours = (String(hours).length >= 2) ? hours : '0' + hours; - minutes = (String(minutes).length >= 2) ? minutes : '0' + minutes; - seconds = (String(seconds).length >= 2) ? seconds : '0' + seconds; - - // set to DOM - $countdownContainer.removeClass('hide'); - if (hours === '00') { - $countDownHours.text('剩余' + minutes + ':' + seconds); - } else { - $countDownHours.text('剩余' + hours + ':' + minutes + ':' + seconds); - } +//底部导航点击 +function fotterClick(group) { + $(group + ' li').on('touchstart', function() { + $('.sub-group').addClass('hide'); + $(this).find('.sub-group').removeClass('hide'); + }); +} - difference -= 1000; +fotterClick('.shop-foot-wrapper'); - if (difference < 0) { - clearInterval(interval);// stop timer - return; - } - } - if (difference !== '' && difference > 0) { - interval = setInterval(countdown, 1000);// start +function stopPropagation(e) { + if (e.stopPropagation) { + e.stopPropagation(); + } else { + e.cancelBubble = true; } } -downCount($countDownHours.text()); +$(document).bind('touchstart', function() { + $('.sub-group').addClass('hide'); +}); -//订单删除 -optHammer = new Hammer(document.getElementsByClassName('opt')[0]); -optHammer.on('tap', function(e) { - var $cur = $(e.target); +$('.shop-foot-wrapper').bind('touchstart', function(e) { + stopPropagation(e); +}); - if ($cur.hasClass('btn-del')) { +//收藏 +function postCollect(info) { + var url = ''; - //删除订单 - dialog.showDialog({ - dialogText: '确定删除订单吗?', - hasFooter: { - leftBtnText: '取消', - rightBtnText: '确定' - } - }, function() { - $.ajax({ - type: 'GET', - url: '/home/delOrder', - data: { - id: orderId - } - }).then(function(res) { - $('#dialog-wrapper').hide(); - if ($.type(res) !== 'object') { - return; - } - if (res.message) { - tip.show(res.message); - } - setTimeout(function() { - window.location.href = '/home/orders'; - }, 2000); - }).fail(function() { - tip.show('网络错误'); - }); - }); - } else if ($cur.hasClass('btn-cancel')) { - $reaMask.css('visibility', 'visible'); - } else if ($cur.hasClass('btn-rebuy')) { - $.ajax({ - type: 'GET', - url: '/home/readd', - data: { - orderCode: orderId - }, - success: function(res) { - tip.show(res.message); - location.href = '/cart/index/index'; - }, - error: function(res) { - tip.show(res.message); - } - }); + if (searching) { + return; } -}); + searching = true; -if ($ownerInfo.data('changeable') === true) { - $ownerInfo.find('.rest').show(); - $ownerInfo.on('touchend', function() { - location.href = $ownerInfo.data('url'); - }); -} + $.ajax({ + method: 'get', + url: location.protocol + '//m.yohobuy.com' + info.url, + data: info.data, + xhrFields: { + withCredentials: true + }, + success: function(data) { -$(function() { - reasonSwiper = new Swiper('.box-main', { - initialSlide: 0, - centeredSlides: true, - slidesPerView: 5, - direction: 'vertical', - onSlideChangeStart: function(reasonSwiper) { - var activeIndex = reasonSwiper.activeIndex, - slides = reasonSwiper.slides, - i = 0; - - if (slides.length !== 1) { - if (activeIndex === 0) { - for (i = 1; i < slides.length; i++) { - $(slides[i]).css('transform', ''); - } - } else if (activeIndex === slides.length - 1) { - for (i = 0; i < activeIndex; i++) { - $(slides[i]).css('transform', 'rotateX(' + (30 + (activeIndex - i) * 12) + 'deg)'); - } + if (data.code === 200) { + if ($('#collect').hasClass('alreadyCollect')) { + $('#collect').attr('class', 'notCollect'); + tip.show('取消收藏成功'); } else { - for (i = 0; i < activeIndex; i++) { - $(slides[i]).css('transform', 'rotateX(' + (30 + (activeIndex - i) * 12) + 'deg)'); - } - for (i = activeIndex + 1; i < slides.length; i++) { - $(slides[i]).css('transform', ''); - } + $('#collect').attr('class', 'alreadyCollect'); + tip.show('收藏成功'); } } - $(slides[activeIndex]).css('transform', ''); - } - }); -}); -$reaMask.find('.box-cmp').on('touchend', function(e) { - var selSolid = reasonSwiper.slides[reasonSwiper.activeIndex], - reason = $(selSolid).text(), - reasonId = $(selSolid).data('reasonId'); + if (data.code === 401) { + // url = 'http://m.yohobuy.com/signin.html?refer=' + encodeURIComponent(location.href) + '&openby:yohobuy='; + // url += JSON.stringify({"action": "go.weblogin", "params": { "jumpurl": { "url": 'http://m.yohobuy.com' + location.pathname, "param": info.data }, "requesturl": { "param": {}, "url": "" }, "priority": "N" } }); + url = data.url; + if ($('#jump-login').length <= 0) { + $('body').append('<a href=\'' + url + '\'><span id="jump-login"><span></a>'); + } + $('#jump-login').click(); + } - $.ajax({ - type: 'GET', - url: '/home/cancelOrder', - data: { - id: orderId, - reason: reason, - reasonId: reasonId - } - }).then(function(res) { - $reaMask.fadeOut(); - if ($.type(res) !== 'object') { - return; - } - if (res.message) { - tip.show(res.message); + setTimeout(function() { + // myScroll.refresh(); + scH = $('#scroller').outerHeight(); + }, 500); + searching = false; + }, + error: function() { + tip.show('网络断开连接了~'); + searching = false; } - setTimeout(function() { - window.location.href = '/home/orders'; - }, 2000); - }).fail(function() { - tip.show('网络错误'); }); -}); +} + +function collectShop() { + var qew = {}; + + qew.url = '/product/index/shopFav'; + qew.data = { + shop_id: favId ? favId : shopId, + app_version: appVersion + }; + postCollect(qew); +} + +function cancelShop() { + var qew = {}; + + qew.url = '/product/index/cancelShopFav'; + qew.data = { + shop_id: favId ? favId : shopId, + app_version: appVersion + }; + postCollect(qew); +} -$reaMask.on('touchend', function(event) { - if (event.target.className !== 'reason-mask') { - return false; +$('#collect').on('touchstart', function(e) { + if ($('#collect').hasClass('alreadyCollect')) { + cancelShop(); + } else { + collectShop(); } +}); + +}); +define("js/me/entry", ["jquery","hammer","lazyload","swiper","handlebars","source-map","mlellipsis","index"], function(require, exports, module){ +/** + * 个人中心js打包入口文件 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/11/10 + */ + +require("js/me/order"); +require("js/me/order-detail"); +require("js/me/fav"); +require("js/me/suggest"); +require("js/me/index"); +require("js/me/coupons"); +require("js/me/online-service"); +require("js/me/address"); +require("js/me/suggest"); +require("js/me/browse-record"); +require("js/me/address-act"); +require("js/me/logistic"); +require("js/me/pay"); +require("js/me/personal-details"); +require("js/me/currency"); +require("js/me/currency-new"); +require("js/me/message"); +require("js/me/message-detail"); +require("js/me/address-modify"); - $reaMask.css('visibility', 'hidden'); - event.stopPropagation(); }); +define("js/me/order", ["jquery","hammer","lazyload","swiper","handlebars","source-map","index"], function(require, exports, module){ +/** + * 个人中心--我的订单 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/11/10 + */ + +var $ = require("jquery"), + Hammer = require("hammer"), + lazyLoad = require("lazyload"), + tip = require("js/plugin/tip"), + Swiper = require("swiper"); + +var $navLi = $('#order-nav > li'), + $orderContainer = $('#order-container'); + +var $curContainer = $orderContainer.children('.orders:not(.hide)');//保存当前显示的order-container + +var winH = $(window).height(); + +var activeType = $navLi.filter('.active').data('type'); //当前active的项的index + +var order = { + page: 0, + end: false +}; + +var inAjax = false; + +var loading = require("js/plugin/loading"); + +var dialog = require("js/me/dialog"); + +var orderHammer, + $reaMask = $('.reason-mask'), + reasonSwiper; + +// 减少计时 +function downCount(item) { + var hoursItem = item.find('.hours'); + + var difference = hoursItem.text(),// difference of dates + interval; + /** + * Main downCount function that calculates everything + */ + function countdown() { + + // basic math variables + var _second = 1000, + _minute = _second * 60, + _hour = _minute * 60, + _day = _hour * 24, + hours, + minutes, + seconds; + + // calculate dates + hours = Math.floor((difference % _day) / _hour), + minutes = Math.floor((difference % _hour) / _minute), + seconds = Math.floor((difference % _minute) / _second); + + // fix dates so that it will show two digets + hours = (String(hours).length >= 2) ? hours : '0' + hours; + minutes = (String(minutes).length >= 2) ? minutes : '0' + minutes; + seconds = (String(seconds).length >= 2) ? seconds : '0' + seconds; + + // set to DOM + item.removeClass('hide'); + if (hours === '00') { + hoursItem.text('剩余' + minutes + ':' + seconds); + } else { + hoursItem.text('剩余' + hours + ':' + minutes + ':' + seconds); + } + + difference -= 1000; + + if (difference <= 0) { + clearInterval(interval);// stop timer + return; + } + } + if (difference !== '' && difference > 0) { + interval = setInterval(countdown, 1000);// start + } +} + +// 初始化时间 +function setTime() { + + $('.order').each(function() { + var item = $(this).find('.count-down'); + + if (!$(this).hasClass('hide')) { + downCount(item); + } + }); +} + +//加载订单 +function getOrders(option) { + var opt = { + type: activeType, + page: order.page + 1 + }; + + var show = option && !option.noLoadingMask; + + if (inAjax) { + return; + } + + inAjax = true; + show && loading.showLoadingMask(); + + $.ajax({ + type: 'GET', + url: '/home/getOrders', + data: opt, + success: function(data) { + var num; + + if (data !== ' ') { + order.page = opt.page; + + if (opt.page === 1) { + $curContainer.html(data); + lazyLoad($curContainer.find('.lazy'), { + try_again_css: 'order-failure' + }); + } else { + num = $curContainer.children('.order').length; + $curContainer.append(data); + + //lazyload + lazyLoad($curContainer.children('.order:gt(' + (num - 1) + ')').find('.lazy'), { + try_again_css: 'order-failure' + }); + } + + window.rePosFooter(); //重新计算底部位置 + } else { + order.end = true; + } + + inAjax = false; + show && loading.hideLoadingMask(); + setTime(); + } + }); +} + +lazyLoad({ + try_again_css: 'order-failure' +}); + +//初始化导航 +(function() { + var liCount = $navLi.length; + + //默认4个导航项 + if (liCount === 4) { + return; + } + + $navLi.width(100 / liCount + '%'); +}()); + +loading.init($('body')); //满屏loading + +//点击订单区域跳转订单详情页 +orderHammer = new Hammer(document.getElementById('order-container')); +orderHammer.on('tap', function(e) { + var $cur = $(e.target), + $order, + id, + url; + + if ($cur.closest('.locHref').length > 0) { + return; + } + + $order = $cur.closest('.order'); + id = $order.data('id'); + + $reaMask.data('orderId', id); + + if ($cur.closest('.del').length > 0) { + + //Order delete + dialog.showDialog({ + dialogText: '确定删除订单吗?', + hasFooter: { + leftBtnText: '取消', + rightBtnText: '确定' + } + }, function() { + $.ajax({ + type: 'GET', + url: '/home/delOrder', + data: { + id: id + }, + success: function(data) { + dialog.hideDialog(); + if (data.message) { + tip.show(data.message); + } + if (data.code === 200) { + + //删除订单页面刷新 + window.location.reload(); + } + }, + error: function() { + tip.show('取消订单失败'); + } + }); + }); + } else if ($cur.closest('.cancel').length > 0) { + $reaMask.css('visibility', 'visible'); + } else if ($cur.closest('.order-goods').length > 0) { + + //Location to order detail + url = $order.data('href'); + location.href = url; + } else if ($cur.closest('.rebuy').length > 0) { + $.ajax({ + type: 'GET', + url: '/home/readd', + data: { + orderCode: id + }, + success: function(res) { + tip.show(res.message); + location.href = '/cart/index/index'; + }, + error: function(res) { + tip.show(res.message); + } + }); + } +}); + +function scrollHandler() { + if (order.end === false && $(window).scrollTop() + winH > + $(document).height() - 0.25 * $orderContainer.height()) { + + //下拉请求时不显示mask + getOrders({ + noLoadingMask: true + }); + } +} + +//srcoll to load more +$(window).scroll(function() { + window.requestAnimationFrame(scrollHandler); +}); + +//初始化请求第一页数据 +getOrders(); + +$(function() { + reasonSwiper = new Swiper('.box-main', { + direction: 'vertical', + slidesPerView: 5, + centeredSlides: true, + initialSlide: 0, + onSlideChangeStart: function(reasonSwiper) { + var activeIndex = reasonSwiper.activeIndex, + slides = reasonSwiper.slides, + i = 0; + + if (slides.length !== 1) { + if (activeIndex === 0) { + for (i = 1; i < slides.length; i++) { + $(slides[i]).css('transform', ''); + } + } else if (activeIndex === slides.length - 1) { + for (i = 0; i < activeIndex; i++) { + $(slides[i]).css('transform', 'rotateX(' + (30 + (activeIndex - i) * 12) + 'deg)'); + } + } else { + for (i = 0; i < activeIndex; i++) { + $(slides[i]).css('transform', 'rotateX(' + (30 + (activeIndex - i) * 12) + 'deg)'); + } + for (i = activeIndex + 1; i < slides.length; i++) { + $(slides[i]).css('transform', ''); + } + } + } + $(slides[activeIndex]).css('transform', ''); + } + }); +}); + +$reaMask.find('.box-cmp').on('touchend', function(e) { + var selSolid = reasonSwiper.slides[reasonSwiper.activeIndex], + reason = $(selSolid).text(), + reasonId = $(selSolid).data('reasonId'); + + $.ajax({ + type: 'GET', + url: '/home/cancelOrder', + data: { + id: $reaMask.data('orderId'), + reason: reason, + reasonId: reasonId + } + }).then(function(res) { + $reaMask.fadeOut(); + if ($.type(res) !== 'object') { + return; + } + if (res.message) { + tip.show(res.message); + } + setTimeout(function() { + window.location.href = '/home/orders'; + }, 2000); + }).fail(function() { + tip.show('网络错误'); + }); +}); + +$reaMask.on('touchend', function(event) { + if (event.target.className !== 'reason-mask') { + return false; + } + + $reaMask.css('visibility', 'hidden'); + event.stopPropagation(); +}); +}); +define("js/me/order-detail", ["jquery","lazyload","hammer","handlebars","source-map","swiper","index"], function(require, exports, module){ +/** + * 订单详情页 + * @author: xuqi<qi.xu@yoho.cn> + * @date: 2015/11/16 + */ + +var $ = require("jquery"), + lazyLoad = require("lazyload"), + Hammer = require("hammer"), + dialog = require("js/me/dialog"), + tip = require("js/plugin/tip"), + orderId = $('#order-detail').data('id'), + $countDownHours = $('.hours'), + $countdownContainer = $('.count-down'), + Swiper = require("swiper"), + $ownerInfo = $('.owner-info'), + $reaMask = $('.reason-mask'), + reasonSwiper, + optHammer; + +lazyLoad({ + try_again_css: 'order-failure' +}); + +function downCount(options) { + + var difference = options,// difference of dates + interval; + /** + * Main downCount function that calculates everything + */ + function countdown() { + + // basic math variables + var _second = 1000, + _minute = _second * 60, + _hour = _minute * 60, + _day = _hour * 24, + hours, + minutes, + seconds; + + // calculate dates + hours = Math.floor((difference % _day) / _hour), + minutes = Math.floor((difference % _hour) / _minute), + seconds = Math.floor((difference % _minute) / _second); + + // fix dates so that it will show two digets + hours = (String(hours).length >= 2) ? hours : '0' + hours; + minutes = (String(minutes).length >= 2) ? minutes : '0' + minutes; + seconds = (String(seconds).length >= 2) ? seconds : '0' + seconds; + + // set to DOM + $countdownContainer.removeClass('hide'); + if (hours === '00') { + $countDownHours.text('剩余' + minutes + ':' + seconds); + } else { + $countDownHours.text('剩余' + hours + ':' + minutes + ':' + seconds); + } + + difference -= 1000; + + if (difference < 0) { + clearInterval(interval);// stop timer + return; + } + } + if (difference !== '' && difference > 0) { + interval = setInterval(countdown, 1000);// start + } +} + +downCount($countDownHours.text()); + +//订单删除 +optHammer = new Hammer(document.getElementsByClassName('opt')[0]); +optHammer.on('tap', function(e) { + var $cur = $(e.target); + + if ($cur.hasClass('btn-del')) { + + //删除订单 + dialog.showDialog({ + dialogText: '确定删除订单吗?', + hasFooter: { + leftBtnText: '取消', + rightBtnText: '确定' + } + }, function() { + $.ajax({ + type: 'GET', + url: '/home/delOrder', + data: { + id: orderId + } + }).then(function(res) { + $('#dialog-wrapper').hide(); + if ($.type(res) !== 'object') { + return; + } + if (res.message) { + tip.show(res.message); + } + setTimeout(function() { + window.location.href = '/home/orders'; + }, 2000); + }).fail(function() { + tip.show('网络错误'); + }); + }); + } else if ($cur.hasClass('btn-cancel')) { + $reaMask.css('visibility', 'visible'); + } else if ($cur.hasClass('btn-rebuy')) { + $.ajax({ + type: 'GET', + url: '/home/readd', + data: { + orderCode: orderId + }, + success: function(res) { + tip.show(res.message); + location.href = '/cart/index/index'; + }, + error: function(res) { + tip.show(res.message); + } + }); + } +}); + +if ($ownerInfo.data('changeable') === true) { + $ownerInfo.find('.rest').show(); + $ownerInfo.on('touchend', function() { + location.href = $ownerInfo.data('url'); + }); +} + +$(function() { + reasonSwiper = new Swiper('.box-main', { + initialSlide: 0, + centeredSlides: true, + slidesPerView: 5, + direction: 'vertical', + onSlideChangeStart: function(reasonSwiper) { + var activeIndex = reasonSwiper.activeIndex, + slides = reasonSwiper.slides, + i = 0; + + if (slides.length !== 1) { + if (activeIndex === 0) { + for (i = 1; i < slides.length; i++) { + $(slides[i]).css('transform', ''); + } + } else if (activeIndex === slides.length - 1) { + for (i = 0; i < activeIndex; i++) { + $(slides[i]).css('transform', 'rotateX(' + (30 + (activeIndex - i) * 12) + 'deg)'); + } + } else { + for (i = 0; i < activeIndex; i++) { + $(slides[i]).css('transform', 'rotateX(' + (30 + (activeIndex - i) * 12) + 'deg)'); + } + for (i = activeIndex + 1; i < slides.length; i++) { + $(slides[i]).css('transform', ''); + } + } + } + $(slides[activeIndex]).css('transform', ''); + } + }); +}); + +$reaMask.find('.box-cmp').on('touchend', function(e) { + var selSolid = reasonSwiper.slides[reasonSwiper.activeIndex], + reason = $(selSolid).text(), + reasonId = $(selSolid).data('reasonId'); + + $.ajax({ + type: 'GET', + url: '/home/cancelOrder', + data: { + id: orderId, + reason: reason, + reasonId: reasonId + } + }).then(function(res) { + $reaMask.fadeOut(); + if ($.type(res) !== 'object') { + return; + } + if (res.message) { + tip.show(res.message); + } + setTimeout(function() { + window.location.href = '/home/orders'; + }, 2000); + }).fail(function() { + tip.show('网络错误'); + }); +}); + +$reaMask.on('touchend', function(event) { + if (event.target.className !== 'reason-mask') { + return false; + } + + $reaMask.css('visibility', 'hidden'); + event.stopPropagation(); +}); }); define("js/me/fav", ["jquery","hammer","swiper","handlebars","source-map","index"], function(require, exports, module){ @@ -12547,33 +12547,33 @@ $(window).scroll(function() { couponAJAX(statu, page); }); define("js/me/online-service", ["jquery"], function(require, exports, module){ -/** - * 在线客服 - * @author: bikai<kai.bi@yoho.cn> - * @date: 2015/11/16 - */ -var $ = require("jquery"); - -var $questionTab = $('.question-tab .tab-item'); - -$questionTab.on('touchend', function() { - var clickTab = $(this).data('tab'); - - clickTab = '[data-tab-name="' + clickTab + '"]'; - - $questionTab.removeClass('current'); - $(this).addClass('current'); - - $('.question-list').removeClass('current'); - $(clickTab).addClass('current'); -}); - -$('.yoho-page').on('touchstart', '.connect-item, .question-item', function() { - $(this).siblings().removeClass('highlight'); - $(this).addClass('highlight'); -}).on('touchend touchcancel', '.connect-item, .question-item', function() { - $(this).removeClass('highlight'); -}); +/** + * 在线客服 + * @author: bikai<kai.bi@yoho.cn> + * @date: 2015/11/16 + */ +var $ = require("jquery"); + +var $questionTab = $('.question-tab .tab-item'); + +$questionTab.on('touchend', function() { + var clickTab = $(this).data('tab'); + + clickTab = '[data-tab-name="' + clickTab + '"]'; + + $questionTab.removeClass('current'); + $(this).addClass('current'); + + $('.question-list').removeClass('current'); + $(clickTab).addClass('current'); +}); + +$('.yoho-page').on('touchstart', '.connect-item, .question-item', function() { + $(this).siblings().removeClass('highlight'); + $(this).addClass('highlight'); +}).on('touchend touchcancel', '.connect-item, .question-item', function() { + $(this).removeClass('highlight'); +}); }); define("js/me/address", ["jquery","hammer"], function(require, exports, module){ @@ -14932,195 +14932,195 @@ $('.confirm-btn, .nav-back').on('touchstart', function(e) { // initData(); }); define("js/cart/select-coupon", ["jquery","handlebars","source-map","hammer","mlellipsis"], function(require, exports, module){ -/** - * 优惠券选择 - * @author: bikai<kai.bi@yoho.cn> - * @date: 2015/12/10 - */ - -var $ = require("jquery"), - Handlebars = require("handlebars"), - Hammer = require("hammer"), - ellipsis = require("mlellipsis"), - loading = require("js/plugin/loading"), - tip = require("js/plugin/tip"), - orderInfo = require("js/cart/order-info").orderInfo; - -var isGetData; - -var conponTmpl = Handlebars.compile($('#tmpl-coupon').html()), - conponNotAvaliableTmpl = Handlebars.compile($('#tmpl-coupon-not-avaliable').html()), - $newCoupon = $('#new-coupon'), - $couponList = $('#coupon-list'); - -var winH = $(window).height(); - -require("js/common"); - -function fixedLayOut() { - var $null = $('.null'), - navH = $('.nav-title').height(), - nullH = $null.height(); - - if ($null.length === 0) { - return false; - } - - $null.css({ - top: winH / 2 - nullH / 2 + navH - }); -} - -ellipsis.init(); - -$newCoupon.on('submit', function() { - var $this = $(this); - - if (!$this.find('[name="couponCode"]').val()) { - tip.show('请输入优惠券码'); - return false; - } - $.ajax({ - method: 'POST', - url: '/cart/index/couponSearch', - data: $this.serialize() - }).then(function(res) { - if (res.message) { - tip.show(res.message); - } - if (res.code === 200) { - tip.show('优惠券可用'); - orderInfo('couponCode', res.data.coupon_code); - orderInfo('couponName', res.data.coupon_title); - window.location.href = '/cart/index/orderEnsure'; - } - }).fail(function() { - tip.show('网络错误'); - }); - return false; -}); - -$couponList.on('touchstart', '.employ-main', function() { - var $this = $(this); - - $this.siblings().removeClass('focus'); - $this.addClass('focus'); -}).on('touchend touchcancel', '.employ-main', function() { - var $this = $(this); - - $this.siblings().removeClass('focus'); - $this.removeClass('focus'); -}); - -$('body').on('touchend', '.not-use', function() { - orderInfo('couponCode', null); - orderInfo('couponName', null); - location.href = '/cart/index/orderEnsure'; -}); - - -$newCoupon.find('input').on('input', function() { - if ($(this).val() !== '') { - $newCoupon.find('.submit').css('background', '#444'); - } else { - $newCoupon.find('.submit').css('background', '#b0b0b0'); - } -}); - -function getCouponHandle(allCoupons) { - var notAvailableCoupons, - coupons; - - // 空数组表示没有优惠券 - if ($.isArray(allCoupons)) { - $('.coupon-wrap').html($('#tmpl-no-coupon').html()); - fixedLayOut(); - return; - } - - // 把可用和不可用的优惠券分离出来 - notAvailableCoupons = allCoupons.notAvailableCoupons; - coupons = allCoupons.coupons; - - $.each(coupons, function(i, coupon) { - coupon.couponValue = Math.floor(coupon.couponValue); - }); - - $.each(notAvailableCoupons, function(i, coupon) { - coupon.couponValue = Math.floor(coupon.couponValue); - }); - - // 渲染可用的优惠券 - $couponList.append(conponTmpl({ - coupons: coupons - })).find('.employ-main').each(function(i, elem) { - var employHammer = new Hammer(elem); - - employHammer.on('tap', function(e) { - var $this = $(e.srcEvent.currentTarget); - var couponCode = $this.data('coupon-code'); - - $.ajax({ - method: 'POST', - url: '/cart/index/couponSearch', - data: { - couponCode: couponCode - } - }).then(function(res) { - if (res.code === 200) { - - //tip.show('优惠券可用'); - orderInfo('couponCode', res.data.coupon_code); - orderInfo('couponName', res.data.coupon_title); - window.location.href = '/cart/index/orderEnsure'; - } else if (res.message) { - tip.show(res.message); - } - }).fail(function() { - tip.show('网络错误'); - }); - }); - }); - - if (notAvailableCoupons.length) { - $('.not-avaliable-coupon-line').show(); - } - $('#coupon-list-not').append(conponNotAvaliableTmpl({ - notAvailableCoupons: notAvailableCoupons - })); - window.rePosFooter(); - -} - -function getCouponDate() { - - if (isGetData) { - return; - } - - loading.showLoadingMask(); - isGetData = true; - - $.ajax({ - type: 'GET', - url: '/cart/index/couponList', - dataType: 'json' - }).then(getCouponHandle).fail(function() { - - // tip.show('加载优惠券失败'); - }).always(function() { - isGetData = false; - loading.hideLoadingMask(); - }); -} - -getCouponDate(); - -// $(window).scroll(function() { -// if ($(window).scrollTop() + $(window).height() > $('body').height() * 0.9) { -// getCouponDate(); -// } -// }); +/** + * 优惠券选择 + * @author: bikai<kai.bi@yoho.cn> + * @date: 2015/12/10 + */ + +var $ = require("jquery"), + Handlebars = require("handlebars"), + Hammer = require("hammer"), + ellipsis = require("mlellipsis"), + loading = require("js/plugin/loading"), + tip = require("js/plugin/tip"), + orderInfo = require("js/cart/order-info").orderInfo; + +var isGetData; + +var conponTmpl = Handlebars.compile($('#tmpl-coupon').html()), + conponNotAvaliableTmpl = Handlebars.compile($('#tmpl-coupon-not-avaliable').html()), + $newCoupon = $('#new-coupon'), + $couponList = $('#coupon-list'); + +var winH = $(window).height(); + +require("js/common"); + +function fixedLayOut() { + var $null = $('.null'), + navH = $('.nav-title').height(), + nullH = $null.height(); + + if ($null.length === 0) { + return false; + } + + $null.css({ + top: winH / 2 - nullH / 2 + navH + }); +} + +ellipsis.init(); + +$newCoupon.on('submit', function() { + var $this = $(this); + + if (!$this.find('[name="couponCode"]').val()) { + tip.show('请输入优惠券码'); + return false; + } + $.ajax({ + method: 'POST', + url: '/cart/index/couponSearch', + data: $this.serialize() + }).then(function(res) { + if (res.message) { + tip.show(res.message); + } + if (res.code === 200) { + tip.show('优惠券可用'); + orderInfo('couponCode', res.data.coupon_code); + orderInfo('couponName', res.data.coupon_title); + window.location.href = '/cart/index/orderEnsure'; + } + }).fail(function() { + tip.show('网络错误'); + }); + return false; +}); + +$couponList.on('touchstart', '.employ-main', function() { + var $this = $(this); + + $this.siblings().removeClass('focus'); + $this.addClass('focus'); +}).on('touchend touchcancel', '.employ-main', function() { + var $this = $(this); + + $this.siblings().removeClass('focus'); + $this.removeClass('focus'); +}); + +$('body').on('touchend', '.not-use', function() { + orderInfo('couponCode', null); + orderInfo('couponName', null); + location.href = '/cart/index/orderEnsure'; +}); + + +$newCoupon.find('input').on('input', function() { + if ($(this).val() !== '') { + $newCoupon.find('.submit').css('background', '#444'); + } else { + $newCoupon.find('.submit').css('background', '#b0b0b0'); + } +}); + +function getCouponHandle(allCoupons) { + var notAvailableCoupons, + coupons; + + // 空数组表示没有优惠券 + if ($.isArray(allCoupons)) { + $('.coupon-wrap').html($('#tmpl-no-coupon').html()); + fixedLayOut(); + return; + } + + // 把可用和不可用的优惠券分离出来 + notAvailableCoupons = allCoupons.notAvailableCoupons; + coupons = allCoupons.coupons; + + $.each(coupons, function(i, coupon) { + coupon.couponValue = Math.floor(coupon.couponValue); + }); + + $.each(notAvailableCoupons, function(i, coupon) { + coupon.couponValue = Math.floor(coupon.couponValue); + }); + + // 渲染可用的优惠券 + $couponList.append(conponTmpl({ + coupons: coupons + })).find('.employ-main').each(function(i, elem) { + var employHammer = new Hammer(elem); + + employHammer.on('tap', function(e) { + var $this = $(e.srcEvent.currentTarget); + var couponCode = $this.data('coupon-code'); + + $.ajax({ + method: 'POST', + url: '/cart/index/couponSearch', + data: { + couponCode: couponCode + } + }).then(function(res) { + if (res.code === 200) { + + //tip.show('优惠券可用'); + orderInfo('couponCode', res.data.coupon_code); + orderInfo('couponName', res.data.coupon_title); + window.location.href = '/cart/index/orderEnsure'; + } else if (res.message) { + tip.show(res.message); + } + }).fail(function() { + tip.show('网络错误'); + }); + }); + }); + + if (notAvailableCoupons.length) { + $('.not-avaliable-coupon-line').show(); + } + $('#coupon-list-not').append(conponNotAvaliableTmpl({ + notAvailableCoupons: notAvailableCoupons + })); + window.rePosFooter(); + +} + +function getCouponDate() { + + if (isGetData) { + return; + } + + loading.showLoadingMask(); + isGetData = true; + + $.ajax({ + type: 'GET', + url: '/cart/index/couponList', + dataType: 'json' + }).then(getCouponHandle).fail(function() { + + // tip.show('加载优惠券失败'); + }).always(function() { + isGetData = false; + loading.hideLoadingMask(); + }); +} + +getCouponDate(); + +// $(window).scroll(function() { +// if ($(window).scrollTop() + $(window).height() > $('body').height() * 0.9) { +// getCouponDate(); +// } +// }); }); define("js/cart/select-address", ["jquery","hammer"], function(require, exports, module){ diff --git a/static/dist/myohobuy/4.9.24/index.js b/static/dist/myohobuy/4.9.24/index.js index 0e5b5e4..d3dbaf1 100644 --- a/static/dist/myohobuy/4.9.24/index.js +++ b/static/dist/myohobuy/4.9.24/index.js @@ -1,6 +1,6 @@ -define("index",["jquery","hammer","swiper","lazyload","mlellipsis","iscroll-probe","handlebars","source-map","index"],function(e,t,o){var n;e("js/common"),e("js/category/entry"),e("js/guang/entry"),e("js/home/entry"),e("js/index/entry"),e("js/passport/entry"),e("js/product/entry"),e("js/me/entry"),e("js/cart/entry"),e("js/life/entry"),o.exports=n}),define("js/common",["jquery","hammer"],function(e,t,o){function n(e){var t,o,n=document.cookie;return document.cookie&&""!==document.cookie&&(o=n.indexOf(e+"="),o>-1&&(o+=e.length+1,t=decodeURIComponent(p.trim(n.substring(o,n.indexOf(";",o)))))),t}function a(e,t,o){var n,a,i,s,r="";"undefined"!=typeof t&&(o=o||{},null===t&&(t="",o.expires=-1),o.expires&&("number"==typeof o.expires||o.expires.toUTCString)&&("number"==typeof o.expires?(s=new Date,s.setTime(s.getTime()+24*o.expires*60*60*1e3)):s=o.expires,r="; expires="+s.toUTCString()),n=o.path?"; path="+o.path:"",a=o.domain?"; domain="+o.domain:"",i=o.secure?"; secure":"",document.cookie=[e,"=",encodeURIComponent(t),r,n,a,i].join(""))}function i(){var e=!!navigator.cookieEnabled;return"undefined"!=typeof navigator.cookieEnabled||e||(document.cookie="testcookie",e=document.cookie.indexOf("testcookie")!==-1),e}function s(){var e,t=n("_UID");return"undefined"==typeof t?0:(e=t.split("::"),"undefined"==typeof e||e.length<4?0:e)}function r(){var e=s();return 0===e?0:e[1]}function l(){var e=n("_g");return"undefined"==typeof e?"":JSON.parse(e).k}function d(){var e;0!==m.length&&(e=Math.min(p(window).height(),window.screen.availHeight),p("body").height()<=e-parseInt(m.css("height"),0)?m.addClass("bottom"):m.removeClass("bottom"))}function c(e){var t=p(e).outerHeight();e&&m.css("margin-bottom",t+"px")}function u(e){var t=1;if(!window._yas)return!1;switch(n("_Channel")){case"boys":t=1;break;case"girls":t=2;break;case"kids":t=3;break;case"lifestyle":t=4}return e=p.extend({REC_POSE:"",REC_ID:w,PRD_ID:"",PRD_NUM:0,C_ID:t,ACTION_ID:0,page_num:1},e),""===e.REC_POSE||""===e.PRD_ID||void window._yas.sendCustomInfo({op:"YB_CHOOSE_FOR_YOU_Y",uid:r(),param:JSON.stringify(e)},!0)}function h(e){return e.replace(/(\d{3})\d{4}(\d{4})/,"$1****$2")}var p=e("jquery"),f=e("hammer"),m=p("#yoho-footer"),g=p(".yoho-page"),v=p(".yoho-header"),w=(new Date).getTime()+"_H5_YOHOBUY_"+Math.floor(1e6*Math.random()+1e6)+"_"+Math.floor(1e6*Math.random()+1e6);!function(){var e,t,o=m.children(".op-row"),n=p(".back-to-top"),a=s();d(),0===a?(/MicroMessenger/i.test(navigator.userAgent)?(t="//m.yohobuy.com/passport/login/wechat?refer="+location.href,p(".login-btn").attr("href",t)):t="//m.yohobuy.com/signin.html?refer="+location.href,o.prepend('<a href="'+t+'">登录</a><span class="sep-line">|</span><a href="//m.yohobuy.com/reg.html">注册</a>')):o.prepend('<span>Hi,</span><a class="user-name" href="//m.yohobuy.com/home?tmp='+Math.random()+'">'+a[0]+'</a><a href="//m.yohobuy.com/passport/signout/index?token='+a[3]+'">退出</a>'),n.length>0&&(e=new f(n[0]),e.on("tap",function(e){return p(window).scrollTop(0),e.srcEvent.preventDefault(),!1})),m.removeClass("hide")}(),function(e,t,o,n,a){var i=t.createElement(o),s=t.getElementsByTagName(o)[0];e.YohoAcquisitionObject=a,e[a]=function(){e[a].p=arguments},i.async=1,i.src=n,s.parentNode.insertBefore(i,s)}(window,document,"script",("https:"===document.location.protocol?"https":"http")+"://cdn.yoho.cn/yas-jssdk/1.0.17/yas.js","_yas"),function(){var e,t,o=r(),n=!1,a=3;0===o&&(o=""),window._ozuid=o,window._yas&&(window._yas(1*new Date,"1.0.17","yohobuy_m",o,"",""),e=function(e){var t={};e&&e&&e.length>a&&(t={page:e[0],floor:e[1],data:/_[1|0]$/.test(e.join("_"))?e[2]:e.slice(2).join("_")},window._yas.sendCustomInfo&&window._yas.sendCustomInfo(t,Boolean(parseInt(e[3])||1)))},t=function(){p(".buriedpoint").off("click"),p(document).on("click",".buriedpoint",function(t){var o=p(this).attr("data-bp-id")||"",i=o.split("_"),s=p(t.target),r=s.parents(".buriedpoint").length;!n&&i&&i.length>=a&&e(i),(s.hasClass("buriedpoint")&&r>0||r>=2)&&(n=!0)})},t(),p(document).on("rebindBpEvent",t),p(document).on("shouldSendBpData",function(t,o){var a;o&&o.length&&o.length>0&&(n=!1,a=o.split("_"),e(a))}))}(),v.on("touchstart","a",function(){v.find("a").removeClass("highlight"),p(this).addClass("highlight")}).on("touchend touchcancel","a",function(){p(this).removeClass("highlight")}),g.on("touchstart",".tap-hightlight",function(){p(this).siblings(".tap-hightlight").removeClass("highlight"),p(this).addClass("highlight")}).on("touchend touchcancel",".tap-hightlight",function(){p(this).removeClass("highlight")}),p(".nav-home").on("touchstart",function(){p(".homebuttom").toggleClass("hide")}),function(){var e,t,o=0,n="webkit moz ms o".split(" "),a=window.requestAnimationFrame,i=window.cancelAnimationFrame;for(t=0;t<n.length&&(!a||!i);t++)e=n[t],a=a||window[e+"RequestAnimationFrame"],i=i||window[e+"CancelAnimationFrame"]||window[e+"CancelRequestAnimationFrame"];a&&i||(a=function(e,t){var n=(new Date).getTime(),a=Math.max(0,16-(n-o)),i=window.setTimeout(function(){e(n+a)},a);return o=n+a,i},i=function(e){window.clearTimeout(e)}),window.requestAnimationFrame=a,window.cancelAnimationFrame=i}(),p.extend({queryString:function(){var e,t,o=[],n=window.location.search.slice(1).split("&");for(t=0;t<n.length;t++)e=n[t].split("="),o.push(e[0]),o[e[0]]=e[1];return o}}),11===m.find(".user-name").text().length&&m.find(".user-name").html(h(m.find(".user-name").text())),window.cookie=n,window.setCookie=a,window.isCookiesEnabled=i,window.getUser=s,window.getUid=r,window.getShoppingKey=l,window.rePosFooter=d,window.reMarginFooter=c,window.givePoint=u}),define("js/category/entry",["jquery","hammer","swiper","lazyload","index"],function(e,t,o){e("js/category/index"),e("js/category/brand")}),define("js/category/index",["jquery"],function(e,t,o){var n=e("jquery"),a=n(".category-nav"),i=n(".category-container"),s=i.children(".content"),r=i.find(".sub-level li"),l=i.find(".primary-level li"),d=s.not(".hide");!function(){var e=n(".yoho-header"),t=n("#search-input"),o=n(window).height()-e.outerHeight()-t.outerHeight()-a.outerHeight();i.css("min-height",o),s.height(o)}(),n("#search-input").focus(function(){n(this).blur()}),a.bind("contextmenu",function(e){return!1}),n(".category-container").bind("contextmenu",function(e){return!1}),a.on("touchend touchcancel",function(e){var t=n(e.target).closest("li"),o=t.index();t.hasClass("focus")||(a.find("li.focus").removeClass("focus"),t.addClass("focus"),d.addClass("hide"),d=s.eq(o).removeClass("hide"))}),i.on("touchend",function(e){var t,o,a,i=n(e.target);if(o=i.closest(".p-level-item"),o.length>0){if(a=o.index(),t=i.closest(".content").find(".sub-level"),i.hasClass("focus"))return;i.closest(".primary-level").children(".focus").removeClass("focus"),i.addClass("focus"),t.not(".hide").addClass("hide"),t.eq(a).removeClass("hide")}}),i.find(".primary-level").on("touchstart touchend touchcancel","li",function(){l.removeClass("highlight"),n(this).addClass("highlight")}).on("touchend touchcancel","li",function(){n(this).removeClass("highlight")}),i.find(".sub-level").on("touchstart","li",function(){r.removeClass("highlight"),n(this).addClass("highlight")}).on("touchend touchcancel","li",function(){n(this).removeClass("highlight")}),a.on("touchstart","li",function(){a.find("li").removeClass("bytouch"),n(this).addClass("bytouch")}).on("touchend touchcancel","li",function(){a.find("li").removeClass("bytouch")})}),define("js/category/brand",["jquery","hammer","swiper","lazyload","index"],function(e,t,o){function n(){var e=y(".brand-list").find("p");e.on("touchstart",function(){e.css("background","#fff"),y(this).css("background","#eee")}).on("touchend touchcancel",function(){y(this).css("background","#fff")})}function a(e){y.ajax({type:"POST",url:"/brands/addBrandSearch",data:"brandName="+encodeURIComponent(e),success:function(e){},error:function(){}})}function i(e,t){return e.time>t.time?1:e.time<t.time?-1:0}function s(){R.val().length?(E.css("color","#444"),L.show().find(".clear-text").show()):(E.css("color","#b2b2b2"),L.find(".clear-text").hide()),d()}function r(){var e="test",t=Window.prototype.localStorage;try{return t.setItem(e,"testValue"),t.removeItem(e),!0}catch(o){return!1}}function l(e,t){e.on("click","p , li",function(e){var o,n,i,l,d,c=y(this).find("a"),u=new Date,h=c.attr("brandName")+T+u.getTime();if(o=c.attr("brandName"),n=c.attr("brandId"),i=c.attr("brandDomain"),l=c.attr("href"),e.preventDefault(),F.length>0)return a(o),t?void(location.href=l):(R.val(o),void s());if(localStorage){if(r()&&(d=localStorage.getItem("historys-brand")),d=d?d:"",d.indexOf(k+h+k)>-1)return R.val(o),void s();""===d&&(h=k+h),d+=h+k,r()&&localStorage.setItem("historys-brand",d)}return t?void(location.href=l):(R.val(o),void s())})}function d(){var e=(R.val()+"").toLowerCase(),t={},o=0,a="";""!==e&&(y.each(g,function(o,n){y.isArray(n)&&y.each(n,function(n,a){a.searchName.toLowerCase().indexOf(e)>-1&&(t[o]=t[o]||[],t[o].push(a))})}),y.each(t,function(e,t){var n=['<div class="brand-list bar-',o,'">'];o++,n.push('<div class="title-bar"><h2>'),n.push(e),n.push("</h2></div>"),y.each(t,function(e,t){n.push('<p><a href="'+t.url+'" brandName = "'+t.name+'" brandId = "'+t.brandId+'" brandDomain = "'+t.brandDomain+'">'+t.name),t.isNew&&n.push('<i class="icon-new">NEW</i>'),t.isHot&&n.push('<i class="icon-hot">HOT</i>'),n.push("</a></p>")}),n.push("</div>"),a+=n.join("")})),e.length>0?y(".search-brand-page").addClass("hide"):y(".search-brand-page").removeClass("hide"),y(".search-result").html(a),n(),l(y(".brand-list"),!0)}function c(){var e=y(window).scrollTop();q.eq(0).offset().top<m&&p.hide(),q.each(function(){var t=y(this).offset().top-B;e>=t&&p.css({display:"block"}).find("h2").html(y(this).find(".title-bar").text())})}function u(){y.ajax({type:"GET",url:"/brands/delBrandHistory",data:"",success:function(e){},error:function(){}})}var h,p,f,m,g,v,w,y=e("jquery"),b=e("hammer"),C=e("swiper"),j=e("js/plugin/loading"),x=e("lazyload"),k=" ??++ ",T=" ???--- ",q=y(".brand-list"),E=y(".search-icon"),I=y(".genderNav li"),_=y(".brandNav li"),S=y(".new-brand-wall"),D=y(".recommand-brand-wall"),L=y(".search-action"),z=y(".homebuttom"),P=y(".genderNav"),M=y(".newbrand-search"),F=y(".net-history"),O=y(".nav-home"),N=y(".newbrand-search").outerHeight(),A=y(".yoho-header").outerHeight(),B=parseInt(N)+parseInt(A)-1,R=y("#keyword"),H=y(".local-history"),U=y(".search-brand-page"),V=y(".history-search"),W=y(".hot-search"),G=y("#clear-history");n(),j.showLoadingMask(),x(y("img.lazy")),y(".yoho-header").css({"z-index":2,position:"fixed",top:0}),z.css("top","47px"),z.css("position","fixed"),O.on("touchstart",function(){z.hasClass("hide")?(P.css("top","47px"),M.css("margin-top","0px"),U.css("margin-top","0px"),y(".banner-top").css("margin-top","0px")):(P.css("top","97px"),M.css("margin-top","47px"),U.css("margin-top","47px"),y(".banner-top").css("margin-top","47px"))}),function(){y(".banner-top").length>0&&y(".hot-brands").css("padding-top","0"),y(".hide-when-loading").show(),j.hideLoadingMask(),h=new C(".swiper-container",{lazyLoading:!0,loop:!0,autoplay:3e3,pagination:".swiper-pagination .pagination-inner"}),f=new C(".brands-swiper",{grabCursor:!0,slidesPerView:"auto",wrapperClass:"brands-list",slideElement:"li"})}(),p=y('<div class="title-bar fixed-title-bar"><h2></h2></div>'),p.css({position:"fixed",top:B}).hide(),m=B+y(".hot-brands").outerHeight()+y(".banner-top").outerHeight(),q.last().append(p),y(".brand-index-page").length>0&&y(window).scroll(function(){window.requestAnimationFrame(c)}),y(".history-search").length>0&&l(y(".history-search"),!1),y(".hot-search").length>0&&l(y(".hot-search"),!1),y(".brand-search-page").length>0&&(g=y.parseJSON(y("#brands-data").html()),R.on("input",function(){s()}),E.css("color","#444"),R.closest(".search-box").css("width","11.25rem"),L.show().find(".clear-text").hide(),v=new b(y(".clear-text")[0]),v.on("tap",function(e){y(".search-result").html(""),y("#keyword").val("").trigger("input"),e.preventDefault(),e.srcEvent.stopPropagation()}),y("form.search-box").on("submit",function(){return!1})),I.length>0&&I.on("touchstart",function(){function e(){window.location.search="channel="+t}var t=y(this).data("id")+1;y(".genderNav ul .active").removeClass("active"),y(this).addClass("active"),y(".hide-when-loading").hide(),j.showLoadingMask(),setTimeout(e.bind(this),100)}),_.length>0&&_.on("click",function(){var e=y(this).data("id");y(".brandNav ul .active").removeClass("active"),y(this).addClass("active"),0===e?(D.not(".hide").addClass("hide"),S.not(".hide").addClass("hide"),q.removeClass("hide")):1===e?(S.removeClass("hide"),q.not(".hide").addClass("hide"),D.not(".hide").addClass("hide")):(D.removeClass("hide"),q.not(".hide").addClass("hide"),S.not(".hide").addClass("hide"))}),y(".brand-search-page").length>0&&(w=new b(G[0]),w.on("tap",function(){r()&&localStorage.removeItem("historys-brand"),H.html(""),V.hide(),G.hide(),y(".net-search").length>0&&u(),window.rePosFooter()}),function(){var e,t,o,n,a,s,l,d,c,u,h,p,f,m,g,v="";if(h=[],p=[],d=[],F.find("li").each(function(){a=y(this).find("a").attr("brandName"),l=y(this).find("a").attr("collectTime"),c={brand:a,time:l},d.push(c)}),localStorage&&(r()&&(t=localStorage.getItem("historys-brand")),t&&t.length>0))for(t=t.split(k),o=t.length;o>0;o--)e=t[o-1],""!==e&&(n=e.split(T),a=n[0],l=n[1],c={brand:a,time:l},h.push(c));if(0===h.length&&0===d.length)return void V.addClass("hide");if(m={},g={},h.length>0)for(u in h)h.hasOwnProperty(u)&&(g=h[u],(!m[g.brand]||m[g.brand]<g.time)&&(m[g.brand]=g.time));if(d.length>0)for(c in d)d.hasOwnProperty(c)&&(g=d[c],(!m[g.brand]||m[g.brand]<g.time)&&(m[g.brand]=g.time));s={};for(f in m)m.hasOwnProperty(f)&&(s={brand:f,time:m[f]},p.push(s));if(p.sort(i),p.length>0)for(o=p.length-1;o>=(p.length>10?p.length-10:0);o--)a=p[o].brand,l=p[o].time,v+='<li><a brandName = "'+a+'">'+a+"</li>",H.removeClass("hide"),H.html(v),G.removeClass("hide"),W.removeClass("hide"),window.rePosFooter();else H.addClass("hide")}())}),define("js/plugin/loading",["jquery"],function(e,t,o){function n(e){var t='<div class="loading-mask hide"><div class="loading"><div></div><div></div><div></div></div></div>';d=!0,void 0===e&&(e=l),e.append(t),s=e.children(".loading-mask")}function a(){d||(n(),d=!0),s.removeClass("hide")}function i(){s.addClass("hide")}var s,r=e("jquery"),l=r(".yoho-page"),d=!1;t.init=n,t.showLoadingMask=a,t.hideLoadingMask=i}),define("js/guang/entry",["jquery","lazyload","swiper","hammer","mlellipsis","iscroll-probe","index"],function(e,t,o){e("js/guang/plus-star/list"),e("js/guang/plus-star/detail"),e("js/guang/home"),e("js/guang/list"),e("js/guang/detail"),e("js/guang/star-classroom"),e("js/guang/calendar"),e("js/guang/collocation-list"),e("js/guang/check-top")}),define("js/guang/plus-star/list",["jquery","lazyload","swiper","index"],function(e,t,o){var n,a=e("jquery"),i=e("lazyload"),s=e("swiper"),r=a("#nav-tab > li"),l=a("#ps-content > .content");i(a("img.lazy")),a(".star-content li").each(function(e,t){a(t).find(".swiper-container").addClass("swiper-"+e),n=new s(".swiper-"+e,{lazyLoading:!0,pagination:".swiper-"+e+" .pagination-inner"})}),a("#nav-tab").bind("contextmenu",function(e){return!1}),a("#nav-tab").on("touchend touchcancel",function(e){var t=a(e.target).closest("li");t.hasClass("focus")||(r.toggleClass("focus"),l.toggleClass("hide"),a(document).trigger("scroll"))}),a("#nav-tab").on("touchstart",function(e){var t=e.target||e.srcElement;t.className="bytouch "+t.className}).on("touchend touchcancel",function(){r.removeClass("bytouch")})}),define("js/guang/plus-star/detail",["jquery","hammer","mlellipsis","lazyload","swiper","index"],function(e,t,o){var n,a,i,s,r,l,d=e("jquery"),c=e("hammer"),u=e("mlellipsis"),h=e("lazyload"),p=d("#intro"),f=d("#intro-more-txt"),m=d("#related-infos-container"),g=e("js/guang/info"),v=e("js/plugin/tip"),w=d("#brand-info").data("id"),y=d("#jump-to-app").val();e("js/plugin/wx-share"),u.init(),h(d("img.lazy")),d(".good-detail-text .name").length>0&&d(".good-detail-text .name").each(function(){r=d(this),l=r.find("a"),l[0].mlellipsis(2)}),p[0].mlellipsis(3),setTimeout(function(){n=p.text(),a=p.attr("title")}),g.initInfosEvt(m),i=new c(document.getElementById("more-intro-click-range")),i.on("tap",function(e){var t=f.parent();t.toggleClass("spread"),t.hasClass("spread")?(p.text(a),f.text("收起")):(p.text(n),f.text("more"),d(window).scrollTop(0,400)),e.preventDefault()}),s=new c(document.getElementById("brand-like")),s.on("tap",function(e){var t="ok",o=d(e.target);"1"!==y&&(e.preventDefault(),o.hasClass("like")&&(t="cancel"),d.ajax({type:"POST",url:"/guang/opt/favoriteBrand",data:{id:w,opt:t},success:function(e){200===e.code?(o.toggleClass("like"),v.show(e.message)):400===e.code||412===e.code?location.href=e.data:v.show(e.message)},error:function(){v.show("网络断开连接了~")}}))})}),define("js/guang/info",["jquery","hammer","mlellipsis","lazyload","swiper","index"],function(e,t,o){function n(e){var t=new RegExp("(^|&)"+e+"=([^&]*)(&|$)"),o=window.location.search.substr(1).match(t);return null!=o?o[2]:null}function a(e){void 0!==typeof e&&(b[e]=new h(".swiper-cont-"+e,{lazyLoading:!0,wrapperClass:"swiper-wrap-"+e,pagination:".swiper-pagi-"+e,autoplay:3e3}))}function i(e){u(e.find("img.lazy")),e.each(function(){var e=l(this),t=e.find(".info-title"),o=e.find(".info-text");t[0].mlellipsis(2),o[0].mlellipsis(2)})}function s(e){var t;"undefined"!=typeof e&&"undefined"!=typeof e[0]&&(t=new d(e[0]),t.on("tap",function(e){var t,o,a,i=l(e.target),s="ok";return t=i.closest(".like-btn"),t.length>0&&!C?(e.preventDefault(),t.hasClass("like")&&(s="cancel"),o=i.closest(".guang-info"),C=!0,void l.ajax({type:"POST",url:"/guang/opt/praiseArticle",data:{id:o.data("id"),opt:s},success:function(e){var o=e.code;200===o&&(t.next(".like-count").text(e.data),t.toggleClass("like"))},error:function(){p.show("网络断开连接了~")},complete:function(){C=!1}})):(t=i.closest(".collect-btn"),void(t.length>0&&(e.preventDefault(),t.hasClass("collected")&&(s="cancel"),o=i.closest(".guang-info"),n("yh_channel")&&(a=n("yh_channel")),l.ajax({type:"POST",url:"/guang/opt/collectArticle",data:{id:o.data("id"),opt:s,yh_channel:a,uid:n("uid")},success:function(e){e.code&&200===e.code&&t.toggleClass("collected")},error:function(){p.show("网络断开连接了~")}}))))}),i(e.find(".guang-info")))}function r(e,t,o){var n;y||t.end||(1===t.page&&f.showLoadingMask(),n=e.find(".guang-info").length,y=!0,l.ajax({type:"GET",url:o?o:"/guang/index/page",data:t,success:function(o){var s;return" "===o?(t.end=!0,y=!1,g.addClass("hide"),void v.removeClass("hide")):(e.append(o),w=e.find(".swiper-container"),w.length&&(w.addClass("swiper-cont-"+t.type),w.children(".swiper-wrapper").addClass("swiper-wrap-"+t.type),w.children(".swiper-pagination").addClass("swiper-pagi-"+t.type),a(t.type)),s=n>0?e.find(".guang-info:gt("+(n-1)+")"):e.find(".guang-info"),i(s),1===t.page&&(f.hideLoadingMask(),g.removeClass("hide"),window.rePosFooter()),t.page++,y=!1,void delete t.isTab)},error:function(){p.show("网络断开连接了~"),y=!1,delete t.isTab}}))}var l=e("jquery"),d=e("hammer"),c=e("mlellipsis"),u=e("lazyload"),h=e("swiper"),p=e("js/plugin/tip"),f=e("js/plugin/loading"),m=l("#load-more-info"),g=l(""),v=l(""),w=l(""),y=!1,b={},C=!1;c.init(),m.length>0&&(g=m.children(".loading"),v=m.children(".no-more")),t.mySwiper=b,t.initSwiper=a,t.initInfosEvt=s,t.setLazyLoadAndMellipsis=i,t.loadMore=r}),define("js/plugin/tip",["jquery"],function(e,t,o){function n(e,t){var o,n;"undefined"!=typeof e&&(o=e.toString(),n=t&&t>0?t:2e3,a.text(o).show(),i=setTimeout(function(){"block"===a.css("display")&&a.hide()},n))}var a,i,s=e("jquery");!function(){var e='<div id="yoho-tip" class="yoho-tip"></div>';s(".yoho-page").append(e),a=s("#yoho-tip"),a.on("touchend",function(){a.hide(),clearTimeout(i)})}(),t.show=n}),define("js/plugin/wx-share",["jquery"],function(e,t,o){var n=e("jquery");o.exports=function(){var e="/life/getSignPackage";n.getJSON(e+"?pageurl="+encodeURIComponent(location.href.split("#")[0])+"&callback=?",function(e){var t,o,n,a;wx&&void 0!==e&&""!==e&&(t=e.appId.toString(),o=e.timestamp,n=e.nonceStr.toString(),a=e.signature.toString(),wx.config({debug:!1,appId:t,timestamp:o,nonceStr:n,signature:a,jsApiList:["checkJsApi","onMenuShareTimeline","onMenuShareAppMessage","onMenuShareQQ","onMenuShareWeibo","hideMenuItems","showMenuItems","hideAllNonBaseMenuItem","showAllNonBaseMenuItem","translateVoice","startRecord","stopRecord","onRecordEnd","playVoice","pauseVoice","stopVoice","uploadVoice","downloadVoice","chooseImage","previewImage","uploadImage","downloadImage","getNetworkType","openLocation","getLocation","hideOptionMenu","showOptionMenu","closeWindow","scanQRCode","chooseWXPay","openProductSpecificView","addCard","chooseCard","openCard"]}))}),wx.ready(function(){var e=n("#shareTitle").val(),t=n("#shareImg").val(),o=n("#shareDesc").val(),a=n("#shareLink").val(),i={title:e,desc:o,imgUrl:t,link:a};wx.onMenuShareAppMessage(i),wx.onMenuShareTimeline(i),wx.onMenuShareQQ(i),wx.onMenuShareWeibo(i),wx.onMenuShareQZone(i)})}}),define("js/guang/home",["jquery","hammer","mlellipsis","lazyload","swiper","index"],function(e,t,o){function n(){var e=h.not(".hide");a(window).scrollTop()+c>=a(document).height()-.25*e.height()&&s(e,g[m])}var a=e("jquery"),i=e("js/guang/info"),s=i.loadMore,r=a("#load-more-info"),l=a(""),d=a(""),c=a(window).height(),u=a("#info-list"),h=u.children(".info-list"),p=a("#guang-nav"),f=p.children(".focus"),m=f.data("type"),g={};r.length>0&&(l=r.children(".loading"),d=r.children(".no-more")),i.initSwiper(m),i.initInfosEvt(u),function(){var e=a("#gender").val();p.children(".guang-nav-item").each(function(){var t=a(this).data("type"),o=a(this).hasClass("focus");g[t]={page:o?2:1,gender:e,type:t,end:!1}})}(),p.bind("contextmenu",function(e){return!1}),p.on("touchend touchcancel",function(e){var t,o,n=a(e.target).closest(".guang-nav-item");n.hasClass("focus")||(o=n.index(),n.addClass("focus"),f.removeClass("focus"),t=h.eq(o),f=n,m=n.data("type"),1===g[m].page?(l.addClass("hide"),d.addClass("hide"),g[m].isTab=!0,s(t,g[m])):g[m].end?(l.addClass("hide"),d.removeClass("hide")):(l.removeClass("hide"),d.addClass("hide")),h.not(".hide").addClass("hide"),t.removeClass("hide"),1===g[m].page&&window.rePosFooter())}),a(document).scroll(function(){window.requestAnimationFrame(n)}),p.on("touchstart",function(e){var t=e.target||e.srcElement;t.className="bytouch "+t.className}).on("touchend touchcancel",function(){p.find("li").removeClass("bytouch")})}),define("js/guang/list",["jquery","hammer","mlellipsis","lazyload","swiper","index"],function(e,t,o){function n(){a(window).scrollTop()+r>=a(document).height()-.25*p.height()&&s(p,h)}var a=e("jquery"),i=e("js/guang/info"),s=i.loadMore,r=a(window).height(),l=a("#author-infos"),d=a("#tag"),c=a("#gender"),u=a("#isApp"),h={page:2,end:!1},p=a("#info-list");i.initInfosEvt(p),l.length>0&&a.extend(h,{authorId:l.data("id"),isApp:u.val()}),d.length>0&&a.extend(h,{tag:d.val(),gender:c.val(),isApp:u.val()}),a(window).scroll(function(){window.requestAnimationFrame(n)})}),define("js/guang/detail",["jquery","mlellipsis","lazyload","iscroll-probe"],function(e,t,o){function n(e){var t=e.offset().left,o=-C+t+y/2+"px";r.css({backgroundPosition:o+" bottom"}),v&&b.css({backgroundPosition:o+" bottom"})}function a(e){var t,o,a,i=h(e.currentTarget),p=i.index();i.hasClass("focus")||(l.filter(".focus").removeClass("focus"),v&&(t=i.closest(".fixed-thumb-container").length>0?r:b,o=t.find(".thumb").eq(p),b.find(".thumb.focus").removeClass("focus"),o.addClass("focus")),i.addClass("focus"),n(i),d.not(".hide").addClass("hide"),a=d.eq(p),a.removeClass("hide"),f(a.find(".lazy")),v?u&&u.scrollToElement(c,400):h("body").animate({scrollTop:s.offset().top},400),u&&u.refresh())}function i(){var e,t,o,n,a,i=h("#scroller"),l=h(".yoho-header"),d=0;return l.length>0&&(d=l.outerHeight()),u=new m("#wrapper",{probeType:3,mouseWheel:!0,click:!0}),document.addEventListener("touchmove",function(e){e.preventDefault()},!1),w?(e=h(window).height()-d,a=b[0],t=r.outerHeight(),o=s.outerHeight(),n=s.offset().top-d,void u.on("scroll",function(){var s=-this.y,r=a.className;s<=n-e+t?r.indexOf("fixed-bottom")===-1&&b.addClass("fixed-bottom").removeClass("hide"):s<=n?r.indexOf("hide")===-1&&b.addClass("hide").removeClass("fixed-bottom fixed-top"):s<=n+o-t?r.indexOf("fixed-top")===-1&&b.addClass("fixed-top").removeClass("hide absolute").css("top",""):s<=n+o?(r.indexOf("absolute")===-1&&b.addClass("absolute").removeClass("fixed-top hide"),a.style.top=n+d+o-t-s+"px"):s>n+o&&r.indexOf("hide")===-1&&b.addClass("hide").removeClass("absolute"),i.trigger("scroll")})):void u.on("scroll",function(){i.trigger("scroll")})}var s,r,l,d,c,u,h=e("jquery"),p=e("mlellipsis"),f=e("lazyload"),m=e("iscroll-probe"),g=h(".author .intro"),v=!1,w=h(".collocation-block").length>0,y=0,b=h(""),c=document.querySelector("#wrapper .collocation-block"),C=h(window).width();window.onload=function(){u&&u.refresh()},h("img").on("load",function(){u&&u.refresh()}),t.i=function(e){var t,o,c=navigator.userAgent.indexOf("iPhone")>0;v=c&&e,p.init(),h(".good-detail-text .name").length>0&&h(".good-detail-text .name").each(function(){t=h(this),o=t.find("a"),o[0].mlellipsis(2)}),f(h(".lazy")),h(".info-list .title, .one-good .reco-name").each(function(){this.mlellipsis(2)}),g.offset()&&parseInt(g.offset().left,10)===parseInt(g.css("margin-left"),10)&&g.css("padding-top",0),v&&(h(".yoho-header").length>0?h("#wrapper").addClass("ios has-head"):h("#wrapper").addClass("ios")),w&&(s=h(".collocation-block"),r=s.children(".thumb-container"),l=r.find("li"),d=s.find(".prod"),y=l.width(),v&&(b=h("#wrapper").after(r.clone().addClass("fixed-thumb-container fixed-bottom")).next(".thumb-container"),f(b.find(".lazy"),{event:"sporty"})),n(l.filter(".focus")),r.delegate(".thumb","touchend",a),v&&b.delegate(".thumb","touchend",a)),v&&i()},h(".focus-btn").on("touchstart",function(){var e=h(this).siblings("textarea");e.select(),document.execCommand("Copy"),h(".weixin-pop-up").removeClass("hide")}),h(".know").on("touchstart",function(){h(".weixin-pop-up").addClass("hide")})}),define("js/guang/star-classroom",["jquery","swiper","lazyload","index"],function(e,t,o){function n(e){var t,o=new Image;t=e.data("avatar"),o.src=t,o.onload=function(){e.css("background-image","url("+t+")")}}function a(e){var t,o,a=d(".fan-charts-cont"),i=d(".my-intimacy"),s=d(".increased"),r=e.signDay.split(","),l="",c="",h=new Date,p=h.getFullYear(),f=h.getMonth(),m=u.calculateMonthDays(f,p);if(r.length>0)for(t=0;t<m;t++)for(o=0;o<r.length;o++)t===parseInt(r[o])&&d(".now-days").eq(t-1).addClass("sign-item");for(t=0;t<e.fanCharts.length;t++)c=0===t?"font-bold":"",l+='<li><i class="rank-ico">'+e.fanCharts[t].num+'</i><span data-avatar="'+e.fanCharts[t].img+'" class="rank-avatar"></span><span class="fans-name">'+e.fanCharts[t].name+'</span><div class="fans-intimacy">亲密度<span class="'+c+'">'+e.fanCharts[t].intimacyNum+"</span></div></li>";a.html(l),d(".fan-charts-cont .rank-avatar").each(function(e,t){""!==d(t).attr("data-avatar")&&n(d(t))}),i.find("span").html(e.todayIntimacy),s.find("span").html(e.todayIntimacy),0===e.intimacyNum?(d(".my-intimacy").hide(),d(".increased").show()):(d(".my-intimacy").show(),d(".increased").hide()),d(".pop-intimacy").css({zIndex:"10"}).show(),d(".classroom-mask").css({zIndex:"9"}).show(),d("body").css({overflow:"hidden"})}function i(e,t){return t+=/^[\u0000-\u00ff]$/.test(e)?1:2}function s(){var e,t,o=d(".home-floor-sign").find(".user-name"),n=o.html(),a=n.length,s=0,r="";for(e=0;e<a;e++)t=n.charAt(e),s=i(t,s),s<5&&(r+=t);s>8?r+=".."+n.charAt(a-1):r=n,o.html(r)}var r,l,d=e("jquery"),c=e("swiper"),u=e("js/guang/calendar"),h=e("lazyload"),p=e("js/plugin/tip");h(d("img.lazy")),d("body").addClass("star-class-body"),d(".banner-swiper").find("li").length>1&&(r=new c(".banner-swiper",{lazyLoading:!0,lazyLoadingInPrevNext:!0,loop:!0,autoplay:3e3,autoplayDisableOnInteraction:!1,paginationClickable:!0,slideElement:"li",pagination:".banner-top .pagination-inner"})),d(".collocation-swiper").find("li").length>1&&(l=new c(".collocation-swiper",{lazyLoading:!0,lazyLoadingInPrevNext:!0,lazyLoadingOnTransitionStart:!0,grabCursor:!0,slidesPerView:"auto",slideElement:"li",watchSlidesVisibility:!0})),d(".artice-zan").find("li").length>0&&d(".zan-more").show(),d(".home-floor-sign").length>0&&s(),d(document).on("touchstart",".like-ico",function(e){var t=d(this),o="";e.stopPropagation(),d.ajax({type:"POST",url:"/guang/starclass/setPraise",data:{articleId:t.parents("li").attr("articleId")},success:function(e){var n=e.code;200===n&&(t.hasClass("like")?t.removeClass("like"):t.addClass("like"),o=e.num>99?"+":"",t.parent().find(".zan-more").html(e.num+o))},error:function(){p.show("网络断开连接了~")}})}),d(".add-intimacy").on("touchstart",function(e){e.stopPropagation(),e.preventDefault(),d.ajax({type:"GET",url:"/guang/starclass/sign",success:function(e){var t=e.code;200===t&&a(e.data),201===t&&(d("#intimacy-link").length<=0&&d("body").append("<a href='"+e.data+'\' style="display:none;" id="intimacy-link"><span class="intimacy-link"></span></a>'),d(".intimacy-link").click())},error:function(){p.show("网络断开连接了~")}})}),d(".pop-intimacy .pop-close, .classroom-mask").on("click",function(){history.go(0)}),""!==d(".user-head").attr("data-avatar")&&n(d(".user-head"))}),define("js/guang/calendar",["jquery"],function(e,t,o){var n=e("jquery"),a={currentYear:0,currentMonth:0,initialize:function(){var e;e=this.createCalendar(0,0),n("#Container").append(e)},isRuiYear:function(e){return 0===e%4&&(e%100!==0||e%400===0)},calculateWeek:function(e,t,o){var n,a,i;return n="7123456".split(""),a=parseInt(o,10),i=n[new Date(e,t-1,a).getDay()]},calculateMonthDays:function(e,t){var o,n=0;return 0===e||1===e||3===e||5===e||7===e||8===e||10===e||12===e?n=31:2===e?(o=this.isRuiYear(t),n=o===!0?29:28):n=30,n},createCalendar:function(e,t){var o,a,i,s,r,l,d,c,u,h=["January","February","March","April","May","June","July","August","September","October","November","December"];if(o=n('<div class="day-item"></div>'),a=new Date,i=0===e?a.getFullYear():e,this.currentYear=i,s=0===t?a.getMonth()+1:t,this.currentMonth=s,r=this.calculateMonthDays(s,i),window.nowDaysNub=r,n(".cur-year").html(i),n(".cur-month").html(h[s-1]),l=parseInt(this.calculateWeek(i,s,1)),d=this.calculateMonthDays(s-1,i),0!==l)for(c=d-l;c<d;c++)o.append('<div class="item last-item">'+(c+1)+"</div>");for(c=1;c<=r;c++)o.append('<div class="item now-days">'+c+"</div>");if(u=l+r,u<41)for(c=0;c<=41-u;c++)o.append('<div class="item last-item">'+(c+1)+"</div>");return o}};n(document).ready(function(){a.initialize()}),t.calculateMonthDays=a.calculateMonthDays}),define("js/guang/collocation-list",["jquery","lazyload","mlellipsis"],function(e,t,o){function n(e){var t,o,n;r.showLoadingMask(),i.ajax({type:"GET",url:"/guang/starclass/ajaxCollocation",data:{page:e},dataType:"html",success:function(e){c=!1," "===e&&(c=!0,s.show("没有更多内容了")),i(".collocation-list").append(e),i(".cont-area").each(function(){t=i(this),o=t.find(".title"),n=t.find(".cont-txt"),o[0].mlellipsis(2),n[0].mlellipsis(2)}),r.hideLoadingMask(),l(i("img.lazy"))},error:function(){s.show("网络断开连接了~")}})}function a(){!c&&i(window).scrollTop()+i(window).height()>i("body").height()-100&&(c=!0,u++,n(u))}var i=e("jquery"),s=e("js/plugin/tip"),r=e("js/plugin/loading"),l=e("lazyload"),d=e("mlellipsis"),c=!1,u=1;d.init(),i("body").addClass("star-class-body"),window.successShare=function(){i.ajax({type:"POST",url:"/guang/starclass/forward",success:function(e){var t=e.code;200===t&&e.data>0&&s.show("分享成功,亲密度+10")},error:function(){s.show("网络断开连接了~")}})},i(window).scroll(function(){a()}),0===i(".collocation-list").find("li").length&&n(1),i(document).on("touchstart",".collection",function(e){var t,o=i(this),n=o.find(".collected-ico");e.stopPropagation(),t=n.hasClass("collected")?"del":"fav",i.ajax({type:"POST",url:"/guang/starclass/setFavorite",data:{articleId:o.parents("li").attr("articleId"),type:t},success:function(e){var t=e.code;200===t&&(n.hasClass("collected")?n.removeClass("collected"):n.addClass("collected")), -201===t&&(i("#collocation-link").length<=0&&i("body").append("<a href='"+e.data+'\' style="display:none;" id="collocation-link"><span class="collocation-link"></span></a>'),i(".collocation-link").click())},error:function(){s.show("网络断开连接了~")}})})}),define("js/guang/check-top",["jquery"],function(e,t,o){function n(e){var t,o=new Image;t=e.data("avatar"),o.src=t,o.onload=function(){e.css("background-image","url("+t+")")}}var a=e("jquery");a("body").addClass("star-class-body"),a(".ranking-area li").length>0&&a.each(a(".ranking-area li"),function(e,t){n(a(t).find(".rank-avatar"))}),""!==a(".user-avatar").attr("data-avatar")&&n(a(".user-avatar"))}),define("js/home/entry",["jquery","swiper","lazyload","hammer","mlellipsis","index"],function(e,t,o){e("js/home/home"),e("js/home/maybe-like")}),define("js/home/home",["jquery","swiper","lazyload","hammer","mlellipsis","index"],function(e,t,o){function n(){x=!1,v.hasClass("menu-open")&&(v.removeClass("menu-open"),w.hide(),p(".sub-nav").removeClass("show"),y.removeClass("on"))}function a(e){e.find("li").on("touchstart",function(){e.find(".highlight").removeClass("highlight"),p(this).addClass("highlight")}).on("touchend touchcancel",function(){p(this).removeClass("highlight")})}function i(){C+=10,j.css({transform:"rotateX("+C+"deg)","-webkit-transform":"rotateX("+C+"deg)","-moz-transform":"rotateX("+C+"deg)"}),C/90%2===1&&(k?(j.addClass("animate"),k=!1):(j.removeClass("animate"),k=!0)),C/90%2===0&&C%360!==0?window.setTimeout(i,3e3):C%360===0?window.setTimeout(i,6e4):window.requestAnimationFrame(i)}var s,r,l,d,c,u,h,p=e("jquery"),f=e("swiper"),m=e("lazyload"),g=e("js/plugin/notice-scroll"),v=p(".mobile-wrap"),w=p(".overlay"),y=p(".side-nav"),b=p(".sub-nav"),C=0,j=p(".home-header .logo"),x=!1,k=!0,T=e("js/home/fastclick");T(document.body),m(p("img.lazy")),g(".notice",1e3*p(".notice").data("time")),p(".nav-btn").on("touchstart",function(){return y.css("pointer-events","none"),v.addClass("menu-open"),w.show().css("opacity",.3),y.addClass("on"),x=!0,setTimeout(function(){y.css("pointer-events","auto")},400),!1}),w.on("touchstart",function(){return n(),!1}),y.on("touchmove scroll",function(){return!1}),y.on("touchend","li",function(e){if(p(this).find(".sub-nav").size()>0&&(p(".sub-nav").removeClass("show"),p(this).find(".sub-nav").addClass("show"),p(this).find(".highlight").removeClass("highlight")),e.target.pathname===location.pathname)return n(),!1}),b.each(function(){p(this).find("li").eq(0).on("click",function(){return p(".sub-nav").removeClass("show"),!1})}).on("touchstart",function(e){e.currentTarget!==e.target&&b.find("li").removeClass("current")}),a(y),a(b),p(".banner-swiper").find("li").size()>1&&(s=new f(".banner-swiper",{lazyLoading:!0,lazyLoadingInPrevNext:!0,loop:!0,autoplay:3e3,autoplayDisableOnInteraction:!1,paginationClickable:!0,slideElement:"li",pagination:".banner-top .pagination-inner"})),l=new f(".brands-swiper",{grabCursor:!0,slidesPerView:"auto",wrapperClass:"brands-list",slideElement:"li"}),r=new f(".recommend-swiper",{grabCursor:!0,slidesPerView:"auto",wrapperClass:"recommend-list",slideElement:"li"}),p(".trend-topic-swiper").find("li").size()>1&&(d=new f(".trend-topic-swiper",{loop:!0,autoplay:3e3,autoplayDisableOnInteraction:!1,paginationClickable:!0,slideElement:"li",pagination:".trend-topic-content .pagination-inner"})),p(".fresh-list-swiper").find("li").size()>1&&(u=new f(".fresh-list-swiper",{lazyLoading:!0,lazyLoadingInPrevNext:!0,grabCursor:!0,slidesPerView:"auto",slideElement:"li",watchSlidesVisibility:!0})),p(".category-swiper").each(function(e,t){h="category-swiper"+e,p(this).addClass(h),p("."+h).find(".swiper-slide").size()>1&&(c=new f("."+h,{loop:!0,autoplay:3e3,autoplayDisableOnInteraction:!1,paginationClickable:!0,slideElement:"li",pagination:"."+h+" .pagination-inner"}))}),setTimeout(i,3e3),p(".home-header .iconfont").on("touchstart",function(){p(this).addClass("highlight")}).on("touchend touchcancel",function(){p(this).removeClass("highlight")}),window.reMarginFooter(".footer-tab"),t.set=function(e){window.setCookie("_Channel",e,{expires:365,domain:".m.yohobuy.com"})},e("js/home/maybe-like")()}),define("js/plugin/notice-scroll",["jquery"],function(e,t,o){function n(e,t){var o=a(e),n=o.find(".notice-item"),i=n.length,s=1;e=e||".notice",t=t||3e3,i>1&&setInterval(function(){s>=i&&(s=0),n.fadeOut(),o.find(".item-"+s).fadeIn(),s++},t)}var a=e("jquery");o.exports=n}),define("js/home/fastclick",[],function(e,t,o){!function(){"use strict";function e(t,o){function a(e,t){return function(){return e.apply(t,arguments)}}var i;if(o=o||{},this.trackingClick=!1,this.trackingClickStart=0,this.targetElement=null,this.touchStartX=0,this.touchStartY=0,this.lastTouchIdentifier=0,this.touchBoundary=o.touchBoundary||10,this.layer=t,this.tapDelay=o.tapDelay||200,this.tapTimeout=o.tapTimeout||700,!e.notNeeded(t)){for(var s=["onMouse","onClick","onTouchStart","onTouchMove","onTouchEnd","onTouchCancel"],r=this,l=0,d=s.length;l<d;l++)r[s[l]]=a(r[s[l]],r);n&&(t.addEventListener("mouseover",this.onMouse,!0),t.addEventListener("mousedown",this.onMouse,!0),t.addEventListener("mouseup",this.onMouse,!0)),t.addEventListener("click",this.onClick,!0),t.addEventListener("touchstart",this.onTouchStart,!1),t.addEventListener("touchmove",this.onTouchMove,!1),t.addEventListener("touchend",this.onTouchEnd,!1),t.addEventListener("touchcancel",this.onTouchCancel,!1),Event.prototype.stopImmediatePropagation||(t.removeEventListener=function(e,o,n){var a=Node.prototype.removeEventListener;"click"===e?a.call(t,e,o.hijacked||o,n):a.call(t,e,o,n)},t.addEventListener=function(e,o,n){var a=Node.prototype.addEventListener;"click"===e?a.call(t,e,o.hijacked||(o.hijacked=function(e){e.propagationStopped||o(e)}),n):a.call(t,e,o,n)}),"function"==typeof t.onclick&&(i=t.onclick,t.addEventListener("click",function(e){i(e)},!1),t.onclick=null)}}var t=navigator.userAgent.indexOf("Windows Phone")>=0,n=navigator.userAgent.indexOf("Android")>0&&!t,a=/iP(ad|hone|od)/.test(navigator.userAgent)&&!t,i=a&&/OS 4_\d(_\d)?/.test(navigator.userAgent),s=a&&/OS [6-7]_\d/.test(navigator.userAgent),r=navigator.userAgent.indexOf("BB10")>0;e.prototype.needsClick=function(e){switch(e.nodeName.toLowerCase()){case"button":case"select":case"textarea":if(e.disabled)return!0;break;case"input":if(a&&"file"===e.type||e.disabled)return!0;break;case"label":case"iframe":case"video":return!0}return/\bneedsclick\b/.test(e.className)},e.prototype.needsFocus=function(e){switch(e.nodeName.toLowerCase()){case"textarea":return!0;case"select":return!n;case"input":switch(e.type){case"button":case"checkbox":case"file":case"image":case"radio":case"submit":return!1}return!e.disabled&&!e.readOnly;default:return/\bneedsfocus\b/.test(e.className)}},e.prototype.sendClick=function(e,t){var o,n;document.activeElement&&document.activeElement!==e&&document.activeElement.blur(),n=t.changedTouches[0],o=document.createEvent("MouseEvents"),o.initMouseEvent(this.determineEventType(e),!0,!0,window,1,n.screenX,n.screenY,n.clientX,n.clientY,!1,!1,!1,!1,0,null),o.forwardedTouchEvent=!0,e.dispatchEvent(o)},e.prototype.determineEventType=function(e){return n&&"select"===e.tagName.toLowerCase()?"mousedown":"click"},e.prototype.focus=function(e){var t;a&&e.setSelectionRange&&0!==e.type.indexOf("date")&&"time"!==e.type&&"month"!==e.type?(t=e.value.length,e.setSelectionRange(t,t)):e.focus()},e.prototype.updateScrollParent=function(e){var t,o;if(t=e.fastClickScrollParent,!t||!t.contains(e)){o=e;do{if(o.scrollHeight>o.offsetHeight){t=o,e.fastClickScrollParent=o;break}o=o.parentElement}while(o)}t&&(t.fastClickLastScrollTop=t.scrollTop)},e.prototype.getTargetElementFromEventTarget=function(e){return e.nodeType===Node.TEXT_NODE?e.parentNode:e},e.prototype.onTouchStart=function(e){var t,o,n;if(e.targetTouches.length>1)return!0;if(t=this.getTargetElementFromEventTarget(e.target),o=e.targetTouches[0],a){if(n=window.getSelection(),n.rangeCount&&!n.isCollapsed)return!0;if(!i){if(o.identifier&&o.identifier===this.lastTouchIdentifier)return e.preventDefault(),!1;this.lastTouchIdentifier=o.identifier,this.updateScrollParent(t)}}return this.trackingClick=!0,this.trackingClickStart=e.timeStamp,this.targetElement=t,this.touchStartX=o.pageX,this.touchStartY=o.pageY,e.timeStamp-this.lastClickTime<this.tapDelay&&e.preventDefault(),!0},e.prototype.touchHasMoved=function(e){var t=e.changedTouches[0],o=this.touchBoundary;return Math.abs(t.pageX-this.touchStartX)>o||Math.abs(t.pageY-this.touchStartY)>o},e.prototype.onTouchMove=function(e){return!this.trackingClick||((this.targetElement!==this.getTargetElementFromEventTarget(e.target)||this.touchHasMoved(e))&&(this.trackingClick=!1,this.targetElement=null),!0)},e.prototype.findControl=function(e){return void 0!==e.control?e.control:e.htmlFor?document.getElementById(e.htmlFor):e.querySelector("button, input:not([type=hidden]), keygen, meter, output, progress, select, textarea")},e.prototype.onTouchEnd=function(e){var t,o,r,l,d,c=this.targetElement;if(!this.trackingClick)return!0;if(e.timeStamp-this.lastClickTime<this.tapDelay)return this.cancelNextClick=!0,!0;if(e.timeStamp-this.trackingClickStart>this.tapTimeout)return!0;if(this.cancelNextClick=!1,this.lastClickTime=e.timeStamp,o=this.trackingClickStart,this.trackingClick=!1,this.trackingClickStart=0,s&&(d=e.changedTouches[0],c=document.elementFromPoint(d.pageX-window.pageXOffset,d.pageY-window.pageYOffset)||c,c.fastClickScrollParent=this.targetElement.fastClickScrollParent),r=c.tagName.toLowerCase(),"label"===r){if(t=this.findControl(c)){if(this.focus(c),n)return!1;c=t}}else if(this.needsFocus(c))return e.timeStamp-o>100||a&&window.top!==window&&"input"===r?(this.targetElement=null,!1):(this.focus(c),this.sendClick(c,e),a&&"select"===r||(this.targetElement=null,e.preventDefault()),!1);return!(!a||i||(l=c.fastClickScrollParent,!l||l.fastClickLastScrollTop===l.scrollTop))||(this.needsClick(c)||(e.preventDefault(),this.sendClick(c,e)),!1)},e.prototype.onTouchCancel=function(){this.trackingClick=!1,this.targetElement=null},e.prototype.onMouse=function(e){return!this.targetElement||(!!e.forwardedTouchEvent||(!e.cancelable||(!(!this.needsClick(this.targetElement)||this.cancelNextClick)||(e.stopImmediatePropagation?e.stopImmediatePropagation():e.propagationStopped=!0,e.stopPropagation(),e.preventDefault(),!1))))},e.prototype.onClick=function(e){var t;return this.trackingClick?(this.targetElement=null,this.trackingClick=!1,!0):"submit"===e.target.type&&0===e.detail||(t=this.onMouse(e),t||(this.targetElement=null),t)},e.prototype.destroy=function(){var e=this.layer;n&&(e.removeEventListener("mouseover",this.onMouse,!0),e.removeEventListener("mousedown",this.onMouse,!0),e.removeEventListener("mouseup",this.onMouse,!0)),e.removeEventListener("click",this.onClick,!0),e.removeEventListener("touchstart",this.onTouchStart,!1),e.removeEventListener("touchmove",this.onTouchMove,!1),e.removeEventListener("touchend",this.onTouchEnd,!1),e.removeEventListener("touchcancel",this.onTouchCancel,!1)},e.notNeeded=function(e){var t,o,a,i;if("undefined"==typeof window.ontouchstart)return!0;if(o=+(/Chrome\/([0-9]+)/.exec(navigator.userAgent)||[,0])[1]){if(!n)return!0;if(t=document.querySelector("meta[name=viewport]")){if(t.content.indexOf("user-scalable=no")!==-1)return!0;if(o>31&&document.documentElement.scrollWidth<=window.outerWidth)return!0}}if(r&&(a=navigator.userAgent.match(/Version\/([0-9]*)\.([0-9]*)/),a[1]>=10&&a[2]>=3&&(t=document.querySelector("meta[name=viewport]")))){if(t.content.indexOf("user-scalable=no")!==-1)return!0;if(document.documentElement.scrollWidth<=window.outerWidth)return!0}return"none"===e.style.msTouchAction||"manipulation"===e.style.touchAction||(i=+(/Firefox\/([0-9]+)/.exec(navigator.userAgent)||[,0])[1],!!(i>=27&&(t=document.querySelector("meta[name=viewport]"),t&&(t.content.indexOf("user-scalable=no")!==-1||document.documentElement.scrollWidth<=window.outerWidth)))||("none"===e.style.touchAction||"manipulation"===e.style.touchAction))},e.attach=function(t,o){return new e(t,o)},"function"==typeof define&&"object"==typeof define.amd&&define.amd?define(function(){return e}):"undefined"!=typeof o&&o.exports?(o.exports=e.attach,o.exports.FastClick=e):window.FastClick=e}()}),define("js/home/maybe-like",["jquery","hammer","mlellipsis","lazyload"],function(e,t,o){o.exports=function(t){function o(){w||(w=!0,p.showLoadingMask(),c.ajax({type:"GET",url:s,data:{page:y+1},success:function(e){var o=[];return" "===e?(w=!1,p.hideLoadingMask(),void(b&&!t&&(s="1,3"===b?"/boys/bottomBanner":"/girls/bottomBanner",c.ajax({type:"GET",url:s,success:function(e){e&&e.img&&(c("#load-more-img").show(),c("#load-more-img a").attr("href",e.url),c("#load-more-img a > img").attr("src",e.img))},error:function(){}})))):(e.length>1&&(d?null:d=c("#yoho-footer"),d.hasClass("bottom")?d.removeClass("bottom"):null),i=v.find(".good-info").length,v.append(e),m(0===i?v.find(".good-info").find("img.lazy"):v.find(".good-info:gt("+(i-1)+")").find("img.lazy")),w=!1,p.hideLoadingMask(),y++,c(".good-detail-text .name").each(function(){var e=c(this),t=e.find("a");t[0].mlellipsis(2)}),c(e).closest(".good-info").each(function(){o.push(c(this).data("id"))}),void window.givePoint({REC_POSE:C,PRD_ID:o.join(","),PRD_NUM:c(e).closest(".good-info").length,ACTION_ID:0,page_num:110009===C?1:y}))},error:function(){h.show("网络断开连接了~"),w=!1,p.hideLoadingMask()}}))}function n(){c(window).scrollTop()+g>=c(document).height()-200&&o()}var a,i,s,r,l,d,c=e("jquery"),u=e("hammer"),h=e("js/plugin/tip"),p=e("js/plugin/loading"),f=e("mlellipsis"),m=e("lazyload"),g=c(window).height(),v=c("#goods-list"),w=!1,y=0,b=null,C="110001",j=!("kids"!==t&&!c(".mobile-wrap").hasClass("kids-wrap")),x=!("lifestyle"!==t&&!c(".mobile-wrap").hasClass("lifestyle-wrap")),k=!!c(".coin").length,T=!!c(".logistic-page").length,q=c("#maybe-like-nav");f.init(),j?s="/product/recom/maylikekids":x?s="lifestyle"===t?"/product/recom/maylike?gender=1,3&rec_pos=100001":"/product/recom/maylikelife":k?(b="boys"===t||c(".mobile-wrap").hasClass("boys-wrap")?"1,3&rec_pos=100009":"2,3&rec_pos=100009",s="/product/recom/maylike?gender="+b,C=110009):T?(b="boys"===t||c(".mobile-wrap").hasClass("boys-wrap")?"1,3&rec_pos=100006":"2,3&rec_pos=100006",s="/product/recom/maylike?gender="+b,C=110006):(b="boys"===t||c(".mobile-wrap").hasClass("boys-wrap")?"1,3&rec_pos=100001":"2,3&rec_pos=100002",s="/product/recom/maylike?gender="+b),c(".mobile-wrap").hasClass("yoho-channel-page")&&(s="/product/recom/newPreference?template_id="+c.queryString().template_id),"/boys"===window.location.pathname?C=110001:"/girls"===window.location.pathname&&(C=110002),r=q.children(".focus"),x&&(a=q[0]?new u(q[0]):void 0,a&&a.on("tap",function(e){var t,o=c(e.target).closest("li"),n=c(".goods-list");e.preventDefault(),o.hasClass("focus")||(l=o.index(),o.addClass("focus"),r.removeClass("focus"),n.not(".hide").addClass("hide"),t=n.eq(l),t.removeClass("hide"),r=o,c(document).trigger("scroll"),e.srcEvent.stopPropagation())})),p.init(c(".maybe-like")),c(".maybe-like p").on("touchstart",function(e){o()}),t&&o(),c(window).scroll(function(){window.requestAnimationFrame(n)}),c(".maybe-like .goods-list").on("click","a",function(){var e=c(this).closest(".good-info").index()+1,t=50;return window.givePoint({REC_POSE:C,PRD_ID:c(this).closest(".good-info").data("id"),PRD_NUM:e%t===0?t:e%t,ACTION_ID:1,page_num:Math.ceil(e/t)}),!0})}}),define("js/index/entry",["jquery","hammer","handlebars","source-map","swiper","index"],function(e,t,o){e("js/index/search"),e("js/index/footer"),e("js/index/channel"),e("js/index/coupon")}),define("js/index/search",["jquery","hammer","handlebars","source-map"],function(e,t,o){function n(){var e=r(".search-associate"),t=r(".search-icon"),o=r(".search-items");h.on("input",function(){""===h.val()?(t.css("color","#b2b2b2"),p.addClass("hide"),e.html(""),o.show(),e.hide()):(t.css("color","#666"),p.removeClass("hide"),e.show()),r.ajax({url:"/index/search/fuzzyDatas",data:{keyword:h.val()},dataType:"json",success:function(t){var n,i="";if(t.length>0){for(n=0;n<t.length;n++)i+='<li><span class="keyword">'+t[n].keyword+'</span><span class="count">'+t[n].count+' items<i class="iconfont"></i></span></li>';e.html(i),o.hide()}else e.html("");e.find("li").on("touchend",function(){a(r(this).find(".keyword").html())})},error:function(){d.show("网络断开连接了~")}})})}function a(e){b.setHistoryValFun(e),document.location.href=y+"?query="+e}var i,s,r=e("jquery"),l=e("js/plugin/security"),d=e("js/plugin/tip"),c=e("hammer"),u=e("js/me/dialog"),h=r("#search-input input"),p=r("#search-input .clear-input"),f=r("#search-form"),m=r(".history"),g=r(".history-search"),v=r("#clear-history"),w=(r(".buriedpoint"),r("#search")),y=w.closest("form").attr("action"),b=e("js/index/write-search"),C=b.getRanToken(),j=b.getHistoryval();i=new c(v[0]),i.on("tap",function(){u.showDialog({dialogText:"您确定要删除您的最近搜索吗?",hasFooter:{leftBtnText:"取消",rightBtnText:"确定"}},function(){localStorage&&localStorage.removeItem(j),m.html(""),g.hide(),v.hide(),window.rePosFooter(),u.showDialog({dialogText:"删除成功",autoHide:!0,fast:!0})})}),r(".search-items .search-group").on("click","li",function(e){var t="";"A"===e.target.nodeName&&(t=r(e.target).html()),"LI"===e.target.nodeName&&(t=r(e.target).find("a").html()),a(t)}),n(),s=new c(p[0]),s.on("tap",function(){h.val("").trigger("input")}),w.on("touchend",function(){var e=f.find(".buriedpoint");return""===e.val()&&e.val(r("#default-terms").val()),b.setHistoryValFun(e.val()),!l.hasDangerInput()&&(r(this).closest("form").submit(),!1)}),function(){var e,t,o,n="",a=1;if(localStorage&&(t=localStorage.getItem(j),t&&t.length>0)){for(t=t.split(C),o=t.length;o>0;o--)if(e=t[o-1],""!==e){if(a++>10)break;n+='<li><a href="javascript:void(0);">'+e+"</li>"}m.html(n),""!==n&&(v.removeClass("hide"),g.removeClass("hide")),window.rePosFooter()}}()}),define("js/plugin/security",["jquery"],function(e,t,o){function n(e){var t,o,n,s=a("input[type!=hidden], textarea"),r=/['"<>&\|]|--/g,l=s.length,d=void 0===e||"boolean"!=typeof e||e;for(o=0;o<l;o++)if(t=s.eq(o).val(),r.test(t))return d?s.eq(o).val(t.replace(r," ")):(n=t.match(r).join(" "),i.show("不可以输入 "+n+" 哦!")),!d&&!0;return!1}var a=e("jquery"),i=e("js/plugin/tip");t.hasDangerInput=n}),define("js/me/dialog",["jquery","handlebars","source-map","hammer"],function(e,t,o){function n(){return void 0===i&&(i='<div id="dialog-wrapper" class="dialog-wrapper"><div class="dialog-box">{{# hasHeader}}{{/ hasHeader}}<div class="dialog-content">{{dialogText}}</div>{{# hasFooter}}<div class="dialog-footer">{{# leftBtnText}}<span class="dialog-left-btn tap-hightlight">{{.}}</span>{{/ leftBtnText}}{{# rightBtnText}}<span class="dialog-right-btn tap-hightlight">{{.}}</span>{{/ rightBtnText}}</div>{{/ hasFooter}}</div></div>',s=l.compile(i)),s}var a,i,s,r=e("jquery"),l=e("handlebars"),d=e("hammer");t.showDialog=function(e,t,o,i){var s,l,c,u=n(),h=u(e);r(".dialog-wrapper").remove(),r("body").append(r(h)),s=r(".dialog-box"),a=r(".dialog-wrapper"),c=new d(document.getElementById("dialog-wrapper")),e.fast?a.css({display:"block"}):a.fadeIn(),i&&(r(".dialog-wrapper .dialog-footer > span").css("width","100%"),r(".dialog-wrapper .dialog-content").css({"padding-left":"1.85rem","padding-right":"1.85rem"}),a.css("z-index","10")),s.css({top:"50%",marginTop:-(s.height()/2)}),e.autoHide&&(l=1e3,e.autoHide>1&&(l=e.autoHide),setTimeout(function(){a.fadeOut()},l)),a.on("touchmove",function(){return!1}),c.on("tap",function(e){r(e.target).hasClass("dialog-left-btn")?("function"==typeof o&&o(),a.fadeOut()):r(e.target).hasClass("dialog-right-btn")&&t(),e.preventDefault(),e.srcEvent.stopPropagation()})},t.hideDialog=function(){r(".dialog-wrapper").remove()}}),define("js/index/write-search",[],function(e,t,o){function n(){return r}function a(){return l}function i(e){e.on("submit",function(){var e=this.query.value;s(e)})}function s(e){var t;localStorage&&(t=localStorage.getItem(l),t=t?t.replace(new RegExp(e+r,"g"),""):"",""===t&&(e=r+e),t+=e+r,localStorage.setItem(l,t))}var r=",",l="historys1";t.getRanToken=n,t.getHistoryval=a,t.setHistoryValFun=s,t.bindWirteLocal=i}),define("js/index/footer",["jquery","hammer"],function(e,t,o){function n(e){var t=new RegExp("(^|&)"+e+"=([^&]*)(&|$)","i"),o=window.location.search.substr(1).match(t);return null!=o?window.unescape(o[2]):null}function a(){var e="http://www.yohoshow.com/about/index/yohobuyqr/",t=new Date;setTimeout(function(){var o=n("mkt_code");new Date-t<2e3&&(o&&(e+="?union_type="+o),window.location=e)},500)}var i,s=e("jquery"),r=e("hammer");e("js/common"),s("#float-layer-close").on("touchend",function(e){return s("#float-layer-app").hide(),window.setCookie("_float-layer-app","id490655927",{domain:".yohobuy.com"}),window.setCookie("_float-layer-app-close",1,{domain:".yohobuy.com",expires:1}),!1}),s("#float-layer-btn")&&s("#float-layer-btn")[0]&&(i=new r(s("#float-layer-btn")[0]),i.on("tap",function(e){a("bottom"),e.srcEvent.stopPropagation()}),"function"!=typeof window.cookie||window.cookie("_float-layer-app")?s("#float-layer-app").hide():s("#float-layer-app").show())}),define("js/index/channel",["jquery","hammer"],function(e,t,o){var n=e("jquery"),a=e("js/plugin/security"),i=n(".search-box"),s=n(".box"),r=n(".index-search"),l=n(".index-logo"),d=n(".index-channel a:not(#yohood)"),c=i.children('input[type="text"]'),u=s.children(".no-search"),h=i.children(".search-icon");e("js/common"),c.on("focus",function(){s.addClass("action"),l.addClass("action")}).on("input",function(){""===c.val()?h.addClass("empty"):h.removeClass("empty")}),u.on("touchend",function(){return s.removeClass("action"),l.removeClass("action"),c.blur(),!1}),i.children(".clear-text").on("touchstart",function(){c.val("").focus().trigger("input")}),i.children(".search-icon").on("touchstart",function(){return!a.hasDangerInput()&&void r.submit()}),i.keyup(function(e){if(13===e.keyCode){if(a.hasDangerInput())return!1;r.submit()}}),n(".index-channel img").on("load error",function(){window.rePosFooter&&window.rePosFooter()}),d.on("touchstart",function(){d.css({background:"#000",color:"#fff",borderColor:"#fff"}),n(this).css({background:"rgba(255, 255, 255, 0.5)",color:"#000",borderColor:"#000"})}).on("touchend touchcancel",function(){n(this).css({background:"#000",color:"#fff",borderColor:"#fff"})})}),define("js/index/coupon",["jquery","swiper","index"],function(e,t,o){function n(e){var t=new RegExp("(^|&)"+e+"=([^&]*)(&|$)"),o=window.location.search.substr(1).match(t);return null!=o?o[2]:null}var a,i=e("jquery"),s=e("swiper"),r=i(".main-right-receive"),l=i(".floor-mask"),d=i(".floor-message"),c=i(".floor-tooltip"),u=e("js/plugin/tip");r.on("click",function(){var e=i(this),t="";n("app_version")&&(t+="&app_version="+n("app_version")),n("uid")&&(t+="&uid="+n("uid")),i.ajax({url:"//m.yohobuy.com/coupon/receiveCoupon?code="+n("code")+t,data:{couponID:e.parents(".coupon-floor").attr("coupon-id")},dataType:"json",success:function(t){var o=t.msg,a=t.status,s=t.url+"?code="+n("code");t.isApp===!0&&(s=t.url),t.noLogin===!0?(i("#intimacy-link").length<=0&&i("body").append("<a href='"+s+'\' style="display:none;" id="intimacy-link"><span class="intimacy-link"></span></a>'),i(".intimacy-link").click()):a?(e.hide(),e.next().show(),c.show(),setTimeout(function(){c.hide()},3e3)):(d.find(".coupon-message-content").text(o),l.show(),d.show())},error:function(){u.show("网络异常!")}})}),i(".coupon-floor a, .banner-top a").on("click",function(){if(i(this).attr("href").length<=0||"#"===i(this).attr("href"))return!1}),i(".banner-swiper").find("li").length>1&&(a=new s(".banner-swiper",{lazyLoading:!0,lazyLoadingInPrevNext:!0,loop:!0,autoplay:3e3,autoplayDisableOnInteraction:!1,paginationClickable:!0,slideElement:"li",pagination:".banner-top .pagination-inner"})),i(".coupon-message-op-rel").on("click",function(){location.reload()}),i("#noData").length>0&&location.href.indexOf("?openby:yohobuy=")<=0&&u.show("网络异常!"),l.on("click",function(){l.hide(),d.hide()})}),define("js/passport/entry",["jquery","handlebars","source-map","hammer"],function(e,t,o){e("js/passport/register/register"),e("js/passport/register/code"),e("js/passport/register/password"),e("js/passport/login/login"),e("js/passport/login/international"),e("js/passport/back/mobile"),e("js/passport/back/code"),e("js/passport/back/email"),e("js/passport/back/email-success"),e("js/passport/back/new-password"),e("js/passport/bind/bind"),e("js/passport/bind/code"),e("js/passport/bind/password"),e("js/passport/bind/relate")}),define("js/passport/register/register",["jquery"],function(e,t,o){var n=e("jquery"),a=n("#phone-num"),i=n("#country-select"),s=n("#area-code"),r=n("#btn-next"),l=e("js/passport/api"),d=e("js/plugin/tip"),c=n.trim,u=d.show,h=!1;l.selectCssHack(n("#country-select")),l.bindClearEvt(),a.bind("input",function(){""===c(a.val())?r.addClass("disable"):r.removeClass("disable")}),i.change(function(){s.text(i.val())}),r.on("touchstart",function(){var e=c(a.val()),t=i.val();if(!r.hasClass("disable"))return!h&&void(l.phoneRegx[t].test(e)?(h=!0,n.ajax({url:"/passport/reg/verifymobile",type:"POST",data:{areaCode:t.replace("+",""),phoneNum:e},success:function(e){200===e.code?location.href=e.data:(u(e.message),h=!1)},error:function(e){u("出错了,请重试"),h=!1}})):u("手机号格式不正确,请重新输入"))})}),define("js/passport/api",["jquery"],function(e,t,o){function n(e){var t,o=r(".has-eye");e&&"open"===e.status?o.append('<div class="eye"></div>'):o.append('<div class="eye close"></div>'),t=o.children(".eye"),t.on("touchstart",function(e){var t=r(this),o=t.siblings(".pwd");e.preventDefault(),t.toggleClass("close"),t.hasClass("close")?o.attr("type","password"):o.attr("type","text"),o.focus()})}function a(){var e,t=r(".has-clear");t.append('<div class="clear-input"></div>'),e=t.children(".clear-input"),e.on("touchstart",function(t){var o=e.siblings(".input");o.val("").trigger("input").focus(),t.preventDefault()}),t.children(".input").bind("input",function(){var e=r(this),t=e.siblings(".clear-input"),o=l(e.val());""===o?t.hide():t.show()})}function i(e){return e.length>=6&&e.length<=20}function s(e){function t(){var t=e.find("option:selected").text().length;switch(t){case 2:e.outerWidth(90);break;case 3:e.outerWidth(110);break;default:e.outerWidth(130)}}var o=navigator.userAgent;o.match(/uc/i)&&o.match(/android/i)?e.change(function(){t()}):e.removeClass("in-android-uc")}var r=e("jquery"),l=r.trim,d=/^([a-zA-Z0-9]+[_|\_|\.|-]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.|-]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/,c={"+86":/^1[35847]{1}[0-9]{9}$/,"+852":/^[965]{1}[0-9]{7}$/,"+853":/^[0-9]{8}$/,"+886":/^[0-9]{10}$/,"+65":/^[98]{1}[0-9]{7}$/,"+60":/^1[1234679]{1}[0-9]{8}$/,"+1":/^[0-9]{10}$/,"+82":/^01[0-9]{9}$/,"+44":/^7[789][0-9]{8}$/,"+81":/^0[9|8|7][0-9]{9}$/,"+61":/^[0-9]{11}$/};o.exports={emailRegx:d,phoneRegx:c,bindEyesEvt:n,bindClearEvt:a,pwdValidate:i,selectCssHack:s}}),define("js/passport/register/code",["jquery"],function(e,t,o){e("js/passport/code")(!0)}),define("js/passport/code",["jquery"],function(e,t,o){var n=e("jquery");o.exports=function(t,o,a){function i(){n.ajax({url:o?"/passport/bind/bindMobile":"/passport/bind/relateMobile",type:"post",data:{areaCode:m.replace("+",""),phoneNum:f,openId:p,sourceType:h,nickname:u,password:"",code:w(l.val())},success:function(e){200===e.code?(v.show("登录成功"),setTimeout(function(){location.href=e.data.refer},2e3)):v.show(e.message)},error:function(e){v.show("登录失败,请重试!")}})}function s(){n.ajax({type:"POST",url:"/passport/"+b+"/verifycode",data:{phoneNum:f,areaCode:m,code:w(l.val()),token:n("#token").val()},success:function(e){200===e.code?location.href=e.data:y(e.message)}})}function r(){var e,t=59;e=setInterval(function(){0===t?(c.text("重新发送").removeClass("disable"),clearInterval(e)):c.text("重新发送 ("+t--+"秒)")},1e3)}var l=n("#captcha"),d=n("#btn-next"),c=n("#captcha-tip"),u=n("#nickname").val(),h=n("#sourceType").val(),p=n("#openId").val(),f=n("#phone-num").val(),m=n("#area-code").val().replace("+",""),g=e("js/passport/api"),v=e("js/plugin/tip"),w=n.trim,y=v.show,b=t?"reg":"back",C=parseInt(n("#isReg").val());g.bindClearEvt(),l.bind("input",function(){""!==w(l.val())?d.removeClass("disable"):d.addClass("disable")}),c.on("touchstart",function(){c.hasClass("disable")||n.ajax({type:"POST",url:o||a?"/passport/bind/sendBindMsg":"/passport/"+b+"/sendcode",data:{phoneNum:f,areaCode:m},success:function(e){200===e.code?(c.text("重发验证码 (60秒)").addClass("disable"),r()):y(e.message)}})}),d.on("touchstart",function(){d.hasClass("disable")||(o||a?C?i():location.href="/passport/bind/password?phoneNum="+f+"&areaCode="+m+"&openId="+p+"&sourceType="+h+"&nickname="+u+"&code="+w(l.val()):s())}),r()}}),define("js/passport/register/password",["jquery"],function(e,t,o){var n=e("jquery"),a=n("#pwd"),i=n("#btn-sure"),s=e("js/passport/api"),r=e("js/plugin/tip"),l=n.trim,d=r.show;s.bindEyesEvt({status:"open"}),a.bind("input",function(){""===l(a.val())?i.addClass("disable"):i.removeClass("disable")}),i.on("touchstart",function(){var e=l(a.val());i.hasClass("disable")||(s.pwdValidate(e)===!1?d("密码6-20位,请重新输入"):n.ajax({type:"POST",url:"/passport/reg/setpassword",data:{password:e,phoneNum:n("#phone-num").val(),areaCode:n("#area-code").val(),token:n("#token").val()},success:function(e){var t;200===e.code?(t=e.data,d("注册成功"),n.ajax({url:t.session,dataType:"jsonp"}),setTimeout(function(){location.href=t.href},1e3)):d(e.message)}}))})}),define("js/passport/login/login",["jquery"],function(e,t,o){function n(){h&&p?d.removeClass("disable"):d.addClass("disable")}function a(){c.show(),u.show()}function i(){c.hide(),u.hide()}var s=e("jquery"),r=s("#account"),l=s("#pwd"),d=s("#btn-login"),c=s("#retrive-pwd-mask"),u=s("#retrive-pwd-ways"),h=!1,p=!1,f=e("js/passport/api"),m=e("js/plugin/tip"),g=s.trim,v=m.show;f.bindEyesEvt(),f.bindClearEvt(),r.bind("input",function(){h=""!==g(r.val()),n()}),l.bind("input",function(){p=""!==g(l.val()),n()}),d.on("touchstart",function(){var e=g(r.val()),t=g(l.val());d.hasClass("disable")||(d.text("正在登录...").addClass("disable"),(/^[0-9]+$/.test(e)||f.emailRegx.test(e))&&f.pwdValidate(t)?s.ajax({type:"POST",url:"/passport/login/auth",data:{account:e,password:t},success:function(e){var t;200===e.code?(t=e.data,v("登录成功"),location.href=t.href):v(e.message)},error:function(){v("网络断开连接啦~")},complete:function(){d.text("登录").removeClass("disable")}}):(v("账号或密码有错误,请重新输入"),d.text("登录").removeClass("disable")))}),s("#forget-pwd").on("touchstart",function(){a()}),c.on("touchstart",function(){i()}),s("#cancel-retrive").on("touchstart",function(e){e.preventDefault(),i()}),r.trigger("input"),l.trigger("input")}),define("js/passport/login/international",["jquery"],function(e,t,o){function n(){c&&u?d.removeClass("disable"):d.addClass("disable")}var a=e("jquery"),i=a("#phone-num"),s=a("#country-select"),r=a("#area-code"),l=a("#pwd"),d=a("#btn-login"),c=!1,u=!1,h=e("js/passport/api"),p=e("js/plugin/tip"),f=a.trim,m=p.show;h.selectCssHack(s),h.bindEyesEvt(),h.bindClearEvt(),i.bind("input",function(){c=""!==f(i.val()),n()}),l.bind("input",function(){var e=f(l.val());u=""!==e,n()}),s.change(function(){r.text(s.val())}),d.on("touchstart",function(){var e=f(i.val()),t=s.val(),o=f(l.val());d.hasClass("disable")||(d.text("正在登录...").addClass("disable"),h.phoneRegx[t].test(e)&&h.pwdValidate(o)?a.ajax({type:"POST",url:"/passport/login/auth",data:{areaCode:t.replace("+",""),account:e,password:o},success:function(e){var t,o;200===e.code?(t=e.data,m("登录成功"),a.ajax({url:t.session,dataType:"jsonp",success:function(){clearTimeout(o),setTimeout(function(){location.href=t.href},1e3)}}),o=setTimeout(function(){location.href=t.href},3e3),m("登录成功")):m(e.message)},error:function(){m("网络断开连接啦~")},complete:function(){d.text("登录").removeClass("disable")}}):(m("账号或密码有错误,请重新输入"),d.text("登录").removeClass("disable")))}),i.trigger("input"),l.trigger("input")}),define("js/passport/back/mobile",["jquery"],function(e,t,o){var n=e("jquery"),a=n("#phone-num"),i=n("#country-select"),s=n("#area-code"),r=n("#btn-next"),l=e("js/passport/api"),d=e("js/plugin/tip"),c=n.trim,u=d.show; -l.selectCssHack(n("#country-select")),l.bindClearEvt(),a.bind("input",function(){""===c(a.val())?r.addClass("disable"):r.removeClass("disable")}),i.change(function(){s.text(i.val())}),r.on("touchstart",function(){var e=c(a.val()),t=i.val();r.hasClass("disable")||(l.phoneRegx[t].test(e)?n.ajax({url:"/passport/back/sendcode",type:"POST",data:{areaCode:t.replace("+",""),phoneNum:e},success:function(e){200===e.code?location.href=e.data:u(e.message)}}):u("手机号格式不正确,请重新输入"))})}),define("js/passport/back/code",["jquery"],function(e,t,o){e("js/passport/code")(!1)}),define("js/passport/back/email",["jquery"],function(e,t,o){var n=e("jquery"),a=n("#email"),i=n("#btn-sure"),s=e("js/passport/api"),r=e("js/plugin/tip"),l=n.trim,d=r.show;s.bindClearEvt(),a.bind("input",function(){""===l(a.val())?i.addClass("disable"):i.removeClass("disable")}),i.on("touchstart",function(){var e=l(a.val());i.hasClass("disable")||(s.emailRegx.test(e)?n.ajax({url:"/passport/back/sendemail",type:"POST",data:{email:e},success:function(e){200===e.code?location.href=e.data:d(e.message)}}):d("邮箱格式不正确,请重新输入"))})}),define("js/passport/back/email-success",["jquery"],function(e,t,o){var n=e("jquery"),a=n("#resend"),i=e("js/plugin/tip"),s=i.show;a.on("touchstart",function(e){e.preventDefault(),n.ajax({url:a.data("url"),type:"GET",success:function(e){s(e.message)}})})}),define("js/passport/back/new-password",["jquery"],function(e,t,o){var n=e("jquery"),a=n("#pwd"),i=n("#btn-ok"),s=e("js/passport/api"),r=e("js/plugin/tip"),l=n.trim,d=r.show,c=n("#phone-num");s.bindEyesEvt({status:"open"}),a.bind("input",function(){""===l(a.val())?i.addClass("disable"):i.removeClass("disable")}),i.on("touchstart",function(){var e,t,o=l(a.val()),r=!0;i.hasClass("disable")||(e={password:o},0===c.length&&(r=!1),r?(n.extend(e,{phoneNum:c.val(),areaCode:n("#areaCode").val(),token:n("#token").val()}),t="/passport/back/passwordByMobile"):(n.extend(e,{code:n("#email-code").val()}),t="/passport/back/passwordByEmail"),s.pwdValidate(o)?n.ajax({type:"POST",url:t,data:e,success:function(e){200===e.code?(d("密码修改成功"),setTimeout(function(){location.href=e.data},1e3)):d(e.message)}}):d("密码6-20位,请重新输入"))})}),define("js/passport/bind/bind",["jquery","handlebars","source-map","hammer"],function(e,t,o){function n(e,t,o){return!v&&(v=!0,u.addClass("disable").html("绑定中..."),void a.ajax({type:"POST",url:"/passport/bind/sendBindMsg",data:{phoneNum:t,areaCode:o.replace("+","")},success:function(t){200===t.code?(window._yas&&window._yas.sendCustomInfo&&window._yas.sendCustomInfo({loginRefer:c.val()},!1),location.href=e):p.show(t.message)},error:function(){p.show("出错了,请重试!"),u.removeClass("disable").html("下一步"),v=!1}}))}var a=e("jquery"),i=a("#phone-num"),s=a("#country-select"),r=a("#area-code"),l=a("#openId"),d=a("#nickname"),c=a("#sourceType"),u=a("#btn-next"),h=e("js/passport/api"),p=e("js/plugin/tip"),f=e("js/me/dialog"),m=a.trim,g=p.show,v=!1;e("js/common"),h.selectCssHack(a("#country-select")),h.bindClearEvt(),i.bind("input",function(){""===m(i.val())?u.addClass("disable"):u.removeClass("disable")}),s.change(function(){r.text(s.val())}),u.on("touchstart",function(){var e=m(i.val()),t=m(l.val()),o=m(d.val()),r=m(c.val()),p=s.val();u.hasClass("disable")||(h.phoneRegx[p].test(e)?a.ajax({url:"/passport/bind/bindCheck",type:"POST",data:{areaCode:p.replace("+",""),phoneNum:e,openId:t,sourceType:r,nickname:o},success:function(t){200===t.code?1===t.data.isReg?f.showDialog({dialogText:"该手机号已注册过有货\n"+e+",确定绑定吗?",hasFooter:{leftBtnText:"更换号码",rightBtnText:"继续绑定"}},function(){n(t.data.next,e,p)}):3===t.data.isReg?f.showDialog({dialogText:"该手机号已注册过有货\n"+e+",是否进行关联?",hasFooter:{leftBtnText:"更换号码",rightBtnText:"确定"}},function(){n(t.data.next,e,p)}):n(t.data.next,e,p):g(t.message)}}):g("手机号格式不正确,请重新输入"))}),/MicroMessenger/i.test(navigator.userAgent)&&a.queryString().refer&&a(".go-back").attr("href",decodeURIComponent(a.queryString().refer))}),define("js/passport/bind/code",["jquery"],function(e,t,o){e("js/passport/code")(!0,!0)}),define("js/passport/bind/password",["jquery"],function(e,t,o){function n(e){a.ajax({url:"/passport/bind/bindMobile",type:"post",data:{areaCode:m.replace("+",""),phoneNum:f,openId:p,sourceType:h,nickname:u,password:e,code:g},success:function(e){200===e.code?(l.show("登录成功"),setTimeout(function(){location.href=e.data.refer},2e3)):l.show(e.message)},error:function(e){l.show("登录失败,请重试!")}})}var a=e("jquery"),i=a("#pwd"),s=a("#btn-sure"),r=e("js/passport/api"),l=e("js/plugin/tip"),d=a.trim,c=l.show,u=a("#nickname").val(),h=a("#sourceType").val(),p=a("#openId").val(),f=a("#phone-num").val(),m=a("#area-code").val().replace("+",""),g=a("#code").val();r.bindEyesEvt({status:"open"}),i.bind("input",function(){""===d(i.val())?s.addClass("disable"):s.removeClass("disable")}),s.on("touchstart",function(){var e=d(i.val());s.hasClass("disable")||(r.pwdValidate(e)===!1?c("密码6-20位,请重新输入"):n(e))})}),define("js/passport/bind/relate",["jquery"],function(e,t,o){e("js/passport/code")(!0,!1,!0)}),define("js/product/entry",["jquery","swiper","mlellipsis","lazyload","iscroll-probe","hammer","handlebars","source-map","index"],function(e,t,o){e("js/product/newsale/newarrival"),e("js/product/newsale/discount"),e("js/product/list"),e("js/product/detail/detail"),e("js/product/detail/consultform"),e("js/product/newsale/hot-rank"),e("js/product/product-category"),e("js/product/shop")}),define("js/product/newsale/newarrival",["jquery","swiper","mlellipsis","lazyload","iscroll-probe","hammer","index"],function(e,t,o){function n(e){var t,o,n,a,i,u,h={};if(!d){if(e){for(o in E)E.hasOwnProperty(o)&&(E[o].reload=!0);switch(q.children(".active").removeClass("active"),I.addClass("active"),e.type){case"gender":t={gender:e.id};break;case"brand":t={brand:e.id};break;case"sort":t={sort:e.id};break;case"color":t={color:e.id};break;case"ageLevel":t={age_level:e.id};break;case"size":t={size:e.id};break;case"price":t={price:e.id};break;case"discount":t={discount:e.id};break;case"limit":t={limit:e.id};break;case"channel":t={channel:e.id};break;case"p_d":t={p_d:e.id}}c.extend(C,t)}if(I.hasClass("today")?(a="today",i=1):I.hasClass("week")?(a="week",i=2):I.hasClass("sale")&&(a="sale",i=3),n=E[a],u=n.page+1,n.reload)u=1;else if(n.end)return;c.extend(h,C,{dayLimit:i,page:u}),d=!0,g.showLoadingMask(),c.ajax({type:"GET",url:"/product/newsale/selectNewSale",data:h,success:function(e){var t,o;switch(a){case"today":t=s;break;case"week":t=r;break;case"sale":t=l}" "===e?(n.end=!0,n.reload&&t.html(b)):n.reload?(t.html(e),p(t.find(".lazy"))):(o=t.find(".good-info").length,t.append(e),p(t.find(".good-info:gt("+(o-1)+") .lazy"))),n.reload=!1,n.page=u,d=!1,g.hideLoadingMask(),window.rePosFooter(),c(".good-detail-text .name").each(function(){var e=c(this),t=e.find("a");t[0].mlellipsis(2)})},error:function(){f.show("网络断开连接了~"),d=!1,g.hideLoadingMask()}})}}function a(){c(window).scrollTop()+y>c(document).height()-.25*v.height()-50&&void 0!==I&&n()}var i,s,r,l,d,c=e("jquery"),u=e("swiper"),h=e("mlellipsis"),p=e("lazyload"),f=e("js/plugin/tip"),m=e("js/plugin/filter"),g=e("js/plugin/loading"),v=c("#goods-container"),w=v.children(),s=c(w.get(0)),r=c(w.get(1)).addClass("hide"),l=c(w.get(2)).addClass("hide"),y=c(window).height(),b='<p class="no-result">未找到相关搜索结果</p>',C=e("js/product/query-param"),j=c.extend({},C),x=new Date,k=x.getMonth()+1,T=x.getDate(),q=c("#list-nav"),E={today:{reload:!0,page:0,end:!1},week:{reload:!0,page:0,end:!1},sale:{reload:!0,page:0,end:!1}},I=q.find(".active");e("js/product/suspend-cart"),h.init(),c("#today a").text(k+"月"+T+"号"),c(".swiper-container .swiper-slide").length>1&&(i=new u(".swiper-container",{lazyLoading:!0,lazyLoadingInPrevNext:!0,loop:!0,autoplay:3e3,autoplayDisableOnInteraction:!0,paginationClickable:!0,pagination:".banner-top .pagination-inner"})),c.ajax({type:"GET",url:"/product/newsale/filter",data:C,success:function(e){v.append(e),m.initFilter({fCbFn:n,hCbFn:function(){I.addClass("active"),I.siblings(".filter").removeClass("active")}})}}),p(c(".lazy")),q.bind("contextmenu",function(e){return!1}),q.on("touchend touchcancel",function(e){var t,o,a,i=c(e.target).closest("li");if(e.preventDefault(),i.hasClass("filter"))i.hasClass("active")?(m.hideFilter(),I.addClass("active"),i.removeClass("active")):(I=i.siblings(".active"),I.removeClass("active"),i.addClass("active"),m.showFilter());else{if(i.hasClass("today")?o="today":i.hasClass("week")?o="week":i.hasClass("sale")&&(o="sale"),t=E[o],!i.hasClass("active")){if(a=i.siblings(".active"),I=i,a.hasClass("filter"))m.hideFilter();else{switch(v.children(".container:not(.hide)").addClass("hide"),o){case"today":s.removeClass("hide");break;case"week":r.removeClass("hide");break;case"sale":l.removeClass("hide")}m.resetFilter(),C=c.extend({},j)}a.removeClass("active"),i.addClass("active")}t.reload&&n()}e.stopPropagation()}),c(window).scroll(function(){window.requestAnimationFrame(a)}),n(),q.on("touchstart","li",function(e){c(this).addClass("bytouch")}).on("touchend touchcancel",function(){q.find("li").removeClass("bytouch")})}),define("js/plugin/filter",["jquery","iscroll-probe","hammer"],function(e,t,o){function n(){p.addClass("hide")}function a(){p.removeClass("hide")}function i(){var e=h(".filter-body .classify");e.on("touchstart",".shower",function(){var t=h(this).attr("data-bp-id")||"";e.removeClass("highlight"),h(this).addClass("highlight"),h(document).trigger("shouldSendBpData",[t])}).on("touchend touchcancel",".shower",function(){h(this).removeClass("highlight")})}function s(){var e=h(".filter-body .sub-item");e.on("touchstart",function(){e.removeClass("highlight"),h(this).addClass("highlight")}).on("touchend touchcancel",function(){h(this).removeClass("highlight")})}function r(e){e.hasClass("active")||(e.siblings(".active").removeClass("active"),e.addClass("active"))}function l(e){var t,o,n=e.closest(".sub-classify"),a=n.siblings(".shower");return e.hasClass("chosed")?n:(n.children(".chosed").removeClass("chosed"),e.addClass("chosed"),t=h.trim(e.html()),o=h.trim(a.html()),a.html(o.substring(0,o.indexOf("</span>")+7)+t.substring(0,t.indexOf("<i"))),0===e.index()?a.addClass("default"):a.removeClass("default"),n)}function d(e){var t,o=e.data("id");t=l(e),f&&f({type:t.data("type"),id:o}),n()}function c(e){var t;f=e.fCbFn,m=e.hCbFn,g=e.missStatus,i(),s(),p=h(".filter-mask"),t=new Hammer(p[0]),t.on("tap",function(e){var t,o=h(e.target);o.closest(".filter-body").length>0?(t=o.closest(".sub-item"),t.length>0?(t=o.closest("li"),d(t)):(t=o.closest(".classify-item"),e.srcEvent.stopPropagation(),r(t))):(n(),m&&m())}),e.isScroll&&h("ul.sub-classify").each(function(){h(this).wrap("<div class='sub-classify-farther' data-type='"+h(this).data("type")+"'></div>");var e=0,t=0,o=h(this);o.on("touchstart",function(t){e=t.originalEvent.touches[0].pageY}),o.on("touchmove",function(o){var n=o.originalEvent.touches[0].pageY,a=n-e,i=h(this)[0].scrollHeight,s=i-h(this).parent().height();t+=a,t<s*-1&&(t=s*-1),t>0&&(t=0);var r="translate3d(0,"+t+"px,0)";h(this).css({"-moz-transform":r,"-ms-transform":r,transform:r,"-webkit-transform":r}),e=n}),o.on("touchend",function(e){})})}function u(){"undefined"!=typeof p&&(h(".sub-classify").each(function(){l(h(this).children(":first-child"))}),r(h(".classify > :first-child")))}var h=e("jquery");e("iscroll-probe");Hammer=e("hammer");var p,f,m,g;t.initFilter=c,t.showFilter=a,t.hideFilter=n,t.resetFilter=u}),define("js/product/query-param",["jquery"],function(e,t,o){var n=e("jquery"),a={};n(".query-param").each(function(){var e=n(this);a[e.data("attr")]=e.val()}),o.exports=a}),define("js/product/suspend-cart",["jquery"],function(e,t,o){var n=e("jquery"),a=n("#suspend-cart");n.ajax({type:"GET",url:"/cart/index/count",success:function(e){var t;200===e.code&&(t=e.data.cart_goods_count,t>99&&(t="99+"),0===t&&n(".cart-count").remove(),a.find(".cart-count").html(t).removeClass("hide"))}})}),define("js/product/newsale/discount",["jquery","swiper","mlellipsis","lazyload","iscroll-probe","hammer","index"],function(e,t,o){function n(e){var t,o,n,a,i,l={};if(!s){if(e){for(o in x)x.hasOwnProperty(o)&&(x[o].reload=!0);switch(j.children(".active").removeClass("active"),k.addClass("active"),e.type){case"gender":t={gender:e.id};break;case"brand":t={brand:e.id};break;case"ageLevel":t={age_level:e.id};break;case"sort":t={sort:e.id};break;case"color":t={color:e.id};break;case"size":t={size:e.id};break;case"price":t={price:e.id};break;case"discount":t={discount:e.id}}r.extend(C,t)}if(k.hasClass("new")?a="newest":k.hasClass("price")?a="price":k.hasClass("discount")&&(a="discount"),n=x[a],i=n.page+1,n.reload)i=1;else if(n.end)return;r.extend(l,C,{type:a,order:n.order,page:i}),s=!0,p.showLoadingMask(),r.ajax({type:"GET",url:"/product/newsale/selectNewSale",data:l,success:function(e){var t,o;switch(a){case"newest":t=g;break;case"price":t=v;break;case"discount":t=w}" "===e?(n.end=!0,n.reload&&t.html(b)):n.reload?(t.html(e),c(t.find(".lazy"))):(o=t.find(".good-info").length,t.append(e),c(t.find(".good-info:gt("+(o-1)+") .lazy"))),n.reload=!1,n.page=i,s=!1,p.hideLoadingMask(),window.rePosFooter(),r(".good-detail-text .name").each(function(){var e=r(this),t=e.find("a");t[0].mlellipsis(2)})},error:function(){u.show("网络断开连接了~"),s=!1,p.hideLoadingMask()}})}}function a(){r(window).scrollTop()+y>r(document).height()-.25*f.height()-50&&void 0!==k&&n()}var i,s,r=e("jquery"),l=e("swiper"),d=e("mlellipsis"),c=e("lazyload"),u=e("js/plugin/tip"),h=e("js/plugin/filter"),p=e("js/plugin/loading"),f=r("#goods-container"),m=f.children(),g=r(m.get(0)),v=r(m.get(1)),w=r(m.get(2)),y=r(window).height(),b='<p class="no-result">未找到相关搜索结果</p>',C=e("js/product/query-param"),j=r("#list-nav"),x={newest:{order:1,reload:!0,page:0,end:!1},price:{order:1,reload:!0,page:0,end:!1},discount:{order:1,reload:!0,page:0,end:!1}},k=j.find(".active");e("js/product/suspend-cart"),d.init(),r(".swiper-container .swiper-slide").length>1&&(i=new l(".swiper-container",{lazyLoading:!0,lazyLoadingInPrevNext:!0,loop:!0,autoplay:3e3,autoplayDisableOnInteraction:!0,paginationClickable:!0,pagination:".banner-top .pagination-inner"})),r.ajax({type:"GET",url:"/product/newsale/filter",data:C,success:function(e){f.append(e),h.initFilter({fCbFn:n,hCbFn:function(){k.addClass("active"),k.siblings(".filter").removeClass("active")},missStatus:!0})}}),c(r(".lazy")),j.bind("contextmenu",function(e){return!1}),j.on("touchend touchcancel",function(e){var t,o,a,i=r(e.target).closest("li");if(e.preventDefault(),"undefined"!=typeof i&&0!==i.length){if(i.hasClass("filter"))i.hasClass("active")?(h.hideFilter(),k.addClass("active"),i.removeClass("active")):(k=i.siblings(".active"),k.removeClass("active"),i.addClass("active"),h.showFilter());else{if(i.hasClass("new")?o="newest":i.hasClass("price")?o="price":i.hasClass("discount")&&(o="discount"),t=x[o],i.hasClass("active")){if(i.hasClass("new"))return;(i.hasClass("price")||i.hasClass("discount"))&&(i.find(".icon > .iconfont").toggleClass("cur"),k=i,t.reload=!0,t.order=0===t.order?1:0)}else{if(a=i.siblings(".active"),k=i,a.hasClass("filter"))h.hideFilter();else switch(f.children(".container:not(.hide)").addClass("hide"),o){case"newest":g.removeClass("hide");break;case"price":v.removeClass("hide");break;case"discount":w.removeClass("hide")}a.removeClass("active"),i.addClass("active")}t.reload&&n()}e.stopPropagation()}}),r(window).scroll(function(){window.requestAnimationFrame(a)}),n(),j.on("touchstart","li",function(e){r(this).addClass("bytouch")}).on("touchend touchcancel",function(){j.find("li").removeClass("bytouch")})}),define("js/product/list",["jquery","hammer","mlellipsis","lazyload","iscroll-probe"],function(e,t,o){function n(){var e=g(".search-associate"),t=g(".search-icon"),o=g(".search-items");D.on("input",function(){""===D.val()?(t.css("color","#b2b2b2"),L.addClass("hide"),e.html(""),o.show(),e.hide()):(t.css("color","#666"),L.removeClass("hide"),e.show()),g.ajax({url:"/index/search/fuzzyDatas",data:{keyword:D.val()},dataType:"json",success:function(t){var n,a="";if(t.length>0){for(n=0;n<t.length;n++)a+='<li><span class="keyword">'+t[n].keyword+'</span><span class="count">'+t[n].count+' items<i class="iconfont"></i></span></li>';e.html(a),o.hide()}else e.html("");e.find("li").on("touchend",function(){z.val(g(this).find(".keyword").html()),P.closest("form").submit()})},error:function(){k.show("网络断开连接了~")}})})}function a(e){var t=new RegExp("(^|&)"+e+"=([^&]*)(&|$)","i"),o=window.location.search.substr(1).match(t);return null!=o?window.unescape(o[2]):null}function i(e){var t,o,n,a,i,s,p,f,m={};if(!h){if(e){for(o in O)O.hasOwnProperty(o)&&(O[o].reload=!0);switch(F.children(".active").removeClass("active"),N.addClass("active"),e.type){case"shop_id":t={shop_id:e.id};break;case"gender":t={gender:e.id};break;case"brand":t={brand:e.id};break;case"sort":t={sort:e.id};break;case"color":t={color:e.id};break;case"ageLevel":t={age_level:e.id};break;case"size":t={size:e.id};break;case"price":t={price:e.id};break;case"discount":t={discount:e.id};break;case"outlets":t={outlets:e.id}}g.extend(M,t)}if(N.hasClass("new")?a="newest":N.hasClass("price")?a="price":N.hasClass("discount")&&(a="discount"),n=O[a],i=n.page+1,n.reload)i=1;else if(n.end)return;f={type:a,order:n.order,page:i},r&&(f.shop_id=r),age_level&&(f.age_level=age_level),l&&(f.sort=l),d&&(f.brand=d),c&&(f.outlets=c),u&&(f.app_type=u),g.extend(m,M,f),h=!0,T.showLoadingMask(),g.ajax({type:"GET",url:location.protocol+"//m.yohobuy.com/index/search/search",data:m,success:function(e){var t,o,r='<p class="no-result">未找到相关搜索结果</p>';switch(a){case"newest":o=E;break;case"price":o=I;break;case"discount":o=_}if(" "===e?(n.end=!0,n.reload&&o.html(r)):n.reload?(o.html(e),y(o.find(".lazy"))):(t=o.find(".good-info").length,o.append(e),y(o.find(".good-info:gt("+(t-1)+") .lazy"))),n.reload=!1,n.page=i,h=!1,T.hideLoadingMask(),window.rePosFooter(),g(".good-detail-text .name").each(function(){s=g(this),p=s.find("a"),p[0].mlellipsis(2)}),window._yas)switch(a){case"newest":window._yas(1*new Date,"1.0.16","yohobuy_m",window._ozuid,"",g(".new-goods .good-info .good-detail-img .good-thumb"));break;case"price":window._yas(1*new Date,"1.0.16","yohobuy_m",window._ozuid,"",g(".price-goods .good-info .good-detail-img .good-thumb"));break;case"discount":window._yas(1*new Date,"1.0.16","yohobuy_m",window._ozuid,"",g(".discount-goods .good-info .good-detail-img .good-thumb"))}}})}}function s(){g(window).scrollTop()+S>g(document).height()-.25*q.height()&&i()}var r,l,d,c,u,h,p,f,m,g=e("jquery"),v=e("hammer"),w=e("mlellipsis"),y=e("lazyload"),b=g("#brand-header"),C=g("#intro-box"),j=e("js/plugin/filter"),x=e("js/index/write-search"),k=e("js/plugin/tip"),T=e("js/plugin/loading"),q=g("#goods-container"),E=q.children(".new-goods"),I=q.children(".price-goods"),_=q.children(".discount-goods"),S=g(window).height(),D=g("#search-input input"),L=g("#search-input .clear-input"),z=g(".buriedpoint"),P=g("#search"),M=e("js/product/query-param"),F=g("#list-nav"),O={newest:{order:1,reload:!0,page:0,end:!1},price:{order:1,reload:!0,page:0,end:!1},discount:{order:1,reload:!0,page:0,end:!1}},N=F.find(".active");w.init(),n(),L.on("touchend",function(){D.val("").trigger("input")}),P.on("touchend",function(){return g(this).closest("form").submit(),!1}),r=a("shop_id"),l=a("sort"),c=a("outlets"),age_level=a("ageLevel"),u=a("app_type"),e("js/product/suspend-cart"),1===b.data("isbaseshop")&&Object.assign(M,{shop_id:b.data("id")}),g.ajax({type:"GET",url:location.protocol+"//m.yohobuy.com/search/filter",data:M,success:function(e){q.append(e),j.initFilter({fCbFn:i,hCbFn:function(){N.addClass("active"),N.siblings(".filter").removeClass("active")}})}}),y(g(".lazy")),x.bindWirteLocal(g("#search-form")),F.bind("contextmenu",function(e){return!1}),F.on("touchend touchcancel",function(e){var t,o,n,a=g(e.target).closest("li"),s=g(this).find(".buriedpoint").attr("data-bp-id")||"";if(a.hasClass("filter"))a.hasClass("active")?(j.hideFilter(),N.addClass("active"),a.removeClass("active")):(N=a.siblings(".active"),N.removeClass("active"),a.addClass("active"),j.showFilter());else{if(a.hasClass("new")?o="newest":a.hasClass("price")?o="price":a.hasClass("discount")&&(o="discount"),t=O[o],a.hasClass("active")){if(a.hasClass("new"))return;(a.hasClass("price")||a.hasClass("discount"))&&(a.find(".icon > .iconfont").toggleClass("cur"),N=a,t.reload=!0,t.order=0===t.order?1:0)}else{if(n=a.siblings(".active"),N=a,n.hasClass("filter"))j.hideFilter();else switch(q.children(".container:not(.hide)").addClass("hide"),o){case"newest":E.removeClass("hide");break;case"price":I.removeClass("hide");break;case"discount":_.removeClass("hide")}n.removeClass("active"),a.addClass("active")}t.reload&&(g(document).trigger("shouldSendBpData",[s]),i())}}),g(window).scroll(function(){window.requestAnimationFrame(s)}),b.length>0&&(p=new v(b.children(".btn-intro")[0]),p.on("tap",function(){C.removeClass("hide"),g("body").addClass("overflow-hidden")}),f=new v(document.getElementById("intro-box")),f.on("tap",function(e){var t=g(e.target);e.srcEvent.preventDefault(),(0===t.closest("#brand-intro").length||t.hasClass("close-intro"))&&(C.addClass("hide"),g("body").removeClass("overflow-hidden"))}),m=new v(b.children(".btn-col")[0]),m.on("tap",function(e){var t=g(e.target).closest(".btn-col"),o=b.data("id"),n=b.data("isbaseshop"),a="",i={};if(n){var s=g('input[name="app_version"]').val();t.hasClass("coled")?(i={shop_id:o,app_version:s,opt:"cancel"},a="/product/index/cancelShopFav"):(i={shop_id:o,app_version:s,opt:"ok"},a="/product/index/shopFav")}else a="/product/opt/favoriteBrand",i=t.hasClass("coled")?{id:o,opt:"cancel"}:{id:o,opt:"ok"};g.ajax({type:"GET",url:location.protocol+"//m.yohobuy.com"+a,data:i,xhrFields:{withCredentials:!0},success:function(e){200===e.code?(t.toggleClass("coled"),"ok"===i.opt?k.show("添加收藏成功"):k.show("取消收藏成功")):401===e.code?(url=e.url,g("#jump-login").length<=0&&g("body").append("<a href='"+url+'\'><span id="jump-login"><span></a>'),g("#jump-login").click()):k.show(e.message)},error:function(){k.show("网络断开连接了~")}})})),i(),F.on("touchstart","li",function(){F.find("li").removeClass("bytouch"),g(this).addClass("bytouch")}).on("touchend touchcancel","li",function(){F.find("li").removeClass("bytouch")})}),define("js/product/detail/detail",["jquery","swiper","hammer","lazyload","handlebars","source-map","index"],function(e,t,o){function n(){var e=i(".cart-bar"),t=setInterval(function(){e?(window.reMarginFooter(".cart-bar"),clearInterval(t)):e=i(".cart-bar")},200)}var a,i=e("jquery"),s=e("swiper"),r=e("hammer"),l=e("lazyload"),d=i(".goodsDiscount .discount-folder"),c=i(".goodsDiscount .first-item span"),u=document.getElementById("goodsDiscount"),h=u&&new r(u),p=i(u).find(".first-item"),f=i(".cart-bar"),m=i('input[name="limitCodeUrl"]').val(),g=e("js/me/dialog");n(),e("js/product/detail/like"),l(i("img.lazy")),i("#goodsDiscount h1").length<1&&i(".dropdown").remove(),a=new s(".banner-swiper",{lazyLoading:!0,lazyLoadingInPrevNext:!0,paginationClickable:!0,pagination:".banner-top .pagination-inner",nextButton:".my-swiper-button-next",prevButton:".my-swiper-button-prev",spaceBetween:3}),0===d.children().length&&(d.css("display","none"),c.html("")),h&&d.children().length>0&&h.on("tap",function(e){d.is(":hidden")?(p.removeClass("short-text"),c.removeClass("icon-down").addClass("icon-up").html(""),d.slideDown()):(p.addClass("short-text"),c.removeClass("icon-up").addClass("icon-down").html(""),d.slideUp())}),i("#limit-sale").on("touchend",function(e){var t,o,n=i("#loginUrl").val();e.stopPropagation(),n?window.location=n:(g.showDialog({dialogText:"进入有货APP,获取限购码",hasFooter:{rightBtnText:"打开Yoho!Buy有货APP"}},function(){o=document.createElement("iframe"),o.src=m,o.style.display="none",document.body.appendChild(o),window.location.href=m,t=Date.now(),window.setTimeout(function(){document.body.removeChild(o),Date.now()-t<3200&&(window.location.href="http://a.app.qq.com/o/simple.jsp?pkgname=com.yoho")},3e3)},void 0,!0),i(".dialog-wrapper").off("touchstart").on("touchstart",function(e){e.stopPropagation(),i(e.target).hasClass("dialog-wrapper")&&g.hideDialog()}))}),e("js/product/detail/desc"),e("js/product/detail/comments-consults"),e("js/product/recommend-for-you-product-desc"),i.ajax({type:"GET",url:"/cart/index/count",success:function(e){var t;if(200===e.code){if(t=e.data.cart_goods_count||0,0===t)return!1;t>99&&(t="99+"),f.find(".num-tag").html(t).removeClass("hide")}}}),i(".good-detail-page").length>0&&i("#yoho-footer").css("border-top","1px solid #e0e0e0")}),define("js/product/detail/like",["jquery"],function(e,t,o){function n(){if(!window.getUid()){var e=window.location.href.split("?");return window.location.href="//m.yohobuy.com/signin.html?refer="+e[0]+"?product_type=ticket",!1}return!0}function a(){var e=i("#showPannel").val();e&&r.show()}var i=e("jquery"),s=e("js/plugin/tip"),r=e("js/cart/chose-panel"),l=i("#productId").val(),d=i("#productSkn").val(),c=i("#limitProductCode").val(),u=i("#limitNum").val()||0;i("#likeBtn").on("touchstart",function(){var e,t,o=i(this);return o.hasClass("liked")?(e="cancel",t=0):(e="ok",t=1),i.ajax({type:"POST",url:"/product/opt/favoriteProduct",data:{id:l,opt:e},success:function(t){200===t.code?(o.toggleClass("liked"),"cancel"===e?s.show("取消收藏成功"):"ok"===e&&s.show("收藏成功")):400===t.code?location.href=t.data:s.show(t.message)},error:function(){s.show("网络断开连接了~")}}),window._yas&&window._yas.sendCustomInfo({pd:l,fa:t},!0),!1}),i("#addtoCart").on("touchstart",function(){return!(u&&!n())&&(i(".cart-bar").hide(),c&&r.setLimitGoodModeWithSknId(c,d),r.show(),window._yas&&window._yas.sendCustomInfo({pd:l,by:1},!0),!1)}),a(),i("#buyLimit").on("touchstart",function(){return s.show("打开APP可抢购该商品哦~"),!1})}),define("js/cart/chose-panel",["jquery"],function(e,t,o){function n(){var e=F(".chose-panel").find(".num .btn>.iconfont");e.hasClass("disabled")?null:e.addClass("disabled"),H.off("touchstart",".btn-minus"),H.off("touchstart",".btn-plus")}function a(){T=!1,q=!1,E=null,z=F.queryString(),y=F(".chose-panel").find(".thumb"),P=F(".chose-panel .main .chose-items"),L=F(".chose-items"),I=F(".size-list ul"),S=F(".color-list ul"),b=F("#left-num"),M=F(".cart-bar"),x=0,k=0,W=0}function i(e,t){F("#chose-btn-sure").html("确认"),W=1,$=e,G=t}function s(e,t){n(),F("#chose-btn-sure").html("立即购买"),J=e,Y=t}function r(){var e=F(".chose-panel"),t=F("#promotionId");e&&e.remove(),t&&t.remove()}function l(){if(!U||d())return T||q?T?!!q||(O.show("请选择尺码~"),!1):(O.show("请选择颜色~"),!1):(O.show("请选择颜色和尺码~"),!1)}function d(){return T||q?T?!(!q&&!V)||(O.show("请选择区域~"),!1):(O.show("请选择日期~"),!1):(V?O.show("请选择日期~"):O.show("请选择日期和区域~"),!1)}function c(e,t){e&&(B.html(e),""!==F("#promotionId").val()&&n(),a()),F(".chose-panel").show(),v=F("#good-num"),D=t,A.disableScroll(P)}function u(){F(".chose-panel").hide(),A.enableScroll(P),M.length>0&&M.show()}function h(){w=L.find(".chosed"),2===w.closest(".zero-stock").length?F("#chose-btn-sure").css("background-color","#c0c0c0").html("已售罄"):J||U?F("#chose-btn-sure").css("background-color","#eb0313").html("立即购买"):F("#chose-btn-sure").css("background-color","#eb0313").html(W?"确认":"加入购物车")}function p(e){return U?(L.find(".num .left-num").html("限购"+U+"件"),void b.val(e)):void(e>0?(R.length>0?L.find(".num .left-num").html("即将售罄"):L.find(".num .left-num").html("剩余"+e+"件"),b.val(e)):(L.find(".num .left-num").html(""),b.val(0)))}function f(e){var t,o,n;if(x&&E&&E.length>0){for(E.removeClass("chosed"),t=I.eq(e).children(),n=0;n<t.length;n++)if(F(t[n]).data("id")===E.data("id"))return E=F(t[n]),o="#"+E.data("id"),x=F(o).data("index"),E.addClass("chosed"),E.data("num");return E=null,q=!1,S.eq(x).addClass("hide"),S.eq(0).removeClass("hide"),x=0,-1}return 0}function m(e){return k&&_&&_.length>0?(_.removeClass("chosed"),_=F(S.eq(e).children().get(k-1)),_.addClass("chosed"),_.data("num")):0}function g(e,t){var o={productSku:e,buyNumber:t};F.ajax({url:"/cart/index/checkTickets",dataType:"json",data:o,type:"post",success:function(o){if(200!=o.code){if(401==o.code){var n=window.location.href;window.location.href="//m.yohobuy.com/signin.html?refer="+n}O.show(o.message)}else $productSku.val(e),$buyNumber.val(t),$buyNowForm.submit()},error:function(){O.show("网络异常~")}})}var v,w,y,b,C,j,x,k,T,q,E,I,_,S,D,L,z,P,M,F=e("jquery"),O=e("js/plugin/tip"),N=e("js/plugin/loading"),A=e("js/plugin/inner-scroll"),B=F("#chose-panel"),R=F(".soonSoldOut-tag"),H=F(".yoho-page"),U=F("#limitNum").val()||0,V=F("#single").val()||0;$productSku=F("#productSku"),$buyNumber=F("#buyNumber"),$buyNowForm=F("#buyNowForm");var W,G,$,J,Y;a(),H.on("touchstart",".chose-panel",function(e){var t=F(e.target);if(!(t.closest(".main").length>0))return u(),!1}),H.on("touchstart",".color-list .block",function(){var e,t=F(this),o=t.index();if(t.hasClass("chosed")?(L.find(".num .left-num").html(""),b.val(0),T=!1,I.eq(k).addClass("hide"),I.eq(0).removeClass("hide"),k=0,f(0)):(T=!0,I.eq(k).addClass("hide"),e=f(o+1),p(e),I.eq(o+1).removeClass("hide"),k=o+1,_=t,y.addClass("hide").eq(o).removeClass("hide")),t.siblings(".chosed").removeClass("chosed"),-1===e?(_=F(S.eq(0).children().get(o)),_.addClass("chosed")):t.toggleClass("chosed"),F("#good-num").val(1),h(),U&&V)return E=F(".size-list .size-row .block").eq(o+1),E.addClass("chosed"),p(_.data("num")),q=!0,!1}).on("touchstart",".size-list .block",function(){var e,t,o=F(this);o.hasClass("chosed")?(L.find(".num .left-num").html(""),b.val(0),q=!1,S.eq(x).addClass("hide"),S.eq(0).removeClass("hide"),x=0,m(0)):(q=!0,e=F("#"+o.data("id")).data("index")-1,S.eq(x).addClass("hide"),t=m(e+1),p(t),S.eq(e+1).removeClass("hide"),x=e+1,E=o),o.siblings(".chosed").removeClass("chosed"),o.toggleClass("chosed"),F("#good-num").val(1),h()}),H.on("touchstart",".btn-minus",function(){var e=parseInt(v.val(),10);if(C=F("#left-num").val(),l())return 1===e||0===C-0?void O.show("您选择的数量不能为零~"):e<0?void O.show("您选择的数量不能为负数~"):void v.val(e-1)}).on("touchstart",".btn-plus",function(){var e=parseInt(v.val(),10),t=U?"每人只可购买"+U+"张当日门票":"您选择的数量超过了最大库存量~";if(C=U||F("#left-num").val(),l()&&e-0!==C&&0!==C)return e>C-1?void O.show(t):void v.val(e+1)}).on("touchstart","#chose-btn-sure",function(){var e,t,o,n,a=F("#good-num").val()-0,i=parseInt(v.val(),10);if(l()&&"已售罄"!==F("#chose-btn-sure").html()){if(C=F("#left-num").val()-0,i>C)return void O.show("您选择的数量超过了最大库存量~");if(i<0)return void O.show("您选择的数量小于一件~");if(w=F(".block-list>ul>li.chosed"),2===w.length&&0===w.closest(".zero-stock").length){if(e=E.data("skuid"),t=F("#promotionId").val(),j)return!1;if(U||(j=!0),N.showLoadingMask(),U)return void g(e,a);if(W)o={new_product_sku:e,old_product_sku:$,buy_number:a,selected:G},n="/cart/index/modify";else{if(J)return F(this).css("background-color","#ccc").removeAttr("id"),n=F("#limitProductPay").val()+"?limitproductcode="+J+"&sku="+e+"&skn="+Y+"&buy_number="+a,r(),N.showLoadingMask(),F.ajax({url:n}).then(function(e){e.error?(O.show(e.message),setTimeout(function(){location.reload()},2e3)):location.href=n}).fail(function(){O.show("网络异常!"),setTimeout(function(){location.reload()},2e3)}),!1;o={productSku:e,buyNumber:a,promotionId:t,isEdit:W,cartType:z.cartType},n="/cart/index/add"}F.ajax({method:"POST",url:n,data:o}).done(function(e){var t;N.hideLoadingMask(),200!==e.code||W||(t=e.data.goods_count,t>99&&(t="99+"),F(".num-tag").html(t).removeClass("hide"),j=!1,D&&D()),e.message&&!W&&O.show(e.message),u(),W&&(N.showLoadingMask(),setTimeout(function(){window.location.href="/cart/index/index?cartType="+F("#cartType").val()},1))}).fail(function(){O.show("网络出了点问题~")}).always(function(){j=!1})}}}),t.init=a,t.show=c,t.remove=r,t.setEditModeWithSknId=i,t.disableNumEdit=n,t.setLimitGoodModeWithSknId=s}),define("js/plugin/inner-scroll",["jquery"],function(e,t,o){function n(e){e=e||window.event,e.preventDefault&&e.preventDefault(),e.returnValue=!1}function a(e){e=e||window.event,e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!1}function i(e){var t=e.wheelDelta||e.originalEvent.wheelDelta||e.detail||0,o=l(this).get(0);return a(e),l(o).height()+o.scrollTop>=o.scrollHeight&&t<0?(n(e), -!1):0===o.scrollTop&&t>0?(n(e),!1):void 0}function s(e){var t,o;e.on("mousewheel",i),e.on("touchstart",function(e){t=e.originalEvent.changedTouches[0].pageX,o=e.originalEvent.changedTouches[0].pageY}),e.on("touchmove",function(e){var n=e.originalEvent.changedTouches[0].pageX-t,a=e.originalEvent.changedTouches[0].pageY-o,i=l(this).get(0);return e.stopPropagation(),Math.abs(a)<Math.abs(n)?(e.preventDefault(),!1):l(i).height()+i.scrollTop>=i.scrollHeight&&a<0?(e.preventDefault(),!1):0===i.scrollTop&&a>0?(e.preventDefault(),!1):void 0}),l(document).on("mousewheel",n),l(document).on("touchmove",n)}function r(e){e.off("touchstart"),e.off("touchmove"),e.off("mousewheel"),l(document).off("mousewheel",n),l(document).off("touchmove",n)}var l=e("jquery");t.enableScroll=r,t.disableScroll=s}),define("js/product/detail/desc",["jquery","lazyload","swiper","index"],function(e,t,o){function n(e){var t,o;e.length>0&&(t=e[0].getBoundingClientRect().right,o=e.find(".swiper-slide:last-child")[0].getBoundingClientRect().right,o-t<0?e.next(".tips").css("display","none"):e.next(".tips").css("display","block"))}function a(e,t){var o=null;c(e).each(function(n,a){o=c(e).slice(n,n+t),o.length===t&&n%t===0&&c(o).wrapAll(c('<div class="js-wraper"></div>'))})}function i(){v||w||(v=!0,p.showLoadingMask(),c.ajax({type:"GET",url:m,success:function(e){r=c("#productDesc"),r.append(e),window.rePosFooter(),u(r.find("img.lazy")),l=new h("#size-swiper-container",{slidesPerView:"auto"}),d=new h("#reference-swiper-container",{slidesPerView:"auto"}),n(c("#size-swiper-container")),n(c("#reference-swiper-container")),a(".detail .column",2),v=!1,w=!0,p.hideLoadingMask()},error:function(){f.show("网络断开连接了~"),v=!1,p.hideLoadingMask()}}))}function s(){(!w||c(window).scrollTop()+g>=c(document).height()-200)&&i()}var r,l,d,c=e("jquery"),u=e("lazyload"),h=e("swiper"),p=e("js/plugin/loading"),f=e("js/plugin/tip"),m=c("#introUrl").val(),g=c(window).height(),v=!1,w=!1;c(window).scroll(function(){window.requestAnimationFrame(s)})}),define("js/product/detail/comments-consults",["jquery","hammer"],function(e,t,o){var n,a,i=e("jquery"),s=e("js/plugin/tip"),r=e("hammer"),l=document.getElementById("nav-tab"),d=l&&new r(l),c=document.getElementById("goto-consult"),u=c&&new r(c),h=document.getElementById("readmore"),p=h&&new r(h);!function(){a=i("#nav-tab .consults-num").html()-0,n=i("#nav-tab .comments-num").html()-0,i("#nav-tab li").each(function(){i(this).removeClass("focus")}),i("#feedback-content .content").each(function(){i(this).addClass("hide")}),0!==n?(i("#nav-tab .comment-nav").addClass("focus"),i("#feedback-content .comment-content").removeClass("hide")):0!==a&&(i("#nav-tab .consult-nav").addClass("focus"),i("#feedback-content .consult-content").removeClass("hide")),i(".goods-consults .consult-item:lt(2)").removeClass("hide")}(),d&&d.on("tap",function(e){var t=i(e.target).closest("li"),o=t.index();t.hasClass("comment-nav")&&0===n?s.show("暂无商品评价"):t.hasClass("focus")||(i("#nav-tab li").each(function(){i(this).removeClass("focus")}),i("#feedback-content .content").each(function(){i(this).addClass("hide")}),t.addClass("focus"),i("#feedback-content .content:eq("+o+")").removeClass("hide"))}),u&&u.on("tap",function(){location.href=i(c).find("a").attr("href")}),i(".goods-consults-page").length>0&&i("#yoho-header").css("position","fixed").css("top","0"),i(".goods-consults-page").length>0&&i("#yoho-footer").css("border-top","1px solid #e0e0e0"),p&&p.on("tap",function(){return i(".readmore").hide(),i(".goods-consults").find(".consult-item").removeClass("hide"),!1}),e("js/product/detail/fav")}),define("js/product/detail/fav",["jquery","hammer"],function(e,t,o){function n(e){var t=e.find(".animate-count");t.css("display","inline"),t.animate({opacity:.25,fontSize:"0.7rem",right:"-=5"},300,function(){t.css("display","none")})}var a,i,s=e("jquery"),r=e("hammer"),l=e("js/plugin/tip"),d=s("#goods-consults")[0],c=d&&new r(d);!function(){var e=window.location.search.substring(1);a=e.split("&")[0].split("=")[1],i=e.split("&")[1]?e.split("&")[1].split("=")[1]:void 0}(),c&&c.on("tap",function(e){var t,o=s(e.target).closest("li"),r=o.closest(".consult-item").data("id"),d=o.find(".count").html()-0;o.hasClass("highlight")||(o.hasClass("fav")?t="/product/detail/consultupvote":o.hasClass("useful")&&(t="/product/detail/consultuseful"),s.ajax({method:"post",url:t,data:{id:r,productId:a,total:i}}).done(function(e){200===e.code?(n(o),o.addClass("highlight"),o.find(".count").html(d+1)):401===e.code&&(location.href=e.data)}).fail(function(e){l.show("网络断开连接了~")}))})}),define("js/product/recommend-for-you-product-desc",["swiper","jquery","index"],function(e,t,o){function n(){h||u||(h=!0,d&&r.get(d).then(function(e){e.length<5?l.css("display","none"):(l.html(e).show(),r("#swiper-recommend").length&&(i=new s("#swiper-recommend",{slidesPerView:"auto",grabCursor:!0,slideElement:"a",lazyLoading:!0,watchSlidesVisibility:!0}))),h=!1,u=!0,window.rePosFooter()}).fail(function(){l.hide()}))}function a(){(!u||r(window).scrollTop()+c>=r(document).height()-200)&&n()}var i,s=e("swiper"),r=e("jquery"),l=r(".recommend-for-you"),d=r("#preferenceUrl").val(),c=r(window).height(),u=!1,h=!1;r(window).scroll(function(){window.requestAnimationFrame(a)})}),define("js/product/detail/consultform",["jquery"],function(e,t,o){var n,a=e("jquery"),i=e("js/plugin/tip"),s=e("js/plugin/loading"),r=a(".consult-form"),l=a("#submit"),d=a("#content"),c=a("#product_id").val();l.on("touchend",function(){return d.blur(),r.submit(),!1}).on("touchstart",function(){a(this).addClass("highlight")}).on("touchend touchcancel",function(){a(this).removeClass("highlight")}),d.on("focus",function(){"请输入咨询内容"===d.val()&&d.val("")}).on("blur",function(){""===d.val()&&d.val("请输入咨询内容")}),r.on("submit",function(){var e;return!n&&(e=d.val(),e&&"请输入咨询内容"!==e?(n=!0,s.showLoadingMask(),a.ajax({method:"POST",url:"/product/detail/consultsubmit",data:{product_id:c,content:e}}).then(function(e){"object"!==a.type(e)&&(e={}),200!==e.code?(i.show(e.message||"网络出了点问题~"),n=!1,s.hideLoadingMask()):(i.show("提交成功~"),setTimeout(function(){window.history.go(-1)},3e3))}).fail(function(){i.show("网络出了点问题~"),n=!1}),!1):(i.show("咨询内容不能为空"),!1))})}),define("js/product/newsale/hot-rank",["jquery","swiper","lazyload","index"],function(e,t,o){function n(e,t,o,n){h.showLoadingMask(),d.ajax({type:"GET",url:"/product/newsale/selectHotrank?"+t,dataType:"html",data:{page:e,tab_id:o,notab:n},success:function(t){" "===t?d(".rank-main").length<1&&d(".goods-nav").length<1?d("#hotRank").html(v):1===e&&(l=d(".goods-nav").prop("outerHTML"),d("#hotRank").html(l+v)):(d(".no-result").remove(),1===e&&d(".rank-main").remove(),d("#hotRank").append(t)),u(d("img.lazy")),d(".rank-main ul li:gt(9)").find(".item-content i").removeClass("top"),i=d(window).height(),0!==d(".rank-main").length?(d("#yoho-footer").css("position","static"),s=d(".rank-main").find("ul").offset().top):d("#yoho-footer").css({position:"fixed",width:"100%"}),r=new c(".s-goods-nav",{grabCursor:!0,slidesPerView:"auto",slideElement:"li"}),h.hideLoadingMask()}})}function a(){2!==p&&(d(window).scrollTop()+i<s+d("#hotRank").height()-100||(p=2,f=1,n(p,m,g,f)))}var i,s,r,l,d=e("jquery"),c=e("swiper"),u=e("lazyload"),h=e("js/plugin/loading"),p=1,f=0,m="",g="",v='<p class="no-result">未找到相关搜索结果</p>';e("js/product/suspend-cart"),d(window).scroll(function(){window.requestAnimationFrame(a)}),n(p,m,g,f),d("#hotRank").on("touchend touchcancel",function(e){var t=t||window.event,o=t.target||t.srcElement;"span"===o.nodeName.toLowerCase()&&(d(".s-goods-nav .nav-item").removeClass("active"),o.parentNode.className="active "+o.parentNode.className,g=o.getAttribute("data-id")?o.getAttribute("data-id"):"",m=o.getAttribute("data-sort")?o.getAttribute("data-sort"):"",p=1,f=1,n(p,m,g,f))}),d("#hotRank").bind("contextmenu",function(e){return!1}),d("#hotRank").on("touchstart",function(e){var t=t||window.event,o=t.target||t.srcElement;"span"===o.nodeName.toLowerCase()&&(o.parentNode.className="bgActive "+o.parentNode.className)}).on("touchend touchcancel",function(){d(".s-goods-nav .nav-item").removeClass("bgActive")})}),define("js/product/product-category",["jquery"],function(e,t,o){var n=e("jquery"),a=n(".allproduct"),i=n(".category-container"),s=i.children(".content"),r=i.find(".sub-level li"),l=i.find(".primary-level-trilangle");!function(){var e=n(".yoho-header"),t=n(window).height()-e.outerHeight()-a.outerHeight(),o=.55*n(window).width();i.css("min-height",t),l.css("margin-right",o),s.height(t)}(),i.on("touchend",function(e){var t,o,a,i,s,r=n(e.target);if(o=r.closest(".p-level-item"),i=r.closest(".content").find(".sub-level-container"),i.removeClass("hide"),o.length>0){if(a=o.index(),t=r.closest(".content").find(".sub-level"),s=r.closest(".content").find(".primary-level-trilangle"),r.hasClass("focus"))return;t.not(".hide").addClass("hide"),t.eq(a).removeClass("hide"),s.not(".hide").addClass("hide"),s.eq(a).removeClass("hide")}}),i.find(".sub-level").on("touchstart","li",function(){r.removeClass("highlight"),n(this).addClass("highlight")}).on("touchend touchcancel","li",function(){n(this).removeClass("highlight")}),a.on("touchstart",function(){n(this).addClass("highlight")}).on("touchend touchcancel",function(){n(this).removeClass("highlight")})}),define("js/product/shop",["jquery","iscroll-probe","lazyload","swiper","hammer","index"],function(e,t,o){function n(e){var t,o;E||(o=e.data.type,t=K[o],t.end||(e.data&&$&&(e.data.coverChannel=$),E=!0,_.ajax({type:"GET",url:e.url,data:e.data,success:function(o){" "===o&&(t.end=!0),e.callBack(o)},error:function(){M.show("网络断开连接了~"),E=!1}})))}function a(e){G&&(e.data.brand=G),V&&(e.data.shop_id=V)}function i(e){var t={};t.url=location.protocol+"//m.yohobuy.com/index/search/search",t.data={type:"new",order:"1",page:K["new"].page,tagNew:"1"},a(t),t.callBack=function(t){_("#new-arrival").append(t),K["new"].page++,y.refresh(),D(_("#new-arrival .lazy")),q=_("#scroller").outerHeight(),E=!1,e&&_.isFunction(e)&&e()},n(t)}function s(e){var t={};t.url=location.protocol+"//m.yohobuy.com/index/search/search",t.data={type:"hot",order:"1",page:K.hot.page,showTag:"1"},a(t),t.callBack=function(t){_("#popularity").append(t),K.hot.page++,D(_("#popularity .lazy")),q=_("#scroller").outerHeight(),E=!1,e&&_.isFunction(e)&&e()},n(t)}function r(e,t){var o=e.eq(t);e.removeClass("active color"),o.addClass("active color")}function l(){var e=ae?ae:0;if(e<b+x+C){if(z.hasClass("hide")&&z.removeClass("hide"),e<b+j)tra="translate3d(0, "+-q+"px, 0)",z.addClass("fixed-top").removeClass("absolute").css({transform:tra,"-moz-transform":tra,"-ms-transform":tra,"-webkit-transform":tra});else if(e<b+j+C){if(_("#home-page").is(":hidden"))return!1;z.addClass("absolute").removeClass("fixed-top"),tra="translate3d(0, "+(b+j-e-q)+"px, 0)",z.css({transform:tra,"-moz-transform":tra,"-ms-transform":tra,"-webkit-transform":tra})}}else z.hasClass("hide")||z.addClass("hide")}function d(){var e,t,o=-this.y;if(ae=o,o+Y>q-.25*A.height()-50&&void 0!==ee&&u({type:"shop_id",id:V,brand:G,url:location.protocol+"//m.yohobuy.com/index/search/search",nextPage:!0}),o+2*Y>q)switch(e=function(){var e="translate3d(0, "+-q+"px, 0)";z.css({transform:e,"-moz-transform":e,"-ms-transform":e,"-webkit-transform":e})},te){case 2:i(e);break;case 3:s(e)}if(o<b)z.hasClass("hide")||z.addClass("hide"),P.hasClass("hide")||P.addClass("hide");else if(o<b+x+C){if(z.hasClass("hide")&&z.removeClass("hide"),P.hasClass("hide")||P.addClass("hide"),o<b+j)z.hasClass("fixed-top")||(t="translate3d(0, "+-q+"px, 0)",z.addClass("fixed-top").removeClass("absolute").css({transform:t,"-moz-transform":t,"-ms-transform":t,"-webkit-transform":t}));else if(o<b+j+C){if(_("#home-page").is(":hidden"))return!1;z.hasClass("absolute")||z.addClass("absolute").removeClass("fixed-top"),t="translate3d(0, "+(b+j-o-q)+"px, 0)",z.css({transform:t,"-moz-transform":t,"-ms-transform":t,"-webkit-transform":t})}}else{if(_("#home-page").is(":hidden"))return!1;z.hasClass("hide")||z.addClass("hide"),P.hasClass("hide")&&P.removeClass("hide"),o<q&&(P.hasClass("absolute")||P.addClass("absolute").removeClass("fixed-top"),t="translate3d(0, "+-q+"px, 0)",P.css({transform:t,"-moz-transform":t,"-ms-transform":t,"-webkit-transform":t}))}}function c(){_(document).trigger("rebindBpEvent")}function u(e){var t,o,n,a,i,s={};if(!E){if(e.url||(e.url=location.protocol+"//m.yohobuy.com/index/search/search"),ee=Z.find(".active").eq(0),!e.nextPage){for(o in K)K.hasOwnProperty(o)&&(K[o].reload=!0);if(Z.children(".active").removeClass("active"),ee.addClass("active"),e.hasOwnProperty("id")){switch(e.type){case"shop_id":t={shop_id:e.id};break;case"gender":t={gender:e.id},t.coverChannel=e.id;break;case"brand":t={brand:e.id};break;case"sort":t={sort:e.id};break;case"color":t={color:e.id};break;case"size":t={size:e.id};break;case"price":t={price:e.id};break;case"discount":t={discount:e.id};break;case"ageLevel":t={age_level:e.id}}_.extend(Q,t)}}if(ee.hasClass("new")?a="newest":ee.hasClass("price")?a="price":ee.hasClass("discount")&&(a="discount"),n=K[a],i=n.page+1,n.reload)i=1;else if(n.end)return;$&&(s.coverChannel=$),_.extend(s,Q,{type:a,order:n.order,page:i}),G&&(s.brand=G),V&&(s.shop_id=V),E=!0,O.showLoadingMask(),_.ajax({type:"GET",url:e.url?e.url:"",data:s,success:function(e){var t,o;switch(a){case"newest":t=R;break;case"price":t=H;break;case"discount":t=U}" "===e?(n.end=!0,n.reload&&t.html(X)):n.reload?(t.html(e),D(t.find(".lazy"))):(o=t.find(".good-info").length,t.append(e),D(t.find(".good-info:gt("+(o-1)+") .lazy"))),q=_("#scroller").outerHeight(),n.reload=!1,n.page=i,E=!1,O.hideLoadingMask(),window.rePosFooter(),y&&y.refresh(),l(),c()},error:function(){M.show("网络断开连接了~"),E=!1,O.hideLoadingMask()}})}}function h(e){_(e+" li").on("touchstart",function(){_(".sub-group").addClass("hide"),_(this).find(".sub-group").removeClass("hide")})}function p(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}function f(e){var t="";E||(E=!0,_.ajax({method:"get",url:location.protocol+"//m.yohobuy.com"+e.url,data:e.data,xhrFields:{withCredentials:!0},success:function(e){200===e.code&&(_("#collect").hasClass("alreadyCollect")?(_("#collect").attr("class","notCollect"),M.show("取消收藏成功")):(_("#collect").attr("class","alreadyCollect"),M.show("收藏成功"))),401===e.code&&(t=e.url,_("#jump-login").length<=0&&_("body").append("<a href='"+t+'\'><span id="jump-login"><span></a>'),_("#jump-login").click()),setTimeout(function(){q=_("#scroller").outerHeight()},500),E=!1},error:function(){M.show("网络断开连接了~"),E=!1}}))}function m(){var e={};e.url="/product/index/shopFav",e.data={shop_id:J?J:V,app_version:W},f(e)}function g(){var e={};e.url="/product/index/cancelShopFav",e.data={shop_id:J?J:V,app_version:W},f(e)}var v,w,y,b,C,j,x,k,T,q,E,I,_=e("jquery"),S=e("iscroll-probe"),D=e("lazyload"),L=e("swiper"),z=_("#pos-nav"),P=_("#pos-list"),M=e("js/plugin/tip"),F=e("js/plugin/filter"),O=e("js/plugin/loading"),N=_(".home-sub-nav"),A=_("#goods-container"),B=A.children(),R=_(B.get(0)),H=_(B.get(1)),U=_(B.get(2)),V=_('input[name="shop_id"]').val(),W=_('input[name="app_version"]').val(),G=_('input[name="brand"]').val(),$=_('input[name="coverChannel"]').val(),J=_('input[name="favId"]').val(),Y=_(window).height(),X='<p class="no-result">未找到相关搜索结果</p>',Q=e("js/product/query-param"),Z=_("#list-nav"),K={"new":{order:1,reload:!0,page:1,end:!1},hot:{order:1,reload:!0,page:1,end:!1},newest:{order:1,reload:!0,page:0,end:!1},price:{order:1,reload:!0,page:0,end:!1},discount:{order:1,reload:!0,page:0,end:!1}},ee=Z.find(".active"),te=1,oe=_(".category-list li").length,ne=4-oe%4;if(_(".banner-swiper").find("li").size()>1&&(v=new L(".banner-swiper",{lazyLoading:!0,lazyLoadingInPrevNext:!0,loop:!0,autoplay:3e3,autoplayDisableOnInteraction:!1,paginationClickable:!0,slideElement:"li",pagination:".banner-top .pagination-inner"})),_(".multi-browse").find("li").size()>1&&(w=new L(".multi-browse",{lazyLoading:!0,lazyLoadingInPrevNext:!0,lazyLoadingOnTransitionStart:!0,grabCursor:!0,slidesPerView:"auto",slideElement:"li",watchSlidesVisibility:!0})),_(".category-list li").length%4!==0&&_(".category-list li:last-child").addClass("category-list-last-li"),_(".category-list li").length<4)_(".category-list").addClass("category-list-top-board"),_(".category-list").find(".buriedpoint").addClass("category-list-only-one-row");else if(_(".category-list li").length>=5)for(I=ne;I>=0;I--)_(".category-list li").eq(oe-4+I-1).addClass("category-list-last-full-row");!function(e,t,o){_(e+" li, "+t+" li").not("li.all-goods").on("touchstart",function(){var n=_(this).index(),a=_(this).attr("tab");_(".filter-mask").hasClass("hide")&&(z.removeClass("fixed-top"),r(_(e+" li"),n),r(_(t+" li"),n),_(o).hide(),_("#"+a).fadeIn(),"new-arrival"===a?(i(),te=2):"popularity"===a?(s(),te=3):"home-page"===a&&(z.removeClass("fixed-top absolute"),P.removeClass("fixed-top absolute")),q=_("#scroller").outerHeight(),z.hasClass("hide")||y&&y.scrollTo(0,0-b),z.addClass("hide"))})}("#nav","#pos-nav",".main");var ae;document.addEventListener("touchmove",function(e){0===_(e.target).closest(".sub-classify").length&&e.preventDefault()},!1),_(window).ready(function(){y&&y.refresh(),b=_("#nav-top").outerHeight(),C=_("#nav").outerHeight(),j=_("#nav-main").height(),x=_("#nav-main").outerHeight(),k=_("#list-nav").outerHeight(),T=_("#goods-container").outerHeight(),y=new S("#wrapper",{probeType:2,mouseWheel:!1,click:!0}),setTimeout(function(){q=_("#scroller").outerHeight()},500),y.on("scroll",d),y.on("scrollStart",function(){v&&v.stopAutoplay(),w&&w.stopAutoplay()}),y.on("scrollEnd",function(){v&&v.startAutoplay(),w&&w.startAutoplay(),_("#scroller").trigger("scroll"),d.bind(this)()}),D(_("img.lazy"))}),Z.bind("contextmenu",function(e){return!1}),N.on("touchend touchcancel",function(e){var t,o,n,a,i=_(e.target).closest("li"),s=i.attr("data-bp-id")||"";if(e.preventDefault(),_(document).trigger("shouldSendBpData",[s]),"undefined"!=typeof i&&0!==i.length){if(i.hasClass("filter"))i.hasClass("active")?(F.hideFilter(),y&&y.enable()):(y&&y.scrollTo(0,-(b+x+C)),ae=b+x+C,l(),F.showFilter(),i.closest(".pos-list").length>0?_(".filter-mask").addClass("call-by-fix").css("top",""):_(".filter-mask").removeClass("call-by-fix").css("top",i.offset().top+C),y&&y.disable());else{if(i.hasClass("new")?(t=".new",n="newest"):i.hasClass("price")?(t=".price",n="price"):i.hasClass("discount")&&(t=".discount",n="discount"),y&&y.enable(),o=K[n],i.hasClass("active")){if(i.hasClass("new"))return;if(i.hasClass("price")||i.hasClass("discount"))switch(i=N.find(t),i.find(".icon > .iconfont").toggleClass("cur"),o.reload=!0,o.order=0===o.order?1:0,A.children(".container:not(.hide)").addClass("hide"),n){case"newest":R.removeClass("hide");break;case"price":H.removeClass("hide");break;case"discount":U.removeClass("hide")}}else{if(a=N.find(".active"),a.hasClass("filter"))F.hideFilter();else{switch(A.children(".container:not(.hide)").addClass("hide"),n){case"newest":R.removeClass("hide");break;case"price":H.removeClass("hide");break;case"discount":U.removeClass("hide")}ae=b+x+C,l()}N.children().removeClass("active"),N.find(t).addClass("active")}o.reload&&u({type:"shop_id",id:V,brand:G,url:location.protocol+"//m.yohobuy.com/index/search/search",nextPage:!1})}e.stopPropagation()}}),F.initFilter({fCbFn:function(e){u(e),y&&y.enable()},hCbFn:function(){ee.addClass("active"),ee.siblings(".filter").removeClass("active"),y&&y.enable()},missStatus:!0}),Z.on("touchstart","li",function(e){_(this).addClass("bytouch")}).on("touchend touchcancel",function(){Z.find("li").removeClass("bytouch")}),P.on("touchstart","li",function(e){_(this).addClass("bytouch")}).on("touchend touchcancel",function(){P.find("li").removeClass("bytouch")}),h(".shop-foot-wrapper"),_(document).bind("touchstart",function(){_(".sub-group").addClass("hide")}),_(".shop-foot-wrapper").bind("touchstart",function(e){p(e)}),_("#collect").on("touchstart",function(e){_("#collect").hasClass("alreadyCollect")?g():m()})}),define("js/me/entry",["jquery","hammer","lazyload","swiper","handlebars","source-map","mlellipsis","index"],function(e,t,o){e("js/me/order"),e("js/me/order-detail"),e("js/me/fav"),e("js/me/suggest"),e("js/me/index"),e("js/me/coupons"),e("js/me/online-service"),e("js/me/address"),e("js/me/suggest"),e("js/me/browse-record"),e("js/me/address-act"),e("js/me/logistic"),e("js/me/pay"),e("js/me/personal-details"),e("js/me/currency"),e("js/me/currency-new"),e("js/me/message"),e("js/me/message-detail"),e("js/me/address-modify")}),define("js/me/order",["jquery","hammer","lazyload","swiper","handlebars","source-map","index"],function(e,t,o){function n(e){function t(){var t,i,s,r=1e3,l=60*r,d=60*l,c=24*d;if(t=Math.floor(a%c/d),i=Math.floor(a%d/l),s=Math.floor(a%l/r),t=String(t).length>=2?t:"0"+t,i=String(i).length>=2?i:"0"+i,s=String(s).length>=2?s:"0"+s,e.removeClass("hide"),"00"===t?n.text("剩余"+i+":"+s):n.text("剩余"+t+":"+i+":"+s),a-=1e3,a<=0)return void clearInterval(o)}var o,n=e.find(".hours"),a=n.text();""!==a&&a>0&&(o=setInterval(t,1e3))}function a(){d(".order").each(function(){var e=d(this).find(".count-down");d(this).hasClass("hide")||n(e)})}function i(e){var t={type:w,page:y.page+1},o=e&&!e.noLoadingMask;b||(b=!0,o&&C.showLoadingMask(),d.ajax({type:"GET",url:"/home/getOrders",data:t,success:function(e){var n;" "!==e?(y.page=t.page,1===t.page?(g.html(e),u(g.find(".lazy"),{try_again_css:"order-failure"})):(n=g.children(".order").length,g.append(e),u(g.children(".order:gt("+(n-1)+")").find(".lazy"),{try_again_css:"order-failure"})),window.rePosFooter()):y.end=!0,b=!1,o&&C.hideLoadingMask(),a()}}))}function s(){y.end===!1&&d(window).scrollTop()+v>d(document).height()-.25*m.height()&&i({noLoadingMask:!0})}var r,l,d=e("jquery"),c=e("hammer"),u=e("lazyload"),h=e("js/plugin/tip"),p=e("swiper"),f=d("#order-nav > li"),m=d("#order-container"),g=m.children(".orders:not(.hide)"),v=d(window).height(),w=f.filter(".active").data("type"),y={page:0,end:!1},b=!1,C=e("js/plugin/loading"),j=e("js/me/dialog"),x=d(".reason-mask");u({try_again_css:"order-failure"}),function(){var e=f.length;4!==e&&f.width(100/e+"%")}(),C.init(d("body")),r=new c(document.getElementById("order-container")),r.on("tap",function(e){var t,o,n,a=d(e.target);a.closest(".locHref").length>0||(t=a.closest(".order"),o=t.data("id"),x.data("orderId",o),a.closest(".del").length>0?j.showDialog({dialogText:"确定删除订单吗?",hasFooter:{leftBtnText:"取消",rightBtnText:"确定"}},function(){d.ajax({type:"GET",url:"/home/delOrder",data:{id:o},success:function(e){j.hideDialog(),e.message&&h.show(e.message),200===e.code&&window.location.reload()},error:function(){h.show("取消订单失败")}})}):a.closest(".cancel").length>0?x.css("visibility","visible"):a.closest(".order-goods").length>0?(n=t.data("href"),location.href=n):a.closest(".rebuy").length>0&&d.ajax({type:"GET",url:"/home/readd",data:{orderCode:o},success:function(e){h.show(e.message),location.href="/cart/index/index"},error:function(e){h.show(e.message)}}))}),d(window).scroll(function(){window.requestAnimationFrame(s)}),i(),d(function(){l=new p(".box-main",{direction:"vertical",slidesPerView:5,centeredSlides:!0,initialSlide:0,onSlideChangeStart:function(e){var t=e.activeIndex,o=e.slides,n=0;if(1!==o.length)if(0===t)for(n=1;n<o.length;n++)d(o[n]).css("transform","");else if(t===o.length-1)for(n=0;n<t;n++)d(o[n]).css("transform","rotateX("+(30+12*(t-n))+"deg)");else{for(n=0;n<t;n++)d(o[n]).css("transform","rotateX("+(30+12*(t-n))+"deg)");for(n=t+1;n<o.length;n++)d(o[n]).css("transform","")}d(o[t]).css("transform","")}})}),x.find(".box-cmp").on("touchend",function(e){var t=l.slides[l.activeIndex],o=d(t).text(),n=d(t).data("reasonId");d.ajax({type:"GET",url:"/home/cancelOrder",data:{id:x.data("orderId"),reason:o,reasonId:n}}).then(function(e){x.fadeOut(),"object"===d.type(e)&&(e.message&&h.show(e.message),setTimeout(function(){window.location.href="/home/orders"},2e3))}).fail(function(){h.show("网络错误")})}),x.on("touchend",function(e){return"reason-mask"===e.target.className&&(x.css("visibility","hidden"),void e.stopPropagation())})}),define("js/me/order-detail",["jquery","lazyload","hammer","handlebars","source-map","swiper","index"],function(e,t,o){function n(e){function t(){var e,t,a,i=1e3,s=60*i,r=60*s,l=24*r;if(e=Math.floor(n%l/r),t=Math.floor(n%r/s),a=Math.floor(n%s/i),e=String(e).length>=2?e:"0"+e,t=String(t).length>=2?t:"0"+t,a=String(a).length>=2?a:"0"+a,p.removeClass("hide"),"00"===e?h.text("剩余"+t+":"+a):h.text("剩余"+e+":"+t+":"+a),n-=1e3,n<0)return void clearInterval(o)}var o,n=e;""!==n&&n>0&&(o=setInterval(t,1e3))}var a,i,s=e("jquery"),r=e("lazyload"),l=e("hammer"),d=e("js/me/dialog"),c=e("js/plugin/tip"),u=s("#order-detail").data("id"),h=s(".hours"),p=s(".count-down"),f=e("swiper"),m=s(".owner-info"),g=s(".reason-mask");r({try_again_css:"order-failure"}),n(h.text()),i=new l(document.getElementsByClassName("opt")[0]),i.on("tap",function(e){var t=s(e.target);t.hasClass("btn-del")?d.showDialog({dialogText:"确定删除订单吗?",hasFooter:{leftBtnText:"取消",rightBtnText:"确定"}},function(){s.ajax({type:"GET",url:"/home/delOrder",data:{id:u}}).then(function(e){s("#dialog-wrapper").hide(),"object"===s.type(e)&&(e.message&&c.show(e.message),setTimeout(function(){window.location.href="/home/orders"},2e3))}).fail(function(){c.show("网络错误")})}):t.hasClass("btn-cancel")?g.css("visibility","visible"):t.hasClass("btn-rebuy")&&s.ajax({type:"GET",url:"/home/readd",data:{orderCode:u},success:function(e){c.show(e.message),location.href="/cart/index/index"},error:function(e){c.show(e.message)}})}),m.data("changeable")===!0&&(m.find(".rest").show(),m.on("touchend",function(){location.href=m.data("url")})),s(function(){a=new f(".box-main",{initialSlide:0,centeredSlides:!0,slidesPerView:5,direction:"vertical",onSlideChangeStart:function(e){var t=e.activeIndex,o=e.slides,n=0;if(1!==o.length)if(0===t)for(n=1;n<o.length;n++)s(o[n]).css("transform","");else if(t===o.length-1)for(n=0;n<t;n++)s(o[n]).css("transform","rotateX("+(30+12*(t-n))+"deg)");else{for(n=0;n<t;n++)s(o[n]).css("transform","rotateX("+(30+12*(t-n))+"deg)");for(n=t+1;n<o.length;n++)s(o[n]).css("transform","")}s(o[t]).css("transform","")}})}),g.find(".box-cmp").on("touchend",function(e){var t=a.slides[a.activeIndex],o=s(t).text(),n=s(t).data("reasonId");s.ajax({type:"GET",url:"/home/cancelOrder",data:{id:u,reason:o,reasonId:n}}).then(function(e){g.fadeOut(),"object"===s.type(e)&&(e.message&&c.show(e.message),setTimeout(function(){window.location.href="/home/orders"},2e3))}).fail(function(){c.show("网络错误")})}),g.on("touchend",function(e){return"reason-mask"===e.target.className&&(g.css("visibility","hidden"),void e.stopPropagation())})}),define("js/me/fav",["jquery","hammer","swiper","handlebars","source-map","index"],function(e,t,o){function n(e){f.filter(".active").removeClass("active"),f.eq(e).addClass("active"),m.filter(".show").removeClass("show"),m.eq(e).addClass("show")}function a(e){var t,o,n=/container-(\d+)['"]{1}/gi,a=/\d+/,i=e.match(n),s=i.length;for(t=0;t<s;t++)o=i[t].match(a)[0],g[o]=new u("#swiper-container-"+o,{slidesPerView:"auto",grabCursor:!0,slideElement:"li",wrapperClass:"swiper-wrapper-"+o,lazyLoading:!0,watchSlidesVisibility:!0})}function i(e,t,o){"favBrand"===t?q=!0:T=!0,d.ajax({method:"post",url:"/home/"+t,data:{page:o},success:function(o){var n=e.closest(".fav-type").find(".fav-content-loading");"favBrand"===t?w.addClass("hide"):v.addClass("hide")," "===o?(n.addClass("hide"),e.closest(".fav-type").find(".fav-null-box").removeClass("hide"),window.rePosFooter()):"end"===o?(n&&!n.hasClass("hide")&&n.addClass("hide"),e.closest(".fav-type").find(".fav-load-background").removeClass("fav-load-background").html("没有更多了"),q=!0,T=!0):o.length>10&&(e.append(o),n.remove(),"favBrand"===t?(a(o),q=!1):T=!1),window.rePosFooter()}})}function s(){d(window).scrollTop()+y>=d(document).height()-.25*j.height()-b&&(E?(w.filter(".hide").removeClass("hide"),q||(k++,i(j,"favBrand",k))):(v.filter(".hide").removeClass("hide"),T||(x++,i(C,"favProduct",x))))}var r,l,d=e("jquery"),c=e("hammer"),u=e("swiper"),h=e("js/me/dialog"),p=e("js/plugin/tip"),f=d("#fav-tab > li"),m=d(".fav-content > .fav-type"),g={},v=d(".fav-load-more"),w=d(".fav-brand-load-more"),y=d(window).height(),b=d("#yoho-footer").height(),C=d(".fav-product-list"),j=d(".fav-brand-swiper-wrapper"),x=1,k=1,T=!0,q=!0,E=!1;d("#fav-tab").hasClass("brand-tab")?(n(1),i(j,"favBrand",1),E=!0,window.rePosFooter()):(n(0),i(C,"favProduct",1),E=!1,window.rePosFooter()),r=new c(document.getElementById("fav-tab")),r.on("tap",function(e){var t,o=d(e.target).closest("li");0===o.length||o.hasClass("active")||(t=o.index(),0===t?(E=!1,0===C.find("li").length&&C.closest(".fav-type").find(".fav-null-box").hasClass("hide")&&i(C,"favProduct",1)):(E=!0,0===j.find("div").length&&j.closest(".fav-type").find(".fav-null-box").hasClass("hide")&&i(j,"favBrand",1)),n(t),window.rePosFooter())}),l=new c(document.getElementById("fav-content")),l.on("tap",function(e){var t="";d(e.target).hasClass("del-fav")&&h.showDialog({dialogText:"您确定要取消收藏吗?",hasFooter:{leftBtnText:"取消",rightBtnText:"确定"}},function(){t=d(e.target).closest("li").attr("data-id"),d.ajax({method:"post",url:"/home/favoriteDel",data:{id:t}}).then(function(t){200===t.code?(h.showDialog({autoHide:!0,fast:!0,dialogText:"已经取消收藏"}),d(e.target).closest("li").remove()):400===t.code?h.showDialog({autoHide:!0,fast:!0,dialogText:t.message}):h.showDialog({autoHide:!0,fast:!0,dialogText:"取消收藏失败"})}).fail(function(){h.showDialog({autoHide:!0,dialogText:"网络错误~"})})})}),d(window).scroll(s),d(document).on("touchend",".swiper-header",function(){var e=d(this).find(".fav-more").attr("href");e&&(window.location.href=e)}),d(".invalidGoods").on("touchstart touchend",function(e){var t=d(e.target).closest("span");if(!t.hasClass("del-fav"))return p.show("商品已下架"),!1})}),define("js/me/suggest",["jquery","hammer","lazyload","handlebars","source-map"],function(e,t,o){var n,a,i,s,r=e("jquery"),l=e("hammer"),d=e("lazyload"),c=e("handlebars"),u=e("js/me/dialog"),h=r(".upload-img-list"),p=r(".suggest-item .like-btn"),f=r(".suggest-item .dislike-btn"),m=r(".img-add"),g="",v=0;e("js/me/jquery.upload"),i='{{# imgList}}<li>{{# imgUrl}}<img src="{{.}}" /><span class="upload-img-remove"></span>{{/ imgUrl}}</li>{{/ imgList}}',s=c.compile(i),r("#upload-img").upload({auto:!0,fileType:"image/*",uploadScript:"/home/suggestimgUpload",fileObjName:"fileData",fileSizeLimit:300,height:"100%",width:"100%",multi:!1,onAddQueueItem:function(e){h.html(s({imgList:!0}))},onUploadComplete:function(e,t){h.html(""),g=JSON.parse(t).imgList[0].imgRelUrl,h.html(s(JSON.parse(t))),m.hide(),v++}}),d(),n=new l(document.getElementById("yoho-header")),n.on("tap",function(e){var t=r("#suggest-textarea").val(),o=/\S+/;if(r(e.target).hasClass("nav-btn")){if(!o.test(t))return void u.showDialog({autoHide:!0,dialogText:"意见不能为空"});r.ajax({method:"post",url:"/home/savesuggest",data:{content:t,image:g}}).then(function(e){200===e.code?(u.showDialog({autoHide:!0,dialogText:"提交成功"}),setTimeout(function(){location.pathname="home/suggest"},2e3)):u.showDialog({autoHide:!0,dialogText:"提交失败~"})}).fail(function(){u.showDialog({autoHide:!0,dialogText:"网络错误~"})})}}),null!==document.getElementById("img-form")&&(a=new l(document.getElementById("img-form")),a.on("tap",function(e){r(e.target).hasClass("upload-img-remove")&&(h.html(""),g="",v--,setTimeout(function(){m.show()},50))})),p.bind("click",function(){var e=r(this).closest(".suggest-item").attr("data-id"),t=r(this);r.ajax({method:"post",url:"/home/upAndDown",data:{suggest_id:e,reliable:1}}).then(function(e){200===e.code&&(t.closest(".suggest-type").removeClass("show"),t.closest(".suggest-item").find(".suggest-good").addClass("show"))}).fail(function(e){u.showDialog({autoHide:!0,dialogText:"网络错误~"})})}),f.bind("click",function(){var e=r(this).closest(".suggest-item").attr("data-id"),t=r(this);r.ajax({method:"post",url:"/home/upAndDown",data:{suggest_id:e,reliable:2}}).then(function(e){200===e.code&&(t.closest(".suggest-type").removeClass("show"),t.closest(".suggest-item").find(".suggest-bad").addClass("show")); -}).fail(function(e){u.showDialog({autoHide:!0,dialogText:"网络错误~"})})})}),define("js/me/jquery.upload",["jquery"],function(e,t,o){var n=e("jquery");!function(e){var t={init:function(o){return this.each(function(){var n=e(this);n.data("uploadifive",{inputs:{},inputCount:0,fileID:0,queue:{count:0,selected:0,replaced:0,errors:0,queued:0,cancelled:0},uploads:{current:0,attempts:0,successful:0,errors:0,count:0}});var a=n.data("uploadifive"),s=a.settings=e.extend({auto:!0,buttonClass:!1,buttonText:"Select Files",checkScript:!1,dnd:!0,dropTarget:!1,fileObjName:"Filedata",fileSizeLimit:0,fileType:!1,formData:{},height:30,itemTemplate:!1,method:"post",multi:!0,overrideEvents:[],queueID:!1,queueSizeLimit:0,removeCompleted:!1,simUploadLimit:0,truncateLength:0,uploadLimit:0,uploadScript:"uploadifive.php",width:100},o);if(isNaN(s.fileSizeLimit)){var r=1.024*parseInt(s.fileSizeLimit);s.fileSizeLimit.indexOf("KB")>-1?s.fileSizeLimit=1e3*r:s.fileSizeLimit.indexOf("MB")>-1?s.fileSizeLimit=1e6*r:s.fileSizeLimit.indexOf("GB")>-1&&(s.fileSizeLimit=1e9*r)}else s.fileSizeLimit=1024*s.fileSizeLimit;if(a.inputTemplate=e('<input type="file">').css({"font-size":s.height+"px",opacity:0,position:"absolute",right:"-3px",top:"-3px","z-index":999}),a.createInput=function(){var o=a.inputTemplate.clone(),i=o.name="input"+a.inputCount++;s.multi&&o.attr("multiple",!0),s.fileType&&o.attr("accept",s.fileType),o.bind("change",function(){a.queue.selected=0,a.queue.replaced=0,a.queue.errors=0,a.queue.queued=0;var o=this.files.length;if(a.queue.selected=o,a.queue.count+o>s.queueSizeLimit&&0!==s.queueSizeLimit)e.inArray("onError",s.overrideEvents)<0&&alert("The maximum number of queue items has been reached ("+s.queueSizeLimit+"). Please select fewer files."),"function"==typeof s.onError&&s.onError.call(n,"QUEUE_LIMIT_EXCEEDED");else{for(var r=0;r<o;r++)file=this.files[r],a.addQueueItem(file);a.inputs[i]=this,a.createInput()}s.auto&&t.upload.call(n),"function"==typeof s.onSelect&&s.onSelect.call(n,a.queue)}),a.currentInput&&a.currentInput.hide(),a.button.append(o),a.currentInput=o},a.destroyInput=function(t){e(a.inputs[t]).remove(),delete a.inputs[t],a.inputCount--},a.drop=function(o){a.queue.selected=0,a.queue.replaced=0,a.queue.errors=0,a.queue.queued=0;var i=o.dataTransfer,r=i.name="input"+a.inputCount++,l=i.files.length;if(a.queue.selected=l,a.queue.count+l>s.queueSizeLimit&&0!==s.queueSizeLimit)e.inArray("onError",s.overrideEvents)<0&&alert("The maximum number of queue items has been reached ("+s.queueSizeLimit+"). Please select fewer files."),"function"==typeof s.onError&&s.onError.call(n,"QUEUE_LIMIT_EXCEEDED");else{for(var d=0;d<l;d++)file=i.files[d],a.addQueueItem(file);a.inputs[r]=i}s.auto&&t.upload.call(n),"function"==typeof s.onDrop&&s.onDrop.call(n,i.files,i.files.length),o.preventDefault(),o.stopPropagation()},a.fileExistsInQueue=function(e){for(var t in a.inputs){input=a.inputs[t],limit=input.files.length;for(var o=0;o<limit;o++)if(existingFile=input.files[o],existingFile.name==e.name&&!existingFile.complete)return!0}return!1},a.removeExistingFile=function(e){for(var o in a.inputs){input=a.inputs[o],limit=input.files.length;for(var i=0;i<limit;i++)existingFile=input.files[i],existingFile.name!=e.name||existingFile.complete||(a.queue.replaced++,t.cancel.call(n,existingFile,!0))}},0==s.itemTemplate?a.queueItem=e('<div class="uploadifive-queue-item"> <a class="close" href="#">X</a> <div><span class="filename"></span><span class="fileinfo"></span></div> <div class="progress"> <div class="progress-bar"></div> </div> </div>'):a.queueItem=e(s.itemTemplate),a.addQueueItem=function(o){if(e.inArray("onAddQueueItem",s.overrideEvents)<0){a.removeExistingFile(o),o.queueItem=a.queueItem.clone(),o.queueItem.attr("id",s.id+"-file-"+a.fileID++),o.queueItem.find(".close").bind("click",function(){return t.cancel.call(n,o),!1});var i=o.name;i.length>s.truncateLength&&0!=s.truncateLength&&(i=i.substring(0,s.truncateLength)+"..."),o.queueItem.find(".filename").html(i),o.queueItem.data("file",o),a.queueEl.append(o.queueItem)}"function"==typeof s.onAddQueueItem&&s.onAddQueueItem.call(n,o),o.size>s.fileSizeLimit&&0!=s.fileSizeLimit?a.error("FILE_SIZE_LIMIT_EXCEEDED",o):(a.queue.queued++,a.queue.count++)},a.removeQueueItem=function(t,o,n){n||(n=0);var i=o?0:500;t.queueItem&&(" - Completed"!=t.queueItem.find(".fileinfo").html()&&t.queueItem.find(".fileinfo").html(" - Cancelled"),t.queueItem.find(".progress-bar").width(0),t.queueItem.delay(n).fadeOut(i,function(){e(this).remove()}),delete t.queueItem,a.queue.count--)},a.filesToUpload=function(){var e=0;for(var t in a.inputs){input=a.inputs[t],limit=input.files.length;for(var o=0;o<limit;o++)file=input.files[o],file.skip||file.complete||e++}return e},a.checkExists=function(o){if(e.inArray("onCheck",s.overrideEvents)<0){e.ajaxSetup({async:!1});var a=e.extend(s.formData,{filename:o.name});if(e.post(s.checkScript,a,function(e){o.exists=parseInt(e)}),o.exists&&!confirm("A file named "+o.name+" already exists in the upload folder.\nWould you like to replace it?"))return t.cancel.call(n,o),!0}return"function"==typeof s.onCheck&&s.onCheck.call(n,o,o.exists),!1},a.uploadFile=function(t,o){if(!t.skip&&!t.complete&&!t.uploading)if(t.uploading=!0,a.uploads.current++,a.uploads.attempted++,xhr=t.xhr=new XMLHttpRequest,"function"==typeof FormData||"object"==typeof FormData){var r=new FormData;r.append(s.fileObjName,t);for(i in s.formData)r.append(i,s.formData[i]);xhr.open(s.method,s.uploadScript,!0),xhr.upload.addEventListener("progress",function(e){e.lengthComputable&&a.progress(e,t)},!1),xhr.addEventListener("load",function(e){4==this.readyState&&(t.uploading=!1,200==this.status?"Invalid file type."!==t.xhr.responseText?a.uploadComplete(e,t,o):a.error(t.xhr.responseText,t,o):404==this.status?a.error("404_FILE_NOT_FOUND",t,o):403==this.status?a.error("403_FORBIDDEN",t,o):a.error("Unknown Error",t,o))}),xhr.send(r)}else{var l=new FileReader;l.onload=function(i){var r="-------------------------"+(new Date).getTime(),l="--",d="\r\n",c="";c+=l+r+d,c+='Content-Disposition: form-data; name="'+s.fileObjName+'"',t.name&&(c+='; filename="'+t.name+'"'),c+=d,c+="Content-Type: application/octet-stream"+d+d,c+=i.target.result+d;for(key in s.formData)c+=l+r+d,c+='Content-Disposition: form-data; name="'+key+'"'+d+d,c+=s.formData[key]+d;c+=l+r+l+d,xhr.upload.addEventListener("progress",function(e){a.progress(e,t)},!1),xhr.addEventListener("load",function(e){t.uploading=!1;var n=this.status;404==n?a.error("404_FILE_NOT_FOUND",t,o):"Invalid file type."!=t.xhr.responseText?a.uploadComplete(e,t,o):a.error(t.xhr.responseText,t,o)},!1);var u=s.uploadScript;if("get"==s.method){var h=e(s.formData).param();u+=h}xhr.open(s.method,s.uploadScript,!0),xhr.setRequestHeader("Content-Type","multipart/form-data; boundary="+r),"function"==typeof s.onUploadFile&&s.onUploadFile.call(n,t),xhr.sendAsBinary(c)},l.readAsBinaryString(t)}},a.progress=function(t,o){if(e.inArray("onProgress",s.overrideEvents)<0){if(t.lengthComputable)var a=Math.round(t.loaded/t.total*100);o.queueItem.find(".fileinfo").html(" - "+a+"%"),o.queueItem.find(".progress-bar").css("width",a+"%")}"function"==typeof s.onProgress&&s.onProgress.call(n,o,t)},a.error=function(o,i,r){if(e.inArray("onError",s.overrideEvents)<0){switch(o){case"404_FILE_NOT_FOUND":errorMsg="404 Error";break;case"403_FORBIDDEN":errorMsg="403 Forbidden";break;case"FORBIDDEN_FILE_TYPE":errorMsg="Forbidden File Type";break;case"FILE_SIZE_LIMIT_EXCEEDED":errorMsg="File Too Large";break;default:errorMsg="Unknown Error"}i.queueItem.addClass("error").find(".fileinfo").html(" - "+errorMsg),i.queueItem.find(".progress").remove()}"function"==typeof s.onError&&s.onError.call(n,o,i),i.skip=!0,"404_FILE_NOT_FOUND"==o?a.uploads.errors++:a.queue.errors++,r&&t.upload.call(n,null,!0)},a.uploadComplete=function(o,i,r){e.inArray("onUploadComplete",s.overrideEvents)<0&&(i.queueItem.find(".progress-bar").css("width","100%"),i.queueItem.find(".fileinfo").html(" - Completed"),i.queueItem.find(".progress").slideUp(250),i.queueItem.addClass("complete")),"function"==typeof s.onUploadComplete&&s.onUploadComplete.call(n,i,i.xhr.responseText),s.removeCompleted&&setTimeout(function(){t.cancel.call(n,i)},3e3),i.complete=!0,a.uploads.successful++,a.uploads.count++,a.uploads.current--,delete i.xhr,r&&t.upload.call(n,null,!0)},a.queueComplete=function(){"function"==typeof s.onQueueComplete&&s.onQueueComplete.call(n,a.uploads)},!(window.File&&window.FileList&&window.Blob&&(window.FileReader||window.FormData)))return"function"==typeof s.onFallback&&s.onFallback.call(n),!1;if(s.id="uploadifive-"+n.attr("id"),a.button=e('<div id="'+s.id+'" class="uploadifive-button">'+s.buttonText+"</div>"),s.buttonClass&&a.button.addClass(s.buttonClass),a.button.css({height:s.height,"line-height":s.height+"px",overflow:"hidden",position:"relative","text-align":"center",width:s.width}),n.before(a.button).appendTo(a.button).hide(),a.createInput.call(n),s.queueID?a.queueEl=e("#"+s.queueID):(s.queueID=s.id+"-queue",a.queueEl=e('<div id="'+s.queueID+'" class="uploadifive-queue" />'),a.button.after(a.queueEl)),s.dnd){var l=s.dropTarget?e(s.dropTarget):a.queueEl.get(0);l.addEventListener("dragleave",function(e){e.preventDefault(),e.stopPropagation()},!1),l.addEventListener("dragenter",function(e){e.preventDefault(),e.stopPropagation()},!1),l.addEventListener("dragover",function(e){e.preventDefault(),e.stopPropagation()},!1),l.addEventListener("drop",a.drop,!1)}XMLHttpRequest.prototype.sendAsBinary||(XMLHttpRequest.prototype.sendAsBinary=function(e){function t(e){return 255&e.charCodeAt(0)}var o=Array.prototype.map.call(e,t),n=new Uint8Array(o);this.send(n.buffer)}),"function"==typeof s.onInit&&s.onInit.call(n)})},debug:function(){return this.each(function(){console.log(e(this).data("uploadifive"))})},clearQueue:function(){this.each(function(){var o=e(this),n=o.data("uploadifive"),a=n.settings;for(var s in n.inputs)for(input=n.inputs[s],limit=input.files.length,i=0;i<limit;i++)file=input.files[i],t.cancel.call(o,file);"function"==typeof a.onClearQueue&&a.onClearQueue.call(o,e("#"+n.settings.queueID))})},cancel:function(o,n){this.each(function(){var a=e(this),i=a.data("uploadifive"),s=i.settings;"string"==typeof o&&(isNaN(o)||(fileID="uploadifive-"+e(this).attr("id")+"-file-"+o),o=e("#"+fileID).data("file")),o.skip=!0,i.filesCancelled++,o.uploading&&(i.uploads.current--,o.uploading=!1,o.xhr.abort(),delete o.xhr,t.upload.call(a)),e.inArray("onCancel",s.overrideEvents)<0&&i.removeQueueItem(o,n),"function"==typeof s.onCancel&&s.onCancel.call(a,o)})},upload:function(t,o){this.each(function(){var n=e(this),a=n.data("uploadifive"),i=a.settings;if(t)a.uploadFile.call(n,t);else if(a.uploads.count+a.uploads.current<i.uploadLimit||0==i.uploadLimit){if(!o){a.uploads.attempted=0,a.uploads.successsful=0,a.uploads.errors=0;var s=a.filesToUpload();"function"==typeof i.onUpload&&i.onUpload.call(n,s)}e("#"+i.queueID).find(".uploadifive-queue-item").not(".error, .complete").each(function(){return _file=e(this).data("file"),!(a.uploads.current>=i.simUploadLimit&&0!==i.simUploadLimit||a.uploads.current>=i.uploadLimit&&0!==i.uploadLimit||a.uploads.count>=i.uploadLimit&&0!==i.uploadLimit)&&void(i.checkScript?(_file.checking=!0,skipFile=a.checkExists(_file),_file.checking=!1,skipFile||a.uploadFile(_file,!0)):a.uploadFile(_file,!0))}),0==e("#"+i.queueID).find(".uploadifive-queue-item").not(".error, .complete").size()&&a.queueComplete()}else 0==a.uploads.current&&(e.inArray("onError",i.overrideEvents)<0&&a.filesToUpload()>0&&0!=i.uploadLimit&&alert("The maximum upload limit has been reached."),"function"==typeof i.onError&&i.onError.call(n,"UPLOAD_LIMIT_EXCEEDED",a.filesToUpload()))})},destroy:function(){this.each(function(){var o=e(this),n=o.data("uploadifive"),a=n.settings;t.clearQueue.call(o),a.queueID||e("#"+a.queueID).remove(),o.siblings("input").remove(),o.show().insertBefore(n.button),n.button.remove(),"function"==typeof a.onDestroy&&a.onDestroy.call(o)})}};e.fn.upload=function(o){return t[o]?t[o].apply(this,Array.prototype.slice.call(arguments,1)):"object"!=typeof o&&o?void e.error("The method "+o+" does not exist in $.uploadify"):t.init.apply(this,arguments)}}(n)}),define("js/me/index",["jquery","swiper","lazyload","index"],function(e,t,o){var n,a=e("jquery"),i=e("js/plugin/notice-scroll"),s=a(".user-avatar"),r=a(".list-item"),l=new Image;e("js/product/recommend-for-you-user-center"),e("js/product/suspend-cart"),n=s.data("avatar"),l.src=n,l.onload=function(){s.css("background-image","url("+n+")")},i(".notice",1e3*a(".notice").data("time")),a(".yoho-page").on("touchstart",".list-item, .type-item, .order-title",function(){r.removeClass("highlight"),a(this).addClass("highlight")}).on("touchend touchcancel",".list-item, .type-item, .order-title",function(){a(this).removeClass("highlight")})}),define("js/product/recommend-for-you-user-center",["swiper","jquery","lazyload","index"],function(e,t,o){var n=(e("swiper"),e("jquery")),a=e("lazyload"),i=n(".recommend-for-you");n.get("/product/recommend-for-you/userCenter").then(function(e){var t=[];i.html(e).show(),a(n("img.lazy")),i.find(".good-info").each(function(){t.push(n(this).data("id"))}),window.givePoint({REC_POSE:110004,PRD_ID:t.join(","),PRD_NUM:n(".recommend-for-you .good-info").length,ACTION_ID:0,page_num:1}),i.find(".good-info").on("click","a",function(){var e=n(this).closest(".good-info").index()+1;return window.givePoint({REC_POSE:110004,PRD_ID:n(this).closest(".good-info").data("id"),PRD_NUM:e,ACTION_ID:1,page_num:1}),!0})}).fail(function(){i.hide()})}),define("js/me/coupons",["jquery","hammer","mlellipsis"],function(e,t,o){function n(e,t){d.showLoadingMask(),s.ajax({type:"POST",url:"/home/couponData",dataType:"html",data:{status:e,page:t},success:function(e){s("#employ").append(e),window.rePosFooter(),d.hideLoadingMask()}})}function a(){if(s(window).scrollTop()+s(window).height()>s("body").height()-100)return u++,void n(c,u)}var i,s=e("jquery"),r=e("hammer"),l=e("mlellipsis"),d=e("js/plugin/loading"),c=0,u=1;l.init(),s(".yoho-footer").css("border-top","1px solid #e0e0e0"),s(".employ span").each(function(e){i=new r(s(".employ span")[e]),i.on("tap",function(t){s(".employ span").removeClass("active").eq(e).addClass("active"),s("#employ").html(" "),c=e,u=1,n(c,u),window.rePosFooter()})}),s(window).scroll(function(){window.requestAnimationFrame(a)}),n(c,u)}),define("js/me/online-service",["jquery"],function(e,t,o){var n=e("jquery"),a=n(".question-tab .tab-item");a.on("touchend",function(){var e=n(this).data("tab");e='[data-tab-name="'+e+'"]',a.removeClass("current"),n(this).addClass("current"),n(".question-list").removeClass("current"),n(e).addClass("current")}),n(".yoho-page").on("touchstart",".connect-item, .question-item",function(){n(this).siblings().removeClass("highlight"),n(this).addClass("highlight")}).on("touchend touchcancel",".connect-item, .question-item",function(){n(this).removeClass("highlight")})}),define("js/me/address",["jquery","hammer"],function(e,t,o){var n,a=e("jquery"),i=e("js/plugin/tip"),s=e("js/plugin/loading"),r=a(".action"),l=a(".add-address"),d=a("#yoho-footer"),c=a(".confim-mask"),u=a(".page-wrap"),h=a(".address-item");e("js/common"),u.first().css("min-height",function(){return a(window).height()-a("#yoho-header").height()-d.height()}),window.rePosFooter(),c.on("touchend",".cancel",function(e){return n=null,c.fadeOut(),!1}).on("touchend",".confim",function(){return s.showLoadingMask(),c.fadeOut(),a.ajax({method:"POST",url:"/home/delAddress",data:{id:n}}).then(function(e){"object"!==a.type(e)&&(e={}),200!==e.code?(i.show(e.message||"网络出了点问题~"),s.hideLoadingMask()):window.location.reload()}).fail(function(){i.show("网络出了点问题~"),s.hideLoadingMask()}).always(function(){n=null}),!1}),h.length<5&&l.attr("href",l.data("href")),l.on("touchend",function(){if(h.length>=5)return i.show("您最多添加5个收货地址"),!1}),r.on("touchend",".del",function(){return n=a(this).data("id"),c.fadeIn(),!1}),r.on("touchstart","a,span",function(){a(this).css("background","#eee")}).on("touchend touchcancel","a,span",function(){a(this).css("background","transparent")})}),define("js/me/browse-record",["jquery","lazyload","handlebars","source-map","hammer"],function(t,o,n){function a(e){var t=c.children(".browse-record-good").length;g||(1===f&&u.removeClass("hide"),g=!0,i.ajax({type:"GET",url:"/home/recordContent",data:{page:f+1},success:function(o){" "===o?(m=!0,h.addClass("hide"),p.removeClass("hide")):(0===t?(c.html(o),s()):(c.append(o),s(c.find(".browse-record-good:gt("+(t-1)+") .lazy"))),window.rePosFooter(),f++,e&&e())},complete:function(){g=!1}}))}var i=t("jquery"),s=t("lazyload"),r=t("js/plugin/loading"),l=t("js/plugin/tip"),d=t("js/me/dialog"),c=i(".records"),u=i(".load-more"),h=u.children(".more"),p=u.children(".no-more"),f=0,m=!1,g=!1,v=i(window).height();r.init(),r.showLoadingMask(),a(r.hideLoadingMask),i(window).scroll(function(){m||v+i(window).scrollTop()>i(document).height()-.25*c.height()&&a()}),c.on("touchstart",".del-icon",function(){var e=i(this).closest(".browse-record-good"),t=e.data("skn");d.showDialog({dialogText:"确定删除此条浏览记录吗?",hasFooter:{leftBtnText:"取消",rightBtnText:"确定"}},function(){i.ajax({type:"GET",url:"/home/delRecord",data:{skn:t},success:function(e){200===e.code&&(d.showDialog({dialogText:"删除浏览记录成功",autoHide:2e3,fast:!0}),setTimeout(function(){window.history.go(0)},1200))}})})}),i(".deps").on("touchstart","span",function(){i(this).css("background","#eee")}).on("touchend touchcancel","span",function(){i(this).css("background","transparent")}),i(".invalidGoods").on("touchstart touchend",function(){var t=i(e.target).closest("span");if(!t.hasClass("del-icon"))return l.show("商品已下架"),!1})}),define("js/me/address-act",["jquery","hammer"],function(e,t,o){function n(e){f.html(e),y.on("touchend",function(){p.hide(),f.show(),b="list",g.html("地区选择")}),f.find(".address").each(function(e,t){var o=new r(t);o.on("tap",function(e){var t=s(e.target);"li"!==e.target.tagName.toLowerCase()&&(t=t.parent("li")),C.push(t.children(".caption").text().trim()),t.siblings().hide(),t.children("ul").show().children("li").show(),e.srcEvent.preventDefault(),e.srcEvent.stopPropagation()})}),f.find(".address-last").each(function(e,t){var o=new r(t);o.on("tap",function(e){var t=s(e.target);C.push(t.text().trim()),s('[name="area"]').val(C.join(" ")),s('[name="area_code"]').val(t.data("id")),p.show(),b="edit",g.html(w),f.hide(),f.find("ul").hide().find("li").removeClass("highlight"),f.children("ul").show().children("li").show(),C=[],e.srcEvent.preventDefault(),e.srcEvent.stopPropagation()})}),f.on("touchstart","li",function(){s(this).addClass("highlight")}).on("touchend touchcancel","li",function(){s(this).removeClass("highlight")})}var a,i,s=e("jquery"),r=e("hammer"),l=e("js/plugin/tip"),d=e("js/plugin/security"),c=e("js/plugin/loading"),u=s(".edit-address"),h=s(".submit"),p=s(".my-edit-address-page"),f=s(".my-address-list-page"),m=s(".nav-back"),g=s(".nav-title"),v=s("input, textarea"),w=g.html(),y=s(".area"),b="edit",C=[],j=s.queryString();s(p,f).css("min-height",function(){return s(window).height()-s("#yoho-header").height()}),m.attr("href","javascript:void(0);"),m.on("touchend",function(e){"list"===b?(f.hide(),p.show(),e.preventDefault(),b="edit",g.html(w),f.hide(),f.find("ul").hide().find("li").removeClass("highlight"),f.children("ul").show().children("li").show(),C=[]):window.history.go(-1)}),u.on("submit",function(){return!a&&(!d.hasDangerInput(!1)&&(s(this).find('[name="consignee"]').val()?s(this).find('[name="mobile"]').val()?s(this).find('[name="area_code"]').val()&&s(this).find('[name="area"]').val()?s(this).find('[name="address"]').val()?(a=!0,c.showLoadingMask(),h.css("background","#777"),s.ajax({method:"POST",url:"/home/saveAddress",data:s(this).serialize()}).then(function(e){"object"!==s.type(e)&&(e={}),200!==e.code?(l.show(e.message||"网络出了点问题~"),a=!1,c.hideLoadingMask()):"shopping"===j.refer?window.location.href="/cart/index/selectAddress":"modify"===j.refer?window.location.href="/home/addressModify":window.location.href="/home/address"}).fail(function(){l.show("网络出了点问题~"),a=!1,c.hideLoadingMask(),h.css("background","#444")}),!1):(l.show("地址不能为空"),!1):(l.show("省市区不能为空"),!1):(l.show("手机号不能为空"),!1):(l.show("收件人不能为空"),!1)))}),h.on("touchend",function(){return!d.hasDangerInput(!1)&&(v.blur(),u.submit(),!1)}).on("touchstart",function(){s(this).addClass("highlight")}).on("touchend touchcancel",function(){s(this).removeClass("highlight")}),window.localStorage&&window.localStorage.getItem&&(i=window.localStorage.getItem("chinaAddressList")),i?n(i):s.ajax({method:"GET",url:"/home/locationList",timeout:6e4}).then(function(e){n(e),window.localStorage&&window.localStorage.setItem&&window.localStorage.setItem("chinaAddressList",e)}).fail(function(){l.show("获取省市区列表失败")})}),define("js/me/logistic",["jquery","hammer","mlellipsis","lazyload"],function(e,t,o){function n(){d+l>r?window.rePosFooter():s.css("border-top","1px solid #f1f1f1")}function a(){return window.cookie("_Channel")||"boys"}var i=e("jquery"),s=i("#yoho-footer"),r=window.outerHeight,l=document.body.offsetHeight,d=s.height();i(document).ready(n),e("js/home/maybe-like")(a()),i(window).scrollTop(1).scrollTop(0)}),define("js/me/pay",["jquery","hammer"],function(e,t,o){function n(){document.addEventListener("WeixinJSBridgeReady",function(){window.WeixinJSBridge&&window.WeixinJSBridge.call("hideOptionMenu")})}function a(e,t){y.addClass("hide"),window.WeixinJSBridge&&window.WeixinJSBridge.invoke("getBrandWCPayRequest",t,function(t){window.location.href="/home/orders/detail?order_code="+e+"&openId=true"})}function i(e){var t;y.removeClass("hide"),void 0===typeof WeixinJSBridge?document.addEventListener?document.addEventListener("WeixinJSBridgeReady",a,!1):document.attachEvent&&(document.attachEvent("WeixinJSBridgeReady",a),document.attachEvent("onWeixinJSBridgeReady",a)):m.ajax({type:"GET",url:"/shopping/pay/wechatwapapi",data:{order_code:e},dataType:"json",success:function(o){200===o.code?(t=o.data.jsApiParameters,a(e,t)):v.show("微信支付调取失败")},error:function(){v.show("请刷新本页面,完成微信支付")},complete:function(){y.addClass("hide")}})}function s(){var e=window.navigator.userAgent.toLowerCase();return e.indexOf("micromessenger")>0}function r(){var e=m(".app");e.each(function(e,t){if("weixin"===m(t).parent().attr("id"))return m(t).parent().css("display","none"),!1})}function l(){var e=m(".app");e.each(function(e,t){if("alipay"===m(t).parent().attr("id"))return m(t).closest("a").css("display","none"),!1})}function d(){s()?l():r()}function c(e,t){m(e).css("background-position-y",t)}function u(){var e=m(".box"),t=null,o=null;e.each(function(e,n){t=m(n).find(".icon").find("div"),t.length>0&&(o=m(n).attr("id"),"alipay"!==o&&c(t,x[o]))})}function h(){m(".payapp-list").css("visibility","visible")}function p(){var e=m(".box");e.on("touchstart",function(e){m(this).addClass("bytouch")}).on("touchend touchcancel",function(){e.removeClass("bytouch")})}function f(){d(),g.hideLoadingMask(),h(),u(),p()}var m=e("jquery"),g=e("js/plugin/loading"),v=e("js/plugin/tip"),w=e("hammer"),y=m(".loading-toast"),b=document.getElementById("ordercode").value,C=document.getElementById("weixin"),j=C&&new w(C),x={baidu:"-2.7rem",weixin:"-1.2rem",QQ:"-5.4rem",bank:"-4rem"};window.wx&&wx.hideOptionMenu(),void 0===typeof WeixinJSBridge?(document.addEventListener?document.addEventListener("WeixinJSBridgeReady",n,!1):document.attachEvent&&(document.attachEvent("WeixinJSBridgeReady",n),document.attachEvent("onWeixinJSBridgeReady",n)),n()):n(),j&&j.on("tap",function(){i(b)}),g.showLoadingMask(),m(document).ready(f)}),define("js/me/personal-details",["jquery"],function(e,t,o){var n,a=e("jquery"),i=a(".user-avatar"),s=new Image;n=i.data("avatar"),s.src=n,s.onload=function(){i.css("background-image","url("+n+")")}}),define("js/me/currency",["jquery"],function(e,t,o){function n(e){i.ajax({type:"POST",url:"/home/ajaxCurrencyDetail",dataType:"html",data:{page:e},success:function(e){i(".coin-detail").append(e),window.rePosFooter()}})}function a(){if(i(window).scrollTop()+i(window).height()>i("body").height()-100)return r++,void n(r)}var i=e("jquery"),s=e("js/plugin/loading"),r=1;s.showLoadingMask(),i(window).scroll(function(){window.requestAnimationFrame(a)}),n(r),i(document).ready(s.hideLoadingMask)}),define("js/me/currency-new",["jquery","hammer","mlellipsis","lazyload"],function(e,t,o){function n(){return window.cookie("_Channel")||"boys"}e("js/home/maybe-like")(n())}),define("js/me/message",["jquery","handlebars","source-map","hammer"],function(e,t,o){function n(e){s.showLoadingMask(),i.ajax({type:"POST",url:"/home/ajaxMessage",dataType:"html",data:{page:e},success:function(t){" "===t&&(c=!0,1===e&&(t='<p style="text-align:center">您没有消息</p>')),i(".massage-page").append(t),window.rePosFooter(),s.hideLoadingMask()}})}function a(){!c&&i(window).scrollTop()+i(window).height()>i("body").height()-100&&(d++,n(d))}var i=e("jquery"),s=e("js/plugin/loading"),r=e("js/me/dialog"),l=i(".massage-page"),d=1,c=!1;i(window).scroll(function(){window.requestAnimationFrame(a)}),l.on("touchstart",".del",function(){var e=i(this).closest(".massage-list"),t=e.data("id");r.showDialog({dialogText:"确定删除这条消息吗?",hasFooter:{leftBtnText:"取消",rightBtnText:"确定"}},function(){i.ajax({type:"POST",url:"/home/ajaxDelMes",data:{id:t},success:function(e){200===e.code?(r.showDialog({dialogText:"删除消息成功",autoHide:2e3,fast:!0}),setTimeout(function(){window.history.go(0)},1200)):r.showDialog({dialogText:e.message,autoHide:2e3,fast:!0})}})})}),n(d)}),define("js/me/message-detail",["jquery","handlebars","source-map","hammer"],function(e,t,o){var n=e("jquery"),a=e("js/me/dialog"),i=n(".massage-page"),s=!1;i.on("touchstart",".pick-coupon-btn",function(){if(!s){s=!0;var e=n(this).data("id");n.ajax({type:"POST",url:"/home/pickCoupon",data:{id:e},success:function(e){200===e.code&&(a.showDialog({dialogText:"领取成功",autoHide:2e3,fast:!0}),n(this).removeClass("pick-coupon-btn")),s=!1,a.showDialog({dialogText:e.message,autoHide:2e3,fast:!0})}})}})}),define("js/me/address-modify",["jquery","hammer"],function(e,t,o){var n,a=e("jquery"),i=e("js/plugin/tip"),s=a(".confim-modify-mask"),r=a(".modifyAdd"),l=r.data("orderCode");e("js/common"),a(".address-item").on("touchend",function(){n=a(this).data("addressId"),r.data("rel")===!0?(s.find(".content").text("关联订单的收货地址将会一起修改且不可修改第二次,请确认是否修改?"),s.fadeIn()):(s.find(".content").text("收货地址仅且只能修改一次,请确认是否修改?"),s.fadeIn())}),s.on("touchend",".cancel",function(e){return n=null,s.fadeOut(),!1}).on("touchend",".confim",function(){return a.ajax({method:"GET",url:"/home/chooseAddress",data:{addressId:n,orderCode:l}}).then(function(e){"object"!==a.type(e)&&(e={}),200!==e.code?(s.fadeOut(),i.show(e.message||"网络出了点问题~")):window.location.href="/home/orderdetail?order_code="+l}).fail(function(){i.show("网络出了点问题~")}).always(function(){n=null}),!1})}),define("js/cart/entry",["jquery","mlellipsis","hammer","handlebars","source-map","swiper","lazyload","index"],function(e,t,o){e("js/cart/cart"),e("js/cart/gift-advance"),e("js/cart/order-ensure"),e("js/cart/invoice-info"),e("js/cart/select-coupon"),e("js/cart/select-address"),e("js/cart/jit-detail")}),define("js/cart/cart",["jquery","mlellipsis","hammer","handlebars","source-map","swiper","lazyload","index"],function(e,t,o){function n(){return window.isCookiesEnabled()?p(".cart-goods").length<=0&&!q:p(".cart-goods").length<=0}function a(){return b.not(".hide")}function i(){a().find(".shopping-cart-good .name").each(function(){this.mlellipsis(2)}),T=!0}function s(){return a().find(".cart-goods .icon-cb-checked").length>0}function r(){var e=a().find(".freebie");return!(e.length<=0)}function l(){var e,t=!1;return"ordinary"===C?e=p(".common .low-stocks"):"advance"===C&&(e=p(".presell .low-stocks")),e.length<=0?t:(e.each(function(e,o){p(o).parent().parent().parent().siblings(".checkbox").hasClass("icon-cb-checked")&&(E+=1,t=!0)}),t)}function d(){v.showDialog({dialogText:"您还未选择赠品,是否去选择赠品",hasFooter:{leftBtnText:"我不要赠品",rightBtnText:"去选择"}},function(){window.location.href=a().find(".freebie > a").attr("href")},function(){var e=window.cookie("order-info");e&&window.setCookie("order-info",""),window.location.href="/cart/index/orderEnsure?cartType="+C})}var c,u,h,p=e("jquery"),f=e("mlellipsis"),m=e("hammer"),g=e("js/cart/chose-panel"),v=e("js/me/dialog"),w=e("js/plugin/loading"),y=e("js/plugin/tip"),b=p(".cart-content"),C=p("#cartType").val(),j=p(".cart-nav"),x=p(".shopping-cart-page"),k=!1,T=!1,q="true"===window.cookie("_yoho-cart-refreshByDelete"),E=0;w.showLoadingMask(),e("js/product/recommend-for-you-cart"),n()||e("js/cart/good"),x.css("display","block"),w.hideLoadingMask(),window.setCookie("_yoho-cart-refreshByDelete",!1),f.init(),"function"==typeof window.cookie&&"y"===window.cookie("_hasShowCartPresellTip")?(p("#presell-tip").removeClass("show").addClass("hide"),k=!0):p("#presell-tip").removeClass("hide").addClass("show"),"advance"===C&&(b.toggleClass("hide"),p("#common-cart-nav").removeClass("active"),p("#presell-cart-nav").addClass("active"),i(),p(window).trigger("scroll")),j.length>0&&(c=new m(document.getElementsByClassName("cart-nav")[0]),c.on("tap",function(e){var t=p(e.target).closest("li");t.hasClass("active")||("ordinary"===C?(C="advance",p("#cartType").val("advance")):(C="ordinary",p("#cartType").val("ordinary")),t.siblings(".active").removeClass("active"),t.addClass("active"),b.toggleClass("hide"),T===!1&&i(),p(window).trigger("scroll"))}),k||setTimeout(function(){p("#presell-tip").removeClass("show").addClass("hide"),window.setCookie("_hasShowCartPresellTip","y")},3e3)),p(".advance-buy").length>0&&(u=new m(document.getElementsByClassName("advance-buy")[0]),u.on("tap",function(e){window.location.href="/cart/index/advanceBuy?cartType="+C})),p(".freebie").length>0&&(h=new m(document.getElementsByClassName("freebie")[0]),h.on("tap",function(e){window.location.href="/cart/index/gift?cartType="+C})),/MicroMessenger/i.test(navigator.userAgent)&&p(".btn-login").attr("href","/passport/login/wechat?refer="+location.href),p(".btn-balance").on("touchend",function(){var e=window.cookie("order-info");return E=0,l()?(y.show("所选商品中有"+E+"种库存不足的商品"),!1):r()?(d(),!1):void(s()?(e&&window.setCookie("order-info",""),window.location.href="/cart/index/orderEnsure?cartType="+C):y.show("请先勾选商品"))}),p(".off-shell-goods").on("click",function(e){var t=p(e.target).closest("span");if(!t.hasClass("icon-del"))return y.show("商品已下架"),!1}),p(".chose").on("touchend",function(){g.show()}),j.on("touchstart","li",function(e){p(this).addClass("bytouch")}).on("touchend touchcancel",function(){j.find("li").removeClass("bytouch")}),p(window).scrollTop(1).scrollTop(0),0===p(".invalid-goods").find(".shopping-cart-good").length&&p("#failure-goods").removeClass("invalid-goods")}),define("js/product/recommend-for-you-cart",["swiper","jquery","lazyload","index"],function(e,t,o){var n=(e("swiper"),e("jquery")),a=e("lazyload"),i=n(".recommend-for-you");n.get("/product/recommend-for-you/cart").then(function(e){var t=[];i.html(e).show(),a(n("img.lazy")),i.find(".good-info").each(function(){t.push(n(this).data("id"))}),window.givePoint({REC_POSE:110003,PRD_ID:t.join(","),PRD_NUM:n(".recommend-for-you .good-info").length,ACTION_ID:0,page_num:1}),i.find(".good-info").on("click","a",function(){var e=n(this).closest(".good-info").index()+1;return window.givePoint({REC_POSE:110003,PRD_ID:n(this).closest(".good-info").data("id"),PRD_NUM:e,ACTION_ID:1,page_num:1}),!0})}).fail(function(){i.hide()})}),define("js/cart/good",["jquery","mlellipsis","lazyload","handlebars","source-map","hammer"],function(e,t,o){function n(e){this.goods_type=e.goods_type,this.buy_number=e.buy_number,this.product_sku=e.product_sku,this.selected=e.selected,this.hasPromotion=e.hasPromotion}function a(e,t,o,n){return e.length<2?(m.show("出错啦!"),!1):(u.remove(),d(e).appendTo("#mainCart"), -u.init(),u.setEditModeWithSknId(t,o),n||u.disableNumEdit(),void u.show())}function i(e,t){v||(v=!0,d.ajax({url:"select",type:"post",data:{skuList:JSON.stringify(e)},success:function(e){200===e.code?t():m.show(e.message)},error:function(){m.show("网络异常")},complete:function(){v=!1}}))}function s(){var e,t=d(".shopping-cart-good .icon-cb-checked"),o=d(".shopping-cart-good .icon-checkbox");g.hasClass("icon-cb-checked")?(g.removeClass("icon-cb-checked").addClass("icon-checkbox"),e=!0):(g.removeClass("icon-checkbox").addClass("icon-cb-checked"),e=!1),e?t.each(function(e,t){d(t).removeClass("icon-cb-checked").addClass("icon-checkbox")}):o.each(function(e,t){d(t).removeClass("icon-checkbox").addClass("icon-cb-checked")}),window.location.href="/cart/index/index?cartType="+d("#cartType").val()}function r(e,t,o){var a={},s=d(".cart-content:not(.hide) .shopping-cart-good"),r=null,l=[];a.goods_type=t,a.selected=e?"N":"Y",s.each(function(e,t){r=d(t),a.product_sku=d(t).data("id"),a.hasPromotion=d(t).data("promotion"),a.buy_number=r.find(".count").eq(0).text().trim().replace("×",""),l.push(new n(a))}),i(l,o)}var l,d=e("jquery"),c=e("mlellipsis"),u=e("js/cart/chose-panel"),h=e("js/plugin/loading"),p=e("lazyload"),f=e("js/me/dialog"),m=e("js/plugin/tip"),g=d(".balance .checkbox"),v=!1;c.init(),p({try_again_css:"order-failure"}),setTimeout(function(){d(".shopping-cart-good .name").each(function(){this.mlellipsis(2)})},0),d(".cart-goods").on("touchstart",".checkbox",function(){var e=d(this),t=e.closest(".shopping-cart-good"),o=t.data("id"),a=t.data("promotion"),i=[],s={};return!e.hasClass("icon-cb-checked")&&e.siblings(".info").find(".low-stocks").length>0?(m.show("库存不足,无法购买"),!1):(s.goods_type=d("#cartType").val(),s.selected=e.hasClass("icon-cb-checked")?"N":"Y",s.product_sku=o,s.hasPromotion=a,s.buy_number=t.find(".count").eq(0).text().trim().replace("×",""),i.push(new n(s)),void d.ajax({type:"post",url:"select",data:{skuList:JSON.stringify(i)}}).then(function(t){200===t.code?(e.hasClass("icon-cb-checked")?e.removeClass("icon-cb-checked").addClass("icon-checkbox"):e.removeClass("icon-checkbox").addClass("icon-cb-checked"),window.location.href="/cart/index/index?cartType="+d("#cartType").val()):400===t.code&&m.show("网络异常")},function(){m.show("网络异常")}))}),d(".icon-edit").on("touchstart",function(e){var t,o,n,i,s,r=d(this),c=r.closest(".shopping-cart-good").data("skn");return r.parents(".off-shell-goods").length?(m.show("商品已下架"),!1):c===l?void u.show():(l=c,t=r.closest(".info").siblings(".checkbox"),o=r.closest(".deps").siblings(".few-tag"),n=r.closest(".shopping-cart-good").data("id"),i=r.data("count"),s=!o.hasClass("gift-tag")&&!o.hasClass("plus-tag"),e.stopPropagation(),h.showLoadingMask(),void d.ajax({url:"/cart/index/goodinfo",data:{skn:c,buy_num:i},success:function(e){a(e,n,t.hasClass("icon-cb-checked"),s)},error:function(){m.show("网络异常"),window.location.reload()},complete:function(){h.hideLoadingMask()}}))}),d(".icon-del").on("touchstart",function(e){var t=d(this);e.stopPropagation(),f.showDialog({dialogText:"您确定要从购物车中删除吗?",hasFooter:{leftBtnText:"取消",rightBtnText:"确定"}},function(){var e=t.closest(".shopping-cart-good"),o=t.data("count");d.ajax({method:"post",url:"/cart/index/del",data:{sku:e.data("id"),count:o,promotionId:e.data("promotion")}}).then(function(e){200===e.code?(f.showDialog({dialogText:"删除成功",autoHide:!0,fast:!0}),window.setCookie("_yoho-cart-refreshByDelete",!0),window.location.href="/cart/index/index?cartType="+d("#cartType").val()):m.show(e.message)},function(){m.show("网络异常"),window.location.reload()})})}),g.on("touchend",function(){var e=d("#cartType").val(),t=d(this).hasClass("icon-cb-checked");if("ordinary"===e){if(!t&&d(".common .low-stocks").length>0)return m.show("所选商品中含有库存不足的商品"),!1}else if("advance"===e&&!t&&d(".presell .low-stocks").length>0)return m.show("所选商品中含有库存不足的商品"),!1;r(t,e,s)}),d(".down").on("touchend",function(){u.show()})}),define("js/cart/gift-advance",["jquery","mlellipsis","lazyload","hammer"],function(e,t,o){function n(e,t){d.showLoadingMask(),a.get("/cart/index/giftinfo",{skn:e,promotionId:t}).then(function(e){return e?void c.show(e,function(){window.location.href="/cart/index/index?cartType="+h.cartType}):void l.show("网络错误")},function(){l.show("网络错误")}).always(function(){d.hideLoadingMask()})}var a=e("jquery"),i=e("mlellipsis"),s=e("lazyload"),r=e("hammer"),l=e("js/plugin/tip"),d=e("js/plugin/loading"),c=e("js/cart/chose-panel"),u=a(".gift-advance-page"),h=a.queryString();e("js/common"),s(a(".lazy")),i.init(),u.find(".chose").each(function(e,t){var o=new r(t);o.on("tap",function(e){var t=a(e.target),o=t.closest(".gift-advance-good").data("id"),i=t.closest(".advance-block").data("promotion-id");n(o,i)})}),setTimeout(function(){a(".gift-advance-good .name").each(function(){this.mlellipsis(2)})},0)}),define("js/cart/order-ensure",["jquery","lazyload","hammer"],function(e,t,o){function n(){P.invoiceType?m(".invoice-type").text(M[P.invoiceType]+"("+F[P.invoicesType]+")"):m(".invoice-type").text("服装(电子)")}function a(){var e,t=location.search.substr(1).split("&"),o=[],n={};for(e=0;e<t.length;e++)o=t[e].split("="),n[o[0]]=o[1],o=[];return n}function i(){return a().limitproductcode}function s(e){var t,o=m(".more-jit a").get(0);o&&(t=o.href,t.indexOf("deliveryId")<0?o.href=t+"&deliveryId="+e:o.href=t.replace(/deliveryId=(\d)/,"deliveryId="+e))}function r(){var e=I("yohoCoin"),t=I("deliveryId"),o={cartType:I("cartType")||"ordinary",deliveryId:I("deliveryId"),paymentTypeId:I("paymentTypeId"),couponCode:I("couponCode"),yohoCoin:e,skuList:i()?I("skuList"):void 0};_&&(o={type:"tickets",productSku:S,buyNumber:D,yohoCoin:e}),w.showLoadingMask(),m.ajax({method:"POST",url:"/cart/index/orderCompute",data:o}).then(function(e){"object"!==m.type(e)?window.location.reload():(void 0!==typeof e.last_order_amount&&(e.last_order_amount=(+e.last_order_amount).toFixed(2)),e.use_yoho_coin&&(x.find("em").html("- ¥ "+e.use_yoho_coin),k.html("已抵¥"+e.use_yoho_coin),x.find("em").show(),k.show()),f="",e.promotion_formula_list&&(m.each(e.promotion_formula_list,function(e,t){f+="<li><p>"+t.promotion+"</p><span>"+t.promotion_amount+"</span></li>"}),m(".price-cost span").html("¥"+e.last_order_amount),m(".bill span").html("¥"+e.last_order_amount),m(".total").html(f)),s(t))}).fail(function(){window.location.reload()}).always(function(){w.hideLoadingMask()})}function l(){var e=b.find('[name="invoice-title"]').val()||I("invoiceText"),t=m("#msg").find("input").val()||I("msg");return!h&&(t&&t.length>40?void v.show("留言不得超过40个汉字"):(w.showLoadingMask(),h=!0,void m.ajax({method:"POST",url:"/cart/index/orderSub",data:{addressId:I("addressId"),cartType:I("cartType")||"ordinary",deliveryId:I("deliveryId"),deliveryTimeId:I("deliveryTimeId"),invoiceText:I("invoice")?e:null,invoiceType:I("invoice")?b.find(".invoice-type").val()||I("invoiceType"):null,msg:t,paymentTypeId:I("paymentTypeId"),paymentType:I("paymentType"),couponCode:I("couponCode"),yohoCoin:I("yohoCoin"),skuList:i()?I("skuList"):void 0}}).then(function(e){var t;return e?void(200===e.code?(t=2===u?"/home/orderDetail?order_code="+e.data.order_code:"/home/orders/pay?order_code="+e.data.order_code,window.setCookie("order-info",""),window.location.href=t):e.message&&v.show(e.message)):void v.show("系统繁忙,请稍后再试!")}).fail(function(){v.show("系统繁忙,请稍后再试!")}).always(function(){h=!1,w.hideLoadingMask()})))}function d(e){return e=e||"",e.replace(/(\d{3})\d{4}(\d{4})/,"$1****$2")}function c(){if(!q.val())return void v.show("手机号必填");var e={productSku:S,buyNumber:D,mobile:q.val(),useYohoCoin:I("yohoCoin")};m.ajax({url:"/cart/index/submitTicket",type:"POST",dataType:"json",data:e,success:function(e){200===e.code?window.location.href="/home/orders/pay?order_code="+e.data.order_code:v.show(e.message)},error:function(){v.show("网络异常~")}})}var u,h,p,f,m=e("jquery"),g=e("lazyload"),v=e("js/plugin/tip"),w=e("js/plugin/loading"),y=e("js/cart/order-info"),b=m(".invoice"),C=m(".coupon-use.used"),j=m(".address-wrap"),x=m(".coin-check"),k=m(".coin .used"),T=m(".sub-block"),q=m("#mobile"),E=m.queryString(),I=y.orderInfo,_=m("#ticketsPage").val(),S=m("#productSku").val(),D=m("#buyNumber").val(),L=m("#yoho-header").outerHeight(),z=m(".address-wrap").outerHeight(),P=window.cookie("order-info")&&JSON.parse(window.cookie("order-info")),M={7:"服装",1:"图书",9:"配件",11:"日用品",3:"办公用品",6:"体育用品",10:"数码产品"},F={1:"纸质",2:"电子"};e("js/common"),g(),window.getUid()!==I("uid")&&(y.init(),window.location.reload()),C.data("name")!==I("couponName")&&(I("couponCode",null),I("couponName",null)),document.referrer&&document.referrer.indexOf("/cart/index/index")!==-1&&(I("couponCode",null),I("couponName",null)),i()&&function(){var e=[],t=a();t.type="limitcode",e.push(t),I("skuList",JSON.stringify(e)),I("limitUrlSufix",location.search)}(),(E.cartType||E.carttype||!I("cartType"))&&I("cartType",E.cartType||E.carttype||"ordinary"),m(".checkbox").on("touchstart",function(){var e=m(this);return e.hasClass("icon-cb-radio")?void e.removeClass("icon-cb-radio").addClass("icon-radio"):void(e.hasClass("icon-radio")&&e.removeClass("icon-radio").addClass("icon-cb-radio"))}),b.on("touchend",".checkbox",function(){var e=m(this);e.hasClass("icon-cb-radio")&&(b.addClass("focus"),I("invoiceText",""),I("invoiceType","7"),I("receiverMobile",m(".user-mobile").val()),I("invoicesType","2"),I("invoiceTitle","个人")),e.hasClass("icon-radio")&&(b.removeClass("focus"),I("invoiceText",null),I("invoiceType",null),I("receiverMobile",null),I("invoicesType",null),I("invoiceTitle",null)),P=window.cookie("order-info")&&JSON.parse(window.cookie("order-info")),n()}),I("addressId")||I("addressId",j.data("id")),m(".delivery-id").on("touchend","li",function(){I("deliveryId",m(this).data("id")),r()}),m(".payment-type").on("touchend","li",function(){I("paymentType",m(".icon-cb-radio",this).data("id"))}),m(".dispatch-time").on("touchend","li",function(){I("deliveryTimeId",m(this).data("id"))}),m(".coin").on("touchend",function(){var e=m(this);e.find(".checkbox").hasClass("icon-cb-radio")?(I("yohoCoin",e.data("yoho-coin")),e.find(".can-use").hide()):(I("yohoCoin",0),e.find(".coin-check em").hide(),e.find(".can-use").show(),e.find(".used").hide()),r()}),b.on("touchend",".checkbox",function(e){var t=m(this);I("invoice",t.hasClass("icon-cb-radio")),e.preventDefault(),e.stopPropagation()}),b.find('[name="invoice-title"]').on("blur",function(){I("invoiceText",m(this).val())}).end().find(".invoice-type").on("change",function(){I("invoiceType",m(this).val())}),m("#msg").find("textarea").on("blur",function(){I("msg",m(this).val())}),m(".pay-mode").on("click","li",function(){var e=m(this);I("paymentTypeId",e.data("pay-id")),I("paymentType",e.data("pay-type")),u=e.data("pay-type")}),m("form").on("submit",function(){return!1}),m(".dispatch").on("touchend","h3",function(){m(this).siblings("ul").is(":hidden")?(m(".dispatch h3").removeClass("border-none"),m(this).addClass("border-none"),m(".down").removeClass("hide"),m(".up").addClass("hide"),m(".up",this).removeClass("hide"),m(".down",this).addClass("hide"),m(".dispatch ul").hide(),m(this).siblings("ul").show()):(m(this).removeClass("border-none"),m(".down",this).removeClass("hide"),m(".up",this).addClass("hide"),m(this).siblings("ul").hide())}),T.on("touchstart","li",function(){m.each(m(this).parents("ul").find("i"),function(){m(this).parents("ul").find("i").removeClass("icon-cb-radio").addClass("icon-radio")}),m(this).parents("ul").hide(),m(".down").removeClass("hide"),m(".up").addClass("hide"),m(".dispatch h3").removeClass("border-none"),p=m(this).find("span").html(),m(this).parents(".sub-block").find("h3 span").html(p),m(this).find("i").hasClass("icon-cb-radio")?m(this).find("i").addClass("icon-radio"):m(this).find("i").hasClass("icon-radio")&&m(this).find("i").addClass("icon-cb-radio")}),m(".bill a").on("touchstart",function(){return _?void c():(I("paymentTypeId",m(".delivery-id .icon-cb-radio").data("id")),I("paymentType",m(".payment-type .icon-cb-radio").data("id")),u=m(".payment-type .icon-cb-radio").data("id"),void l())}),m(".info-phone").html(d(m(".info-phone").html())),I("address")&&"N"===I("address").is_support&&(I("deliveryId",m(".delivery-id .icon-cb-radio").data("id")),r()),q.blur(function(e){var t=/^[0123456789]{1,30}$/,o=q.val();t.test(o)||v.show("手机号码不正确!")}),n(),m(window).scroll(function(){m(this).scrollTop()>=L+z?m(".address-bottom").show():m(".address-bottom").hide()})}),define("js/cart/order-info",["jquery","hammer"],function(e,t,o){function n(){i={uid:window.getUid(),deliveryId:a(".dispatch-mode .chosed").data("id")||1,deliveryTimeId:1,paymentTypeId:1,yohoCoin:0,addressId:null,couponCode:null,couponName:null,invoice:null,invoiceText:null,invoiceType:null,invoiceTitle:null,receiverMobile:null,isModifyTel:!1,invoicesType:null,msg:null,cartType:"ordinary"},window.setCookie("order-info",JSON.stringify(i))}var a=e("jquery"),i=window.cookie("order-info");e("js/common");try{i=JSON.parse(i)}catch(s){n()}t.init=n,t.orderInfo=function(e,t){return void 0===t?i[e]:(i[e]=t,void window.setCookie("order-info",JSON.stringify(i)))}}),define("js/cart/invoice-info",["jquery","handlebars","source-map","hammer"],function(e,t,o){function n(e,t){t.hasClass("icon-cb-radio")||(e.find(".choose").removeClass("icon-cb-radio icon-radio").addClass("icon-radio"),t.removeClass("icon-radio").addClass("icon-cb-radio"),t.parent().addClass("on"),t.parent().siblings().removeClass("on"),u.val("true"))}function a(){var e=p.find(".on").data("id"),t=i(".invoice-top").find(".on").text(),o=f.attr("data-tel"),n=m.val(),a=h.data("id");if("true"===u.val()){if(2===e&&!C.test(f.attr("data-tel")))return s.show("请输入正确手机号"),f.focus(),!1;if("单位"===t&&0===n.length)return s.show("请填写发票抬头"),m.focus(),!1;if("单位"===t&&n.length>30)return s.show("发票抬头不得超过30个汉字"),m.focus(),!1;r.showDialog({dialogText:"确认保存修改内容?",hasFooter:{leftBtnText:"取消",rightBtnText:"确定"}},function(){v("invoiceText","单位"===t?n:""),v("invoiceType",a),v("receiverMobile",o),v("invoicesType",e),v("invoiceTitle",t),b&&y!==o?v("isModifyTel",!0):v("isModifyTel",!1),r.showDialog({dialogText:"保存成功",autoHide:!0,fast:!0}),window.location.href=j},function(){window.location.href=j})}else window.location.href=j}var i=e("jquery"),s=e("js/plugin/tip"),r=e("js/me/dialog"),l=e("js/cart/order-info"),d=i(".invoice-notice"),c=i(".company-area"),u=i(".edit-flag"),h=i(".choose-cont"),p=i(".invoice-type"),f=i(".tel"),m=i(".company"),g=i(".tel-area"),v=l.orderInfo,w=i(".invoice-cont").find(".icon-cb-radio").parent(),y=i(".copy-tel"),b=!1,C=/^(((13[0-9]{1})|(14[0-9]{1})|(15[0-9]{1})|(17[0-9]{1})|(18[0-9]{1}))+\d{8})$/,j="/cart/index/orderEnsure?cartType=ordinary";e("js/common"),window.getUid()!==v("uid")&&(l.init(),window.location.reload()),h.html(w.text()).attr("data-id",w.find("span").data("id")),i(".invoice-top span, .invoice-cont li").not(".invoice-cont .cont-title").on("touchstart",function(e){n(i(this).parent(),i(this).find(".choose")),i(this).parent().hasClass("invoice-cont")&&h.html(i(this).text()).attr("data-id",i(this).find("span").data("id")),"单位"===i(this).text()&&c.slideDown(),"个人"===i(this).text()&&c.slideUp()}),i(".invoice-type span").on("touchstart",function(){i(this).hasClass("on")||(i(this).addClass("on").siblings().removeClass("on"),u.val("true"),1===i(this).index()?g.slideUp():g.slideDown())}),i(".invoice-btn").on("touchstart",function(){return d.fadeIn(),!1}),i(".think-ok, .mask-bg").on("touchstart",function(){d.fadeOut()}),i(".istel").one("input",function(){i(this).val("").removeClass("istel")}),f.on("input",function(){i(this).attr("data-tel",i(this).val()),u.val("true"),b=!0}),m.on("input",function(){u.val("true")}),i(".confirm-btn, .nav-back").on("touchstart",function(e){e.preventDefault(),a()})}),define("js/cart/select-coupon",["jquery","handlebars","source-map","hammer","mlellipsis"],function(e,t,o){function n(){var e=r(".null"),t=r(".nav-title").height(),o=e.height();return 0!==e.length&&void e.css({top:w/2-o/2+t})}function a(e){var t,o;return r.isArray(e)?(r(".coupon-wrap").html(r("#tmpl-no-coupon").html()),void n()):(t=e.notAvailableCoupons,o=e.coupons,r.each(o,function(e,t){t.couponValue=Math.floor(t.couponValue)}),r.each(t,function(e,t){t.couponValue=Math.floor(t.couponValue)}),v.append(f({coupons:o})).find(".employ-main").each(function(e,t){var o=new d(t);o.on("tap",function(e){var t=r(e.srcEvent.currentTarget),o=t.data("coupon-code");r.ajax({method:"POST",url:"/cart/index/couponSearch",data:{couponCode:o}}).then(function(e){200===e.code?(p("couponCode",e.data.coupon_code),p("couponName",e.data.coupon_title),window.location.href="/cart/index/orderEnsure"):e.message&&h.show(e.message)}).fail(function(){h.show("网络错误")})})}),t.length&&r(".not-avaliable-coupon-line").show(),r("#coupon-list-not").append(m({notAvailableCoupons:t})),void window.rePosFooter())}function i(){s||(u.showLoadingMask(),s=!0,r.ajax({type:"GET",url:"/cart/index/couponList",dataType:"json"}).then(a).fail(function(){}).always(function(){s=!1,u.hideLoadingMask()}))}var s,r=e("jquery"),l=e("handlebars"),d=e("hammer"),c=e("mlellipsis"),u=e("js/plugin/loading"),h=e("js/plugin/tip"),p=e("js/cart/order-info").orderInfo,f=l.compile(r("#tmpl-coupon").html()),m=l.compile(r("#tmpl-coupon-not-avaliable").html()),g=r("#new-coupon"),v=r("#coupon-list"),w=r(window).height();e("js/common"),c.init(),g.on("submit",function(){var e=r(this);return e.find('[name="couponCode"]').val()?(r.ajax({method:"POST",url:"/cart/index/couponSearch",data:e.serialize()}).then(function(e){e.message&&h.show(e.message),200===e.code&&(h.show("优惠券可用"),p("couponCode",e.data.coupon_code),p("couponName",e.data.coupon_title),window.location.href="/cart/index/orderEnsure")}).fail(function(){h.show("网络错误")}),!1):(h.show("请输入优惠券码"),!1)}),v.on("touchstart",".employ-main",function(){var e=r(this);e.siblings().removeClass("focus"),e.addClass("focus")}).on("touchend touchcancel",".employ-main",function(){var e=r(this);e.siblings().removeClass("focus"),e.removeClass("focus")}),r("body").on("touchend",".not-use",function(){p("couponCode",null),p("couponName",null),location.href="/cart/index/orderEnsure"}),g.find("input").on("input",function(){""!==r(this).val()?g.find(".submit").css("background","#444"):g.find(".submit").css("background","#b0b0b0")}),i()}),define("js/cart/select-address",["jquery","hammer"],function(e,t,o){var n,a=e("jquery"),i=e("js/cart/order-info").orderInfo,s=a(".confim-mask");e("js/common"),a(".address-item").on("click",function(){var e=a(this),t=e.data("address-id"),o={address_id:e.data("address-id"),consignee:e.find(".name").text(),mobile:e.find(".tel").text(),address_info:e.find(".address-info").text(),is_support:e.data("is-support")};i("addressId",t),i("address",o),window.location.href=e.data("href")+(i("limitUrlSufix")||"")}).on("click",".edit",function(){return window.location.href=a(this).data("href"),!1}).on("click",".del",function(){n=a(this).data("id")}),s.on("click",".confim",function(){i("addressId")===n&&(i("addressId",null),i("address",null))})}),define("js/cart/jit-detail",["swiper","jquery","index"],function(e,t,o){var n=e("swiper"),a=e("jquery"),i=a(window).height()-a("#yoho-header").height();a(".jit-detail-page").css("height",i),a(".jit-detail-page>div").show(),i=a(document).height()-a("#yoho-header").height(),a(".jit-detail-page").css("height",i),function(){return new n(".swiper-container",{slidesPerView:"auto",grabCursor:!0,slideElement:"a",lazyLoading:!0,watchSlidesVisibility:!0})}()}),define("js/life/entry",["jquery","hammer"],function(e,t,o){e("js/life/login"),e("js/life/coupon")}),define("js/life/login",["jquery","hammer"],function(e,t,o){function n(){a.ajax({type:"get",url:"/index/life/sendCoupon",dataType:"json",success:function(e){a(".statu").html(e.message),a(".statu-mark").show(),a(".statu-box").show(),200===e.code?(window.setCookie("lifeCoupon",e.data),location.href="/life/coupon"):401===e.code?(a(".successed").css("display","block"),a(".sure").click(function(){location.href="/life/coupon"})):403===e.code?a(".late").css("display","block"):a(".faill").css("display","block")}})}var a=e("jquery");e("js/common"),e("js/plugin/wx-share")(),a(".notice").click(function(){a(".code").show(),a(".mark").show()}),a(".close").click(function(){a(".code").hide(),a(".mark").hide()}),a(".coupon-btn").click(function(){n(),a(".mark").show()})}),define("js/life/coupon",["jquery","hammer"],function(e,t,o){var n=e("jquery");e("js/common"),n(".coupon-input").val(window.cookie("lifeCoupon")||""),e("js/plugin/wx-share")()}); \ No newline at end of file +define("index",["jquery","hammer","swiper","lazyload","mlellipsis","iscroll-probe","handlebars","source-map","index"],function(e,t,o){var n;e("js/common"),e("js/category/entry"),e("js/guang/entry"),e("js/home/entry"),e("js/index/entry"),e("js/passport/entry"),e("js/product/entry"),e("js/me/entry"),e("js/cart/entry"),e("js/life/entry"),o.exports=n}),define("js/common",["jquery","hammer"],function(e,t,o){function n(e){var t,o,n=document.cookie;return document.cookie&&""!==document.cookie&&(o=n.indexOf(e+"="),o>-1&&(o+=e.length+1,t=decodeURIComponent(p.trim(n.substring(o,n.indexOf(";",o)))))),t}function a(e,t,o){var n,a,i,s,r="";"undefined"!=typeof t&&(o=o||{},null===t&&(t="",o.expires=-1),o.expires&&("number"==typeof o.expires||o.expires.toUTCString)&&("number"==typeof o.expires?(s=new Date,s.setTime(s.getTime()+24*o.expires*60*60*1e3)):s=o.expires,r="; expires="+s.toUTCString()),n=o.path?"; path="+o.path:"",a=o.domain?"; domain="+o.domain:"",i=o.secure?"; secure":"",document.cookie=[e,"=",encodeURIComponent(t),r,n,a,i].join(""))}function i(){var e=!!navigator.cookieEnabled;return"undefined"!=typeof navigator.cookieEnabled||e||(document.cookie="testcookie",e=-1!==document.cookie.indexOf("testcookie")),e}function s(){var e,t=n("_UID");return"undefined"==typeof t?0:(e=t.split("::"),"undefined"==typeof e||e.length<4?0:e)}function r(){var e=s();return 0===e?0:e[1]}function l(){var e=n("_g");return"undefined"==typeof e?"":JSON.parse(e).k}function d(){var e;0!==m.length&&(e=Math.min(p(window).height(),window.screen.availHeight),p("body").height()<=e-parseInt(m.css("height"),0)?m.addClass("bottom"):m.removeClass("bottom"))}function c(e){var t=p(e).outerHeight();e&&m.css("margin-bottom",t+"px")}function u(e){var t=1;if(!window._yas)return!1;switch(n("_Channel")){case"boys":t=1;break;case"girls":t=2;break;case"kids":t=3;break;case"lifestyle":t=4}return e=p.extend({REC_POSE:"",REC_ID:w,PRD_ID:"",PRD_NUM:0,C_ID:t,ACTION_ID:0,page_num:1},e),""===e.REC_POSE||""===e.PRD_ID?!0:void window._yas.sendCustomInfo({op:"YB_CHOOSE_FOR_YOU_Y",uid:r(),param:JSON.stringify(e)},!0)}function h(e){return e.replace(/(\d{3})\d{4}(\d{4})/,"$1****$2")}var p=e("jquery"),f=e("hammer"),m=p("#yoho-footer"),g=p(".yoho-page"),v=p(".yoho-header"),w=(new Date).getTime()+"_H5_YOHOBUY_"+Math.floor(1e6*Math.random()+1e6)+"_"+Math.floor(1e6*Math.random()+1e6);!function(){var e,t,o=m.children(".op-row"),n=p(".back-to-top"),a=s();d(),0===a?(/MicroMessenger/i.test(navigator.userAgent)?(t="//m.yohobuy.com/passport/login/wechat?refer="+location.href,p(".login-btn").attr("href",t)):t="//m.yohobuy.com/signin.html?refer="+location.href,o.prepend('<a href="'+t+'">登录</a><span class="sep-line">|</span><a href="//m.yohobuy.com/reg.html">注册</a>')):o.prepend('<span>Hi,</span><a class="user-name" href="//m.yohobuy.com/home?tmp='+Math.random()+'">'+a[0]+'</a><a href="//m.yohobuy.com/passport/signout/index?token='+a[3]+'">退出</a>'),n.length>0&&(e=new f(n[0]),e.on("tap",function(e){return p(window).scrollTop(0),e.srcEvent.preventDefault(),!1})),m.removeClass("hide")}(),function(e,t,o,n,a){var i=t.createElement(o),s=t.getElementsByTagName(o)[0];e.YohoAcquisitionObject=a,e[a]=function(){e[a].p=arguments},i.async=1,i.src=n,s.parentNode.insertBefore(i,s)}(window,document,"script",("https:"===document.location.protocol?"https":"http")+"://cdn.yoho.cn/yas-jssdk/1.0.17/yas.js","_yas"),function(){var e,t,o=r(),n=!1,a=3;0===o&&(o=""),window._ozuid=o,window._yas&&(window._yas(1*new Date,"1.0.17","yohobuy_m",o,"",""),e=function(e){var t={};e&&e&&e.length>a&&(t={page:e[0],floor:e[1],data:/_[1|0]$/.test(e.join("_"))?e[2]:e.slice(2).join("_")},window._yas.sendCustomInfo&&window._yas.sendCustomInfo(t,Boolean(parseInt(e[3])||1)))},t=function(){p(".buriedpoint").off("click"),p(document).on("click",".buriedpoint",function(t){var o=p(this).attr("data-bp-id")||"",i=o.split("_"),s=p(t.target),r=s.parents(".buriedpoint").length;!n&&i&&i.length>=a&&e(i),(s.hasClass("buriedpoint")&&r>0||r>=2)&&(n=!0)})},t(),p(document).on("rebindBpEvent",t),p(document).on("shouldSendBpData",function(t,o){var a;o&&o.length&&o.length>0&&(n=!1,a=o.split("_"),e(a))}))}(),v.on("touchstart","a",function(){v.find("a").removeClass("highlight"),p(this).addClass("highlight")}).on("touchend touchcancel","a",function(){p(this).removeClass("highlight")}),g.on("touchstart",".tap-hightlight",function(){p(this).siblings(".tap-hightlight").removeClass("highlight"),p(this).addClass("highlight")}).on("touchend touchcancel",".tap-hightlight",function(){p(this).removeClass("highlight")}),p(".nav-home").on("touchstart",function(){p(".homebuttom").toggleClass("hide")}),function(){var e,t,o=0,n="webkit moz ms o".split(" "),a=window.requestAnimationFrame,i=window.cancelAnimationFrame;for(t=0;t<n.length&&(!a||!i);t++)e=n[t],a=a||window[e+"RequestAnimationFrame"],i=i||window[e+"CancelAnimationFrame"]||window[e+"CancelRequestAnimationFrame"];a&&i||(a=function(e,t){var n=(new Date).getTime(),a=Math.max(0,16-(n-o)),i=window.setTimeout(function(){e(n+a)},a);return o=n+a,i},i=function(e){window.clearTimeout(e)}),window.requestAnimationFrame=a,window.cancelAnimationFrame=i}(),p.extend({queryString:function(){var e,t,o=[],n=window.location.search.slice(1).split("&");for(t=0;t<n.length;t++)e=n[t].split("="),o.push(e[0]),o[e[0]]=e[1];return o}}),11===m.find(".user-name").text().length&&m.find(".user-name").html(h(m.find(".user-name").text())),window.cookie=n,window.setCookie=a,window.isCookiesEnabled=i,window.getUser=s,window.getUid=r,window.getShoppingKey=l,window.rePosFooter=d,window.reMarginFooter=c,window.givePoint=u}),define("js/category/entry",["jquery","hammer","swiper","lazyload","index"],function(e,t,o){e("js/category/index"),e("js/category/brand")}),define("js/category/index",["jquery"],function(e,t,o){var n=e("jquery"),a=n(".category-nav"),i=n(".category-container"),s=i.children(".content"),r=i.find(".sub-level li"),l=i.find(".primary-level li"),d=s.not(".hide");!function(){var e=n(".yoho-header"),t=n("#search-input"),o=n(window).height()-e.outerHeight()-t.outerHeight()-a.outerHeight();i.css("min-height",o),s.height(o)}(),n("#search-input").focus(function(){n(this).blur()}),a.bind("contextmenu",function(e){return!1}),n(".category-container").bind("contextmenu",function(e){return!1}),a.on("touchend touchcancel",function(e){var t=n(e.target).closest("li"),o=t.index();t.hasClass("focus")||(a.find("li.focus").removeClass("focus"),t.addClass("focus"),d.addClass("hide"),d=s.eq(o).removeClass("hide"))}),i.on("touchend",function(e){var t,o,a,i=n(e.target);if(o=i.closest(".p-level-item"),o.length>0){if(a=o.index(),t=i.closest(".content").find(".sub-level"),i.hasClass("focus"))return;i.closest(".primary-level").children(".focus").removeClass("focus"),i.addClass("focus"),t.not(".hide").addClass("hide"),t.eq(a).removeClass("hide")}}),i.find(".primary-level").on("touchstart touchend touchcancel","li",function(){l.removeClass("highlight"),n(this).addClass("highlight")}).on("touchend touchcancel","li",function(){n(this).removeClass("highlight")}),i.find(".sub-level").on("touchstart","li",function(){r.removeClass("highlight"),n(this).addClass("highlight")}).on("touchend touchcancel","li",function(){n(this).removeClass("highlight")}),a.on("touchstart","li",function(){a.find("li").removeClass("bytouch"),n(this).addClass("bytouch")}).on("touchend touchcancel","li",function(){a.find("li").removeClass("bytouch")})}),define("js/category/brand",["jquery","hammer","swiper","lazyload","index"],function(e,t,o){function n(){var e=y(".brand-list").find("p");e.on("touchstart",function(){e.css("background","#fff"),y(this).css("background","#eee")}).on("touchend touchcancel",function(){y(this).css("background","#fff")})}function a(e){y.ajax({type:"POST",url:"/brands/addBrandSearch",data:"brandName="+encodeURIComponent(e),success:function(e){},error:function(){}})}function i(e,t){return e.time>t.time?1:e.time<t.time?-1:0}function s(){R.val().length?(E.css("color","#444"),L.show().find(".clear-text").show()):(E.css("color","#b2b2b2"),L.find(".clear-text").hide()),d()}function r(){var e="test",t=Window.prototype.localStorage;try{return t.setItem(e,"testValue"),t.removeItem(e),!0}catch(o){return!1}}function l(e,t){e.on("click","p , li",function(e){var o,n,i,l,d,c=y(this).find("a"),u=new Date,h=c.attr("brandName")+T+u.getTime();if(o=c.attr("brandName"),n=c.attr("brandId"),i=c.attr("brandDomain"),l=c.attr("href"),e.preventDefault(),F.length>0)return a(o),t?void(location.href=l):(R.val(o),void s());if(localStorage){if(r()&&(d=localStorage.getItem("historys-brand")),d=d?d:"",d.indexOf(k+h+k)>-1)return R.val(o),void s();""===d&&(h=k+h),d+=h+k,r()&&localStorage.setItem("historys-brand",d)}return t?void(location.href=l):(R.val(o),void s())})}function d(){var e=(R.val()+"").toLowerCase(),t={},o=0,a="";""!==e&&(y.each(g,function(o,n){y.isArray(n)&&y.each(n,function(n,a){a.searchName.toLowerCase().indexOf(e)>-1&&(t[o]=t[o]||[],t[o].push(a))})}),y.each(t,function(e,t){var n=['<div class="brand-list bar-',o,'">'];o++,n.push('<div class="title-bar"><h2>'),n.push(e),n.push("</h2></div>"),y.each(t,function(e,t){n.push('<p><a href="'+t.url+'" brandName = "'+t.name+'" brandId = "'+t.brandId+'" brandDomain = "'+t.brandDomain+'">'+t.name),t.isNew&&n.push('<i class="icon-new">NEW</i>'),t.isHot&&n.push('<i class="icon-hot">HOT</i>'),n.push("</a></p>")}),n.push("</div>"),a+=n.join("")})),e.length>0?y(".search-brand-page").addClass("hide"):y(".search-brand-page").removeClass("hide"),y(".search-result").html(a),n(),l(y(".brand-list"),!0)}function c(){var e=y(window).scrollTop();q.eq(0).offset().top<m&&p.hide(),q.each(function(){var t=y(this).offset().top-B;e>=t&&p.css({display:"block"}).find("h2").html(y(this).find(".title-bar").text())})}function u(){y.ajax({type:"GET",url:"/brands/delBrandHistory",data:"",success:function(e){},error:function(){}})}var h,p,f,m,g,v,w,y=e("jquery"),b=e("hammer"),C=e("swiper"),j=e("js/plugin/loading"),x=e("lazyload"),k=" ??++ ",T=" ???--- ",q=y(".brand-list"),E=y(".search-icon"),I=y(".genderNav li"),_=y(".brandNav li"),S=y(".new-brand-wall"),D=y(".recommand-brand-wall"),L=y(".search-action"),z=y(".homebuttom"),P=y(".genderNav"),M=y(".newbrand-search"),F=y(".net-history"),O=y(".nav-home"),N=y(".newbrand-search").outerHeight(),A=y(".yoho-header").outerHeight(),B=parseInt(N)+parseInt(A)-1,R=y("#keyword"),H=y(".local-history"),U=y(".search-brand-page"),V=y(".history-search"),W=y(".hot-search"),G=y("#clear-history");n(),j.showLoadingMask(),x(y("img.lazy")),y(".yoho-header").css({"z-index":2,position:"fixed",top:0}),z.css("top","47px"),z.css("position","fixed"),O.on("touchstart",function(){z.hasClass("hide")?(P.css("top","47px"),M.css("margin-top","0px"),U.css("margin-top","0px"),y(".banner-top").css("margin-top","0px")):(P.css("top","97px"),M.css("margin-top","47px"),U.css("margin-top","47px"),y(".banner-top").css("margin-top","47px"))}),function(){y(".banner-top").length>0&&y(".hot-brands").css("padding-top","0"),y(".hide-when-loading").show(),j.hideLoadingMask(),h=new C(".swiper-container",{lazyLoading:!0,loop:!0,autoplay:3e3,pagination:".swiper-pagination .pagination-inner"}),f=new C(".brands-swiper",{grabCursor:!0,slidesPerView:"auto",wrapperClass:"brands-list",slideElement:"li"})}(),p=y('<div class="title-bar fixed-title-bar"><h2></h2></div>'),p.css({position:"fixed",top:B}).hide(),m=B+y(".hot-brands").outerHeight()+y(".banner-top").outerHeight(),q.last().append(p),y(".brand-index-page").length>0&&y(window).scroll(function(){window.requestAnimationFrame(c)}),y(".history-search").length>0&&l(y(".history-search"),!1),y(".hot-search").length>0&&l(y(".hot-search"),!1),y(".brand-search-page").length>0&&(g=y.parseJSON(y("#brands-data").html()),R.on("input",function(){s()}),E.css("color","#444"),R.closest(".search-box").css("width","11.25rem"),L.show().find(".clear-text").hide(),v=new b(y(".clear-text")[0]),v.on("tap",function(e){y(".search-result").html(""),y("#keyword").val("").trigger("input"),e.preventDefault(),e.srcEvent.stopPropagation()}),y("form.search-box").on("submit",function(){return!1})),I.length>0&&I.on("touchstart",function(){function e(){window.location.search="channel="+t}var t=y(this).data("id")+1;y(".genderNav ul .active").removeClass("active"),y(this).addClass("active"),y(".hide-when-loading").hide(),j.showLoadingMask(),setTimeout(e.bind(this),100)}),_.length>0&&_.on("click",function(){var e=y(this).data("id");y(".brandNav ul .active").removeClass("active"),y(this).addClass("active"),0===e?(D.not(".hide").addClass("hide"),S.not(".hide").addClass("hide"),q.removeClass("hide")):1===e?(S.removeClass("hide"),q.not(".hide").addClass("hide"),D.not(".hide").addClass("hide")):(D.removeClass("hide"),q.not(".hide").addClass("hide"),S.not(".hide").addClass("hide"))}),y(".brand-search-page").length>0&&(w=new b(G[0]),w.on("tap",function(){r()&&localStorage.removeItem("historys-brand"),H.html(""),V.hide(),G.hide(),y(".net-search").length>0&&u(),window.rePosFooter()}),function(){var e,t,o,n,a,s,l,d,c,u,h,p,f,m,g,v="";if(h=[],p=[],d=[],F.find("li").each(function(){a=y(this).find("a").attr("brandName"),l=y(this).find("a").attr("collectTime"),c={brand:a,time:l},d.push(c)}),localStorage&&(r()&&(t=localStorage.getItem("historys-brand")),t&&t.length>0))for(t=t.split(k),o=t.length;o>0;o--)e=t[o-1],""!==e&&(n=e.split(T),a=n[0],l=n[1],c={brand:a,time:l},h.push(c));if(0===h.length&&0===d.length)return void V.addClass("hide");if(m={},g={},h.length>0)for(u in h)h.hasOwnProperty(u)&&(g=h[u],(!m[g.brand]||m[g.brand]<g.time)&&(m[g.brand]=g.time));if(d.length>0)for(c in d)d.hasOwnProperty(c)&&(g=d[c],(!m[g.brand]||m[g.brand]<g.time)&&(m[g.brand]=g.time));s={};for(f in m)m.hasOwnProperty(f)&&(s={brand:f,time:m[f]},p.push(s));if(p.sort(i),p.length>0)for(o=p.length-1;o>=(p.length>10?p.length-10:0);o--)a=p[o].brand,l=p[o].time,v+='<li><a brandName = "'+a+'">'+a+"</li>",H.removeClass("hide"),H.html(v),G.removeClass("hide"),W.removeClass("hide"),window.rePosFooter();else H.addClass("hide")}())}),define("js/plugin/loading",["jquery"],function(e,t,o){function n(e){var t='<div class="loading-mask hide"><div class="loading"><div></div><div></div><div></div></div></div>';d=!0,void 0===e&&(e=l),e.append(t),s=e.children(".loading-mask")}function a(){d||(n(),d=!0),s.removeClass("hide")}function i(){s.addClass("hide")}var s,r=e("jquery"),l=r(".yoho-page"),d=!1;t.init=n,t.showLoadingMask=a,t.hideLoadingMask=i}),define("js/guang/entry",["jquery","lazyload","swiper","hammer","mlellipsis","iscroll-probe","index"],function(e,t,o){e("js/guang/plus-star/list"),e("js/guang/plus-star/detail"),e("js/guang/home"),e("js/guang/list"),e("js/guang/detail"),e("js/guang/star-classroom"),e("js/guang/calendar"),e("js/guang/collocation-list"),e("js/guang/check-top")}),define("js/guang/plus-star/list",["jquery","lazyload","swiper","index"],function(e,t,o){var n,a=e("jquery"),i=e("lazyload"),s=e("swiper"),r=a("#nav-tab > li"),l=a("#ps-content > .content");i(a("img.lazy")),a(".star-content li").each(function(e,t){a(t).find(".swiper-container").addClass("swiper-"+e),n=new s(".swiper-"+e,{lazyLoading:!0,pagination:".swiper-"+e+" .pagination-inner"})}),a("#nav-tab").bind("contextmenu",function(e){return!1}),a("#nav-tab").on("touchend touchcancel",function(e){var t=a(e.target).closest("li");t.hasClass("focus")||(r.toggleClass("focus"),l.toggleClass("hide"),a(document).trigger("scroll"))}),a("#nav-tab").on("touchstart",function(e){var t=e.target||e.srcElement;t.className="bytouch "+t.className}).on("touchend touchcancel",function(){r.removeClass("bytouch")})}),define("js/guang/plus-star/detail",["jquery","hammer","mlellipsis","lazyload","swiper","index"],function(e,t,o){var n,a,i,s,r,l,d=e("jquery"),c=e("hammer"),u=e("mlellipsis"),h=e("lazyload"),p=d("#intro"),f=d("#intro-more-txt"),m=d("#related-infos-container"),g=e("js/guang/info"),v=e("js/plugin/tip"),w=d("#brand-info").data("id"),y=d("#jump-to-app").val();e("js/plugin/wx-share"),u.init(),h(d("img.lazy")),d(".good-detail-text .name").length>0&&d(".good-detail-text .name").each(function(){r=d(this),l=r.find("a"),l[0].mlellipsis(2)}),p[0].mlellipsis(3),setTimeout(function(){n=p.text(),a=p.attr("title")}),g.initInfosEvt(m),i=new c(document.getElementById("more-intro-click-range")),i.on("tap",function(e){var t=f.parent();t.toggleClass("spread"),t.hasClass("spread")?(p.text(a),f.text("收起")):(p.text(n),f.text("more"),d(window).scrollTop(0,400)),e.preventDefault()}),s=new c(document.getElementById("brand-like")),s.on("tap",function(e){var t="ok",o=d(e.target);"1"!==y&&(e.preventDefault(),o.hasClass("like")&&(t="cancel"),d.ajax({type:"POST",url:"/guang/opt/favoriteBrand",data:{id:w,opt:t},success:function(e){200===e.code?(o.toggleClass("like"),v.show(e.message)):400===e.code||412===e.code?location.href=e.data:v.show(e.message)},error:function(){v.show("网络断开连接了~")}}))})}),define("js/guang/info",["jquery","hammer","mlellipsis","lazyload","swiper","index"],function(e,t,o){function n(e){var t=new RegExp("(^|&)"+e+"=([^&]*)(&|$)"),o=window.location.search.substr(1).match(t);return null!=o?o[2]:null}function a(e){void 0!==typeof e&&(b[e]=new h(".swiper-cont-"+e,{lazyLoading:!0,wrapperClass:"swiper-wrap-"+e,pagination:".swiper-pagi-"+e,autoplay:3e3}))}function i(e){u(e.find("img.lazy")),e.each(function(){var e=l(this),t=e.find(".info-title"),o=e.find(".info-text");t[0].mlellipsis(2),o[0].mlellipsis(2)})}function s(e){var t;"undefined"!=typeof e&&"undefined"!=typeof e[0]&&(t=new d(e[0]),t.on("tap",function(e){var t,o,a,i=l(e.target),s="ok";return t=i.closest(".like-btn"),t.length>0&&!C?(e.preventDefault(),t.hasClass("like")&&(s="cancel"),o=i.closest(".guang-info"),C=!0,void l.ajax({type:"POST",url:"/guang/opt/praiseArticle",data:{id:o.data("id"),opt:s},success:function(e){var o=e.code;200===o&&(t.next(".like-count").text(e.data),t.toggleClass("like"))},error:function(){p.show("网络断开连接了~")},complete:function(){C=!1}})):(t=i.closest(".collect-btn"),void(t.length>0&&(e.preventDefault(),t.hasClass("collected")&&(s="cancel"),o=i.closest(".guang-info"),n("yh_channel")&&(a=n("yh_channel")),l.ajax({type:"POST",url:"/guang/opt/collectArticle",data:{id:o.data("id"),opt:s,yh_channel:a,uid:n("uid")},success:function(e){e.code&&200===e.code&&t.toggleClass("collected")},error:function(){p.show("网络断开连接了~")}}))))}),i(e.find(".guang-info")))}function r(e,t,o){var n;y||t.end||(1===t.page&&f.showLoadingMask(),n=e.find(".guang-info").length,y=!0,l.ajax({type:"GET",url:o?o:"/guang/index/page",data:t,success:function(o){var s;return" "===o?(t.end=!0,y=!1,g.addClass("hide"),void v.removeClass("hide")):(e.append(o),w=e.find(".swiper-container"),w.length&&(w.addClass("swiper-cont-"+t.type),w.children(".swiper-wrapper").addClass("swiper-wrap-"+t.type),w.children(".swiper-pagination").addClass("swiper-pagi-"+t.type),a(t.type)),s=n>0?e.find(".guang-info:gt("+(n-1)+")"):e.find(".guang-info"),i(s),1===t.page&&(f.hideLoadingMask(),g.removeClass("hide"),window.rePosFooter()),t.page++,y=!1,void delete t.isTab)},error:function(){p.show("网络断开连接了~"),y=!1,delete t.isTab}}))}var l=e("jquery"),d=e("hammer"),c=e("mlellipsis"),u=e("lazyload"),h=e("swiper"),p=e("js/plugin/tip"),f=e("js/plugin/loading"),m=l("#load-more-info"),g=l(""),v=l(""),w=l(""),y=!1,b={},C=!1;c.init(),m.length>0&&(g=m.children(".loading"),v=m.children(".no-more")),t.mySwiper=b,t.initSwiper=a,t.initInfosEvt=s,t.setLazyLoadAndMellipsis=i,t.loadMore=r}),define("js/plugin/tip",["jquery"],function(e,t,o){function n(e,t){var o,n;"undefined"!=typeof e&&(o=e.toString(),n=t&&t>0?t:2e3,a.text(o).show(),i=setTimeout(function(){"block"===a.css("display")&&a.hide()},n))}var a,i,s=e("jquery");!function(){var e='<div id="yoho-tip" class="yoho-tip"></div>';s(".yoho-page").append(e),a=s("#yoho-tip"),a.on("touchend",function(){a.hide(),clearTimeout(i)})}(),t.show=n}),define("js/plugin/wx-share",["jquery"],function(e,t,o){var n=e("jquery");o.exports=function(){var e="/life/getSignPackage";n.getJSON(e+"?pageurl="+encodeURIComponent(location.href.split("#")[0])+"&callback=?",function(e){var t,o,n,a;wx&&void 0!==e&&""!==e&&(t=e.appId.toString(),o=e.timestamp,n=e.nonceStr.toString(),a=e.signature.toString(),wx.config({debug:!1,appId:t,timestamp:o,nonceStr:n,signature:a,jsApiList:["checkJsApi","onMenuShareTimeline","onMenuShareAppMessage","onMenuShareQQ","onMenuShareWeibo","hideMenuItems","showMenuItems","hideAllNonBaseMenuItem","showAllNonBaseMenuItem","translateVoice","startRecord","stopRecord","onRecordEnd","playVoice","pauseVoice","stopVoice","uploadVoice","downloadVoice","chooseImage","previewImage","uploadImage","downloadImage","getNetworkType","openLocation","getLocation","hideOptionMenu","showOptionMenu","closeWindow","scanQRCode","chooseWXPay","openProductSpecificView","addCard","chooseCard","openCard"]}))}),wx.ready(function(){var e=n("#shareTitle").val(),t=n("#shareImg").val(),o=n("#shareDesc").val(),a=n("#shareLink").val(),i={title:e,desc:o,imgUrl:t,link:a};wx.onMenuShareAppMessage(i),wx.onMenuShareTimeline(i),wx.onMenuShareQQ(i),wx.onMenuShareWeibo(i),wx.onMenuShareQZone(i)})}}),define("js/guang/home",["jquery","hammer","mlellipsis","lazyload","swiper","index"],function(e,t,o){function n(){var e=h.not(".hide");a(window).scrollTop()+c>=a(document).height()-.25*e.height()&&s(e,g[m])}var a=e("jquery"),i=e("js/guang/info"),s=i.loadMore,r=a("#load-more-info"),l=a(""),d=a(""),c=a(window).height(),u=a("#info-list"),h=u.children(".info-list"),p=a("#guang-nav"),f=p.children(".focus"),m=f.data("type"),g={};r.length>0&&(l=r.children(".loading"),d=r.children(".no-more")),i.initSwiper(m),i.initInfosEvt(u),function(){var e=a("#gender").val();p.children(".guang-nav-item").each(function(){var t=a(this).data("type"),o=a(this).hasClass("focus");g[t]={page:o?2:1,gender:e,type:t,end:!1}})}(),p.bind("contextmenu",function(e){return!1}),p.on("touchend touchcancel",function(e){var t,o,n=a(e.target).closest(".guang-nav-item");n.hasClass("focus")||(o=n.index(),n.addClass("focus"),f.removeClass("focus"),t=h.eq(o),f=n,m=n.data("type"),1===g[m].page?(l.addClass("hide"),d.addClass("hide"),g[m].isTab=!0,s(t,g[m])):g[m].end?(l.addClass("hide"),d.removeClass("hide")):(l.removeClass("hide"),d.addClass("hide")),h.not(".hide").addClass("hide"),t.removeClass("hide"),1===g[m].page&&window.rePosFooter())}),a(document).scroll(function(){window.requestAnimationFrame(n)}),p.on("touchstart",function(e){var t=e.target||e.srcElement;t.className="bytouch "+t.className}).on("touchend touchcancel",function(){p.find("li").removeClass("bytouch")})}),define("js/guang/list",["jquery","hammer","mlellipsis","lazyload","swiper","index"],function(e,t,o){function n(){a(window).scrollTop()+r>=a(document).height()-.25*p.height()&&s(p,h)}var a=e("jquery"),i=e("js/guang/info"),s=i.loadMore,r=a(window).height(),l=a("#author-infos"),d=a("#tag"),c=a("#gender"),u=a("#isApp"),h={page:2,end:!1},p=a("#info-list");i.initInfosEvt(p),l.length>0&&a.extend(h,{authorId:l.data("id"),isApp:u.val()}),d.length>0&&a.extend(h,{tag:d.val(),gender:c.val(),isApp:u.val()}),a(window).scroll(function(){window.requestAnimationFrame(n)})}),define("js/guang/detail",["jquery","mlellipsis","lazyload","iscroll-probe"],function(e,t,o){function n(e){var t=e.offset().left,o=-C+t+y/2+"px";r.css({backgroundPosition:o+" bottom"}),v&&b.css({backgroundPosition:o+" bottom"})}function a(e){var t,o,a,i=h(e.currentTarget),p=i.index();i.hasClass("focus")||(l.filter(".focus").removeClass("focus"),v&&(t=i.closest(".fixed-thumb-container").length>0?r:b,o=t.find(".thumb").eq(p),b.find(".thumb.focus").removeClass("focus"),o.addClass("focus")),i.addClass("focus"),n(i),d.not(".hide").addClass("hide"),a=d.eq(p),a.removeClass("hide"),f(a.find(".lazy")),v?u&&u.scrollToElement(c,400):h("body").animate({scrollTop:s.offset().top},400),u&&u.refresh())}function i(){var e,t,o,n,a,i=h("#scroller"),l=h(".yoho-header"),d=0;return l.length>0&&(d=l.outerHeight()),u=new m("#wrapper",{probeType:3,mouseWheel:!0,click:!0}),document.addEventListener("touchmove",function(e){e.preventDefault()},!1),w?(e=h(window).height()-d,a=b[0],t=r.outerHeight(),o=s.outerHeight(),n=s.offset().top-d,void u.on("scroll",function(){var s=-this.y,r=a.className;n-e+t>=s?-1===r.indexOf("fixed-bottom")&&b.addClass("fixed-bottom").removeClass("hide"):n>=s?-1===r.indexOf("hide")&&b.addClass("hide").removeClass("fixed-bottom fixed-top"):n+o-t>=s?-1===r.indexOf("fixed-top")&&b.addClass("fixed-top").removeClass("hide absolute").css("top",""):n+o>=s?(-1===r.indexOf("absolute")&&b.addClass("absolute").removeClass("fixed-top hide"),a.style.top=n+d+o-t-s+"px"):s>n+o&&-1===r.indexOf("hide")&&b.addClass("hide").removeClass("absolute"),i.trigger("scroll")})):void u.on("scroll",function(){i.trigger("scroll")})}var s,r,l,d,c,u,h=e("jquery"),p=e("mlellipsis"),f=e("lazyload"),m=e("iscroll-probe"),g=h(".author .intro"),v=!1,w=h(".collocation-block").length>0,y=0,b=h(""),c=document.querySelector("#wrapper .collocation-block"),C=h(window).width();window.onload=function(){u&&u.refresh()},h("img").on("load",function(){u&&u.refresh()}),t.i=function(e){var t,o,c=navigator.userAgent.indexOf("iPhone")>0;v=c&&e,p.init(),h(".good-detail-text .name").length>0&&h(".good-detail-text .name").each(function(){t=h(this),o=t.find("a"),o[0].mlellipsis(2)}),f(h(".lazy")),h(".info-list .title, .one-good .reco-name").each(function(){this.mlellipsis(2)}),g.offset()&&parseInt(g.offset().left,10)===parseInt(g.css("margin-left"),10)&&g.css("padding-top",0),v&&(h(".yoho-header").length>0?h("#wrapper").addClass("ios has-head"):h("#wrapper").addClass("ios")),w&&(s=h(".collocation-block"),r=s.children(".thumb-container"),l=r.find("li"),d=s.find(".prod"),y=l.width(),v&&(b=h("#wrapper").after(r.clone().addClass("fixed-thumb-container fixed-bottom")).next(".thumb-container"),f(b.find(".lazy"),{event:"sporty"})),n(l.filter(".focus")),r.delegate(".thumb","touchend",a),v&&b.delegate(".thumb","touchend",a)),v&&i()},h(".focus-btn").on("touchstart",function(){var e=h(this).siblings("textarea");e.select(),document.execCommand("Copy"),h(".weixin-pop-up").removeClass("hide")}),h(".know").on("touchstart",function(){h(".weixin-pop-up").addClass("hide")})}),define("js/guang/star-classroom",["jquery","swiper","lazyload","index"],function(e,t,o){function n(e){var t,o=new Image;t=e.data("avatar"),o.src=t,o.onload=function(){e.css("background-image","url("+t+")")}}function a(e){var t,o,a=d(".fan-charts-cont"),i=d(".my-intimacy"),s=d(".increased"),r=e.signDay.split(","),l="",c="",h=new Date,p=h.getFullYear(),f=h.getMonth(),m=u.calculateMonthDays(f,p);if(r.length>0)for(t=0;m>t;t++)for(o=0;o<r.length;o++)t===parseInt(r[o])&&d(".now-days").eq(t-1).addClass("sign-item");for(t=0;t<e.fanCharts.length;t++)c=0===t?"font-bold":"",l+='<li><i class="rank-ico">'+e.fanCharts[t].num+'</i><span data-avatar="'+e.fanCharts[t].img+'" class="rank-avatar"></span><span class="fans-name">'+e.fanCharts[t].name+'</span><div class="fans-intimacy">亲密度<span class="'+c+'">'+e.fanCharts[t].intimacyNum+"</span></div></li>";a.html(l),d(".fan-charts-cont .rank-avatar").each(function(e,t){""!==d(t).attr("data-avatar")&&n(d(t))}),i.find("span").html(e.todayIntimacy),s.find("span").html(e.todayIntimacy),0===e.intimacyNum?(d(".my-intimacy").hide(),d(".increased").show()):(d(".my-intimacy").show(),d(".increased").hide()),d(".pop-intimacy").css({zIndex:"10"}).show(),d(".classroom-mask").css({zIndex:"9"}).show(),d("body").css({overflow:"hidden"})}function i(e,t){return t+=/^[\u0000-\u00ff]$/.test(e)?1:2}function s(){var e,t,o=d(".home-floor-sign").find(".user-name"),n=o.html(),a=n.length,s=0,r="";for(e=0;a>e;e++)t=n.charAt(e),s=i(t,s),5>s&&(r+=t);s>8?r+=".."+n.charAt(a-1):r=n,o.html(r)}var r,l,d=e("jquery"),c=e("swiper"),u=e("js/guang/calendar"),h=e("lazyload"),p=e("js/plugin/tip");h(d("img.lazy")),d("body").addClass("star-class-body"),d(".banner-swiper").find("li").length>1&&(r=new c(".banner-swiper",{lazyLoading:!0,lazyLoadingInPrevNext:!0,loop:!0,autoplay:3e3,autoplayDisableOnInteraction:!1,paginationClickable:!0,slideElement:"li",pagination:".banner-top .pagination-inner"})),d(".collocation-swiper").find("li").length>1&&(l=new c(".collocation-swiper",{lazyLoading:!0,lazyLoadingInPrevNext:!0,lazyLoadingOnTransitionStart:!0,grabCursor:!0,slidesPerView:"auto",slideElement:"li",watchSlidesVisibility:!0})),d(".artice-zan").find("li").length>0&&d(".zan-more").show(),d(".home-floor-sign").length>0&&s(),d(document).on("touchstart",".like-ico",function(e){var t=d(this),o="";e.stopPropagation(),d.ajax({type:"POST",url:"/guang/starclass/setPraise",data:{articleId:t.parents("li").attr("articleId")},success:function(e){var n=e.code;200===n&&(t.hasClass("like")?t.removeClass("like"):t.addClass("like"),o=e.num>99?"+":"",t.parent().find(".zan-more").html(e.num+o))},error:function(){p.show("网络断开连接了~")}})}),d(".add-intimacy").on("touchstart",function(e){e.stopPropagation(),e.preventDefault(),d.ajax({type:"GET",url:"/guang/starclass/sign",success:function(e){var t=e.code;200===t&&a(e.data),201===t&&(d("#intimacy-link").length<=0&&d("body").append("<a href='"+e.data+'\' style="display:none;" id="intimacy-link"><span class="intimacy-link"></span></a>'),d(".intimacy-link").click())},error:function(){p.show("网络断开连接了~")}})}),d(".pop-intimacy .pop-close, .classroom-mask").on("click",function(){history.go(0)}),""!==d(".user-head").attr("data-avatar")&&n(d(".user-head"))}),define("js/guang/calendar",["jquery"],function(e,t,o){var n=e("jquery"),a={currentYear:0,currentMonth:0,initialize:function(){var e;e=this.createCalendar(0,0),n("#Container").append(e)},isRuiYear:function(e){return 0===e%4&&(e%100!==0||e%400===0)},calculateWeek:function(e,t,o){var n,a,i;return n="7123456".split(""),a=parseInt(o,10),i=n[new Date(e,t-1,a).getDay()]},calculateMonthDays:function(e,t){var o,n=0;return 0===e||1===e||3===e||5===e||7===e||8===e||10===e||12===e?n=31:2===e?(o=this.isRuiYear(t),n=o===!0?29:28):n=30,n},createCalendar:function(e,t){var o,a,i,s,r,l,d,c,u,h=["January","February","March","April","May","June","July","August","September","October","November","December"];if(o=n('<div class="day-item"></div>'),a=new Date,i=0===e?a.getFullYear():e,this.currentYear=i,s=0===t?a.getMonth()+1:t,this.currentMonth=s,r=this.calculateMonthDays(s,i),window.nowDaysNub=r,n(".cur-year").html(i),n(".cur-month").html(h[s-1]),l=parseInt(this.calculateWeek(i,s,1)),d=this.calculateMonthDays(s-1,i),0!==l)for(c=d-l;d>c;c++)o.append('<div class="item last-item">'+(c+1)+"</div>");for(c=1;r>=c;c++)o.append('<div class="item now-days">'+c+"</div>");if(u=l+r,41>u)for(c=0;41-u>=c;c++)o.append('<div class="item last-item">'+(c+1)+"</div>");return o}};n(document).ready(function(){a.initialize()}),t.calculateMonthDays=a.calculateMonthDays}),define("js/guang/collocation-list",["jquery","lazyload","mlellipsis"],function(e,t,o){function n(e){var t,o,n;r.showLoadingMask(),i.ajax({type:"GET",url:"/guang/starclass/ajaxCollocation",data:{page:e},dataType:"html",success:function(e){c=!1," "===e&&(c=!0,s.show("没有更多内容了")),i(".collocation-list").append(e),i(".cont-area").each(function(){t=i(this),o=t.find(".title"),n=t.find(".cont-txt"),o[0].mlellipsis(2),n[0].mlellipsis(2)}),r.hideLoadingMask(),l(i("img.lazy"))},error:function(){s.show("网络断开连接了~")}})}function a(){!c&&i(window).scrollTop()+i(window).height()>i("body").height()-100&&(c=!0,u++,n(u))}var i=e("jquery"),s=e("js/plugin/tip"),r=e("js/plugin/loading"),l=e("lazyload"),d=e("mlellipsis"),c=!1,u=1;d.init(),i("body").addClass("star-class-body"),window.successShare=function(){i.ajax({type:"POST",url:"/guang/starclass/forward",success:function(e){var t=e.code;200===t&&e.data>0&&s.show("分享成功,亲密度+10")},error:function(){s.show("网络断开连接了~")}})},i(window).scroll(function(){a()}),0===i(".collocation-list").find("li").length&&n(1),i(document).on("touchstart",".collection",function(e){var t,o=i(this),n=o.find(".collected-ico");e.stopPropagation(),t=n.hasClass("collected")?"del":"fav",i.ajax({type:"POST",url:"/guang/starclass/setFavorite",data:{articleId:o.parents("li").attr("articleId"),type:t},success:function(e){var t=e.code;200===t&&(n.hasClass("collected")?n.removeClass("collected"):n.addClass("collected")), +201===t&&(i("#collocation-link").length<=0&&i("body").append("<a href='"+e.data+'\' style="display:none;" id="collocation-link"><span class="collocation-link"></span></a>'),i(".collocation-link").click())},error:function(){s.show("网络断开连接了~")}})})}),define("js/guang/check-top",["jquery"],function(e,t,o){function n(e){var t,o=new Image;t=e.data("avatar"),o.src=t,o.onload=function(){e.css("background-image","url("+t+")")}}var a=e("jquery");a("body").addClass("star-class-body"),a(".ranking-area li").length>0&&a.each(a(".ranking-area li"),function(e,t){n(a(t).find(".rank-avatar"))}),""!==a(".user-avatar").attr("data-avatar")&&n(a(".user-avatar"))}),define("js/home/entry",["jquery","swiper","lazyload","hammer","mlellipsis","index"],function(e,t,o){e("js/home/home"),e("js/home/maybe-like")}),define("js/home/home",["jquery","swiper","lazyload","hammer","mlellipsis","index"],function(e,t,o){function n(){x=!1,v.hasClass("menu-open")&&(v.removeClass("menu-open"),w.hide(),p(".sub-nav").removeClass("show"),y.removeClass("on"))}function a(e){e.find("li").on("touchstart",function(){e.find(".highlight").removeClass("highlight"),p(this).addClass("highlight")}).on("touchend touchcancel",function(){p(this).removeClass("highlight")})}function i(){C+=10,j.css({transform:"rotateX("+C+"deg)","-webkit-transform":"rotateX("+C+"deg)","-moz-transform":"rotateX("+C+"deg)"}),C/90%2===1&&(k?(j.addClass("animate"),k=!1):(j.removeClass("animate"),k=!0)),C/90%2===0&&C%360!==0?window.setTimeout(i,3e3):C%360===0?window.setTimeout(i,6e4):window.requestAnimationFrame(i)}var s,r,l,d,c,u,h,p=e("jquery"),f=e("swiper"),m=e("lazyload"),g=e("js/plugin/notice-scroll"),v=p(".mobile-wrap"),w=p(".overlay"),y=p(".side-nav"),b=p(".sub-nav"),C=0,j=p(".home-header .logo"),x=!1,k=!0,T=e("js/home/fastclick");T(document.body),m(p("img.lazy")),g(".notice",1e3*p(".notice").data("time")),p(".nav-btn").on("touchstart",function(){return y.css("pointer-events","none"),v.addClass("menu-open"),w.show().css("opacity",.3),y.addClass("on"),x=!0,setTimeout(function(){y.css("pointer-events","auto")},400),!1}),w.on("touchstart",function(){return n(),!1}),y.on("touchmove scroll",function(){return!1}),y.on("touchend","li",function(e){return p(this).find(".sub-nav").size()>0&&(p(".sub-nav").removeClass("show"),p(this).find(".sub-nav").addClass("show"),p(this).find(".highlight").removeClass("highlight")),e.target.pathname===location.pathname?(n(),!1):void 0}),b.each(function(){p(this).find("li").eq(0).on("click",function(){return p(".sub-nav").removeClass("show"),!1})}).on("touchstart",function(e){e.currentTarget!==e.target&&b.find("li").removeClass("current")}),a(y),a(b),p(".banner-swiper").find("li").size()>1&&(s=new f(".banner-swiper",{lazyLoading:!0,lazyLoadingInPrevNext:!0,loop:!0,autoplay:3e3,autoplayDisableOnInteraction:!1,paginationClickable:!0,slideElement:"li",pagination:".banner-top .pagination-inner"})),l=new f(".brands-swiper",{grabCursor:!0,slidesPerView:"auto",wrapperClass:"brands-list",slideElement:"li"}),r=new f(".recommend-swiper",{grabCursor:!0,slidesPerView:"auto",wrapperClass:"recommend-list",slideElement:"li"}),p(".trend-topic-swiper").find("li").size()>1&&(d=new f(".trend-topic-swiper",{loop:!0,autoplay:3e3,autoplayDisableOnInteraction:!1,paginationClickable:!0,slideElement:"li",pagination:".trend-topic-content .pagination-inner"})),p(".fresh-list-swiper").find("li").size()>1&&(u=new f(".fresh-list-swiper",{lazyLoading:!0,lazyLoadingInPrevNext:!0,grabCursor:!0,slidesPerView:"auto",slideElement:"li",watchSlidesVisibility:!0})),p(".category-swiper").each(function(e,t){h="category-swiper"+e,p(this).addClass(h),p("."+h).find(".swiper-slide").size()>1&&(c=new f("."+h,{loop:!0,autoplay:3e3,autoplayDisableOnInteraction:!1,paginationClickable:!0,slideElement:"li",pagination:"."+h+" .pagination-inner"}))}),setTimeout(i,3e3),p(".home-header .iconfont").on("touchstart",function(){p(this).addClass("highlight")}).on("touchend touchcancel",function(){p(this).removeClass("highlight")}),window.reMarginFooter(".footer-tab"),t.set=function(e){window.setCookie("_Channel",e,{expires:365,domain:".m.yohobuy.com"})},e("js/home/maybe-like")()}),define("js/plugin/notice-scroll",["jquery"],function(e,t,o){function n(e,t){var o=a(e),n=o.find(".notice-item"),i=n.length,s=1;e=e||".notice",t=t||3e3,i>1&&setInterval(function(){s>=i&&(s=0),n.fadeOut(),o.find(".item-"+s).fadeIn(),s++},t)}var a=e("jquery");o.exports=n}),define("js/home/fastclick",[],function(e,t,o){!function(){"use strict";function e(t,o){function a(e,t){return function(){return e.apply(t,arguments)}}var i;if(o=o||{},this.trackingClick=!1,this.trackingClickStart=0,this.targetElement=null,this.touchStartX=0,this.touchStartY=0,this.lastTouchIdentifier=0,this.touchBoundary=o.touchBoundary||10,this.layer=t,this.tapDelay=o.tapDelay||200,this.tapTimeout=o.tapTimeout||700,!e.notNeeded(t)){for(var s=["onMouse","onClick","onTouchStart","onTouchMove","onTouchEnd","onTouchCancel"],r=this,l=0,d=s.length;d>l;l++)r[s[l]]=a(r[s[l]],r);n&&(t.addEventListener("mouseover",this.onMouse,!0),t.addEventListener("mousedown",this.onMouse,!0),t.addEventListener("mouseup",this.onMouse,!0)),t.addEventListener("click",this.onClick,!0),t.addEventListener("touchstart",this.onTouchStart,!1),t.addEventListener("touchmove",this.onTouchMove,!1),t.addEventListener("touchend",this.onTouchEnd,!1),t.addEventListener("touchcancel",this.onTouchCancel,!1),Event.prototype.stopImmediatePropagation||(t.removeEventListener=function(e,o,n){var a=Node.prototype.removeEventListener;"click"===e?a.call(t,e,o.hijacked||o,n):a.call(t,e,o,n)},t.addEventListener=function(e,o,n){var a=Node.prototype.addEventListener;"click"===e?a.call(t,e,o.hijacked||(o.hijacked=function(e){e.propagationStopped||o(e)}),n):a.call(t,e,o,n)}),"function"==typeof t.onclick&&(i=t.onclick,t.addEventListener("click",function(e){i(e)},!1),t.onclick=null)}}var t=navigator.userAgent.indexOf("Windows Phone")>=0,n=navigator.userAgent.indexOf("Android")>0&&!t,a=/iP(ad|hone|od)/.test(navigator.userAgent)&&!t,i=a&&/OS 4_\d(_\d)?/.test(navigator.userAgent),s=a&&/OS [6-7]_\d/.test(navigator.userAgent),r=navigator.userAgent.indexOf("BB10")>0;e.prototype.needsClick=function(e){switch(e.nodeName.toLowerCase()){case"button":case"select":case"textarea":if(e.disabled)return!0;break;case"input":if(a&&"file"===e.type||e.disabled)return!0;break;case"label":case"iframe":case"video":return!0}return/\bneedsclick\b/.test(e.className)},e.prototype.needsFocus=function(e){switch(e.nodeName.toLowerCase()){case"textarea":return!0;case"select":return!n;case"input":switch(e.type){case"button":case"checkbox":case"file":case"image":case"radio":case"submit":return!1}return!e.disabled&&!e.readOnly;default:return/\bneedsfocus\b/.test(e.className)}},e.prototype.sendClick=function(e,t){var o,n;document.activeElement&&document.activeElement!==e&&document.activeElement.blur(),n=t.changedTouches[0],o=document.createEvent("MouseEvents"),o.initMouseEvent(this.determineEventType(e),!0,!0,window,1,n.screenX,n.screenY,n.clientX,n.clientY,!1,!1,!1,!1,0,null),o.forwardedTouchEvent=!0,e.dispatchEvent(o)},e.prototype.determineEventType=function(e){return n&&"select"===e.tagName.toLowerCase()?"mousedown":"click"},e.prototype.focus=function(e){var t;a&&e.setSelectionRange&&0!==e.type.indexOf("date")&&"time"!==e.type&&"month"!==e.type?(t=e.value.length,e.setSelectionRange(t,t)):e.focus()},e.prototype.updateScrollParent=function(e){var t,o;if(t=e.fastClickScrollParent,!t||!t.contains(e)){o=e;do{if(o.scrollHeight>o.offsetHeight){t=o,e.fastClickScrollParent=o;break}o=o.parentElement}while(o)}t&&(t.fastClickLastScrollTop=t.scrollTop)},e.prototype.getTargetElementFromEventTarget=function(e){return e.nodeType===Node.TEXT_NODE?e.parentNode:e},e.prototype.onTouchStart=function(e){var t,o,n;if(e.targetTouches.length>1)return!0;if(t=this.getTargetElementFromEventTarget(e.target),o=e.targetTouches[0],a){if(n=window.getSelection(),n.rangeCount&&!n.isCollapsed)return!0;if(!i){if(o.identifier&&o.identifier===this.lastTouchIdentifier)return e.preventDefault(),!1;this.lastTouchIdentifier=o.identifier,this.updateScrollParent(t)}}return this.trackingClick=!0,this.trackingClickStart=e.timeStamp,this.targetElement=t,this.touchStartX=o.pageX,this.touchStartY=o.pageY,e.timeStamp-this.lastClickTime<this.tapDelay&&e.preventDefault(),!0},e.prototype.touchHasMoved=function(e){var t=e.changedTouches[0],o=this.touchBoundary;return Math.abs(t.pageX-this.touchStartX)>o||Math.abs(t.pageY-this.touchStartY)>o},e.prototype.onTouchMove=function(e){return this.trackingClick?((this.targetElement!==this.getTargetElementFromEventTarget(e.target)||this.touchHasMoved(e))&&(this.trackingClick=!1,this.targetElement=null),!0):!0},e.prototype.findControl=function(e){return void 0!==e.control?e.control:e.htmlFor?document.getElementById(e.htmlFor):e.querySelector("button, input:not([type=hidden]), keygen, meter, output, progress, select, textarea")},e.prototype.onTouchEnd=function(e){var t,o,r,l,d,c=this.targetElement;if(!this.trackingClick)return!0;if(e.timeStamp-this.lastClickTime<this.tapDelay)return this.cancelNextClick=!0,!0;if(e.timeStamp-this.trackingClickStart>this.tapTimeout)return!0;if(this.cancelNextClick=!1,this.lastClickTime=e.timeStamp,o=this.trackingClickStart,this.trackingClick=!1,this.trackingClickStart=0,s&&(d=e.changedTouches[0],c=document.elementFromPoint(d.pageX-window.pageXOffset,d.pageY-window.pageYOffset)||c,c.fastClickScrollParent=this.targetElement.fastClickScrollParent),r=c.tagName.toLowerCase(),"label"===r){if(t=this.findControl(c)){if(this.focus(c),n)return!1;c=t}}else if(this.needsFocus(c))return e.timeStamp-o>100||a&&window.top!==window&&"input"===r?(this.targetElement=null,!1):(this.focus(c),this.sendClick(c,e),a&&"select"===r||(this.targetElement=null,e.preventDefault()),!1);return a&&!i&&(l=c.fastClickScrollParent,l&&l.fastClickLastScrollTop!==l.scrollTop)?!0:(this.needsClick(c)||(e.preventDefault(),this.sendClick(c,e)),!1)},e.prototype.onTouchCancel=function(){this.trackingClick=!1,this.targetElement=null},e.prototype.onMouse=function(e){return this.targetElement?e.forwardedTouchEvent?!0:e.cancelable&&(!this.needsClick(this.targetElement)||this.cancelNextClick)?(e.stopImmediatePropagation?e.stopImmediatePropagation():e.propagationStopped=!0,e.stopPropagation(),e.preventDefault(),!1):!0:!0},e.prototype.onClick=function(e){var t;return this.trackingClick?(this.targetElement=null,this.trackingClick=!1,!0):"submit"===e.target.type&&0===e.detail?!0:(t=this.onMouse(e),t||(this.targetElement=null),t)},e.prototype.destroy=function(){var e=this.layer;n&&(e.removeEventListener("mouseover",this.onMouse,!0),e.removeEventListener("mousedown",this.onMouse,!0),e.removeEventListener("mouseup",this.onMouse,!0)),e.removeEventListener("click",this.onClick,!0),e.removeEventListener("touchstart",this.onTouchStart,!1),e.removeEventListener("touchmove",this.onTouchMove,!1),e.removeEventListener("touchend",this.onTouchEnd,!1),e.removeEventListener("touchcancel",this.onTouchCancel,!1)},e.notNeeded=function(e){var t,o,a,i;if("undefined"==typeof window.ontouchstart)return!0;if(o=+(/Chrome\/([0-9]+)/.exec(navigator.userAgent)||[,0])[1]){if(!n)return!0;if(t=document.querySelector("meta[name=viewport]")){if(-1!==t.content.indexOf("user-scalable=no"))return!0;if(o>31&&document.documentElement.scrollWidth<=window.outerWidth)return!0}}if(r&&(a=navigator.userAgent.match(/Version\/([0-9]*)\.([0-9]*)/),a[1]>=10&&a[2]>=3&&(t=document.querySelector("meta[name=viewport]")))){if(-1!==t.content.indexOf("user-scalable=no"))return!0;if(document.documentElement.scrollWidth<=window.outerWidth)return!0}return"none"===e.style.msTouchAction||"manipulation"===e.style.touchAction?!0:(i=+(/Firefox\/([0-9]+)/.exec(navigator.userAgent)||[,0])[1],i>=27&&(t=document.querySelector("meta[name=viewport]"),t&&(-1!==t.content.indexOf("user-scalable=no")||document.documentElement.scrollWidth<=window.outerWidth))?!0:"none"===e.style.touchAction||"manipulation"===e.style.touchAction)},e.attach=function(t,o){return new e(t,o)},"function"==typeof define&&"object"==typeof define.amd&&define.amd?define(function(){return e}):"undefined"!=typeof o&&o.exports?(o.exports=e.attach,o.exports.FastClick=e):window.FastClick=e}()}),define("js/home/maybe-like",["jquery","hammer","mlellipsis","lazyload"],function(e,t,o){o.exports=function(t){function o(){w||(w=!0,p.showLoadingMask(),c.ajax({type:"GET",url:s,data:{page:y+1},success:function(e){var o=[];return" "===e?(w=!1,p.hideLoadingMask(),void(b&&!t&&(s="1,3"===b?"/boys/bottomBanner":"/girls/bottomBanner",c.ajax({type:"GET",url:s,success:function(e){e&&e.img&&(c("#load-more-img").show(),c("#load-more-img a").attr("href",e.url),c("#load-more-img a > img").attr("src",e.img))},error:function(){}})))):(e.length>1&&(d?null:d=c("#yoho-footer"),d.hasClass("bottom")?d.removeClass("bottom"):null),i=v.find(".good-info").length,v.append(e),m(0===i?v.find(".good-info").find("img.lazy"):v.find(".good-info:gt("+(i-1)+")").find("img.lazy")),w=!1,p.hideLoadingMask(),y++,c(".good-detail-text .name").each(function(){var e=c(this),t=e.find("a");t[0].mlellipsis(2)}),c(e).closest(".good-info").each(function(){o.push(c(this).data("id"))}),void window.givePoint({REC_POSE:C,PRD_ID:o.join(","),PRD_NUM:c(e).closest(".good-info").length,ACTION_ID:0,page_num:110009===C?1:y}))},error:function(){h.show("网络断开连接了~"),w=!1,p.hideLoadingMask()}}))}function n(){c(window).scrollTop()+g>=c(document).height()-200&&o()}var a,i,s,r,l,d,c=e("jquery"),u=e("hammer"),h=e("js/plugin/tip"),p=e("js/plugin/loading"),f=e("mlellipsis"),m=e("lazyload"),g=c(window).height(),v=c("#goods-list"),w=!1,y=0,b=null,C="110001",j=!("kids"!==t&&!c(".mobile-wrap").hasClass("kids-wrap")),x=!("lifestyle"!==t&&!c(".mobile-wrap").hasClass("lifestyle-wrap")),k=!!c(".coin").length,T=!!c(".logistic-page").length,q=c("#maybe-like-nav");f.init(),j?s="/product/recom/maylikekids":x?s="lifestyle"===t?"/product/recom/maylike?gender=1,3&rec_pos=100001":"/product/recom/maylikelife":k?(b="boys"===t||c(".mobile-wrap").hasClass("boys-wrap")?"1,3&rec_pos=100009":"2,3&rec_pos=100009",s="/product/recom/maylike?gender="+b,C=110009):T?(b="boys"===t||c(".mobile-wrap").hasClass("boys-wrap")?"1,3&rec_pos=100006":"2,3&rec_pos=100006",s="/product/recom/maylike?gender="+b,C=110006):(b="boys"===t||c(".mobile-wrap").hasClass("boys-wrap")?"1,3&rec_pos=100001":"2,3&rec_pos=100002",s="/product/recom/maylike?gender="+b),c(".mobile-wrap").hasClass("yoho-channel-page")&&(s="/product/recom/newPreference?template_id="+c.queryString().template_id),"/boys"===window.location.pathname?C=110001:"/girls"===window.location.pathname&&(C=110002),r=q.children(".focus"),x&&(a=q[0]?new u(q[0]):void 0,a&&a.on("tap",function(e){var t,o=c(e.target).closest("li"),n=c(".goods-list");e.preventDefault(),o.hasClass("focus")||(l=o.index(),o.addClass("focus"),r.removeClass("focus"),n.not(".hide").addClass("hide"),t=n.eq(l),t.removeClass("hide"),r=o,c(document).trigger("scroll"),e.srcEvent.stopPropagation())})),p.init(c(".maybe-like")),c(".maybe-like p").on("touchstart",function(e){o()}),t&&o(),c(window).scroll(function(){window.requestAnimationFrame(n)}),c(".maybe-like .goods-list").on("click","a",function(){var e=c(this).closest(".good-info").index()+1,t=50;return window.givePoint({REC_POSE:C,PRD_ID:c(this).closest(".good-info").data("id"),PRD_NUM:e%t===0?t:e%t,ACTION_ID:1,page_num:Math.ceil(e/t)}),!0})}}),define("js/index/entry",["jquery","hammer","handlebars","source-map","swiper","index"],function(e,t,o){e("js/index/search"),e("js/index/footer"),e("js/index/channel"),e("js/index/coupon")}),define("js/index/search",["jquery","hammer","handlebars","source-map"],function(e,t,o){function n(){var e=r(".search-associate"),t=r(".search-icon"),o=r(".search-items");h.on("input",function(){""===h.val()?(t.css("color","#b2b2b2"),p.addClass("hide"),e.html(""),o.show(),e.hide()):(t.css("color","#666"),p.removeClass("hide"),e.show()),r.ajax({url:"/index/search/fuzzyDatas",data:{keyword:h.val()},dataType:"json",success:function(t){var n,i="";if(t.length>0){for(n=0;n<t.length;n++)i+='<li><span class="keyword">'+t[n].keyword+'</span><span class="count">'+t[n].count+' items<i class="iconfont"></i></span></li>';e.html(i),o.hide()}else e.html("");e.find("li").on("touchend",function(){a(r(this).find(".keyword").html())})},error:function(){d.show("网络断开连接了~")}})})}function a(e){b.setHistoryValFun(e),document.location.href=y+"?query="+e}var i,s,r=e("jquery"),l=e("js/plugin/security"),d=e("js/plugin/tip"),c=e("hammer"),u=e("js/me/dialog"),h=r("#search-input input"),p=r("#search-input .clear-input"),f=r("#search-form"),m=r(".history"),g=r(".history-search"),v=r("#clear-history"),w=(r(".buriedpoint"),r("#search")),y=w.closest("form").attr("action"),b=e("js/index/write-search"),C=b.getRanToken(),j=b.getHistoryval();i=new c(v[0]),i.on("tap",function(){u.showDialog({dialogText:"您确定要删除您的最近搜索吗?",hasFooter:{leftBtnText:"取消",rightBtnText:"确定"}},function(){localStorage&&localStorage.removeItem(j),m.html(""),g.hide(),v.hide(),window.rePosFooter(),u.showDialog({dialogText:"删除成功",autoHide:!0,fast:!0})})}),r(".search-items .search-group").on("click","li",function(e){var t="";"A"===e.target.nodeName&&(t=r(e.target).html()),"LI"===e.target.nodeName&&(t=r(e.target).find("a").html()),a(t)}),n(),s=new c(p[0]),s.on("tap",function(){h.val("").trigger("input")}),w.on("touchend",function(){var e=f.find(".buriedpoint");return""===e.val()&&e.val(r("#default-terms").val()),b.setHistoryValFun(e.val()),l.hasDangerInput()?!1:(r(this).closest("form").submit(),!1)}),function(){var e,t,o,n="",a=1;if(localStorage&&(t=localStorage.getItem(j),t&&t.length>0)){for(t=t.split(C),o=t.length;o>0;o--)if(e=t[o-1],""!==e){if(a++>10)break;n+='<li><a href="javascript:void(0);">'+e+"</li>"}m.html(n),""!==n&&(v.removeClass("hide"),g.removeClass("hide")),window.rePosFooter()}}()}),define("js/plugin/security",["jquery"],function(e,t,o){function n(e){var t,o,n,s=a("input[type!=hidden], textarea"),r=/['"<>&\|]|--/g,l=s.length,d=void 0===e||"boolean"!=typeof e?!0:e;for(o=0;l>o;o++)if(t=s.eq(o).val(),r.test(t))return d?s.eq(o).val(t.replace(r," ")):(n=t.match(r).join(" "),i.show("不可以输入 "+n+" 哦!")),!d&&!0;return!1}var a=e("jquery"),i=e("js/plugin/tip");t.hasDangerInput=n}),define("js/me/dialog",["jquery","handlebars","source-map","hammer"],function(e,t,o){function n(){return void 0===i&&(i='<div id="dialog-wrapper" class="dialog-wrapper"><div class="dialog-box">{{# hasHeader}}{{/ hasHeader}}<div class="dialog-content">{{dialogText}}</div>{{# hasFooter}}<div class="dialog-footer">{{# leftBtnText}}<span class="dialog-left-btn tap-hightlight">{{.}}</span>{{/ leftBtnText}}{{# rightBtnText}}<span class="dialog-right-btn tap-hightlight">{{.}}</span>{{/ rightBtnText}}</div>{{/ hasFooter}}</div></div>',s=l.compile(i)),s}var a,i,s,r=e("jquery"),l=e("handlebars"),d=e("hammer");t.showDialog=function(e,t,o,i){var s,l,c,u=n(),h=u(e);r(".dialog-wrapper").remove(),r("body").append(r(h)),s=r(".dialog-box"),a=r(".dialog-wrapper"),c=new d(document.getElementById("dialog-wrapper")),e.fast?a.css({display:"block"}):a.fadeIn(),i&&(r(".dialog-wrapper .dialog-footer > span").css("width","100%"),r(".dialog-wrapper .dialog-content").css({"padding-left":"1.85rem","padding-right":"1.85rem"}),a.css("z-index","10")),s.css({top:"50%",marginTop:-(s.height()/2)}),e.autoHide&&(l=1e3,e.autoHide>1&&(l=e.autoHide),setTimeout(function(){a.fadeOut()},l)),a.on("touchmove",function(){return!1}),c.on("tap",function(e){r(e.target).hasClass("dialog-left-btn")?("function"==typeof o&&o(),a.fadeOut()):r(e.target).hasClass("dialog-right-btn")&&t(),e.preventDefault(),e.srcEvent.stopPropagation()})},t.hideDialog=function(){r(".dialog-wrapper").remove()}}),define("js/index/write-search",[],function(e,t,o){function n(){return r}function a(){return l}function i(e){e.on("submit",function(){var e=this.query.value;s(e)})}function s(e){var t;localStorage&&(t=localStorage.getItem(l),t=t?t.replace(new RegExp(e+r,"g"),""):"",""===t&&(e=r+e),t+=e+r,localStorage.setItem(l,t))}var r=",",l="historys1";t.getRanToken=n,t.getHistoryval=a,t.setHistoryValFun=s,t.bindWirteLocal=i}),define("js/index/footer",["jquery","hammer"],function(e,t,o){function n(e){var t=new RegExp("(^|&)"+e+"=([^&]*)(&|$)","i"),o=window.location.search.substr(1).match(t);return null!=o?window.unescape(o[2]):null}function a(){var e="http://www.yohoshow.com/about/index/yohobuyqr/",t=new Date;setTimeout(function(){var o=n("mkt_code");new Date-t<2e3&&(o&&(e+="?union_type="+o),window.location=e)},500)}var i,s=e("jquery"),r=e("hammer");e("js/common"),s("#float-layer-close").on("touchend",function(e){return s("#float-layer-app").hide(),window.setCookie("_float-layer-app","id490655927",{domain:".yohobuy.com"}),window.setCookie("_float-layer-app-close",1,{domain:".yohobuy.com",expires:1}),!1}),s("#float-layer-btn")&&s("#float-layer-btn")[0]&&(i=new r(s("#float-layer-btn")[0]),i.on("tap",function(e){a("bottom"),e.srcEvent.stopPropagation()}),"function"!=typeof window.cookie||window.cookie("_float-layer-app")?s("#float-layer-app").hide():s("#float-layer-app").show())}),define("js/index/channel",["jquery","hammer"],function(e,t,o){var n=e("jquery"),a=e("js/plugin/security"),i=n(".search-box"),s=n(".box"),r=n(".index-search"),l=n(".index-logo"),d=n(".index-channel a:not(#yohood)"),c=i.children('input[type="text"]'),u=s.children(".no-search"),h=i.children(".search-icon");e("js/common"),c.on("focus",function(){s.addClass("action"),l.addClass("action")}).on("input",function(){""===c.val()?h.addClass("empty"):h.removeClass("empty")}),u.on("touchend",function(){return s.removeClass("action"),l.removeClass("action"),c.blur(),!1}),i.children(".clear-text").on("touchstart",function(){c.val("").focus().trigger("input")}),i.children(".search-icon").on("touchstart",function(){return a.hasDangerInput()?!1:void r.submit()}),i.keyup(function(e){if(13===e.keyCode){if(a.hasDangerInput())return!1;r.submit()}}),n(".index-channel img").on("load error",function(){window.rePosFooter&&window.rePosFooter()}),d.on("touchstart",function(){d.css({background:"#000",color:"#fff",borderColor:"#fff"}),n(this).css({background:"rgba(255, 255, 255, 0.5)",color:"#000",borderColor:"#000"})}).on("touchend touchcancel",function(){n(this).css({background:"#000",color:"#fff",borderColor:"#fff"})})}),define("js/index/coupon",["jquery","swiper","index"],function(e,t,o){function n(e){var t=new RegExp("(^|&)"+e+"=([^&]*)(&|$)"),o=window.location.search.substr(1).match(t);return null!=o?o[2]:null}var a,i=e("jquery"),s=e("swiper"),r=i(".main-right-receive"),l=i(".floor-mask"),d=i(".floor-message"),c=i(".floor-tooltip"),u=e("js/plugin/tip");r.on("click",function(){var e=i(this),t="";n("app_version")&&(t+="&app_version="+n("app_version")),n("uid")&&(t+="&uid="+n("uid")),i.ajax({url:"//m.yohobuy.com/coupon/receiveCoupon?code="+n("code")+t,data:{couponID:e.parents(".coupon-floor").attr("coupon-id")},dataType:"json",success:function(t){var o=t.msg,a=t.status,s=t.url+"?code="+n("code");t.isApp===!0&&(s=t.url),t.noLogin===!0?(i("#intimacy-link").length<=0&&i("body").append("<a href='"+s+'\' style="display:none;" id="intimacy-link"><span class="intimacy-link"></span></a>'),i(".intimacy-link").click()):a?(e.hide(),e.next().show(),c.show(),setTimeout(function(){c.hide()},3e3)):(d.find(".coupon-message-content").text(o),l.show(),d.show())},error:function(){u.show("网络异常!")}})}),i(".coupon-floor a, .banner-top a").on("click",function(){return i(this).attr("href").length<=0||"#"===i(this).attr("href")?!1:void 0}),i(".banner-swiper").find("li").length>1&&(a=new s(".banner-swiper",{lazyLoading:!0,lazyLoadingInPrevNext:!0,loop:!0,autoplay:3e3,autoplayDisableOnInteraction:!1,paginationClickable:!0,slideElement:"li",pagination:".banner-top .pagination-inner"})),i(".coupon-message-op-rel").on("click",function(){location.reload()}),i("#noData").length>0&&location.href.indexOf("?openby:yohobuy=")<=0&&u.show("网络异常!"),l.on("click",function(){l.hide(),d.hide()})}),define("js/passport/entry",["jquery","handlebars","source-map","hammer"],function(e,t,o){e("js/passport/register/register"),e("js/passport/register/code"),e("js/passport/register/password"),e("js/passport/login/login"),e("js/passport/login/international"),e("js/passport/back/mobile"),e("js/passport/back/code"),e("js/passport/back/email"),e("js/passport/back/email-success"),e("js/passport/back/new-password"),e("js/passport/bind/bind"),e("js/passport/bind/code"),e("js/passport/bind/password"),e("js/passport/bind/relate")}),define("js/passport/register/register",["jquery"],function(e,t,o){var n=e("jquery"),a=n("#phone-num"),i=n("#country-select"),s=n("#area-code"),r=n("#btn-next"),l=e("js/passport/api"),d=e("js/plugin/tip"),c=n.trim,u=d.show,h=!1;l.selectCssHack(n("#country-select")),l.bindClearEvt(),a.bind("input",function(){""===c(a.val())?r.addClass("disable"):r.removeClass("disable")}),i.change(function(){s.text(i.val())}),r.on("touchstart",function(){var e=c(a.val()),t=i.val();if(!r.hasClass("disable"))return h?!1:void(l.phoneRegx[t].test(e)?(h=!0,n.ajax({url:"/passport/reg/verifymobile",type:"POST",data:{areaCode:t.replace("+",""),phoneNum:e},success:function(e){200===e.code?location.href=e.data:(u(e.message),h=!1)},error:function(e){u("出错了,请重试"),h=!1}})):u("手机号格式不正确,请重新输入"))})}),define("js/passport/api",["jquery"],function(e,t,o){function n(e){var t,o=r(".has-eye");e&&"open"===e.status?o.append('<div class="eye"></div>'):o.append('<div class="eye close"></div>'),t=o.children(".eye"),t.on("touchstart",function(e){var t=r(this),o=t.siblings(".pwd");e.preventDefault(),t.toggleClass("close"),t.hasClass("close")?o.attr("type","password"):o.attr("type","text"),o.focus()})}function a(){var e,t=r(".has-clear");t.append('<div class="clear-input"></div>'),e=t.children(".clear-input"),e.on("touchstart",function(t){var o=e.siblings(".input");o.val("").trigger("input").focus(),t.preventDefault()}),t.children(".input").bind("input",function(){var e=r(this),t=e.siblings(".clear-input"),o=l(e.val());""===o?t.hide():t.show()})}function i(e){return e.length>=6&&e.length<=20}function s(e){function t(){var t=e.find("option:selected").text().length;switch(t){case 2:e.outerWidth(90);break;case 3:e.outerWidth(110);break;default:e.outerWidth(130)}}var o=navigator.userAgent;o.match(/uc/i)&&o.match(/android/i)?e.change(function(){t()}):e.removeClass("in-android-uc")}var r=e("jquery"),l=r.trim,d=/^([a-zA-Z0-9]+[_|\_|\.|-]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.|-]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/,c={"+86":/^1[35847]{1}[0-9]{9}$/,"+852":/^[965]{1}[0-9]{7}$/,"+853":/^[0-9]{8}$/,"+886":/^[0-9]{10}$/,"+65":/^[98]{1}[0-9]{7}$/,"+60":/^1[1234679]{1}[0-9]{8}$/,"+1":/^[0-9]{10}$/,"+82":/^01[0-9]{9}$/,"+44":/^7[789][0-9]{8}$/,"+81":/^0[9|8|7][0-9]{9}$/,"+61":/^[0-9]{11}$/};o.exports={emailRegx:d,phoneRegx:c,bindEyesEvt:n,bindClearEvt:a,pwdValidate:i,selectCssHack:s}}),define("js/passport/register/code",["jquery"],function(e,t,o){e("js/passport/code")(!0)}),define("js/passport/code",["jquery"],function(e,t,o){var n=e("jquery");o.exports=function(t,o,a){function i(){n.ajax({url:o?"/passport/bind/bindMobile":"/passport/bind/relateMobile",type:"post",data:{areaCode:m.replace("+",""),phoneNum:f,openId:p,sourceType:h,nickname:u,password:"",code:w(l.val())},success:function(e){200===e.code?(v.show("登录成功"),setTimeout(function(){location.href=e.data.refer},2e3)):v.show(e.message)},error:function(e){v.show("登录失败,请重试!")}})}function s(){n.ajax({type:"POST",url:"/passport/"+b+"/verifycode",data:{phoneNum:f,areaCode:m,code:w(l.val()),token:n("#token").val()},success:function(e){200===e.code?location.href=e.data:y(e.message)}})}function r(){var e,t=59;e=setInterval(function(){0===t?(c.text("重新发送").removeClass("disable"),clearInterval(e)):c.text("重新发送 ("+t--+"秒)")},1e3)}var l=n("#captcha"),d=n("#btn-next"),c=n("#captcha-tip"),u=n("#nickname").val(),h=n("#sourceType").val(),p=n("#openId").val(),f=n("#phone-num").val(),m=n("#area-code").val().replace("+",""),g=e("js/passport/api"),v=e("js/plugin/tip"),w=n.trim,y=v.show,b=t?"reg":"back",C=parseInt(n("#isReg").val());g.bindClearEvt(),l.bind("input",function(){""!==w(l.val())?d.removeClass("disable"):d.addClass("disable")}),c.on("touchstart",function(){c.hasClass("disable")||n.ajax({type:"POST",url:o||a?"/passport/bind/sendBindMsg":"/passport/"+b+"/sendcode",data:{phoneNum:f,areaCode:m},success:function(e){200===e.code?(c.text("重发验证码 (60秒)").addClass("disable"),r()):y(e.message)}})}),d.on("touchstart",function(){d.hasClass("disable")||(o||a?C?i():location.href="/passport/bind/password?phoneNum="+f+"&areaCode="+m+"&openId="+p+"&sourceType="+h+"&nickname="+u+"&code="+w(l.val()):s())}),r()}}),define("js/passport/register/password",["jquery"],function(e,t,o){var n=e("jquery"),a=n("#pwd"),i=n("#btn-sure"),s=e("js/passport/api"),r=e("js/plugin/tip"),l=n.trim,d=r.show;s.bindEyesEvt({status:"open"}),a.bind("input",function(){""===l(a.val())?i.addClass("disable"):i.removeClass("disable")}),i.on("touchstart",function(){var e=l(a.val());i.hasClass("disable")||(s.pwdValidate(e)===!1?d("密码6-20位,请重新输入"):n.ajax({type:"POST",url:"/passport/reg/setpassword",data:{password:e,phoneNum:n("#phone-num").val(),areaCode:n("#area-code").val(),token:n("#token").val()},success:function(e){var t;200===e.code?(t=e.data,d("注册成功"),n.ajax({url:t.session,dataType:"jsonp"}),setTimeout(function(){location.href=t.href},1e3)):d(e.message)}}))})}),define("js/passport/login/login",["jquery"],function(e,t,o){function n(){h&&p?d.removeClass("disable"):d.addClass("disable")}function a(){c.show(),u.show()}function i(){c.hide(),u.hide()}var s=e("jquery"),r=s("#account"),l=s("#pwd"),d=s("#btn-login"),c=s("#retrive-pwd-mask"),u=s("#retrive-pwd-ways"),h=!1,p=!1,f=e("js/passport/api"),m=e("js/plugin/tip"),g=s.trim,v=m.show;f.bindEyesEvt(),f.bindClearEvt(),r.bind("input",function(){h=""!==g(r.val()),n()}),l.bind("input",function(){p=""!==g(l.val()),n()}),d.on("touchstart",function(){var e=g(r.val()),t=g(l.val());d.hasClass("disable")||(d.text("正在登录...").addClass("disable"),(/^[0-9]+$/.test(e)||f.emailRegx.test(e))&&f.pwdValidate(t)?s.ajax({type:"POST",url:"/passport/login/auth",data:{account:e,password:t},success:function(e){var t;200===e.code?(t=e.data,v("登录成功"),location.href=t.href):v(e.message)},error:function(){v("网络断开连接啦~")},complete:function(){d.text("登录").removeClass("disable")}}):(v("账号或密码有错误,请重新输入"),d.text("登录").removeClass("disable")))}),s("#forget-pwd").on("touchstart",function(){a()}),c.on("touchstart",function(){i()}),s("#cancel-retrive").on("touchstart",function(e){e.preventDefault(),i()}),r.trigger("input"),l.trigger("input")}),define("js/passport/login/international",["jquery"],function(e,t,o){function n(){c&&u?d.removeClass("disable"):d.addClass("disable")}var a=e("jquery"),i=a("#phone-num"),s=a("#country-select"),r=a("#area-code"),l=a("#pwd"),d=a("#btn-login"),c=!1,u=!1,h=e("js/passport/api"),p=e("js/plugin/tip"),f=a.trim,m=p.show;h.selectCssHack(s),h.bindEyesEvt(),h.bindClearEvt(),i.bind("input",function(){c=""!==f(i.val()),n()}),l.bind("input",function(){var e=f(l.val());u=""!==e,n()}),s.change(function(){r.text(s.val())}),d.on("touchstart",function(){var e=f(i.val()),t=s.val(),o=f(l.val());d.hasClass("disable")||(d.text("正在登录...").addClass("disable"),h.phoneRegx[t].test(e)&&h.pwdValidate(o)?a.ajax({type:"POST",url:"/passport/login/auth",data:{areaCode:t.replace("+",""),account:e,password:o},success:function(e){var t,o;200===e.code?(t=e.data,m("登录成功"),a.ajax({url:t.session,dataType:"jsonp",success:function(){clearTimeout(o),setTimeout(function(){location.href=t.href},1e3)}}),o=setTimeout(function(){location.href=t.href},3e3),m("登录成功")):m(e.message)},error:function(){m("网络断开连接啦~")},complete:function(){d.text("登录").removeClass("disable")}}):(m("账号或密码有错误,请重新输入"),d.text("登录").removeClass("disable")))}),i.trigger("input"),l.trigger("input")}),define("js/passport/back/mobile",["jquery"],function(e,t,o){var n=e("jquery"),a=n("#phone-num"),i=n("#country-select"),s=n("#area-code"),r=n("#btn-next"),l=e("js/passport/api"),d=e("js/plugin/tip"),c=n.trim,u=d.show; +l.selectCssHack(n("#country-select")),l.bindClearEvt(),a.bind("input",function(){""===c(a.val())?r.addClass("disable"):r.removeClass("disable")}),i.change(function(){s.text(i.val())}),r.on("touchstart",function(){var e=c(a.val()),t=i.val();r.hasClass("disable")||(l.phoneRegx[t].test(e)?n.ajax({url:"/passport/back/sendcode",type:"POST",data:{areaCode:t.replace("+",""),phoneNum:e},success:function(e){200===e.code?location.href=e.data:u(e.message)}}):u("手机号格式不正确,请重新输入"))})}),define("js/passport/back/code",["jquery"],function(e,t,o){e("js/passport/code")(!1)}),define("js/passport/back/email",["jquery"],function(e,t,o){var n=e("jquery"),a=n("#email"),i=n("#btn-sure"),s=e("js/passport/api"),r=e("js/plugin/tip"),l=n.trim,d=r.show;s.bindClearEvt(),a.bind("input",function(){""===l(a.val())?i.addClass("disable"):i.removeClass("disable")}),i.on("touchstart",function(){var e=l(a.val());i.hasClass("disable")||(s.emailRegx.test(e)?n.ajax({url:"/passport/back/sendemail",type:"POST",data:{email:e},success:function(e){200===e.code?location.href=e.data:d(e.message)}}):d("邮箱格式不正确,请重新输入"))})}),define("js/passport/back/email-success",["jquery"],function(e,t,o){var n=e("jquery"),a=n("#resend"),i=e("js/plugin/tip"),s=i.show;a.on("touchstart",function(e){e.preventDefault(),n.ajax({url:a.data("url"),type:"GET",success:function(e){s(e.message)}})})}),define("js/passport/back/new-password",["jquery"],function(e,t,o){var n=e("jquery"),a=n("#pwd"),i=n("#btn-ok"),s=e("js/passport/api"),r=e("js/plugin/tip"),l=n.trim,d=r.show,c=n("#phone-num");s.bindEyesEvt({status:"open"}),a.bind("input",function(){""===l(a.val())?i.addClass("disable"):i.removeClass("disable")}),i.on("touchstart",function(){var e,t,o=l(a.val()),r=!0;i.hasClass("disable")||(e={password:o},0===c.length&&(r=!1),r?(n.extend(e,{phoneNum:c.val(),areaCode:n("#areaCode").val(),token:n("#token").val()}),t="/passport/back/passwordByMobile"):(n.extend(e,{code:n("#email-code").val()}),t="/passport/back/passwordByEmail"),s.pwdValidate(o)?n.ajax({type:"POST",url:t,data:e,success:function(e){200===e.code?(d("密码修改成功"),setTimeout(function(){location.href=e.data},1e3)):d(e.message)}}):d("密码6-20位,请重新输入"))})}),define("js/passport/bind/bind",["jquery","handlebars","source-map","hammer"],function(e,t,o){function n(e,t,o){return v?!1:(v=!0,u.addClass("disable").html("绑定中..."),void a.ajax({type:"POST",url:"/passport/bind/sendBindMsg",data:{phoneNum:t,areaCode:o.replace("+","")},success:function(t){200===t.code?(window._yas&&window._yas.sendCustomInfo&&window._yas.sendCustomInfo({loginRefer:c.val()},!1),location.href=e):p.show(t.message)},error:function(){p.show("出错了,请重试!"),u.removeClass("disable").html("下一步"),v=!1}}))}var a=e("jquery"),i=a("#phone-num"),s=a("#country-select"),r=a("#area-code"),l=a("#openId"),d=a("#nickname"),c=a("#sourceType"),u=a("#btn-next"),h=e("js/passport/api"),p=e("js/plugin/tip"),f=e("js/me/dialog"),m=a.trim,g=p.show,v=!1;e("js/common"),h.selectCssHack(a("#country-select")),h.bindClearEvt(),i.bind("input",function(){""===m(i.val())?u.addClass("disable"):u.removeClass("disable")}),s.change(function(){r.text(s.val())}),u.on("touchstart",function(){var e=m(i.val()),t=m(l.val()),o=m(d.val()),r=m(c.val()),p=s.val();u.hasClass("disable")||(h.phoneRegx[p].test(e)?a.ajax({url:"/passport/bind/bindCheck",type:"POST",data:{areaCode:p.replace("+",""),phoneNum:e,openId:t,sourceType:r,nickname:o},success:function(t){200===t.code?1===t.data.isReg?f.showDialog({dialogText:"该手机号已注册过有货\n"+e+",确定绑定吗?",hasFooter:{leftBtnText:"更换号码",rightBtnText:"继续绑定"}},function(){n(t.data.next,e,p)}):3===t.data.isReg?f.showDialog({dialogText:"该手机号已注册过有货\n"+e+",是否进行关联?",hasFooter:{leftBtnText:"更换号码",rightBtnText:"确定"}},function(){n(t.data.next,e,p)}):n(t.data.next,e,p):g(t.message)}}):g("手机号格式不正确,请重新输入"))}),/MicroMessenger/i.test(navigator.userAgent)&&a.queryString().refer&&a(".go-back").attr("href",decodeURIComponent(a.queryString().refer))}),define("js/passport/bind/code",["jquery"],function(e,t,o){e("js/passport/code")(!0,!0)}),define("js/passport/bind/password",["jquery"],function(e,t,o){function n(e){a.ajax({url:"/passport/bind/bindMobile",type:"post",data:{areaCode:m.replace("+",""),phoneNum:f,openId:p,sourceType:h,nickname:u,password:e,code:g},success:function(e){200===e.code?(l.show("登录成功"),setTimeout(function(){location.href=e.data.refer},2e3)):l.show(e.message)},error:function(e){l.show("登录失败,请重试!")}})}var a=e("jquery"),i=a("#pwd"),s=a("#btn-sure"),r=e("js/passport/api"),l=e("js/plugin/tip"),d=a.trim,c=l.show,u=a("#nickname").val(),h=a("#sourceType").val(),p=a("#openId").val(),f=a("#phone-num").val(),m=a("#area-code").val().replace("+",""),g=a("#code").val();r.bindEyesEvt({status:"open"}),i.bind("input",function(){""===d(i.val())?s.addClass("disable"):s.removeClass("disable")}),s.on("touchstart",function(){var e=d(i.val());s.hasClass("disable")||(r.pwdValidate(e)===!1?c("密码6-20位,请重新输入"):n(e))})}),define("js/passport/bind/relate",["jquery"],function(e,t,o){e("js/passport/code")(!0,!1,!0)}),define("js/product/entry",["jquery","swiper","mlellipsis","lazyload","iscroll-probe","hammer","handlebars","source-map","index"],function(e,t,o){e("js/product/newsale/newarrival"),e("js/product/newsale/discount"),e("js/product/list"),e("js/product/detail/detail"),e("js/product/detail/consultform"),e("js/product/newsale/hot-rank"),e("js/product/product-category"),e("js/product/shop")}),define("js/product/newsale/newarrival",["jquery","swiper","mlellipsis","lazyload","iscroll-probe","hammer","index"],function(e,t,o){function n(e){var t,o,n,a,i,u,h={};if(!d){if(e){for(o in E)E.hasOwnProperty(o)&&(E[o].reload=!0);switch(q.children(".active").removeClass("active"),I.addClass("active"),e.type){case"gender":t={gender:e.id};break;case"brand":t={brand:e.id};break;case"sort":t={sort:e.id};break;case"color":t={color:e.id};break;case"ageLevel":t={age_level:e.id};break;case"size":t={size:e.id};break;case"price":t={price:e.id};break;case"discount":t={discount:e.id};break;case"limit":t={limit:e.id};break;case"channel":t={channel:e.id};break;case"p_d":t={p_d:e.id}}c.extend(C,t)}if(I.hasClass("today")?(a="today",i=1):I.hasClass("week")?(a="week",i=2):I.hasClass("sale")&&(a="sale",i=3),n=E[a],u=n.page+1,n.reload)u=1;else if(n.end)return;c.extend(h,C,{dayLimit:i,page:u}),d=!0,g.showLoadingMask(),c.ajax({type:"GET",url:"/product/newsale/selectNewSale",data:h,success:function(e){var t,o;switch(a){case"today":t=s;break;case"week":t=r;break;case"sale":t=l}" "===e?(n.end=!0,n.reload&&t.html(b)):n.reload?(t.html(e),p(t.find(".lazy"))):(o=t.find(".good-info").length,t.append(e),p(t.find(".good-info:gt("+(o-1)+") .lazy"))),n.reload=!1,n.page=u,d=!1,g.hideLoadingMask(),window.rePosFooter(),c(".good-detail-text .name").each(function(){var e=c(this),t=e.find("a");t[0].mlellipsis(2)})},error:function(){f.show("网络断开连接了~"),d=!1,g.hideLoadingMask()}})}}function a(){c(window).scrollTop()+y>c(document).height()-.25*v.height()-50&&void 0!==I&&n()}var i,s,r,l,d,c=e("jquery"),u=e("swiper"),h=e("mlellipsis"),p=e("lazyload"),f=e("js/plugin/tip"),m=e("js/plugin/filter"),g=e("js/plugin/loading"),v=c("#goods-container"),w=v.children(),s=c(w.get(0)),r=c(w.get(1)).addClass("hide"),l=c(w.get(2)).addClass("hide"),y=c(window).height(),b='<p class="no-result">未找到相关搜索结果</p>',C=e("js/product/query-param"),j=c.extend({},C),x=new Date,k=x.getMonth()+1,T=x.getDate(),q=c("#list-nav"),E={today:{reload:!0,page:0,end:!1},week:{reload:!0,page:0,end:!1},sale:{reload:!0,page:0,end:!1}},I=q.find(".active");e("js/product/suspend-cart"),h.init(),c("#today a").text(k+"月"+T+"号"),c(".swiper-container .swiper-slide").length>1&&(i=new u(".swiper-container",{lazyLoading:!0,lazyLoadingInPrevNext:!0,loop:!0,autoplay:3e3,autoplayDisableOnInteraction:!0,paginationClickable:!0,pagination:".banner-top .pagination-inner"})),c.ajax({type:"GET",url:"/product/newsale/filter",data:C,success:function(e){v.append(e),m.initFilter({fCbFn:n,hCbFn:function(){I.addClass("active"),I.siblings(".filter").removeClass("active")}})}}),p(c(".lazy")),q.bind("contextmenu",function(e){return!1}),q.on("touchend touchcancel",function(e){var t,o,a,i=c(e.target).closest("li");if(e.preventDefault(),i.hasClass("filter"))i.hasClass("active")?(m.hideFilter(),I.addClass("active"),i.removeClass("active")):(I=i.siblings(".active"),I.removeClass("active"),i.addClass("active"),m.showFilter());else{if(i.hasClass("today")?o="today":i.hasClass("week")?o="week":i.hasClass("sale")&&(o="sale"),t=E[o],!i.hasClass("active")){if(a=i.siblings(".active"),I=i,a.hasClass("filter"))m.hideFilter();else{switch(v.children(".container:not(.hide)").addClass("hide"),o){case"today":s.removeClass("hide");break;case"week":r.removeClass("hide");break;case"sale":l.removeClass("hide")}m.resetFilter(),C=c.extend({},j)}a.removeClass("active"),i.addClass("active")}t.reload&&n()}e.stopPropagation()}),c(window).scroll(function(){window.requestAnimationFrame(a)}),n(),q.on("touchstart","li",function(e){c(this).addClass("bytouch")}).on("touchend touchcancel",function(){q.find("li").removeClass("bytouch")})}),define("js/plugin/filter",["jquery","iscroll-probe","hammer"],function(e,t,o){function n(){p.addClass("hide")}function a(){p.removeClass("hide")}function i(){var e=h(".filter-body .classify");e.on("touchstart",".shower",function(){var t=h(this).attr("data-bp-id")||"";e.removeClass("highlight"),h(this).addClass("highlight"),h(document).trigger("shouldSendBpData",[t])}).on("touchend touchcancel",".shower",function(){h(this).removeClass("highlight")})}function s(){var e=h(".filter-body .sub-item");e.on("touchstart",function(){e.removeClass("highlight"),h(this).addClass("highlight")}).on("touchend touchcancel",function(){h(this).removeClass("highlight")})}function r(e){e.hasClass("active")||(e.siblings(".active").removeClass("active"),e.addClass("active"))}function l(e){var t,o,n=e.closest(".sub-classify"),a=n.siblings(".shower");return e.hasClass("chosed")?n:(n.children(".chosed").removeClass("chosed"),e.addClass("chosed"),t=h.trim(e.html()),o=h.trim(a.html()),a.html(o.substring(0,o.indexOf("</span>")+7)+t.substring(0,t.indexOf("<i"))),0===e.index()?a.addClass("default"):a.removeClass("default"),n)}function d(e){var t,o=e.data("id");t=l(e),f&&f({type:t.data("type"),id:o}),n()}function c(e){var t;f=e.fCbFn,m=e.hCbFn,g=e.missStatus,i(),s(),p=h(".filter-mask"),t=new Hammer(p[0]),t.on("tap",function(e){var t,o=h(e.target);o.closest(".filter-body").length>0?(t=o.closest(".sub-item"),t.length>0?(t=o.closest("li"),d(t)):(t=o.closest(".classify-item"),e.srcEvent.stopPropagation(),r(t))):(n(),m&&m())}),e.isScroll&&h("ul.sub-classify").each(function(){h(this).wrap("<div class='sub-classify-farther' data-type='"+h(this).data("type")+"'></div>");var e=0,t=0,o=h(this);o.on("touchstart",function(t){e=t.originalEvent.touches[0].pageY}),o.on("touchmove",function(o){var n=o.originalEvent.touches[0].pageY,a=n-e,i=h(this)[0].scrollHeight,s=i-h(this).parent().height();t+=a,-1*s>t&&(t=-1*s),t>0&&(t=0);var r="translate3d(0,"+t+"px,0)";h(this).css({"-moz-transform":r,"-ms-transform":r,transform:r,"-webkit-transform":r}),e=n}),o.on("touchend",function(e){})})}function u(){"undefined"!=typeof p&&(h(".sub-classify").each(function(){l(h(this).children(":first-child"))}),r(h(".classify > :first-child")))}var h=e("jquery");e("iscroll-probe");Hammer=e("hammer");var p,f,m,g;t.initFilter=c,t.showFilter=a,t.hideFilter=n,t.resetFilter=u}),define("js/product/query-param",["jquery"],function(e,t,o){var n=e("jquery"),a={};n(".query-param").each(function(){var e=n(this);a[e.data("attr")]=e.val()}),o.exports=a}),define("js/product/suspend-cart",["jquery"],function(e,t,o){var n=e("jquery"),a=n("#suspend-cart");n.ajax({type:"GET",url:"/cart/index/count",success:function(e){var t;200===e.code&&(t=e.data.cart_goods_count,t>99&&(t="99+"),0===t&&n(".cart-count").remove(),a.find(".cart-count").html(t).removeClass("hide"))}})}),define("js/product/newsale/discount",["jquery","swiper","mlellipsis","lazyload","iscroll-probe","hammer","index"],function(e,t,o){function n(e){var t,o,n,a,i,l={};if(!s){if(e){for(o in x)x.hasOwnProperty(o)&&(x[o].reload=!0);switch(j.children(".active").removeClass("active"),k.addClass("active"),e.type){case"gender":t={gender:e.id};break;case"brand":t={brand:e.id};break;case"ageLevel":t={age_level:e.id};break;case"sort":t={sort:e.id};break;case"color":t={color:e.id};break;case"size":t={size:e.id};break;case"price":t={price:e.id};break;case"discount":t={discount:e.id}}r.extend(C,t)}if(k.hasClass("new")?a="newest":k.hasClass("price")?a="price":k.hasClass("discount")&&(a="discount"),n=x[a],i=n.page+1,n.reload)i=1;else if(n.end)return;r.extend(l,C,{type:a,order:n.order,page:i}),s=!0,p.showLoadingMask(),r.ajax({type:"GET",url:"/product/newsale/selectNewSale",data:l,success:function(e){var t,o;switch(a){case"newest":t=g;break;case"price":t=v;break;case"discount":t=w}" "===e?(n.end=!0,n.reload&&t.html(b)):n.reload?(t.html(e),c(t.find(".lazy"))):(o=t.find(".good-info").length,t.append(e),c(t.find(".good-info:gt("+(o-1)+") .lazy"))),n.reload=!1,n.page=i,s=!1,p.hideLoadingMask(),window.rePosFooter(),r(".good-detail-text .name").each(function(){var e=r(this),t=e.find("a");t[0].mlellipsis(2)})},error:function(){u.show("网络断开连接了~"),s=!1,p.hideLoadingMask()}})}}function a(){r(window).scrollTop()+y>r(document).height()-.25*f.height()-50&&void 0!==k&&n()}var i,s,r=e("jquery"),l=e("swiper"),d=e("mlellipsis"),c=e("lazyload"),u=e("js/plugin/tip"),h=e("js/plugin/filter"),p=e("js/plugin/loading"),f=r("#goods-container"),m=f.children(),g=r(m.get(0)),v=r(m.get(1)),w=r(m.get(2)),y=r(window).height(),b='<p class="no-result">未找到相关搜索结果</p>',C=e("js/product/query-param"),j=r("#list-nav"),x={newest:{order:1,reload:!0,page:0,end:!1},price:{order:1,reload:!0,page:0,end:!1},discount:{order:1,reload:!0,page:0,end:!1}},k=j.find(".active");e("js/product/suspend-cart"),d.init(),r(".swiper-container .swiper-slide").length>1&&(i=new l(".swiper-container",{lazyLoading:!0,lazyLoadingInPrevNext:!0,loop:!0,autoplay:3e3,autoplayDisableOnInteraction:!0,paginationClickable:!0,pagination:".banner-top .pagination-inner"})),r.ajax({type:"GET",url:"/product/newsale/filter",data:C,success:function(e){f.append(e),h.initFilter({fCbFn:n,hCbFn:function(){k.addClass("active"),k.siblings(".filter").removeClass("active")},missStatus:!0})}}),c(r(".lazy")),j.bind("contextmenu",function(e){return!1}),j.on("touchend touchcancel",function(e){var t,o,a,i=r(e.target).closest("li");if(e.preventDefault(),"undefined"!=typeof i&&0!==i.length){if(i.hasClass("filter"))i.hasClass("active")?(h.hideFilter(),k.addClass("active"),i.removeClass("active")):(k=i.siblings(".active"),k.removeClass("active"),i.addClass("active"),h.showFilter());else{if(i.hasClass("new")?o="newest":i.hasClass("price")?o="price":i.hasClass("discount")&&(o="discount"),t=x[o],i.hasClass("active")){if(i.hasClass("new"))return;(i.hasClass("price")||i.hasClass("discount"))&&(i.find(".icon > .iconfont").toggleClass("cur"),k=i,t.reload=!0,t.order=0===t.order?1:0)}else{if(a=i.siblings(".active"),k=i,a.hasClass("filter"))h.hideFilter();else switch(f.children(".container:not(.hide)").addClass("hide"),o){case"newest":g.removeClass("hide");break;case"price":v.removeClass("hide");break;case"discount":w.removeClass("hide")}a.removeClass("active"),i.addClass("active")}t.reload&&n()}e.stopPropagation()}}),r(window).scroll(function(){window.requestAnimationFrame(a)}),n(),j.on("touchstart","li",function(e){r(this).addClass("bytouch")}).on("touchend touchcancel",function(){j.find("li").removeClass("bytouch")})}),define("js/product/list",["jquery","hammer","mlellipsis","lazyload","iscroll-probe"],function(e,t,o){function n(){var e=g(".search-associate"),t=g(".search-icon"),o=g(".search-items");D.on("input",function(){""===D.val()?(t.css("color","#b2b2b2"),L.addClass("hide"),e.html(""),o.show(),e.hide()):(t.css("color","#666"),L.removeClass("hide"),e.show()),g.ajax({url:"/index/search/fuzzyDatas",data:{keyword:D.val()},dataType:"json",success:function(t){var n,a="";if(t.length>0){for(n=0;n<t.length;n++)a+='<li><span class="keyword">'+t[n].keyword+'</span><span class="count">'+t[n].count+' items<i class="iconfont"></i></span></li>';e.html(a),o.hide()}else e.html("");e.find("li").on("touchend",function(){z.val(g(this).find(".keyword").html()),P.closest("form").submit()})},error:function(){k.show("网络断开连接了~")}})})}function a(e){var t=new RegExp("(^|&)"+e+"=([^&]*)(&|$)","i"),o=window.location.search.substr(1).match(t);return null!=o?window.unescape(o[2]):null}function i(e){var t,o,n,a,i,s,p,f,m={};if(!h){if(e){for(o in O)O.hasOwnProperty(o)&&(O[o].reload=!0);switch(F.children(".active").removeClass("active"),N.addClass("active"),e.type){case"shop_id":t={shop_id:e.id};break;case"gender":t={gender:e.id};break;case"brand":t={brand:e.id};break;case"sort":t={sort:e.id};break;case"color":t={color:e.id};break;case"ageLevel":t={age_level:e.id};break;case"size":t={size:e.id};break;case"price":t={price:e.id};break;case"discount":t={discount:e.id};break;case"outlets":t={outlets:e.id}}g.extend(M,t)}if(N.hasClass("new")?a="newest":N.hasClass("price")?a="price":N.hasClass("discount")&&(a="discount"),n=O[a],i=n.page+1,n.reload)i=1;else if(n.end)return;f={type:a,order:n.order,page:i},r&&(f.shop_id=r),age_level&&(f.age_level=age_level),l&&(f.sort=l),d&&(f.brand=d),c&&(f.outlets=c),u&&(f.app_type=u),g.extend(m,M,f),h=!0,T.showLoadingMask(),g.ajax({type:"GET",url:location.protocol+"//m.yohobuy.com/index/search/search",data:m,success:function(e){var t,o,r='<p class="no-result">未找到相关搜索结果</p>';switch(a){case"newest":o=E;break;case"price":o=I;break;case"discount":o=_}if(" "===e?(n.end=!0,n.reload&&o.html(r)):n.reload?(o.html(e),y(o.find(".lazy"))):(t=o.find(".good-info").length,o.append(e),y(o.find(".good-info:gt("+(t-1)+") .lazy"))),n.reload=!1,n.page=i,h=!1,T.hideLoadingMask(),window.rePosFooter(),g(".good-detail-text .name").each(function(){s=g(this),p=s.find("a"),p[0].mlellipsis(2)}),window._yas)switch(a){case"newest":window._yas(1*new Date,"1.0.16","yohobuy_m",window._ozuid,"",g(".new-goods .good-info .good-detail-img .good-thumb"));break;case"price":window._yas(1*new Date,"1.0.16","yohobuy_m",window._ozuid,"",g(".price-goods .good-info .good-detail-img .good-thumb"));break;case"discount":window._yas(1*new Date,"1.0.16","yohobuy_m",window._ozuid,"",g(".discount-goods .good-info .good-detail-img .good-thumb"))}}})}}function s(){g(window).scrollTop()+S>g(document).height()-.25*q.height()&&i()}var r,l,d,c,u,h,p,f,m,g=e("jquery"),v=e("hammer"),w=e("mlellipsis"),y=e("lazyload"),b=g("#brand-header"),C=g("#intro-box"),j=e("js/plugin/filter"),x=e("js/index/write-search"),k=e("js/plugin/tip"),T=e("js/plugin/loading"),q=g("#goods-container"),E=q.children(".new-goods"),I=q.children(".price-goods"),_=q.children(".discount-goods"),S=g(window).height(),D=g("#search-input input"),L=g("#search-input .clear-input"),z=g(".buriedpoint"),P=g("#search"),M=e("js/product/query-param"),F=g("#list-nav"),O={newest:{order:1,reload:!0,page:0,end:!1},price:{order:1,reload:!0,page:0,end:!1},discount:{order:1,reload:!0,page:0,end:!1}},N=F.find(".active");w.init(),n(),L.on("touchend",function(){D.val("").trigger("input")}),P.on("touchend",function(){return g(this).closest("form").submit(),!1}),r=a("shop_id"),l=a("sort"),c=a("outlets"),age_level=a("ageLevel"),u=a("app_type"),e("js/product/suspend-cart"),1===b.data("isbaseshop")&&Object.assign(M,{shop_id:b.data("id")}),g.ajax({type:"GET",url:location.protocol+"//m.yohobuy.com/search/filter",data:M,success:function(e){q.append(e),j.initFilter({fCbFn:i,hCbFn:function(){N.addClass("active"),N.siblings(".filter").removeClass("active")}})}}),y(g(".lazy")),x.bindWirteLocal(g("#search-form")),F.bind("contextmenu",function(e){return!1}),F.on("touchend touchcancel",function(e){var t,o,n,a=g(e.target).closest("li"),s=g(this).find(".buriedpoint").attr("data-bp-id")||"";if(a.hasClass("filter"))a.hasClass("active")?(j.hideFilter(),N.addClass("active"),a.removeClass("active")):(N=a.siblings(".active"),N.removeClass("active"),a.addClass("active"),j.showFilter());else{if(a.hasClass("new")?o="newest":a.hasClass("price")?o="price":a.hasClass("discount")&&(o="discount"),t=O[o],a.hasClass("active")){if(a.hasClass("new"))return;(a.hasClass("price")||a.hasClass("discount"))&&(a.find(".icon > .iconfont").toggleClass("cur"),N=a,t.reload=!0,t.order=0===t.order?1:0)}else{if(n=a.siblings(".active"),N=a,n.hasClass("filter"))j.hideFilter();else switch(q.children(".container:not(.hide)").addClass("hide"),o){case"newest":E.removeClass("hide");break;case"price":I.removeClass("hide");break;case"discount":_.removeClass("hide")}n.removeClass("active"),a.addClass("active")}t.reload&&(g(document).trigger("shouldSendBpData",[s]),i())}}),g(window).scroll(function(){window.requestAnimationFrame(s)}),b.length>0&&(p=new v(b.children(".btn-intro")[0]),p.on("tap",function(){C.removeClass("hide"),g("body").addClass("overflow-hidden")}),f=new v(document.getElementById("intro-box")),f.on("tap",function(e){var t=g(e.target);e.srcEvent.preventDefault(),(0===t.closest("#brand-intro").length||t.hasClass("close-intro"))&&(C.addClass("hide"),g("body").removeClass("overflow-hidden"))}),m=new v(b.children(".btn-col")[0]),m.on("tap",function(e){var t=g(e.target).closest(".btn-col"),o=b.data("id"),n=b.data("isbaseshop"),a="",i={};if(n){var s=g('input[name="app_version"]').val();t.hasClass("coled")?(i={shop_id:o,app_version:s,opt:"cancel"},a="/product/index/cancelShopFav"):(i={shop_id:o,app_version:s,opt:"ok"},a="/product/index/shopFav")}else a="/product/opt/favoriteBrand",i=t.hasClass("coled")?{id:o,opt:"cancel"}:{id:o,opt:"ok"};g.ajax({type:"GET",url:location.protocol+"//m.yohobuy.com"+a,data:i,xhrFields:{withCredentials:!0},success:function(e){200===e.code?(t.toggleClass("coled"),"ok"===i.opt?k.show("添加收藏成功"):k.show("取消收藏成功")):401===e.code?(url=e.url,g("#jump-login").length<=0&&g("body").append("<a href='"+url+'\'><span id="jump-login"><span></a>'),g("#jump-login").click()):k.show(e.message)},error:function(){k.show("网络断开连接了~")}})})),i(),F.on("touchstart","li",function(){F.find("li").removeClass("bytouch"),g(this).addClass("bytouch")}).on("touchend touchcancel","li",function(){F.find("li").removeClass("bytouch")})}),define("js/product/detail/detail",["jquery","swiper","hammer","lazyload","handlebars","source-map","index"],function(e,t,o){function n(){var e=i(".cart-bar"),t=setInterval(function(){e?(window.reMarginFooter(".cart-bar"),clearInterval(t)):e=i(".cart-bar")},200)}var a,i=e("jquery"),s=e("swiper"),r=e("hammer"),l=e("lazyload"),d=i(".goodsDiscount .discount-folder"),c=i(".goodsDiscount .first-item span"),u=document.getElementById("goodsDiscount"),h=u&&new r(u),p=i(u).find(".first-item"),f=i(".cart-bar"),m=i('input[name="limitCodeUrl"]').val(),g=e("js/me/dialog");n(),e("js/product/detail/like"),l(i("img.lazy")),i("#goodsDiscount h1").length<1&&i(".dropdown").remove(),a=new s(".banner-swiper",{lazyLoading:!0,lazyLoadingInPrevNext:!0,paginationClickable:!0,pagination:".banner-top .pagination-inner",nextButton:".my-swiper-button-next",prevButton:".my-swiper-button-prev",spaceBetween:3}),0===d.children().length&&(d.css("display","none"),c.html("")),h&&d.children().length>0&&h.on("tap",function(e){d.is(":hidden")?(p.removeClass("short-text"),c.removeClass("icon-down").addClass("icon-up").html(""),d.slideDown()):(p.addClass("short-text"),c.removeClass("icon-up").addClass("icon-down").html(""),d.slideUp())}),i("#limit-sale").on("touchend",function(e){var t,o,n=i("#loginUrl").val();e.stopPropagation(),n?window.location=n:(g.showDialog({dialogText:"进入有货APP,获取限购码",hasFooter:{rightBtnText:"打开Yoho!Buy有货APP"}},function(){o=document.createElement("iframe"),o.src=m,o.style.display="none",document.body.appendChild(o),window.location.href=m,t=Date.now(),window.setTimeout(function(){document.body.removeChild(o),Date.now()-t<3200&&(window.location.href="http://a.app.qq.com/o/simple.jsp?pkgname=com.yoho")},3e3)},void 0,!0),i(".dialog-wrapper").off("touchstart").on("touchstart",function(e){e.stopPropagation(),i(e.target).hasClass("dialog-wrapper")&&g.hideDialog()}))}),e("js/product/detail/desc"),e("js/product/detail/comments-consults"),e("js/product/recommend-for-you-product-desc"),i.ajax({type:"GET",url:"/cart/index/count",success:function(e){var t;if(200===e.code){if(t=e.data.cart_goods_count||0,0===t)return!1;t>99&&(t="99+"),f.find(".num-tag").html(t).removeClass("hide")}}}),i(".good-detail-page").length>0&&i("#yoho-footer").css("border-top","1px solid #e0e0e0")}),define("js/product/detail/like",["jquery"],function(e,t,o){function n(){if(!window.getUid()){var e=window.location.href.split("?");return window.location.href="//m.yohobuy.com/signin.html?refer="+e[0]+"?product_type=ticket",!1}return!0}function a(){var e=i("#showPannel").val();e&&r.show()}var i=e("jquery"),s=e("js/plugin/tip"),r=e("js/cart/chose-panel"),l=i("#productId").val(),d=i("#productSkn").val(),c=i("#limitProductCode").val(),u=i("#limitNum").val()||0;i("#likeBtn").on("touchstart",function(){var e,t,o=i(this);return o.hasClass("liked")?(e="cancel",t=0):(e="ok",t=1),i.ajax({type:"POST",url:"/product/opt/favoriteProduct",data:{id:l,opt:e},success:function(t){200===t.code?(o.toggleClass("liked"),"cancel"===e?s.show("取消收藏成功"):"ok"===e&&s.show("收藏成功")):400===t.code?location.href=t.data:s.show(t.message)},error:function(){s.show("网络断开连接了~")}}),window._yas&&window._yas.sendCustomInfo({pd:l,fa:t},!0),!1}),i("#addtoCart").on("touchstart",function(){return u&&!n()?!1:(i(".cart-bar").hide(),c&&r.setLimitGoodModeWithSknId(c,d),r.show(),window._yas&&window._yas.sendCustomInfo({pd:l,by:1},!0),!1)}),a(),i("#buyLimit").on("touchstart",function(){return s.show("打开APP可抢购该商品哦~"),!1})}),define("js/cart/chose-panel",["jquery"],function(e,t,o){function n(){var e=F(".chose-panel").find(".num .btn>.iconfont");e.hasClass("disabled")?null:e.addClass("disabled"),H.off("touchstart",".btn-minus"),H.off("touchstart",".btn-plus")}function a(){T=!1,q=!1,E=null,z=F.queryString(),y=F(".chose-panel").find(".thumb"),P=F(".chose-panel .main .chose-items"),L=F(".chose-items"),I=F(".size-list ul"),S=F(".color-list ul"),b=F("#left-num"),M=F(".cart-bar"),x=0,k=0,W=0}function i(e,t){F("#chose-btn-sure").html("确认"),W=1,$=e,G=t}function s(e,t){n(),F("#chose-btn-sure").html("立即购买"),J=e,Y=t}function r(){var e=F(".chose-panel"),t=F("#promotionId");e&&e.remove(),t&&t.remove()}function l(){return!U||d()?T||q?T?q?!0:(O.show("请选择尺码~"),!1):(O.show("请选择颜色~"),!1):(O.show("请选择颜色和尺码~"),!1):void 0}function d(){return T||q?T?q||V?!0:(O.show("请选择区域~"),!1):(O.show("请选择日期~"),!1):(V?O.show("请选择日期~"):O.show("请选择日期和区域~"),!1)}function c(e,t){e&&(B.html(e),""!==F("#promotionId").val()&&n(),a()),F(".chose-panel").show(),v=F("#good-num"),D=t,A.disableScroll(P)}function u(){F(".chose-panel").hide(),A.enableScroll(P),M.length>0&&M.show()}function h(){w=L.find(".chosed"),2===w.closest(".zero-stock").length?F("#chose-btn-sure").css("background-color","#c0c0c0").html("已售罄"):J||U?F("#chose-btn-sure").css("background-color","#eb0313").html("立即购买"):F("#chose-btn-sure").css("background-color","#eb0313").html(W?"确认":"加入购物车")}function p(e){return U?(L.find(".num .left-num").html("限购"+U+"件"),void b.val(e)):void(e>0?(R.length>0?L.find(".num .left-num").html("即将售罄"):L.find(".num .left-num").html("剩余"+e+"件"),b.val(e)):(L.find(".num .left-num").html(""),b.val(0)))}function f(e){var t,o,n;if(x&&E&&E.length>0){for(E.removeClass("chosed"),t=I.eq(e).children(),n=0;n<t.length;n++)if(F(t[n]).data("id")===E.data("id"))return E=F(t[n]),o="#"+E.data("id"),x=F(o).data("index"),E.addClass("chosed"),E.data("num");return E=null,q=!1,S.eq(x).addClass("hide"),S.eq(0).removeClass("hide"),x=0,-1}return 0}function m(e){return k&&_&&_.length>0?(_.removeClass("chosed"),_=F(S.eq(e).children().get(k-1)),_.addClass("chosed"),_.data("num")):0}function g(e,t){var o={productSku:e,buyNumber:t};F.ajax({url:"/cart/index/checkTickets",dataType:"json",data:o,type:"post",success:function(o){if(200!=o.code){if(401==o.code){var n=window.location.href;window.location.href="//m.yohobuy.com/signin.html?refer="+n}O.show(o.message)}else $productSku.val(e),$buyNumber.val(t),$buyNowForm.submit()},error:function(){O.show("网络异常~")}})}var v,w,y,b,C,j,x,k,T,q,E,I,_,S,D,L,z,P,M,F=e("jquery"),O=e("js/plugin/tip"),N=e("js/plugin/loading"),A=e("js/plugin/inner-scroll"),B=F("#chose-panel"),R=F(".soonSoldOut-tag"),H=F(".yoho-page"),U=F("#limitNum").val()||0,V=F("#single").val()||0;$productSku=F("#productSku"),$buyNumber=F("#buyNumber"),$buyNowForm=F("#buyNowForm");var W,G,$,J,Y;a(),H.on("touchstart",".chose-panel",function(e){var t=F(e.target);if(!(t.closest(".main").length>0))return u(),!1}),H.on("touchstart",".color-list .block",function(){var e,t=F(this),o=t.index();return t.hasClass("chosed")?(L.find(".num .left-num").html(""),b.val(0),T=!1,I.eq(k).addClass("hide"),I.eq(0).removeClass("hide"),k=0,f(0)):(T=!0,I.eq(k).addClass("hide"),e=f(o+1),p(e),I.eq(o+1).removeClass("hide"),k=o+1,_=t,y.addClass("hide").eq(o).removeClass("hide")),t.siblings(".chosed").removeClass("chosed"),-1===e?(_=F(S.eq(0).children().get(o)),_.addClass("chosed")):t.toggleClass("chosed"),F("#good-num").val(1),h(),U&&V?(E=F(".size-list .size-row .block").eq(o+1),E.addClass("chosed"),p(_.data("num")),q=!0,!1):void 0}).on("touchstart",".size-list .block",function(){var e,t,o=F(this);o.hasClass("chosed")?(L.find(".num .left-num").html(""),b.val(0),q=!1,S.eq(x).addClass("hide"),S.eq(0).removeClass("hide"),x=0,m(0)):(q=!0,e=F("#"+o.data("id")).data("index")-1,S.eq(x).addClass("hide"),t=m(e+1),p(t),S.eq(e+1).removeClass("hide"),x=e+1,E=o),o.siblings(".chosed").removeClass("chosed"),o.toggleClass("chosed"),F("#good-num").val(1),h()}),H.on("touchstart",".btn-minus",function(){var e=parseInt(v.val(),10);return C=F("#left-num").val(),l()?1===e||0===C-0?void O.show("您选择的数量不能为零~"):0>e?void O.show("您选择的数量不能为负数~"):void v.val(e-1):void 0}).on("touchstart",".btn-plus",function(){var e=parseInt(v.val(),10),t=U?"每人只可购买"+U+"张当日门票":"您选择的数量超过了最大库存量~";return C=U||F("#left-num").val(),l()&&e-0!==C&&0!==C?e>C-1?void O.show(t):void v.val(e+1):void 0}).on("touchstart","#chose-btn-sure",function(){var e,t,o,n,a=F("#good-num").val()-0,i=parseInt(v.val(),10);if(l()&&"已售罄"!==F("#chose-btn-sure").html()){if(C=F("#left-num").val()-0,i>C)return void O.show("您选择的数量超过了最大库存量~");if(0>i)return void O.show("您选择的数量小于一件~");if(w=F(".block-list>ul>li.chosed"),2===w.length&&0===w.closest(".zero-stock").length){if(e=E.data("skuid"),t=F("#promotionId").val(),j)return!1;if(U||(j=!0),N.showLoadingMask(),U)return void g(e,a);if(W)o={new_product_sku:e,old_product_sku:$,buy_number:a,selected:G},n="/cart/index/modify";else{if(J)return F(this).css("background-color","#ccc").removeAttr("id"),n=F("#limitProductPay").val()+"?limitproductcode="+J+"&sku="+e+"&skn="+Y+"&buy_number="+a,r(),N.showLoadingMask(),F.ajax({url:n}).then(function(e){e.error?(O.show(e.message),setTimeout(function(){location.reload()},2e3)):location.href=n}).fail(function(){O.show("网络异常!"),setTimeout(function(){location.reload()},2e3)}),!1;o={productSku:e,buyNumber:a,promotionId:t,isEdit:W,cartType:z.cartType},n="/cart/index/add"}F.ajax({method:"POST",url:n,data:o}).done(function(e){var t;N.hideLoadingMask(),200!==e.code||W||(t=e.data.goods_count,t>99&&(t="99+"),F(".num-tag").html(t).removeClass("hide"),j=!1,D&&D()),e.message&&!W&&O.show(e.message),u(),W&&(N.showLoadingMask(),setTimeout(function(){window.location.href="/cart/index/index?cartType="+F("#cartType").val()},1))}).fail(function(){O.show("网络出了点问题~")}).always(function(){j=!1})}}}),t.init=a,t.show=c,t.remove=r,t.setEditModeWithSknId=i,t.disableNumEdit=n,t.setLimitGoodModeWithSknId=s}),define("js/plugin/inner-scroll",["jquery"],function(e,t,o){function n(e){e=e||window.event,e.preventDefault&&e.preventDefault(),e.returnValue=!1}function a(e){e=e||window.event,e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!1}function i(e){var t=e.wheelDelta||e.originalEvent.wheelDelta||e.detail||0,o=l(this).get(0);return a(e),l(o).height()+o.scrollTop>=o.scrollHeight&&0>t?(n(e), +!1):0===o.scrollTop&&t>0?(n(e),!1):void 0}function s(e){var t,o;e.on("mousewheel",i),e.on("touchstart",function(e){t=e.originalEvent.changedTouches[0].pageX,o=e.originalEvent.changedTouches[0].pageY}),e.on("touchmove",function(e){var n=e.originalEvent.changedTouches[0].pageX-t,a=e.originalEvent.changedTouches[0].pageY-o,i=l(this).get(0);return e.stopPropagation(),Math.abs(a)<Math.abs(n)?(e.preventDefault(),!1):l(i).height()+i.scrollTop>=i.scrollHeight&&0>a?(e.preventDefault(),!1):0===i.scrollTop&&a>0?(e.preventDefault(),!1):void 0}),l(document).on("mousewheel",n),l(document).on("touchmove",n)}function r(e){e.off("touchstart"),e.off("touchmove"),e.off("mousewheel"),l(document).off("mousewheel",n),l(document).off("touchmove",n)}var l=e("jquery");t.enableScroll=r,t.disableScroll=s}),define("js/product/detail/desc",["jquery","lazyload","swiper","index"],function(e,t,o){function n(e){var t,o;e.length>0&&(t=e[0].getBoundingClientRect().right,o=e.find(".swiper-slide:last-child")[0].getBoundingClientRect().right,0>o-t?e.next(".tips").css("display","none"):e.next(".tips").css("display","block"))}function a(e,t){var o=null;c(e).each(function(n,a){o=c(e).slice(n,n+t),o.length===t&&n%t===0&&c(o).wrapAll(c('<div class="js-wraper"></div>'))})}function i(){v||w||(v=!0,p.showLoadingMask(),c.ajax({type:"GET",url:m,success:function(e){r=c("#productDesc"),r.append(e),window.rePosFooter(),u(r.find("img.lazy")),l=new h("#size-swiper-container",{slidesPerView:"auto"}),d=new h("#reference-swiper-container",{slidesPerView:"auto"}),n(c("#size-swiper-container")),n(c("#reference-swiper-container")),a(".detail .column",2),v=!1,w=!0,p.hideLoadingMask()},error:function(){f.show("网络断开连接了~"),v=!1,p.hideLoadingMask()}}))}function s(){(!w||c(window).scrollTop()+g>=c(document).height()-200)&&i()}var r,l,d,c=e("jquery"),u=e("lazyload"),h=e("swiper"),p=e("js/plugin/loading"),f=e("js/plugin/tip"),m=c("#introUrl").val(),g=c(window).height(),v=!1,w=!1;c(window).scroll(function(){window.requestAnimationFrame(s)})}),define("js/product/detail/comments-consults",["jquery","hammer"],function(e,t,o){var n,a,i=e("jquery"),s=e("js/plugin/tip"),r=e("hammer"),l=document.getElementById("nav-tab"),d=l&&new r(l),c=document.getElementById("goto-consult"),u=c&&new r(c),h=document.getElementById("readmore"),p=h&&new r(h);!function(){a=i("#nav-tab .consults-num").html()-0,n=i("#nav-tab .comments-num").html()-0,i("#nav-tab li").each(function(){i(this).removeClass("focus")}),i("#feedback-content .content").each(function(){i(this).addClass("hide")}),0!==n?(i("#nav-tab .comment-nav").addClass("focus"),i("#feedback-content .comment-content").removeClass("hide")):0!==a&&(i("#nav-tab .consult-nav").addClass("focus"),i("#feedback-content .consult-content").removeClass("hide")),i(".goods-consults .consult-item:lt(2)").removeClass("hide")}(),d&&d.on("tap",function(e){var t=i(e.target).closest("li"),o=t.index();t.hasClass("comment-nav")&&0===n?s.show("暂无商品评价"):t.hasClass("focus")||(i("#nav-tab li").each(function(){i(this).removeClass("focus")}),i("#feedback-content .content").each(function(){i(this).addClass("hide")}),t.addClass("focus"),i("#feedback-content .content:eq("+o+")").removeClass("hide"))}),u&&u.on("tap",function(){location.href=i(c).find("a").attr("href")}),i(".goods-consults-page").length>0&&i("#yoho-header").css("position","fixed").css("top","0"),i(".goods-consults-page").length>0&&i("#yoho-footer").css("border-top","1px solid #e0e0e0"),p&&p.on("tap",function(){return i(".readmore").hide(),i(".goods-consults").find(".consult-item").removeClass("hide"),!1}),e("js/product/detail/fav")}),define("js/product/detail/fav",["jquery","hammer"],function(e,t,o){function n(e){var t=e.find(".animate-count");t.css("display","inline"),t.animate({opacity:.25,fontSize:"0.7rem",right:"-=5"},300,function(){t.css("display","none")})}var a,i,s=e("jquery"),r=e("hammer"),l=e("js/plugin/tip"),d=s("#goods-consults")[0],c=d&&new r(d);!function(){var e=window.location.search.substring(1);a=e.split("&")[0].split("=")[1],i=e.split("&")[1]?e.split("&")[1].split("=")[1]:void 0}(),c&&c.on("tap",function(e){var t,o=s(e.target).closest("li"),r=o.closest(".consult-item").data("id"),d=o.find(".count").html()-0;o.hasClass("highlight")||(o.hasClass("fav")?t="/product/detail/consultupvote":o.hasClass("useful")&&(t="/product/detail/consultuseful"),s.ajax({method:"post",url:t,data:{id:r,productId:a,total:i}}).done(function(e){200===e.code?(n(o),o.addClass("highlight"),o.find(".count").html(d+1)):401===e.code&&(location.href=e.data)}).fail(function(e){l.show("网络断开连接了~")}))})}),define("js/product/recommend-for-you-product-desc",["swiper","jquery","index"],function(e,t,o){function n(){h||u||(h=!0,d&&r.get(d).then(function(e){e.length<5?l.css("display","none"):(l.html(e).show(),r("#swiper-recommend").length&&(i=new s("#swiper-recommend",{slidesPerView:"auto",grabCursor:!0,slideElement:"a",lazyLoading:!0,watchSlidesVisibility:!0}))),h=!1,u=!0,window.rePosFooter()}).fail(function(){l.hide()}))}function a(){(!u||r(window).scrollTop()+c>=r(document).height()-200)&&n()}var i,s=e("swiper"),r=e("jquery"),l=r(".recommend-for-you"),d=r("#preferenceUrl").val(),c=r(window).height(),u=!1,h=!1;r(window).scroll(function(){window.requestAnimationFrame(a)})}),define("js/product/detail/consultform",["jquery"],function(e,t,o){var n,a=e("jquery"),i=e("js/plugin/tip"),s=e("js/plugin/loading"),r=a(".consult-form"),l=a("#submit"),d=a("#content"),c=a("#product_id").val();l.on("touchend",function(){return d.blur(),r.submit(),!1}).on("touchstart",function(){a(this).addClass("highlight")}).on("touchend touchcancel",function(){a(this).removeClass("highlight")}),d.on("focus",function(){"请输入咨询内容"===d.val()&&d.val("")}).on("blur",function(){""===d.val()&&d.val("请输入咨询内容")}),r.on("submit",function(){var e;return n?!1:(e=d.val(),e&&"请输入咨询内容"!==e?(n=!0,s.showLoadingMask(),a.ajax({method:"POST",url:"/product/detail/consultsubmit",data:{product_id:c,content:e}}).then(function(e){"object"!==a.type(e)&&(e={}),200!==e.code?(i.show(e.message||"网络出了点问题~"),n=!1,s.hideLoadingMask()):(i.show("提交成功~"),setTimeout(function(){window.history.go(-1)},3e3))}).fail(function(){i.show("网络出了点问题~"),n=!1}),!1):(i.show("咨询内容不能为空"),!1))})}),define("js/product/newsale/hot-rank",["jquery","swiper","lazyload","index"],function(e,t,o){function n(e,t,o,n){h.showLoadingMask(),d.ajax({type:"GET",url:"/product/newsale/selectHotrank?"+t,dataType:"html",data:{page:e,tab_id:o,notab:n},success:function(t){" "===t?d(".rank-main").length<1&&d(".goods-nav").length<1?d("#hotRank").html(v):1===e&&(l=d(".goods-nav").prop("outerHTML"),d("#hotRank").html(l+v)):(d(".no-result").remove(),1===e&&d(".rank-main").remove(),d("#hotRank").append(t)),u(d("img.lazy")),d(".rank-main ul li:gt(9)").find(".item-content i").removeClass("top"),i=d(window).height(),0!==d(".rank-main").length?(d("#yoho-footer").css("position","static"),s=d(".rank-main").find("ul").offset().top):d("#yoho-footer").css({position:"fixed",width:"100%"}),r=new c(".s-goods-nav",{grabCursor:!0,slidesPerView:"auto",slideElement:"li"}),h.hideLoadingMask()}})}function a(){2!==p&&(d(window).scrollTop()+i<s+d("#hotRank").height()-100||(p=2,f=1,n(p,m,g,f)))}var i,s,r,l,d=e("jquery"),c=e("swiper"),u=e("lazyload"),h=e("js/plugin/loading"),p=1,f=0,m="",g="",v='<p class="no-result">未找到相关搜索结果</p>';e("js/product/suspend-cart"),d(window).scroll(function(){window.requestAnimationFrame(a)}),n(p,m,g,f),d("#hotRank").on("touchend touchcancel",function(e){var t=t||window.event,o=t.target||t.srcElement;"span"===o.nodeName.toLowerCase()&&(d(".s-goods-nav .nav-item").removeClass("active"),o.parentNode.className="active "+o.parentNode.className,g=o.getAttribute("data-id")?o.getAttribute("data-id"):"",m=o.getAttribute("data-sort")?o.getAttribute("data-sort"):"",p=1,f=1,n(p,m,g,f))}),d("#hotRank").bind("contextmenu",function(e){return!1}),d("#hotRank").on("touchstart",function(e){var t=t||window.event,o=t.target||t.srcElement;"span"===o.nodeName.toLowerCase()&&(o.parentNode.className="bgActive "+o.parentNode.className)}).on("touchend touchcancel",function(){d(".s-goods-nav .nav-item").removeClass("bgActive")})}),define("js/product/product-category",["jquery"],function(e,t,o){var n=e("jquery"),a=n(".allproduct"),i=n(".category-container"),s=i.children(".content"),r=i.find(".sub-level li"),l=i.find(".primary-level-trilangle");!function(){var e=n(".yoho-header"),t=n(window).height()-e.outerHeight()-a.outerHeight(),o=.55*n(window).width();i.css("min-height",t),l.css("margin-right",o),s.height(t)}(),i.on("touchend",function(e){var t,o,a,i,s,r=n(e.target);if(o=r.closest(".p-level-item"),i=r.closest(".content").find(".sub-level-container"),i.removeClass("hide"),o.length>0){if(a=o.index(),t=r.closest(".content").find(".sub-level"),s=r.closest(".content").find(".primary-level-trilangle"),r.hasClass("focus"))return;t.not(".hide").addClass("hide"),t.eq(a).removeClass("hide"),s.not(".hide").addClass("hide"),s.eq(a).removeClass("hide")}}),i.find(".sub-level").on("touchstart","li",function(){r.removeClass("highlight"),n(this).addClass("highlight")}).on("touchend touchcancel","li",function(){n(this).removeClass("highlight")}),a.on("touchstart",function(){n(this).addClass("highlight")}).on("touchend touchcancel",function(){n(this).removeClass("highlight")})}),define("js/product/shop",["jquery","iscroll-probe","lazyload","swiper","hammer","index"],function(e,t,o){function n(e){var t,o;E||(o=e.data.type,t=K[o],t.end||(e.data&&$&&(e.data.coverChannel=$),E=!0,_.ajax({type:"GET",url:e.url,data:e.data,success:function(o){" "===o&&(t.end=!0),e.callBack(o)},error:function(){M.show("网络断开连接了~"),E=!1}})))}function a(e){G&&(e.data.brand=G),V&&(e.data.shop_id=V)}function i(e){var t={};t.url=location.protocol+"//m.yohobuy.com/index/search/search",t.data={type:"new",order:"1",page:K["new"].page,tagNew:"1"},a(t),t.callBack=function(t){_("#new-arrival").append(t),K["new"].page++,y.refresh(),D(_("#new-arrival .lazy")),q=_("#scroller").outerHeight(),E=!1,e&&_.isFunction(e)&&e()},n(t)}function s(e){var t={};t.url=location.protocol+"//m.yohobuy.com/index/search/search",t.data={type:"hot",order:"1",page:K.hot.page,showTag:"1"},a(t),t.callBack=function(t){_("#popularity").append(t),K.hot.page++,D(_("#popularity .lazy")),q=_("#scroller").outerHeight(),E=!1,e&&_.isFunction(e)&&e()},n(t)}function r(e,t){var o=e.eq(t);e.removeClass("active color"),o.addClass("active color")}function l(){var e=ae?ae:0;if(b+x+C>e){if(z.hasClass("hide")&&z.removeClass("hide"),b+j>e)tra="translate3d(0, "+-q+"px, 0)",z.addClass("fixed-top").removeClass("absolute").css({transform:tra,"-moz-transform":tra,"-ms-transform":tra,"-webkit-transform":tra});else if(b+j+C>e){if(_("#home-page").is(":hidden"))return!1;z.addClass("absolute").removeClass("fixed-top"),tra="translate3d(0, "+(b+j-e-q)+"px, 0)",z.css({transform:tra,"-moz-transform":tra,"-ms-transform":tra,"-webkit-transform":tra})}}else z.hasClass("hide")||z.addClass("hide")}function d(){var e,t,o=-this.y;if(ae=o,o+Y>q-.25*A.height()-50&&void 0!==ee&&u({type:"shop_id",id:V,brand:G,url:location.protocol+"//m.yohobuy.com/index/search/search",nextPage:!0}),o+2*Y>q)switch(e=function(){var e="translate3d(0, "+-q+"px, 0)";z.css({transform:e,"-moz-transform":e,"-ms-transform":e,"-webkit-transform":e})},te){case 2:i(e);break;case 3:s(e)}if(b>o)z.hasClass("hide")||z.addClass("hide"),P.hasClass("hide")||P.addClass("hide");else if(b+x+C>o){if(z.hasClass("hide")&&z.removeClass("hide"),P.hasClass("hide")||P.addClass("hide"),b+j>o)z.hasClass("fixed-top")||(t="translate3d(0, "+-q+"px, 0)",z.addClass("fixed-top").removeClass("absolute").css({transform:t,"-moz-transform":t,"-ms-transform":t,"-webkit-transform":t}));else if(b+j+C>o){if(_("#home-page").is(":hidden"))return!1;z.hasClass("absolute")||z.addClass("absolute").removeClass("fixed-top"),t="translate3d(0, "+(b+j-o-q)+"px, 0)",z.css({transform:t,"-moz-transform":t,"-ms-transform":t,"-webkit-transform":t})}}else{if(_("#home-page").is(":hidden"))return!1;z.hasClass("hide")||z.addClass("hide"),P.hasClass("hide")&&P.removeClass("hide"),q>o&&(P.hasClass("absolute")||P.addClass("absolute").removeClass("fixed-top"),t="translate3d(0, "+-q+"px, 0)",P.css({transform:t,"-moz-transform":t,"-ms-transform":t,"-webkit-transform":t}))}}function c(){_(document).trigger("rebindBpEvent")}function u(e){var t,o,n,a,i,s={};if(!E){if(e.url||(e.url=location.protocol+"//m.yohobuy.com/index/search/search"),ee=Z.find(".active").eq(0),!e.nextPage){for(o in K)K.hasOwnProperty(o)&&(K[o].reload=!0);if(Z.children(".active").removeClass("active"),ee.addClass("active"),e.hasOwnProperty("id")){switch(e.type){case"shop_id":t={shop_id:e.id};break;case"gender":t={gender:e.id},t.coverChannel=e.id;break;case"brand":t={brand:e.id};break;case"sort":t={sort:e.id};break;case"color":t={color:e.id};break;case"size":t={size:e.id};break;case"price":t={price:e.id};break;case"discount":t={discount:e.id};break;case"ageLevel":t={age_level:e.id}}_.extend(Q,t)}}if(ee.hasClass("new")?a="newest":ee.hasClass("price")?a="price":ee.hasClass("discount")&&(a="discount"),n=K[a],i=n.page+1,n.reload)i=1;else if(n.end)return;$&&(s.coverChannel=$),_.extend(s,Q,{type:a,order:n.order,page:i}),G&&(s.brand=G),V&&(s.shop_id=V),E=!0,O.showLoadingMask(),_.ajax({type:"GET",url:e.url?e.url:"",data:s,success:function(e){var t,o;switch(a){case"newest":t=R;break;case"price":t=H;break;case"discount":t=U}" "===e?(n.end=!0,n.reload&&t.html(X)):n.reload?(t.html(e),D(t.find(".lazy"))):(o=t.find(".good-info").length,t.append(e),D(t.find(".good-info:gt("+(o-1)+") .lazy"))),q=_("#scroller").outerHeight(),n.reload=!1,n.page=i,E=!1,O.hideLoadingMask(),window.rePosFooter(),y&&y.refresh(),l(),c()},error:function(){M.show("网络断开连接了~"),E=!1,O.hideLoadingMask()}})}}function h(e){_(e+" li").on("touchstart",function(){_(".sub-group").addClass("hide"),_(this).find(".sub-group").removeClass("hide")})}function p(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}function f(e){var t="";E||(E=!0,_.ajax({method:"get",url:location.protocol+"//m.yohobuy.com"+e.url,data:e.data,xhrFields:{withCredentials:!0},success:function(e){200===e.code&&(_("#collect").hasClass("alreadyCollect")?(_("#collect").attr("class","notCollect"),M.show("取消收藏成功")):(_("#collect").attr("class","alreadyCollect"),M.show("收藏成功"))),401===e.code&&(t=e.url,_("#jump-login").length<=0&&_("body").append("<a href='"+t+'\'><span id="jump-login"><span></a>'),_("#jump-login").click()),setTimeout(function(){q=_("#scroller").outerHeight()},500),E=!1},error:function(){M.show("网络断开连接了~"),E=!1}}))}function m(){var e={};e.url="/product/index/shopFav",e.data={shop_id:J?J:V,app_version:W},f(e)}function g(){var e={};e.url="/product/index/cancelShopFav",e.data={shop_id:J?J:V,app_version:W},f(e)}var v,w,y,b,C,j,x,k,T,q,E,I,_=e("jquery"),S=e("iscroll-probe"),D=e("lazyload"),L=e("swiper"),z=_("#pos-nav"),P=_("#pos-list"),M=e("js/plugin/tip"),F=e("js/plugin/filter"),O=e("js/plugin/loading"),N=_(".home-sub-nav"),A=_("#goods-container"),B=A.children(),R=_(B.get(0)),H=_(B.get(1)),U=_(B.get(2)),V=_('input[name="shop_id"]').val(),W=_('input[name="app_version"]').val(),G=_('input[name="brand"]').val(),$=_('input[name="coverChannel"]').val(),J=_('input[name="favId"]').val(),Y=_(window).height(),X='<p class="no-result">未找到相关搜索结果</p>',Q=e("js/product/query-param"),Z=_("#list-nav"),K={"new":{order:1,reload:!0,page:1,end:!1},hot:{order:1,reload:!0,page:1,end:!1},newest:{order:1,reload:!0,page:0,end:!1},price:{order:1,reload:!0,page:0,end:!1},discount:{order:1,reload:!0,page:0,end:!1}},ee=Z.find(".active"),te=1,oe=_(".category-list li").length,ne=4-oe%4;if(_(".banner-swiper").find("li").size()>1&&(v=new L(".banner-swiper",{lazyLoading:!0,lazyLoadingInPrevNext:!0,loop:!0,autoplay:3e3,autoplayDisableOnInteraction:!1,paginationClickable:!0,slideElement:"li",pagination:".banner-top .pagination-inner"})),_(".multi-browse").find("li").size()>1&&(w=new L(".multi-browse",{lazyLoading:!0,lazyLoadingInPrevNext:!0,lazyLoadingOnTransitionStart:!0,grabCursor:!0,slidesPerView:"auto",slideElement:"li",watchSlidesVisibility:!0})),_(".category-list li").length%4!==0&&_(".category-list li:last-child").addClass("category-list-last-li"),_(".category-list li").length<4)_(".category-list").addClass("category-list-top-board"),_(".category-list").find(".buriedpoint").addClass("category-list-only-one-row");else if(_(".category-list li").length>=5)for(I=ne;I>=0;I--)_(".category-list li").eq(oe-4+I-1).addClass("category-list-last-full-row");!function(e,t,o){_(e+" li, "+t+" li").not("li.all-goods").on("touchstart",function(){var n=_(this).index(),a=_(this).attr("tab");_(".filter-mask").hasClass("hide")&&(z.removeClass("fixed-top"),r(_(e+" li"),n),r(_(t+" li"),n),_(o).hide(),_("#"+a).fadeIn(),"new-arrival"===a?(i(),te=2):"popularity"===a?(s(),te=3):"home-page"===a&&(z.removeClass("fixed-top absolute"),P.removeClass("fixed-top absolute")),q=_("#scroller").outerHeight(),z.hasClass("hide")||y&&y.scrollTo(0,0-b),z.addClass("hide"))})}("#nav","#pos-nav",".main");var ae;document.addEventListener("touchmove",function(e){0===_(e.target).closest(".sub-classify").length&&e.preventDefault()},!1),_(window).ready(function(){y&&y.refresh(),b=_("#nav-top").outerHeight(),C=_("#nav").outerHeight(),j=_("#nav-main").height(),x=_("#nav-main").outerHeight(),k=_("#list-nav").outerHeight(),T=_("#goods-container").outerHeight(),y=new S("#wrapper",{probeType:2,mouseWheel:!1,click:!0}),setTimeout(function(){q=_("#scroller").outerHeight()},500),y.on("scroll",d),y.on("scrollStart",function(){v&&v.stopAutoplay(),w&&w.stopAutoplay()}),y.on("scrollEnd",function(){v&&v.startAutoplay(),w&&w.startAutoplay(),_("#scroller").trigger("scroll"),d.bind(this)()}),D(_("img.lazy"))}),Z.bind("contextmenu",function(e){return!1}),N.on("touchend touchcancel",function(e){var t,o,n,a,i=_(e.target).closest("li"),s=i.attr("data-bp-id")||"";if(e.preventDefault(),_(document).trigger("shouldSendBpData",[s]),"undefined"!=typeof i&&0!==i.length){if(i.hasClass("filter"))i.hasClass("active")?(F.hideFilter(),y&&y.enable()):(y&&y.scrollTo(0,-(b+x+C)),ae=b+x+C,l(),F.showFilter(),i.closest(".pos-list").length>0?_(".filter-mask").addClass("call-by-fix").css("top",""):_(".filter-mask").removeClass("call-by-fix").css("top",i.offset().top+C),y&&y.disable());else{if(i.hasClass("new")?(t=".new",n="newest"):i.hasClass("price")?(t=".price",n="price"):i.hasClass("discount")&&(t=".discount",n="discount"),y&&y.enable(),o=K[n],i.hasClass("active")){if(i.hasClass("new"))return;if(i.hasClass("price")||i.hasClass("discount"))switch(i=N.find(t),i.find(".icon > .iconfont").toggleClass("cur"),o.reload=!0,o.order=0===o.order?1:0,A.children(".container:not(.hide)").addClass("hide"),n){case"newest":R.removeClass("hide");break;case"price":H.removeClass("hide");break;case"discount":U.removeClass("hide")}}else{if(a=N.find(".active"),a.hasClass("filter"))F.hideFilter();else{switch(A.children(".container:not(.hide)").addClass("hide"),n){case"newest":R.removeClass("hide");break;case"price":H.removeClass("hide");break;case"discount":U.removeClass("hide")}ae=b+x+C,l()}N.children().removeClass("active"),N.find(t).addClass("active")}o.reload&&u({type:"shop_id",id:V,brand:G,url:location.protocol+"//m.yohobuy.com/index/search/search",nextPage:!1})}e.stopPropagation()}}),F.initFilter({fCbFn:function(e){u(e),y&&y.enable()},hCbFn:function(){ee.addClass("active"),ee.siblings(".filter").removeClass("active"),y&&y.enable()},missStatus:!0}),Z.on("touchstart","li",function(e){_(this).addClass("bytouch")}).on("touchend touchcancel",function(){Z.find("li").removeClass("bytouch")}),P.on("touchstart","li",function(e){_(this).addClass("bytouch")}).on("touchend touchcancel",function(){P.find("li").removeClass("bytouch")}),h(".shop-foot-wrapper"),_(document).bind("touchstart",function(){_(".sub-group").addClass("hide")}),_(".shop-foot-wrapper").bind("touchstart",function(e){p(e)}),_("#collect").on("touchstart",function(e){_("#collect").hasClass("alreadyCollect")?g():m()})}),define("js/me/entry",["jquery","hammer","lazyload","swiper","handlebars","source-map","mlellipsis","index"],function(e,t,o){e("js/me/order"),e("js/me/order-detail"),e("js/me/fav"),e("js/me/suggest"),e("js/me/index"),e("js/me/coupons"),e("js/me/online-service"),e("js/me/address"),e("js/me/suggest"),e("js/me/browse-record"),e("js/me/address-act"),e("js/me/logistic"),e("js/me/pay"),e("js/me/personal-details"),e("js/me/currency"),e("js/me/currency-new"),e("js/me/message"),e("js/me/message-detail"),e("js/me/address-modify")}),define("js/me/order",["jquery","hammer","lazyload","swiper","handlebars","source-map","index"],function(e,t,o){function n(e){function t(){var t,i,s,r=1e3,l=60*r,d=60*l,c=24*d;return t=Math.floor(a%c/d),i=Math.floor(a%d/l),s=Math.floor(a%l/r),t=String(t).length>=2?t:"0"+t,i=String(i).length>=2?i:"0"+i,s=String(s).length>=2?s:"0"+s,e.removeClass("hide"),"00"===t?n.text("剩余"+i+":"+s):n.text("剩余"+t+":"+i+":"+s),a-=1e3,0>=a?void clearInterval(o):void 0}var o,n=e.find(".hours"),a=n.text();""!==a&&a>0&&(o=setInterval(t,1e3))}function a(){d(".order").each(function(){var e=d(this).find(".count-down");d(this).hasClass("hide")||n(e)})}function i(e){var t={type:w,page:y.page+1},o=e&&!e.noLoadingMask;b||(b=!0,o&&C.showLoadingMask(),d.ajax({type:"GET",url:"/home/getOrders",data:t,success:function(e){var n;" "!==e?(y.page=t.page,1===t.page?(g.html(e),u(g.find(".lazy"),{try_again_css:"order-failure"})):(n=g.children(".order").length,g.append(e),u(g.children(".order:gt("+(n-1)+")").find(".lazy"),{try_again_css:"order-failure"})),window.rePosFooter()):y.end=!0,b=!1,o&&C.hideLoadingMask(),a()}}))}function s(){y.end===!1&&d(window).scrollTop()+v>d(document).height()-.25*m.height()&&i({noLoadingMask:!0})}var r,l,d=e("jquery"),c=e("hammer"),u=e("lazyload"),h=e("js/plugin/tip"),p=e("swiper"),f=d("#order-nav > li"),m=d("#order-container"),g=m.children(".orders:not(.hide)"),v=d(window).height(),w=f.filter(".active").data("type"),y={page:0,end:!1},b=!1,C=e("js/plugin/loading"),j=e("js/me/dialog"),x=d(".reason-mask");u({try_again_css:"order-failure"}),function(){var e=f.length;4!==e&&f.width(100/e+"%")}(),C.init(d("body")),r=new c(document.getElementById("order-container")),r.on("tap",function(e){var t,o,n,a=d(e.target);a.closest(".locHref").length>0||(t=a.closest(".order"),o=t.data("id"),x.data("orderId",o),a.closest(".del").length>0?j.showDialog({dialogText:"确定删除订单吗?",hasFooter:{leftBtnText:"取消",rightBtnText:"确定"}},function(){d.ajax({type:"GET",url:"/home/delOrder",data:{id:o},success:function(e){j.hideDialog(),e.message&&h.show(e.message),200===e.code&&window.location.reload()},error:function(){h.show("取消订单失败")}})}):a.closest(".cancel").length>0?x.css("visibility","visible"):a.closest(".order-goods").length>0?(n=t.data("href"),location.href=n):a.closest(".rebuy").length>0&&d.ajax({type:"GET",url:"/home/readd",data:{orderCode:o},success:function(e){h.show(e.message),location.href="/cart/index/index"},error:function(e){h.show(e.message)}}))}),d(window).scroll(function(){window.requestAnimationFrame(s)}),i(),d(function(){l=new p(".box-main",{direction:"vertical",slidesPerView:5,centeredSlides:!0,initialSlide:0,onSlideChangeStart:function(e){var t=e.activeIndex,o=e.slides,n=0;if(1!==o.length)if(0===t)for(n=1;n<o.length;n++)d(o[n]).css("transform","");else if(t===o.length-1)for(n=0;t>n;n++)d(o[n]).css("transform","rotateX("+(30+12*(t-n))+"deg)");else{for(n=0;t>n;n++)d(o[n]).css("transform","rotateX("+(30+12*(t-n))+"deg)");for(n=t+1;n<o.length;n++)d(o[n]).css("transform","")}d(o[t]).css("transform","")}})}),x.find(".box-cmp").on("touchend",function(e){var t=l.slides[l.activeIndex],o=d(t).text(),n=d(t).data("reasonId");d.ajax({type:"GET",url:"/home/cancelOrder",data:{id:x.data("orderId"),reason:o,reasonId:n}}).then(function(e){x.fadeOut(),"object"===d.type(e)&&(e.message&&h.show(e.message),setTimeout(function(){window.location.href="/home/orders"},2e3))}).fail(function(){h.show("网络错误")})}),x.on("touchend",function(e){return"reason-mask"!==e.target.className?!1:(x.css("visibility","hidden"),void e.stopPropagation())})}),define("js/me/order-detail",["jquery","lazyload","hammer","handlebars","source-map","swiper","index"],function(e,t,o){function n(e){function t(){var e,t,a,i=1e3,s=60*i,r=60*s,l=24*r;return e=Math.floor(n%l/r),t=Math.floor(n%r/s),a=Math.floor(n%s/i),e=String(e).length>=2?e:"0"+e,t=String(t).length>=2?t:"0"+t,a=String(a).length>=2?a:"0"+a,p.removeClass("hide"),"00"===e?h.text("剩余"+t+":"+a):h.text("剩余"+e+":"+t+":"+a),n-=1e3,0>n?void clearInterval(o):void 0}var o,n=e;""!==n&&n>0&&(o=setInterval(t,1e3))}var a,i,s=e("jquery"),r=e("lazyload"),l=e("hammer"),d=e("js/me/dialog"),c=e("js/plugin/tip"),u=s("#order-detail").data("id"),h=s(".hours"),p=s(".count-down"),f=e("swiper"),m=s(".owner-info"),g=s(".reason-mask");r({try_again_css:"order-failure"}),n(h.text()),i=new l(document.getElementsByClassName("opt")[0]),i.on("tap",function(e){var t=s(e.target);t.hasClass("btn-del")?d.showDialog({dialogText:"确定删除订单吗?",hasFooter:{leftBtnText:"取消",rightBtnText:"确定"}},function(){s.ajax({type:"GET",url:"/home/delOrder",data:{id:u}}).then(function(e){s("#dialog-wrapper").hide(),"object"===s.type(e)&&(e.message&&c.show(e.message),setTimeout(function(){window.location.href="/home/orders"},2e3))}).fail(function(){c.show("网络错误")})}):t.hasClass("btn-cancel")?g.css("visibility","visible"):t.hasClass("btn-rebuy")&&s.ajax({type:"GET",url:"/home/readd",data:{orderCode:u},success:function(e){c.show(e.message),location.href="/cart/index/index"},error:function(e){c.show(e.message)}})}),m.data("changeable")===!0&&(m.find(".rest").show(),m.on("touchend",function(){location.href=m.data("url")})),s(function(){a=new f(".box-main",{initialSlide:0,centeredSlides:!0,slidesPerView:5,direction:"vertical",onSlideChangeStart:function(e){var t=e.activeIndex,o=e.slides,n=0;if(1!==o.length)if(0===t)for(n=1;n<o.length;n++)s(o[n]).css("transform","");else if(t===o.length-1)for(n=0;t>n;n++)s(o[n]).css("transform","rotateX("+(30+12*(t-n))+"deg)");else{for(n=0;t>n;n++)s(o[n]).css("transform","rotateX("+(30+12*(t-n))+"deg)");for(n=t+1;n<o.length;n++)s(o[n]).css("transform","")}s(o[t]).css("transform","")}})}),g.find(".box-cmp").on("touchend",function(e){var t=a.slides[a.activeIndex],o=s(t).text(),n=s(t).data("reasonId");s.ajax({type:"GET",url:"/home/cancelOrder",data:{id:u,reason:o,reasonId:n}}).then(function(e){g.fadeOut(),"object"===s.type(e)&&(e.message&&c.show(e.message),setTimeout(function(){window.location.href="/home/orders"},2e3))}).fail(function(){c.show("网络错误")})}),g.on("touchend",function(e){return"reason-mask"!==e.target.className?!1:(g.css("visibility","hidden"),void e.stopPropagation())})}),define("js/me/fav",["jquery","hammer","swiper","handlebars","source-map","index"],function(e,t,o){function n(e){f.filter(".active").removeClass("active"),f.eq(e).addClass("active"),m.filter(".show").removeClass("show"),m.eq(e).addClass("show")}function a(e){var t,o,n=/container-(\d+)['"]{1}/gi,a=/\d+/,i=e.match(n),s=i.length;for(t=0;s>t;t++)o=i[t].match(a)[0],g[o]=new u("#swiper-container-"+o,{slidesPerView:"auto",grabCursor:!0,slideElement:"li",wrapperClass:"swiper-wrapper-"+o,lazyLoading:!0,watchSlidesVisibility:!0})}function i(e,t,o){"favBrand"===t?q=!0:T=!0,d.ajax({method:"post",url:"/home/"+t,data:{page:o},success:function(o){var n=e.closest(".fav-type").find(".fav-content-loading");"favBrand"===t?w.addClass("hide"):v.addClass("hide")," "===o?(n.addClass("hide"),e.closest(".fav-type").find(".fav-null-box").removeClass("hide"),window.rePosFooter()):"end"===o?(n&&!n.hasClass("hide")&&n.addClass("hide"),e.closest(".fav-type").find(".fav-load-background").removeClass("fav-load-background").html("没有更多了"),q=!0,T=!0):o.length>10&&(e.append(o),n.remove(),"favBrand"===t?(a(o),q=!1):T=!1),window.rePosFooter()}})}function s(){d(window).scrollTop()+y>=d(document).height()-.25*j.height()-b&&(E?(w.filter(".hide").removeClass("hide"),q||(k++,i(j,"favBrand",k))):(v.filter(".hide").removeClass("hide"),T||(x++,i(C,"favProduct",x))))}var r,l,d=e("jquery"),c=e("hammer"),u=e("swiper"),h=e("js/me/dialog"),p=e("js/plugin/tip"),f=d("#fav-tab > li"),m=d(".fav-content > .fav-type"),g={},v=d(".fav-load-more"),w=d(".fav-brand-load-more"),y=d(window).height(),b=d("#yoho-footer").height(),C=d(".fav-product-list"),j=d(".fav-brand-swiper-wrapper"),x=1,k=1,T=!0,q=!0,E=!1;d("#fav-tab").hasClass("brand-tab")?(n(1),i(j,"favBrand",1),E=!0,window.rePosFooter()):(n(0),i(C,"favProduct",1),E=!1,window.rePosFooter()),r=new c(document.getElementById("fav-tab")),r.on("tap",function(e){var t,o=d(e.target).closest("li");0===o.length||o.hasClass("active")||(t=o.index(),0===t?(E=!1,0===C.find("li").length&&C.closest(".fav-type").find(".fav-null-box").hasClass("hide")&&i(C,"favProduct",1)):(E=!0,0===j.find("div").length&&j.closest(".fav-type").find(".fav-null-box").hasClass("hide")&&i(j,"favBrand",1)),n(t),window.rePosFooter())}),l=new c(document.getElementById("fav-content")),l.on("tap",function(e){var t="";d(e.target).hasClass("del-fav")&&h.showDialog({dialogText:"您确定要取消收藏吗?",hasFooter:{leftBtnText:"取消",rightBtnText:"确定"}},function(){t=d(e.target).closest("li").attr("data-id"),d.ajax({method:"post",url:"/home/favoriteDel",data:{id:t}}).then(function(t){200===t.code?(h.showDialog({autoHide:!0,fast:!0,dialogText:"已经取消收藏"}),d(e.target).closest("li").remove()):400===t.code?h.showDialog({autoHide:!0,fast:!0,dialogText:t.message}):h.showDialog({autoHide:!0,fast:!0,dialogText:"取消收藏失败"})}).fail(function(){h.showDialog({autoHide:!0,dialogText:"网络错误~"})})})}),d(window).scroll(s),d(document).on("touchend",".swiper-header",function(){var e=d(this).find(".fav-more").attr("href");e&&(window.location.href=e)}),d(".invalidGoods").on("touchstart touchend",function(e){var t=d(e.target).closest("span");if(!t.hasClass("del-fav"))return p.show("商品已下架"),!1})}),define("js/me/suggest",["jquery","hammer","lazyload","handlebars","source-map"],function(e,t,o){var n,a,i,s,r=e("jquery"),l=e("hammer"),d=e("lazyload"),c=e("handlebars"),u=e("js/me/dialog"),h=r(".upload-img-list"),p=r(".suggest-item .like-btn"),f=r(".suggest-item .dislike-btn"),m=r(".img-add"),g="",v=0;e("js/me/jquery.upload"),i='{{# imgList}}<li>{{# imgUrl}}<img src="{{.}}" /><span class="upload-img-remove"></span>{{/ imgUrl}}</li>{{/ imgList}}',s=c.compile(i),r("#upload-img").upload({auto:!0,fileType:"image/*",uploadScript:"/home/suggestimgUpload",fileObjName:"fileData",fileSizeLimit:300,height:"100%",width:"100%",multi:!1,onAddQueueItem:function(e){h.html(s({imgList:!0}))},onUploadComplete:function(e,t){h.html(""),g=JSON.parse(t).imgList[0].imgRelUrl,h.html(s(JSON.parse(t))),m.hide(),v++}}),d(),n=new l(document.getElementById("yoho-header")),n.on("tap",function(e){var t=r("#suggest-textarea").val(),o=/\S+/;if(r(e.target).hasClass("nav-btn")){if(!o.test(t))return void u.showDialog({autoHide:!0,dialogText:"意见不能为空"});r.ajax({method:"post",url:"/home/savesuggest",data:{content:t,image:g}}).then(function(e){200===e.code?(u.showDialog({autoHide:!0,dialogText:"提交成功"}),setTimeout(function(){location.pathname="home/suggest"},2e3)):u.showDialog({autoHide:!0,dialogText:"提交失败~"})}).fail(function(){u.showDialog({autoHide:!0,dialogText:"网络错误~"})})}}),null!==document.getElementById("img-form")&&(a=new l(document.getElementById("img-form")),a.on("tap",function(e){r(e.target).hasClass("upload-img-remove")&&(h.html(""),g="",v--,setTimeout(function(){m.show()},50))})),p.bind("click",function(){var e=r(this).closest(".suggest-item").attr("data-id"),t=r(this);r.ajax({method:"post",url:"/home/upAndDown",data:{suggest_id:e,reliable:1}}).then(function(e){200===e.code&&(t.closest(".suggest-type").removeClass("show"),t.closest(".suggest-item").find(".suggest-good").addClass("show"))}).fail(function(e){u.showDialog({autoHide:!0,dialogText:"网络错误~"})})}),f.bind("click",function(){var e=r(this).closest(".suggest-item").attr("data-id"),t=r(this);r.ajax({method:"post",url:"/home/upAndDown",data:{suggest_id:e,reliable:2}}).then(function(e){200===e.code&&(t.closest(".suggest-type").removeClass("show"),t.closest(".suggest-item").find(".suggest-bad").addClass("show")); +}).fail(function(e){u.showDialog({autoHide:!0,dialogText:"网络错误~"})})})}),define("js/me/jquery.upload",["jquery"],function(e,t,o){var n=e("jquery");!function(e){var t={init:function(o){return this.each(function(){var n=e(this);n.data("uploadifive",{inputs:{},inputCount:0,fileID:0,queue:{count:0,selected:0,replaced:0,errors:0,queued:0,cancelled:0},uploads:{current:0,attempts:0,successful:0,errors:0,count:0}});var a=n.data("uploadifive"),s=a.settings=e.extend({auto:!0,buttonClass:!1,buttonText:"Select Files",checkScript:!1,dnd:!0,dropTarget:!1,fileObjName:"Filedata",fileSizeLimit:0,fileType:!1,formData:{},height:30,itemTemplate:!1,method:"post",multi:!0,overrideEvents:[],queueID:!1,queueSizeLimit:0,removeCompleted:!1,simUploadLimit:0,truncateLength:0,uploadLimit:0,uploadScript:"uploadifive.php",width:100},o);if(isNaN(s.fileSizeLimit)){var r=1.024*parseInt(s.fileSizeLimit);s.fileSizeLimit.indexOf("KB")>-1?s.fileSizeLimit=1e3*r:s.fileSizeLimit.indexOf("MB")>-1?s.fileSizeLimit=1e6*r:s.fileSizeLimit.indexOf("GB")>-1&&(s.fileSizeLimit=1e9*r)}else s.fileSizeLimit=1024*s.fileSizeLimit;if(a.inputTemplate=e('<input type="file">').css({"font-size":s.height+"px",opacity:0,position:"absolute",right:"-3px",top:"-3px","z-index":999}),a.createInput=function(){var o=a.inputTemplate.clone(),i=o.name="input"+a.inputCount++;s.multi&&o.attr("multiple",!0),s.fileType&&o.attr("accept",s.fileType),o.bind("change",function(){a.queue.selected=0,a.queue.replaced=0,a.queue.errors=0,a.queue.queued=0;var o=this.files.length;if(a.queue.selected=o,a.queue.count+o>s.queueSizeLimit&&0!==s.queueSizeLimit)e.inArray("onError",s.overrideEvents)<0&&alert("The maximum number of queue items has been reached ("+s.queueSizeLimit+"). Please select fewer files."),"function"==typeof s.onError&&s.onError.call(n,"QUEUE_LIMIT_EXCEEDED");else{for(var r=0;o>r;r++)file=this.files[r],a.addQueueItem(file);a.inputs[i]=this,a.createInput()}s.auto&&t.upload.call(n),"function"==typeof s.onSelect&&s.onSelect.call(n,a.queue)}),a.currentInput&&a.currentInput.hide(),a.button.append(o),a.currentInput=o},a.destroyInput=function(t){e(a.inputs[t]).remove(),delete a.inputs[t],a.inputCount--},a.drop=function(o){a.queue.selected=0,a.queue.replaced=0,a.queue.errors=0,a.queue.queued=0;var i=o.dataTransfer,r=i.name="input"+a.inputCount++,l=i.files.length;if(a.queue.selected=l,a.queue.count+l>s.queueSizeLimit&&0!==s.queueSizeLimit)e.inArray("onError",s.overrideEvents)<0&&alert("The maximum number of queue items has been reached ("+s.queueSizeLimit+"). Please select fewer files."),"function"==typeof s.onError&&s.onError.call(n,"QUEUE_LIMIT_EXCEEDED");else{for(var d=0;l>d;d++)file=i.files[d],a.addQueueItem(file);a.inputs[r]=i}s.auto&&t.upload.call(n),"function"==typeof s.onDrop&&s.onDrop.call(n,i.files,i.files.length),o.preventDefault(),o.stopPropagation()},a.fileExistsInQueue=function(e){for(var t in a.inputs){input=a.inputs[t],limit=input.files.length;for(var o=0;o<limit;o++)if(existingFile=input.files[o],existingFile.name==e.name&&!existingFile.complete)return!0}return!1},a.removeExistingFile=function(e){for(var o in a.inputs){input=a.inputs[o],limit=input.files.length;for(var i=0;i<limit;i++)existingFile=input.files[i],existingFile.name!=e.name||existingFile.complete||(a.queue.replaced++,t.cancel.call(n,existingFile,!0))}},0==s.itemTemplate?a.queueItem=e('<div class="uploadifive-queue-item"> <a class="close" href="#">X</a> <div><span class="filename"></span><span class="fileinfo"></span></div> <div class="progress"> <div class="progress-bar"></div> </div> </div>'):a.queueItem=e(s.itemTemplate),a.addQueueItem=function(o){if(e.inArray("onAddQueueItem",s.overrideEvents)<0){a.removeExistingFile(o),o.queueItem=a.queueItem.clone(),o.queueItem.attr("id",s.id+"-file-"+a.fileID++),o.queueItem.find(".close").bind("click",function(){return t.cancel.call(n,o),!1});var i=o.name;i.length>s.truncateLength&&0!=s.truncateLength&&(i=i.substring(0,s.truncateLength)+"..."),o.queueItem.find(".filename").html(i),o.queueItem.data("file",o),a.queueEl.append(o.queueItem)}"function"==typeof s.onAddQueueItem&&s.onAddQueueItem.call(n,o),o.size>s.fileSizeLimit&&0!=s.fileSizeLimit?a.error("FILE_SIZE_LIMIT_EXCEEDED",o):(a.queue.queued++,a.queue.count++)},a.removeQueueItem=function(t,o,n){n||(n=0);var i=o?0:500;t.queueItem&&(" - Completed"!=t.queueItem.find(".fileinfo").html()&&t.queueItem.find(".fileinfo").html(" - Cancelled"),t.queueItem.find(".progress-bar").width(0),t.queueItem.delay(n).fadeOut(i,function(){e(this).remove()}),delete t.queueItem,a.queue.count--)},a.filesToUpload=function(){var e=0;for(var t in a.inputs){input=a.inputs[t],limit=input.files.length;for(var o=0;o<limit;o++)file=input.files[o],file.skip||file.complete||e++}return e},a.checkExists=function(o){if(e.inArray("onCheck",s.overrideEvents)<0){e.ajaxSetup({async:!1});var a=e.extend(s.formData,{filename:o.name});if(e.post(s.checkScript,a,function(e){o.exists=parseInt(e)}),o.exists&&!confirm("A file named "+o.name+" already exists in the upload folder.\nWould you like to replace it?"))return t.cancel.call(n,o),!0}return"function"==typeof s.onCheck&&s.onCheck.call(n,o,o.exists),!1},a.uploadFile=function(t,o){if(!t.skip&&!t.complete&&!t.uploading)if(t.uploading=!0,a.uploads.current++,a.uploads.attempted++,xhr=t.xhr=new XMLHttpRequest,"function"==typeof FormData||"object"==typeof FormData){var r=new FormData;r.append(s.fileObjName,t);for(i in s.formData)r.append(i,s.formData[i]);xhr.open(s.method,s.uploadScript,!0),xhr.upload.addEventListener("progress",function(e){e.lengthComputable&&a.progress(e,t)},!1),xhr.addEventListener("load",function(e){4==this.readyState&&(t.uploading=!1,200==this.status?"Invalid file type."!==t.xhr.responseText?a.uploadComplete(e,t,o):a.error(t.xhr.responseText,t,o):404==this.status?a.error("404_FILE_NOT_FOUND",t,o):403==this.status?a.error("403_FORBIDDEN",t,o):a.error("Unknown Error",t,o))}),xhr.send(r)}else{var l=new FileReader;l.onload=function(i){var r="-------------------------"+(new Date).getTime(),l="--",d="\r\n",c="";c+=l+r+d,c+='Content-Disposition: form-data; name="'+s.fileObjName+'"',t.name&&(c+='; filename="'+t.name+'"'),c+=d,c+="Content-Type: application/octet-stream"+d+d,c+=i.target.result+d;for(key in s.formData)c+=l+r+d,c+='Content-Disposition: form-data; name="'+key+'"'+d+d,c+=s.formData[key]+d;c+=l+r+l+d,xhr.upload.addEventListener("progress",function(e){a.progress(e,t)},!1),xhr.addEventListener("load",function(e){t.uploading=!1;var n=this.status;404==n?a.error("404_FILE_NOT_FOUND",t,o):"Invalid file type."!=t.xhr.responseText?a.uploadComplete(e,t,o):a.error(t.xhr.responseText,t,o)},!1);var u=s.uploadScript;if("get"==s.method){var h=e(s.formData).param();u+=h}xhr.open(s.method,s.uploadScript,!0),xhr.setRequestHeader("Content-Type","multipart/form-data; boundary="+r),"function"==typeof s.onUploadFile&&s.onUploadFile.call(n,t),xhr.sendAsBinary(c)},l.readAsBinaryString(t)}},a.progress=function(t,o){if(e.inArray("onProgress",s.overrideEvents)<0){if(t.lengthComputable)var a=Math.round(t.loaded/t.total*100);o.queueItem.find(".fileinfo").html(" - "+a+"%"),o.queueItem.find(".progress-bar").css("width",a+"%")}"function"==typeof s.onProgress&&s.onProgress.call(n,o,t)},a.error=function(o,i,r){if(e.inArray("onError",s.overrideEvents)<0){switch(o){case"404_FILE_NOT_FOUND":errorMsg="404 Error";break;case"403_FORBIDDEN":errorMsg="403 Forbidden";break;case"FORBIDDEN_FILE_TYPE":errorMsg="Forbidden File Type";break;case"FILE_SIZE_LIMIT_EXCEEDED":errorMsg="File Too Large";break;default:errorMsg="Unknown Error"}i.queueItem.addClass("error").find(".fileinfo").html(" - "+errorMsg),i.queueItem.find(".progress").remove()}"function"==typeof s.onError&&s.onError.call(n,o,i),i.skip=!0,"404_FILE_NOT_FOUND"==o?a.uploads.errors++:a.queue.errors++,r&&t.upload.call(n,null,!0)},a.uploadComplete=function(o,i,r){e.inArray("onUploadComplete",s.overrideEvents)<0&&(i.queueItem.find(".progress-bar").css("width","100%"),i.queueItem.find(".fileinfo").html(" - Completed"),i.queueItem.find(".progress").slideUp(250),i.queueItem.addClass("complete")),"function"==typeof s.onUploadComplete&&s.onUploadComplete.call(n,i,i.xhr.responseText),s.removeCompleted&&setTimeout(function(){t.cancel.call(n,i)},3e3),i.complete=!0,a.uploads.successful++,a.uploads.count++,a.uploads.current--,delete i.xhr,r&&t.upload.call(n,null,!0)},a.queueComplete=function(){"function"==typeof s.onQueueComplete&&s.onQueueComplete.call(n,a.uploads)},!(window.File&&window.FileList&&window.Blob&&(window.FileReader||window.FormData)))return"function"==typeof s.onFallback&&s.onFallback.call(n),!1;if(s.id="uploadifive-"+n.attr("id"),a.button=e('<div id="'+s.id+'" class="uploadifive-button">'+s.buttonText+"</div>"),s.buttonClass&&a.button.addClass(s.buttonClass),a.button.css({height:s.height,"line-height":s.height+"px",overflow:"hidden",position:"relative","text-align":"center",width:s.width}),n.before(a.button).appendTo(a.button).hide(),a.createInput.call(n),s.queueID?a.queueEl=e("#"+s.queueID):(s.queueID=s.id+"-queue",a.queueEl=e('<div id="'+s.queueID+'" class="uploadifive-queue" />'),a.button.after(a.queueEl)),s.dnd){var l=s.dropTarget?e(s.dropTarget):a.queueEl.get(0);l.addEventListener("dragleave",function(e){e.preventDefault(),e.stopPropagation()},!1),l.addEventListener("dragenter",function(e){e.preventDefault(),e.stopPropagation()},!1),l.addEventListener("dragover",function(e){e.preventDefault(),e.stopPropagation()},!1),l.addEventListener("drop",a.drop,!1)}XMLHttpRequest.prototype.sendAsBinary||(XMLHttpRequest.prototype.sendAsBinary=function(e){function t(e){return 255&e.charCodeAt(0)}var o=Array.prototype.map.call(e,t),n=new Uint8Array(o);this.send(n.buffer)}),"function"==typeof s.onInit&&s.onInit.call(n)})},debug:function(){return this.each(function(){console.log(e(this).data("uploadifive"))})},clearQueue:function(){this.each(function(){var o=e(this),n=o.data("uploadifive"),a=n.settings;for(var s in n.inputs)for(input=n.inputs[s],limit=input.files.length,i=0;i<limit;i++)file=input.files[i],t.cancel.call(o,file);"function"==typeof a.onClearQueue&&a.onClearQueue.call(o,e("#"+n.settings.queueID))})},cancel:function(o,n){this.each(function(){var a=e(this),i=a.data("uploadifive"),s=i.settings;"string"==typeof o&&(isNaN(o)||(fileID="uploadifive-"+e(this).attr("id")+"-file-"+o),o=e("#"+fileID).data("file")),o.skip=!0,i.filesCancelled++,o.uploading&&(i.uploads.current--,o.uploading=!1,o.xhr.abort(),delete o.xhr,t.upload.call(a)),e.inArray("onCancel",s.overrideEvents)<0&&i.removeQueueItem(o,n),"function"==typeof s.onCancel&&s.onCancel.call(a,o)})},upload:function(t,o){this.each(function(){var n=e(this),a=n.data("uploadifive"),i=a.settings;if(t)a.uploadFile.call(n,t);else if(a.uploads.count+a.uploads.current<i.uploadLimit||0==i.uploadLimit){if(!o){a.uploads.attempted=0,a.uploads.successsful=0,a.uploads.errors=0;var s=a.filesToUpload();"function"==typeof i.onUpload&&i.onUpload.call(n,s)}e("#"+i.queueID).find(".uploadifive-queue-item").not(".error, .complete").each(function(){return _file=e(this).data("file"),a.uploads.current>=i.simUploadLimit&&0!==i.simUploadLimit||a.uploads.current>=i.uploadLimit&&0!==i.uploadLimit||a.uploads.count>=i.uploadLimit&&0!==i.uploadLimit?!1:void(i.checkScript?(_file.checking=!0,skipFile=a.checkExists(_file),_file.checking=!1,skipFile||a.uploadFile(_file,!0)):a.uploadFile(_file,!0))}),0==e("#"+i.queueID).find(".uploadifive-queue-item").not(".error, .complete").size()&&a.queueComplete()}else 0==a.uploads.current&&(e.inArray("onError",i.overrideEvents)<0&&a.filesToUpload()>0&&0!=i.uploadLimit&&alert("The maximum upload limit has been reached."),"function"==typeof i.onError&&i.onError.call(n,"UPLOAD_LIMIT_EXCEEDED",a.filesToUpload()))})},destroy:function(){this.each(function(){var o=e(this),n=o.data("uploadifive"),a=n.settings;t.clearQueue.call(o),a.queueID||e("#"+a.queueID).remove(),o.siblings("input").remove(),o.show().insertBefore(n.button),n.button.remove(),"function"==typeof a.onDestroy&&a.onDestroy.call(o)})}};e.fn.upload=function(o){return t[o]?t[o].apply(this,Array.prototype.slice.call(arguments,1)):"object"!=typeof o&&o?void e.error("The method "+o+" does not exist in $.uploadify"):t.init.apply(this,arguments)}}(n)}),define("js/me/index",["jquery","swiper","lazyload","index"],function(e,t,o){var n,a=e("jquery"),i=e("js/plugin/notice-scroll"),s=a(".user-avatar"),r=a(".list-item"),l=new Image;e("js/product/recommend-for-you-user-center"),e("js/product/suspend-cart"),n=s.data("avatar"),l.src=n,l.onload=function(){s.css("background-image","url("+n+")")},i(".notice",1e3*a(".notice").data("time")),a(".yoho-page").on("touchstart",".list-item, .type-item, .order-title",function(){r.removeClass("highlight"),a(this).addClass("highlight")}).on("touchend touchcancel",".list-item, .type-item, .order-title",function(){a(this).removeClass("highlight")})}),define("js/product/recommend-for-you-user-center",["swiper","jquery","lazyload","index"],function(e,t,o){var n=(e("swiper"),e("jquery")),a=e("lazyload"),i=n(".recommend-for-you");n.get("/product/recommend-for-you/userCenter").then(function(e){var t=[];i.html(e).show(),a(n("img.lazy")),i.find(".good-info").each(function(){t.push(n(this).data("id"))}),window.givePoint({REC_POSE:110004,PRD_ID:t.join(","),PRD_NUM:n(".recommend-for-you .good-info").length,ACTION_ID:0,page_num:1}),i.find(".good-info").on("click","a",function(){var e=n(this).closest(".good-info").index()+1;return window.givePoint({REC_POSE:110004,PRD_ID:n(this).closest(".good-info").data("id"),PRD_NUM:e,ACTION_ID:1,page_num:1}),!0})}).fail(function(){i.hide()})}),define("js/me/coupons",["jquery","hammer","mlellipsis"],function(e,t,o){function n(e,t){d.showLoadingMask(),s.ajax({type:"POST",url:"/home/couponData",dataType:"html",data:{status:e,page:t},success:function(e){s("#employ").append(e),window.rePosFooter(),d.hideLoadingMask()}})}function a(){return s(window).scrollTop()+s(window).height()>s("body").height()-100?(u++,void n(c,u)):void 0}var i,s=e("jquery"),r=e("hammer"),l=e("mlellipsis"),d=e("js/plugin/loading"),c=0,u=1;l.init(),s(".yoho-footer").css("border-top","1px solid #e0e0e0"),s(".employ span").each(function(e){i=new r(s(".employ span")[e]),i.on("tap",function(t){s(".employ span").removeClass("active").eq(e).addClass("active"),s("#employ").html(" "),c=e,u=1,n(c,u),window.rePosFooter()})}),s(window).scroll(function(){window.requestAnimationFrame(a)}),n(c,u)}),define("js/me/online-service",["jquery"],function(e,t,o){var n=e("jquery"),a=n(".question-tab .tab-item");a.on("touchend",function(){var e=n(this).data("tab");e='[data-tab-name="'+e+'"]',a.removeClass("current"),n(this).addClass("current"),n(".question-list").removeClass("current"),n(e).addClass("current")}),n(".yoho-page").on("touchstart",".connect-item, .question-item",function(){n(this).siblings().removeClass("highlight"),n(this).addClass("highlight")}).on("touchend touchcancel",".connect-item, .question-item",function(){n(this).removeClass("highlight")})}),define("js/me/address",["jquery","hammer"],function(e,t,o){var n,a=e("jquery"),i=e("js/plugin/tip"),s=e("js/plugin/loading"),r=a(".action"),l=a(".add-address"),d=a("#yoho-footer"),c=a(".confim-mask"),u=a(".page-wrap"),h=a(".address-item");e("js/common"),u.first().css("min-height",function(){return a(window).height()-a("#yoho-header").height()-d.height()}),window.rePosFooter(),c.on("touchend",".cancel",function(e){return n=null,c.fadeOut(),!1}).on("touchend",".confim",function(){return s.showLoadingMask(),c.fadeOut(),a.ajax({method:"POST",url:"/home/delAddress",data:{id:n}}).then(function(e){"object"!==a.type(e)&&(e={}),200!==e.code?(i.show(e.message||"网络出了点问题~"),s.hideLoadingMask()):window.location.reload()}).fail(function(){i.show("网络出了点问题~"),s.hideLoadingMask()}).always(function(){n=null}),!1}),h.length<5&&l.attr("href",l.data("href")),l.on("touchend",function(){return h.length>=5?(i.show("您最多添加5个收货地址"),!1):void 0}),r.on("touchend",".del",function(){return n=a(this).data("id"),c.fadeIn(),!1}),r.on("touchstart","a,span",function(){a(this).css("background","#eee")}).on("touchend touchcancel","a,span",function(){a(this).css("background","transparent")})}),define("js/me/browse-record",["jquery","lazyload","handlebars","source-map","hammer"],function(t,o,n){function a(e){var t=c.children(".browse-record-good").length;g||(1===f&&u.removeClass("hide"),g=!0,i.ajax({type:"GET",url:"/home/recordContent",data:{page:f+1},success:function(o){" "===o?(m=!0,h.addClass("hide"),p.removeClass("hide")):(0===t?(c.html(o),s()):(c.append(o),s(c.find(".browse-record-good:gt("+(t-1)+") .lazy"))),window.rePosFooter(),f++,e&&e())},complete:function(){g=!1}}))}var i=t("jquery"),s=t("lazyload"),r=t("js/plugin/loading"),l=t("js/plugin/tip"),d=t("js/me/dialog"),c=i(".records"),u=i(".load-more"),h=u.children(".more"),p=u.children(".no-more"),f=0,m=!1,g=!1,v=i(window).height();r.init(),r.showLoadingMask(),a(r.hideLoadingMask),i(window).scroll(function(){m||v+i(window).scrollTop()>i(document).height()-.25*c.height()&&a()}),c.on("touchstart",".del-icon",function(){var e=i(this).closest(".browse-record-good"),t=e.data("skn");d.showDialog({dialogText:"确定删除此条浏览记录吗?",hasFooter:{leftBtnText:"取消",rightBtnText:"确定"}},function(){i.ajax({type:"GET",url:"/home/delRecord",data:{skn:t},success:function(e){200===e.code&&(d.showDialog({dialogText:"删除浏览记录成功",autoHide:2e3,fast:!0}),setTimeout(function(){window.history.go(0)},1200))}})})}),i(".deps").on("touchstart","span",function(){i(this).css("background","#eee")}).on("touchend touchcancel","span",function(){i(this).css("background","transparent")}),i(".invalidGoods").on("touchstart touchend",function(){var t=i(e.target).closest("span");if(!t.hasClass("del-icon"))return l.show("商品已下架"),!1})}),define("js/me/address-act",["jquery","hammer"],function(e,t,o){function n(e){f.html(e),y.on("touchend",function(){p.hide(),f.show(),b="list",g.html("地区选择")}),f.find(".address").each(function(e,t){var o=new r(t);o.on("tap",function(e){var t=s(e.target);"li"!==e.target.tagName.toLowerCase()&&(t=t.parent("li")),C.push(t.children(".caption").text().trim()),t.siblings().hide(),t.children("ul").show().children("li").show(),e.srcEvent.preventDefault(),e.srcEvent.stopPropagation()})}),f.find(".address-last").each(function(e,t){var o=new r(t);o.on("tap",function(e){var t=s(e.target);C.push(t.text().trim()),s('[name="area"]').val(C.join(" ")),s('[name="area_code"]').val(t.data("id")),p.show(),b="edit",g.html(w),f.hide(),f.find("ul").hide().find("li").removeClass("highlight"),f.children("ul").show().children("li").show(),C=[],e.srcEvent.preventDefault(),e.srcEvent.stopPropagation()})}),f.on("touchstart","li",function(){s(this).addClass("highlight")}).on("touchend touchcancel","li",function(){s(this).removeClass("highlight")})}var a,i,s=e("jquery"),r=e("hammer"),l=e("js/plugin/tip"),d=e("js/plugin/security"),c=e("js/plugin/loading"),u=s(".edit-address"),h=s(".submit"),p=s(".my-edit-address-page"),f=s(".my-address-list-page"),m=s(".nav-back"),g=s(".nav-title"),v=s("input, textarea"),w=g.html(),y=s(".area"),b="edit",C=[],j=s.queryString();s(p,f).css("min-height",function(){return s(window).height()-s("#yoho-header").height()}),m.attr("href","javascript:void(0);"),m.on("touchend",function(e){"list"===b?(f.hide(),p.show(),e.preventDefault(),b="edit",g.html(w),f.hide(),f.find("ul").hide().find("li").removeClass("highlight"),f.children("ul").show().children("li").show(),C=[]):window.history.go(-1)}),u.on("submit",function(){return a?!1:d.hasDangerInput(!1)?!1:s(this).find('[name="consignee"]').val()?s(this).find('[name="mobile"]').val()?s(this).find('[name="area_code"]').val()&&s(this).find('[name="area"]').val()?s(this).find('[name="address"]').val()?(a=!0,c.showLoadingMask(),h.css("background","#777"),s.ajax({method:"POST",url:"/home/saveAddress",data:s(this).serialize()}).then(function(e){"object"!==s.type(e)&&(e={}),200!==e.code?(l.show(e.message||"网络出了点问题~"),a=!1,c.hideLoadingMask()):"shopping"===j.refer?window.location.href="/cart/index/selectAddress":"modify"===j.refer?window.location.href="/home/addressModify":window.location.href="/home/address"}).fail(function(){l.show("网络出了点问题~"),a=!1,c.hideLoadingMask(),h.css("background","#444")}),!1):(l.show("地址不能为空"),!1):(l.show("省市区不能为空"),!1):(l.show("手机号不能为空"),!1):(l.show("收件人不能为空"),!1)}),h.on("touchend",function(){return d.hasDangerInput(!1)?!1:(v.blur(),u.submit(),!1)}).on("touchstart",function(){s(this).addClass("highlight")}).on("touchend touchcancel",function(){s(this).removeClass("highlight")}),window.localStorage&&window.localStorage.getItem&&(i=window.localStorage.getItem("chinaAddressList")),i?n(i):s.ajax({method:"GET",url:"/home/locationList",timeout:6e4}).then(function(e){n(e),window.localStorage&&window.localStorage.setItem&&window.localStorage.setItem("chinaAddressList",e)}).fail(function(){l.show("获取省市区列表失败")})}),define("js/me/logistic",["jquery","hammer","mlellipsis","lazyload"],function(e,t,o){function n(){d+l>r?window.rePosFooter():s.css("border-top","1px solid #f1f1f1")}function a(){return window.cookie("_Channel")||"boys"}var i=e("jquery"),s=i("#yoho-footer"),r=window.outerHeight,l=document.body.offsetHeight,d=s.height();i(document).ready(n),e("js/home/maybe-like")(a()),i(window).scrollTop(1).scrollTop(0)}),define("js/me/pay",["jquery","hammer"],function(e,t,o){function n(){document.addEventListener("WeixinJSBridgeReady",function(){window.WeixinJSBridge&&window.WeixinJSBridge.call("hideOptionMenu")})}function a(e,t){y.addClass("hide"),window.WeixinJSBridge&&window.WeixinJSBridge.invoke("getBrandWCPayRequest",t,function(t){window.location.href="/home/orders/detail?order_code="+e+"&openId=true"})}function i(e){var t;y.removeClass("hide"),void 0===typeof WeixinJSBridge?document.addEventListener?document.addEventListener("WeixinJSBridgeReady",a,!1):document.attachEvent&&(document.attachEvent("WeixinJSBridgeReady",a),document.attachEvent("onWeixinJSBridgeReady",a)):m.ajax({type:"GET",url:"/shopping/pay/wechatwapapi",data:{order_code:e},dataType:"json",success:function(o){200===o.code?(t=o.data.jsApiParameters,a(e,t)):v.show("微信支付调取失败")},error:function(){v.show("请刷新本页面,完成微信支付")},complete:function(){y.addClass("hide")}})}function s(){var e=window.navigator.userAgent.toLowerCase();return e.indexOf("micromessenger")>0}function r(){var e=m(".app");e.each(function(e,t){return"weixin"===m(t).parent().attr("id")?(m(t).parent().css("display","none"),!1):void 0})}function l(){var e=m(".app");e.each(function(e,t){return"alipay"===m(t).parent().attr("id")?(m(t).closest("a").css("display","none"),!1):void 0})}function d(){s()?l():r()}function c(e,t){m(e).css("background-position-y",t)}function u(){var e=m(".box"),t=null,o=null;e.each(function(e,n){t=m(n).find(".icon").find("div"),t.length>0&&(o=m(n).attr("id"),"alipay"!==o&&c(t,x[o]))})}function h(){m(".payapp-list").css("visibility","visible")}function p(){var e=m(".box");e.on("touchstart",function(e){m(this).addClass("bytouch")}).on("touchend touchcancel",function(){e.removeClass("bytouch")})}function f(){d(),g.hideLoadingMask(),h(),u(),p()}var m=e("jquery"),g=e("js/plugin/loading"),v=e("js/plugin/tip"),w=e("hammer"),y=m(".loading-toast"),b=document.getElementById("ordercode").value,C=document.getElementById("weixin"),j=C&&new w(C),x={baidu:"-2.7rem",weixin:"-1.2rem",QQ:"-5.4rem",bank:"-4rem"};window.wx&&wx.hideOptionMenu(),void 0===typeof WeixinJSBridge?(document.addEventListener?document.addEventListener("WeixinJSBridgeReady",n,!1):document.attachEvent&&(document.attachEvent("WeixinJSBridgeReady",n),document.attachEvent("onWeixinJSBridgeReady",n)),n()):n(),j&&j.on("tap",function(){i(b)}),g.showLoadingMask(),m(document).ready(f)}),define("js/me/personal-details",["jquery"],function(e,t,o){var n,a=e("jquery"),i=a(".user-avatar"),s=new Image;n=i.data("avatar"),s.src=n,s.onload=function(){i.css("background-image","url("+n+")")}}),define("js/me/currency",["jquery"],function(e,t,o){function n(e){i.ajax({type:"POST",url:"/home/ajaxCurrencyDetail",dataType:"html",data:{page:e},success:function(e){i(".coin-detail").append(e),window.rePosFooter()}})}function a(){return i(window).scrollTop()+i(window).height()>i("body").height()-100?(r++,void n(r)):void 0}var i=e("jquery"),s=e("js/plugin/loading"),r=1;s.showLoadingMask(),i(window).scroll(function(){window.requestAnimationFrame(a)}),n(r),i(document).ready(s.hideLoadingMask)}),define("js/me/currency-new",["jquery","hammer","mlellipsis","lazyload"],function(e,t,o){function n(){return window.cookie("_Channel")||"boys"}e("js/home/maybe-like")(n())}),define("js/me/message",["jquery","handlebars","source-map","hammer"],function(e,t,o){function n(e){s.showLoadingMask(),i.ajax({type:"POST",url:"/home/ajaxMessage",dataType:"html",data:{page:e},success:function(t){" "===t&&(c=!0,1===e&&(t='<p style="text-align:center">您没有消息</p>')),i(".massage-page").append(t),window.rePosFooter(),s.hideLoadingMask()}})}function a(){!c&&i(window).scrollTop()+i(window).height()>i("body").height()-100&&(d++,n(d))}var i=e("jquery"),s=e("js/plugin/loading"),r=e("js/me/dialog"),l=i(".massage-page"),d=1,c=!1;i(window).scroll(function(){window.requestAnimationFrame(a)}),l.on("touchstart",".del",function(){var e=i(this).closest(".massage-list"),t=e.data("id");r.showDialog({dialogText:"确定删除这条消息吗?",hasFooter:{leftBtnText:"取消",rightBtnText:"确定"}},function(){i.ajax({type:"POST",url:"/home/ajaxDelMes",data:{id:t},success:function(e){200===e.code?(r.showDialog({dialogText:"删除消息成功",autoHide:2e3,fast:!0}),setTimeout(function(){window.history.go(0)},1200)):r.showDialog({dialogText:e.message,autoHide:2e3,fast:!0})}})})}),n(d)}),define("js/me/message-detail",["jquery","handlebars","source-map","hammer"],function(e,t,o){var n=e("jquery"),a=e("js/me/dialog"),i=n(".massage-page"),s=!1;i.on("touchstart",".pick-coupon-btn",function(){if(!s){s=!0;var e=n(this).data("id");n.ajax({type:"POST",url:"/home/pickCoupon",data:{id:e},success:function(e){200===e.code&&(a.showDialog({dialogText:"领取成功",autoHide:2e3,fast:!0}),n(this).removeClass("pick-coupon-btn")),s=!1,a.showDialog({dialogText:e.message,autoHide:2e3,fast:!0})}})}})}),define("js/me/address-modify",["jquery","hammer"],function(e,t,o){var n,a=e("jquery"),i=e("js/plugin/tip"),s=a(".confim-modify-mask"),r=a(".modifyAdd"),l=r.data("orderCode");e("js/common"),a(".address-item").on("touchend",function(){n=a(this).data("addressId"),r.data("rel")===!0?(s.find(".content").text("关联订单的收货地址将会一起修改且不可修改第二次,请确认是否修改?"),s.fadeIn()):(s.find(".content").text("收货地址仅且只能修改一次,请确认是否修改?"),s.fadeIn())}),s.on("touchend",".cancel",function(e){return n=null,s.fadeOut(),!1}).on("touchend",".confim",function(){return a.ajax({method:"GET",url:"/home/chooseAddress",data:{addressId:n,orderCode:l}}).then(function(e){"object"!==a.type(e)&&(e={}),200!==e.code?(s.fadeOut(),i.show(e.message||"网络出了点问题~")):window.location.href="/home/orderdetail?order_code="+l}).fail(function(){i.show("网络出了点问题~")}).always(function(){n=null}),!1})}),define("js/cart/entry",["jquery","mlellipsis","hammer","handlebars","source-map","swiper","lazyload","index"],function(e,t,o){e("js/cart/cart"),e("js/cart/gift-advance"),e("js/cart/order-ensure"),e("js/cart/invoice-info"),e("js/cart/select-coupon"),e("js/cart/select-address"),e("js/cart/jit-detail")}),define("js/cart/cart",["jquery","mlellipsis","hammer","handlebars","source-map","swiper","lazyload","index"],function(e,t,o){function n(){return window.isCookiesEnabled()?p(".cart-goods").length<=0&&!q:p(".cart-goods").length<=0}function a(){return b.not(".hide")}function i(){a().find(".shopping-cart-good .name").each(function(){this.mlellipsis(2)}),T=!0}function s(){return a().find(".cart-goods .icon-cb-checked").length>0}function r(){var e=a().find(".freebie");return!(e.length<=0)}function l(){var e,t=!1;return"ordinary"===C?e=p(".common .low-stocks"):"advance"===C&&(e=p(".presell .low-stocks")),e.length<=0?t:(e.each(function(e,o){p(o).parent().parent().parent().siblings(".checkbox").hasClass("icon-cb-checked")&&(E+=1,t=!0)}),t)}function d(){v.showDialog({dialogText:"您还未选择赠品,是否去选择赠品",hasFooter:{leftBtnText:"我不要赠品",rightBtnText:"去选择"}},function(){window.location.href=a().find(".freebie > a").attr("href")},function(){var e=window.cookie("order-info");e&&window.setCookie("order-info",""),window.location.href="/cart/index/orderEnsure?cartType="+C})}var c,u,h,p=e("jquery"),f=e("mlellipsis"),m=e("hammer"),g=e("js/cart/chose-panel"),v=e("js/me/dialog"),w=e("js/plugin/loading"),y=e("js/plugin/tip"),b=p(".cart-content"),C=p("#cartType").val(),j=p(".cart-nav"),x=p(".shopping-cart-page"),k=!1,T=!1,q="true"===window.cookie("_yoho-cart-refreshByDelete"),E=0;w.showLoadingMask(),e("js/product/recommend-for-you-cart"),n()||e("js/cart/good"),x.css("display","block"),w.hideLoadingMask(),window.setCookie("_yoho-cart-refreshByDelete",!1),f.init(),"function"==typeof window.cookie&&"y"===window.cookie("_hasShowCartPresellTip")?(p("#presell-tip").removeClass("show").addClass("hide"),k=!0):p("#presell-tip").removeClass("hide").addClass("show"),"advance"===C&&(b.toggleClass("hide"),p("#common-cart-nav").removeClass("active"),p("#presell-cart-nav").addClass("active"),i(),p(window).trigger("scroll")),j.length>0&&(c=new m(document.getElementsByClassName("cart-nav")[0]),c.on("tap",function(e){var t=p(e.target).closest("li");t.hasClass("active")||("ordinary"===C?(C="advance",p("#cartType").val("advance")):(C="ordinary",p("#cartType").val("ordinary")),t.siblings(".active").removeClass("active"),t.addClass("active"),b.toggleClass("hide"),T===!1&&i(),p(window).trigger("scroll"))}),k||setTimeout(function(){p("#presell-tip").removeClass("show").addClass("hide"),window.setCookie("_hasShowCartPresellTip","y")},3e3)),p(".advance-buy").length>0&&(u=new m(document.getElementsByClassName("advance-buy")[0]),u.on("tap",function(e){window.location.href="/cart/index/advanceBuy?cartType="+C})),p(".freebie").length>0&&(h=new m(document.getElementsByClassName("freebie")[0]),h.on("tap",function(e){window.location.href="/cart/index/gift?cartType="+C})),/MicroMessenger/i.test(navigator.userAgent)&&p(".btn-login").attr("href","/passport/login/wechat?refer="+location.href),p(".btn-balance").on("touchend",function(){var e=window.cookie("order-info");return E=0,l()?(y.show("所选商品中有"+E+"种库存不足的商品"),!1):r()?(d(),!1):void(s()?(e&&window.setCookie("order-info",""),window.location.href="/cart/index/orderEnsure?cartType="+C):y.show("请先勾选商品"))}),p(".off-shell-goods").on("click",function(e){var t=p(e.target).closest("span");if(!t.hasClass("icon-del"))return y.show("商品已下架"),!1}),p(".chose").on("touchend",function(){g.show()}),j.on("touchstart","li",function(e){p(this).addClass("bytouch")}).on("touchend touchcancel",function(){j.find("li").removeClass("bytouch")}),p(window).scrollTop(1).scrollTop(0),0===p(".invalid-goods").find(".shopping-cart-good").length&&p("#failure-goods").removeClass("invalid-goods")}),define("js/product/recommend-for-you-cart",["swiper","jquery","lazyload","index"],function(e,t,o){var n=(e("swiper"),e("jquery")),a=e("lazyload"),i=n(".recommend-for-you");n.get("/product/recommend-for-you/cart").then(function(e){var t=[];i.html(e).show(),a(n("img.lazy")),i.find(".good-info").each(function(){t.push(n(this).data("id"))}),window.givePoint({REC_POSE:110003,PRD_ID:t.join(","),PRD_NUM:n(".recommend-for-you .good-info").length,ACTION_ID:0,page_num:1}),i.find(".good-info").on("click","a",function(){var e=n(this).closest(".good-info").index()+1;return window.givePoint({REC_POSE:110003,PRD_ID:n(this).closest(".good-info").data("id"),PRD_NUM:e,ACTION_ID:1,page_num:1}),!0})}).fail(function(){i.hide()})}),define("js/cart/good",["jquery","mlellipsis","lazyload","handlebars","source-map","hammer"],function(e,t,o){function n(e){this.goods_type=e.goods_type,this.buy_number=e.buy_number,this.product_sku=e.product_sku,this.selected=e.selected,this.hasPromotion=e.hasPromotion}function a(e,t,o,n){return e.length<2?(m.show("出错啦!"), +!1):(u.remove(),d(e).appendTo("#mainCart"),u.init(),u.setEditModeWithSknId(t,o),n||u.disableNumEdit(),void u.show())}function i(e,t){v||(v=!0,d.ajax({url:"select",type:"post",data:{skuList:JSON.stringify(e)},success:function(e){200===e.code?t():m.show(e.message)},error:function(){m.show("网络异常")},complete:function(){v=!1}}))}function s(){var e,t=d(".shopping-cart-good .icon-cb-checked"),o=d(".shopping-cart-good .icon-checkbox");g.hasClass("icon-cb-checked")?(g.removeClass("icon-cb-checked").addClass("icon-checkbox"),e=!0):(g.removeClass("icon-checkbox").addClass("icon-cb-checked"),e=!1),e?t.each(function(e,t){d(t).removeClass("icon-cb-checked").addClass("icon-checkbox")}):o.each(function(e,t){d(t).removeClass("icon-checkbox").addClass("icon-cb-checked")}),window.location.href="/cart/index/index?cartType="+d("#cartType").val()}function r(e,t,o){var a={},s=d(".cart-content:not(.hide) .shopping-cart-good"),r=null,l=[];a.goods_type=t,a.selected=e?"N":"Y",s.each(function(e,t){r=d(t),a.product_sku=d(t).data("id"),a.hasPromotion=d(t).data("promotion"),a.buy_number=r.find(".count").eq(0).text().trim().replace("×",""),l.push(new n(a))}),i(l,o)}var l,d=e("jquery"),c=e("mlellipsis"),u=e("js/cart/chose-panel"),h=e("js/plugin/loading"),p=e("lazyload"),f=e("js/me/dialog"),m=e("js/plugin/tip"),g=d(".balance .checkbox"),v=!1;c.init(),p({try_again_css:"order-failure"}),setTimeout(function(){d(".shopping-cart-good .name").each(function(){this.mlellipsis(2)})},0),d(".cart-goods").on("touchstart",".checkbox",function(){var e=d(this),t=e.closest(".shopping-cart-good"),o=t.data("id"),a=t.data("promotion"),i=[],s={};return!e.hasClass("icon-cb-checked")&&e.siblings(".info").find(".low-stocks").length>0?(m.show("库存不足,无法购买"),!1):(s.goods_type=d("#cartType").val(),s.selected=e.hasClass("icon-cb-checked")?"N":"Y",s.product_sku=o,s.hasPromotion=a,s.buy_number=t.find(".count").eq(0).text().trim().replace("×",""),i.push(new n(s)),void d.ajax({type:"post",url:"select",data:{skuList:JSON.stringify(i)}}).then(function(t){200===t.code?(e.hasClass("icon-cb-checked")?e.removeClass("icon-cb-checked").addClass("icon-checkbox"):e.removeClass("icon-checkbox").addClass("icon-cb-checked"),window.location.href="/cart/index/index?cartType="+d("#cartType").val()):400===t.code&&m.show("网络异常")},function(){m.show("网络异常")}))}),d(".icon-edit").on("touchstart",function(e){var t,o,n,i,s,r=d(this),c=r.closest(".shopping-cart-good").data("skn");return r.parents(".off-shell-goods").length?(m.show("商品已下架"),!1):c===l?void u.show():(l=c,t=r.closest(".info").siblings(".checkbox"),o=r.closest(".deps").siblings(".few-tag"),n=r.closest(".shopping-cart-good").data("id"),i=r.data("count"),s=!o.hasClass("gift-tag")&&!o.hasClass("plus-tag"),e.stopPropagation(),h.showLoadingMask(),void d.ajax({url:"/cart/index/goodinfo",data:{skn:c,buy_num:i},success:function(e){a(e,n,t.hasClass("icon-cb-checked"),s)},error:function(){m.show("网络异常"),window.location.reload()},complete:function(){h.hideLoadingMask()}}))}),d(".icon-del").on("touchstart",function(e){var t=d(this);e.stopPropagation(),f.showDialog({dialogText:"您确定要从购物车中删除吗?",hasFooter:{leftBtnText:"取消",rightBtnText:"确定"}},function(){var e=t.closest(".shopping-cart-good"),o=t.data("count");d.ajax({method:"post",url:"/cart/index/del",data:{sku:e.data("id"),count:o,promotionId:e.data("promotion")}}).then(function(e){200===e.code?(f.showDialog({dialogText:"删除成功",autoHide:!0,fast:!0}),window.setCookie("_yoho-cart-refreshByDelete",!0),window.location.href="/cart/index/index?cartType="+d("#cartType").val()):m.show(e.message)},function(){m.show("网络异常"),window.location.reload()})})}),g.on("touchend",function(){var e=d("#cartType").val(),t=d(this).hasClass("icon-cb-checked");if("ordinary"===e){if(!t&&d(".common .low-stocks").length>0)return m.show("所选商品中含有库存不足的商品"),!1}else if("advance"===e&&!t&&d(".presell .low-stocks").length>0)return m.show("所选商品中含有库存不足的商品"),!1;r(t,e,s)}),d(".down").on("touchend",function(){u.show()})}),define("js/cart/gift-advance",["jquery","mlellipsis","lazyload","hammer"],function(e,t,o){function n(e,t){d.showLoadingMask(),a.get("/cart/index/giftinfo",{skn:e,promotionId:t}).then(function(e){return e?void c.show(e,function(){window.location.href="/cart/index/index?cartType="+h.cartType}):void l.show("网络错误")},function(){l.show("网络错误")}).always(function(){d.hideLoadingMask()})}var a=e("jquery"),i=e("mlellipsis"),s=e("lazyload"),r=e("hammer"),l=e("js/plugin/tip"),d=e("js/plugin/loading"),c=e("js/cart/chose-panel"),u=a(".gift-advance-page"),h=a.queryString();e("js/common"),s(a(".lazy")),i.init(),u.find(".chose").each(function(e,t){var o=new r(t);o.on("tap",function(e){var t=a(e.target),o=t.closest(".gift-advance-good").data("id"),i=t.closest(".advance-block").data("promotion-id");n(o,i)})}),setTimeout(function(){a(".gift-advance-good .name").each(function(){this.mlellipsis(2)})},0)}),define("js/cart/order-ensure",["jquery","lazyload","hammer"],function(e,t,o){function n(){P.invoiceType?m(".invoice-type").text(M[P.invoiceType]+"("+F[P.invoicesType]+")"):m(".invoice-type").text("服装(电子)")}function a(){var e,t=location.search.substr(1).split("&"),o=[],n={};for(e=0;e<t.length;e++)o=t[e].split("="),n[o[0]]=o[1],o=[];return n}function i(){return a().limitproductcode}function s(e){var t,o=m(".more-jit a").get(0);o&&(t=o.href,t.indexOf("deliveryId")<0?o.href=t+"&deliveryId="+e:o.href=t.replace(/deliveryId=(\d)/,"deliveryId="+e))}function r(){var e=I("yohoCoin"),t=I("deliveryId"),o={cartType:I("cartType")||"ordinary",deliveryId:I("deliveryId"),paymentTypeId:I("paymentTypeId"),couponCode:I("couponCode"),yohoCoin:e,skuList:i()?I("skuList"):void 0};_&&(o={type:"tickets",productSku:S,buyNumber:D,yohoCoin:e}),w.showLoadingMask(),m.ajax({method:"POST",url:"/cart/index/orderCompute",data:o}).then(function(e){"object"!==m.type(e)?window.location.reload():(void 0!==typeof e.last_order_amount&&(e.last_order_amount=(+e.last_order_amount).toFixed(2)),e.use_yoho_coin&&(x.find("em").html("- ¥ "+e.use_yoho_coin),k.html("已抵¥"+e.use_yoho_coin),x.find("em").show(),k.show()),f="",e.promotion_formula_list&&(m.each(e.promotion_formula_list,function(e,t){f+="<li><p>"+t.promotion+"</p><span>"+t.promotion_amount+"</span></li>"}),m(".price-cost span").html("¥"+e.last_order_amount),m(".bill span").html("¥"+e.last_order_amount),m(".total").html(f)),s(t))}).fail(function(){window.location.reload()}).always(function(){w.hideLoadingMask()})}function l(){var e=b.find('[name="invoice-title"]').val()||I("invoiceText"),t=m("#msg").find("input").val()||I("msg");return h?!1:t&&t.length>40?void v.show("留言不得超过40个汉字"):(w.showLoadingMask(),h=!0,void m.ajax({method:"POST",url:"/cart/index/orderSub",data:{addressId:I("addressId"),cartType:I("cartType")||"ordinary",deliveryId:I("deliveryId"),deliveryTimeId:I("deliveryTimeId"),invoiceText:I("invoice")?e:null,invoiceType:I("invoice")?b.find(".invoice-type").val()||I("invoiceType"):null,msg:t,paymentTypeId:I("paymentTypeId"),paymentType:I("paymentType"),couponCode:I("couponCode"),yohoCoin:I("yohoCoin"),skuList:i()?I("skuList"):void 0}}).then(function(e){var t;return e?void(200===e.code?(t=2===u?"/home/orderDetail?order_code="+e.data.order_code:"/home/orders/pay?order_code="+e.data.order_code,window.setCookie("order-info",""),window.location.href=t):e.message&&v.show(e.message)):void v.show("系统繁忙,请稍后再试!")}).fail(function(){v.show("系统繁忙,请稍后再试!")}).always(function(){h=!1,w.hideLoadingMask()}))}function d(e){return e=e||"",e.replace(/(\d{3})\d{4}(\d{4})/,"$1****$2")}function c(){if(!q.val())return void v.show("手机号必填");var e={productSku:S,buyNumber:D,mobile:q.val(),useYohoCoin:I("yohoCoin")};m.ajax({url:"/cart/index/submitTicket",type:"POST",dataType:"json",data:e,success:function(e){200===e.code?window.location.href="/home/orders/pay?order_code="+e.data.order_code:v.show(e.message)},error:function(){v.show("网络异常~")}})}var u,h,p,f,m=e("jquery"),g=e("lazyload"),v=e("js/plugin/tip"),w=e("js/plugin/loading"),y=e("js/cart/order-info"),b=m(".invoice"),C=m(".coupon-use.used"),j=m(".address-wrap"),x=m(".coin-check"),k=m(".coin .used"),T=m(".sub-block"),q=m("#mobile"),E=m.queryString(),I=y.orderInfo,_=m("#ticketsPage").val(),S=m("#productSku").val(),D=m("#buyNumber").val(),L=m("#yoho-header").outerHeight(),z=m(".address-wrap").outerHeight(),P=window.cookie("order-info")&&JSON.parse(window.cookie("order-info")),M={7:"服装",1:"图书",9:"配件",11:"日用品",3:"办公用品",6:"体育用品",10:"数码产品"},F={1:"纸质",2:"电子"};e("js/common"),g(),window.getUid()!==I("uid")&&(y.init(),window.location.reload()),C.data("name")!==I("couponName")&&(I("couponCode",null),I("couponName",null)),document.referrer&&-1!==document.referrer.indexOf("/cart/index/index")&&(I("couponCode",null),I("couponName",null)),i()&&function(){var e=[],t=a();t.type="limitcode",e.push(t),I("skuList",JSON.stringify(e)),I("limitUrlSufix",location.search)}(),(E.cartType||E.carttype||!I("cartType"))&&I("cartType",E.cartType||E.carttype||"ordinary"),m(".checkbox").on("touchstart",function(){var e=m(this);return e.hasClass("icon-cb-radio")?void e.removeClass("icon-cb-radio").addClass("icon-radio"):void(e.hasClass("icon-radio")&&e.removeClass("icon-radio").addClass("icon-cb-radio"))}),b.on("touchend",".checkbox",function(){var e=m(this);e.hasClass("icon-cb-radio")&&(b.addClass("focus"),I("invoiceText",""),I("invoiceType","7"),I("receiverMobile",m(".user-mobile").val()),I("invoicesType","2"),I("invoiceTitle","个人")),e.hasClass("icon-radio")&&(b.removeClass("focus"),I("invoiceText",null),I("invoiceType",null),I("receiverMobile",null),I("invoicesType",null),I("invoiceTitle",null)),P=window.cookie("order-info")&&JSON.parse(window.cookie("order-info")),n()}),I("addressId")||I("addressId",j.data("id")),m(".delivery-id").on("touchend","li",function(){I("deliveryId",m(this).data("id")),r()}),m(".payment-type").on("touchend","li",function(){I("paymentType",m(".icon-cb-radio",this).data("id"))}),m(".dispatch-time").on("touchend","li",function(){I("deliveryTimeId",m(this).data("id"))}),m(".coin").on("touchend",function(){var e=m(this);e.find(".checkbox").hasClass("icon-cb-radio")?(I("yohoCoin",e.data("yoho-coin")),e.find(".can-use").hide()):(I("yohoCoin",0),e.find(".coin-check em").hide(),e.find(".can-use").show(),e.find(".used").hide()),r()}),b.on("touchend",".checkbox",function(e){var t=m(this);I("invoice",t.hasClass("icon-cb-radio")),e.preventDefault(),e.stopPropagation()}),b.find('[name="invoice-title"]').on("blur",function(){I("invoiceText",m(this).val())}).end().find(".invoice-type").on("change",function(){I("invoiceType",m(this).val())}),m("#msg").find("textarea").on("blur",function(){I("msg",m(this).val())}),m(".pay-mode").on("click","li",function(){var e=m(this);I("paymentTypeId",e.data("pay-id")),I("paymentType",e.data("pay-type")),u=e.data("pay-type")}),m("form").on("submit",function(){return!1}),m(".dispatch").on("touchend","h3",function(){m(this).siblings("ul").is(":hidden")?(m(".dispatch h3").removeClass("border-none"),m(this).addClass("border-none"),m(".down").removeClass("hide"),m(".up").addClass("hide"),m(".up",this).removeClass("hide"),m(".down",this).addClass("hide"),m(".dispatch ul").hide(),m(this).siblings("ul").show()):(m(this).removeClass("border-none"),m(".down",this).removeClass("hide"),m(".up",this).addClass("hide"),m(this).siblings("ul").hide())}),T.on("touchstart","li",function(){m.each(m(this).parents("ul").find("i"),function(){m(this).parents("ul").find("i").removeClass("icon-cb-radio").addClass("icon-radio")}),m(this).parents("ul").hide(),m(".down").removeClass("hide"),m(".up").addClass("hide"),m(".dispatch h3").removeClass("border-none"),p=m(this).find("span").html(),m(this).parents(".sub-block").find("h3 span").html(p),m(this).find("i").hasClass("icon-cb-radio")?m(this).find("i").addClass("icon-radio"):m(this).find("i").hasClass("icon-radio")&&m(this).find("i").addClass("icon-cb-radio")}),m(".bill a").on("touchstart",function(){return _?void c():(I("paymentTypeId",m(".delivery-id .icon-cb-radio").data("id")),I("paymentType",m(".payment-type .icon-cb-radio").data("id")),u=m(".payment-type .icon-cb-radio").data("id"),void l())}),m(".info-phone").html(d(m(".info-phone").html())),I("address")&&"N"===I("address").is_support&&(I("deliveryId",m(".delivery-id .icon-cb-radio").data("id")),r()),q.blur(function(e){var t=/^[0123456789]{1,30}$/,o=q.val();t.test(o)||v.show("手机号码不正确!")}),n(),m(window).scroll(function(){m(this).scrollTop()>=L+z?m(".address-bottom").show():m(".address-bottom").hide()})}),define("js/cart/order-info",["jquery","hammer"],function(e,t,o){function n(){i={uid:window.getUid(),deliveryId:a(".dispatch-mode .chosed").data("id")||1,deliveryTimeId:1,paymentTypeId:1,yohoCoin:0,addressId:null,couponCode:null,couponName:null,invoice:null,invoiceText:null,invoiceType:null,invoiceTitle:null,receiverMobile:null,isModifyTel:!1,invoicesType:null,msg:null,cartType:"ordinary"},window.setCookie("order-info",JSON.stringify(i))}var a=e("jquery"),i=window.cookie("order-info");e("js/common");try{i=JSON.parse(i)}catch(s){n()}t.init=n,t.orderInfo=function(e,t){return void 0===t?i[e]:(i[e]=t,void window.setCookie("order-info",JSON.stringify(i)))}}),define("js/cart/invoice-info",["jquery","handlebars","source-map","hammer"],function(e,t,o){function n(e,t){t.hasClass("icon-cb-radio")||(e.find(".choose").removeClass("icon-cb-radio icon-radio").addClass("icon-radio"),t.removeClass("icon-radio").addClass("icon-cb-radio"),t.parent().addClass("on"),t.parent().siblings().removeClass("on"),u.val("true"))}function a(){var e=p.find(".on").data("id"),t=i(".invoice-top").find(".on").text(),o=f.attr("data-tel"),n=m.val(),a=h.data("id");if("true"===u.val()){if(2===e&&!C.test(f.attr("data-tel")))return s.show("请输入正确手机号"),f.focus(),!1;if("单位"===t&&0===n.length)return s.show("请填写发票抬头"),m.focus(),!1;if("单位"===t&&n.length>30)return s.show("发票抬头不得超过30个汉字"),m.focus(),!1;r.showDialog({dialogText:"确认保存修改内容?",hasFooter:{leftBtnText:"取消",rightBtnText:"确定"}},function(){v("invoiceText","单位"===t?n:""),v("invoiceType",a),v("receiverMobile",o),v("invoicesType",e),v("invoiceTitle",t),b&&y!==o?v("isModifyTel",!0):v("isModifyTel",!1),r.showDialog({dialogText:"保存成功",autoHide:!0,fast:!0}),window.location.href=j},function(){window.location.href=j})}else window.location.href=j}var i=e("jquery"),s=e("js/plugin/tip"),r=e("js/me/dialog"),l=e("js/cart/order-info"),d=i(".invoice-notice"),c=i(".company-area"),u=i(".edit-flag"),h=i(".choose-cont"),p=i(".invoice-type"),f=i(".tel"),m=i(".company"),g=i(".tel-area"),v=l.orderInfo,w=i(".invoice-cont").find(".icon-cb-radio").parent(),y=i(".copy-tel"),b=!1,C=/^(((13[0-9]{1})|(14[0-9]{1})|(15[0-9]{1})|(17[0-9]{1})|(18[0-9]{1}))+\d{8})$/,j="/cart/index/orderEnsure?cartType=ordinary";e("js/common"),window.getUid()!==v("uid")&&(l.init(),window.location.reload()),h.html(w.text()).attr("data-id",w.find("span").data("id")),i(".invoice-top span, .invoice-cont li").not(".invoice-cont .cont-title").on("touchstart",function(e){n(i(this).parent(),i(this).find(".choose")),i(this).parent().hasClass("invoice-cont")&&h.html(i(this).text()).attr("data-id",i(this).find("span").data("id")),"单位"===i(this).text()&&c.slideDown(),"个人"===i(this).text()&&c.slideUp()}),i(".invoice-type span").on("touchstart",function(){i(this).hasClass("on")||(i(this).addClass("on").siblings().removeClass("on"),u.val("true"),1===i(this).index()?g.slideUp():g.slideDown())}),i(".invoice-btn").on("touchstart",function(){return d.fadeIn(),!1}),i(".think-ok, .mask-bg").on("touchstart",function(){d.fadeOut()}),i(".istel").one("input",function(){i(this).val("").removeClass("istel")}),f.on("input",function(){i(this).attr("data-tel",i(this).val()),u.val("true"),b=!0}),m.on("input",function(){u.val("true")}),i(".confirm-btn, .nav-back").on("touchstart",function(e){e.preventDefault(),a()})}),define("js/cart/select-coupon",["jquery","handlebars","source-map","hammer","mlellipsis"],function(e,t,o){function n(){var e=r(".null"),t=r(".nav-title").height(),o=e.height();return 0===e.length?!1:void e.css({top:w/2-o/2+t})}function a(e){var t,o;return r.isArray(e)?(r(".coupon-wrap").html(r("#tmpl-no-coupon").html()),void n()):(t=e.notAvailableCoupons,o=e.coupons,r.each(o,function(e,t){t.couponValue=Math.floor(t.couponValue)}),r.each(t,function(e,t){t.couponValue=Math.floor(t.couponValue)}),v.append(f({coupons:o})).find(".employ-main").each(function(e,t){var o=new d(t);o.on("tap",function(e){var t=r(e.srcEvent.currentTarget),o=t.data("coupon-code");r.ajax({method:"POST",url:"/cart/index/couponSearch",data:{couponCode:o}}).then(function(e){200===e.code?(p("couponCode",e.data.coupon_code),p("couponName",e.data.coupon_title),window.location.href="/cart/index/orderEnsure"):e.message&&h.show(e.message)}).fail(function(){h.show("网络错误")})})}),t.length&&r(".not-avaliable-coupon-line").show(),r("#coupon-list-not").append(m({notAvailableCoupons:t})),void window.rePosFooter())}function i(){s||(u.showLoadingMask(),s=!0,r.ajax({type:"GET",url:"/cart/index/couponList",dataType:"json"}).then(a).fail(function(){}).always(function(){s=!1,u.hideLoadingMask()}))}var s,r=e("jquery"),l=e("handlebars"),d=e("hammer"),c=e("mlellipsis"),u=e("js/plugin/loading"),h=e("js/plugin/tip"),p=e("js/cart/order-info").orderInfo,f=l.compile(r("#tmpl-coupon").html()),m=l.compile(r("#tmpl-coupon-not-avaliable").html()),g=r("#new-coupon"),v=r("#coupon-list"),w=r(window).height();e("js/common"),c.init(),g.on("submit",function(){var e=r(this);return e.find('[name="couponCode"]').val()?(r.ajax({method:"POST",url:"/cart/index/couponSearch",data:e.serialize()}).then(function(e){e.message&&h.show(e.message),200===e.code&&(h.show("优惠券可用"),p("couponCode",e.data.coupon_code),p("couponName",e.data.coupon_title),window.location.href="/cart/index/orderEnsure")}).fail(function(){h.show("网络错误")}),!1):(h.show("请输入优惠券码"),!1)}),v.on("touchstart",".employ-main",function(){var e=r(this);e.siblings().removeClass("focus"),e.addClass("focus")}).on("touchend touchcancel",".employ-main",function(){var e=r(this);e.siblings().removeClass("focus"),e.removeClass("focus")}),r("body").on("touchend",".not-use",function(){p("couponCode",null),p("couponName",null),location.href="/cart/index/orderEnsure"}),g.find("input").on("input",function(){""!==r(this).val()?g.find(".submit").css("background","#444"):g.find(".submit").css("background","#b0b0b0")}),i()}),define("js/cart/select-address",["jquery","hammer"],function(e,t,o){var n,a=e("jquery"),i=e("js/cart/order-info").orderInfo,s=a(".confim-mask");e("js/common"),a(".address-item").on("click",function(){var e=a(this),t=e.data("address-id"),o={address_id:e.data("address-id"),consignee:e.find(".name").text(),mobile:e.find(".tel").text(),address_info:e.find(".address-info").text(),is_support:e.data("is-support")};i("addressId",t),i("address",o),window.location.href=e.data("href")+(i("limitUrlSufix")||"")}).on("click",".edit",function(){return window.location.href=a(this).data("href"),!1}).on("click",".del",function(){n=a(this).data("id")}),s.on("click",".confim",function(){i("addressId")===n&&(i("addressId",null),i("address",null))})}),define("js/cart/jit-detail",["swiper","jquery","index"],function(e,t,o){var n=e("swiper"),a=e("jquery"),i=a(window).height()-a("#yoho-header").height();a(".jit-detail-page").css("height",i),a(".jit-detail-page>div").show(),i=a(document).height()-a("#yoho-header").height(),a(".jit-detail-page").css("height",i),function(){return new n(".swiper-container",{slidesPerView:"auto",grabCursor:!0,slideElement:"a",lazyLoading:!0,watchSlidesVisibility:!0})}()}),define("js/life/entry",["jquery","hammer"],function(e,t,o){e("js/life/login"),e("js/life/coupon")}),define("js/life/login",["jquery","hammer"],function(e,t,o){function n(){a.ajax({type:"get",url:"/index/life/sendCoupon",dataType:"json",success:function(e){a(".statu").html(e.message),a(".statu-mark").show(),a(".statu-box").show(),200===e.code?(window.setCookie("lifeCoupon",e.data),location.href="/life/coupon"):401===e.code?(a(".successed").css("display","block"),a(".sure").click(function(){location.href="/life/coupon"})):403===e.code?a(".late").css("display","block"):a(".faill").css("display","block")}})}var a=e("jquery");e("js/common"),e("js/plugin/wx-share")(),a(".notice").click(function(){a(".code").show(),a(".mark").show()}),a(".close").click(function(){a(".code").hide(),a(".mark").hide()}),a(".coupon-btn").click(function(){n(),a(".mark").show()})}),define("js/life/coupon",["jquery","hammer"],function(e,t,o){var n=e("jquery");e("js/common"),n(".coupon-input").val(window.cookie("lifeCoupon")||""),e("js/plugin/wx-share")()}); \ No newline at end of file diff --git a/static/dist/myohobuy/4.9.24/lib.js b/static/dist/myohobuy/4.9.24/lib.js index 3abbe9a..b60779c 100644 --- a/static/dist/myohobuy/4.9.24/lib.js +++ b/static/dist/myohobuy/4.9.24/lib.js @@ -1,10 +1,10 @@ -!function(e,t){function i(e){return function(t){return{}.toString.call(t)=="[object "+e+"]"}}function n(){return E++}function r(e){return e.match(_)[0]}function s(e){for(e=e.replace(D,"/");e.match(L);)e=e.replace(L,"/");return e=e.replace(M,"$1/")}function o(e){var t=e.length-1,i=e.charAt(t);return"#"===i?e.substring(0,t):".js"===e.substring(t-2)||e.indexOf("?")>0||".css"===e.substring(t-3)||"/"===i?e:e+".js"}function a(e){var t=x.alias;return t&&T(t[e])?t[e]:e}function l(e){var t,i=x.paths;return i&&(t=e.match(N))&&T(i[t[1]])&&(e=i[t[1]]+t[2]),e}function c(e){var t=x.vars;return t&&e.indexOf("{")>-1&&(e=e.replace(I,function(e,i){return T(t[i])?t[i]:e})),e}function u(e){var t=x.map,i=e;if(t)for(var n=0,r=t.length;r>n;n++){var s=t[n];if(i=k(s)?s(e)||e:e.replace(s[0],s[1]),i!==e)break}return i}function p(e,t){var i,n=e.charAt(0);if(z.test(e))i=e;else if("."===n)i=s((t?r(t):x.cwd)+e);else if("/"===n){var o=x.cwd.match(O);i=o?o[0]+e.substring(1):e}else i=x.base+e;return 0===i.indexOf("//")&&(i=location.protocol+i),i}function h(e,t){if(!e)return"";e=a(e),e=l(e),e=c(e),e=o(e);var i=p(e,t);return i=u(i)}function d(e){return e.hasAttribute?e.src:e.getAttribute("src",4)}function f(e,t,i){var n=$.test(e),r=B.createElement(n?"link":"script");if(i){var s=k(i)?i(e):i;s&&(r.charset=s)}m(r,t,n,e),n?(r.rel="stylesheet",r.href=e):(r.async=!0,r.src=e),X=r,W?Y.insertBefore(r,W):Y.appendChild(r),X=null}function m(e,i,n,r){function s(){e.onload=e.onerror=e.onreadystatechange=null,n||x.debug||Y.removeChild(e),e=null,i()}var o="onload"in e;return!n||!G&&o?(o?(e.onload=s,e.onerror=function(){A("error",{uri:r,node:e}),s()}):e.onreadystatechange=function(){/loaded|complete/.test(e.readyState)&&s()},t):(setTimeout(function(){g(e,i)},1),t)}function g(e,t){var i,n=e.sheet;if(G)n&&(i=!0);else if(n)try{n.cssRules&&(i=!0)}catch(r){"NS_ERROR_DOM_SECURITY_ERR"===r.name&&(i=!0)}setTimeout(function(){i?t():g(e,t)},20)}function v(){if(X)return X;if(q&&"interactive"===q.readyState)return q;for(var e=Y.getElementsByTagName("script"),t=e.length-1;t>=0;t--){var i=e[t];if("interactive"===i.readyState)return q=i}}function y(e){var t=[];return e.replace(K,"").replace(U,function(e,i,n){n&&t.push(n)}),t}function w(e,t){this.uri=e,this.dependencies=t||[],this.exports=null,this.status=0,this._waitings={},this._remain=0}if(!e.seajs){var b=e.seajs={version:"2.2.0"},x=b.data={},S=i("Object"),T=i("String"),C=Array.isArray||i("Array"),k=i("Function"),E=0,P=x.events={};b.on=function(e,t){var i=P[e]||(P[e]=[]);return i.push(t),b},b.off=function(e,t){if(!e&&!t)return P=x.events={},b;var i=P[e];if(i)if(t)for(var n=i.length-1;n>=0;n--)i[n]===t&&i.splice(n,1);else delete P[e];return b};var A=b.emit=function(e,t){var i,n=P[e];if(n)for(n=n.slice();i=n.shift();)i(t);return b},_=/[^?#]*\//,D=/\/\.\//g,L=/\/[^\/]+\/\.\.\//,M=/([^:\/])\/\//g,N=/^([^\/:]+)(\/.+)$/,I=/{([^{]+)}/g,z=/^\/\/.|:\//,O=/^.*?\/\/.*?\//,B=document,R=r(B.URL),F=B.scripts,H=B.getElementById("seajsnode")||F[F.length-1],j=r(d(H)||R);b.resolve=h;var X,q,Y=B.head||B.getElementsByTagName("head")[0]||B.documentElement,W=Y.getElementsByTagName("base")[0],$=/\.css(?:\?|$)/i,G=+navigator.userAgent.replace(/.*AppleWebKit\/(\d+)\..*/,"$1")<536;b.request=f;var V,U=/"(?:\\"|[^"])*"|'(?:\\'|[^'])*'|\/\*[\S\s]*?\*\/|\/(?:\\\/|[^\/\r\n])+\/(?=[^\/])|\/\/.*|\.\s*require|(?:^|[^$])\brequire\s*\(\s*(["'])(.+?)\1\s*\)/g,K=/\\\\/g,Q=b.cache={},J={},Z={},ee={},te=w.STATUS={FETCHING:1,SAVED:2,LOADING:3,LOADED:4,EXECUTING:5,EXECUTED:6};w.prototype.resolve=function(){for(var e=this,t=e.dependencies,i=[],n=0,r=t.length;r>n;n++)i[n]=w.resolve(t[n],e.uri);return i},w.prototype.load=function(){var e=this;if(!(e.status>=te.LOADING)){e.status=te.LOADING;var i=e.resolve();A("load",i);for(var n,r=e._remain=i.length,s=0;r>s;s++)n=w.get(i[s]),n.status<te.LOADED?n._waitings[e.uri]=(n._waitings[e.uri]||0)+1:e._remain--;if(0===e._remain)return e.onload(),t;var o={};for(s=0;r>s;s++)n=Q[i[s]],n.status<te.FETCHING?n.fetch(o):n.status===te.SAVED&&n.load();for(var a in o)o.hasOwnProperty(a)&&o[a]()}},w.prototype.onload=function(){var e=this;e.status=te.LOADED,e.callback&&e.callback();var t,i,n=e._waitings;for(t in n)n.hasOwnProperty(t)&&(i=Q[t],i._remain-=n[t],0===i._remain&&i.onload());delete e._waitings,delete e._remain},w.prototype.fetch=function(e){function i(){b.request(o.requestUri,o.onRequest,o.charset)}function n(){delete J[a],Z[a]=!0,V&&(w.save(s,V),V=null);var e,t=ee[a];for(delete ee[a];e=t.shift();)e.load()}var r=this,s=r.uri;r.status=te.FETCHING;var o={uri:s};A("fetch",o);var a=o.requestUri||s;return!a||Z[a]?(r.load(),t):J[a]?(ee[a].push(r),t):(J[a]=!0,ee[a]=[r],A("request",o={uri:s,requestUri:a,onRequest:n,charset:x.charset}),o.requested||(e?e[o.requestUri]=i:i()),t)},w.prototype.exec=function(){function e(t){return w.get(e.resolve(t)).exec()}var i=this;if(i.status>=te.EXECUTING)return i.exports;i.status=te.EXECUTING;var r=i.uri;e.resolve=function(e){return w.resolve(e,r)},e.async=function(t,i){return w.use(t,i,r+"_async_"+n()),e};var s=i.factory,o=k(s)?s(e,i.exports={},i):s;return o===t&&(o=i.exports),delete i.factory,i.exports=o,i.status=te.EXECUTED,A("exec",i),o},w.resolve=function(e,t){var i={id:e,refUri:t};return A("resolve",i),i.uri||b.resolve(i.id,t)},w.define=function(e,i,n){var r=arguments.length;1===r?(n=e,e=t):2===r&&(n=i,C(e)?(i=e,e=t):i=t),!C(i)&&k(n)&&(i=y(""+n));var s={id:e,uri:w.resolve(e),deps:i,factory:n};if(!s.uri&&B.attachEvent){var o=v();o&&(s.uri=o.src)}A("define",s),s.uri?w.save(s.uri,s):V=s},w.save=function(e,t){var i=w.get(e);i.status<te.SAVED&&(i.id=t.id||e,i.dependencies=t.deps||[],i.factory=t.factory,i.status=te.SAVED)},w.get=function(e,t){return Q[e]||(Q[e]=new w(e,t))},w.use=function(t,i,n){var r=w.get(n,C(t)?t:[t]);r.callback=function(){for(var t=[],n=r.resolve(),s=0,o=n.length;o>s;s++)t[s]=Q[n[s]].exec();i&&i.apply(e,t),delete r.callback},r.load()},w.preload=function(e){var t=x.preload,i=t.length;i?w.use(t,function(){t.splice(0,i),w.preload(e)},x.cwd+"_preload_"+n()):e()},b.use=function(e,t){return w.preload(function(){w.use(e,t,x.cwd+"_use_"+n())}),b},w.define.cmd={},e.define=w.define,b.Module=w,x.fetchedList=Z,x.cid=n,b.require=function(e){var t=w.get(w.resolve(e));return t.status<te.EXECUTING&&(t.onload(),t.exec()),t.exports};var ie=/^(.+?\/)(\?\?)?(seajs\/)+/;x.base=(j.match(ie)||["",j])[1],x.dir=j,x.cwd=R,x.charset="utf-8",x.preload=function(){var e=[],t=location.search.replace(/(seajs-\w+)(&|$)/g,"$1=1$2");return t+=" "+B.cookie,t.replace(/(seajs-\w+)=1/g,function(t,i){e.push(i)}),e}(),b.config=function(e){for(var t in e){var i=e[t],n=x[t];if(n&&S(n))for(var r in i)n[r]=i[r];else C(n)?i=n.concat(i):"base"===t&&("/"!==i.slice(-1)&&(i+="/"),i=p(i)),x[t]=i}return A("config",e),b}}}(this),define("jquery",[],function(e,t,i){!function(e,t){"object"==typeof i&&"object"==typeof i.exports?i.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(e,t){function i(e){var t="length"in e&&e.length,i=Z.type(e);return"function"!==i&&!Z.isWindow(e)&&(!(1!==e.nodeType||!t)||("array"===i||0===t||"number"==typeof t&&t>0&&t-1 in e))}function n(e,t,i){if(Z.isFunction(t))return Z.grep(e,function(e,n){return!!t.call(e,n,e)!==i});if(t.nodeType)return Z.grep(e,function(e){return e===t!==i});if("string"==typeof t){if(ae.test(t))return Z.filter(t,e,i);t=Z.filter(t,e)}return Z.grep(e,function(e){return $.call(t,e)>=0!==i})}function r(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}function s(e){var t=fe[e]={};return Z.each(e.match(de)||[],function(e,i){t[i]=!0}),t}function o(){Q.removeEventListener("DOMContentLoaded",o,!1),e.removeEventListener("load",o,!1),Z.ready()}function a(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=Z.expando+a.uid++}function l(e,t,i){var n;if(void 0===i&&1===e.nodeType)if(n="data-"+t.replace(be,"-$1").toLowerCase(),i=e.getAttribute(n),"string"==typeof i){try{i="true"===i||"false"!==i&&("null"===i?null:+i+""===i?+i:we.test(i)?Z.parseJSON(i):i)}catch(r){}ye.set(e,t,i)}else i=void 0;return i}function c(){return!0}function u(){return!1}function p(){try{return Q.activeElement}catch(e){}}function h(e,t){return Z.nodeName(e,"table")&&Z.nodeName(11!==t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function d(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function f(e){var t=Oe.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function m(e,t){for(var i=0,n=e.length;i<n;i++)ve.set(e[i],"globalEval",!t||ve.get(t[i],"globalEval"))}function g(e,t){var i,n,r,s,o,a,l,c;if(1===t.nodeType){if(ve.hasData(e)&&(s=ve.access(e),o=ve.set(t,s),c=s.events)){delete o.handle,o.events={};for(r in c)for(i=0,n=c[r].length;i<n;i++)Z.event.add(t,r,c[r][i])}ye.hasData(e)&&(a=ye.access(e),l=Z.extend({},a),ye.set(t,l))}}function v(e,t){var i=e.getElementsByTagName?e.getElementsByTagName(t||"*"):e.querySelectorAll?e.querySelectorAll(t||"*"):[];return void 0===t||t&&Z.nodeName(e,t)?Z.merge([e],i):i}function y(e,t){var i=t.nodeName.toLowerCase();"input"===i&&Ce.test(e.type)?t.checked=e.checked:"input"!==i&&"textarea"!==i||(t.defaultValue=e.defaultValue)}function w(t,i){var n,r=Z(i.createElement(t)).appendTo(i.body),s=e.getDefaultComputedStyle&&(n=e.getDefaultComputedStyle(r[0]))?n.display:Z.css(r[0],"display");return r.detach(),s}function b(e){var t=Q,i=He[e];return i||(i=w(e,t),"none"!==i&&i||(Fe=(Fe||Z("<iframe frameborder='0' width='0' height='0'/>")).appendTo(t.documentElement),t=Fe[0].contentDocument,t.write(),t.close(),i=w(e,t),Fe.detach()),He[e]=i),i}function x(e,t,i){var n,r,s,o,a=e.style;return i=i||qe(e),i&&(o=i.getPropertyValue(t)||i[t]),i&&(""!==o||Z.contains(e.ownerDocument,e)||(o=Z.style(e,t)),Xe.test(o)&&je.test(t)&&(n=a.width,r=a.minWidth,s=a.maxWidth,a.minWidth=a.maxWidth=a.width=o,o=i.width,a.width=n,a.minWidth=r,a.maxWidth=s)),void 0!==o?o+"":o}function S(e,t){return{get:function(){return e()?void delete this.get:(this.get=t).apply(this,arguments)}}}function T(e,t){if(t in e)return t;for(var i=t[0].toUpperCase()+t.slice(1),n=t,r=Ue.length;r--;)if(t=Ue[r]+i,t in e)return t;return n}function C(e,t,i){var n=We.exec(t);return n?Math.max(0,n[1]-(i||0))+(n[2]||"px"):t}function k(e,t,i,n,r){for(var s=i===(n?"border":"content")?4:"width"===t?1:0,o=0;s<4;s+=2)"margin"===i&&(o+=Z.css(e,i+Se[s],!0,r)),n?("content"===i&&(o-=Z.css(e,"padding"+Se[s],!0,r)),"margin"!==i&&(o-=Z.css(e,"border"+Se[s]+"Width",!0,r))):(o+=Z.css(e,"padding"+Se[s],!0,r),"padding"!==i&&(o+=Z.css(e,"border"+Se[s]+"Width",!0,r)));return o}function E(e,t,i){var n=!0,r="width"===t?e.offsetWidth:e.offsetHeight,s=qe(e),o="border-box"===Z.css(e,"boxSizing",!1,s);if(r<=0||null==r){if(r=x(e,t,s),(r<0||null==r)&&(r=e.style[t]),Xe.test(r))return r;n=o&&(K.boxSizingReliable()||r===e.style[t]),r=parseFloat(r)||0}return r+k(e,t,i||(o?"border":"content"),n,s)+"px"}function P(e,t){for(var i,n,r,s=[],o=0,a=e.length;o<a;o++)n=e[o],n.style&&(s[o]=ve.get(n,"olddisplay"),i=n.style.display,t?(s[o]||"none"!==i||(n.style.display=""),""===n.style.display&&Te(n)&&(s[o]=ve.access(n,"olddisplay",b(n.nodeName)))):(r=Te(n),"none"===i&&r||ve.set(n,"olddisplay",r?i:Z.css(n,"display"))));for(o=0;o<a;o++)n=e[o],n.style&&(t&&"none"!==n.style.display&&""!==n.style.display||(n.style.display=t?s[o]||"":"none"));return e}function A(e,t,i,n,r){return new A.prototype.init(e,t,i,n,r)}function _(){return setTimeout(function(){Ke=void 0}),Ke=Z.now()}function D(e,t){var i,n=0,r={height:e};for(t=t?1:0;n<4;n+=2-t)i=Se[n],r["margin"+i]=r["padding"+i]=e;return t&&(r.opacity=r.width=e),r}function L(e,t,i){for(var n,r=(it[t]||[]).concat(it["*"]),s=0,o=r.length;s<o;s++)if(n=r[s].call(i,t,e))return n}function M(e,t,i){var n,r,s,o,a,l,c,u,p=this,h={},d=e.style,f=e.nodeType&&Te(e),m=ve.get(e,"fxshow");i.queue||(a=Z._queueHooks(e,"fx"),null==a.unqueued&&(a.unqueued=0,l=a.empty.fire,a.empty.fire=function(){a.unqueued||l()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,Z.queue(e,"fx").length||a.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(i.overflow=[d.overflow,d.overflowX,d.overflowY],c=Z.css(e,"display"),u="none"===c?ve.get(e,"olddisplay")||b(e.nodeName):c,"inline"===u&&"none"===Z.css(e,"float")&&(d.display="inline-block")),i.overflow&&(d.overflow="hidden",p.always(function(){d.overflow=i.overflow[0],d.overflowX=i.overflow[1],d.overflowY=i.overflow[2]}));for(n in t)if(r=t[n],Je.exec(r)){if(delete t[n],s=s||"toggle"===r,r===(f?"hide":"show")){if("show"!==r||!m||void 0===m[n])continue;f=!0}h[n]=m&&m[n]||Z.style(e,n)}else c=void 0;if(Z.isEmptyObject(h))"inline"===("none"===c?b(e.nodeName):c)&&(d.display=c);else{m?"hidden"in m&&(f=m.hidden):m=ve.access(e,"fxshow",{}),s&&(m.hidden=!f),f?Z(e).show():p.done(function(){Z(e).hide()}),p.done(function(){var t;ve.remove(e,"fxshow");for(t in h)Z.style(e,t,h[t])});for(n in h)o=L(f?m[n]:0,n,p),n in m||(m[n]=o.start,f&&(o.end=o.start,o.start="width"===n||"height"===n?1:0))}}function N(e,t){var i,n,r,s,o;for(i in e)if(n=Z.camelCase(i),r=t[n],s=e[i],Z.isArray(s)&&(r=s[1],s=e[i]=s[0]),i!==n&&(e[n]=s,delete e[i]),o=Z.cssHooks[n],o&&"expand"in o){s=o.expand(s),delete e[n];for(i in s)i in e||(e[i]=s[i],t[i]=r)}else t[n]=r}function I(e,t,i){var n,r,s=0,o=tt.length,a=Z.Deferred().always(function(){delete l.elem}),l=function(){if(r)return!1;for(var t=Ke||_(),i=Math.max(0,c.startTime+c.duration-t),n=i/c.duration||0,s=1-n,o=0,l=c.tweens.length;o<l;o++)c.tweens[o].run(s);return a.notifyWith(e,[c,s,i]),s<1&&l?i:(a.resolveWith(e,[c]),!1)},c=a.promise({elem:e,props:Z.extend({},t),opts:Z.extend(!0,{specialEasing:{}},i),originalProperties:t,originalOptions:i,startTime:Ke||_(),duration:i.duration,tweens:[],createTween:function(t,i){var n=Z.Tween(e,c.opts,t,i,c.opts.specialEasing[t]||c.opts.easing);return c.tweens.push(n),n},stop:function(t){var i=0,n=t?c.tweens.length:0;if(r)return this;for(r=!0;i<n;i++)c.tweens[i].run(1);return t?a.resolveWith(e,[c,t]):a.rejectWith(e,[c,t]),this}}),u=c.props;for(N(u,c.opts.specialEasing);s<o;s++)if(n=tt[s].call(c,e,u,c.opts))return n;return Z.map(u,L,c),Z.isFunction(c.opts.start)&&c.opts.start.call(e,c),Z.fx.timer(Z.extend(l,{elem:e,anim:c,queue:c.opts.queue})),c.progress(c.opts.progress).done(c.opts.done,c.opts.complete).fail(c.opts.fail).always(c.opts.always)}function z(e){return function(t,i){"string"!=typeof t&&(i=t,t="*");var n,r=0,s=t.toLowerCase().match(de)||[];if(Z.isFunction(i))for(;n=s[r++];)"+"===n[0]?(n=n.slice(1)||"*",(e[n]=e[n]||[]).unshift(i)):(e[n]=e[n]||[]).push(i)}}function O(e,t,i,n){function r(a){var l;return s[a]=!0,Z.each(e[a]||[],function(e,a){var c=a(t,i,n);return"string"!=typeof c||o||s[c]?o?!(l=c):void 0:(t.dataTypes.unshift(c),r(c),!1)}),l}var s={},o=e===wt;return r(t.dataTypes[0])||!s["*"]&&r("*")}function B(e,t){var i,n,r=Z.ajaxSettings.flatOptions||{};for(i in t)void 0!==t[i]&&((r[i]?e:n||(n={}))[i]=t[i]);return n&&Z.extend(!0,e,n),e}function R(e,t,i){for(var n,r,s,o,a=e.contents,l=e.dataTypes;"*"===l[0];)l.shift(),void 0===n&&(n=e.mimeType||t.getResponseHeader("Content-Type"));if(n)for(r in a)if(a[r]&&a[r].test(n)){l.unshift(r);break}if(l[0]in i)s=l[0];else{for(r in i){if(!l[0]||e.converters[r+" "+l[0]]){s=r;break}o||(o=r)}s=s||o}if(s)return s!==l[0]&&l.unshift(s),i[s]}function F(e,t,i,n){var r,s,o,a,l,c={},u=e.dataTypes.slice();if(u[1])for(o in e.converters)c[o.toLowerCase()]=e.converters[o];for(s=u.shift();s;)if(e.responseFields[s]&&(i[e.responseFields[s]]=t),!l&&n&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),l=s,s=u.shift())if("*"===s)s=l;else if("*"!==l&&l!==s){if(o=c[l+" "+s]||c["* "+s],!o)for(r in c)if(a=r.split(" "),a[1]===s&&(o=c[l+" "+a[0]]||c["* "+a[0]])){o===!0?o=c[r]:c[r]!==!0&&(s=a[0],u.unshift(a[1]));break}if(o!==!0)if(o&&e["throws"])t=o(t);else try{t=o(t)}catch(p){return{state:"parsererror",error:o?p:"No conversion from "+l+" to "+s}}}return{state:"success",data:t}}function H(e,t,i,n){var r;if(Z.isArray(t))Z.each(t,function(t,r){i||Ct.test(e)?n(e,r):H(e+"["+("object"==typeof r?t:"")+"]",r,i,n)});else if(i||"object"!==Z.type(t))n(e,t);else for(r in t)H(e+"["+r+"]",t[r],i,n)}function j(e){return Z.isWindow(e)?e:9===e.nodeType&&e.defaultView}var X=[],q=X.slice,Y=X.concat,W=X.push,$=X.indexOf,G={},V=G.toString,U=G.hasOwnProperty,K={},Q=e.document,J="2.1.4",Z=function(e,t){return new Z.fn.init(e,t)},ee=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,te=/^-ms-/,ie=/-([\da-z])/gi,ne=function(e,t){return t.toUpperCase()};Z.fn=Z.prototype={jquery:J,constructor:Z,selector:"",length:0,toArray:function(){return q.call(this)},get:function(e){return null!=e?e<0?this[e+this.length]:this[e]:q.call(this)},pushStack:function(e){var t=Z.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return Z.each(this,e,t)},map:function(e){return this.pushStack(Z.map(this,function(t,i){return e.call(t,i,t)}))},slice:function(){return this.pushStack(q.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,i=+e+(e<0?t:0);return this.pushStack(i>=0&&i<t?[this[i]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:W,sort:X.sort,splice:X.splice},Z.extend=Z.fn.extend=function(){var e,t,i,n,r,s,o=arguments[0]||{},a=1,l=arguments.length,c=!1;for("boolean"==typeof o&&(c=o,o=arguments[a]||{},a++),"object"==typeof o||Z.isFunction(o)||(o={}),a===l&&(o=this,a--);a<l;a++)if(null!=(e=arguments[a]))for(t in e)i=o[t],n=e[t],o!==n&&(c&&n&&(Z.isPlainObject(n)||(r=Z.isArray(n)))?(r?(r=!1,s=i&&Z.isArray(i)?i:[]):s=i&&Z.isPlainObject(i)?i:{},o[t]=Z.extend(c,s,n)):void 0!==n&&(o[t]=n));return o},Z.extend({expando:"jQuery"+(J+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isFunction:function(e){return"function"===Z.type(e)},isArray:Array.isArray,isWindow:function(e){return null!=e&&e===e.window},isNumeric:function(e){return!Z.isArray(e)&&e-parseFloat(e)+1>=0},isPlainObject:function(e){return"object"===Z.type(e)&&!e.nodeType&&!Z.isWindow(e)&&!(e.constructor&&!U.call(e.constructor.prototype,"isPrototypeOf"))},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?G[V.call(e)]||"object":typeof e},globalEval:function(e){var t,i=eval;e=Z.trim(e),e&&(1===e.indexOf("use strict")?(t=Q.createElement("script"),t.text=e,Q.head.appendChild(t).parentNode.removeChild(t)):i(e))},camelCase:function(e){return e.replace(te,"ms-").replace(ie,ne)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t,n){var r,s=0,o=e.length,a=i(e);if(n){if(a)for(;s<o&&(r=t.apply(e[s],n),r!==!1);s++);else for(s in e)if(r=t.apply(e[s],n),r===!1)break}else if(a)for(;s<o&&(r=t.call(e[s],s,e[s]),r!==!1);s++);else for(s in e)if(r=t.call(e[s],s,e[s]),r===!1)break;return e},trim:function(e){return null==e?"":(e+"").replace(ee,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(i(Object(e))?Z.merge(n,"string"==typeof e?[e]:e):W.call(n,e)),n},inArray:function(e,t,i){return null==t?-1:$.call(t,e,i)},merge:function(e,t){for(var i=+t.length,n=0,r=e.length;n<i;n++)e[r++]=t[n];return e.length=r,e},grep:function(e,t,i){for(var n,r=[],s=0,o=e.length,a=!i;s<o;s++)n=!t(e[s],s),n!==a&&r.push(e[s]);return r},map:function(e,t,n){var r,s=0,o=e.length,a=i(e),l=[];if(a)for(;s<o;s++)r=t(e[s],s,n),null!=r&&l.push(r);else for(s in e)r=t(e[s],s,n),null!=r&&l.push(r);return Y.apply([],l)},guid:1,proxy:function(e,t){var i,n,r;if("string"==typeof t&&(i=e[t],t=e,e=i),Z.isFunction(e))return n=q.call(arguments,2),r=function(){return e.apply(t||this,n.concat(q.call(arguments)))},r.guid=e.guid=e.guid||Z.guid++,r},now:Date.now,support:K}),Z.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){G["[object "+t+"]"]=t.toLowerCase()});var re=function(e){function t(e,t,i,n){var r,s,o,a,l,c,p,d,f,m;if((t?t.ownerDocument||t:H)!==M&&L(t),t=t||M,i=i||[],a=t.nodeType,"string"!=typeof e||!e||1!==a&&9!==a&&11!==a)return i;if(!n&&I){if(11!==a&&(r=ye.exec(e)))if(o=r[1]){if(9===a){if(s=t.getElementById(o),!s||!s.parentNode)return i;if(s.id===o)return i.push(s),i}else if(t.ownerDocument&&(s=t.ownerDocument.getElementById(o))&&R(t,s)&&s.id===o)return i.push(s),i}else{if(r[2])return J.apply(i,t.getElementsByTagName(e)),i;if((o=r[3])&&x.getElementsByClassName)return J.apply(i,t.getElementsByClassName(o)),i}if(x.qsa&&(!z||!z.test(e))){if(d=p=F,f=t,m=1!==a&&e,1===a&&"object"!==t.nodeName.toLowerCase()){for(c=k(e),(p=t.getAttribute("id"))?d=p.replace(be,"\\$&"):t.setAttribute("id",d),d="[id='"+d+"'] ",l=c.length;l--;)c[l]=d+h(c[l]);f=we.test(e)&&u(t.parentNode)||t,m=c.join(",")}if(m)try{return J.apply(i,f.querySelectorAll(m)),i}catch(g){}finally{p||t.removeAttribute("id")}}}return P(e.replace(le,"$1"),t,i,n)}function i(){function e(i,n){return t.push(i+" ")>S.cacheLength&&delete e[t.shift()],e[i+" "]=n}var t=[];return e}function n(e){return e[F]=!0,e}function r(e){var t=M.createElement("div");try{return!!e(t)}catch(i){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function s(e,t){for(var i=e.split("|"),n=e.length;n--;)S.attrHandle[i[n]]=t}function o(e,t){var i=t&&e,n=i&&1===e.nodeType&&1===t.nodeType&&(~t.sourceIndex||G)-(~e.sourceIndex||G);if(n)return n;if(i)for(;i=i.nextSibling;)if(i===t)return-1;return e?1:-1}function a(e){return function(t){var i=t.nodeName.toLowerCase();return"input"===i&&t.type===e}}function l(e){return function(t){var i=t.nodeName.toLowerCase();return("input"===i||"button"===i)&&t.type===e}}function c(e){return n(function(t){return t=+t,n(function(i,n){for(var r,s=e([],i.length,t),o=s.length;o--;)i[r=s[o]]&&(i[r]=!(n[r]=i[r]))})})}function u(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}function p(){}function h(e){for(var t=0,i=e.length,n="";t<i;t++)n+=e[t].value;return n}function d(e,t,i){var n=t.dir,r=i&&"parentNode"===n,s=X++;return t.first?function(t,i,s){for(;t=t[n];)if(1===t.nodeType||r)return e(t,i,s)}:function(t,i,o){var a,l,c=[j,s];if(o){for(;t=t[n];)if((1===t.nodeType||r)&&e(t,i,o))return!0}else for(;t=t[n];)if(1===t.nodeType||r){if(l=t[F]||(t[F]={}),(a=l[n])&&a[0]===j&&a[1]===s)return c[2]=a[2];if(l[n]=c,c[2]=e(t,i,o))return!0}}}function f(e){return e.length>1?function(t,i,n){for(var r=e.length;r--;)if(!e[r](t,i,n))return!1;return!0}:e[0]}function m(e,i,n){for(var r=0,s=i.length;r<s;r++)t(e,i[r],n);return n}function g(e,t,i,n,r){for(var s,o=[],a=0,l=e.length,c=null!=t;a<l;a++)(s=e[a])&&(i&&!i(s,n,r)||(o.push(s),c&&t.push(a)));return o}function v(e,t,i,r,s,o){return r&&!r[F]&&(r=v(r)),s&&!s[F]&&(s=v(s,o)),n(function(n,o,a,l){var c,u,p,h=[],d=[],f=o.length,v=n||m(t||"*",a.nodeType?[a]:a,[]),y=!e||!n&&t?v:g(v,h,e,a,l),w=i?s||(n?e:f||r)?[]:o:y;if(i&&i(y,w,a,l),r)for(c=g(w,d),r(c,[],a,l),u=c.length;u--;)(p=c[u])&&(w[d[u]]=!(y[d[u]]=p));if(n){if(s||e){if(s){for(c=[],u=w.length;u--;)(p=w[u])&&c.push(y[u]=p);s(null,w=[],c,l)}for(u=w.length;u--;)(p=w[u])&&(c=s?ee(n,p):h[u])>-1&&(n[c]=!(o[c]=p))}}else w=g(w===o?w.splice(f,w.length):w),s?s(null,o,w,l):J.apply(o,w)})}function y(e){for(var t,i,n,r=e.length,s=S.relative[e[0].type],o=s||S.relative[" "],a=s?1:0,l=d(function(e){return e===t},o,!0),c=d(function(e){return ee(t,e)>-1},o,!0),u=[function(e,i,n){var r=!s&&(n||i!==A)||((t=i).nodeType?l(e,i,n):c(e,i,n));return t=null,r}];a<r;a++)if(i=S.relative[e[a].type])u=[d(f(u),i)];else{if(i=S.filter[e[a].type].apply(null,e[a].matches),i[F]){for(n=++a;n<r&&!S.relative[e[n].type];n++);return v(a>1&&f(u),a>1&&h(e.slice(0,a-1).concat({value:" "===e[a-2].type?"*":""})).replace(le,"$1"),i,a<n&&y(e.slice(a,n)),n<r&&y(e=e.slice(n)),n<r&&h(e))}u.push(i)}return f(u)}function w(e,i){var r=i.length>0,s=e.length>0,o=function(n,o,a,l,c){var u,p,h,d=0,f="0",m=n&&[],v=[],y=A,w=n||s&&S.find.TAG("*",c),b=j+=null==y?1:Math.random()||.1,x=w.length;for(c&&(A=o!==M&&o);f!==x&&null!=(u=w[f]);f++){if(s&&u){for(p=0;h=e[p++];)if(h(u,o,a)){l.push(u);break}c&&(j=b)}r&&((u=!h&&u)&&d--,n&&m.push(u))}if(d+=f,r&&f!==d){for(p=0;h=i[p++];)h(m,v,o,a);if(n){if(d>0)for(;f--;)m[f]||v[f]||(v[f]=K.call(l));v=g(v)}J.apply(l,v),c&&!n&&v.length>0&&d+i.length>1&&t.uniqueSort(l)}return c&&(j=b,A=y),m};return r?n(o):o}var b,x,S,T,C,k,E,P,A,_,D,L,M,N,I,z,O,B,R,F="sizzle"+1*new Date,H=e.document,j=0,X=0,q=i(),Y=i(),W=i(),$=function(e,t){return e===t&&(D=!0),0},G=1<<31,V={}.hasOwnProperty,U=[],K=U.pop,Q=U.push,J=U.push,Z=U.slice,ee=function(e,t){for(var i=0,n=e.length;i<n;i++)if(e[i]===t)return i;return-1},te="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",ie="[\\x20\\t\\r\\n\\f]",ne="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",re=ne.replace("w","w#"),se="\\["+ie+"*("+ne+")(?:"+ie+"*([*^$|!~]?=)"+ie+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+re+"))|)"+ie+"*\\]",oe=":("+ne+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+se+")*)|.*)\\)|)",ae=new RegExp(ie+"+","g"),le=new RegExp("^"+ie+"+|((?:^|[^\\\\])(?:\\\\.)*)"+ie+"+$","g"),ce=new RegExp("^"+ie+"*,"+ie+"*"),ue=new RegExp("^"+ie+"*([>+~]|"+ie+")"+ie+"*"),pe=new RegExp("="+ie+"*([^\\]'\"]*?)"+ie+"*\\]","g"),he=new RegExp(oe),de=new RegExp("^"+re+"$"),fe={ID:new RegExp("^#("+ne+")"),CLASS:new RegExp("^\\.("+ne+")"),TAG:new RegExp("^("+ne.replace("w","w*")+")"),ATTR:new RegExp("^"+se),PSEUDO:new RegExp("^"+oe),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ie+"*(even|odd|(([+-]|)(\\d*)n|)"+ie+"*(?:([+-]|)"+ie+"*(\\d+)|))"+ie+"*\\)|)","i"),bool:new RegExp("^(?:"+te+")$","i"),needsContext:new RegExp("^"+ie+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ie+"*((?:-\\d)?\\d*)"+ie+"*\\)|)(?=[^-]|$)","i")},me=/^(?:input|select|textarea|button)$/i,ge=/^h\d$/i,ve=/^[^{]+\{\s*\[native \w/,ye=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,we=/[+~]/,be=/'|\\/g,xe=new RegExp("\\\\([\\da-f]{1,6}"+ie+"?|("+ie+")|.)","ig"),Se=function(e,t,i){var n="0x"+t-65536;return n!==n||i?t:n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320)},Te=function(){L()};try{J.apply(U=Z.call(H.childNodes),H.childNodes),U[H.childNodes.length].nodeType}catch(Ce){J={apply:U.length?function(e,t){Q.apply(e,Z.call(t))}:function(e,t){for(var i=e.length,n=0;e[i++]=t[n++];);e.length=i-1}}}x=t.support={},C=t.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},L=t.setDocument=function(e){var t,i,n=e?e.ownerDocument||e:H;return n!==M&&9===n.nodeType&&n.documentElement?(M=n,N=n.documentElement,i=n.defaultView,i&&i!==i.top&&(i.addEventListener?i.addEventListener("unload",Te,!1):i.attachEvent&&i.attachEvent("onunload",Te)),I=!C(n),x.attributes=r(function(e){return e.className="i",!e.getAttribute("className")}),x.getElementsByTagName=r(function(e){return e.appendChild(n.createComment("")),!e.getElementsByTagName("*").length}),x.getElementsByClassName=ve.test(n.getElementsByClassName),x.getById=r(function(e){return N.appendChild(e).id=F,!n.getElementsByName||!n.getElementsByName(F).length}),x.getById?(S.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&I){var i=t.getElementById(e);return i&&i.parentNode?[i]:[]}},S.filter.ID=function(e){var t=e.replace(xe,Se);return function(e){return e.getAttribute("id")===t}}):(delete S.find.ID,S.filter.ID=function(e){var t=e.replace(xe,Se);return function(e){var i="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return i&&i.value===t}}),S.find.TAG=x.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):x.qsa?t.querySelectorAll(e):void 0}:function(e,t){var i,n=[],r=0,s=t.getElementsByTagName(e);if("*"===e){for(;i=s[r++];)1===i.nodeType&&n.push(i);return n}return s},S.find.CLASS=x.getElementsByClassName&&function(e,t){if(I)return t.getElementsByClassName(e)},O=[],z=[],(x.qsa=ve.test(n.querySelectorAll))&&(r(function(e){N.appendChild(e).innerHTML="<a id='"+F+"'></a><select id='"+F+"-\f]' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&z.push("[*^$]="+ie+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||z.push("\\["+ie+"*(?:value|"+te+")"),e.querySelectorAll("[id~="+F+"-]").length||z.push("~="),e.querySelectorAll(":checked").length||z.push(":checked"),e.querySelectorAll("a#"+F+"+*").length||z.push(".#.+[+~]")}),r(function(e){var t=n.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&z.push("name"+ie+"*[*^$|!~]?="),e.querySelectorAll(":enabled").length||z.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),z.push(",.*:")})),(x.matchesSelector=ve.test(B=N.matches||N.webkitMatchesSelector||N.mozMatchesSelector||N.oMatchesSelector||N.msMatchesSelector))&&r(function(e){x.disconnectedMatch=B.call(e,"div"),B.call(e,"[s!='']:x"),O.push("!=",oe)}),z=z.length&&new RegExp(z.join("|")),O=O.length&&new RegExp(O.join("|")),t=ve.test(N.compareDocumentPosition),R=t||ve.test(N.contains)?function(e,t){var i=9===e.nodeType?e.documentElement:e,n=t&&t.parentNode;return e===n||!(!n||1!==n.nodeType||!(i.contains?i.contains(n):e.compareDocumentPosition&&16&e.compareDocumentPosition(n)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},$=t?function(e,t){if(e===t)return D=!0,0;var i=!e.compareDocumentPosition-!t.compareDocumentPosition;return i?i:(i=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1,1&i||!x.sortDetached&&t.compareDocumentPosition(e)===i?e===n||e.ownerDocument===H&&R(H,e)?-1:t===n||t.ownerDocument===H&&R(H,t)?1:_?ee(_,e)-ee(_,t):0:4&i?-1:1)}:function(e,t){if(e===t)return D=!0,0;var i,r=0,s=e.parentNode,a=t.parentNode,l=[e],c=[t];if(!s||!a)return e===n?-1:t===n?1:s?-1:a?1:_?ee(_,e)-ee(_,t):0;if(s===a)return o(e,t);for(i=e;i=i.parentNode;)l.unshift(i);for(i=t;i=i.parentNode;)c.unshift(i);for(;l[r]===c[r];)r++;return r?o(l[r],c[r]):l[r]===H?-1:c[r]===H?1:0},n):M},t.matches=function(e,i){return t(e,null,null,i)},t.matchesSelector=function(e,i){if((e.ownerDocument||e)!==M&&L(e),i=i.replace(pe,"='$1']"),x.matchesSelector&&I&&(!O||!O.test(i))&&(!z||!z.test(i)))try{var n=B.call(e,i);if(n||x.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(r){}return t(i,M,null,[e]).length>0},t.contains=function(e,t){return(e.ownerDocument||e)!==M&&L(e),R(e,t)},t.attr=function(e,t){(e.ownerDocument||e)!==M&&L(e);var i=S.attrHandle[t.toLowerCase()],n=i&&V.call(S.attrHandle,t.toLowerCase())?i(e,t,!I):void 0;return void 0!==n?n:x.attributes||!I?e.getAttribute(t):(n=e.getAttributeNode(t))&&n.specified?n.value:null},t.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},t.uniqueSort=function(e){var t,i=[],n=0,r=0;if(D=!x.detectDuplicates,_=!x.sortStable&&e.slice(0),e.sort($),D){for(;t=e[r++];)t===e[r]&&(n=i.push(r));for(;n--;)e.splice(i[n],1)}return _=null,e},T=t.getText=function(e){var t,i="",n=0,r=e.nodeType;if(r){if(1===r||9===r||11===r){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)i+=T(e)}else if(3===r||4===r)return e.nodeValue}else for(;t=e[n++];)i+=T(t);return i},S=t.selectors={cacheLength:50,createPseudo:n,match:fe,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(xe,Se),e[3]=(e[3]||e[4]||e[5]||"").replace(xe,Se),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||t.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&t.error(e[0]),e},PSEUDO:function(e){var t,i=!e[6]&&e[2];return fe.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":i&&he.test(i)&&(t=k(i,!0))&&(t=i.indexOf(")",i.length-t)-i.length)&&(e[0]=e[0].slice(0,t),e[2]=i.slice(0,t)), -e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(xe,Se).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=q[e+" "];return t||(t=new RegExp("(^|"+ie+")"+e+"("+ie+"|$)"))&&q(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,i,n){return function(r){var s=t.attr(r,e);return null==s?"!="===i:!i||(s+="","="===i?s===n:"!="===i?s!==n:"^="===i?n&&0===s.indexOf(n):"*="===i?n&&s.indexOf(n)>-1:"$="===i?n&&s.slice(-n.length)===n:"~="===i?(" "+s.replace(ae," ")+" ").indexOf(n)>-1:"|="===i&&(s===n||s.slice(0,n.length+1)===n+"-"))}},CHILD:function(e,t,i,n,r){var s="nth"!==e.slice(0,3),o="last"!==e.slice(-4),a="of-type"===t;return 1===n&&0===r?function(e){return!!e.parentNode}:function(t,i,l){var c,u,p,h,d,f,m=s!==o?"nextSibling":"previousSibling",g=t.parentNode,v=a&&t.nodeName.toLowerCase(),y=!l&&!a;if(g){if(s){for(;m;){for(p=t;p=p[m];)if(a?p.nodeName.toLowerCase()===v:1===p.nodeType)return!1;f=m="only"===e&&!f&&"nextSibling"}return!0}if(f=[o?g.firstChild:g.lastChild],o&&y){for(u=g[F]||(g[F]={}),c=u[e]||[],d=c[0]===j&&c[1],h=c[0]===j&&c[2],p=d&&g.childNodes[d];p=++d&&p&&p[m]||(h=d=0)||f.pop();)if(1===p.nodeType&&++h&&p===t){u[e]=[j,d,h];break}}else if(y&&(c=(t[F]||(t[F]={}))[e])&&c[0]===j)h=c[1];else for(;(p=++d&&p&&p[m]||(h=d=0)||f.pop())&&((a?p.nodeName.toLowerCase()!==v:1!==p.nodeType)||!++h||(y&&((p[F]||(p[F]={}))[e]=[j,h]),p!==t)););return h-=r,h===n||h%n===0&&h/n>=0}}},PSEUDO:function(e,i){var r,s=S.pseudos[e]||S.setFilters[e.toLowerCase()]||t.error("unsupported pseudo: "+e);return s[F]?s(i):s.length>1?(r=[e,e,"",i],S.setFilters.hasOwnProperty(e.toLowerCase())?n(function(e,t){for(var n,r=s(e,i),o=r.length;o--;)n=ee(e,r[o]),e[n]=!(t[n]=r[o])}):function(e){return s(e,0,r)}):s}},pseudos:{not:n(function(e){var t=[],i=[],r=E(e.replace(le,"$1"));return r[F]?n(function(e,t,i,n){for(var s,o=r(e,null,n,[]),a=e.length;a--;)(s=o[a])&&(e[a]=!(t[a]=s))}):function(e,n,s){return t[0]=e,r(t,null,s,i),t[0]=null,!i.pop()}}),has:n(function(e){return function(i){return t(e,i).length>0}}),contains:n(function(e){return e=e.replace(xe,Se),function(t){return(t.textContent||t.innerText||T(t)).indexOf(e)>-1}}),lang:n(function(e){return de.test(e||"")||t.error("unsupported lang: "+e),e=e.replace(xe,Se).toLowerCase(),function(t){var i;do if(i=I?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return i=i.toLowerCase(),i===e||0===i.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var i=e.location&&e.location.hash;return i&&i.slice(1)===t.id},root:function(e){return e===N},focus:function(e){return e===M.activeElement&&(!M.hasFocus||M.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!S.pseudos.empty(e)},header:function(e){return ge.test(e.nodeName)},input:function(e){return me.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:c(function(){return[0]}),last:c(function(e,t){return[t-1]}),eq:c(function(e,t,i){return[i<0?i+t:i]}),even:c(function(e,t){for(var i=0;i<t;i+=2)e.push(i);return e}),odd:c(function(e,t){for(var i=1;i<t;i+=2)e.push(i);return e}),lt:c(function(e,t,i){for(var n=i<0?i+t:i;--n>=0;)e.push(n);return e}),gt:c(function(e,t,i){for(var n=i<0?i+t:i;++n<t;)e.push(n);return e})}},S.pseudos.nth=S.pseudos.eq;for(b in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})S.pseudos[b]=a(b);for(b in{submit:!0,reset:!0})S.pseudos[b]=l(b);return p.prototype=S.filters=S.pseudos,S.setFilters=new p,k=t.tokenize=function(e,i){var n,r,s,o,a,l,c,u=Y[e+" "];if(u)return i?0:u.slice(0);for(a=e,l=[],c=S.preFilter;a;){n&&!(r=ce.exec(a))||(r&&(a=a.slice(r[0].length)||a),l.push(s=[])),n=!1,(r=ue.exec(a))&&(n=r.shift(),s.push({value:n,type:r[0].replace(le," ")}),a=a.slice(n.length));for(o in S.filter)!(r=fe[o].exec(a))||c[o]&&!(r=c[o](r))||(n=r.shift(),s.push({value:n,type:o,matches:r}),a=a.slice(n.length));if(!n)break}return i?a.length:a?t.error(e):Y(e,l).slice(0)},E=t.compile=function(e,t){var i,n=[],r=[],s=W[e+" "];if(!s){for(t||(t=k(e)),i=t.length;i--;)s=y(t[i]),s[F]?n.push(s):r.push(s);s=W(e,w(r,n)),s.selector=e}return s},P=t.select=function(e,t,i,n){var r,s,o,a,l,c="function"==typeof e&&e,p=!n&&k(e=c.selector||e);if(i=i||[],1===p.length){if(s=p[0]=p[0].slice(0),s.length>2&&"ID"===(o=s[0]).type&&x.getById&&9===t.nodeType&&I&&S.relative[s[1].type]){if(t=(S.find.ID(o.matches[0].replace(xe,Se),t)||[])[0],!t)return i;c&&(t=t.parentNode),e=e.slice(s.shift().value.length)}for(r=fe.needsContext.test(e)?0:s.length;r--&&(o=s[r],!S.relative[a=o.type]);)if((l=S.find[a])&&(n=l(o.matches[0].replace(xe,Se),we.test(s[0].type)&&u(t.parentNode)||t))){if(s.splice(r,1),e=n.length&&h(s),!e)return J.apply(i,n),i;break}}return(c||E(e,p))(n,t,!I,i,we.test(e)&&u(t.parentNode)||t),i},x.sortStable=F.split("").sort($).join("")===F,x.detectDuplicates=!!D,L(),x.sortDetached=r(function(e){return 1&e.compareDocumentPosition(M.createElement("div"))}),r(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||s("type|href|height|width",function(e,t,i){if(!i)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),x.attributes&&r(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||s("value",function(e,t,i){if(!i&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),r(function(e){return null==e.getAttribute("disabled")})||s(te,function(e,t,i){var n;if(!i)return e[t]===!0?t.toLowerCase():(n=e.getAttributeNode(t))&&n.specified?n.value:null}),t}(e);Z.find=re,Z.expr=re.selectors,Z.expr[":"]=Z.expr.pseudos,Z.unique=re.uniqueSort,Z.text=re.getText,Z.isXMLDoc=re.isXML,Z.contains=re.contains;var se=Z.expr.match.needsContext,oe=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,ae=/^.[^:#\[\.,]*$/;Z.filter=function(e,t,i){var n=t[0];return i&&(e=":not("+e+")"),1===t.length&&1===n.nodeType?Z.find.matchesSelector(n,e)?[n]:[]:Z.find.matches(e,Z.grep(t,function(e){return 1===e.nodeType}))},Z.fn.extend({find:function(e){var t,i=this.length,n=[],r=this;if("string"!=typeof e)return this.pushStack(Z(e).filter(function(){for(t=0;t<i;t++)if(Z.contains(r[t],this))return!0}));for(t=0;t<i;t++)Z.find(e,r[t],n);return n=this.pushStack(i>1?Z.unique(n):n),n.selector=this.selector?this.selector+" "+e:e,n},filter:function(e){return this.pushStack(n(this,e||[],!1))},not:function(e){return this.pushStack(n(this,e||[],!0))},is:function(e){return!!n(this,"string"==typeof e&&se.test(e)?Z(e):e||[],!1).length}});var le,ce=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,ue=Z.fn.init=function(e,t){var i,n;if(!e)return this;if("string"==typeof e){if(i="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:ce.exec(e),!i||!i[1]&&t)return!t||t.jquery?(t||le).find(e):this.constructor(t).find(e);if(i[1]){if(t=t instanceof Z?t[0]:t,Z.merge(this,Z.parseHTML(i[1],t&&t.nodeType?t.ownerDocument||t:Q,!0)),oe.test(i[1])&&Z.isPlainObject(t))for(i in t)Z.isFunction(this[i])?this[i](t[i]):this.attr(i,t[i]);return this}return n=Q.getElementById(i[2]),n&&n.parentNode&&(this.length=1,this[0]=n),this.context=Q,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):Z.isFunction(e)?"undefined"!=typeof le.ready?le.ready(e):e(Z):(void 0!==e.selector&&(this.selector=e.selector,this.context=e.context),Z.makeArray(e,this))};ue.prototype=Z.fn,le=Z(Q);var pe=/^(?:parents|prev(?:Until|All))/,he={children:!0,contents:!0,next:!0,prev:!0};Z.extend({dir:function(e,t,i){for(var n=[],r=void 0!==i;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(r&&Z(e).is(i))break;n.push(e)}return n},sibling:function(e,t){for(var i=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&i.push(e);return i}}),Z.fn.extend({has:function(e){var t=Z(e,this),i=t.length;return this.filter(function(){for(var e=0;e<i;e++)if(Z.contains(this,t[e]))return!0})},closest:function(e,t){for(var i,n=0,r=this.length,s=[],o=se.test(e)||"string"!=typeof e?Z(e,t||this.context):0;n<r;n++)for(i=this[n];i&&i!==t;i=i.parentNode)if(i.nodeType<11&&(o?o.index(i)>-1:1===i.nodeType&&Z.find.matchesSelector(i,e))){s.push(i);break}return this.pushStack(s.length>1?Z.unique(s):s)},index:function(e){return e?"string"==typeof e?$.call(Z(e),this[0]):$.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(Z.unique(Z.merge(this.get(),Z(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),Z.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return Z.dir(e,"parentNode")},parentsUntil:function(e,t,i){return Z.dir(e,"parentNode",i)},next:function(e){return r(e,"nextSibling")},prev:function(e){return r(e,"previousSibling")},nextAll:function(e){return Z.dir(e,"nextSibling")},prevAll:function(e){return Z.dir(e,"previousSibling")},nextUntil:function(e,t,i){return Z.dir(e,"nextSibling",i)},prevUntil:function(e,t,i){return Z.dir(e,"previousSibling",i)},siblings:function(e){return Z.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return Z.sibling(e.firstChild)},contents:function(e){return e.contentDocument||Z.merge([],e.childNodes)}},function(e,t){Z.fn[e]=function(i,n){var r=Z.map(this,t,i);return"Until"!==e.slice(-5)&&(n=i),n&&"string"==typeof n&&(r=Z.filter(n,r)),this.length>1&&(he[e]||Z.unique(r),pe.test(e)&&r.reverse()),this.pushStack(r)}});var de=/\S+/g,fe={};Z.Callbacks=function(e){e="string"==typeof e?fe[e]||s(e):Z.extend({},e);var t,i,n,r,o,a,l=[],c=!e.once&&[],u=function(s){for(t=e.memory&&s,i=!0,a=r||0,r=0,o=l.length,n=!0;l&&a<o;a++)if(l[a].apply(s[0],s[1])===!1&&e.stopOnFalse){t=!1;break}n=!1,l&&(c?c.length&&u(c.shift()):t?l=[]:p.disable())},p={add:function(){if(l){var i=l.length;!function s(t){Z.each(t,function(t,i){var n=Z.type(i);"function"===n?e.unique&&p.has(i)||l.push(i):i&&i.length&&"string"!==n&&s(i)})}(arguments),n?o=l.length:t&&(r=i,u(t))}return this},remove:function(){return l&&Z.each(arguments,function(e,t){for(var i;(i=Z.inArray(t,l,i))>-1;)l.splice(i,1),n&&(i<=o&&o--,i<=a&&a--)}),this},has:function(e){return e?Z.inArray(e,l)>-1:!(!l||!l.length)},empty:function(){return l=[],o=0,this},disable:function(){return l=c=t=void 0,this},disabled:function(){return!l},lock:function(){return c=void 0,t||p.disable(),this},locked:function(){return!c},fireWith:function(e,t){return!l||i&&!c||(t=t||[],t=[e,t.slice?t.slice():t],n?c.push(t):u(t)),this},fire:function(){return p.fireWith(this,arguments),this},fired:function(){return!!i}};return p},Z.extend({Deferred:function(e){var t=[["resolve","done",Z.Callbacks("once memory"),"resolved"],["reject","fail",Z.Callbacks("once memory"),"rejected"],["notify","progress",Z.Callbacks("memory")]],i="pending",n={state:function(){return i},always:function(){return r.done(arguments).fail(arguments),this},then:function(){var e=arguments;return Z.Deferred(function(i){Z.each(t,function(t,s){var o=Z.isFunction(e[t])&&e[t];r[s[1]](function(){var e=o&&o.apply(this,arguments);e&&Z.isFunction(e.promise)?e.promise().done(i.resolve).fail(i.reject).progress(i.notify):i[s[0]+"With"](this===n?i.promise():this,o?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?Z.extend(e,n):n}},r={};return n.pipe=n.then,Z.each(t,function(e,s){var o=s[2],a=s[3];n[s[1]]=o.add,a&&o.add(function(){i=a},t[1^e][2].disable,t[2][2].lock),r[s[0]]=function(){return r[s[0]+"With"](this===r?n:this,arguments),this},r[s[0]+"With"]=o.fireWith}),n.promise(r),e&&e.call(r,r),r},when:function(e){var t,i,n,r=0,s=q.call(arguments),o=s.length,a=1!==o||e&&Z.isFunction(e.promise)?o:0,l=1===a?e:Z.Deferred(),c=function(e,i,n){return function(r){i[e]=this,n[e]=arguments.length>1?q.call(arguments):r,n===t?l.notifyWith(i,n):--a||l.resolveWith(i,n)}};if(o>1)for(t=new Array(o),i=new Array(o),n=new Array(o);r<o;r++)s[r]&&Z.isFunction(s[r].promise)?s[r].promise().done(c(r,n,s)).fail(l.reject).progress(c(r,i,t)):--a;return a||l.resolveWith(n,s),l.promise()}});var me;Z.fn.ready=function(e){return Z.ready.promise().done(e),this},Z.extend({isReady:!1,readyWait:1,holdReady:function(e){e?Z.readyWait++:Z.ready(!0)},ready:function(e){(e===!0?--Z.readyWait:Z.isReady)||(Z.isReady=!0,e!==!0&&--Z.readyWait>0||(me.resolveWith(Q,[Z]),Z.fn.triggerHandler&&(Z(Q).triggerHandler("ready"),Z(Q).off("ready"))))}}),Z.ready.promise=function(t){return me||(me=Z.Deferred(),"complete"===Q.readyState?setTimeout(Z.ready):(Q.addEventListener("DOMContentLoaded",o,!1),e.addEventListener("load",o,!1))),me.promise(t)},Z.ready.promise();var ge=Z.access=function(e,t,i,n,r,s,o){var a=0,l=e.length,c=null==i;if("object"===Z.type(i)){r=!0;for(a in i)Z.access(e,t,a,i[a],!0,s,o)}else if(void 0!==n&&(r=!0,Z.isFunction(n)||(o=!0),c&&(o?(t.call(e,n),t=null):(c=t,t=function(e,t,i){return c.call(Z(e),i)})),t))for(;a<l;a++)t(e[a],i,o?n:n.call(e[a],a,t(e[a],i)));return r?e:c?t.call(e):l?t(e[0],i):s};Z.acceptData=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType},a.uid=1,a.accepts=Z.acceptData,a.prototype={key:function(e){if(!a.accepts(e))return 0;var t={},i=e[this.expando];if(!i){i=a.uid++;try{t[this.expando]={value:i},Object.defineProperties(e,t)}catch(n){t[this.expando]=i,Z.extend(e,t)}}return this.cache[i]||(this.cache[i]={}),i},set:function(e,t,i){var n,r=this.key(e),s=this.cache[r];if("string"==typeof t)s[t]=i;else if(Z.isEmptyObject(s))Z.extend(this.cache[r],t);else for(n in t)s[n]=t[n];return s},get:function(e,t){var i=this.cache[this.key(e)];return void 0===t?i:i[t]},access:function(e,t,i){var n;return void 0===t||t&&"string"==typeof t&&void 0===i?(n=this.get(e,t),void 0!==n?n:this.get(e,Z.camelCase(t))):(this.set(e,t,i),void 0!==i?i:t)},remove:function(e,t){var i,n,r,s=this.key(e),o=this.cache[s];if(void 0===t)this.cache[s]={};else{Z.isArray(t)?n=t.concat(t.map(Z.camelCase)):(r=Z.camelCase(t),t in o?n=[t,r]:(n=r,n=n in o?[n]:n.match(de)||[])),i=n.length;for(;i--;)delete o[n[i]]}},hasData:function(e){return!Z.isEmptyObject(this.cache[e[this.expando]]||{})},discard:function(e){e[this.expando]&&delete this.cache[e[this.expando]]}};var ve=new a,ye=new a,we=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,be=/([A-Z])/g;Z.extend({hasData:function(e){return ye.hasData(e)||ve.hasData(e)},data:function(e,t,i){return ye.access(e,t,i)},removeData:function(e,t){ye.remove(e,t)},_data:function(e,t,i){return ve.access(e,t,i)},_removeData:function(e,t){ve.remove(e,t)}}),Z.fn.extend({data:function(e,t){var i,n,r,s=this[0],o=s&&s.attributes;if(void 0===e){if(this.length&&(r=ye.get(s),1===s.nodeType&&!ve.get(s,"hasDataAttrs"))){for(i=o.length;i--;)o[i]&&(n=o[i].name,0===n.indexOf("data-")&&(n=Z.camelCase(n.slice(5)),l(s,n,r[n])));ve.set(s,"hasDataAttrs",!0)}return r}return"object"==typeof e?this.each(function(){ye.set(this,e)}):ge(this,function(t){var i,n=Z.camelCase(e);if(s&&void 0===t){if(i=ye.get(s,e),void 0!==i)return i;if(i=ye.get(s,n),void 0!==i)return i;if(i=l(s,n,void 0),void 0!==i)return i}else this.each(function(){var i=ye.get(this,n);ye.set(this,n,t),e.indexOf("-")!==-1&&void 0!==i&&ye.set(this,e,t)})},null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){ye.remove(this,e)})}}),Z.extend({queue:function(e,t,i){var n;if(e)return t=(t||"fx")+"queue",n=ve.get(e,t),i&&(!n||Z.isArray(i)?n=ve.access(e,t,Z.makeArray(i)):n.push(i)),n||[]},dequeue:function(e,t){t=t||"fx";var i=Z.queue(e,t),n=i.length,r=i.shift(),s=Z._queueHooks(e,t),o=function(){Z.dequeue(e,t)};"inprogress"===r&&(r=i.shift(),n--),r&&("fx"===t&&i.unshift("inprogress"),delete s.stop,r.call(e,o,s)),!n&&s&&s.empty.fire()},_queueHooks:function(e,t){var i=t+"queueHooks";return ve.get(e,i)||ve.access(e,i,{empty:Z.Callbacks("once memory").add(function(){ve.remove(e,[t+"queue",i])})})}}),Z.fn.extend({queue:function(e,t){var i=2;return"string"!=typeof e&&(t=e,e="fx",i--),arguments.length<i?Z.queue(this[0],e):void 0===t?this:this.each(function(){var i=Z.queue(this,e,t);Z._queueHooks(this,e),"fx"===e&&"inprogress"!==i[0]&&Z.dequeue(this,e)})},dequeue:function(e){return this.each(function(){Z.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var i,n=1,r=Z.Deferred(),s=this,o=this.length,a=function(){--n||r.resolveWith(s,[s])};for("string"!=typeof e&&(t=e,e=void 0),e=e||"fx";o--;)i=ve.get(s[o],e+"queueHooks"),i&&i.empty&&(n++,i.empty.add(a));return a(),r.promise(t)}});var xe=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,Se=["Top","Right","Bottom","Left"],Te=function(e,t){return e=t||e,"none"===Z.css(e,"display")||!Z.contains(e.ownerDocument,e)},Ce=/^(?:checkbox|radio)$/i;!function(){var e=Q.createDocumentFragment(),t=e.appendChild(Q.createElement("div")),i=Q.createElement("input");i.setAttribute("type","radio"),i.setAttribute("checked","checked"),i.setAttribute("name","t"),t.appendChild(i),K.checkClone=t.cloneNode(!0).cloneNode(!0).lastChild.checked,t.innerHTML="<textarea>x</textarea>",K.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue}();var ke="undefined";K.focusinBubbles="onfocusin"in e;var Ee=/^key/,Pe=/^(?:mouse|pointer|contextmenu)|click/,Ae=/^(?:focusinfocus|focusoutblur)$/,_e=/^([^.]*)(?:\.(.+)|)$/;Z.event={global:{},add:function(e,t,i,n,r){var s,o,a,l,c,u,p,h,d,f,m,g=ve.get(e);if(g)for(i.handler&&(s=i,i=s.handler,r=s.selector),i.guid||(i.guid=Z.guid++),(l=g.events)||(l=g.events={}),(o=g.handle)||(o=g.handle=function(t){return typeof Z!==ke&&Z.event.triggered!==t.type?Z.event.dispatch.apply(e,arguments):void 0}),t=(t||"").match(de)||[""],c=t.length;c--;)a=_e.exec(t[c])||[],d=m=a[1],f=(a[2]||"").split(".").sort(),d&&(p=Z.event.special[d]||{},d=(r?p.delegateType:p.bindType)||d,p=Z.event.special[d]||{},u=Z.extend({type:d,origType:m,data:n,handler:i,guid:i.guid,selector:r,needsContext:r&&Z.expr.match.needsContext.test(r),namespace:f.join(".")},s),(h=l[d])||(h=l[d]=[],h.delegateCount=0,p.setup&&p.setup.call(e,n,f,o)!==!1||e.addEventListener&&e.addEventListener(d,o,!1)),p.add&&(p.add.call(e,u),u.handler.guid||(u.handler.guid=i.guid)),r?h.splice(h.delegateCount++,0,u):h.push(u),Z.event.global[d]=!0)},remove:function(e,t,i,n,r){var s,o,a,l,c,u,p,h,d,f,m,g=ve.hasData(e)&&ve.get(e);if(g&&(l=g.events)){for(t=(t||"").match(de)||[""],c=t.length;c--;)if(a=_e.exec(t[c])||[],d=m=a[1],f=(a[2]||"").split(".").sort(),d){for(p=Z.event.special[d]||{},d=(n?p.delegateType:p.bindType)||d,h=l[d]||[],a=a[2]&&new RegExp("(^|\\.)"+f.join("\\.(?:.*\\.|)")+"(\\.|$)"),o=s=h.length;s--;)u=h[s],!r&&m!==u.origType||i&&i.guid!==u.guid||a&&!a.test(u.namespace)||n&&n!==u.selector&&("**"!==n||!u.selector)||(h.splice(s,1),u.selector&&h.delegateCount--,p.remove&&p.remove.call(e,u));o&&!h.length&&(p.teardown&&p.teardown.call(e,f,g.handle)!==!1||Z.removeEvent(e,d,g.handle),delete l[d])}else for(d in l)Z.event.remove(e,d+t[c],i,n,!0);Z.isEmptyObject(l)&&(delete g.handle,ve.remove(e,"events"))}},trigger:function(t,i,n,r){var s,o,a,l,c,u,p,h=[n||Q],d=U.call(t,"type")?t.type:t,f=U.call(t,"namespace")?t.namespace.split("."):[];if(o=a=n=n||Q,3!==n.nodeType&&8!==n.nodeType&&!Ae.test(d+Z.event.triggered)&&(d.indexOf(".")>=0&&(f=d.split("."),d=f.shift(),f.sort()),c=d.indexOf(":")<0&&"on"+d,t=t[Z.expando]?t:new Z.Event(d,"object"==typeof t&&t),t.isTrigger=r?2:3,t.namespace=f.join("."),t.namespace_re=t.namespace?new RegExp("(^|\\.)"+f.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=n),i=null==i?[t]:Z.makeArray(i,[t]),p=Z.event.special[d]||{},r||!p.trigger||p.trigger.apply(n,i)!==!1)){if(!r&&!p.noBubble&&!Z.isWindow(n)){for(l=p.delegateType||d,Ae.test(l+d)||(o=o.parentNode);o;o=o.parentNode)h.push(o),a=o;a===(n.ownerDocument||Q)&&h.push(a.defaultView||a.parentWindow||e)}for(s=0;(o=h[s++])&&!t.isPropagationStopped();)t.type=s>1?l:p.bindType||d,u=(ve.get(o,"events")||{})[t.type]&&ve.get(o,"handle"),u&&u.apply(o,i),u=c&&o[c],u&&u.apply&&Z.acceptData(o)&&(t.result=u.apply(o,i),t.result===!1&&t.preventDefault());return t.type=d,r||t.isDefaultPrevented()||p._default&&p._default.apply(h.pop(),i)!==!1||!Z.acceptData(n)||c&&Z.isFunction(n[d])&&!Z.isWindow(n)&&(a=n[c],a&&(n[c]=null),Z.event.triggered=d,n[d](),Z.event.triggered=void 0,a&&(n[c]=a)),t.result}},dispatch:function(e){e=Z.event.fix(e);var t,i,n,r,s,o=[],a=q.call(arguments),l=(ve.get(this,"events")||{})[e.type]||[],c=Z.event.special[e.type]||{};if(a[0]=e,e.delegateTarget=this,!c.preDispatch||c.preDispatch.call(this,e)!==!1){for(o=Z.event.handlers.call(this,e,l),t=0;(r=o[t++])&&!e.isPropagationStopped();)for(e.currentTarget=r.elem,i=0;(s=r.handlers[i++])&&!e.isImmediatePropagationStopped();)e.namespace_re&&!e.namespace_re.test(s.namespace)||(e.handleObj=s,e.data=s.data,n=((Z.event.special[s.origType]||{}).handle||s.handler).apply(r.elem,a),void 0!==n&&(e.result=n)===!1&&(e.preventDefault(),e.stopPropagation()));return c.postDispatch&&c.postDispatch.call(this,e),e.result}},handlers:function(e,t){var i,n,r,s,o=[],a=t.delegateCount,l=e.target;if(a&&l.nodeType&&(!e.button||"click"!==e.type))for(;l!==this;l=l.parentNode||this)if(l.disabled!==!0||"click"!==e.type){for(n=[],i=0;i<a;i++)s=t[i],r=s.selector+" ",void 0===n[r]&&(n[r]=s.needsContext?Z(r,this).index(l)>=0:Z.find(r,this,null,[l]).length),n[r]&&n.push(s);n.length&&o.push({elem:l,handlers:n})}return a<t.length&&o.push({elem:this,handlers:t.slice(a)}),o},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(e,t){return null==e.which&&(e.which=null!=t.charCode?t.charCode:t.keyCode),e}},mouseHooks:{props:"button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(e,t){var i,n,r,s=t.button;return null==e.pageX&&null!=t.clientX&&(i=e.target.ownerDocument||Q,n=i.documentElement,r=i.body,e.pageX=t.clientX+(n&&n.scrollLeft||r&&r.scrollLeft||0)-(n&&n.clientLeft||r&&r.clientLeft||0),e.pageY=t.clientY+(n&&n.scrollTop||r&&r.scrollTop||0)-(n&&n.clientTop||r&&r.clientTop||0)),e.which||void 0===s||(e.which=1&s?1:2&s?3:4&s?2:0),e}},fix:function(e){if(e[Z.expando])return e;var t,i,n,r=e.type,s=e,o=this.fixHooks[r];for(o||(this.fixHooks[r]=o=Pe.test(r)?this.mouseHooks:Ee.test(r)?this.keyHooks:{}),n=o.props?this.props.concat(o.props):this.props,e=new Z.Event(s),t=n.length;t--;)i=n[t],e[i]=s[i];return e.target||(e.target=Q),3===e.target.nodeType&&(e.target=e.target.parentNode),o.filter?o.filter(e,s):e},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==p()&&this.focus)return this.focus(),!1},delegateType:"focusin"},blur:{trigger:function(){if(this===p()&&this.blur)return this.blur(),!1},delegateType:"focusout"},click:{trigger:function(){if("checkbox"===this.type&&this.click&&Z.nodeName(this,"input"))return this.click(),!1},_default:function(e){return Z.nodeName(e.target,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,i,n){var r=Z.extend(new Z.Event,i,{type:e,isSimulated:!0,originalEvent:{}});n?Z.event.trigger(r,null,t):Z.event.dispatch.call(t,r),r.isDefaultPrevented()&&i.preventDefault()}},Z.removeEvent=function(e,t,i){e.removeEventListener&&e.removeEventListener(t,i,!1)},Z.Event=function(e,t){return this instanceof Z.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&e.returnValue===!1?c:u):this.type=e,t&&Z.extend(this,t),this.timeStamp=e&&e.timeStamp||Z.now(),void(this[Z.expando]=!0)):new Z.Event(e,t)},Z.Event.prototype={isDefaultPrevented:u,isPropagationStopped:u,isImmediatePropagationStopped:u,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=c,e&&e.preventDefault&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=c,e&&e.stopPropagation&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=c,e&&e.stopImmediatePropagation&&e.stopImmediatePropagation(),this.stopPropagation()}},Z.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,t){Z.event.special[e]={delegateType:t,bindType:t,handle:function(e){var i,n=this,r=e.relatedTarget,s=e.handleObj;return r&&(r===n||Z.contains(n,r))||(e.type=s.origType,i=s.handler.apply(this,arguments),e.type=t),i}}}),K.focusinBubbles||Z.each({focus:"focusin",blur:"focusout"},function(e,t){var i=function(e){Z.event.simulate(t,e.target,Z.event.fix(e),!0)};Z.event.special[t]={setup:function(){var n=this.ownerDocument||this,r=ve.access(n,t);r||n.addEventListener(e,i,!0),ve.access(n,t,(r||0)+1)},teardown:function(){var n=this.ownerDocument||this,r=ve.access(n,t)-1;r?ve.access(n,t,r):(n.removeEventListener(e,i,!0),ve.remove(n,t))}}}),Z.fn.extend({on:function(e,t,i,n,r){var s,o;if("object"==typeof e){"string"!=typeof t&&(i=i||t,t=void 0);for(o in e)this.on(o,t,i,e[o],r);return this}if(null==i&&null==n?(n=t,i=t=void 0):null==n&&("string"==typeof t?(n=i,i=void 0):(n=i,i=t,t=void 0)),n===!1)n=u;else if(!n)return this;return 1===r&&(s=n,n=function(e){return Z().off(e),s.apply(this,arguments)},n.guid=s.guid||(s.guid=Z.guid++)),this.each(function(){Z.event.add(this,e,n,i,t)})},one:function(e,t,i,n){return this.on(e,t,i,n,1)},off:function(e,t,i){var n,r;if(e&&e.preventDefault&&e.handleObj)return n=e.handleObj,Z(e.delegateTarget).off(n.namespace?n.origType+"."+n.namespace:n.origType,n.selector,n.handler),this;if("object"==typeof e){for(r in e)this.off(r,t,e[r]);return this}return t!==!1&&"function"!=typeof t||(i=t,t=void 0),i===!1&&(i=u),this.each(function(){Z.event.remove(this,e,i,t)})},trigger:function(e,t){return this.each(function(){Z.event.trigger(e,t,this)})},triggerHandler:function(e,t){var i=this[0];if(i)return Z.event.trigger(e,t,i,!0)}});var De=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,Le=/<([\w:]+)/,Me=/<|&#?\w+;/,Ne=/<(?:script|style|link)/i,Ie=/checked\s*(?:[^=]|=\s*.checked.)/i,ze=/^$|\/(?:java|ecma)script/i,Oe=/^true\/(.*)/,Be=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,Re={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};Re.optgroup=Re.option,Re.tbody=Re.tfoot=Re.colgroup=Re.caption=Re.thead,Re.th=Re.td,Z.extend({clone:function(e,t,i){var n,r,s,o,a=e.cloneNode(!0),l=Z.contains(e.ownerDocument,e);if(!(K.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||Z.isXMLDoc(e)))for(o=v(a),s=v(e),n=0,r=s.length;n<r;n++)y(s[n],o[n]);if(t)if(i)for(s=s||v(e),o=o||v(a),n=0,r=s.length;n<r;n++)g(s[n],o[n]);else g(e,a);return o=v(a,"script"),o.length>0&&m(o,!l&&v(e,"script")),a},buildFragment:function(e,t,i,n){for(var r,s,o,a,l,c,u=t.createDocumentFragment(),p=[],h=0,d=e.length;h<d;h++)if(r=e[h],r||0===r)if("object"===Z.type(r))Z.merge(p,r.nodeType?[r]:r);else if(Me.test(r)){for(s=s||u.appendChild(t.createElement("div")),o=(Le.exec(r)||["",""])[1].toLowerCase(),a=Re[o]||Re._default,s.innerHTML=a[1]+r.replace(De,"<$1></$2>")+a[2],c=a[0];c--;)s=s.lastChild;Z.merge(p,s.childNodes),s=u.firstChild,s.textContent=""}else p.push(t.createTextNode(r));for(u.textContent="",h=0;r=p[h++];)if((!n||Z.inArray(r,n)===-1)&&(l=Z.contains(r.ownerDocument,r),s=v(u.appendChild(r),"script"),l&&m(s),i))for(c=0;r=s[c++];)ze.test(r.type||"")&&i.push(r);return u},cleanData:function(e){for(var t,i,n,r,s=Z.event.special,o=0;void 0!==(i=e[o]);o++){if(Z.acceptData(i)&&(r=i[ve.expando],r&&(t=ve.cache[r]))){if(t.events)for(n in t.events)s[n]?Z.event.remove(i,n):Z.removeEvent(i,n,t.handle);ve.cache[r]&&delete ve.cache[r]}delete ye.cache[i[ye.expando]]}}}),Z.fn.extend({text:function(e){return ge(this,function(e){return void 0===e?Z.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=h(this,e);t.appendChild(e)}})},prepend:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=h(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},remove:function(e,t){for(var i,n=e?Z.filter(e,this):this,r=0;null!=(i=n[r]);r++)t||1!==i.nodeType||Z.cleanData(v(i)),i.parentNode&&(t&&Z.contains(i.ownerDocument,i)&&m(v(i,"script")),i.parentNode.removeChild(i));return this},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(Z.cleanData(v(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return Z.clone(this,e,t)})},html:function(e){return ge(this,function(e){var t=this[0]||{},i=0,n=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Ne.test(e)&&!Re[(Le.exec(e)||["",""])[1].toLowerCase()]){e=e.replace(De,"<$1></$2>");try{for(;i<n;i++)t=this[i]||{},1===t.nodeType&&(Z.cleanData(v(t,!1)),t.innerHTML=e);t=0}catch(r){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=arguments[0];return this.domManip(arguments,function(t){e=this.parentNode,Z.cleanData(v(this)),e&&e.replaceChild(t,this)}),e&&(e.length||e.nodeType)?this:this.remove()},detach:function(e){return this.remove(e,!0)},domManip:function(e,t){e=Y.apply([],e);var i,n,r,s,o,a,l=0,c=this.length,u=this,p=c-1,h=e[0],m=Z.isFunction(h);if(m||c>1&&"string"==typeof h&&!K.checkClone&&Ie.test(h))return this.each(function(i){var n=u.eq(i);m&&(e[0]=h.call(this,i,n.html())),n.domManip(e,t)});if(c&&(i=Z.buildFragment(e,this[0].ownerDocument,!1,this),n=i.firstChild,1===i.childNodes.length&&(i=n),n)){for(r=Z.map(v(i,"script"),d),s=r.length;l<c;l++)o=i,l!==p&&(o=Z.clone(o,!0,!0),s&&Z.merge(r,v(o,"script"))),t.call(this[l],o,l);if(s)for(a=r[r.length-1].ownerDocument,Z.map(r,f),l=0;l<s;l++)o=r[l],ze.test(o.type||"")&&!ve.access(o,"globalEval")&&Z.contains(a,o)&&(o.src?Z._evalUrl&&Z._evalUrl(o.src):Z.globalEval(o.textContent.replace(Be,"")))}return this}}),Z.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){Z.fn[e]=function(e){for(var i,n=[],r=Z(e),s=r.length-1,o=0;o<=s;o++)i=o===s?this:this.clone(!0),Z(r[o])[t](i),W.apply(n,i.get());return this.pushStack(n)}});var Fe,He={},je=/^margin/,Xe=new RegExp("^("+xe+")(?!px)[a-z%]+$","i"),qe=function(t){return t.ownerDocument.defaultView.opener?t.ownerDocument.defaultView.getComputedStyle(t,null):e.getComputedStyle(t,null)};!function(){function t(){o.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute",o.innerHTML="",r.appendChild(s);var t=e.getComputedStyle(o,null);i="1%"!==t.top,n="4px"===t.width,r.removeChild(s)}var i,n,r=Q.documentElement,s=Q.createElement("div"),o=Q.createElement("div");o.style&&(o.style.backgroundClip="content-box",o.cloneNode(!0).style.backgroundClip="",K.clearCloneStyle="content-box"===o.style.backgroundClip,s.style.cssText="border:0;width:0;height:0;top:0;left:-9999px;margin-top:1px;position:absolute", -s.appendChild(o),e.getComputedStyle&&Z.extend(K,{pixelPosition:function(){return t(),i},boxSizingReliable:function(){return null==n&&t(),n},reliableMarginRight:function(){var t,i=o.appendChild(Q.createElement("div"));return i.style.cssText=o.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",i.style.marginRight=i.style.width="0",o.style.width="1px",r.appendChild(s),t=!parseFloat(e.getComputedStyle(i,null).marginRight),r.removeChild(s),o.removeChild(i),t}}))}(),Z.swap=function(e,t,i,n){var r,s,o={};for(s in t)o[s]=e.style[s],e.style[s]=t[s];r=i.apply(e,n||[]);for(s in t)e.style[s]=o[s];return r};var Ye=/^(none|table(?!-c[ea]).+)/,We=new RegExp("^("+xe+")(.*)$","i"),$e=new RegExp("^([+-])=("+xe+")","i"),Ge={position:"absolute",visibility:"hidden",display:"block"},Ve={letterSpacing:"0",fontWeight:"400"},Ue=["Webkit","O","Moz","ms"];Z.extend({cssHooks:{opacity:{get:function(e,t){if(t){var i=x(e,"opacity");return""===i?"1":i}}}},cssNumber:{columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":"cssFloat"},style:function(e,t,i,n){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var r,s,o,a=Z.camelCase(t),l=e.style;return t=Z.cssProps[a]||(Z.cssProps[a]=T(l,a)),o=Z.cssHooks[t]||Z.cssHooks[a],void 0===i?o&&"get"in o&&void 0!==(r=o.get(e,!1,n))?r:l[t]:(s=typeof i,"string"===s&&(r=$e.exec(i))&&(i=(r[1]+1)*r[2]+parseFloat(Z.css(e,t)),s="number"),null!=i&&i===i&&("number"!==s||Z.cssNumber[a]||(i+="px"),K.clearCloneStyle||""!==i||0!==t.indexOf("background")||(l[t]="inherit"),o&&"set"in o&&void 0===(i=o.set(e,i,n))||(l[t]=i)),void 0)}},css:function(e,t,i,n){var r,s,o,a=Z.camelCase(t);return t=Z.cssProps[a]||(Z.cssProps[a]=T(e.style,a)),o=Z.cssHooks[t]||Z.cssHooks[a],o&&"get"in o&&(r=o.get(e,!0,i)),void 0===r&&(r=x(e,t,n)),"normal"===r&&t in Ve&&(r=Ve[t]),""===i||i?(s=parseFloat(r),i===!0||Z.isNumeric(s)?s||0:r):r}}),Z.each(["height","width"],function(e,t){Z.cssHooks[t]={get:function(e,i,n){if(i)return Ye.test(Z.css(e,"display"))&&0===e.offsetWidth?Z.swap(e,Ge,function(){return E(e,t,n)}):E(e,t,n)},set:function(e,i,n){var r=n&&qe(e);return C(e,i,n?k(e,t,n,"border-box"===Z.css(e,"boxSizing",!1,r),r):0)}}}),Z.cssHooks.marginRight=S(K.reliableMarginRight,function(e,t){if(t)return Z.swap(e,{display:"inline-block"},x,[e,"marginRight"])}),Z.each({margin:"",padding:"",border:"Width"},function(e,t){Z.cssHooks[e+t]={expand:function(i){for(var n=0,r={},s="string"==typeof i?i.split(" "):[i];n<4;n++)r[e+Se[n]+t]=s[n]||s[n-2]||s[0];return r}},je.test(e)||(Z.cssHooks[e+t].set=C)}),Z.fn.extend({css:function(e,t){return ge(this,function(e,t,i){var n,r,s={},o=0;if(Z.isArray(t)){for(n=qe(e),r=t.length;o<r;o++)s[t[o]]=Z.css(e,t[o],!1,n);return s}return void 0!==i?Z.style(e,t,i):Z.css(e,t)},e,t,arguments.length>1)},show:function(){return P(this,!0)},hide:function(){return P(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){Te(this)?Z(this).show():Z(this).hide()})}}),Z.Tween=A,A.prototype={constructor:A,init:function(e,t,i,n,r,s){this.elem=e,this.prop=i,this.easing=r||"swing",this.options=t,this.start=this.now=this.cur(),this.end=n,this.unit=s||(Z.cssNumber[i]?"":"px")},cur:function(){var e=A.propHooks[this.prop];return e&&e.get?e.get(this):A.propHooks._default.get(this)},run:function(e){var t,i=A.propHooks[this.prop];return this.options.duration?this.pos=t=Z.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),i&&i.set?i.set(this):A.propHooks._default.set(this),this}},A.prototype.init.prototype=A.prototype,A.propHooks={_default:{get:function(e){var t;return null==e.elem[e.prop]||e.elem.style&&null!=e.elem.style[e.prop]?(t=Z.css(e.elem,e.prop,""),t&&"auto"!==t?t:0):e.elem[e.prop]},set:function(e){Z.fx.step[e.prop]?Z.fx.step[e.prop](e):e.elem.style&&(null!=e.elem.style[Z.cssProps[e.prop]]||Z.cssHooks[e.prop])?Z.style(e.elem,e.prop,e.now+e.unit):e.elem[e.prop]=e.now}}},A.propHooks.scrollTop=A.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},Z.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2}},Z.fx=A.prototype.init,Z.fx.step={};var Ke,Qe,Je=/^(?:toggle|show|hide)$/,Ze=new RegExp("^(?:([+-])=|)("+xe+")([a-z%]*)$","i"),et=/queueHooks$/,tt=[M],it={"*":[function(e,t){var i=this.createTween(e,t),n=i.cur(),r=Ze.exec(t),s=r&&r[3]||(Z.cssNumber[e]?"":"px"),o=(Z.cssNumber[e]||"px"!==s&&+n)&&Ze.exec(Z.css(i.elem,e)),a=1,l=20;if(o&&o[3]!==s){s=s||o[3],r=r||[],o=+n||1;do a=a||".5",o/=a,Z.style(i.elem,e,o+s);while(a!==(a=i.cur()/n)&&1!==a&&--l)}return r&&(o=i.start=+o||+n||0,i.unit=s,i.end=r[1]?o+(r[1]+1)*r[2]:+r[2]),i}]};Z.Animation=Z.extend(I,{tweener:function(e,t){Z.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");for(var i,n=0,r=e.length;n<r;n++)i=e[n],it[i]=it[i]||[],it[i].unshift(t)},prefilter:function(e,t){t?tt.unshift(e):tt.push(e)}}),Z.speed=function(e,t,i){var n=e&&"object"==typeof e?Z.extend({},e):{complete:i||!i&&t||Z.isFunction(e)&&e,duration:e,easing:i&&t||t&&!Z.isFunction(t)&&t};return n.duration=Z.fx.off?0:"number"==typeof n.duration?n.duration:n.duration in Z.fx.speeds?Z.fx.speeds[n.duration]:Z.fx.speeds._default,null!=n.queue&&n.queue!==!0||(n.queue="fx"),n.old=n.complete,n.complete=function(){Z.isFunction(n.old)&&n.old.call(this),n.queue&&Z.dequeue(this,n.queue)},n},Z.fn.extend({fadeTo:function(e,t,i,n){return this.filter(Te).css("opacity",0).show().end().animate({opacity:t},e,i,n)},animate:function(e,t,i,n){var r=Z.isEmptyObject(e),s=Z.speed(t,i,n),o=function(){var t=I(this,Z.extend({},e),s);(r||ve.get(this,"finish"))&&t.stop(!0)};return o.finish=o,r||s.queue===!1?this.each(o):this.queue(s.queue,o)},stop:function(e,t,i){var n=function(e){var t=e.stop;delete e.stop,t(i)};return"string"!=typeof e&&(i=t,t=e,e=void 0),t&&e!==!1&&this.queue(e||"fx",[]),this.each(function(){var t=!0,r=null!=e&&e+"queueHooks",s=Z.timers,o=ve.get(this);if(r)o[r]&&o[r].stop&&n(o[r]);else for(r in o)o[r]&&o[r].stop&&et.test(r)&&n(o[r]);for(r=s.length;r--;)s[r].elem!==this||null!=e&&s[r].queue!==e||(s[r].anim.stop(i),t=!1,s.splice(r,1));!t&&i||Z.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"fx"),this.each(function(){var t,i=ve.get(this),n=i[e+"queue"],r=i[e+"queueHooks"],s=Z.timers,o=n?n.length:0;for(i.finish=!0,Z.queue(this,e,[]),r&&r.stop&&r.stop.call(this,!0),t=s.length;t--;)s[t].elem===this&&s[t].queue===e&&(s[t].anim.stop(!0),s.splice(t,1));for(t=0;t<o;t++)n[t]&&n[t].finish&&n[t].finish.call(this);delete i.finish})}}),Z.each(["toggle","show","hide"],function(e,t){var i=Z.fn[t];Z.fn[t]=function(e,n,r){return null==e||"boolean"==typeof e?i.apply(this,arguments):this.animate(D(t,!0),e,n,r)}}),Z.each({slideDown:D("show"),slideUp:D("hide"),slideToggle:D("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){Z.fn[e]=function(e,i,n){return this.animate(t,e,i,n)}}),Z.timers=[],Z.fx.tick=function(){var e,t=0,i=Z.timers;for(Ke=Z.now();t<i.length;t++)e=i[t],e()||i[t]!==e||i.splice(t--,1);i.length||Z.fx.stop(),Ke=void 0},Z.fx.timer=function(e){Z.timers.push(e),e()?Z.fx.start():Z.timers.pop()},Z.fx.interval=13,Z.fx.start=function(){Qe||(Qe=setInterval(Z.fx.tick,Z.fx.interval))},Z.fx.stop=function(){clearInterval(Qe),Qe=null},Z.fx.speeds={slow:600,fast:200,_default:400},Z.fn.delay=function(e,t){return e=Z.fx?Z.fx.speeds[e]||e:e,t=t||"fx",this.queue(t,function(t,i){var n=setTimeout(t,e);i.stop=function(){clearTimeout(n)}})},function(){var e=Q.createElement("input"),t=Q.createElement("select"),i=t.appendChild(Q.createElement("option"));e.type="checkbox",K.checkOn=""!==e.value,K.optSelected=i.selected,t.disabled=!0,K.optDisabled=!i.disabled,e=Q.createElement("input"),e.value="t",e.type="radio",K.radioValue="t"===e.value}();var nt,rt,st=Z.expr.attrHandle;Z.fn.extend({attr:function(e,t){return ge(this,Z.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){Z.removeAttr(this,e)})}}),Z.extend({attr:function(e,t,i){var n,r,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return typeof e.getAttribute===ke?Z.prop(e,t,i):(1===s&&Z.isXMLDoc(e)||(t=t.toLowerCase(),n=Z.attrHooks[t]||(Z.expr.match.bool.test(t)?rt:nt)),void 0===i?n&&"get"in n&&null!==(r=n.get(e,t))?r:(r=Z.find.attr(e,t),null==r?void 0:r):null!==i?n&&"set"in n&&void 0!==(r=n.set(e,i,t))?r:(e.setAttribute(t,i+""),i):void Z.removeAttr(e,t))},removeAttr:function(e,t){var i,n,r=0,s=t&&t.match(de);if(s&&1===e.nodeType)for(;i=s[r++];)n=Z.propFix[i]||i,Z.expr.match.bool.test(i)&&(e[n]=!1),e.removeAttribute(i)},attrHooks:{type:{set:function(e,t){if(!K.radioValue&&"radio"===t&&Z.nodeName(e,"input")){var i=e.value;return e.setAttribute("type",t),i&&(e.value=i),t}}}}}),rt={set:function(e,t,i){return t===!1?Z.removeAttr(e,i):e.setAttribute(i,i),i}},Z.each(Z.expr.match.bool.source.match(/\w+/g),function(e,t){var i=st[t]||Z.find.attr;st[t]=function(e,t,n){var r,s;return n||(s=st[t],st[t]=r,r=null!=i(e,t,n)?t.toLowerCase():null,st[t]=s),r}});var ot=/^(?:input|select|textarea|button)$/i;Z.fn.extend({prop:function(e,t){return ge(this,Z.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[Z.propFix[e]||e]})}}),Z.extend({propFix:{"for":"htmlFor","class":"className"},prop:function(e,t,i){var n,r,s,o=e.nodeType;if(e&&3!==o&&8!==o&&2!==o)return s=1!==o||!Z.isXMLDoc(e),s&&(t=Z.propFix[t]||t,r=Z.propHooks[t]),void 0!==i?r&&"set"in r&&void 0!==(n=r.set(e,i,t))?n:e[t]=i:r&&"get"in r&&null!==(n=r.get(e,t))?n:e[t]},propHooks:{tabIndex:{get:function(e){return e.hasAttribute("tabindex")||ot.test(e.nodeName)||e.href?e.tabIndex:-1}}}}),K.optSelected||(Z.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null}}),Z.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){Z.propFix[this.toLowerCase()]=this});var at=/[\t\r\n\f]/g;Z.fn.extend({addClass:function(e){var t,i,n,r,s,o,a="string"==typeof e&&e,l=0,c=this.length;if(Z.isFunction(e))return this.each(function(t){Z(this).addClass(e.call(this,t,this.className))});if(a)for(t=(e||"").match(de)||[];l<c;l++)if(i=this[l],n=1===i.nodeType&&(i.className?(" "+i.className+" ").replace(at," "):" ")){for(s=0;r=t[s++];)n.indexOf(" "+r+" ")<0&&(n+=r+" ");o=Z.trim(n),i.className!==o&&(i.className=o)}return this},removeClass:function(e){var t,i,n,r,s,o,a=0===arguments.length||"string"==typeof e&&e,l=0,c=this.length;if(Z.isFunction(e))return this.each(function(t){Z(this).removeClass(e.call(this,t,this.className))});if(a)for(t=(e||"").match(de)||[];l<c;l++)if(i=this[l],n=1===i.nodeType&&(i.className?(" "+i.className+" ").replace(at," "):"")){for(s=0;r=t[s++];)for(;n.indexOf(" "+r+" ")>=0;)n=n.replace(" "+r+" "," ");o=e?Z.trim(n):"",i.className!==o&&(i.className=o)}return this},toggleClass:function(e,t){var i=typeof e;return"boolean"==typeof t&&"string"===i?t?this.addClass(e):this.removeClass(e):Z.isFunction(e)?this.each(function(i){Z(this).toggleClass(e.call(this,i,this.className,t),t)}):this.each(function(){if("string"===i)for(var t,n=0,r=Z(this),s=e.match(de)||[];t=s[n++];)r.hasClass(t)?r.removeClass(t):r.addClass(t);else i!==ke&&"boolean"!==i||(this.className&&ve.set(this,"__className__",this.className),this.className=this.className||e===!1?"":ve.get(this,"__className__")||"")})},hasClass:function(e){for(var t=" "+e+" ",i=0,n=this.length;i<n;i++)if(1===this[i].nodeType&&(" "+this[i].className+" ").replace(at," ").indexOf(t)>=0)return!0;return!1}});var lt=/\r/g;Z.fn.extend({val:function(e){var t,i,n,r=this[0];{if(arguments.length)return n=Z.isFunction(e),this.each(function(i){var r;1===this.nodeType&&(r=n?e.call(this,i,Z(this).val()):e,null==r?r="":"number"==typeof r?r+="":Z.isArray(r)&&(r=Z.map(r,function(e){return null==e?"":e+""})),t=Z.valHooks[this.type]||Z.valHooks[this.nodeName.toLowerCase()],t&&"set"in t&&void 0!==t.set(this,r,"value")||(this.value=r))});if(r)return t=Z.valHooks[r.type]||Z.valHooks[r.nodeName.toLowerCase()],t&&"get"in t&&void 0!==(i=t.get(r,"value"))?i:(i=r.value,"string"==typeof i?i.replace(lt,""):null==i?"":i)}}}),Z.extend({valHooks:{option:{get:function(e){var t=Z.find.attr(e,"value");return null!=t?t:Z.trim(Z.text(e))}},select:{get:function(e){for(var t,i,n=e.options,r=e.selectedIndex,s="select-one"===e.type||r<0,o=s?null:[],a=s?r+1:n.length,l=r<0?a:s?r:0;l<a;l++)if(i=n[l],(i.selected||l===r)&&(K.optDisabled?!i.disabled:null===i.getAttribute("disabled"))&&(!i.parentNode.disabled||!Z.nodeName(i.parentNode,"optgroup"))){if(t=Z(i).val(),s)return t;o.push(t)}return o},set:function(e,t){for(var i,n,r=e.options,s=Z.makeArray(t),o=r.length;o--;)n=r[o],(n.selected=Z.inArray(n.value,s)>=0)&&(i=!0);return i||(e.selectedIndex=-1),s}}}}),Z.each(["radio","checkbox"],function(){Z.valHooks[this]={set:function(e,t){if(Z.isArray(t))return e.checked=Z.inArray(Z(e).val(),t)>=0}},K.checkOn||(Z.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),Z.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(e,t){Z.fn[t]=function(e,i){return arguments.length>0?this.on(t,null,e,i):this.trigger(t)}}),Z.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)},bind:function(e,t,i){return this.on(e,null,t,i)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,i,n){return this.on(t,e,i,n)},undelegate:function(e,t,i){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",i)}});var ct=Z.now(),ut=/\?/;Z.parseJSON=function(e){return JSON.parse(e+"")},Z.parseXML=function(e){var t,i;if(!e||"string"!=typeof e)return null;try{i=new DOMParser,t=i.parseFromString(e,"text/xml")}catch(n){t=void 0}return t&&!t.getElementsByTagName("parsererror").length||Z.error("Invalid XML: "+e),t};var pt=/#.*$/,ht=/([?&])_=[^&]*/,dt=/^(.*?):[ \t]*([^\r\n]*)$/gm,ft=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,mt=/^(?:GET|HEAD)$/,gt=/^\/\//,vt=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,yt={},wt={},bt="*/".concat("*"),xt=e.location.href,St=vt.exec(xt.toLowerCase())||[];Z.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:xt,type:"GET",isLocal:ft.test(St[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":bt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":Z.parseJSON,"text xml":Z.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?B(B(e,Z.ajaxSettings),t):B(Z.ajaxSettings,e)},ajaxPrefilter:z(yt),ajaxTransport:z(wt),ajax:function(e,t){function i(e,t,i,o){var l,u,v,y,b,S=t;2!==w&&(w=2,a&&clearTimeout(a),n=void 0,s=o||"",x.readyState=e>0?4:0,l=e>=200&&e<300||304===e,i&&(y=R(p,x,i)),y=F(p,y,x,l),l?(p.ifModified&&(b=x.getResponseHeader("Last-Modified"),b&&(Z.lastModified[r]=b),b=x.getResponseHeader("etag"),b&&(Z.etag[r]=b)),204===e||"HEAD"===p.type?S="nocontent":304===e?S="notmodified":(S=y.state,u=y.data,v=y.error,l=!v)):(v=S,!e&&S||(S="error",e<0&&(e=0))),x.status=e,x.statusText=(t||S)+"",l?f.resolveWith(h,[u,S,x]):f.rejectWith(h,[x,S,v]),x.statusCode(g),g=void 0,c&&d.trigger(l?"ajaxSuccess":"ajaxError",[x,p,l?u:v]),m.fireWith(h,[x,S]),c&&(d.trigger("ajaxComplete",[x,p]),--Z.active||Z.event.trigger("ajaxStop")))}"object"==typeof e&&(t=e,e=void 0),t=t||{};var n,r,s,o,a,l,c,u,p=Z.ajaxSetup({},t),h=p.context||p,d=p.context&&(h.nodeType||h.jquery)?Z(h):Z.event,f=Z.Deferred(),m=Z.Callbacks("once memory"),g=p.statusCode||{},v={},y={},w=0,b="canceled",x={readyState:0,getResponseHeader:function(e){var t;if(2===w){if(!o)for(o={};t=dt.exec(s);)o[t[1].toLowerCase()]=t[2];t=o[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===w?s:null},setRequestHeader:function(e,t){var i=e.toLowerCase();return w||(e=y[i]=y[i]||e,v[e]=t),this},overrideMimeType:function(e){return w||(p.mimeType=e),this},statusCode:function(e){var t;if(e)if(w<2)for(t in e)g[t]=[g[t],e[t]];else x.always(e[x.status]);return this},abort:function(e){var t=e||b;return n&&n.abort(t),i(0,t),this}};if(f.promise(x).complete=m.add,x.success=x.done,x.error=x.fail,p.url=((e||p.url||xt)+"").replace(pt,"").replace(gt,St[1]+"//"),p.type=t.method||t.type||p.method||p.type,p.dataTypes=Z.trim(p.dataType||"*").toLowerCase().match(de)||[""],null==p.crossDomain&&(l=vt.exec(p.url.toLowerCase()),p.crossDomain=!(!l||l[1]===St[1]&&l[2]===St[2]&&(l[3]||("http:"===l[1]?"80":"443"))===(St[3]||("http:"===St[1]?"80":"443")))),p.data&&p.processData&&"string"!=typeof p.data&&(p.data=Z.param(p.data,p.traditional)),O(yt,p,t,x),2===w)return x;c=Z.event&&p.global,c&&0===Z.active++&&Z.event.trigger("ajaxStart"),p.type=p.type.toUpperCase(),p.hasContent=!mt.test(p.type),r=p.url,p.hasContent||(p.data&&(r=p.url+=(ut.test(r)?"&":"?")+p.data,delete p.data),p.cache===!1&&(p.url=ht.test(r)?r.replace(ht,"$1_="+ct++):r+(ut.test(r)?"&":"?")+"_="+ct++)),p.ifModified&&(Z.lastModified[r]&&x.setRequestHeader("If-Modified-Since",Z.lastModified[r]),Z.etag[r]&&x.setRequestHeader("If-None-Match",Z.etag[r])),(p.data&&p.hasContent&&p.contentType!==!1||t.contentType)&&x.setRequestHeader("Content-Type",p.contentType),x.setRequestHeader("Accept",p.dataTypes[0]&&p.accepts[p.dataTypes[0]]?p.accepts[p.dataTypes[0]]+("*"!==p.dataTypes[0]?", "+bt+"; q=0.01":""):p.accepts["*"]);for(u in p.headers)x.setRequestHeader(u,p.headers[u]);if(p.beforeSend&&(p.beforeSend.call(h,x,p)===!1||2===w))return x.abort();b="abort";for(u in{success:1,error:1,complete:1})x[u](p[u]);if(n=O(wt,p,t,x)){x.readyState=1,c&&d.trigger("ajaxSend",[x,p]),p.async&&p.timeout>0&&(a=setTimeout(function(){x.abort("timeout")},p.timeout));try{w=1,n.send(v,i)}catch(S){if(!(w<2))throw S;i(-1,S)}}else i(-1,"No Transport");return x},getJSON:function(e,t,i){return Z.get(e,t,i,"json")},getScript:function(e,t){return Z.get(e,void 0,t,"script")}}),Z.each(["get","post"],function(e,t){Z[t]=function(e,i,n,r){return Z.isFunction(i)&&(r=r||n,n=i,i=void 0),Z.ajax({url:e,type:t,dataType:r,data:i,success:n})}}),Z._evalUrl=function(e){return Z.ajax({url:e,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})},Z.fn.extend({wrapAll:function(e){var t;return Z.isFunction(e)?this.each(function(t){Z(this).wrapAll(e.call(this,t))}):(this[0]&&(t=Z(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e}).append(this)),this)},wrapInner:function(e){return Z.isFunction(e)?this.each(function(t){Z(this).wrapInner(e.call(this,t))}):this.each(function(){var t=Z(this),i=t.contents();i.length?i.wrapAll(e):t.append(e)})},wrap:function(e){var t=Z.isFunction(e);return this.each(function(i){Z(this).wrapAll(t?e.call(this,i):e)})},unwrap:function(){return this.parent().each(function(){Z.nodeName(this,"body")||Z(this).replaceWith(this.childNodes)}).end()}}),Z.expr.filters.hidden=function(e){return e.offsetWidth<=0&&e.offsetHeight<=0},Z.expr.filters.visible=function(e){return!Z.expr.filters.hidden(e)};var Tt=/%20/g,Ct=/\[\]$/,kt=/\r?\n/g,Et=/^(?:submit|button|image|reset|file)$/i,Pt=/^(?:input|select|textarea|keygen)/i;Z.param=function(e,t){var i,n=[],r=function(e,t){t=Z.isFunction(t)?t():null==t?"":t,n[n.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(void 0===t&&(t=Z.ajaxSettings&&Z.ajaxSettings.traditional),Z.isArray(e)||e.jquery&&!Z.isPlainObject(e))Z.each(e,function(){r(this.name,this.value)});else for(i in e)H(i,e[i],t,r);return n.join("&").replace(Tt,"+")},Z.fn.extend({serialize:function(){return Z.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=Z.prop(this,"elements");return e?Z.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!Z(this).is(":disabled")&&Pt.test(this.nodeName)&&!Et.test(e)&&(this.checked||!Ce.test(e))}).map(function(e,t){var i=Z(this).val();return null==i?null:Z.isArray(i)?Z.map(i,function(e){return{name:t.name,value:e.replace(kt,"\r\n")}}):{name:t.name,value:i.replace(kt,"\r\n")}}).get()}}),Z.ajaxSettings.xhr=function(){try{return new XMLHttpRequest}catch(e){}};var At=0,_t={},Dt={0:200,1223:204},Lt=Z.ajaxSettings.xhr();e.attachEvent&&e.attachEvent("onunload",function(){for(var e in _t)_t[e]()}),K.cors=!!Lt&&"withCredentials"in Lt,K.ajax=Lt=!!Lt,Z.ajaxTransport(function(e){var t;if(K.cors||Lt&&!e.crossDomain)return{send:function(i,n){var r,s=e.xhr(),o=++At;if(s.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(r in e.xhrFields)s[r]=e.xhrFields[r];e.mimeType&&s.overrideMimeType&&s.overrideMimeType(e.mimeType),e.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");for(r in i)s.setRequestHeader(r,i[r]);t=function(e){return function(){t&&(delete _t[o],t=s.onload=s.onerror=null,"abort"===e?s.abort():"error"===e?n(s.status,s.statusText):n(Dt[s.status]||s.status,s.statusText,"string"==typeof s.responseText?{text:s.responseText}:void 0,s.getAllResponseHeaders()))}},s.onload=t(),s.onerror=t("error"),t=_t[o]=t("abort");try{s.send(e.hasContent&&e.data||null)}catch(a){if(t)throw a}},abort:function(){t&&t()}}}),Z.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(e){return Z.globalEval(e),e}}}),Z.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),Z.ajaxTransport("script",function(e){if(e.crossDomain){var t,i;return{send:function(n,r){t=Z("<script>").prop({async:!0,charset:e.scriptCharset,src:e.url}).on("load error",i=function(e){t.remove(),i=null,e&&r("error"===e.type?404:200,e.type)}),Q.head.appendChild(t[0])},abort:function(){i&&i()}}}});var Mt=[],Nt=/(=)\?(?=&|$)|\?\?/;Z.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Mt.pop()||Z.expando+"_"+ct++;return this[e]=!0,e}}),Z.ajaxPrefilter("json jsonp",function(t,i,n){var r,s,o,a=t.jsonp!==!1&&(Nt.test(t.url)?"url":"string"==typeof t.data&&!(t.contentType||"").indexOf("application/x-www-form-urlencoded")&&Nt.test(t.data)&&"data");if(a||"jsonp"===t.dataTypes[0])return r=t.jsonpCallback=Z.isFunction(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,a?t[a]=t[a].replace(Nt,"$1"+r):t.jsonp!==!1&&(t.url+=(ut.test(t.url)?"&":"?")+t.jsonp+"="+r),t.converters["script json"]=function(){return o||Z.error(r+" was not called"),o[0]},t.dataTypes[0]="json",s=e[r],e[r]=function(){o=arguments},n.always(function(){e[r]=s,t[r]&&(t.jsonpCallback=i.jsonpCallback,Mt.push(r)),o&&Z.isFunction(s)&&s(o[0]),o=s=void 0}),"script"}),Z.parseHTML=function(e,t,i){if(!e||"string"!=typeof e)return null;"boolean"==typeof t&&(i=t,t=!1),t=t||Q;var n=oe.exec(e),r=!i&&[];return n?[t.createElement(n[1])]:(n=Z.buildFragment([e],t,r),r&&r.length&&Z(r).remove(),Z.merge([],n.childNodes))};var It=Z.fn.load;Z.fn.load=function(e,t,i){if("string"!=typeof e&&It)return It.apply(this,arguments);var n,r,s,o=this,a=e.indexOf(" ");return a>=0&&(n=Z.trim(e.slice(a)),e=e.slice(0,a)),Z.isFunction(t)?(i=t,t=void 0):t&&"object"==typeof t&&(r="POST"),o.length>0&&Z.ajax({url:e,type:r,dataType:"html",data:t}).done(function(e){s=arguments,o.html(n?Z("<div>").append(Z.parseHTML(e)).find(n):e)}).complete(i&&function(e,t){o.each(i,s||[e.responseText,t,e])}),this},Z.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){Z.fn[t]=function(e){return this.on(t,e)}}),Z.expr.filters.animated=function(e){return Z.grep(Z.timers,function(t){return e===t.elem}).length};var zt=e.document.documentElement;Z.offset={setOffset:function(e,t,i){var n,r,s,o,a,l,c,u=Z.css(e,"position"),p=Z(e),h={};"static"===u&&(e.style.position="relative"),a=p.offset(),s=Z.css(e,"top"),l=Z.css(e,"left"),c=("absolute"===u||"fixed"===u)&&(s+l).indexOf("auto")>-1,c?(n=p.position(),o=n.top,r=n.left):(o=parseFloat(s)||0,r=parseFloat(l)||0),Z.isFunction(t)&&(t=t.call(e,i,a)),null!=t.top&&(h.top=t.top-a.top+o),null!=t.left&&(h.left=t.left-a.left+r),"using"in t?t.using.call(e,h):p.css(h)}},Z.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){Z.offset.setOffset(this,e,t)});var t,i,n=this[0],r={top:0,left:0},s=n&&n.ownerDocument;if(s)return t=s.documentElement,Z.contains(t,n)?(typeof n.getBoundingClientRect!==ke&&(r=n.getBoundingClientRect()),i=j(s),{top:r.top+i.pageYOffset-t.clientTop,left:r.left+i.pageXOffset-t.clientLeft}):r},position:function(){if(this[0]){var e,t,i=this[0],n={top:0,left:0};return"fixed"===Z.css(i,"position")?t=i.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),Z.nodeName(e[0],"html")||(n=e.offset()),n.top+=Z.css(e[0],"borderTopWidth",!0),n.left+=Z.css(e[0],"borderLeftWidth",!0)),{top:t.top-n.top-Z.css(i,"marginTop",!0),left:t.left-n.left-Z.css(i,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent||zt;e&&!Z.nodeName(e,"html")&&"static"===Z.css(e,"position");)e=e.offsetParent;return e||zt})}}),Z.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var n="pageYOffset"===i;Z.fn[t]=function(r){return ge(this,function(t,r,s){var o=j(t);return void 0===s?o?o[i]:t[r]:void(o?o.scrollTo(n?e.pageXOffset:s,n?s:e.pageYOffset):t[r]=s)},t,r,arguments.length,null)}}),Z.each(["top","left"],function(e,t){Z.cssHooks[t]=S(K.pixelPosition,function(e,i){if(i)return i=x(e,t),Xe.test(i)?Z(e).position()[t]+"px":i})}),Z.each({Height:"height",Width:"width"},function(e,t){Z.each({padding:"inner"+e,content:t,"":"outer"+e},function(i,n){Z.fn[n]=function(n,r){var s=arguments.length&&(i||"boolean"!=typeof n),o=i||(n===!0||r===!0?"margin":"border");return ge(this,function(t,i,n){var r;return Z.isWindow(t)?t.document.documentElement["client"+e]:9===t.nodeType?(r=t.documentElement,Math.max(t.body["scroll"+e],r["scroll"+e],t.body["offset"+e],r["offset"+e],r["client"+e])):void 0===n?Z.css(t,i,o):Z.style(t,i,n,o)},t,s?n:void 0,s,null)}})}),Z.fn.size=function(){return this.length},Z.fn.andSelf=Z.fn.addBack,"function"==typeof define&&define.amd&&define("jquery",[],function(){return Z});var Ot=e.jQuery,Bt=e.$;return Z.noConflict=function(t){return e.$===Z&&(e.$=Bt),t&&e.jQuery===Z&&(e.jQuery=Ot),Z},typeof t===ke&&(e.jQuery=e.$=Z),Z})}),define("swiper",[],function(e,t,i){e("swiper.css.js"),function(){"use strict";function e(e){e.fn.swiper=function(i){var n;return e(this).each(function(){var e=new t(this,i);n||(n=e)}),n}}var t=function(e,n){function r(){return"horizontal"===g.params.direction}function s(){g.autoplayTimeoutId=setTimeout(function(){g.params.loop?(g.fixLoop(),g._slideNext()):g.isEnd?n.autoplayStopOnLast?g.stopAutoplay():g._slideTo(0):g._slideNext()},g.params.autoplay)}function o(e,t){var i=v(e.target);if(!i.is(t))if("string"==typeof t)i=i.parents(t);else if(t.nodeType){var n;return i.parents().each(function(e,i){i===t&&(n=t)}),n?t:void 0}if(0!==i.length)return i[0]}function a(e,t){t=t||{};var i=window.MutationObserver||window.WebkitMutationObserver,n=new i(function(e){e.forEach(function(e){g.onResize(!0),g.emit("onObserverUpdate",g,e)})});n.observe(e,{attributes:"undefined"==typeof t.attributes||t.attributes,childList:"undefined"==typeof t.childList||t.childList,characterData:"undefined"==typeof t.characterData||t.characterData}),g.observers.push(n)}function l(e){e.originalEvent&&(e=e.originalEvent);var t=e.keyCode||e.charCode;if(!g.params.allowSwipeToNext&&(r()&&39===t||!r()&&40===t))return!1;if(!g.params.allowSwipeToPrev&&(r()&&37===t||!r()&&38===t))return!1;if(!(e.shiftKey||e.altKey||e.ctrlKey||e.metaKey||document.activeElement&&document.activeElement.nodeName&&("input"===document.activeElement.nodeName.toLowerCase()||"textarea"===document.activeElement.nodeName.toLowerCase()))){if(37===t||39===t||38===t||40===t){var i=!1;if(g.container.parents(".swiper-slide").length>0&&0===g.container.parents(".swiper-slide-active").length)return;var n={left:window.pageXOffset,top:window.pageYOffset},s=window.innerWidth,o=window.innerHeight,a=g.container.offset();g.rtl&&(a.left=a.left-g.container[0].scrollLeft);for(var l=[[a.left,a.top],[a.left+g.width,a.top],[a.left,a.top+g.height],[a.left+g.width,a.top+g.height]],c=0;c<l.length;c++){var u=l[c];u[0]>=n.left&&u[0]<=n.left+s&&u[1]>=n.top&&u[1]<=n.top+o&&(i=!0)}if(!i)return}r()?(37!==t&&39!==t||(e.preventDefault?e.preventDefault():e.returnValue=!1),(39===t&&!g.rtl||37===t&&g.rtl)&&g.slideNext(),(37===t&&!g.rtl||39===t&&g.rtl)&&g.slidePrev()):(38!==t&&40!==t||(e.preventDefault?e.preventDefault():e.returnValue=!1),40===t&&g.slideNext(),38===t&&g.slidePrev())}}function c(e){e.originalEvent&&(e=e.originalEvent);var t=g.mousewheel.event,i=0;if(e.detail)i=-e.detail;else if("mousewheel"===t)if(g.params.mousewheelForceToAxis)if(r()){if(!(Math.abs(e.wheelDeltaX)>Math.abs(e.wheelDeltaY)))return;i=e.wheelDeltaX}else{if(!(Math.abs(e.wheelDeltaY)>Math.abs(e.wheelDeltaX)))return;i=e.wheelDeltaY}else i=e.wheelDelta;else if("DOMMouseScroll"===t)i=-e.detail;else if("wheel"===t)if(g.params.mousewheelForceToAxis)if(r()){if(!(Math.abs(e.deltaX)>Math.abs(e.deltaY)))return;i=-e.deltaX}else{if(!(Math.abs(e.deltaY)>Math.abs(e.deltaX)))return;i=-e.deltaY}else i=Math.abs(e.deltaX)>Math.abs(e.deltaY)?-e.deltaX:-e.deltaY;if(g.params.mousewheelInvert&&(i=-i),g.params.freeMode){var n=g.getWrapperTranslate()+i;if(n>0&&(n=0),n<g.maxTranslate()&&(n=g.maxTranslate()),g.setWrapperTransition(0),g.setWrapperTranslate(n),g.updateProgress(),g.updateActiveIndex(),g.params.freeModeSticky&&(clearTimeout(g.mousewheel.timeout),g.mousewheel.timeout=setTimeout(function(){g.slideReset()},300)),0===n||n===g.maxTranslate())return}else{if((new window.Date).getTime()-g.mousewheel.lastScrollTime>60)if(i<0)if(g.isEnd){if(g.params.mousewheelReleaseOnEdges)return!0}else g.slideNext();else if(g.isBeginning){if(g.params.mousewheelReleaseOnEdges)return!0}else g.slidePrev();g.mousewheel.lastScrollTime=(new window.Date).getTime()}return g.params.autoplay&&g.stopAutoplay(),e.preventDefault?e.preventDefault():e.returnValue=!1,!1}function u(e,t){e=v(e);var i,n,s;i=e.attr("data-swiper-parallax")||"0",n=e.attr("data-swiper-parallax-x"),s=e.attr("data-swiper-parallax-y"),n||s?(n=n||"0",s=s||"0"):r()?(n=i,s="0"):(s=i,n="0"),n=n.indexOf("%")>=0?parseInt(n,10)*t+"%":n*t+"px",s=s.indexOf("%")>=0?parseInt(s,10)*t+"%":s*t+"px",e.transform("translate3d("+n+", "+s+",0px)")}function p(e){return 0!==e.indexOf("on")&&(e=e[0]!==e[0].toUpperCase()?"on"+e[0].toUpperCase()+e.substring(1):"on"+e),e}if(!(this instanceof t))return new t(e,n);var h={direction:"horizontal",touchEventsTarget:"container",initialSlide:0,speed:300,autoplay:!1,autoplayDisableOnInteraction:!0,freeMode:!1,freeModeMomentum:!0,freeModeMomentumRatio:1,freeModeMomentumBounce:!0,freeModeMomentumBounceRatio:1,freeModeSticky:!1,setWrapperSize:!1,virtualTranslate:!1,effect:"slide",coverflow:{rotate:50,stretch:0,depth:100,modifier:1,slideShadows:!0},cube:{slideShadows:!0,shadow:!0,shadowOffset:20,shadowScale:.94},fade:{crossFade:!1},parallax:!1,scrollbar:null,scrollbarHide:!0,keyboardControl:!1,mousewheelControl:!1,mousewheelReleaseOnEdges:!1,mousewheelInvert:!1,mousewheelForceToAxis:!1,hashnav:!1,spaceBetween:0,slidesPerView:1,slidesPerColumn:1,slidesPerColumnFill:"column",slidesPerGroup:1,centeredSlides:!1,touchRatio:1,touchAngle:45,simulateTouch:!0,shortSwipes:!0,longSwipes:!0,longSwipesRatio:.5,longSwipesMs:300,followFinger:!0,onlyExternal:!1,threshold:0,touchMoveStopPropagation:!0,pagination:null,paginationClickable:!1,paginationHide:!1, -paginationBulletRender:null,resistance:!0,resistanceRatio:.85,nextButton:null,prevButton:null,watchSlidesProgress:!1,watchSlidesVisibility:!1,grabCursor:!1,preventClicks:!0,preventClicksPropagation:!0,slideToClickedSlide:!1,lazyLoading:!1,lazyLoadingInPrevNext:!1,lazyLoadingOnTransitionStart:!1,preloadImages:!0,updateOnImagesReady:!0,loop:!1,loopAdditionalSlides:0,loopedSlides:null,control:void 0,controlInverse:!1,allowSwipeToPrev:!0,allowSwipeToNext:!0,swipeHandler:null,noSwiping:!0,noSwipingClass:"swiper-no-swiping",slideClass:"swiper-slide",slideActiveClass:"swiper-slide-active",slideVisibleClass:"swiper-slide-visible",slideDuplicateClass:"swiper-slide-duplicate",slideNextClass:"swiper-slide-next",slidePrevClass:"swiper-slide-prev",wrapperClass:"swiper-wrapper",bulletClass:"swiper-pagination-bullet",bulletActiveClass:"swiper-pagination-bullet-active",buttonDisabledClass:"swiper-button-disabled",paginationHiddenClass:"swiper-pagination-hidden",observer:!1,observeParents:!1,a11y:!1,prevSlideMessage:"Previous slide",nextSlideMessage:"Next slide",firstSlideMessage:"This is the first slide",lastSlideMessage:"This is the last slide",runCallbacksOnInit:!0},d=n&&n.virtualTranslate;n=n||{};for(var f in h)if("undefined"==typeof n[f])n[f]=h[f];else if("object"==typeof n[f])for(var m in h[f])"undefined"==typeof n[f][m]&&(n[f][m]=h[f][m]);var g=this;g.version="3.0.8",g.params=n,g.classNames=[];var v;if(v="undefined"==typeof i?window.Dom7||window.Zepto||window.jQuery:i,v&&(g.$=v,g.container=v(e),0!==g.container.length)){if(g.container.length>1)return void g.container.each(function(){new t(this,n)});g.container[0].swiper=g,g.container.data("swiper",g),g.classNames.push("swiper-container-"+g.params.direction),g.params.freeMode&&g.classNames.push("swiper-container-free-mode"),g.support.flexbox||(g.classNames.push("swiper-container-no-flexbox"),g.params.slidesPerColumn=1),(g.params.parallax||g.params.watchSlidesVisibility)&&(g.params.watchSlidesProgress=!0),["cube","coverflow"].indexOf(g.params.effect)>=0&&(g.support.transforms3d?(g.params.watchSlidesProgress=!0,g.classNames.push("swiper-container-3d")):g.params.effect="slide"),"slide"!==g.params.effect&&g.classNames.push("swiper-container-"+g.params.effect),"cube"===g.params.effect&&(g.params.resistanceRatio=0,g.params.slidesPerView=1,g.params.slidesPerColumn=1,g.params.slidesPerGroup=1,g.params.centeredSlides=!1,g.params.spaceBetween=0,g.params.virtualTranslate=!0,g.params.setWrapperSize=!1),"fade"===g.params.effect&&(g.params.slidesPerView=1,g.params.slidesPerColumn=1,g.params.slidesPerGroup=1,g.params.watchSlidesProgress=!0,g.params.spaceBetween=0,"undefined"==typeof d&&(g.params.virtualTranslate=!0)),g.params.grabCursor&&g.support.touch&&(g.params.grabCursor=!1),g.wrapper=g.container.children("."+g.params.wrapperClass),g.params.pagination&&(g.paginationContainer=v(g.params.pagination),g.params.paginationClickable&&g.paginationContainer.addClass("swiper-pagination-clickable")),g.rtl=r()&&("rtl"===g.container[0].dir.toLowerCase()||"rtl"===g.container.css("direction")),g.rtl&&g.classNames.push("swiper-container-rtl"),g.rtl&&(g.wrongRTL="-webkit-box"===g.wrapper.css("display")),g.params.slidesPerColumn>1&&g.classNames.push("swiper-container-multirow"),g.device.android&&g.classNames.push("swiper-container-android"),g.container.addClass(g.classNames.join(" ")),g.translate=0,g.progress=0,g.velocity=0,g.lockSwipeToNext=function(){g.params.allowSwipeToNext=!1},g.lockSwipeToPrev=function(){g.params.allowSwipeToPrev=!1},g.lockSwipes=function(){g.params.allowSwipeToNext=g.params.allowSwipeToPrev=!1},g.unlockSwipeToNext=function(){g.params.allowSwipeToNext=!0},g.unlockSwipeToPrev=function(){g.params.allowSwipeToPrev=!0},g.unlockSwipes=function(){g.params.allowSwipeToNext=g.params.allowSwipeToPrev=!0},g.params.grabCursor&&(g.container[0].style.cursor="move",g.container[0].style.cursor="-webkit-grab",g.container[0].style.cursor="-moz-grab",g.container[0].style.cursor="grab"),g.imagesToLoad=[],g.imagesLoaded=0,g.loadImage=function(e,t,i,n){function r(){n&&n()}var s;e.complete&&i?r():t?(s=new window.Image,s.onload=r,s.onerror=r,s.src=t):r()},g.preloadImages=function(){function e(){"undefined"!=typeof g&&null!==g&&(void 0!==g.imagesLoaded&&g.imagesLoaded++,g.imagesLoaded===g.imagesToLoad.length&&(g.params.updateOnImagesReady&&g.update(),g.emit("onImagesReady",g)))}g.imagesToLoad=g.container.find("img");for(var t=0;t<g.imagesToLoad.length;t++)g.loadImage(g.imagesToLoad[t],g.imagesToLoad[t].currentSrc||g.imagesToLoad[t].getAttribute("src"),!0,e)},g.autoplayTimeoutId=void 0,g.autoplaying=!1,g.autoplayPaused=!1,g.startAutoplay=function(){return"undefined"==typeof g.autoplayTimeoutId&&(!!g.params.autoplay&&(!g.autoplaying&&(g.autoplaying=!0,g.emit("onAutoplayStart",g),void s())))},g.stopAutoplay=function(e){g.autoplayTimeoutId&&(g.autoplayTimeoutId&&clearTimeout(g.autoplayTimeoutId),g.autoplaying=!1,g.autoplayTimeoutId=void 0,g.emit("onAutoplayStop",g))},g.pauseAutoplay=function(e){g.autoplayPaused||(g.autoplayTimeoutId&&clearTimeout(g.autoplayTimeoutId),g.autoplayPaused=!0,0===e?(g.autoplayPaused=!1,s()):g.wrapper.transitionEnd(function(){g&&(g.autoplayPaused=!1,g.autoplaying?s():g.stopAutoplay())}))},g.minTranslate=function(){return-g.snapGrid[0]},g.maxTranslate=function(){return-g.snapGrid[g.snapGrid.length-1]},g.updateContainerSize=function(){var e,t;e="undefined"!=typeof g.params.width?g.params.width:g.container[0].clientWidth,t="undefined"!=typeof g.params.height?g.params.height:g.container[0].clientHeight,0===e&&r()||0===t&&!r()||(g.width=e,g.height=t,g.size=r()?g.width:g.height)},g.updateSlidesSize=function(){g.slides=g.wrapper.children("."+g.params.slideClass),g.snapGrid=[],g.slidesGrid=[],g.slidesSizesGrid=[];var e,t=g.params.spaceBetween,i=0,n=0,s=0;"string"==typeof t&&t.indexOf("%")>=0&&(t=parseFloat(t.replace("%",""))/100*g.size),g.virtualSize=-t,g.rtl?g.slides.css({marginLeft:"",marginTop:""}):g.slides.css({marginRight:"",marginBottom:""});var o;g.params.slidesPerColumn>1&&(o=Math.floor(g.slides.length/g.params.slidesPerColumn)===g.slides.length/g.params.slidesPerColumn?g.slides.length:Math.ceil(g.slides.length/g.params.slidesPerColumn)*g.params.slidesPerColumn);var a,l=g.params.slidesPerColumn,c=o/l,u=c-(g.params.slidesPerColumn*c-g.slides.length);for(e=0;e<g.slides.length;e++){a=0;var p=g.slides.eq(e);if(g.params.slidesPerColumn>1){var h,d,f;"column"===g.params.slidesPerColumnFill?(d=Math.floor(e/l),f=e-d*l,(d>u||d===u&&f===l-1)&&++f>=l&&(f=0,d++),h=d+f*o/l,p.css({"-webkit-box-ordinal-group":h,"-moz-box-ordinal-group":h,"-ms-flex-order":h,"-webkit-order":h,order:h})):(f=Math.floor(e/c),d=e-f*c),p.css({"margin-top":0!==f&&g.params.spaceBetween&&g.params.spaceBetween+"px"}).attr("data-swiper-column",d).attr("data-swiper-row",f)}"none"!==p.css("display")&&("auto"===g.params.slidesPerView?a=r()?p.outerWidth(!0):p.outerHeight(!0):(a=(g.size-(g.params.slidesPerView-1)*t)/g.params.slidesPerView,r()?g.slides[e].style.width=a+"px":g.slides[e].style.height=a+"px"),g.slides[e].swiperSlideSize=a,g.slidesSizesGrid.push(a),g.params.centeredSlides?(i=i+a/2+n/2+t,0===e&&(i=i-g.size/2-t),Math.abs(i)<.001&&(i=0),s%g.params.slidesPerGroup===0&&g.snapGrid.push(i),g.slidesGrid.push(i)):(s%g.params.slidesPerGroup===0&&g.snapGrid.push(i),g.slidesGrid.push(i),i=i+a+t),g.virtualSize+=a+t,n=a,s++)}g.virtualSize=Math.max(g.virtualSize,g.size);var m;if(g.rtl&&g.wrongRTL&&("slide"===g.params.effect||"coverflow"===g.params.effect)&&g.wrapper.css({width:g.virtualSize+g.params.spaceBetween+"px"}),g.support.flexbox&&!g.params.setWrapperSize||(r()?g.wrapper.css({width:g.virtualSize+g.params.spaceBetween+"px"}):g.wrapper.css({height:g.virtualSize+g.params.spaceBetween+"px"})),g.params.slidesPerColumn>1&&(g.virtualSize=(a+g.params.spaceBetween)*o,g.virtualSize=Math.ceil(g.virtualSize/g.params.slidesPerColumn)-g.params.spaceBetween,g.wrapper.css({width:g.virtualSize+g.params.spaceBetween+"px"}),g.params.centeredSlides)){for(m=[],e=0;e<g.snapGrid.length;e++)g.snapGrid[e]<g.virtualSize+g.snapGrid[0]&&m.push(g.snapGrid[e]);g.snapGrid=m}if(!g.params.centeredSlides){for(m=[],e=0;e<g.snapGrid.length;e++)g.snapGrid[e]<=g.virtualSize-g.size&&m.push(g.snapGrid[e]);g.snapGrid=m,Math.floor(g.virtualSize-g.size)>Math.floor(g.snapGrid[g.snapGrid.length-1])&&g.snapGrid.push(g.virtualSize-g.size)}0===g.snapGrid.length&&(g.snapGrid=[0]),0!==g.params.spaceBetween&&(r()?g.rtl?g.slides.css({marginLeft:t+"px"}):g.slides.css({marginRight:t+"px"}):g.slides.css({marginBottom:t+"px"})),g.params.watchSlidesProgress&&g.updateSlidesOffset()},g.updateSlidesOffset=function(){for(var e=0;e<g.slides.length;e++)g.slides[e].swiperSlideOffset=r()?g.slides[e].offsetLeft:g.slides[e].offsetTop},g.updateSlidesProgress=function(e){if("undefined"==typeof e&&(e=g.translate||0),0!==g.slides.length){"undefined"==typeof g.slides[0].swiperSlideOffset&&g.updateSlidesOffset();var t=g.params.centeredSlides?-e+g.size/2:-e;g.rtl&&(t=g.params.centeredSlides?e-g.size/2:e);g.container[0].getBoundingClientRect(),r()?"left":"top",r()?"right":"bottom";g.slides.removeClass(g.params.slideVisibleClass);for(var i=0;i<g.slides.length;i++){var n=g.slides[i],s=g.params.centeredSlides===!0?n.swiperSlideSize/2:0,o=(t-n.swiperSlideOffset-s)/(n.swiperSlideSize+g.params.spaceBetween);if(g.params.watchSlidesVisibility){var a=-(t-n.swiperSlideOffset-s),l=a+g.slidesSizesGrid[i],c=a>=0&&a<g.size||l>0&&l<=g.size||a<=0&&l>=g.size;c&&g.slides.eq(i).addClass(g.params.slideVisibleClass)}n.progress=g.rtl?-o:o}}},g.updateProgress=function(e){"undefined"==typeof e&&(e=g.translate||0);var t=g.maxTranslate()-g.minTranslate();0===t?(g.progress=0,g.isBeginning=g.isEnd=!0):(g.progress=(e-g.minTranslate())/t,g.isBeginning=g.progress<=0,g.isEnd=g.progress>=1),g.isBeginning&&g.emit("onReachBeginning",g),g.isEnd&&g.emit("onReachEnd",g),g.params.watchSlidesProgress&&g.updateSlidesProgress(e),g.emit("onProgress",g,g.progress)},g.updateActiveIndex=function(){var e,t,i,n=g.rtl?g.translate:-g.translate;for(t=0;t<g.slidesGrid.length;t++)"undefined"!=typeof g.slidesGrid[t+1]?n>=g.slidesGrid[t]&&n<g.slidesGrid[t+1]-(g.slidesGrid[t+1]-g.slidesGrid[t])/2?e=t:n>=g.slidesGrid[t]&&n<g.slidesGrid[t+1]&&(e=t+1):n>=g.slidesGrid[t]&&(e=t);(e<0||"undefined"==typeof e)&&(e=0),i=Math.floor(e/g.params.slidesPerGroup),i>=g.snapGrid.length&&(i=g.snapGrid.length-1),e!==g.activeIndex&&(g.snapIndex=i,g.previousIndex=g.activeIndex,g.activeIndex=e,g.updateClasses())},g.updateClasses=function(){g.slides.removeClass(g.params.slideActiveClass+" "+g.params.slideNextClass+" "+g.params.slidePrevClass);var e=g.slides.eq(g.activeIndex);if(e.addClass(g.params.slideActiveClass),e.next("."+g.params.slideClass).addClass(g.params.slideNextClass),e.prev("."+g.params.slideClass).addClass(g.params.slidePrevClass),g.bullets&&g.bullets.length>0){g.bullets.removeClass(g.params.bulletActiveClass);var t;g.params.loop?(t=Math.ceil(g.activeIndex-g.loopedSlides)/g.params.slidesPerGroup,t>g.slides.length-1-2*g.loopedSlides&&(t-=g.slides.length-2*g.loopedSlides),t>g.bullets.length-1&&(t-=g.bullets.length)):t="undefined"!=typeof g.snapIndex?g.snapIndex:g.activeIndex||0,g.paginationContainer.length>1?g.bullets.each(function(){v(this).index()===t&&v(this).addClass(g.params.bulletActiveClass)}):g.bullets.eq(t).addClass(g.params.bulletActiveClass)}g.params.loop||(g.params.prevButton&&(g.isBeginning?(v(g.params.prevButton).addClass(g.params.buttonDisabledClass),g.params.a11y&&g.a11y&&g.a11y.disable(v(g.params.prevButton))):(v(g.params.prevButton).removeClass(g.params.buttonDisabledClass),g.params.a11y&&g.a11y&&g.a11y.enable(v(g.params.prevButton)))),g.params.nextButton&&(g.isEnd?(v(g.params.nextButton).addClass(g.params.buttonDisabledClass),g.params.a11y&&g.a11y&&g.a11y.disable(v(g.params.nextButton))):(v(g.params.nextButton).removeClass(g.params.buttonDisabledClass),g.params.a11y&&g.a11y&&g.a11y.enable(v(g.params.nextButton)))))},g.updatePagination=function(){if(g.params.pagination&&g.paginationContainer&&g.paginationContainer.length>0){for(var e="",t=g.params.loop?Math.ceil((g.slides.length-2*g.loopedSlides)/g.params.slidesPerGroup):g.snapGrid.length,i=0;i<t;i++)e+=g.params.paginationBulletRender?g.params.paginationBulletRender(i,g.params.bulletClass):'<span class="'+g.params.bulletClass+'"></span>';g.paginationContainer.html(e),g.bullets=g.paginationContainer.find("."+g.params.bulletClass)}},g.update=function(e){function t(){n=Math.min(Math.max(g.translate,g.maxTranslate()),g.minTranslate()),g.setWrapperTranslate(n),g.updateActiveIndex(),g.updateClasses()}if(g.updateContainerSize(),g.updateSlidesSize(),g.updateProgress(),g.updatePagination(),g.updateClasses(),g.params.scrollbar&&g.scrollbar&&g.scrollbar.set(),e){var i,n;g.params.freeMode?t():(i="auto"===g.params.slidesPerView&&g.isEnd&&!g.params.centeredSlides?g.slideTo(g.slides.length-1,0,!1,!0):g.slideTo(g.activeIndex,0,!1,!0),i||t())}},g.onResize=function(e){if(g.updateContainerSize(),g.updateSlidesSize(),g.updateProgress(),("auto"===g.params.slidesPerView||g.params.freeMode||e)&&g.updatePagination(),g.params.scrollbar&&g.scrollbar&&g.scrollbar.set(),g.params.freeMode){var t=Math.min(Math.max(g.translate,g.maxTranslate()),g.minTranslate());g.setWrapperTranslate(t),g.updateActiveIndex(),g.updateClasses()}else g.updateClasses(),"auto"===g.params.slidesPerView&&g.isEnd&&!g.params.centeredSlides?g.slideTo(g.slides.length-1,0,!1,!0):g.slideTo(g.activeIndex,0,!1,!0)};var y=["mousedown","mousemove","mouseup"];window.navigator.pointerEnabled?y=["pointerdown","pointermove","pointerup"]:window.navigator.msPointerEnabled&&(y=["MSPointerDown","MSPointerMove","MSPointerUp"]),g.touchEvents={start:g.support.touch||!g.params.simulateTouch?"touchstart":y[0],move:g.support.touch||!g.params.simulateTouch?"touchmove":y[1],end:g.support.touch||!g.params.simulateTouch?"touchend":y[2]},(window.navigator.pointerEnabled||window.navigator.msPointerEnabled)&&("container"===g.params.touchEventsTarget?g.container:g.wrapper).addClass("swiper-wp8-"+g.params.direction),g.initEvents=function(e){var t=e?"off":"on",i=e?"removeEventListener":"addEventListener",r="container"===g.params.touchEventsTarget?g.container[0]:g.wrapper[0],s=g.support.touch?r:document,o=!!g.params.nested;g.browser.ie?(r[i](g.touchEvents.start,g.onTouchStart,!1),s[i](g.touchEvents.move,g.onTouchMove,o),s[i](g.touchEvents.end,g.onTouchEnd,!1)):(g.support.touch&&(r[i](g.touchEvents.start,g.onTouchStart,!1),r[i](g.touchEvents.move,g.onTouchMove,o),r[i](g.touchEvents.end,g.onTouchEnd,!1)),!n.simulateTouch||g.device.ios||g.device.android||(r[i]("mousedown",g.onTouchStart,!1),document[i]("mousemove",g.onTouchMove,o),document[i]("mouseup",g.onTouchEnd,!1))),window[i]("resize",g.onResize),g.params.nextButton&&(v(g.params.nextButton)[t]("click",g.onClickNext),g.params.a11y&&g.a11y&&v(g.params.nextButton)[t]("keydown",g.a11y.onEnterKey)),g.params.prevButton&&(v(g.params.prevButton)[t]("click",g.onClickPrev),g.params.a11y&&g.a11y&&v(g.params.prevButton)[t]("keydown",g.a11y.onEnterKey)),g.params.pagination&&g.params.paginationClickable&&v(g.paginationContainer)[t]("click","."+g.params.bulletClass,g.onClickIndex),(g.params.preventClicks||g.params.preventClicksPropagation)&&r[i]("click",g.preventClicks,!0)},g.attachEvents=function(e){g.initEvents()},g.detachEvents=function(){g.initEvents(!0)},g.allowClick=!0,g.preventClicks=function(e){g.allowClick||(g.params.preventClicks&&e.preventDefault(),g.params.preventClicksPropagation&&g.animating&&(e.stopPropagation(),e.stopImmediatePropagation()))},g.onClickNext=function(e){e.preventDefault(),g.slideNext()},g.onClickPrev=function(e){e.preventDefault(),g.slidePrev()},g.onClickIndex=function(e){e.preventDefault();var t=v(this).index()*g.params.slidesPerGroup;g.params.loop&&(t+=g.loopedSlides),g.slideTo(t)},g.updateClickedSlide=function(e){var t=o(e,"."+g.params.slideClass),i=!1;if(t)for(var n=0;n<g.slides.length;n++)g.slides[n]===t&&(i=!0);if(!t||!i)return g.clickedSlide=void 0,void(g.clickedIndex=void 0);if(g.clickedSlide=t,g.clickedIndex=v(t).index(),g.params.slideToClickedSlide&&void 0!==g.clickedIndex&&g.clickedIndex!==g.activeIndex){var r,s=g.clickedIndex;if(g.params.loop)if(r=v(g.clickedSlide).attr("data-swiper-slide-index"),s>g.slides.length-g.params.slidesPerView)g.fixLoop(),s=g.wrapper.children("."+g.params.slideClass+'[data-swiper-slide-index="'+r+'"]').eq(0).index(),setTimeout(function(){g.slideTo(s)},0);else if(s<g.params.slidesPerView-1){g.fixLoop();var a=g.wrapper.children("."+g.params.slideClass+'[data-swiper-slide-index="'+r+'"]');s=a.eq(a.length-1).index(),setTimeout(function(){g.slideTo(s)},0)}else g.slideTo(s);else g.slideTo(s)}};var w,b,x,S,T,C,k,E,P,A="input, select, textarea, button",_=Date.now(),D=[];g.animating=!1,g.touches={startX:0,startY:0,currentX:0,currentY:0,diff:0};var L,M;if(g.onTouchStart=function(e){if(e.originalEvent&&(e=e.originalEvent),L="touchstart"===e.type,L||!("which"in e)||3!==e.which){if(g.params.noSwiping&&o(e,"."+g.params.noSwipingClass))return void(g.allowClick=!0);if(!g.params.swipeHandler||o(e,g.params.swipeHandler)){if(w=!0,b=!1,S=void 0,M=void 0,g.touches.startX=g.touches.currentX="touchstart"===e.type?e.targetTouches[0].pageX:e.pageX,g.touches.startY=g.touches.currentY="touchstart"===e.type?e.targetTouches[0].pageY:e.pageY,x=Date.now(),g.allowClick=!0,g.updateContainerSize(),g.swipeDirection=void 0,g.params.threshold>0&&(k=!1),"touchstart"!==e.type){var t=!0;v(e.target).is(A)&&(t=!1),document.activeElement&&v(document.activeElement).is(A)&&document.activeElement.blur(),t&&e.preventDefault()}g.emit("onTouchStart",g,e)}}},g.onTouchMove=function(e){if(e.originalEvent&&(e=e.originalEvent),!(L&&"mousemove"===e.type||e.preventedByNestedSwiper)){if(g.params.onlyExternal)return b=!0,void(g.allowClick=!1);if(L&&document.activeElement&&e.target===document.activeElement&&v(e.target).is(A))return b=!0,void(g.allowClick=!1);if(g.emit("onTouchMove",g,e),!(e.targetTouches&&e.targetTouches.length>1)){if(g.touches.currentX="touchmove"===e.type?e.targetTouches[0].pageX:e.pageX,g.touches.currentY="touchmove"===e.type?e.targetTouches[0].pageY:e.pageY,"undefined"==typeof S){var t=180*Math.atan2(Math.abs(g.touches.currentY-g.touches.startY),Math.abs(g.touches.currentX-g.touches.startX))/Math.PI;S=r()?t>g.params.touchAngle:90-t>g.params.touchAngle}if(S&&g.emit("onTouchMoveOpposite",g,e),"undefined"==typeof M&&g.browser.ieTouch&&(g.touches.currentX===g.touches.startX&&g.touches.currentY===g.touches.startY||(M=!0)),w){if(S)return void(w=!1);if(M||!g.browser.ieTouch){g.allowClick=!1,g.emit("onSliderMove",g,e),e.preventDefault(),g.params.touchMoveStopPropagation&&!g.params.nested&&e.stopPropagation(),b||(n.loop&&g.fixLoop(),C=g.getWrapperTranslate(),g.setWrapperTransition(0),g.animating&&g.wrapper.trigger("webkitTransitionEnd transitionend oTransitionEnd MSTransitionEnd msTransitionEnd"),g.params.autoplay&&g.autoplaying&&(g.params.autoplayDisableOnInteraction?g.stopAutoplay():g.pauseAutoplay()),P=!1,g.params.grabCursor&&(g.container[0].style.cursor="move",g.container[0].style.cursor="-webkit-grabbing",g.container[0].style.cursor="-moz-grabbin",g.container[0].style.cursor="grabbing")),b=!0;var i=g.touches.diff=r()?g.touches.currentX-g.touches.startX:g.touches.currentY-g.touches.startY;i*=g.params.touchRatio,g.rtl&&(i=-i),g.swipeDirection=i>0?"prev":"next",T=i+C;var s=!0;if(i>0&&T>g.minTranslate()?(s=!1,g.params.resistance&&(T=g.minTranslate()-1+Math.pow(-g.minTranslate()+C+i,g.params.resistanceRatio))):i<0&&T<g.maxTranslate()&&(s=!1,g.params.resistance&&(T=g.maxTranslate()+1-Math.pow(g.maxTranslate()-C-i,g.params.resistanceRatio))),s&&(e.preventedByNestedSwiper=!0),!g.params.allowSwipeToNext&&"next"===g.swipeDirection&&T<C&&(T=C),!g.params.allowSwipeToPrev&&"prev"===g.swipeDirection&&T>C&&(T=C),g.params.followFinger){if(g.params.threshold>0){if(!(Math.abs(i)>g.params.threshold||k))return void(T=C);if(!k)return k=!0,g.touches.startX=g.touches.currentX,g.touches.startY=g.touches.currentY,T=C,void(g.touches.diff=r()?g.touches.currentX-g.touches.startX:g.touches.currentY-g.touches.startY)}(g.params.freeMode||g.params.watchSlidesProgress)&&g.updateActiveIndex(),g.params.freeMode&&(0===D.length&&D.push({position:g.touches[r()?"startX":"startY"],time:x}),D.push({position:g.touches[r()?"currentX":"currentY"],time:(new window.Date).getTime()})),g.updateProgress(T),g.setWrapperTranslate(T)}}}}}},g.onTouchEnd=function(e){if(e.originalEvent&&(e=e.originalEvent),g.emit("onTouchEnd",g,e),w){g.params.grabCursor&&b&&w&&(g.container[0].style.cursor="move",g.container[0].style.cursor="-webkit-grab",g.container[0].style.cursor="-moz-grab",g.container[0].style.cursor="grab");var t=Date.now(),i=t-x;if(g.allowClick&&(g.updateClickedSlide(e),g.emit("onTap",g,e),i<300&&t-_>300&&(E&&clearTimeout(E),E=setTimeout(function(){g&&(g.params.paginationHide&&g.paginationContainer.length>0&&!v(e.target).hasClass(g.params.bulletClass)&&g.paginationContainer.toggleClass(g.params.paginationHiddenClass),g.emit("onClick",g,e))},300)),i<300&&t-_<300&&(E&&clearTimeout(E),g.emit("onDoubleTap",g,e))),_=Date.now(),setTimeout(function(){g&&(g.allowClick=!0)},0),!w||!b||!g.swipeDirection||0===g.touches.diff||T===C)return void(w=b=!1);w=b=!1;var n;if(n=g.params.followFinger?g.rtl?g.translate:-g.translate:-T,g.params.freeMode){if(n<-g.minTranslate())return void g.slideTo(g.activeIndex);if(n>-g.maxTranslate())return void(g.slides.length<g.snapGrid.length?g.slideTo(g.snapGrid.length-1):g.slideTo(g.slides.length-1));if(g.params.freeModeMomentum){if(D.length>1){var r=D.pop(),s=D.pop(),o=r.position-s.position,a=r.time-s.time;g.velocity=o/a,g.velocity=g.velocity/2,Math.abs(g.velocity)<.02&&(g.velocity=0),(a>150||(new window.Date).getTime()-r.time>300)&&(g.velocity=0)}else g.velocity=0;D.length=0;var l=1e3*g.params.freeModeMomentumRatio,c=g.velocity*l,u=g.translate+c;g.rtl&&(u=-u);var p,h=!1,d=20*Math.abs(g.velocity)*g.params.freeModeMomentumBounceRatio;if(u<g.maxTranslate())g.params.freeModeMomentumBounce?(u+g.maxTranslate()<-d&&(u=g.maxTranslate()-d),p=g.maxTranslate(),h=!0,P=!0):u=g.maxTranslate();else if(u>g.minTranslate())g.params.freeModeMomentumBounce?(u-g.minTranslate()>d&&(u=g.minTranslate()+d),p=g.minTranslate(),h=!0,P=!0):u=g.minTranslate();else if(g.params.freeModeSticky){var f,m=0;for(m=0;m<g.snapGrid.length;m+=1)if(g.snapGrid[m]>-u){f=m;break}u=Math.abs(g.snapGrid[f]-u)<Math.abs(g.snapGrid[f-1]-u)||"next"===g.swipeDirection?g.snapGrid[f]:g.snapGrid[f-1],g.rtl||(u=-u)}if(0!==g.velocity)l=g.rtl?Math.abs((-u-g.translate)/g.velocity):Math.abs((u-g.translate)/g.velocity);else if(g.params.freeModeSticky)return void g.slideReset();g.params.freeModeMomentumBounce&&h?(g.updateProgress(p),g.setWrapperTransition(l),g.setWrapperTranslate(u),g.onTransitionStart(),g.animating=!0,g.wrapper.transitionEnd(function(){g&&P&&(g.emit("onMomentumBounce",g),g.setWrapperTransition(g.params.speed),g.setWrapperTranslate(p),g.wrapper.transitionEnd(function(){g&&g.onTransitionEnd()}))})):g.velocity?(g.updateProgress(u),g.setWrapperTransition(l),g.setWrapperTranslate(u),g.onTransitionStart(),g.animating||(g.animating=!0,g.wrapper.transitionEnd(function(){g&&g.onTransitionEnd()}))):g.updateProgress(u),g.updateActiveIndex()}return void((!g.params.freeModeMomentum||i>=g.params.longSwipesMs)&&(g.updateProgress(),g.updateActiveIndex()))}var y,S=0,k=g.slidesSizesGrid[0];for(y=0;y<g.slidesGrid.length;y+=g.params.slidesPerGroup)"undefined"!=typeof g.slidesGrid[y+g.params.slidesPerGroup]?n>=g.slidesGrid[y]&&n<g.slidesGrid[y+g.params.slidesPerGroup]&&(S=y,k=g.slidesGrid[y+g.params.slidesPerGroup]-g.slidesGrid[y]):n>=g.slidesGrid[y]&&(S=y,k=g.slidesGrid[g.slidesGrid.length-1]-g.slidesGrid[g.slidesGrid.length-2]);var A=(n-g.slidesGrid[S])/k;if(i>g.params.longSwipesMs){if(!g.params.longSwipes)return void g.slideTo(g.activeIndex);"next"===g.swipeDirection&&(A>=g.params.longSwipesRatio?g.slideTo(S+g.params.slidesPerGroup):g.slideTo(S)),"prev"===g.swipeDirection&&(A>1-g.params.longSwipesRatio?g.slideTo(S+g.params.slidesPerGroup):g.slideTo(S))}else{if(!g.params.shortSwipes)return void g.slideTo(g.activeIndex);"next"===g.swipeDirection&&g.slideTo(S+g.params.slidesPerGroup),"prev"===g.swipeDirection&&g.slideTo(S)}}},g._slideTo=function(e,t){return g.slideTo(e,t,!0,!0)},g.slideTo=function(e,t,i,n){"undefined"==typeof i&&(i=!0),"undefined"==typeof e&&(e=0),e<0&&(e=0),g.snapIndex=Math.floor(e/g.params.slidesPerGroup),g.snapIndex>=g.snapGrid.length&&(g.snapIndex=g.snapGrid.length-1);var s=-g.snapGrid[g.snapIndex];if(!g.params.allowSwipeToNext&&s<g.translate&&s<g.minTranslate())return!1;if(!g.params.allowSwipeToPrev&&s>g.translate&&s>g.maxTranslate())return!1;g.params.autoplay&&g.autoplaying&&(n||!g.params.autoplayDisableOnInteraction?g.pauseAutoplay(t):g.stopAutoplay()),g.updateProgress(s);for(var o=0;o<g.slidesGrid.length;o++)-s>=g.slidesGrid[o]&&(e=o);if("undefined"==typeof t&&(t=g.params.speed),g.previousIndex=g.activeIndex||0,g.activeIndex=e,s===g.translate)return g.updateClasses(),!1;g.updateClasses(),g.onTransitionStart(i);r()?s:0,r()?0:s;return 0===t?(g.setWrapperTransition(0),g.setWrapperTranslate(s),g.onTransitionEnd(i)):(g.setWrapperTransition(t),g.setWrapperTranslate(s),g.animating||(g.animating=!0,g.wrapper.transitionEnd(function(){g&&g.onTransitionEnd(i)}))),!0},g.onTransitionStart=function(e){"undefined"==typeof e&&(e=!0),g.lazy&&g.lazy.onTransitionStart(),e&&(g.emit("onTransitionStart",g),g.activeIndex!==g.previousIndex&&g.emit("onSlideChangeStart",g))},g.onTransitionEnd=function(e){g.animating=!1,g.setWrapperTransition(0),"undefined"==typeof e&&(e=!0),g.lazy&&g.lazy.onTransitionEnd(),e&&(g.emit("onTransitionEnd",g),g.activeIndex!==g.previousIndex&&g.emit("onSlideChangeEnd",g)),g.params.hashnav&&g.hashnav&&g.hashnav.setHash()},g.slideNext=function(e,t,i){if(g.params.loop){if(g.animating)return!1;g.fixLoop();g.container[0].clientLeft;return g.slideTo(g.activeIndex+g.params.slidesPerGroup,t,e,i)}return g.slideTo(g.activeIndex+g.params.slidesPerGroup,t,e,i)},g._slideNext=function(e){return g.slideNext(!0,e,!0)},g.slidePrev=function(e,t,i){if(g.params.loop){if(g.animating)return!1;g.fixLoop();g.container[0].clientLeft;return g.slideTo(g.activeIndex-1,t,e,i)}return g.slideTo(g.activeIndex-1,t,e,i)},g._slidePrev=function(e){return g.slidePrev(!0,e,!0)},g.slideReset=function(e,t,i){return g.slideTo(g.activeIndex,t,e)},g.setWrapperTransition=function(e,t){g.wrapper.transition(e),"slide"!==g.params.effect&&g.effects[g.params.effect]&&g.effects[g.params.effect].setTransition(e),g.params.parallax&&g.parallax&&g.parallax.setTransition(e),g.params.scrollbar&&g.scrollbar&&g.scrollbar.setTransition(e),g.params.control&&g.controller&&g.controller.setTransition(e,t),g.emit("onSetTransition",g,e)},g.setWrapperTranslate=function(e,t,i){var n=0,s=0,o=0;r()?n=g.rtl?-e:e:s=e,g.params.virtualTranslate||(g.support.transforms3d?g.wrapper.transform("translate3d("+n+"px, "+s+"px, "+o+"px)"):g.wrapper.transform("translate("+n+"px, "+s+"px)")),g.translate=r()?n:s,t&&g.updateActiveIndex(),"slide"!==g.params.effect&&g.effects[g.params.effect]&&g.effects[g.params.effect].setTranslate(g.translate),g.params.parallax&&g.parallax&&g.parallax.setTranslate(g.translate),g.params.scrollbar&&g.scrollbar&&g.scrollbar.setTranslate(g.translate),g.params.control&&g.controller&&g.controller.setTranslate(g.translate,i),g.emit("onSetTranslate",g,g.translate)},g.getTranslate=function(e,t){var i,n,r,s;return"undefined"==typeof t&&(t="x"),g.params.virtualTranslate?g.rtl?-g.translate:g.translate:(r=window.getComputedStyle(e,null),window.WebKitCSSMatrix?s=new window.WebKitCSSMatrix("none"===r.webkitTransform?"":r.webkitTransform):(s=r.MozTransform||r.OTransform||r.MsTransform||r.msTransform||r.transform||r.getPropertyValue("transform").replace("translate(","matrix(1, 0, 0, 1,"),i=s.toString().split(",")),"x"===t&&(n=window.WebKitCSSMatrix?s.m41:16===i.length?parseFloat(i[12]):parseFloat(i[4])),"y"===t&&(n=window.WebKitCSSMatrix?s.m42:16===i.length?parseFloat(i[13]):parseFloat(i[5])),g.rtl&&n&&(n=-n),n||0)},g.getWrapperTranslate=function(e){return"undefined"==typeof e&&(e=r()?"x":"y"),g.getTranslate(g.wrapper[0],e)},g.observers=[],g.initObservers=function(){if(g.params.observeParents)for(var e=g.container.parents(),t=0;t<e.length;t++)a(e[t]);a(g.container[0],{childList:!1}),a(g.wrapper[0],{attributes:!1})},g.disconnectObservers=function(){for(var e=0;e<g.observers.length;e++)g.observers[e].disconnect();g.observers=[]},g.createLoop=function(){g.wrapper.children("."+g.params.slideClass+"."+g.params.slideDuplicateClass).remove();var e=g.wrapper.children("."+g.params.slideClass);g.loopedSlides=parseInt(g.params.loopedSlides||g.params.slidesPerView,10),g.loopedSlides=g.loopedSlides+g.params.loopAdditionalSlides,g.loopedSlides>e.length&&(g.loopedSlides=e.length);var t,i=[],n=[];for(e.each(function(t,r){var s=v(this);t<g.loopedSlides&&n.push(r),t<e.length&&t>=e.length-g.loopedSlides&&i.push(r),s.attr("data-swiper-slide-index",t)}),t=0;t<n.length;t++)g.wrapper.append(v(n[t].cloneNode(!0)).addClass(g.params.slideDuplicateClass));for(t=i.length-1;t>=0;t--)g.wrapper.prepend(v(i[t].cloneNode(!0)).addClass(g.params.slideDuplicateClass))},g.destroyLoop=function(){g.wrapper.children("."+g.params.slideClass+"."+g.params.slideDuplicateClass).remove(),g.slides.removeAttr("data-swiper-slide-index")},g.fixLoop=function(){var e;g.activeIndex<g.loopedSlides?(e=g.slides.length-3*g.loopedSlides+g.activeIndex,e+=g.loopedSlides,g.slideTo(e,0,!1,!0)):("auto"===g.params.slidesPerView&&g.activeIndex>=2*g.loopedSlides||g.activeIndex>g.slides.length-2*g.params.slidesPerView)&&(e=-g.slides.length+g.activeIndex+g.loopedSlides,e+=g.loopedSlides,g.slideTo(e,0,!1,!0))},g.appendSlide=function(e){if(g.params.loop&&g.destroyLoop(),"object"==typeof e&&e.length)for(var t=0;t<e.length;t++)e[t]&&g.wrapper.append(e[t]);else g.wrapper.append(e);g.params.loop&&g.createLoop(),g.params.observer&&g.support.observer||g.update(!0)},g.prependSlide=function(e){g.params.loop&&g.destroyLoop();var t=g.activeIndex+1;if("object"==typeof e&&e.length){for(var i=0;i<e.length;i++)e[i]&&g.wrapper.prepend(e[i]);t=g.activeIndex+e.length}else g.wrapper.prepend(e);g.params.loop&&g.createLoop(),g.params.observer&&g.support.observer||g.update(!0),g.slideTo(t,0,!1)},g.removeSlide=function(e){g.params.loop&&(g.destroyLoop(),g.slides=g.wrapper.children("."+g.params.slideClass));var t,i=g.activeIndex;if("object"==typeof e&&e.length){for(var n=0;n<e.length;n++)t=e[n],g.slides[t]&&g.slides.eq(t).remove(),t<i&&i--;i=Math.max(i,0)}else t=e,g.slides[t]&&g.slides.eq(t).remove(),t<i&&i--,i=Math.max(i,0);g.params.loop&&g.createLoop(),g.params.observer&&g.support.observer||g.update(!0),g.params.loop?g.slideTo(i+g.loopedSlides,0,!1):g.slideTo(i,0,!1)},g.removeAllSlides=function(){for(var e=[],t=0;t<g.slides.length;t++)e.push(t);g.removeSlide(e)},g.effects={fade:{setTranslate:function(){for(var e=0;e<g.slides.length;e++){var t=g.slides.eq(e),i=t[0].swiperSlideOffset,n=-i;g.params.virtualTranslate||(n-=g.translate);var s=0;r()||(s=n,n=0);var o=g.params.fade.crossFade?Math.max(1-Math.abs(t[0].progress),0):1+Math.min(Math.max(t[0].progress,-1),0);t.css({opacity:o}).transform("translate3d("+n+"px, "+s+"px, 0px)")}},setTransition:function(e){if(g.slides.transition(e),g.params.virtualTranslate&&0!==e){var t=!1;g.slides.transitionEnd(function(){if(!t&&g){t=!0,g.animating=!1;for(var e=["webkitTransitionEnd","transitionend","oTransitionEnd","MSTransitionEnd","msTransitionEnd"],i=0;i<e.length;i++)g.wrapper.trigger(e[i])}})}}},cube:{setTranslate:function(){var e,t=0;g.params.cube.shadow&&(r()?(e=g.wrapper.find(".swiper-cube-shadow"),0===e.length&&(e=v('<div class="swiper-cube-shadow"></div>'),g.wrapper.append(e)),e.css({height:g.width+"px"})):(e=g.container.find(".swiper-cube-shadow"),0===e.length&&(e=v('<div class="swiper-cube-shadow"></div>'),g.container.append(e))));for(var i=0;i<g.slides.length;i++){var n=g.slides.eq(i),s=90*i,o=Math.floor(s/360);g.rtl&&(s=-s,o=Math.floor(-s/360));var a=Math.max(Math.min(n[0].progress,1),-1),l=0,c=0,u=0; -i%4===0?(l=4*-o*g.size,u=0):(i-1)%4===0?(l=0,u=4*-o*g.size):(i-2)%4===0?(l=g.size+4*o*g.size,u=g.size):(i-3)%4===0&&(l=-g.size,u=3*g.size+4*g.size*o),g.rtl&&(l=-l),r()||(c=l,l=0);var p="rotateX("+(r()?0:-s)+"deg) rotateY("+(r()?s:0)+"deg) translate3d("+l+"px, "+c+"px, "+u+"px)";if(a<=1&&a>-1&&(t=90*i+90*a,g.rtl&&(t=90*-i-90*a)),n.transform(p),g.params.cube.slideShadows){var h=r()?n.find(".swiper-slide-shadow-left"):n.find(".swiper-slide-shadow-top"),d=r()?n.find(".swiper-slide-shadow-right"):n.find(".swiper-slide-shadow-bottom");0===h.length&&(h=v('<div class="swiper-slide-shadow-'+(r()?"left":"top")+'"></div>'),n.append(h)),0===d.length&&(d=v('<div class="swiper-slide-shadow-'+(r()?"right":"bottom")+'"></div>'),n.append(d));n[0].progress;h.length&&(h[0].style.opacity=-n[0].progress),d.length&&(d[0].style.opacity=n[0].progress)}}if(g.wrapper.css({"-webkit-transform-origin":"50% 50% -"+g.size/2+"px","-moz-transform-origin":"50% 50% -"+g.size/2+"px","-ms-transform-origin":"50% 50% -"+g.size/2+"px","transform-origin":"50% 50% -"+g.size/2+"px"}),g.params.cube.shadow)if(r())e.transform("translate3d(0px, "+(g.width/2+g.params.cube.shadowOffset)+"px, "+-g.width/2+"px) rotateX(90deg) rotateZ(0deg) scale("+g.params.cube.shadowScale+")");else{var f=Math.abs(t)-90*Math.floor(Math.abs(t)/90),m=1.5-(Math.sin(2*f*Math.PI/360)/2+Math.cos(2*f*Math.PI/360)/2),y=g.params.cube.shadowScale,w=g.params.cube.shadowScale/m,b=g.params.cube.shadowOffset;e.transform("scale3d("+y+", 1, "+w+") translate3d(0px, "+(g.height/2+b)+"px, "+-g.height/2/w+"px) rotateX(-90deg)")}var x=g.isSafari||g.isUiWebView?-g.size/2:0;g.wrapper.transform("translate3d(0px,0,"+x+"px) rotateX("+(r()?0:t)+"deg) rotateY("+(r()?-t:0)+"deg)")},setTransition:function(e){g.slides.transition(e).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(e),g.params.cube.shadow&&!r()&&g.container.find(".swiper-cube-shadow").transition(e)}},coverflow:{setTranslate:function(){for(var e=g.translate,t=r()?-e+g.width/2:-e+g.height/2,i=r()?g.params.coverflow.rotate:-g.params.coverflow.rotate,n=g.params.coverflow.depth,s=0,o=g.slides.length;s<o;s++){var a=g.slides.eq(s),l=g.slidesSizesGrid[s],c=a[0].swiperSlideOffset,u=(t-c-l/2)/l*g.params.coverflow.modifier,p=r()?i*u:0,h=r()?0:i*u,d=-n*Math.abs(u),f=r()?0:g.params.coverflow.stretch*u,m=r()?g.params.coverflow.stretch*u:0;Math.abs(m)<.001&&(m=0),Math.abs(f)<.001&&(f=0),Math.abs(d)<.001&&(d=0),Math.abs(p)<.001&&(p=0),Math.abs(h)<.001&&(h=0);var y="translate3d("+m+"px,"+f+"px,"+d+"px) rotateX("+h+"deg) rotateY("+p+"deg)";if(a.transform(y),a[0].style.zIndex=-Math.abs(Math.round(u))+1,g.params.coverflow.slideShadows){var w=r()?a.find(".swiper-slide-shadow-left"):a.find(".swiper-slide-shadow-top"),b=r()?a.find(".swiper-slide-shadow-right"):a.find(".swiper-slide-shadow-bottom");0===w.length&&(w=v('<div class="swiper-slide-shadow-'+(r()?"left":"top")+'"></div>'),a.append(w)),0===b.length&&(b=v('<div class="swiper-slide-shadow-'+(r()?"right":"bottom")+'"></div>'),a.append(b)),w.length&&(w[0].style.opacity=u>0?u:0),b.length&&(b[0].style.opacity=-u>0?-u:0)}}if(g.browser.ie){var x=g.wrapper[0].style;x.perspectiveOrigin=t+"px 50%"}},setTransition:function(e){g.slides.transition(e).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(e)}}},g.lazy={initialImageLoaded:!1,loadImageInSlide:function(e,t){if("undefined"!=typeof e&&("undefined"==typeof t&&(t=!0),0!==g.slides.length)){var i=g.slides.eq(e),n=i.find(".swiper-lazy:not(.swiper-lazy-loaded):not(.swiper-lazy-loading)");!i.hasClass("swiper-lazy")||i.hasClass("swiper-lazy-loaded")||i.hasClass("swiper-lazy-loading")||n.add(i[0]),0!==n.length&&n.each(function(){var e=v(this);e.addClass("swiper-lazy-loading");var n=e.attr("data-background"),r=e.attr("data-src");g.loadImage(e[0],r||n,!1,function(){if(n?(e.css("background-image","url("+n+")"),e.removeAttr("data-background")):(e.attr("src",r),e.removeAttr("data-src")),e.addClass("swiper-lazy-loaded").removeClass("swiper-lazy-loading"),i.find(".swiper-lazy-preloader, .preloader").remove(),g.params.loop&&t){var s=i.attr("data-swiper-slide-index");if(i.hasClass(g.params.slideDuplicateClass)){var o=g.wrapper.children('[data-swiper-slide-index="'+s+'"]:not(.'+g.params.slideDuplicateClass+")");g.lazy.loadImageInSlide(o.index(),!1)}else{var a=g.wrapper.children("."+g.params.slideDuplicateClass+'[data-swiper-slide-index="'+s+'"]');g.lazy.loadImageInSlide(a.index(),!1)}}g.emit("onLazyImageReady",g,i[0],e[0])}),g.emit("onLazyImageLoad",g,i[0],e[0])})}},load:function(){var e;if(g.params.watchSlidesVisibility)g.wrapper.children("."+g.params.slideVisibleClass).each(function(){g.lazy.loadImageInSlide(v(this).index())});else if(g.params.slidesPerView>1)for(e=g.activeIndex;e<g.activeIndex+g.params.slidesPerView;e++)g.slides[e]&&g.lazy.loadImageInSlide(e);else g.lazy.loadImageInSlide(g.activeIndex);if(g.params.lazyLoadingInPrevNext)if(g.params.slidesPerView>1){for(e=g.activeIndex+g.params.slidesPerView;e<g.activeIndex+g.params.slidesPerView+g.params.slidesPerView;e++)g.slides[e]&&g.lazy.loadImageInSlide(e);for(e=g.activeIndex-g.params.slidesPerView;e<g.activeIndex;e++)g.slides[e]&&g.lazy.loadImageInSlide(e)}else{var t=g.wrapper.children("."+g.params.slideNextClass);t.length>0&&g.lazy.loadImageInSlide(t.index());var i=g.wrapper.children("."+g.params.slidePrevClass);i.length>0&&g.lazy.loadImageInSlide(i.index())}},onTransitionStart:function(){g.params.lazyLoading&&(g.params.lazyLoadingOnTransitionStart||!g.params.lazyLoadingOnTransitionStart&&!g.lazy.initialImageLoaded)&&g.lazy.load()},onTransitionEnd:function(){g.params.lazyLoading&&!g.params.lazyLoadingOnTransitionStart&&g.lazy.load()}},g.scrollbar={set:function(){if(g.params.scrollbar){var e=g.scrollbar;e.track=v(g.params.scrollbar),e.drag=e.track.find(".swiper-scrollbar-drag"),0===e.drag.length&&(e.drag=v('<div class="swiper-scrollbar-drag"></div>'),e.track.append(e.drag)),e.drag[0].style.width="",e.drag[0].style.height="",e.trackSize=r()?e.track[0].offsetWidth:e.track[0].offsetHeight,e.divider=g.size/g.virtualSize,e.moveDivider=e.divider*(e.trackSize/g.size),e.dragSize=e.trackSize*e.divider,r()?e.drag[0].style.width=e.dragSize+"px":e.drag[0].style.height=e.dragSize+"px",e.divider>=1?e.track[0].style.display="none":e.track[0].style.display="",g.params.scrollbarHide&&(e.track[0].style.opacity=0)}},setTranslate:function(){if(g.params.scrollbar){var e,t=g.scrollbar,i=(g.translate||0,t.dragSize);e=(t.trackSize-t.dragSize)*g.progress,g.rtl&&r()?(e=-e,e>0?(i=t.dragSize-e,e=0):-e+t.dragSize>t.trackSize&&(i=t.trackSize+e)):e<0?(i=t.dragSize+e,e=0):e+t.dragSize>t.trackSize&&(i=t.trackSize-e),r()?(g.support.transforms3d?t.drag.transform("translate3d("+e+"px, 0, 0)"):t.drag.transform("translateX("+e+"px)"),t.drag[0].style.width=i+"px"):(g.support.transforms3d?t.drag.transform("translate3d(0px, "+e+"px, 0)"):t.drag.transform("translateY("+e+"px)"),t.drag[0].style.height=i+"px"),g.params.scrollbarHide&&(clearTimeout(t.timeout),t.track[0].style.opacity=1,t.timeout=setTimeout(function(){t.track[0].style.opacity=0,t.track.transition(400)},1e3))}},setTransition:function(e){g.params.scrollbar&&g.scrollbar.drag.transition(e)}},g.controller={setTranslate:function(e,i){function n(t){e=t.rtl&&"horizontal"===t.params.direction?-g.translate:g.translate,r=(t.maxTranslate()-t.minTranslate())/(g.maxTranslate()-g.minTranslate()),s=(e-g.minTranslate())*r+t.minTranslate(),g.params.controlInverse&&(s=t.maxTranslate()-s),t.updateProgress(s),t.setWrapperTranslate(s,!1,g),t.updateActiveIndex()}var r,s,o=g.params.control;if(g.isArray(o))for(var a=0;a<o.length;a++)o[a]!==i&&o[a]instanceof t&&n(o[a]);else o instanceof t&&i!==o&&n(o)},setTransition:function(e,i){function n(t){t.setWrapperTransition(e,g),0!==e&&(t.onTransitionStart(),t.wrapper.transitionEnd(function(){s&&t.onTransitionEnd()}))}var r,s=g.params.control;if(g.isArray(s))for(r=0;r<s.length;r++)s[r]!==i&&s[r]instanceof t&&n(s[r]);else s instanceof t&&i!==s&&n(s)}},g.hashnav={init:function(){if(g.params.hashnav){g.hashnav.initialized=!0;var e=document.location.hash.replace("#","");if(e)for(var t=0,i=0,n=g.slides.length;i<n;i++){var r=g.slides.eq(i),s=r.attr("data-hash");if(s===e&&!r.hasClass(g.params.slideDuplicateClass)){var o=r.index();g.slideTo(o,t,g.params.runCallbacksOnInit,!0)}}}},setHash:function(){g.hashnav.initialized&&g.params.hashnav&&(document.location.hash=g.slides.eq(g.activeIndex).attr("data-hash")||"")}},g.disableKeyboardControl=function(){v(document).off("keydown",l)},g.enableKeyboardControl=function(){v(document).on("keydown",l)},g.mousewheel={event:!1,lastScrollTime:(new window.Date).getTime()},g.params.mousewheelControl){if(void 0!==document.onmousewheel&&(g.mousewheel.event="mousewheel"),!g.mousewheel.event)try{new window.WheelEvent("wheel"),g.mousewheel.event="wheel"}catch(N){}g.mousewheel.event||(g.mousewheel.event="DOMMouseScroll")}g.disableMousewheelControl=function(){return!!g.mousewheel.event&&(g.container.off(g.mousewheel.event,c),!0)},g.enableMousewheelControl=function(){return!!g.mousewheel.event&&(g.container.on(g.mousewheel.event,c),!0)},g.parallax={setTranslate:function(){g.container.children("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y]").each(function(){u(this,g.progress)}),g.slides.each(function(){var e=v(this);e.find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y]").each(function(){var t=Math.min(Math.max(e[0].progress,-1),1);u(this,t)})})},setTransition:function(e){"undefined"==typeof e&&(e=g.params.speed),g.container.find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y]").each(function(){var t=v(this),i=parseInt(t.attr("data-swiper-parallax-duration"),10)||e;0===e&&(i=0),t.transition(i)})}},g._plugins=[];for(var I in g.plugins){var z=g.plugins[I](g,g.params[I]);z&&g._plugins.push(z)}return g.callPlugins=function(e){for(var t=0;t<g._plugins.length;t++)e in g._plugins[t]&&g._plugins[t][e](arguments[1],arguments[2],arguments[3],arguments[4],arguments[5])},g.emitterEventListeners={},g.emit=function(e){g.params[e]&&g.params[e](arguments[1],arguments[2],arguments[3],arguments[4],arguments[5]);var t;if(g.emitterEventListeners[e])for(t=0;t<g.emitterEventListeners[e].length;t++)g.emitterEventListeners[e][t](arguments[1],arguments[2],arguments[3],arguments[4],arguments[5]);g.callPlugins&&g.callPlugins(e,arguments[1],arguments[2],arguments[3],arguments[4],arguments[5])},g.on=function(e,t){return e=p(e),g.emitterEventListeners[e]||(g.emitterEventListeners[e]=[]),g.emitterEventListeners[e].push(t),g},g.off=function(e,t){var i;if(e=p(e),"undefined"==typeof t)return g.emitterEventListeners[e]=[],g;if(g.emitterEventListeners[e]&&0!==g.emitterEventListeners[e].length){for(i=0;i<g.emitterEventListeners[e].length;i++)g.emitterEventListeners[e][i]===t&&g.emitterEventListeners[e].splice(i,1);return g}},g.once=function(e,t){e=p(e);var i=function(){t(arguments[0],arguments[1],arguments[2],arguments[3],arguments[4]),g.off(e,i)};return g.on(e,i),g},g.a11y={makeFocusable:function(e){return e[0].tabIndex="0",e},addRole:function(e,t){return e.attr("role",t),e},addLabel:function(e,t){return e.attr("aria-label",t),e},disable:function(e){return e.attr("aria-disabled",!0),e},enable:function(e){return e.attr("aria-disabled",!1),e},onEnterKey:function(e){13===e.keyCode&&(v(e.target).is(g.params.nextButton)?(g.onClickNext(e),g.isEnd?g.a11y.notify(g.params.lastSlideMsg):g.a11y.notify(g.params.nextSlideMsg)):v(e.target).is(g.params.prevButton)&&(g.onClickPrev(e),g.isBeginning?g.a11y.notify(g.params.firstSlideMsg):g.a11y.notify(g.params.prevSlideMsg)))},liveRegion:v('<span class="swiper-notification" aria-live="assertive" aria-atomic="true"></span>'),notify:function(e){var t=g.a11y.liveRegion;0!==t.length&&(t.html(""),t.html(e))},init:function(){if(g.params.nextButton){var e=v(g.params.nextButton);g.a11y.makeFocusable(e),g.a11y.addRole(e,"button"),g.a11y.addLabel(e,g.params.nextSlideMsg)}if(g.params.prevButton){var t=v(g.params.prevButton);g.a11y.makeFocusable(t),g.a11y.addRole(t,"button"),g.a11y.addLabel(t,g.params.prevSlideMsg)}v(g.container).append(g.a11y.liveRegion)},destroy:function(){g.a11y.liveRegion&&g.a11y.liveRegion.length>0&&g.a11y.liveRegion.remove()}},g.init=function(){g.params.loop&&g.createLoop(),g.updateContainerSize(),g.updateSlidesSize(),g.updatePagination(),g.params.scrollbar&&g.scrollbar&&g.scrollbar.set(),"slide"!==g.params.effect&&g.effects[g.params.effect]&&(g.params.loop||g.updateProgress(),g.effects[g.params.effect].setTranslate()),g.params.loop?g.slideTo(g.params.initialSlide+g.loopedSlides,0,g.params.runCallbacksOnInit):(g.slideTo(g.params.initialSlide,0,g.params.runCallbacksOnInit),0===g.params.initialSlide&&(g.parallax&&g.params.parallax&&g.parallax.setTranslate(),g.lazy&&g.params.lazyLoading&&(g.lazy.load(),g.lazy.initialImageLoaded=!0))),g.attachEvents(),g.params.observer&&g.support.observer&&g.initObservers(),g.params.preloadImages&&!g.params.lazyLoading&&g.preloadImages(),g.params.autoplay&&g.startAutoplay(),g.params.keyboardControl&&g.enableKeyboardControl&&g.enableKeyboardControl(),g.params.mousewheelControl&&g.enableMousewheelControl&&g.enableMousewheelControl(),g.params.hashnav&&g.hashnav&&g.hashnav.init(),g.params.a11y&&g.a11y&&g.a11y.init(),g.emit("onInit",g)},g.cleanupStyles=function(){g.container.removeClass(g.classNames.join(" ")).removeAttr("style"),g.wrapper.removeAttr("style"),g.slides&&g.slides.length&&g.slides.removeClass([g.params.slideVisibleClass,g.params.slideActiveClass,g.params.slideNextClass,g.params.slidePrevClass].join(" ")).removeAttr("style").removeAttr("data-swiper-column").removeAttr("data-swiper-row"),g.paginationContainer&&g.paginationContainer.length&&g.paginationContainer.removeClass(g.params.paginationHiddenClass),g.bullets&&g.bullets.length&&g.bullets.removeClass(g.params.bulletActiveClass),g.params.prevButton&&v(g.params.prevButton).removeClass(g.params.buttonDisabledClass),g.params.nextButton&&v(g.params.nextButton).removeClass(g.params.buttonDisabledClass),g.params.scrollbar&&g.scrollbar&&(g.scrollbar.track&&g.scrollbar.track.length&&g.scrollbar.track.removeAttr("style"),g.scrollbar.drag&&g.scrollbar.drag.length&&g.scrollbar.drag.removeAttr("style"))},g.destroy=function(e,t){g.detachEvents(),g.stopAutoplay(),g.params.loop&&g.destroyLoop(),t&&g.cleanupStyles(),g.disconnectObservers(),g.params.keyboardControl&&g.disableKeyboardControl&&g.disableKeyboardControl(),g.params.mousewheelControl&&g.disableMousewheelControl&&g.disableMousewheelControl(),g.params.a11y&&g.a11y&&g.a11y.destroy(),g.emit("onDestroy"),e!==!1&&(g=null)},g.init(),g}};t.prototype={isSafari:function(){var e=navigator.userAgent.toLowerCase();return e.indexOf("safari")>=0&&e.indexOf("chrome")<0&&e.indexOf("android")<0}(),isUiWebView:/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(navigator.userAgent),isArray:function(e){return"[object Array]"===Object.prototype.toString.apply(e)},browser:{ie:window.navigator.pointerEnabled||window.navigator.msPointerEnabled,ieTouch:window.navigator.msPointerEnabled&&window.navigator.msMaxTouchPoints>1||window.navigator.pointerEnabled&&window.navigator.maxTouchPoints>1},device:function(){var e=navigator.userAgent,t=e.match(/(Android);?[\s\/]+([\d.]+)?/),i=e.match(/(iPad).*OS\s([\d_]+)/),n=(e.match(/(iPod)(.*OS\s([\d_]+))?/),!i&&e.match(/(iPhone\sOS)\s([\d_]+)/));return{ios:i||n||i,android:t}}(),support:{touch:window.Modernizr&&Modernizr.touch===!0||function(){return!!("ontouchstart"in window||window.DocumentTouch&&document instanceof DocumentTouch)}(),transforms3d:window.Modernizr&&Modernizr.csstransforms3d===!0||function(){var e=document.createElement("div").style;return"webkitPerspective"in e||"MozPerspective"in e||"OPerspective"in e||"MsPerspective"in e||"perspective"in e}(),flexbox:function(){for(var e=document.createElement("div").style,t="alignItems webkitAlignItems webkitBoxAlign msFlexAlign mozBoxAlign webkitFlexDirection msFlexDirection mozBoxDirection mozBoxOrient webkitBoxDirection webkitBoxOrient".split(" "),i=0;i<t.length;i++)if(t[i]in e)return!0}(),observer:function(){return"MutationObserver"in window||"WebkitMutationObserver"in window}()},plugins:{}};for(var i=(function(){var e=function(e){var t=this,i=0;for(i=0;i<e.length;i++)t[i]=e[i];return t.length=e.length,this},t=function(t,i){var n=[],r=0;if(t&&!i&&t instanceof e)return t;if(t)if("string"==typeof t){var s,o,a=t.trim();if(a.indexOf("<")>=0&&a.indexOf(">")>=0){var l="div";for(0===a.indexOf("<li")&&(l="ul"),0===a.indexOf("<tr")&&(l="tbody"),0!==a.indexOf("<td")&&0!==a.indexOf("<th")||(l="tr"),0===a.indexOf("<tbody")&&(l="table"),0===a.indexOf("<option")&&(l="select"),o=document.createElement(l),o.innerHTML=t,r=0;r<o.childNodes.length;r++)n.push(o.childNodes[r])}else for(s=i||"#"!==t[0]||t.match(/[ .<>:~]/)?(i||document).querySelectorAll(t):[document.getElementById(t.split("#")[1])],r=0;r<s.length;r++)s[r]&&n.push(s[r])}else if(t.nodeType||t===window||t===document)n.push(t);else if(t.length>0&&t[0].nodeType)for(r=0;r<t.length;r++)n.push(t[r]);return new e(n)};return e.prototype={addClass:function(e){if("undefined"==typeof e)return this;for(var t=e.split(" "),i=0;i<t.length;i++)for(var n=0;n<this.length;n++)this[n].classList.add(t[i]);return this},removeClass:function(e){for(var t=e.split(" "),i=0;i<t.length;i++)for(var n=0;n<this.length;n++)this[n].classList.remove(t[i]);return this},hasClass:function(e){return!!this[0]&&this[0].classList.contains(e)},toggleClass:function(e){for(var t=e.split(" "),i=0;i<t.length;i++)for(var n=0;n<this.length;n++)this[n].classList.toggle(t[i]);return this},attr:function(e,t){if(1===arguments.length&&"string"==typeof e)return this[0]?this[0].getAttribute(e):void 0;for(var i=0;i<this.length;i++)if(2===arguments.length)this[i].setAttribute(e,t);else for(var n in e)this[i][n]=e[n],this[i].setAttribute(n,e[n]);return this},removeAttr:function(e){for(var t=0;t<this.length;t++)this[t].removeAttribute(e);return this},data:function(e,t){if("undefined"!=typeof t){for(var i=0;i<this.length;i++){var n=this[i];n.dom7ElementDataStorage||(n.dom7ElementDataStorage={}),n.dom7ElementDataStorage[e]=t}return this}if(this[0]){var r=this[0].getAttribute("data-"+e);return r?r:this[0].dom7ElementDataStorage&&e in this[0].dom7ElementDataStorage?this[0].dom7ElementDataStorage[e]:void 0}},transform:function(e){for(var t=0;t<this.length;t++){var i=this[t].style;i.webkitTransform=i.MsTransform=i.msTransform=i.MozTransform=i.OTransform=i.transform=e}return this},transition:function(e){"string"!=typeof e&&(e+="ms");for(var t=0;t<this.length;t++){var i=this[t].style;i.webkitTransitionDuration=i.MsTransitionDuration=i.msTransitionDuration=i.MozTransitionDuration=i.OTransitionDuration=i.transitionDuration=e}return this},on:function(e,i,n,r){function s(e){var r=e.target;if(t(r).is(i))n.call(r,e);else for(var s=t(r).parents(),o=0;o<s.length;o++)t(s[o]).is(i)&&n.call(s[o],e)}var o,a,l=e.split(" ");for(o=0;o<this.length;o++)if("function"==typeof i||i===!1)for("function"==typeof i&&(n=arguments[1],r=arguments[2]||!1),a=0;a<l.length;a++)this[o].addEventListener(l[a],n,r);else for(a=0;a<l.length;a++)this[o].dom7LiveListeners||(this[o].dom7LiveListeners=[]),this[o].dom7LiveListeners.push({listener:n,liveListener:s}),this[o].addEventListener(l[a],s,r);return this},off:function(e,t,i,n){for(var r=e.split(" "),s=0;s<r.length;s++)for(var o=0;o<this.length;o++)if("function"==typeof t||t===!1)"function"==typeof t&&(i=arguments[1],n=arguments[2]||!1),this[o].removeEventListener(r[s],i,n);else if(this[o].dom7LiveListeners)for(var a=0;a<this[o].dom7LiveListeners.length;a++)this[o].dom7LiveListeners[a].listener===i&&this[o].removeEventListener(r[s],this[o].dom7LiveListeners[a].liveListener,n);return this},once:function(e,t,i,n){function r(o){i(o),s.off(e,t,r,n)}var s=this;"function"==typeof t&&(t=!1,i=arguments[1],n=arguments[2]),s.on(e,t,r,n)},trigger:function(e,t){for(var i=0;i<this.length;i++){var n;try{n=new window.CustomEvent(e,{detail:t,bubbles:!0,cancelable:!0})}catch(r){n=document.createEvent("Event"),n.initEvent(e,!0,!0),n.detail=t}this[i].dispatchEvent(n)}return this},transitionEnd:function(e){function t(s){if(s.target===this)for(e.call(this,s),i=0;i<n.length;i++)r.off(n[i],t)}var i,n=["webkitTransitionEnd","transitionend","oTransitionEnd","MSTransitionEnd","msTransitionEnd"],r=this;if(e)for(i=0;i<n.length;i++)r.on(n[i],t);return this},width:function(){return this[0]===window?window.innerWidth:this.length>0?parseFloat(this.css("width")):null},outerWidth:function(e){return this.length>0?e?this[0].offsetWidth+parseFloat(this.css("margin-right"))+parseFloat(this.css("margin-left")):this[0].offsetWidth:null},height:function(){return this[0]===window?window.innerHeight:this.length>0?parseFloat(this.css("height")):null},outerHeight:function(e){return this.length>0?e?this[0].offsetHeight+parseFloat(this.css("margin-top"))+parseFloat(this.css("margin-bottom")):this[0].offsetHeight:null},offset:function(){if(this.length>0){var e=this[0],t=e.getBoundingClientRect(),i=document.body,n=e.clientTop||i.clientTop||0,r=e.clientLeft||i.clientLeft||0,s=window.pageYOffset||e.scrollTop,o=window.pageXOffset||e.scrollLeft;return{top:t.top+s-n,left:t.left+o-r}}return null},css:function(e,t){var i;if(1===arguments.length){if("string"!=typeof e){for(i=0;i<this.length;i++)for(var n in e)this[i].style[n]=e[n];return this}if(this[0])return window.getComputedStyle(this[0],null).getPropertyValue(e)}if(2===arguments.length&&"string"==typeof e){for(i=0;i<this.length;i++)this[i].style[e]=t;return this}return this},each:function(e){for(var t=0;t<this.length;t++)e.call(this[t],t,this[t]);return this},html:function(e){if("undefined"==typeof e)return this[0]?this[0].innerHTML:void 0;for(var t=0;t<this.length;t++)this[t].innerHTML=e;return this},is:function(i){if(!this[0])return!1;var n,r;if("string"==typeof i){var s=this[0];if(s===document)return i===document;if(s===window)return i===window;if(s.matches)return s.matches(i);if(s.webkitMatchesSelector)return s.webkitMatchesSelector(i);if(s.mozMatchesSelector)return s.mozMatchesSelector(i);if(s.msMatchesSelector)return s.msMatchesSelector(i);for(n=t(i),r=0;r<n.length;r++)if(n[r]===this[0])return!0;return!1}if(i===document)return this[0]===document;if(i===window)return this[0]===window;if(i.nodeType||i instanceof e){for(n=i.nodeType?[i]:i,r=0;r<n.length;r++)if(n[r]===this[0])return!0;return!1}return!1},index:function(){if(this[0]){for(var e=this[0],t=0;null!==(e=e.previousSibling);)1===e.nodeType&&t++;return t}},eq:function(t){if("undefined"==typeof t)return this;var i,n=this.length;return t>n-1?new e([]):t<0?(i=n+t,new e(i<0?[]:[this[i]])):new e([this[t]])},append:function(t){var i,n;for(i=0;i<this.length;i++)if("string"==typeof t){var r=document.createElement("div");for(r.innerHTML=t;r.firstChild;)this[i].appendChild(r.firstChild)}else if(t instanceof e)for(n=0;n<t.length;n++)this[i].appendChild(t[n]);else this[i].appendChild(t);return this},prepend:function(t){var i,n;for(i=0;i<this.length;i++)if("string"==typeof t){var r=document.createElement("div");for(r.innerHTML=t,n=r.childNodes.length-1;n>=0;n--)this[i].insertBefore(r.childNodes[n],this[i].childNodes[0])}else if(t instanceof e)for(n=0;n<t.length;n++)this[i].insertBefore(t[n],this[i].childNodes[0]);else this[i].insertBefore(t,this[i].childNodes[0]);return this},insertBefore:function(e){for(var i=t(e),n=0;n<this.length;n++)if(1===i.length)i[0].parentNode.insertBefore(this[n],i[0]);else if(i.length>1)for(var r=0;r<i.length;r++)i[r].parentNode.insertBefore(this[n].cloneNode(!0),i[r])},insertAfter:function(e){for(var i=t(e),n=0;n<this.length;n++)if(1===i.length)i[0].parentNode.insertBefore(this[n],i[0].nextSibling);else if(i.length>1)for(var r=0;r<i.length;r++)i[r].parentNode.insertBefore(this[n].cloneNode(!0),i[r].nextSibling)},next:function(i){return new e(this.length>0?i?this[0].nextElementSibling&&t(this[0].nextElementSibling).is(i)?[this[0].nextElementSibling]:[]:this[0].nextElementSibling?[this[0].nextElementSibling]:[]:[])},nextAll:function(i){var n=[],r=this[0];if(!r)return new e([]);for(;r.nextElementSibling;){var s=r.nextElementSibling;i?t(s).is(i)&&n.push(s):n.push(s),r=s}return new e(n)},prev:function(i){return new e(this.length>0?i?this[0].previousElementSibling&&t(this[0].previousElementSibling).is(i)?[this[0].previousElementSibling]:[]:this[0].previousElementSibling?[this[0].previousElementSibling]:[]:[])},prevAll:function(i){var n=[],r=this[0];if(!r)return new e([]);for(;r.previousElementSibling;){var s=r.previousElementSibling;i?t(s).is(i)&&n.push(s):n.push(s),r=s}return new e(n)},parent:function(e){for(var i=[],n=0;n<this.length;n++)e?t(this[n].parentNode).is(e)&&i.push(this[n].parentNode):i.push(this[n].parentNode);return t(t.unique(i))},parents:function(e){for(var i=[],n=0;n<this.length;n++)for(var r=this[n].parentNode;r;)e?t(r).is(e)&&i.push(r):i.push(r),r=r.parentNode;return t(t.unique(i))},find:function(t){for(var i=[],n=0;n<this.length;n++)for(var r=this[n].querySelectorAll(t),s=0;s<r.length;s++)i.push(r[s]);return new e(i)},children:function(i){for(var n=[],r=0;r<this.length;r++)for(var s=this[r].childNodes,o=0;o<s.length;o++)i?1===s[o].nodeType&&t(s[o]).is(i)&&n.push(s[o]):1===s[o].nodeType&&n.push(s[o]);return new e(t.unique(n))},remove:function(){for(var e=0;e<this.length;e++)this[e].parentNode&&this[e].parentNode.removeChild(this[e]);return this},add:function(){var e,i,n=this;for(e=0;e<arguments.length;e++){var r=t(arguments[e]);for(i=0;i<r.length;i++)n[n.length]=r[i],n.length++}return n}},t.fn=e.prototype,t.unique=function(e){for(var t=[],i=0;i<e.length;i++)t.indexOf(e[i])===-1&&t.push(e[i]);return t},t}()),n=["jQuery","Zepto","Dom7"],r=0;r<n.length;r++)window[n[r]]&&e(window[n[r]]);var s;s="undefined"==typeof i?window.Dom7||window.Zepto||window.jQuery:i,s&&("transitionEnd"in s.fn||(s.fn.transitionEnd=function(e){function t(s){if(s.target===this)for(e.call(this,s),i=0;i<n.length;i++)r.off(n[i],t)}var i,n=["webkitTransitionEnd","transitionend","oTransitionEnd","MSTransitionEnd","msTransitionEnd"],r=this;if(e)for(i=0;i<n.length;i++)r.on(n[i],t);return this}),"transform"in s.fn||(s.fn.transform=function(e){for(var t=0;t<this.length;t++){var i=this[t].style;i.webkitTransform=i.MsTransform=i.msTransform=i.MozTransform=i.OTransform=i.transform=e}return this}),"transition"in s.fn||(s.fn.transition=function(e){"string"!=typeof e&&(e+="ms");for(var t=0;t<this.length;t++){var i=this[t].style;i.webkitTransitionDuration=i.MsTransitionDuration=i.msTransitionDuration=i.MozTransitionDuration=i.OTransitionDuration=i.transitionDuration=e}return this})),window.Swiper=t}(),"undefined"!=typeof i?i.exports=window.Swiper:"function"==typeof define&&define.amd&&define([],function(){"use strict";return window.Swiper})}),define("swiper.css.js",[],function(e,t,i){e("index")('.swiper-container{margin:0 auto;position:relative;overflow:hidden;z-index:1;}.swiper-container-no-flexbox .swiper-slide{float:left;}.swiper-container-vertical > .swiper-wrapper{-webkit-box-orient:vertical;-moz-box-orient:vertical;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transition-property:-webkit-transform;-moz-transition-property:-moz-transform;-o-transition-property:-o-transform;-ms-transition-property:-ms-transform;transition-property:transform;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;}.swiper-container-android .swiper-slide,.swiper-wrapper{-webkit-transform:translate3d(0px, 0, 0);-moz-transform:translate3d(0px, 0, 0);-o-transform:translate(0px, 0px);-ms-transform:translate3d(0px, 0, 0);transform:translate3d(0px, 0, 0);}.swiper-container-multirow > .swiper-wrapper{-webkit-box-lines:multiple;-moz-box-lines:multiple;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap;}.swiper-container-free-mode > .swiper-wrapper{-webkit-transition-timing-function:ease-out;-moz-transition-timing-function:ease-out;-ms-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto;}.swiper-slide{-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-flex-shrink:0;-ms-flex:0 0 auto;flex-shrink:0;width:100%;height:100%;position:relative;}.swiper-container .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000;}.swiper-wp8-horizontal{-ms-touch-action:pan-y;touch-action:pan-y;}.swiper-wp8-vertical{-ms-touch-action:pan-x;touch-action:pan-x;}.swiper-button-prev,.swiper-button-next{position:absolute;top:50%;width:27px;height:44px;margin-top:-22px;z-index:10;cursor:pointer;-moz-background-size:27px 44px;-webkit-background-size:27px 44px;background-size:27px 44px;background-position:center;background-repeat:no-repeat;}.swiper-button-prev.swiper-button-disabled,.swiper-button-next.swiper-button-disabled{opacity:0.35;cursor:auto;pointer-events:none;}.swiper-button-prev,.swiper-container-rtl .swiper-button-next{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D"http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg"%20viewBox%3D"0%200%2027%2044"%3E%3Cpath%20d%3D"M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z"%20fill%3D"%23007aff"%2F%3E%3C%2Fsvg%3E");left:10px;right:auto;}.swiper-button-prev.swiper-button-black,.swiper-container-rtl .swiper-button-next.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D"http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg"%20viewBox%3D"0%200%2027%2044"%3E%3Cpath%20d%3D"M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z"%20fill%3D"%23000000"%2F%3E%3C%2Fsvg%3E");}.swiper-button-prev.swiper-button-white,.swiper-container-rtl .swiper-button-next.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D"http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg"%20viewBox%3D"0%200%2027%2044"%3E%3Cpath%20d%3D"M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z"%20fill%3D"%23ffffff"%2F%3E%3C%2Fsvg%3E");}.swiper-button-next,.swiper-container-rtl .swiper-button-prev{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D"http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg"%20viewBox%3D"0%200%2027%2044"%3E%3Cpath%20d%3D"M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z"%20fill%3D"%23007aff"%2F%3E%3C%2Fsvg%3E");right:10px;left:auto;}.swiper-button-next.swiper-button-black,.swiper-container-rtl .swiper-button-prev.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D"http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg"%20viewBox%3D"0%200%2027%2044"%3E%3Cpath%20d%3D"M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z"%20fill%3D"%23000000"%2F%3E%3C%2Fsvg%3E");}.swiper-button-next.swiper-button-white,.swiper-container-rtl .swiper-button-prev.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D"http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg"%20viewBox%3D"0%200%2027%2044"%3E%3Cpath%20d%3D"M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z"%20fill%3D"%23ffffff"%2F%3E%3C%2Fsvg%3E");}.swiper-pagination{position:absolute;text-align:center;-webkit-transition:300ms;-moz-transition:300ms;-o-transition:300ms;transition:300ms;-webkit-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);z-index:10;}.swiper-pagination.swiper-pagination-hidden{opacity:0;}.swiper-pagination-bullet{width:8px;height:8px;display:inline-block;border-radius:100%;background:#000;opacity:0.2;}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer;}.swiper-pagination-white .swiper-pagination-bullet{background:#fff;}.swiper-pagination-bullet-active{opacity:1;background:#007aff;}.swiper-pagination-white .swiper-pagination-bullet-active{background:#fff;}.swiper-pagination-black .swiper-pagination-bullet-active{background:#000;}.swiper-container-vertical > .swiper-pagination{right:10px;top:50%;-webkit-transform:translate3d(0px, -50%, 0);-moz-transform:translate3d(0px, -50%, 0);-o-transform:translate(0px, -50%);-ms-transform:translate3d(0px, -50%, 0);transform:translate3d(0px, -50%, 0);}.swiper-container-vertical > .swiper-pagination .swiper-pagination-bullet{margin:5px 0;display:block;}.swiper-container-horizontal > .swiper-pagination{bottom:10px;left:0;width:100%;}.swiper-container-horizontal > .swiper-pagination .swiper-pagination-bullet{margin:0 5px;}.swiper-container-3d{-webkit-perspective:1200px;-moz-perspective:1200px;-o-perspective:1200px;perspective:1200px;}.swiper-container-3d .swiper-wrapper,.swiper-container-3d .swiper-slide,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-cube-shadow{-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;transform-style:preserve-3d;}.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-slide-shadow-bottom{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10;}.swiper-container-3d .swiper-slide-shadow-left{background-image:-webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));background-image:-webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:-moz-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:-o-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));}.swiper-container-3d .swiper-slide-shadow-right{background-image:-webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));background-image:-webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:-moz-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:-o-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));}.swiper-container-3d .swiper-slide-shadow-top{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));background-image:-webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:-moz-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:-o-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));}.swiper-container-3d .swiper-slide-shadow-bottom{background-image:-webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));background-image:-webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:-moz-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:-o-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));}.swiper-container-coverflow .swiper-wrapper{-ms-perspective:1200px;}.swiper-container-fade.swiper-container-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;-moz-transition-timing-function:ease-out;-ms-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;}.swiper-container-fade .swiper-slide{pointer-events:none;}.swiper-container-fade .swiper-slide .swiper-slide{pointer-events:none;}.swiper-container-fade .swiper-slide-active,.swiper-container-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto;}.swiper-container-cube{overflow:visible;}.swiper-container-cube .swiper-slide{pointer-events:none;visibility:hidden;-webkit-transform-origin:0 0;-moz-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;backface-visibility:hidden;width:100%;height:100%;}.swiper-container-cube.swiper-container-rtl .swiper-slide{-webkit-transform-origin:100% 0;-moz-transform-origin:100% 0;-ms-transform-origin:100% 0;transform-origin:100% 0;}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-next,.swiper-container-cube .swiper-slide-prev,.swiper-container-cube .swiper-slide-next + .swiper-slide{pointer-events:auto;visibility:visible;}.swiper-container-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;background:#000;opacity:0.6;-webkit-filter:blur(50px);filter:blur(50px);}.swiper-container-cube.swiper-container-vertical .swiper-cube-shadow{z-index:0;}.swiper-scrollbar{border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0, 0, 0, 0.1);}.swiper-container-horizontal > .swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%;}.swiper-container-vertical > .swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%;}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0, 0, 0, 0.5);border-radius:10px;left:0;top:0;}.swiper-scrollbar-cursor-drag{cursor:move;}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;-webkit-transform-origin:50%;-moz-transform-origin:50%;transform-origin:50%;-webkit-animation:swiper-preloader-spin 1s steps(12, end) infinite;-moz-animation:swiper-preloader-spin 1s steps(12, end) infinite;animation:swiper-preloader-spin 1s steps(12, end) infinite;}.swiper-lazy-preloader:after{display:block;content:"";width:100%;height:100%;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D"0%200%20120%20120"%20xmlns%3D"http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg"%20xmlns%3Axlink%3D"http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink"%3E%3Cdefs%3E%3Cline%20id%3D"l"%20x1%3D"60"%20x2%3D"60"%20y1%3D"7"%20y2%3D"27"%20stroke%3D"%236c6c6c"%20stroke-width%3D"11"%20stroke-linecap%3D"round"%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%20transform%3D"rotate(30%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%20transform%3D"rotate(60%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%20transform%3D"rotate(90%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%20transform%3D"rotate(120%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%20transform%3D"rotate(150%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".37"%20transform%3D"rotate(180%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".46"%20transform%3D"rotate(210%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".56"%20transform%3D"rotate(240%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".66"%20transform%3D"rotate(270%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".75"%20transform%3D"rotate(300%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".85"%20transform%3D"rotate(330%2060%2C60)"%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");background-position:50%;-webkit-background-size:100%;background-size:100%;background-repeat:no-repeat;}.swiper-lazy-preloader-white:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D"0%200%20120%20120"%20xmlns%3D"http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg"%20xmlns%3Axlink%3D"http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink"%3E%3Cdefs%3E%3Cline%20id%3D"l"%20x1%3D"60"%20x2%3D"60"%20y1%3D"7"%20y2%3D"27"%20stroke%3D"%23fff"%20stroke-width%3D"11"%20stroke-linecap%3D"round"%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%20transform%3D"rotate(30%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%20transform%3D"rotate(60%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%20transform%3D"rotate(90%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%20transform%3D"rotate(120%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%20transform%3D"rotate(150%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".37"%20transform%3D"rotate(180%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".46"%20transform%3D"rotate(210%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".56"%20transform%3D"rotate(240%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".66"%20transform%3D"rotate(270%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".75"%20transform%3D"rotate(300%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".85"%20transform%3D"rotate(330%2060%2C60)"%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");}@-webkit-keyframes swiper-preloader-spin{100%{-webkit-transform:rotate(360deg);}}@keyframes swiper-preloader-spin{100%{transform:rotate(360deg);}}'); -}),define("iscroll-probe",[],function(e,t,i){!function(e,t,n){function r(e,i){this.wrapper="string"==typeof e?t.querySelector(e):e,this.scroller=this.wrapper.children[0],this.scrollerStyle=this.scroller.style,this.options={resizeScrollbars:!0,mouseWheelSpeed:20,snapThreshold:.334,startX:0,startY:0,scrollY:!0,directionLockThreshold:5,momentum:!0,bounce:!0,bounceTime:600,bounceEasing:"",preventDefault:!0,preventDefaultException:{tagName:/^(INPUT|TEXTAREA|BUTTON|SELECT)$/},HWCompositing:!0,useTransition:!0,useTransform:!0};for(var n in i)this.options[n]=i[n];this.translateZ=this.options.HWCompositing&&l.hasPerspective?" translateZ(0)":"",this.options.useTransition=l.hasTransition&&this.options.useTransition,this.options.useTransform=l.hasTransform&&this.options.useTransform,this.options.eventPassthrough=this.options.eventPassthrough===!0?"vertical":this.options.eventPassthrough,this.options.preventDefault=!this.options.eventPassthrough&&this.options.preventDefault,this.options.scrollY="vertical"!=this.options.eventPassthrough&&this.options.scrollY,this.options.scrollX="horizontal"!=this.options.eventPassthrough&&this.options.scrollX,this.options.freeScroll=this.options.freeScroll&&!this.options.eventPassthrough,this.options.directionLockThreshold=this.options.eventPassthrough?0:this.options.directionLockThreshold,this.options.bounceEasing="string"==typeof this.options.bounceEasing?l.ease[this.options.bounceEasing]||l.ease.circular:this.options.bounceEasing,this.options.resizePolling=void 0===this.options.resizePolling?60:this.options.resizePolling,this.options.tap===!0&&(this.options.tap="tap"),"scale"==this.options.shrinkScrollbars&&(this.options.useTransition=!1),this.options.invertWheelDirection=this.options.invertWheelDirection?-1:1,3==this.options.probeType&&(this.options.useTransition=!1),this.x=0,this.y=0,this.directionX=0,this.directionY=0,this._events={},this._init(),this.refresh(),this.scrollTo(this.options.startX,this.options.startY),this.enable()}function s(e,i,n){var r=t.createElement("div"),s=t.createElement("div");return n===!0&&(r.style.cssText="position:absolute;z-index:9999",s.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:absolute;background:rgba(0,0,0,0.5);border:1px solid rgba(255,255,255,0.9);border-radius:3px"),s.className="iScrollIndicator","h"==e?(n===!0&&(r.style.cssText+=";height:7px;left:2px;right:2px;bottom:0",s.style.height="100%"),r.className="iScrollHorizontalScrollbar"):(n===!0&&(r.style.cssText+=";width:7px;bottom:2px;top:2px;right:1px",s.style.width="100%"),r.className="iScrollVerticalScrollbar"),r.style.cssText+=";overflow:hidden",i||(r.style.pointerEvents="none"),r.appendChild(s),r}function o(i,n){this.wrapper="string"==typeof n.el?t.querySelector(n.el):n.el,this.wrapperStyle=this.wrapper.style,this.indicator=this.wrapper.children[0],this.indicatorStyle=this.indicator.style,this.scroller=i,this.options={listenX:!0,listenY:!0,interactive:!1,resize:!0,defaultScrollbars:!1,shrink:!1,fade:!1,speedRatioX:0,speedRatioY:0};for(var r in n)this.options[r]=n[r];this.sizeRatioX=1,this.sizeRatioY=1,this.maxPosX=0,this.maxPosY=0,this.options.interactive&&(this.options.disableTouch||(l.addEvent(this.indicator,"touchstart",this),l.addEvent(e,"touchend",this)),this.options.disablePointer||(l.addEvent(this.indicator,l.prefixPointerEvent("pointerdown"),this),l.addEvent(e,l.prefixPointerEvent("pointerup"),this)),this.options.disableMouse||(l.addEvent(this.indicator,"mousedown",this),l.addEvent(e,"mouseup",this))),this.options.fade&&(this.wrapperStyle[l.style.transform]=this.scroller.translateZ,this.wrapperStyle[l.style.transitionDuration]=l.isBadAndroid?"0.001s":"0ms",this.wrapperStyle.opacity="0")}var a=e.requestAnimationFrame||e.webkitRequestAnimationFrame||e.mozRequestAnimationFrame||e.oRequestAnimationFrame||e.msRequestAnimationFrame||function(t){e.setTimeout(t,1e3/60)},l=function(){function i(e){return o!==!1&&(""===o?e:o+e.charAt(0).toUpperCase()+e.substr(1))}var r={},s=t.createElement("div").style,o=function(){for(var e,t=["t","webkitT","MozT","msT","OT"],i=0,n=t.length;i<n;i++)if(e=t[i]+"ransform",e in s)return t[i].substr(0,t[i].length-1);return!1}();r.getTime=Date.now||function(){return(new Date).getTime()},r.extend=function(e,t){for(var i in t)e[i]=t[i]},r.addEvent=function(e,t,i,n){e.addEventListener(t,i,!!n)},r.removeEvent=function(e,t,i,n){e.removeEventListener(t,i,!!n)},r.prefixPointerEvent=function(t){return e.MSPointerEvent?"MSPointer"+t.charAt(9).toUpperCase()+t.substr(10):t},r.momentum=function(e,t,i,r,s,o){var a,l,c=e-t,u=n.abs(c)/i;return o=void 0===o?6e-4:o,a=e+u*u/(2*o)*(c<0?-1:1),l=u/o,a<r?(a=s?r-s/2.5*(u/8):r,c=n.abs(a-e),l=c/u):a>0&&(a=s?s/2.5*(u/8):0,c=n.abs(e)+a,l=c/u),{destination:n.round(a),duration:l}};var a=i("transform");return r.extend(r,{hasTransform:a!==!1,hasPerspective:i("perspective")in s,hasTouch:"ontouchstart"in e,hasPointer:e.PointerEvent||e.MSPointerEvent,hasTransition:i("transition")in s}),r.isBadAndroid=/Android /.test(e.navigator.appVersion)&&!/Chrome\/\d/.test(e.navigator.appVersion),r.extend(r.style={},{transform:a,transitionTimingFunction:i("transitionTimingFunction"),transitionDuration:i("transitionDuration"),transitionDelay:i("transitionDelay"),transformOrigin:i("transformOrigin")}),r.hasClass=function(e,t){var i=new RegExp("(^|\\s)"+t+"(\\s|$)");return i.test(e.className)},r.addClass=function(e,t){if(!r.hasClass(e,t)){var i=e.className.split(" ");i.push(t),e.className=i.join(" ")}},r.removeClass=function(e,t){if(r.hasClass(e,t)){var i=new RegExp("(^|\\s)"+t+"(\\s|$)","g");e.className=e.className.replace(i," ")}},r.offset=function(e){for(var t=-e.offsetLeft,i=-e.offsetTop;e=e.offsetParent;)t-=e.offsetLeft,i-=e.offsetTop;return{left:t,top:i}},r.preventDefaultException=function(e,t){for(var i in t)if(t[i].test(e[i]))return!0;return!1},r.extend(r.eventType={},{touchstart:1,touchmove:1,touchend:1,mousedown:2,mousemove:2,mouseup:2,pointerdown:3,pointermove:3,pointerup:3,MSPointerDown:3,MSPointerMove:3,MSPointerUp:3}),r.extend(r.ease={},{quadratic:{style:"cubic-bezier(0.25, 0.46, 0.45, 0.94)",fn:function(e){return e*(2-e)}},circular:{style:"cubic-bezier(0.1, 0.57, 0.1, 1)",fn:function(e){return n.sqrt(1- --e*e)}},back:{style:"cubic-bezier(0.175, 0.885, 0.32, 1.275)",fn:function(e){var t=4;return(e-=1)*e*((t+1)*e+t)+1}},bounce:{style:"",fn:function(e){return(e/=1)<1/2.75?7.5625*e*e:e<2/2.75?7.5625*(e-=1.5/2.75)*e+.75:e<2.5/2.75?7.5625*(e-=2.25/2.75)*e+.9375:7.5625*(e-=2.625/2.75)*e+.984375}},elastic:{style:"",fn:function(e){var t=.22,i=.4;return 0===e?0:1==e?1:i*n.pow(2,-10*e)*n.sin((e-t/4)*(2*n.PI)/t)+1}}}),r.tap=function(e,i){var n=t.createEvent("Event");n.initEvent(i,!0,!0),n.pageX=e.pageX,n.pageY=e.pageY,e.target.dispatchEvent(n)},r.click=function(e){var i,n=e.target;/(SELECT|INPUT|TEXTAREA)/i.test(n.tagName)||(i=t.createEvent("MouseEvents"),i.initMouseEvent("click",!0,!0,e.view,1,n.screenX,n.screenY,n.clientX,n.clientY,e.ctrlKey,e.altKey,e.shiftKey,e.metaKey,0,null),i._constructed=!0,n.dispatchEvent(i))},r}();r.prototype={version:"5.1.2",_init:function(){this._initEvents(),(this.options.scrollbars||this.options.indicators)&&this._initIndicators(),this.options.mouseWheel&&this._initWheel(),this.options.snap&&this._initSnap(),this.options.keyBindings&&this._initKeys()},destroy:function(){this._initEvents(!0),this._execEvent("destroy")},_transitionEnd:function(e){e.target==this.scroller&&this.isInTransition&&(this._transitionTime(),this.resetPosition(this.options.bounceTime)||(this.isInTransition=!1,this._execEvent("scrollEnd")))},_start:function(e){if((1==l.eventType[e.type]||0===e.button)&&this.enabled&&(!this.initiated||l.eventType[e.type]===this.initiated)){!this.options.preventDefault||l.isBadAndroid||l.preventDefaultException(e.target,this.options.preventDefaultException)||e.preventDefault();var t,i=e.touches?e.touches[0]:e;this.initiated=l.eventType[e.type],this.moved=!1,this.distX=0,this.distY=0,this.directionX=0,this.directionY=0,this.directionLocked=0,this._transitionTime(),this.startTime=l.getTime(),this.options.useTransition&&this.isInTransition?(this.isInTransition=!1,t=this.getComputedPosition(),this._translate(n.round(t.x),n.round(t.y)),this._execEvent("scrollEnd")):!this.options.useTransition&&this.isAnimating&&(this.isAnimating=!1,this._execEvent("scrollEnd")),this.startX=this.x,this.startY=this.y,this.absStartX=this.x,this.absStartY=this.y,this.pointX=i.pageX,this.pointY=i.pageY,this._execEvent("beforeScrollStart")}},_move:function(e){if(this.enabled&&l.eventType[e.type]===this.initiated){this.options.preventDefault&&e.preventDefault();var t,i,r,s,o=e.touches?e.touches[0]:e,a=o.pageX-this.pointX,c=o.pageY-this.pointY,u=l.getTime();if(this.pointX=o.pageX,this.pointY=o.pageY,this.distX+=a,this.distY+=c,r=n.abs(this.distX),s=n.abs(this.distY),!(u-this.endTime>300&&r<10&&s<10)){if(this.directionLocked||this.options.freeScroll||(r>s+this.options.directionLockThreshold?this.directionLocked="h":s>=r+this.options.directionLockThreshold?this.directionLocked="v":this.directionLocked="n"),"h"==this.directionLocked){if("vertical"==this.options.eventPassthrough)e.preventDefault();else if("horizontal"==this.options.eventPassthrough)return void(this.initiated=!1);c=0}else if("v"==this.directionLocked){if("horizontal"==this.options.eventPassthrough)e.preventDefault();else if("vertical"==this.options.eventPassthrough)return void(this.initiated=!1);a=0}a=this.hasHorizontalScroll?a:0,c=this.hasVerticalScroll?c:0,t=this.x+a,i=this.y+c,(t>0||t<this.maxScrollX)&&(t=this.options.bounce?this.x+a/3:t>0?0:this.maxScrollX),(i>0||i<this.maxScrollY)&&(i=this.options.bounce?this.y+c/3:i>0?0:this.maxScrollY),this.directionX=a>0?-1:a<0?1:0,this.directionY=c>0?-1:c<0?1:0,this.moved||this._execEvent("scrollStart"),this.moved=!0,this._translate(t,i),u-this.startTime>300&&(this.startTime=u,this.startX=this.x,this.startY=this.y,1==this.options.probeType&&this._execEvent("scroll")),this.options.probeType>1&&this._execEvent("scroll")}}},_end:function(e){if(this.enabled&&l.eventType[e.type]===this.initiated){this.options.preventDefault&&!l.preventDefaultException(e.target,this.options.preventDefaultException)&&e.preventDefault();var t,i,r=(e.changedTouches?e.changedTouches[0]:e,l.getTime()-this.startTime),s=n.round(this.x),o=n.round(this.y),a=n.abs(s-this.startX),c=n.abs(o-this.startY),u=0,p="";if(this.isInTransition=0,this.initiated=0,this.endTime=l.getTime(),!this.resetPosition(this.options.bounceTime)){if(this.scrollTo(s,o),!this.moved)return this.options.tap&&l.tap(e,this.options.tap),this.options.click&&l.click(e),void this._execEvent("scrollCancel");if(this._events.flick&&r<200&&a<100&&c<100)return void this._execEvent("flick");if(this.options.momentum&&r<300&&(t=this.hasHorizontalScroll?l.momentum(this.x,this.startX,r,this.maxScrollX,this.options.bounce?this.wrapperWidth:0,this.options.deceleration):{destination:s,duration:0},i=this.hasVerticalScroll?l.momentum(this.y,this.startY,r,this.maxScrollY,this.options.bounce?this.wrapperHeight:0,this.options.deceleration):{destination:o,duration:0},s=t.destination,o=i.destination,u=n.max(t.duration,i.duration),this.isInTransition=1),this.options.snap){var h=this._nearestSnap(s,o);this.currentPage=h,u=this.options.snapSpeed||n.max(n.max(n.min(n.abs(s-h.x),1e3),n.min(n.abs(o-h.y),1e3)),300),s=h.x,o=h.y,this.directionX=0,this.directionY=0,p=this.options.bounceEasing}return s!=this.x||o!=this.y?((s>0||s<this.maxScrollX||o>0||o<this.maxScrollY)&&(p=l.ease.quadratic),void this.scrollTo(s,o,u,p)):void this._execEvent("scrollEnd")}}},_resize:function(){var e=this;clearTimeout(this.resizeTimeout),this.resizeTimeout=setTimeout(function(){e.refresh()},this.options.resizePolling)},resetPosition:function(e){var t=this.x,i=this.y;return e=e||0,!this.hasHorizontalScroll||this.x>0?t=0:this.x<this.maxScrollX&&(t=this.maxScrollX),!this.hasVerticalScroll||this.y>0?i=0:this.y<this.maxScrollY&&(i=this.maxScrollY),(t!=this.x||i!=this.y)&&(this.scrollTo(t,i,e,this.options.bounceEasing),!0)},disable:function(){this.enabled=!1},enable:function(){this.enabled=!0},refresh:function(){this.wrapper.offsetHeight;this.wrapperWidth=this.wrapper.clientWidth,this.wrapperHeight=this.wrapper.clientHeight,this.scrollerWidth=this.scroller.offsetWidth,this.scrollerHeight=this.scroller.offsetHeight,this.maxScrollX=this.wrapperWidth-this.scrollerWidth,this.maxScrollY=this.wrapperHeight-this.scrollerHeight,this.hasHorizontalScroll=this.options.scrollX&&this.maxScrollX<0,this.hasVerticalScroll=this.options.scrollY&&this.maxScrollY<0,this.hasHorizontalScroll||(this.maxScrollX=0,this.scrollerWidth=this.wrapperWidth),this.hasVerticalScroll||(this.maxScrollY=0,this.scrollerHeight=this.wrapperHeight),this.endTime=0,this.directionX=0,this.directionY=0,this.wrapperOffset=l.offset(this.wrapper),this._execEvent("refresh"),this.resetPosition()},on:function(e,t){this._events[e]||(this._events[e]=[]),this._events[e].push(t)},off:function(e,t){if(this._events[e]){var i=this._events[e].indexOf(t);i>-1&&this._events[e].splice(i,1)}},_execEvent:function(e){if(this._events[e]){var t=0,i=this._events[e].length;if(i)for(;t<i;t++)this._events[e][t].apply(this,[].slice.call(arguments,1))}},scrollBy:function(e,t,i,n){e=this.x+e,t=this.y+t,i=i||0,this.scrollTo(e,t,i,n)},scrollTo:function(e,t,i,n){n=n||l.ease.circular,this.isInTransition=this.options.useTransition&&i>0,!i||this.options.useTransition&&n.style?(this._transitionTimingFunction(n.style),this._transitionTime(i),this._translate(e,t)):this._animate(e,t,i,n.fn)},scrollToElement:function(e,t,i,r,s){if(e=e.nodeType?e:this.scroller.querySelector(e)){var o=l.offset(e);o.left-=this.wrapperOffset.left,o.top-=this.wrapperOffset.top,i===!0&&(i=n.round(e.offsetWidth/2-this.wrapper.offsetWidth/2)),r===!0&&(r=n.round(e.offsetHeight/2-this.wrapper.offsetHeight/2)),o.left-=i||0,o.top-=r||0,o.left=o.left>0?0:o.left<this.maxScrollX?this.maxScrollX:o.left,o.top=o.top>0?0:o.top<this.maxScrollY?this.maxScrollY:o.top,t=void 0===t||null===t||"auto"===t?n.max(n.abs(this.x-o.left),n.abs(this.y-o.top)):t,this.scrollTo(o.left,o.top,t,s)}},_transitionTime:function(e){if(e=e||0,this.scrollerStyle[l.style.transitionDuration]=e+"ms",!e&&l.isBadAndroid&&(this.scrollerStyle[l.style.transitionDuration]="0.001s"),this.indicators)for(var t=this.indicators.length;t--;)this.indicators[t].transitionTime(e)},_transitionTimingFunction:function(e){if(this.scrollerStyle[l.style.transitionTimingFunction]=e,this.indicators)for(var t=this.indicators.length;t--;)this.indicators[t].transitionTimingFunction(e)},_translate:function(e,t){if(this.options.useTransform?this.scrollerStyle[l.style.transform]="translate("+e+"px,"+t+"px)"+this.translateZ:(e=n.round(e),t=n.round(t),this.scrollerStyle.left=e+"px",this.scrollerStyle.top=t+"px"),this.x=e,this.y=t,this.indicators)for(var i=this.indicators.length;i--;)this.indicators[i].updatePosition()},_initEvents:function(t){var i=t?l.removeEvent:l.addEvent,n=this.options.bindToWrapper?this.wrapper:e;i(e,"orientationchange",this),i(e,"resize",this),this.options.click&&i(this.wrapper,"click",this,!0),this.options.disableMouse||(i(this.wrapper,"mousedown",this),i(n,"mousemove",this),i(n,"mousecancel",this),i(n,"mouseup",this)),l.hasPointer&&!this.options.disablePointer&&(i(this.wrapper,l.prefixPointerEvent("pointerdown"),this),i(n,l.prefixPointerEvent("pointermove"),this),i(n,l.prefixPointerEvent("pointercancel"),this),i(n,l.prefixPointerEvent("pointerup"),this)),l.hasTouch&&!this.options.disableTouch&&(i(this.wrapper,"touchstart",this),i(n,"touchmove",this),i(n,"touchcancel",this),i(n,"touchend",this)),i(this.scroller,"transitionend",this),i(this.scroller,"webkitTransitionEnd",this),i(this.scroller,"oTransitionEnd",this),i(this.scroller,"MSTransitionEnd",this)},getComputedPosition:function(){var t,i,n=e.getComputedStyle(this.scroller,null);return this.options.useTransform?(n=n[l.style.transform].split(")")[0].split(", "),t=+(n[12]||n[4]),i=+(n[13]||n[5])):(t=+n.left.replace(/[^-\d.]/g,""),i=+n.top.replace(/[^-\d.]/g,"")),{x:t,y:i}},_initIndicators:function(){function e(e){for(var t=a.indicators.length;t--;)e.call(a.indicators[t])}var t,i=this.options.interactiveScrollbars,n="string"!=typeof this.options.scrollbars,r=[],a=this;this.indicators=[],this.options.scrollbars&&(this.options.scrollY&&(t={el:s("v",i,this.options.scrollbars),interactive:i,defaultScrollbars:!0,customStyle:n,resize:this.options.resizeScrollbars,shrink:this.options.shrinkScrollbars,fade:this.options.fadeScrollbars,listenX:!1},this.wrapper.appendChild(t.el),r.push(t)),this.options.scrollX&&(t={el:s("h",i,this.options.scrollbars),interactive:i,defaultScrollbars:!0,customStyle:n,resize:this.options.resizeScrollbars,shrink:this.options.shrinkScrollbars,fade:this.options.fadeScrollbars,listenY:!1},this.wrapper.appendChild(t.el),r.push(t))),this.options.indicators&&(r=r.concat(this.options.indicators));for(var l=r.length;l--;)this.indicators.push(new o(this,r[l]));this.options.fadeScrollbars&&(this.on("scrollEnd",function(){e(function(){this.fade()})}),this.on("scrollCancel",function(){e(function(){this.fade()})}),this.on("scrollStart",function(){e(function(){this.fade(1)})}),this.on("beforeScrollStart",function(){e(function(){this.fade(1,!0)})})),this.on("refresh",function(){e(function(){this.refresh()})}),this.on("destroy",function(){e(function(){this.destroy()}),delete this.indicators})},_initWheel:function(){l.addEvent(this.wrapper,"wheel",this),l.addEvent(this.wrapper,"mousewheel",this),l.addEvent(this.wrapper,"DOMMouseScroll",this),this.on("destroy",function(){l.removeEvent(this.wrapper,"wheel",this),l.removeEvent(this.wrapper,"mousewheel",this),l.removeEvent(this.wrapper,"DOMMouseScroll",this)})},_wheel:function(e){if(this.enabled){e.preventDefault(),e.stopPropagation();var t,i,r,s,o=this;if(void 0===this.wheelTimeout&&o._execEvent("scrollStart"),clearTimeout(this.wheelTimeout),this.wheelTimeout=setTimeout(function(){o._execEvent("scrollEnd"),o.wheelTimeout=void 0},400),"deltaX"in e)t=-e.deltaX,i=-e.deltaY;else if("wheelDeltaX"in e)t=e.wheelDeltaX/120*this.options.mouseWheelSpeed,i=e.wheelDeltaY/120*this.options.mouseWheelSpeed;else if("wheelDelta"in e)t=i=e.wheelDelta/120*this.options.mouseWheelSpeed;else{if(!("detail"in e))return;t=i=-e.detail/3*this.options.mouseWheelSpeed}if(t*=this.options.invertWheelDirection,i*=this.options.invertWheelDirection,this.hasVerticalScroll||(t=i,i=0),this.options.snap)return r=this.currentPage.pageX,s=this.currentPage.pageY,t>0?r--:t<0&&r++,i>0?s--:i<0&&s++,void this.goToPage(r,s);r=this.x+n.round(this.hasHorizontalScroll?t:0),s=this.y+n.round(this.hasVerticalScroll?i:0),r>0?r=0:r<this.maxScrollX&&(r=this.maxScrollX),s>0?s=0:s<this.maxScrollY&&(s=this.maxScrollY),this.scrollTo(r,s,0),this.options.probeType>1&&this._execEvent("scroll")}},_initSnap:function(){this.currentPage={},"string"==typeof this.options.snap&&(this.options.snap=this.scroller.querySelectorAll(this.options.snap)),this.on("refresh",function(){var e,t,i,r,s,o,a=0,l=0,c=0,u=this.options.snapStepX||this.wrapperWidth,p=this.options.snapStepY||this.wrapperHeight;if(this.pages=[],this.wrapperWidth&&this.wrapperHeight&&this.scrollerWidth&&this.scrollerHeight){if(this.options.snap===!0)for(i=n.round(u/2),r=n.round(p/2);c>-this.scrollerWidth;){for(this.pages[a]=[],e=0,s=0;s>-this.scrollerHeight;)this.pages[a][e]={x:n.max(c,this.maxScrollX),y:n.max(s,this.maxScrollY),width:u,height:p,cx:c-i,cy:s-r},s-=p,e++;c-=u,a++}else for(o=this.options.snap,e=o.length,t=-1;a<e;a++)(0===a||o[a].offsetLeft<=o[a-1].offsetLeft)&&(l=0,t++),this.pages[l]||(this.pages[l]=[]),c=n.max(-o[a].offsetLeft,this.maxScrollX),s=n.max(-o[a].offsetTop,this.maxScrollY),i=c-n.round(o[a].offsetWidth/2),r=s-n.round(o[a].offsetHeight/2),this.pages[l][t]={x:c,y:s,width:o[a].offsetWidth,height:o[a].offsetHeight,cx:i,cy:r},c>this.maxScrollX&&l++;this.goToPage(this.currentPage.pageX||0,this.currentPage.pageY||0,0),this.options.snapThreshold%1===0?(this.snapThresholdX=this.options.snapThreshold,this.snapThresholdY=this.options.snapThreshold):(this.snapThresholdX=n.round(this.pages[this.currentPage.pageX][this.currentPage.pageY].width*this.options.snapThreshold),this.snapThresholdY=n.round(this.pages[this.currentPage.pageX][this.currentPage.pageY].height*this.options.snapThreshold))}}),this.on("flick",function(){var e=this.options.snapSpeed||n.max(n.max(n.min(n.abs(this.x-this.startX),1e3),n.min(n.abs(this.y-this.startY),1e3)),300);this.goToPage(this.currentPage.pageX+this.directionX,this.currentPage.pageY+this.directionY,e)})},_nearestSnap:function(e,t){if(!this.pages.length)return{x:0,y:0,pageX:0,pageY:0};var i=0,r=this.pages.length,s=0;if(n.abs(e-this.absStartX)<this.snapThresholdX&&n.abs(t-this.absStartY)<this.snapThresholdY)return this.currentPage;for(e>0?e=0:e<this.maxScrollX&&(e=this.maxScrollX),t>0?t=0:t<this.maxScrollY&&(t=this.maxScrollY);i<r;i++)if(e>=this.pages[i][0].cx){e=this.pages[i][0].x;break}for(r=this.pages[i].length;s<r;s++)if(t>=this.pages[0][s].cy){t=this.pages[0][s].y;break}return i==this.currentPage.pageX&&(i+=this.directionX,i<0?i=0:i>=this.pages.length&&(i=this.pages.length-1),e=this.pages[i][0].x),s==this.currentPage.pageY&&(s+=this.directionY,s<0?s=0:s>=this.pages[0].length&&(s=this.pages[0].length-1),t=this.pages[0][s].y),{x:e,y:t,pageX:i,pageY:s}},goToPage:function(e,t,i,r){r=r||this.options.bounceEasing,e>=this.pages.length?e=this.pages.length-1:e<0&&(e=0),t>=this.pages[e].length?t=this.pages[e].length-1:t<0&&(t=0);var s=this.pages[e][t].x,o=this.pages[e][t].y;i=void 0===i?this.options.snapSpeed||n.max(n.max(n.min(n.abs(s-this.x),1e3),n.min(n.abs(o-this.y),1e3)),300):i,this.currentPage={x:s,y:o,pageX:e,pageY:t},this.scrollTo(s,o,i,r)},next:function(e,t){var i=this.currentPage.pageX,n=this.currentPage.pageY;i++,i>=this.pages.length&&this.hasVerticalScroll&&(i=0,n++),this.goToPage(i,n,e,t)},prev:function(e,t){var i=this.currentPage.pageX,n=this.currentPage.pageY;i--,i<0&&this.hasVerticalScroll&&(i=0,n--),this.goToPage(i,n,e,t)},_initKeys:function(t){var i,n={pageUp:33,pageDown:34,end:35,home:36,left:37,up:38,right:39,down:40};if("object"==typeof this.options.keyBindings)for(i in this.options.keyBindings)"string"==typeof this.options.keyBindings[i]&&(this.options.keyBindings[i]=this.options.keyBindings[i].toUpperCase().charCodeAt(0));else this.options.keyBindings={};for(i in n)this.options.keyBindings[i]=this.options.keyBindings[i]||n[i];l.addEvent(e,"keydown",this),this.on("destroy",function(){l.removeEvent(e,"keydown",this)})},_key:function(e){if(this.enabled){var t,i=this.options.snap,r=i?this.currentPage.pageX:this.x,s=i?this.currentPage.pageY:this.y,o=l.getTime(),a=this.keyTime||0,c=.25;switch(this.options.useTransition&&this.isInTransition&&(t=this.getComputedPosition(),this._translate(n.round(t.x),n.round(t.y)),this.isInTransition=!1),this.keyAcceleration=o-a<200?n.min(this.keyAcceleration+c,50):0,e.keyCode){case this.options.keyBindings.pageUp:this.hasHorizontalScroll&&!this.hasVerticalScroll?r+=i?1:this.wrapperWidth:s+=i?1:this.wrapperHeight;break;case this.options.keyBindings.pageDown:this.hasHorizontalScroll&&!this.hasVerticalScroll?r-=i?1:this.wrapperWidth:s-=i?1:this.wrapperHeight;break;case this.options.keyBindings.end:r=i?this.pages.length-1:this.maxScrollX,s=i?this.pages[0].length-1:this.maxScrollY;break;case this.options.keyBindings.home:r=0,s=0;break;case this.options.keyBindings.left:r+=i?-1:5+this.keyAcceleration>>0;break;case this.options.keyBindings.up:s+=i?1:5+this.keyAcceleration>>0;break;case this.options.keyBindings.right:r-=i?-1:5+this.keyAcceleration>>0;break;case this.options.keyBindings.down:s-=i?1:5+this.keyAcceleration>>0;break;default:return}if(i)return void this.goToPage(r,s);r>0?(r=0,this.keyAcceleration=0):r<this.maxScrollX&&(r=this.maxScrollX,this.keyAcceleration=0),s>0?(s=0,this.keyAcceleration=0):s<this.maxScrollY&&(s=this.maxScrollY,this.keyAcceleration=0),this.scrollTo(r,s,0),this.keyTime=o}},_animate:function(e,t,i,n){function r(){var h,d,f,m=l.getTime();return m>=p?(s.isAnimating=!1,s._translate(e,t),void(s.resetPosition(s.options.bounceTime)||s._execEvent("scrollEnd"))):(m=(m-u)/i,f=n(m),h=(e-o)*f+o,d=(t-c)*f+c,s._translate(h,d),s.isAnimating&&a(r),void(3==s.options.probeType&&s._execEvent("scroll")))}var s=this,o=this.x,c=this.y,u=l.getTime(),p=u+i;this.isAnimating=!0,r()},handleEvent:function(e){switch(e.type){case"touchstart":case"pointerdown":case"MSPointerDown":case"mousedown":this._start(e);break;case"touchmove":case"pointermove":case"MSPointerMove":case"mousemove":this._move(e);break;case"touchend":case"pointerup":case"MSPointerUp":case"mouseup":case"touchcancel":case"pointercancel":case"MSPointerCancel":case"mousecancel":this._end(e);break;case"orientationchange":case"resize":this._resize();break;case"transitionend":case"webkitTransitionEnd":case"oTransitionEnd":case"MSTransitionEnd":this._transitionEnd(e);break;case"wheel":case"DOMMouseScroll":case"mousewheel":this._wheel(e);break;case"keydown":this._key(e);break;case"click":e._constructed||(e.preventDefault(),e.stopPropagation())}}},o.prototype={handleEvent:function(e){switch(e.type){case"touchstart":case"pointerdown":case"MSPointerDown":case"mousedown":this._start(e);break;case"touchmove":case"pointermove":case"MSPointerMove":case"mousemove":this._move(e);break;case"touchend":case"pointerup":case"MSPointerUp":case"mouseup":case"touchcancel":case"pointercancel":case"MSPointerCancel":case"mousecancel":this._end(e)}},destroy:function(){this.options.interactive&&(l.removeEvent(this.indicator,"touchstart",this),l.removeEvent(this.indicator,l.prefixPointerEvent("pointerdown"),this),l.removeEvent(this.indicator,"mousedown",this),l.removeEvent(e,"touchmove",this),l.removeEvent(e,l.prefixPointerEvent("pointermove"),this),l.removeEvent(e,"mousemove",this),l.removeEvent(e,"touchend",this),l.removeEvent(e,l.prefixPointerEvent("pointerup"),this),l.removeEvent(e,"mouseup",this)),this.options.defaultScrollbars&&this.wrapper.parentNode.removeChild(this.wrapper)},_start:function(t){var i=t.touches?t.touches[0]:t;t.preventDefault(),t.stopPropagation(),this.transitionTime(),this.initiated=!0,this.moved=!1,this.lastPointX=i.pageX,this.lastPointY=i.pageY,this.startTime=l.getTime(),this.options.disableTouch||l.addEvent(e,"touchmove",this),this.options.disablePointer||l.addEvent(e,l.prefixPointerEvent("pointermove"),this),this.options.disableMouse||l.addEvent(e,"mousemove",this),this.scroller._execEvent("beforeScrollStart")},_move:function(e){var t,i,n,r,s=e.touches?e.touches[0]:e,o=l.getTime();this.moved||this.scroller._execEvent("scrollStart"),this.moved=!0,t=s.pageX-this.lastPointX,this.lastPointX=s.pageX,i=s.pageY-this.lastPointY,this.lastPointY=s.pageY,n=this.x+t,r=this.y+i,this._pos(n,r),1==this.scroller.options.probeType&&o-this.startTime>300?(this.startTime=o,this.scroller._execEvent("scroll")):this.scroller.options.probeType>1&&this.scroller._execEvent("scroll"),e.preventDefault(),e.stopPropagation()},_end:function(t){if(this.initiated){if(this.initiated=!1,t.preventDefault(),t.stopPropagation(),l.removeEvent(e,"touchmove",this),l.removeEvent(e,l.prefixPointerEvent("pointermove"),this),l.removeEvent(e,"mousemove",this),this.scroller.options.snap){var i=this.scroller._nearestSnap(this.scroller.x,this.scroller.y),r=this.options.snapSpeed||n.max(n.max(n.min(n.abs(this.scroller.x-i.x),1e3),n.min(n.abs(this.scroller.y-i.y),1e3)),300);this.scroller.x==i.x&&this.scroller.y==i.y||(this.scroller.directionX=0,this.scroller.directionY=0,this.scroller.currentPage=i,this.scroller.scrollTo(i.x,i.y,r,this.scroller.options.bounceEasing))}this.moved&&this.scroller._execEvent("scrollEnd")}},transitionTime:function(e){e=e||0,this.indicatorStyle[l.style.transitionDuration]=e+"ms",!e&&l.isBadAndroid&&(this.indicatorStyle[l.style.transitionDuration]="0.001s")},transitionTimingFunction:function(e){this.indicatorStyle[l.style.transitionTimingFunction]=e},refresh:function(){this.transitionTime(),this.options.listenX&&!this.options.listenY?this.indicatorStyle.display=this.scroller.hasHorizontalScroll?"block":"none":this.options.listenY&&!this.options.listenX?this.indicatorStyle.display=this.scroller.hasVerticalScroll?"block":"none":this.indicatorStyle.display=this.scroller.hasHorizontalScroll||this.scroller.hasVerticalScroll?"block":"none",this.scroller.hasHorizontalScroll&&this.scroller.hasVerticalScroll?(l.addClass(this.wrapper,"iScrollBothScrollbars"),l.removeClass(this.wrapper,"iScrollLoneScrollbar"),this.options.defaultScrollbars&&this.options.customStyle&&(this.options.listenX?this.wrapper.style.right="8px":this.wrapper.style.bottom="8px")):(l.removeClass(this.wrapper,"iScrollBothScrollbars"),l.addClass(this.wrapper,"iScrollLoneScrollbar"),this.options.defaultScrollbars&&this.options.customStyle&&(this.options.listenX?this.wrapper.style.right="2px":this.wrapper.style.bottom="2px"));this.wrapper.offsetHeight;this.options.listenX&&(this.wrapperWidth=this.wrapper.clientWidth,this.options.resize?(this.indicatorWidth=n.max(n.round(this.wrapperWidth*this.wrapperWidth/(this.scroller.scrollerWidth||this.wrapperWidth||1)),8),this.indicatorStyle.width=this.indicatorWidth+"px"):this.indicatorWidth=this.indicator.clientWidth,this.maxPosX=this.wrapperWidth-this.indicatorWidth,"clip"==this.options.shrink?(this.minBoundaryX=-this.indicatorWidth+8,this.maxBoundaryX=this.wrapperWidth-8):(this.minBoundaryX=0,this.maxBoundaryX=this.maxPosX),this.sizeRatioX=this.options.speedRatioX||this.scroller.maxScrollX&&this.maxPosX/this.scroller.maxScrollX),this.options.listenY&&(this.wrapperHeight=this.wrapper.clientHeight,this.options.resize?(this.indicatorHeight=n.max(n.round(this.wrapperHeight*this.wrapperHeight/(this.scroller.scrollerHeight||this.wrapperHeight||1)),8),this.indicatorStyle.height=this.indicatorHeight+"px"):this.indicatorHeight=this.indicator.clientHeight,this.maxPosY=this.wrapperHeight-this.indicatorHeight,"clip"==this.options.shrink?(this.minBoundaryY=-this.indicatorHeight+8,this.maxBoundaryY=this.wrapperHeight-8):(this.minBoundaryY=0,this.maxBoundaryY=this.maxPosY),this.maxPosY=this.wrapperHeight-this.indicatorHeight,this.sizeRatioY=this.options.speedRatioY||this.scroller.maxScrollY&&this.maxPosY/this.scroller.maxScrollY),this.updatePosition()},updatePosition:function(){var e=this.options.listenX&&n.round(this.sizeRatioX*this.scroller.x)||0,t=this.options.listenY&&n.round(this.sizeRatioY*this.scroller.y)||0;this.options.ignoreBoundaries||(e<this.minBoundaryX?("scale"==this.options.shrink&&(this.width=n.max(this.indicatorWidth+e,8),this.indicatorStyle.width=this.width+"px"),e=this.minBoundaryX):e>this.maxBoundaryX?"scale"==this.options.shrink?(this.width=n.max(this.indicatorWidth-(e-this.maxPosX),8),this.indicatorStyle.width=this.width+"px",e=this.maxPosX+this.indicatorWidth-this.width):e=this.maxBoundaryX:"scale"==this.options.shrink&&this.width!=this.indicatorWidth&&(this.width=this.indicatorWidth,this.indicatorStyle.width=this.width+"px"),t<this.minBoundaryY?("scale"==this.options.shrink&&(this.height=n.max(this.indicatorHeight+3*t,8),this.indicatorStyle.height=this.height+"px"),t=this.minBoundaryY):t>this.maxBoundaryY?"scale"==this.options.shrink?(this.height=n.max(this.indicatorHeight-3*(t-this.maxPosY),8),this.indicatorStyle.height=this.height+"px",t=this.maxPosY+this.indicatorHeight-this.height):t=this.maxBoundaryY:"scale"==this.options.shrink&&this.height!=this.indicatorHeight&&(this.height=this.indicatorHeight,this.indicatorStyle.height=this.height+"px")),this.x=e,this.y=t,this.scroller.options.useTransform?this.indicatorStyle[l.style.transform]="translate("+e+"px,"+t+"px)"+this.scroller.translateZ:(this.indicatorStyle.left=e+"px",this.indicatorStyle.top=t+"px")},_pos:function(e,t){e<0?e=0:e>this.maxPosX&&(e=this.maxPosX),t<0?t=0:t>this.maxPosY&&(t=this.maxPosY),e=this.options.listenX?n.round(e/this.sizeRatioX):this.scroller.x,t=this.options.listenY?n.round(t/this.sizeRatioY):this.scroller.y,this.scroller.scrollTo(e,t)},fade:function(e,t){ -if(!t||this.visible){clearTimeout(this.fadeTimeout),this.fadeTimeout=null;var i=e?250:500,n=e?0:300;e=e?"1":"0",this.wrapperStyle[l.style.transitionDuration]=i+"ms",this.fadeTimeout=setTimeout(function(e){this.wrapperStyle.opacity=e,this.visible=+e}.bind(this,e),n)}}},r.utils=l,"undefined"!=typeof i&&i.exports?i.exports=r:e.IScroll=r}(window,document,Math)}),define("index",[],function(e,t,i){function n(e,t){if(!t||(t=t.replace(s,"-"),!o.getElementById(t))){var i;if(!r||t?(i=o.createElement("style"),t&&(i.id=t),a.appendChild(i)):i=r,i.styleSheet){if(o.getElementsByTagName("style").length>31)throw new Error("Exceed the maximal count of style tags in IE");i.styleSheet.cssText+=e}else i.appendChild(o.createTextNode(e));t||(r=i)}}var r,s=/\W/g,o=document,a=document.getElementsByTagName("head")[0]||document.documentElement;i.exports=n}),define("lazyload",[],function(e,t,i){var n=e("jquery");e("lib/jquery.lazyload"),i.exports=function(e,t){var i,r={effect:"fadeIn",effect_speed:10,placeholder:"data:image/gif;base64,R0lGODlhAQABAJEAAAAAAP///93d3f///yH5BAEAAAMALAAAAAABAAEAAAICVAEAOw==",skip_invisible:!1},s=arguments.length;!function(){switch(s){case 0:i=n("img.lazy");break;case 1:e instanceof n?i=e:(i=n("img.lazy"),n.extend(r,e));break;case 2:i=e,r=n.extend(r,t)}}(),i.lazyload(r)}}),define("lib/jquery.lazyload",[],function(e,t,i){var n=e("jquery");!function(e,t,i,n){var r=e(t);e.fn.lazyload=function(s){function o(){var t=0;l.each(function(){var i=e(this);if(!c.skip_invisible||i.is(":visible"))if(e.abovethetop(this,c)||e.leftofbegin(this,c));else if(e.belowthefold(this,c)||e.rightoffold(this,c)){if(++t>c.failure_limit)return!1}else i.trigger("appear"),t=0})}var a,l=this,c={threshold:0,failure_limit:0,event:"scroll",effect:"show",container:t,data_attribute:"original",skip_invisible:!0,appear:null,load:null,yasPath:"/web/",yasImgDomain:"http://analytics.yhurl.com/yas.gif",placeholder:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC",try_again_css:null};return s&&(n!==s.failurelimit&&(s.failure_limit=s.failurelimit,delete s.failurelimit),n!==s.effectspeed&&(s.effect_speed=s.effectspeed,delete s.effectspeed),e.extend(c,s)),a=c.container===n||c.container===t?r:e(c.container),0===c.event.indexOf("scroll")&&a.bind(c.event,function(){return o()}),this.each(function(){var t=this,i=e(t);t.loaded=!1,i.attr("src")!==n&&i.attr("src")!==!1&&""!==i.attr("src")||i.is("img")&&i.attr("src",c.placeholder),i.one("appear",function(){if(i.timerid&&clearTimeout(i.timerid),!this.loaded){if(c.appear){var n=l.length;c.appear.call(t,n,c)}e("<img />").bind("error abort",function(){i.attr("src",c.placeholder),s({info:"error"})}).bind("load",function(){if(!i.loadtimeout){clearTimeout(i.timerid),i.attr("pfmrpt");var n=i.attr("data-"+c.data_attribute);i.hide(),i.is("img")?i.attr("src",n):i.css("background-image","url('"+n+"')"),i[c.effect](c.effect_speed),t.loaded=!0;var r=e.grep(l,function(e){return!e.loaded});if(l=e(r),c.load){var s=l.length;c.load.call(t,s,c)}}}).attr("src",i.attr("data-"+c.data_attribute)),i.src=i.attr("data-"+c.data_attribute),i.attr("pfmrpt")&&_yas&&_yas.add;var r=function(e){i.loadtimeout=!0,i.attr("pfmrpt")&&_yas&&_yas.add&&e.info,i.attr("src",""),setTimeout(function(){i.attr("src",i.src)},50)},s=function(t){i.loadtimeout=!0,i.attr("pfmrpt")&&_yas&&_yas.add&&t.info;var n=i.width(),s=i.height();if(c.try_again_css)var o=e("<div class="+c.try_again_css+" style='width:"+n+"px;height:"+s+"px;'></div>");else var o=e("<div style='background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC) ;text-align: center;position:relative;width:"+n+"px;height:"+s+"px;background-size:100%;'>加载失败</div>");o.addClass(i.attr("class")),i.replaceWith(o),i.timerid=setTimeout(r,5e3)}}}),0!==c.event.indexOf("scroll")&&i.bind(c.event,function(){t.loaded||i.trigger("appear")})}),r.bind("resize",function(){o()}),/(?:iphone|ipod|ipad).*os 5/gi.test(navigator.appVersion)&&r.bind("pageshow",function(t){t.originalEvent&&t.originalEvent.persisted&&l.each(function(){e(this).trigger("appear")})}),e(i).ready(function(){o()}),this},e.belowthefold=function(i,s){var o;return o=s.container===n||s.container===t?(t.innerHeight?t.innerHeight:r.height())+r.scrollTop():e(s.container).offset().top+e(s.container).height(),o<=e(i).offset().top-s.threshold},e.rightoffold=function(i,s){var o;return o=s.container===n||s.container===t?r.width()+r.scrollLeft():e(s.container).offset().left+e(s.container).width(),o<=e(i).offset().left-s.threshold},e.abovethetop=function(i,s){var o;return o=s.container===n||s.container===t?r.scrollTop():e(s.container).offset().top,o>=e(i).offset().top+s.threshold+e(i).height()},e.leftofbegin=function(i,s){var o;return o=s.container===n||s.container===t?r.scrollLeft():e(s.container).offset().left,o>=e(i).offset().left+s.threshold+e(i).width()},e.inviewport=function(t,i){return!(e.rightoffold(t,i)||e.leftofbegin(t,i)||e.belowthefold(t,i)||e.abovethetop(t,i))}}(n,window,document)}),define("handlebars",[],function(e,t,i){!function(e,n){"object"==typeof t&&"object"==typeof i?i.exports=n():"function"==typeof define&&define.amd?define(n):"object"==typeof t?t.Handlebars=n():e.Handlebars=n()}(this,function(){return function(e){function t(n){if(i[n])return i[n].exports;var r=i[n]={exports:{},id:n,loaded:!1};return e[n].call(r.exports,r,r.exports,t),r.loaded=!0,r.exports}var i={};return t.m=e,t.c=i,t.p="",t(0)}([function(e,t,i){"use strict";function n(){var e=v();return e.compile=function(t,i){return u.compile(t,i,e)},e.precompile=function(t,i){return u.precompile(t,i,e)},e.AST=l["default"],e.Compiler=u.Compiler,e.JavaScriptCompiler=h["default"],e.Parser=c.parser,e.parse=c.parse,e}var r=i(8)["default"];t.__esModule=!0;var s=i(1),o=r(s),a=i(2),l=r(a),c=i(3),u=i(4),p=i(5),h=r(p),d=i(6),f=r(d),m=i(7),g=r(m),v=o["default"].create,y=n();y.create=n,g["default"](y),y.Visitor=f["default"],y["default"]=y,t["default"]=y,e.exports=t["default"]},function(e,t,i){"use strict";function n(){var e=new a.HandlebarsEnvironment;return d.extend(e,a),e.SafeString=c["default"],e.Exception=p["default"],e.Utils=d,e.escapeExpression=d.escapeExpression,e.VM=m,e.template=function(t){return m.template(t,e)},e}var r=i(9)["default"],s=i(8)["default"];t.__esModule=!0;var o=i(10),a=r(o),l=i(11),c=s(l),u=i(12),p=s(u),h=i(13),d=r(h),f=i(14),m=r(f),g=i(7),v=s(g),y=n();y.create=n,v["default"](y),y["default"]=y,t["default"]=y,e.exports=t["default"]},function(e,t,i){"use strict";t.__esModule=!0;var n={Program:function(e,t,i,n){this.loc=n,this.type="Program",this.body=e,this.blockParams=t,this.strip=i},MustacheStatement:function(e,t,i,n,r,s){this.loc=s,this.type="MustacheStatement",this.path=e,this.params=t||[],this.hash=i,this.escaped=n,this.strip=r},BlockStatement:function(e,t,i,n,r,s,o,a,l){this.loc=l,this.type="BlockStatement",this.path=e,this.params=t||[],this.hash=i,this.program=n,this.inverse=r,this.openStrip=s,this.inverseStrip=o,this.closeStrip=a},PartialStatement:function(e,t,i,n,r){this.loc=r,this.type="PartialStatement",this.name=e,this.params=t||[],this.hash=i,this.indent="",this.strip=n},ContentStatement:function(e,t){this.loc=t,this.type="ContentStatement",this.original=this.value=e},CommentStatement:function(e,t,i){this.loc=i,this.type="CommentStatement",this.value=e,this.strip=t},SubExpression:function(e,t,i,n){this.loc=n,this.type="SubExpression",this.path=e,this.params=t||[],this.hash=i},PathExpression:function(e,t,i,n,r){this.loc=r,this.type="PathExpression",this.data=e,this.original=n,this.parts=i,this.depth=t},StringLiteral:function(e,t){this.loc=t,this.type="StringLiteral",this.original=this.value=e},NumberLiteral:function(e,t){this.loc=t,this.type="NumberLiteral",this.original=this.value=Number(e)},BooleanLiteral:function(e,t){this.loc=t,this.type="BooleanLiteral",this.original=this.value="true"===e},UndefinedLiteral:function(e){this.loc=e,this.type="UndefinedLiteral",this.original=this.value=void 0},NullLiteral:function(e){this.loc=e,this.type="NullLiteral",this.original=this.value=null},Hash:function(e,t){this.loc=t,this.type="Hash",this.pairs=e},HashPair:function(e,t,i){this.loc=i,this.type="HashPair",this.key=e,this.value=t},helpers:{helperExpression:function(e){return!("SubExpression"!==e.type&&!e.params.length&&!e.hash)},scopedId:function(e){return/^\.|this\b/.test(e.original)},simpleId:function(e){return 1===e.parts.length&&!n.helpers.scopedId(e)&&!e.depth}}};t["default"]=n,e.exports=t["default"]},function(e,t,i){"use strict";function n(e,t){if("Program"===e.type)return e;a["default"].yy=m,m.locInfo=function(e){return new m.SourceLocation(t&&t.srcName,e)};var i=new p["default"];return i.accept(a["default"].parse(e))}var r=i(8)["default"],s=i(9)["default"];t.__esModule=!0,t.parse=n;var o=i(15),a=r(o),l=i(2),c=r(l),u=i(16),p=r(u),h=i(17),d=s(h),f=i(13);t.parser=a["default"];var m={};f.extend(m,d,c["default"])},function(e,t,i){"use strict";function n(){}function r(e,t,i){if(null==e||"string"!=typeof e&&"Program"!==e.type)throw new u["default"]("You must pass a string or Handlebars AST to Handlebars.precompile. You passed "+e);t=t||{},"data"in t||(t.data=!0),t.compat&&(t.useDepths=!0);var n=i.parse(e,t),r=(new i.Compiler).compile(n,t);return(new i.JavaScriptCompiler).compile(r,t)}function s(e,t,i){function n(){var t=i.parse(e,s),n=(new i.Compiler).compile(t,s),r=(new i.JavaScriptCompiler).compile(n,s,void 0,!0);return i.template(r)}function r(e,t){return o||(o=n()),o.call(this,e,t)}var s=void 0===arguments[1]?{}:arguments[1];if(null==e||"string"!=typeof e&&"Program"!==e.type)throw new u["default"]("You must pass a string or Handlebars AST to Handlebars.compile. You passed "+e);"data"in s||(s.data=!0),s.compat&&(s.useDepths=!0);var o=void 0;return r._setup=function(e){return o||(o=n()),o._setup(e)},r._child=function(e,t,i,r){return o||(o=n()),o._child(e,t,i,r)},r}function o(e,t){if(e===t)return!0;if(p.isArray(e)&&p.isArray(t)&&e.length===t.length){for(var i=0;i<e.length;i++)if(!o(e[i],t[i]))return!1;return!0}}function a(e){if(!e.path.parts){var t=e.path;e.path=new d["default"].PathExpression((!1),0,[t.original+""],t.original+"",t.loc)}}var l=i(8)["default"];t.__esModule=!0,t.Compiler=n,t.precompile=r,t.compile=s;var c=i(12),u=l(c),p=i(13),h=i(2),d=l(h),f=[].slice;n.prototype={compiler:n,equals:function(e){var t=this.opcodes.length;if(e.opcodes.length!==t)return!1;for(var i=0;i<t;i++){var n=this.opcodes[i],r=e.opcodes[i];if(n.opcode!==r.opcode||!o(n.args,r.args))return!1}t=this.children.length;for(var i=0;i<t;i++)if(!this.children[i].equals(e.children[i]))return!1;return!0},guid:0,compile:function(e,t){this.sourceNode=[],this.opcodes=[],this.children=[],this.options=t,this.stringParams=t.stringParams,this.trackIds=t.trackIds,t.blockParams=t.blockParams||[];var i=t.knownHelpers;if(t.knownHelpers={helperMissing:!0,blockHelperMissing:!0,each:!0,"if":!0,unless:!0,"with":!0,log:!0,lookup:!0},i)for(var n in i)n in i&&(t.knownHelpers[n]=i[n]);return this.accept(e)},compileProgram:function(e){var t=new this.compiler,i=t.compile(e,this.options),n=this.guid++;return this.usePartial=this.usePartial||i.usePartial,this.children[n]=i,this.useDepths=this.useDepths||i.useDepths,n},accept:function(e){this.sourceNode.unshift(e);var t=this[e.type](e);return this.sourceNode.shift(),t},Program:function(e){this.options.blockParams.unshift(e.blockParams);for(var t=e.body,i=t.length,n=0;n<i;n++)this.accept(t[n]);return this.options.blockParams.shift(),this.isSimple=1===i,this.blockParams=e.blockParams?e.blockParams.length:0,this},BlockStatement:function(e){a(e);var t=e.program,i=e.inverse;t=t&&this.compileProgram(t),i=i&&this.compileProgram(i);var n=this.classifySexpr(e);"helper"===n?this.helperSexpr(e,t,i):"simple"===n?(this.simpleSexpr(e),this.opcode("pushProgram",t),this.opcode("pushProgram",i),this.opcode("emptyHash"),this.opcode("blockValue",e.path.original)):(this.ambiguousSexpr(e,t,i),this.opcode("pushProgram",t),this.opcode("pushProgram",i),this.opcode("emptyHash"),this.opcode("ambiguousBlockValue")),this.opcode("append")},PartialStatement:function(e){this.usePartial=!0;var t=e.params;if(t.length>1)throw new u["default"]("Unsupported number of partial arguments: "+t.length,e);t.length||t.push({type:"PathExpression",parts:[],depth:0});var i=e.name.original,n="SubExpression"===e.name.type;n&&this.accept(e.name),this.setupFullMustacheParams(e,void 0,void 0,!0);var r=e.indent||"";this.options.preventIndent&&r&&(this.opcode("appendContent",r),r=""),this.opcode("invokePartial",n,i,r),this.opcode("append")},MustacheStatement:function(e){this.SubExpression(e),e.escaped&&!this.options.noEscape?this.opcode("appendEscaped"):this.opcode("append")},ContentStatement:function(e){e.value&&this.opcode("appendContent",e.value)},CommentStatement:function(){},SubExpression:function(e){a(e);var t=this.classifySexpr(e);"simple"===t?this.simpleSexpr(e):"helper"===t?this.helperSexpr(e):this.ambiguousSexpr(e)},ambiguousSexpr:function(e,t,i){var n=e.path,r=n.parts[0],s=null!=t||null!=i;this.opcode("getContext",n.depth),this.opcode("pushProgram",t),this.opcode("pushProgram",i),this.accept(n),this.opcode("invokeAmbiguous",r,s)},simpleSexpr:function(e){this.accept(e.path),this.opcode("resolvePossibleLambda")},helperSexpr:function(e,t,i){var n=this.setupFullMustacheParams(e,t,i),r=e.path,s=r.parts[0];if(this.options.knownHelpers[s])this.opcode("invokeKnownHelper",n.length,s);else{if(this.options.knownHelpersOnly)throw new u["default"]("You specified knownHelpersOnly, but used the unknown helper "+s,e);r.falsy=!0,this.accept(r),this.opcode("invokeHelper",n.length,r.original,d["default"].helpers.simpleId(r))}},PathExpression:function(e){this.addDepth(e.depth),this.opcode("getContext",e.depth);var t=e.parts[0],i=d["default"].helpers.scopedId(e),n=!e.depth&&!i&&this.blockParamIndex(t);n?this.opcode("lookupBlockParam",n,e.parts):t?e.data?(this.options.data=!0,this.opcode("lookupData",e.depth,e.parts)):this.opcode("lookupOnContext",e.parts,e.falsy,i):this.opcode("pushContext")},StringLiteral:function(e){this.opcode("pushString",e.value)},NumberLiteral:function(e){this.opcode("pushLiteral",e.value)},BooleanLiteral:function(e){this.opcode("pushLiteral",e.value)},UndefinedLiteral:function(){this.opcode("pushLiteral","undefined")},NullLiteral:function(){this.opcode("pushLiteral","null")},Hash:function(e){var t=e.pairs,i=0,n=t.length;for(this.opcode("pushHash");i<n;i++)this.pushParam(t[i].value);for(;i--;)this.opcode("assignToHash",t[i].key);this.opcode("popHash")},opcode:function(e){this.opcodes.push({opcode:e,args:f.call(arguments,1),loc:this.sourceNode[0].loc})},addDepth:function(e){e&&(this.useDepths=!0)},classifySexpr:function(e){var t=d["default"].helpers.simpleId(e.path),i=t&&!!this.blockParamIndex(e.path.parts[0]),n=!i&&d["default"].helpers.helperExpression(e),r=!i&&(n||t);if(r&&!n){var s=e.path.parts[0],o=this.options;o.knownHelpers[s]?n=!0:o.knownHelpersOnly&&(r=!1)}return n?"helper":r?"ambiguous":"simple"},pushParams:function(e){for(var t=0,i=e.length;t<i;t++)this.pushParam(e[t])},pushParam:function(e){var t=null!=e.value?e.value:e.original||"";if(this.stringParams)t.replace&&(t=t.replace(/^(\.?\.\/)*/g,"").replace(/\//g,".")),e.depth&&this.addDepth(e.depth),this.opcode("getContext",e.depth||0),this.opcode("pushStringParam",t,e.type),"SubExpression"===e.type&&this.accept(e);else{if(this.trackIds){var i=void 0;if(!e.parts||d["default"].helpers.scopedId(e)||e.depth||(i=this.blockParamIndex(e.parts[0])),i){var n=e.parts.slice(1).join(".");this.opcode("pushId","BlockParam",i,n)}else t=e.original||t,t.replace&&(t=t.replace(/^\.\//g,"").replace(/^\.$/g,"")),this.opcode("pushId",e.type,t)}this.accept(e)}},setupFullMustacheParams:function(e,t,i,n){var r=e.params;return this.pushParams(r),this.opcode("pushProgram",t),this.opcode("pushProgram",i),e.hash?this.accept(e.hash):this.opcode("emptyHash",n),r},blockParamIndex:function(e){for(var t=0,i=this.options.blockParams.length;t<i;t++){var n=this.options.blockParams[t],r=n&&p.indexOf(n,e);if(n&&r>=0)return[t,r]}}}},function(e,t,i){"use strict";function n(e){this.value=e}function r(){}function s(e,t,i,n){var r=t.popStack(),s=0,o=i.length;for(e&&o--;s<o;s++)r=t.nameLookup(r,i[s],n);return e?[t.aliasable("this.strict"),"(",r,", ",t.quotedString(i[s]),")"]:r}var o=i(8)["default"];t.__esModule=!0;var a=i(10),l=i(12),c=o(l),u=i(13),p=i(18),h=o(p);r.prototype={nameLookup:function(e,t){return r.isValidJavaScriptVariableName(t)?[e,".",t]:[e,"['",t,"']"]},depthedLookup:function(e){return[this.aliasable("this.lookup"),'(depths, "',e,'")']},compilerInfo:function(){var e=a.COMPILER_REVISION,t=a.REVISION_CHANGES[e];return[e,t]},appendToBuffer:function(e,t,i){return u.isArray(e)||(e=[e]),e=this.source.wrap(e,t),this.environment.isSimple?["return ",e,";"]:i?["buffer += ",e,";"]:(e.appendToBuffer=!0,e)},initializeBuffer:function(){return this.quotedString("")},compile:function(e,t,i,n){this.environment=e,this.options=t,this.stringParams=this.options.stringParams,this.trackIds=this.options.trackIds,this.precompile=!n,this.name=this.environment.name,this.isChild=!!i,this.context=i||{programs:[],environments:[]},this.preamble(),this.stackSlot=0,this.stackVars=[],this.aliases={},this.registers={list:[]},this.hashes=[],this.compileStack=[],this.inlineStack=[],this.blockParams=[],this.compileChildren(e,t),this.useDepths=this.useDepths||e.useDepths||this.options.compat,this.useBlockParams=this.useBlockParams||e.useBlockParams;var r=e.opcodes,s=void 0,o=void 0,a=void 0,l=void 0;for(a=0,l=r.length;a<l;a++)s=r[a],this.source.currentLocation=s.loc,o=o||s.loc,this[s.opcode].apply(this,s.args);if(this.source.currentLocation=o,this.pushSource(""),this.stackSlot||this.inlineStack.length||this.compileStack.length)throw new c["default"]("Compile completed with content left on stack");var u=this.createFunctionContext(n);if(this.isChild)return u;var p={compiler:this.compilerInfo(),main:u},h=this.context.programs;for(a=0,l=h.length;a<l;a++)h[a]&&(p[a]=h[a]);return this.environment.usePartial&&(p.usePartial=!0),this.options.data&&(p.useData=!0),this.useDepths&&(p.useDepths=!0),this.useBlockParams&&(p.useBlockParams=!0),this.options.compat&&(p.compat=!0),n?p.compilerOptions=this.options:(p.compiler=JSON.stringify(p.compiler),this.source.currentLocation={start:{line:1,column:0}},p=this.objectLiteral(p),t.srcName?(p=p.toStringWithSourceMap({file:t.destName}),p.map=p.map&&p.map.toString()):p=p.toString()),p},preamble:function(){this.lastContext=0,this.source=new h["default"](this.options.srcName)},createFunctionContext:function(e){var t="",i=this.stackVars.concat(this.registers.list);i.length>0&&(t+=", "+i.join(", "));var n=0;for(var r in this.aliases){var s=this.aliases[r];this.aliases.hasOwnProperty(r)&&s.children&&s.referenceCount>1&&(t+=", alias"+ ++n+"="+r,s.children[0]="alias"+n)}var o=["depth0","helpers","partials","data"];(this.useBlockParams||this.useDepths)&&o.push("blockParams"),this.useDepths&&o.push("depths");var a=this.mergeSource(t);return e?(o.push(a),Function.apply(this,o)):this.source.wrap(["function(",o.join(","),") {\n ",a,"}"])},mergeSource:function(e){var t=this.environment.isSimple,i=!this.forceBuffer,n=void 0,r=void 0,s=void 0,o=void 0;return this.source.each(function(e){e.appendToBuffer?(s?e.prepend(" + "):s=e,o=e):(s&&(r?s.prepend("buffer += "):n=!0,o.add(";"),s=o=void 0),r=!0,t||(i=!1))}),i?s?(s.prepend("return "),o.add(";")):r||this.source.push('return "";'):(e+=", buffer = "+(n?"":this.initializeBuffer()),s?(s.prepend("return buffer + "),o.add(";")):this.source.push("return buffer;")),e&&this.source.prepend("var "+e.substring(2)+(n?"":";\n")),this.source.merge()},blockValue:function(e){var t=this.aliasable("helpers.blockHelperMissing"),i=[this.contextName(0)];this.setupHelperArgs(e,0,i);var n=this.popStack();i.splice(1,0,n),this.push(this.source.functionCall(t,"call",i))},ambiguousBlockValue:function(){var e=this.aliasable("helpers.blockHelperMissing"),t=[this.contextName(0)];this.setupHelperArgs("",0,t,!0),this.flushInline();var i=this.topStack();t.splice(1,0,i),this.pushSource(["if (!",this.lastHelper,") { ",i," = ",this.source.functionCall(e,"call",t),"}"])},appendContent:function(e){this.pendingContent?e=this.pendingContent+e:this.pendingLocation=this.source.currentLocation,this.pendingContent=e},append:function(){if(this.isInline())this.replaceStack(function(e){return[" != null ? ",e,' : ""']}),this.pushSource(this.appendToBuffer(this.popStack()));else{var e=this.popStack();this.pushSource(["if (",e," != null) { ",this.appendToBuffer(e,void 0,!0)," }"]),this.environment.isSimple&&this.pushSource(["else { ",this.appendToBuffer("''",void 0,!0)," }"])}},appendEscaped:function(){this.pushSource(this.appendToBuffer([this.aliasable("this.escapeExpression"),"(",this.popStack(),")"]))},getContext:function(e){this.lastContext=e},pushContext:function(){this.pushStackLiteral(this.contextName(this.lastContext))},lookupOnContext:function(e,t,i){var n=0;i||!this.options.compat||this.lastContext?this.pushContext():this.push(this.depthedLookup(e[n++])),this.resolvePath("context",e,n,t)},lookupBlockParam:function(e,t){this.useBlockParams=!0,this.push(["blockParams[",e[0],"][",e[1],"]"]),this.resolvePath("context",t,1)},lookupData:function(e,t){e?this.pushStackLiteral("this.data(data, "+e+")"):this.pushStackLiteral("data"),this.resolvePath("data",t,0,!0)},resolvePath:function(e,t,i,n){var r=this;if(this.options.strict||this.options.assumeObjects)return void this.push(s(this.options.strict,this,t,e));for(var o=t.length;i<o;i++)this.replaceStack(function(s){var o=r.nameLookup(s,t[i],e);return n?[" && ",o]:[" != null ? ",o," : ",s]})},resolvePossibleLambda:function(){this.push([this.aliasable("this.lambda"),"(",this.popStack(),", ",this.contextName(0),")"])},pushStringParam:function(e,t){this.pushContext(),this.pushString(t),"SubExpression"!==t&&("string"==typeof e?this.pushString(e):this.pushStackLiteral(e))},emptyHash:function(e){this.trackIds&&this.push("{}"),this.stringParams&&(this.push("{}"),this.push("{}")),this.pushStackLiteral(e?"undefined":"{}")},pushHash:function(){this.hash&&this.hashes.push(this.hash),this.hash={values:[],types:[],contexts:[],ids:[]}},popHash:function(){var e=this.hash;this.hash=this.hashes.pop(),this.trackIds&&this.push(this.objectLiteral(e.ids)),this.stringParams&&(this.push(this.objectLiteral(e.contexts)),this.push(this.objectLiteral(e.types))),this.push(this.objectLiteral(e.values))},pushString:function(e){this.pushStackLiteral(this.quotedString(e))},pushLiteral:function(e){this.pushStackLiteral(e)},pushProgram:function(e){null!=e?this.pushStackLiteral(this.programExpression(e)):this.pushStackLiteral(null)},invokeHelper:function(e,t,i){var n=this.popStack(),r=this.setupHelper(e,t),s=i?[r.name," || "]:"",o=["("].concat(s,n);this.options.strict||o.push(" || ",this.aliasable("helpers.helperMissing")),o.push(")"),this.push(this.source.functionCall(o,"call",r.callParams))},invokeKnownHelper:function(e,t){var i=this.setupHelper(e,t);this.push(this.source.functionCall(i.name,"call",i.callParams))},invokeAmbiguous:function(e,t){this.useRegister("helper");var i=this.popStack();this.emptyHash();var n=this.setupHelper(0,e,t),r=this.lastHelper=this.nameLookup("helpers",e,"helper"),s=["(","(helper = ",r," || ",i,")"];this.options.strict||(s[0]="(helper = ",s.push(" != null ? helper : ",this.aliasable("helpers.helperMissing"))),this.push(["(",s,n.paramsInit?["),(",n.paramsInit]:[],"),","(typeof helper === ",this.aliasable('"function"')," ? ",this.source.functionCall("helper","call",n.callParams)," : helper))"])},invokePartial:function(e,t,i){var n=[],r=this.setupParams(t,1,n,!1);e&&(t=this.popStack(),delete r.name),i&&(r.indent=JSON.stringify(i)),r.helpers="helpers",r.partials="partials",e?n.unshift(t):n.unshift(this.nameLookup("partials",t,"partial")),this.options.compat&&(r.depths="depths"),r=this.objectLiteral(r),n.push(r),this.push(this.source.functionCall("this.invokePartial","",n))},assignToHash:function(e){var t=this.popStack(),i=void 0,n=void 0,r=void 0;this.trackIds&&(r=this.popStack()),this.stringParams&&(n=this.popStack(),i=this.popStack());var s=this.hash;i&&(s.contexts[e]=i),n&&(s.types[e]=n),r&&(s.ids[e]=r),s.values[e]=t},pushId:function(e,t,i){"BlockParam"===e?this.pushStackLiteral("blockParams["+t[0]+"].path["+t[1]+"]"+(i?" + "+JSON.stringify("."+i):"")):"PathExpression"===e?this.pushString(t):"SubExpression"===e?this.pushStackLiteral("true"):this.pushStackLiteral("null")},compiler:r,compileChildren:function(e,t){for(var i=e.children,n=void 0,r=void 0,s=0,o=i.length;s<o;s++){n=i[s],r=new this.compiler;var a=this.matchExistingProgram(n);null==a?(this.context.programs.push(""),a=this.context.programs.length,n.index=a,n.name="program"+a,this.context.programs[a]=r.compile(n,t,this.context,!this.precompile),this.context.environments[a]=n,this.useDepths=this.useDepths||r.useDepths,this.useBlockParams=this.useBlockParams||r.useBlockParams):(n.index=a,n.name="program"+a,this.useDepths=this.useDepths||n.useDepths,this.useBlockParams=this.useBlockParams||n.useBlockParams)}},matchExistingProgram:function(e){for(var t=0,i=this.context.environments.length;t<i;t++){var n=this.context.environments[t];if(n&&n.equals(e))return t}},programExpression:function(e){var t=this.environment.children[e],i=[t.index,"data",t.blockParams];return(this.useBlockParams||this.useDepths)&&i.push("blockParams"),this.useDepths&&i.push("depths"),"this.program("+i.join(", ")+")"},useRegister:function(e){this.registers[e]||(this.registers[e]=!0,this.registers.list.push(e))},push:function(e){return e instanceof n||(e=this.source.wrap(e)),this.inlineStack.push(e),e},pushStackLiteral:function(e){this.push(new n(e))},pushSource:function(e){this.pendingContent&&(this.source.push(this.appendToBuffer(this.source.quotedString(this.pendingContent),this.pendingLocation)),this.pendingContent=void 0),e&&this.source.push(e)},replaceStack:function(e){var t=["("],i=void 0,r=void 0,s=void 0;if(!this.isInline())throw new c["default"]("replaceStack on non-inline");var o=this.popStack(!0);if(o instanceof n)i=[o.value],t=["(",i],s=!0;else{r=!0;var a=this.incrStack();t=["((",this.push(a)," = ",o,")"],i=this.topStack()}var l=e.call(this,i);s||this.popStack(),r&&this.stackSlot--,this.push(t.concat(l,")"))},incrStack:function(){return this.stackSlot++,this.stackSlot>this.stackVars.length&&this.stackVars.push("stack"+this.stackSlot),this.topStackName()},topStackName:function(){return"stack"+this.stackSlot},flushInline:function(){var e=this.inlineStack;this.inlineStack=[];for(var t=0,i=e.length;t<i;t++){var r=e[t];if(r instanceof n)this.compileStack.push(r);else{var s=this.incrStack();this.pushSource([s," = ",r,";"]),this.compileStack.push(s)}}},isInline:function(){return this.inlineStack.length},popStack:function(e){var t=this.isInline(),i=(t?this.inlineStack:this.compileStack).pop();if(!e&&i instanceof n)return i.value;if(!t){if(!this.stackSlot)throw new c["default"]("Invalid stack pop");this.stackSlot--}return i},topStack:function(){var e=this.isInline()?this.inlineStack:this.compileStack,t=e[e.length-1];return t instanceof n?t.value:t},contextName:function(e){return this.useDepths&&e?"depths["+e+"]":"depth"+e},quotedString:function(e){return this.source.quotedString(e)},objectLiteral:function(e){return this.source.objectLiteral(e)},aliasable:function(e){var t=this.aliases[e];return t?(t.referenceCount++,t):(t=this.aliases[e]=this.source.wrap(e),t.aliasable=!0,t.referenceCount=1,t)},setupHelper:function(e,t,i){var n=[],r=this.setupHelperArgs(t,e,n,i),s=this.nameLookup("helpers",t,"helper");return{params:n,paramsInit:r,name:s,callParams:[this.contextName(0)].concat(n)}},setupParams:function(e,t,i){var n={},r=[],s=[],o=[],a=void 0;n.name=this.quotedString(e),n.hash=this.popStack(),this.trackIds&&(n.hashIds=this.popStack()),this.stringParams&&(n.hashTypes=this.popStack(),n.hashContexts=this.popStack());var l=this.popStack(),c=this.popStack();(c||l)&&(n.fn=c||"this.noop",n.inverse=l||"this.noop");for(var u=t;u--;)a=this.popStack(),i[u]=a,this.trackIds&&(o[u]=this.popStack()),this.stringParams&&(s[u]=this.popStack(),r[u]=this.popStack());return this.trackIds&&(n.ids=this.source.generateArray(o)),this.stringParams&&(n.types=this.source.generateArray(s),n.contexts=this.source.generateArray(r)),this.options.data&&(n.data="data"),this.useBlockParams&&(n.blockParams="blockParams"),n},setupHelperArgs:function(e,t,i,n){var r=this.setupParams(e,t,i,!0);return r=this.objectLiteral(r),n?(this.useRegister("options"),i.push("options"),["options=",r]):(i.push(r),"")}},function(){for(var e="break else new var case finally return void catch for switch while continue function this with default if throw delete in try do instanceof typeof abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public let yield await null true false".split(" "),t=r.RESERVED_WORDS={},i=0,n=e.length;i<n;i++)t[e[i]]=!0}(),r.isValidJavaScriptVariableName=function(e){return!r.RESERVED_WORDS[e]&&/^[a-zA-Z_$][0-9a-zA-Z_$]*$/.test(e)},t["default"]=r,e.exports=t["default"]},function(e,t,i){"use strict";function n(){this.parents=[]}var r=i(8)["default"];t.__esModule=!0;var s=i(12),o=r(s),a=i(2),l=r(a);n.prototype={constructor:n,mutating:!1,acceptKey:function(e,t){var i=this.accept(e[t]);if(this.mutating){if(i&&(!i.type||!l["default"][i.type]))throw new o["default"]('Unexpected node type "'+i.type+'" found when accepting '+t+" on "+e.type);e[t]=i}},acceptRequired:function(e,t){if(this.acceptKey(e,t),!e[t])throw new o["default"](e.type+" requires "+t)},acceptArray:function(e){for(var t=0,i=e.length;t<i;t++)this.acceptKey(e,t),e[t]||(e.splice(t,1),t--,i--)},accept:function(e){if(e){this.current&&this.parents.unshift(this.current),this.current=e;var t=this[e.type](e);return this.current=this.parents.shift(),!this.mutating||t?t:t!==!1?e:void 0}},Program:function(e){this.acceptArray(e.body)},MustacheStatement:function(e){this.acceptRequired(e,"path"),this.acceptArray(e.params),this.acceptKey(e,"hash")},BlockStatement:function(e){this.acceptRequired(e,"path"),this.acceptArray(e.params),this.acceptKey(e,"hash"),this.acceptKey(e,"program"),this.acceptKey(e,"inverse")},PartialStatement:function(e){this.acceptRequired(e,"name"),this.acceptArray(e.params),this.acceptKey(e,"hash")},ContentStatement:function(){},CommentStatement:function(){},SubExpression:function(e){this.acceptRequired(e,"path"),this.acceptArray(e.params),this.acceptKey(e,"hash")},PathExpression:function(){},StringLiteral:function(){},NumberLiteral:function(){},BooleanLiteral:function(){},UndefinedLiteral:function(){},NullLiteral:function(){},Hash:function(e){this.acceptArray(e.pairs)},HashPair:function(e){this.acceptRequired(e,"value")}},t["default"]=n,e.exports=t["default"]},function(e,t,i){(function(i){"use strict";t.__esModule=!0,t["default"]=function(e){var t="undefined"!=typeof i?i:window,n=t.Handlebars;e.noConflict=function(){t.Handlebars===e&&(t.Handlebars=n)}},e.exports=t["default"]}).call(t,function(){return this}())},function(e,t,i){"use strict";t["default"]=function(e){return e&&e.__esModule?e:{"default":e}},t.__esModule=!0},function(e,t,i){"use strict";t["default"]=function(e){if(e&&e.__esModule)return e;var t={};if("object"==typeof e&&null!==e)for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t["default"]=e,t},t.__esModule=!0},function(e,t,i){"use strict";function n(e,t){this.helpers=e||{},this.partials=t||{},r(this)}function r(e){e.registerHelper("helperMissing",function(){if(1!==arguments.length)throw new p["default"]('Missing helper: "'+arguments[arguments.length-1].name+'"')}),e.registerHelper("blockHelperMissing",function(t,i){ -var n=i.inverse,r=i.fn;if(t===!0)return r(this);if(t===!1||null==t)return n(this);if(m(t))return t.length>0?(i.ids&&(i.ids=[i.name]),e.helpers.each(t,i)):n(this);if(i.data&&i.ids){var o=s(i.data);o.contextPath=c.appendContextPath(i.data.contextPath,i.name),i={data:o}}return r(t,i)}),e.registerHelper("each",function(e,t){function i(t,i,r){l&&(l.key=t,l.index=i,l.first=0===i,l.last=!!r,u&&(l.contextPath=u+t)),a+=n(e[t],{data:l,blockParams:c.blockParams([e[t],t],[u+t,null])})}if(!t)throw new p["default"]("Must pass iterator to #each");var n=t.fn,r=t.inverse,o=0,a="",l=void 0,u=void 0;if(t.data&&t.ids&&(u=c.appendContextPath(t.data.contextPath,t.ids[0])+"."),g(e)&&(e=e.call(this)),t.data&&(l=s(t.data)),e&&"object"==typeof e)if(m(e))for(var h=e.length;o<h;o++)i(o,o,o===e.length-1);else{var d=void 0;for(var f in e)e.hasOwnProperty(f)&&(d&&i(d,o-1),d=f,o++);d&&i(d,o-1,!0)}return 0===o&&(a=r(this)),a}),e.registerHelper("if",function(e,t){return g(e)&&(e=e.call(this)),!t.hash.includeZero&&!e||c.isEmpty(e)?t.inverse(this):t.fn(this)}),e.registerHelper("unless",function(t,i){return e.helpers["if"].call(this,t,{fn:i.inverse,inverse:i.fn,hash:i.hash})}),e.registerHelper("with",function(e,t){g(e)&&(e=e.call(this));var i=t.fn;if(c.isEmpty(e))return t.inverse(this);if(t.data&&t.ids){var n=s(t.data);n.contextPath=c.appendContextPath(t.data.contextPath,t.ids[0]),t={data:n}}return i(e,t)}),e.registerHelper("log",function(t,i){var n=i.data&&null!=i.data.level?parseInt(i.data.level,10):1;e.log(n,t)}),e.registerHelper("lookup",function(e,t){return e&&e[t]})}function s(e){var t=c.extend({},e);return t._parent=e,t}var o=i(9)["default"],a=i(8)["default"];t.__esModule=!0,t.HandlebarsEnvironment=n,t.createFrame=s;var l=i(13),c=o(l),u=i(12),p=a(u),h="3.0.1";t.VERSION=h;var d=6;t.COMPILER_REVISION=d;var f={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1"};t.REVISION_CHANGES=f;var m=c.isArray,g=c.isFunction,v=c.toString,y="[object Object]";n.prototype={constructor:n,logger:w,log:b,registerHelper:function(e,t){if(v.call(e)===y){if(t)throw new p["default"]("Arg not supported with multiple helpers");c.extend(this.helpers,e)}else this.helpers[e]=t},unregisterHelper:function(e){delete this.helpers[e]},registerPartial:function(e,t){if(v.call(e)===y)c.extend(this.partials,e);else{if("undefined"==typeof t)throw new p["default"]("Attempting to register a partial as undefined");this.partials[e]=t}},unregisterPartial:function(e){delete this.partials[e]}};var w={methodMap:{0:"debug",1:"info",2:"warn",3:"error"},DEBUG:0,INFO:1,WARN:2,ERROR:3,level:1,log:function(e,t){if("undefined"!=typeof console&&w.level<=e){var i=w.methodMap[e];(console[i]||console.log).call(console,t)}}};t.logger=w;var b=w.log;t.log=b},function(e,t,i){"use strict";function n(e){this.string=e}t.__esModule=!0,n.prototype.toString=n.prototype.toHTML=function(){return""+this.string},t["default"]=n,e.exports=t["default"]},function(e,t,i){"use strict";function n(e,t){var i=t&&t.loc,s=void 0,o=void 0;i&&(s=i.start.line,o=i.start.column,e+=" - "+s+":"+o);for(var a=Error.prototype.constructor.call(this,e),l=0;l<r.length;l++)this[r[l]]=a[r[l]];Error.captureStackTrace&&Error.captureStackTrace(this,n),i&&(this.lineNumber=s,this.column=o)}t.__esModule=!0;var r=["description","fileName","lineNumber","message","name","number","stack"];n.prototype=new Error,t["default"]=n,e.exports=t["default"]},function(e,t,i){"use strict";function n(e){return u[e]}function r(e){for(var t=1;t<arguments.length;t++)for(var i in arguments[t])Object.prototype.hasOwnProperty.call(arguments[t],i)&&(e[i]=arguments[t][i]);return e}function s(e,t){for(var i=0,n=e.length;i<n;i++)if(e[i]===t)return i;return-1}function o(e){if("string"!=typeof e){if(e&&e.toHTML)return e.toHTML();if(null==e)return"";if(!e)return e+"";e=""+e}return h.test(e)?e.replace(p,n):e}function a(e){return!e&&0!==e||!(!m(e)||0!==e.length)}function l(e,t){return e.path=t,e}function c(e,t){return(e?e+".":"")+t}t.__esModule=!0,t.extend=r,t.indexOf=s,t.escapeExpression=o,t.isEmpty=a,t.blockParams=l,t.appendContextPath=c;var u={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},p=/[&<>"'`]/g,h=/[&<>"'`]/,d=Object.prototype.toString;t.toString=d;var f=function(e){return"function"==typeof e};f(/x/)&&(t.isFunction=f=function(e){return"function"==typeof e&&"[object Function]"===d.call(e)});var f;t.isFunction=f;var m=Array.isArray||function(e){return!(!e||"object"!=typeof e)&&"[object Array]"===d.call(e)};t.isArray=m},function(e,t,i){"use strict";function n(e){var t=e&&e[0]||1,i=g.COMPILER_REVISION;if(t!==i){if(t<i){var n=g.REVISION_CHANGES[i],r=g.REVISION_CHANGES[t];throw new m["default"]("Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version ("+n+") or downgrade your runtime to an older version ("+r+").")}throw new m["default"]("Template was precompiled with a newer version of Handlebars than the current runtime. Please update your runtime to a newer version ("+e[1]+").")}}function r(e,t){function i(i,n,r){r.hash&&(n=d.extend({},n,r.hash)),i=t.VM.resolvePartial.call(this,i,n,r);var s=t.VM.invokePartial.call(this,i,n,r);if(null==s&&t.compile&&(r.partials[r.name]=t.compile(i,e.compilerOptions,t),s=r.partials[r.name](n,r)),null!=s){if(r.indent){for(var o=s.split("\n"),a=0,l=o.length;a<l&&(o[a]||a+1!==l);a++)o[a]=r.indent+o[a];s=o.join("\n")}return s}throw new m["default"]("The partial "+r.name+" could not be compiled when running in runtime-only mode")}function n(t){var i=void 0===arguments[1]?{}:arguments[1],s=i.data;n._setup(i),!i.partial&&e.useData&&(s=c(t,s));var o=void 0,a=e.useBlockParams?[]:void 0;return e.useDepths&&(o=i.depths?[t].concat(i.depths):[t]),e.main.call(r,t,r.helpers,r.partials,s,a,o)}if(!t)throw new m["default"]("No environment passed to template");if(!e||!e.main)throw new m["default"]("Unknown template object: "+typeof e);t.VM.checkRevision(e.compiler);var r={strict:function(e,t){if(!(t in e))throw new m["default"]('"'+t+'" not defined in '+e);return e[t]},lookup:function(e,t){for(var i=e.length,n=0;n<i;n++)if(e[n]&&null!=e[n][t])return e[n][t]},lambda:function(e,t){return"function"==typeof e?e.call(t):e},escapeExpression:d.escapeExpression,invokePartial:i,fn:function(t){return e[t]},programs:[],program:function(e,t,i,n,r){var o=this.programs[e],a=this.fn(e);return t||r||n||i?o=s(this,e,a,t,i,n,r):o||(o=this.programs[e]=s(this,e,a)),o},data:function(e,t){for(;e&&t--;)e=e._parent;return e},merge:function(e,t){var i=e||t;return e&&t&&e!==t&&(i=d.extend({},t,e)),i},noop:t.VM.noop,compilerInfo:e.compiler};return n.isTop=!0,n._setup=function(i){i.partial?(r.helpers=i.helpers,r.partials=i.partials):(r.helpers=r.merge(i.helpers,t.helpers),e.usePartial&&(r.partials=r.merge(i.partials,t.partials)))},n._child=function(t,i,n,o){if(e.useBlockParams&&!n)throw new m["default"]("must pass block params");if(e.useDepths&&!o)throw new m["default"]("must pass parent depths");return s(r,t,e[t],i,0,n,o)},n}function s(e,t,i,n,r,s,o){function a(t){var r=void 0===arguments[1]?{}:arguments[1];return i.call(e,t,e.helpers,e.partials,r.data||n,s&&[r.blockParams].concat(s),o&&[t].concat(o))}return a.program=t,a.depth=o?o.length:0,a.blockParams=r||0,a}function o(e,t,i){return e?e.call||i.name||(i.name=e,e=i.partials[e]):e=i.partials[i.name],e}function a(e,t,i){if(i.partial=!0,void 0===e)throw new m["default"]("The partial "+i.name+" could not be found");if(e instanceof Function)return e(t,i)}function l(){return""}function c(e,t){return t&&"root"in t||(t=t?g.createFrame(t):{},t.root=e),t}var u=i(9)["default"],p=i(8)["default"];t.__esModule=!0,t.checkRevision=n,t.template=r,t.wrapProgram=s,t.resolvePartial=o,t.invokePartial=a,t.noop=l;var h=i(13),d=u(h),f=i(12),m=p(f),g=i(10)},function(e,t,i){"use strict";t.__esModule=!0;var n=function(){function e(){this.yy={}}var t={trace:function(){},yy:{},symbols_:{error:2,root:3,program:4,EOF:5,program_repetition0:6,statement:7,mustache:8,block:9,rawBlock:10,partial:11,content:12,COMMENT:13,CONTENT:14,openRawBlock:15,END_RAW_BLOCK:16,OPEN_RAW_BLOCK:17,helperName:18,openRawBlock_repetition0:19,openRawBlock_option0:20,CLOSE_RAW_BLOCK:21,openBlock:22,block_option0:23,closeBlock:24,openInverse:25,block_option1:26,OPEN_BLOCK:27,openBlock_repetition0:28,openBlock_option0:29,openBlock_option1:30,CLOSE:31,OPEN_INVERSE:32,openInverse_repetition0:33,openInverse_option0:34,openInverse_option1:35,openInverseChain:36,OPEN_INVERSE_CHAIN:37,openInverseChain_repetition0:38,openInverseChain_option0:39,openInverseChain_option1:40,inverseAndProgram:41,INVERSE:42,inverseChain:43,inverseChain_option0:44,OPEN_ENDBLOCK:45,OPEN:46,mustache_repetition0:47,mustache_option0:48,OPEN_UNESCAPED:49,mustache_repetition1:50,mustache_option1:51,CLOSE_UNESCAPED:52,OPEN_PARTIAL:53,partialName:54,partial_repetition0:55,partial_option0:56,param:57,sexpr:58,OPEN_SEXPR:59,sexpr_repetition0:60,sexpr_option0:61,CLOSE_SEXPR:62,hash:63,hash_repetition_plus0:64,hashSegment:65,ID:66,EQUALS:67,blockParams:68,OPEN_BLOCK_PARAMS:69,blockParams_repetition_plus0:70,CLOSE_BLOCK_PARAMS:71,path:72,dataName:73,STRING:74,NUMBER:75,BOOLEAN:76,UNDEFINED:77,NULL:78,DATA:79,pathSegments:80,SEP:81,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",13:"COMMENT",14:"CONTENT",16:"END_RAW_BLOCK",17:"OPEN_RAW_BLOCK",21:"CLOSE_RAW_BLOCK",27:"OPEN_BLOCK",31:"CLOSE",32:"OPEN_INVERSE",37:"OPEN_INVERSE_CHAIN",42:"INVERSE",45:"OPEN_ENDBLOCK",46:"OPEN",49:"OPEN_UNESCAPED",52:"CLOSE_UNESCAPED",53:"OPEN_PARTIAL",59:"OPEN_SEXPR",62:"CLOSE_SEXPR",66:"ID",67:"EQUALS",69:"OPEN_BLOCK_PARAMS",71:"CLOSE_BLOCK_PARAMS",74:"STRING",75:"NUMBER",76:"BOOLEAN",77:"UNDEFINED",78:"NULL",79:"DATA",81:"SEP"},productions_:[0,[3,2],[4,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[12,1],[10,3],[15,5],[9,4],[9,4],[22,6],[25,6],[36,6],[41,2],[43,3],[43,1],[24,3],[8,5],[8,5],[11,5],[57,1],[57,1],[58,5],[63,1],[65,3],[68,3],[18,1],[18,1],[18,1],[18,1],[18,1],[18,1],[18,1],[54,1],[54,1],[73,2],[72,1],[80,3],[80,1],[6,0],[6,2],[19,0],[19,2],[20,0],[20,1],[23,0],[23,1],[26,0],[26,1],[28,0],[28,2],[29,0],[29,1],[30,0],[30,1],[33,0],[33,2],[34,0],[34,1],[35,0],[35,1],[38,0],[38,2],[39,0],[39,1],[40,0],[40,1],[44,0],[44,1],[47,0],[47,2],[48,0],[48,1],[50,0],[50,2],[51,0],[51,1],[55,0],[55,2],[56,0],[56,1],[60,0],[60,2],[61,0],[61,1],[64,1],[64,2],[70,1],[70,2]],performAction:function(e,t,i,n,r,s,o){var a=s.length-1;switch(r){case 1:return s[a-1];case 2:this.$=new n.Program(s[a],null,{},n.locInfo(this._$));break;case 3:this.$=s[a];break;case 4:this.$=s[a];break;case 5:this.$=s[a];break;case 6:this.$=s[a];break;case 7:this.$=s[a];break;case 8:this.$=new n.CommentStatement(n.stripComment(s[a]),n.stripFlags(s[a],s[a]),n.locInfo(this._$));break;case 9:this.$=new n.ContentStatement(s[a],n.locInfo(this._$));break;case 10:this.$=n.prepareRawBlock(s[a-2],s[a-1],s[a],this._$);break;case 11:this.$={path:s[a-3],params:s[a-2],hash:s[a-1]};break;case 12:this.$=n.prepareBlock(s[a-3],s[a-2],s[a-1],s[a],!1,this._$);break;case 13:this.$=n.prepareBlock(s[a-3],s[a-2],s[a-1],s[a],!0,this._$);break;case 14:this.$={path:s[a-4],params:s[a-3],hash:s[a-2],blockParams:s[a-1],strip:n.stripFlags(s[a-5],s[a])};break;case 15:this.$={path:s[a-4],params:s[a-3],hash:s[a-2],blockParams:s[a-1],strip:n.stripFlags(s[a-5],s[a])};break;case 16:this.$={path:s[a-4],params:s[a-3],hash:s[a-2],blockParams:s[a-1],strip:n.stripFlags(s[a-5],s[a])};break;case 17:this.$={strip:n.stripFlags(s[a-1],s[a-1]),program:s[a]};break;case 18:var l=n.prepareBlock(s[a-2],s[a-1],s[a],s[a],!1,this._$),c=new n.Program([l],null,{},n.locInfo(this._$));c.chained=!0,this.$={strip:s[a-2].strip,program:c,chain:!0};break;case 19:this.$=s[a];break;case 20:this.$={path:s[a-1],strip:n.stripFlags(s[a-2],s[a])};break;case 21:this.$=n.prepareMustache(s[a-3],s[a-2],s[a-1],s[a-4],n.stripFlags(s[a-4],s[a]),this._$);break;case 22:this.$=n.prepareMustache(s[a-3],s[a-2],s[a-1],s[a-4],n.stripFlags(s[a-4],s[a]),this._$);break;case 23:this.$=new n.PartialStatement(s[a-3],s[a-2],s[a-1],n.stripFlags(s[a-4],s[a]),n.locInfo(this._$));break;case 24:this.$=s[a];break;case 25:this.$=s[a];break;case 26:this.$=new n.SubExpression(s[a-3],s[a-2],s[a-1],n.locInfo(this._$));break;case 27:this.$=new n.Hash(s[a],n.locInfo(this._$));break;case 28:this.$=new n.HashPair(n.id(s[a-2]),s[a],n.locInfo(this._$));break;case 29:this.$=n.id(s[a-1]);break;case 30:this.$=s[a];break;case 31:this.$=s[a];break;case 32:this.$=new n.StringLiteral(s[a],n.locInfo(this._$));break;case 33:this.$=new n.NumberLiteral(s[a],n.locInfo(this._$));break;case 34:this.$=new n.BooleanLiteral(s[a],n.locInfo(this._$));break;case 35:this.$=new n.UndefinedLiteral(n.locInfo(this._$));break;case 36:this.$=new n.NullLiteral(n.locInfo(this._$));break;case 37:this.$=s[a];break;case 38:this.$=s[a];break;case 39:this.$=n.preparePath(!0,s[a],this._$);break;case 40:this.$=n.preparePath(!1,s[a],this._$);break;case 41:s[a-2].push({part:n.id(s[a]),original:s[a],separator:s[a-1]}),this.$=s[a-2];break;case 42:this.$=[{part:n.id(s[a]),original:s[a]}];break;case 43:this.$=[];break;case 44:s[a-1].push(s[a]);break;case 45:this.$=[];break;case 46:s[a-1].push(s[a]);break;case 53:this.$=[];break;case 54:s[a-1].push(s[a]);break;case 59:this.$=[];break;case 60:s[a-1].push(s[a]);break;case 65:this.$=[];break;case 66:s[a-1].push(s[a]);break;case 73:this.$=[];break;case 74:s[a-1].push(s[a]);break;case 77:this.$=[];break;case 78:s[a-1].push(s[a]);break;case 81:this.$=[];break;case 82:s[a-1].push(s[a]);break;case 85:this.$=[];break;case 86:s[a-1].push(s[a]);break;case 89:this.$=[s[a]];break;case 90:s[a-1].push(s[a]);break;case 91:this.$=[s[a]];break;case 92:s[a-1].push(s[a])}},table:[{3:1,4:2,5:[2,43],6:3,13:[2,43],14:[2,43],17:[2,43],27:[2,43],32:[2,43],46:[2,43],49:[2,43],53:[2,43]},{1:[3]},{5:[1,4]},{5:[2,2],7:5,8:6,9:7,10:8,11:9,12:10,13:[1,11],14:[1,18],15:16,17:[1,21],22:14,25:15,27:[1,19],32:[1,20],37:[2,2],42:[2,2],45:[2,2],46:[1,12],49:[1,13],53:[1,17]},{1:[2,1]},{5:[2,44],13:[2,44],14:[2,44],17:[2,44],27:[2,44],32:[2,44],37:[2,44],42:[2,44],45:[2,44],46:[2,44],49:[2,44],53:[2,44]},{5:[2,3],13:[2,3],14:[2,3],17:[2,3],27:[2,3],32:[2,3],37:[2,3],42:[2,3],45:[2,3],46:[2,3],49:[2,3],53:[2,3]},{5:[2,4],13:[2,4],14:[2,4],17:[2,4],27:[2,4],32:[2,4],37:[2,4],42:[2,4],45:[2,4],46:[2,4],49:[2,4],53:[2,4]},{5:[2,5],13:[2,5],14:[2,5],17:[2,5],27:[2,5],32:[2,5],37:[2,5],42:[2,5],45:[2,5],46:[2,5],49:[2,5],53:[2,5]},{5:[2,6],13:[2,6],14:[2,6],17:[2,6],27:[2,6],32:[2,6],37:[2,6],42:[2,6],45:[2,6],46:[2,6],49:[2,6],53:[2,6]},{5:[2,7],13:[2,7],14:[2,7],17:[2,7],27:[2,7],32:[2,7],37:[2,7],42:[2,7],45:[2,7],46:[2,7],49:[2,7],53:[2,7]},{5:[2,8],13:[2,8],14:[2,8],17:[2,8],27:[2,8],32:[2,8],37:[2,8],42:[2,8],45:[2,8],46:[2,8],49:[2,8],53:[2,8]},{18:22,66:[1,32],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{18:33,66:[1,32],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{4:34,6:3,13:[2,43],14:[2,43],17:[2,43],27:[2,43],32:[2,43],37:[2,43],42:[2,43],45:[2,43],46:[2,43],49:[2,43],53:[2,43]},{4:35,6:3,13:[2,43],14:[2,43],17:[2,43],27:[2,43],32:[2,43],42:[2,43],45:[2,43],46:[2,43],49:[2,43],53:[2,43]},{12:36,14:[1,18]},{18:38,54:37,58:39,59:[1,40],66:[1,32],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{5:[2,9],13:[2,9],14:[2,9],16:[2,9],17:[2,9],27:[2,9],32:[2,9],37:[2,9],42:[2,9],45:[2,9],46:[2,9],49:[2,9],53:[2,9]},{18:41,66:[1,32],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{18:42,66:[1,32],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{18:43,66:[1,32],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{31:[2,73],47:44,59:[2,73],66:[2,73],74:[2,73],75:[2,73],76:[2,73],77:[2,73],78:[2,73],79:[2,73]},{21:[2,30],31:[2,30],52:[2,30],59:[2,30],62:[2,30],66:[2,30],69:[2,30],74:[2,30],75:[2,30],76:[2,30],77:[2,30],78:[2,30],79:[2,30]},{21:[2,31],31:[2,31],52:[2,31],59:[2,31],62:[2,31],66:[2,31],69:[2,31],74:[2,31],75:[2,31],76:[2,31],77:[2,31],78:[2,31],79:[2,31]},{21:[2,32],31:[2,32],52:[2,32],59:[2,32],62:[2,32],66:[2,32],69:[2,32],74:[2,32],75:[2,32],76:[2,32],77:[2,32],78:[2,32],79:[2,32]},{21:[2,33],31:[2,33],52:[2,33],59:[2,33],62:[2,33],66:[2,33],69:[2,33],74:[2,33],75:[2,33],76:[2,33],77:[2,33],78:[2,33],79:[2,33]},{21:[2,34],31:[2,34],52:[2,34],59:[2,34],62:[2,34],66:[2,34],69:[2,34],74:[2,34],75:[2,34],76:[2,34],77:[2,34],78:[2,34],79:[2,34]},{21:[2,35],31:[2,35],52:[2,35],59:[2,35],62:[2,35],66:[2,35],69:[2,35],74:[2,35],75:[2,35],76:[2,35],77:[2,35],78:[2,35],79:[2,35]},{21:[2,36],31:[2,36],52:[2,36],59:[2,36],62:[2,36],66:[2,36],69:[2,36],74:[2,36],75:[2,36],76:[2,36],77:[2,36],78:[2,36],79:[2,36]},{21:[2,40],31:[2,40],52:[2,40],59:[2,40],62:[2,40],66:[2,40],69:[2,40],74:[2,40],75:[2,40],76:[2,40],77:[2,40],78:[2,40],79:[2,40],81:[1,45]},{66:[1,32],80:46},{21:[2,42],31:[2,42],52:[2,42],59:[2,42],62:[2,42],66:[2,42],69:[2,42],74:[2,42],75:[2,42],76:[2,42],77:[2,42],78:[2,42],79:[2,42],81:[2,42]},{50:47,52:[2,77],59:[2,77],66:[2,77],74:[2,77],75:[2,77],76:[2,77],77:[2,77],78:[2,77],79:[2,77]},{23:48,36:50,37:[1,52],41:51,42:[1,53],43:49,45:[2,49]},{26:54,41:55,42:[1,53],45:[2,51]},{16:[1,56]},{31:[2,81],55:57,59:[2,81],66:[2,81],74:[2,81],75:[2,81],76:[2,81],77:[2,81],78:[2,81],79:[2,81]},{31:[2,37],59:[2,37],66:[2,37],74:[2,37],75:[2,37],76:[2,37],77:[2,37],78:[2,37],79:[2,37]},{31:[2,38],59:[2,38],66:[2,38],74:[2,38],75:[2,38],76:[2,38],77:[2,38],78:[2,38],79:[2,38]},{18:58,66:[1,32],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{28:59,31:[2,53],59:[2,53],66:[2,53],69:[2,53],74:[2,53],75:[2,53],76:[2,53],77:[2,53],78:[2,53],79:[2,53]},{31:[2,59],33:60,59:[2,59],66:[2,59],69:[2,59],74:[2,59],75:[2,59],76:[2,59],77:[2,59],78:[2,59],79:[2,59]},{19:61,21:[2,45],59:[2,45],66:[2,45],74:[2,45],75:[2,45],76:[2,45],77:[2,45],78:[2,45],79:[2,45]},{18:65,31:[2,75],48:62,57:63,58:66,59:[1,40],63:64,64:67,65:68,66:[1,69],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{66:[1,70]},{21:[2,39],31:[2,39],52:[2,39],59:[2,39],62:[2,39],66:[2,39],69:[2,39],74:[2,39],75:[2,39],76:[2,39],77:[2,39],78:[2,39],79:[2,39],81:[1,45]},{18:65,51:71,52:[2,79],57:72,58:66,59:[1,40],63:73,64:67,65:68,66:[1,69],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{24:74,45:[1,75]},{45:[2,50]},{4:76,6:3,13:[2,43],14:[2,43],17:[2,43],27:[2,43],32:[2,43],37:[2,43],42:[2,43],45:[2,43],46:[2,43],49:[2,43],53:[2,43]},{45:[2,19]},{18:77,66:[1,32],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{4:78,6:3,13:[2,43],14:[2,43],17:[2,43],27:[2,43],32:[2,43],45:[2,43],46:[2,43],49:[2,43],53:[2,43]},{24:79,45:[1,75]},{45:[2,52]},{5:[2,10],13:[2,10],14:[2,10],17:[2,10],27:[2,10],32:[2,10],37:[2,10],42:[2,10],45:[2,10],46:[2,10],49:[2,10],53:[2,10]},{18:65,31:[2,83],56:80,57:81,58:66,59:[1,40],63:82,64:67,65:68,66:[1,69],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{59:[2,85],60:83,62:[2,85],66:[2,85],74:[2,85],75:[2,85],76:[2,85],77:[2,85],78:[2,85],79:[2,85]},{18:65,29:84,31:[2,55],57:85,58:66,59:[1,40],63:86,64:67,65:68,66:[1,69],69:[2,55],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{18:65,31:[2,61],34:87,57:88,58:66,59:[1,40],63:89,64:67,65:68,66:[1,69],69:[2,61],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{18:65,20:90,21:[2,47],57:91,58:66,59:[1,40],63:92,64:67,65:68,66:[1,69],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{31:[1,93]},{31:[2,74],59:[2,74],66:[2,74],74:[2,74],75:[2,74],76:[2,74],77:[2,74],78:[2,74],79:[2,74]},{31:[2,76]},{21:[2,24],31:[2,24],52:[2,24],59:[2,24],62:[2,24],66:[2,24],69:[2,24],74:[2,24],75:[2,24],76:[2,24],77:[2,24],78:[2,24],79:[2,24]},{21:[2,25],31:[2,25],52:[2,25],59:[2,25],62:[2,25],66:[2,25],69:[2,25],74:[2,25],75:[2,25],76:[2,25],77:[2,25],78:[2,25],79:[2,25]},{21:[2,27],31:[2,27],52:[2,27],62:[2,27],65:94,66:[1,95],69:[2,27]},{21:[2,89],31:[2,89],52:[2,89],62:[2,89],66:[2,89],69:[2,89]},{21:[2,42],31:[2,42],52:[2,42],59:[2,42],62:[2,42],66:[2,42],67:[1,96],69:[2,42],74:[2,42],75:[2,42],76:[2,42],77:[2,42],78:[2,42],79:[2,42],81:[2,42]},{21:[2,41],31:[2,41],52:[2,41],59:[2,41],62:[2,41],66:[2,41],69:[2,41],74:[2,41],75:[2,41],76:[2,41],77:[2,41],78:[2,41],79:[2,41],81:[2,41]},{52:[1,97]},{52:[2,78],59:[2,78],66:[2,78],74:[2,78],75:[2,78],76:[2,78],77:[2,78],78:[2,78],79:[2,78]},{52:[2,80]},{5:[2,12],13:[2,12],14:[2,12],17:[2,12],27:[2,12],32:[2,12],37:[2,12],42:[2,12],45:[2,12],46:[2,12],49:[2,12],53:[2,12]},{18:98,66:[1,32],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{36:50,37:[1,52],41:51,42:[1,53],43:100,44:99,45:[2,71]},{31:[2,65],38:101,59:[2,65],66:[2,65],69:[2,65],74:[2,65],75:[2,65],76:[2,65],77:[2,65],78:[2,65],79:[2,65]},{45:[2,17]},{5:[2,13],13:[2,13],14:[2,13],17:[2,13],27:[2,13],32:[2,13],37:[2,13],42:[2,13],45:[2,13],46:[2,13],49:[2,13],53:[2,13]},{31:[1,102]},{31:[2,82],59:[2,82],66:[2,82],74:[2,82],75:[2,82],76:[2,82],77:[2,82],78:[2,82],79:[2,82]},{31:[2,84]},{18:65,57:104,58:66,59:[1,40],61:103,62:[2,87],63:105,64:67,65:68,66:[1,69],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{30:106,31:[2,57],68:107,69:[1,108]},{31:[2,54],59:[2,54],66:[2,54],69:[2,54],74:[2,54],75:[2,54],76:[2,54],77:[2,54],78:[2,54],79:[2,54]},{31:[2,56],69:[2,56]},{31:[2,63],35:109,68:110,69:[1,108]},{31:[2,60],59:[2,60],66:[2,60],69:[2,60],74:[2,60],75:[2,60],76:[2,60],77:[2,60],78:[2,60],79:[2,60]},{31:[2,62],69:[2,62]},{21:[1,111]},{21:[2,46],59:[2,46],66:[2,46],74:[2,46],75:[2,46],76:[2,46],77:[2,46],78:[2,46],79:[2,46]},{21:[2,48]},{5:[2,21],13:[2,21],14:[2,21],17:[2,21],27:[2,21],32:[2,21],37:[2,21],42:[2,21],45:[2,21],46:[2,21],49:[2,21],53:[2,21]},{21:[2,90],31:[2,90],52:[2,90],62:[2,90],66:[2,90],69:[2,90]},{67:[1,96]},{18:65,57:112,58:66,59:[1,40],66:[1,32],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{5:[2,22],13:[2,22],14:[2,22],17:[2,22],27:[2,22],32:[2,22],37:[2,22],42:[2,22],45:[2,22],46:[2,22],49:[2,22],53:[2,22]},{31:[1,113]},{45:[2,18]},{45:[2,72]},{18:65,31:[2,67],39:114,57:115,58:66,59:[1,40],63:116,64:67,65:68,66:[1,69],69:[2,67],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{5:[2,23],13:[2,23],14:[2,23],17:[2,23],27:[2,23],32:[2,23],37:[2,23],42:[2,23],45:[2,23],46:[2,23],49:[2,23],53:[2,23]},{62:[1,117]},{59:[2,86],62:[2,86],66:[2,86],74:[2,86],75:[2,86],76:[2,86],77:[2,86],78:[2,86],79:[2,86]},{62:[2,88]},{31:[1,118]},{31:[2,58]},{66:[1,120],70:119},{31:[1,121]},{31:[2,64]},{14:[2,11]},{21:[2,28],31:[2,28],52:[2,28],62:[2,28],66:[2,28],69:[2,28]},{5:[2,20],13:[2,20],14:[2,20],17:[2,20],27:[2,20],32:[2,20],37:[2,20],42:[2,20],45:[2,20],46:[2,20],49:[2,20],53:[2,20]},{31:[2,69],40:122,68:123,69:[1,108]},{31:[2,66],59:[2,66],66:[2,66],69:[2,66],74:[2,66],75:[2,66],76:[2,66],77:[2,66],78:[2,66],79:[2,66]},{31:[2,68],69:[2,68]},{21:[2,26],31:[2,26],52:[2,26],59:[2,26],62:[2,26],66:[2,26],69:[2,26],74:[2,26],75:[2,26],76:[2,26],77:[2,26],78:[2,26],79:[2,26]},{13:[2,14],14:[2,14],17:[2,14],27:[2,14],32:[2,14],37:[2,14],42:[2,14],45:[2,14],46:[2,14],49:[2,14],53:[2,14]},{66:[1,125],71:[1,124]},{66:[2,91],71:[2,91]},{13:[2,15],14:[2,15],17:[2,15],27:[2,15],32:[2,15],42:[2,15],45:[2,15],46:[2,15],49:[2,15],53:[2,15]},{31:[1,126]},{31:[2,70]},{31:[2,29]},{66:[2,92],71:[2,92]},{13:[2,16],14:[2,16],17:[2,16],27:[2,16],32:[2,16],37:[2,16],42:[2,16],45:[2,16],46:[2,16],49:[2,16],53:[2,16]}],defaultActions:{4:[2,1],49:[2,50],51:[2,19],55:[2,52],64:[2,76],73:[2,80],78:[2,17],82:[2,84],92:[2,48],99:[2,18],100:[2,72],105:[2,88],107:[2,58],110:[2,64],111:[2,11],123:[2,70],124:[2,29]},parseError:function(e,t){throw new Error(e)},parse:function(e){function t(){var e;return e=i.lexer.lex()||1,"number"!=typeof e&&(e=i.symbols_[e]||e),e}var i=this,n=[0],r=[null],s=[],o=this.table,a="",l=0,c=0,u=0;this.lexer.setInput(e),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,this.yy.parser=this,"undefined"==typeof this.lexer.yylloc&&(this.lexer.yylloc={});var p=this.lexer.yylloc;s.push(p);var h=this.lexer.options&&this.lexer.options.ranges;"function"==typeof this.yy.parseError&&(this.parseError=this.yy.parseError);for(var d,f,m,g,v,y,w,b,x,S={};;){if(m=n[n.length-1],this.defaultActions[m]?g=this.defaultActions[m]:(null!==d&&"undefined"!=typeof d||(d=t()),g=o[m]&&o[m][d]),"undefined"==typeof g||!g.length||!g[0]){var T="";if(!u){x=[];for(y in o[m])this.terminals_[y]&&y>2&&x.push("'"+this.terminals_[y]+"'");T=this.lexer.showPosition?"Parse error on line "+(l+1)+":\n"+this.lexer.showPosition()+"\nExpecting "+x.join(", ")+", got '"+(this.terminals_[d]||d)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==d?"end of input":"'"+(this.terminals_[d]||d)+"'"),this.parseError(T,{text:this.lexer.match,token:this.terminals_[d]||d,line:this.lexer.yylineno,loc:p,expected:x})}}if(g[0]instanceof Array&&g.length>1)throw new Error("Parse Error: multiple actions possible at state: "+m+", token: "+d);switch(g[0]){case 1:n.push(d),r.push(this.lexer.yytext),s.push(this.lexer.yylloc),n.push(g[1]),d=null,f?(d=f,f=null):(c=this.lexer.yyleng,a=this.lexer.yytext,l=this.lexer.yylineno,p=this.lexer.yylloc,u>0&&u--);break;case 2:if(w=this.productions_[g[1]][1],S.$=r[r.length-w],S._$={first_line:s[s.length-(w||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(w||1)].first_column,last_column:s[s.length-1].last_column},h&&(S._$.range=[s[s.length-(w||1)].range[0],s[s.length-1].range[1]]),v=this.performAction.call(S,a,c,l,this.yy,g[1],r,s),"undefined"!=typeof v)return v;w&&(n=n.slice(0,-1*w*2),r=r.slice(0,-1*w),s=s.slice(0,-1*w)),n.push(this.productions_[g[1]][0]),r.push(S.$),s.push(S._$),b=o[n[n.length-2]][n[n.length-1]],n.push(b);break;case 3:return!0}}return!0}},i=function(){var e={EOF:1,parseError:function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)},setInput:function(e){return this._input=e,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var e=this._input[0];this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e;var t=e.match(/(?:\r\n?|\n).*/g);return t?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t=e.length,i=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t-1),this.offset-=t;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),i.length-1&&(this.yylineno-=i.length-1);var r=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:i?(i.length===n.length?this.yylloc.first_column:0)+n[n.length-i.length].length-i[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-t]),this},more:function(){return this._more=!0,this},less:function(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var e,t,i,n,r;this._more||(this.yytext="",this.match="");for(var s=this._currentRules(),o=0;o<s.length&&(i=this._input.match(this.rules[s[o]]),!i||t&&!(i[0].length>t[0].length)||(t=i,n=o,this.options.flex));o++);return t?(r=t[0].match(/(?:\r\n?|\n).*/g),r&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],e=this.performAction.call(this,this.yy,this,s[n],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),e?e:void 0):""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var e=this.next();return"undefined"!=typeof e?e:this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(e){this.begin(e)}};return e.options={},e.performAction=function(e,t,i,n){function r(e,i){return t.yytext=t.yytext.substr(e,t.yyleng-i)}switch(i){case 0:if("\\\\"===t.yytext.slice(-2)?(r(0,1),this.begin("mu")):"\\"===t.yytext.slice(-1)?(r(0,1),this.begin("emu")):this.begin("mu"),t.yytext)return 14;break;case 1:return 14;case 2:return this.popState(),14;case 3:return t.yytext=t.yytext.substr(5,t.yyleng-9),this.popState(),16;case 4:return 14;case 5:return this.popState(),13;case 6:return 59;case 7:return 62;case 8:return 17;case 9:return this.popState(),this.begin("raw"),21;case 10:return 53;case 11:return 27;case 12:return 45;case 13:return this.popState(),42;case 14:return this.popState(),42;case 15:return 32;case 16:return 37;case 17:return 49;case 18:return 46;case 19:this.unput(t.yytext),this.popState(),this.begin("com");break;case 20:return this.popState(),13;case 21:return 46;case 22:return 67;case 23:return 66;case 24:return 66;case 25:return 81;case 26:break;case 27:return this.popState(),52;case 28:return this.popState(),31;case 29:return t.yytext=r(1,2).replace(/\\"/g,'"'),74;case 30:return t.yytext=r(1,2).replace(/\\'/g,"'"),74;case 31:return 79;case 32:return 76;case 33:return 76;case 34:return 77;case 35:return 78;case 36:return 75;case 37:return 69;case 38:return 71;case 39:return 66;case 40:return 66;case 41:return"INVALID";case 42:return 5}},e.rules=[/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/,/^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/,/^(?:[^\x00]*?(?=(\{\{\{\{\/)))/,/^(?:[\s\S]*?--(~)?\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{\{\{)/,/^(?:\}\}\}\})/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^\s*(~)?\}\})/,/^(?:\{\{(~)?\s*else\s*(~)?\}\})/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{(~)?!--)/,/^(?:\{\{(~)?![\s\S]*?\}\})/,/^(?:\{\{(~)?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)|])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:undefined(?=([~}\s)])))/,/^(?:null(?=([~}\s)])))/,/^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/,/^(?:as\s+\|)/,/^(?:\|)/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/,/^(?:\[[^\]]*\])/,/^(?:.)/,/^(?:$)/],e.conditions={mu:{rules:[6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42],inclusive:!1},emu:{rules:[2],inclusive:!1},com:{rules:[5],inclusive:!1},raw:{rules:[3,4],inclusive:!1}, -INITIAL:{rules:[0,1,42],inclusive:!0}},e}();return t.lexer=i,e.prototype=t,t.Parser=e,new e}();t["default"]=n,e.exports=t["default"]},function(e,t,i){"use strict";function n(){}function r(e,t,i){void 0===t&&(t=e.length);var n=e[t-1],r=e[t-2];return n?"ContentStatement"===n.type?(r||!i?/\r?\n\s*?$/:/(^|\r?\n)\s*?$/).test(n.original):void 0:i}function s(e,t,i){void 0===t&&(t=-1);var n=e[t+1],r=e[t+2];return n?"ContentStatement"===n.type?(r||!i?/^\s*?\r?\n/:/^\s*?(\r?\n|$)/).test(n.original):void 0:i}function o(e,t,i){var n=e[null==t?0:t+1];if(n&&"ContentStatement"===n.type&&(i||!n.rightStripped)){var r=n.value;n.value=n.value.replace(i?/^\s+/:/^[ \t]*\r?\n?/,""),n.rightStripped=n.value!==r}}function a(e,t,i){var n=e[null==t?e.length-1:t-1];if(n&&"ContentStatement"===n.type&&(i||!n.leftStripped)){var r=n.value;return n.value=n.value.replace(i?/\s+$/:/[ \t]+$/,""),n.leftStripped=n.value!==r,n.leftStripped}}var l=i(8)["default"];t.__esModule=!0;var c=i(6),u=l(c);n.prototype=new u["default"],n.prototype.Program=function(e){var t=!this.isRootSeen;this.isRootSeen=!0;for(var i=e.body,n=0,l=i.length;n<l;n++){var c=i[n],u=this.accept(c);if(u){var p=r(i,n,t),h=s(i,n,t),d=u.openStandalone&&p,f=u.closeStandalone&&h,m=u.inlineStandalone&&p&&h;u.close&&o(i,n,!0),u.open&&a(i,n,!0),m&&(o(i,n),a(i,n)&&"PartialStatement"===c.type&&(c.indent=/([ \t]+$)/.exec(i[n-1].original)[1])),d&&(o((c.program||c.inverse).body),a(i,n)),f&&(o(i,n),a((c.inverse||c.program).body))}}return e},n.prototype.BlockStatement=function(e){this.accept(e.program),this.accept(e.inverse);var t=e.program||e.inverse,i=e.program&&e.inverse,n=i,l=i;if(i&&i.chained)for(n=i.body[0].program;l.chained;)l=l.body[l.body.length-1].program;var c={open:e.openStrip.open,close:e.closeStrip.close,openStandalone:s(t.body),closeStandalone:r((n||t).body)};if(e.openStrip.close&&o(t.body,null,!0),i){var u=e.inverseStrip;u.open&&a(t.body,null,!0),u.close&&o(n.body,null,!0),e.closeStrip.open&&a(l.body,null,!0),r(t.body)&&s(n.body)&&(a(t.body),o(n.body))}else e.closeStrip.open&&a(t.body,null,!0);return c},n.prototype.MustacheStatement=function(e){return e.strip},n.prototype.PartialStatement=n.prototype.CommentStatement=function(e){var t=e.strip||{};return{inlineStandalone:!0,open:t.open,close:t.close}},t["default"]=n,e.exports=t["default"]},function(e,t,i){"use strict";function n(e,t){this.source=e,this.start={line:t.first_line,column:t.first_column},this.end={line:t.last_line,column:t.last_column}}function r(e){return/^\[.*\]$/.test(e)?e.substr(1,e.length-2):e}function s(e,t){return{open:"~"===e.charAt(2),close:"~"===t.charAt(t.length-3)}}function o(e){return e.replace(/^\{\{~?\!-?-?/,"").replace(/-?-?~?\}\}$/,"")}function a(e,t,i){i=this.locInfo(i);for(var n=e?"@":"",r=[],s=0,o="",a=0,l=t.length;a<l;a++){var c=t[a].part,u=t[a].original!==c;if(n+=(t[a].separator||"")+c,u||".."!==c&&"."!==c&&"this"!==c)r.push(c);else{if(r.length>0)throw new d["default"]("Invalid path: "+n,{loc:i});".."===c&&(s++,o+="../")}}return new this.PathExpression(e,s,r,n,i)}function l(e,t,i,n,r,s){var o=n.charAt(3)||n.charAt(2),a="{"!==o&&"&"!==o;return new this.MustacheStatement(e,t,i,a,r,this.locInfo(s))}function c(e,t,i,n){if(e.path.original!==i){var r={loc:e.path.loc};throw new d["default"](e.path.original+" doesn't match "+i,r)}n=this.locInfo(n);var s=new this.Program([t],null,{},n);return new this.BlockStatement(e.path,e.params,e.hash,s,(void 0),{},{},{},n)}function u(e,t,i,n,r,s){if(n&&n.path&&e.path.original!==n.path.original){var o={loc:e.path.loc};throw new d["default"](e.path.original+" doesn't match "+n.path.original,o)}t.blockParams=e.blockParams;var a=void 0,l=void 0;return i&&(i.chain&&(i.program.body[0].closeStrip=n.strip),l=i.strip,a=i.program),r&&(r=a,a=t,t=r),new this.BlockStatement(e.path,e.params,e.hash,t,a,e.strip,l,n&&n.strip,this.locInfo(s))}var p=i(8)["default"];t.__esModule=!0,t.SourceLocation=n,t.id=r,t.stripFlags=s,t.stripComment=o,t.preparePath=a,t.prepareMustache=l,t.prepareRawBlock=c,t.prepareBlock=u;var h=i(12),d=p(h)},function(e,t,i){"use strict";function n(e,t,i){if(s.isArray(e)){for(var n=[],r=0,o=e.length;r<o;r++)n.push(t.wrap(e[r],i));return n}return"boolean"==typeof e||"number"==typeof e?e+"":e}function r(e){this.srcFile=e,this.source=[]}t.__esModule=!0;var s=i(13),o=void 0;try{}catch(a){}o||(o=function(e,t,i,n){this.src="",n&&this.add(n)},o.prototype={add:function(e){s.isArray(e)&&(e=e.join("")),this.src+=e},prepend:function(e){s.isArray(e)&&(e=e.join("")),this.src=e+this.src},toStringWithSourceMap:function(){return{code:this.toString()}},toString:function(){return this.src}}),r.prototype={prepend:function(e,t){this.source.unshift(this.wrap(e,t))},push:function(e,t){this.source.push(this.wrap(e,t))},merge:function(){var e=this.empty();return this.each(function(t){e.add([" ",t,"\n"])}),e},each:function(e){for(var t=0,i=this.source.length;t<i;t++)e(this.source[t])},empty:function(){var e=void 0===arguments[0]?this.currentLocation||{start:{}}:arguments[0];return new o(e.start.line,e.start.column,this.srcFile)},wrap:function(e){var t=void 0===arguments[1]?this.currentLocation||{start:{}}:arguments[1];return e instanceof o?e:(e=n(e,this,t),new o(t.start.line,t.start.column,this.srcFile,e))},functionCall:function(e,t,i){return i=this.generateList(i),this.wrap([e,t?"."+t+"(":"(",i,")"])},quotedString:function(e){return'"'+(e+"").replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")+'"'},objectLiteral:function(e){var t=[];for(var i in e)if(e.hasOwnProperty(i)){var r=n(e[i],this);"undefined"!==r&&t.push([this.quotedString(i),":",r])}var s=this.generateList(t);return s.prepend("{"),s.add("}"),s},generateList:function(e,t){for(var i=this.empty(t),r=0,s=e.length;r<s;r++)r&&i.add(","),i.add(n(e[r],this,t));return i},generateArray:function(e,t){var i=this.generateList(e,t);return i.prepend("["),i.add("]"),i}},t["default"]=r,e.exports=t["default"]}])})}),define("source-map",[],function(e,t,i){t.SourceMapGenerator=e("source-map/source-map-generator").SourceMapGenerator,t.SourceMapConsumer=e("source-map/source-map-consumer").SourceMapConsumer,t.SourceNode=e("source-map/source-node").SourceNode}),define("source-map/source-map-generator",[],function(e,t,i){define(function(e,t,i){function n(e){e||(e={}),this._file=s.getArg(e,"file",null),this._sourceRoot=s.getArg(e,"sourceRoot",null),this._sources=new o,this._names=new o,this._mappings=[],this._sourcesContents=null}var r=e("source-map/base64-vlq"),s=e("source-map/util"),o=e("source-map/array-set").ArraySet;n.prototype._version=3,n.fromSourceMap=function(e){var t=e.sourceRoot,i=new n({file:e.file,sourceRoot:t});return e.eachMapping(function(e){var n={generated:{line:e.generatedLine,column:e.generatedColumn}};null!=e.source&&(n.source=e.source,null!=t&&(n.source=s.relative(t,n.source)),n.original={line:e.originalLine,column:e.originalColumn},null!=e.name&&(n.name=e.name)),i.addMapping(n)}),e.sources.forEach(function(t){var n=e.sourceContentFor(t);null!=n&&i.setSourceContent(t,n)}),i},n.prototype.addMapping=function(e){var t=s.getArg(e,"generated"),i=s.getArg(e,"original",null),n=s.getArg(e,"source",null),r=s.getArg(e,"name",null);this._validateMapping(t,i,n,r),null==n||this._sources.has(n)||this._sources.add(n),null==r||this._names.has(r)||this._names.add(r),this._mappings.push({generatedLine:t.line,generatedColumn:t.column,originalLine:null!=i&&i.line,originalColumn:null!=i&&i.column,source:n,name:r})},n.prototype.setSourceContent=function(e,t){var i=e;null!=this._sourceRoot&&(i=s.relative(this._sourceRoot,i)),null!=t?(this._sourcesContents||(this._sourcesContents={}),this._sourcesContents[s.toSetString(i)]=t):this._sourcesContents&&(delete this._sourcesContents[s.toSetString(i)],0===Object.keys(this._sourcesContents).length&&(this._sourcesContents=null))},n.prototype.applySourceMap=function(e,t,i){var n=t;if(null==t){if(null==e.file)throw new Error('SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map\'s "file" property. Both were omitted.');n=e.file}var r=this._sourceRoot;null!=r&&(n=s.relative(r,n));var a=new o,l=new o;this._mappings.forEach(function(t){if(t.source===n&&null!=t.originalLine){var o=e.originalPositionFor({line:t.originalLine,column:t.originalColumn});null!=o.source&&(t.source=o.source,null!=i&&(t.source=s.join(i,t.source)),null!=r&&(t.source=s.relative(r,t.source)),t.originalLine=o.line,t.originalColumn=o.column,null!=o.name&&(t.name=o.name))}var c=t.source;null==c||a.has(c)||a.add(c);var u=t.name;null==u||l.has(u)||l.add(u)},this),this._sources=a,this._names=l,e.sources.forEach(function(t){var n=e.sourceContentFor(t);null!=n&&(null!=i&&(t=s.join(i,t)),null!=r&&(t=s.relative(r,t)),this.setSourceContent(t,n))},this)},n.prototype._validateMapping=function(e,t,i,n){if((!(e&&"line"in e&&"column"in e&&e.line>0&&e.column>=0)||t||i||n)&&!(e&&"line"in e&&"column"in e&&t&&"line"in t&&"column"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&i))throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:i,original:t,name:n}))},n.prototype._serializeMappings=function(){var e,t=0,i=1,n=0,o=0,a=0,l=0,c="";this._mappings.sort(s.compareByGeneratedPositions);for(var u=0,p=this._mappings.length;u<p;u++){if(e=this._mappings[u],e.generatedLine!==i)for(t=0;e.generatedLine!==i;)c+=";",i++;else if(u>0){if(!s.compareByGeneratedPositions(e,this._mappings[u-1]))continue;c+=","}c+=r.encode(e.generatedColumn-t),t=e.generatedColumn,null!=e.source&&(c+=r.encode(this._sources.indexOf(e.source)-l),l=this._sources.indexOf(e.source),c+=r.encode(e.originalLine-1-o),o=e.originalLine-1,c+=r.encode(e.originalColumn-n),n=e.originalColumn,null!=e.name&&(c+=r.encode(this._names.indexOf(e.name)-a),a=this._names.indexOf(e.name)))}return c},n.prototype._generateSourcesContent=function(e,t){return e.map(function(e){if(!this._sourcesContents)return null;null!=t&&(e=s.relative(t,e));var i=s.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,i)?this._sourcesContents[i]:null},this)},n.prototype.toJSON=function(){var e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return null!=this._file&&(e.file=this._file),null!=this._sourceRoot&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e},n.prototype.toString=function(){return JSON.stringify(this)},t.SourceMapGenerator=n})}),define("source-map/base64-vlq",[],function(e,t,i){define(function(e,t,i){function n(e){return e<0?(-e<<1)+1:(e<<1)+0}function r(e){var t=1===(1&e),i=e>>1;return t?-i:i}var s=e("source-map/base64"),o=5,a=1<<o,l=a-1,c=a;t.encode=function(e){var t,i="",r=n(e);do t=r&l,r>>>=o,r>0&&(t|=c),i+=s.encode(t);while(r>0);return i},t.decode=function(e,t){var i,n,a=0,u=e.length,p=0,h=0;do{if(a>=u)throw new Error("Expected more digits in base 64 VLQ value.");n=s.decode(e.charAt(a++)),i=!!(n&c),n&=l,p+=n<<h,h+=o}while(i);t.value=r(p),t.rest=e.slice(a)}})}),define("source-map/base64",[],function(e,t,i){define(function(e,t,i){var n={},r={};"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("").forEach(function(e,t){n[e]=t,r[t]=e}),t.encode=function(e){if(e in r)return r[e];throw new TypeError("Must be between 0 and 63: "+e)},t.decode=function(e){if(e in n)return n[e];throw new TypeError("Not a valid base 64 digit: "+e)}})}),define("source-map/util",[],function(e,t,i){define(function(e,t,i){function n(e,t,i){if(t in e)return e[t];if(3===arguments.length)return i;throw new Error('"'+t+'" is a required argument.')}function r(e){var t=e.match(f);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}function s(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}function o(e){var t=e,i=r(e);if(i){if(!i.path)return e;t=i.path}for(var n,o="/"===t.charAt(0),a=t.split(/\/+/),l=0,c=a.length-1;c>=0;c--)n=a[c],"."===n?a.splice(c,1):".."===n?l++:l>0&&(""===n?(a.splice(c+1,l),l=0):(a.splice(c,2),l--));return t=a.join("/"),""===t&&(t=o?"/":"."),i?(i.path=t,s(i)):t}function a(e,t){""===e&&(e="."),""===t&&(t=".");var i=r(t),n=r(e);if(n&&(e=n.path||"/"),i&&!i.scheme)return n&&(i.scheme=n.scheme),s(i);if(i||t.match(m))return t;if(n&&!n.host&&!n.path)return n.host=t,s(n);var a="/"===t.charAt(0)?t:o(e.replace(/\/+$/,"")+"/"+t);return n?(n.path=a,s(n)):a}function l(e,t){""===e&&(e="."),e=e.replace(/\/$/,"");var i=r(e);return"/"==t.charAt(0)&&i&&"/"==i.path?t.slice(1):0===t.indexOf(e+"/")?t.substr(e.length+1):t}function c(e){return"$"+e}function u(e){return e.substr(1)}function p(e,t){var i=e||"",n=t||"";return(i>n)-(i<n)}function h(e,t,i){var n;return(n=p(e.source,t.source))?n:(n=e.originalLine-t.originalLine)?n:(n=e.originalColumn-t.originalColumn,n||i?n:(n=p(e.name,t.name))?n:(n=e.generatedLine-t.generatedLine,n?n:e.generatedColumn-t.generatedColumn))}function d(e,t,i){var n;return(n=e.generatedLine-t.generatedLine)?n:(n=e.generatedColumn-t.generatedColumn,n||i?n:(n=p(e.source,t.source))?n:(n=e.originalLine-t.originalLine)?n:(n=e.originalColumn-t.originalColumn,n?n:p(e.name,t.name)))}t.getArg=n;var f=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.]*)(?::(\d+))?(\S*)$/,m=/^data:.+\,.+$/;t.urlParse=r,t.urlGenerate=s,t.normalize=o,t.join=a,t.relative=l,t.toSetString=c,t.fromSetString=u,t.compareByOriginalPositions=h,t.compareByGeneratedPositions=d})}),define("source-map/array-set",[],function(e,t,i){define(function(e,t,i){function n(){this._array=[],this._set={}}var r=e("source-map/util");n.fromArray=function(e,t){for(var i=new n,r=0,s=e.length;r<s;r++)i.add(e[r],t);return i},n.prototype.add=function(e,t){var i=this.has(e),n=this._array.length;i&&!t||this._array.push(e),i||(this._set[r.toSetString(e)]=n)},n.prototype.has=function(e){return Object.prototype.hasOwnProperty.call(this._set,r.toSetString(e))},n.prototype.indexOf=function(e){if(this.has(e))return this._set[r.toSetString(e)];throw new Error('"'+e+'" is not in the set.')},n.prototype.at=function(e){if(e>=0&&e<this._array.length)return this._array[e];throw new Error("No element indexed by "+e)},n.prototype.toArray=function(){return this._array.slice()},t.ArraySet=n})}),define("source-map/source-map-consumer",[],function(e,t,i){define(function(e,t,i){function n(e){var t=e;"string"==typeof e&&(t=JSON.parse(e.replace(/^\)\]\}'/,"")));var i=r.getArg(t,"version"),n=r.getArg(t,"sources"),s=r.getArg(t,"names",[]),a=r.getArg(t,"sourceRoot",null),l=r.getArg(t,"sourcesContent",null),c=r.getArg(t,"mappings"),u=r.getArg(t,"file",null);if(i!=this._version)throw new Error("Unsupported version: "+i);n=n.map(r.normalize),this._names=o.fromArray(s,!0),this._sources=o.fromArray(n,!0),this.sourceRoot=a,this.sourcesContent=l,this._mappings=c,this.file=u}var r=e("source-map/util"),s=e("source-map/binary-search"),o=e("source-map/array-set").ArraySet,a=e("source-map/base64-vlq");n.fromSourceMap=function(e){var t=Object.create(n.prototype);return t._names=o.fromArray(e._names.toArray(),!0),t._sources=o.fromArray(e._sources.toArray(),!0),t.sourceRoot=e._sourceRoot,t.sourcesContent=e._generateSourcesContent(t._sources.toArray(),t.sourceRoot),t.file=e._file,t.__generatedMappings=e._mappings.slice().sort(r.compareByGeneratedPositions),t.__originalMappings=e._mappings.slice().sort(r.compareByOriginalPositions),t},n.prototype._version=3,Object.defineProperty(n.prototype,"sources",{get:function(){return this._sources.toArray().map(function(e){return null!=this.sourceRoot?r.join(this.sourceRoot,e):e},this)}}),n.prototype.__generatedMappings=null,Object.defineProperty(n.prototype,"_generatedMappings",{get:function(){return this.__generatedMappings||(this.__generatedMappings=[],this.__originalMappings=[],this._parseMappings(this._mappings,this.sourceRoot)),this.__generatedMappings}}),n.prototype.__originalMappings=null,Object.defineProperty(n.prototype,"_originalMappings",{get:function(){return this.__originalMappings||(this.__generatedMappings=[],this.__originalMappings=[],this._parseMappings(this._mappings,this.sourceRoot)),this.__originalMappings}}),n.prototype._nextCharIsMappingSeparator=function(e){var t=e.charAt(0);return";"===t||","===t},n.prototype._parseMappings=function(e,t){for(var i,n=1,s=0,o=0,l=0,c=0,u=0,p=e,h={};p.length>0;)if(";"===p.charAt(0))n++,p=p.slice(1),s=0;else if(","===p.charAt(0))p=p.slice(1);else{if(i={},i.generatedLine=n,a.decode(p,h),i.generatedColumn=s+h.value,s=i.generatedColumn,p=h.rest,p.length>0&&!this._nextCharIsMappingSeparator(p)){if(a.decode(p,h),i.source=this._sources.at(c+h.value),c+=h.value,p=h.rest,0===p.length||this._nextCharIsMappingSeparator(p))throw new Error("Found a source, but no line and column");if(a.decode(p,h),i.originalLine=o+h.value,o=i.originalLine,i.originalLine+=1,p=h.rest,0===p.length||this._nextCharIsMappingSeparator(p))throw new Error("Found a source and line, but no column");a.decode(p,h),i.originalColumn=l+h.value,l=i.originalColumn,p=h.rest,p.length>0&&!this._nextCharIsMappingSeparator(p)&&(a.decode(p,h),i.name=this._names.at(u+h.value),u+=h.value,p=h.rest)}this.__generatedMappings.push(i),"number"==typeof i.originalLine&&this.__originalMappings.push(i)}this.__generatedMappings.sort(r.compareByGeneratedPositions),this.__originalMappings.sort(r.compareByOriginalPositions)},n.prototype._findMapping=function(e,t,i,n,r){if(e[i]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+e[i]);if(e[n]<0)throw new TypeError("Column must be greater than or equal to 0, got "+e[n]);return s.search(e,t,r)},n.prototype.computeColumnSpans=function(){for(var e=0;e<this._generatedMappings.length;++e){var t=this._generatedMappings[e];if(e+1<this._generatedMappings.length){var i=this._generatedMappings[e+1];if(t.generatedLine===i.generatedLine){t.lastGeneratedColumn=i.generatedColumn-1;continue}}t.lastGeneratedColumn=1/0}},n.prototype.originalPositionFor=function(e){var t={generatedLine:r.getArg(e,"line"),generatedColumn:r.getArg(e,"column")},i=this._findMapping(t,this._generatedMappings,"generatedLine","generatedColumn",r.compareByGeneratedPositions);if(i>=0){var n=this._generatedMappings[i];if(n.generatedLine===t.generatedLine){var s=r.getArg(n,"source",null);return null!=s&&null!=this.sourceRoot&&(s=r.join(this.sourceRoot,s)),{source:s,line:r.getArg(n,"originalLine",null),column:r.getArg(n,"originalColumn",null),name:r.getArg(n,"name",null)}}}return{source:null,line:null,column:null,name:null}},n.prototype.sourceContentFor=function(e){if(!this.sourcesContent)return null;if(null!=this.sourceRoot&&(e=r.relative(this.sourceRoot,e)),this._sources.has(e))return this.sourcesContent[this._sources.indexOf(e)];var t;if(null!=this.sourceRoot&&(t=r.urlParse(this.sourceRoot))){var i=e.replace(/^file:\/\//,"");if("file"==t.scheme&&this._sources.has(i))return this.sourcesContent[this._sources.indexOf(i)];if((!t.path||"/"==t.path)&&this._sources.has("/"+e))return this.sourcesContent[this._sources.indexOf("/"+e)]}throw new Error('"'+e+'" is not in the SourceMap.')},n.prototype.generatedPositionFor=function(e){var t={source:r.getArg(e,"source"),originalLine:r.getArg(e,"line"),originalColumn:r.getArg(e,"column")};null!=this.sourceRoot&&(t.source=r.relative(this.sourceRoot,t.source));var i=this._findMapping(t,this._originalMappings,"originalLine","originalColumn",r.compareByOriginalPositions);if(i>=0){var n=this._originalMappings[i];return{line:r.getArg(n,"generatedLine",null),column:r.getArg(n,"generatedColumn",null),lastColumn:r.getArg(n,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}},n.prototype.allGeneratedPositionsFor=function(e){var t={source:r.getArg(e,"source"),originalLine:r.getArg(e,"line"),originalColumn:1/0};null!=this.sourceRoot&&(t.source=r.relative(this.sourceRoot,t.source));var i=[],n=this._findMapping(t,this._originalMappings,"originalLine","originalColumn",r.compareByOriginalPositions);if(n>=0)for(var s=this._originalMappings[n];s&&s.originalLine===t.originalLine;)i.push({line:r.getArg(s,"generatedLine",null),column:r.getArg(s,"generatedColumn",null),lastColumn:r.getArg(s,"lastGeneratedColumn",null)}),s=this._originalMappings[--n];return i.reverse()},n.GENERATED_ORDER=1,n.ORIGINAL_ORDER=2,n.prototype.eachMapping=function(e,t,i){var s,o=t||null,a=i||n.GENERATED_ORDER;switch(a){case n.GENERATED_ORDER:s=this._generatedMappings;break;case n.ORIGINAL_ORDER:s=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var l=this.sourceRoot;s.map(function(e){var t=e.source;return null!=t&&null!=l&&(t=r.join(l,t)),{source:t,generatedLine:e.generatedLine,generatedColumn:e.generatedColumn,originalLine:e.originalLine,originalColumn:e.originalColumn,name:e.name}}).forEach(e,o)},t.SourceMapConsumer=n})}),define("source-map/binary-search",[],function(e,t,i){define(function(e,t,i){function n(e,t,i,r,s){var o=Math.floor((t-e)/2)+e,a=s(i,r[o],!0);return 0===a?o:a>0?t-o>1?n(o,t,i,r,s):o:o-e>1?n(e,o,i,r,s):e<0?-1:e}t.search=function(e,t,i){return 0===t.length?-1:n(-1,t.length,e,t,i)}})}),define("source-map/source-node",[],function(e,t,i){define(function(e,t,i){function n(e,t,i,n,r){this.children=[],this.sourceContents={},this.line=null==e?null:e,this.column=null==t?null:t,this.source=null==i?null:i,this.name=null==r?null:r,this[l]=!0,null!=n&&this.add(n)}var r=e("source-map/source-map-generator").SourceMapGenerator,s=e("source-map/util"),o=/(\r?\n)/,a=/\r\n|[\s\S]/g,l="$$$isSourceNode$$$";n.fromStringWithSourceMap=function(e,t,i){function r(e,t){if(null===e||void 0===e.source)a.add(t);else{var r=i?s.join(i,e.source):e.source;a.add(new n(e.originalLine,e.originalColumn,r,t,e.name))}}var a=new n,l=e.split(o),c=function(){var e=l.shift(),t=l.shift()||"";return e+t},u=1,p=0,h=null;return t.eachMapping(function(e){if(null!==h){if(!(u<e.generatedLine)){var t=l[0],i=t.substr(0,e.generatedColumn-p);return l[0]=t.substr(e.generatedColumn-p),p=e.generatedColumn,r(h,i),void(h=e)}var i="";r(h,c()),u++,p=0}for(;u<e.generatedLine;)a.add(c()),u++;if(p<e.generatedColumn){var t=l[0];a.add(t.substr(0,e.generatedColumn)),l[0]=t.substr(e.generatedColumn),p=e.generatedColumn}h=e},this),l.length>0&&(h&&r(h,c()),a.add(l.join(""))),t.sources.forEach(function(e){var n=t.sourceContentFor(e);null!=n&&(null!=i&&(e=s.join(i,e)),a.setSourceContent(e,n))}),a},n.prototype.add=function(e){if(Array.isArray(e))e.forEach(function(e){this.add(e)},this);else{if(!e[l]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);e&&this.children.push(e)}return this},n.prototype.prepend=function(e){if(Array.isArray(e))for(var t=e.length-1;t>=0;t--)this.prepend(e[t]);else{if(!e[l]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);this.children.unshift(e)}return this},n.prototype.walk=function(e){for(var t,i=0,n=this.children.length;i<n;i++)t=this.children[i],t[l]?t.walk(e):""!==t&&e(t,{source:this.source,line:this.line,column:this.column,name:this.name})},n.prototype.join=function(e){var t,i,n=this.children.length;if(n>0){for(t=[],i=0;i<n-1;i++)t.push(this.children[i]),t.push(e);t.push(this.children[i]),this.children=t}return this},n.prototype.replaceRight=function(e,t){var i=this.children[this.children.length-1];return i[l]?i.replaceRight(e,t):"string"==typeof i?this.children[this.children.length-1]=i.replace(e,t):this.children.push("".replace(e,t)),this},n.prototype.setSourceContent=function(e,t){this.sourceContents[s.toSetString(e)]=t},n.prototype.walkSourceContents=function(e){for(var t=0,i=this.children.length;t<i;t++)this.children[t][l]&&this.children[t].walkSourceContents(e);for(var n=Object.keys(this.sourceContents),t=0,i=n.length;t<i;t++)e(s.fromSetString(n[t]),this.sourceContents[n[t]])},n.prototype.toString=function(){var e="";return this.walk(function(t){e+=t}),e},n.prototype.toStringWithSourceMap=function(e){var t={code:"",line:1,column:0},i=new r(e),n=!1,s=null,l=null,c=null,u=null;return this.walk(function(e,r){t.code+=e,null!==r.source&&null!==r.line&&null!==r.column?(s===r.source&&l===r.line&&c===r.column&&u===r.name||i.addMapping({source:r.source,original:{line:r.line,column:r.column},generated:{line:t.line,column:t.column},name:r.name}),s=r.source,l=r.line,c=r.column,u=r.name,n=!0):n&&(i.addMapping({generated:{line:t.line,column:t.column}}),s=null,n=!1),e.match(a).forEach(function(e,a,l){o.test(e)?(t.line++,t.column=0,a+1===l.length?(s=null,n=!1):n&&i.addMapping({source:r.source,original:{line:r.line,column:r.column},generated:{line:t.line,column:t.column},name:r.name})):t.column+=e.length})}),this.walkSourceContents(function(e,t){i.setSourceContent(e,t)}),{code:t.code,map:i}},t.SourceNode=n})}),define("hammer",[],function(e,t,i){!function(e,t,n,r){"use strict";function s(e,t,i){return setTimeout(p(e,i),t)}function o(e,t,i){return!!Array.isArray(e)&&(a(e,i[t],i),!0)}function a(e,t,i){var n;if(e)if(e.forEach)e.forEach(t,i);else if(e.length!==r)for(n=0;n<e.length;)t.call(i,e[n],n,e),n++;else for(n in e)e.hasOwnProperty(n)&&t.call(i,e[n],n,e)}function l(e,t,i){for(var n=Object.keys(t),s=0;s<n.length;)(!i||i&&e[n[s]]===r)&&(e[n[s]]=t[n[s]]),s++;return e}function c(e,t){return l(e,t,!0)}function u(e,t,i){var n,r=t.prototype;n=e.prototype=Object.create(r),n.constructor=e,n._super=r,i&&l(n,i)}function p(e,t){return function(){return e.apply(t,arguments)}}function h(e,t){return typeof e==pe?e.apply(t?t[0]||r:r,t):e}function d(e,t){return e===r?t:e}function f(e,t,i){a(y(t),function(t){e.addEventListener(t,i,!1)})}function m(e,t,i){a(y(t),function(t){e.removeEventListener(t,i,!1)})}function g(e,t){for(;e;){if(e==t)return!0;e=e.parentNode}return!1}function v(e,t){return e.indexOf(t)>-1}function y(e){return e.trim().split(/\s+/g)}function w(e,t,i){if(e.indexOf&&!i)return e.indexOf(t);for(var n=0;n<e.length;){if(i&&e[n][i]==t||!i&&e[n]===t)return n;n++}return-1}function b(e){return Array.prototype.slice.call(e,0)}function x(e,t,i){for(var n=[],r=[],s=0;s<e.length;){var o=t?e[s][t]:e[s];w(r,o)<0&&n.push(e[s]),r[s]=o,s++}return i&&(n=t?n.sort(function(e,i){return e[t]>i[t]}):n.sort()),n}function S(e,t){for(var i,n,s=t[0].toUpperCase()+t.slice(1),o=0;o<ce.length;){if(i=ce[o],n=i?i+s:t,n in e)return n;o++}return r}function T(){return me++}function C(e){var t=e.ownerDocument;return t.defaultView||t.parentWindow}function k(e,t){var i=this;this.manager=e,this.callback=t,this.element=e.element,this.target=e.options.inputTarget,this.domHandler=function(t){h(e.options.enable,[e])&&i.handler(t)},this.init()}function E(e){var t,i=e.options.inputClass;return new(t=i?i:ye?H:we?q:ve?W:F)(e,P)}function P(e,t,i){var n=i.pointers.length,r=i.changedPointers.length,s=t&ke&&n-r===0,o=t&(Pe|Ae)&&n-r===0;i.isFirst=!!s,i.isFinal=!!o,s&&(e.session={}),i.eventType=t,A(e,i),e.emit("hammer.input",i),e.recognize(i),e.session.prevInput=i}function A(e,t){var i=e.session,n=t.pointers,r=n.length;i.firstInput||(i.firstInput=L(t)),r>1&&!i.firstMultiple?i.firstMultiple=L(t):1===r&&(i.firstMultiple=!1);var s=i.firstInput,o=i.firstMultiple,a=o?o.center:s.center,l=t.center=M(n);t.timeStamp=fe(),t.deltaTime=t.timeStamp-s.timeStamp,t.angle=O(a,l),t.distance=z(a,l),_(i,t),t.offsetDirection=I(t.deltaX,t.deltaY),t.scale=o?R(o.pointers,n):1,t.rotation=o?B(o.pointers,n):0,D(i,t);var c=e.element;g(t.srcEvent.target,c)&&(c=t.srcEvent.target),t.target=c}function _(e,t){var i=t.center,n=e.offsetDelta||{},r=e.prevDelta||{},s=e.prevInput||{};t.eventType!==ke&&s.eventType!==Pe||(r=e.prevDelta={x:s.deltaX||0,y:s.deltaY||0},n=e.offsetDelta={x:i.x,y:i.y}),t.deltaX=r.x+(i.x-n.x),t.deltaY=r.y+(i.y-n.y)}function D(e,t){var i,n,s,o,a=e.lastInterval||t,l=t.timeStamp-a.timeStamp;if(t.eventType!=Ae&&(l>Ce||a.velocity===r)){var c=a.deltaX-t.deltaX,u=a.deltaY-t.deltaY,p=N(l,c,u);n=p.x,s=p.y,i=de(p.x)>de(p.y)?p.x:p.y,o=I(c,u),e.lastInterval=t}else i=a.velocity,n=a.velocityX,s=a.velocityY,o=a.direction;t.velocity=i,t.velocityX=n,t.velocityY=s,t.direction=o}function L(e){for(var t=[],i=0;i<e.pointers.length;)t[i]={clientX:he(e.pointers[i].clientX),clientY:he(e.pointers[i].clientY)},i++;return{timeStamp:fe(),pointers:t,center:M(t),deltaX:e.deltaX,deltaY:e.deltaY}}function M(e){var t=e.length;if(1===t)return{x:he(e[0].clientX),y:he(e[0].clientY)};for(var i=0,n=0,r=0;r<t;)i+=e[r].clientX,n+=e[r].clientY,r++;return{x:he(i/t),y:he(n/t)}}function N(e,t,i){return{x:t/e||0,y:i/e||0}}function I(e,t){return e===t?_e:de(e)>=de(t)?e>0?De:Le:t>0?Me:Ne}function z(e,t,i){i||(i=Be);var n=t[i[0]]-e[i[0]],r=t[i[1]]-e[i[1]];return Math.sqrt(n*n+r*r)}function O(e,t,i){i||(i=Be);var n=t[i[0]]-e[i[0]],r=t[i[1]]-e[i[1]];return 180*Math.atan2(r,n)/Math.PI}function B(e,t){return O(t[1],t[0],Re)-O(e[1],e[0],Re)}function R(e,t){return z(t[0],t[1],Re)/z(e[0],e[1],Re)}function F(){this.evEl=He,this.evWin=je,this.allow=!0,this.pressed=!1,k.apply(this,arguments)}function H(){this.evEl=Ye,this.evWin=We,k.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function j(){this.evTarget=Ge,this.evWin=Ve,this.started=!1,k.apply(this,arguments)}function X(e,t){var i=b(e.touches),n=b(e.changedTouches);return t&(Pe|Ae)&&(i=x(i.concat(n),"identifier",!0)),[i,n]}function q(){this.evTarget=Ke,this.targetIds={},k.apply(this,arguments)}function Y(e,t){var i=b(e.touches),n=this.targetIds;if(t&(ke|Ee)&&1===i.length)return n[i[0].identifier]=!0,[i,i];var r,s,o=b(e.changedTouches),a=[],l=this.target;if(s=i.filter(function(e){return g(e.target,l)}),t===ke)for(r=0;r<s.length;)n[s[r].identifier]=!0,r++;for(r=0;r<o.length;)n[o[r].identifier]&&a.push(o[r]),t&(Pe|Ae)&&delete n[o[r].identifier],r++;return a.length?[x(s.concat(a),"identifier",!0),a]:void 0}function W(){k.apply(this,arguments);var e=p(this.handler,this);this.touch=new q(this.manager,e),this.mouse=new F(this.manager,e)}function $(e,t){this.manager=e,this.set(t)}function G(e){if(v(e,it))return it;var t=v(e,nt),i=v(e,rt);return t&&i?nt+" "+rt:t||i?t?nt:rt:v(e,tt)?tt:et}function V(e){this.id=T(),this.manager=null,this.options=c(e||{},this.defaults),this.options.enable=d(this.options.enable,!0),this.state=st,this.simultaneous={},this.requireFail=[]}function U(e){return e&ut?"cancel":e<?"end":e&at?"move":e&ot?"start":""}function K(e){return e==Ne?"down":e==Me?"up":e==De?"left":e==Le?"right":""}function Q(e,t){var i=t.manager;return i?i.get(e):e}function J(){V.apply(this,arguments)}function Z(){J.apply(this,arguments),this.pX=null,this.pY=null}function ee(){J.apply(this,arguments)}function te(){V.apply(this,arguments),this._timer=null,this._input=null}function ie(){J.apply(this,arguments)}function ne(){J.apply(this,arguments)}function re(){V.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function se(e,t){return t=t||{},t.recognizers=d(t.recognizers,se.defaults.preset),new oe(e,t)}function oe(e,t){t=t||{},this.options=c(t,se.defaults),this.options.inputTarget=this.options.inputTarget||e,this.handlers={},this.session={},this.recognizers=[],this.element=e,this.input=E(this),this.touchAction=new $(this,this.options.touchAction),ae(this,!0),a(t.recognizers,function(e){var t=this.add(new e[0](e[1]));e[2]&&t.recognizeWith(e[2]),e[3]&&t.requireFailure(e[3])},this)}function ae(e,t){var i=e.element;a(e.options.cssProps,function(e,n){i.style[S(i.style,n)]=t?e:""})}function le(e,i){var n=t.createEvent("Event");n.initEvent(e,!0,!0),n.gesture=i,i.target.dispatchEvent(n)}var ce=["","webkit","moz","MS","ms","o"],ue=t.createElement("div"),pe="function",he=Math.round,de=Math.abs,fe=Date.now,me=1,ge=/mobile|tablet|ip(ad|hone|od)|android/i,ve="ontouchstart"in e,ye=S(e,"PointerEvent")!==r,we=ve&&ge.test(navigator.userAgent),be="touch",xe="pen",Se="mouse",Te="kinect",Ce=25,ke=1,Ee=2,Pe=4,Ae=8,_e=1,De=2,Le=4,Me=8,Ne=16,Ie=De|Le,ze=Me|Ne,Oe=Ie|ze,Be=["x","y"],Re=["clientX","clientY"];k.prototype={handler:function(){},init:function(){this.evEl&&f(this.element,this.evEl,this.domHandler), -this.evTarget&&f(this.target,this.evTarget,this.domHandler),this.evWin&&f(C(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&m(this.element,this.evEl,this.domHandler),this.evTarget&&m(this.target,this.evTarget,this.domHandler),this.evWin&&m(C(this.element),this.evWin,this.domHandler)}};var Fe={mousedown:ke,mousemove:Ee,mouseup:Pe},He="mousedown",je="mousemove mouseup";u(F,k,{handler:function(e){var t=Fe[e.type];t&ke&&0===e.button&&(this.pressed=!0),t&Ee&&1!==e.which&&(t=Pe),this.pressed&&this.allow&&(t&Pe&&(this.pressed=!1),this.callback(this.manager,t,{pointers:[e],changedPointers:[e],pointerType:Se,srcEvent:e}))}});var Xe={pointerdown:ke,pointermove:Ee,pointerup:Pe,pointercancel:Ae,pointerout:Ae},qe={2:be,3:xe,4:Se,5:Te},Ye="pointerdown",We="pointermove pointerup pointercancel";e.MSPointerEvent&&(Ye="MSPointerDown",We="MSPointerMove MSPointerUp MSPointerCancel"),u(H,k,{handler:function(e){var t=this.store,i=!1,n=e.type.toLowerCase().replace("ms",""),r=Xe[n],s=qe[e.pointerType]||e.pointerType,o=s==be,a=w(t,e.pointerId,"pointerId");r&ke&&(0===e.button||o)?a<0&&(t.push(e),a=t.length-1):r&(Pe|Ae)&&(i=!0),a<0||(t[a]=e,this.callback(this.manager,r,{pointers:t,changedPointers:[e],pointerType:s,srcEvent:e}),i&&t.splice(a,1))}});var $e={touchstart:ke,touchmove:Ee,touchend:Pe,touchcancel:Ae},Ge="touchstart",Ve="touchstart touchmove touchend touchcancel";u(j,k,{handler:function(e){var t=$e[e.type];if(t===ke&&(this.started=!0),this.started){var i=X.call(this,e,t);t&(Pe|Ae)&&i[0].length-i[1].length===0&&(this.started=!1),this.callback(this.manager,t,{pointers:i[0],changedPointers:i[1],pointerType:be,srcEvent:e})}}});var Ue={touchstart:ke,touchmove:Ee,touchend:Pe,touchcancel:Ae},Ke="touchstart touchmove touchend touchcancel";u(q,k,{handler:function(e){var t=Ue[e.type],i=Y.call(this,e,t);i&&this.callback(this.manager,t,{pointers:i[0],changedPointers:i[1],pointerType:be,srcEvent:e})}}),u(W,k,{handler:function(e,t,i){var n=i.pointerType==be,r=i.pointerType==Se;if(n)this.mouse.allow=!1;else if(r&&!this.mouse.allow)return;t&(Pe|Ae)&&(this.mouse.allow=!0),this.callback(e,t,i)},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var Qe=S(ue.style,"touchAction"),Je=Qe!==r,Ze="compute",et="auto",tt="manipulation",it="none",nt="pan-x",rt="pan-y";$.prototype={set:function(e){e==Ze&&(e=this.compute()),Je&&(this.manager.element.style[Qe]=e),this.actions=e.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var e=[];return a(this.manager.recognizers,function(t){h(t.options.enable,[t])&&(e=e.concat(t.getTouchAction()))}),G(e.join(" "))},preventDefaults:function(e){if(!Je){var t=e.srcEvent,i=e.offsetDirection;if(this.manager.session.prevented)return void t.preventDefault();var n=this.actions,r=v(n,it),s=v(n,rt),o=v(n,nt);return r||s&&i&Ie||o&&i&ze?this.preventSrc(t):void 0}},preventSrc:function(e){this.manager.session.prevented=!0,e.preventDefault()}};var st=1,ot=2,at=4,lt=8,ct=lt,ut=16,pt=32;V.prototype={defaults:{},set:function(e){return l(this.options,e),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(e){if(o(e,"recognizeWith",this))return this;var t=this.simultaneous;return e=Q(e,this),t[e.id]||(t[e.id]=e,e.recognizeWith(this)),this},dropRecognizeWith:function(e){return o(e,"dropRecognizeWith",this)?this:(e=Q(e,this),delete this.simultaneous[e.id],this)},requireFailure:function(e){if(o(e,"requireFailure",this))return this;var t=this.requireFail;return e=Q(e,this),w(t,e)===-1&&(t.push(e),e.requireFailure(this)),this},dropRequireFailure:function(e){if(o(e,"dropRequireFailure",this))return this;e=Q(e,this);var t=w(this.requireFail,e);return t>-1&&this.requireFail.splice(t,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(e){return!!this.simultaneous[e.id]},emit:function(e){function t(t){i.manager.emit(i.options.event+(t?U(n):""),e)}var i=this,n=this.state;n<lt&&t(!0),t(),n>=lt&&t(!0)},tryEmit:function(e){return this.canEmit()?this.emit(e):void(this.state=pt)},canEmit:function(){for(var e=0;e<this.requireFail.length;){if(!(this.requireFail[e].state&(pt|st)))return!1;e++}return!0},recognize:function(e){var t=l({},e);return h(this.options.enable,[this,t])?(this.state&(ct|ut|pt)&&(this.state=st),this.state=this.process(t),void(this.state&(ot|at|lt|ut)&&this.tryEmit(t))):(this.reset(),void(this.state=pt))},process:function(e){},getTouchAction:function(){},reset:function(){}},u(J,V,{defaults:{pointers:1},attrTest:function(e){var t=this.options.pointers;return 0===t||e.pointers.length===t},process:function(e){var t=this.state,i=e.eventType,n=t&(ot|at),r=this.attrTest(e);return n&&(i&Ae||!r)?t|ut:n||r?i&Pe?t|lt:t&ot?t|at:ot:pt}}),u(Z,J,{defaults:{event:"pan",threshold:10,pointers:1,direction:Oe},getTouchAction:function(){var e=this.options.direction,t=[];return e&Ie&&t.push(rt),e&ze&&t.push(nt),t},directionTest:function(e){var t=this.options,i=!0,n=e.distance,r=e.direction,s=e.deltaX,o=e.deltaY;return r&t.direction||(t.direction&Ie?(r=0===s?_e:s<0?De:Le,i=s!=this.pX,n=Math.abs(e.deltaX)):(r=0===o?_e:o<0?Me:Ne,i=o!=this.pY,n=Math.abs(e.deltaY))),e.direction=r,i&&n>t.threshold&&r&t.direction},attrTest:function(e){return J.prototype.attrTest.call(this,e)&&(this.state&ot||!(this.state&ot)&&this.directionTest(e))},emit:function(e){this.pX=e.deltaX,this.pY=e.deltaY;var t=K(e.direction);t&&this.manager.emit(this.options.event+t,e),this._super.emit.call(this,e)}}),u(ee,J,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[it]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.scale-1)>this.options.threshold||this.state&ot)},emit:function(e){if(this._super.emit.call(this,e),1!==e.scale){var t=e.scale<1?"in":"out";this.manager.emit(this.options.event+t,e)}}}),u(te,V,{defaults:{event:"press",pointers:1,time:500,threshold:5},getTouchAction:function(){return[et]},process:function(e){var t=this.options,i=e.pointers.length===t.pointers,n=e.distance<t.threshold,r=e.deltaTime>t.time;if(this._input=e,!n||!i||e.eventType&(Pe|Ae)&&!r)this.reset();else if(e.eventType&ke)this.reset(),this._timer=s(function(){this.state=ct,this.tryEmit()},t.time,this);else if(e.eventType&Pe)return ct;return pt},reset:function(){clearTimeout(this._timer)},emit:function(e){this.state===ct&&(e&&e.eventType&Pe?this.manager.emit(this.options.event+"up",e):(this._input.timeStamp=fe(),this.manager.emit(this.options.event,this._input)))}}),u(ie,J,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[it]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.rotation)>this.options.threshold||this.state&ot)}}),u(ne,J,{defaults:{event:"swipe",threshold:10,velocity:.65,direction:Ie|ze,pointers:1},getTouchAction:function(){return Z.prototype.getTouchAction.call(this)},attrTest:function(e){var t,i=this.options.direction;return i&(Ie|ze)?t=e.velocity:i&Ie?t=e.velocityX:i&ze&&(t=e.velocityY),this._super.attrTest.call(this,e)&&i&e.direction&&e.distance>this.options.threshold&&de(t)>this.options.velocity&&e.eventType&Pe},emit:function(e){var t=K(e.direction);t&&this.manager.emit(this.options.event+t,e),this.manager.emit(this.options.event,e)}}),u(re,V,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:2,posThreshold:10},getTouchAction:function(){return[tt]},process:function(e){var t=this.options,i=e.pointers.length===t.pointers,n=e.distance<t.threshold,r=e.deltaTime<t.time;if(this.reset(),e.eventType&ke&&0===this.count)return this.failTimeout();if(n&&r&&i){if(e.eventType!=Pe)return this.failTimeout();var o=!this.pTime||e.timeStamp-this.pTime<t.interval,a=!this.pCenter||z(this.pCenter,e.center)<t.posThreshold;this.pTime=e.timeStamp,this.pCenter=e.center,a&&o?this.count+=1:this.count=1,this._input=e;var l=this.count%t.taps;if(0===l)return this.hasRequireFailures()?(this._timer=s(function(){this.state=ct,this.tryEmit()},t.interval,this),ot):ct}return pt},failTimeout:function(){return this._timer=s(function(){this.state=pt},this.options.interval,this),pt},reset:function(){clearTimeout(this._timer)},emit:function(){this.state==ct&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),se.VERSION="2.0.4",se.defaults={domEvents:!1,touchAction:Ze,enable:!0,inputTarget:null,inputClass:null,preset:[[ie,{enable:!1}],[ee,{enable:!1},["rotate"]],[ne,{direction:Ie}],[Z,{direction:Ie},["swipe"]],[re],[re,{event:"doubletap",taps:2},["tap"]],[te]],cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}};var ht=1,dt=2;oe.prototype={set:function(e){return l(this.options,e),e.touchAction&&this.touchAction.update(),e.inputTarget&&(this.input.destroy(),this.input.target=e.inputTarget,this.input.init()),this},stop:function(e){this.session.stopped=e?dt:ht},recognize:function(e){var t=this.session;if(!t.stopped){this.touchAction.preventDefaults(e);var i,n=this.recognizers,r=t.curRecognizer;(!r||r&&r.state&ct)&&(r=t.curRecognizer=null);for(var s=0;s<n.length;)i=n[s],t.stopped===dt||r&&i!=r&&!i.canRecognizeWith(r)?i.reset():i.recognize(e),!r&&i.state&(ot|at|lt)&&(r=t.curRecognizer=i),s++}},get:function(e){if(e instanceof V)return e;for(var t=this.recognizers,i=0;i<t.length;i++)if(t[i].options.event==e)return t[i];return null},add:function(e){if(o(e,"add",this))return this;var t=this.get(e.options.event);return t&&this.remove(t),this.recognizers.push(e),e.manager=this,this.touchAction.update(),e},remove:function(e){if(o(e,"remove",this))return this;var t=this.recognizers;return e=this.get(e),t.splice(w(t,e),1),this.touchAction.update(),this},on:function(e,t){var i=this.handlers;return a(y(e),function(e){i[e]=i[e]||[],i[e].push(t)}),this},off:function(e,t){var i=this.handlers;return a(y(e),function(e){t?i[e].splice(w(i[e],t),1):delete i[e]}),this},emit:function(e,t){this.options.domEvents&&le(e,t);var i=this.handlers[e]&&this.handlers[e].slice();if(i&&i.length){t.type=e,t.preventDefault=function(){t.srcEvent.preventDefault()};for(var n=0;n<i.length;)i[n](t),n++}},destroy:function(){this.element&&ae(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},l(se,{INPUT_START:ke,INPUT_MOVE:Ee,INPUT_END:Pe,INPUT_CANCEL:Ae,STATE_POSSIBLE:st,STATE_BEGAN:ot,STATE_CHANGED:at,STATE_ENDED:lt,STATE_RECOGNIZED:ct,STATE_CANCELLED:ut,STATE_FAILED:pt,DIRECTION_NONE:_e,DIRECTION_LEFT:De,DIRECTION_RIGHT:Le,DIRECTION_UP:Me,DIRECTION_DOWN:Ne,DIRECTION_HORIZONTAL:Ie,DIRECTION_VERTICAL:ze,DIRECTION_ALL:Oe,Manager:oe,Input:k,TouchAction:$,TouchInput:q,MouseInput:F,PointerEventInput:H,TouchMouseInput:W,SingleTouchInput:j,Recognizer:V,AttrRecognizer:J,Tap:re,Pan:Z,Swipe:ne,Pinch:ee,Rotate:ie,Press:te,on:f,off:m,each:a,merge:c,extend:l,inherit:u,bindFn:p,prefixed:S}),typeof define==pe&&define.amd?define(function(){return se}):"undefined"!=typeof i&&i.exports?i.exports=se:e[n]=se}(window,document,"Hammer")}),define("mlellipsis",[],function(e,t,i){t.init=function(){Element.prototype.getText=function(){return void 0==this.innerText?this.textContent:this.innerText},Element.prototype.setText=function(e){void 0==this.innerText?this.textContent=e||"":this.innerText=e||""},Element.prototype.getFinalStyle=function(e,t){var i;return i=window.getComputedStyle?window.getComputedStyle(this,null)[e]:this.currentStyle[e],void 0!=t&&(i=i*t+"px"),i.substring(0,i.toString().length-2)},Element.prototype.mlellipsis=function(e){var t=this.getText(),i=this.getAttribute("title");null==i?this.setAttribute("title",t):this.setText(i);var n=this.getFinalStyle("fontSize");if(/msie/i.test(navigator.userAgent))var r=this.getFinalStyle("lineHeight",n);else var r=this.getFinalStyle("lineHeight");var s=Math.floor(this.clientHeight);"norm"==r?(r=Number(1.5*n),this.setAttribute("style","line-height:"+r+"px")):r=Number(r);var o=e*r;if(s>=o){for(t=this.getText();3*o<this.clientHeight;)this.setText(t.substring(0,t.length/2)),t=this.getText();for(;this.clientHeight-o>r-1&&(t=this.getText(),!(t.length<3));)this.setText(t.replace(/(\s)*([a-zA-Z0-9]+|\W)(\.\.\.)?$/,"..."))}},Element.prototype.getTextLineNumber=function(e){var t=this.getText(),i=this.getAttribute("title");null==i?this.setAttribute("title",t):this.setText(i);var n=this.getFinalStyle("fontSize");if(/msie/i.test(navigator.userAgent))var r=this.getFinalStyle("lineHeight",n);else var r=this.getFinalStyle("lineHeight");var s=this.clientHeight;return"norm"==r?(r=Number(1.5*n),this.setAttribute("style","line-height:"+r+"px")):r=Number(r),s/r}}}); \ No newline at end of file +!function(e,t){function i(e){return function(t){return{}.toString.call(t)=="[object "+e+"]"}}function n(){return E++}function r(e){return e.match(_)[0]}function s(e){for(e=e.replace(D,"/");e.match(L);)e=e.replace(L,"/");return e=e.replace(M,"$1/")}function o(e){var t=e.length-1,i=e.charAt(t);return"#"===i?e.substring(0,t):".js"===e.substring(t-2)||e.indexOf("?")>0||".css"===e.substring(t-3)||"/"===i?e:e+".js"}function a(e){var t=x.alias;return t&&T(t[e])?t[e]:e}function l(e){var t,i=x.paths;return i&&(t=e.match(N))&&T(i[t[1]])&&(e=i[t[1]]+t[2]),e}function c(e){var t=x.vars;return t&&e.indexOf("{")>-1&&(e=e.replace(I,function(e,i){return T(t[i])?t[i]:e})),e}function u(e){var t=x.map,i=e;if(t)for(var n=0,r=t.length;r>n;n++){var s=t[n];if(i=k(s)?s(e)||e:e.replace(s[0],s[1]),i!==e)break}return i}function p(e,t){var i,n=e.charAt(0);if(z.test(e))i=e;else if("."===n)i=s((t?r(t):x.cwd)+e);else if("/"===n){var o=x.cwd.match(O);i=o?o[0]+e.substring(1):e}else i=x.base+e;return 0===i.indexOf("//")&&(i=location.protocol+i),i}function h(e,t){if(!e)return"";e=a(e),e=l(e),e=c(e),e=o(e);var i=p(e,t);return i=u(i)}function d(e){return e.hasAttribute?e.src:e.getAttribute("src",4)}function f(e,t,i){var n=$.test(e),r=B.createElement(n?"link":"script");if(i){var s=k(i)?i(e):i;s&&(r.charset=s)}m(r,t,n,e),n?(r.rel="stylesheet",r.href=e):(r.async=!0,r.src=e),X=r,W?Y.insertBefore(r,W):Y.appendChild(r),X=null}function m(e,i,n,r){function s(){e.onload=e.onerror=e.onreadystatechange=null,n||x.debug||Y.removeChild(e),e=null,i()}var o="onload"in e;return!n||!G&&o?(o?(e.onload=s,e.onerror=function(){A("error",{uri:r,node:e}),s()}):e.onreadystatechange=function(){/loaded|complete/.test(e.readyState)&&s()},t):(setTimeout(function(){g(e,i)},1),t)}function g(e,t){var i,n=e.sheet;if(G)n&&(i=!0);else if(n)try{n.cssRules&&(i=!0)}catch(r){"NS_ERROR_DOM_SECURITY_ERR"===r.name&&(i=!0)}setTimeout(function(){i?t():g(e,t)},20)}function v(){if(X)return X;if(q&&"interactive"===q.readyState)return q;for(var e=Y.getElementsByTagName("script"),t=e.length-1;t>=0;t--){var i=e[t];if("interactive"===i.readyState)return q=i}}function y(e){var t=[];return e.replace(K,"").replace(U,function(e,i,n){n&&t.push(n)}),t}function w(e,t){this.uri=e,this.dependencies=t||[],this.exports=null,this.status=0,this._waitings={},this._remain=0}if(!e.seajs){var b=e.seajs={version:"2.2.0"},x=b.data={},S=i("Object"),T=i("String"),C=Array.isArray||i("Array"),k=i("Function"),E=0,P=x.events={};b.on=function(e,t){var i=P[e]||(P[e]=[]);return i.push(t),b},b.off=function(e,t){if(!e&&!t)return P=x.events={},b;var i=P[e];if(i)if(t)for(var n=i.length-1;n>=0;n--)i[n]===t&&i.splice(n,1);else delete P[e];return b};var A=b.emit=function(e,t){var i,n=P[e];if(n)for(n=n.slice();i=n.shift();)i(t);return b},_=/[^?#]*\//,D=/\/\.\//g,L=/\/[^\/]+\/\.\.\//,M=/([^:\/])\/\//g,N=/^([^\/:]+)(\/.+)$/,I=/{([^{]+)}/g,z=/^\/\/.|:\//,O=/^.*?\/\/.*?\//,B=document,R=r(B.URL),F=B.scripts,H=B.getElementById("seajsnode")||F[F.length-1],j=r(d(H)||R);b.resolve=h;var X,q,Y=B.head||B.getElementsByTagName("head")[0]||B.documentElement,W=Y.getElementsByTagName("base")[0],$=/\.css(?:\?|$)/i,G=+navigator.userAgent.replace(/.*AppleWebKit\/(\d+)\..*/,"$1")<536;b.request=f;var V,U=/"(?:\\"|[^"])*"|'(?:\\'|[^'])*'|\/\*[\S\s]*?\*\/|\/(?:\\\/|[^\/\r\n])+\/(?=[^\/])|\/\/.*|\.\s*require|(?:^|[^$])\brequire\s*\(\s*(["'])(.+?)\1\s*\)/g,K=/\\\\/g,Q=b.cache={},J={},Z={},ee={},te=w.STATUS={FETCHING:1,SAVED:2,LOADING:3,LOADED:4,EXECUTING:5,EXECUTED:6};w.prototype.resolve=function(){for(var e=this,t=e.dependencies,i=[],n=0,r=t.length;r>n;n++)i[n]=w.resolve(t[n],e.uri);return i},w.prototype.load=function(){var e=this;if(!(e.status>=te.LOADING)){e.status=te.LOADING;var i=e.resolve();A("load",i);for(var n,r=e._remain=i.length,s=0;r>s;s++)n=w.get(i[s]),n.status<te.LOADED?n._waitings[e.uri]=(n._waitings[e.uri]||0)+1:e._remain--;if(0===e._remain)return e.onload(),t;var o={};for(s=0;r>s;s++)n=Q[i[s]],n.status<te.FETCHING?n.fetch(o):n.status===te.SAVED&&n.load();for(var a in o)o.hasOwnProperty(a)&&o[a]()}},w.prototype.onload=function(){var e=this;e.status=te.LOADED,e.callback&&e.callback();var t,i,n=e._waitings;for(t in n)n.hasOwnProperty(t)&&(i=Q[t],i._remain-=n[t],0===i._remain&&i.onload());delete e._waitings,delete e._remain},w.prototype.fetch=function(e){function i(){b.request(o.requestUri,o.onRequest,o.charset)}function n(){delete J[a],Z[a]=!0,V&&(w.save(s,V),V=null);var e,t=ee[a];for(delete ee[a];e=t.shift();)e.load()}var r=this,s=r.uri;r.status=te.FETCHING;var o={uri:s};A("fetch",o);var a=o.requestUri||s;return!a||Z[a]?(r.load(),t):J[a]?(ee[a].push(r),t):(J[a]=!0,ee[a]=[r],A("request",o={uri:s,requestUri:a,onRequest:n,charset:x.charset}),o.requested||(e?e[o.requestUri]=i:i()),t)},w.prototype.exec=function(){function e(t){return w.get(e.resolve(t)).exec()}var i=this;if(i.status>=te.EXECUTING)return i.exports;i.status=te.EXECUTING;var r=i.uri;e.resolve=function(e){return w.resolve(e,r)},e.async=function(t,i){return w.use(t,i,r+"_async_"+n()),e};var s=i.factory,o=k(s)?s(e,i.exports={},i):s;return o===t&&(o=i.exports),delete i.factory,i.exports=o,i.status=te.EXECUTED,A("exec",i),o},w.resolve=function(e,t){var i={id:e,refUri:t};return A("resolve",i),i.uri||b.resolve(i.id,t)},w.define=function(e,i,n){var r=arguments.length;1===r?(n=e,e=t):2===r&&(n=i,C(e)?(i=e,e=t):i=t),!C(i)&&k(n)&&(i=y(""+n));var s={id:e,uri:w.resolve(e),deps:i,factory:n};if(!s.uri&&B.attachEvent){var o=v();o&&(s.uri=o.src)}A("define",s),s.uri?w.save(s.uri,s):V=s},w.save=function(e,t){var i=w.get(e);i.status<te.SAVED&&(i.id=t.id||e,i.dependencies=t.deps||[],i.factory=t.factory,i.status=te.SAVED)},w.get=function(e,t){return Q[e]||(Q[e]=new w(e,t))},w.use=function(t,i,n){var r=w.get(n,C(t)?t:[t]);r.callback=function(){for(var t=[],n=r.resolve(),s=0,o=n.length;o>s;s++)t[s]=Q[n[s]].exec();i&&i.apply(e,t),delete r.callback},r.load()},w.preload=function(e){var t=x.preload,i=t.length;i?w.use(t,function(){t.splice(0,i),w.preload(e)},x.cwd+"_preload_"+n()):e()},b.use=function(e,t){return w.preload(function(){w.use(e,t,x.cwd+"_use_"+n())}),b},w.define.cmd={},e.define=w.define,b.Module=w,x.fetchedList=Z,x.cid=n,b.require=function(e){var t=w.get(w.resolve(e));return t.status<te.EXECUTING&&(t.onload(),t.exec()),t.exports};var ie=/^(.+?\/)(\?\?)?(seajs\/)+/;x.base=(j.match(ie)||["",j])[1],x.dir=j,x.cwd=R,x.charset="utf-8",x.preload=function(){var e=[],t=location.search.replace(/(seajs-\w+)(&|$)/g,"$1=1$2");return t+=" "+B.cookie,t.replace(/(seajs-\w+)=1/g,function(t,i){e.push(i)}),e}(),b.config=function(e){for(var t in e){var i=e[t],n=x[t];if(n&&S(n))for(var r in i)n[r]=i[r];else C(n)?i=n.concat(i):"base"===t&&("/"!==i.slice(-1)&&(i+="/"),i=p(i)),x[t]=i}return A("config",e),b}}}(this),define("jquery",[],function(e,t,i){!function(e,t){"object"==typeof i&&"object"==typeof i.exports?i.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(e,t){function i(e){var t="length"in e&&e.length,i=Z.type(e);return"function"===i||Z.isWindow(e)?!1:1===e.nodeType&&t?!0:"array"===i||0===t||"number"==typeof t&&t>0&&t-1 in e}function n(e,t,i){if(Z.isFunction(t))return Z.grep(e,function(e,n){return!!t.call(e,n,e)!==i});if(t.nodeType)return Z.grep(e,function(e){return e===t!==i});if("string"==typeof t){if(ae.test(t))return Z.filter(t,e,i);t=Z.filter(t,e)}return Z.grep(e,function(e){return $.call(t,e)>=0!==i})}function r(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}function s(e){var t=fe[e]={};return Z.each(e.match(de)||[],function(e,i){t[i]=!0}),t}function o(){Q.removeEventListener("DOMContentLoaded",o,!1),e.removeEventListener("load",o,!1),Z.ready()}function a(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=Z.expando+a.uid++}function l(e,t,i){var n;if(void 0===i&&1===e.nodeType)if(n="data-"+t.replace(be,"-$1").toLowerCase(),i=e.getAttribute(n),"string"==typeof i){try{i="true"===i?!0:"false"===i?!1:"null"===i?null:+i+""===i?+i:we.test(i)?Z.parseJSON(i):i}catch(r){}ye.set(e,t,i)}else i=void 0;return i}function c(){return!0}function u(){return!1}function p(){try{return Q.activeElement}catch(e){}}function h(e,t){return Z.nodeName(e,"table")&&Z.nodeName(11!==t.nodeType?t:t.firstChild,"tr")?e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody")):e}function d(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function f(e){var t=Oe.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function m(e,t){for(var i=0,n=e.length;n>i;i++)ve.set(e[i],"globalEval",!t||ve.get(t[i],"globalEval"))}function g(e,t){var i,n,r,s,o,a,l,c;if(1===t.nodeType){if(ve.hasData(e)&&(s=ve.access(e),o=ve.set(t,s),c=s.events)){delete o.handle,o.events={};for(r in c)for(i=0,n=c[r].length;n>i;i++)Z.event.add(t,r,c[r][i])}ye.hasData(e)&&(a=ye.access(e),l=Z.extend({},a),ye.set(t,l))}}function v(e,t){var i=e.getElementsByTagName?e.getElementsByTagName(t||"*"):e.querySelectorAll?e.querySelectorAll(t||"*"):[];return void 0===t||t&&Z.nodeName(e,t)?Z.merge([e],i):i}function y(e,t){var i=t.nodeName.toLowerCase();"input"===i&&Ce.test(e.type)?t.checked=e.checked:"input"!==i&&"textarea"!==i||(t.defaultValue=e.defaultValue)}function w(t,i){var n,r=Z(i.createElement(t)).appendTo(i.body),s=e.getDefaultComputedStyle&&(n=e.getDefaultComputedStyle(r[0]))?n.display:Z.css(r[0],"display");return r.detach(),s}function b(e){var t=Q,i=He[e];return i||(i=w(e,t),"none"!==i&&i||(Fe=(Fe||Z("<iframe frameborder='0' width='0' height='0'/>")).appendTo(t.documentElement),t=Fe[0].contentDocument,t.write(),t.close(),i=w(e,t),Fe.detach()),He[e]=i),i}function x(e,t,i){var n,r,s,o,a=e.style;return i=i||qe(e),i&&(o=i.getPropertyValue(t)||i[t]),i&&(""!==o||Z.contains(e.ownerDocument,e)||(o=Z.style(e,t)),Xe.test(o)&&je.test(t)&&(n=a.width,r=a.minWidth,s=a.maxWidth,a.minWidth=a.maxWidth=a.width=o,o=i.width,a.width=n,a.minWidth=r,a.maxWidth=s)),void 0!==o?o+"":o}function S(e,t){return{get:function(){return e()?void delete this.get:(this.get=t).apply(this,arguments)}}}function T(e,t){if(t in e)return t;for(var i=t[0].toUpperCase()+t.slice(1),n=t,r=Ue.length;r--;)if(t=Ue[r]+i,t in e)return t;return n}function C(e,t,i){var n=We.exec(t);return n?Math.max(0,n[1]-(i||0))+(n[2]||"px"):t}function k(e,t,i,n,r){for(var s=i===(n?"border":"content")?4:"width"===t?1:0,o=0;4>s;s+=2)"margin"===i&&(o+=Z.css(e,i+Se[s],!0,r)),n?("content"===i&&(o-=Z.css(e,"padding"+Se[s],!0,r)),"margin"!==i&&(o-=Z.css(e,"border"+Se[s]+"Width",!0,r))):(o+=Z.css(e,"padding"+Se[s],!0,r),"padding"!==i&&(o+=Z.css(e,"border"+Se[s]+"Width",!0,r)));return o}function E(e,t,i){var n=!0,r="width"===t?e.offsetWidth:e.offsetHeight,s=qe(e),o="border-box"===Z.css(e,"boxSizing",!1,s);if(0>=r||null==r){if(r=x(e,t,s),(0>r||null==r)&&(r=e.style[t]),Xe.test(r))return r;n=o&&(K.boxSizingReliable()||r===e.style[t]),r=parseFloat(r)||0}return r+k(e,t,i||(o?"border":"content"),n,s)+"px"}function P(e,t){for(var i,n,r,s=[],o=0,a=e.length;a>o;o++)n=e[o],n.style&&(s[o]=ve.get(n,"olddisplay"),i=n.style.display,t?(s[o]||"none"!==i||(n.style.display=""),""===n.style.display&&Te(n)&&(s[o]=ve.access(n,"olddisplay",b(n.nodeName)))):(r=Te(n),"none"===i&&r||ve.set(n,"olddisplay",r?i:Z.css(n,"display"))));for(o=0;a>o;o++)n=e[o],n.style&&(t&&"none"!==n.style.display&&""!==n.style.display||(n.style.display=t?s[o]||"":"none"));return e}function A(e,t,i,n,r){return new A.prototype.init(e,t,i,n,r)}function _(){return setTimeout(function(){Ke=void 0}),Ke=Z.now()}function D(e,t){var i,n=0,r={height:e};for(t=t?1:0;4>n;n+=2-t)i=Se[n],r["margin"+i]=r["padding"+i]=e;return t&&(r.opacity=r.width=e),r}function L(e,t,i){for(var n,r=(it[t]||[]).concat(it["*"]),s=0,o=r.length;o>s;s++)if(n=r[s].call(i,t,e))return n}function M(e,t,i){var n,r,s,o,a,l,c,u,p=this,h={},d=e.style,f=e.nodeType&&Te(e),m=ve.get(e,"fxshow");i.queue||(a=Z._queueHooks(e,"fx"),null==a.unqueued&&(a.unqueued=0,l=a.empty.fire,a.empty.fire=function(){a.unqueued||l()}),a.unqueued++,p.always(function(){p.always(function(){a.unqueued--,Z.queue(e,"fx").length||a.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(i.overflow=[d.overflow,d.overflowX,d.overflowY],c=Z.css(e,"display"),u="none"===c?ve.get(e,"olddisplay")||b(e.nodeName):c,"inline"===u&&"none"===Z.css(e,"float")&&(d.display="inline-block")),i.overflow&&(d.overflow="hidden",p.always(function(){d.overflow=i.overflow[0],d.overflowX=i.overflow[1],d.overflowY=i.overflow[2]}));for(n in t)if(r=t[n],Je.exec(r)){if(delete t[n],s=s||"toggle"===r,r===(f?"hide":"show")){if("show"!==r||!m||void 0===m[n])continue;f=!0}h[n]=m&&m[n]||Z.style(e,n)}else c=void 0;if(Z.isEmptyObject(h))"inline"===("none"===c?b(e.nodeName):c)&&(d.display=c);else{m?"hidden"in m&&(f=m.hidden):m=ve.access(e,"fxshow",{}),s&&(m.hidden=!f),f?Z(e).show():p.done(function(){Z(e).hide()}),p.done(function(){var t;ve.remove(e,"fxshow");for(t in h)Z.style(e,t,h[t])});for(n in h)o=L(f?m[n]:0,n,p),n in m||(m[n]=o.start,f&&(o.end=o.start,o.start="width"===n||"height"===n?1:0))}}function N(e,t){var i,n,r,s,o;for(i in e)if(n=Z.camelCase(i),r=t[n],s=e[i],Z.isArray(s)&&(r=s[1],s=e[i]=s[0]),i!==n&&(e[n]=s,delete e[i]),o=Z.cssHooks[n],o&&"expand"in o){s=o.expand(s),delete e[n];for(i in s)i in e||(e[i]=s[i],t[i]=r)}else t[n]=r}function I(e,t,i){var n,r,s=0,o=tt.length,a=Z.Deferred().always(function(){delete l.elem}),l=function(){if(r)return!1;for(var t=Ke||_(),i=Math.max(0,c.startTime+c.duration-t),n=i/c.duration||0,s=1-n,o=0,l=c.tweens.length;l>o;o++)c.tweens[o].run(s);return a.notifyWith(e,[c,s,i]),1>s&&l?i:(a.resolveWith(e,[c]),!1)},c=a.promise({elem:e,props:Z.extend({},t),opts:Z.extend(!0,{specialEasing:{}},i),originalProperties:t,originalOptions:i,startTime:Ke||_(),duration:i.duration,tweens:[],createTween:function(t,i){var n=Z.Tween(e,c.opts,t,i,c.opts.specialEasing[t]||c.opts.easing);return c.tweens.push(n),n},stop:function(t){var i=0,n=t?c.tweens.length:0;if(r)return this;for(r=!0;n>i;i++)c.tweens[i].run(1);return t?a.resolveWith(e,[c,t]):a.rejectWith(e,[c,t]),this}}),u=c.props;for(N(u,c.opts.specialEasing);o>s;s++)if(n=tt[s].call(c,e,u,c.opts))return n;return Z.map(u,L,c),Z.isFunction(c.opts.start)&&c.opts.start.call(e,c),Z.fx.timer(Z.extend(l,{elem:e,anim:c,queue:c.opts.queue})),c.progress(c.opts.progress).done(c.opts.done,c.opts.complete).fail(c.opts.fail).always(c.opts.always)}function z(e){return function(t,i){"string"!=typeof t&&(i=t,t="*");var n,r=0,s=t.toLowerCase().match(de)||[];if(Z.isFunction(i))for(;n=s[r++];)"+"===n[0]?(n=n.slice(1)||"*",(e[n]=e[n]||[]).unshift(i)):(e[n]=e[n]||[]).push(i)}}function O(e,t,i,n){function r(a){var l;return s[a]=!0,Z.each(e[a]||[],function(e,a){var c=a(t,i,n);return"string"!=typeof c||o||s[c]?o?!(l=c):void 0:(t.dataTypes.unshift(c),r(c),!1)}),l}var s={},o=e===wt;return r(t.dataTypes[0])||!s["*"]&&r("*")}function B(e,t){var i,n,r=Z.ajaxSettings.flatOptions||{};for(i in t)void 0!==t[i]&&((r[i]?e:n||(n={}))[i]=t[i]);return n&&Z.extend(!0,e,n),e}function R(e,t,i){for(var n,r,s,o,a=e.contents,l=e.dataTypes;"*"===l[0];)l.shift(),void 0===n&&(n=e.mimeType||t.getResponseHeader("Content-Type"));if(n)for(r in a)if(a[r]&&a[r].test(n)){l.unshift(r);break}if(l[0]in i)s=l[0];else{for(r in i){if(!l[0]||e.converters[r+" "+l[0]]){s=r;break}o||(o=r)}s=s||o}return s?(s!==l[0]&&l.unshift(s),i[s]):void 0}function F(e,t,i,n){var r,s,o,a,l,c={},u=e.dataTypes.slice();if(u[1])for(o in e.converters)c[o.toLowerCase()]=e.converters[o];for(s=u.shift();s;)if(e.responseFields[s]&&(i[e.responseFields[s]]=t),!l&&n&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),l=s,s=u.shift())if("*"===s)s=l;else if("*"!==l&&l!==s){if(o=c[l+" "+s]||c["* "+s],!o)for(r in c)if(a=r.split(" "),a[1]===s&&(o=c[l+" "+a[0]]||c["* "+a[0]])){o===!0?o=c[r]:c[r]!==!0&&(s=a[0],u.unshift(a[1]));break}if(o!==!0)if(o&&e["throws"])t=o(t);else try{t=o(t)}catch(p){return{state:"parsererror",error:o?p:"No conversion from "+l+" to "+s}}}return{state:"success",data:t}}function H(e,t,i,n){var r;if(Z.isArray(t))Z.each(t,function(t,r){i||Ct.test(e)?n(e,r):H(e+"["+("object"==typeof r?t:"")+"]",r,i,n)});else if(i||"object"!==Z.type(t))n(e,t);else for(r in t)H(e+"["+r+"]",t[r],i,n)}function j(e){return Z.isWindow(e)?e:9===e.nodeType&&e.defaultView}var X=[],q=X.slice,Y=X.concat,W=X.push,$=X.indexOf,G={},V=G.toString,U=G.hasOwnProperty,K={},Q=e.document,J="2.1.4",Z=function(e,t){return new Z.fn.init(e,t)},ee=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,te=/^-ms-/,ie=/-([\da-z])/gi,ne=function(e,t){return t.toUpperCase()};Z.fn=Z.prototype={jquery:J,constructor:Z,selector:"",length:0,toArray:function(){return q.call(this)},get:function(e){return null!=e?0>e?this[e+this.length]:this[e]:q.call(this)},pushStack:function(e){var t=Z.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return Z.each(this,e,t)},map:function(e){return this.pushStack(Z.map(this,function(t,i){return e.call(t,i,t)}))},slice:function(){return this.pushStack(q.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,i=+e+(0>e?t:0);return this.pushStack(i>=0&&t>i?[this[i]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:W,sort:X.sort,splice:X.splice},Z.extend=Z.fn.extend=function(){var e,t,i,n,r,s,o=arguments[0]||{},a=1,l=arguments.length,c=!1;for("boolean"==typeof o&&(c=o,o=arguments[a]||{},a++),"object"==typeof o||Z.isFunction(o)||(o={}),a===l&&(o=this,a--);l>a;a++)if(null!=(e=arguments[a]))for(t in e)i=o[t],n=e[t],o!==n&&(c&&n&&(Z.isPlainObject(n)||(r=Z.isArray(n)))?(r?(r=!1,s=i&&Z.isArray(i)?i:[]):s=i&&Z.isPlainObject(i)?i:{},o[t]=Z.extend(c,s,n)):void 0!==n&&(o[t]=n));return o},Z.extend({expando:"jQuery"+(J+Math.random()).replace(/\D/g,""),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isFunction:function(e){return"function"===Z.type(e)},isArray:Array.isArray,isWindow:function(e){return null!=e&&e===e.window},isNumeric:function(e){return!Z.isArray(e)&&e-parseFloat(e)+1>=0},isPlainObject:function(e){return"object"!==Z.type(e)||e.nodeType||Z.isWindow(e)?!1:!e.constructor||U.call(e.constructor.prototype,"isPrototypeOf")},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?G[V.call(e)]||"object":typeof e},globalEval:function(e){var t,i=eval;e=Z.trim(e),e&&(1===e.indexOf("use strict")?(t=Q.createElement("script"),t.text=e,Q.head.appendChild(t).parentNode.removeChild(t)):i(e))},camelCase:function(e){return e.replace(te,"ms-").replace(ie,ne)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t,n){var r,s=0,o=e.length,a=i(e);if(n){if(a)for(;o>s&&(r=t.apply(e[s],n),r!==!1);s++);else for(s in e)if(r=t.apply(e[s],n),r===!1)break}else if(a)for(;o>s&&(r=t.call(e[s],s,e[s]),r!==!1);s++);else for(s in e)if(r=t.call(e[s],s,e[s]),r===!1)break;return e},trim:function(e){return null==e?"":(e+"").replace(ee,"")},makeArray:function(e,t){var n=t||[];return null!=e&&(i(Object(e))?Z.merge(n,"string"==typeof e?[e]:e):W.call(n,e)),n},inArray:function(e,t,i){return null==t?-1:$.call(t,e,i)},merge:function(e,t){for(var i=+t.length,n=0,r=e.length;i>n;n++)e[r++]=t[n];return e.length=r,e},grep:function(e,t,i){for(var n,r=[],s=0,o=e.length,a=!i;o>s;s++)n=!t(e[s],s),n!==a&&r.push(e[s]);return r},map:function(e,t,n){var r,s=0,o=e.length,a=i(e),l=[];if(a)for(;o>s;s++)r=t(e[s],s,n),null!=r&&l.push(r);else for(s in e)r=t(e[s],s,n),null!=r&&l.push(r);return Y.apply([],l)},guid:1,proxy:function(e,t){var i,n,r;return"string"==typeof t&&(i=e[t],t=e,e=i),Z.isFunction(e)?(n=q.call(arguments,2),r=function(){return e.apply(t||this,n.concat(q.call(arguments)))},r.guid=e.guid=e.guid||Z.guid++,r):void 0},now:Date.now,support:K}),Z.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){G["[object "+t+"]"]=t.toLowerCase()});var re=function(e){function t(e,t,i,n){var r,s,o,a,l,c,p,d,f,m;if((t?t.ownerDocument||t:H)!==M&&L(t),t=t||M,i=i||[],a=t.nodeType,"string"!=typeof e||!e||1!==a&&9!==a&&11!==a)return i;if(!n&&I){if(11!==a&&(r=ye.exec(e)))if(o=r[1]){if(9===a){if(s=t.getElementById(o),!s||!s.parentNode)return i;if(s.id===o)return i.push(s),i}else if(t.ownerDocument&&(s=t.ownerDocument.getElementById(o))&&R(t,s)&&s.id===o)return i.push(s),i}else{if(r[2])return J.apply(i,t.getElementsByTagName(e)),i;if((o=r[3])&&x.getElementsByClassName)return J.apply(i,t.getElementsByClassName(o)),i}if(x.qsa&&(!z||!z.test(e))){if(d=p=F,f=t,m=1!==a&&e,1===a&&"object"!==t.nodeName.toLowerCase()){for(c=k(e),(p=t.getAttribute("id"))?d=p.replace(be,"\\$&"):t.setAttribute("id",d),d="[id='"+d+"'] ",l=c.length;l--;)c[l]=d+h(c[l]);f=we.test(e)&&u(t.parentNode)||t,m=c.join(",")}if(m)try{return J.apply(i,f.querySelectorAll(m)),i}catch(g){}finally{p||t.removeAttribute("id")}}}return P(e.replace(le,"$1"),t,i,n)}function i(){function e(i,n){return t.push(i+" ")>S.cacheLength&&delete e[t.shift()],e[i+" "]=n}var t=[];return e}function n(e){return e[F]=!0,e}function r(e){var t=M.createElement("div");try{return!!e(t)}catch(i){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function s(e,t){for(var i=e.split("|"),n=e.length;n--;)S.attrHandle[i[n]]=t}function o(e,t){var i=t&&e,n=i&&1===e.nodeType&&1===t.nodeType&&(~t.sourceIndex||G)-(~e.sourceIndex||G);if(n)return n;if(i)for(;i=i.nextSibling;)if(i===t)return-1;return e?1:-1}function a(e){return function(t){var i=t.nodeName.toLowerCase();return"input"===i&&t.type===e}}function l(e){return function(t){var i=t.nodeName.toLowerCase();return("input"===i||"button"===i)&&t.type===e}}function c(e){return n(function(t){return t=+t,n(function(i,n){for(var r,s=e([],i.length,t),o=s.length;o--;)i[r=s[o]]&&(i[r]=!(n[r]=i[r]))})})}function u(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}function p(){}function h(e){for(var t=0,i=e.length,n="";i>t;t++)n+=e[t].value;return n}function d(e,t,i){var n=t.dir,r=i&&"parentNode"===n,s=X++;return t.first?function(t,i,s){for(;t=t[n];)if(1===t.nodeType||r)return e(t,i,s)}:function(t,i,o){var a,l,c=[j,s];if(o){for(;t=t[n];)if((1===t.nodeType||r)&&e(t,i,o))return!0}else for(;t=t[n];)if(1===t.nodeType||r){if(l=t[F]||(t[F]={}),(a=l[n])&&a[0]===j&&a[1]===s)return c[2]=a[2];if(l[n]=c,c[2]=e(t,i,o))return!0}}}function f(e){return e.length>1?function(t,i,n){for(var r=e.length;r--;)if(!e[r](t,i,n))return!1;return!0}:e[0]}function m(e,i,n){for(var r=0,s=i.length;s>r;r++)t(e,i[r],n);return n}function g(e,t,i,n,r){for(var s,o=[],a=0,l=e.length,c=null!=t;l>a;a++)(s=e[a])&&(i&&!i(s,n,r)||(o.push(s),c&&t.push(a)));return o}function v(e,t,i,r,s,o){return r&&!r[F]&&(r=v(r)),s&&!s[F]&&(s=v(s,o)),n(function(n,o,a,l){var c,u,p,h=[],d=[],f=o.length,v=n||m(t||"*",a.nodeType?[a]:a,[]),y=!e||!n&&t?v:g(v,h,e,a,l),w=i?s||(n?e:f||r)?[]:o:y;if(i&&i(y,w,a,l),r)for(c=g(w,d),r(c,[],a,l),u=c.length;u--;)(p=c[u])&&(w[d[u]]=!(y[d[u]]=p));if(n){if(s||e){if(s){for(c=[],u=w.length;u--;)(p=w[u])&&c.push(y[u]=p);s(null,w=[],c,l)}for(u=w.length;u--;)(p=w[u])&&(c=s?ee(n,p):h[u])>-1&&(n[c]=!(o[c]=p))}}else w=g(w===o?w.splice(f,w.length):w),s?s(null,o,w,l):J.apply(o,w)})}function y(e){for(var t,i,n,r=e.length,s=S.relative[e[0].type],o=s||S.relative[" "],a=s?1:0,l=d(function(e){return e===t},o,!0),c=d(function(e){return ee(t,e)>-1},o,!0),u=[function(e,i,n){var r=!s&&(n||i!==A)||((t=i).nodeType?l(e,i,n):c(e,i,n));return t=null,r}];r>a;a++)if(i=S.relative[e[a].type])u=[d(f(u),i)];else{if(i=S.filter[e[a].type].apply(null,e[a].matches),i[F]){for(n=++a;r>n&&!S.relative[e[n].type];n++);return v(a>1&&f(u),a>1&&h(e.slice(0,a-1).concat({value:" "===e[a-2].type?"*":""})).replace(le,"$1"),i,n>a&&y(e.slice(a,n)),r>n&&y(e=e.slice(n)),r>n&&h(e))}u.push(i)}return f(u)}function w(e,i){var r=i.length>0,s=e.length>0,o=function(n,o,a,l,c){var u,p,h,d=0,f="0",m=n&&[],v=[],y=A,w=n||s&&S.find.TAG("*",c),b=j+=null==y?1:Math.random()||.1,x=w.length;for(c&&(A=o!==M&&o);f!==x&&null!=(u=w[f]);f++){if(s&&u){for(p=0;h=e[p++];)if(h(u,o,a)){l.push(u);break}c&&(j=b)}r&&((u=!h&&u)&&d--,n&&m.push(u))}if(d+=f,r&&f!==d){for(p=0;h=i[p++];)h(m,v,o,a);if(n){if(d>0)for(;f--;)m[f]||v[f]||(v[f]=K.call(l));v=g(v)}J.apply(l,v),c&&!n&&v.length>0&&d+i.length>1&&t.uniqueSort(l)}return c&&(j=b,A=y),m};return r?n(o):o}var b,x,S,T,C,k,E,P,A,_,D,L,M,N,I,z,O,B,R,F="sizzle"+1*new Date,H=e.document,j=0,X=0,q=i(),Y=i(),W=i(),$=function(e,t){return e===t&&(D=!0),0},G=1<<31,V={}.hasOwnProperty,U=[],K=U.pop,Q=U.push,J=U.push,Z=U.slice,ee=function(e,t){for(var i=0,n=e.length;n>i;i++)if(e[i]===t)return i;return-1},te="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",ie="[\\x20\\t\\r\\n\\f]",ne="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",re=ne.replace("w","w#"),se="\\["+ie+"*("+ne+")(?:"+ie+"*([*^$|!~]?=)"+ie+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+re+"))|)"+ie+"*\\]",oe=":("+ne+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+se+")*)|.*)\\)|)",ae=new RegExp(ie+"+","g"),le=new RegExp("^"+ie+"+|((?:^|[^\\\\])(?:\\\\.)*)"+ie+"+$","g"),ce=new RegExp("^"+ie+"*,"+ie+"*"),ue=new RegExp("^"+ie+"*([>+~]|"+ie+")"+ie+"*"),pe=new RegExp("="+ie+"*([^\\]'\"]*?)"+ie+"*\\]","g"),he=new RegExp(oe),de=new RegExp("^"+re+"$"),fe={ID:new RegExp("^#("+ne+")"),CLASS:new RegExp("^\\.("+ne+")"),TAG:new RegExp("^("+ne.replace("w","w*")+")"),ATTR:new RegExp("^"+se),PSEUDO:new RegExp("^"+oe),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ie+"*(even|odd|(([+-]|)(\\d*)n|)"+ie+"*(?:([+-]|)"+ie+"*(\\d+)|))"+ie+"*\\)|)","i"),bool:new RegExp("^(?:"+te+")$","i"),needsContext:new RegExp("^"+ie+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ie+"*((?:-\\d)?\\d*)"+ie+"*\\)|)(?=[^-]|$)","i")},me=/^(?:input|select|textarea|button)$/i,ge=/^h\d$/i,ve=/^[^{]+\{\s*\[native \w/,ye=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,we=/[+~]/,be=/'|\\/g,xe=new RegExp("\\\\([\\da-f]{1,6}"+ie+"?|("+ie+")|.)","ig"),Se=function(e,t,i){var n="0x"+t-65536;return n!==n||i?t:0>n?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320)},Te=function(){L()};try{J.apply(U=Z.call(H.childNodes),H.childNodes),U[H.childNodes.length].nodeType}catch(Ce){J={apply:U.length?function(e,t){Q.apply(e,Z.call(t))}:function(e,t){for(var i=e.length,n=0;e[i++]=t[n++];);e.length=i-1}}}x=t.support={},C=t.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?"HTML"!==t.nodeName:!1},L=t.setDocument=function(e){var t,i,n=e?e.ownerDocument||e:H;return n!==M&&9===n.nodeType&&n.documentElement?(M=n,N=n.documentElement,i=n.defaultView,i&&i!==i.top&&(i.addEventListener?i.addEventListener("unload",Te,!1):i.attachEvent&&i.attachEvent("onunload",Te)),I=!C(n),x.attributes=r(function(e){return e.className="i",!e.getAttribute("className")}),x.getElementsByTagName=r(function(e){return e.appendChild(n.createComment("")),!e.getElementsByTagName("*").length}),x.getElementsByClassName=ve.test(n.getElementsByClassName),x.getById=r(function(e){return N.appendChild(e).id=F,!n.getElementsByName||!n.getElementsByName(F).length}),x.getById?(S.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&I){var i=t.getElementById(e);return i&&i.parentNode?[i]:[]}},S.filter.ID=function(e){var t=e.replace(xe,Se);return function(e){return e.getAttribute("id")===t}}):(delete S.find.ID,S.filter.ID=function(e){var t=e.replace(xe,Se);return function(e){var i="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return i&&i.value===t}}),S.find.TAG=x.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):x.qsa?t.querySelectorAll(e):void 0}:function(e,t){var i,n=[],r=0,s=t.getElementsByTagName(e);if("*"===e){for(;i=s[r++];)1===i.nodeType&&n.push(i);return n}return s},S.find.CLASS=x.getElementsByClassName&&function(e,t){return I?t.getElementsByClassName(e):void 0},O=[],z=[],(x.qsa=ve.test(n.querySelectorAll))&&(r(function(e){N.appendChild(e).innerHTML="<a id='"+F+"'></a><select id='"+F+"-\f]' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&z.push("[*^$]="+ie+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||z.push("\\["+ie+"*(?:value|"+te+")"),e.querySelectorAll("[id~="+F+"-]").length||z.push("~="),e.querySelectorAll(":checked").length||z.push(":checked"),e.querySelectorAll("a#"+F+"+*").length||z.push(".#.+[+~]")}),r(function(e){var t=n.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&z.push("name"+ie+"*[*^$|!~]?="),e.querySelectorAll(":enabled").length||z.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),z.push(",.*:")})),(x.matchesSelector=ve.test(B=N.matches||N.webkitMatchesSelector||N.mozMatchesSelector||N.oMatchesSelector||N.msMatchesSelector))&&r(function(e){x.disconnectedMatch=B.call(e,"div"),B.call(e,"[s!='']:x"),O.push("!=",oe)}),z=z.length&&new RegExp(z.join("|")),O=O.length&&new RegExp(O.join("|")),t=ve.test(N.compareDocumentPosition),R=t||ve.test(N.contains)?function(e,t){var i=9===e.nodeType?e.documentElement:e,n=t&&t.parentNode;return e===n||!(!n||1!==n.nodeType||!(i.contains?i.contains(n):e.compareDocumentPosition&&16&e.compareDocumentPosition(n)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},$=t?function(e,t){if(e===t)return D=!0,0;var i=!e.compareDocumentPosition-!t.compareDocumentPosition;return i?i:(i=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1,1&i||!x.sortDetached&&t.compareDocumentPosition(e)===i?e===n||e.ownerDocument===H&&R(H,e)?-1:t===n||t.ownerDocument===H&&R(H,t)?1:_?ee(_,e)-ee(_,t):0:4&i?-1:1)}:function(e,t){if(e===t)return D=!0,0;var i,r=0,s=e.parentNode,a=t.parentNode,l=[e],c=[t];if(!s||!a)return e===n?-1:t===n?1:s?-1:a?1:_?ee(_,e)-ee(_,t):0;if(s===a)return o(e,t);for(i=e;i=i.parentNode;)l.unshift(i);for(i=t;i=i.parentNode;)c.unshift(i);for(;l[r]===c[r];)r++;return r?o(l[r],c[r]):l[r]===H?-1:c[r]===H?1:0},n):M},t.matches=function(e,i){return t(e,null,null,i)},t.matchesSelector=function(e,i){if((e.ownerDocument||e)!==M&&L(e),i=i.replace(pe,"='$1']"),x.matchesSelector&&I&&(!O||!O.test(i))&&(!z||!z.test(i)))try{var n=B.call(e,i);if(n||x.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(r){}return t(i,M,null,[e]).length>0},t.contains=function(e,t){return(e.ownerDocument||e)!==M&&L(e),R(e,t)},t.attr=function(e,t){(e.ownerDocument||e)!==M&&L(e);var i=S.attrHandle[t.toLowerCase()],n=i&&V.call(S.attrHandle,t.toLowerCase())?i(e,t,!I):void 0;return void 0!==n?n:x.attributes||!I?e.getAttribute(t):(n=e.getAttributeNode(t))&&n.specified?n.value:null},t.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},t.uniqueSort=function(e){var t,i=[],n=0,r=0;if(D=!x.detectDuplicates,_=!x.sortStable&&e.slice(0),e.sort($),D){for(;t=e[r++];)t===e[r]&&(n=i.push(r));for(;n--;)e.splice(i[n],1)}return _=null,e},T=t.getText=function(e){var t,i="",n=0,r=e.nodeType;if(r){if(1===r||9===r||11===r){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)i+=T(e)}else if(3===r||4===r)return e.nodeValue}else for(;t=e[n++];)i+=T(t);return i},S=t.selectors={cacheLength:50,createPseudo:n,match:fe,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(xe,Se),e[3]=(e[3]||e[4]||e[5]||"").replace(xe,Se),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||t.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&t.error(e[0]),e},PSEUDO:function(e){var t,i=!e[6]&&e[2];return fe.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":i&&he.test(i)&&(t=k(i,!0))&&(t=i.indexOf(")",i.length-t)-i.length)&&(e[0]=e[0].slice(0,t), +e[2]=i.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(xe,Se).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=q[e+" "];return t||(t=new RegExp("(^|"+ie+")"+e+"("+ie+"|$)"))&&q(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,i,n){return function(r){var s=t.attr(r,e);return null==s?"!="===i:i?(s+="","="===i?s===n:"!="===i?s!==n:"^="===i?n&&0===s.indexOf(n):"*="===i?n&&s.indexOf(n)>-1:"$="===i?n&&s.slice(-n.length)===n:"~="===i?(" "+s.replace(ae," ")+" ").indexOf(n)>-1:"|="===i?s===n||s.slice(0,n.length+1)===n+"-":!1):!0}},CHILD:function(e,t,i,n,r){var s="nth"!==e.slice(0,3),o="last"!==e.slice(-4),a="of-type"===t;return 1===n&&0===r?function(e){return!!e.parentNode}:function(t,i,l){var c,u,p,h,d,f,m=s!==o?"nextSibling":"previousSibling",g=t.parentNode,v=a&&t.nodeName.toLowerCase(),y=!l&&!a;if(g){if(s){for(;m;){for(p=t;p=p[m];)if(a?p.nodeName.toLowerCase()===v:1===p.nodeType)return!1;f=m="only"===e&&!f&&"nextSibling"}return!0}if(f=[o?g.firstChild:g.lastChild],o&&y){for(u=g[F]||(g[F]={}),c=u[e]||[],d=c[0]===j&&c[1],h=c[0]===j&&c[2],p=d&&g.childNodes[d];p=++d&&p&&p[m]||(h=d=0)||f.pop();)if(1===p.nodeType&&++h&&p===t){u[e]=[j,d,h];break}}else if(y&&(c=(t[F]||(t[F]={}))[e])&&c[0]===j)h=c[1];else for(;(p=++d&&p&&p[m]||(h=d=0)||f.pop())&&((a?p.nodeName.toLowerCase()!==v:1!==p.nodeType)||!++h||(y&&((p[F]||(p[F]={}))[e]=[j,h]),p!==t)););return h-=r,h===n||h%n===0&&h/n>=0}}},PSEUDO:function(e,i){var r,s=S.pseudos[e]||S.setFilters[e.toLowerCase()]||t.error("unsupported pseudo: "+e);return s[F]?s(i):s.length>1?(r=[e,e,"",i],S.setFilters.hasOwnProperty(e.toLowerCase())?n(function(e,t){for(var n,r=s(e,i),o=r.length;o--;)n=ee(e,r[o]),e[n]=!(t[n]=r[o])}):function(e){return s(e,0,r)}):s}},pseudos:{not:n(function(e){var t=[],i=[],r=E(e.replace(le,"$1"));return r[F]?n(function(e,t,i,n){for(var s,o=r(e,null,n,[]),a=e.length;a--;)(s=o[a])&&(e[a]=!(t[a]=s))}):function(e,n,s){return t[0]=e,r(t,null,s,i),t[0]=null,!i.pop()}}),has:n(function(e){return function(i){return t(e,i).length>0}}),contains:n(function(e){return e=e.replace(xe,Se),function(t){return(t.textContent||t.innerText||T(t)).indexOf(e)>-1}}),lang:n(function(e){return de.test(e||"")||t.error("unsupported lang: "+e),e=e.replace(xe,Se).toLowerCase(),function(t){var i;do if(i=I?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return i=i.toLowerCase(),i===e||0===i.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var i=e.location&&e.location.hash;return i&&i.slice(1)===t.id},root:function(e){return e===N},focus:function(e){return e===M.activeElement&&(!M.hasFocus||M.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!S.pseudos.empty(e)},header:function(e){return ge.test(e.nodeName)},input:function(e){return me.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:c(function(){return[0]}),last:c(function(e,t){return[t-1]}),eq:c(function(e,t,i){return[0>i?i+t:i]}),even:c(function(e,t){for(var i=0;t>i;i+=2)e.push(i);return e}),odd:c(function(e,t){for(var i=1;t>i;i+=2)e.push(i);return e}),lt:c(function(e,t,i){for(var n=0>i?i+t:i;--n>=0;)e.push(n);return e}),gt:c(function(e,t,i){for(var n=0>i?i+t:i;++n<t;)e.push(n);return e})}},S.pseudos.nth=S.pseudos.eq;for(b in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})S.pseudos[b]=a(b);for(b in{submit:!0,reset:!0})S.pseudos[b]=l(b);return p.prototype=S.filters=S.pseudos,S.setFilters=new p,k=t.tokenize=function(e,i){var n,r,s,o,a,l,c,u=Y[e+" "];if(u)return i?0:u.slice(0);for(a=e,l=[],c=S.preFilter;a;){n&&!(r=ce.exec(a))||(r&&(a=a.slice(r[0].length)||a),l.push(s=[])),n=!1,(r=ue.exec(a))&&(n=r.shift(),s.push({value:n,type:r[0].replace(le," ")}),a=a.slice(n.length));for(o in S.filter)!(r=fe[o].exec(a))||c[o]&&!(r=c[o](r))||(n=r.shift(),s.push({value:n,type:o,matches:r}),a=a.slice(n.length));if(!n)break}return i?a.length:a?t.error(e):Y(e,l).slice(0)},E=t.compile=function(e,t){var i,n=[],r=[],s=W[e+" "];if(!s){for(t||(t=k(e)),i=t.length;i--;)s=y(t[i]),s[F]?n.push(s):r.push(s);s=W(e,w(r,n)),s.selector=e}return s},P=t.select=function(e,t,i,n){var r,s,o,a,l,c="function"==typeof e&&e,p=!n&&k(e=c.selector||e);if(i=i||[],1===p.length){if(s=p[0]=p[0].slice(0),s.length>2&&"ID"===(o=s[0]).type&&x.getById&&9===t.nodeType&&I&&S.relative[s[1].type]){if(t=(S.find.ID(o.matches[0].replace(xe,Se),t)||[])[0],!t)return i;c&&(t=t.parentNode),e=e.slice(s.shift().value.length)}for(r=fe.needsContext.test(e)?0:s.length;r--&&(o=s[r],!S.relative[a=o.type]);)if((l=S.find[a])&&(n=l(o.matches[0].replace(xe,Se),we.test(s[0].type)&&u(t.parentNode)||t))){if(s.splice(r,1),e=n.length&&h(s),!e)return J.apply(i,n),i;break}}return(c||E(e,p))(n,t,!I,i,we.test(e)&&u(t.parentNode)||t),i},x.sortStable=F.split("").sort($).join("")===F,x.detectDuplicates=!!D,L(),x.sortDetached=r(function(e){return 1&e.compareDocumentPosition(M.createElement("div"))}),r(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||s("type|href|height|width",function(e,t,i){return i?void 0:e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),x.attributes&&r(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||s("value",function(e,t,i){return i||"input"!==e.nodeName.toLowerCase()?void 0:e.defaultValue}),r(function(e){return null==e.getAttribute("disabled")})||s(te,function(e,t,i){var n;return i?void 0:e[t]===!0?t.toLowerCase():(n=e.getAttributeNode(t))&&n.specified?n.value:null}),t}(e);Z.find=re,Z.expr=re.selectors,Z.expr[":"]=Z.expr.pseudos,Z.unique=re.uniqueSort,Z.text=re.getText,Z.isXMLDoc=re.isXML,Z.contains=re.contains;var se=Z.expr.match.needsContext,oe=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,ae=/^.[^:#\[\.,]*$/;Z.filter=function(e,t,i){var n=t[0];return i&&(e=":not("+e+")"),1===t.length&&1===n.nodeType?Z.find.matchesSelector(n,e)?[n]:[]:Z.find.matches(e,Z.grep(t,function(e){return 1===e.nodeType}))},Z.fn.extend({find:function(e){var t,i=this.length,n=[],r=this;if("string"!=typeof e)return this.pushStack(Z(e).filter(function(){for(t=0;i>t;t++)if(Z.contains(r[t],this))return!0}));for(t=0;i>t;t++)Z.find(e,r[t],n);return n=this.pushStack(i>1?Z.unique(n):n),n.selector=this.selector?this.selector+" "+e:e,n},filter:function(e){return this.pushStack(n(this,e||[],!1))},not:function(e){return this.pushStack(n(this,e||[],!0))},is:function(e){return!!n(this,"string"==typeof e&&se.test(e)?Z(e):e||[],!1).length}});var le,ce=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,ue=Z.fn.init=function(e,t){var i,n;if(!e)return this;if("string"==typeof e){if(i="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:ce.exec(e),!i||!i[1]&&t)return!t||t.jquery?(t||le).find(e):this.constructor(t).find(e);if(i[1]){if(t=t instanceof Z?t[0]:t,Z.merge(this,Z.parseHTML(i[1],t&&t.nodeType?t.ownerDocument||t:Q,!0)),oe.test(i[1])&&Z.isPlainObject(t))for(i in t)Z.isFunction(this[i])?this[i](t[i]):this.attr(i,t[i]);return this}return n=Q.getElementById(i[2]),n&&n.parentNode&&(this.length=1,this[0]=n),this.context=Q,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):Z.isFunction(e)?"undefined"!=typeof le.ready?le.ready(e):e(Z):(void 0!==e.selector&&(this.selector=e.selector,this.context=e.context),Z.makeArray(e,this))};ue.prototype=Z.fn,le=Z(Q);var pe=/^(?:parents|prev(?:Until|All))/,he={children:!0,contents:!0,next:!0,prev:!0};Z.extend({dir:function(e,t,i){for(var n=[],r=void 0!==i;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(r&&Z(e).is(i))break;n.push(e)}return n},sibling:function(e,t){for(var i=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&i.push(e);return i}}),Z.fn.extend({has:function(e){var t=Z(e,this),i=t.length;return this.filter(function(){for(var e=0;i>e;e++)if(Z.contains(this,t[e]))return!0})},closest:function(e,t){for(var i,n=0,r=this.length,s=[],o=se.test(e)||"string"!=typeof e?Z(e,t||this.context):0;r>n;n++)for(i=this[n];i&&i!==t;i=i.parentNode)if(i.nodeType<11&&(o?o.index(i)>-1:1===i.nodeType&&Z.find.matchesSelector(i,e))){s.push(i);break}return this.pushStack(s.length>1?Z.unique(s):s)},index:function(e){return e?"string"==typeof e?$.call(Z(e),this[0]):$.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(Z.unique(Z.merge(this.get(),Z(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),Z.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return Z.dir(e,"parentNode")},parentsUntil:function(e,t,i){return Z.dir(e,"parentNode",i)},next:function(e){return r(e,"nextSibling")},prev:function(e){return r(e,"previousSibling")},nextAll:function(e){return Z.dir(e,"nextSibling")},prevAll:function(e){return Z.dir(e,"previousSibling")},nextUntil:function(e,t,i){return Z.dir(e,"nextSibling",i)},prevUntil:function(e,t,i){return Z.dir(e,"previousSibling",i)},siblings:function(e){return Z.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return Z.sibling(e.firstChild)},contents:function(e){return e.contentDocument||Z.merge([],e.childNodes)}},function(e,t){Z.fn[e]=function(i,n){var r=Z.map(this,t,i);return"Until"!==e.slice(-5)&&(n=i),n&&"string"==typeof n&&(r=Z.filter(n,r)),this.length>1&&(he[e]||Z.unique(r),pe.test(e)&&r.reverse()),this.pushStack(r)}});var de=/\S+/g,fe={};Z.Callbacks=function(e){e="string"==typeof e?fe[e]||s(e):Z.extend({},e);var t,i,n,r,o,a,l=[],c=!e.once&&[],u=function(s){for(t=e.memory&&s,i=!0,a=r||0,r=0,o=l.length,n=!0;l&&o>a;a++)if(l[a].apply(s[0],s[1])===!1&&e.stopOnFalse){t=!1;break}n=!1,l&&(c?c.length&&u(c.shift()):t?l=[]:p.disable())},p={add:function(){if(l){var i=l.length;!function s(t){Z.each(t,function(t,i){var n=Z.type(i);"function"===n?e.unique&&p.has(i)||l.push(i):i&&i.length&&"string"!==n&&s(i)})}(arguments),n?o=l.length:t&&(r=i,u(t))}return this},remove:function(){return l&&Z.each(arguments,function(e,t){for(var i;(i=Z.inArray(t,l,i))>-1;)l.splice(i,1),n&&(o>=i&&o--,a>=i&&a--)}),this},has:function(e){return e?Z.inArray(e,l)>-1:!(!l||!l.length)},empty:function(){return l=[],o=0,this},disable:function(){return l=c=t=void 0,this},disabled:function(){return!l},lock:function(){return c=void 0,t||p.disable(),this},locked:function(){return!c},fireWith:function(e,t){return!l||i&&!c||(t=t||[],t=[e,t.slice?t.slice():t],n?c.push(t):u(t)),this},fire:function(){return p.fireWith(this,arguments),this},fired:function(){return!!i}};return p},Z.extend({Deferred:function(e){var t=[["resolve","done",Z.Callbacks("once memory"),"resolved"],["reject","fail",Z.Callbacks("once memory"),"rejected"],["notify","progress",Z.Callbacks("memory")]],i="pending",n={state:function(){return i},always:function(){return r.done(arguments).fail(arguments),this},then:function(){var e=arguments;return Z.Deferred(function(i){Z.each(t,function(t,s){var o=Z.isFunction(e[t])&&e[t];r[s[1]](function(){var e=o&&o.apply(this,arguments);e&&Z.isFunction(e.promise)?e.promise().done(i.resolve).fail(i.reject).progress(i.notify):i[s[0]+"With"](this===n?i.promise():this,o?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?Z.extend(e,n):n}},r={};return n.pipe=n.then,Z.each(t,function(e,s){var o=s[2],a=s[3];n[s[1]]=o.add,a&&o.add(function(){i=a},t[1^e][2].disable,t[2][2].lock),r[s[0]]=function(){return r[s[0]+"With"](this===r?n:this,arguments),this},r[s[0]+"With"]=o.fireWith}),n.promise(r),e&&e.call(r,r),r},when:function(e){var t,i,n,r=0,s=q.call(arguments),o=s.length,a=1!==o||e&&Z.isFunction(e.promise)?o:0,l=1===a?e:Z.Deferred(),c=function(e,i,n){return function(r){i[e]=this,n[e]=arguments.length>1?q.call(arguments):r,n===t?l.notifyWith(i,n):--a||l.resolveWith(i,n)}};if(o>1)for(t=new Array(o),i=new Array(o),n=new Array(o);o>r;r++)s[r]&&Z.isFunction(s[r].promise)?s[r].promise().done(c(r,n,s)).fail(l.reject).progress(c(r,i,t)):--a;return a||l.resolveWith(n,s),l.promise()}});var me;Z.fn.ready=function(e){return Z.ready.promise().done(e),this},Z.extend({isReady:!1,readyWait:1,holdReady:function(e){e?Z.readyWait++:Z.ready(!0)},ready:function(e){(e===!0?--Z.readyWait:Z.isReady)||(Z.isReady=!0,e!==!0&&--Z.readyWait>0||(me.resolveWith(Q,[Z]),Z.fn.triggerHandler&&(Z(Q).triggerHandler("ready"),Z(Q).off("ready"))))}}),Z.ready.promise=function(t){return me||(me=Z.Deferred(),"complete"===Q.readyState?setTimeout(Z.ready):(Q.addEventListener("DOMContentLoaded",o,!1),e.addEventListener("load",o,!1))),me.promise(t)},Z.ready.promise();var ge=Z.access=function(e,t,i,n,r,s,o){var a=0,l=e.length,c=null==i;if("object"===Z.type(i)){r=!0;for(a in i)Z.access(e,t,a,i[a],!0,s,o)}else if(void 0!==n&&(r=!0,Z.isFunction(n)||(o=!0),c&&(o?(t.call(e,n),t=null):(c=t,t=function(e,t,i){return c.call(Z(e),i)})),t))for(;l>a;a++)t(e[a],i,o?n:n.call(e[a],a,t(e[a],i)));return r?e:c?t.call(e):l?t(e[0],i):s};Z.acceptData=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType},a.uid=1,a.accepts=Z.acceptData,a.prototype={key:function(e){if(!a.accepts(e))return 0;var t={},i=e[this.expando];if(!i){i=a.uid++;try{t[this.expando]={value:i},Object.defineProperties(e,t)}catch(n){t[this.expando]=i,Z.extend(e,t)}}return this.cache[i]||(this.cache[i]={}),i},set:function(e,t,i){var n,r=this.key(e),s=this.cache[r];if("string"==typeof t)s[t]=i;else if(Z.isEmptyObject(s))Z.extend(this.cache[r],t);else for(n in t)s[n]=t[n];return s},get:function(e,t){var i=this.cache[this.key(e)];return void 0===t?i:i[t]},access:function(e,t,i){var n;return void 0===t||t&&"string"==typeof t&&void 0===i?(n=this.get(e,t),void 0!==n?n:this.get(e,Z.camelCase(t))):(this.set(e,t,i),void 0!==i?i:t)},remove:function(e,t){var i,n,r,s=this.key(e),o=this.cache[s];if(void 0===t)this.cache[s]={};else{Z.isArray(t)?n=t.concat(t.map(Z.camelCase)):(r=Z.camelCase(t),t in o?n=[t,r]:(n=r,n=n in o?[n]:n.match(de)||[])),i=n.length;for(;i--;)delete o[n[i]]}},hasData:function(e){return!Z.isEmptyObject(this.cache[e[this.expando]]||{})},discard:function(e){e[this.expando]&&delete this.cache[e[this.expando]]}};var ve=new a,ye=new a,we=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,be=/([A-Z])/g;Z.extend({hasData:function(e){return ye.hasData(e)||ve.hasData(e)},data:function(e,t,i){return ye.access(e,t,i)},removeData:function(e,t){ye.remove(e,t)},_data:function(e,t,i){return ve.access(e,t,i)},_removeData:function(e,t){ve.remove(e,t)}}),Z.fn.extend({data:function(e,t){var i,n,r,s=this[0],o=s&&s.attributes;if(void 0===e){if(this.length&&(r=ye.get(s),1===s.nodeType&&!ve.get(s,"hasDataAttrs"))){for(i=o.length;i--;)o[i]&&(n=o[i].name,0===n.indexOf("data-")&&(n=Z.camelCase(n.slice(5)),l(s,n,r[n])));ve.set(s,"hasDataAttrs",!0)}return r}return"object"==typeof e?this.each(function(){ye.set(this,e)}):ge(this,function(t){var i,n=Z.camelCase(e);if(s&&void 0===t){if(i=ye.get(s,e),void 0!==i)return i;if(i=ye.get(s,n),void 0!==i)return i;if(i=l(s,n,void 0),void 0!==i)return i}else this.each(function(){var i=ye.get(this,n);ye.set(this,n,t),-1!==e.indexOf("-")&&void 0!==i&&ye.set(this,e,t)})},null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){ye.remove(this,e)})}}),Z.extend({queue:function(e,t,i){var n;return e?(t=(t||"fx")+"queue",n=ve.get(e,t),i&&(!n||Z.isArray(i)?n=ve.access(e,t,Z.makeArray(i)):n.push(i)),n||[]):void 0},dequeue:function(e,t){t=t||"fx";var i=Z.queue(e,t),n=i.length,r=i.shift(),s=Z._queueHooks(e,t),o=function(){Z.dequeue(e,t)};"inprogress"===r&&(r=i.shift(),n--),r&&("fx"===t&&i.unshift("inprogress"),delete s.stop,r.call(e,o,s)),!n&&s&&s.empty.fire()},_queueHooks:function(e,t){var i=t+"queueHooks";return ve.get(e,i)||ve.access(e,i,{empty:Z.Callbacks("once memory").add(function(){ve.remove(e,[t+"queue",i])})})}}),Z.fn.extend({queue:function(e,t){var i=2;return"string"!=typeof e&&(t=e,e="fx",i--),arguments.length<i?Z.queue(this[0],e):void 0===t?this:this.each(function(){var i=Z.queue(this,e,t);Z._queueHooks(this,e),"fx"===e&&"inprogress"!==i[0]&&Z.dequeue(this,e)})},dequeue:function(e){return this.each(function(){Z.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var i,n=1,r=Z.Deferred(),s=this,o=this.length,a=function(){--n||r.resolveWith(s,[s])};for("string"!=typeof e&&(t=e,e=void 0),e=e||"fx";o--;)i=ve.get(s[o],e+"queueHooks"),i&&i.empty&&(n++,i.empty.add(a));return a(),r.promise(t)}});var xe=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,Se=["Top","Right","Bottom","Left"],Te=function(e,t){return e=t||e,"none"===Z.css(e,"display")||!Z.contains(e.ownerDocument,e)},Ce=/^(?:checkbox|radio)$/i;!function(){var e=Q.createDocumentFragment(),t=e.appendChild(Q.createElement("div")),i=Q.createElement("input");i.setAttribute("type","radio"),i.setAttribute("checked","checked"),i.setAttribute("name","t"),t.appendChild(i),K.checkClone=t.cloneNode(!0).cloneNode(!0).lastChild.checked,t.innerHTML="<textarea>x</textarea>",K.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue}();var ke="undefined";K.focusinBubbles="onfocusin"in e;var Ee=/^key/,Pe=/^(?:mouse|pointer|contextmenu)|click/,Ae=/^(?:focusinfocus|focusoutblur)$/,_e=/^([^.]*)(?:\.(.+)|)$/;Z.event={global:{},add:function(e,t,i,n,r){var s,o,a,l,c,u,p,h,d,f,m,g=ve.get(e);if(g)for(i.handler&&(s=i,i=s.handler,r=s.selector),i.guid||(i.guid=Z.guid++),(l=g.events)||(l=g.events={}),(o=g.handle)||(o=g.handle=function(t){return typeof Z!==ke&&Z.event.triggered!==t.type?Z.event.dispatch.apply(e,arguments):void 0}),t=(t||"").match(de)||[""],c=t.length;c--;)a=_e.exec(t[c])||[],d=m=a[1],f=(a[2]||"").split(".").sort(),d&&(p=Z.event.special[d]||{},d=(r?p.delegateType:p.bindType)||d,p=Z.event.special[d]||{},u=Z.extend({type:d,origType:m,data:n,handler:i,guid:i.guid,selector:r,needsContext:r&&Z.expr.match.needsContext.test(r),namespace:f.join(".")},s),(h=l[d])||(h=l[d]=[],h.delegateCount=0,p.setup&&p.setup.call(e,n,f,o)!==!1||e.addEventListener&&e.addEventListener(d,o,!1)),p.add&&(p.add.call(e,u),u.handler.guid||(u.handler.guid=i.guid)),r?h.splice(h.delegateCount++,0,u):h.push(u),Z.event.global[d]=!0)},remove:function(e,t,i,n,r){var s,o,a,l,c,u,p,h,d,f,m,g=ve.hasData(e)&&ve.get(e);if(g&&(l=g.events)){for(t=(t||"").match(de)||[""],c=t.length;c--;)if(a=_e.exec(t[c])||[],d=m=a[1],f=(a[2]||"").split(".").sort(),d){for(p=Z.event.special[d]||{},d=(n?p.delegateType:p.bindType)||d,h=l[d]||[],a=a[2]&&new RegExp("(^|\\.)"+f.join("\\.(?:.*\\.|)")+"(\\.|$)"),o=s=h.length;s--;)u=h[s],!r&&m!==u.origType||i&&i.guid!==u.guid||a&&!a.test(u.namespace)||n&&n!==u.selector&&("**"!==n||!u.selector)||(h.splice(s,1),u.selector&&h.delegateCount--,p.remove&&p.remove.call(e,u));o&&!h.length&&(p.teardown&&p.teardown.call(e,f,g.handle)!==!1||Z.removeEvent(e,d,g.handle),delete l[d])}else for(d in l)Z.event.remove(e,d+t[c],i,n,!0);Z.isEmptyObject(l)&&(delete g.handle,ve.remove(e,"events"))}},trigger:function(t,i,n,r){var s,o,a,l,c,u,p,h=[n||Q],d=U.call(t,"type")?t.type:t,f=U.call(t,"namespace")?t.namespace.split("."):[];if(o=a=n=n||Q,3!==n.nodeType&&8!==n.nodeType&&!Ae.test(d+Z.event.triggered)&&(d.indexOf(".")>=0&&(f=d.split("."),d=f.shift(),f.sort()),c=d.indexOf(":")<0&&"on"+d,t=t[Z.expando]?t:new Z.Event(d,"object"==typeof t&&t),t.isTrigger=r?2:3,t.namespace=f.join("."),t.namespace_re=t.namespace?new RegExp("(^|\\.)"+f.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=n),i=null==i?[t]:Z.makeArray(i,[t]),p=Z.event.special[d]||{},r||!p.trigger||p.trigger.apply(n,i)!==!1)){if(!r&&!p.noBubble&&!Z.isWindow(n)){for(l=p.delegateType||d,Ae.test(l+d)||(o=o.parentNode);o;o=o.parentNode)h.push(o),a=o;a===(n.ownerDocument||Q)&&h.push(a.defaultView||a.parentWindow||e)}for(s=0;(o=h[s++])&&!t.isPropagationStopped();)t.type=s>1?l:p.bindType||d,u=(ve.get(o,"events")||{})[t.type]&&ve.get(o,"handle"),u&&u.apply(o,i),u=c&&o[c],u&&u.apply&&Z.acceptData(o)&&(t.result=u.apply(o,i),t.result===!1&&t.preventDefault());return t.type=d,r||t.isDefaultPrevented()||p._default&&p._default.apply(h.pop(),i)!==!1||!Z.acceptData(n)||c&&Z.isFunction(n[d])&&!Z.isWindow(n)&&(a=n[c],a&&(n[c]=null),Z.event.triggered=d,n[d](),Z.event.triggered=void 0,a&&(n[c]=a)),t.result}},dispatch:function(e){e=Z.event.fix(e);var t,i,n,r,s,o=[],a=q.call(arguments),l=(ve.get(this,"events")||{})[e.type]||[],c=Z.event.special[e.type]||{};if(a[0]=e,e.delegateTarget=this,!c.preDispatch||c.preDispatch.call(this,e)!==!1){for(o=Z.event.handlers.call(this,e,l),t=0;(r=o[t++])&&!e.isPropagationStopped();)for(e.currentTarget=r.elem,i=0;(s=r.handlers[i++])&&!e.isImmediatePropagationStopped();)e.namespace_re&&!e.namespace_re.test(s.namespace)||(e.handleObj=s,e.data=s.data,n=((Z.event.special[s.origType]||{}).handle||s.handler).apply(r.elem,a),void 0!==n&&(e.result=n)===!1&&(e.preventDefault(),e.stopPropagation()));return c.postDispatch&&c.postDispatch.call(this,e),e.result}},handlers:function(e,t){var i,n,r,s,o=[],a=t.delegateCount,l=e.target;if(a&&l.nodeType&&(!e.button||"click"!==e.type))for(;l!==this;l=l.parentNode||this)if(l.disabled!==!0||"click"!==e.type){for(n=[],i=0;a>i;i++)s=t[i],r=s.selector+" ",void 0===n[r]&&(n[r]=s.needsContext?Z(r,this).index(l)>=0:Z.find(r,this,null,[l]).length),n[r]&&n.push(s);n.length&&o.push({elem:l,handlers:n})}return a<t.length&&o.push({elem:this,handlers:t.slice(a)}),o},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(e,t){return null==e.which&&(e.which=null!=t.charCode?t.charCode:t.keyCode),e}},mouseHooks:{props:"button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(e,t){var i,n,r,s=t.button;return null==e.pageX&&null!=t.clientX&&(i=e.target.ownerDocument||Q,n=i.documentElement,r=i.body,e.pageX=t.clientX+(n&&n.scrollLeft||r&&r.scrollLeft||0)-(n&&n.clientLeft||r&&r.clientLeft||0),e.pageY=t.clientY+(n&&n.scrollTop||r&&r.scrollTop||0)-(n&&n.clientTop||r&&r.clientTop||0)),e.which||void 0===s||(e.which=1&s?1:2&s?3:4&s?2:0),e}},fix:function(e){if(e[Z.expando])return e;var t,i,n,r=e.type,s=e,o=this.fixHooks[r];for(o||(this.fixHooks[r]=o=Pe.test(r)?this.mouseHooks:Ee.test(r)?this.keyHooks:{}),n=o.props?this.props.concat(o.props):this.props,e=new Z.Event(s),t=n.length;t--;)i=n[t],e[i]=s[i];return e.target||(e.target=Q),3===e.target.nodeType&&(e.target=e.target.parentNode),o.filter?o.filter(e,s):e},special:{load:{noBubble:!0},focus:{trigger:function(){return this!==p()&&this.focus?(this.focus(),!1):void 0},delegateType:"focusin"},blur:{trigger:function(){return this===p()&&this.blur?(this.blur(),!1):void 0},delegateType:"focusout"},click:{trigger:function(){return"checkbox"===this.type&&this.click&&Z.nodeName(this,"input")?(this.click(),!1):void 0},_default:function(e){return Z.nodeName(e.target,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,i,n){var r=Z.extend(new Z.Event,i,{type:e,isSimulated:!0,originalEvent:{}});n?Z.event.trigger(r,null,t):Z.event.dispatch.call(t,r),r.isDefaultPrevented()&&i.preventDefault()}},Z.removeEvent=function(e,t,i){e.removeEventListener&&e.removeEventListener(t,i,!1)},Z.Event=function(e,t){return this instanceof Z.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&e.returnValue===!1?c:u):this.type=e,t&&Z.extend(this,t),this.timeStamp=e&&e.timeStamp||Z.now(),void(this[Z.expando]=!0)):new Z.Event(e,t)},Z.Event.prototype={isDefaultPrevented:u,isPropagationStopped:u,isImmediatePropagationStopped:u,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=c,e&&e.preventDefault&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=c,e&&e.stopPropagation&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=c,e&&e.stopImmediatePropagation&&e.stopImmediatePropagation(),this.stopPropagation()}},Z.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,t){Z.event.special[e]={delegateType:t,bindType:t,handle:function(e){var i,n=this,r=e.relatedTarget,s=e.handleObj;return r&&(r===n||Z.contains(n,r))||(e.type=s.origType,i=s.handler.apply(this,arguments),e.type=t),i}}}),K.focusinBubbles||Z.each({focus:"focusin",blur:"focusout"},function(e,t){var i=function(e){Z.event.simulate(t,e.target,Z.event.fix(e),!0)};Z.event.special[t]={setup:function(){var n=this.ownerDocument||this,r=ve.access(n,t);r||n.addEventListener(e,i,!0),ve.access(n,t,(r||0)+1)},teardown:function(){var n=this.ownerDocument||this,r=ve.access(n,t)-1;r?ve.access(n,t,r):(n.removeEventListener(e,i,!0),ve.remove(n,t))}}}),Z.fn.extend({on:function(e,t,i,n,r){var s,o;if("object"==typeof e){"string"!=typeof t&&(i=i||t,t=void 0);for(o in e)this.on(o,t,i,e[o],r);return this}if(null==i&&null==n?(n=t,i=t=void 0):null==n&&("string"==typeof t?(n=i,i=void 0):(n=i,i=t,t=void 0)),n===!1)n=u;else if(!n)return this;return 1===r&&(s=n,n=function(e){return Z().off(e),s.apply(this,arguments)},n.guid=s.guid||(s.guid=Z.guid++)),this.each(function(){Z.event.add(this,e,n,i,t)})},one:function(e,t,i,n){return this.on(e,t,i,n,1)},off:function(e,t,i){var n,r;if(e&&e.preventDefault&&e.handleObj)return n=e.handleObj,Z(e.delegateTarget).off(n.namespace?n.origType+"."+n.namespace:n.origType,n.selector,n.handler),this;if("object"==typeof e){for(r in e)this.off(r,t,e[r]);return this}return t!==!1&&"function"!=typeof t||(i=t,t=void 0),i===!1&&(i=u),this.each(function(){Z.event.remove(this,e,i,t)})},trigger:function(e,t){return this.each(function(){Z.event.trigger(e,t,this)})},triggerHandler:function(e,t){var i=this[0];return i?Z.event.trigger(e,t,i,!0):void 0}});var De=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,Le=/<([\w:]+)/,Me=/<|&#?\w+;/,Ne=/<(?:script|style|link)/i,Ie=/checked\s*(?:[^=]|=\s*.checked.)/i,ze=/^$|\/(?:java|ecma)script/i,Oe=/^true\/(.*)/,Be=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,Re={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};Re.optgroup=Re.option,Re.tbody=Re.tfoot=Re.colgroup=Re.caption=Re.thead,Re.th=Re.td,Z.extend({clone:function(e,t,i){var n,r,s,o,a=e.cloneNode(!0),l=Z.contains(e.ownerDocument,e);if(!(K.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||Z.isXMLDoc(e)))for(o=v(a),s=v(e),n=0,r=s.length;r>n;n++)y(s[n],o[n]);if(t)if(i)for(s=s||v(e),o=o||v(a),n=0,r=s.length;r>n;n++)g(s[n],o[n]);else g(e,a);return o=v(a,"script"),o.length>0&&m(o,!l&&v(e,"script")),a},buildFragment:function(e,t,i,n){for(var r,s,o,a,l,c,u=t.createDocumentFragment(),p=[],h=0,d=e.length;d>h;h++)if(r=e[h],r||0===r)if("object"===Z.type(r))Z.merge(p,r.nodeType?[r]:r);else if(Me.test(r)){for(s=s||u.appendChild(t.createElement("div")),o=(Le.exec(r)||["",""])[1].toLowerCase(),a=Re[o]||Re._default,s.innerHTML=a[1]+r.replace(De,"<$1></$2>")+a[2],c=a[0];c--;)s=s.lastChild;Z.merge(p,s.childNodes),s=u.firstChild,s.textContent=""}else p.push(t.createTextNode(r));for(u.textContent="",h=0;r=p[h++];)if((!n||-1===Z.inArray(r,n))&&(l=Z.contains(r.ownerDocument,r),s=v(u.appendChild(r),"script"),l&&m(s),i))for(c=0;r=s[c++];)ze.test(r.type||"")&&i.push(r);return u},cleanData:function(e){for(var t,i,n,r,s=Z.event.special,o=0;void 0!==(i=e[o]);o++){if(Z.acceptData(i)&&(r=i[ve.expando],r&&(t=ve.cache[r]))){if(t.events)for(n in t.events)s[n]?Z.event.remove(i,n):Z.removeEvent(i,n,t.handle);ve.cache[r]&&delete ve.cache[r]}delete ye.cache[i[ye.expando]]}}}),Z.fn.extend({text:function(e){return ge(this,function(e){return void 0===e?Z.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=h(this,e);t.appendChild(e)}})},prepend:function(){return this.domManip(arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=h(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return this.domManip(arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},remove:function(e,t){for(var i,n=e?Z.filter(e,this):this,r=0;null!=(i=n[r]);r++)t||1!==i.nodeType||Z.cleanData(v(i)),i.parentNode&&(t&&Z.contains(i.ownerDocument,i)&&m(v(i,"script")),i.parentNode.removeChild(i));return this},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(Z.cleanData(v(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null==e?!1:e,t=null==t?e:t,this.map(function(){return Z.clone(this,e,t)})},html:function(e){return ge(this,function(e){var t=this[0]||{},i=0,n=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Ne.test(e)&&!Re[(Le.exec(e)||["",""])[1].toLowerCase()]){e=e.replace(De,"<$1></$2>");try{for(;n>i;i++)t=this[i]||{},1===t.nodeType&&(Z.cleanData(v(t,!1)),t.innerHTML=e);t=0}catch(r){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=arguments[0];return this.domManip(arguments,function(t){e=this.parentNode,Z.cleanData(v(this)),e&&e.replaceChild(t,this)}),e&&(e.length||e.nodeType)?this:this.remove()},detach:function(e){return this.remove(e,!0)},domManip:function(e,t){e=Y.apply([],e);var i,n,r,s,o,a,l=0,c=this.length,u=this,p=c-1,h=e[0],m=Z.isFunction(h);if(m||c>1&&"string"==typeof h&&!K.checkClone&&Ie.test(h))return this.each(function(i){var n=u.eq(i);m&&(e[0]=h.call(this,i,n.html())),n.domManip(e,t)});if(c&&(i=Z.buildFragment(e,this[0].ownerDocument,!1,this),n=i.firstChild,1===i.childNodes.length&&(i=n),n)){for(r=Z.map(v(i,"script"),d),s=r.length;c>l;l++)o=i,l!==p&&(o=Z.clone(o,!0,!0),s&&Z.merge(r,v(o,"script"))),t.call(this[l],o,l);if(s)for(a=r[r.length-1].ownerDocument,Z.map(r,f),l=0;s>l;l++)o=r[l],ze.test(o.type||"")&&!ve.access(o,"globalEval")&&Z.contains(a,o)&&(o.src?Z._evalUrl&&Z._evalUrl(o.src):Z.globalEval(o.textContent.replace(Be,"")))}return this}}),Z.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){Z.fn[e]=function(e){for(var i,n=[],r=Z(e),s=r.length-1,o=0;s>=o;o++)i=o===s?this:this.clone(!0),Z(r[o])[t](i),W.apply(n,i.get());return this.pushStack(n)}});var Fe,He={},je=/^margin/,Xe=new RegExp("^("+xe+")(?!px)[a-z%]+$","i"),qe=function(t){return t.ownerDocument.defaultView.opener?t.ownerDocument.defaultView.getComputedStyle(t,null):e.getComputedStyle(t,null)};!function(){function t(){o.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute",o.innerHTML="",r.appendChild(s);var t=e.getComputedStyle(o,null);i="1%"!==t.top,n="4px"===t.width,r.removeChild(s)}var i,n,r=Q.documentElement,s=Q.createElement("div"),o=Q.createElement("div");o.style&&(o.style.backgroundClip="content-box",o.cloneNode(!0).style.backgroundClip="",K.clearCloneStyle="content-box"===o.style.backgroundClip, +s.style.cssText="border:0;width:0;height:0;top:0;left:-9999px;margin-top:1px;position:absolute",s.appendChild(o),e.getComputedStyle&&Z.extend(K,{pixelPosition:function(){return t(),i},boxSizingReliable:function(){return null==n&&t(),n},reliableMarginRight:function(){var t,i=o.appendChild(Q.createElement("div"));return i.style.cssText=o.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",i.style.marginRight=i.style.width="0",o.style.width="1px",r.appendChild(s),t=!parseFloat(e.getComputedStyle(i,null).marginRight),r.removeChild(s),o.removeChild(i),t}}))}(),Z.swap=function(e,t,i,n){var r,s,o={};for(s in t)o[s]=e.style[s],e.style[s]=t[s];r=i.apply(e,n||[]);for(s in t)e.style[s]=o[s];return r};var Ye=/^(none|table(?!-c[ea]).+)/,We=new RegExp("^("+xe+")(.*)$","i"),$e=new RegExp("^([+-])=("+xe+")","i"),Ge={position:"absolute",visibility:"hidden",display:"block"},Ve={letterSpacing:"0",fontWeight:"400"},Ue=["Webkit","O","Moz","ms"];Z.extend({cssHooks:{opacity:{get:function(e,t){if(t){var i=x(e,"opacity");return""===i?"1":i}}}},cssNumber:{columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":"cssFloat"},style:function(e,t,i,n){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var r,s,o,a=Z.camelCase(t),l=e.style;return t=Z.cssProps[a]||(Z.cssProps[a]=T(l,a)),o=Z.cssHooks[t]||Z.cssHooks[a],void 0===i?o&&"get"in o&&void 0!==(r=o.get(e,!1,n))?r:l[t]:(s=typeof i,"string"===s&&(r=$e.exec(i))&&(i=(r[1]+1)*r[2]+parseFloat(Z.css(e,t)),s="number"),null!=i&&i===i&&("number"!==s||Z.cssNumber[a]||(i+="px"),K.clearCloneStyle||""!==i||0!==t.indexOf("background")||(l[t]="inherit"),o&&"set"in o&&void 0===(i=o.set(e,i,n))||(l[t]=i)),void 0)}},css:function(e,t,i,n){var r,s,o,a=Z.camelCase(t);return t=Z.cssProps[a]||(Z.cssProps[a]=T(e.style,a)),o=Z.cssHooks[t]||Z.cssHooks[a],o&&"get"in o&&(r=o.get(e,!0,i)),void 0===r&&(r=x(e,t,n)),"normal"===r&&t in Ve&&(r=Ve[t]),""===i||i?(s=parseFloat(r),i===!0||Z.isNumeric(s)?s||0:r):r}}),Z.each(["height","width"],function(e,t){Z.cssHooks[t]={get:function(e,i,n){return i?Ye.test(Z.css(e,"display"))&&0===e.offsetWidth?Z.swap(e,Ge,function(){return E(e,t,n)}):E(e,t,n):void 0},set:function(e,i,n){var r=n&&qe(e);return C(e,i,n?k(e,t,n,"border-box"===Z.css(e,"boxSizing",!1,r),r):0)}}}),Z.cssHooks.marginRight=S(K.reliableMarginRight,function(e,t){return t?Z.swap(e,{display:"inline-block"},x,[e,"marginRight"]):void 0}),Z.each({margin:"",padding:"",border:"Width"},function(e,t){Z.cssHooks[e+t]={expand:function(i){for(var n=0,r={},s="string"==typeof i?i.split(" "):[i];4>n;n++)r[e+Se[n]+t]=s[n]||s[n-2]||s[0];return r}},je.test(e)||(Z.cssHooks[e+t].set=C)}),Z.fn.extend({css:function(e,t){return ge(this,function(e,t,i){var n,r,s={},o=0;if(Z.isArray(t)){for(n=qe(e),r=t.length;r>o;o++)s[t[o]]=Z.css(e,t[o],!1,n);return s}return void 0!==i?Z.style(e,t,i):Z.css(e,t)},e,t,arguments.length>1)},show:function(){return P(this,!0)},hide:function(){return P(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){Te(this)?Z(this).show():Z(this).hide()})}}),Z.Tween=A,A.prototype={constructor:A,init:function(e,t,i,n,r,s){this.elem=e,this.prop=i,this.easing=r||"swing",this.options=t,this.start=this.now=this.cur(),this.end=n,this.unit=s||(Z.cssNumber[i]?"":"px")},cur:function(){var e=A.propHooks[this.prop];return e&&e.get?e.get(this):A.propHooks._default.get(this)},run:function(e){var t,i=A.propHooks[this.prop];return this.options.duration?this.pos=t=Z.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),i&&i.set?i.set(this):A.propHooks._default.set(this),this}},A.prototype.init.prototype=A.prototype,A.propHooks={_default:{get:function(e){var t;return null==e.elem[e.prop]||e.elem.style&&null!=e.elem.style[e.prop]?(t=Z.css(e.elem,e.prop,""),t&&"auto"!==t?t:0):e.elem[e.prop]},set:function(e){Z.fx.step[e.prop]?Z.fx.step[e.prop](e):e.elem.style&&(null!=e.elem.style[Z.cssProps[e.prop]]||Z.cssHooks[e.prop])?Z.style(e.elem,e.prop,e.now+e.unit):e.elem[e.prop]=e.now}}},A.propHooks.scrollTop=A.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},Z.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2}},Z.fx=A.prototype.init,Z.fx.step={};var Ke,Qe,Je=/^(?:toggle|show|hide)$/,Ze=new RegExp("^(?:([+-])=|)("+xe+")([a-z%]*)$","i"),et=/queueHooks$/,tt=[M],it={"*":[function(e,t){var i=this.createTween(e,t),n=i.cur(),r=Ze.exec(t),s=r&&r[3]||(Z.cssNumber[e]?"":"px"),o=(Z.cssNumber[e]||"px"!==s&&+n)&&Ze.exec(Z.css(i.elem,e)),a=1,l=20;if(o&&o[3]!==s){s=s||o[3],r=r||[],o=+n||1;do a=a||".5",o/=a,Z.style(i.elem,e,o+s);while(a!==(a=i.cur()/n)&&1!==a&&--l)}return r&&(o=i.start=+o||+n||0,i.unit=s,i.end=r[1]?o+(r[1]+1)*r[2]:+r[2]),i}]};Z.Animation=Z.extend(I,{tweener:function(e,t){Z.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");for(var i,n=0,r=e.length;r>n;n++)i=e[n],it[i]=it[i]||[],it[i].unshift(t)},prefilter:function(e,t){t?tt.unshift(e):tt.push(e)}}),Z.speed=function(e,t,i){var n=e&&"object"==typeof e?Z.extend({},e):{complete:i||!i&&t||Z.isFunction(e)&&e,duration:e,easing:i&&t||t&&!Z.isFunction(t)&&t};return n.duration=Z.fx.off?0:"number"==typeof n.duration?n.duration:n.duration in Z.fx.speeds?Z.fx.speeds[n.duration]:Z.fx.speeds._default,null!=n.queue&&n.queue!==!0||(n.queue="fx"),n.old=n.complete,n.complete=function(){Z.isFunction(n.old)&&n.old.call(this),n.queue&&Z.dequeue(this,n.queue)},n},Z.fn.extend({fadeTo:function(e,t,i,n){return this.filter(Te).css("opacity",0).show().end().animate({opacity:t},e,i,n)},animate:function(e,t,i,n){var r=Z.isEmptyObject(e),s=Z.speed(t,i,n),o=function(){var t=I(this,Z.extend({},e),s);(r||ve.get(this,"finish"))&&t.stop(!0)};return o.finish=o,r||s.queue===!1?this.each(o):this.queue(s.queue,o)},stop:function(e,t,i){var n=function(e){var t=e.stop;delete e.stop,t(i)};return"string"!=typeof e&&(i=t,t=e,e=void 0),t&&e!==!1&&this.queue(e||"fx",[]),this.each(function(){var t=!0,r=null!=e&&e+"queueHooks",s=Z.timers,o=ve.get(this);if(r)o[r]&&o[r].stop&&n(o[r]);else for(r in o)o[r]&&o[r].stop&&et.test(r)&&n(o[r]);for(r=s.length;r--;)s[r].elem!==this||null!=e&&s[r].queue!==e||(s[r].anim.stop(i),t=!1,s.splice(r,1));!t&&i||Z.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"fx"),this.each(function(){var t,i=ve.get(this),n=i[e+"queue"],r=i[e+"queueHooks"],s=Z.timers,o=n?n.length:0;for(i.finish=!0,Z.queue(this,e,[]),r&&r.stop&&r.stop.call(this,!0),t=s.length;t--;)s[t].elem===this&&s[t].queue===e&&(s[t].anim.stop(!0),s.splice(t,1));for(t=0;o>t;t++)n[t]&&n[t].finish&&n[t].finish.call(this);delete i.finish})}}),Z.each(["toggle","show","hide"],function(e,t){var i=Z.fn[t];Z.fn[t]=function(e,n,r){return null==e||"boolean"==typeof e?i.apply(this,arguments):this.animate(D(t,!0),e,n,r)}}),Z.each({slideDown:D("show"),slideUp:D("hide"),slideToggle:D("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){Z.fn[e]=function(e,i,n){return this.animate(t,e,i,n)}}),Z.timers=[],Z.fx.tick=function(){var e,t=0,i=Z.timers;for(Ke=Z.now();t<i.length;t++)e=i[t],e()||i[t]!==e||i.splice(t--,1);i.length||Z.fx.stop(),Ke=void 0},Z.fx.timer=function(e){Z.timers.push(e),e()?Z.fx.start():Z.timers.pop()},Z.fx.interval=13,Z.fx.start=function(){Qe||(Qe=setInterval(Z.fx.tick,Z.fx.interval))},Z.fx.stop=function(){clearInterval(Qe),Qe=null},Z.fx.speeds={slow:600,fast:200,_default:400},Z.fn.delay=function(e,t){return e=Z.fx?Z.fx.speeds[e]||e:e,t=t||"fx",this.queue(t,function(t,i){var n=setTimeout(t,e);i.stop=function(){clearTimeout(n)}})},function(){var e=Q.createElement("input"),t=Q.createElement("select"),i=t.appendChild(Q.createElement("option"));e.type="checkbox",K.checkOn=""!==e.value,K.optSelected=i.selected,t.disabled=!0,K.optDisabled=!i.disabled,e=Q.createElement("input"),e.value="t",e.type="radio",K.radioValue="t"===e.value}();var nt,rt,st=Z.expr.attrHandle;Z.fn.extend({attr:function(e,t){return ge(this,Z.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){Z.removeAttr(this,e)})}}),Z.extend({attr:function(e,t,i){var n,r,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return typeof e.getAttribute===ke?Z.prop(e,t,i):(1===s&&Z.isXMLDoc(e)||(t=t.toLowerCase(),n=Z.attrHooks[t]||(Z.expr.match.bool.test(t)?rt:nt)),void 0===i?n&&"get"in n&&null!==(r=n.get(e,t))?r:(r=Z.find.attr(e,t),null==r?void 0:r):null!==i?n&&"set"in n&&void 0!==(r=n.set(e,i,t))?r:(e.setAttribute(t,i+""),i):void Z.removeAttr(e,t))},removeAttr:function(e,t){var i,n,r=0,s=t&&t.match(de);if(s&&1===e.nodeType)for(;i=s[r++];)n=Z.propFix[i]||i,Z.expr.match.bool.test(i)&&(e[n]=!1),e.removeAttribute(i)},attrHooks:{type:{set:function(e,t){if(!K.radioValue&&"radio"===t&&Z.nodeName(e,"input")){var i=e.value;return e.setAttribute("type",t),i&&(e.value=i),t}}}}}),rt={set:function(e,t,i){return t===!1?Z.removeAttr(e,i):e.setAttribute(i,i),i}},Z.each(Z.expr.match.bool.source.match(/\w+/g),function(e,t){var i=st[t]||Z.find.attr;st[t]=function(e,t,n){var r,s;return n||(s=st[t],st[t]=r,r=null!=i(e,t,n)?t.toLowerCase():null,st[t]=s),r}});var ot=/^(?:input|select|textarea|button)$/i;Z.fn.extend({prop:function(e,t){return ge(this,Z.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[Z.propFix[e]||e]})}}),Z.extend({propFix:{"for":"htmlFor","class":"className"},prop:function(e,t,i){var n,r,s,o=e.nodeType;if(e&&3!==o&&8!==o&&2!==o)return s=1!==o||!Z.isXMLDoc(e),s&&(t=Z.propFix[t]||t,r=Z.propHooks[t]),void 0!==i?r&&"set"in r&&void 0!==(n=r.set(e,i,t))?n:e[t]=i:r&&"get"in r&&null!==(n=r.get(e,t))?n:e[t]},propHooks:{tabIndex:{get:function(e){return e.hasAttribute("tabindex")||ot.test(e.nodeName)||e.href?e.tabIndex:-1}}}}),K.optSelected||(Z.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null}}),Z.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){Z.propFix[this.toLowerCase()]=this});var at=/[\t\r\n\f]/g;Z.fn.extend({addClass:function(e){var t,i,n,r,s,o,a="string"==typeof e&&e,l=0,c=this.length;if(Z.isFunction(e))return this.each(function(t){Z(this).addClass(e.call(this,t,this.className))});if(a)for(t=(e||"").match(de)||[];c>l;l++)if(i=this[l],n=1===i.nodeType&&(i.className?(" "+i.className+" ").replace(at," "):" ")){for(s=0;r=t[s++];)n.indexOf(" "+r+" ")<0&&(n+=r+" ");o=Z.trim(n),i.className!==o&&(i.className=o)}return this},removeClass:function(e){var t,i,n,r,s,o,a=0===arguments.length||"string"==typeof e&&e,l=0,c=this.length;if(Z.isFunction(e))return this.each(function(t){Z(this).removeClass(e.call(this,t,this.className))});if(a)for(t=(e||"").match(de)||[];c>l;l++)if(i=this[l],n=1===i.nodeType&&(i.className?(" "+i.className+" ").replace(at," "):"")){for(s=0;r=t[s++];)for(;n.indexOf(" "+r+" ")>=0;)n=n.replace(" "+r+" "," ");o=e?Z.trim(n):"",i.className!==o&&(i.className=o)}return this},toggleClass:function(e,t){var i=typeof e;return"boolean"==typeof t&&"string"===i?t?this.addClass(e):this.removeClass(e):Z.isFunction(e)?this.each(function(i){Z(this).toggleClass(e.call(this,i,this.className,t),t)}):this.each(function(){if("string"===i)for(var t,n=0,r=Z(this),s=e.match(de)||[];t=s[n++];)r.hasClass(t)?r.removeClass(t):r.addClass(t);else i!==ke&&"boolean"!==i||(this.className&&ve.set(this,"__className__",this.className),this.className=this.className||e===!1?"":ve.get(this,"__className__")||"")})},hasClass:function(e){for(var t=" "+e+" ",i=0,n=this.length;n>i;i++)if(1===this[i].nodeType&&(" "+this[i].className+" ").replace(at," ").indexOf(t)>=0)return!0;return!1}});var lt=/\r/g;Z.fn.extend({val:function(e){var t,i,n,r=this[0];{if(arguments.length)return n=Z.isFunction(e),this.each(function(i){var r;1===this.nodeType&&(r=n?e.call(this,i,Z(this).val()):e,null==r?r="":"number"==typeof r?r+="":Z.isArray(r)&&(r=Z.map(r,function(e){return null==e?"":e+""})),t=Z.valHooks[this.type]||Z.valHooks[this.nodeName.toLowerCase()],t&&"set"in t&&void 0!==t.set(this,r,"value")||(this.value=r))});if(r)return t=Z.valHooks[r.type]||Z.valHooks[r.nodeName.toLowerCase()],t&&"get"in t&&void 0!==(i=t.get(r,"value"))?i:(i=r.value,"string"==typeof i?i.replace(lt,""):null==i?"":i)}}}),Z.extend({valHooks:{option:{get:function(e){var t=Z.find.attr(e,"value");return null!=t?t:Z.trim(Z.text(e))}},select:{get:function(e){for(var t,i,n=e.options,r=e.selectedIndex,s="select-one"===e.type||0>r,o=s?null:[],a=s?r+1:n.length,l=0>r?a:s?r:0;a>l;l++)if(i=n[l],(i.selected||l===r)&&(K.optDisabled?!i.disabled:null===i.getAttribute("disabled"))&&(!i.parentNode.disabled||!Z.nodeName(i.parentNode,"optgroup"))){if(t=Z(i).val(),s)return t;o.push(t)}return o},set:function(e,t){for(var i,n,r=e.options,s=Z.makeArray(t),o=r.length;o--;)n=r[o],(n.selected=Z.inArray(n.value,s)>=0)&&(i=!0);return i||(e.selectedIndex=-1),s}}}}),Z.each(["radio","checkbox"],function(){Z.valHooks[this]={set:function(e,t){return Z.isArray(t)?e.checked=Z.inArray(Z(e).val(),t)>=0:void 0}},K.checkOn||(Z.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}),Z.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(e,t){Z.fn[t]=function(e,i){return arguments.length>0?this.on(t,null,e,i):this.trigger(t)}}),Z.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)},bind:function(e,t,i){return this.on(e,null,t,i)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,i,n){return this.on(t,e,i,n)},undelegate:function(e,t,i){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",i)}});var ct=Z.now(),ut=/\?/;Z.parseJSON=function(e){return JSON.parse(e+"")},Z.parseXML=function(e){var t,i;if(!e||"string"!=typeof e)return null;try{i=new DOMParser,t=i.parseFromString(e,"text/xml")}catch(n){t=void 0}return t&&!t.getElementsByTagName("parsererror").length||Z.error("Invalid XML: "+e),t};var pt=/#.*$/,ht=/([?&])_=[^&]*/,dt=/^(.*?):[ \t]*([^\r\n]*)$/gm,ft=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,mt=/^(?:GET|HEAD)$/,gt=/^\/\//,vt=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,yt={},wt={},bt="*/".concat("*"),xt=e.location.href,St=vt.exec(xt.toLowerCase())||[];Z.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:xt,type:"GET",isLocal:ft.test(St[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":bt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":Z.parseJSON,"text xml":Z.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?B(B(e,Z.ajaxSettings),t):B(Z.ajaxSettings,e)},ajaxPrefilter:z(yt),ajaxTransport:z(wt),ajax:function(e,t){function i(e,t,i,o){var l,u,v,y,b,S=t;2!==w&&(w=2,a&&clearTimeout(a),n=void 0,s=o||"",x.readyState=e>0?4:0,l=e>=200&&300>e||304===e,i&&(y=R(p,x,i)),y=F(p,y,x,l),l?(p.ifModified&&(b=x.getResponseHeader("Last-Modified"),b&&(Z.lastModified[r]=b),b=x.getResponseHeader("etag"),b&&(Z.etag[r]=b)),204===e||"HEAD"===p.type?S="nocontent":304===e?S="notmodified":(S=y.state,u=y.data,v=y.error,l=!v)):(v=S,!e&&S||(S="error",0>e&&(e=0))),x.status=e,x.statusText=(t||S)+"",l?f.resolveWith(h,[u,S,x]):f.rejectWith(h,[x,S,v]),x.statusCode(g),g=void 0,c&&d.trigger(l?"ajaxSuccess":"ajaxError",[x,p,l?u:v]),m.fireWith(h,[x,S]),c&&(d.trigger("ajaxComplete",[x,p]),--Z.active||Z.event.trigger("ajaxStop")))}"object"==typeof e&&(t=e,e=void 0),t=t||{};var n,r,s,o,a,l,c,u,p=Z.ajaxSetup({},t),h=p.context||p,d=p.context&&(h.nodeType||h.jquery)?Z(h):Z.event,f=Z.Deferred(),m=Z.Callbacks("once memory"),g=p.statusCode||{},v={},y={},w=0,b="canceled",x={readyState:0,getResponseHeader:function(e){var t;if(2===w){if(!o)for(o={};t=dt.exec(s);)o[t[1].toLowerCase()]=t[2];t=o[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===w?s:null},setRequestHeader:function(e,t){var i=e.toLowerCase();return w||(e=y[i]=y[i]||e,v[e]=t),this},overrideMimeType:function(e){return w||(p.mimeType=e),this},statusCode:function(e){var t;if(e)if(2>w)for(t in e)g[t]=[g[t],e[t]];else x.always(e[x.status]);return this},abort:function(e){var t=e||b;return n&&n.abort(t),i(0,t),this}};if(f.promise(x).complete=m.add,x.success=x.done,x.error=x.fail,p.url=((e||p.url||xt)+"").replace(pt,"").replace(gt,St[1]+"//"),p.type=t.method||t.type||p.method||p.type,p.dataTypes=Z.trim(p.dataType||"*").toLowerCase().match(de)||[""],null==p.crossDomain&&(l=vt.exec(p.url.toLowerCase()),p.crossDomain=!(!l||l[1]===St[1]&&l[2]===St[2]&&(l[3]||("http:"===l[1]?"80":"443"))===(St[3]||("http:"===St[1]?"80":"443")))),p.data&&p.processData&&"string"!=typeof p.data&&(p.data=Z.param(p.data,p.traditional)),O(yt,p,t,x),2===w)return x;c=Z.event&&p.global,c&&0===Z.active++&&Z.event.trigger("ajaxStart"),p.type=p.type.toUpperCase(),p.hasContent=!mt.test(p.type),r=p.url,p.hasContent||(p.data&&(r=p.url+=(ut.test(r)?"&":"?")+p.data,delete p.data),p.cache===!1&&(p.url=ht.test(r)?r.replace(ht,"$1_="+ct++):r+(ut.test(r)?"&":"?")+"_="+ct++)),p.ifModified&&(Z.lastModified[r]&&x.setRequestHeader("If-Modified-Since",Z.lastModified[r]),Z.etag[r]&&x.setRequestHeader("If-None-Match",Z.etag[r])),(p.data&&p.hasContent&&p.contentType!==!1||t.contentType)&&x.setRequestHeader("Content-Type",p.contentType),x.setRequestHeader("Accept",p.dataTypes[0]&&p.accepts[p.dataTypes[0]]?p.accepts[p.dataTypes[0]]+("*"!==p.dataTypes[0]?", "+bt+"; q=0.01":""):p.accepts["*"]);for(u in p.headers)x.setRequestHeader(u,p.headers[u]);if(p.beforeSend&&(p.beforeSend.call(h,x,p)===!1||2===w))return x.abort();b="abort";for(u in{success:1,error:1,complete:1})x[u](p[u]);if(n=O(wt,p,t,x)){x.readyState=1,c&&d.trigger("ajaxSend",[x,p]),p.async&&p.timeout>0&&(a=setTimeout(function(){x.abort("timeout")},p.timeout));try{w=1,n.send(v,i)}catch(S){if(!(2>w))throw S;i(-1,S)}}else i(-1,"No Transport");return x},getJSON:function(e,t,i){return Z.get(e,t,i,"json")},getScript:function(e,t){return Z.get(e,void 0,t,"script")}}),Z.each(["get","post"],function(e,t){Z[t]=function(e,i,n,r){return Z.isFunction(i)&&(r=r||n,n=i,i=void 0),Z.ajax({url:e,type:t,dataType:r,data:i,success:n})}}),Z._evalUrl=function(e){return Z.ajax({url:e,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})},Z.fn.extend({wrapAll:function(e){var t;return Z.isFunction(e)?this.each(function(t){Z(this).wrapAll(e.call(this,t))}):(this[0]&&(t=Z(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e}).append(this)),this)},wrapInner:function(e){return Z.isFunction(e)?this.each(function(t){Z(this).wrapInner(e.call(this,t))}):this.each(function(){var t=Z(this),i=t.contents();i.length?i.wrapAll(e):t.append(e)})},wrap:function(e){var t=Z.isFunction(e);return this.each(function(i){Z(this).wrapAll(t?e.call(this,i):e)})},unwrap:function(){return this.parent().each(function(){Z.nodeName(this,"body")||Z(this).replaceWith(this.childNodes)}).end()}}),Z.expr.filters.hidden=function(e){return e.offsetWidth<=0&&e.offsetHeight<=0},Z.expr.filters.visible=function(e){return!Z.expr.filters.hidden(e)};var Tt=/%20/g,Ct=/\[\]$/,kt=/\r?\n/g,Et=/^(?:submit|button|image|reset|file)$/i,Pt=/^(?:input|select|textarea|keygen)/i;Z.param=function(e,t){var i,n=[],r=function(e,t){t=Z.isFunction(t)?t():null==t?"":t,n[n.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(void 0===t&&(t=Z.ajaxSettings&&Z.ajaxSettings.traditional),Z.isArray(e)||e.jquery&&!Z.isPlainObject(e))Z.each(e,function(){r(this.name,this.value)});else for(i in e)H(i,e[i],t,r);return n.join("&").replace(Tt,"+")},Z.fn.extend({serialize:function(){return Z.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=Z.prop(this,"elements");return e?Z.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!Z(this).is(":disabled")&&Pt.test(this.nodeName)&&!Et.test(e)&&(this.checked||!Ce.test(e))}).map(function(e,t){var i=Z(this).val();return null==i?null:Z.isArray(i)?Z.map(i,function(e){return{name:t.name,value:e.replace(kt,"\r\n")}}):{name:t.name,value:i.replace(kt,"\r\n")}}).get()}}),Z.ajaxSettings.xhr=function(){try{return new XMLHttpRequest}catch(e){}};var At=0,_t={},Dt={0:200,1223:204},Lt=Z.ajaxSettings.xhr();e.attachEvent&&e.attachEvent("onunload",function(){for(var e in _t)_t[e]()}),K.cors=!!Lt&&"withCredentials"in Lt,K.ajax=Lt=!!Lt,Z.ajaxTransport(function(e){var t;return K.cors||Lt&&!e.crossDomain?{send:function(i,n){var r,s=e.xhr(),o=++At;if(s.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(r in e.xhrFields)s[r]=e.xhrFields[r];e.mimeType&&s.overrideMimeType&&s.overrideMimeType(e.mimeType),e.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");for(r in i)s.setRequestHeader(r,i[r]);t=function(e){return function(){t&&(delete _t[o],t=s.onload=s.onerror=null,"abort"===e?s.abort():"error"===e?n(s.status,s.statusText):n(Dt[s.status]||s.status,s.statusText,"string"==typeof s.responseText?{text:s.responseText}:void 0,s.getAllResponseHeaders()))}},s.onload=t(),s.onerror=t("error"),t=_t[o]=t("abort");try{s.send(e.hasContent&&e.data||null)}catch(a){if(t)throw a}},abort:function(){t&&t()}}:void 0}),Z.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(e){return Z.globalEval(e),e}}}),Z.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),Z.ajaxTransport("script",function(e){if(e.crossDomain){var t,i;return{send:function(n,r){t=Z("<script>").prop({async:!0,charset:e.scriptCharset,src:e.url}).on("load error",i=function(e){t.remove(),i=null,e&&r("error"===e.type?404:200,e.type)}),Q.head.appendChild(t[0])},abort:function(){i&&i()}}}});var Mt=[],Nt=/(=)\?(?=&|$)|\?\?/;Z.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Mt.pop()||Z.expando+"_"+ct++;return this[e]=!0,e}}),Z.ajaxPrefilter("json jsonp",function(t,i,n){var r,s,o,a=t.jsonp!==!1&&(Nt.test(t.url)?"url":"string"==typeof t.data&&!(t.contentType||"").indexOf("application/x-www-form-urlencoded")&&Nt.test(t.data)&&"data");return a||"jsonp"===t.dataTypes[0]?(r=t.jsonpCallback=Z.isFunction(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,a?t[a]=t[a].replace(Nt,"$1"+r):t.jsonp!==!1&&(t.url+=(ut.test(t.url)?"&":"?")+t.jsonp+"="+r),t.converters["script json"]=function(){return o||Z.error(r+" was not called"),o[0]},t.dataTypes[0]="json",s=e[r],e[r]=function(){o=arguments},n.always(function(){e[r]=s,t[r]&&(t.jsonpCallback=i.jsonpCallback,Mt.push(r)),o&&Z.isFunction(s)&&s(o[0]),o=s=void 0}),"script"):void 0}),Z.parseHTML=function(e,t,i){if(!e||"string"!=typeof e)return null;"boolean"==typeof t&&(i=t,t=!1),t=t||Q;var n=oe.exec(e),r=!i&&[];return n?[t.createElement(n[1])]:(n=Z.buildFragment([e],t,r),r&&r.length&&Z(r).remove(),Z.merge([],n.childNodes))};var It=Z.fn.load;Z.fn.load=function(e,t,i){if("string"!=typeof e&&It)return It.apply(this,arguments);var n,r,s,o=this,a=e.indexOf(" ");return a>=0&&(n=Z.trim(e.slice(a)),e=e.slice(0,a)),Z.isFunction(t)?(i=t,t=void 0):t&&"object"==typeof t&&(r="POST"),o.length>0&&Z.ajax({url:e,type:r,dataType:"html",data:t}).done(function(e){s=arguments,o.html(n?Z("<div>").append(Z.parseHTML(e)).find(n):e)}).complete(i&&function(e,t){o.each(i,s||[e.responseText,t,e])}),this},Z.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){Z.fn[t]=function(e){return this.on(t,e)}}),Z.expr.filters.animated=function(e){return Z.grep(Z.timers,function(t){return e===t.elem}).length};var zt=e.document.documentElement;Z.offset={setOffset:function(e,t,i){var n,r,s,o,a,l,c,u=Z.css(e,"position"),p=Z(e),h={};"static"===u&&(e.style.position="relative"),a=p.offset(),s=Z.css(e,"top"),l=Z.css(e,"left"),c=("absolute"===u||"fixed"===u)&&(s+l).indexOf("auto")>-1,c?(n=p.position(),o=n.top,r=n.left):(o=parseFloat(s)||0,r=parseFloat(l)||0),Z.isFunction(t)&&(t=t.call(e,i,a)),null!=t.top&&(h.top=t.top-a.top+o),null!=t.left&&(h.left=t.left-a.left+r),"using"in t?t.using.call(e,h):p.css(h)}},Z.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){Z.offset.setOffset(this,e,t)});var t,i,n=this[0],r={top:0,left:0},s=n&&n.ownerDocument;if(s)return t=s.documentElement,Z.contains(t,n)?(typeof n.getBoundingClientRect!==ke&&(r=n.getBoundingClientRect()),i=j(s),{top:r.top+i.pageYOffset-t.clientTop,left:r.left+i.pageXOffset-t.clientLeft}):r},position:function(){if(this[0]){var e,t,i=this[0],n={top:0,left:0};return"fixed"===Z.css(i,"position")?t=i.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),Z.nodeName(e[0],"html")||(n=e.offset()),n.top+=Z.css(e[0],"borderTopWidth",!0),n.left+=Z.css(e[0],"borderLeftWidth",!0)),{top:t.top-n.top-Z.css(i,"marginTop",!0),left:t.left-n.left-Z.css(i,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent||zt;e&&!Z.nodeName(e,"html")&&"static"===Z.css(e,"position");)e=e.offsetParent;return e||zt})}}),Z.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var n="pageYOffset"===i;Z.fn[t]=function(r){return ge(this,function(t,r,s){var o=j(t);return void 0===s?o?o[i]:t[r]:void(o?o.scrollTo(n?e.pageXOffset:s,n?s:e.pageYOffset):t[r]=s)},t,r,arguments.length,null)}}),Z.each(["top","left"],function(e,t){Z.cssHooks[t]=S(K.pixelPosition,function(e,i){return i?(i=x(e,t),Xe.test(i)?Z(e).position()[t]+"px":i):void 0})}),Z.each({Height:"height",Width:"width"},function(e,t){Z.each({padding:"inner"+e,content:t,"":"outer"+e},function(i,n){Z.fn[n]=function(n,r){var s=arguments.length&&(i||"boolean"!=typeof n),o=i||(n===!0||r===!0?"margin":"border");return ge(this,function(t,i,n){var r;return Z.isWindow(t)?t.document.documentElement["client"+e]:9===t.nodeType?(r=t.documentElement,Math.max(t.body["scroll"+e],r["scroll"+e],t.body["offset"+e],r["offset"+e],r["client"+e])):void 0===n?Z.css(t,i,o):Z.style(t,i,n,o)},t,s?n:void 0,s,null)}})}),Z.fn.size=function(){return this.length},Z.fn.andSelf=Z.fn.addBack,"function"==typeof define&&define.amd&&define("jquery",[],function(){return Z});var Ot=e.jQuery,Bt=e.$;return Z.noConflict=function(t){return e.$===Z&&(e.$=Bt),t&&e.jQuery===Z&&(e.jQuery=Ot),Z},typeof t===ke&&(e.jQuery=e.$=Z),Z})}),define("swiper",[],function(e,t,i){e("swiper.css.js"),function(){"use strict";function e(e){e.fn.swiper=function(i){var n;return e(this).each(function(){var e=new t(this,i);n||(n=e)}),n}}var t=function(e,n){function r(){return"horizontal"===g.params.direction}function s(){g.autoplayTimeoutId=setTimeout(function(){g.params.loop?(g.fixLoop(),g._slideNext()):g.isEnd?n.autoplayStopOnLast?g.stopAutoplay():g._slideTo(0):g._slideNext()},g.params.autoplay)}function o(e,t){var i=v(e.target);if(!i.is(t))if("string"==typeof t)i=i.parents(t);else if(t.nodeType){var n;return i.parents().each(function(e,i){i===t&&(n=t)}),n?t:void 0}if(0!==i.length)return i[0]}function a(e,t){t=t||{};var i=window.MutationObserver||window.WebkitMutationObserver,n=new i(function(e){e.forEach(function(e){g.onResize(!0),g.emit("onObserverUpdate",g,e)})});n.observe(e,{attributes:"undefined"==typeof t.attributes?!0:t.attributes,childList:"undefined"==typeof t.childList?!0:t.childList,characterData:"undefined"==typeof t.characterData?!0:t.characterData}),g.observers.push(n)}function l(e){e.originalEvent&&(e=e.originalEvent);var t=e.keyCode||e.charCode;if(!g.params.allowSwipeToNext&&(r()&&39===t||!r()&&40===t))return!1;if(!g.params.allowSwipeToPrev&&(r()&&37===t||!r()&&38===t))return!1;if(!(e.shiftKey||e.altKey||e.ctrlKey||e.metaKey||document.activeElement&&document.activeElement.nodeName&&("input"===document.activeElement.nodeName.toLowerCase()||"textarea"===document.activeElement.nodeName.toLowerCase()))){if(37===t||39===t||38===t||40===t){var i=!1;if(g.container.parents(".swiper-slide").length>0&&0===g.container.parents(".swiper-slide-active").length)return;var n={left:window.pageXOffset,top:window.pageYOffset},s=window.innerWidth,o=window.innerHeight,a=g.container.offset();g.rtl&&(a.left=a.left-g.container[0].scrollLeft);for(var l=[[a.left,a.top],[a.left+g.width,a.top],[a.left,a.top+g.height],[a.left+g.width,a.top+g.height]],c=0;c<l.length;c++){var u=l[c];u[0]>=n.left&&u[0]<=n.left+s&&u[1]>=n.top&&u[1]<=n.top+o&&(i=!0)}if(!i)return}r()?(37!==t&&39!==t||(e.preventDefault?e.preventDefault():e.returnValue=!1),(39===t&&!g.rtl||37===t&&g.rtl)&&g.slideNext(),(37===t&&!g.rtl||39===t&&g.rtl)&&g.slidePrev()):(38!==t&&40!==t||(e.preventDefault?e.preventDefault():e.returnValue=!1),40===t&&g.slideNext(),38===t&&g.slidePrev())}}function c(e){e.originalEvent&&(e=e.originalEvent);var t=g.mousewheel.event,i=0;if(e.detail)i=-e.detail;else if("mousewheel"===t)if(g.params.mousewheelForceToAxis)if(r()){if(!(Math.abs(e.wheelDeltaX)>Math.abs(e.wheelDeltaY)))return;i=e.wheelDeltaX}else{if(!(Math.abs(e.wheelDeltaY)>Math.abs(e.wheelDeltaX)))return;i=e.wheelDeltaY}else i=e.wheelDelta;else if("DOMMouseScroll"===t)i=-e.detail;else if("wheel"===t)if(g.params.mousewheelForceToAxis)if(r()){if(!(Math.abs(e.deltaX)>Math.abs(e.deltaY)))return;i=-e.deltaX}else{if(!(Math.abs(e.deltaY)>Math.abs(e.deltaX)))return;i=-e.deltaY}else i=Math.abs(e.deltaX)>Math.abs(e.deltaY)?-e.deltaX:-e.deltaY;if(g.params.mousewheelInvert&&(i=-i),g.params.freeMode){var n=g.getWrapperTranslate()+i;if(n>0&&(n=0),n<g.maxTranslate()&&(n=g.maxTranslate()),g.setWrapperTransition(0),g.setWrapperTranslate(n),g.updateProgress(),g.updateActiveIndex(),g.params.freeModeSticky&&(clearTimeout(g.mousewheel.timeout),g.mousewheel.timeout=setTimeout(function(){g.slideReset()},300)),0===n||n===g.maxTranslate())return}else{if((new window.Date).getTime()-g.mousewheel.lastScrollTime>60)if(0>i)if(g.isEnd){if(g.params.mousewheelReleaseOnEdges)return!0}else g.slideNext();else if(g.isBeginning){if(g.params.mousewheelReleaseOnEdges)return!0}else g.slidePrev();g.mousewheel.lastScrollTime=(new window.Date).getTime()}return g.params.autoplay&&g.stopAutoplay(),e.preventDefault?e.preventDefault():e.returnValue=!1,!1}function u(e,t){e=v(e);var i,n,s;i=e.attr("data-swiper-parallax")||"0",n=e.attr("data-swiper-parallax-x"),s=e.attr("data-swiper-parallax-y"),n||s?(n=n||"0",s=s||"0"):r()?(n=i,s="0"):(s=i,n="0"),n=n.indexOf("%")>=0?parseInt(n,10)*t+"%":n*t+"px",s=s.indexOf("%")>=0?parseInt(s,10)*t+"%":s*t+"px",e.transform("translate3d("+n+", "+s+",0px)")}function p(e){return 0!==e.indexOf("on")&&(e=e[0]!==e[0].toUpperCase()?"on"+e[0].toUpperCase()+e.substring(1):"on"+e),e}if(!(this instanceof t))return new t(e,n);var h={direction:"horizontal",touchEventsTarget:"container",initialSlide:0,speed:300,autoplay:!1,autoplayDisableOnInteraction:!0,freeMode:!1,freeModeMomentum:!0,freeModeMomentumRatio:1,freeModeMomentumBounce:!0,freeModeMomentumBounceRatio:1,freeModeSticky:!1,setWrapperSize:!1,virtualTranslate:!1,effect:"slide",coverflow:{rotate:50,stretch:0,depth:100,modifier:1,slideShadows:!0},cube:{slideShadows:!0,shadow:!0,shadowOffset:20,shadowScale:.94},fade:{crossFade:!1},parallax:!1,scrollbar:null,scrollbarHide:!0,keyboardControl:!1,mousewheelControl:!1,mousewheelReleaseOnEdges:!1,mousewheelInvert:!1,mousewheelForceToAxis:!1,hashnav:!1,spaceBetween:0,slidesPerView:1,slidesPerColumn:1,slidesPerColumnFill:"column",slidesPerGroup:1,centeredSlides:!1,touchRatio:1,touchAngle:45,simulateTouch:!0,shortSwipes:!0,longSwipes:!0,longSwipesRatio:.5, +longSwipesMs:300,followFinger:!0,onlyExternal:!1,threshold:0,touchMoveStopPropagation:!0,pagination:null,paginationClickable:!1,paginationHide:!1,paginationBulletRender:null,resistance:!0,resistanceRatio:.85,nextButton:null,prevButton:null,watchSlidesProgress:!1,watchSlidesVisibility:!1,grabCursor:!1,preventClicks:!0,preventClicksPropagation:!0,slideToClickedSlide:!1,lazyLoading:!1,lazyLoadingInPrevNext:!1,lazyLoadingOnTransitionStart:!1,preloadImages:!0,updateOnImagesReady:!0,loop:!1,loopAdditionalSlides:0,loopedSlides:null,control:void 0,controlInverse:!1,allowSwipeToPrev:!0,allowSwipeToNext:!0,swipeHandler:null,noSwiping:!0,noSwipingClass:"swiper-no-swiping",slideClass:"swiper-slide",slideActiveClass:"swiper-slide-active",slideVisibleClass:"swiper-slide-visible",slideDuplicateClass:"swiper-slide-duplicate",slideNextClass:"swiper-slide-next",slidePrevClass:"swiper-slide-prev",wrapperClass:"swiper-wrapper",bulletClass:"swiper-pagination-bullet",bulletActiveClass:"swiper-pagination-bullet-active",buttonDisabledClass:"swiper-button-disabled",paginationHiddenClass:"swiper-pagination-hidden",observer:!1,observeParents:!1,a11y:!1,prevSlideMessage:"Previous slide",nextSlideMessage:"Next slide",firstSlideMessage:"This is the first slide",lastSlideMessage:"This is the last slide",runCallbacksOnInit:!0},d=n&&n.virtualTranslate;n=n||{};for(var f in h)if("undefined"==typeof n[f])n[f]=h[f];else if("object"==typeof n[f])for(var m in h[f])"undefined"==typeof n[f][m]&&(n[f][m]=h[f][m]);var g=this;g.version="3.0.8",g.params=n,g.classNames=[];var v;if(v="undefined"==typeof i?window.Dom7||window.Zepto||window.jQuery:i,v&&(g.$=v,g.container=v(e),0!==g.container.length)){if(g.container.length>1)return void g.container.each(function(){new t(this,n)});g.container[0].swiper=g,g.container.data("swiper",g),g.classNames.push("swiper-container-"+g.params.direction),g.params.freeMode&&g.classNames.push("swiper-container-free-mode"),g.support.flexbox||(g.classNames.push("swiper-container-no-flexbox"),g.params.slidesPerColumn=1),(g.params.parallax||g.params.watchSlidesVisibility)&&(g.params.watchSlidesProgress=!0),["cube","coverflow"].indexOf(g.params.effect)>=0&&(g.support.transforms3d?(g.params.watchSlidesProgress=!0,g.classNames.push("swiper-container-3d")):g.params.effect="slide"),"slide"!==g.params.effect&&g.classNames.push("swiper-container-"+g.params.effect),"cube"===g.params.effect&&(g.params.resistanceRatio=0,g.params.slidesPerView=1,g.params.slidesPerColumn=1,g.params.slidesPerGroup=1,g.params.centeredSlides=!1,g.params.spaceBetween=0,g.params.virtualTranslate=!0,g.params.setWrapperSize=!1),"fade"===g.params.effect&&(g.params.slidesPerView=1,g.params.slidesPerColumn=1,g.params.slidesPerGroup=1,g.params.watchSlidesProgress=!0,g.params.spaceBetween=0,"undefined"==typeof d&&(g.params.virtualTranslate=!0)),g.params.grabCursor&&g.support.touch&&(g.params.grabCursor=!1),g.wrapper=g.container.children("."+g.params.wrapperClass),g.params.pagination&&(g.paginationContainer=v(g.params.pagination),g.params.paginationClickable&&g.paginationContainer.addClass("swiper-pagination-clickable")),g.rtl=r()&&("rtl"===g.container[0].dir.toLowerCase()||"rtl"===g.container.css("direction")),g.rtl&&g.classNames.push("swiper-container-rtl"),g.rtl&&(g.wrongRTL="-webkit-box"===g.wrapper.css("display")),g.params.slidesPerColumn>1&&g.classNames.push("swiper-container-multirow"),g.device.android&&g.classNames.push("swiper-container-android"),g.container.addClass(g.classNames.join(" ")),g.translate=0,g.progress=0,g.velocity=0,g.lockSwipeToNext=function(){g.params.allowSwipeToNext=!1},g.lockSwipeToPrev=function(){g.params.allowSwipeToPrev=!1},g.lockSwipes=function(){g.params.allowSwipeToNext=g.params.allowSwipeToPrev=!1},g.unlockSwipeToNext=function(){g.params.allowSwipeToNext=!0},g.unlockSwipeToPrev=function(){g.params.allowSwipeToPrev=!0},g.unlockSwipes=function(){g.params.allowSwipeToNext=g.params.allowSwipeToPrev=!0},g.params.grabCursor&&(g.container[0].style.cursor="move",g.container[0].style.cursor="-webkit-grab",g.container[0].style.cursor="-moz-grab",g.container[0].style.cursor="grab"),g.imagesToLoad=[],g.imagesLoaded=0,g.loadImage=function(e,t,i,n){function r(){n&&n()}var s;e.complete&&i?r():t?(s=new window.Image,s.onload=r,s.onerror=r,s.src=t):r()},g.preloadImages=function(){function e(){"undefined"!=typeof g&&null!==g&&(void 0!==g.imagesLoaded&&g.imagesLoaded++,g.imagesLoaded===g.imagesToLoad.length&&(g.params.updateOnImagesReady&&g.update(),g.emit("onImagesReady",g)))}g.imagesToLoad=g.container.find("img");for(var t=0;t<g.imagesToLoad.length;t++)g.loadImage(g.imagesToLoad[t],g.imagesToLoad[t].currentSrc||g.imagesToLoad[t].getAttribute("src"),!0,e)},g.autoplayTimeoutId=void 0,g.autoplaying=!1,g.autoplayPaused=!1,g.startAutoplay=function(){return"undefined"!=typeof g.autoplayTimeoutId?!1:g.params.autoplay?g.autoplaying?!1:(g.autoplaying=!0,g.emit("onAutoplayStart",g),void s()):!1},g.stopAutoplay=function(e){g.autoplayTimeoutId&&(g.autoplayTimeoutId&&clearTimeout(g.autoplayTimeoutId),g.autoplaying=!1,g.autoplayTimeoutId=void 0,g.emit("onAutoplayStop",g))},g.pauseAutoplay=function(e){g.autoplayPaused||(g.autoplayTimeoutId&&clearTimeout(g.autoplayTimeoutId),g.autoplayPaused=!0,0===e?(g.autoplayPaused=!1,s()):g.wrapper.transitionEnd(function(){g&&(g.autoplayPaused=!1,g.autoplaying?s():g.stopAutoplay())}))},g.minTranslate=function(){return-g.snapGrid[0]},g.maxTranslate=function(){return-g.snapGrid[g.snapGrid.length-1]},g.updateContainerSize=function(){var e,t;e="undefined"!=typeof g.params.width?g.params.width:g.container[0].clientWidth,t="undefined"!=typeof g.params.height?g.params.height:g.container[0].clientHeight,0===e&&r()||0===t&&!r()||(g.width=e,g.height=t,g.size=r()?g.width:g.height)},g.updateSlidesSize=function(){g.slides=g.wrapper.children("."+g.params.slideClass),g.snapGrid=[],g.slidesGrid=[],g.slidesSizesGrid=[];var e,t=g.params.spaceBetween,i=0,n=0,s=0;"string"==typeof t&&t.indexOf("%")>=0&&(t=parseFloat(t.replace("%",""))/100*g.size),g.virtualSize=-t,g.rtl?g.slides.css({marginLeft:"",marginTop:""}):g.slides.css({marginRight:"",marginBottom:""});var o;g.params.slidesPerColumn>1&&(o=Math.floor(g.slides.length/g.params.slidesPerColumn)===g.slides.length/g.params.slidesPerColumn?g.slides.length:Math.ceil(g.slides.length/g.params.slidesPerColumn)*g.params.slidesPerColumn);var a,l=g.params.slidesPerColumn,c=o/l,u=c-(g.params.slidesPerColumn*c-g.slides.length);for(e=0;e<g.slides.length;e++){a=0;var p=g.slides.eq(e);if(g.params.slidesPerColumn>1){var h,d,f;"column"===g.params.slidesPerColumnFill?(d=Math.floor(e/l),f=e-d*l,(d>u||d===u&&f===l-1)&&++f>=l&&(f=0,d++),h=d+f*o/l,p.css({"-webkit-box-ordinal-group":h,"-moz-box-ordinal-group":h,"-ms-flex-order":h,"-webkit-order":h,order:h})):(f=Math.floor(e/c),d=e-f*c),p.css({"margin-top":0!==f&&g.params.spaceBetween&&g.params.spaceBetween+"px"}).attr("data-swiper-column",d).attr("data-swiper-row",f)}"none"!==p.css("display")&&("auto"===g.params.slidesPerView?a=r()?p.outerWidth(!0):p.outerHeight(!0):(a=(g.size-(g.params.slidesPerView-1)*t)/g.params.slidesPerView,r()?g.slides[e].style.width=a+"px":g.slides[e].style.height=a+"px"),g.slides[e].swiperSlideSize=a,g.slidesSizesGrid.push(a),g.params.centeredSlides?(i=i+a/2+n/2+t,0===e&&(i=i-g.size/2-t),Math.abs(i)<.001&&(i=0),s%g.params.slidesPerGroup===0&&g.snapGrid.push(i),g.slidesGrid.push(i)):(s%g.params.slidesPerGroup===0&&g.snapGrid.push(i),g.slidesGrid.push(i),i=i+a+t),g.virtualSize+=a+t,n=a,s++)}g.virtualSize=Math.max(g.virtualSize,g.size);var m;if(g.rtl&&g.wrongRTL&&("slide"===g.params.effect||"coverflow"===g.params.effect)&&g.wrapper.css({width:g.virtualSize+g.params.spaceBetween+"px"}),g.support.flexbox&&!g.params.setWrapperSize||(r()?g.wrapper.css({width:g.virtualSize+g.params.spaceBetween+"px"}):g.wrapper.css({height:g.virtualSize+g.params.spaceBetween+"px"})),g.params.slidesPerColumn>1&&(g.virtualSize=(a+g.params.spaceBetween)*o,g.virtualSize=Math.ceil(g.virtualSize/g.params.slidesPerColumn)-g.params.spaceBetween,g.wrapper.css({width:g.virtualSize+g.params.spaceBetween+"px"}),g.params.centeredSlides)){for(m=[],e=0;e<g.snapGrid.length;e++)g.snapGrid[e]<g.virtualSize+g.snapGrid[0]&&m.push(g.snapGrid[e]);g.snapGrid=m}if(!g.params.centeredSlides){for(m=[],e=0;e<g.snapGrid.length;e++)g.snapGrid[e]<=g.virtualSize-g.size&&m.push(g.snapGrid[e]);g.snapGrid=m,Math.floor(g.virtualSize-g.size)>Math.floor(g.snapGrid[g.snapGrid.length-1])&&g.snapGrid.push(g.virtualSize-g.size)}0===g.snapGrid.length&&(g.snapGrid=[0]),0!==g.params.spaceBetween&&(r()?g.rtl?g.slides.css({marginLeft:t+"px"}):g.slides.css({marginRight:t+"px"}):g.slides.css({marginBottom:t+"px"})),g.params.watchSlidesProgress&&g.updateSlidesOffset()},g.updateSlidesOffset=function(){for(var e=0;e<g.slides.length;e++)g.slides[e].swiperSlideOffset=r()?g.slides[e].offsetLeft:g.slides[e].offsetTop},g.updateSlidesProgress=function(e){if("undefined"==typeof e&&(e=g.translate||0),0!==g.slides.length){"undefined"==typeof g.slides[0].swiperSlideOffset&&g.updateSlidesOffset();var t=g.params.centeredSlides?-e+g.size/2:-e;g.rtl&&(t=g.params.centeredSlides?e-g.size/2:e);g.container[0].getBoundingClientRect(),r()?"left":"top",r()?"right":"bottom";g.slides.removeClass(g.params.slideVisibleClass);for(var i=0;i<g.slides.length;i++){var n=g.slides[i],s=g.params.centeredSlides===!0?n.swiperSlideSize/2:0,o=(t-n.swiperSlideOffset-s)/(n.swiperSlideSize+g.params.spaceBetween);if(g.params.watchSlidesVisibility){var a=-(t-n.swiperSlideOffset-s),l=a+g.slidesSizesGrid[i],c=a>=0&&a<g.size||l>0&&l<=g.size||0>=a&&l>=g.size;c&&g.slides.eq(i).addClass(g.params.slideVisibleClass)}n.progress=g.rtl?-o:o}}},g.updateProgress=function(e){"undefined"==typeof e&&(e=g.translate||0);var t=g.maxTranslate()-g.minTranslate();0===t?(g.progress=0,g.isBeginning=g.isEnd=!0):(g.progress=(e-g.minTranslate())/t,g.isBeginning=g.progress<=0,g.isEnd=g.progress>=1),g.isBeginning&&g.emit("onReachBeginning",g),g.isEnd&&g.emit("onReachEnd",g),g.params.watchSlidesProgress&&g.updateSlidesProgress(e),g.emit("onProgress",g,g.progress)},g.updateActiveIndex=function(){var e,t,i,n=g.rtl?g.translate:-g.translate;for(t=0;t<g.slidesGrid.length;t++)"undefined"!=typeof g.slidesGrid[t+1]?n>=g.slidesGrid[t]&&n<g.slidesGrid[t+1]-(g.slidesGrid[t+1]-g.slidesGrid[t])/2?e=t:n>=g.slidesGrid[t]&&n<g.slidesGrid[t+1]&&(e=t+1):n>=g.slidesGrid[t]&&(e=t);(0>e||"undefined"==typeof e)&&(e=0),i=Math.floor(e/g.params.slidesPerGroup),i>=g.snapGrid.length&&(i=g.snapGrid.length-1),e!==g.activeIndex&&(g.snapIndex=i,g.previousIndex=g.activeIndex,g.activeIndex=e,g.updateClasses())},g.updateClasses=function(){g.slides.removeClass(g.params.slideActiveClass+" "+g.params.slideNextClass+" "+g.params.slidePrevClass);var e=g.slides.eq(g.activeIndex);if(e.addClass(g.params.slideActiveClass),e.next("."+g.params.slideClass).addClass(g.params.slideNextClass),e.prev("."+g.params.slideClass).addClass(g.params.slidePrevClass),g.bullets&&g.bullets.length>0){g.bullets.removeClass(g.params.bulletActiveClass);var t;g.params.loop?(t=Math.ceil(g.activeIndex-g.loopedSlides)/g.params.slidesPerGroup,t>g.slides.length-1-2*g.loopedSlides&&(t-=g.slides.length-2*g.loopedSlides),t>g.bullets.length-1&&(t-=g.bullets.length)):t="undefined"!=typeof g.snapIndex?g.snapIndex:g.activeIndex||0,g.paginationContainer.length>1?g.bullets.each(function(){v(this).index()===t&&v(this).addClass(g.params.bulletActiveClass)}):g.bullets.eq(t).addClass(g.params.bulletActiveClass)}g.params.loop||(g.params.prevButton&&(g.isBeginning?(v(g.params.prevButton).addClass(g.params.buttonDisabledClass),g.params.a11y&&g.a11y&&g.a11y.disable(v(g.params.prevButton))):(v(g.params.prevButton).removeClass(g.params.buttonDisabledClass),g.params.a11y&&g.a11y&&g.a11y.enable(v(g.params.prevButton)))),g.params.nextButton&&(g.isEnd?(v(g.params.nextButton).addClass(g.params.buttonDisabledClass),g.params.a11y&&g.a11y&&g.a11y.disable(v(g.params.nextButton))):(v(g.params.nextButton).removeClass(g.params.buttonDisabledClass),g.params.a11y&&g.a11y&&g.a11y.enable(v(g.params.nextButton)))))},g.updatePagination=function(){if(g.params.pagination&&g.paginationContainer&&g.paginationContainer.length>0){for(var e="",t=g.params.loop?Math.ceil((g.slides.length-2*g.loopedSlides)/g.params.slidesPerGroup):g.snapGrid.length,i=0;t>i;i++)e+=g.params.paginationBulletRender?g.params.paginationBulletRender(i,g.params.bulletClass):'<span class="'+g.params.bulletClass+'"></span>';g.paginationContainer.html(e),g.bullets=g.paginationContainer.find("."+g.params.bulletClass)}},g.update=function(e){function t(){n=Math.min(Math.max(g.translate,g.maxTranslate()),g.minTranslate()),g.setWrapperTranslate(n),g.updateActiveIndex(),g.updateClasses()}if(g.updateContainerSize(),g.updateSlidesSize(),g.updateProgress(),g.updatePagination(),g.updateClasses(),g.params.scrollbar&&g.scrollbar&&g.scrollbar.set(),e){var i,n;g.params.freeMode?t():(i="auto"===g.params.slidesPerView&&g.isEnd&&!g.params.centeredSlides?g.slideTo(g.slides.length-1,0,!1,!0):g.slideTo(g.activeIndex,0,!1,!0),i||t())}},g.onResize=function(e){if(g.updateContainerSize(),g.updateSlidesSize(),g.updateProgress(),("auto"===g.params.slidesPerView||g.params.freeMode||e)&&g.updatePagination(),g.params.scrollbar&&g.scrollbar&&g.scrollbar.set(),g.params.freeMode){var t=Math.min(Math.max(g.translate,g.maxTranslate()),g.minTranslate());g.setWrapperTranslate(t),g.updateActiveIndex(),g.updateClasses()}else g.updateClasses(),"auto"===g.params.slidesPerView&&g.isEnd&&!g.params.centeredSlides?g.slideTo(g.slides.length-1,0,!1,!0):g.slideTo(g.activeIndex,0,!1,!0)};var y=["mousedown","mousemove","mouseup"];window.navigator.pointerEnabled?y=["pointerdown","pointermove","pointerup"]:window.navigator.msPointerEnabled&&(y=["MSPointerDown","MSPointerMove","MSPointerUp"]),g.touchEvents={start:g.support.touch||!g.params.simulateTouch?"touchstart":y[0],move:g.support.touch||!g.params.simulateTouch?"touchmove":y[1],end:g.support.touch||!g.params.simulateTouch?"touchend":y[2]},(window.navigator.pointerEnabled||window.navigator.msPointerEnabled)&&("container"===g.params.touchEventsTarget?g.container:g.wrapper).addClass("swiper-wp8-"+g.params.direction),g.initEvents=function(e){var t=e?"off":"on",i=e?"removeEventListener":"addEventListener",r="container"===g.params.touchEventsTarget?g.container[0]:g.wrapper[0],s=g.support.touch?r:document,o=!!g.params.nested;g.browser.ie?(r[i](g.touchEvents.start,g.onTouchStart,!1),s[i](g.touchEvents.move,g.onTouchMove,o),s[i](g.touchEvents.end,g.onTouchEnd,!1)):(g.support.touch&&(r[i](g.touchEvents.start,g.onTouchStart,!1),r[i](g.touchEvents.move,g.onTouchMove,o),r[i](g.touchEvents.end,g.onTouchEnd,!1)),!n.simulateTouch||g.device.ios||g.device.android||(r[i]("mousedown",g.onTouchStart,!1),document[i]("mousemove",g.onTouchMove,o),document[i]("mouseup",g.onTouchEnd,!1))),window[i]("resize",g.onResize),g.params.nextButton&&(v(g.params.nextButton)[t]("click",g.onClickNext),g.params.a11y&&g.a11y&&v(g.params.nextButton)[t]("keydown",g.a11y.onEnterKey)),g.params.prevButton&&(v(g.params.prevButton)[t]("click",g.onClickPrev),g.params.a11y&&g.a11y&&v(g.params.prevButton)[t]("keydown",g.a11y.onEnterKey)),g.params.pagination&&g.params.paginationClickable&&v(g.paginationContainer)[t]("click","."+g.params.bulletClass,g.onClickIndex),(g.params.preventClicks||g.params.preventClicksPropagation)&&r[i]("click",g.preventClicks,!0)},g.attachEvents=function(e){g.initEvents()},g.detachEvents=function(){g.initEvents(!0)},g.allowClick=!0,g.preventClicks=function(e){g.allowClick||(g.params.preventClicks&&e.preventDefault(),g.params.preventClicksPropagation&&g.animating&&(e.stopPropagation(),e.stopImmediatePropagation()))},g.onClickNext=function(e){e.preventDefault(),g.slideNext()},g.onClickPrev=function(e){e.preventDefault(),g.slidePrev()},g.onClickIndex=function(e){e.preventDefault();var t=v(this).index()*g.params.slidesPerGroup;g.params.loop&&(t+=g.loopedSlides),g.slideTo(t)},g.updateClickedSlide=function(e){var t=o(e,"."+g.params.slideClass),i=!1;if(t)for(var n=0;n<g.slides.length;n++)g.slides[n]===t&&(i=!0);if(!t||!i)return g.clickedSlide=void 0,void(g.clickedIndex=void 0);if(g.clickedSlide=t,g.clickedIndex=v(t).index(),g.params.slideToClickedSlide&&void 0!==g.clickedIndex&&g.clickedIndex!==g.activeIndex){var r,s=g.clickedIndex;if(g.params.loop)if(r=v(g.clickedSlide).attr("data-swiper-slide-index"),s>g.slides.length-g.params.slidesPerView)g.fixLoop(),s=g.wrapper.children("."+g.params.slideClass+'[data-swiper-slide-index="'+r+'"]').eq(0).index(),setTimeout(function(){g.slideTo(s)},0);else if(s<g.params.slidesPerView-1){g.fixLoop();var a=g.wrapper.children("."+g.params.slideClass+'[data-swiper-slide-index="'+r+'"]');s=a.eq(a.length-1).index(),setTimeout(function(){g.slideTo(s)},0)}else g.slideTo(s);else g.slideTo(s)}};var w,b,x,S,T,C,k,E,P,A="input, select, textarea, button",_=Date.now(),D=[];g.animating=!1,g.touches={startX:0,startY:0,currentX:0,currentY:0,diff:0};var L,M;if(g.onTouchStart=function(e){if(e.originalEvent&&(e=e.originalEvent),L="touchstart"===e.type,L||!("which"in e)||3!==e.which){if(g.params.noSwiping&&o(e,"."+g.params.noSwipingClass))return void(g.allowClick=!0);if(!g.params.swipeHandler||o(e,g.params.swipeHandler)){if(w=!0,b=!1,S=void 0,M=void 0,g.touches.startX=g.touches.currentX="touchstart"===e.type?e.targetTouches[0].pageX:e.pageX,g.touches.startY=g.touches.currentY="touchstart"===e.type?e.targetTouches[0].pageY:e.pageY,x=Date.now(),g.allowClick=!0,g.updateContainerSize(),g.swipeDirection=void 0,g.params.threshold>0&&(k=!1),"touchstart"!==e.type){var t=!0;v(e.target).is(A)&&(t=!1),document.activeElement&&v(document.activeElement).is(A)&&document.activeElement.blur(),t&&e.preventDefault()}g.emit("onTouchStart",g,e)}}},g.onTouchMove=function(e){if(e.originalEvent&&(e=e.originalEvent),!(L&&"mousemove"===e.type||e.preventedByNestedSwiper)){if(g.params.onlyExternal)return b=!0,void(g.allowClick=!1);if(L&&document.activeElement&&e.target===document.activeElement&&v(e.target).is(A))return b=!0,void(g.allowClick=!1);if(g.emit("onTouchMove",g,e),!(e.targetTouches&&e.targetTouches.length>1)){if(g.touches.currentX="touchmove"===e.type?e.targetTouches[0].pageX:e.pageX,g.touches.currentY="touchmove"===e.type?e.targetTouches[0].pageY:e.pageY,"undefined"==typeof S){var t=180*Math.atan2(Math.abs(g.touches.currentY-g.touches.startY),Math.abs(g.touches.currentX-g.touches.startX))/Math.PI;S=r()?t>g.params.touchAngle:90-t>g.params.touchAngle}if(S&&g.emit("onTouchMoveOpposite",g,e),"undefined"==typeof M&&g.browser.ieTouch&&(g.touches.currentX===g.touches.startX&&g.touches.currentY===g.touches.startY||(M=!0)),w){if(S)return void(w=!1);if(M||!g.browser.ieTouch){g.allowClick=!1,g.emit("onSliderMove",g,e),e.preventDefault(),g.params.touchMoveStopPropagation&&!g.params.nested&&e.stopPropagation(),b||(n.loop&&g.fixLoop(),C=g.getWrapperTranslate(),g.setWrapperTransition(0),g.animating&&g.wrapper.trigger("webkitTransitionEnd transitionend oTransitionEnd MSTransitionEnd msTransitionEnd"),g.params.autoplay&&g.autoplaying&&(g.params.autoplayDisableOnInteraction?g.stopAutoplay():g.pauseAutoplay()),P=!1,g.params.grabCursor&&(g.container[0].style.cursor="move",g.container[0].style.cursor="-webkit-grabbing",g.container[0].style.cursor="-moz-grabbin",g.container[0].style.cursor="grabbing")),b=!0;var i=g.touches.diff=r()?g.touches.currentX-g.touches.startX:g.touches.currentY-g.touches.startY;i*=g.params.touchRatio,g.rtl&&(i=-i),g.swipeDirection=i>0?"prev":"next",T=i+C;var s=!0;if(i>0&&T>g.minTranslate()?(s=!1,g.params.resistance&&(T=g.minTranslate()-1+Math.pow(-g.minTranslate()+C+i,g.params.resistanceRatio))):0>i&&T<g.maxTranslate()&&(s=!1,g.params.resistance&&(T=g.maxTranslate()+1-Math.pow(g.maxTranslate()-C-i,g.params.resistanceRatio))),s&&(e.preventedByNestedSwiper=!0),!g.params.allowSwipeToNext&&"next"===g.swipeDirection&&C>T&&(T=C),!g.params.allowSwipeToPrev&&"prev"===g.swipeDirection&&T>C&&(T=C),g.params.followFinger){if(g.params.threshold>0){if(!(Math.abs(i)>g.params.threshold||k))return void(T=C);if(!k)return k=!0,g.touches.startX=g.touches.currentX,g.touches.startY=g.touches.currentY,T=C,void(g.touches.diff=r()?g.touches.currentX-g.touches.startX:g.touches.currentY-g.touches.startY)}(g.params.freeMode||g.params.watchSlidesProgress)&&g.updateActiveIndex(),g.params.freeMode&&(0===D.length&&D.push({position:g.touches[r()?"startX":"startY"],time:x}),D.push({position:g.touches[r()?"currentX":"currentY"],time:(new window.Date).getTime()})),g.updateProgress(T),g.setWrapperTranslate(T)}}}}}},g.onTouchEnd=function(e){if(e.originalEvent&&(e=e.originalEvent),g.emit("onTouchEnd",g,e),w){g.params.grabCursor&&b&&w&&(g.container[0].style.cursor="move",g.container[0].style.cursor="-webkit-grab",g.container[0].style.cursor="-moz-grab",g.container[0].style.cursor="grab");var t=Date.now(),i=t-x;if(g.allowClick&&(g.updateClickedSlide(e),g.emit("onTap",g,e),300>i&&t-_>300&&(E&&clearTimeout(E),E=setTimeout(function(){g&&(g.params.paginationHide&&g.paginationContainer.length>0&&!v(e.target).hasClass(g.params.bulletClass)&&g.paginationContainer.toggleClass(g.params.paginationHiddenClass),g.emit("onClick",g,e))},300)),300>i&&300>t-_&&(E&&clearTimeout(E),g.emit("onDoubleTap",g,e))),_=Date.now(),setTimeout(function(){g&&(g.allowClick=!0)},0),!w||!b||!g.swipeDirection||0===g.touches.diff||T===C)return void(w=b=!1);w=b=!1;var n;if(n=g.params.followFinger?g.rtl?g.translate:-g.translate:-T,g.params.freeMode){if(n<-g.minTranslate())return void g.slideTo(g.activeIndex);if(n>-g.maxTranslate())return void(g.slides.length<g.snapGrid.length?g.slideTo(g.snapGrid.length-1):g.slideTo(g.slides.length-1));if(g.params.freeModeMomentum){if(D.length>1){var r=D.pop(),s=D.pop(),o=r.position-s.position,a=r.time-s.time;g.velocity=o/a,g.velocity=g.velocity/2,Math.abs(g.velocity)<.02&&(g.velocity=0),(a>150||(new window.Date).getTime()-r.time>300)&&(g.velocity=0)}else g.velocity=0;D.length=0;var l=1e3*g.params.freeModeMomentumRatio,c=g.velocity*l,u=g.translate+c;g.rtl&&(u=-u);var p,h=!1,d=20*Math.abs(g.velocity)*g.params.freeModeMomentumBounceRatio;if(u<g.maxTranslate())g.params.freeModeMomentumBounce?(u+g.maxTranslate()<-d&&(u=g.maxTranslate()-d),p=g.maxTranslate(),h=!0,P=!0):u=g.maxTranslate();else if(u>g.minTranslate())g.params.freeModeMomentumBounce?(u-g.minTranslate()>d&&(u=g.minTranslate()+d),p=g.minTranslate(),h=!0,P=!0):u=g.minTranslate();else if(g.params.freeModeSticky){var f,m=0;for(m=0;m<g.snapGrid.length;m+=1)if(g.snapGrid[m]>-u){f=m;break}u=Math.abs(g.snapGrid[f]-u)<Math.abs(g.snapGrid[f-1]-u)||"next"===g.swipeDirection?g.snapGrid[f]:g.snapGrid[f-1],g.rtl||(u=-u)}if(0!==g.velocity)l=g.rtl?Math.abs((-u-g.translate)/g.velocity):Math.abs((u-g.translate)/g.velocity);else if(g.params.freeModeSticky)return void g.slideReset();g.params.freeModeMomentumBounce&&h?(g.updateProgress(p),g.setWrapperTransition(l),g.setWrapperTranslate(u),g.onTransitionStart(),g.animating=!0,g.wrapper.transitionEnd(function(){g&&P&&(g.emit("onMomentumBounce",g),g.setWrapperTransition(g.params.speed),g.setWrapperTranslate(p),g.wrapper.transitionEnd(function(){g&&g.onTransitionEnd()}))})):g.velocity?(g.updateProgress(u),g.setWrapperTransition(l),g.setWrapperTranslate(u),g.onTransitionStart(),g.animating||(g.animating=!0,g.wrapper.transitionEnd(function(){g&&g.onTransitionEnd()}))):g.updateProgress(u),g.updateActiveIndex()}return void((!g.params.freeModeMomentum||i>=g.params.longSwipesMs)&&(g.updateProgress(),g.updateActiveIndex()))}var y,S=0,k=g.slidesSizesGrid[0];for(y=0;y<g.slidesGrid.length;y+=g.params.slidesPerGroup)"undefined"!=typeof g.slidesGrid[y+g.params.slidesPerGroup]?n>=g.slidesGrid[y]&&n<g.slidesGrid[y+g.params.slidesPerGroup]&&(S=y,k=g.slidesGrid[y+g.params.slidesPerGroup]-g.slidesGrid[y]):n>=g.slidesGrid[y]&&(S=y,k=g.slidesGrid[g.slidesGrid.length-1]-g.slidesGrid[g.slidesGrid.length-2]);var A=(n-g.slidesGrid[S])/k;if(i>g.params.longSwipesMs){if(!g.params.longSwipes)return void g.slideTo(g.activeIndex);"next"===g.swipeDirection&&(A>=g.params.longSwipesRatio?g.slideTo(S+g.params.slidesPerGroup):g.slideTo(S)),"prev"===g.swipeDirection&&(A>1-g.params.longSwipesRatio?g.slideTo(S+g.params.slidesPerGroup):g.slideTo(S))}else{if(!g.params.shortSwipes)return void g.slideTo(g.activeIndex);"next"===g.swipeDirection&&g.slideTo(S+g.params.slidesPerGroup),"prev"===g.swipeDirection&&g.slideTo(S)}}},g._slideTo=function(e,t){return g.slideTo(e,t,!0,!0)},g.slideTo=function(e,t,i,n){"undefined"==typeof i&&(i=!0),"undefined"==typeof e&&(e=0),0>e&&(e=0),g.snapIndex=Math.floor(e/g.params.slidesPerGroup),g.snapIndex>=g.snapGrid.length&&(g.snapIndex=g.snapGrid.length-1);var s=-g.snapGrid[g.snapIndex];if(!g.params.allowSwipeToNext&&s<g.translate&&s<g.minTranslate())return!1;if(!g.params.allowSwipeToPrev&&s>g.translate&&s>g.maxTranslate())return!1;g.params.autoplay&&g.autoplaying&&(n||!g.params.autoplayDisableOnInteraction?g.pauseAutoplay(t):g.stopAutoplay()),g.updateProgress(s);for(var o=0;o<g.slidesGrid.length;o++)-s>=g.slidesGrid[o]&&(e=o);if("undefined"==typeof t&&(t=g.params.speed),g.previousIndex=g.activeIndex||0,g.activeIndex=e,s===g.translate)return g.updateClasses(),!1;g.updateClasses(),g.onTransitionStart(i);r()?s:0,r()?0:s;return 0===t?(g.setWrapperTransition(0),g.setWrapperTranslate(s),g.onTransitionEnd(i)):(g.setWrapperTransition(t),g.setWrapperTranslate(s),g.animating||(g.animating=!0,g.wrapper.transitionEnd(function(){g&&g.onTransitionEnd(i)}))),!0},g.onTransitionStart=function(e){"undefined"==typeof e&&(e=!0),g.lazy&&g.lazy.onTransitionStart(),e&&(g.emit("onTransitionStart",g),g.activeIndex!==g.previousIndex&&g.emit("onSlideChangeStart",g))},g.onTransitionEnd=function(e){g.animating=!1,g.setWrapperTransition(0),"undefined"==typeof e&&(e=!0),g.lazy&&g.lazy.onTransitionEnd(),e&&(g.emit("onTransitionEnd",g),g.activeIndex!==g.previousIndex&&g.emit("onSlideChangeEnd",g)),g.params.hashnav&&g.hashnav&&g.hashnav.setHash()},g.slideNext=function(e,t,i){if(g.params.loop){if(g.animating)return!1;g.fixLoop();g.container[0].clientLeft;return g.slideTo(g.activeIndex+g.params.slidesPerGroup,t,e,i)}return g.slideTo(g.activeIndex+g.params.slidesPerGroup,t,e,i)},g._slideNext=function(e){return g.slideNext(!0,e,!0)},g.slidePrev=function(e,t,i){if(g.params.loop){if(g.animating)return!1;g.fixLoop();g.container[0].clientLeft;return g.slideTo(g.activeIndex-1,t,e,i)}return g.slideTo(g.activeIndex-1,t,e,i)},g._slidePrev=function(e){return g.slidePrev(!0,e,!0)},g.slideReset=function(e,t,i){return g.slideTo(g.activeIndex,t,e)},g.setWrapperTransition=function(e,t){g.wrapper.transition(e),"slide"!==g.params.effect&&g.effects[g.params.effect]&&g.effects[g.params.effect].setTransition(e),g.params.parallax&&g.parallax&&g.parallax.setTransition(e),g.params.scrollbar&&g.scrollbar&&g.scrollbar.setTransition(e),g.params.control&&g.controller&&g.controller.setTransition(e,t),g.emit("onSetTransition",g,e)},g.setWrapperTranslate=function(e,t,i){var n=0,s=0,o=0;r()?n=g.rtl?-e:e:s=e,g.params.virtualTranslate||(g.support.transforms3d?g.wrapper.transform("translate3d("+n+"px, "+s+"px, "+o+"px)"):g.wrapper.transform("translate("+n+"px, "+s+"px)")),g.translate=r()?n:s,t&&g.updateActiveIndex(),"slide"!==g.params.effect&&g.effects[g.params.effect]&&g.effects[g.params.effect].setTranslate(g.translate),g.params.parallax&&g.parallax&&g.parallax.setTranslate(g.translate),g.params.scrollbar&&g.scrollbar&&g.scrollbar.setTranslate(g.translate),g.params.control&&g.controller&&g.controller.setTranslate(g.translate,i),g.emit("onSetTranslate",g,g.translate)},g.getTranslate=function(e,t){var i,n,r,s;return"undefined"==typeof t&&(t="x"),g.params.virtualTranslate?g.rtl?-g.translate:g.translate:(r=window.getComputedStyle(e,null),window.WebKitCSSMatrix?s=new window.WebKitCSSMatrix("none"===r.webkitTransform?"":r.webkitTransform):(s=r.MozTransform||r.OTransform||r.MsTransform||r.msTransform||r.transform||r.getPropertyValue("transform").replace("translate(","matrix(1, 0, 0, 1,"),i=s.toString().split(",")),"x"===t&&(n=window.WebKitCSSMatrix?s.m41:16===i.length?parseFloat(i[12]):parseFloat(i[4])),"y"===t&&(n=window.WebKitCSSMatrix?s.m42:16===i.length?parseFloat(i[13]):parseFloat(i[5])),g.rtl&&n&&(n=-n),n||0)},g.getWrapperTranslate=function(e){return"undefined"==typeof e&&(e=r()?"x":"y"),g.getTranslate(g.wrapper[0],e)},g.observers=[],g.initObservers=function(){if(g.params.observeParents)for(var e=g.container.parents(),t=0;t<e.length;t++)a(e[t]);a(g.container[0],{childList:!1}),a(g.wrapper[0],{attributes:!1})},g.disconnectObservers=function(){for(var e=0;e<g.observers.length;e++)g.observers[e].disconnect();g.observers=[]},g.createLoop=function(){g.wrapper.children("."+g.params.slideClass+"."+g.params.slideDuplicateClass).remove();var e=g.wrapper.children("."+g.params.slideClass);g.loopedSlides=parseInt(g.params.loopedSlides||g.params.slidesPerView,10),g.loopedSlides=g.loopedSlides+g.params.loopAdditionalSlides,g.loopedSlides>e.length&&(g.loopedSlides=e.length);var t,i=[],n=[];for(e.each(function(t,r){var s=v(this);t<g.loopedSlides&&n.push(r),t<e.length&&t>=e.length-g.loopedSlides&&i.push(r),s.attr("data-swiper-slide-index",t)}),t=0;t<n.length;t++)g.wrapper.append(v(n[t].cloneNode(!0)).addClass(g.params.slideDuplicateClass));for(t=i.length-1;t>=0;t--)g.wrapper.prepend(v(i[t].cloneNode(!0)).addClass(g.params.slideDuplicateClass))},g.destroyLoop=function(){g.wrapper.children("."+g.params.slideClass+"."+g.params.slideDuplicateClass).remove(),g.slides.removeAttr("data-swiper-slide-index")},g.fixLoop=function(){var e;g.activeIndex<g.loopedSlides?(e=g.slides.length-3*g.loopedSlides+g.activeIndex,e+=g.loopedSlides,g.slideTo(e,0,!1,!0)):("auto"===g.params.slidesPerView&&g.activeIndex>=2*g.loopedSlides||g.activeIndex>g.slides.length-2*g.params.slidesPerView)&&(e=-g.slides.length+g.activeIndex+g.loopedSlides,e+=g.loopedSlides,g.slideTo(e,0,!1,!0))},g.appendSlide=function(e){if(g.params.loop&&g.destroyLoop(),"object"==typeof e&&e.length)for(var t=0;t<e.length;t++)e[t]&&g.wrapper.append(e[t]);else g.wrapper.append(e);g.params.loop&&g.createLoop(),g.params.observer&&g.support.observer||g.update(!0)},g.prependSlide=function(e){g.params.loop&&g.destroyLoop();var t=g.activeIndex+1;if("object"==typeof e&&e.length){for(var i=0;i<e.length;i++)e[i]&&g.wrapper.prepend(e[i]);t=g.activeIndex+e.length}else g.wrapper.prepend(e);g.params.loop&&g.createLoop(),g.params.observer&&g.support.observer||g.update(!0),g.slideTo(t,0,!1)},g.removeSlide=function(e){g.params.loop&&(g.destroyLoop(),g.slides=g.wrapper.children("."+g.params.slideClass));var t,i=g.activeIndex;if("object"==typeof e&&e.length){for(var n=0;n<e.length;n++)t=e[n],g.slides[t]&&g.slides.eq(t).remove(),i>t&&i--;i=Math.max(i,0)}else t=e,g.slides[t]&&g.slides.eq(t).remove(),i>t&&i--,i=Math.max(i,0);g.params.loop&&g.createLoop(),g.params.observer&&g.support.observer||g.update(!0),g.params.loop?g.slideTo(i+g.loopedSlides,0,!1):g.slideTo(i,0,!1)},g.removeAllSlides=function(){for(var e=[],t=0;t<g.slides.length;t++)e.push(t);g.removeSlide(e)},g.effects={fade:{setTranslate:function(){for(var e=0;e<g.slides.length;e++){var t=g.slides.eq(e),i=t[0].swiperSlideOffset,n=-i;g.params.virtualTranslate||(n-=g.translate);var s=0;r()||(s=n,n=0);var o=g.params.fade.crossFade?Math.max(1-Math.abs(t[0].progress),0):1+Math.min(Math.max(t[0].progress,-1),0);t.css({opacity:o}).transform("translate3d("+n+"px, "+s+"px, 0px)")}},setTransition:function(e){if(g.slides.transition(e),g.params.virtualTranslate&&0!==e){var t=!1;g.slides.transitionEnd(function(){if(!t&&g){t=!0,g.animating=!1;for(var e=["webkitTransitionEnd","transitionend","oTransitionEnd","MSTransitionEnd","msTransitionEnd"],i=0;i<e.length;i++)g.wrapper.trigger(e[i])}})}}},cube:{setTranslate:function(){var e,t=0;g.params.cube.shadow&&(r()?(e=g.wrapper.find(".swiper-cube-shadow"),0===e.length&&(e=v('<div class="swiper-cube-shadow"></div>'),g.wrapper.append(e)),e.css({height:g.width+"px"})):(e=g.container.find(".swiper-cube-shadow"),0===e.length&&(e=v('<div class="swiper-cube-shadow"></div>'),g.container.append(e)))); +for(var i=0;i<g.slides.length;i++){var n=g.slides.eq(i),s=90*i,o=Math.floor(s/360);g.rtl&&(s=-s,o=Math.floor(-s/360));var a=Math.max(Math.min(n[0].progress,1),-1),l=0,c=0,u=0;i%4===0?(l=4*-o*g.size,u=0):(i-1)%4===0?(l=0,u=4*-o*g.size):(i-2)%4===0?(l=g.size+4*o*g.size,u=g.size):(i-3)%4===0&&(l=-g.size,u=3*g.size+4*g.size*o),g.rtl&&(l=-l),r()||(c=l,l=0);var p="rotateX("+(r()?0:-s)+"deg) rotateY("+(r()?s:0)+"deg) translate3d("+l+"px, "+c+"px, "+u+"px)";if(1>=a&&a>-1&&(t=90*i+90*a,g.rtl&&(t=90*-i-90*a)),n.transform(p),g.params.cube.slideShadows){var h=r()?n.find(".swiper-slide-shadow-left"):n.find(".swiper-slide-shadow-top"),d=r()?n.find(".swiper-slide-shadow-right"):n.find(".swiper-slide-shadow-bottom");0===h.length&&(h=v('<div class="swiper-slide-shadow-'+(r()?"left":"top")+'"></div>'),n.append(h)),0===d.length&&(d=v('<div class="swiper-slide-shadow-'+(r()?"right":"bottom")+'"></div>'),n.append(d));n[0].progress;h.length&&(h[0].style.opacity=-n[0].progress),d.length&&(d[0].style.opacity=n[0].progress)}}if(g.wrapper.css({"-webkit-transform-origin":"50% 50% -"+g.size/2+"px","-moz-transform-origin":"50% 50% -"+g.size/2+"px","-ms-transform-origin":"50% 50% -"+g.size/2+"px","transform-origin":"50% 50% -"+g.size/2+"px"}),g.params.cube.shadow)if(r())e.transform("translate3d(0px, "+(g.width/2+g.params.cube.shadowOffset)+"px, "+-g.width/2+"px) rotateX(90deg) rotateZ(0deg) scale("+g.params.cube.shadowScale+")");else{var f=Math.abs(t)-90*Math.floor(Math.abs(t)/90),m=1.5-(Math.sin(2*f*Math.PI/360)/2+Math.cos(2*f*Math.PI/360)/2),y=g.params.cube.shadowScale,w=g.params.cube.shadowScale/m,b=g.params.cube.shadowOffset;e.transform("scale3d("+y+", 1, "+w+") translate3d(0px, "+(g.height/2+b)+"px, "+-g.height/2/w+"px) rotateX(-90deg)")}var x=g.isSafari||g.isUiWebView?-g.size/2:0;g.wrapper.transform("translate3d(0px,0,"+x+"px) rotateX("+(r()?0:t)+"deg) rotateY("+(r()?-t:0)+"deg)")},setTransition:function(e){g.slides.transition(e).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(e),g.params.cube.shadow&&!r()&&g.container.find(".swiper-cube-shadow").transition(e)}},coverflow:{setTranslate:function(){for(var e=g.translate,t=r()?-e+g.width/2:-e+g.height/2,i=r()?g.params.coverflow.rotate:-g.params.coverflow.rotate,n=g.params.coverflow.depth,s=0,o=g.slides.length;o>s;s++){var a=g.slides.eq(s),l=g.slidesSizesGrid[s],c=a[0].swiperSlideOffset,u=(t-c-l/2)/l*g.params.coverflow.modifier,p=r()?i*u:0,h=r()?0:i*u,d=-n*Math.abs(u),f=r()?0:g.params.coverflow.stretch*u,m=r()?g.params.coverflow.stretch*u:0;Math.abs(m)<.001&&(m=0),Math.abs(f)<.001&&(f=0),Math.abs(d)<.001&&(d=0),Math.abs(p)<.001&&(p=0),Math.abs(h)<.001&&(h=0);var y="translate3d("+m+"px,"+f+"px,"+d+"px) rotateX("+h+"deg) rotateY("+p+"deg)";if(a.transform(y),a[0].style.zIndex=-Math.abs(Math.round(u))+1,g.params.coverflow.slideShadows){var w=r()?a.find(".swiper-slide-shadow-left"):a.find(".swiper-slide-shadow-top"),b=r()?a.find(".swiper-slide-shadow-right"):a.find(".swiper-slide-shadow-bottom");0===w.length&&(w=v('<div class="swiper-slide-shadow-'+(r()?"left":"top")+'"></div>'),a.append(w)),0===b.length&&(b=v('<div class="swiper-slide-shadow-'+(r()?"right":"bottom")+'"></div>'),a.append(b)),w.length&&(w[0].style.opacity=u>0?u:0),b.length&&(b[0].style.opacity=-u>0?-u:0)}}if(g.browser.ie){var x=g.wrapper[0].style;x.perspectiveOrigin=t+"px 50%"}},setTransition:function(e){g.slides.transition(e).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(e)}}},g.lazy={initialImageLoaded:!1,loadImageInSlide:function(e,t){if("undefined"!=typeof e&&("undefined"==typeof t&&(t=!0),0!==g.slides.length)){var i=g.slides.eq(e),n=i.find(".swiper-lazy:not(.swiper-lazy-loaded):not(.swiper-lazy-loading)");!i.hasClass("swiper-lazy")||i.hasClass("swiper-lazy-loaded")||i.hasClass("swiper-lazy-loading")||n.add(i[0]),0!==n.length&&n.each(function(){var e=v(this);e.addClass("swiper-lazy-loading");var n=e.attr("data-background"),r=e.attr("data-src");g.loadImage(e[0],r||n,!1,function(){if(n?(e.css("background-image","url("+n+")"),e.removeAttr("data-background")):(e.attr("src",r),e.removeAttr("data-src")),e.addClass("swiper-lazy-loaded").removeClass("swiper-lazy-loading"),i.find(".swiper-lazy-preloader, .preloader").remove(),g.params.loop&&t){var s=i.attr("data-swiper-slide-index");if(i.hasClass(g.params.slideDuplicateClass)){var o=g.wrapper.children('[data-swiper-slide-index="'+s+'"]:not(.'+g.params.slideDuplicateClass+")");g.lazy.loadImageInSlide(o.index(),!1)}else{var a=g.wrapper.children("."+g.params.slideDuplicateClass+'[data-swiper-slide-index="'+s+'"]');g.lazy.loadImageInSlide(a.index(),!1)}}g.emit("onLazyImageReady",g,i[0],e[0])}),g.emit("onLazyImageLoad",g,i[0],e[0])})}},load:function(){var e;if(g.params.watchSlidesVisibility)g.wrapper.children("."+g.params.slideVisibleClass).each(function(){g.lazy.loadImageInSlide(v(this).index())});else if(g.params.slidesPerView>1)for(e=g.activeIndex;e<g.activeIndex+g.params.slidesPerView;e++)g.slides[e]&&g.lazy.loadImageInSlide(e);else g.lazy.loadImageInSlide(g.activeIndex);if(g.params.lazyLoadingInPrevNext)if(g.params.slidesPerView>1){for(e=g.activeIndex+g.params.slidesPerView;e<g.activeIndex+g.params.slidesPerView+g.params.slidesPerView;e++)g.slides[e]&&g.lazy.loadImageInSlide(e);for(e=g.activeIndex-g.params.slidesPerView;e<g.activeIndex;e++)g.slides[e]&&g.lazy.loadImageInSlide(e)}else{var t=g.wrapper.children("."+g.params.slideNextClass);t.length>0&&g.lazy.loadImageInSlide(t.index());var i=g.wrapper.children("."+g.params.slidePrevClass);i.length>0&&g.lazy.loadImageInSlide(i.index())}},onTransitionStart:function(){g.params.lazyLoading&&(g.params.lazyLoadingOnTransitionStart||!g.params.lazyLoadingOnTransitionStart&&!g.lazy.initialImageLoaded)&&g.lazy.load()},onTransitionEnd:function(){g.params.lazyLoading&&!g.params.lazyLoadingOnTransitionStart&&g.lazy.load()}},g.scrollbar={set:function(){if(g.params.scrollbar){var e=g.scrollbar;e.track=v(g.params.scrollbar),e.drag=e.track.find(".swiper-scrollbar-drag"),0===e.drag.length&&(e.drag=v('<div class="swiper-scrollbar-drag"></div>'),e.track.append(e.drag)),e.drag[0].style.width="",e.drag[0].style.height="",e.trackSize=r()?e.track[0].offsetWidth:e.track[0].offsetHeight,e.divider=g.size/g.virtualSize,e.moveDivider=e.divider*(e.trackSize/g.size),e.dragSize=e.trackSize*e.divider,r()?e.drag[0].style.width=e.dragSize+"px":e.drag[0].style.height=e.dragSize+"px",e.divider>=1?e.track[0].style.display="none":e.track[0].style.display="",g.params.scrollbarHide&&(e.track[0].style.opacity=0)}},setTranslate:function(){if(g.params.scrollbar){var e,t=g.scrollbar,i=(g.translate||0,t.dragSize);e=(t.trackSize-t.dragSize)*g.progress,g.rtl&&r()?(e=-e,e>0?(i=t.dragSize-e,e=0):-e+t.dragSize>t.trackSize&&(i=t.trackSize+e)):0>e?(i=t.dragSize+e,e=0):e+t.dragSize>t.trackSize&&(i=t.trackSize-e),r()?(g.support.transforms3d?t.drag.transform("translate3d("+e+"px, 0, 0)"):t.drag.transform("translateX("+e+"px)"),t.drag[0].style.width=i+"px"):(g.support.transforms3d?t.drag.transform("translate3d(0px, "+e+"px, 0)"):t.drag.transform("translateY("+e+"px)"),t.drag[0].style.height=i+"px"),g.params.scrollbarHide&&(clearTimeout(t.timeout),t.track[0].style.opacity=1,t.timeout=setTimeout(function(){t.track[0].style.opacity=0,t.track.transition(400)},1e3))}},setTransition:function(e){g.params.scrollbar&&g.scrollbar.drag.transition(e)}},g.controller={setTranslate:function(e,i){function n(t){e=t.rtl&&"horizontal"===t.params.direction?-g.translate:g.translate,r=(t.maxTranslate()-t.minTranslate())/(g.maxTranslate()-g.minTranslate()),s=(e-g.minTranslate())*r+t.minTranslate(),g.params.controlInverse&&(s=t.maxTranslate()-s),t.updateProgress(s),t.setWrapperTranslate(s,!1,g),t.updateActiveIndex()}var r,s,o=g.params.control;if(g.isArray(o))for(var a=0;a<o.length;a++)o[a]!==i&&o[a]instanceof t&&n(o[a]);else o instanceof t&&i!==o&&n(o)},setTransition:function(e,i){function n(t){t.setWrapperTransition(e,g),0!==e&&(t.onTransitionStart(),t.wrapper.transitionEnd(function(){s&&t.onTransitionEnd()}))}var r,s=g.params.control;if(g.isArray(s))for(r=0;r<s.length;r++)s[r]!==i&&s[r]instanceof t&&n(s[r]);else s instanceof t&&i!==s&&n(s)}},g.hashnav={init:function(){if(g.params.hashnav){g.hashnav.initialized=!0;var e=document.location.hash.replace("#","");if(e)for(var t=0,i=0,n=g.slides.length;n>i;i++){var r=g.slides.eq(i),s=r.attr("data-hash");if(s===e&&!r.hasClass(g.params.slideDuplicateClass)){var o=r.index();g.slideTo(o,t,g.params.runCallbacksOnInit,!0)}}}},setHash:function(){g.hashnav.initialized&&g.params.hashnav&&(document.location.hash=g.slides.eq(g.activeIndex).attr("data-hash")||"")}},g.disableKeyboardControl=function(){v(document).off("keydown",l)},g.enableKeyboardControl=function(){v(document).on("keydown",l)},g.mousewheel={event:!1,lastScrollTime:(new window.Date).getTime()},g.params.mousewheelControl){if(void 0!==document.onmousewheel&&(g.mousewheel.event="mousewheel"),!g.mousewheel.event)try{new window.WheelEvent("wheel"),g.mousewheel.event="wheel"}catch(N){}g.mousewheel.event||(g.mousewheel.event="DOMMouseScroll")}g.disableMousewheelControl=function(){return g.mousewheel.event?(g.container.off(g.mousewheel.event,c),!0):!1},g.enableMousewheelControl=function(){return g.mousewheel.event?(g.container.on(g.mousewheel.event,c),!0):!1},g.parallax={setTranslate:function(){g.container.children("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y]").each(function(){u(this,g.progress)}),g.slides.each(function(){var e=v(this);e.find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y]").each(function(){var t=Math.min(Math.max(e[0].progress,-1),1);u(this,t)})})},setTransition:function(e){"undefined"==typeof e&&(e=g.params.speed),g.container.find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y]").each(function(){var t=v(this),i=parseInt(t.attr("data-swiper-parallax-duration"),10)||e;0===e&&(i=0),t.transition(i)})}},g._plugins=[];for(var I in g.plugins){var z=g.plugins[I](g,g.params[I]);z&&g._plugins.push(z)}return g.callPlugins=function(e){for(var t=0;t<g._plugins.length;t++)e in g._plugins[t]&&g._plugins[t][e](arguments[1],arguments[2],arguments[3],arguments[4],arguments[5])},g.emitterEventListeners={},g.emit=function(e){g.params[e]&&g.params[e](arguments[1],arguments[2],arguments[3],arguments[4],arguments[5]);var t;if(g.emitterEventListeners[e])for(t=0;t<g.emitterEventListeners[e].length;t++)g.emitterEventListeners[e][t](arguments[1],arguments[2],arguments[3],arguments[4],arguments[5]);g.callPlugins&&g.callPlugins(e,arguments[1],arguments[2],arguments[3],arguments[4],arguments[5])},g.on=function(e,t){return e=p(e),g.emitterEventListeners[e]||(g.emitterEventListeners[e]=[]),g.emitterEventListeners[e].push(t),g},g.off=function(e,t){var i;if(e=p(e),"undefined"==typeof t)return g.emitterEventListeners[e]=[],g;if(g.emitterEventListeners[e]&&0!==g.emitterEventListeners[e].length){for(i=0;i<g.emitterEventListeners[e].length;i++)g.emitterEventListeners[e][i]===t&&g.emitterEventListeners[e].splice(i,1);return g}},g.once=function(e,t){e=p(e);var i=function(){t(arguments[0],arguments[1],arguments[2],arguments[3],arguments[4]),g.off(e,i)};return g.on(e,i),g},g.a11y={makeFocusable:function(e){return e[0].tabIndex="0",e},addRole:function(e,t){return e.attr("role",t),e},addLabel:function(e,t){return e.attr("aria-label",t),e},disable:function(e){return e.attr("aria-disabled",!0),e},enable:function(e){return e.attr("aria-disabled",!1),e},onEnterKey:function(e){13===e.keyCode&&(v(e.target).is(g.params.nextButton)?(g.onClickNext(e),g.isEnd?g.a11y.notify(g.params.lastSlideMsg):g.a11y.notify(g.params.nextSlideMsg)):v(e.target).is(g.params.prevButton)&&(g.onClickPrev(e),g.isBeginning?g.a11y.notify(g.params.firstSlideMsg):g.a11y.notify(g.params.prevSlideMsg)))},liveRegion:v('<span class="swiper-notification" aria-live="assertive" aria-atomic="true"></span>'),notify:function(e){var t=g.a11y.liveRegion;0!==t.length&&(t.html(""),t.html(e))},init:function(){if(g.params.nextButton){var e=v(g.params.nextButton);g.a11y.makeFocusable(e),g.a11y.addRole(e,"button"),g.a11y.addLabel(e,g.params.nextSlideMsg)}if(g.params.prevButton){var t=v(g.params.prevButton);g.a11y.makeFocusable(t),g.a11y.addRole(t,"button"),g.a11y.addLabel(t,g.params.prevSlideMsg)}v(g.container).append(g.a11y.liveRegion)},destroy:function(){g.a11y.liveRegion&&g.a11y.liveRegion.length>0&&g.a11y.liveRegion.remove()}},g.init=function(){g.params.loop&&g.createLoop(),g.updateContainerSize(),g.updateSlidesSize(),g.updatePagination(),g.params.scrollbar&&g.scrollbar&&g.scrollbar.set(),"slide"!==g.params.effect&&g.effects[g.params.effect]&&(g.params.loop||g.updateProgress(),g.effects[g.params.effect].setTranslate()),g.params.loop?g.slideTo(g.params.initialSlide+g.loopedSlides,0,g.params.runCallbacksOnInit):(g.slideTo(g.params.initialSlide,0,g.params.runCallbacksOnInit),0===g.params.initialSlide&&(g.parallax&&g.params.parallax&&g.parallax.setTranslate(),g.lazy&&g.params.lazyLoading&&(g.lazy.load(),g.lazy.initialImageLoaded=!0))),g.attachEvents(),g.params.observer&&g.support.observer&&g.initObservers(),g.params.preloadImages&&!g.params.lazyLoading&&g.preloadImages(),g.params.autoplay&&g.startAutoplay(),g.params.keyboardControl&&g.enableKeyboardControl&&g.enableKeyboardControl(),g.params.mousewheelControl&&g.enableMousewheelControl&&g.enableMousewheelControl(),g.params.hashnav&&g.hashnav&&g.hashnav.init(),g.params.a11y&&g.a11y&&g.a11y.init(),g.emit("onInit",g)},g.cleanupStyles=function(){g.container.removeClass(g.classNames.join(" ")).removeAttr("style"),g.wrapper.removeAttr("style"),g.slides&&g.slides.length&&g.slides.removeClass([g.params.slideVisibleClass,g.params.slideActiveClass,g.params.slideNextClass,g.params.slidePrevClass].join(" ")).removeAttr("style").removeAttr("data-swiper-column").removeAttr("data-swiper-row"),g.paginationContainer&&g.paginationContainer.length&&g.paginationContainer.removeClass(g.params.paginationHiddenClass),g.bullets&&g.bullets.length&&g.bullets.removeClass(g.params.bulletActiveClass),g.params.prevButton&&v(g.params.prevButton).removeClass(g.params.buttonDisabledClass),g.params.nextButton&&v(g.params.nextButton).removeClass(g.params.buttonDisabledClass),g.params.scrollbar&&g.scrollbar&&(g.scrollbar.track&&g.scrollbar.track.length&&g.scrollbar.track.removeAttr("style"),g.scrollbar.drag&&g.scrollbar.drag.length&&g.scrollbar.drag.removeAttr("style"))},g.destroy=function(e,t){g.detachEvents(),g.stopAutoplay(),g.params.loop&&g.destroyLoop(),t&&g.cleanupStyles(),g.disconnectObservers(),g.params.keyboardControl&&g.disableKeyboardControl&&g.disableKeyboardControl(),g.params.mousewheelControl&&g.disableMousewheelControl&&g.disableMousewheelControl(),g.params.a11y&&g.a11y&&g.a11y.destroy(),g.emit("onDestroy"),e!==!1&&(g=null)},g.init(),g}};t.prototype={isSafari:function(){var e=navigator.userAgent.toLowerCase();return e.indexOf("safari")>=0&&e.indexOf("chrome")<0&&e.indexOf("android")<0}(),isUiWebView:/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(navigator.userAgent),isArray:function(e){return"[object Array]"===Object.prototype.toString.apply(e)},browser:{ie:window.navigator.pointerEnabled||window.navigator.msPointerEnabled,ieTouch:window.navigator.msPointerEnabled&&window.navigator.msMaxTouchPoints>1||window.navigator.pointerEnabled&&window.navigator.maxTouchPoints>1},device:function(){var e=navigator.userAgent,t=e.match(/(Android);?[\s\/]+([\d.]+)?/),i=e.match(/(iPad).*OS\s([\d_]+)/),n=(e.match(/(iPod)(.*OS\s([\d_]+))?/),!i&&e.match(/(iPhone\sOS)\s([\d_]+)/));return{ios:i||n||i,android:t}}(),support:{touch:window.Modernizr&&Modernizr.touch===!0||function(){return!!("ontouchstart"in window||window.DocumentTouch&&document instanceof DocumentTouch)}(),transforms3d:window.Modernizr&&Modernizr.csstransforms3d===!0||function(){var e=document.createElement("div").style;return"webkitPerspective"in e||"MozPerspective"in e||"OPerspective"in e||"MsPerspective"in e||"perspective"in e}(),flexbox:function(){for(var e=document.createElement("div").style,t="alignItems webkitAlignItems webkitBoxAlign msFlexAlign mozBoxAlign webkitFlexDirection msFlexDirection mozBoxDirection mozBoxOrient webkitBoxDirection webkitBoxOrient".split(" "),i=0;i<t.length;i++)if(t[i]in e)return!0}(),observer:function(){return"MutationObserver"in window||"WebkitMutationObserver"in window}()},plugins:{}};for(var i=(function(){var e=function(e){var t=this,i=0;for(i=0;i<e.length;i++)t[i]=e[i];return t.length=e.length,this},t=function(t,i){var n=[],r=0;if(t&&!i&&t instanceof e)return t;if(t)if("string"==typeof t){var s,o,a=t.trim();if(a.indexOf("<")>=0&&a.indexOf(">")>=0){var l="div";for(0===a.indexOf("<li")&&(l="ul"),0===a.indexOf("<tr")&&(l="tbody"),0!==a.indexOf("<td")&&0!==a.indexOf("<th")||(l="tr"),0===a.indexOf("<tbody")&&(l="table"),0===a.indexOf("<option")&&(l="select"),o=document.createElement(l),o.innerHTML=t,r=0;r<o.childNodes.length;r++)n.push(o.childNodes[r])}else for(s=i||"#"!==t[0]||t.match(/[ .<>:~]/)?(i||document).querySelectorAll(t):[document.getElementById(t.split("#")[1])],r=0;r<s.length;r++)s[r]&&n.push(s[r])}else if(t.nodeType||t===window||t===document)n.push(t);else if(t.length>0&&t[0].nodeType)for(r=0;r<t.length;r++)n.push(t[r]);return new e(n)};return e.prototype={addClass:function(e){if("undefined"==typeof e)return this;for(var t=e.split(" "),i=0;i<t.length;i++)for(var n=0;n<this.length;n++)this[n].classList.add(t[i]);return this},removeClass:function(e){for(var t=e.split(" "),i=0;i<t.length;i++)for(var n=0;n<this.length;n++)this[n].classList.remove(t[i]);return this},hasClass:function(e){return this[0]?this[0].classList.contains(e):!1},toggleClass:function(e){for(var t=e.split(" "),i=0;i<t.length;i++)for(var n=0;n<this.length;n++)this[n].classList.toggle(t[i]);return this},attr:function(e,t){if(1===arguments.length&&"string"==typeof e)return this[0]?this[0].getAttribute(e):void 0;for(var i=0;i<this.length;i++)if(2===arguments.length)this[i].setAttribute(e,t);else for(var n in e)this[i][n]=e[n],this[i].setAttribute(n,e[n]);return this},removeAttr:function(e){for(var t=0;t<this.length;t++)this[t].removeAttribute(e);return this},data:function(e,t){if("undefined"!=typeof t){for(var i=0;i<this.length;i++){var n=this[i];n.dom7ElementDataStorage||(n.dom7ElementDataStorage={}),n.dom7ElementDataStorage[e]=t}return this}if(this[0]){var r=this[0].getAttribute("data-"+e);return r?r:this[0].dom7ElementDataStorage&&e in this[0].dom7ElementDataStorage?this[0].dom7ElementDataStorage[e]:void 0}},transform:function(e){for(var t=0;t<this.length;t++){var i=this[t].style;i.webkitTransform=i.MsTransform=i.msTransform=i.MozTransform=i.OTransform=i.transform=e}return this},transition:function(e){"string"!=typeof e&&(e+="ms");for(var t=0;t<this.length;t++){var i=this[t].style;i.webkitTransitionDuration=i.MsTransitionDuration=i.msTransitionDuration=i.MozTransitionDuration=i.OTransitionDuration=i.transitionDuration=e}return this},on:function(e,i,n,r){function s(e){var r=e.target;if(t(r).is(i))n.call(r,e);else for(var s=t(r).parents(),o=0;o<s.length;o++)t(s[o]).is(i)&&n.call(s[o],e)}var o,a,l=e.split(" ");for(o=0;o<this.length;o++)if("function"==typeof i||i===!1)for("function"==typeof i&&(n=arguments[1],r=arguments[2]||!1),a=0;a<l.length;a++)this[o].addEventListener(l[a],n,r);else for(a=0;a<l.length;a++)this[o].dom7LiveListeners||(this[o].dom7LiveListeners=[]),this[o].dom7LiveListeners.push({listener:n,liveListener:s}),this[o].addEventListener(l[a],s,r);return this},off:function(e,t,i,n){for(var r=e.split(" "),s=0;s<r.length;s++)for(var o=0;o<this.length;o++)if("function"==typeof t||t===!1)"function"==typeof t&&(i=arguments[1],n=arguments[2]||!1),this[o].removeEventListener(r[s],i,n);else if(this[o].dom7LiveListeners)for(var a=0;a<this[o].dom7LiveListeners.length;a++)this[o].dom7LiveListeners[a].listener===i&&this[o].removeEventListener(r[s],this[o].dom7LiveListeners[a].liveListener,n);return this},once:function(e,t,i,n){function r(o){i(o),s.off(e,t,r,n)}var s=this;"function"==typeof t&&(t=!1,i=arguments[1],n=arguments[2]),s.on(e,t,r,n)},trigger:function(e,t){for(var i=0;i<this.length;i++){var n;try{n=new window.CustomEvent(e,{detail:t,bubbles:!0,cancelable:!0})}catch(r){n=document.createEvent("Event"),n.initEvent(e,!0,!0),n.detail=t}this[i].dispatchEvent(n)}return this},transitionEnd:function(e){function t(s){if(s.target===this)for(e.call(this,s),i=0;i<n.length;i++)r.off(n[i],t)}var i,n=["webkitTransitionEnd","transitionend","oTransitionEnd","MSTransitionEnd","msTransitionEnd"],r=this;if(e)for(i=0;i<n.length;i++)r.on(n[i],t);return this},width:function(){return this[0]===window?window.innerWidth:this.length>0?parseFloat(this.css("width")):null},outerWidth:function(e){return this.length>0?e?this[0].offsetWidth+parseFloat(this.css("margin-right"))+parseFloat(this.css("margin-left")):this[0].offsetWidth:null},height:function(){return this[0]===window?window.innerHeight:this.length>0?parseFloat(this.css("height")):null},outerHeight:function(e){return this.length>0?e?this[0].offsetHeight+parseFloat(this.css("margin-top"))+parseFloat(this.css("margin-bottom")):this[0].offsetHeight:null},offset:function(){if(this.length>0){var e=this[0],t=e.getBoundingClientRect(),i=document.body,n=e.clientTop||i.clientTop||0,r=e.clientLeft||i.clientLeft||0,s=window.pageYOffset||e.scrollTop,o=window.pageXOffset||e.scrollLeft;return{top:t.top+s-n,left:t.left+o-r}}return null},css:function(e,t){var i;if(1===arguments.length){if("string"!=typeof e){for(i=0;i<this.length;i++)for(var n in e)this[i].style[n]=e[n];return this}if(this[0])return window.getComputedStyle(this[0],null).getPropertyValue(e)}if(2===arguments.length&&"string"==typeof e){for(i=0;i<this.length;i++)this[i].style[e]=t;return this}return this},each:function(e){for(var t=0;t<this.length;t++)e.call(this[t],t,this[t]);return this},html:function(e){if("undefined"==typeof e)return this[0]?this[0].innerHTML:void 0;for(var t=0;t<this.length;t++)this[t].innerHTML=e;return this},is:function(i){if(!this[0])return!1;var n,r;if("string"==typeof i){var s=this[0];if(s===document)return i===document;if(s===window)return i===window;if(s.matches)return s.matches(i);if(s.webkitMatchesSelector)return s.webkitMatchesSelector(i);if(s.mozMatchesSelector)return s.mozMatchesSelector(i);if(s.msMatchesSelector)return s.msMatchesSelector(i);for(n=t(i),r=0;r<n.length;r++)if(n[r]===this[0])return!0;return!1}if(i===document)return this[0]===document;if(i===window)return this[0]===window;if(i.nodeType||i instanceof e){for(n=i.nodeType?[i]:i,r=0;r<n.length;r++)if(n[r]===this[0])return!0;return!1}return!1},index:function(){if(this[0]){for(var e=this[0],t=0;null!==(e=e.previousSibling);)1===e.nodeType&&t++;return t}},eq:function(t){if("undefined"==typeof t)return this;var i,n=this.length;return t>n-1?new e([]):0>t?(i=n+t,new e(0>i?[]:[this[i]])):new e([this[t]])},append:function(t){var i,n;for(i=0;i<this.length;i++)if("string"==typeof t){var r=document.createElement("div");for(r.innerHTML=t;r.firstChild;)this[i].appendChild(r.firstChild)}else if(t instanceof e)for(n=0;n<t.length;n++)this[i].appendChild(t[n]);else this[i].appendChild(t);return this},prepend:function(t){var i,n;for(i=0;i<this.length;i++)if("string"==typeof t){var r=document.createElement("div");for(r.innerHTML=t,n=r.childNodes.length-1;n>=0;n--)this[i].insertBefore(r.childNodes[n],this[i].childNodes[0])}else if(t instanceof e)for(n=0;n<t.length;n++)this[i].insertBefore(t[n],this[i].childNodes[0]);else this[i].insertBefore(t,this[i].childNodes[0]);return this},insertBefore:function(e){for(var i=t(e),n=0;n<this.length;n++)if(1===i.length)i[0].parentNode.insertBefore(this[n],i[0]);else if(i.length>1)for(var r=0;r<i.length;r++)i[r].parentNode.insertBefore(this[n].cloneNode(!0),i[r])},insertAfter:function(e){for(var i=t(e),n=0;n<this.length;n++)if(1===i.length)i[0].parentNode.insertBefore(this[n],i[0].nextSibling);else if(i.length>1)for(var r=0;r<i.length;r++)i[r].parentNode.insertBefore(this[n].cloneNode(!0),i[r].nextSibling)},next:function(i){return new e(this.length>0?i?this[0].nextElementSibling&&t(this[0].nextElementSibling).is(i)?[this[0].nextElementSibling]:[]:this[0].nextElementSibling?[this[0].nextElementSibling]:[]:[])},nextAll:function(i){var n=[],r=this[0];if(!r)return new e([]);for(;r.nextElementSibling;){var s=r.nextElementSibling;i?t(s).is(i)&&n.push(s):n.push(s),r=s}return new e(n)},prev:function(i){return new e(this.length>0?i?this[0].previousElementSibling&&t(this[0].previousElementSibling).is(i)?[this[0].previousElementSibling]:[]:this[0].previousElementSibling?[this[0].previousElementSibling]:[]:[])},prevAll:function(i){var n=[],r=this[0];if(!r)return new e([]);for(;r.previousElementSibling;){var s=r.previousElementSibling;i?t(s).is(i)&&n.push(s):n.push(s),r=s}return new e(n)},parent:function(e){for(var i=[],n=0;n<this.length;n++)e?t(this[n].parentNode).is(e)&&i.push(this[n].parentNode):i.push(this[n].parentNode);return t(t.unique(i))},parents:function(e){for(var i=[],n=0;n<this.length;n++)for(var r=this[n].parentNode;r;)e?t(r).is(e)&&i.push(r):i.push(r),r=r.parentNode;return t(t.unique(i))},find:function(t){for(var i=[],n=0;n<this.length;n++)for(var r=this[n].querySelectorAll(t),s=0;s<r.length;s++)i.push(r[s]);return new e(i)},children:function(i){for(var n=[],r=0;r<this.length;r++)for(var s=this[r].childNodes,o=0;o<s.length;o++)i?1===s[o].nodeType&&t(s[o]).is(i)&&n.push(s[o]):1===s[o].nodeType&&n.push(s[o]);return new e(t.unique(n))},remove:function(){for(var e=0;e<this.length;e++)this[e].parentNode&&this[e].parentNode.removeChild(this[e]);return this},add:function(){var e,i,n=this;for(e=0;e<arguments.length;e++){var r=t(arguments[e]);for(i=0;i<r.length;i++)n[n.length]=r[i],n.length++}return n}},t.fn=e.prototype,t.unique=function(e){for(var t=[],i=0;i<e.length;i++)-1===t.indexOf(e[i])&&t.push(e[i]);return t},t}()),n=["jQuery","Zepto","Dom7"],r=0;r<n.length;r++)window[n[r]]&&e(window[n[r]]);var s;s="undefined"==typeof i?window.Dom7||window.Zepto||window.jQuery:i,s&&("transitionEnd"in s.fn||(s.fn.transitionEnd=function(e){function t(s){if(s.target===this)for(e.call(this,s),i=0;i<n.length;i++)r.off(n[i],t)}var i,n=["webkitTransitionEnd","transitionend","oTransitionEnd","MSTransitionEnd","msTransitionEnd"],r=this;if(e)for(i=0;i<n.length;i++)r.on(n[i],t);return this}),"transform"in s.fn||(s.fn.transform=function(e){for(var t=0;t<this.length;t++){var i=this[t].style;i.webkitTransform=i.MsTransform=i.msTransform=i.MozTransform=i.OTransform=i.transform=e}return this}),"transition"in s.fn||(s.fn.transition=function(e){"string"!=typeof e&&(e+="ms");for(var t=0;t<this.length;t++){var i=this[t].style;i.webkitTransitionDuration=i.MsTransitionDuration=i.msTransitionDuration=i.MozTransitionDuration=i.OTransitionDuration=i.transitionDuration=e}return this})),window.Swiper=t}(),"undefined"!=typeof i?i.exports=window.Swiper:"function"==typeof define&&define.amd&&define([],function(){"use strict";return window.Swiper})}),define("swiper.css.js",[],function(e,t,i){e("index")('.swiper-container{margin:0 auto;position:relative;overflow:hidden;z-index:1;}.swiper-container-no-flexbox .swiper-slide{float:left;}.swiper-container-vertical > .swiper-wrapper{-webkit-box-orient:vertical;-moz-box-orient:vertical;-ms-flex-direction:column;-webkit-flex-direction:column;flex-direction:column;}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transition-property:-webkit-transform;-moz-transition-property:-moz-transform;-o-transition-property:-o-transform;-ms-transition-property:-ms-transform;transition-property:transform;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;}.swiper-container-android .swiper-slide,.swiper-wrapper{-webkit-transform:translate3d(0px, 0, 0);-moz-transform:translate3d(0px, 0, 0);-o-transform:translate(0px, 0px);-ms-transform:translate3d(0px, 0, 0);transform:translate3d(0px, 0, 0);}.swiper-container-multirow > .swiper-wrapper{-webkit-box-lines:multiple;-moz-box-lines:multiple;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap;}.swiper-container-free-mode > .swiper-wrapper{-webkit-transition-timing-function:ease-out;-moz-transition-timing-function:ease-out;-ms-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto;}.swiper-slide{-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-flex-shrink:0;-ms-flex:0 0 auto;flex-shrink:0;width:100%;height:100%;position:relative;}.swiper-container .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000;}.swiper-wp8-horizontal{-ms-touch-action:pan-y;touch-action:pan-y;}.swiper-wp8-vertical{-ms-touch-action:pan-x;touch-action:pan-x;}.swiper-button-prev,.swiper-button-next{position:absolute;top:50%;width:27px;height:44px;margin-top:-22px;z-index:10;cursor:pointer;-moz-background-size:27px 44px;-webkit-background-size:27px 44px;background-size:27px 44px;background-position:center;background-repeat:no-repeat;}.swiper-button-prev.swiper-button-disabled,.swiper-button-next.swiper-button-disabled{opacity:0.35;cursor:auto;pointer-events:none;}.swiper-button-prev,.swiper-container-rtl .swiper-button-next{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D"http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg"%20viewBox%3D"0%200%2027%2044"%3E%3Cpath%20d%3D"M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z"%20fill%3D"%23007aff"%2F%3E%3C%2Fsvg%3E");left:10px;right:auto;}.swiper-button-prev.swiper-button-black,.swiper-container-rtl .swiper-button-next.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D"http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg"%20viewBox%3D"0%200%2027%2044"%3E%3Cpath%20d%3D"M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z"%20fill%3D"%23000000"%2F%3E%3C%2Fsvg%3E");}.swiper-button-prev.swiper-button-white,.swiper-container-rtl .swiper-button-next.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D"http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg"%20viewBox%3D"0%200%2027%2044"%3E%3Cpath%20d%3D"M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z"%20fill%3D"%23ffffff"%2F%3E%3C%2Fsvg%3E");}.swiper-button-next,.swiper-container-rtl .swiper-button-prev{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D"http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg"%20viewBox%3D"0%200%2027%2044"%3E%3Cpath%20d%3D"M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z"%20fill%3D"%23007aff"%2F%3E%3C%2Fsvg%3E");right:10px;left:auto;}.swiper-button-next.swiper-button-black,.swiper-container-rtl .swiper-button-prev.swiper-button-black{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D"http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg"%20viewBox%3D"0%200%2027%2044"%3E%3Cpath%20d%3D"M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z"%20fill%3D"%23000000"%2F%3E%3C%2Fsvg%3E");}.swiper-button-next.swiper-button-white,.swiper-container-rtl .swiper-button-prev.swiper-button-white{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D"http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg"%20viewBox%3D"0%200%2027%2044"%3E%3Cpath%20d%3D"M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z"%20fill%3D"%23ffffff"%2F%3E%3C%2Fsvg%3E");}.swiper-pagination{position:absolute;text-align:center;-webkit-transition:300ms;-moz-transition:300ms;-o-transition:300ms;transition:300ms;-webkit-transform:translate3d(0, 0, 0);-ms-transform:translate3d(0, 0, 0);-o-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);z-index:10;}.swiper-pagination.swiper-pagination-hidden{opacity:0;}.swiper-pagination-bullet{width:8px;height:8px;display:inline-block;border-radius:100%;background:#000;opacity:0.2;}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer;}.swiper-pagination-white .swiper-pagination-bullet{background:#fff;}.swiper-pagination-bullet-active{opacity:1;background:#007aff;}.swiper-pagination-white .swiper-pagination-bullet-active{background:#fff;}.swiper-pagination-black .swiper-pagination-bullet-active{background:#000;}.swiper-container-vertical > .swiper-pagination{right:10px;top:50%;-webkit-transform:translate3d(0px, -50%, 0);-moz-transform:translate3d(0px, -50%, 0);-o-transform:translate(0px, -50%);-ms-transform:translate3d(0px, -50%, 0);transform:translate3d(0px, -50%, 0);}.swiper-container-vertical > .swiper-pagination .swiper-pagination-bullet{margin:5px 0;display:block;}.swiper-container-horizontal > .swiper-pagination{bottom:10px;left:0;width:100%;}.swiper-container-horizontal > .swiper-pagination .swiper-pagination-bullet{margin:0 5px;}.swiper-container-3d{-webkit-perspective:1200px;-moz-perspective:1200px;-o-perspective:1200px;perspective:1200px;}.swiper-container-3d .swiper-wrapper,.swiper-container-3d .swiper-slide,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-cube-shadow{-webkit-transform-style:preserve-3d;-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d;transform-style:preserve-3d;}.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-slide-shadow-bottom{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10;}.swiper-container-3d .swiper-slide-shadow-left{background-image:-webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));background-image:-webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:-moz-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:-o-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));}.swiper-container-3d .swiper-slide-shadow-right{background-image:-webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));background-image:-webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:-moz-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:-o-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));}.swiper-container-3d .swiper-slide-shadow-top{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));background-image:-webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:-moz-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:-o-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));}.swiper-container-3d .swiper-slide-shadow-bottom{background-image:-webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));background-image:-webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:-moz-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:-o-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));background-image:linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));}.swiper-container-coverflow .swiper-wrapper{-ms-perspective:1200px;}.swiper-container-fade.swiper-container-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;-moz-transition-timing-function:ease-out;-ms-transition-timing-function:ease-out;-o-transition-timing-function:ease-out;transition-timing-function:ease-out;}.swiper-container-fade .swiper-slide{pointer-events:none;}.swiper-container-fade .swiper-slide .swiper-slide{pointer-events:none;}.swiper-container-fade .swiper-slide-active,.swiper-container-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto;}.swiper-container-cube{overflow:visible;}.swiper-container-cube .swiper-slide{pointer-events:none;visibility:hidden;-webkit-transform-origin:0 0;-moz-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;backface-visibility:hidden;width:100%;height:100%;}.swiper-container-cube.swiper-container-rtl .swiper-slide{-webkit-transform-origin:100% 0;-moz-transform-origin:100% 0;-ms-transform-origin:100% 0;transform-origin:100% 0;}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-next,.swiper-container-cube .swiper-slide-prev,.swiper-container-cube .swiper-slide-next + .swiper-slide{pointer-events:auto;visibility:visible;}.swiper-container-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;background:#000;opacity:0.6;-webkit-filter:blur(50px);filter:blur(50px);}.swiper-container-cube.swiper-container-vertical .swiper-cube-shadow{z-index:0;}.swiper-scrollbar{border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0, 0, 0, 0.1);}.swiper-container-horizontal > .swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%;}.swiper-container-vertical > .swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%;}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0, 0, 0, 0.5);border-radius:10px;left:0;top:0;}.swiper-scrollbar-cursor-drag{cursor:move;}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;-webkit-transform-origin:50%;-moz-transform-origin:50%;transform-origin:50%;-webkit-animation:swiper-preloader-spin 1s steps(12, end) infinite;-moz-animation:swiper-preloader-spin 1s steps(12, end) infinite;animation:swiper-preloader-spin 1s steps(12, end) infinite;}.swiper-lazy-preloader:after{display:block;content:"";width:100%;height:100%;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D"0%200%20120%20120"%20xmlns%3D"http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg"%20xmlns%3Axlink%3D"http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink"%3E%3Cdefs%3E%3Cline%20id%3D"l"%20x1%3D"60"%20x2%3D"60"%20y1%3D"7"%20y2%3D"27"%20stroke%3D"%236c6c6c"%20stroke-width%3D"11"%20stroke-linecap%3D"round"%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%20transform%3D"rotate(30%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%20transform%3D"rotate(60%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%20transform%3D"rotate(90%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%20transform%3D"rotate(120%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%20transform%3D"rotate(150%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".37"%20transform%3D"rotate(180%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".46"%20transform%3D"rotate(210%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".56"%20transform%3D"rotate(240%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".66"%20transform%3D"rotate(270%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".75"%20transform%3D"rotate(300%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".85"%20transform%3D"rotate(330%2060%2C60)"%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");background-position:50%;-webkit-background-size:100%;background-size:100%;background-repeat:no-repeat;}.swiper-lazy-preloader-white:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D"0%200%20120%20120"%20xmlns%3D"http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg"%20xmlns%3Axlink%3D"http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink"%3E%3Cdefs%3E%3Cline%20id%3D"l"%20x1%3D"60"%20x2%3D"60"%20y1%3D"7"%20y2%3D"27"%20stroke%3D"%23fff"%20stroke-width%3D"11"%20stroke-linecap%3D"round"%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%20transform%3D"rotate(30%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%20transform%3D"rotate(60%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%20transform%3D"rotate(90%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%20transform%3D"rotate(120%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".27"%20transform%3D"rotate(150%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".37"%20transform%3D"rotate(180%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".46"%20transform%3D"rotate(210%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".56"%20transform%3D"rotate(240%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".66"%20transform%3D"rotate(270%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".75"%20transform%3D"rotate(300%2060%2C60)"%2F%3E%3Cuse%20xlink%3Ahref%3D"%23l"%20opacity%3D".85"%20transform%3D"rotate(330%2060%2C60)"%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");}@-webkit-keyframes swiper-preloader-spin{100%{-webkit-transform:rotate(360deg);}}@keyframes swiper-preloader-spin{100%{transform:rotate(360deg);}}'); +}),define("iscroll-probe",[],function(e,t,i){!function(e,t,n){function r(e,i){this.wrapper="string"==typeof e?t.querySelector(e):e,this.scroller=this.wrapper.children[0],this.scrollerStyle=this.scroller.style,this.options={resizeScrollbars:!0,mouseWheelSpeed:20,snapThreshold:.334,startX:0,startY:0,scrollY:!0,directionLockThreshold:5,momentum:!0,bounce:!0,bounceTime:600,bounceEasing:"",preventDefault:!0,preventDefaultException:{tagName:/^(INPUT|TEXTAREA|BUTTON|SELECT)$/},HWCompositing:!0,useTransition:!0,useTransform:!0};for(var n in i)this.options[n]=i[n];this.translateZ=this.options.HWCompositing&&l.hasPerspective?" translateZ(0)":"",this.options.useTransition=l.hasTransition&&this.options.useTransition,this.options.useTransform=l.hasTransform&&this.options.useTransform,this.options.eventPassthrough=this.options.eventPassthrough===!0?"vertical":this.options.eventPassthrough,this.options.preventDefault=!this.options.eventPassthrough&&this.options.preventDefault,this.options.scrollY="vertical"==this.options.eventPassthrough?!1:this.options.scrollY,this.options.scrollX="horizontal"==this.options.eventPassthrough?!1:this.options.scrollX,this.options.freeScroll=this.options.freeScroll&&!this.options.eventPassthrough,this.options.directionLockThreshold=this.options.eventPassthrough?0:this.options.directionLockThreshold,this.options.bounceEasing="string"==typeof this.options.bounceEasing?l.ease[this.options.bounceEasing]||l.ease.circular:this.options.bounceEasing,this.options.resizePolling=void 0===this.options.resizePolling?60:this.options.resizePolling,this.options.tap===!0&&(this.options.tap="tap"),"scale"==this.options.shrinkScrollbars&&(this.options.useTransition=!1),this.options.invertWheelDirection=this.options.invertWheelDirection?-1:1,3==this.options.probeType&&(this.options.useTransition=!1),this.x=0,this.y=0,this.directionX=0,this.directionY=0,this._events={},this._init(),this.refresh(),this.scrollTo(this.options.startX,this.options.startY),this.enable()}function s(e,i,n){var r=t.createElement("div"),s=t.createElement("div");return n===!0&&(r.style.cssText="position:absolute;z-index:9999",s.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:absolute;background:rgba(0,0,0,0.5);border:1px solid rgba(255,255,255,0.9);border-radius:3px"),s.className="iScrollIndicator","h"==e?(n===!0&&(r.style.cssText+=";height:7px;left:2px;right:2px;bottom:0",s.style.height="100%"),r.className="iScrollHorizontalScrollbar"):(n===!0&&(r.style.cssText+=";width:7px;bottom:2px;top:2px;right:1px",s.style.width="100%"),r.className="iScrollVerticalScrollbar"),r.style.cssText+=";overflow:hidden",i||(r.style.pointerEvents="none"),r.appendChild(s),r}function o(i,n){this.wrapper="string"==typeof n.el?t.querySelector(n.el):n.el,this.wrapperStyle=this.wrapper.style,this.indicator=this.wrapper.children[0],this.indicatorStyle=this.indicator.style,this.scroller=i,this.options={listenX:!0,listenY:!0,interactive:!1,resize:!0,defaultScrollbars:!1,shrink:!1,fade:!1,speedRatioX:0,speedRatioY:0};for(var r in n)this.options[r]=n[r];this.sizeRatioX=1,this.sizeRatioY=1,this.maxPosX=0,this.maxPosY=0,this.options.interactive&&(this.options.disableTouch||(l.addEvent(this.indicator,"touchstart",this),l.addEvent(e,"touchend",this)),this.options.disablePointer||(l.addEvent(this.indicator,l.prefixPointerEvent("pointerdown"),this),l.addEvent(e,l.prefixPointerEvent("pointerup"),this)),this.options.disableMouse||(l.addEvent(this.indicator,"mousedown",this),l.addEvent(e,"mouseup",this))),this.options.fade&&(this.wrapperStyle[l.style.transform]=this.scroller.translateZ,this.wrapperStyle[l.style.transitionDuration]=l.isBadAndroid?"0.001s":"0ms",this.wrapperStyle.opacity="0")}var a=e.requestAnimationFrame||e.webkitRequestAnimationFrame||e.mozRequestAnimationFrame||e.oRequestAnimationFrame||e.msRequestAnimationFrame||function(t){e.setTimeout(t,1e3/60)},l=function(){function i(e){return o===!1?!1:""===o?e:o+e.charAt(0).toUpperCase()+e.substr(1)}var r={},s=t.createElement("div").style,o=function(){for(var e,t=["t","webkitT","MozT","msT","OT"],i=0,n=t.length;n>i;i++)if(e=t[i]+"ransform",e in s)return t[i].substr(0,t[i].length-1);return!1}();r.getTime=Date.now||function(){return(new Date).getTime()},r.extend=function(e,t){for(var i in t)e[i]=t[i]},r.addEvent=function(e,t,i,n){e.addEventListener(t,i,!!n)},r.removeEvent=function(e,t,i,n){e.removeEventListener(t,i,!!n)},r.prefixPointerEvent=function(t){return e.MSPointerEvent?"MSPointer"+t.charAt(9).toUpperCase()+t.substr(10):t},r.momentum=function(e,t,i,r,s,o){var a,l,c=e-t,u=n.abs(c)/i;return o=void 0===o?6e-4:o,a=e+u*u/(2*o)*(0>c?-1:1),l=u/o,r>a?(a=s?r-s/2.5*(u/8):r,c=n.abs(a-e),l=c/u):a>0&&(a=s?s/2.5*(u/8):0,c=n.abs(e)+a,l=c/u),{destination:n.round(a),duration:l}};var a=i("transform");return r.extend(r,{hasTransform:a!==!1,hasPerspective:i("perspective")in s,hasTouch:"ontouchstart"in e,hasPointer:e.PointerEvent||e.MSPointerEvent,hasTransition:i("transition")in s}),r.isBadAndroid=/Android /.test(e.navigator.appVersion)&&!/Chrome\/\d/.test(e.navigator.appVersion),r.extend(r.style={},{transform:a,transitionTimingFunction:i("transitionTimingFunction"),transitionDuration:i("transitionDuration"),transitionDelay:i("transitionDelay"),transformOrigin:i("transformOrigin")}),r.hasClass=function(e,t){var i=new RegExp("(^|\\s)"+t+"(\\s|$)");return i.test(e.className)},r.addClass=function(e,t){if(!r.hasClass(e,t)){var i=e.className.split(" ");i.push(t),e.className=i.join(" ")}},r.removeClass=function(e,t){if(r.hasClass(e,t)){var i=new RegExp("(^|\\s)"+t+"(\\s|$)","g");e.className=e.className.replace(i," ")}},r.offset=function(e){for(var t=-e.offsetLeft,i=-e.offsetTop;e=e.offsetParent;)t-=e.offsetLeft,i-=e.offsetTop;return{left:t,top:i}},r.preventDefaultException=function(e,t){for(var i in t)if(t[i].test(e[i]))return!0;return!1},r.extend(r.eventType={},{touchstart:1,touchmove:1,touchend:1,mousedown:2,mousemove:2,mouseup:2,pointerdown:3,pointermove:3,pointerup:3,MSPointerDown:3,MSPointerMove:3,MSPointerUp:3}),r.extend(r.ease={},{quadratic:{style:"cubic-bezier(0.25, 0.46, 0.45, 0.94)",fn:function(e){return e*(2-e)}},circular:{style:"cubic-bezier(0.1, 0.57, 0.1, 1)",fn:function(e){return n.sqrt(1- --e*e)}},back:{style:"cubic-bezier(0.175, 0.885, 0.32, 1.275)",fn:function(e){var t=4;return(e-=1)*e*((t+1)*e+t)+1}},bounce:{style:"",fn:function(e){return(e/=1)<1/2.75?7.5625*e*e:2/2.75>e?7.5625*(e-=1.5/2.75)*e+.75:2.5/2.75>e?7.5625*(e-=2.25/2.75)*e+.9375:7.5625*(e-=2.625/2.75)*e+.984375}},elastic:{style:"",fn:function(e){var t=.22,i=.4;return 0===e?0:1==e?1:i*n.pow(2,-10*e)*n.sin((e-t/4)*(2*n.PI)/t)+1}}}),r.tap=function(e,i){var n=t.createEvent("Event");n.initEvent(i,!0,!0),n.pageX=e.pageX,n.pageY=e.pageY,e.target.dispatchEvent(n)},r.click=function(e){var i,n=e.target;/(SELECT|INPUT|TEXTAREA)/i.test(n.tagName)||(i=t.createEvent("MouseEvents"),i.initMouseEvent("click",!0,!0,e.view,1,n.screenX,n.screenY,n.clientX,n.clientY,e.ctrlKey,e.altKey,e.shiftKey,e.metaKey,0,null),i._constructed=!0,n.dispatchEvent(i))},r}();r.prototype={version:"5.1.2",_init:function(){this._initEvents(),(this.options.scrollbars||this.options.indicators)&&this._initIndicators(),this.options.mouseWheel&&this._initWheel(),this.options.snap&&this._initSnap(),this.options.keyBindings&&this._initKeys()},destroy:function(){this._initEvents(!0),this._execEvent("destroy")},_transitionEnd:function(e){e.target==this.scroller&&this.isInTransition&&(this._transitionTime(),this.resetPosition(this.options.bounceTime)||(this.isInTransition=!1,this._execEvent("scrollEnd")))},_start:function(e){if((1==l.eventType[e.type]||0===e.button)&&this.enabled&&(!this.initiated||l.eventType[e.type]===this.initiated)){!this.options.preventDefault||l.isBadAndroid||l.preventDefaultException(e.target,this.options.preventDefaultException)||e.preventDefault();var t,i=e.touches?e.touches[0]:e;this.initiated=l.eventType[e.type],this.moved=!1,this.distX=0,this.distY=0,this.directionX=0,this.directionY=0,this.directionLocked=0,this._transitionTime(),this.startTime=l.getTime(),this.options.useTransition&&this.isInTransition?(this.isInTransition=!1,t=this.getComputedPosition(),this._translate(n.round(t.x),n.round(t.y)),this._execEvent("scrollEnd")):!this.options.useTransition&&this.isAnimating&&(this.isAnimating=!1,this._execEvent("scrollEnd")),this.startX=this.x,this.startY=this.y,this.absStartX=this.x,this.absStartY=this.y,this.pointX=i.pageX,this.pointY=i.pageY,this._execEvent("beforeScrollStart")}},_move:function(e){if(this.enabled&&l.eventType[e.type]===this.initiated){this.options.preventDefault&&e.preventDefault();var t,i,r,s,o=e.touches?e.touches[0]:e,a=o.pageX-this.pointX,c=o.pageY-this.pointY,u=l.getTime();if(this.pointX=o.pageX,this.pointY=o.pageY,this.distX+=a,this.distY+=c,r=n.abs(this.distX),s=n.abs(this.distY),!(u-this.endTime>300&&10>r&&10>s)){if(this.directionLocked||this.options.freeScroll||(r>s+this.options.directionLockThreshold?this.directionLocked="h":s>=r+this.options.directionLockThreshold?this.directionLocked="v":this.directionLocked="n"),"h"==this.directionLocked){if("vertical"==this.options.eventPassthrough)e.preventDefault();else if("horizontal"==this.options.eventPassthrough)return void(this.initiated=!1);c=0}else if("v"==this.directionLocked){if("horizontal"==this.options.eventPassthrough)e.preventDefault();else if("vertical"==this.options.eventPassthrough)return void(this.initiated=!1);a=0}a=this.hasHorizontalScroll?a:0,c=this.hasVerticalScroll?c:0,t=this.x+a,i=this.y+c,(t>0||t<this.maxScrollX)&&(t=this.options.bounce?this.x+a/3:t>0?0:this.maxScrollX),(i>0||i<this.maxScrollY)&&(i=this.options.bounce?this.y+c/3:i>0?0:this.maxScrollY),this.directionX=a>0?-1:0>a?1:0,this.directionY=c>0?-1:0>c?1:0,this.moved||this._execEvent("scrollStart"),this.moved=!0,this._translate(t,i),u-this.startTime>300&&(this.startTime=u,this.startX=this.x,this.startY=this.y,1==this.options.probeType&&this._execEvent("scroll")),this.options.probeType>1&&this._execEvent("scroll")}}},_end:function(e){if(this.enabled&&l.eventType[e.type]===this.initiated){this.options.preventDefault&&!l.preventDefaultException(e.target,this.options.preventDefaultException)&&e.preventDefault();var t,i,r=(e.changedTouches?e.changedTouches[0]:e,l.getTime()-this.startTime),s=n.round(this.x),o=n.round(this.y),a=n.abs(s-this.startX),c=n.abs(o-this.startY),u=0,p="";if(this.isInTransition=0,this.initiated=0,this.endTime=l.getTime(),!this.resetPosition(this.options.bounceTime)){if(this.scrollTo(s,o),!this.moved)return this.options.tap&&l.tap(e,this.options.tap),this.options.click&&l.click(e),void this._execEvent("scrollCancel");if(this._events.flick&&200>r&&100>a&&100>c)return void this._execEvent("flick");if(this.options.momentum&&300>r&&(t=this.hasHorizontalScroll?l.momentum(this.x,this.startX,r,this.maxScrollX,this.options.bounce?this.wrapperWidth:0,this.options.deceleration):{destination:s,duration:0},i=this.hasVerticalScroll?l.momentum(this.y,this.startY,r,this.maxScrollY,this.options.bounce?this.wrapperHeight:0,this.options.deceleration):{destination:o,duration:0},s=t.destination,o=i.destination,u=n.max(t.duration,i.duration),this.isInTransition=1),this.options.snap){var h=this._nearestSnap(s,o);this.currentPage=h,u=this.options.snapSpeed||n.max(n.max(n.min(n.abs(s-h.x),1e3),n.min(n.abs(o-h.y),1e3)),300),s=h.x,o=h.y,this.directionX=0,this.directionY=0,p=this.options.bounceEasing}return s!=this.x||o!=this.y?((s>0||s<this.maxScrollX||o>0||o<this.maxScrollY)&&(p=l.ease.quadratic),void this.scrollTo(s,o,u,p)):void this._execEvent("scrollEnd")}}},_resize:function(){var e=this;clearTimeout(this.resizeTimeout),this.resizeTimeout=setTimeout(function(){e.refresh()},this.options.resizePolling)},resetPosition:function(e){var t=this.x,i=this.y;return e=e||0,!this.hasHorizontalScroll||this.x>0?t=0:this.x<this.maxScrollX&&(t=this.maxScrollX),!this.hasVerticalScroll||this.y>0?i=0:this.y<this.maxScrollY&&(i=this.maxScrollY),t==this.x&&i==this.y?!1:(this.scrollTo(t,i,e,this.options.bounceEasing),!0)},disable:function(){this.enabled=!1},enable:function(){this.enabled=!0},refresh:function(){this.wrapper.offsetHeight;this.wrapperWidth=this.wrapper.clientWidth,this.wrapperHeight=this.wrapper.clientHeight,this.scrollerWidth=this.scroller.offsetWidth,this.scrollerHeight=this.scroller.offsetHeight,this.maxScrollX=this.wrapperWidth-this.scrollerWidth,this.maxScrollY=this.wrapperHeight-this.scrollerHeight,this.hasHorizontalScroll=this.options.scrollX&&this.maxScrollX<0,this.hasVerticalScroll=this.options.scrollY&&this.maxScrollY<0,this.hasHorizontalScroll||(this.maxScrollX=0,this.scrollerWidth=this.wrapperWidth),this.hasVerticalScroll||(this.maxScrollY=0,this.scrollerHeight=this.wrapperHeight),this.endTime=0,this.directionX=0,this.directionY=0,this.wrapperOffset=l.offset(this.wrapper),this._execEvent("refresh"),this.resetPosition()},on:function(e,t){this._events[e]||(this._events[e]=[]),this._events[e].push(t)},off:function(e,t){if(this._events[e]){var i=this._events[e].indexOf(t);i>-1&&this._events[e].splice(i,1)}},_execEvent:function(e){if(this._events[e]){var t=0,i=this._events[e].length;if(i)for(;i>t;t++)this._events[e][t].apply(this,[].slice.call(arguments,1))}},scrollBy:function(e,t,i,n){e=this.x+e,t=this.y+t,i=i||0,this.scrollTo(e,t,i,n)},scrollTo:function(e,t,i,n){n=n||l.ease.circular,this.isInTransition=this.options.useTransition&&i>0,!i||this.options.useTransition&&n.style?(this._transitionTimingFunction(n.style),this._transitionTime(i),this._translate(e,t)):this._animate(e,t,i,n.fn)},scrollToElement:function(e,t,i,r,s){if(e=e.nodeType?e:this.scroller.querySelector(e)){var o=l.offset(e);o.left-=this.wrapperOffset.left,o.top-=this.wrapperOffset.top,i===!0&&(i=n.round(e.offsetWidth/2-this.wrapper.offsetWidth/2)),r===!0&&(r=n.round(e.offsetHeight/2-this.wrapper.offsetHeight/2)),o.left-=i||0,o.top-=r||0,o.left=o.left>0?0:o.left<this.maxScrollX?this.maxScrollX:o.left,o.top=o.top>0?0:o.top<this.maxScrollY?this.maxScrollY:o.top,t=void 0===t||null===t||"auto"===t?n.max(n.abs(this.x-o.left),n.abs(this.y-o.top)):t,this.scrollTo(o.left,o.top,t,s)}},_transitionTime:function(e){if(e=e||0,this.scrollerStyle[l.style.transitionDuration]=e+"ms",!e&&l.isBadAndroid&&(this.scrollerStyle[l.style.transitionDuration]="0.001s"),this.indicators)for(var t=this.indicators.length;t--;)this.indicators[t].transitionTime(e)},_transitionTimingFunction:function(e){if(this.scrollerStyle[l.style.transitionTimingFunction]=e,this.indicators)for(var t=this.indicators.length;t--;)this.indicators[t].transitionTimingFunction(e)},_translate:function(e,t){if(this.options.useTransform?this.scrollerStyle[l.style.transform]="translate("+e+"px,"+t+"px)"+this.translateZ:(e=n.round(e),t=n.round(t),this.scrollerStyle.left=e+"px",this.scrollerStyle.top=t+"px"),this.x=e,this.y=t,this.indicators)for(var i=this.indicators.length;i--;)this.indicators[i].updatePosition()},_initEvents:function(t){var i=t?l.removeEvent:l.addEvent,n=this.options.bindToWrapper?this.wrapper:e;i(e,"orientationchange",this),i(e,"resize",this),this.options.click&&i(this.wrapper,"click",this,!0),this.options.disableMouse||(i(this.wrapper,"mousedown",this),i(n,"mousemove",this),i(n,"mousecancel",this),i(n,"mouseup",this)),l.hasPointer&&!this.options.disablePointer&&(i(this.wrapper,l.prefixPointerEvent("pointerdown"),this),i(n,l.prefixPointerEvent("pointermove"),this),i(n,l.prefixPointerEvent("pointercancel"),this),i(n,l.prefixPointerEvent("pointerup"),this)),l.hasTouch&&!this.options.disableTouch&&(i(this.wrapper,"touchstart",this),i(n,"touchmove",this),i(n,"touchcancel",this),i(n,"touchend",this)),i(this.scroller,"transitionend",this),i(this.scroller,"webkitTransitionEnd",this),i(this.scroller,"oTransitionEnd",this),i(this.scroller,"MSTransitionEnd",this)},getComputedPosition:function(){var t,i,n=e.getComputedStyle(this.scroller,null);return this.options.useTransform?(n=n[l.style.transform].split(")")[0].split(", "),t=+(n[12]||n[4]),i=+(n[13]||n[5])):(t=+n.left.replace(/[^-\d.]/g,""),i=+n.top.replace(/[^-\d.]/g,"")),{x:t,y:i}},_initIndicators:function(){function e(e){for(var t=a.indicators.length;t--;)e.call(a.indicators[t])}var t,i=this.options.interactiveScrollbars,n="string"!=typeof this.options.scrollbars,r=[],a=this;this.indicators=[],this.options.scrollbars&&(this.options.scrollY&&(t={el:s("v",i,this.options.scrollbars),interactive:i,defaultScrollbars:!0,customStyle:n,resize:this.options.resizeScrollbars,shrink:this.options.shrinkScrollbars,fade:this.options.fadeScrollbars,listenX:!1},this.wrapper.appendChild(t.el),r.push(t)),this.options.scrollX&&(t={el:s("h",i,this.options.scrollbars),interactive:i,defaultScrollbars:!0,customStyle:n,resize:this.options.resizeScrollbars,shrink:this.options.shrinkScrollbars,fade:this.options.fadeScrollbars,listenY:!1},this.wrapper.appendChild(t.el),r.push(t))),this.options.indicators&&(r=r.concat(this.options.indicators));for(var l=r.length;l--;)this.indicators.push(new o(this,r[l]));this.options.fadeScrollbars&&(this.on("scrollEnd",function(){e(function(){this.fade()})}),this.on("scrollCancel",function(){e(function(){this.fade()})}),this.on("scrollStart",function(){e(function(){this.fade(1)})}),this.on("beforeScrollStart",function(){e(function(){this.fade(1,!0)})})),this.on("refresh",function(){e(function(){this.refresh()})}),this.on("destroy",function(){e(function(){this.destroy()}),delete this.indicators})},_initWheel:function(){l.addEvent(this.wrapper,"wheel",this),l.addEvent(this.wrapper,"mousewheel",this),l.addEvent(this.wrapper,"DOMMouseScroll",this),this.on("destroy",function(){l.removeEvent(this.wrapper,"wheel",this),l.removeEvent(this.wrapper,"mousewheel",this),l.removeEvent(this.wrapper,"DOMMouseScroll",this)})},_wheel:function(e){if(this.enabled){e.preventDefault(),e.stopPropagation();var t,i,r,s,o=this;if(void 0===this.wheelTimeout&&o._execEvent("scrollStart"),clearTimeout(this.wheelTimeout),this.wheelTimeout=setTimeout(function(){o._execEvent("scrollEnd"),o.wheelTimeout=void 0},400),"deltaX"in e)t=-e.deltaX,i=-e.deltaY;else if("wheelDeltaX"in e)t=e.wheelDeltaX/120*this.options.mouseWheelSpeed,i=e.wheelDeltaY/120*this.options.mouseWheelSpeed;else if("wheelDelta"in e)t=i=e.wheelDelta/120*this.options.mouseWheelSpeed;else{if(!("detail"in e))return;t=i=-e.detail/3*this.options.mouseWheelSpeed}if(t*=this.options.invertWheelDirection,i*=this.options.invertWheelDirection,this.hasVerticalScroll||(t=i,i=0),this.options.snap)return r=this.currentPage.pageX,s=this.currentPage.pageY,t>0?r--:0>t&&r++,i>0?s--:0>i&&s++,void this.goToPage(r,s);r=this.x+n.round(this.hasHorizontalScroll?t:0),s=this.y+n.round(this.hasVerticalScroll?i:0),r>0?r=0:r<this.maxScrollX&&(r=this.maxScrollX),s>0?s=0:s<this.maxScrollY&&(s=this.maxScrollY),this.scrollTo(r,s,0),this.options.probeType>1&&this._execEvent("scroll")}},_initSnap:function(){this.currentPage={},"string"==typeof this.options.snap&&(this.options.snap=this.scroller.querySelectorAll(this.options.snap)),this.on("refresh",function(){var e,t,i,r,s,o,a=0,l=0,c=0,u=this.options.snapStepX||this.wrapperWidth,p=this.options.snapStepY||this.wrapperHeight;if(this.pages=[],this.wrapperWidth&&this.wrapperHeight&&this.scrollerWidth&&this.scrollerHeight){if(this.options.snap===!0)for(i=n.round(u/2),r=n.round(p/2);c>-this.scrollerWidth;){for(this.pages[a]=[],e=0,s=0;s>-this.scrollerHeight;)this.pages[a][e]={x:n.max(c,this.maxScrollX),y:n.max(s,this.maxScrollY),width:u,height:p,cx:c-i,cy:s-r},s-=p,e++;c-=u,a++}else for(o=this.options.snap,e=o.length,t=-1;e>a;a++)(0===a||o[a].offsetLeft<=o[a-1].offsetLeft)&&(l=0,t++),this.pages[l]||(this.pages[l]=[]),c=n.max(-o[a].offsetLeft,this.maxScrollX),s=n.max(-o[a].offsetTop,this.maxScrollY),i=c-n.round(o[a].offsetWidth/2),r=s-n.round(o[a].offsetHeight/2),this.pages[l][t]={x:c,y:s,width:o[a].offsetWidth,height:o[a].offsetHeight,cx:i,cy:r},c>this.maxScrollX&&l++;this.goToPage(this.currentPage.pageX||0,this.currentPage.pageY||0,0),this.options.snapThreshold%1===0?(this.snapThresholdX=this.options.snapThreshold,this.snapThresholdY=this.options.snapThreshold):(this.snapThresholdX=n.round(this.pages[this.currentPage.pageX][this.currentPage.pageY].width*this.options.snapThreshold),this.snapThresholdY=n.round(this.pages[this.currentPage.pageX][this.currentPage.pageY].height*this.options.snapThreshold))}}),this.on("flick",function(){var e=this.options.snapSpeed||n.max(n.max(n.min(n.abs(this.x-this.startX),1e3),n.min(n.abs(this.y-this.startY),1e3)),300);this.goToPage(this.currentPage.pageX+this.directionX,this.currentPage.pageY+this.directionY,e)})},_nearestSnap:function(e,t){if(!this.pages.length)return{x:0,y:0,pageX:0,pageY:0};var i=0,r=this.pages.length,s=0;if(n.abs(e-this.absStartX)<this.snapThresholdX&&n.abs(t-this.absStartY)<this.snapThresholdY)return this.currentPage;for(e>0?e=0:e<this.maxScrollX&&(e=this.maxScrollX),t>0?t=0:t<this.maxScrollY&&(t=this.maxScrollY);r>i;i++)if(e>=this.pages[i][0].cx){e=this.pages[i][0].x;break}for(r=this.pages[i].length;r>s;s++)if(t>=this.pages[0][s].cy){t=this.pages[0][s].y;break}return i==this.currentPage.pageX&&(i+=this.directionX,0>i?i=0:i>=this.pages.length&&(i=this.pages.length-1),e=this.pages[i][0].x),s==this.currentPage.pageY&&(s+=this.directionY,0>s?s=0:s>=this.pages[0].length&&(s=this.pages[0].length-1),t=this.pages[0][s].y),{x:e,y:t,pageX:i,pageY:s}},goToPage:function(e,t,i,r){r=r||this.options.bounceEasing,e>=this.pages.length?e=this.pages.length-1:0>e&&(e=0),t>=this.pages[e].length?t=this.pages[e].length-1:0>t&&(t=0);var s=this.pages[e][t].x,o=this.pages[e][t].y;i=void 0===i?this.options.snapSpeed||n.max(n.max(n.min(n.abs(s-this.x),1e3),n.min(n.abs(o-this.y),1e3)),300):i,this.currentPage={x:s,y:o,pageX:e,pageY:t},this.scrollTo(s,o,i,r)},next:function(e,t){var i=this.currentPage.pageX,n=this.currentPage.pageY;i++,i>=this.pages.length&&this.hasVerticalScroll&&(i=0,n++),this.goToPage(i,n,e,t)},prev:function(e,t){var i=this.currentPage.pageX,n=this.currentPage.pageY;i--,0>i&&this.hasVerticalScroll&&(i=0,n--),this.goToPage(i,n,e,t)},_initKeys:function(t){var i,n={pageUp:33,pageDown:34,end:35,home:36,left:37,up:38,right:39,down:40};if("object"==typeof this.options.keyBindings)for(i in this.options.keyBindings)"string"==typeof this.options.keyBindings[i]&&(this.options.keyBindings[i]=this.options.keyBindings[i].toUpperCase().charCodeAt(0));else this.options.keyBindings={};for(i in n)this.options.keyBindings[i]=this.options.keyBindings[i]||n[i];l.addEvent(e,"keydown",this),this.on("destroy",function(){l.removeEvent(e,"keydown",this)})},_key:function(e){if(this.enabled){var t,i=this.options.snap,r=i?this.currentPage.pageX:this.x,s=i?this.currentPage.pageY:this.y,o=l.getTime(),a=this.keyTime||0,c=.25;switch(this.options.useTransition&&this.isInTransition&&(t=this.getComputedPosition(),this._translate(n.round(t.x),n.round(t.y)),this.isInTransition=!1),this.keyAcceleration=200>o-a?n.min(this.keyAcceleration+c,50):0,e.keyCode){case this.options.keyBindings.pageUp:this.hasHorizontalScroll&&!this.hasVerticalScroll?r+=i?1:this.wrapperWidth:s+=i?1:this.wrapperHeight;break;case this.options.keyBindings.pageDown:this.hasHorizontalScroll&&!this.hasVerticalScroll?r-=i?1:this.wrapperWidth:s-=i?1:this.wrapperHeight;break;case this.options.keyBindings.end:r=i?this.pages.length-1:this.maxScrollX,s=i?this.pages[0].length-1:this.maxScrollY;break;case this.options.keyBindings.home:r=0,s=0;break;case this.options.keyBindings.left:r+=i?-1:5+this.keyAcceleration>>0;break;case this.options.keyBindings.up:s+=i?1:5+this.keyAcceleration>>0;break;case this.options.keyBindings.right:r-=i?-1:5+this.keyAcceleration>>0;break;case this.options.keyBindings.down:s-=i?1:5+this.keyAcceleration>>0;break;default:return}if(i)return void this.goToPage(r,s);r>0?(r=0,this.keyAcceleration=0):r<this.maxScrollX&&(r=this.maxScrollX,this.keyAcceleration=0),s>0?(s=0,this.keyAcceleration=0):s<this.maxScrollY&&(s=this.maxScrollY,this.keyAcceleration=0),this.scrollTo(r,s,0),this.keyTime=o}},_animate:function(e,t,i,n){function r(){var h,d,f,m=l.getTime();return m>=p?(s.isAnimating=!1,s._translate(e,t),void(s.resetPosition(s.options.bounceTime)||s._execEvent("scrollEnd"))):(m=(m-u)/i,f=n(m),h=(e-o)*f+o,d=(t-c)*f+c,s._translate(h,d),s.isAnimating&&a(r),void(3==s.options.probeType&&s._execEvent("scroll")))}var s=this,o=this.x,c=this.y,u=l.getTime(),p=u+i;this.isAnimating=!0,r()},handleEvent:function(e){switch(e.type){case"touchstart":case"pointerdown":case"MSPointerDown":case"mousedown":this._start(e);break;case"touchmove":case"pointermove":case"MSPointerMove":case"mousemove":this._move(e);break;case"touchend":case"pointerup":case"MSPointerUp":case"mouseup":case"touchcancel":case"pointercancel":case"MSPointerCancel":case"mousecancel":this._end(e);break;case"orientationchange":case"resize":this._resize();break;case"transitionend":case"webkitTransitionEnd":case"oTransitionEnd":case"MSTransitionEnd":this._transitionEnd(e);break;case"wheel":case"DOMMouseScroll":case"mousewheel":this._wheel(e);break;case"keydown":this._key(e);break;case"click":e._constructed||(e.preventDefault(),e.stopPropagation())}}},o.prototype={handleEvent:function(e){switch(e.type){case"touchstart":case"pointerdown":case"MSPointerDown":case"mousedown":this._start(e);break;case"touchmove":case"pointermove":case"MSPointerMove":case"mousemove":this._move(e);break;case"touchend":case"pointerup":case"MSPointerUp":case"mouseup":case"touchcancel":case"pointercancel":case"MSPointerCancel":case"mousecancel":this._end(e)}},destroy:function(){this.options.interactive&&(l.removeEvent(this.indicator,"touchstart",this),l.removeEvent(this.indicator,l.prefixPointerEvent("pointerdown"),this),l.removeEvent(this.indicator,"mousedown",this),l.removeEvent(e,"touchmove",this),l.removeEvent(e,l.prefixPointerEvent("pointermove"),this),l.removeEvent(e,"mousemove",this),l.removeEvent(e,"touchend",this),l.removeEvent(e,l.prefixPointerEvent("pointerup"),this),l.removeEvent(e,"mouseup",this)),this.options.defaultScrollbars&&this.wrapper.parentNode.removeChild(this.wrapper)},_start:function(t){var i=t.touches?t.touches[0]:t;t.preventDefault(),t.stopPropagation(),this.transitionTime(),this.initiated=!0,this.moved=!1,this.lastPointX=i.pageX,this.lastPointY=i.pageY,this.startTime=l.getTime(),this.options.disableTouch||l.addEvent(e,"touchmove",this),this.options.disablePointer||l.addEvent(e,l.prefixPointerEvent("pointermove"),this),this.options.disableMouse||l.addEvent(e,"mousemove",this),this.scroller._execEvent("beforeScrollStart")},_move:function(e){var t,i,n,r,s=e.touches?e.touches[0]:e,o=l.getTime();this.moved||this.scroller._execEvent("scrollStart"),this.moved=!0,t=s.pageX-this.lastPointX,this.lastPointX=s.pageX,i=s.pageY-this.lastPointY,this.lastPointY=s.pageY,n=this.x+t,r=this.y+i,this._pos(n,r),1==this.scroller.options.probeType&&o-this.startTime>300?(this.startTime=o,this.scroller._execEvent("scroll")):this.scroller.options.probeType>1&&this.scroller._execEvent("scroll"),e.preventDefault(),e.stopPropagation()},_end:function(t){if(this.initiated){if(this.initiated=!1,t.preventDefault(),t.stopPropagation(),l.removeEvent(e,"touchmove",this),l.removeEvent(e,l.prefixPointerEvent("pointermove"),this),l.removeEvent(e,"mousemove",this),this.scroller.options.snap){var i=this.scroller._nearestSnap(this.scroller.x,this.scroller.y),r=this.options.snapSpeed||n.max(n.max(n.min(n.abs(this.scroller.x-i.x),1e3),n.min(n.abs(this.scroller.y-i.y),1e3)),300);this.scroller.x==i.x&&this.scroller.y==i.y||(this.scroller.directionX=0,this.scroller.directionY=0,this.scroller.currentPage=i,this.scroller.scrollTo(i.x,i.y,r,this.scroller.options.bounceEasing))}this.moved&&this.scroller._execEvent("scrollEnd")}},transitionTime:function(e){e=e||0,this.indicatorStyle[l.style.transitionDuration]=e+"ms",!e&&l.isBadAndroid&&(this.indicatorStyle[l.style.transitionDuration]="0.001s")},transitionTimingFunction:function(e){this.indicatorStyle[l.style.transitionTimingFunction]=e},refresh:function(){this.transitionTime(),this.options.listenX&&!this.options.listenY?this.indicatorStyle.display=this.scroller.hasHorizontalScroll?"block":"none":this.options.listenY&&!this.options.listenX?this.indicatorStyle.display=this.scroller.hasVerticalScroll?"block":"none":this.indicatorStyle.display=this.scroller.hasHorizontalScroll||this.scroller.hasVerticalScroll?"block":"none",this.scroller.hasHorizontalScroll&&this.scroller.hasVerticalScroll?(l.addClass(this.wrapper,"iScrollBothScrollbars"),l.removeClass(this.wrapper,"iScrollLoneScrollbar"),this.options.defaultScrollbars&&this.options.customStyle&&(this.options.listenX?this.wrapper.style.right="8px":this.wrapper.style.bottom="8px")):(l.removeClass(this.wrapper,"iScrollBothScrollbars"),l.addClass(this.wrapper,"iScrollLoneScrollbar"),this.options.defaultScrollbars&&this.options.customStyle&&(this.options.listenX?this.wrapper.style.right="2px":this.wrapper.style.bottom="2px"));this.wrapper.offsetHeight;this.options.listenX&&(this.wrapperWidth=this.wrapper.clientWidth,this.options.resize?(this.indicatorWidth=n.max(n.round(this.wrapperWidth*this.wrapperWidth/(this.scroller.scrollerWidth||this.wrapperWidth||1)),8),this.indicatorStyle.width=this.indicatorWidth+"px"):this.indicatorWidth=this.indicator.clientWidth,this.maxPosX=this.wrapperWidth-this.indicatorWidth,"clip"==this.options.shrink?(this.minBoundaryX=-this.indicatorWidth+8,this.maxBoundaryX=this.wrapperWidth-8):(this.minBoundaryX=0,this.maxBoundaryX=this.maxPosX),this.sizeRatioX=this.options.speedRatioX||this.scroller.maxScrollX&&this.maxPosX/this.scroller.maxScrollX),this.options.listenY&&(this.wrapperHeight=this.wrapper.clientHeight,this.options.resize?(this.indicatorHeight=n.max(n.round(this.wrapperHeight*this.wrapperHeight/(this.scroller.scrollerHeight||this.wrapperHeight||1)),8),this.indicatorStyle.height=this.indicatorHeight+"px"):this.indicatorHeight=this.indicator.clientHeight,this.maxPosY=this.wrapperHeight-this.indicatorHeight,"clip"==this.options.shrink?(this.minBoundaryY=-this.indicatorHeight+8,this.maxBoundaryY=this.wrapperHeight-8):(this.minBoundaryY=0,this.maxBoundaryY=this.maxPosY),this.maxPosY=this.wrapperHeight-this.indicatorHeight,this.sizeRatioY=this.options.speedRatioY||this.scroller.maxScrollY&&this.maxPosY/this.scroller.maxScrollY),this.updatePosition()},updatePosition:function(){var e=this.options.listenX&&n.round(this.sizeRatioX*this.scroller.x)||0,t=this.options.listenY&&n.round(this.sizeRatioY*this.scroller.y)||0;this.options.ignoreBoundaries||(e<this.minBoundaryX?("scale"==this.options.shrink&&(this.width=n.max(this.indicatorWidth+e,8),this.indicatorStyle.width=this.width+"px"),e=this.minBoundaryX):e>this.maxBoundaryX?"scale"==this.options.shrink?(this.width=n.max(this.indicatorWidth-(e-this.maxPosX),8),this.indicatorStyle.width=this.width+"px",e=this.maxPosX+this.indicatorWidth-this.width):e=this.maxBoundaryX:"scale"==this.options.shrink&&this.width!=this.indicatorWidth&&(this.width=this.indicatorWidth,this.indicatorStyle.width=this.width+"px"),t<this.minBoundaryY?("scale"==this.options.shrink&&(this.height=n.max(this.indicatorHeight+3*t,8),this.indicatorStyle.height=this.height+"px"),t=this.minBoundaryY):t>this.maxBoundaryY?"scale"==this.options.shrink?(this.height=n.max(this.indicatorHeight-3*(t-this.maxPosY),8),this.indicatorStyle.height=this.height+"px",t=this.maxPosY+this.indicatorHeight-this.height):t=this.maxBoundaryY:"scale"==this.options.shrink&&this.height!=this.indicatorHeight&&(this.height=this.indicatorHeight,this.indicatorStyle.height=this.height+"px")),this.x=e,this.y=t,this.scroller.options.useTransform?this.indicatorStyle[l.style.transform]="translate("+e+"px,"+t+"px)"+this.scroller.translateZ:(this.indicatorStyle.left=e+"px",this.indicatorStyle.top=t+"px")},_pos:function(e,t){0>e?e=0:e>this.maxPosX&&(e=this.maxPosX),0>t?t=0:t>this.maxPosY&&(t=this.maxPosY),e=this.options.listenX?n.round(e/this.sizeRatioX):this.scroller.x,t=this.options.listenY?n.round(t/this.sizeRatioY):this.scroller.y,this.scroller.scrollTo(e,t)},fade:function(e,t){ +if(!t||this.visible){clearTimeout(this.fadeTimeout),this.fadeTimeout=null;var i=e?250:500,n=e?0:300;e=e?"1":"0",this.wrapperStyle[l.style.transitionDuration]=i+"ms",this.fadeTimeout=setTimeout(function(e){this.wrapperStyle.opacity=e,this.visible=+e}.bind(this,e),n)}}},r.utils=l,"undefined"!=typeof i&&i.exports?i.exports=r:e.IScroll=r}(window,document,Math)}),define("index",[],function(e,t,i){function n(e,t){if(!t||(t=t.replace(s,"-"),!o.getElementById(t))){var i;if(!r||t?(i=o.createElement("style"),t&&(i.id=t),a.appendChild(i)):i=r,i.styleSheet){if(o.getElementsByTagName("style").length>31)throw new Error("Exceed the maximal count of style tags in IE");i.styleSheet.cssText+=e}else i.appendChild(o.createTextNode(e));t||(r=i)}}var r,s=/\W/g,o=document,a=document.getElementsByTagName("head")[0]||document.documentElement;i.exports=n}),define("lazyload",[],function(e,t,i){var n=e("jquery");e("lib/jquery.lazyload"),i.exports=function(e,t){var i,r={effect:"fadeIn",effect_speed:10,placeholder:"data:image/gif;base64,R0lGODlhAQABAJEAAAAAAP///93d3f///yH5BAEAAAMALAAAAAABAAEAAAICVAEAOw==",skip_invisible:!1},s=arguments.length;!function(){switch(s){case 0:i=n("img.lazy");break;case 1:e instanceof n?i=e:(i=n("img.lazy"),n.extend(r,e));break;case 2:i=e,r=n.extend(r,t)}}(),i.lazyload(r)}}),define("lib/jquery.lazyload",[],function(e,t,i){var n=e("jquery");!function(e,t,i,n){var r=e(t);e.fn.lazyload=function(s){function o(){var t=0;l.each(function(){var i=e(this);if(!c.skip_invisible||i.is(":visible"))if(e.abovethetop(this,c)||e.leftofbegin(this,c));else if(e.belowthefold(this,c)||e.rightoffold(this,c)){if(++t>c.failure_limit)return!1}else i.trigger("appear"),t=0})}var a,l=this,c={threshold:0,failure_limit:0,event:"scroll",effect:"show",container:t,data_attribute:"original",skip_invisible:!0,appear:null,load:null,yasPath:"/web/",yasImgDomain:"http://analytics.yhurl.com/yas.gif",placeholder:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC",try_again_css:null};return s&&(n!==s.failurelimit&&(s.failure_limit=s.failurelimit,delete s.failurelimit),n!==s.effectspeed&&(s.effect_speed=s.effectspeed,delete s.effectspeed),e.extend(c,s)),a=c.container===n||c.container===t?r:e(c.container),0===c.event.indexOf("scroll")&&a.bind(c.event,function(){return o()}),this.each(function(){var t=this,i=e(t);t.loaded=!1,i.attr("src")!==n&&i.attr("src")!==!1&&""!==i.attr("src")||i.is("img")&&i.attr("src",c.placeholder),i.one("appear",function(){if(i.timerid&&clearTimeout(i.timerid),!this.loaded){if(c.appear){var n=l.length;c.appear.call(t,n,c)}e("<img />").bind("error abort",function(){i.attr("src",c.placeholder),s({info:"error"})}).bind("load",function(){if(!i.loadtimeout){clearTimeout(i.timerid),i.attr("pfmrpt");var n=i.attr("data-"+c.data_attribute);i.hide(),i.is("img")?i.attr("src",n):i.css("background-image","url('"+n+"')"),i[c.effect](c.effect_speed),t.loaded=!0;var r=e.grep(l,function(e){return!e.loaded});if(l=e(r),c.load){var s=l.length;c.load.call(t,s,c)}}}).attr("src",i.attr("data-"+c.data_attribute)),i.src=i.attr("data-"+c.data_attribute),i.attr("pfmrpt")&&_yas&&_yas.add;var r=function(e){i.loadtimeout=!0,i.attr("pfmrpt")&&_yas&&_yas.add&&e.info,i.attr("src",""),setTimeout(function(){i.attr("src",i.src)},50)},s=function(t){i.loadtimeout=!0,i.attr("pfmrpt")&&_yas&&_yas.add&&t.info;var n=i.width(),s=i.height();if(c.try_again_css)var o=e("<div class="+c.try_again_css+" style='width:"+n+"px;height:"+s+"px;'></div>");else var o=e("<div style='background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC) ;text-align: center;position:relative;width:"+n+"px;height:"+s+"px;background-size:100%;'>加载失败</div>");o.addClass(i.attr("class")),i.replaceWith(o),i.timerid=setTimeout(r,5e3)}}}),0!==c.event.indexOf("scroll")&&i.bind(c.event,function(){t.loaded||i.trigger("appear")})}),r.bind("resize",function(){o()}),/(?:iphone|ipod|ipad).*os 5/gi.test(navigator.appVersion)&&r.bind("pageshow",function(t){t.originalEvent&&t.originalEvent.persisted&&l.each(function(){e(this).trigger("appear")})}),e(i).ready(function(){o()}),this},e.belowthefold=function(i,s){var o;return o=s.container===n||s.container===t?(t.innerHeight?t.innerHeight:r.height())+r.scrollTop():e(s.container).offset().top+e(s.container).height(),o<=e(i).offset().top-s.threshold},e.rightoffold=function(i,s){var o;return o=s.container===n||s.container===t?r.width()+r.scrollLeft():e(s.container).offset().left+e(s.container).width(),o<=e(i).offset().left-s.threshold},e.abovethetop=function(i,s){var o;return o=s.container===n||s.container===t?r.scrollTop():e(s.container).offset().top,o>=e(i).offset().top+s.threshold+e(i).height()},e.leftofbegin=function(i,s){var o;return o=s.container===n||s.container===t?r.scrollLeft():e(s.container).offset().left,o>=e(i).offset().left+s.threshold+e(i).width()},e.inviewport=function(t,i){return!(e.rightoffold(t,i)||e.leftofbegin(t,i)||e.belowthefold(t,i)||e.abovethetop(t,i))}}(n,window,document)}),define("handlebars",[],function(e,t,i){!function(e,n){"object"==typeof t&&"object"==typeof i?i.exports=n():"function"==typeof define&&define.amd?define(n):"object"==typeof t?t.Handlebars=n():e.Handlebars=n()}(this,function(){return function(e){function t(n){if(i[n])return i[n].exports;var r=i[n]={exports:{},id:n,loaded:!1};return e[n].call(r.exports,r,r.exports,t),r.loaded=!0,r.exports}var i={};return t.m=e,t.c=i,t.p="",t(0)}([function(e,t,i){"use strict";function n(){var e=v();return e.compile=function(t,i){return u.compile(t,i,e)},e.precompile=function(t,i){return u.precompile(t,i,e)},e.AST=l["default"],e.Compiler=u.Compiler,e.JavaScriptCompiler=h["default"],e.Parser=c.parser,e.parse=c.parse,e}var r=i(8)["default"];t.__esModule=!0;var s=i(1),o=r(s),a=i(2),l=r(a),c=i(3),u=i(4),p=i(5),h=r(p),d=i(6),f=r(d),m=i(7),g=r(m),v=o["default"].create,y=n();y.create=n,g["default"](y),y.Visitor=f["default"],y["default"]=y,t["default"]=y,e.exports=t["default"]},function(e,t,i){"use strict";function n(){var e=new a.HandlebarsEnvironment;return d.extend(e,a),e.SafeString=c["default"],e.Exception=p["default"],e.Utils=d,e.escapeExpression=d.escapeExpression,e.VM=m,e.template=function(t){return m.template(t,e)},e}var r=i(9)["default"],s=i(8)["default"];t.__esModule=!0;var o=i(10),a=r(o),l=i(11),c=s(l),u=i(12),p=s(u),h=i(13),d=r(h),f=i(14),m=r(f),g=i(7),v=s(g),y=n();y.create=n,v["default"](y),y["default"]=y,t["default"]=y,e.exports=t["default"]},function(e,t,i){"use strict";t.__esModule=!0;var n={Program:function(e,t,i,n){this.loc=n,this.type="Program",this.body=e,this.blockParams=t,this.strip=i},MustacheStatement:function(e,t,i,n,r,s){this.loc=s,this.type="MustacheStatement",this.path=e,this.params=t||[],this.hash=i,this.escaped=n,this.strip=r},BlockStatement:function(e,t,i,n,r,s,o,a,l){this.loc=l,this.type="BlockStatement",this.path=e,this.params=t||[],this.hash=i,this.program=n,this.inverse=r,this.openStrip=s,this.inverseStrip=o,this.closeStrip=a},PartialStatement:function(e,t,i,n,r){this.loc=r,this.type="PartialStatement",this.name=e,this.params=t||[],this.hash=i,this.indent="",this.strip=n},ContentStatement:function(e,t){this.loc=t,this.type="ContentStatement",this.original=this.value=e},CommentStatement:function(e,t,i){this.loc=i,this.type="CommentStatement",this.value=e,this.strip=t},SubExpression:function(e,t,i,n){this.loc=n,this.type="SubExpression",this.path=e,this.params=t||[],this.hash=i},PathExpression:function(e,t,i,n,r){this.loc=r,this.type="PathExpression",this.data=e,this.original=n,this.parts=i,this.depth=t},StringLiteral:function(e,t){this.loc=t,this.type="StringLiteral",this.original=this.value=e},NumberLiteral:function(e,t){this.loc=t,this.type="NumberLiteral",this.original=this.value=Number(e)},BooleanLiteral:function(e,t){this.loc=t,this.type="BooleanLiteral",this.original=this.value="true"===e},UndefinedLiteral:function(e){this.loc=e,this.type="UndefinedLiteral",this.original=this.value=void 0},NullLiteral:function(e){this.loc=e,this.type="NullLiteral",this.original=this.value=null},Hash:function(e,t){this.loc=t,this.type="Hash",this.pairs=e},HashPair:function(e,t,i){this.loc=i,this.type="HashPair",this.key=e,this.value=t},helpers:{helperExpression:function(e){return!("SubExpression"!==e.type&&!e.params.length&&!e.hash)},scopedId:function(e){return/^\.|this\b/.test(e.original)},simpleId:function(e){return 1===e.parts.length&&!n.helpers.scopedId(e)&&!e.depth}}};t["default"]=n,e.exports=t["default"]},function(e,t,i){"use strict";function n(e,t){if("Program"===e.type)return e;a["default"].yy=m,m.locInfo=function(e){return new m.SourceLocation(t&&t.srcName,e)};var i=new p["default"];return i.accept(a["default"].parse(e))}var r=i(8)["default"],s=i(9)["default"];t.__esModule=!0,t.parse=n;var o=i(15),a=r(o),l=i(2),c=r(l),u=i(16),p=r(u),h=i(17),d=s(h),f=i(13);t.parser=a["default"];var m={};f.extend(m,d,c["default"])},function(e,t,i){"use strict";function n(){}function r(e,t,i){if(null==e||"string"!=typeof e&&"Program"!==e.type)throw new u["default"]("You must pass a string or Handlebars AST to Handlebars.precompile. You passed "+e);t=t||{},"data"in t||(t.data=!0),t.compat&&(t.useDepths=!0);var n=i.parse(e,t),r=(new i.Compiler).compile(n,t);return(new i.JavaScriptCompiler).compile(r,t)}function s(e,t,i){function n(){var t=i.parse(e,s),n=(new i.Compiler).compile(t,s),r=(new i.JavaScriptCompiler).compile(n,s,void 0,!0);return i.template(r)}function r(e,t){return o||(o=n()),o.call(this,e,t)}var s=void 0===arguments[1]?{}:arguments[1];if(null==e||"string"!=typeof e&&"Program"!==e.type)throw new u["default"]("You must pass a string or Handlebars AST to Handlebars.compile. You passed "+e);"data"in s||(s.data=!0),s.compat&&(s.useDepths=!0);var o=void 0;return r._setup=function(e){return o||(o=n()),o._setup(e)},r._child=function(e,t,i,r){return o||(o=n()),o._child(e,t,i,r)},r}function o(e,t){if(e===t)return!0;if(p.isArray(e)&&p.isArray(t)&&e.length===t.length){for(var i=0;i<e.length;i++)if(!o(e[i],t[i]))return!1;return!0}}function a(e){if(!e.path.parts){var t=e.path;e.path=new d["default"].PathExpression(!1,0,[t.original+""],t.original+"",t.loc)}}var l=i(8)["default"];t.__esModule=!0,t.Compiler=n,t.precompile=r,t.compile=s;var c=i(12),u=l(c),p=i(13),h=i(2),d=l(h),f=[].slice;n.prototype={compiler:n,equals:function(e){var t=this.opcodes.length;if(e.opcodes.length!==t)return!1;for(var i=0;t>i;i++){var n=this.opcodes[i],r=e.opcodes[i];if(n.opcode!==r.opcode||!o(n.args,r.args))return!1}t=this.children.length;for(var i=0;t>i;i++)if(!this.children[i].equals(e.children[i]))return!1;return!0},guid:0,compile:function(e,t){this.sourceNode=[],this.opcodes=[],this.children=[],this.options=t,this.stringParams=t.stringParams,this.trackIds=t.trackIds,t.blockParams=t.blockParams||[];var i=t.knownHelpers;if(t.knownHelpers={helperMissing:!0,blockHelperMissing:!0,each:!0,"if":!0,unless:!0,"with":!0,log:!0,lookup:!0},i)for(var n in i)n in i&&(t.knownHelpers[n]=i[n]);return this.accept(e)},compileProgram:function(e){var t=new this.compiler,i=t.compile(e,this.options),n=this.guid++;return this.usePartial=this.usePartial||i.usePartial,this.children[n]=i,this.useDepths=this.useDepths||i.useDepths,n},accept:function(e){this.sourceNode.unshift(e);var t=this[e.type](e);return this.sourceNode.shift(),t},Program:function(e){this.options.blockParams.unshift(e.blockParams);for(var t=e.body,i=t.length,n=0;i>n;n++)this.accept(t[n]);return this.options.blockParams.shift(),this.isSimple=1===i,this.blockParams=e.blockParams?e.blockParams.length:0,this},BlockStatement:function(e){a(e);var t=e.program,i=e.inverse;t=t&&this.compileProgram(t),i=i&&this.compileProgram(i);var n=this.classifySexpr(e);"helper"===n?this.helperSexpr(e,t,i):"simple"===n?(this.simpleSexpr(e),this.opcode("pushProgram",t),this.opcode("pushProgram",i),this.opcode("emptyHash"),this.opcode("blockValue",e.path.original)):(this.ambiguousSexpr(e,t,i),this.opcode("pushProgram",t),this.opcode("pushProgram",i),this.opcode("emptyHash"),this.opcode("ambiguousBlockValue")),this.opcode("append")},PartialStatement:function(e){this.usePartial=!0;var t=e.params;if(t.length>1)throw new u["default"]("Unsupported number of partial arguments: "+t.length,e);t.length||t.push({type:"PathExpression",parts:[],depth:0});var i=e.name.original,n="SubExpression"===e.name.type;n&&this.accept(e.name),this.setupFullMustacheParams(e,void 0,void 0,!0);var r=e.indent||"";this.options.preventIndent&&r&&(this.opcode("appendContent",r),r=""),this.opcode("invokePartial",n,i,r),this.opcode("append")},MustacheStatement:function(e){this.SubExpression(e),e.escaped&&!this.options.noEscape?this.opcode("appendEscaped"):this.opcode("append")},ContentStatement:function(e){e.value&&this.opcode("appendContent",e.value)},CommentStatement:function(){},SubExpression:function(e){a(e);var t=this.classifySexpr(e);"simple"===t?this.simpleSexpr(e):"helper"===t?this.helperSexpr(e):this.ambiguousSexpr(e)},ambiguousSexpr:function(e,t,i){var n=e.path,r=n.parts[0],s=null!=t||null!=i;this.opcode("getContext",n.depth),this.opcode("pushProgram",t),this.opcode("pushProgram",i),this.accept(n),this.opcode("invokeAmbiguous",r,s)},simpleSexpr:function(e){this.accept(e.path),this.opcode("resolvePossibleLambda")},helperSexpr:function(e,t,i){var n=this.setupFullMustacheParams(e,t,i),r=e.path,s=r.parts[0];if(this.options.knownHelpers[s])this.opcode("invokeKnownHelper",n.length,s);else{if(this.options.knownHelpersOnly)throw new u["default"]("You specified knownHelpersOnly, but used the unknown helper "+s,e);r.falsy=!0,this.accept(r),this.opcode("invokeHelper",n.length,r.original,d["default"].helpers.simpleId(r))}},PathExpression:function(e){this.addDepth(e.depth),this.opcode("getContext",e.depth);var t=e.parts[0],i=d["default"].helpers.scopedId(e),n=!e.depth&&!i&&this.blockParamIndex(t);n?this.opcode("lookupBlockParam",n,e.parts):t?e.data?(this.options.data=!0,this.opcode("lookupData",e.depth,e.parts)):this.opcode("lookupOnContext",e.parts,e.falsy,i):this.opcode("pushContext")},StringLiteral:function(e){this.opcode("pushString",e.value)},NumberLiteral:function(e){this.opcode("pushLiteral",e.value)},BooleanLiteral:function(e){this.opcode("pushLiteral",e.value)},UndefinedLiteral:function(){this.opcode("pushLiteral","undefined")},NullLiteral:function(){this.opcode("pushLiteral","null")},Hash:function(e){var t=e.pairs,i=0,n=t.length;for(this.opcode("pushHash");n>i;i++)this.pushParam(t[i].value);for(;i--;)this.opcode("assignToHash",t[i].key);this.opcode("popHash")},opcode:function(e){this.opcodes.push({opcode:e,args:f.call(arguments,1),loc:this.sourceNode[0].loc})},addDepth:function(e){e&&(this.useDepths=!0)},classifySexpr:function(e){var t=d["default"].helpers.simpleId(e.path),i=t&&!!this.blockParamIndex(e.path.parts[0]),n=!i&&d["default"].helpers.helperExpression(e),r=!i&&(n||t);if(r&&!n){var s=e.path.parts[0],o=this.options;o.knownHelpers[s]?n=!0:o.knownHelpersOnly&&(r=!1)}return n?"helper":r?"ambiguous":"simple"},pushParams:function(e){for(var t=0,i=e.length;i>t;t++)this.pushParam(e[t])},pushParam:function(e){var t=null!=e.value?e.value:e.original||"";if(this.stringParams)t.replace&&(t=t.replace(/^(\.?\.\/)*/g,"").replace(/\//g,".")),e.depth&&this.addDepth(e.depth),this.opcode("getContext",e.depth||0),this.opcode("pushStringParam",t,e.type),"SubExpression"===e.type&&this.accept(e);else{if(this.trackIds){var i=void 0;if(!e.parts||d["default"].helpers.scopedId(e)||e.depth||(i=this.blockParamIndex(e.parts[0])),i){var n=e.parts.slice(1).join(".");this.opcode("pushId","BlockParam",i,n)}else t=e.original||t,t.replace&&(t=t.replace(/^\.\//g,"").replace(/^\.$/g,"")),this.opcode("pushId",e.type,t)}this.accept(e)}},setupFullMustacheParams:function(e,t,i,n){var r=e.params;return this.pushParams(r),this.opcode("pushProgram",t),this.opcode("pushProgram",i),e.hash?this.accept(e.hash):this.opcode("emptyHash",n),r},blockParamIndex:function(e){for(var t=0,i=this.options.blockParams.length;i>t;t++){var n=this.options.blockParams[t],r=n&&p.indexOf(n,e);if(n&&r>=0)return[t,r]}}}},function(e,t,i){"use strict";function n(e){this.value=e}function r(){}function s(e,t,i,n){var r=t.popStack(),s=0,o=i.length;for(e&&o--;o>s;s++)r=t.nameLookup(r,i[s],n);return e?[t.aliasable("this.strict"),"(",r,", ",t.quotedString(i[s]),")"]:r}var o=i(8)["default"];t.__esModule=!0;var a=i(10),l=i(12),c=o(l),u=i(13),p=i(18),h=o(p);r.prototype={nameLookup:function(e,t){return r.isValidJavaScriptVariableName(t)?[e,".",t]:[e,"['",t,"']"]},depthedLookup:function(e){return[this.aliasable("this.lookup"),'(depths, "',e,'")']},compilerInfo:function(){var e=a.COMPILER_REVISION,t=a.REVISION_CHANGES[e];return[e,t]},appendToBuffer:function(e,t,i){return u.isArray(e)||(e=[e]),e=this.source.wrap(e,t),this.environment.isSimple?["return ",e,";"]:i?["buffer += ",e,";"]:(e.appendToBuffer=!0,e)},initializeBuffer:function(){return this.quotedString("")},compile:function(e,t,i,n){this.environment=e,this.options=t,this.stringParams=this.options.stringParams,this.trackIds=this.options.trackIds,this.precompile=!n,this.name=this.environment.name,this.isChild=!!i,this.context=i||{programs:[],environments:[]},this.preamble(),this.stackSlot=0,this.stackVars=[],this.aliases={},this.registers={list:[]},this.hashes=[],this.compileStack=[],this.inlineStack=[],this.blockParams=[],this.compileChildren(e,t),this.useDepths=this.useDepths||e.useDepths||this.options.compat,this.useBlockParams=this.useBlockParams||e.useBlockParams;var r=e.opcodes,s=void 0,o=void 0,a=void 0,l=void 0;for(a=0,l=r.length;l>a;a++)s=r[a],this.source.currentLocation=s.loc,o=o||s.loc,this[s.opcode].apply(this,s.args);if(this.source.currentLocation=o,this.pushSource(""),this.stackSlot||this.inlineStack.length||this.compileStack.length)throw new c["default"]("Compile completed with content left on stack");var u=this.createFunctionContext(n);if(this.isChild)return u;var p={compiler:this.compilerInfo(),main:u},h=this.context.programs;for(a=0,l=h.length;l>a;a++)h[a]&&(p[a]=h[a]);return this.environment.usePartial&&(p.usePartial=!0),this.options.data&&(p.useData=!0),this.useDepths&&(p.useDepths=!0),this.useBlockParams&&(p.useBlockParams=!0),this.options.compat&&(p.compat=!0),n?p.compilerOptions=this.options:(p.compiler=JSON.stringify(p.compiler),this.source.currentLocation={start:{line:1,column:0}},p=this.objectLiteral(p),t.srcName?(p=p.toStringWithSourceMap({file:t.destName}),p.map=p.map&&p.map.toString()):p=p.toString()),p},preamble:function(){this.lastContext=0,this.source=new h["default"](this.options.srcName)},createFunctionContext:function(e){var t="",i=this.stackVars.concat(this.registers.list);i.length>0&&(t+=", "+i.join(", "));var n=0;for(var r in this.aliases){var s=this.aliases[r];this.aliases.hasOwnProperty(r)&&s.children&&s.referenceCount>1&&(t+=", alias"+ ++n+"="+r,s.children[0]="alias"+n)}var o=["depth0","helpers","partials","data"];(this.useBlockParams||this.useDepths)&&o.push("blockParams"),this.useDepths&&o.push("depths");var a=this.mergeSource(t);return e?(o.push(a),Function.apply(this,o)):this.source.wrap(["function(",o.join(","),") {\n ",a,"}"])},mergeSource:function(e){var t=this.environment.isSimple,i=!this.forceBuffer,n=void 0,r=void 0,s=void 0,o=void 0;return this.source.each(function(e){e.appendToBuffer?(s?e.prepend(" + "):s=e,o=e):(s&&(r?s.prepend("buffer += "):n=!0,o.add(";"),s=o=void 0),r=!0,t||(i=!1))}),i?s?(s.prepend("return "),o.add(";")):r||this.source.push('return "";'):(e+=", buffer = "+(n?"":this.initializeBuffer()),s?(s.prepend("return buffer + "),o.add(";")):this.source.push("return buffer;")),e&&this.source.prepend("var "+e.substring(2)+(n?"":";\n")),this.source.merge()},blockValue:function(e){var t=this.aliasable("helpers.blockHelperMissing"),i=[this.contextName(0)];this.setupHelperArgs(e,0,i);var n=this.popStack();i.splice(1,0,n),this.push(this.source.functionCall(t,"call",i))},ambiguousBlockValue:function(){var e=this.aliasable("helpers.blockHelperMissing"),t=[this.contextName(0)];this.setupHelperArgs("",0,t,!0),this.flushInline();var i=this.topStack();t.splice(1,0,i),this.pushSource(["if (!",this.lastHelper,") { ",i," = ",this.source.functionCall(e,"call",t),"}"])},appendContent:function(e){this.pendingContent?e=this.pendingContent+e:this.pendingLocation=this.source.currentLocation,this.pendingContent=e},append:function(){if(this.isInline())this.replaceStack(function(e){return[" != null ? ",e,' : ""']}),this.pushSource(this.appendToBuffer(this.popStack()));else{var e=this.popStack();this.pushSource(["if (",e," != null) { ",this.appendToBuffer(e,void 0,!0)," }"]),this.environment.isSimple&&this.pushSource(["else { ",this.appendToBuffer("''",void 0,!0)," }"])}},appendEscaped:function(){this.pushSource(this.appendToBuffer([this.aliasable("this.escapeExpression"),"(",this.popStack(),")"]))},getContext:function(e){this.lastContext=e},pushContext:function(){this.pushStackLiteral(this.contextName(this.lastContext))},lookupOnContext:function(e,t,i){var n=0;i||!this.options.compat||this.lastContext?this.pushContext():this.push(this.depthedLookup(e[n++])),this.resolvePath("context",e,n,t)},lookupBlockParam:function(e,t){this.useBlockParams=!0,this.push(["blockParams[",e[0],"][",e[1],"]"]),this.resolvePath("context",t,1)},lookupData:function(e,t){e?this.pushStackLiteral("this.data(data, "+e+")"):this.pushStackLiteral("data"),this.resolvePath("data",t,0,!0)},resolvePath:function(e,t,i,n){var r=this;if(this.options.strict||this.options.assumeObjects)return void this.push(s(this.options.strict,this,t,e));for(var o=t.length;o>i;i++)this.replaceStack(function(s){var o=r.nameLookup(s,t[i],e);return n?[" && ",o]:[" != null ? ",o," : ",s]})},resolvePossibleLambda:function(){this.push([this.aliasable("this.lambda"),"(",this.popStack(),", ",this.contextName(0),")"])},pushStringParam:function(e,t){this.pushContext(),this.pushString(t),"SubExpression"!==t&&("string"==typeof e?this.pushString(e):this.pushStackLiteral(e))},emptyHash:function(e){this.trackIds&&this.push("{}"),this.stringParams&&(this.push("{}"),this.push("{}")),this.pushStackLiteral(e?"undefined":"{}")},pushHash:function(){this.hash&&this.hashes.push(this.hash),this.hash={values:[],types:[],contexts:[],ids:[]}},popHash:function(){var e=this.hash;this.hash=this.hashes.pop(),this.trackIds&&this.push(this.objectLiteral(e.ids)),this.stringParams&&(this.push(this.objectLiteral(e.contexts)),this.push(this.objectLiteral(e.types))),this.push(this.objectLiteral(e.values))},pushString:function(e){this.pushStackLiteral(this.quotedString(e))},pushLiteral:function(e){this.pushStackLiteral(e)},pushProgram:function(e){null!=e?this.pushStackLiteral(this.programExpression(e)):this.pushStackLiteral(null)},invokeHelper:function(e,t,i){var n=this.popStack(),r=this.setupHelper(e,t),s=i?[r.name," || "]:"",o=["("].concat(s,n);this.options.strict||o.push(" || ",this.aliasable("helpers.helperMissing")),o.push(")"),this.push(this.source.functionCall(o,"call",r.callParams))},invokeKnownHelper:function(e,t){var i=this.setupHelper(e,t);this.push(this.source.functionCall(i.name,"call",i.callParams))},invokeAmbiguous:function(e,t){this.useRegister("helper");var i=this.popStack();this.emptyHash();var n=this.setupHelper(0,e,t),r=this.lastHelper=this.nameLookup("helpers",e,"helper"),s=["(","(helper = ",r," || ",i,")"];this.options.strict||(s[0]="(helper = ",s.push(" != null ? helper : ",this.aliasable("helpers.helperMissing"))),this.push(["(",s,n.paramsInit?["),(",n.paramsInit]:[],"),","(typeof helper === ",this.aliasable('"function"')," ? ",this.source.functionCall("helper","call",n.callParams)," : helper))"])},invokePartial:function(e,t,i){var n=[],r=this.setupParams(t,1,n,!1);e&&(t=this.popStack(),delete r.name),i&&(r.indent=JSON.stringify(i)),r.helpers="helpers",r.partials="partials",e?n.unshift(t):n.unshift(this.nameLookup("partials",t,"partial")),this.options.compat&&(r.depths="depths"),r=this.objectLiteral(r),n.push(r),this.push(this.source.functionCall("this.invokePartial","",n))},assignToHash:function(e){var t=this.popStack(),i=void 0,n=void 0,r=void 0;this.trackIds&&(r=this.popStack()),this.stringParams&&(n=this.popStack(),i=this.popStack());var s=this.hash;i&&(s.contexts[e]=i),n&&(s.types[e]=n),r&&(s.ids[e]=r),s.values[e]=t},pushId:function(e,t,i){"BlockParam"===e?this.pushStackLiteral("blockParams["+t[0]+"].path["+t[1]+"]"+(i?" + "+JSON.stringify("."+i):"")):"PathExpression"===e?this.pushString(t):"SubExpression"===e?this.pushStackLiteral("true"):this.pushStackLiteral("null")},compiler:r,compileChildren:function(e,t){for(var i=e.children,n=void 0,r=void 0,s=0,o=i.length;o>s;s++){n=i[s],r=new this.compiler;var a=this.matchExistingProgram(n);null==a?(this.context.programs.push(""),a=this.context.programs.length,n.index=a,n.name="program"+a,this.context.programs[a]=r.compile(n,t,this.context,!this.precompile),this.context.environments[a]=n,this.useDepths=this.useDepths||r.useDepths,this.useBlockParams=this.useBlockParams||r.useBlockParams):(n.index=a,n.name="program"+a,this.useDepths=this.useDepths||n.useDepths,this.useBlockParams=this.useBlockParams||n.useBlockParams)}},matchExistingProgram:function(e){for(var t=0,i=this.context.environments.length;i>t;t++){var n=this.context.environments[t];if(n&&n.equals(e))return t}},programExpression:function(e){var t=this.environment.children[e],i=[t.index,"data",t.blockParams];return(this.useBlockParams||this.useDepths)&&i.push("blockParams"),this.useDepths&&i.push("depths"),"this.program("+i.join(", ")+")"},useRegister:function(e){this.registers[e]||(this.registers[e]=!0,this.registers.list.push(e))},push:function(e){return e instanceof n||(e=this.source.wrap(e)),this.inlineStack.push(e),e},pushStackLiteral:function(e){this.push(new n(e))},pushSource:function(e){this.pendingContent&&(this.source.push(this.appendToBuffer(this.source.quotedString(this.pendingContent),this.pendingLocation)),this.pendingContent=void 0),e&&this.source.push(e)},replaceStack:function(e){var t=["("],i=void 0,r=void 0,s=void 0;if(!this.isInline())throw new c["default"]("replaceStack on non-inline");var o=this.popStack(!0);if(o instanceof n)i=[o.value],t=["(",i],s=!0;else{r=!0;var a=this.incrStack();t=["((",this.push(a)," = ",o,")"],i=this.topStack()}var l=e.call(this,i);s||this.popStack(),r&&this.stackSlot--,this.push(t.concat(l,")"))},incrStack:function(){return this.stackSlot++,this.stackSlot>this.stackVars.length&&this.stackVars.push("stack"+this.stackSlot),this.topStackName()},topStackName:function(){return"stack"+this.stackSlot},flushInline:function(){var e=this.inlineStack;this.inlineStack=[];for(var t=0,i=e.length;i>t;t++){var r=e[t];if(r instanceof n)this.compileStack.push(r);else{var s=this.incrStack();this.pushSource([s," = ",r,";"]),this.compileStack.push(s)}}},isInline:function(){return this.inlineStack.length},popStack:function(e){var t=this.isInline(),i=(t?this.inlineStack:this.compileStack).pop();if(!e&&i instanceof n)return i.value;if(!t){if(!this.stackSlot)throw new c["default"]("Invalid stack pop");this.stackSlot--}return i},topStack:function(){var e=this.isInline()?this.inlineStack:this.compileStack,t=e[e.length-1];return t instanceof n?t.value:t},contextName:function(e){return this.useDepths&&e?"depths["+e+"]":"depth"+e},quotedString:function(e){return this.source.quotedString(e)},objectLiteral:function(e){return this.source.objectLiteral(e)},aliasable:function(e){var t=this.aliases[e];return t?(t.referenceCount++,t):(t=this.aliases[e]=this.source.wrap(e),t.aliasable=!0,t.referenceCount=1,t)},setupHelper:function(e,t,i){var n=[],r=this.setupHelperArgs(t,e,n,i),s=this.nameLookup("helpers",t,"helper");return{params:n,paramsInit:r,name:s,callParams:[this.contextName(0)].concat(n)}},setupParams:function(e,t,i){var n={},r=[],s=[],o=[],a=void 0;n.name=this.quotedString(e),n.hash=this.popStack(),this.trackIds&&(n.hashIds=this.popStack()),this.stringParams&&(n.hashTypes=this.popStack(),n.hashContexts=this.popStack());var l=this.popStack(),c=this.popStack();(c||l)&&(n.fn=c||"this.noop",n.inverse=l||"this.noop");for(var u=t;u--;)a=this.popStack(),i[u]=a,this.trackIds&&(o[u]=this.popStack()),this.stringParams&&(s[u]=this.popStack(),r[u]=this.popStack());return this.trackIds&&(n.ids=this.source.generateArray(o)),this.stringParams&&(n.types=this.source.generateArray(s),n.contexts=this.source.generateArray(r)),this.options.data&&(n.data="data"),this.useBlockParams&&(n.blockParams="blockParams"),n},setupHelperArgs:function(e,t,i,n){var r=this.setupParams(e,t,i,!0);return r=this.objectLiteral(r),n?(this.useRegister("options"),i.push("options"),["options=",r]):(i.push(r),"")}},function(){for(var e="break else new var case finally return void catch for switch while continue function this with default if throw delete in try do instanceof typeof abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public let yield await null true false".split(" "),t=r.RESERVED_WORDS={},i=0,n=e.length;n>i;i++)t[e[i]]=!0}(),r.isValidJavaScriptVariableName=function(e){return!r.RESERVED_WORDS[e]&&/^[a-zA-Z_$][0-9a-zA-Z_$]*$/.test(e)},t["default"]=r,e.exports=t["default"]},function(e,t,i){"use strict";function n(){this.parents=[]}var r=i(8)["default"];t.__esModule=!0;var s=i(12),o=r(s),a=i(2),l=r(a);n.prototype={constructor:n,mutating:!1,acceptKey:function(e,t){var i=this.accept(e[t]);if(this.mutating){if(i&&(!i.type||!l["default"][i.type]))throw new o["default"]('Unexpected node type "'+i.type+'" found when accepting '+t+" on "+e.type);e[t]=i}},acceptRequired:function(e,t){if(this.acceptKey(e,t),!e[t])throw new o["default"](e.type+" requires "+t)},acceptArray:function(e){for(var t=0,i=e.length;i>t;t++)this.acceptKey(e,t),e[t]||(e.splice(t,1),t--,i--)},accept:function(e){if(e){this.current&&this.parents.unshift(this.current),this.current=e;var t=this[e.type](e);return this.current=this.parents.shift(),!this.mutating||t?t:t!==!1?e:void 0}},Program:function(e){this.acceptArray(e.body)},MustacheStatement:function(e){this.acceptRequired(e,"path"),this.acceptArray(e.params),this.acceptKey(e,"hash")},BlockStatement:function(e){this.acceptRequired(e,"path"),this.acceptArray(e.params),this.acceptKey(e,"hash"),this.acceptKey(e,"program"),this.acceptKey(e,"inverse")},PartialStatement:function(e){this.acceptRequired(e,"name"),this.acceptArray(e.params),this.acceptKey(e,"hash")},ContentStatement:function(){},CommentStatement:function(){},SubExpression:function(e){this.acceptRequired(e,"path"),this.acceptArray(e.params),this.acceptKey(e,"hash")},PathExpression:function(){},StringLiteral:function(){},NumberLiteral:function(){},BooleanLiteral:function(){},UndefinedLiteral:function(){},NullLiteral:function(){},Hash:function(e){this.acceptArray(e.pairs)},HashPair:function(e){this.acceptRequired(e,"value")}},t["default"]=n,e.exports=t["default"]},function(e,t,i){(function(i){"use strict";t.__esModule=!0,t["default"]=function(e){var t="undefined"!=typeof i?i:window,n=t.Handlebars;e.noConflict=function(){t.Handlebars===e&&(t.Handlebars=n)}},e.exports=t["default"]}).call(t,function(){return this}())},function(e,t,i){"use strict";t["default"]=function(e){return e&&e.__esModule?e:{"default":e}},t.__esModule=!0},function(e,t,i){"use strict";t["default"]=function(e){if(e&&e.__esModule)return e;var t={};if("object"==typeof e&&null!==e)for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i]);return t["default"]=e,t},t.__esModule=!0},function(e,t,i){"use strict";function n(e,t){this.helpers=e||{},this.partials=t||{},r(this)}function r(e){e.registerHelper("helperMissing",function(){if(1!==arguments.length)throw new p["default"]('Missing helper: "'+arguments[arguments.length-1].name+'"')}),e.registerHelper("blockHelperMissing",function(t,i){ +var n=i.inverse,r=i.fn;if(t===!0)return r(this);if(t===!1||null==t)return n(this);if(m(t))return t.length>0?(i.ids&&(i.ids=[i.name]),e.helpers.each(t,i)):n(this);if(i.data&&i.ids){var o=s(i.data);o.contextPath=c.appendContextPath(i.data.contextPath,i.name),i={data:o}}return r(t,i)}),e.registerHelper("each",function(e,t){function i(t,i,r){l&&(l.key=t,l.index=i,l.first=0===i,l.last=!!r,u&&(l.contextPath=u+t)),a+=n(e[t],{data:l,blockParams:c.blockParams([e[t],t],[u+t,null])})}if(!t)throw new p["default"]("Must pass iterator to #each");var n=t.fn,r=t.inverse,o=0,a="",l=void 0,u=void 0;if(t.data&&t.ids&&(u=c.appendContextPath(t.data.contextPath,t.ids[0])+"."),g(e)&&(e=e.call(this)),t.data&&(l=s(t.data)),e&&"object"==typeof e)if(m(e))for(var h=e.length;h>o;o++)i(o,o,o===e.length-1);else{var d=void 0;for(var f in e)e.hasOwnProperty(f)&&(d&&i(d,o-1),d=f,o++);d&&i(d,o-1,!0)}return 0===o&&(a=r(this)),a}),e.registerHelper("if",function(e,t){return g(e)&&(e=e.call(this)),!t.hash.includeZero&&!e||c.isEmpty(e)?t.inverse(this):t.fn(this)}),e.registerHelper("unless",function(t,i){return e.helpers["if"].call(this,t,{fn:i.inverse,inverse:i.fn,hash:i.hash})}),e.registerHelper("with",function(e,t){g(e)&&(e=e.call(this));var i=t.fn;if(c.isEmpty(e))return t.inverse(this);if(t.data&&t.ids){var n=s(t.data);n.contextPath=c.appendContextPath(t.data.contextPath,t.ids[0]),t={data:n}}return i(e,t)}),e.registerHelper("log",function(t,i){var n=i.data&&null!=i.data.level?parseInt(i.data.level,10):1;e.log(n,t)}),e.registerHelper("lookup",function(e,t){return e&&e[t]})}function s(e){var t=c.extend({},e);return t._parent=e,t}var o=i(9)["default"],a=i(8)["default"];t.__esModule=!0,t.HandlebarsEnvironment=n,t.createFrame=s;var l=i(13),c=o(l),u=i(12),p=a(u),h="3.0.1";t.VERSION=h;var d=6;t.COMPILER_REVISION=d;var f={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1"};t.REVISION_CHANGES=f;var m=c.isArray,g=c.isFunction,v=c.toString,y="[object Object]";n.prototype={constructor:n,logger:w,log:b,registerHelper:function(e,t){if(v.call(e)===y){if(t)throw new p["default"]("Arg not supported with multiple helpers");c.extend(this.helpers,e)}else this.helpers[e]=t},unregisterHelper:function(e){delete this.helpers[e]},registerPartial:function(e,t){if(v.call(e)===y)c.extend(this.partials,e);else{if("undefined"==typeof t)throw new p["default"]("Attempting to register a partial as undefined");this.partials[e]=t}},unregisterPartial:function(e){delete this.partials[e]}};var w={methodMap:{0:"debug",1:"info",2:"warn",3:"error"},DEBUG:0,INFO:1,WARN:2,ERROR:3,level:1,log:function(e,t){if("undefined"!=typeof console&&w.level<=e){var i=w.methodMap[e];(console[i]||console.log).call(console,t)}}};t.logger=w;var b=w.log;t.log=b},function(e,t,i){"use strict";function n(e){this.string=e}t.__esModule=!0,n.prototype.toString=n.prototype.toHTML=function(){return""+this.string},t["default"]=n,e.exports=t["default"]},function(e,t,i){"use strict";function n(e,t){var i=t&&t.loc,s=void 0,o=void 0;i&&(s=i.start.line,o=i.start.column,e+=" - "+s+":"+o);for(var a=Error.prototype.constructor.call(this,e),l=0;l<r.length;l++)this[r[l]]=a[r[l]];Error.captureStackTrace&&Error.captureStackTrace(this,n),i&&(this.lineNumber=s,this.column=o)}t.__esModule=!0;var r=["description","fileName","lineNumber","message","name","number","stack"];n.prototype=new Error,t["default"]=n,e.exports=t["default"]},function(e,t,i){"use strict";function n(e){return u[e]}function r(e){for(var t=1;t<arguments.length;t++)for(var i in arguments[t])Object.prototype.hasOwnProperty.call(arguments[t],i)&&(e[i]=arguments[t][i]);return e}function s(e,t){for(var i=0,n=e.length;n>i;i++)if(e[i]===t)return i;return-1}function o(e){if("string"!=typeof e){if(e&&e.toHTML)return e.toHTML();if(null==e)return"";if(!e)return e+"";e=""+e}return h.test(e)?e.replace(p,n):e}function a(e){return e||0===e?!(!m(e)||0!==e.length):!0}function l(e,t){return e.path=t,e}function c(e,t){return(e?e+".":"")+t}t.__esModule=!0,t.extend=r,t.indexOf=s,t.escapeExpression=o,t.isEmpty=a,t.blockParams=l,t.appendContextPath=c;var u={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},p=/[&<>"'`]/g,h=/[&<>"'`]/,d=Object.prototype.toString;t.toString=d;var f=function(e){return"function"==typeof e};f(/x/)&&(t.isFunction=f=function(e){return"function"==typeof e&&"[object Function]"===d.call(e)});var f;t.isFunction=f;var m=Array.isArray||function(e){return e&&"object"==typeof e?"[object Array]"===d.call(e):!1};t.isArray=m},function(e,t,i){"use strict";function n(e){var t=e&&e[0]||1,i=g.COMPILER_REVISION;if(t!==i){if(i>t){var n=g.REVISION_CHANGES[i],r=g.REVISION_CHANGES[t];throw new m["default"]("Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version ("+n+") or downgrade your runtime to an older version ("+r+").")}throw new m["default"]("Template was precompiled with a newer version of Handlebars than the current runtime. Please update your runtime to a newer version ("+e[1]+").")}}function r(e,t){function i(i,n,r){r.hash&&(n=d.extend({},n,r.hash)),i=t.VM.resolvePartial.call(this,i,n,r);var s=t.VM.invokePartial.call(this,i,n,r);if(null==s&&t.compile&&(r.partials[r.name]=t.compile(i,e.compilerOptions,t),s=r.partials[r.name](n,r)),null!=s){if(r.indent){for(var o=s.split("\n"),a=0,l=o.length;l>a&&(o[a]||a+1!==l);a++)o[a]=r.indent+o[a];s=o.join("\n")}return s}throw new m["default"]("The partial "+r.name+" could not be compiled when running in runtime-only mode")}function n(t){var i=void 0===arguments[1]?{}:arguments[1],s=i.data;n._setup(i),!i.partial&&e.useData&&(s=c(t,s));var o=void 0,a=e.useBlockParams?[]:void 0;return e.useDepths&&(o=i.depths?[t].concat(i.depths):[t]),e.main.call(r,t,r.helpers,r.partials,s,a,o)}if(!t)throw new m["default"]("No environment passed to template");if(!e||!e.main)throw new m["default"]("Unknown template object: "+typeof e);t.VM.checkRevision(e.compiler);var r={strict:function(e,t){if(!(t in e))throw new m["default"]('"'+t+'" not defined in '+e);return e[t]},lookup:function(e,t){for(var i=e.length,n=0;i>n;n++)if(e[n]&&null!=e[n][t])return e[n][t]},lambda:function(e,t){return"function"==typeof e?e.call(t):e},escapeExpression:d.escapeExpression,invokePartial:i,fn:function(t){return e[t]},programs:[],program:function(e,t,i,n,r){var o=this.programs[e],a=this.fn(e);return t||r||n||i?o=s(this,e,a,t,i,n,r):o||(o=this.programs[e]=s(this,e,a)),o},data:function(e,t){for(;e&&t--;)e=e._parent;return e},merge:function(e,t){var i=e||t;return e&&t&&e!==t&&(i=d.extend({},t,e)),i},noop:t.VM.noop,compilerInfo:e.compiler};return n.isTop=!0,n._setup=function(i){i.partial?(r.helpers=i.helpers,r.partials=i.partials):(r.helpers=r.merge(i.helpers,t.helpers),e.usePartial&&(r.partials=r.merge(i.partials,t.partials)))},n._child=function(t,i,n,o){if(e.useBlockParams&&!n)throw new m["default"]("must pass block params");if(e.useDepths&&!o)throw new m["default"]("must pass parent depths");return s(r,t,e[t],i,0,n,o)},n}function s(e,t,i,n,r,s,o){function a(t){var r=void 0===arguments[1]?{}:arguments[1];return i.call(e,t,e.helpers,e.partials,r.data||n,s&&[r.blockParams].concat(s),o&&[t].concat(o))}return a.program=t,a.depth=o?o.length:0,a.blockParams=r||0,a}function o(e,t,i){return e?e.call||i.name||(i.name=e,e=i.partials[e]):e=i.partials[i.name],e}function a(e,t,i){if(i.partial=!0,void 0===e)throw new m["default"]("The partial "+i.name+" could not be found");return e instanceof Function?e(t,i):void 0}function l(){return""}function c(e,t){return t&&"root"in t||(t=t?g.createFrame(t):{},t.root=e),t}var u=i(9)["default"],p=i(8)["default"];t.__esModule=!0,t.checkRevision=n,t.template=r,t.wrapProgram=s,t.resolvePartial=o,t.invokePartial=a,t.noop=l;var h=i(13),d=u(h),f=i(12),m=p(f),g=i(10)},function(e,t,i){"use strict";t.__esModule=!0;var n=function(){function e(){this.yy={}}var t={trace:function(){},yy:{},symbols_:{error:2,root:3,program:4,EOF:5,program_repetition0:6,statement:7,mustache:8,block:9,rawBlock:10,partial:11,content:12,COMMENT:13,CONTENT:14,openRawBlock:15,END_RAW_BLOCK:16,OPEN_RAW_BLOCK:17,helperName:18,openRawBlock_repetition0:19,openRawBlock_option0:20,CLOSE_RAW_BLOCK:21,openBlock:22,block_option0:23,closeBlock:24,openInverse:25,block_option1:26,OPEN_BLOCK:27,openBlock_repetition0:28,openBlock_option0:29,openBlock_option1:30,CLOSE:31,OPEN_INVERSE:32,openInverse_repetition0:33,openInverse_option0:34,openInverse_option1:35,openInverseChain:36,OPEN_INVERSE_CHAIN:37,openInverseChain_repetition0:38,openInverseChain_option0:39,openInverseChain_option1:40,inverseAndProgram:41,INVERSE:42,inverseChain:43,inverseChain_option0:44,OPEN_ENDBLOCK:45,OPEN:46,mustache_repetition0:47,mustache_option0:48,OPEN_UNESCAPED:49,mustache_repetition1:50,mustache_option1:51,CLOSE_UNESCAPED:52,OPEN_PARTIAL:53,partialName:54,partial_repetition0:55,partial_option0:56,param:57,sexpr:58,OPEN_SEXPR:59,sexpr_repetition0:60,sexpr_option0:61,CLOSE_SEXPR:62,hash:63,hash_repetition_plus0:64,hashSegment:65,ID:66,EQUALS:67,blockParams:68,OPEN_BLOCK_PARAMS:69,blockParams_repetition_plus0:70,CLOSE_BLOCK_PARAMS:71,path:72,dataName:73,STRING:74,NUMBER:75,BOOLEAN:76,UNDEFINED:77,NULL:78,DATA:79,pathSegments:80,SEP:81,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",13:"COMMENT",14:"CONTENT",16:"END_RAW_BLOCK",17:"OPEN_RAW_BLOCK",21:"CLOSE_RAW_BLOCK",27:"OPEN_BLOCK",31:"CLOSE",32:"OPEN_INVERSE",37:"OPEN_INVERSE_CHAIN",42:"INVERSE",45:"OPEN_ENDBLOCK",46:"OPEN",49:"OPEN_UNESCAPED",52:"CLOSE_UNESCAPED",53:"OPEN_PARTIAL",59:"OPEN_SEXPR",62:"CLOSE_SEXPR",66:"ID",67:"EQUALS",69:"OPEN_BLOCK_PARAMS",71:"CLOSE_BLOCK_PARAMS",74:"STRING",75:"NUMBER",76:"BOOLEAN",77:"UNDEFINED",78:"NULL",79:"DATA",81:"SEP"},productions_:[0,[3,2],[4,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[12,1],[10,3],[15,5],[9,4],[9,4],[22,6],[25,6],[36,6],[41,2],[43,3],[43,1],[24,3],[8,5],[8,5],[11,5],[57,1],[57,1],[58,5],[63,1],[65,3],[68,3],[18,1],[18,1],[18,1],[18,1],[18,1],[18,1],[18,1],[54,1],[54,1],[73,2],[72,1],[80,3],[80,1],[6,0],[6,2],[19,0],[19,2],[20,0],[20,1],[23,0],[23,1],[26,0],[26,1],[28,0],[28,2],[29,0],[29,1],[30,0],[30,1],[33,0],[33,2],[34,0],[34,1],[35,0],[35,1],[38,0],[38,2],[39,0],[39,1],[40,0],[40,1],[44,0],[44,1],[47,0],[47,2],[48,0],[48,1],[50,0],[50,2],[51,0],[51,1],[55,0],[55,2],[56,0],[56,1],[60,0],[60,2],[61,0],[61,1],[64,1],[64,2],[70,1],[70,2]],performAction:function(e,t,i,n,r,s,o){var a=s.length-1;switch(r){case 1:return s[a-1];case 2:this.$=new n.Program(s[a],null,{},n.locInfo(this._$));break;case 3:this.$=s[a];break;case 4:this.$=s[a];break;case 5:this.$=s[a];break;case 6:this.$=s[a];break;case 7:this.$=s[a];break;case 8:this.$=new n.CommentStatement(n.stripComment(s[a]),n.stripFlags(s[a],s[a]),n.locInfo(this._$));break;case 9:this.$=new n.ContentStatement(s[a],n.locInfo(this._$));break;case 10:this.$=n.prepareRawBlock(s[a-2],s[a-1],s[a],this._$);break;case 11:this.$={path:s[a-3],params:s[a-2],hash:s[a-1]};break;case 12:this.$=n.prepareBlock(s[a-3],s[a-2],s[a-1],s[a],!1,this._$);break;case 13:this.$=n.prepareBlock(s[a-3],s[a-2],s[a-1],s[a],!0,this._$);break;case 14:this.$={path:s[a-4],params:s[a-3],hash:s[a-2],blockParams:s[a-1],strip:n.stripFlags(s[a-5],s[a])};break;case 15:this.$={path:s[a-4],params:s[a-3],hash:s[a-2],blockParams:s[a-1],strip:n.stripFlags(s[a-5],s[a])};break;case 16:this.$={path:s[a-4],params:s[a-3],hash:s[a-2],blockParams:s[a-1],strip:n.stripFlags(s[a-5],s[a])};break;case 17:this.$={strip:n.stripFlags(s[a-1],s[a-1]),program:s[a]};break;case 18:var l=n.prepareBlock(s[a-2],s[a-1],s[a],s[a],!1,this._$),c=new n.Program([l],null,{},n.locInfo(this._$));c.chained=!0,this.$={strip:s[a-2].strip,program:c,chain:!0};break;case 19:this.$=s[a];break;case 20:this.$={path:s[a-1],strip:n.stripFlags(s[a-2],s[a])};break;case 21:this.$=n.prepareMustache(s[a-3],s[a-2],s[a-1],s[a-4],n.stripFlags(s[a-4],s[a]),this._$);break;case 22:this.$=n.prepareMustache(s[a-3],s[a-2],s[a-1],s[a-4],n.stripFlags(s[a-4],s[a]),this._$);break;case 23:this.$=new n.PartialStatement(s[a-3],s[a-2],s[a-1],n.stripFlags(s[a-4],s[a]),n.locInfo(this._$));break;case 24:this.$=s[a];break;case 25:this.$=s[a];break;case 26:this.$=new n.SubExpression(s[a-3],s[a-2],s[a-1],n.locInfo(this._$));break;case 27:this.$=new n.Hash(s[a],n.locInfo(this._$));break;case 28:this.$=new n.HashPair(n.id(s[a-2]),s[a],n.locInfo(this._$));break;case 29:this.$=n.id(s[a-1]);break;case 30:this.$=s[a];break;case 31:this.$=s[a];break;case 32:this.$=new n.StringLiteral(s[a],n.locInfo(this._$));break;case 33:this.$=new n.NumberLiteral(s[a],n.locInfo(this._$));break;case 34:this.$=new n.BooleanLiteral(s[a],n.locInfo(this._$));break;case 35:this.$=new n.UndefinedLiteral(n.locInfo(this._$));break;case 36:this.$=new n.NullLiteral(n.locInfo(this._$));break;case 37:this.$=s[a];break;case 38:this.$=s[a];break;case 39:this.$=n.preparePath(!0,s[a],this._$);break;case 40:this.$=n.preparePath(!1,s[a],this._$);break;case 41:s[a-2].push({part:n.id(s[a]),original:s[a],separator:s[a-1]}),this.$=s[a-2];break;case 42:this.$=[{part:n.id(s[a]),original:s[a]}];break;case 43:this.$=[];break;case 44:s[a-1].push(s[a]);break;case 45:this.$=[];break;case 46:s[a-1].push(s[a]);break;case 53:this.$=[];break;case 54:s[a-1].push(s[a]);break;case 59:this.$=[];break;case 60:s[a-1].push(s[a]);break;case 65:this.$=[];break;case 66:s[a-1].push(s[a]);break;case 73:this.$=[];break;case 74:s[a-1].push(s[a]);break;case 77:this.$=[];break;case 78:s[a-1].push(s[a]);break;case 81:this.$=[];break;case 82:s[a-1].push(s[a]);break;case 85:this.$=[];break;case 86:s[a-1].push(s[a]);break;case 89:this.$=[s[a]];break;case 90:s[a-1].push(s[a]);break;case 91:this.$=[s[a]];break;case 92:s[a-1].push(s[a])}},table:[{3:1,4:2,5:[2,43],6:3,13:[2,43],14:[2,43],17:[2,43],27:[2,43],32:[2,43],46:[2,43],49:[2,43],53:[2,43]},{1:[3]},{5:[1,4]},{5:[2,2],7:5,8:6,9:7,10:8,11:9,12:10,13:[1,11],14:[1,18],15:16,17:[1,21],22:14,25:15,27:[1,19],32:[1,20],37:[2,2],42:[2,2],45:[2,2],46:[1,12],49:[1,13],53:[1,17]},{1:[2,1]},{5:[2,44],13:[2,44],14:[2,44],17:[2,44],27:[2,44],32:[2,44],37:[2,44],42:[2,44],45:[2,44],46:[2,44],49:[2,44],53:[2,44]},{5:[2,3],13:[2,3],14:[2,3],17:[2,3],27:[2,3],32:[2,3],37:[2,3],42:[2,3],45:[2,3],46:[2,3],49:[2,3],53:[2,3]},{5:[2,4],13:[2,4],14:[2,4],17:[2,4],27:[2,4],32:[2,4],37:[2,4],42:[2,4],45:[2,4],46:[2,4],49:[2,4],53:[2,4]},{5:[2,5],13:[2,5],14:[2,5],17:[2,5],27:[2,5],32:[2,5],37:[2,5],42:[2,5],45:[2,5],46:[2,5],49:[2,5],53:[2,5]},{5:[2,6],13:[2,6],14:[2,6],17:[2,6],27:[2,6],32:[2,6],37:[2,6],42:[2,6],45:[2,6],46:[2,6],49:[2,6],53:[2,6]},{5:[2,7],13:[2,7],14:[2,7],17:[2,7],27:[2,7],32:[2,7],37:[2,7],42:[2,7],45:[2,7],46:[2,7],49:[2,7],53:[2,7]},{5:[2,8],13:[2,8],14:[2,8],17:[2,8],27:[2,8],32:[2,8],37:[2,8],42:[2,8],45:[2,8],46:[2,8],49:[2,8],53:[2,8]},{18:22,66:[1,32],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{18:33,66:[1,32],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{4:34,6:3,13:[2,43],14:[2,43],17:[2,43],27:[2,43],32:[2,43],37:[2,43],42:[2,43],45:[2,43],46:[2,43],49:[2,43],53:[2,43]},{4:35,6:3,13:[2,43],14:[2,43],17:[2,43],27:[2,43],32:[2,43],42:[2,43],45:[2,43],46:[2,43],49:[2,43],53:[2,43]},{12:36,14:[1,18]},{18:38,54:37,58:39,59:[1,40],66:[1,32],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{5:[2,9],13:[2,9],14:[2,9],16:[2,9],17:[2,9],27:[2,9],32:[2,9],37:[2,9],42:[2,9],45:[2,9],46:[2,9],49:[2,9],53:[2,9]},{18:41,66:[1,32],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{18:42,66:[1,32],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{18:43,66:[1,32],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{31:[2,73],47:44,59:[2,73],66:[2,73],74:[2,73],75:[2,73],76:[2,73],77:[2,73],78:[2,73],79:[2,73]},{21:[2,30],31:[2,30],52:[2,30],59:[2,30],62:[2,30],66:[2,30],69:[2,30],74:[2,30],75:[2,30],76:[2,30],77:[2,30],78:[2,30],79:[2,30]},{21:[2,31],31:[2,31],52:[2,31],59:[2,31],62:[2,31],66:[2,31],69:[2,31],74:[2,31],75:[2,31],76:[2,31],77:[2,31],78:[2,31],79:[2,31]},{21:[2,32],31:[2,32],52:[2,32],59:[2,32],62:[2,32],66:[2,32],69:[2,32],74:[2,32],75:[2,32],76:[2,32],77:[2,32],78:[2,32],79:[2,32]},{21:[2,33],31:[2,33],52:[2,33],59:[2,33],62:[2,33],66:[2,33],69:[2,33],74:[2,33],75:[2,33],76:[2,33],77:[2,33],78:[2,33],79:[2,33]},{21:[2,34],31:[2,34],52:[2,34],59:[2,34],62:[2,34],66:[2,34],69:[2,34],74:[2,34],75:[2,34],76:[2,34],77:[2,34],78:[2,34],79:[2,34]},{21:[2,35],31:[2,35],52:[2,35],59:[2,35],62:[2,35],66:[2,35],69:[2,35],74:[2,35],75:[2,35],76:[2,35],77:[2,35],78:[2,35],79:[2,35]},{21:[2,36],31:[2,36],52:[2,36],59:[2,36],62:[2,36],66:[2,36],69:[2,36],74:[2,36],75:[2,36],76:[2,36],77:[2,36],78:[2,36],79:[2,36]},{21:[2,40],31:[2,40],52:[2,40],59:[2,40],62:[2,40],66:[2,40],69:[2,40],74:[2,40],75:[2,40],76:[2,40],77:[2,40],78:[2,40],79:[2,40],81:[1,45]},{66:[1,32],80:46},{21:[2,42],31:[2,42],52:[2,42],59:[2,42],62:[2,42],66:[2,42],69:[2,42],74:[2,42],75:[2,42],76:[2,42],77:[2,42],78:[2,42],79:[2,42],81:[2,42]},{50:47,52:[2,77],59:[2,77],66:[2,77],74:[2,77],75:[2,77],76:[2,77],77:[2,77],78:[2,77],79:[2,77]},{23:48,36:50,37:[1,52],41:51,42:[1,53],43:49,45:[2,49]},{26:54,41:55,42:[1,53],45:[2,51]},{16:[1,56]},{31:[2,81],55:57,59:[2,81],66:[2,81],74:[2,81],75:[2,81],76:[2,81],77:[2,81],78:[2,81],79:[2,81]},{31:[2,37],59:[2,37],66:[2,37],74:[2,37],75:[2,37],76:[2,37],77:[2,37],78:[2,37],79:[2,37]},{31:[2,38],59:[2,38],66:[2,38],74:[2,38],75:[2,38],76:[2,38],77:[2,38],78:[2,38],79:[2,38]},{18:58,66:[1,32],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{28:59,31:[2,53],59:[2,53],66:[2,53],69:[2,53],74:[2,53],75:[2,53],76:[2,53],77:[2,53],78:[2,53],79:[2,53]},{31:[2,59],33:60,59:[2,59],66:[2,59],69:[2,59],74:[2,59],75:[2,59],76:[2,59],77:[2,59],78:[2,59],79:[2,59]},{19:61,21:[2,45],59:[2,45],66:[2,45],74:[2,45],75:[2,45],76:[2,45],77:[2,45],78:[2,45],79:[2,45]},{18:65,31:[2,75],48:62,57:63,58:66,59:[1,40],63:64,64:67,65:68,66:[1,69],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{66:[1,70]},{21:[2,39],31:[2,39],52:[2,39],59:[2,39],62:[2,39],66:[2,39],69:[2,39],74:[2,39],75:[2,39],76:[2,39],77:[2,39],78:[2,39],79:[2,39],81:[1,45]},{18:65,51:71,52:[2,79],57:72,58:66,59:[1,40],63:73,64:67,65:68,66:[1,69],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{24:74,45:[1,75]},{45:[2,50]},{4:76,6:3,13:[2,43],14:[2,43],17:[2,43],27:[2,43],32:[2,43],37:[2,43],42:[2,43],45:[2,43],46:[2,43],49:[2,43],53:[2,43]},{45:[2,19]},{18:77,66:[1,32],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{4:78,6:3,13:[2,43],14:[2,43],17:[2,43],27:[2,43],32:[2,43],45:[2,43],46:[2,43],49:[2,43],53:[2,43]},{24:79,45:[1,75]},{45:[2,52]},{5:[2,10],13:[2,10],14:[2,10],17:[2,10],27:[2,10],32:[2,10],37:[2,10],42:[2,10],45:[2,10],46:[2,10],49:[2,10],53:[2,10]},{18:65,31:[2,83],56:80,57:81,58:66,59:[1,40],63:82,64:67,65:68,66:[1,69],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{59:[2,85],60:83,62:[2,85],66:[2,85],74:[2,85],75:[2,85],76:[2,85],77:[2,85],78:[2,85],79:[2,85]},{18:65,29:84,31:[2,55],57:85,58:66,59:[1,40],63:86,64:67,65:68,66:[1,69],69:[2,55],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{18:65,31:[2,61],34:87,57:88,58:66,59:[1,40],63:89,64:67,65:68,66:[1,69],69:[2,61],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{18:65,20:90,21:[2,47],57:91,58:66,59:[1,40],63:92,64:67,65:68,66:[1,69],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{31:[1,93]},{31:[2,74],59:[2,74],66:[2,74],74:[2,74],75:[2,74],76:[2,74],77:[2,74],78:[2,74],79:[2,74]},{31:[2,76]},{21:[2,24],31:[2,24],52:[2,24],59:[2,24],62:[2,24],66:[2,24],69:[2,24],74:[2,24],75:[2,24],76:[2,24],77:[2,24],78:[2,24],79:[2,24]},{21:[2,25],31:[2,25],52:[2,25],59:[2,25],62:[2,25],66:[2,25],69:[2,25],74:[2,25],75:[2,25],76:[2,25],77:[2,25],78:[2,25],79:[2,25]},{21:[2,27],31:[2,27],52:[2,27],62:[2,27],65:94,66:[1,95],69:[2,27]},{21:[2,89],31:[2,89],52:[2,89],62:[2,89],66:[2,89],69:[2,89]},{21:[2,42],31:[2,42],52:[2,42],59:[2,42],62:[2,42],66:[2,42],67:[1,96],69:[2,42],74:[2,42],75:[2,42],76:[2,42],77:[2,42],78:[2,42],79:[2,42],81:[2,42]},{21:[2,41],31:[2,41],52:[2,41],59:[2,41],62:[2,41],66:[2,41],69:[2,41],74:[2,41],75:[2,41],76:[2,41],77:[2,41],78:[2,41],79:[2,41],81:[2,41]},{52:[1,97]},{52:[2,78],59:[2,78],66:[2,78],74:[2,78],75:[2,78],76:[2,78],77:[2,78],78:[2,78],79:[2,78]},{52:[2,80]},{5:[2,12],13:[2,12],14:[2,12],17:[2,12],27:[2,12],32:[2,12],37:[2,12],42:[2,12],45:[2,12],46:[2,12],49:[2,12],53:[2,12]},{18:98,66:[1,32],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{36:50,37:[1,52],41:51,42:[1,53],43:100,44:99,45:[2,71]},{31:[2,65],38:101,59:[2,65],66:[2,65],69:[2,65],74:[2,65],75:[2,65],76:[2,65],77:[2,65],78:[2,65],79:[2,65]},{45:[2,17]},{5:[2,13],13:[2,13],14:[2,13],17:[2,13],27:[2,13],32:[2,13],37:[2,13],42:[2,13],45:[2,13],46:[2,13],49:[2,13],53:[2,13]},{31:[1,102]},{31:[2,82],59:[2,82],66:[2,82],74:[2,82],75:[2,82],76:[2,82],77:[2,82],78:[2,82],79:[2,82]},{31:[2,84]},{18:65,57:104,58:66,59:[1,40],61:103,62:[2,87],63:105,64:67,65:68,66:[1,69],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{30:106,31:[2,57],68:107,69:[1,108]},{31:[2,54],59:[2,54],66:[2,54],69:[2,54],74:[2,54],75:[2,54],76:[2,54],77:[2,54],78:[2,54],79:[2,54]},{31:[2,56],69:[2,56]},{31:[2,63],35:109,68:110,69:[1,108]},{31:[2,60],59:[2,60],66:[2,60],69:[2,60],74:[2,60],75:[2,60],76:[2,60],77:[2,60],78:[2,60],79:[2,60]},{31:[2,62],69:[2,62]},{21:[1,111]},{21:[2,46],59:[2,46],66:[2,46],74:[2,46],75:[2,46],76:[2,46],77:[2,46],78:[2,46],79:[2,46]},{21:[2,48]},{5:[2,21],13:[2,21],14:[2,21],17:[2,21],27:[2,21],32:[2,21],37:[2,21],42:[2,21],45:[2,21],46:[2,21],49:[2,21],53:[2,21]},{21:[2,90],31:[2,90],52:[2,90],62:[2,90],66:[2,90],69:[2,90]},{67:[1,96]},{18:65,57:112,58:66,59:[1,40],66:[1,32],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{5:[2,22],13:[2,22],14:[2,22],17:[2,22],27:[2,22],32:[2,22],37:[2,22],42:[2,22],45:[2,22],46:[2,22],49:[2,22],53:[2,22]},{31:[1,113]},{45:[2,18]},{45:[2,72]},{18:65,31:[2,67],39:114,57:115,58:66,59:[1,40],63:116,64:67,65:68,66:[1,69],69:[2,67],72:23,73:24,74:[1,25],75:[1,26],76:[1,27],77:[1,28],78:[1,29],79:[1,31],80:30},{5:[2,23],13:[2,23],14:[2,23],17:[2,23],27:[2,23],32:[2,23],37:[2,23],42:[2,23],45:[2,23],46:[2,23],49:[2,23],53:[2,23]},{62:[1,117]},{59:[2,86],62:[2,86],66:[2,86],74:[2,86],75:[2,86],76:[2,86],77:[2,86],78:[2,86],79:[2,86]},{62:[2,88]},{31:[1,118]},{31:[2,58]},{66:[1,120],70:119},{31:[1,121]},{31:[2,64]},{14:[2,11]},{21:[2,28],31:[2,28],52:[2,28],62:[2,28],66:[2,28],69:[2,28]},{5:[2,20],13:[2,20],14:[2,20],17:[2,20],27:[2,20],32:[2,20],37:[2,20],42:[2,20],45:[2,20],46:[2,20],49:[2,20],53:[2,20]},{31:[2,69],40:122,68:123,69:[1,108]},{31:[2,66],59:[2,66],66:[2,66],69:[2,66],74:[2,66],75:[2,66],76:[2,66],77:[2,66],78:[2,66],79:[2,66]},{31:[2,68],69:[2,68]},{21:[2,26],31:[2,26],52:[2,26],59:[2,26],62:[2,26],66:[2,26],69:[2,26],74:[2,26],75:[2,26],76:[2,26],77:[2,26],78:[2,26],79:[2,26]},{13:[2,14],14:[2,14],17:[2,14],27:[2,14],32:[2,14],37:[2,14],42:[2,14],45:[2,14],46:[2,14],49:[2,14],53:[2,14]},{66:[1,125],71:[1,124]},{66:[2,91],71:[2,91]},{13:[2,15],14:[2,15],17:[2,15],27:[2,15],32:[2,15],42:[2,15],45:[2,15],46:[2,15],49:[2,15],53:[2,15]},{31:[1,126]},{31:[2,70]},{31:[2,29]},{66:[2,92],71:[2,92]},{13:[2,16],14:[2,16],17:[2,16],27:[2,16],32:[2,16],37:[2,16],42:[2,16],45:[2,16],46:[2,16],49:[2,16],53:[2,16]}],defaultActions:{4:[2,1],49:[2,50],51:[2,19],55:[2,52],64:[2,76],73:[2,80],78:[2,17],82:[2,84],92:[2,48],99:[2,18],100:[2,72],105:[2,88],107:[2,58],110:[2,64],111:[2,11],123:[2,70],124:[2,29]},parseError:function(e,t){throw new Error(e)},parse:function(e){function t(){var e;return e=i.lexer.lex()||1,"number"!=typeof e&&(e=i.symbols_[e]||e),e}var i=this,n=[0],r=[null],s=[],o=this.table,a="",l=0,c=0,u=0;this.lexer.setInput(e),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,this.yy.parser=this,"undefined"==typeof this.lexer.yylloc&&(this.lexer.yylloc={});var p=this.lexer.yylloc;s.push(p);var h=this.lexer.options&&this.lexer.options.ranges;"function"==typeof this.yy.parseError&&(this.parseError=this.yy.parseError);for(var d,f,m,g,v,y,w,b,x,S={};;){if(m=n[n.length-1],this.defaultActions[m]?g=this.defaultActions[m]:(null!==d&&"undefined"!=typeof d||(d=t()),g=o[m]&&o[m][d]),"undefined"==typeof g||!g.length||!g[0]){var T="";if(!u){x=[];for(y in o[m])this.terminals_[y]&&y>2&&x.push("'"+this.terminals_[y]+"'");T=this.lexer.showPosition?"Parse error on line "+(l+1)+":\n"+this.lexer.showPosition()+"\nExpecting "+x.join(", ")+", got '"+(this.terminals_[d]||d)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==d?"end of input":"'"+(this.terminals_[d]||d)+"'"),this.parseError(T,{text:this.lexer.match,token:this.terminals_[d]||d,line:this.lexer.yylineno,loc:p,expected:x})}}if(g[0]instanceof Array&&g.length>1)throw new Error("Parse Error: multiple actions possible at state: "+m+", token: "+d);switch(g[0]){case 1:n.push(d),r.push(this.lexer.yytext),s.push(this.lexer.yylloc),n.push(g[1]),d=null,f?(d=f,f=null):(c=this.lexer.yyleng,a=this.lexer.yytext,l=this.lexer.yylineno,p=this.lexer.yylloc,u>0&&u--);break;case 2:if(w=this.productions_[g[1]][1],S.$=r[r.length-w],S._$={first_line:s[s.length-(w||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(w||1)].first_column,last_column:s[s.length-1].last_column},h&&(S._$.range=[s[s.length-(w||1)].range[0],s[s.length-1].range[1]]),v=this.performAction.call(S,a,c,l,this.yy,g[1],r,s),"undefined"!=typeof v)return v;w&&(n=n.slice(0,-1*w*2),r=r.slice(0,-1*w),s=s.slice(0,-1*w)),n.push(this.productions_[g[1]][0]),r.push(S.$),s.push(S._$),b=o[n[n.length-2]][n[n.length-1]],n.push(b);break;case 3:return!0}}return!0}},i=function(){var e={EOF:1,parseError:function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)},setInput:function(e){return this._input=e,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var e=this._input[0];this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e;var t=e.match(/(?:\r\n?|\n).*/g);return t?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t=e.length,i=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t-1),this.offset-=t;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),i.length-1&&(this.yylineno-=i.length-1);var r=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:i?(i.length===n.length?this.yylloc.first_column:0)+n[n.length-i.length].length-i[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-t]),this},more:function(){return this._more=!0,this},less:function(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var e,t,i,n,r;this._more||(this.yytext="",this.match="");for(var s=this._currentRules(),o=0;o<s.length&&(i=this._input.match(this.rules[s[o]]),!i||t&&!(i[0].length>t[0].length)||(t=i,n=o,this.options.flex));o++);return t?(r=t[0].match(/(?:\r\n?|\n).*/g),r&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],e=this.performAction.call(this,this.yy,this,s[n],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),e?e:void 0):""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var e=this.next();return"undefined"!=typeof e?e:this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(e){this.begin(e)}};return e.options={},e.performAction=function(e,t,i,n){function r(e,i){return t.yytext=t.yytext.substr(e,t.yyleng-i)}switch(i){case 0:if("\\\\"===t.yytext.slice(-2)?(r(0,1),this.begin("mu")):"\\"===t.yytext.slice(-1)?(r(0,1),this.begin("emu")):this.begin("mu"),t.yytext)return 14;break;case 1:return 14;case 2:return this.popState(),14;case 3:return t.yytext=t.yytext.substr(5,t.yyleng-9),this.popState(),16;case 4:return 14;case 5:return this.popState(),13;case 6:return 59;case 7:return 62;case 8:return 17;case 9:return this.popState(),this.begin("raw"),21;case 10:return 53;case 11:return 27;case 12:return 45;case 13:return this.popState(),42;case 14:return this.popState(),42;case 15:return 32;case 16:return 37;case 17:return 49;case 18:return 46;case 19:this.unput(t.yytext),this.popState(),this.begin("com");break;case 20:return this.popState(),13;case 21:return 46;case 22:return 67;case 23:return 66;case 24:return 66;case 25:return 81;case 26:break;case 27:return this.popState(),52;case 28:return this.popState(),31;case 29:return t.yytext=r(1,2).replace(/\\"/g,'"'),74;case 30:return t.yytext=r(1,2).replace(/\\'/g,"'"),74;case 31:return 79;case 32:return 76;case 33:return 76;case 34:return 77;case 35:return 78;case 36:return 75;case 37:return 69;case 38:return 71;case 39:return 66;case 40:return 66;case 41:return"INVALID";case 42:return 5}},e.rules=[/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/,/^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/,/^(?:[^\x00]*?(?=(\{\{\{\{\/)))/,/^(?:[\s\S]*?--(~)?\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{\{\{)/,/^(?:\}\}\}\})/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^\s*(~)?\}\})/,/^(?:\{\{(~)?\s*else\s*(~)?\}\})/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{(~)?!--)/,/^(?:\{\{(~)?![\s\S]*?\}\})/,/^(?:\{\{(~)?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)|])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:undefined(?=([~}\s)])))/,/^(?:null(?=([~}\s)])))/,/^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/,/^(?:as\s+\|)/,/^(?:\|)/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/,/^(?:\[[^\]]*\])/,/^(?:.)/,/^(?:$)/],e.conditions={mu:{rules:[6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42],inclusive:!1},emu:{rules:[2],inclusive:!1},com:{rules:[5],inclusive:!1},raw:{rules:[3,4],inclusive:!1 +},INITIAL:{rules:[0,1,42],inclusive:!0}},e}();return t.lexer=i,e.prototype=t,t.Parser=e,new e}();t["default"]=n,e.exports=t["default"]},function(e,t,i){"use strict";function n(){}function r(e,t,i){void 0===t&&(t=e.length);var n=e[t-1],r=e[t-2];return n?"ContentStatement"===n.type?(r||!i?/\r?\n\s*?$/:/(^|\r?\n)\s*?$/).test(n.original):void 0:i}function s(e,t,i){void 0===t&&(t=-1);var n=e[t+1],r=e[t+2];return n?"ContentStatement"===n.type?(r||!i?/^\s*?\r?\n/:/^\s*?(\r?\n|$)/).test(n.original):void 0:i}function o(e,t,i){var n=e[null==t?0:t+1];if(n&&"ContentStatement"===n.type&&(i||!n.rightStripped)){var r=n.value;n.value=n.value.replace(i?/^\s+/:/^[ \t]*\r?\n?/,""),n.rightStripped=n.value!==r}}function a(e,t,i){var n=e[null==t?e.length-1:t-1];if(n&&"ContentStatement"===n.type&&(i||!n.leftStripped)){var r=n.value;return n.value=n.value.replace(i?/\s+$/:/[ \t]+$/,""),n.leftStripped=n.value!==r,n.leftStripped}}var l=i(8)["default"];t.__esModule=!0;var c=i(6),u=l(c);n.prototype=new u["default"],n.prototype.Program=function(e){var t=!this.isRootSeen;this.isRootSeen=!0;for(var i=e.body,n=0,l=i.length;l>n;n++){var c=i[n],u=this.accept(c);if(u){var p=r(i,n,t),h=s(i,n,t),d=u.openStandalone&&p,f=u.closeStandalone&&h,m=u.inlineStandalone&&p&&h;u.close&&o(i,n,!0),u.open&&a(i,n,!0),m&&(o(i,n),a(i,n)&&"PartialStatement"===c.type&&(c.indent=/([ \t]+$)/.exec(i[n-1].original)[1])),d&&(o((c.program||c.inverse).body),a(i,n)),f&&(o(i,n),a((c.inverse||c.program).body))}}return e},n.prototype.BlockStatement=function(e){this.accept(e.program),this.accept(e.inverse);var t=e.program||e.inverse,i=e.program&&e.inverse,n=i,l=i;if(i&&i.chained)for(n=i.body[0].program;l.chained;)l=l.body[l.body.length-1].program;var c={open:e.openStrip.open,close:e.closeStrip.close,openStandalone:s(t.body),closeStandalone:r((n||t).body)};if(e.openStrip.close&&o(t.body,null,!0),i){var u=e.inverseStrip;u.open&&a(t.body,null,!0),u.close&&o(n.body,null,!0),e.closeStrip.open&&a(l.body,null,!0),r(t.body)&&s(n.body)&&(a(t.body),o(n.body))}else e.closeStrip.open&&a(t.body,null,!0);return c},n.prototype.MustacheStatement=function(e){return e.strip},n.prototype.PartialStatement=n.prototype.CommentStatement=function(e){var t=e.strip||{};return{inlineStandalone:!0,open:t.open,close:t.close}},t["default"]=n,e.exports=t["default"]},function(e,t,i){"use strict";function n(e,t){this.source=e,this.start={line:t.first_line,column:t.first_column},this.end={line:t.last_line,column:t.last_column}}function r(e){return/^\[.*\]$/.test(e)?e.substr(1,e.length-2):e}function s(e,t){return{open:"~"===e.charAt(2),close:"~"===t.charAt(t.length-3)}}function o(e){return e.replace(/^\{\{~?\!-?-?/,"").replace(/-?-?~?\}\}$/,"")}function a(e,t,i){i=this.locInfo(i);for(var n=e?"@":"",r=[],s=0,o="",a=0,l=t.length;l>a;a++){var c=t[a].part,u=t[a].original!==c;if(n+=(t[a].separator||"")+c,u||".."!==c&&"."!==c&&"this"!==c)r.push(c);else{if(r.length>0)throw new d["default"]("Invalid path: "+n,{loc:i});".."===c&&(s++,o+="../")}}return new this.PathExpression(e,s,r,n,i)}function l(e,t,i,n,r,s){var o=n.charAt(3)||n.charAt(2),a="{"!==o&&"&"!==o;return new this.MustacheStatement(e,t,i,a,r,this.locInfo(s))}function c(e,t,i,n){if(e.path.original!==i){var r={loc:e.path.loc};throw new d["default"](e.path.original+" doesn't match "+i,r)}n=this.locInfo(n);var s=new this.Program([t],null,{},n);return new this.BlockStatement(e.path,e.params,e.hash,s,void 0,{},{},{},n)}function u(e,t,i,n,r,s){if(n&&n.path&&e.path.original!==n.path.original){var o={loc:e.path.loc};throw new d["default"](e.path.original+" doesn't match "+n.path.original,o)}t.blockParams=e.blockParams;var a=void 0,l=void 0;return i&&(i.chain&&(i.program.body[0].closeStrip=n.strip),l=i.strip,a=i.program),r&&(r=a,a=t,t=r),new this.BlockStatement(e.path,e.params,e.hash,t,a,e.strip,l,n&&n.strip,this.locInfo(s))}var p=i(8)["default"];t.__esModule=!0,t.SourceLocation=n,t.id=r,t.stripFlags=s,t.stripComment=o,t.preparePath=a,t.prepareMustache=l,t.prepareRawBlock=c,t.prepareBlock=u;var h=i(12),d=p(h)},function(e,t,i){"use strict";function n(e,t,i){if(s.isArray(e)){for(var n=[],r=0,o=e.length;o>r;r++)n.push(t.wrap(e[r],i));return n}return"boolean"==typeof e||"number"==typeof e?e+"":e}function r(e){this.srcFile=e,this.source=[]}t.__esModule=!0;var s=i(13),o=void 0;try{}catch(a){}o||(o=function(e,t,i,n){this.src="",n&&this.add(n)},o.prototype={add:function(e){s.isArray(e)&&(e=e.join("")),this.src+=e},prepend:function(e){s.isArray(e)&&(e=e.join("")),this.src=e+this.src},toStringWithSourceMap:function(){return{code:this.toString()}},toString:function(){return this.src}}),r.prototype={prepend:function(e,t){this.source.unshift(this.wrap(e,t))},push:function(e,t){this.source.push(this.wrap(e,t))},merge:function(){var e=this.empty();return this.each(function(t){e.add([" ",t,"\n"])}),e},each:function(e){for(var t=0,i=this.source.length;i>t;t++)e(this.source[t])},empty:function(){var e=void 0===arguments[0]?this.currentLocation||{start:{}}:arguments[0];return new o(e.start.line,e.start.column,this.srcFile)},wrap:function(e){var t=void 0===arguments[1]?this.currentLocation||{start:{}}:arguments[1];return e instanceof o?e:(e=n(e,this,t),new o(t.start.line,t.start.column,this.srcFile,e))},functionCall:function(e,t,i){return i=this.generateList(i),this.wrap([e,t?"."+t+"(":"(",i,")"])},quotedString:function(e){return'"'+(e+"").replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")+'"'},objectLiteral:function(e){var t=[];for(var i in e)if(e.hasOwnProperty(i)){var r=n(e[i],this);"undefined"!==r&&t.push([this.quotedString(i),":",r])}var s=this.generateList(t);return s.prepend("{"),s.add("}"),s},generateList:function(e,t){for(var i=this.empty(t),r=0,s=e.length;s>r;r++)r&&i.add(","),i.add(n(e[r],this,t));return i},generateArray:function(e,t){var i=this.generateList(e,t);return i.prepend("["),i.add("]"),i}},t["default"]=r,e.exports=t["default"]}])})}),define("source-map",[],function(e,t,i){t.SourceMapGenerator=e("source-map/source-map-generator").SourceMapGenerator,t.SourceMapConsumer=e("source-map/source-map-consumer").SourceMapConsumer,t.SourceNode=e("source-map/source-node").SourceNode}),define("source-map/source-map-generator",[],function(e,t,i){define(function(e,t,i){function n(e){e||(e={}),this._file=s.getArg(e,"file",null),this._sourceRoot=s.getArg(e,"sourceRoot",null),this._sources=new o,this._names=new o,this._mappings=[],this._sourcesContents=null}var r=e("source-map/base64-vlq"),s=e("source-map/util"),o=e("source-map/array-set").ArraySet;n.prototype._version=3,n.fromSourceMap=function(e){var t=e.sourceRoot,i=new n({file:e.file,sourceRoot:t});return e.eachMapping(function(e){var n={generated:{line:e.generatedLine,column:e.generatedColumn}};null!=e.source&&(n.source=e.source,null!=t&&(n.source=s.relative(t,n.source)),n.original={line:e.originalLine,column:e.originalColumn},null!=e.name&&(n.name=e.name)),i.addMapping(n)}),e.sources.forEach(function(t){var n=e.sourceContentFor(t);null!=n&&i.setSourceContent(t,n)}),i},n.prototype.addMapping=function(e){var t=s.getArg(e,"generated"),i=s.getArg(e,"original",null),n=s.getArg(e,"source",null),r=s.getArg(e,"name",null);this._validateMapping(t,i,n,r),null==n||this._sources.has(n)||this._sources.add(n),null==r||this._names.has(r)||this._names.add(r),this._mappings.push({generatedLine:t.line,generatedColumn:t.column,originalLine:null!=i&&i.line,originalColumn:null!=i&&i.column,source:n,name:r})},n.prototype.setSourceContent=function(e,t){var i=e;null!=this._sourceRoot&&(i=s.relative(this._sourceRoot,i)),null!=t?(this._sourcesContents||(this._sourcesContents={}),this._sourcesContents[s.toSetString(i)]=t):this._sourcesContents&&(delete this._sourcesContents[s.toSetString(i)],0===Object.keys(this._sourcesContents).length&&(this._sourcesContents=null))},n.prototype.applySourceMap=function(e,t,i){var n=t;if(null==t){if(null==e.file)throw new Error('SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map\'s "file" property. Both were omitted.');n=e.file}var r=this._sourceRoot;null!=r&&(n=s.relative(r,n));var a=new o,l=new o;this._mappings.forEach(function(t){if(t.source===n&&null!=t.originalLine){var o=e.originalPositionFor({line:t.originalLine,column:t.originalColumn});null!=o.source&&(t.source=o.source,null!=i&&(t.source=s.join(i,t.source)),null!=r&&(t.source=s.relative(r,t.source)),t.originalLine=o.line,t.originalColumn=o.column,null!=o.name&&(t.name=o.name))}var c=t.source;null==c||a.has(c)||a.add(c);var u=t.name;null==u||l.has(u)||l.add(u)},this),this._sources=a,this._names=l,e.sources.forEach(function(t){var n=e.sourceContentFor(t);null!=n&&(null!=i&&(t=s.join(i,t)),null!=r&&(t=s.relative(r,t)),this.setSourceContent(t,n))},this)},n.prototype._validateMapping=function(e,t,i,n){if((!(e&&"line"in e&&"column"in e&&e.line>0&&e.column>=0)||t||i||n)&&!(e&&"line"in e&&"column"in e&&t&&"line"in t&&"column"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&i))throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:i,original:t,name:n}))},n.prototype._serializeMappings=function(){var e,t=0,i=1,n=0,o=0,a=0,l=0,c="";this._mappings.sort(s.compareByGeneratedPositions);for(var u=0,p=this._mappings.length;p>u;u++){if(e=this._mappings[u],e.generatedLine!==i)for(t=0;e.generatedLine!==i;)c+=";",i++;else if(u>0){if(!s.compareByGeneratedPositions(e,this._mappings[u-1]))continue;c+=","}c+=r.encode(e.generatedColumn-t),t=e.generatedColumn,null!=e.source&&(c+=r.encode(this._sources.indexOf(e.source)-l),l=this._sources.indexOf(e.source),c+=r.encode(e.originalLine-1-o),o=e.originalLine-1,c+=r.encode(e.originalColumn-n),n=e.originalColumn,null!=e.name&&(c+=r.encode(this._names.indexOf(e.name)-a),a=this._names.indexOf(e.name)))}return c},n.prototype._generateSourcesContent=function(e,t){return e.map(function(e){if(!this._sourcesContents)return null;null!=t&&(e=s.relative(t,e));var i=s.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,i)?this._sourcesContents[i]:null},this)},n.prototype.toJSON=function(){var e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return null!=this._file&&(e.file=this._file),null!=this._sourceRoot&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e},n.prototype.toString=function(){return JSON.stringify(this)},t.SourceMapGenerator=n})}),define("source-map/base64-vlq",[],function(e,t,i){define(function(e,t,i){function n(e){return 0>e?(-e<<1)+1:(e<<1)+0}function r(e){var t=1===(1&e),i=e>>1;return t?-i:i}var s=e("source-map/base64"),o=5,a=1<<o,l=a-1,c=a;t.encode=function(e){var t,i="",r=n(e);do t=r&l,r>>>=o,r>0&&(t|=c),i+=s.encode(t);while(r>0);return i},t.decode=function(e,t){var i,n,a=0,u=e.length,p=0,h=0;do{if(a>=u)throw new Error("Expected more digits in base 64 VLQ value.");n=s.decode(e.charAt(a++)),i=!!(n&c),n&=l,p+=n<<h,h+=o}while(i);t.value=r(p),t.rest=e.slice(a)}})}),define("source-map/base64",[],function(e,t,i){define(function(e,t,i){var n={},r={};"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("").forEach(function(e,t){n[e]=t,r[t]=e}),t.encode=function(e){if(e in r)return r[e];throw new TypeError("Must be between 0 and 63: "+e)},t.decode=function(e){if(e in n)return n[e];throw new TypeError("Not a valid base 64 digit: "+e)}})}),define("source-map/util",[],function(e,t,i){define(function(e,t,i){function n(e,t,i){if(t in e)return e[t];if(3===arguments.length)return i;throw new Error('"'+t+'" is a required argument.')}function r(e){var t=e.match(f);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}function s(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}function o(e){var t=e,i=r(e);if(i){if(!i.path)return e;t=i.path}for(var n,o="/"===t.charAt(0),a=t.split(/\/+/),l=0,c=a.length-1;c>=0;c--)n=a[c],"."===n?a.splice(c,1):".."===n?l++:l>0&&(""===n?(a.splice(c+1,l),l=0):(a.splice(c,2),l--));return t=a.join("/"),""===t&&(t=o?"/":"."),i?(i.path=t,s(i)):t}function a(e,t){""===e&&(e="."),""===t&&(t=".");var i=r(t),n=r(e);if(n&&(e=n.path||"/"),i&&!i.scheme)return n&&(i.scheme=n.scheme),s(i);if(i||t.match(m))return t;if(n&&!n.host&&!n.path)return n.host=t,s(n);var a="/"===t.charAt(0)?t:o(e.replace(/\/+$/,"")+"/"+t);return n?(n.path=a,s(n)):a}function l(e,t){""===e&&(e="."),e=e.replace(/\/$/,"");var i=r(e);return"/"==t.charAt(0)&&i&&"/"==i.path?t.slice(1):0===t.indexOf(e+"/")?t.substr(e.length+1):t}function c(e){return"$"+e}function u(e){return e.substr(1)}function p(e,t){var i=e||"",n=t||"";return(i>n)-(n>i)}function h(e,t,i){var n;return(n=p(e.source,t.source))?n:(n=e.originalLine-t.originalLine)?n:(n=e.originalColumn-t.originalColumn,n||i?n:(n=p(e.name,t.name))?n:(n=e.generatedLine-t.generatedLine,n?n:e.generatedColumn-t.generatedColumn))}function d(e,t,i){var n;return(n=e.generatedLine-t.generatedLine)?n:(n=e.generatedColumn-t.generatedColumn,n||i?n:(n=p(e.source,t.source))?n:(n=e.originalLine-t.originalLine)?n:(n=e.originalColumn-t.originalColumn,n?n:p(e.name,t.name)))}t.getArg=n;var f=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.]*)(?::(\d+))?(\S*)$/,m=/^data:.+\,.+$/;t.urlParse=r,t.urlGenerate=s,t.normalize=o,t.join=a,t.relative=l,t.toSetString=c,t.fromSetString=u,t.compareByOriginalPositions=h,t.compareByGeneratedPositions=d})}),define("source-map/array-set",[],function(e,t,i){define(function(e,t,i){function n(){this._array=[],this._set={}}var r=e("source-map/util");n.fromArray=function(e,t){for(var i=new n,r=0,s=e.length;s>r;r++)i.add(e[r],t);return i},n.prototype.add=function(e,t){var i=this.has(e),n=this._array.length;i&&!t||this._array.push(e),i||(this._set[r.toSetString(e)]=n)},n.prototype.has=function(e){return Object.prototype.hasOwnProperty.call(this._set,r.toSetString(e))},n.prototype.indexOf=function(e){if(this.has(e))return this._set[r.toSetString(e)];throw new Error('"'+e+'" is not in the set.')},n.prototype.at=function(e){if(e>=0&&e<this._array.length)return this._array[e];throw new Error("No element indexed by "+e)},n.prototype.toArray=function(){return this._array.slice()},t.ArraySet=n})}),define("source-map/source-map-consumer",[],function(e,t,i){define(function(e,t,i){function n(e){var t=e;"string"==typeof e&&(t=JSON.parse(e.replace(/^\)\]\}'/,"")));var i=r.getArg(t,"version"),n=r.getArg(t,"sources"),s=r.getArg(t,"names",[]),a=r.getArg(t,"sourceRoot",null),l=r.getArg(t,"sourcesContent",null),c=r.getArg(t,"mappings"),u=r.getArg(t,"file",null);if(i!=this._version)throw new Error("Unsupported version: "+i);n=n.map(r.normalize),this._names=o.fromArray(s,!0),this._sources=o.fromArray(n,!0),this.sourceRoot=a,this.sourcesContent=l,this._mappings=c,this.file=u}var r=e("source-map/util"),s=e("source-map/binary-search"),o=e("source-map/array-set").ArraySet,a=e("source-map/base64-vlq");n.fromSourceMap=function(e){var t=Object.create(n.prototype);return t._names=o.fromArray(e._names.toArray(),!0),t._sources=o.fromArray(e._sources.toArray(),!0),t.sourceRoot=e._sourceRoot,t.sourcesContent=e._generateSourcesContent(t._sources.toArray(),t.sourceRoot),t.file=e._file,t.__generatedMappings=e._mappings.slice().sort(r.compareByGeneratedPositions),t.__originalMappings=e._mappings.slice().sort(r.compareByOriginalPositions),t},n.prototype._version=3,Object.defineProperty(n.prototype,"sources",{get:function(){return this._sources.toArray().map(function(e){return null!=this.sourceRoot?r.join(this.sourceRoot,e):e},this)}}),n.prototype.__generatedMappings=null,Object.defineProperty(n.prototype,"_generatedMappings",{get:function(){return this.__generatedMappings||(this.__generatedMappings=[],this.__originalMappings=[],this._parseMappings(this._mappings,this.sourceRoot)),this.__generatedMappings}}),n.prototype.__originalMappings=null,Object.defineProperty(n.prototype,"_originalMappings",{get:function(){return this.__originalMappings||(this.__generatedMappings=[],this.__originalMappings=[],this._parseMappings(this._mappings,this.sourceRoot)),this.__originalMappings}}),n.prototype._nextCharIsMappingSeparator=function(e){var t=e.charAt(0);return";"===t||","===t},n.prototype._parseMappings=function(e,t){for(var i,n=1,s=0,o=0,l=0,c=0,u=0,p=e,h={};p.length>0;)if(";"===p.charAt(0))n++,p=p.slice(1),s=0;else if(","===p.charAt(0))p=p.slice(1);else{if(i={},i.generatedLine=n,a.decode(p,h),i.generatedColumn=s+h.value,s=i.generatedColumn,p=h.rest,p.length>0&&!this._nextCharIsMappingSeparator(p)){if(a.decode(p,h),i.source=this._sources.at(c+h.value),c+=h.value,p=h.rest,0===p.length||this._nextCharIsMappingSeparator(p))throw new Error("Found a source, but no line and column");if(a.decode(p,h),i.originalLine=o+h.value,o=i.originalLine,i.originalLine+=1,p=h.rest,0===p.length||this._nextCharIsMappingSeparator(p))throw new Error("Found a source and line, but no column");a.decode(p,h),i.originalColumn=l+h.value,l=i.originalColumn,p=h.rest,p.length>0&&!this._nextCharIsMappingSeparator(p)&&(a.decode(p,h),i.name=this._names.at(u+h.value),u+=h.value,p=h.rest)}this.__generatedMappings.push(i),"number"==typeof i.originalLine&&this.__originalMappings.push(i)}this.__generatedMappings.sort(r.compareByGeneratedPositions),this.__originalMappings.sort(r.compareByOriginalPositions)},n.prototype._findMapping=function(e,t,i,n,r){if(e[i]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+e[i]);if(e[n]<0)throw new TypeError("Column must be greater than or equal to 0, got "+e[n]);return s.search(e,t,r)},n.prototype.computeColumnSpans=function(){for(var e=0;e<this._generatedMappings.length;++e){var t=this._generatedMappings[e];if(e+1<this._generatedMappings.length){var i=this._generatedMappings[e+1];if(t.generatedLine===i.generatedLine){t.lastGeneratedColumn=i.generatedColumn-1;continue}}t.lastGeneratedColumn=1/0}},n.prototype.originalPositionFor=function(e){var t={generatedLine:r.getArg(e,"line"),generatedColumn:r.getArg(e,"column")},i=this._findMapping(t,this._generatedMappings,"generatedLine","generatedColumn",r.compareByGeneratedPositions);if(i>=0){var n=this._generatedMappings[i];if(n.generatedLine===t.generatedLine){var s=r.getArg(n,"source",null);return null!=s&&null!=this.sourceRoot&&(s=r.join(this.sourceRoot,s)),{source:s,line:r.getArg(n,"originalLine",null),column:r.getArg(n,"originalColumn",null),name:r.getArg(n,"name",null)}}}return{source:null,line:null,column:null,name:null}},n.prototype.sourceContentFor=function(e){if(!this.sourcesContent)return null;if(null!=this.sourceRoot&&(e=r.relative(this.sourceRoot,e)),this._sources.has(e))return this.sourcesContent[this._sources.indexOf(e)];var t;if(null!=this.sourceRoot&&(t=r.urlParse(this.sourceRoot))){var i=e.replace(/^file:\/\//,"");if("file"==t.scheme&&this._sources.has(i))return this.sourcesContent[this._sources.indexOf(i)];if((!t.path||"/"==t.path)&&this._sources.has("/"+e))return this.sourcesContent[this._sources.indexOf("/"+e)]}throw new Error('"'+e+'" is not in the SourceMap.')},n.prototype.generatedPositionFor=function(e){var t={source:r.getArg(e,"source"),originalLine:r.getArg(e,"line"),originalColumn:r.getArg(e,"column")};null!=this.sourceRoot&&(t.source=r.relative(this.sourceRoot,t.source));var i=this._findMapping(t,this._originalMappings,"originalLine","originalColumn",r.compareByOriginalPositions);if(i>=0){var n=this._originalMappings[i];return{line:r.getArg(n,"generatedLine",null),column:r.getArg(n,"generatedColumn",null),lastColumn:r.getArg(n,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}},n.prototype.allGeneratedPositionsFor=function(e){var t={source:r.getArg(e,"source"),originalLine:r.getArg(e,"line"),originalColumn:1/0};null!=this.sourceRoot&&(t.source=r.relative(this.sourceRoot,t.source));var i=[],n=this._findMapping(t,this._originalMappings,"originalLine","originalColumn",r.compareByOriginalPositions);if(n>=0)for(var s=this._originalMappings[n];s&&s.originalLine===t.originalLine;)i.push({line:r.getArg(s,"generatedLine",null),column:r.getArg(s,"generatedColumn",null),lastColumn:r.getArg(s,"lastGeneratedColumn",null)}),s=this._originalMappings[--n];return i.reverse()},n.GENERATED_ORDER=1,n.ORIGINAL_ORDER=2,n.prototype.eachMapping=function(e,t,i){var s,o=t||null,a=i||n.GENERATED_ORDER;switch(a){case n.GENERATED_ORDER:s=this._generatedMappings;break;case n.ORIGINAL_ORDER:s=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var l=this.sourceRoot;s.map(function(e){var t=e.source;return null!=t&&null!=l&&(t=r.join(l,t)),{source:t,generatedLine:e.generatedLine,generatedColumn:e.generatedColumn,originalLine:e.originalLine,originalColumn:e.originalColumn,name:e.name}}).forEach(e,o)},t.SourceMapConsumer=n})}),define("source-map/binary-search",[],function(e,t,i){define(function(e,t,i){function n(e,t,i,r,s){var o=Math.floor((t-e)/2)+e,a=s(i,r[o],!0);return 0===a?o:a>0?t-o>1?n(o,t,i,r,s):o:o-e>1?n(e,o,i,r,s):0>e?-1:e}t.search=function(e,t,i){return 0===t.length?-1:n(-1,t.length,e,t,i)}})}),define("source-map/source-node",[],function(e,t,i){define(function(e,t,i){function n(e,t,i,n,r){this.children=[],this.sourceContents={},this.line=null==e?null:e,this.column=null==t?null:t,this.source=null==i?null:i,this.name=null==r?null:r,this[l]=!0,null!=n&&this.add(n)}var r=e("source-map/source-map-generator").SourceMapGenerator,s=e("source-map/util"),o=/(\r?\n)/,a=/\r\n|[\s\S]/g,l="$$$isSourceNode$$$";n.fromStringWithSourceMap=function(e,t,i){function r(e,t){if(null===e||void 0===e.source)a.add(t);else{var r=i?s.join(i,e.source):e.source;a.add(new n(e.originalLine,e.originalColumn,r,t,e.name))}}var a=new n,l=e.split(o),c=function(){var e=l.shift(),t=l.shift()||"";return e+t},u=1,p=0,h=null;return t.eachMapping(function(e){if(null!==h){if(!(u<e.generatedLine)){var t=l[0],i=t.substr(0,e.generatedColumn-p);return l[0]=t.substr(e.generatedColumn-p),p=e.generatedColumn,r(h,i),void(h=e)}var i="";r(h,c()),u++,p=0}for(;u<e.generatedLine;)a.add(c()),u++;if(p<e.generatedColumn){var t=l[0];a.add(t.substr(0,e.generatedColumn)),l[0]=t.substr(e.generatedColumn),p=e.generatedColumn}h=e},this),l.length>0&&(h&&r(h,c()),a.add(l.join(""))),t.sources.forEach(function(e){var n=t.sourceContentFor(e);null!=n&&(null!=i&&(e=s.join(i,e)),a.setSourceContent(e,n))}),a},n.prototype.add=function(e){if(Array.isArray(e))e.forEach(function(e){this.add(e)},this);else{if(!e[l]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);e&&this.children.push(e)}return this},n.prototype.prepend=function(e){if(Array.isArray(e))for(var t=e.length-1;t>=0;t--)this.prepend(e[t]);else{if(!e[l]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);this.children.unshift(e)}return this},n.prototype.walk=function(e){for(var t,i=0,n=this.children.length;n>i;i++)t=this.children[i],t[l]?t.walk(e):""!==t&&e(t,{source:this.source,line:this.line,column:this.column,name:this.name})},n.prototype.join=function(e){var t,i,n=this.children.length;if(n>0){for(t=[],i=0;n-1>i;i++)t.push(this.children[i]),t.push(e);t.push(this.children[i]),this.children=t}return this},n.prototype.replaceRight=function(e,t){var i=this.children[this.children.length-1];return i[l]?i.replaceRight(e,t):"string"==typeof i?this.children[this.children.length-1]=i.replace(e,t):this.children.push("".replace(e,t)),this},n.prototype.setSourceContent=function(e,t){this.sourceContents[s.toSetString(e)]=t},n.prototype.walkSourceContents=function(e){for(var t=0,i=this.children.length;i>t;t++)this.children[t][l]&&this.children[t].walkSourceContents(e);for(var n=Object.keys(this.sourceContents),t=0,i=n.length;i>t;t++)e(s.fromSetString(n[t]),this.sourceContents[n[t]])},n.prototype.toString=function(){var e="";return this.walk(function(t){e+=t}),e},n.prototype.toStringWithSourceMap=function(e){var t={code:"",line:1,column:0},i=new r(e),n=!1,s=null,l=null,c=null,u=null;return this.walk(function(e,r){t.code+=e,null!==r.source&&null!==r.line&&null!==r.column?(s===r.source&&l===r.line&&c===r.column&&u===r.name||i.addMapping({source:r.source,original:{line:r.line,column:r.column},generated:{line:t.line,column:t.column},name:r.name}),s=r.source,l=r.line,c=r.column,u=r.name,n=!0):n&&(i.addMapping({generated:{line:t.line,column:t.column}}),s=null,n=!1),e.match(a).forEach(function(e,a,l){o.test(e)?(t.line++,t.column=0,a+1===l.length?(s=null,n=!1):n&&i.addMapping({source:r.source,original:{line:r.line,column:r.column},generated:{line:t.line,column:t.column},name:r.name})):t.column+=e.length})}),this.walkSourceContents(function(e,t){i.setSourceContent(e,t)}),{code:t.code,map:i}},t.SourceNode=n})}),define("hammer",[],function(e,t,i){!function(e,t,n,r){"use strict";function s(e,t,i){return setTimeout(p(e,i),t)}function o(e,t,i){return Array.isArray(e)?(a(e,i[t],i),!0):!1}function a(e,t,i){var n;if(e)if(e.forEach)e.forEach(t,i);else if(e.length!==r)for(n=0;n<e.length;)t.call(i,e[n],n,e),n++;else for(n in e)e.hasOwnProperty(n)&&t.call(i,e[n],n,e)}function l(e,t,i){for(var n=Object.keys(t),s=0;s<n.length;)(!i||i&&e[n[s]]===r)&&(e[n[s]]=t[n[s]]),s++;return e}function c(e,t){return l(e,t,!0)}function u(e,t,i){var n,r=t.prototype;n=e.prototype=Object.create(r),n.constructor=e,n._super=r,i&&l(n,i)}function p(e,t){return function(){return e.apply(t,arguments)}}function h(e,t){return typeof e==pe?e.apply(t?t[0]||r:r,t):e}function d(e,t){return e===r?t:e}function f(e,t,i){a(y(t),function(t){e.addEventListener(t,i,!1)})}function m(e,t,i){a(y(t),function(t){e.removeEventListener(t,i,!1)})}function g(e,t){for(;e;){if(e==t)return!0;e=e.parentNode}return!1}function v(e,t){return e.indexOf(t)>-1}function y(e){return e.trim().split(/\s+/g)}function w(e,t,i){if(e.indexOf&&!i)return e.indexOf(t);for(var n=0;n<e.length;){if(i&&e[n][i]==t||!i&&e[n]===t)return n;n++}return-1}function b(e){return Array.prototype.slice.call(e,0)}function x(e,t,i){for(var n=[],r=[],s=0;s<e.length;){var o=t?e[s][t]:e[s];w(r,o)<0&&n.push(e[s]),r[s]=o,s++}return i&&(n=t?n.sort(function(e,i){return e[t]>i[t]}):n.sort()),n}function S(e,t){for(var i,n,s=t[0].toUpperCase()+t.slice(1),o=0;o<ce.length;){if(i=ce[o],n=i?i+s:t,n in e)return n;o++}return r}function T(){return me++}function C(e){var t=e.ownerDocument;return t.defaultView||t.parentWindow}function k(e,t){var i=this;this.manager=e,this.callback=t,this.element=e.element,this.target=e.options.inputTarget,this.domHandler=function(t){h(e.options.enable,[e])&&i.handler(t)},this.init()}function E(e){var t,i=e.options.inputClass;return new(t=i?i:ye?H:we?q:ve?W:F)(e,P)}function P(e,t,i){var n=i.pointers.length,r=i.changedPointers.length,s=t&ke&&n-r===0,o=t&(Pe|Ae)&&n-r===0;i.isFirst=!!s,i.isFinal=!!o,s&&(e.session={}),i.eventType=t,A(e,i),e.emit("hammer.input",i),e.recognize(i),e.session.prevInput=i}function A(e,t){var i=e.session,n=t.pointers,r=n.length;i.firstInput||(i.firstInput=L(t)),r>1&&!i.firstMultiple?i.firstMultiple=L(t):1===r&&(i.firstMultiple=!1);var s=i.firstInput,o=i.firstMultiple,a=o?o.center:s.center,l=t.center=M(n);t.timeStamp=fe(),t.deltaTime=t.timeStamp-s.timeStamp,t.angle=O(a,l),t.distance=z(a,l),_(i,t),t.offsetDirection=I(t.deltaX,t.deltaY),t.scale=o?R(o.pointers,n):1,t.rotation=o?B(o.pointers,n):0,D(i,t);var c=e.element;g(t.srcEvent.target,c)&&(c=t.srcEvent.target),t.target=c}function _(e,t){var i=t.center,n=e.offsetDelta||{},r=e.prevDelta||{},s=e.prevInput||{};t.eventType!==ke&&s.eventType!==Pe||(r=e.prevDelta={x:s.deltaX||0,y:s.deltaY||0},n=e.offsetDelta={x:i.x,y:i.y}),t.deltaX=r.x+(i.x-n.x),t.deltaY=r.y+(i.y-n.y)}function D(e,t){var i,n,s,o,a=e.lastInterval||t,l=t.timeStamp-a.timeStamp;if(t.eventType!=Ae&&(l>Ce||a.velocity===r)){var c=a.deltaX-t.deltaX,u=a.deltaY-t.deltaY,p=N(l,c,u);n=p.x,s=p.y,i=de(p.x)>de(p.y)?p.x:p.y,o=I(c,u),e.lastInterval=t}else i=a.velocity,n=a.velocityX,s=a.velocityY,o=a.direction;t.velocity=i,t.velocityX=n,t.velocityY=s,t.direction=o}function L(e){for(var t=[],i=0;i<e.pointers.length;)t[i]={clientX:he(e.pointers[i].clientX),clientY:he(e.pointers[i].clientY)},i++;return{timeStamp:fe(),pointers:t,center:M(t),deltaX:e.deltaX,deltaY:e.deltaY}}function M(e){var t=e.length;if(1===t)return{x:he(e[0].clientX),y:he(e[0].clientY)};for(var i=0,n=0,r=0;t>r;)i+=e[r].clientX,n+=e[r].clientY,r++;return{x:he(i/t),y:he(n/t)}}function N(e,t,i){return{x:t/e||0,y:i/e||0}}function I(e,t){return e===t?_e:de(e)>=de(t)?e>0?De:Le:t>0?Me:Ne}function z(e,t,i){i||(i=Be);var n=t[i[0]]-e[i[0]],r=t[i[1]]-e[i[1]];return Math.sqrt(n*n+r*r)}function O(e,t,i){i||(i=Be);var n=t[i[0]]-e[i[0]],r=t[i[1]]-e[i[1]];return 180*Math.atan2(r,n)/Math.PI}function B(e,t){return O(t[1],t[0],Re)-O(e[1],e[0],Re)}function R(e,t){return z(t[0],t[1],Re)/z(e[0],e[1],Re)}function F(){this.evEl=He,this.evWin=je,this.allow=!0,this.pressed=!1,k.apply(this,arguments)}function H(){this.evEl=Ye,this.evWin=We,k.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function j(){this.evTarget=Ge,this.evWin=Ve,this.started=!1,k.apply(this,arguments)}function X(e,t){var i=b(e.touches),n=b(e.changedTouches);return t&(Pe|Ae)&&(i=x(i.concat(n),"identifier",!0)),[i,n]}function q(){this.evTarget=Ke,this.targetIds={},k.apply(this,arguments)}function Y(e,t){var i=b(e.touches),n=this.targetIds;if(t&(ke|Ee)&&1===i.length)return n[i[0].identifier]=!0,[i,i];var r,s,o=b(e.changedTouches),a=[],l=this.target;if(s=i.filter(function(e){return g(e.target,l)}),t===ke)for(r=0;r<s.length;)n[s[r].identifier]=!0,r++;for(r=0;r<o.length;)n[o[r].identifier]&&a.push(o[r]),t&(Pe|Ae)&&delete n[o[r].identifier],r++;return a.length?[x(s.concat(a),"identifier",!0),a]:void 0}function W(){k.apply(this,arguments);var e=p(this.handler,this);this.touch=new q(this.manager,e),this.mouse=new F(this.manager,e)}function $(e,t){this.manager=e,this.set(t)}function G(e){if(v(e,it))return it;var t=v(e,nt),i=v(e,rt);return t&&i?nt+" "+rt:t||i?t?nt:rt:v(e,tt)?tt:et}function V(e){this.id=T(),this.manager=null,this.options=c(e||{},this.defaults),this.options.enable=d(this.options.enable,!0),this.state=st,this.simultaneous={},this.requireFail=[]}function U(e){return e&ut?"cancel":e<?"end":e&at?"move":e&ot?"start":""}function K(e){return e==Ne?"down":e==Me?"up":e==De?"left":e==Le?"right":""}function Q(e,t){var i=t.manager;return i?i.get(e):e}function J(){V.apply(this,arguments)}function Z(){J.apply(this,arguments),this.pX=null,this.pY=null}function ee(){J.apply(this,arguments)}function te(){V.apply(this,arguments),this._timer=null,this._input=null}function ie(){J.apply(this,arguments)}function ne(){J.apply(this,arguments)}function re(){V.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function se(e,t){return t=t||{},t.recognizers=d(t.recognizers,se.defaults.preset),new oe(e,t)}function oe(e,t){t=t||{},this.options=c(t,se.defaults),this.options.inputTarget=this.options.inputTarget||e,this.handlers={},this.session={},this.recognizers=[],this.element=e,this.input=E(this),this.touchAction=new $(this,this.options.touchAction),ae(this,!0),a(t.recognizers,function(e){var t=this.add(new e[0](e[1]));e[2]&&t.recognizeWith(e[2]),e[3]&&t.requireFailure(e[3])},this)}function ae(e,t){var i=e.element;a(e.options.cssProps,function(e,n){i.style[S(i.style,n)]=t?e:""})}function le(e,i){var n=t.createEvent("Event");n.initEvent(e,!0,!0),n.gesture=i,i.target.dispatchEvent(n)}var ce=["","webkit","moz","MS","ms","o"],ue=t.createElement("div"),pe="function",he=Math.round,de=Math.abs,fe=Date.now,me=1,ge=/mobile|tablet|ip(ad|hone|od)|android/i,ve="ontouchstart"in e,ye=S(e,"PointerEvent")!==r,we=ve&&ge.test(navigator.userAgent),be="touch",xe="pen",Se="mouse",Te="kinect",Ce=25,ke=1,Ee=2,Pe=4,Ae=8,_e=1,De=2,Le=4,Me=8,Ne=16,Ie=De|Le,ze=Me|Ne,Oe=Ie|ze,Be=["x","y"],Re=["clientX","clientY"];k.prototype={handler:function(){},init:function(){this.evEl&&f(this.element,this.evEl,this.domHandler), +this.evTarget&&f(this.target,this.evTarget,this.domHandler),this.evWin&&f(C(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&m(this.element,this.evEl,this.domHandler),this.evTarget&&m(this.target,this.evTarget,this.domHandler),this.evWin&&m(C(this.element),this.evWin,this.domHandler)}};var Fe={mousedown:ke,mousemove:Ee,mouseup:Pe},He="mousedown",je="mousemove mouseup";u(F,k,{handler:function(e){var t=Fe[e.type];t&ke&&0===e.button&&(this.pressed=!0),t&Ee&&1!==e.which&&(t=Pe),this.pressed&&this.allow&&(t&Pe&&(this.pressed=!1),this.callback(this.manager,t,{pointers:[e],changedPointers:[e],pointerType:Se,srcEvent:e}))}});var Xe={pointerdown:ke,pointermove:Ee,pointerup:Pe,pointercancel:Ae,pointerout:Ae},qe={2:be,3:xe,4:Se,5:Te},Ye="pointerdown",We="pointermove pointerup pointercancel";e.MSPointerEvent&&(Ye="MSPointerDown",We="MSPointerMove MSPointerUp MSPointerCancel"),u(H,k,{handler:function(e){var t=this.store,i=!1,n=e.type.toLowerCase().replace("ms",""),r=Xe[n],s=qe[e.pointerType]||e.pointerType,o=s==be,a=w(t,e.pointerId,"pointerId");r&ke&&(0===e.button||o)?0>a&&(t.push(e),a=t.length-1):r&(Pe|Ae)&&(i=!0),0>a||(t[a]=e,this.callback(this.manager,r,{pointers:t,changedPointers:[e],pointerType:s,srcEvent:e}),i&&t.splice(a,1))}});var $e={touchstart:ke,touchmove:Ee,touchend:Pe,touchcancel:Ae},Ge="touchstart",Ve="touchstart touchmove touchend touchcancel";u(j,k,{handler:function(e){var t=$e[e.type];if(t===ke&&(this.started=!0),this.started){var i=X.call(this,e,t);t&(Pe|Ae)&&i[0].length-i[1].length===0&&(this.started=!1),this.callback(this.manager,t,{pointers:i[0],changedPointers:i[1],pointerType:be,srcEvent:e})}}});var Ue={touchstart:ke,touchmove:Ee,touchend:Pe,touchcancel:Ae},Ke="touchstart touchmove touchend touchcancel";u(q,k,{handler:function(e){var t=Ue[e.type],i=Y.call(this,e,t);i&&this.callback(this.manager,t,{pointers:i[0],changedPointers:i[1],pointerType:be,srcEvent:e})}}),u(W,k,{handler:function(e,t,i){var n=i.pointerType==be,r=i.pointerType==Se;if(n)this.mouse.allow=!1;else if(r&&!this.mouse.allow)return;t&(Pe|Ae)&&(this.mouse.allow=!0),this.callback(e,t,i)},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var Qe=S(ue.style,"touchAction"),Je=Qe!==r,Ze="compute",et="auto",tt="manipulation",it="none",nt="pan-x",rt="pan-y";$.prototype={set:function(e){e==Ze&&(e=this.compute()),Je&&(this.manager.element.style[Qe]=e),this.actions=e.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var e=[];return a(this.manager.recognizers,function(t){h(t.options.enable,[t])&&(e=e.concat(t.getTouchAction()))}),G(e.join(" "))},preventDefaults:function(e){if(!Je){var t=e.srcEvent,i=e.offsetDirection;if(this.manager.session.prevented)return void t.preventDefault();var n=this.actions,r=v(n,it),s=v(n,rt),o=v(n,nt);return r||s&&i&Ie||o&&i&ze?this.preventSrc(t):void 0}},preventSrc:function(e){this.manager.session.prevented=!0,e.preventDefault()}};var st=1,ot=2,at=4,lt=8,ct=lt,ut=16,pt=32;V.prototype={defaults:{},set:function(e){return l(this.options,e),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(e){if(o(e,"recognizeWith",this))return this;var t=this.simultaneous;return e=Q(e,this),t[e.id]||(t[e.id]=e,e.recognizeWith(this)),this},dropRecognizeWith:function(e){return o(e,"dropRecognizeWith",this)?this:(e=Q(e,this),delete this.simultaneous[e.id],this)},requireFailure:function(e){if(o(e,"requireFailure",this))return this;var t=this.requireFail;return e=Q(e,this),-1===w(t,e)&&(t.push(e),e.requireFailure(this)),this},dropRequireFailure:function(e){if(o(e,"dropRequireFailure",this))return this;e=Q(e,this);var t=w(this.requireFail,e);return t>-1&&this.requireFail.splice(t,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(e){return!!this.simultaneous[e.id]},emit:function(e){function t(t){i.manager.emit(i.options.event+(t?U(n):""),e)}var i=this,n=this.state;lt>n&&t(!0),t(),n>=lt&&t(!0)},tryEmit:function(e){return this.canEmit()?this.emit(e):void(this.state=pt)},canEmit:function(){for(var e=0;e<this.requireFail.length;){if(!(this.requireFail[e].state&(pt|st)))return!1;e++}return!0},recognize:function(e){var t=l({},e);return h(this.options.enable,[this,t])?(this.state&(ct|ut|pt)&&(this.state=st),this.state=this.process(t),void(this.state&(ot|at|lt|ut)&&this.tryEmit(t))):(this.reset(),void(this.state=pt))},process:function(e){},getTouchAction:function(){},reset:function(){}},u(J,V,{defaults:{pointers:1},attrTest:function(e){var t=this.options.pointers;return 0===t||e.pointers.length===t},process:function(e){var t=this.state,i=e.eventType,n=t&(ot|at),r=this.attrTest(e);return n&&(i&Ae||!r)?t|ut:n||r?i&Pe?t|lt:t&ot?t|at:ot:pt}}),u(Z,J,{defaults:{event:"pan",threshold:10,pointers:1,direction:Oe},getTouchAction:function(){var e=this.options.direction,t=[];return e&Ie&&t.push(rt),e&ze&&t.push(nt),t},directionTest:function(e){var t=this.options,i=!0,n=e.distance,r=e.direction,s=e.deltaX,o=e.deltaY;return r&t.direction||(t.direction&Ie?(r=0===s?_e:0>s?De:Le,i=s!=this.pX,n=Math.abs(e.deltaX)):(r=0===o?_e:0>o?Me:Ne,i=o!=this.pY,n=Math.abs(e.deltaY))),e.direction=r,i&&n>t.threshold&&r&t.direction},attrTest:function(e){return J.prototype.attrTest.call(this,e)&&(this.state&ot||!(this.state&ot)&&this.directionTest(e))},emit:function(e){this.pX=e.deltaX,this.pY=e.deltaY;var t=K(e.direction);t&&this.manager.emit(this.options.event+t,e),this._super.emit.call(this,e)}}),u(ee,J,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[it]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.scale-1)>this.options.threshold||this.state&ot)},emit:function(e){if(this._super.emit.call(this,e),1!==e.scale){var t=e.scale<1?"in":"out";this.manager.emit(this.options.event+t,e)}}}),u(te,V,{defaults:{event:"press",pointers:1,time:500,threshold:5},getTouchAction:function(){return[et]},process:function(e){var t=this.options,i=e.pointers.length===t.pointers,n=e.distance<t.threshold,r=e.deltaTime>t.time;if(this._input=e,!n||!i||e.eventType&(Pe|Ae)&&!r)this.reset();else if(e.eventType&ke)this.reset(),this._timer=s(function(){this.state=ct,this.tryEmit()},t.time,this);else if(e.eventType&Pe)return ct;return pt},reset:function(){clearTimeout(this._timer)},emit:function(e){this.state===ct&&(e&&e.eventType&Pe?this.manager.emit(this.options.event+"up",e):(this._input.timeStamp=fe(),this.manager.emit(this.options.event,this._input)))}}),u(ie,J,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[it]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.rotation)>this.options.threshold||this.state&ot)}}),u(ne,J,{defaults:{event:"swipe",threshold:10,velocity:.65,direction:Ie|ze,pointers:1},getTouchAction:function(){return Z.prototype.getTouchAction.call(this)},attrTest:function(e){var t,i=this.options.direction;return i&(Ie|ze)?t=e.velocity:i&Ie?t=e.velocityX:i&ze&&(t=e.velocityY),this._super.attrTest.call(this,e)&&i&e.direction&&e.distance>this.options.threshold&&de(t)>this.options.velocity&&e.eventType&Pe},emit:function(e){var t=K(e.direction);t&&this.manager.emit(this.options.event+t,e),this.manager.emit(this.options.event,e)}}),u(re,V,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:2,posThreshold:10},getTouchAction:function(){return[tt]},process:function(e){var t=this.options,i=e.pointers.length===t.pointers,n=e.distance<t.threshold,r=e.deltaTime<t.time;if(this.reset(),e.eventType&ke&&0===this.count)return this.failTimeout();if(n&&r&&i){if(e.eventType!=Pe)return this.failTimeout();var o=this.pTime?e.timeStamp-this.pTime<t.interval:!0,a=!this.pCenter||z(this.pCenter,e.center)<t.posThreshold;this.pTime=e.timeStamp,this.pCenter=e.center,a&&o?this.count+=1:this.count=1,this._input=e;var l=this.count%t.taps;if(0===l)return this.hasRequireFailures()?(this._timer=s(function(){this.state=ct,this.tryEmit()},t.interval,this),ot):ct}return pt},failTimeout:function(){return this._timer=s(function(){this.state=pt},this.options.interval,this),pt},reset:function(){clearTimeout(this._timer)},emit:function(){this.state==ct&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),se.VERSION="2.0.4",se.defaults={domEvents:!1,touchAction:Ze,enable:!0,inputTarget:null,inputClass:null,preset:[[ie,{enable:!1}],[ee,{enable:!1},["rotate"]],[ne,{direction:Ie}],[Z,{direction:Ie},["swipe"]],[re],[re,{event:"doubletap",taps:2},["tap"]],[te]],cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}};var ht=1,dt=2;oe.prototype={set:function(e){return l(this.options,e),e.touchAction&&this.touchAction.update(),e.inputTarget&&(this.input.destroy(),this.input.target=e.inputTarget,this.input.init()),this},stop:function(e){this.session.stopped=e?dt:ht},recognize:function(e){var t=this.session;if(!t.stopped){this.touchAction.preventDefaults(e);var i,n=this.recognizers,r=t.curRecognizer;(!r||r&&r.state&ct)&&(r=t.curRecognizer=null);for(var s=0;s<n.length;)i=n[s],t.stopped===dt||r&&i!=r&&!i.canRecognizeWith(r)?i.reset():i.recognize(e),!r&&i.state&(ot|at|lt)&&(r=t.curRecognizer=i),s++}},get:function(e){if(e instanceof V)return e;for(var t=this.recognizers,i=0;i<t.length;i++)if(t[i].options.event==e)return t[i];return null},add:function(e){if(o(e,"add",this))return this;var t=this.get(e.options.event);return t&&this.remove(t),this.recognizers.push(e),e.manager=this,this.touchAction.update(),e},remove:function(e){if(o(e,"remove",this))return this;var t=this.recognizers;return e=this.get(e),t.splice(w(t,e),1),this.touchAction.update(),this},on:function(e,t){var i=this.handlers;return a(y(e),function(e){i[e]=i[e]||[],i[e].push(t)}),this},off:function(e,t){var i=this.handlers;return a(y(e),function(e){t?i[e].splice(w(i[e],t),1):delete i[e]}),this},emit:function(e,t){this.options.domEvents&&le(e,t);var i=this.handlers[e]&&this.handlers[e].slice();if(i&&i.length){t.type=e,t.preventDefault=function(){t.srcEvent.preventDefault()};for(var n=0;n<i.length;)i[n](t),n++}},destroy:function(){this.element&&ae(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},l(se,{INPUT_START:ke,INPUT_MOVE:Ee,INPUT_END:Pe,INPUT_CANCEL:Ae,STATE_POSSIBLE:st,STATE_BEGAN:ot,STATE_CHANGED:at,STATE_ENDED:lt,STATE_RECOGNIZED:ct,STATE_CANCELLED:ut,STATE_FAILED:pt,DIRECTION_NONE:_e,DIRECTION_LEFT:De,DIRECTION_RIGHT:Le,DIRECTION_UP:Me,DIRECTION_DOWN:Ne,DIRECTION_HORIZONTAL:Ie,DIRECTION_VERTICAL:ze,DIRECTION_ALL:Oe,Manager:oe,Input:k,TouchAction:$,TouchInput:q,MouseInput:F,PointerEventInput:H,TouchMouseInput:W,SingleTouchInput:j,Recognizer:V,AttrRecognizer:J,Tap:re,Pan:Z,Swipe:ne,Pinch:ee,Rotate:ie,Press:te,on:f,off:m,each:a,merge:c,extend:l,inherit:u,bindFn:p,prefixed:S}),typeof define==pe&&define.amd?define(function(){return se}):"undefined"!=typeof i&&i.exports?i.exports=se:e[n]=se}(window,document,"Hammer")}),define("mlellipsis",[],function(e,t,i){t.init=function(){Element.prototype.getText=function(){return void 0==this.innerText?this.textContent:this.innerText},Element.prototype.setText=function(e){void 0==this.innerText?this.textContent=e||"":this.innerText=e||""},Element.prototype.getFinalStyle=function(e,t){var i;return i=window.getComputedStyle?window.getComputedStyle(this,null)[e]:this.currentStyle[e],void 0!=t&&(i=i*t+"px"),i.substring(0,i.toString().length-2)},Element.prototype.mlellipsis=function(e){var t=this.getText(),i=this.getAttribute("title");null==i?this.setAttribute("title",t):this.setText(i);var n=this.getFinalStyle("fontSize");if(/msie/i.test(navigator.userAgent))var r=this.getFinalStyle("lineHeight",n);else var r=this.getFinalStyle("lineHeight");var s=Math.floor(this.clientHeight);"norm"==r?(r=Number(1.5*n),this.setAttribute("style","line-height:"+r+"px")):r=Number(r);var o=e*r;if(s>=o){for(t=this.getText();3*o<this.clientHeight;)this.setText(t.substring(0,t.length/2)),t=this.getText();for(;this.clientHeight-o>r-1&&(t=this.getText(),!(t.length<3));)this.setText(t.replace(/(\s)*([a-zA-Z0-9]+|\W)(\.\.\.)?$/,"..."))}},Element.prototype.getTextLineNumber=function(e){var t=this.getText(),i=this.getAttribute("title");null==i?this.setAttribute("title",t):this.setText(i);var n=this.getFinalStyle("fontSize");if(/msie/i.test(navigator.userAgent))var r=this.getFinalStyle("lineHeight",n);else var r=this.getFinalStyle("lineHeight");var s=this.clientHeight;return"norm"==r?(r=Number(1.5*n),this.setAttribute("style","line-height:"+r+"px")):r=Number(r),s/r}}}); \ No newline at end of file diff --git a/static/dist/myohobuy/assets/img/sprite.me.png b/static/dist/myohobuy/assets/img/sprite.me.png index a66a10e..6b05ca7 100644 Binary files a/static/dist/myohobuy/assets/img/sprite.me.png and b/static/dist/myohobuy/assets/img/sprite.me.png differ -- libgit2 0.24.0