From 31ce320c5242697b79204485f33f276fc0558a76 Mon Sep 17 00:00:00 2001
From: Thomas Mueller <thomas.mueller@tmit.eu>
Date: Mon, 14 Jan 2013 21:39:55 +0100
Subject: [PATCH] in case of maintenance the error page returns http status
 503.

This is necessary to enable the desktop sync client to react properly.
Currently the SabreDAV plugin OC_Connector_Sabre_MaintenancePlugin is not executed because this error page is returned before the SabreDAV code is executed
---
 lib/base.php | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/lib/base.php b/lib/base.php
index 3d3e7d59f9..6e6880bc43 100644
--- a/lib/base.php
+++ b/lib/base.php
@@ -231,6 +231,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();
-- 
GitLab