X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;ds=sidebyside;f=includes%2Fspecials%2FSpecialUpload.php;h=6692bb6029190fff59b7c1b34e525bd32ef0450a;hb=682e2b9c6b7c439fe5ba0be083f0479af95e1db3;hp=44be81c928f257bced80c317911028618b4dc8ab;hpb=3fa15fea69c729ca1fd01fec7bb9663140a1ef70;p=lhc%2Fweb%2Fwiklou.git
diff --git a/includes/specials/SpecialUpload.php b/includes/specials/SpecialUpload.php
index 44be81c928..6692bb6029 100644
--- a/includes/specials/SpecialUpload.php
+++ b/includes/specials/SpecialUpload.php
@@ -263,7 +263,7 @@ class SpecialUpload extends SpecialPage {
}
# Give a notice if the user is uploading a file that has been deleted or moved
- # Note that this is independent from the message 'filewasdeleted' that requires JS
+ # Note that this is independent from the message 'filewasdeleted'
$desiredTitleObj = Title::makeTitleSafe( NS_FILE, $this->mDesiredDestName );
$delNotice = ''; // empty by default
if ( $desiredTitleObj instanceof Title && !$desiredTitleObj->exists() ) {
@@ -359,13 +359,26 @@ class SpecialUpload extends SpecialPage {
$sessionKey = $this->mUpload->stashSession();
$warningHtml = '
' . $this->msg( 'uploadwarning' )->escaped() . "
\n"
- . '';
+ . '';
foreach ( $warnings as $warning => $args ) {
if ( $warning == 'badfilename' ) {
$this->mDesiredDestName = Title::makeTitle( NS_FILE, $args )->getText();
}
if ( $warning == 'exists' ) {
$msg = "\t- " . self::getExistsWarning( $args ) . "
\n";
+ } elseif ( $warning == 'was-deleted' ) {
+ # If the file existed before and was deleted, warn the user of this
+ $ltitle = SpecialPage::getTitleFor( 'Log' );
+ $llink = Linker::linkKnown(
+ $ltitle,
+ wfMessage( 'deletionlog' )->escaped(),
+ array(),
+ array(
+ 'type' => 'delete',
+ 'page' => Title::makeTitle( NS_FILE, $args )->getPrefixedText(),
+ )
+ );
+ $msg = "\t- " . wfMessage( 'filewasdeleted' )->rawParams( $llink )->parse() . "
\n";
} elseif ( $warning == 'duplicate' ) {
$msg = $this->getDupeWarning( $args );
} elseif ( $warning == 'duplicate-archive' ) {
@@ -387,7 +400,7 @@ class SpecialUpload extends SpecialPage {
}
$warningHtml .= $msg;
}
- $warningHtml .= "
\n";
+ $warningHtml .= "
\n";
$warningHtml .= $this->msg( 'uploadwarning-text' )->parseAsBlock();
$form = $this->getUploadForm( $warningHtml, $sessionKey, /* $hideIgnoreWarning */ true );
@@ -462,6 +475,14 @@ class SpecialUpload extends SpecialPage {
}
}
+ // This is as late as we can throttle, after expected issues have been handled
+ if ( UploadBase::isThrottled( $this->getUser() ) ) {
+ $this->showRecoverableUploadError(
+ $this->msg( 'actionthrottledtext' )->escaped()
+ );
+ return;
+ }
+
// Get the page text if this is not a reupload
if ( !$this->mForReUpload ) {
$pageText = self::getInitialPageText( $this->mComment, $this->mLicense,
@@ -711,19 +732,6 @@ class SpecialUpload extends SpecialPage {
$warning = wfMessage( 'file-thumbnail-no', $badPart )->parse();
} elseif ( $exists['warning'] == 'bad-prefix' ) {
$warning = wfMessage( 'filename-bad-prefix', $exists['prefix'] )->parse();
- } elseif ( $exists['warning'] == 'was-deleted' ) {
- # If the file existed before and was deleted, warn the user of this
- $ltitle = SpecialPage::getTitleFor( 'Log' );
- $llink = Linker::linkKnown(
- $ltitle,
- wfMessage( 'deletionlog' )->escaped(),
- array(),
- array(
- 'type' => 'delete',
- 'page' => $filename
- )
- );
- $warning = wfMessage( 'filewasdeleted' )->rawParams( $llink )->parseAsBlock();
}
return $warning;
@@ -819,6 +827,7 @@ class UploadForm extends HTMLForm {
# Add a link to edit MediaWik:Licenses
if ( $this->getUser()->isAllowed( 'editinterface' ) ) {
+ $this->getOutput()->addModuleStyles( 'mediawiki.special' );
$licensesLink = Linker::linkKnown(
$this->msg( 'licenses' )->inContentLanguage()->getTitle(),
$this->msg( 'licenses-edit' )->escaped(),