Various improvements
This commit is contained in:
parent
f12070b262
commit
e19814fdfa
28
app/errors/error_general.php
Normal file
28
app/errors/error_general.php
Normal file
@ -0,0 +1,28 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<title>Error</title>
|
||||
<style type="text/css">
|
||||
.message{
|
||||
position:relative;
|
||||
margin:0.5em auto;
|
||||
padding:0.5em;
|
||||
width:95%;
|
||||
}
|
||||
.error{
|
||||
border:1px solid #924949;
|
||||
background: #f3e6e6;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="message error">
|
||||
<?php if(isset($title)) : ?>
|
||||
<h1><?php echo $title ?></h1>
|
||||
<?php endif ?>
|
||||
|
||||
<?php echo $message; ?>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@ -23,5 +23,4 @@ class Welcome extends MM_Controller {
|
||||
|
||||
$this->output->set_output($output);
|
||||
}
|
||||
|
||||
}
|
@ -113,15 +113,40 @@ function on_exception($exception)
|
||||
echo $msg;
|
||||
}
|
||||
|
||||
// --------------------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* General 404 function
|
||||
*/
|
||||
function show_404()
|
||||
{
|
||||
@header('HTTP/1.1 404 Not Found', TRUE, 404);
|
||||
die('<h1>404 Not Found</h1>');
|
||||
}
|
||||
|
||||
function show_error()
|
||||
{
|
||||
// --------------------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* Fatal Error page function
|
||||
*
|
||||
* @param string $message
|
||||
* @param int $status_code
|
||||
*/
|
||||
function show_error($message, $status_code=null)
|
||||
{
|
||||
if( ! is_null($status_code))
|
||||
{
|
||||
@header("HTTP/1.1 {$status_code}", TRUE, (int)$status_code);
|
||||
}
|
||||
|
||||
// Contain the content for buffering
|
||||
ob_start();
|
||||
|
||||
include(APP_PATH.'/errors/error_general.php');
|
||||
|
||||
$buffer = ob_get_contents();
|
||||
ob_end_clean();
|
||||
die($buffer);
|
||||
}
|
||||
|
||||
// --------------------------------------------------------------------------
|
||||
@ -170,7 +195,7 @@ function controller_methods($controller)
|
||||
*/
|
||||
function route()
|
||||
{
|
||||
$pi = $_SERVER['PATH_INFO'];
|
||||
$pi = (isset($_SERVER['PATH_INFO'])) ? $_SERVER['PATH_INFO'] : null;
|
||||
|
||||
// Load the routes config file
|
||||
$routes = require_once(APP_PATH.'config/routes.php');
|
||||
@ -259,11 +284,7 @@ function route()
|
||||
{
|
||||
$class = new $controller;
|
||||
|
||||
//echo "Found class";
|
||||
|
||||
call_user_func(array($class, $func));
|
||||
|
||||
return;
|
||||
return call_user_func(array($class, $func));
|
||||
}
|
||||
|
||||
// Function doesn't exist...404
|
||||
@ -290,6 +311,44 @@ function site_url($segment)
|
||||
|
||||
// --------------------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* Wrapper function to simplify using curl
|
||||
*
|
||||
* @param string $url
|
||||
* @param array $options
|
||||
* @return mixed
|
||||
*/
|
||||
function do_curl($url, $options=array())
|
||||
{
|
||||
$cookie = tempnam ("/tmp", "CURLCOOKIE");
|
||||
$ch = curl_init($url);
|
||||
|
||||
//Use the user's User Agent and Cookies
|
||||
$opts= array(
|
||||
CURLOPT_USERAGENT => $_SERVER['HTTP_USER_AGENT'],
|
||||
CURLOPT_COOKIEJAR => $cookie,
|
||||
CURLOPT_FOLLOWLOCATION => TRUE,
|
||||
CURLOPT_ENCODING => "",
|
||||
CURLOPT_RETURNTRANSFER => TRUE,
|
||||
CURLOPT_AUTOREFERER => TRUE,
|
||||
CURLOPT_SSL_VERIFYPEER => FALSE,
|
||||
CURLOPT_CONNECTTIMEOUT => 10,
|
||||
CURLOPT_TIMEOUT => 10,
|
||||
CURLOPT_MAXREDIRS => 10,
|
||||
CURLOPT_PROTOCOLS => array(CURLPROTO_HTTP,CURLPROTO_HTTPS)
|
||||
);
|
||||
|
||||
//Set default options
|
||||
curl_setopt_array($ch, $opts);
|
||||
|
||||
//Set additional options
|
||||
curl_setopt_array($ch, $options);
|
||||
|
||||
return curl_exec($ch);
|
||||
}
|
||||
|
||||
// --------------------------------------------------------------------------
|
||||
|
||||
//Set error handlers
|
||||
set_error_handler('on_error');
|
||||
set_exception_handler('on_exception');
|
||||
@ -303,4 +362,4 @@ require_once('db.php');
|
||||
//Route to the appropriate function
|
||||
route();
|
||||
|
||||
// End of common.php
|
||||
// End of common.php
|
@ -142,6 +142,53 @@ class miniMVC{
|
||||
{
|
||||
return self::get_instance();
|
||||
}
|
||||
|
||||
/**
|
||||
* Method to load classes into the singleton
|
||||
*
|
||||
* @param string $name
|
||||
*/
|
||||
function load_class($name)
|
||||
{
|
||||
$path = APP_PATH . "classes/{$name}.php";
|
||||
$class = "{$name}";
|
||||
|
||||
if(class_exists($class, FALSE))
|
||||
{
|
||||
if ( ! isset($this->$name))
|
||||
{
|
||||
$this->$name = new $class;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if(is_file($path))
|
||||
{
|
||||
require_once($path);
|
||||
|
||||
if(class_exists($class, FALSE))
|
||||
{
|
||||
if ( ! isset($this->$name))
|
||||
{
|
||||
$this->$name = new $class;
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Convenience function to remove an object from the singleton
|
||||
*
|
||||
* @param string $name
|
||||
*/
|
||||
function unload($name)
|
||||
{
|
||||
if(isset($this->$name))
|
||||
{
|
||||
unset($this->$name);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// --------------------------------------------------------------------------
|
||||
|
Loading…
Reference in New Issue
Block a user