1: <?php
2: /*************************************************************************************/
3: /* */
4: /* Thelia */
5: /* */
6: /* Copyright (c) OpenStudio */
7: /* email : info@thelia.net */
8: /* web : http://www.thelia.net */
9: /* */
10: /* This program is free software; you can redistribute it and/or modify */
11: /* it under the terms of the GNU General Public License as published by */
12: /* the Free Software Foundation; either version 3 of the License */
13: /* */
14: /* This program is distributed in the hope that it will be useful, */
15: /* but WITHOUT ANY WARRANTY; without even the implied warranty of */
16: /* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */
17: /* GNU General Public License for more details. */
18: /* */
19: /* You should have received a copy of the GNU General Public License */
20: /* along with this program. If not, see <http://www.gnu.org/licenses/>. */
21: /* */
22: /*************************************************************************************/
23:
24: namespace Thelia\Log;
25:
26: use Thelia\Model\Config;
27: use Thelia\Model\ConfigDesc;
28: use Thelia\Model\ConfigQuery;
29:
30: class TlogDestinationConfig
31: {
32:
33: const TYPE_TEXTAREA = 1;
34: const TYPE_TEXTFIELD = 2;
35:
36: public $name;
37: public $title;
38: public $label;
39: public $default;
40: public $type;
41: public $value;
42:
43: public function __construct($name, $title, $label, $default, $type)
44: {
45: $this->name = $name;
46: $this->title = $title;
47: $this->label = $label;
48: $this->default = $default;
49: $this->type = $type;
50:
51: $this->load();
52: }
53:
54:
55: public function load()
56: {
57: if (null === $config = ConfigQuery::create()->findOneByName($this->name))
58: {
59: $config = new Config();
60: $config->setName($this->name);
61: $config->setValue($this->default);
62: $config->setHidden(1);
63: $config->setSecured(1);
64: $config->save();
65: }
66:
67: $this->value = $config->getValue();
68: }
69: }
70: