<?php namespace phpList\plugin\Common; /** * CommonPlugin for phplist. * * This file is a part of CommonPlugin. * * @category phplist * * @author Duncan Cameron * @copyright 2011-2018 Duncan Cameron * @license http://www.gnu.org/licenses/gpl.html GNU General Public License, Version 3 */ /** * This class manages the display of help text. */ class HelpManager { const COMMON_PLUGIN = 'CommonPlugin'; const HELP_TEMPLATE = '/helpmanager.tpl.php'; const ABOUT_TEMPLATE = '/about.tpl.php'; const VERSION_FILE = 'version.txt'; const LICENCE_FILE = 'licence.txt'; private $controller; private $plugin; private $pluginDir; private function findPlugin() { global $plugins; if (isset($_GET['pi'])) { $piName = preg_replace('/\W/', '', $_GET['pi']); if (isset($plugins[$piName])) { $this->plugin = $plugins[$piName]; $this->pluginDir = $this->plugin->coderoot; return; } } throw new \Exception('HelpManager must be created within a plugin'); } private function about() { global $plugins; $commonPi = $plugins[self::COMMON_PLUGIN]; $params = array(); $params['plugins'] = array( array('name' => $this->plugin->name, 'version' => $this->plugin->version), array('name' => $commonPi->name, 'version' => $commonPi->version), ); if (is_file($f = $this->pluginDir . self::LICENCE_FILE) || is_file($f = $commonPi->coderoot . self::LICENCE_FILE)) { $params['pluginLicence'] = file_get_contents($f); } return $this->controller->render(__DIR__ . self::ABOUT_TEMPLATE, $params); } public function __construct($controller) { $this->controller = $controller; $this->findPlugin(); } public function display($topic) { ob_end_clean(); $params = array('topic' => $topic); if ($topic == 'about') { $params['help'] = $this->about(); } else { $lang = $_SESSION['adminlanguage']['iso']; if (is_file($f = "{$this->pluginDir}help/$lang/$topic.php") || is_file($f = "{$this->pluginDir}help/en/$topic.php") ) { $params['file'] = $f; } else { $params['help'] = 'No help available'; } } header("Content-type: text/html; charset={$this->controller->i18n->charSet}"); echo $this->controller->render(__DIR__ . self::HELP_TEMPLATE, $params); } }
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
DAO | Folder | 0755 |
|
|
BaseController.php | File | 936 B | 0644 |
|
Config.php | File | 1003 B | 0644 |
|
Container.php | File | 509 B | 0644 |
|
Context.php | File | 1.18 KB | 0644 |
|
Controller.php | File | 2.43 KB | 0644 |
|
ControllerFactory.php | File | 479 B | 0644 |
|
ControllerFactoryBase.php | File | 1.4 KB | 0644 |
|
DAO.php | File | 692 B | 0644 |
|
DB.php | File | 2.47 KB | 0644 |
|
DBResultIterator.php | File | 931 B | 0644 |
|
Exception.php | File | 1.03 KB | 0644 |
|
ExportCSV.php | File | 962 B | 0644 |
|
ExportCSVAsync.php | File | 4.3 KB | 0644 |
|
ExportXML.php | File | 1.4 KB | 0644 |
|
FPDF.php | File | 1.03 KB | 0644 |
|
FileNotFoundException.php | File | 631 B | 0644 |
|
FileServer.php | File | 2.21 KB | 0644 |
|
FrontendTranslator.php | File | 1.46 KB | 0644 |
|
HelpManager.php | File | 2.61 KB | 0644 |
|
HtmlToPdf.php | File | 683 B | 0644 |
|
I18N.php | File | 5.05 KB | 0644 |
|
IChartable.php | File | 447 B | 0644 |
|
IExportable.php | File | 569 B | 0644 |
|
IMailClient.php | File | 1.33 KB | 0644 |
|
IPopulator.php | File | 517 B | 0644 |
|
ImageTag.php | File | 894 B | 0644 |
|
Listing.php | File | 1.23 KB | 0644 |
|
Logger.php | File | 2.88 KB | 0644 |
|
MailSender.php | File | 7.12 KB | 0644 |
|
Main.php | File | 1.21 KB | 0644 |
|
Model.php | File | 2.17 KB | 0644 |
|
PageLink.php | File | 1.33 KB | 0644 |
|
PageURL.php | File | 1.87 KB | 0644 |
|
Pager.php | File | 7.46 KB | 0644 |
|
Paginator.php | File | 1.53 KB | 0644 |
|
Populator.php | File | 1.34 KB | 0644 |
|
StringCallback.php | File | 559 B | 0644 |
|
StringStream.php | File | 3.41 KB | 0644 |
|
Tabs.php | File | 707 B | 0644 |
|
Toolbar.php | File | 2.62 KB | 0644 |
|
UniqueLogger.php | File | 1.14 KB | 0644 |
|
View.php | File | 669 B | 0644 |
|
WebblerListing.php | File | 3.85 KB | 0644 |
|
Widget.php | File | 1.12 KB | 0644 |
|
about.tpl.php | File | 553 B | 0644 |
|
depends.php | File | 1.45 KB | 0644 |
|
helpmanager.tpl.php | File | 676 B | 0644 |
|
pager.tpl.php | File | 2.14 KB | 0644 |
|
toolbar.tpl.php | File | 1.04 KB | 0644 |
|
widget_attributeform.tpl.php | File | 3.42 KB | 0644 |
|