1b1ff32a1SSzymon Olewniczak<?php 2b1ff32a1SSzymon Olewniczak 31989ee26SSzymon Olewniczakuse dokuwiki\Extension\ActionPlugin; 41989ee26SSzymon Olewniczakuse dokuwiki\Extension\EventHandler; 51989ee26SSzymon Olewniczakuse dokuwiki\Extension\Event; 6b1ff32a1SSzymon Olewniczak 71989ee26SSzymon Olewniczakclass action_plugin_approve_move extends ActionPlugin { 8b1ff32a1SSzymon Olewniczak 9b1ff32a1SSzymon Olewniczak /** 101989ee26SSzymon Olewniczak * @inheritDoc 11b1ff32a1SSzymon Olewniczak */ 121989ee26SSzymon Olewniczak public function register(EventHandler $controller) { 13b1ff32a1SSzymon Olewniczak $controller->register_hook('PLUGIN_MOVE_PAGE_RENAME', 'AFTER', $this, 'handle_move', true); 14b1ff32a1SSzymon Olewniczak } 15b1ff32a1SSzymon Olewniczak 16b1ff32a1SSzymon Olewniczak /** 171989ee26SSzymon Olewniczak * Renames all occurrences of a page ID in the database. 18b1ff32a1SSzymon Olewniczak * 191989ee26SSzymon Olewniczak * @param Event $event event object by reference 20b1ff32a1SSzymon Olewniczak * @param bool $ispage is this a page move operation? 210c60a293SSzymon Olewniczak * @return void 22b1ff32a1SSzymon Olewniczak */ 231989ee26SSzymon Olewniczak public function handle_move(Event $event, $ispage) { 240c60a293SSzymon Olewniczak /** @var \helper_plugin_approve_db $db_helper */ 25*b59355cdSSzymon Olewniczak $db = $this->loadHelper('approve_db'); 260c60a293SSzymon Olewniczak 27b1ff32a1SSzymon Olewniczak $old = $event->data['src_id']; 28b1ff32a1SSzymon Olewniczak $new = $event->data['dst_id']; 29b1ff32a1SSzymon Olewniczak 30b1ff32a1SSzymon Olewniczak // move revision history 311989ee26SSzymon Olewniczak $db->moveRevisionHistory($old, $new); 32b1ff32a1SSzymon Olewniczak } 33b1ff32a1SSzymon Olewniczak 34b1ff32a1SSzymon Olewniczak} 35