Exemple #1
0
 public static function checkSingleUserMode($lockIfNoUserLoggedIn = false)
 {
     if (!\OC::$server->getSystemConfig()->getValue('singleuser', false)) {
         return;
     }
     $user = OC_User::getUserSession()->getUser();
     if ($user) {
         $group = \OC::$server->getGroupManager()->get('admin');
         if ($group->inGroup($user)) {
             return;
         }
     } else {
         if (!$lockIfNoUserLoggedIn) {
             return;
         }
     }
     // send http status 503
     header('HTTP/1.1 503 Service Temporarily Unavailable');
     header('Status: 503 Service Temporarily Unavailable');
     header('Retry-After: 120');
     // render error page
     $template = new OC_Template('', 'singleuser.user', 'guest');
     $template->printPage();
     die;
 }
 /**
  * Try to login a user
  *
  * @param string $loginname The login name of the user to log in
  * @param string $password The password of the user
  * @return boolean|null
  *
  * Log in a user and regenerate a new session - if the password is ok
  */
 public static function login($loginname, $password)
 {
     $result = \OC_User::getUserSession()->login($loginname, $password);
     if ($result) {
         // Refresh the token
         \OC::$server->getCsrfTokenManager()->refreshToken();
         //we need to pass the user name, which may differ from login name
         $user = \OC_User::getUserSession()->getUser()->getUID();
         \OC_Util::setupFS($user);
         //trigger creation of user home and /files folder
         \OC::$server->getUserFolder($user);
     }
     return $result;
 }
Exemple #3
0
	/**
	 * register hooks for the cache
	 */
	public static function registerCacheHooks() {
		if (\OC::$server->getSystemConfig()->getValue('installed', false) && !\OCP\Util::needUpgrade()) { //don't try to do this before we are properly setup
			\OCP\BackgroundJob::registerJob('OC\Cache\FileGlobalGC');

			// NOTE: This will be replaced to use OCP
			$userSession = \OC_User::getUserSession();
			$userSession->listen('postLogin', '\OC\Cache\File', 'loginListener');
		}
	}
 public static function tearDownAfterClass()
 {
     \OC_User::deleteUser(\OC_User::getUserSession()->getUser()->getUID());
 }