setupLocale(); } function register(Doku_Event_Handler $controller) { $controller->register_hook('MEDIAMANAGER_STARTED', 'AFTER', $this, 'mediaman_started'); $controller->register_hook('MEDIA_UPLOAD_FINISH', 'BEFORE', $this, 'upload_finish'); $controller->register_hook('TPL_METAHEADER_OUTPUT', 'BEFORE', $this, 'handle_metafile'); } function handle_metafile(Doku_Event $event) { $event->data['script'][] = array( 'type'=>'text/javascript', 'charset'=>'utf-8', '_data'=>'', 'src'=>DOKU_BASE.'lib/plugins/ckgedit/scripts/mediamgr.js' ) + ([ 'defer' => 'defer']); } function upload_finish(Doku_Event $event) { if(!preg_match("#^image/#",$event->data[3]) && $_COOKIE['ckgFbType'] == 'image') { if(!empty($event->data[3]) && strlen($event->data[3]) >30) { $fname = substr($event->data[3],0,29) . '. . .'; } else $fname = $event->data[3]; msg($this->getLang('mediamgr_imgonly') . $fname); setcookieSameSite('ckgFbType', 'image',time()-10); $event->preventDefault(); } } function mediaman_started(Doku_Event $event) { if ($_GET["onselect"] == "ckg_edit_mediaman_insert") { setcookieSameSite('ckgFbType', 'image'); } else if ($_GET["onselect"] == "ckg_edit_mediaman_insertlink") { setcookieSameSite('ckgFbType', 'link'); } } }