コード例 #1
0
ファイル: MoneyController.php プロジェクト: krvd/cms-Inji
 public function refillAction($currencyId = 0)
 {
     $currency = null;
     if (!empty($_POST['currency_id'])) {
         $currency = Money\Currency::get((int) $_POST['currency_id']);
     }
     if ($currency && !empty($_POST['amount'])) {
         $pay = new Money\Pay(['data' => '', 'user_id' => \Users\User::$cur->id, 'currency_id' => $currency->id, 'sum' => (double) str_replace(',', '.', $_POST['amount']), 'type' => 'refill', 'description' => 'Пополнение баланса ' . $currency->name(), 'callback_module' => 'Money', 'callback_method' => 'refillPayRecive']);
         $pay->save();
         Tools::redirect('/money/merchants/pay/' . $pay->id);
     } else {
         $currencies = Money\Currency::getList(['where' => ['refill', 1], 'forSelect' => true]);
         $this->view->setTitle('Пополнение счета');
         $this->view->page(['data' => compact('currencies')]);
     }
 }
コード例 #2
0
ファイル: Money.php プロジェクト: krvd/cms-Inji
 public function goToMerchant($pay, $merchant, $method, $merchantOptions)
 {
     $objectName = $merchant->object_name;
     if (is_array($pay)) {
         $pay = new Money\Pay($pay);
         $pay->save();
     }
     switch ($method['type']) {
         case 'transfer':
             $sum = $pay->sum / $method['transfer']->rate;
             break;
         default:
             $sum = $pay->sum;
     }
     $className = 'Money\\MerchantHelper\\' . $objectName;
     return $className::goToMerchant($pay->id, $sum, $method['currency'], $merchantOptions['description'], $merchantOptions['success'], $merchantOptions['false']);
 }
コード例 #3
0
ファイル: onlinePay.php プロジェクト: krvd/cms-Inji
<?php

return ['name' => 'Онлайн оплата', 'handler' => function ($cart) {
    if (\App::$cur->money) {
        $sums = $cart->finalSum();
        foreach ($sums->sums as $currency_id => $sum) {
            if (!$currency_id) {
                continue;
            }
            $pay = \Money\Pay::get([['data', $cart->id], ['currency_id', $currency_id], ['user_id', \Users\User::$cur->id]]);
            if (!$pay) {
                $pay = new Money\Pay(['data' => $cart->id, 'currency_id' => $currency_id, 'user_id' => \Users\User::$cur->id, 'sum' => $sum, 'description' => 'Оплата заказа №' . $cart->id . ' в онлайн-магазине', 'type' => 'pay', 'pay_status_id' => 1, 'callback_module' => 'Ecommerce', 'callback_method' => 'cartPayRecive']);
                $pay->save();
            } elseif ($pay->sum != $sum) {
                $pay->sum = $sum;
                $pay->save();
            }
        }
        return ['/money/merchants/pay/?data=' . $cart->id, 'Ваш заказ был создан. Вам необходимо оплатить счета, после чего с вами свяжется администратор для уточнения дополнительной информации', 'success'];
    }
}];