function addTokens($parents) { $tokens = []; foreach ($parents as $parent) { $tokens[] = Tokens::createObj(['parent_id' => $parent->id, 'token' => uniqid('token-'), 'type' => rand(0, 1)]); } return $tokens; }
/** * @return Tokens */ public function getTokens() { if (empty($this->tokens)) { $mapper = DbSingleton::getTokensMapper(); $tokenSet = $mapper->getTokens($this->id); if (!$tokenSet) { return []; } foreach ($tokenSet as $tokenRow) { $this->tokens[] = Tokens::createObj($tokenRow); } } return $this->tokens; }
/** * Добавление токена для устройства * (я присылаю логин, пароль, тип устройства, и токен) * ты смотришь, если такого ключа нет, то добавляешь данные в базу * @param $login * @param $password * @param $device * @param $token * @return mixed */ public function addToken($login, $password, $device, $token) { if (!($parent = Parents::validation($login, $password))) { return false; } $oldToken = $parent->getToken($token); $newToken = Tokens::createObj(['type' => $device, 'token' => $token, 'parent_id' => $parent->id]); if ($oldToken) { if ($oldToken->compare($newToken)) { return true; } } $newToken->save(); return true; }