コード例 #1
0
 /**
  * Log a user out.
  */
 function signOut()
 {
     $this->validate();
     $this->setupTemplate();
     if (Validation::isLoggedIn()) {
         Validation::logout();
     }
     $source = Request::getUserVar('source');
     if (isset($source) && !empty($source)) {
         PKPRequest::redirectUrl(Request::getProtocol() . '://' . Request::getServerHost() . $source, false);
     } else {
         PKPRequest::redirect(null, Request::getRequestedPage());
     }
 }
コード例 #2
0
ファイル: ArticleHandler.inc.php プロジェクト: pkp/ojs
 /**
  * Download an article file
  * @param array $args
  * @param PKPRequest $request
  */
 function download($args, $request)
 {
     $articleId = isset($args[0]) ? $args[0] : 0;
     $galleyId = isset($args[1]) ? $args[1] : 0;
     $fileId = isset($args[2]) ? (int) $args[2] : 0;
     if ($this->galley->getRemoteURL()) {
         $request->redirectUrl($this->galley->getRemoteURL());
     }
     if ($this->userCanViewGalley($request, $articleId, $galleyId)) {
         if (!$fileId) {
             $submissionFile = $this->galley->getFile();
             if ($submissionFile) {
                 $fileId = $submissionFile->getFileId();
                 // The file manager expects the real article id.  Extract it from the submission file.
                 $articleId = $submissionFile->getSubmissionId();
             } else {
                 // no proof files assigned to this galley!
                 return null;
             }
         }
         if (!HookRegistry::call('ArticleHandler::download', array($this->article, &$this->galley, &$fileId))) {
             import('lib.pkp.classes.file.SubmissionFileManager');
             $submissionFileManager = new SubmissionFileManager($this->article->getContextId(), $this->article->getId());
             $submissionFileManager->downloadFile($fileId, null, $request->getUserVar('inline') ? true : false);
         }
     }
 }