Example #1
0
$arParams["DETAIL_URL"] = trim($arParams["DETAIL_URL"]);
$IBLOCK_ID = intval(COption::GetOptionString("anmaslov.stall", "iblock_id"));
//$arParams["SITE_NAME"] = trim($arParams["SITE_NAME"]);
if (strlen($arParams["ADMIN_EMAIL"]) <= 0) {
    $arParams["ADMIN_EMAIL"] = COption::GetOptionString("anmaslov.stall", "property_manager_email");
}
$arParams["EVENT_NAME"] = 'STALL_EMAIL';
$arResult["SHOW_FORM"] = 0;
$cart = new StallCart('anmaslov.stall');
if ($cart->cartCount()) {
    if (isset($_GET["del"])) {
        //Удаление элемента из корзины
        $del = $_GET["del"];
        if (preg_match('/^[1-9]\\d*$/', $del)) {
            //Проверка на целое число
            $cart->remove($del);
            //LocalRedirect($APPLICATION->GetCurPageParam());
        }
    }
    if (isset($_POST["BasketRefresh"])) {
        //обновление корзины
        foreach ($_POST as $arPostVal => $count) {
            if (strstr($arPostVal, "cart_item_")) {
                $id = substr($arPostVal, 10);
                if (preg_match('/^[1-9]\\d*$/', $count)) {
                    //Проверка на целое число
                    $cart->update($id, $count);
                }
            }
        }
        LocalRedirect($APPLICATION->GetCurPageParam());
Example #2
0
 public function testWrongTypes()
 {
     $cart = new StallCart($this->cartVar);
     $cart->add(4, 5);
     $this->assertEquals(1, $cart->cartCount());
     $cart->add(0, 3);
     $cart->add(-1, 3);
     $cart->add("text", 3);
     $this->assertEquals(1, $cart->cartCount());
     $cart->add(3, "text");
     $this->assertEquals(1, $cart->cartCount());
     $cart->remove("text");
     $this->assertEquals(1, $cart->cartCount());
 }
Example #3
0
<?php

require $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_before.php";
/**
 * @link https://github.com/anmaslov/stall
 * @copyright Copyright &copy; Alexey Maslov, 2016
 * @license http://opensource.org/licenses/mit-license.php
 */
if (!CModule::IncludeModule('anmaslov.stall')) {
    return;
}
$cart = new StallCart('anmaslov.stall');
$sAction = $_REQUEST['action'];
$id = (int) $_REQUEST['id'];
$count = (int) $_REQUEST['count'];
if ($sAction) {
    switch ($sAction) {
        case 'add':
            $cart->add($id, $count);
            break;
        case 'remove':
            $cart->remove($id, $count);
            break;
    }
}
echo \Bitrix\Main\Web\Json::encode($cart->viewCart());