]> source.dussan.org Git - nextcloud-server.git/commitdiff
Fix single user check in case no user is logged in
authorThomas Müller <thomas.mueller@tmit.eu>
Thu, 9 Apr 2015 21:47:24 +0000 (23:47 +0200)
committerThomas Müller <thomas.mueller@tmit.eu>
Thu, 9 Apr 2015 21:47:24 +0000 (23:47 +0200)
lib/base.php

index be397e524496fd5f0921291331a12b4c2985c3ff..02b55458f1f2c628aecfcc5001fed1d60772a4eb 100644 (file)
@@ -294,27 +294,33 @@ class OC {
                        header('Retry-After: 120');
 
                        // render error page
-                       $tmpl = new OC_Template('', 'update.user', 'guest');
+                       $template = new OC_Template('', 'update.user', 'guest');
                        OC_Util::addscript('maintenance-check');
-                       $tmpl->printPage();
+                       $template->printPage();
                        die();
                }
        }
 
        public static function checkSingleUserMode() {
+               if (!\OC::$server->getSystemConfig()->getValue('singleuser', false)) {
+                       return;
+               }
                $user = OC_User::getUserSession()->getUser();
-               $group = OC_Group::getManager()->get('admin');
-               if ($user && \OC::$server->getSystemConfig()->getValue('singleuser', false) && !$group->inGroup($user)) {
-                       // 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
-                       $tmpl = new OC_Template('', 'singleuser.user', 'guest');
-                       $tmpl->printPage();
-                       die();
+               if ($user) {
+                       $group = \OC::$server->getGroupManager()->get('admin');
+                       if ($group->inGroup($user)) {
+                               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();
        }
 
        /**