renaming config file to make updates easier, resolving #50
This commit is contained in:
parent
5a9879623f
commit
176dff3b70
4 changed files with 20 additions and 6 deletions
|
@ -16,8 +16,10 @@ and extract it in your web hosts folder were you want to install your ZeroBin in
|
|||
|
||||
### Configuration
|
||||
|
||||
In the file `cfg/conf.ini` you can configure ZeroBin. The config file is divided
|
||||
into multiple sections, which are enclosed in square brackets.
|
||||
In the file `cfg/conf.ini` you can configure ZeroBin. A `cfg/conf.ini.sample`
|
||||
is provided containing all options on default values. You can copy it to
|
||||
`cfg/conf.ini` and adapt it as needed. The config file is divided into multiple
|
||||
sections, which are enclosed in square brackets.
|
||||
|
||||
In the `[main]` section you can enable or disable the discussion feature, set the
|
||||
limit of stored pastes and comments in bytes. The `[traffic]` section lets you
|
||||
|
|
|
@ -84,12 +84,17 @@ class configuration
|
|||
*/
|
||||
public function __construct()
|
||||
{
|
||||
$config = parse_ini_file(PATH . 'cfg' . DIRECTORY_SEPARATOR . 'conf.ini', true);
|
||||
$config = array();
|
||||
$configFile = PATH . 'cfg' . DIRECTORY_SEPARATOR . 'conf.ini';
|
||||
if (is_readable($configFile))
|
||||
{
|
||||
$config = parse_ini_file($configFile, true);
|
||||
foreach (array('main', 'model') as $section) {
|
||||
if (!array_key_exists($section, $config)) {
|
||||
throw new Exception(i18n::_('ZeroBin requires configuration section [%s] to be present in configuration file.', $section), 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
foreach ($this->_defaults as $section => $values)
|
||||
{
|
||||
if (!array_key_exists($section, $config))
|
||||
|
|
|
@ -75,6 +75,13 @@ class configurationTest extends PHPUnit_Framework_TestCase
|
|||
$this->assertEquals($this->_options, $conf->get(), 'newly generated configuration is correct');
|
||||
}
|
||||
|
||||
public function testHandleMissingConfigFile()
|
||||
{
|
||||
@unlink(CONF);
|
||||
$conf = new configuration;
|
||||
$this->assertEquals($this->_options, $conf->get(), 'returns correct defaults on missing file');
|
||||
}
|
||||
|
||||
/**
|
||||
* @expectedException Exception
|
||||
* @expectedExceptionCode 2
|
||||
|
|
Loading…
Reference in a new issue