From b6ad16cbd2092d76d4fed03d37a77d29b5b38f00 Mon Sep 17 00:00:00 2001 From: emkael Date: Fri, 26 Feb 2016 14:59:34 +0100 Subject: * database connection setup in PHP app --- app/php/db/DBModule.php | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 app/php/db/DBModule.php (limited to 'app/php/db/DBModule.php') diff --git a/app/php/db/DBModule.php b/app/php/db/DBModule.php new file mode 100644 index 0000000..3622db0 --- /dev/null +++ b/app/php/db/DBModule.php @@ -0,0 +1,45 @@ +setConnectionClass('Application.db.DBConnection'); + $config = json_decode(file_get_contents( + realpath( + $this->getApplication()->getBasePath() + . DIRECTORY_SEPARATOR + . $this->_config + ) + )); + $newXML = new TXmlElement('module'); + foreach ($xml->getAttributes() as $attr => $val) { + $newXML->setAttribute($attr, $val); + } + $dbXML = new TXmlElement('database'); + if (isset($config->cset)) { + $dbXML->setAttribute('Charset', $config->cset); + } + $dbXML->setAttribute('Username', $config->user); + $dbXML->setAttribute('Password', $config->pass); + $dbXML->setAttribute( + 'ConnectionString', + sprintf( + '%s:host=%s;dbname=%s', + $config->type, $config->host, $config->name + ) + ); + $newXML->Elements[] = $dbXML; + parent::init($newXML); + } + + public function setConfig($config) { + $this->_config = TPropertyValue::ensureString($config); + } + +} + +?> -- cgit v1.2.3