1f3f0262cSandi<?php 215fae107Sandi/** 315fae107Sandi * DokuWiki mainscript 415fae107Sandi * 515fae107Sandi * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) 615fae107Sandi * @author Andreas Gohr <andi@splitbrain.org> 715fae107Sandi */ 815fae107Sandi 981aafed4Sandi// xdebug_start_profiling(); 1081aafed4Sandi 11ed7b5f09Sandi if(!defined('DOKU_INC')) define('DOKU_INC',realpath(dirname(__FILE__)).'/'); 12ed7b5f09Sandi require_once(DOKU_INC.'inc/init.php'); 13ed7b5f09Sandi require_once(DOKU_INC.'inc/common.php'); 14f65bfee1Schris require_once(DOKU_INC.'inc/events.php'); 15b625487dSandi require_once(DOKU_INC.'inc/pageutils.php'); 16ed7b5f09Sandi require_once(DOKU_INC.'inc/html.php'); 17ed7b5f09Sandi require_once(DOKU_INC.'inc/auth.php'); 186b13307fSandi require_once(DOKU_INC.'inc/actions.php'); 19f3f0262cSandi 20f3f0262cSandi //import variables 21f3f0262cSandi $QUERY = trim($_REQUEST['id']); 226c7843b5Sandi $ID = getID(); 23*d98d4540SBen Coburn $NS = getNS($ID); 24f3f0262cSandi $REV = $_REQUEST['rev']; 25f3f0262cSandi $ACT = $_REQUEST['do']; 26f3f0262cSandi $IDX = $_REQUEST['idx']; 27f3f0262cSandi $DATE = $_REQUEST['date']; 28f3f0262cSandi $RANGE = $_REQUEST['lines']; 29f3f0262cSandi $HIGH = $_REQUEST['s']; 30f3f0262cSandi if(empty($HIGH)) $HIGH = getGoogleQuery(); 31f3f0262cSandi 32f3f0262cSandi $TEXT = cleanText($_POST['wikitext']); 33f3f0262cSandi $PRE = cleanText($_POST['prefix']); 34f3f0262cSandi $SUF = cleanText($_POST['suffix']); 35f3f0262cSandi $SUM = $_REQUEST['summary']; 36f3f0262cSandi 37258641c6Sandi //sanitize revision 38258641c6Sandi $REV = preg_replace('/[^0-9]/','',$REV); 39258641c6Sandi 40f3f0262cSandi //we accept the do param as HTTP header, too: 41f3f0262cSandi if(!empty($_SERVER['HTTP_X_DOKUWIKI_DO'])){ 42f3f0262cSandi $ACT = trim(strtolower($_SERVER['HTTP_X_DOKUWIKI_DO'])); 43f3f0262cSandi } 44f3f0262cSandi 45f3f0262cSandi if(!empty($IDX)) $ACT='index'; 466c7843b5Sandi //set default #FIXME not needed here? done in actions? 47f3f0262cSandi if(empty($ACT)) $ACT = 'show'; 48f3f0262cSandi 49f3f0262cSandi 50f42d1c75SAndreas Gohr if($conf['allowdebug'] && $ACT == 'debug'){ 51f3f0262cSandi html_debug(); 52f3f0262cSandi exit; 53f3f0262cSandi } 54f3f0262cSandi 5579b608ceSandi //make infos about the selected page available 5679b608ceSandi $INFO = pageinfo(); 5779b608ceSandi 582649b1a4SAndreas Gohr //send 404 for missing pages if configured 592649b1a4SAndreas Gohr if($conf['send404'] && !$INFO['exists']){ 602649b1a4SAndreas Gohr header('HTTP/1.0 404 Not Found'); 612649b1a4SAndreas Gohr } 622649b1a4SAndreas Gohr 638746e727Sandi //prepare breadcrumbs (initialize a static var) 648746e727Sandi breadcrumbs(); 658746e727Sandi 6624bb549bSchris trigger_event('DOKUWIKI_STARTED',$tmp=array()); 67a4b5ae12Schris 688746e727Sandi //close session 698746e727Sandi session_write_close(); 708746e727Sandi 718746e727Sandi //do the work 726b13307fSandi act_dispatch($ACT); 73b3222a5cSandi 7424bb549bSchris trigger_event('DOKUWIKI_DONE', $tmp=array()); 75a4b5ae12Schris 762a27e99aSandi// xdebug_dump_function_profile(1); 77f3f0262cSandi?> 78