Add BC shiv to keep old-style Dirty URLs working. This should be a temporary fix only, and be removed later.

8.0.x
Larry Garfield 2012-03-11 23:47:39 -05:00
parent dab4c21f3c
commit f9686b7af9
2 changed files with 16 additions and 0 deletions

View File

@ -31,10 +31,17 @@ class PathSubscriber implements EventSubscriberInterface {
* The Event to process.
*/
public function onKernelRequestPathResolve(GetResponseEvent $event) {
$request = $event->getRequest();
$path = ltrim($request->getPathInfo(), '/');
// Temporary BC shiv to support automated tests that still rely on old-
// style dirty URLs.
if (isset($_GET['q'])) {
$path = $_GET['q'];
}
if (empty($path)) {
// @todo Temporary hack. Fix when configuration is injectable.
$path = variable_get('site_frontpage', 'user');

View File

@ -38,6 +38,15 @@ class UrlMatcher extends SymfonyUrlMatcher {
// Symfony uses a prefixing / but we don't yet.
$dpathinfo = ltrim($pathinfo, '/');
// Temporary BC shiv to support automated tests that still rely on old-
// style dirty URLs.
// @todo Remove this once testbot knows how to deal with Symfony-style
// dirty URLs.
if (isset($_GET['q'])) {
$dpathinfo = $_GET['q'];
$pathinfo = '/' . $dpathinfo;
}
// Do our fancy frontpage logic.
if (empty($dpathinfo)) {
$dpathinfo = variable_get('site_frontpage', 'user');