当前位置: 首页>>代码示例>>PHP>>正文


PHP UploadBase::verifyUpload方法代码示例

本文整理汇总了PHP中UploadBase::verifyUpload方法的典型用法代码示例。如果您正苦于以下问题:PHP UploadBase::verifyUpload方法的具体用法?PHP UploadBase::verifyUpload怎么用?PHP UploadBase::verifyUpload使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在UploadBase的用法示例。


在下文中一共展示了UploadBase::verifyUpload方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: processUpload

 /**
  * Do the upload.
  * Checks are made in SpecialUpload::execute()
  */
 protected function processUpload()
 {
     // Fetch the file if required
     $status = $this->mUpload->fetchFile();
     if (!$status->isOK()) {
         $this->showUploadError($this->getOutput()->parse($status->getWikiText()));
         return;
     }
     if (!Hooks::run('UploadForm:BeforeProcessing', array(&$this))) {
         wfDebug("Hook 'UploadForm:BeforeProcessing' broke processing the file.\n");
         // This code path is deprecated. If you want to break upload processing
         // do so by hooking into the appropriate hooks in UploadBase::verifyUpload
         // and UploadBase::verifyFile.
         // If you use this hook to break uploading, the user will be returned
         // an empty form with no error message whatsoever.
         return;
     }
     // Upload verification
     $details = $this->mUpload->verifyUpload();
     if ($details['status'] != UploadBase::OK) {
         $this->processVerificationError($details);
         return;
     }
     // Verify permissions for this title
     $permErrors = $this->mUpload->verifyTitlePermissions($this->getUser());
     if ($permErrors !== true) {
         $code = array_shift($permErrors[0]);
         $this->showRecoverableUploadError($this->msg($code, $permErrors[0])->parse());
         return;
     }
     $this->mLocalFile = $this->mUpload->getLocalFile();
     // Check warnings if necessary
     if (!$this->mIgnoreWarning) {
         $warnings = $this->mUpload->checkWarnings();
         if ($this->showUploadWarning($warnings)) {
             return;
         }
     }
     // 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, $this->mCopyrightStatus, $this->mCopyrightSource, $this->getConfig());
     } else {
         $pageText = false;
     }
     $status = $this->mUpload->performUpload($this->mComment, $pageText, $this->mWatchthis, $this->getUser());
     if (!$status->isGood()) {
         $this->showUploadError($this->getOutput()->parse($status->getWikiText()));
         return;
     }
     // Success, redirect to description page
     $this->mUploadSuccessful = true;
     Hooks::run('SpecialUploadComplete', array(&$this));
     $this->getOutput()->redirect($this->mLocalFile->getTitle()->getFullURL());
 }
开发者ID:Acidburn0zzz,项目名称:mediawiki,代码行数:63,代码来源:SpecialUpload.php

示例2: verifyUpload

 /**
  * Performs file verification, dies on error.
  */
 protected function verifyUpload()
 {
     $verification = $this->mUpload->verifyUpload();
     if ($verification['status'] === UploadBase::OK) {
         return;
     }
     $this->checkVerification($verification);
 }
开发者ID:claudinec,项目名称:galan-wiki,代码行数:11,代码来源:ApiUpload.php

