| Server IP : 195.130.67.5 / Your IP : 216.73.217.154 Web Server : Microsoft-IIS/10.0 System : Windows NT WEBSERVER1 10.0 build 17763 (Windows Server 2016) i586 User : IUSR ( 0) PHP Version : 7.4.19 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /inetpub/wwwroot/Topogeo/ojs/plugins/generic/sword/ |
Upload File : |
<?php
/**
* @file SwordHandler.inc.php
*
* Copyright (c) 2003-2012 John Willinsky
* Distributed under the GNU GPL v2. For full terms see the file docs/COPYING.
*
* @class SwordHandler
* @ingroup plugins_generic_sword
*
* @brief Handle requests for author SWORD deposits
*/
// $Id$
import('classes.handler.Handler');
class SwordHandler extends Handler {
/**
* Constructor
**/
function SwordHandler() {
parent::Handler();
}
/**
* Display index page.
*/
function index($args, &$request) {
$this->validate();
$this->setupTemplate();
$journal =& $request->getJournal();
$user =& $request->getUser();
$articleId = (int) array_shift($args);
$save = array_shift($args) == 'save';
$sectionEditorSubmissionDao =& DAORegistry::getDAO('SectionEditorSubmissionDAO');
$article =& $sectionEditorSubmissionDao->getSectionEditorSubmission($articleId);
if ( !$article || !$user || !$journal ||
$article->getUserId() != $user->getId() ||
$article->getJournalId() != $journal->getId()
) {
$request->redirect(null, 'index');
}
$swordPlugin =& $this->_getSwordPlugin();
$swordPlugin->import('AuthorDepositForm');
$authorDepositForm = new AuthorDepositForm($swordPlugin, $article);
if ($save) {
$authorDepositForm->readInputData();
if ($authorDepositForm->validate()) {
$authorDepositForm->execute();
$request->redirect(null, 'author');
} else {
$authorDepositForm->display();
}
} else {
$authorDepositForm->initData();
$authorDepositForm->display();
}
}
/**
* Get the SWORD plugin object
* @return object
*/
function &_getSwordPlugin() {
$plugin =& PluginRegistry::getPlugin('generic', SWORD_PLUGIN_NAME);
return $plugin;
}
}
?>