Remove language for ALL urls where it's not needed (outside of pages/ for now)

This commit is contained in:
Andy Miller
2015-10-22 15:53:42 -06:00
parent 6655db6744
commit 2f9621ac0f

View File

@@ -3,6 +3,7 @@ namespace Grav\Plugin;
use Grav\Common\GPM\GPM; use Grav\Common\GPM\GPM;
use Grav\Common\Grav; use Grav\Common\Grav;
use Grav\Common\Language\Language;
use Grav\Common\Page\Page; use Grav\Common\Page\Page;
use Grav\Common\Page\Pages; use Grav\Common\Page\Pages;
use Grav\Common\Plugin; use Grav\Common\Plugin;
@@ -345,8 +346,6 @@ class AdminPlugin extends Plugin
} }
} }
// Decide admin template and route. // Decide admin template and route.
$path = trim(substr($this->uri->route(), strlen($this->base)), '/'); $path = trim(substr($this->uri->route(), strlen($this->base)), '/');
$this->template = 'dashboard'; $this->template = 'dashboard';
@@ -357,6 +356,13 @@ class AdminPlugin extends Plugin
$this->route = array_shift($array); $this->route = array_shift($array);
} }
/** @var Language $language */
$require_language = ['pages', 'translations'];
$language = $this->grav['language'];
if ($language->isLanguageInUrl() && !in_array($this->template, $require_language)) {
$this->grav->redirect($this->uri->route());
}
// Initialize admin class. // Initialize admin class.
require_once __DIR__ . '/classes/admin.php'; require_once __DIR__ . '/classes/admin.php';
$this->admin = new Admin($this->grav, $this->base, $this->template, $this->route); $this->admin = new Admin($this->grav, $this->base, $this->template, $this->route);