Seditio Source
Root |
./othercms/elxis_5.3_atlas_rev2452/includes/install/inc/miniloader.php
<?php
/**
* @version        $Id: miniloader.php 1606 2014-07-04 19:06:44Z sannosi $
* @package        Elxis
* @subpackage    Installer
* @copyright    Copyright (c) 2006-2019 Elxis CMS (http://www.elxis.org). All rights reserved.
* @license        Elxis Public License ( http://www.elxis.org/elxis-public-license.html )
* @author        Elxis Team ( http://www.elxis.org )
* @description     Elxis CMS is free software. Read the license for copyright notices and details
*/

defined('_ELXIS_') or die ('Direct access to this location is not allowed');
defined('ELXIS_INSTALLER') or die ('Direct access to this location is not allowed');


if (!
defined('ELXIS_OS')) {
    switch (
strtoupper(substr(PHP_OS, 0, 3))) {
        case
'WIN':
           
define('ELXIS_OS', 'WIN');
           
define('DS', "\\");
           
define("_LEND", "\r\n");
        break;
        case
'MAC':
           
define('ELXIS_OS', 'MAC');
           
define('DS', "/");
           
define("_LEND", "\r");
        break;
        default:
           
define('ELXIS_OS', 'LIN');
           
define('DS', "/");
           
define("_LEND", "\n");
        break;
    }
}

if (!
class_exists('elxisLoader', false)) {
    class
elxisLoader {

        static public function
load($str, $class='') {
           
$file = ELXIS_PATH.'/includes/'.str_replace(':', '/', $str).'.php';
            if (
is_file($file)) { require_once($file); }
        }

        static public function
loadFile($file) {
            if ((
$file != '') && is_file(ELXIS_PATH.'/'.$file)) {
                require_once(
ELXIS_PATH.'/'.$file);
            }
        }

    }
}


if (!
class_exists('eFactory', false)) {
    class
eFactory {

        private static
$elxis = null;
        private static
$db = null;

        static public function
getElxis($cfg=null) {
            if (
self::$elxis == null) {
               
elxisLoader::loadFile('includes/libraries/elxis/framework.class.php');
               
$elxis = new elxisFramework($cfg);
               
self::$elxis = $elxis;
                return
$elxis;
            } else {
                return
self::$elxis;
            }
        }


        static public function
getDB() {
            if (
self::$db == null) {
               
self::$db = self::makeDB();
                return
self::$db;
            } else {
                return
self::$db;
            }
        }


        static private function
makeDB() {
           
$elxis = self::getElxis();
           
elxisLoader::loadFile('includes/libraries/elxis/database.class.php');
           
self::$db = new elxisDatabase();
            return
self::$db;
        }

    }
}


if (!
class_exists('elxisError', false)) {
    class
elxisError {
        static public function
error($errno, $errstr, $errfile, $errline) {}
        static public function
logWarning($message) {}
        static public function
logError($message) {}
    }
}


if (!
class_exists('elxisFramework', false)) {
    if (
file_exists(ELXIS_PATH.'/configuration.php')) {//installed
       
$elxis = eFactory::getElxis();
    } else {
//not installed

       
class elxisFramework {

            private
$cfg = array();

            public function
__construct($cfg=null) {
                if (
is_array($cfg) && (count($cfg) > 0)) { $this->cfg = $cfg; }
            }


            public function
getConfig($var='') {
                return (isset(
$this->cfg[$var])) ? $this->cfg[$var] : null;
            }
        }
    }
}

?>