Просмотр файла vkclone-0.0.1/protected/yii.php

Размер файла: 1.4Kb
<?php
require_once dirname(dirname(__FILE__)).'/yii/framework/YiiBase.php';

class Yii extends YiiBase {
	static public $configDir;

	/**
	 * Creates an app with specific configuration
	 * @param string $class Application class
	 * @param string $type Application type. Defines configuration for including. Valid arguments: web, console or gearman.
	 * @return CApplication
	 */
	public static function createApplicationByType($class, $type) {
		self::setPathOfAlias('logs', dirname(dirname(__FILE__)).'/logs');
		$config = self::getConfigurationFile('main');
		$config['modules'] = CMap::mergeArray($config['modules'], self::getConfigurationFile($type.'/modules', array()));
		$config['components'] = CMap::mergeArray($config['components'], self::getConfigurationFile($type.'/components', array()));
		$config = CMap::mergeArray($config, self::getConfigurationFile('local/'.$type), array());
		$application = parent::createApplication($class, $config);
		if ($type != 'web')
			self::setPathOfAlias('webroot', realpath(dirname(__FILE__).'/../public'));
		return $application;
	}

	/**
	 * Requires a main config file
	 */
	static public function getConfigurationFile($file, $default = null) {
		if (file_exists(self::$configDir.'/'.$file.'.php'))
			return require self::$configDir.'/'.$file.'.php';
		else if (!is_null($default))
			return $default;
		else
			throw new Exception('Incorrect configuration file <'.$file.'>!');
	}
}