public function __construct() { //Вычисляем общую стоимость товаров в корзине, без налога, цены поставки $this->mTotalAmount = ShoppingCart::GetTotalAmount(); // Получаем список товаров в корзине $this->mItems = ShoppingCart::GetCartProducts(GET_CART_PRODUCTS); if (empty($this->mItems)) { $this->mEmptyCart = true; } else { $this->mEmptyCart = false; } $this->mLinkToCartDetails = Link::ToCart(); }
public function init() { switch ($this->_mCartAction) { case ADD_PRODUCT: $selected_attributes = array(); $selected_attribute_values = array(); // Получаем выбранные атрибуты товаров, если они есть... foreach ($_POST as $key => $value) { //Если в массиве $_POST есть аттрибуты, начинающиеся с "attr_" if (substr($key, 0, 5) == 'attr_') { //Получаем имя и значение выбранного атрибута $selected_attributes[] = substr($key, strlen('attr_')); $selected_attribute_values[] = $_POST[$key]; } } $attributes = ''; if (count($selected_attributes) > 0) { $attributes = implode('/', $selected_attributes) . ': ' . implode('/', $selected_attribute_values); } ShoppingCart::AddProduct($this->_mItemId, $attributes); header('Location: ' . $this->mLinkToContinueShopping); break; case REMOVE_PRODUCT: ShoppingCart::RemoveProduct($this->_mItemId); header('Location: ' . Link::ToCart()); break; case UPDATE_PRODUCTS_QUANTITIES: for ($i = 0; $i < count($_POST['itemId']); $i++) { ShoppingCart::Update($_POST['itemId'][$i], $_POST['quantity'][$i]); } header('Location: ' . Link::ToCart()); break; case SAVE_PRODUCT_FOR_LATER: ShoppingCart::SaveProductForLater($this->_mItemId); header('Location: ' . Link::ToCart()); break; case MOVE_PRODUCT_TO_CART: ShoppingCart::MoveProductToCart($this->_mItemId); header('Location: ' . Link::ToCart()); break; default: // не делаем ничего break; } //Вычисляем общую стоимость товаров в корзине без учета //налогов и цены доставки $this->mTotalAmount = ShoppingCart::GetTotalAmount(); //Получаем список товаров в корзине $this->mCartProducts = ShoppingCart::GetCartProducts(GET_CART_PRODUCTS); //Получаем список товаров, отложенных для оплаты в будущем $this->mSavedCartProducts = ShoppingCart::GetCartProducts(GET_CART_SAVED_PRODUCTS); //Проверяем не пуста ли корзина if (count($this->mCartProducts) == 0) { $this->mIsCartNowEmpty = 1; } //Проверяем не пуст ли список отложенных товаров if (count($this->mSavedCartProducts) == 0) { $this->mIsCartLaterEmpty == 1; } //Создаем ссылки для операций с корзиной for ($i = 0; $i < count($this->mCartProducts); $i++) { $this->mCartProducts[$i]['save'] = Link::ToCart(SAVE_PRODUCT_FOR_LATER, $this->mCartProducts[$i]['item_id']); $this->mCartProducts[$i]['remove'] = Link::ToCart(REMOVE_PRODUCT, $this->mCartProducts[$i]['item_id']); } for ($i = 0; $i < count($this->mSavedCartProducts); $i++) { $this->mSavedCartProducts[$i]['move'] = Link::ToCart(MOVE_PRODUCT_TO_CART, $this->mSavedCartProducts[$i]['item_id']); $this->mSavedCartProducts[$i]['remove'] = Link::ToCart(REMOVE_PRODUCT, $this->mSavedCartProducts[$i]['item_id']); } }