1<?php 2/** 3 * DokuWiki Plugin Discord Notifier ( Action Component ) 4 * 5 * @license GPL 2 http://www.gnu.org/licenses/gpl-2.0.html 6 * 7 */ 8 9if ( !defined ( 'DOKU_INC' ) ) die ( ); 10 11//require_once ( DOKU_INC.'inc/changelog.php' ); 12 13if ( !defined ( 'DOKU_LF' ) ) define ( 'DOKU_LF', "\n" ); 14if ( !defined ( 'DOKU_TAB' ) ) define ( 'DOKU_TAB', "\t" ); 15if ( !defined ( 'DOKU_PLUGIN' ) ) define ( 'DOKU_PLUGIN', DOKU_INC . 'lib/plugins/' ); 16 17class action_plugin_discordnotifier extends DokuWiki_Action_Plugin { 18 19 function register ( Doku_Event_Handler $controller ) { 20 $controller -> register_hook ( 'COMMON_WIKIPAGE_SAVE', 'AFTER', $this, '_handle' ); 21 } 22 23 function _handle ( Doku_Event $event, $param ) { 24 /** @var helper_plugin_approve $helper */ 25 $helper = plugin_load('helper', 'discordnotifier'); 26 27 // filter writes to attic 28 if ( $helper -> attic_write ( $event -> data['file'] ) ) return; 29 30 // filter namespace 31 if ( !$helper -> valid_namespace ( ) ) return; 32 33 // filer event 34 if ( !$helper -> set_event ( $event ) ) return; 35 36 // set payload text 37 $helper -> set_payload_text ( $event ); 38 39 // submit payload 40 $helper -> submit_payload ( ); 41 } 42 43} 44