[ Mini Kiebo ]
Server: Windows NT DESKTOP-5B8S0D4 6.2 build 9200 (Windows 8 Professional Edition) i586
Path:
D:
/
Backup
/
05122024
/
htdocs
/
jurnal-kesmas
/
plugins
/
generic
/
customBlockManager
/
[
Home
]
File: CustomBlockPlugin.php
<?php /** * @file plugins/generic/customBlockManager/CustomBlockPlugin.php * * Copyright (c) 2014-2020 Simon Fraser University * Copyright (c) 2003-2020 John Willinsky * Distributed under the GNU GPL v3. For full terms see the file docs/COPYING. * * @package plugins.generic.customBlockManager * * @class CustomBlockPlugin * * A generic sidebar block that can be customized through the CustomBlockManagerPlugin * */ namespace APP\plugins\generic\customBlockManager; use APP\core\Application; use PKP\facades\Locale; use PKP\plugins\BlockPlugin; class CustomBlockPlugin extends BlockPlugin { /** @var string Name of this block plugin */ public $_blockName; /** @var CustomBlockManagerPlugin Parent plugin */ public $_parentPlugin; /** * Constructor * * @param string $blockName Name of this block plugin. * @param CustomBlockManagerPlugin $parentPlugin Custom block plugin management plugin. */ public function __construct($blockName, $parentPlugin) { $this->_blockName = $blockName; $this->_parentPlugin = $parentPlugin; parent::__construct(); } /** * Get the management plugin * * @return CustomBlockManagerPlugin */ public function getManagerPlugin() { return $this->_parentPlugin; } /** * @copydoc Plugin::getName() */ public function getName() { return $this->_blockName; } /** * @copydoc Plugin::getPluginPath() */ public function getPluginPath() { $plugin = $this->getManagerPlugin(); return $plugin->getPluginPath(); } /** * @copydoc Plugin::getTemplatePath() */ public function getTemplatePath($inCore = false) { $plugin = $this->getManagerPlugin(); return $plugin->getTemplatePath($inCore); } /** * @copydoc Plugin::getHideManagement() */ public function getHideManagement() { return true; } /** * @copydoc LazyLoadPlugin::getEnabled() * * @param null|mixed $contextId */ public function getEnabled($contextId = null) { if (!Application::isInstalled()) { return true; } return parent::getEnabled($contextId); } /** * @copydoc Plugin::getDisplayName() */ public function getDisplayName() { return $this->_blockName . ' ' . __('plugins.generic.customBlock.nameSuffix'); } /** * @copydoc Plugin::getDescription() */ public function getDescription() { return __('plugins.generic.customBlock.description'); } /** * @copydoc BlockPlugin::getContents() * * @param null|mixed $request */ public function getContents($templateMgr, $request = null) { $context = $request->getContext(); $contextId = $context ? $context->getId() : 0; // Get the block contents. $customBlockTitle = $this->getSetting($contextId, 'blockTitle'); $customBlockContent = $this->getSetting($contextId, 'blockContent'); $currentLocale = Locale::getLocale(); $contextPrimaryLocale = $context ? $context->getPrimaryLocale() : $request->getSite()->getPrimaryLocale(); $divCustomBlockId = 'customblock-' . preg_replace('/\W+/', '-', $this->getName()); $templateMgr->assign('customBlockId', $divCustomBlockId); $title = $customBlockTitle[$currentLocale] ? $customBlockTitle[$currentLocale] : $customBlockTitle[$contextPrimaryLocale]; $content = $customBlockContent[$currentLocale] ? $customBlockContent[$currentLocale] : $customBlockContent[$contextPrimaryLocale]; $templateMgr->assign('customBlockTitle', $title); $templateMgr->assign('customBlockContent', $content); $templateMgr->assign('showName', $this->getSetting($contextId, 'showName')); return parent::getContents($templateMgr, $request); } } if (!PKP_STRICT_MODE) { class_alias('\APP\plugins\generic\customBlockManager\CustomBlockPlugin', '\CustomBlockPlugin'); }