// If it was posted check for the token (no remote POST'ing with user credentials)
$token = $request->getVal( 'wpEditToken' );
- if( $this->mSourceType == 'file' && $token == null ) {
- // Skip token check for file uploads as that can't be faked via JS...
- // Some client-side tools don't expect to need to send wpEditToken
- // with their submissions, as that's new in 1.16.
- $this->mTokenOk = true;
- } else {
- $this->mTokenOk = $this->getUser()->matchEditToken( $token );
- }
+ $this->mTokenOk = $this->getUser()->matchEditToken( $token );
$this->uploadFormTextTop = '';
$this->uploadFormTextAfterSummary = '';
# Check blocks
if( $user->isBlocked() ) {
- throw new UserBlockedError( $user->mBlock );
+ throw new UserBlockedError( $user->getBlock() );
}
# Check whether we actually want to allow changing stuff
if (
$this->mTokenOk && !$this->mCancelUpload &&
( $this->mUpload && $this->mUploadClicked )
- )
- {
+ ) {
$this->processUpload();
} else {
# Backwards compatibility hook
wfDebug( "Hook 'UploadForm:initial' broke output of the upload form" );
return;
}
-
-
$this->showUploadForm( $this->getUploadForm() );
}
if(
!$this->mTokenOk && !$this->mCancelUpload &&
( $this->mUpload && $this->mUploadClicked )
- )
- {
+ ) {
$form->addPreText( wfMsgExt( 'session_fail_preview', 'parseinline' ) );
}
}
return $form;
-
}
/**
/**
* Show the upload form with error message, but do not stash the file.
*
- * @param $message HTML string
+ * @param $message string HTML string
*/
protected function showUploadError( $message ) {
$message = '<h2>' . wfMsgHtml( 'uploadwarning' ) . "</h2>\n" .
/**
* Get the initial image page text based on a comment and optional file status information
+ * @param $comment string
+ * @param $license string
+ * @param $copyStatus string
+ * @param $source string
+ * @return string
*/
public static function getInitialPageText( $comment = '', $license = '', $copyStatus = '', $source = '' ) {
global $wgUseCopyrightUpload, $wgForceUIMsgAsContentMsg;
$wgForceUIMsgAsContentMsg = (array) $wgForceUIMsgAsContentMsg;
+ $msg = array();
/* These messages are transcluded into the actual text of the description page.
* Thus, forcing them as content messages makes the upload to produce an int: template
* instead of hardcoding it there in the uploader language.
*
* Note that the page target can be changed *on the form*, so our check
* state can get out of sync.
+ * @return Bool|String
*/
protected function getWatchCheck() {
if( $this->getUser()->getOption( 'watchdefault' ) ) {
/**
* Construct a warning and a gallery from an array of duplicate files.
+ * @param $dupes array
+ * @return string
*/
public static function getDupeWarning( $dupes ) {
global $wgOut;
protected $mMaxFileSize = array();
+ protected $mMaxUploadSize = array();
+
public function __construct( array $options = array(), IContextSource $context = null ) {
$this->mWatch = !empty( $options['watch'] );
$this->mForReUpload = !empty( $options['forreupload'] );
);
}
- $canUploadByUrl = UploadFromUrl::isEnabled() && $this->getUser()->isAllowed( 'upload_by_url' );
+ $canUploadByUrl = UploadFromUrl::isEnabled() && UploadFromUrl::isAllowed( $this->getUser() );
$radio = $canUploadByUrl;
$selectedSourceType = strtolower( $this->getRequest()->getText( 'wpSourceType', 'File' ) );
# that setting doesn't exist
if ( !wfIsHipHop() ) {
$this->mMaxUploadSize['file'] = min( $this->mMaxUploadSize['file'],
- wfShorthandToInteger( ini_get( 'upload_max_filesize' ) ) );
+ wfShorthandToInteger( ini_get( 'upload_max_filesize' ) ),
+ wfShorthandToInteger( ini_get( 'post_max_size' ) )
+ );
}
$descriptor['UploadFile'] = array(
? 'filereuploadsummary'
: 'fileuploadsummary',
'default' => $this->mComment,
+ 'cols' => intval( $this->getUser()->getOption( 'cols' ) ),
'rows' => 8,
)
);
);
$out = $this->getOutput();
- $out->addScript( Skin::makeVariablesScript( $scriptVars ) );
+ $out->addJsConfigVars( $scriptVars );
$out->addModules( array(
* A form field that contains a radio box in the label
*/
class UploadSourceField extends HTMLTextField {
+
+ /**
+ * @param $cellAttributes array
+ * @return string
+ */
function getLabelHtml( $cellAttributes = array() ) {
$id = "wpSourceType{$this->mParams['upload-type']}";
$label = Html::rawElement( 'label', array( 'for' => $id ), $this->mLabel );
return Html::rawElement( 'td', array( 'class' => 'mw-label' ) + $cellAttributes, $label );
}
+ /**
+ * @return int
+ */
function getSize() {
return isset( $this->mParams['size'] )
? $this->mParams['size']