Merge pull request #6594 from owncloud/kill-index.php-from-url
Kill index.php from url
This commit is contained in:
commit
f356894aa3
4 changed files with 30 additions and 5 deletions
|
@ -7,6 +7,7 @@
|
|||
*/
|
||||
|
||||
// Post installation check
|
||||
/** @var $this OC_Router */
|
||||
$this->create('post_setup_check', '/post-setup-check')
|
||||
->action('OC_Setup', 'postSetupCheck');
|
||||
|
||||
|
@ -61,7 +62,7 @@ $this->create('core_tags_delete', '/tags/{type}/delete')
|
|||
->action('OC\Core\Tags\Controller', 'deleteTags')
|
||||
->requirements(array('type'));
|
||||
// oC JS config
|
||||
$this->create('js_config', '/core/js/config.js')
|
||||
$this->create('js_config', '/core/js/oc.js')
|
||||
->actionInclude('core/js/config.php');
|
||||
// Routing
|
||||
$this->create('core_ajax_routes', '/core/routes.json')
|
||||
|
|
|
@ -128,7 +128,8 @@ class Server extends SimpleContainer implements IServerContainer {
|
|||
return new \OC\L10N\Factory();
|
||||
});
|
||||
$this->registerService('URLGenerator', function($c) {
|
||||
return new \OC\URLGenerator();
|
||||
$config = $this->getConfig();
|
||||
return new \OC\URLGenerator($config);
|
||||
});
|
||||
$this->registerService('AppHelper', function($c) {
|
||||
return new \OC\AppHelper();
|
||||
|
@ -257,7 +258,7 @@ class Server extends SimpleContainer implements IServerContainer {
|
|||
}
|
||||
|
||||
/**
|
||||
* @return \OC\Config
|
||||
* @return \OCP\IConfig
|
||||
*/
|
||||
function getConfig() {
|
||||
return $this->query('AllConfig');
|
||||
|
|
|
@ -22,7 +22,7 @@ class CSSResourceLocator extends ResourceLocator {
|
|||
$app = substr($style, 0, strpos($style, '/'));
|
||||
$style = substr($style, strpos($style, '/')+1);
|
||||
$app_path = \OC_App::getAppPath($app);
|
||||
$app_url = $this->webroot . '/index.php/apps/' . $app;
|
||||
$app_url = \OC_App::getAppWebPath($app);
|
||||
if ($this->appendIfExist($app_path, $style.$this->form_factor.'.css', $app_url)
|
||||
|| $this->appendIfExist($app_path, $style.'.css', $app_url)
|
||||
) {
|
||||
|
|
|
@ -15,6 +15,19 @@ use RuntimeException;
|
|||
* Class to generate URLs
|
||||
*/
|
||||
class URLGenerator implements IURLGenerator {
|
||||
|
||||
/**
|
||||
* @var \OCP\IConfig
|
||||
*/
|
||||
private $config;
|
||||
|
||||
/**
|
||||
* @param \OCP\IConfig $config
|
||||
*/
|
||||
public function __construct($config) {
|
||||
$this->config = $config;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Creates an url using a defined route
|
||||
* @param $route
|
||||
|
@ -41,12 +54,18 @@ class URLGenerator implements IURLGenerator {
|
|||
* Returns a url to the given app and file.
|
||||
*/
|
||||
public function linkTo( $app, $file, $args = array() ) {
|
||||
$frontControllerActive=($this->config->getSystemValue('front_controller_active', 'false') == 'true');
|
||||
|
||||
if( $app != '' ) {
|
||||
$app_path = \OC_App::getAppPath($app);
|
||||
// Check if the app is in the app folder
|
||||
if ($app_path && file_exists($app_path . '/' . $file)) {
|
||||
if (substr($file, -3) == 'php' || substr($file, -3) == 'css') {
|
||||
|
||||
$urlLinkTo = \OC::$WEBROOT . '/index.php/apps/' . $app;
|
||||
if ($frontControllerActive) {
|
||||
$urlLinkTo = \OC::$WEBROOT . '/apps/' . $app;
|
||||
}
|
||||
$urlLinkTo .= ($file != 'index.php') ? '/' . $file : '';
|
||||
} else {
|
||||
$urlLinkTo = \OC_App::getAppWebPath($app) . '/' . $file;
|
||||
|
@ -58,7 +77,11 @@ class URLGenerator implements IURLGenerator {
|
|||
if (file_exists(\OC::$SERVERROOT . '/core/' . $file)) {
|
||||
$urlLinkTo = \OC::$WEBROOT . '/core/' . $file;
|
||||
} else {
|
||||
$urlLinkTo = \OC::$WEBROOT . '/' . $file;
|
||||
if ($frontControllerActive && $file === 'index.php') {
|
||||
$urlLinkTo = \OC::$WEBROOT;
|
||||
} else {
|
||||
$urlLinkTo = \OC::$WEBROOT . '/' . $file;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue