шаблон корзины для заказа коробками

Отправлено planktun от ср, 03/23/2016 - 05:36

<?if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();
CModule::IncludeModule("highloadblock"); // подключить инфоблоки
use Bitrix\Highloadblock as HL;
use Bitrix\Main\Entity; 
$hlblock_id = 1;// id инфоблока
$hlblock = HL\HighloadBlockTable::getById($hlblock_id)->fetch();
 
$entity = HL\HighloadBlockTable::compileEntity($hlblock);
$entity_data_class = $entity->getDataClass();


?>
<div id="id-cart-list">
    <div class="sort">
        <div class="sorttext"><?=GetMessage("SALE_PRD_IN_BASKET")?></div>
        <a href="javascript:void(0)" class="sortbutton current"><?=GetMessage("SALE_PRD_IN_BASKET_ACT")?></a>
        <?if ($countItemsDelay=count($arResult["ITEMS"]["DelDelCanBuy"])):?><a href="javascript:void(0)" onclick="ShowBasketItems(2);" class="sortbutton"><?=GetMessage("SALE_PRD_IN_BASKET_SHELVE")?> (<?=$countItemsDelay?>)</a><?endif?>
        <?if ($countItemsSubscribe=count($arResult["ITEMS"]["ProdSubscribe"])):?><a href="javascript:void(0)" onclick="ShowBasketItems(3);" class="sortbutton"><?=GetMessage("SALE_PRD_IN_BASKET_SUBSCRIBE")?> (<?=$countItemsSubscribe?>)</a><?endif?>
        <?if ($countItemsNotAvailable=count($arResult["ITEMS"]["nAnCanBuy"])):?><a href="javascript:void(0)" onclick="ShowBasketItems(4);" class="sortbutton"><?=GetMessage("SALE_PRD_IN_BASKET_NOTA")?> (<?=$countItemsNotAvailable?>)</a><?endif?>
    </div>
<?$numCells = 0;?>
<table class="equipment mycurrentorders" rules="rows" >
    <thead>
        <tr style="text-align: center;">
            <?if (in_array("NAME", $arParams["COLUMNS_LIST"])):?>
                <td><?= GetMessage("SALE_NAME")?></td>
                <td></td>
                <?$numCells += 2;?>
            <?endif;?>
            <?if (in_array("VAT", $arParams["COLUMNS_LIST"])):?>
                <td><?= GetMessage("SALE_VAT")?></td>
                <?$numCells++;?>
            <?endif;?>
            <?if (in_array("TYPE", $arParams["COLUMNS_LIST"])):?>
                <td class="cart-item-type"><?= GetMessage("SALE_PRICE_TYPE")?></td>
                <?$numCells++;?>
            <?endif;?>
            
            <?if (in_array("WEIGHT", $arParams["COLUMNS_LIST"])):?>
                <td class="cart-item-weight"><?= GetMessage("SALE_WEIGHT")?></td>
                <?$numCells++;?>
            <?endif;?>
            <?if (in_array("QUANTITY", $arParams["COLUMNS_LIST"])):?>
                <td class="cart-item-quantity"><?= GetMessage("SALE_QUANTITY")?></td>
                <?$numCells++;?>
            <?endif;?>
            <td class="cart-item-quantity_item">Кол-во коробок</td>
            <?$numCells++;?>
            <?if (in_array("PRICE", $arParams["COLUMNS_LIST"])):?>
                <td class="cart-item-price"><?= GetMessage("SALE_PRICE")?></td>
                <?$numCells++;?>
            <?endif;?>
            <?if (in_array("PRICE", $arParams["COLUMNS_LIST"])):?>
                <td class="cart-item-price">Сумма</td>
                <?$numCells++;?>
            <?endif;?>
            <?if (in_array("DELETE", $arParams["COLUMNS_LIST"])):?>
                <td class="cart-item-delay"></td>
                <?$numCells++;?>
            <?endif;?>
            <?if (in_array("DELETE", $arParams["COLUMNS_LIST"])):?>
                <td class="cart-item-delay"></td>
                <?$numCells++;?>
            <?endif;?>
        </tr>
    </thead>
<?if(count($arResult["ITEMS"]["AnDelCanBuy"]) > 0):?>
    <tbody>
    <?
    $i=0;
    $ITOG=0;
//echo print_r($arResult["ITEMS"]["AnDelCanBuy"],true);
    foreach($arResult["ITEMS"]["AnDelCanBuy"] as $arBasketItems)
    { echo print_r();
        ?>
        <tr>
            <?if (in_array("NAME", $arParams["COLUMNS_LIST"])):?>
                <td>
                    <?if (strlen($arBasketItems["DETAIL_PAGE_URL"])>0):?>
                        <a href="<?=$arBasketItems["DETAIL_PAGE_URL"]?>">
                    <?endif;?>
                    <?if (strlen($arBasketItems["DETAIL_PICTURE"]["SRC"]) > 0) :?>
                        <img src="<?=$arBasketItems["DETAIL_PICTURE"]["SRC"]?>" alt="<?=$arBasketItems["NAME"] ?>"/>
                    <?else:?>
                        <img src="/bitrix/templates/bootstrap/images/no_foto.jpg" ALT='' WIDTH='80px' />
                    <?endif?>
                    <?if (strlen($arBasketItems["DETAIL_PAGE_URL"])>0):?>
                        </a>
                    <?endif;?>
                </td>
                <td class="cart-item-name" style="max-width: 200px;">
                    <?if (strlen($arBasketItems["DETAIL_PAGE_URL"])>0):?>
                        <a href="<?=$arBasketItems["DETAIL_PAGE_URL"]?>">
                    <?endif;?>
                        <?=$arBasketItems["NAME"] ?>
                    <?if (strlen($arBasketItems["DETAIL_PAGE_URL"])>0):?>
                        </a>
                    <?endif;?>
                    <?if (in_array("PROPS", $arParams["COLUMNS_LIST"]))
                    {
                        foreach($arBasketItems["PROPS"] as $val)
                        {
                            echo "<br />!".$val["NAME"].": ".$val["VALUE"];
                        }
                    }?>
                </td>
            <?endif;?>
            <?if (in_array("VAT", $arParams["COLUMNS_LIST"])):?>
                <td><?=$arBasketItems["VAT_RATE_FORMATED"]?></td>
            <?endif;?>
            <?if (in_array("TYPE", $arParams["COLUMNS_LIST"])):?>
                <td><?=$arBasketItems["NOTES"]?></td>
            <?endif;?>
            
            <?if (in_array("WEIGHT", $arParams["COLUMNS_LIST"])):?>
                <td><?=$arBasketItems["WEIGHT_FORMATED"]?></td>
            <?endif;?>
            <?if (in_array("QUANTITY", $arParams["COLUMNS_LIST"])):?>
                <td >
                    <div class="count_nav">
                        <a href="javascript:void(0)" class="minus" onclick="if (BX('QUANTITY_<?=$arBasketItems["ID"]?>').value > 1) BX('QUANTITY_<?=$arBasketItems["ID"]?>').value--;"></a>
                    </div>
                    <input maxlength="8" type="text" class="basket_quant" name="QUANTITY_<?=$arBasketItems["ID"]?>" value="<?
                    //preg_match('/\((.+)\)/', $arBasketItems["NAME"], $in_box);
                    $rsData = $entity_data_class::getList(array(
                        "select" => array("*"),
                        "order" => array("ID" => "ASC"),
                        "limit" => 1,
                        "filter" => array('UF_VLADELETS' =>$arBasketItems["PRODUCT_XML_ID"],'UF_NAME'=>'упак'),      
                    ));
                    $arData = $rsData->Fetch();
                    //$QUANTITY=$in_box[1];
                    $QUANTITY=$arData["UF_KOEFFITSIENT"];
                    
                    
                        //echo $QUANTITY;
                    if (empty($QUANTITY)) { $QUANTITY = 1;}
                    //$all_quanity=$arBasketItems["QUANTITY"]* $in_box[1];
                    if(isset($_GET["AJAX_CALL"]))
                    {

                        $box_quanity = $arBasketItems["QUANTITY"]/$QUANTITY;
                         $Q=1;
                    }
                    elseif($arBasketItems["QUANTITY"]>1)  {
                            $box_quanity = $arBasketItems["QUANTITY"]/$QUANTITY;
                         $Q=1;
                    }
                    else { $box_quanity = $arBasketItems["QUANTITY"]; $Q=$QUANTITY; }
                    
                    
                    
                    if($arBasketItems["QUANTITY"]!=1) 
                    {
                        echo $arBasketItems["QUANTITY"];
                    }
                    else {
                        if(($box_quanity - floor($box_quanity))==0)
                        {
                            echo $arBasketItems["QUANTITY"]*$QUANTITY;
                        }
                        else{
                            echo ceil($arBasketItems["QUANTITY"]*$QUANTITY*$box_quanity);
                        }
                        
                    }
                    
                    ?>" size="3" id="QUANTITY_<?=$arBasketItems["ID"]?>"  disabled>
                        <input maxlength="8" type="hidden" class="basket_quant" name="QUANTITY_<?=$arBasketItems["ID"]?>" value="<?
                    //preg_match('/\((.+)\)/', $arBasketItems["NAME"], $in_box);
                    //$all_quanity=$arBasketItems["QUANTITY"]* $in_box[1];
                    if(isset($arBasketItems["QUANTITY"]) AND $arBasketItems["QUANTITY"]!=1)
                    {
                        echo $arBasketItems["QUANTITY"];
                    }
                    else {
                        echo $arBasketItems["QUANTITY"]*$QUANTITY;
                    }
                    
                    ?>" size="3" id="QUANTITY_<?=$arBasketItems["ID"]?>" >
                    
                    <div class="count_nav">
                        <a href="javascript:void(0)" class="plus" onclick="BX('QUANTITY_<?=$arBasketItems["ID"]?>').value++;"></a>
                    </div>
                </td>
            <?endif;?>
            <td style="width:150px">
            <div  class="QUANTITY_minus" QUANTITY="<? echo $QUANTITY; ?>" item="QUANTITY_<?=$arBasketItems["ID"]?>" > &minus; </div>
            <input maxlength="8" QUANTITY="<? echo $QUANTITY; ?>" item="QUANTITY_<?=$arBasketItems["ID"]?>" class="basket_quant_tmp" size="3" value='<?php 
            //echo print_r($_GET);
            echo $box_quanity;
            ?> '>
            <div class="QUANTITY_plus"  QUANTITY="<? echo $QUANTITY; ?>" item="QUANTITY_<?=$arBasketItems["ID"]?>">+</div>
        
            </td>
            <?if (in_array("PRICE", $arParams["COLUMNS_LIST"])):?>
                <td class="cart-item-price">
                    <?if(doubleval($arBasketItems["FULL_PRICE"]) > 0):?>
                        <div class="discount-price"><?=$arBasketItems["PRICE_FORMATED"]?></div>
                        <div class="old-price"><?=$arBasketItems["FULL_PRICE_FORMATED"]?></div>
                    <?else:?>
                        <div class="price"><?=$arBasketItems["PRICE_FORMATED"];?></div>
                    <?endif?>
                </td>
            <?endif;?>
            <?if (in_array("PRICE", $arParams["COLUMNS_LIST"])):?>
                <td class="cart-item-price">
                        <div class="price"> <?
                            $price = (float)$arBasketItems["PRICE"];


                        if(isset($_GET["AJAX_CALL"]))
                        {
                            $ITOG+=$price*$arBasketItems["QUANTITY"]*$Q;
                            echo $price*$arBasketItems["QUANTITY"]*$Q;
                        }
                        else {
                            $ITOG+=$price*$arBasketItems["QUANTITY"]*$Q;
                            echo $price*$arBasketItems["QUANTITY"]*$Q;
                        }
                        ?> руб. </div>
                </td>
            <?endif;?>
                    <?if (in_array("DELETE", $arParams["COLUMNS_LIST"])):?>
                        <td><a class="deleteitem" href="<?=str_replace("#ID#", $arBasketItems["ID"], $arUrlTempl["delete"])?>" onclick="//return DeleteFromCart(this);" title="<?=GetMessage("SALE_DELETE_PRD")?>"></a></td>
                    <?endif;?>
            <?if (in_array("DELAY", $arParams["COLUMNS_LIST"])):?>
                <td><a class="setaside" href="<?=str_replace("#ID#", $arBasketItems["ID"], $arUrlTempl["delete"])?>"><?=GetMessage("SALE_DELETE")?></a></td>
            <?endif;?>
        </tr>
        <?
        $i++;
    }
    ?>
    </tbody>
