Introduce svn-revision in $wgExtensionCredits for fast extension version specification.

This commit is contained in:
Tim Starling 2008-05-06 11:54:20 +00:00
parent af2e47941c
commit 4205e28ef5
2 changed files with 14 additions and 2 deletions

View file

@ -2203,7 +2203,8 @@ $wgAutoloadClasses = array();
* <code>
* $wgExtensionCredits[$type][] = array(
* 'name' => 'Example extension',
* 'version' => 1.9,
* 'version' => 1.9,
* 'svn-revision' => '$LastChangedRevision$',
* 'author' => 'Foo Barstein',
* 'url' => 'http://wwww.example.com/Example%20Extension/',
* 'description' => 'An example extension',

View file

@ -135,9 +135,20 @@ class SpecialVersion {
usort( $wgExtensionCredits[$type], array( $this, 'compare' ) );
foreach ( $wgExtensionCredits[$type] as $extension ) {
if ( isset( $extension['version'] ) ) {
$version = $extension['version'];
} elseif ( isset( $extension['svn-revision'] ) &&
preg_match( '/\$(?:Rev|LastChangedRevision|Revision): *(\d+)/',
$extension['svn-revision'], $m ) )
{
$version = 'r' . $m[1];
} else {
$version = null;
}
$out .= $this->formatCredits(
isset ( $extension['name'] ) ? $extension['name'] : '',
isset ( $extension['version'] ) ? $extension['version'] : null,
$version,
isset ( $extension['author'] ) ? $extension['author'] : '',
isset ( $extension['url'] ) ? $extension['url'] : null,
isset ( $extension['description'] ) ? $extension['description'] : '',