Refactor OC_Request into TrustedDomainHelper and IRequest
This changeset removes the static class `OC_Request` and moves the functions either into `IRequest` which is accessible via `\OC::$server::->getRequest()` or into a separated `TrustedDomainHelper` class for some helper methods which should not be publicly exposed. This changes only internal methods and nothing on the public API. Some public functions in `util.php` have been deprecated though in favour of the new non-static functions. Unfortunately some part of this code uses things like `__DIR__` and thus is not completely unit-testable. Where tests where possible they ahve been added though. Fixes https://github.com/owncloud/core/issues/13976 which was requested in https://github.com/owncloud/core/pull/13973#issuecomment-73492969
This commit is contained in:
+7
-6
@@ -11,17 +11,18 @@ try {
|
||||
exit;
|
||||
}
|
||||
|
||||
$path_info = OC_Request::getPathInfo();
|
||||
if ($path_info === false || $path_info === '') {
|
||||
$request = \OC::$server->getRequest();
|
||||
$pathInfo = $request->getPathInfo();
|
||||
if ($pathInfo === false || $pathInfo === '') {
|
||||
OC_Response::setStatus(OC_Response::STATUS_NOT_FOUND);
|
||||
exit;
|
||||
}
|
||||
if (!$pos = strpos($path_info, '/', 1)) {
|
||||
$pos = strlen($path_info);
|
||||
if (!$pos = strpos($pathInfo, '/', 1)) {
|
||||
$pos = strlen($pathInfo);
|
||||
}
|
||||
$service=substr($path_info, 1, $pos-1);
|
||||
$service=substr($pathInfo, 1, $pos-1);
|
||||
|
||||
$file = \OC::$server->getAppConfig()->getValue('core', 'remote_' . $service);
|
||||
$file = \OC::$server->getConfig()->getAppValue('core', 'remote_' . $service);
|
||||
|
||||
if(is_null($file)) {
|
||||
OC_Response::setStatus(OC_Response::STATUS_NOT_FOUND);
|
||||
|
||||
Reference in New Issue
Block a user