You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

214 lines
9.1 KiB

{template 'header'}
<style>
table{font-size:16px;}
select{padding:5px;}
.t_r {font-size:16px;}
.f_gray{font-size:14px;}
.cart-step{font-size:14px;}
</style>
{if $action == 'show'}
<div class="m">
<div class="nav">
<a href="{$MODULE[1][linkurl]}">首页</a> <i>&gt;</i> <a href="{$MOD[linkurl]}">{$MOD[name]}</a> <i>&gt;</i> <a href="?mid={$mid}">购物车</a>
</div>
{if $code > 0}
<div class="cart-msg"><img src="image/ok.gif" alt="" align="absmiddle"/> 商品已成功加入购物车!
&nbsp;&nbsp;&nbsp;&nbsp;<a href="{DT_PATH}api/redirect.php?mid={$moduleid}&itemid={$code}" class="b">返回商品</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="?mid={$mid}" class="b">去购物车结算</a></div>
{else}
<div class="cart-msg">
<img src="image/ko.gif" alt="" align="absmiddle"/>
添加失败!
{if $code == -1}
商品已经下架
{elseif $code == -2}
商品由您自己发布
{elseif $code == -5}
商品库存不足
{else}
商品已经下架或由您自己发布
{/if}
&nbsp;&nbsp;&nbsp;&nbsp;<a href="{if $code == -1}{$MOD[linkurl]}{else}{DT_PATH}api/redirect.php?mid={$moduleid}&itemid={$id}{/if}" class="b">重新挑选</a>
</div>
{/if}
</div>
{else}
<script type="text/javascript">var errimg = '{DT_SKIN}image/nopic50.gif';</script>
<div class="m">
<div class="{if $lists}nav nav-b{else}nav{/if}">
{if $lists}<div><a href="?mid={$mid}&action=clear" onclick="return confirm('确定要清空购物车吗?');" class="b">清空</a></div>{/if}
<a href="{$MODULE[1][linkurl]}">首页</a> <i>&gt;</i> <a href="{$MOD[linkurl]}">{$MOD[name]}</a> <i>&gt;</i> <a href="?mid={$mid}">购物车</a>
</div>
{if $lists}
<form method="post" action="buy.php" onsubmit="return Mcheck();" style="border: 1px solid #ddd;">
<input type="hidden" name="from" value="cart"/>
<input type="hidden" name="mid" value="{$mid}"/>
<table cellpadding="16" cellspacing="0" class="tb">
<tr>
<th width="20"><input type="checkbox" checked="checked" id="check-all" onclick="Ccheck();calculate();"/></th>
<th width="50">图片</th>
<th>商品</th>
<th width="60">库存</th>
<th width="60">单价</th>
<th width="100">数量</th>
<th width="100">金额</th>
<th width="60">删除</th>
</tr>
{loop $lists $tags}
{loop $tags $i $t}
{if $i == 0}
<tr align="center" bgcolor="#FAFAFA">
<td><input type="checkbox" checked="checked" id="check-{$t[username]}" onclick="Ccheck('{$t[username]}');calculate();" data-check="{$t[username]}"/></td>
<td align="left" colspan="3">
{if $t[vip]}<img src="{DT_SKIN}image/vip_{$t[vip]}.gif" alt="{VIP}" title="{VIP}:{$t[vip]}级" align="absmiddle"/> {/if}<a href="{userurl($t[username])}" target="_blank">{$t[company]}</a>
{if $DT[im_web]}{im_web($t[username].'&mid='.$t[mid].'&itemid='.$t[itemid])}&nbsp;{/if}
{if $t[qq] && $DT[im_qq]}{im_qq($t[qq])}&nbsp;{/if}
{if $t[wx] && $DT[im_wx]}{im_wx($t[wx], $t[username])}&nbsp;{/if}
{if $t[ali] && $DT[im_ali]}{im_ali($t[ali])}&nbsp;{/if}
{if $t[skype] && $DT[im_skype]}{im_skype($t[skype])}</a>&nbsp;{/if}
</td>
<td>
{php $promos = get_promos($t[username]);}
{if $promos}
<a href="{$MODULE[2][linkurl]}coupon.php?username={$t[username]}" target="_blank"><div class="cart-promo">优惠券</div></a>
{/if}
</td>
<td></td>
<td></td>
<td></td>
</tr>
{/if}
<tr align="center" id="tr_{$t[key]}" class="f_gray">
<td>
<input type="checkbox" name="cart[]" value="{$t[key]}"{if $t[valid]} checked="checked" onclick="calculate()"{else}disabled{/if} id="check_{$t[key]}" data-check="{$t[username]}"/>
<input type="hidden" id="a1_{$t[key]}" value="{$t[a1]}"/>
<input type="hidden" id="a2_{$t[key]}" value="{$t[a2]}"/>
<input type="hidden" id="a3_{$t[key]}" value="{$t[a3]}"/>
<input type="hidden" id="p1_{$t[key]}" value="{$t[p1]}"/>
<input type="hidden" id="p2_{$t[key]}" value="{$t[p2]}"/>
<input type="hidden" id="p3_{$t[key]}" value="{$t[p3]}"/>
<input type="hidden" id="amount_{$t[key]}" value="{$t[amount]}"/>
</td>
<td><a href="{$t[linkurl]}" target="_blank"><img src="{$t[thumb]}" width="50" alt="{$t[alt]}" onerror="this.src=errimg;"/></a></td>
<td align="left" style="line-height:24px;color:#666666;"><a href="{$t[linkurl]}" target="_blank" class="b" title="{$t[alt]}">{$t[title]}</a><br/>
{if $t[m1]}{$t[n1]}:{$t[m1]}&nbsp;{/if}{if $t[m2]}{$t[n2]}:{$t[m2]}&nbsp;{/if}{if $t[m3]}{$t[n3]}:{$t[m3]}&nbsp;{/if}
</td>
<td>{if $t[amount]>0}{$t[amount]}{else}<span class="f_red">库存不足</span>{/if}</td>
<td title="{if $t[a2]}{$t[a1]}-{$t[a2]}{$t[unit]} {$DT[money_sign]}{$t[p1]}&#10;{if $t[a3]}{$t[a2]+1}-{$t[a3]}{$t[unit]} {$DT[money_sign]}{$t[p2]}&#10;{$t[a3]}{$t[unit]}以上 {$DT[money_sign]}{$t[p3]}{else}{$t[a2]+1}{$t[unit]}以上 {$DT[money_sign]}{$t[p2]}{/if}{else}{$DT[money_sign]}{$t[p1]}{/if}"><span class="f_b" id="price_{$t[key]}">{$t[price]}</span></td>
<td class="f_gray">{if $t[valid]}<img src="{DT_SKIN}image/arrow_l.gif" width="16" height="8" alt="减少" class="c_p" onclick="alter('{$t[key]}', '-');"/><input type="text" name="amounts[{$t[key]}]" value="{$t[a]}" id="number_{$t[key]}" size="3" onblur="calculate();" class="cc_inp" style="padding:5px"/> <img src="{DT_SKIN}image/arrow_r.gif" width="16" height="8" alt="增加" class="c_p" onclick="alter('{$t[key]}', '+');"/>{else}失效{/if}</td>
<td><span class="f_price" id="total_{$t[key]}" total-{$t[username]}="1">{$t[price]}</span></td>
<td class="c_p" onclick="if(confirm('确定要删除此商品吗?')) move('{$t[key]}');">删除</a></td>
</tr>
{/loop}
{/loop}
</table>
<div class="cart-foot">
<table cellpadding="0" cellspacing="0" width="100%">
<tr>
<td><a href="javascript:;" onclick="move_muti();">删除选中商品</a></td>
<td><p>已选商品 <span class="f_red f_b px16" id="total_good"></span>&nbsp;&nbsp;&nbsp;&nbsp;合计(不含运费): <span class="f_red f_b px16" id="total_amount"></span></p></td>
<td width="96"><input type="submit" value="结算"/></td>
</tr>
</table>
</div>
</form>
{else}
<div class="cart-msg"><img src="{DT_SKIN}image/cart_empty.png" width="57" height="49" alt="" align="absmiddle"/>
{if $action == 'guest'}
您还没有登录,请先 <a href="{$DT[file_login]}" class="b">登录</a><a href="{$DT[file_register]}" class="b">注册</a>
{elseif $action == 'close'}
购物车功能未开放
{else}
您的 <span class="f_orange">购物车</span> 还是空的,赶快行动吧!马上去 <a href="{$MOD[linkurl]}" class="b">挑选商品</a>
{/if}
</div>
{/if}
</div>
{/if}
<script type="text/javascript">
function Ccheck(key) {
$(key ? '[data-check="'+key+'"]' : '[data-check]').each(function(){
$(this).prop('checked', $('#check-'+(key ? key : 'all')).prop('checked') ? true : false);
});
}
function Mcheck() {
if(Dd('total_good').innerHTML == '0') {
alert('最少需要挑选1件商品');
window.scroll(0, 0);
return false;
}
return true;
}
function move_muti() {
if(Dd('total_good').innerHTML == '0') {
alert('未选择商品');
return;
}
if(confirm('确定要删除选中商品吗?')) {
var par = 'action=delete&mid={$mid}&ajax=1';
$(':checked').each(function(i) {
if($(this).attr('id').indexOf('check_') != -1) {
par += '&key[]='+$(this).val();
}
});
$.post('?', par, function(data) {
Go('?mid={$mid}&rand={$DT_TIME}');
});
}
}
function move(i) {
Dd('check_'+i).checked = false;
Dd('check_'+i).disabled = true;
Dh('tr_'+i);
calculate();
$.post('?', 'action=delete&mid={$mid}&ajax=1&key='+i, function(data) {
var cart_num = get_cart();
$('#destoon_cart').html(cart_num > 0 ? '<strong>'+cart_num+'</strong>' : '0');
if(data == 1 && Dd('total_good').innerHTML == '0') Go('?mid={$mid}&rand={$DT_TIME}');
});
}
function alter(i, t) {
if(t == '+') {
var maxa = parseFloat(Dd('amount_'+i).value);
if(maxa && Dd('number_'+i).value >= maxa) return;
Dd('number_'+i).value = parseInt(Dd('number_'+i).value) + 1;
} else {
var mina = parseFloat(Dd('a1_'+i).value);
if(Dd('number_'+i).value <= mina) return;
Dd('number_'+i).value = parseInt(Dd('number_'+i).value) - 1;
}
calculate();
}
function get_price(i) {
if(Dd('a2_'+i).value > 0) {
if(Dd('a3_'+i).value > 1 && parseInt(Dd('number_'+i).value) > parseInt(Dd('a3_'+i).value)) return Dd('p3_'+i).value;
if(Dd('a2_'+i).value > 1 && parseInt(Dd('number_'+i).value) > parseInt(Dd('a2_'+i).value)) return Dd('p2_'+i).value;
return Dd('p1_'+i).value;
}
return Dd('p1_'+i).value
}
function calculate() {
var _good = _amount = _total = 0;
$(':checked').each(function(i) {
if($(this).attr('id').indexOf('check_') != -1) {
var key = $(this).val();
var num, good, maxa, mina, price;
num = parseInt(Dd('number_'+key).value);
maxa = parseInt(Dd('amount_'+key).value);
mina = parseInt(Dd('a1_'+key).value);
if(num < mina) Dd('number_'+key).value = num = mina;
if(num > maxa) Dd('number_'+key).value = num = maxa;
if(isNaN(num) || num < 0) Dd('number_'+key).value = num = mina;
_good++;
price = parseFloat(get_price(key));
_total = price*num;
_amount += _total;
Dd('price_'+key).innerHTML = price.toFixed(2);
Dd('total_'+key).innerHTML = _total.toFixed(2);
}
});
Dd('total_good').innerHTML = _good;
Dd('total_amount').innerHTML = _amount.toFixed(2);
}
{if $lists}$(function(){calculate();});{/if}
</script>
{template 'footer'}