Merge pull request #6018 from owncloud/fix_overwritehost
fix overwrite host support and make the code a bit more readable
This commit is contained in:
commit
45db67d174
2 changed files with 28 additions and 1 deletions
|
@ -9,6 +9,7 @@
|
|||
class OC_Request {
|
||||
/**
|
||||
* @brief Check overwrite condition
|
||||
* @param string $type
|
||||
* @returns bool
|
||||
*/
|
||||
private static function isOverwriteCondition($type = '') {
|
||||
|
@ -99,7 +100,7 @@ class OC_Request {
|
|||
public static function scriptName() {
|
||||
$name = $_SERVER['SCRIPT_NAME'];
|
||||
if (OC_Config::getValue('overwritewebroot', '') !== '' and self::isOverwriteCondition()) {
|
||||
$serverroot = str_replace("\\", '/', substr(__DIR__, 0, -4));
|
||||
$serverroot = str_replace("\\", '/', substr(__DIR__, 0, -strlen('lib/private/')));
|
||||
$suburi = str_replace("\\", "/", substr(realpath($_SERVER["SCRIPT_FILENAME"]), strlen($serverroot)));
|
||||
$name = OC_Config::getValue('overwritewebroot', '') . $suburi;
|
||||
}
|
||||
|
|
26
tests/lib/request.php
Normal file
26
tests/lib/request.php
Normal file
|
@ -0,0 +1,26 @@
|
|||
<?php
|
||||
/**
|
||||
* Copyright (c) 2013 Thomas Müller <thomas.mueller@tmit.eu>
|
||||
* This file is licensed under the Affero General Public License version 3 or
|
||||
* later.
|
||||
* See the COPYING-README file.
|
||||
*/
|
||||
|
||||
class Test_Request extends PHPUnit_Framework_TestCase {
|
||||
|
||||
public function setUp() {
|
||||
OC_Config::setValue('overwritewebroot', '/domain.tld/ownCloud');
|
||||
}
|
||||
|
||||
public function tearDown() {
|
||||
OC_Config::setValue('overwritewebroot', '');
|
||||
}
|
||||
|
||||
public function testScriptNameOverWrite() {
|
||||
$_SERVER['REMOTE_ADDR'] = '10.0.0.1';
|
||||
$_SERVER["SCRIPT_FILENAME"] = __FILE__;
|
||||
|
||||
$scriptName = OC_Request::scriptName();
|
||||
$this->assertEquals('/domain.tld/ownCloud/tests/lib/request.php', $scriptName);
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue