public function payPayeer($params = array()) { if (empty($this->params)) { $this->params = $params; } $params = $this->params; if (isset($params['m_operation_id']) && isset($params['m_sign'])) { $m_key = self::PAYEER_SECRET; $arHash = array($params['m_operation_id'], $params['m_operation_ps'], $params['m_operation_date'], $params['m_operation_pay_date'], $params['m_shop'], $params['m_orderid'], $params['m_amount'], $params['m_curr'], $params['m_desc'], $params['m_status'], $m_key); $sign_hash = strtoupper(hash('sha256', implode(':', $arHash))); if ($params['m_sign'] == $sign_hash && $params['m_status'] == 'success') { if (empty($params['m_orderid'])) { return; } $m_orderid = $params['m_orderid']; list($user_id, $salt) = explode('_', $m_orderid); $user = new User($this->db); $user->allocateUserById(intval($user_id)); $subscription_days = $this->getSubDaysByAmount(intval($params['m_amount'])); $user->addDaysToSubscription($subscription_days); $this->db->query("INSERT INTO `payments` (operation_id, user_id, amount, datetime, sender, label, days)\n VALUES(?i, ?i, '{$params['m_amount']}', ?s, ?s, ?s, ?i)", $params['m_operation_id'], $user->getId(), $params['m_operation_pay_date'], 'payeer:' . $params['m_operation_ps'], $params['m_orderid'] . '.' . $params['m_curr'], $subscription_days); $this->db->query("COMMIT"); $this->success = true; } } }
public function signIn() { $auth_model = new AuthorizationModel($this->db); $user_object = array('domain' => empty($this->data['domain']) ? 'id' . $this->data['id'] : $this->data['domain'], 'first_name' => empty($this->data['first_name']) ? ' ' : $this->data['first_name'], 'href' => empty($this->data['href']) ? 'http://vk.com' : $this->data['href'], 'id' => $this->data['id'], 'last_name' => empty($this->data['last_name']) ? ' ' : $this->data['last_name'], 'photo' => empty($this->data['photo']) ? ' ' : $this->data['photo']); foreach ($user_object as $value) { if (empty($value)) { return; } } $auth_model->setUserObject($user_object); $auth_model->auth(); $result = $auth_model->getResult(); if ($result) { $user = new User($this->db); $user->allocateUserByVkId(intval($user_object['id'])); $key_manager = new KeyManager(); $access_key = $this->generateKey(); $key = $key_manager->createKey($user->getId(), $access_key); $user->addAccessKey($access_key); $this->setCookie('ts_sid', $key, time() + 365 * 24 * 3600, '/', 'twosphere.ru'); $this->setSession('ts_sid', $key); } $this->result = $result; }