Exemplo n.º 1
0
 static function menu_cart(MenuItem $item)
 {
     $item->url = route('vanemart::cart');
     $item->classes[] = 'cart';
     $key = Cart::has() ? 'cart_filled' : 'cart';
     $item->caption = \Vane\Menu::caption($key);
     if (Cart::has()) {
         $sum = Cart::subtotal();
         $replaces = array('sumn' => Str::number($sum), 'summ' => Str::langNum('general.price', $sum), 'sumf' => Str::langNum('general.currency_full', $sum), 'sums' => Str::langNum('general.currency_short', $sum), 'count' => Str::langNum('general.goods', Cart::count()));
         $item->caption = Str::format($item->caption, $replaces);
         $item->hint = Str::format(\Vane\Menu::caption('cart_hint'), $replaces);
     }
 }
Exemplo n.º 2
0
    $goods = Product::where_in('sku', array_keys($skus))->get();
    foreach ($goods as $model) {
        $model->qty = $skus[$model->sku];
        $models[] = $model;
    }
});
/*-----------------------------------------------------------------------
| CHECKOUT BLOCK
|----------------------------------------------------------------------*/
// Fired to determine if the visitor can perform checkout with his current cart.
// If it returns exactly false checking out is prohibited.
//
//= bool
Event::listen(VANE_NS . 'checkout.can', function (Block_Checkout $block) {
    if ($min = Cart::isTooSmall()) {
        $block->status('small', array('min' => Str::langNum('general.price', $min), 'total' => Str::langNum('general.price', Cart::subtotal())));
        return false;
    }
});
// Fired when a user has been registered on demand after successfully placing an order.
//
//* $options hash - 'password' str, 'order' Order, 'block' Block_Checkout.
Event::listen(VANE_NS . 'checkout.reg_user', function (User $user, array &$options) {
    $view = Current::expand('mail.user.reg_on_order');
    $vars = array_only($options, 'password') + $user->to_array();
    Mail::sendTo($user->emailRecipient(), $view, $vars);
});
// Fired when an existing user has successfully placed a new order.
//
//* $options hash - 'order' Order, 'block' Block_Checkout.
Event::listen(VANE_NS . 'checkout.old_user', function (User $user, array &$options) {