</table>
<div class="alert alert-info">
<table class="myorders_itog">
    <tbody>
        <?if ($arParams["HIDE_COUPON"] != "Y"):?>
        <tr>
            <td rowspan="5" class="tal">
                <input class="input_text_style"
                    <?if(empty($arResult["COUPON"])):?>
                        onclick="if (this.value=='<?=GetMessage("SALE_COUPON_VAL")?>')this.value=''; this.style.color='black'"
                        onblur="if (this.value=='') {this.value='<?=GetMessage("SALE_COUPON_VAL")?>'; this.style.color='#a9a9a9'}"
                        style="color:#a9a9a9"
                    <?endif;?>
                        value="<?if(!empty($arResult["COUPON"])):?><?=$arResult["COUPON"]?><?else:?><?=GetMessage("SALE_COUPON_VAL")?><?endif;?>"
                        name="COUPON">
            </td>
        </tr>
        <?endif;?>
        <?if (in_array("WEIGHT", $arParams["COLUMNS_LIST"])):?>
            <tr>
                <td><?echo GetMessage("SALE_ALL_WEIGHT")?>:</td>
                <td><?=$arResult["allWeight_FORMATED"]?></td>
            </tr>
        <?endif;?>
        <?if (doubleval($arResult["DISCOUNT_PRICE"]) > 0):?>
            <tr>
                <td><?echo GetMessage("SALE_CONTENT_DISCOUNT")?><?
                    if (strLen($arResult["DISCOUNT_PERCENT_FORMATED"])>0)
                        echo " (".$arResult["DISCOUNT_PERCENT_FORMATED"].")";?>:
                </td>
                <td><?=$arResult["DISCOUNT_PRICE_FORMATED"]?></td>
            </tr>
        <?endif;?>
        <?if ($arParams['PRICE_VAT_SHOW_VALUE'] == 'Y'):?>
            <tr>
                <td><?echo GetMessage('SALE_VAT_EXCLUDED')?></td>
                <td><?
                echo $ITOG,'руб';
                //=$arResult["allNOVATSum_FORMATED"]
                ?></td>
            </tr>
            <tr>
                <td><?echo GetMessage('SALE_VAT_INCLUDED')?></td>
                <td><?=$arResult["allVATSum_FORMATED"]?></td>
            </tr>
        <?endif;?>
        <tr>
            <td><?= GetMessage("SALE_ITOGO")?>:</td>
            <td><?
            echo $ITOG,'руб';
            //=$arResult["allSum_FORMATED"]
            ?></td>
        </tr>
    </tbody>
