From: <min...@us...> - 2007-03-23 19:43:44
|
Revision: 16121 http://svn.sourceforge.net/gallery/?rev=16121&view=rev Author: mindless Date: 2007-03-23 12:43:44 -0700 (Fri, 23 Mar 2007) Log Message: ----------- fix getCurrentUrl if there is a QUERY_STRING and the baseUri already has a ? Modified Paths: -------------- trunk/gallery2/modules/rewrite/classes/parsers/modrewrite/ModRewriteUrlGenerator.class trunk/gallery2/modules/rewrite/test/phpunit/ModRewriteUrlGeneratorTest.class Modified: trunk/gallery2/modules/rewrite/classes/parsers/modrewrite/ModRewriteUrlGenerator.class =================================================================== --- trunk/gallery2/modules/rewrite/classes/parsers/modrewrite/ModRewriteUrlGenerator.class 2007-03-23 15:59:52 UTC (rev 16120) +++ trunk/gallery2/modules/rewrite/classes/parsers/modrewrite/ModRewriteUrlGenerator.class 2007-03-23 19:43:44 UTC (rev 16121) @@ -80,7 +80,7 @@ $queryString = GalleryUtilities::getServerVar('QUERY_STRING'); if (!empty($queryString)) { GalleryUtilities::unsanitizeInputValues($queryString, false); - $tmp .= '?' . $queryString; + $tmp .= ((strpos($tmp, '?') === false) ? '?' : '&') . $queryString; } $this->_currentUrl[$forceDirect] = $this->makeUrl($tmp); Modified: trunk/gallery2/modules/rewrite/test/phpunit/ModRewriteUrlGeneratorTest.class =================================================================== --- trunk/gallery2/modules/rewrite/test/phpunit/ModRewriteUrlGeneratorTest.class 2007-03-23 15:59:52 UTC (rev 16120) +++ trunk/gallery2/modules/rewrite/test/phpunit/ModRewriteUrlGeneratorTest.class 2007-03-23 19:43:44 UTC (rev 16121) @@ -90,5 +90,19 @@ parent::testGenerateUrlOverrideBaseUri(); } + + function testGetCurrentUrlEmbeddedQueryString() { + GalleryDataCache::put('G2_EMBED', 1, true); + /* ModRewrite constructs url from baseUri and QUERY_STRING */ + $_SERVER['REQUEST_URI'] = '/not/used'; + $expectedUrl = 'http://example.com/cms/index.php?mod=gallery2&foo=1&bar=2'; + $this->_urlGenerator = new $this->_urlGeneratorName(); + $ret = $this->_urlGenerator->init('/cms/index.php?mod=gallery2', '/gallery2/'); + if ($ret) { + return $this->failWithStatus($ret); + } + $this->assertEquals($expectedUrl, $this->_urlGenerator->getCurrentUrl()); + $this->assertEquals(false, $this->_urlGenerator->_error, 'error'); + } } ?> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |