File Manager
Upload
Current Directory: /home/lartcid/public_html/journal.lartc.id
[Back]
..
[Open]
Hapus
Rename
.htaccess
[Edit]
Hapus
Rename
.well-known
[Open]
Hapus
Rename
README.md
[Edit]
Hapus
Rename
api
[Open]
Hapus
Rename
cache
[Open]
Hapus
Rename
cgi-bin
[Open]
Hapus
Rename
classes
[Open]
Hapus
Rename
config.TEMPLATE.inc.php
[Edit]
Hapus
Rename
config.inc.php
[Edit]
Hapus
Rename
controllers
[Open]
Hapus
Rename
cypress.json
[Edit]
Hapus
Rename
dbscripts
[Open]
Hapus
Rename
docs
[Open]
Hapus
Rename
error_log
[Edit]
Hapus
Rename
favicon.ico
[Edit]
Hapus
Rename
index.php
[Edit]
Hapus
Rename
js
[Open]
Hapus
Rename
lib
[Open]
Hapus
Rename
locale
[Open]
Hapus
Rename
mini.php
[Edit]
Hapus
Rename
pages
[Open]
Hapus
Rename
php.ini
[Edit]
Hapus
Rename
plugins
[Open]
Hapus
Rename
public
[Open]
Hapus
Rename
registry
[Open]
Hapus
Rename
scheduledTaskLogs
[Open]
Hapus
Rename
schemas
[Open]
Hapus
Rename
styles
[Open]
Hapus
Rename
templates
[Open]
Hapus
Rename
tools
[Open]
Hapus
Rename
Edit File
<?php /** * @file plugins/generic/webFeed/WebFeedGatewayPlugin.inc.php * * Copyright (c) 2014-2021 Simon Fraser University * Copyright (c) 2003-2021 John Willinsky * Distributed under the GNU GPL v3. For full terms see the file docs/COPYING. * * @class WebFeedGatewayPlugin * @ingroup plugins_generic_webFeed * * @brief Gateway component of web feed plugin * */ import('lib.pkp.classes.plugins.GatewayPlugin'); class WebFeedGatewayPlugin extends GatewayPlugin { /** @var WebFeedPlugin Parent plugin */ protected $_parentPlugin; /** * @param $parentPlugin WebFeedPlugin */ public function __construct($parentPlugin) { parent::__construct(); $this->_parentPlugin = $parentPlugin; } /** * Hide this plugin from the management interface (it's subsidiary) */ public function getHideManagement() { return true; } /** * Get the name of this plugin. The name must be unique within * its category. * @return String name of plugin */ public function getName() { return 'WebFeedGatewayPlugin'; } /** * @copydoc Plugin::getDisplayName() */ public function getDisplayName() { return __('plugins.generic.webfeed.displayName'); } /** * @copydoc Plugin::getDescription() */ public function getDescription() { return __('plugins.generic.webfeed.description'); } /** * Override the builtin to get the correct plugin path. * @return string */ public function getPluginPath() { return $this->_parentPlugin->getPluginPath(); } /** * Get whether or not this plugin is enabled. (Should always return true, as the * parent plugin will take care of loading this one when needed) * @param $contextId int Context ID (optional) * @return boolean */ public function getEnabled($contextId = null) { return $this->_parentPlugin->getEnabled($contextId); } /** * Handle fetch requests for this plugin. * @param $args array Arguments. * @param $request PKPRequest Request object. */ public function fetch($args, $request) { // Make sure we're within a Journal context $request = Application::get()->getRequest(); $journal = $request->getJournal(); if (!$journal) return false; // Make sure there's a current issue for this journal $issueDao = DAORegistry::getDAO('IssueDAO'); /* @var $issueDao IssueDAO */ $issue = $issueDao->getCurrent($journal->getId(), true); if (!$issue) return false; if (!$this->_parentPlugin->getEnabled($journal->getId())) return false; // Make sure the feed type is specified and valid $type = array_shift($args); $typeMap = array( 'rss' => 'rss.tpl', 'rss2' => 'rss2.tpl', 'atom' => 'atom.tpl' ); $mimeTypeMap = array( 'rss' => 'application/rdf+xml', 'rss2' => 'application/rss+xml', 'atom' => 'application/atom+xml' ); if (!isset($typeMap[$type])) return false; // Get limit setting from web feeds plugin $displayItems = $this->_parentPlugin->getSetting($journal->getId(), 'displayItems'); $recentItems = (int) $this->_parentPlugin->getSetting($journal->getId(), 'recentItems'); if ($displayItems == 'recent' && $recentItems > 0) { $submissionsIterator = Services::get('submission')->getMany(['contextId' => $journal->getId(), 'status' => STATUS_PUBLISHED, 'count' => $recentItems]); $submissionsInSections = []; foreach ($submissionsIterator as $submission) { $submissionsInSections[]['articles'][] = $submission; } } else { $submissionsInSections = Services::get('submission')->getInSections($issue->getId(), $journal->getId()); } $versionDao = DAORegistry::getDAO('VersionDAO'); /* @var $versionDao VersionDAO */ $version = $versionDao->getCurrentVersion(); $templateMgr = TemplateManager::getManager($request); $templateMgr->assign(array( 'ojsVersion' => $version->getVersionString(), 'publishedSubmissions' => $submissionsInSections, 'journal' => $journal, 'issue' => $issue, 'showToc' => true, )); AppLocale::requireComponents(LOCALE_COMPONENT_PKP_SUBMISSION); // submission.copyrightStatement $templateMgr->setHeaders(['content-type: ' . $mimeTypeMap[$type] . '; charset=utf-8']); $templateMgr->display($this->_parentPlugin->getTemplateResource($typeMap[$type])); return true; } }
Simpan