示例3: verifyUpload

 /**
  * Performs file verification, dies on error.
  */
 protected function verifyUpload()
 {
     global $wgFileExtensions;
     $verification = $this->mUpload->verifyUpload();
     if ($verification['status'] === UploadBase::OK) {
         return;
     }
     // TODO: Move them to ApiBase's message map
     switch ($verification['status']) {
         // Recoverable errors
         case UploadBase::MIN_LENGTH_PARTNAME:
             $this->dieRecoverableError('filename-tooshort', 'filename');
             break;
         case UploadBase::ILLEGAL_FILENAME:
             $this->dieRecoverableError('illegal-filename', 'filename', array('filename' => $verification['filtered']));
             break;
         case UploadBase::FILENAME_TOO_LONG:
             $this->dieRecoverableError('filename-toolong', 'filename');
             break;
         case UploadBase::FILETYPE_MISSING:
             $this->dieRecoverableError('filetype-missing', 'filename');
             break;
         case UploadBase::WINDOWS_NONASCII_FILENAME:
             $this->dieRecoverableError('windows-nonascii-filename', 'filename');
             break;
             // Unrecoverable errors
         // Unrecoverable errors
         case UploadBase::EMPTY_FILE:
             $this->dieUsage('The file you submitted was empty', 'empty-file');
             break;
         case UploadBase::FILE_TOO_LARGE:
             $this->dieUsage('The file you submitted was too large', 'file-too-large');
             break;
         case UploadBase::FILETYPE_BADTYPE:
             $extradata = array('filetype' => $verification['finalExt'], 'allowed' => $wgFileExtensions);
             $this->getResult()->setIndexedTagName($extradata['allowed'], 'ext');
             $msg = "Filetype not permitted: ";
             if (isset($verification['blacklistedExt'])) {
                 $msg .= join(', ', $verification['blacklistedExt']);
                 $extradata['blacklisted'] = array_values($verification['blacklistedExt']);
                 $this->getResult()->setIndexedTagName($extradata['blacklisted'], 'ext');
             } else {
                 $msg .= $verification['finalExt'];
             }
             $this->dieUsage($msg, 'filetype-banned', 0, $extradata);
             break;
         case UploadBase::VERIFICATION_ERROR:
             $this->getResult()->setIndexedTagName($verification['details'], 'detail');
             $this->dieUsage('This file did not pass file verification', 'verification-error', 0, array('details' => $verification['details']));
             break;
         case UploadBase::HOOK_ABORTED:
             $this->dieUsage("The modification you tried to make was aborted by an extension hook", 'hookaborted', 0, array('error' => $verification['error']));
             break;
         default:
             $this->dieUsage('An unknown error occurred', 'unknown-error', 0, array('code' => $verification['status']));
             break;
     }
 }
开发者ID:seedbank,项目名称:old-repo,代码行数:61,代码来源:ApiUpload.php

示例4: verifyUpload

 /**
  * @return array
  */
 public function verifyUpload()
 {
     # Check for a post_max_size or upload_max_size overflow, so that a
     # proper error can be shown to the user
     if (is_null($this->mTempPath) || $this->isEmptyFile()) {
         if ($this->mUpload->isIniSizeOverflow()) {
             return array('status' => UploadBase::FILE_TOO_LARGE, 'max' => min(self::getMaxUploadSize($this->getSourceType()), wfShorthandToInteger(ini_get('upload_max_filesize')), wfShorthandToInteger(ini_get('post_max_size'))));
         }
     }
     return parent::verifyUpload();
 }
开发者ID:Tjorriemorrie,项目名称:app,代码行数:14,代码来源:UploadFromFile.php

示例5: verifyUpload

 /**
  * Wrapper around the parent function in order to defer verifying the
  * upload until the file really has been fetched.
  */
 public function verifyUpload()
 {
     if ($this->mAsync) {
         return array('status' => UploadBase::OK);
     }
     return parent::verifyUpload();
 }
开发者ID:laiello,项目名称:media-wiki-law,代码行数:11,代码来源:UploadFromUrl.php

示例6: uploadImage

 /**
  * @param UploadBase $upload
  * @return array
  */
 private function uploadImage($upload)
 {
     global $wgRequest, $wgUser, $wgEnableUploads;
     $uploadStatus = array("status" => "error");
     if (empty($wgEnableUploads)) {
         $uploadStatus["errors"] = [wfMessage('themedesigner-upload-disabled')->plain()];
     } else {
         $upload->initializeFromRequest($wgRequest);
         $permErrors = $upload->verifyPermissions($wgUser);
         if ($permErrors !== true) {
             $uploadStatus["errors"] = array(wfMsg('badaccess'));
         } else {
             $details = $upload->verifyUpload();
             if ($details['status'] != UploadBase::OK) {
                 $uploadStatus["errors"] = array($this->getUploadErrorMessage($details));
             } else {
                 $warnings = $upload->checkWarnings();
                 if (!empty($warnings)) {
                     $uploadStatus["errors"] = $this->getUploadWarningMessages($warnings);
                 } else {
                     //save temp file
                     $status = $upload->performUpload();
                     $uploadStatus["status"] = "uploadattempted";
                     $uploadStatus["isGood"] = $status->isGood();
                 }
             }
         }
     }
     return $uploadStatus;
 }
开发者ID:Tjorriemorrie,项目名称:app,代码行数:34,代码来源:ThemeDesignerController.class.php

示例7: verifyUpload

 /**
  * Wrapper around the parent function in order to defer verifying the
  * upload until the file really has been fetched.
  */
 public function verifyUpload()
 {
     return parent::verifyUpload();
 }
开发者ID:Tjorriemorrie,项目名称:app,代码行数:8,代码来源:UploadFromUrl.php


注:本文中的UploadBase::verifyUpload方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。