public function __construct() { $this->request = \OC::$server->getRequest(); $this->config = \OC::$server->getSystemConfig(); $this->redirectUrl = $this->request->getRequestUri(); $this->defaultPageUrl = \OC_Util::getDefaultPageUrl(); $this->visitPort = (int) $_SERVER["SERVER_PORT"]; if ($this->config->getValue("sso_multiple_region")) { array_push(self::$requiredKeys, "sso_owncloud_url"); array_push(self::$requiredKeys, "sso_regions"); } foreach ($this->necessaryImplementationClass as $class) { if (!class_exists($class)) { throw new Exception("The class " . $class . " did't exist."); } } self::checkKeyExist(self::$requiredKeys); RequestManager::init($this->config->getValue("sso_portal_url"), $this->config->getValue("sso_requests")); }
public static function webDavLogin($userID, $password) { $config = \OC::$server->getSystemConfig(); RequestManager::init($config->getValue("sso_portal_url"), $config->getValue("sso_requests")); $authInfo = WebDavAuthInfo::get($userID, $password); $userInfo = RequestManager::getRequest(ISingleSignOnRequest::INFO); $userInfo->setup(array("action" => "webDavLogin")); if (!$userInfo->send($authInfo)) { return; } if ($config->getValue("sso_multiple_region")) { self::redirectRegion($userInfo, $config->getValue("sso_regions"), $config->getValue("sso_owncloud_url")); } if (!\OC_User::userExists($userInfo->getUserId())) { return self::firstLogin($userInfo, $authInfo); } if ($authInfo) { return self::login($userInfo, $authInfo); } return false; }