1*bd01c8ecSGerry Weißbach<?php 2*bd01c8ecSGerry Weißbach/** 3*bd01c8ecSGerry Weißbach * Box Plugin 4*bd01c8ecSGerry Weißbach * 5*bd01c8ecSGerry Weißbach * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) 6*bd01c8ecSGerry Weißbach * @author i-net software <tools@inetsoftware.de> 7*bd01c8ecSGerry Weißbach * @author Gerry Weissbach <gweissbach@inetsoftware.de> 8*bd01c8ecSGerry Weißbach */ 9*bd01c8ecSGerry Weißbach 10*bd01c8ecSGerry Weißbach// must be run within Dokuwiki 11*bd01c8ecSGerry Weißbachif(!defined('DOKU_INC')) die(); 12*bd01c8ecSGerry Weißbach 13*bd01c8ecSGerry Weißbachif(!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/'); 14*bd01c8ecSGerry Weißbachrequire_once(DOKU_PLUGIN.'action.php'); 15*bd01c8ecSGerry Weißbach 16*bd01c8ecSGerry Weißbachclass action_plugin_box extends DokuWiki_Action_Plugin { 17*bd01c8ecSGerry Weißbach 18*bd01c8ecSGerry Weißbach function getInfo(){ 19*bd01c8ecSGerry Weißbach return array( 20*bd01c8ecSGerry Weißbach 'author' => 'i-net software / Gerry Weissbach', 21*bd01c8ecSGerry Weißbach 'email' => 'tools@inetsoftware.de', 22*bd01c8ecSGerry Weißbach 'date' => '2009-11-11', 23*bd01c8ecSGerry Weißbach 'name' => 'Box Plugin Action Component', 24*bd01c8ecSGerry Weißbach ); 25*bd01c8ecSGerry Weißbach } 26*bd01c8ecSGerry Weißbach 27*bd01c8ecSGerry Weißbach function register(&$controller) { 28*bd01c8ecSGerry Weißbach $controller->register_hook('ACTION_SHOW_REDIRECT', 'BEFORE', $this, 'act_box_redirect_execute'); 29*bd01c8ecSGerry Weißbach } 30*bd01c8ecSGerry Weißbach 31*bd01c8ecSGerry Weißbach function act_box_redirect_execute( &$event ) { 32*bd01c8ecSGerry Weißbach global $PRE; 33*bd01c8ecSGerry Weißbach global $TEXT; 34*bd01c8ecSGerry Weißbach 35*bd01c8ecSGerry Weißbach if ( !empty($event->data['fragment']) ) { return; } 36*bd01c8ecSGerry Weißbach if ( $event->data['preact'] == 'save' ) { return; } 37*bd01c8ecSGerry Weißbach 38*bd01c8ecSGerry Weißbach if($PRE && preg_match('/^\s*<box.*?\|([^>\n]+)/',$TEXT,$match)){ 39*bd01c8ecSGerry Weißbach $check = false; //Byref 40*bd01c8ecSGerry Weißbach $event->data['fragment'] = sectionID($match[1], $check); 41*bd01c8ecSGerry Weißbach } 42*bd01c8ecSGerry Weißbach } 43*bd01c8ecSGerry Weißbach}