diff options
author | Robin Appelman <icewind@owncloud.com> | 2013-01-20 03:11:04 +0100 |
---|---|---|
committer | Robin Appelman <icewind@owncloud.com> | 2013-01-20 03:11:04 +0100 |
commit | 83d622132224fa61b1518e6bca430518cf138401 (patch) | |
tree | 53f79474af81e07f1304a1cf10e866b2d8af652b /lib/base.php | |
parent | 8ca30d244c19b33e7e3b0da247b70160a3acc44f (diff) | |
parent | ebc0c4b85bc382efcf64ad0b2613d70a193b18f2 (diff) | |
download | nextcloud-server-83d622132224fa61b1518e6bca430518cf138401.tar.gz nextcloud-server-83d622132224fa61b1518e6bca430518cf138401.zip |
merge master into filesytem
Diffstat (limited to 'lib/base.php')
-rw-r--r-- | lib/base.php | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/lib/base.php b/lib/base.php index 6f537cf0893..dd5eef52fe3 100644 --- a/lib/base.php +++ b/lib/base.php @@ -30,7 +30,7 @@ require_once 'public/constants.php'; class OC { /** - * Assoziative array for autoloading. classname => filename + * Associative array for autoloading. classname => filename */ public static $CLASSPATH = array(); /** @@ -233,6 +233,12 @@ class OC public static function checkMaintenanceMode() { // Allow ajax update script to execute without being stopped if (OC_Config::getValue('maintenance', false) && OC::$SUBURI != '/core/ajax/update.php') { + // 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('', 'error', 'guest'); $tmpl->assign('errors', array(1 => array('error' => 'ownCloud is in maintenance mode'))); $tmpl->printPage(); @@ -323,6 +329,18 @@ class OC return OC::$router; } + + public static function loadAppClassPaths() + { + foreach(OC_APP::getEnabledApps() as $app) { + $file = OC_App::getAppPath($app).'/appinfo/classpath.php'; + if(file_exists($file)) { + require_once $file; + } + } + } + + public static function init() { // register autoloader @@ -539,6 +557,11 @@ class OC header('location: ' . OC_Helper::linkToRemote('webdav')); return; } + + // load all the classpaths from the enabled apps so they are available + // in the routing files of each app + OC::loadAppClassPaths(); + try { OC::getRouter()->match(OC_Request::getPathInfo()); return; |