</table>
<div class="clearfix"></div>
</div>

<br/>
<table class="w100p" style="border-top:1px solid #d9d9d9;margin-bottom:40px;">
    <tr>
        <td style="padding:30px 2px;" class="tal"><input type="submit" value="<?echo GetMessage("SALE_UPDATE")?>" name="BasketRefresh" class="btn"></td>
        <td style="padding:30px 2px;" class="tar">


            <? $summa = str_replace(" ","",$arResult["allSum_FORMATED"]);
                settype($summa, "integer");
                if($ITOG>=3000):?>
                <input type="submit" value="<?echo GetMessage("SALE_ORDER")?>" name="BasketOrder"  id="basketOrderButton2" class="btn">
            <?else:?>
                Минимальная сумма заказа 3000р.
            <?endif;?>
  

        </td>
    </tr>
</table>
<?else:?>
    <tbody>
        <tr>
            <td colspan="<?=$numCells?>" style="text-align:center">
                <div class="cart-notetext"><?=GetMessage("SALE_NO_ACTIVE_PRD");?></div>
                <a href="<?=SITE_DIR?>" class="bt3"><?=GetMessage("SALE_NO_ACTIVE_PRD_START")?></a><br><br>
            </td>
        </tr>
    </tbody>
</table>
<?endif;?>
</div>
<script>
jQuery(".basket_quant_tmp").change(function(){
    var name=$(this).attr("item");
    var QUANTITY=Number($(this).attr("QUANTITY"));
    var val =Math.floor(Number($(this).attr("value")));
    jQuery(".basket_quant[name="+name+"]").attr("value",QUANTITY*val);
    $(this).attr("value",val);
    
});
jQuery(".QUANTITY_minus").bind("click",function(){
    var name=$(this).attr("item");
    var QUANTITY=$(this).attr("QUANTITY");
    if (Number(jQuery(".basket_quant_tmp[item="+name+"]").attr("value"))>1)
    {
        if(Number(jQuery(".basket_quant_tmp[item="+name+"]").attr("value"))<2) 
        {
            jQuery(".basket_quant_tmp[item="+name+"]").attr("value",1);
            var val = Number(jQuery(".basket_quant_tmp[item="+name+"]").attr("value"));
            jQuery(".basket_quant[name="+name+"]").attr("value",QUANTITY*val);
        }
        else{
            jQuery(".basket_quant_tmp[item="+name+"]").attr("value",Math.floor(Number(jQuery(".basket_quant_tmp[item="+name+"]").attr("value")))-1);
            var val = Number(jQuery(".basket_quant_tmp[item="+name+"]").attr("value"));
            jQuery(".basket_quant[name="+name+"]").attr("value",QUANTITY*val);
    
        }

    }

});
jQuery(".QUANTITY_plus").bind("click",function(){
    var name=$(this).attr("item");
    var QUANTITY=$(this).attr("QUANTITY");
    jQuery(".basket_quant_tmp[item="+name+"]").attr("value",Math.floor(Number(jQuery(".basket_quant_tmp[item="+name+"]").attr("value")))+1);
    
    var val = Number(jQuery(".basket_quant_tmp[item="+name+"]").attr("value"));
    jQuery(".basket_quant[name="+name+"]").attr("value",QUANTITY*val);
});

</script>
 

Теги