public function orderIsPay($order_id) { $row = Model_Orders::get($order_id); if (!is_array($row)) { return; //ERROR } $user = Model_Users::getUser($row['owner_id']); $percent = Model_Percentes::getPercentRow($user); $percent = $percent['percent']; $receiveMoney = floatval($row['price']) * floatval($percent) / 100; $db = JO_Db::getDefaultAdapter(); $db->update('orders', array('paid_datetime' => new JO_Db_Expr('NOW()'), 'receive' => $receiveMoney), array('id = ?' => (int) $order_id)); $db->update(Model_Users::getPrefixDB() . 'users', array('earning' => new JO_Db_Expr('earning+' . $receiveMoney), 'total' => new JO_Db_Expr('total+' . $receiveMoney), 'sold' => new JO_Db_Expr('sold+' . $row['price']), 'sales' => new JO_Db_Expr('sales+1')), array('user_id = ?' => $row['owner_id'])); $you = Model_Users::getUser($row['user_id']); #CHECK REFERAL if ($you['referal_id'] != '0') { $row['order_id'] = $order_id; self::referalMoney($row, $you); } $db->update(Model_Users::getPrefixDB() . 'users', array('buy' => new JO_Db_Expr('buy+1')), array('user_id = ?' => $row['user_id'])); $toinsert = array('sales' => new JO_Db_Expr('sales+1'), 'earning' => new JO_Db_Expr('earning+' . $row['price'])); #UPDATE ITEM if ($row['extended'] == 'true') { $db->update('users', array('items' => new JO_Db_Expr('items-1')), array('user_id = ?' => $row['owner_id'])); $toinsert['status'] = 'extended_buy'; } $db->update('items', $toinsert, array('id = ?' => $row['item_id'])); return true; }
public function itemFormAction() { $this->view->order_info = Model_Orders::get(JO_Session::get('order_id')); if (!$this->view->order_info) { return; } $this->view->currency = WM_Currency::getCurrency(); if (JO_Registry::forceGet('paypal_sandbox_mode')) { $this->view->url = 'https://www.sandbox.paypal.com/cgi-bin/webscr'; } else { $this->view->url = 'https://www.paypal.com/cgi-bin/webscr'; } $this->view->paypal_email = JO_Registry::forceGet('paypal_email'); $this->view->return = WM_Router::create($this->getRequest()->getBaseUrl() . '?module=' . $this->view->order_info['module'] . '&controller=items&action=success_payment'); $this->view->notify_url = WM_Router::create($this->getRequest()->getBaseUrl() . '?module=' . $this->view->order_info['module'] . '&controller=payments_paypal&action=callback_item'); $this->view->cancel_return = WM_Router::create($this->getRequest()->getBaseUrl() . '?module=' . $this->view->order_info['module'] . '&controller=items&item_id=' . $this->view->order_info['item_id'] . '&name=' . WM_Router::clearName($this->view->order_info['name'])); $this->view->email = JO_Session::get('email'); $this->view->first_name = JO_Session::get('firstname'); $this->view->last_name = JO_Session::get('lastname'); }
public function success_paymentAction() { $this->noViewRenderer(true); $request = $this->getRequest(); $info = Model_Orders::get(JO_Session::get('order_id')); if ($info && $info['paid'] == 'true') { Model_Orders::orderIsPay($info['id']); JO_Session::set('msg_success', $this->translate('You have successfully made a payment!')); } else { JO_Session::clear('order_id'); JO_Session::set('msg_error', $this->translate('Your payment have status ' . WM_Orderstatuses::orderStatuses($info['order_status_id']))); } $this->redirect(WM_Router::create($request->getBaseUrl() . '?controller=users&action=downloads')); }