aboutsummaryrefslogtreecommitdiffstats
path: root/public.php
diff options
context:
space:
mode:
authorskjnldsv <skjnldsv@protonmail.com>2024-07-16 08:29:44 +0200
committerskjnldsv <skjnldsv@protonmail.com>2024-07-30 12:12:32 +0200
commit0e88e066e0bd10c500bab8c8abcd5ab9ce4f1240 (patch)
treea67ddd3bf21884a1e4a0eef7d88d435b2b133315 /public.php
parent68864ab3945f8e1b2e2209105e0189905ab07003 (diff)
downloadnextcloud-server-0e88e066e0bd10c500bab8c8abcd5ab9ce4f1240.tar.gz
nextcloud-server-0e88e066e0bd10c500bab8c8abcd5ab9ce4f1240.zip
fix(dav): drop unwanted RemoteException class
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
Diffstat (limited to 'public.php')
-rw-r--r--public.php18
1 files changed, 12 insertions, 6 deletions
diff --git a/public.php b/public.php
index 11ee19d1ad6..d9320227dfd 100644
--- a/public.php
+++ b/public.php
@@ -33,30 +33,33 @@ try {
// this policy with a softer one if debug mode is enabled.
header("Content-Security-Policy: default-src 'none';");
+ // Check if Nextcloud is in maintenance mode
if (\OCP\Util::needUpgrade()) {
// since the behavior of apps or remotes are unpredictable during
// an upgrade, return a 503 directly
- throw new RemoteException('Service unavailable', 503);
+ throw new \Exception('Service unavailable', 503);
}
$request = \OC::$server->getRequest();
$pathInfo = $request->getPathInfo();
if ($pathInfo === false || $pathInfo === '') {
- throw new RemoteException('Path not found', 404);
+ throw new \Exception('Path not found', 404);
}
+
+ // Extract the service from the path
if (!$pos = strpos($pathInfo, '/', 1)) {
$pos = strlen($pathInfo);
}
$service = substr($pathInfo, 1, $pos - 1);
+ // Resolve the service to a file
$file = resolveService($service);
-
if (!$file) {
- throw new RemoteException('Path not found', 404);
+ throw new \Exception('Path not found', 404);
}
+ // Extract the app from the service file
$file = ltrim($file, '/');
-
$parts = explode('/', $file, 2);
$app = $parts[0];
@@ -66,9 +69,12 @@ try {
OC_App::loadApps(['extended_authentication']);
OC_App::loadApps(['filesystem', 'logging']);
+ // Check if the app is enabled
if (!\OC::$server->getAppManager()->isInstalled($app)) {
- throw new RemoteException('App not installed: ' . $app);
+ throw new \Exception('App not installed: ' . $app);
}
+
+ // Load the app
OC_App::loadApp($app);
OC_User::setIncognitoMode(true);