Initial commit
This commit is contained in:
69
lotgd-web/lotgd/lib/events.php
Executable file
69
lotgd-web/lotgd/lib/events.php
Executable file
@ -0,0 +1,69 @@
|
||||
<?php
|
||||
// addnews ready
|
||||
// translator ready
|
||||
// mail ready
|
||||
require_once("lib/constants.php");
|
||||
require_once("lib/http.php");
|
||||
|
||||
// This file encapsulates all the special event handling for most locations
|
||||
|
||||
// Returns whether or not the description should be skipped
|
||||
function handle_event($location, $baseLink=false, $needHeader=false)
|
||||
{
|
||||
if ($baseLink === false){
|
||||
global $PHP_SELF;
|
||||
$baseLink = substr($PHP_SELF,strrpos($PHP_SELF,"/")+1)."?";
|
||||
}else{
|
||||
//debug("Base link was specified as $baseLink");
|
||||
//debug(debug_backtrace());
|
||||
}
|
||||
global $session, $playermount, $badguy;
|
||||
$skipdesc = false;
|
||||
|
||||
tlschema("events");
|
||||
$allowinactive = false;
|
||||
$eventhandler = httpget('eventhandler');
|
||||
if (($session['user']['superuser'] & SU_DEVELOPER) && $eventhandler!=""){
|
||||
$allowinactive = true;
|
||||
$array = preg_split("/[:-]/", $eventhandler);
|
||||
if ($array[0] == "module") {
|
||||
$session['user']['specialinc'] = "module:" . $array[1];
|
||||
} else {
|
||||
$session['user']['specialinc'] = "";
|
||||
}
|
||||
}
|
||||
|
||||
$_POST['i_am_a_hack'] = 'true';
|
||||
|
||||
if ($session['user']['specialinc']!=""){
|
||||
$specialinc = $session['user']['specialinc'];
|
||||
$session['user']['specialinc'] = "";
|
||||
if ($needHeader !== false) {
|
||||
page_header($needHeader);
|
||||
}
|
||||
|
||||
output("`^`c`bSomething Special!`c`b`0");
|
||||
if (strchr($specialinc, ":")) {
|
||||
//$array = split(":", $specialinc);
|
||||
$array = explode(":", $specialinc);
|
||||
$starttime = getmicrotime();
|
||||
module_do_event($location, $array[1], $allowinactive,$baseLink);
|
||||
$endtime = getmicrotime();
|
||||
if (($endtime - $starttime >= 1.00 && ($session['user']['superuser'] & SU_DEBUG_OUTPUT))){
|
||||
debug("Slow Event (".round($endtime-$starttime,2)."s): $hookname - {$row['modulename']}`n");
|
||||
}
|
||||
}
|
||||
if (checknavs()) {
|
||||
// The page rendered some linkage, so we just want to exit.
|
||||
page_footer();
|
||||
} else {
|
||||
$skipdesc=true;
|
||||
$session['user']['specialinc'] = "";
|
||||
$session['user']['specialmisc'] = "";
|
||||
httpset("op", "");
|
||||
}
|
||||
}
|
||||
tlschema();
|
||||
return $skipdesc;
|
||||
}
|
||||
?>
|
Reference in New Issue
Block a user