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
|
### Configuration
|
||||||
|
|
||||||
In the file `cfg/conf.ini` you can configure ZeroBin. The config file is divided
|
In the file `cfg/conf.ini` you can configure ZeroBin. A `cfg/conf.ini.sample`
|
||||||
into multiple sections, which are enclosed in square brackets.
|
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
|
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
|
limit of stored pastes and comments in bytes. The `[traffic]` section lets you
|
||||||
|
|
|
@ -84,12 +84,17 @@ class configuration
|
||||||
*/
|
*/
|
||||||
public function __construct()
|
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) {
|
foreach (array('main', 'model') as $section) {
|
||||||
if (!array_key_exists($section, $config)) {
|
if (!array_key_exists($section, $config)) {
|
||||||
throw new Exception(i18n::_('ZeroBin requires configuration section [%s] to be present in configuration file.', $section), 2);
|
throw new Exception(i18n::_('ZeroBin requires configuration section [%s] to be present in configuration file.', $section), 2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
foreach ($this->_defaults as $section => $values)
|
foreach ($this->_defaults as $section => $values)
|
||||||
{
|
{
|
||||||
if (!array_key_exists($section, $config))
|
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');
|
$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
|
* @expectedException Exception
|
||||||
* @expectedExceptionCode 2
|
* @expectedExceptionCode 2
|
||||||
|
|
Loading…
Reference in a new issue