http://www.mediawiki.org/wiki/Special:Code/MediaWiki/72777
Revision: 72777
Author: tparscal
Date: 2010-09-11 08:03:11 +0000 (Sat, 11 Sep 2010)
Log Message:
-----------
Added versions to statically added ResourceLoader script and style tags.
Modified Paths:
--------------
trunk/phase3/includes/OutputPage.php
trunk/phase3/includes/ResourceLoader.php
trunk/phase3/includes/ResourceLoaderContext.php
Modified: trunk/phase3/includes/OutputPage.php
===================================================================
--- trunk/phase3/includes/OutputPage.php 2010-09-11 07:33:16 UTC (rev
72776)
+++ trunk/phase3/includes/OutputPage.php 2010-09-11 08:03:11 UTC (rev
72777)
@@ -2286,13 +2286,13 @@
// TODO: Divide off modules starting with "user", and add the
user parameter to them
$query = array(
'lang' => $wgLang->getCode(),
- 'debug' => $wgRequest->getBool( 'debug' ) &&
$wgRequest->getVal( 'debug' ) !== 'false',
+ 'debug' => ( $wgRequest->getBool( 'debug' ) &&
$wgRequest->getVal( 'debug' ) == 'true' ) ? 'true' : 'false',
'skin' => $wgUser->getSkin()->getSkinName(),
'only' => $only,
);
$moduleGroups = array( null => array(), 'user' => array() );
- foreach ( (array) $modules as $module ) {
- $moduleGroups[strpos( $module, 'user' ) === 0 ? 'user'
: null][] = $module;
+ foreach ( (array) $modules as $name ) {
+ $moduleGroups[strpos( $name, 'user' ) === 0 ? 'user' :
null][] = $name;
}
$links = '';
foreach ( $moduleGroups as $group => $modules ) {
@@ -2301,6 +2301,16 @@
if ( $group === 'user' ) {
$query['user'] = $wgUser->getName();
}
+ $context = new ResourceLoaderContext( new
FauxRequest( $query ) );
+ $timestamp = 0;
+ foreach ( $modules as $name ) {
+ if ( $module =
ResourceLoader::getModule( $name ) ) {
+ $timestamp = max( $timestamp,
$module->getModifiedTime( $context ) );
+ }
+ }
+ $query['version'] = wfTimestamp( TS_ISO_8601,
round( $timestamp, -2 ) );
+ // Make queries uniform in order
+ ksort( $query );
// Automatically select style/script elements
if ( $only === 'styles' ) {
$links .= Html::linkedStyle(
wfAppendQuery( $wgLoadScript, $query ) );
Modified: trunk/phase3/includes/ResourceLoader.php
===================================================================
--- trunk/phase3/includes/ResourceLoader.php 2010-09-11 07:33:16 UTC (rev
72776)
+++ trunk/phase3/includes/ResourceLoader.php 2010-09-11 08:03:11 UTC (rev
72777)
@@ -338,7 +338,7 @@
}
$statuses = FormatJson::encode( $statuses );
- echo "mediaWiki.loader.state( $statuses );";
+ echo "mediaWiki.loader.state( $statuses );\n";
}
// Register missing modules
Modified: trunk/phase3/includes/ResourceLoaderContext.php
===================================================================
--- trunk/phase3/includes/ResourceLoaderContext.php 2010-09-11 07:33:16 UTC
(rev 72776)
+++ trunk/phase3/includes/ResourceLoaderContext.php 2010-09-11 08:03:11 UTC
(rev 72777)
@@ -26,7 +26,6 @@
/* Protected Members */
protected $request;
- protected $server;
protected $modules;
protected $language;
protected $direction;
@@ -64,7 +63,7 @@
$this->skin = $wgDefaultSkin;
}
}
-
+
public function getRequest() {
return $this->request;
}
@@ -114,4 +113,4 @@
$this->hash : $this->hash =
implode( '|', array( $this->language,
$this->skin, $this->user, $this->debug, $this->only ) );
}
-}
+}
\ No newline at end of file
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs