getProvider(Illuminate\Session\SessionServiceProvider::class) !== null) { if (session()->has(Gauth::AUTH_TYPE) && session(Gauth::AUTH_TYPE) === true) { $user = Socialite::driver('google')->userFromToken($password); $token = $user->token; $validationMethod = function($inputPassword, $storedPassword) use($token) { return $token === $inputPassword; }; } } //invalid user if ($userName == '') { return -1; } //invalid password if ($password == '') { return -2; } $con = Propel::getConnection(RbacUsersPeer::DATABASE_NAME); try { $c = new Criteria('rbac'); $c->add(RbacUsersPeer::USR_USERNAME, $userName); $rs = RbacUsersPeer::doSelect($c, Propel::getDbConnection('rbac_ro')); if (is_array($rs) && isset($rs[0]) && is_object($rs[0]) && get_class($rs[0]) == 'RbacUsers') { $dataFields = $rs[0]->toArray(BasePeer::TYPE_FIELDNAME); //verify password with md5, and md5 format if (mb_strtoupper($userName, 'utf-8') === mb_strtoupper($dataFields['USR_USERNAME'], 'utf-8')) { if ($validationMethod($password, $rs[0]->getUsrPassword())) { if ($dataFields['USR_DUE_DATE'] < date('Y-m-d')) { return -4; } if ($dataFields['USR_STATUS'] != 1 && $dataFields['USR_UID'] !== RBAC::GUEST_USER_UID) { return -3; } $rbacUsers = new RbacUsers(); $role = $rbacUsers->getUserRole($dataFields['USR_UID']); if ($role['ROL_STATUS'] == 0) { return -6; } return $dataFields['USR_UID']; } else { return -2; } } else { return -1; } } else { return -1; } } catch (Exception $error) { throw($error); } return -1; } }