1*4ed26d55SAndreas Boehler<?php 2*4ed26d55SAndreas Boehler 3*4ed26d55SAndreas Boehler/** 4*4ed26d55SAndreas Boehler * DokuWiki DAVCal PlugIn - Ajax component 5*4ed26d55SAndreas Boehler */ 6*4ed26d55SAndreas Boehler 7*4ed26d55SAndreas Boehlerif(!defined('DOKU_INC')) die(); 8*4ed26d55SAndreas Boehler 9*4ed26d55SAndreas Boehlerclass action_plugin_davcal_cache extends DokuWiki_Action_Plugin { 10*4ed26d55SAndreas Boehler 11*4ed26d55SAndreas Boehler /** 12*4ed26d55SAndreas Boehler * @var helper_plugin_davcal 13*4ed26d55SAndreas Boehler */ 14*4ed26d55SAndreas Boehler private $hlp = null; 15*4ed26d55SAndreas Boehler 16*4ed26d55SAndreas Boehler function __construct() { 17*4ed26d55SAndreas Boehler $this->hlp =& plugin_load('helper','davcal'); 18*4ed26d55SAndreas Boehler } 19*4ed26d55SAndreas Boehler 20*4ed26d55SAndreas Boehler function register(Doku_Event_Handler $controller) { 21*4ed26d55SAndreas Boehler $controller->register_hook('PARSER_CACHE_USE', 'BEFORE', $this, 'handle_parser_cache_use'); 22*4ed26d55SAndreas Boehler } 23*4ed26d55SAndreas Boehler 24*4ed26d55SAndreas Boehler function handle_parser_cache_use(&$event, $param) { 25*4ed26d55SAndreas Boehler global $ID; 26*4ed26d55SAndreas Boehler $cache = &$event->data; 27*4ed26d55SAndreas Boehler if(!isset($cache->page)) return; 28*4ed26d55SAndreas Boehler 29*4ed26d55SAndreas Boehler $davcalMeta = p_get_metadata($ID, 'plugin_davcal'); 30*4ed26d55SAndreas Boehler if(!$davcalMeta) 31*4ed26d55SAndreas Boehler return; 32*4ed26d55SAndreas Boehler 33*4ed26d55SAndreas Boehler if(isset($davcalMeta['table']) && $davcalMeta['table'] === true) 34*4ed26d55SAndreas Boehler { 35*4ed26d55SAndreas Boehler $event->preventDefault(); 36*4ed26d55SAndreas Boehler $event->stopPropagation(); 37*4ed26d55SAndreas Boehler $event->result = false; 38*4ed26d55SAndreas Boehler } 39*4ed26d55SAndreas Boehler } 40*4ed26d55SAndreas Boehler 41*4ed26d55SAndreas Boehler}