Changeset 3775
- Timestamp:
- 04/13/07 09:08:08 (2 years ago)
- Files:
-
- branches/1.0/CHANGELOG (modified) (1 diff)
- branches/1.0/lib/helper/AssetHelper.php (modified) (2 diffs)
- branches/1.0/test/unit/helper/AssetHelperTest.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
branches/1.0/CHANGELOG
r3756 r3775 6 6 Minor bug fixed: 7 7 8 * r3775: fixed _compute_public_path() when using a query string 8 9 * r3754: updated Propel to 1.2.1 (http://propel.phpdb.org/trac/query?status=closed&milestone=1.2.1&resolution=fixed&order=priority) 9 10 * r3746: fixed output escaping and _get_object_list() (#1593) branches/1.0/lib/helper/AssetHelper.php
r3313 r3775 298 298 $request = sfContext::getInstance()->getRequest(); 299 299 $sf_relative_url_root = $request->getRelativeUrlRoot(); 300 if ( strpos($source, '/') !== 0)300 if (0 !== strpos($source, '/')) 301 301 { 302 302 $source = $sf_relative_url_root.'/'.$dir.'/'.$source; 303 303 } 304 if (strpos(basename($source), '.') === false) 304 305 $query_string = ''; 306 if (false !== $pos = strpos($source, '?')) 307 { 308 $query_string = substr($source, $pos); 309 $source = substr($source, 0, $pos); 310 } 311 312 if (false === strpos(basename($source), '.')) 305 313 { 306 314 $source .= '.'.$ext; 307 315 } 308 if ($sf_relative_url_root && strpos($source, $sf_relative_url_root) !== 0) 316 317 if ($sf_relative_url_root && 0 !== strpos($source, $sf_relative_url_root)) 309 318 { 310 319 $source = $sf_relative_url_root.$source; … … 316 325 } 317 326 318 return $source ;327 return $source.$query_string; 319 328 } 320 329 branches/1.0/test/unit/helper/AssetHelperTest.php
r2276 r3775 10 10 11 11 require_once(dirname(__FILE__).'/../../bootstrap/unit.php'); 12 require_once($_test_dir.'/unit/sfContextMock.class.php');13 require_once($_test_dir.'/unit/sfWebRequestMock.class.php');14 12 15 13 sfLoader::loadHelpers(array('Helper', 'Tag', 'Url', 'Asset')); 16 14 17 $t = new lime_test(9, new lime_output_color()); 15 $t = new lime_test(15, new lime_output_color()); 16 17 class myRequest 18 { 19 public $relativeUrlRoot = ''; 20 21 public function getRelativeUrlRoot() 22 { 23 return $this->relativeUrlRoot; 24 } 25 26 public function isSecure() 27 { 28 return false; 29 } 30 31 public function getHost() 32 { 33 return 'localhost'; 34 } 35 } 36 37 class sfContext 38 { 39 public $request = null; 40 41 static public $instance = null; 42 43 public static function getInstance() 44 { 45 if (!isset(self::$instance)) 46 { 47 self::$instance = new sfContext(); 48 } 49 50 return self::$instance; 51 } 52 53 public function getRequest() 54 { 55 return $this->request; 56 } 57 } 58 59 $context = sfContext::getInstance(); 60 $request = new myRequest(); 61 $context->request = $request; 62 63 // _compute_public_path() 64 $t->diag('_compute_public_path'); 65 $t->is(_compute_public_path('foo', 'css', 'css'), '/css/foo.css', '_compute_public_path() converts a string to a web path'); 66 $t->is(_compute_public_path('foo', 'css', 'css', true), 'http://localhost/css/foo.css', '_compute_public_path() can create absolute links'); 67 $t->is(_compute_public_path('foo.css2', 'css', 'css'), '/css/foo.css2', '_compute_public_path() does not add suffix if one already exists'); 68 $request->relativeUrlRoot = '/bar'; 69 $t->is(_compute_public_path('foo', 'css', 'css'), '/bar/css/foo.css', '_compute_public_path() takes into account the relative url root configuration'); 70 $request->relativeUrlRoot = ''; 71 $t->is(_compute_public_path('foo.css?foo=bar', 'css', 'css'), '/css/foo.css?foo=bar', '_compute_public_path() takes into account query strings'); 72 $t->is(_compute_public_path('foo?foo=bar', 'css', 'css'), '/css/foo.css?foo=bar', '_compute_public_path() takes into account query strings'); 18 73 19 74 // image_tag()