/** * Хук на включение шестерёнки * * @param Gear $Gear * @param Core_ArrayObject $result */ public function hookGearEnable($Gear, $result) { if ($result->success) { $install_lang = $Gear->getDir() . DS . 'lang' . DS . $this->lang . EXT; if (file_exists($install_lang)) { $lang = new Config($install_lang); Lang::factory('index')->import($lang->toArray())->save(); } } }
/** * Get / set the specified configuration value. * * If an array is passed as the key, we will assume you want to set an array of values. * * @param array|string|null $key * @param mixed $default * @return mixed */ function config($key = null, $default = null) { if (empty($key)) { return Config::toArray(); } if (is_array($key)) { return Config::set($key); } return Config::get($key, $default); }
public function testWrite() { $data = array('a' => 'foo', 'b' => array('c' => 'bar')); $conf = new Config($this->store); $conf->override = $data; $this->assertEquals($data, $conf->toArray()); $this->assertTrue($conf->save()); $this->assertTrue($conf['b']->save()); $conf = new Config($this->store); $this->assertEquals($data, $conf->toArray()); }
public function testBasicSection() { $config = ["primary" => ["foo" => "bar", "bar" => "foo"], "secondary : primary" => ["bar" => "foo2", "baz" => "sec"], "tertiary : secondary" => ["bar" => "foo3", "bat" => "tri"], "alternative : primary" => ["bar" => "f*x", "baz" => "alt"]]; $object = new Config($config, "primary"); $this->assertEquals($config["primary"], $object->toArray()); $object = new Config($config, "secondary"); $this->assertEquals($config["secondary : primary"] + $config["primary"], $object->toArray()); $object = new Config($config, "tertiary"); $this->assertEquals($config["tertiary : secondary"] + $config["secondary : primary"] + $config["primary"], $object->toArray()); $object = new Config($config, "alternative"); $this->assertEquals($config["alternative : primary"] + $config["primary"], $object->toArray()); }
/** * Get html for config. * * @return string */ private function _getHtmlConfig() { $html = ''; $configData = $this->_config->toArray(); uasort($configData['global'], function ($a, $b) { if (is_array($a) && !is_array($b)) { return 1; } return 0; }); foreach ($configData as $key => $data) { if (!is_array($data) || empty($data) || $key == 'database') { continue; } $html .= $this->_viewRenderTitle(ucfirst($key)); $html .= $this->_renderConfigSection($data); $html .= '<br/>'; } return $html; }
/** * Merge another config instance in this config instance. * * @param Config $config * * @return $this */ public function merge(Config $config) { $this->data = array_replace_recursive($this->data, $config->toArray()); return $this; }
public function testToArray() { $array = array("ca" => "cu", "a" => array("b" => 'c')); $o = new Config($array); $t = $o->toArray(); $this->assertThat($t, $this->equalTo($array)); }
/** * @param Config $config */ public function saveConfig($config) { $this->config = $config; file_put_contents($this->filename, json_encode($this->config->toArray(), JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES)); }