will require updates to your site's CSS or JS.
* (bug 41342) jquery.suggestions should cancel any active (async) fetches
before it triggers another fetch.
+* (bug 42184) $wgUploadSizeWarning missing second variable
=== API changes in 1.21 ===
* prop=revisions can now report the contentmodel and contentformat.
* (bug 41042) Revert change to action=parse&page=... behavior when the page
does not exist.
* (bug 27202) Add timestamp sort to list=allimages.
+* (bug 43137) Don't return the sha1 of revisions through the API if the content is
+ revision-deleted
=== Languages updated in 1.21 ===
/**
* @todo Document
- * @param $name String: option name
- * @return null
+ * @param string $name Option name
+ * @throws MWException If option does not exist.
+ * @return mixed Value or the default value if it is null.
*/
public function consumeValue( $name ) {
$this->validateName( $name, true );
}
}
- if ( $this->fld_sha1 ) {
+ if ( $this->fld_sha1 && !$revision->isDeleted( Revision::DELETED_TEXT ) ) {
if ( $revision->getSha1() != '' ) {
$vals['sha1'] = wfBaseConvert( $revision->getSha1(), 36, 16, 40 );
} else {
$vals['sha1'] = '';
}
+ } elseif ( $this->fld_sha1 ) {
+ $vals['sha1hidden'] = '';
}
if ( $this->fld_contentmodel ) {
);
}
- /**
- * Safe version of filemtime(), which doesn't throw a PHP warning if the file doesn't exist
- * but returns 1 instead.
- * @param $filename string File name
- * @return int UNIX timestamp, or 1 if the file doesn't exist
- */
- protected static function safeFilemtime( $filename ) {
- if ( file_exists( $filename ) ) {
- return filemtime( $filename );
- } else {
- // We only ever map this function on an array if we're gonna call max() after,
- // so return our standard minimum timestamps here. This is 1, not 0, because
- // wfTimestamp(0) == NOW
- return 1;
- }
- }
-
/**
* Get whether CSS for this module should be flipped
* @param $context ResourceLoaderContext
return array();
}
+ /**
+ * Get target(s) for the module, eg ['desktop'] or ['desktop', 'mobile']
+ * Default implementation hardcodes 'desktop'.
+ *
+ * @return array of strings
+ */
+ public function getTargets() {
+ return array( 'desktop' );
+ }
+
/**
* Get the files this module depends on indirectly for a given skin.
* Currently these are only image files referenced by the module's CSS.
}
/**
- * Get target(s) for the module, eg ['desktop'] or ['desktop', 'mobile']
- * Default implementation hardcodes 'desktop'.
- *
- * @return array of strings
+ * Safe version of filemtime(), which doesn't throw a PHP warning if the file doesn't exist
+ * but returns 1 instead.
+ * @param $filename string File name
+ * @return int UNIX timestamp, or 1 if the file doesn't exist
*/
- public function getTargets() {
- return array( 'desktop' );
+ protected static function safeFilemtime( $filename ) {
+ if ( file_exists( $filename ) ) {
+ return filemtime( $filename );
+ } else {
+ // We only ever map this function on an array if we're gonna call max() after,
+ // so return our standard minimum timestamps here. This is 1, not 0, because
+ // wfTimestamp(0) == NOW
+ return 1;
+ }
}
}
global $wgUploadSizeWarning;
if ( $wgUploadSizeWarning && ( $this->mFileSize > $wgUploadSizeWarning ) ) {
- $warnings['large-file'] = $wgUploadSizeWarning;
+ $warnings['large-file'] = array( $wgUploadSizeWarning, $this->mFileSize );
}
if ( $this->mFileSize == 0 ) {