1*007225e5Sgerardnico<?php 2*007225e5Sgerardnico 3*007225e5Sgerardnico 4*007225e5Sgerardnicouse ComboStrap\PluginUtility; 5*007225e5Sgerardnicouse ComboStrap\TplConstant; 6*007225e5Sgerardnico 7*007225e5Sgerardnico/** 8*007225e5Sgerardnico * Class action_plugin_combo_hidden 9*007225e5Sgerardnico * Hide page 10*007225e5Sgerardnico */ 11*007225e5Sgerardnicoclass action_plugin_combo_hiddenpage extends DokuWiki_Action_Plugin 12*007225e5Sgerardnico{ 13*007225e5Sgerardnico 14*007225e5Sgerardnico 15*007225e5Sgerardnico public function register(Doku_Event_Handler $controller) 16*007225e5Sgerardnico { 17*007225e5Sgerardnico /** 18*007225e5Sgerardnico * https://www.dokuwiki.org/devel:event:pageutils_id_hidepage 19*007225e5Sgerardnico */ 20*007225e5Sgerardnico $controller->register_hook('PAGEUTILS_ID_HIDEPAGE', 'BEFORE', $this, 'handleIsHidden', array()); 21*007225e5Sgerardnico } 22*007225e5Sgerardnico 23*007225e5Sgerardnico function handleIsHidden(&$event, $param) 24*007225e5Sgerardnico { 25*007225e5Sgerardnico global $conf; 26*007225e5Sgerardnico 27*007225e5Sgerardnico /** 28*007225e5Sgerardnico * Caching the strap bars and private namespace 29*007225e5Sgerardnico */ 30*007225e5Sgerardnico $pattern = "(" . $conf['sidebar'] . "|" . PluginUtility::COMBOSTRAP_NAMESPACE_NAME; 31*007225e5Sgerardnico if ($conf['template'] == PluginUtility::TEMPLATE_STRAP_NAME) { 32*007225e5Sgerardnico $constantFile = __DIR__ . '/../../../tpl/strap/class/TplConstant.php'; 33*007225e5Sgerardnico if (file_exists($constantFile)) { 34*007225e5Sgerardnico /** @noinspection PhpIncludeInspection */ 35*007225e5Sgerardnico require_once($constantFile); 36*007225e5Sgerardnico $footer = tpl_getConf(TplConstant::CONF_FOOTER); 37*007225e5Sgerardnico $sidekick = tpl_getConf(TplConstant::CONF_SIDEKICK); 38*007225e5Sgerardnico $header = tpl_getConf(TplConstant::CONF_HEADER); 39*007225e5Sgerardnico $pattern .= "|" . $footer . "|" . $sidekick . "|" . $header; 40*007225e5Sgerardnico } 41*007225e5Sgerardnico } 42*007225e5Sgerardnico $pattern .= ")"; 43*007225e5Sgerardnico if (preg_match('/' . $pattern . '/ui', ':' . $event->data['id'])) { 44*007225e5Sgerardnico $event->data['hidden'] = true; 45*007225e5Sgerardnico } 46*007225e5Sgerardnico 47*007225e5Sgerardnico } 48*007225e5Sgerardnico 49*007225e5Sgerardnico 50*007225e5Sgerardnico} 51