$this->config = array_merge($config, $newconfig);␍␊ |
if ($this->config["USE_H20_TPL"])␍␊ |
$this->tpl = new H2o(null, array(␍␊ |
"searchpath" => getcwd() . "/application/views/", "cache_dir" => "application/tmp/",␍␊ |
"searchpath" => getcwd() . "/application/views/",␍␊ |
"cache_dir" => "application/tmp/",␍␊ |
'cache' => 'file'␍␊ |
));␍␊ |
set_error_handler("HF_Core::error_handler");␍␊ |
$this->findController();␍␊ |
␉}␍␊ |
␍␊ |
public function siteURL()␍␊ |
{␍␊ |
if (isvarset($this->config["SITE_URL"]))␍␊ |
{␍␊ |
return $this->config["SITE_URL"];␍␊ |
}␍␊ |
$path = explode("/", $_SERVER["REQUEST_URI"]);␍␊ |
$path = array_filter($path, 'strlen');␍␊ |
if (count($path) == 0)␍␊ |
{␍␊ |
return $_SERVER["HTTP_HOST"] . "/";␍␊ |
} else {␍␊ |
if (in_array($this->classname, $path))␍␊ |
{␍␊ |
$newpath = implode("/", array_splice($path, 0, -2));␍␊ |
return $_SERVER["HTTP_HOST"] . "/" . $newpath . "/";␍␊ |
} else {␍␊ |
$newpath = implode("/", $path);␍␊ |
return $_SERVER["HTTP_HOST"] . "/" . $newpath . "/";␍␊ |
}␍␊ |
}␍␊ |
}␍␊ |
␉␍␊ |
␉private function findController()␍␊ |
␉{␍␊ |
try␍␊ |
{␍␊ |
$request = $_SERVER["PHP_SELF"];␍␊ |
$splitreq = explode("/", $request);␍␊ |
$request = "";␍␊ |
for($i = 0; $i < count($splitreq); $i++)␍␊ |
if (isvarset($_SERVER["PATH_INFO"]))␍␊ |
{␍␊ |
if ($splitreq[$i] == "index.php")␍␊ |
$request = $_SERVER["PATH_INFO"];␍␊ |
//$request = $_SERVER["PHP_SELF"];␍␊ |
$splitreq = explode("/", $request);␍␊ |
/*$request = "";␍␊ |
for($i = 0; $i < count($splitreq); $i++)␍␊ |
{␍␊ |
$request = implode("/", array_splice($splitreq, $i+1));␍␊ |
}␍␊ |
if ($splitreq[$i] == "index.php")␍␊ |
{␍␊ |
$request = implode("/", array_splice($splitreq, $i+1));␍␊ |
}␍␊ |
}*/␍␊ |
//print $request;␍␊ |
//$request = substr($request, 1);␍␊ |
//$request = substr($request, 0, -1);␍␊ |
} else {␍␊ |
$request = "";␍␊ |
}␍␊ |
␍␊ |
if ($request == "" || $request == "/")␍␊ |
{␍␊ |
require("application/controllers/" . $this->config["DEFAULT_ROUTE"] . ".php");␍␊ |
|
continue;␍␊ |
}␍␊ |
␍␊ |
$this->load404Controller();␍␊ |
include($path . $this->config["DEFAULT_ROUTE"] . ".php");␍␊ |
$this->loadController(new $this->config["DEFAULT_ROUTE"]($this->config, $this, $this->tpl), $this->config["DEFAULT_ROUTE"], "index");␍␊ |
//$this->load404Controller();␍␊ |
break;␍␊ |
// throw exception controller not found␍␊ |
}␍␊ |