if -- рисуем "Shopping cart block" else --- рисуем "Login Form"

Аватар пользователя dakiesse dakiesse 6 июня 2012 в 11:36

Подскажите пожайлуста, не обходимо в неком регионе шаблона выводит блок Авторизации пользователя при условии, что Guest еще ничего не положил в корзину, а если же уже, что-то имеет в ней, выводить блок Shopping cart block. Ну и конечно же если Guest авторизовался, то выводить так же Shopping cart block.
Не знаю как реализовать данный функционал:
а) где его собственно реализовать (пока, что вижу реализацию следующим образом, в Shopping cart block имеются два поля:
- Глобальный: PHP
- Commerce Order: Общая сумма заказа (Общая сумма заказа) [Исключен из вывода, без него не хочет вообще рендерится блок]
, в поле PHP имеется слеющий код:


<?php
    
global $user;
    
$order commerce_cart_order_load($user->uid);

    if(

$order) {
        
$quantity count($order->commerce_line_items['und']);
        
$price $order->commerce_order_total['und']['0']['amount'];
            
$price substr($price0strlen($price)-2); // Отсюда идет преобразование строки с ценой в нужный вид (1.000)
        
if(strlen($price) > 3)
            
$price preg_replace("/(\d+)(\d{3})$/""$1.$2"$price);
        echo 
"В корзине товаров: <b>" $quantity "</b>";
        echo 
"На общую сумму: <b>" .  $price "</b> руб.";
    }
?>

Добивать в устовие функцию которая рисует блок корзины, но не могу понят, что это за функция.
б) как узнать не наполнена ли корзина (если реализовывать за пределами вьюхи)

drupal: 7.14
commerce: 7.12