Pubwich::init PHP Method

init() public static method

Application initialisation
public static init ( )
    public static function init()
    {
        // Let’s modify the `include_path`
        $path = dirname(__FILE__) . '/';
        $path_pear = dirname(__FILE__) . '/PEAR/';
        set_include_path($path . PATH_SEPARATOR . $path_pear . PATH_SEPARATOR . get_include_path());
        require_once 'PEAR.php';
        // Exception class
        require 'PubwichError.php';
        // Configuration files
        if (!file_exists(dirname(__FILE__) . "/../cfg/config.php")) {
            throw new PubwichError('You must rename <code>/cfg/config.sample.php</code> to <code>/cfg/config.php</code> and edit the Web service configuration details.');
        } else {
            require dirname(__FILE__) . '/../cfg/config.php';
        }
        // Internationalization class
        if (defined('PUBWICH_LANG') && PUBWICH_LANG != '') {
            require 'Gettext/streams.php';
            require 'Gettext/gettext.php';
            self::$gettext = new gettext_reader(new FileReader(dirname(__FILE__) . '/../lang/' . PUBWICH_LANG . '/pubwich-' . PUBWICH_LANG . '.mo'));
        }
        // JSON support
        if (!function_exists('json_decode')) {
            require_once dirname(__FILE__) . '/../Zend/Json.php';
        }
        // Events logger (and first message)
        require 'PubwichLog.php';
        PubwichLog::init();
        PubwichLog::log(1, Pubwich::_("Pubwich object initialization"));
        // Theme
        self::$theme_url = PUBWICH_URL . 'themes/' . PUBWICH_THEME;
        self::$theme_path = dirname(__FILE__) . '/../themes/' . PUBWICH_THEME;
        require 'PubwichTemplate.php';
        // PHP objects creation
        self::setClasses();
        // Other classes
        require 'FileFetcher.php';
        require 'Cache/Lite.php';
        if (!defined('PUBWICH_CRON')) {
            require_once 'Mustache.php/Mustache.php';
        }
    }

Usage Example

Example #1
0
<?php

// $Id$
define('PUBWICH', 1);
require dirname(__FILE__) . '/lib/Pubwich.php';
Pubwich::init();
Pubwich::renderTemplate();