diff options
| -rw-r--r-- | framework/TApplication.php | 13 | 
1 files changed, 9 insertions, 4 deletions
| diff --git a/framework/TApplication.php b/framework/TApplication.php index 65bb19da..c147fbd6 100644 --- a/framework/TApplication.php +++ b/framework/TApplication.php @@ -349,10 +349,9 @@ class TApplication extends TComponent  		// determine configuration path and file  		if(empty($basePath) || ($basePath=realpath($basePath))===false)  			throw new TConfigurationException('application_basepath_invalid',$basePath); -		// is_file prints a warning if the file doesn't exists and open_basedir is in effect -		if(@is_file($basePath.DIRECTORY_SEPARATOR.$this->getConfigurationFileName())) +		if(is_file($basePath.DIRECTORY_SEPARATOR.$this->getConfigurationFileName()))  			$configFile=$basePath.DIRECTORY_SEPARATOR.$this->getConfigurationFileName(); -		else if(@is_file($basePath)) +		else if(is_file($basePath))  		{  			$configFile=$basePath;  			$basePath=dirname($configFile); @@ -934,6 +933,11 @@ class TApplication extends TComponent  		return $this->_authRules;  	} +	protected function getApplicationConfigurationClass() +	{ +		return 'TApplicationConfiguration'; +	} +  	/**  	 * Applies an application configuration.  	 * @param TApplicationConfiguration the configuration @@ -1007,7 +1011,8 @@ class TApplication extends TComponent  			{  				if(($path=Prado::getPathOfNamespace($filePath,$this->getConfigurationFileExt()))===null || !is_file($path))  					throw new TConfigurationException('application_includefile_invalid',$filePath); -				$c=new TApplicationConfiguration; +				$cn=$this->getApplicationConfigurationClass(); +				$c=new $cn;  				$c->loadFromFile($path);  				$this->applyConfiguration($c,$withinService);  			} | 
