1<?php 2 3use dokuwiki\Extension\Event; 4 5if(!defined('DOKU_INC')) define('DOKU_INC',dirname(__FILE__).'/../../'); 6define('DOKU_MEDIADETAIL',1); 7 8// define all DokuWiki globals here (needed within test requests but also helps to keep track) 9global $INPUT, $IMG, $ID, $REV, $SRC, $ERROR, $AUTH; 10 11require_once(DOKU_INC.'inc/init.php'); 12 13$IMG = getID('media'); 14$ID = cleanID($INPUT->str('id')); 15$REV = $INPUT->int('rev'); 16 17// this makes some general info available as well as the info about the 18// "parent" page 19$INFO = array_merge(pageinfo(),mediainfo()); 20 21$tmp = array(); 22Event::createAndTrigger('DETAIL_STARTED', $tmp); 23 24//close session 25session_write_close(); 26 27$ERROR = false; 28// check image permissions 29$AUTH = auth_quickaclcheck($IMG); 30if($AUTH >= AUTH_READ){ 31 // check if image exists 32 $SRC = mediaFN($IMG,$REV); 33 if(!file_exists($SRC)){ 34 //doesn't exist! 35 http_status(404); 36 $ERROR = 'File not found'; 37 } 38}else{ 39 // no auth 40 $ERROR = p_locale_xhtml('denied'); 41} 42 43//start output and load template 44header('Content-Type: text/html; charset=utf-8'); 45include(template('detail.php')); 46 47