Authored by 毕凯

Merge branch 'develop' of http://git.dev.yoho.cn/web/yohobuy into develop

... ... @@ -5,6 +5,7 @@
*/
var $ = require('jquery'),
ellipsis = require('mlellipsis'),
Hammer = require('yoho.hammer');
var chosePanel = require('./chose-panel'),
... ... @@ -15,21 +16,33 @@ var $cartContent = $('.cart-content'),
cartType = $('#cartType').val(),
hasShowCartPresellTip = false;
var $cartContentShow = $cartContent.not('.hide');
var navHammer,
advanceBuyHammer,
freebieHammer,
switchChose = false;
require('../product/recommend-for-you');
require('./good');
ellipsis.init();
function cartContentShow() {
return $cartContent.not('.hide');
}
function mlellipsisHiddenNames() {
cartContentShow().find('.shopping-cart-good .name').each(function() {
this.mlellipsis(2);
});
switchChose = true;
}
function hasChecked() {
return $cartContentShow.find('.icon-cb-checked').length > 0 ? true : false;
return cartContentShow().find('.cart-goods .icon-cb-checked').length > 0 ? true : false;
}
function shouldSelectGift() {
var $freebie = $cartContentShow.find('.freebie');
var $freebie = cartContentShow().find('.freebie');
if ($freebie.length <= 0) {
return false;
... ... @@ -70,16 +83,12 @@ function showChooseGifDialog() {
rightBtnText: '去选择'
}
}, function() {
window.location.href = $cartContentShow.find('.freebie > a').attr('href');
window.location.href = cartContentShow().find('.freebie > a').attr('href');
}, function() {
window.location.href = '/cart/index/orderEnsure?cartType=' + cartType;
});
}
require('./good');
//lazyLoad($('img.lazy'));
if (typeof window.cookie === 'function' && 'y' === window.cookie('_hasShowCartPresellTip')) {
$('#presell-tip').removeClass('show').addClass('hide');
hasShowCartPresellTip = true;
... ... @@ -91,9 +100,9 @@ if ('advance' === cartType) {
$cartContent.toggleClass('hide');
$('#common-cart-nav').removeClass('active');
$('#presell-cart-nav').addClass('active');
$('.shopping-cart-good .name').each(function() {
this.mlellipsis(2);
});
mlellipsisHiddenNames();
$(window).trigger('scroll');
}
if ($('.cart-nav').length > 0) {
... ... @@ -119,13 +128,8 @@ if ($('.cart-nav').length > 0) {
//切换普通商品和预售商品购物车显示
$cartContent.toggleClass('hide');
$cartContentShow = $cartContent.not('.hide');
if (switchChose === false) {
$cartContentShow.find('.shopping-cart-good .name').each(function() {
this.mlellipsis(2);
});
switchChose = true;
mlellipsisHiddenNames();
}
//trigger lazyload
... ... @@ -176,16 +180,5 @@ $('.chose').on('touchend', function() {
chosePanel.show();
});
function notAllowScroll() {
var docH = $(document).height(),
winH = $(window).height();
if (docH - winH <= 10) {
$('body').css('overflow', 'hidden');
}
}
notAllowScroll();
//提前触发lazyload
$(window).scrollTop(1).scrollTop(0);
... ...
... ... @@ -162,10 +162,12 @@
}
.btn-wrap {
position: relative;
height: 120rem / $pxConvertRem;
border-top: 1px solid #e6e6e6;
padding: 20rem / $pxConvertRem;
text-align: center;
background: #fff;
box-sizing: border-box;
.btn-sure {
... ...
... ... @@ -15,11 +15,17 @@
.cart-content > * {
background: #fff;
&:first-child {
border-top: none;
margin-top: 0;
}
}
.cart-nav {
color: #c6c6c6;
border-bottom: 1px solid #e0e0e0;
background: #fff;
li {
float: left;
... ...
<div class="cart-goods">
{{# goods}}
{{> cart/good}}
{{/ goods}}
</div>
{{#if goods}}
<div class="cart-goods">
{{# goods}}
{{> cart/good}}
{{/ goods}}
</div>
{{/if}}
{{#if notValidGoods}}
<div class="invalid-goods">
... ...
... ... @@ -80,19 +80,21 @@ class CartModel
$ordinaryCount = strval($cart['ordinary_cart_data']['shopping_cart_data']['goods_count']);
$advanceCount = strval($cart['advance_cart_data']['shopping_cart_data']['goods_count']);
$ordinarySoldOut = empty($cart['ordinary_cart_data']['sold_out_goods_list']);
$advanceSoldOut = empty($cart['advance_cart_data']['sold_out_goods_list']);
// 普通购物车和预售购物车都为空
if ($ordinaryCount === '0' && $advanceCount === '0') {
if ($ordinaryCount === '0' && $advanceCount === '0' && $ordinarySoldOut && $advanceSoldOut) {
$result['isEmptyCart'] = true;
break;
}
// 普通购物车空,则显示预售购物车
if ($ordinaryCount === '0') {
if ($ordinaryCount === '0' && $ordinaryCount) {
$result['cartNav'] = false;
$result['cartType'] = 'advance';
}
// 预售购物车空,则显示普通购物车
elseif ($advanceCount === '0') {
elseif ($advanceCount === '0' && $advanceSoldOut) {
$result['cartNav'] = false;
$result['cartType'] = 'ordinary';
}
... ... @@ -734,7 +736,7 @@ class CartModel
do {
// 数据为空时返回空的标志
if (empty($data['goods_list'])) {
if (empty($data['goods_list']) && empty($data['sold_out_goods_list'])) {
break;
}
... ...