<?php
if( ! function_exists('load_class') ){
function &load_class ( $class ){
static $_is_load;
if(isset($_is_load[strtolower($class)])){
return $_is_load[strtolower($class)];
}
$name = false;
foreach ( array ( CORE ) as $dir ){
if(file_exists($dir.$class.".php")){
$name = $class;
if(class_exists($name) === false){
require($name.".php");
}
break;
}
}
if ($name === FALSE){
log_msg(' Load class not found '.$class);
}
is_loaded($class);
$_is_load[ strtolower($class) ] = new $name();
return $_is_load[$class];
}
}
if( !function_exists('is_loaded')){
function is_loaded($name = ''){
static $_is_loaded = array();
if ($name != ''){
$_is_loaded[strtolower($name)] = $name;
}
return $_is_loaded;
}
}
if(!function_exists('URL')){
function URL(){
if ( ! isset($_SERVER['REQUEST_URI']) OR ! isset($_SERVER['SCRIPT_NAME'])){
return '';
}
// Uri $_SERVER['REQUEST_URI']
$uri = $_SERVER['REQUEST_URI'];
if (strpos($uri, $_SERVER['SCRIPT_NAME']) === 0){
$uri = substr($uri, strlen($_SERVER['SCRIPT_NAME']));
}elseif (strpos($uri, dirname($_SERVER['SCRIPT_NAME'])) === 0){
$uri = substr($uri, strlen(dirname($_SERVER['SCRIPT_NAME'])));
}
// Some sort of validation
if ($uri == '/' || empty($uri)){
return '/';
}
// parse url to nice and ease.
$uri = parse_url($uri, PHP_URL_PATH);
// clean the uri
$uri_clean = explode("/",str_replace(array('//', '../'), '/', trim($uri, '/')));
return $uri_clean;
}
}
if(!function_exists('log_msg')){
// log_msg to return a line and file
// This can be convert to to write a file log
// For now lets leave like this to development.
function log_msg ($msg= 'Erro'){
$debuger = debug_backtrace();
$line = $debuger[0]['line'];
$file = $debuger[0]['file'];
return "<h1>".$msg."</h1><br/><b>Line:</b>".$line."<br/><b>File:</b>".$file;
}
}
if(!function_exists('load_file')){
// Load file
// Can be some helper functions such cal,url,math,dates and other
// Or can be config file only.
function load_file( $file, $directory = 'config'){
// Keep track all file it was loaded!
$_load_file = array();
// If's allready exists so return true
if(isset($_load_file[strtolower($file)])){
// It's already have this file load.
// Exit!
return true;
}
// If Directory isn't a dir or don't exists return an erro!
if(!is_dir($directory)){
log_msg("Directory $directory doesn't exists");
return false;
}
// Save load file
$_load_file[strtolower($file)] = $file;
// call file
require $directory."/".$file;
// Success!
return true;
}
}
// Load views
if(!function_exists('load_view')){
function load_view ( $file , $data = array(), $toReturn = false){
// Exists file ?!
if(!file_exists(VIEWS.$file.".php")){
// Ups, no.
throw new Exception('Não existe :'.(VIEWS.$file.".php").'.');
}
// Ob_start.
ob_start();
// Extract data to the file
extract($data);
// call the file
require VIEWS.$file.".php";
// my precious html.
$html = ob_get_contents();
// Clean my mess, please.
ob_end_clean();
// Is to return of controller ?!
if($toReturn){
// Oh yeah man!
return $html;
}
// Let's print html to the client.
echo $html;
}
}
?>
|