/** * Override the default Symphony constructor to initialise the Log, Config * and Database objects for installation/update. This allows us to use the * normal accessors. */ protected function __construct() { if (get_magic_quotes_gpc()) { General::cleanArray($_SERVER); General::cleanArray($_COOKIE); General::cleanArray($_GET); General::cleanArray($_POST); } // Include the default Config for installation. include INSTALL . '/includes/config_default.php'; $this->initialiseConfiguration($settings); // Initialize date/time define_safe('__SYM_DATE_FORMAT__', self::Configuration()->get('date_format', 'region')); define_safe('__SYM_TIME_FORMAT__', self::Configuration()->get('time_format', 'region')); define_safe('__SYM_DATETIME_FORMAT__', __SYM_DATE_FORMAT__ . self::Configuration()->get('datetime_separator', 'region') . __SYM_TIME_FORMAT__); DateTimeObj::setSettings(self::Configuration()->get('region')); // Initialize language $this->initialiseLang(); // Initialize logs $this->initialiseLog(INSTALL_LOGS . '/install'); // Initialize database $this->initialiseDatabase(); // Initialize error handlers GenericExceptionHandler::initialise(Symphony::Log()); GenericErrorHandler::initialise(Symphony::Log()); }
/** * The Symphony constructor initialises the class variables of Symphony. * It will set the DateTime settings, define new date constants and initialise * the correct Language for the currently logged in Author. If magic quotes * are enabled, Symphony will sanitize the `$_SERVER`, `$_COOKIE`, * `$_GET` and `$_POST` arrays. The constructor loads in * the initial Configuration values from the `CONFIG` file */ protected function __construct() { self::$Profiler = Profiler::instance(); self::$Profiler->sample('Engine Initialisation'); if (get_magic_quotes_gpc()) { General::cleanArray($_SERVER); General::cleanArray($_COOKIE); General::cleanArray($_GET); General::cleanArray($_POST); } $this->initialiseConfiguration(); define_safe('__SYM_DATE_FORMAT__', self::Configuration()->get('date_format', 'region')); define_safe('__SYM_TIME_FORMAT__', self::Configuration()->get('time_format', 'region')); define_safe('__SYM_DATETIME_FORMAT__', __SYM_DATE_FORMAT__ . self::Configuration()->get('datetime_separator', 'region') . __SYM_TIME_FORMAT__); DateTimeObj::setSettings(self::Configuration()->get('region')); // Initialize language management Lang::initialize(); $this->initialiseLog(); GenericExceptionHandler::initialise(self::Log()); GenericErrorHandler::initialise(self::Log()); $this->initialiseDatabase(); $this->initialiseExtensionManager(); $this->initialiseCookie(); // If the user is not a logged in Author, turn off the verbose error messages. if (!self::isLoggedIn() && is_null($this->Author)) { GenericExceptionHandler::$enabled = false; } // Set system language Lang::set(self::$Configuration->get('lang', 'symphony')); }
@ini_set('display_errors', 'off'); @ini_set("gd.jpeg_ignore_warning", 1); @ini_set('magic_quotes_runtime', false); // Set appropriate error reporting: error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICT); define('DOCROOT', rtrim(realpath(dirname(__FILE__) . '/../../../'), '/')); define('DOMAIN', rtrim(rtrim($_SERVER['HTTP_HOST'], '/') . str_replace('/extensions/jit_image_manipulation/lib', null, dirname($_SERVER['PHP_SELF'])), '/')); // Include some parts of the engine require_once DOCROOT . '/vendor/autoload.php'; require_once 'class.image.php'; require_once CONFIG; Symphony::initialiseConfiguration($settings); // Setup the environment if (method_exists('DateTimeObj', 'setSettings')) { DateTimeObj::setSettings($settings['region']); } else { DateTimeObj::setDefaultTimezone($settings['region']['timezone']); } define_safe('MODE_NONE', 0); define_safe('MODE_RESIZE', 1); define_safe('MODE_RESIZE_CROP', 2); define_safe('MODE_CROP', 3); define_safe('MODE_FIT', 4); define_safe('CACHING', $settings['image']['cache'] == 1 ? true : false); set_error_handler('__errorHandler'); function processParams($string, &$image_settings) { $param = (object) array('mode' => 0, 'width' => 0, 'height' => 0, 'position' => 0, 'background' => 0, 'file' => 0, 'external' => false); // Check for matching recipes if (file_exists(WORKSPACE . '/jit-image-manipulation/recipes.php')) {
/** * Setter for `$Configuration`. This function initialise the configuration * object and populate its properties based on the given `$array`. Since * Symphony 2.6.5, it will also set Symphony's date constants. * * @since Symphony 2.3 * @param array $data * An array of settings to be stored into the Configuration object */ public static function initialiseConfiguration(array $data = array()) { if (empty($data)) { // Includes the existing CONFIG file and initialises the Configuration // by setting the values with the setArray function. include CONFIG; $data = $settings; } self::$Configuration = new Configuration(true); self::$Configuration->setArray($data); // Set date format throughout the system define_safe('__SYM_DATE_FORMAT__', self::Configuration()->get('date_format', 'region')); define_safe('__SYM_TIME_FORMAT__', self::Configuration()->get('time_format', 'region')); define_safe('__SYM_DATETIME_FORMAT__', __SYM_DATE_FORMAT__ . self::Configuration()->get('datetime_separator', 'region') . __SYM_TIME_FORMAT__); DateTimeObj::setSettings(self::Configuration()->get('region')); }