ecshop最粗鲁的跳过购物车直达checkout页面方式

修改flow.php

查找$_CFG['one_step_buy']换成下面,目的js可以控制清空购物车

 /* 更新:如果是一步购物,先清空购物车 */
    if ( ($_CFG['one_step_buy'] == '1') || !empty($goods->one_step_buy) )
    {
        clear_cart();
    }
------

修改根目录下面的js/commom.js

 

-----------------

增加以下代码,其实是从原来的addtocart小改一下而来的,呵呵;应急用

然后在addtocart出现的地方也放上它 buyOneStep,参数相同就可以直达只购买一件商品了,2.7版本测试过

------------------


/* *
 * 一步购物
 */
function buyOneStep(goodsId, parentId)
{
  var goods        = new Object();
  var spec_arr     = new Array();
  var fittings_arr = new Array();
  var number       = 1;//只用一个
  var formBuy      = document.forms['ECS_FORMBUY'];
  var quick           = 0;

  // 检查是否有商品规格
  if (formBuy)
  {
    spec_arr = getSelectedAttributes(formBuy);
    quick = 1;
  }

  goods.quick    = quick;
  goods.spec     = spec_arr;
  goods.one_step_buy    = 1;//要求清空cart
  goods.goods_id = goodsId;
  goods.number   = number;
  goods.parent   = (typeof(parentId) == "undefined") ? 0 : parseInt(parentId);

  Ajax.call('flow.php?step=add_to_cart', 'goods=' + goods.toJSONString(), buyOneStepForCheckout, 'POST', 'JSON');
}

/* *
 * 跳过购物车,直接到checkout
 */
function buyOneStepForCheckout(result)
{
  if (result.error > 0)
  {
    // 如果需要缺货登记,跳转
    if (result.error == 2)
    {
      if (confirm(result.message))
      {
        location.href = 'user.php?act=add_booking&id=' + result.goods_id + '&spec=' + result.product_spec;
      }
    }
    // 没选规格,弹出属性选择框
    else if (result.error == 6)
    {
      openSpeDiv(result.message, result.goods_id, result.parent);
    }
    else
    {
      alert(result.message);
    }
  }
  else
  {
    var cartInfo = document.getElementById('ECS_CARTINFO');
    var cart_url = 'flow.php?step=checkout';
    if (cartInfo)
    {
      cartInfo.innerHTML = result.content;
    }
    
    result.one_step_buy = 1;// 一步

    if (result.one_step_buy == '1')
    {
      location.href = cart_url;
    }
    else
    {
      switch(result.confirm_type)
      {
        case '1' :
          if (confirm(result.message)) location.href = cart_url;
          break;
        case '2' :
          if (!confirm(result.message)) location.href = cart_url;
          break;
        case '3' :
          location.href = cart_url;
          break;
        default :
          break;
      }
    }
  }
}

 

 

------------------

为了配合抽奖奖品直接兑换支付方式来使用的.

----------------

ecshop最粗鲁的跳过购物车直达checkout页面方式 - qidizi - qidizi 的博客ecshop最粗鲁的跳过购物车直达checkout页面方式 - qidizi - qidizi 的博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值