+++ /dev/null
-<?php
-
-class GLCASConfig {
-
- function __construct()
- {
- $this->configPath = "";
- $this->config = "";
- $this->dbobject = false;
- }
-
- function loadConfig($configpath)
- {
- error_log("loadConfig $configpath");
- $this->configPath = $configpath.".db";
-
- try {
- $this->dbobject = new PDO("sqlite:".$this->configPath);
- } catch(PDOException $exep) {
- error_log("execpt on db open");
- return false;
- }
-
- $this->setupTables();
- }
-
- function setConfig($configname, $configval)
- {
- $sql = "delete from config where configname='$configname'";
- $this->dbobject->query($sql);
- $sql = "insert into config values ('$configname', '$configval')";
- $this->dbobject->query($sql);
- }
-
- function getConfig($configname)
- {
- $sql = "select configvar from config where configname='$configname'";
- $res = $this->dbobject->query($sql);
- $val = null;
- foreach($res as $row) {
- $val = $row[0];
- error_log("foreach, $val\n");
- }
-
- return $val;
- }
-
- function delConfig($configname)
- {
- $sql = "delete from config where configname='$configname'";
- $this->dbobject->query($sql);
-
- return true;
- }
-
- function addData($configType, $configName, $configVal)
- {
- $sql = "insert into datatable values (NULL, '$configType', '$configName', '$configVal')";
- $this->dbobject->query($sql);
-
- }
-
- function getData($configType, $configName="")
- {
- $ret = null;
- $nret = 0;
- if($configName == "") {
- $sql = "select data_val,data_name from datatable where data_type='$configType'";
- } else {
- $sql = "select data_val from datatable where data_type='$configType' and data_name='$configName'";
- }
- $res = $this->dbobject->query($sql);
-
- foreach($res as $row) {
- $ret[$nret]["val"] = $row[0];
- if($configName == "") $ret[$nret]["name"] = $row[1];
- $nret++;
- }
-
- return $ret;
- }
-
- function delData($configType, $configName, $configVal)
- {
- $sql = "delete from datatable where data_type='$configType' and data_name='$configName' and data_val='$configVal')";
- $this->dbobject->query($sql);
- }
-
- function delAllDAta($configType, $configName)
- {
- $sql = "delete from datatable where data_type='$configType' and data_name='$configName'";
- //echo "sql is $sql\n";
- $this->dbobject->query($sql);
- }
-
- function setupTables()
- {
- $sql = "SELECT count(name) FROM sqlite_master WHERE type='table' AND name='config';";
- $res = $this->dbobject->query($sql);
-
- foreach($res as $row) {
- if($row[0] > 0) {
- echo "Tables exist\n";
- return;
- }
- }
-
-
- $sql = 'CREATE TABLE "config" ( "configname" TEXT,"configvar" TEXT);';
- $this->dbobject->query($sql);
-
- $sql = 'CREATE TABLE "datatable" ("data_id" INTEGER PRIMARY KEY AUTOINCREMENT,"data_type" TEXT,"data_name" TEXT,"data_val" TEXT);';
- $this->dbobject->query($sql);
-
- $sql = 'CREATE TABLE sqlite_sequence(name,seq);';
- $this->dbobject->query($sql);
- }
-
- private $configPath;
- private $dbobject;
-
-}
-
-function glcas_getWebConfigPath()
-{
- global $WEB_ROOT_FS, $URL_HANDLERS, $BASE_URL;
-
- // if you wish to add more places to find webconfig, add them here.
- $configpath = false;
- if(file_exists($WEB_ROOT_FS."/../var/glcas/webconfig")) return realpath($WEB_ROOT_FS."/../var/glcas/webconfig");
- if(file_exists("/var/lib/glcas/webconfig")) return realpath("/var/lib/glcas/webconfig");
- if(file_exists("/var/run/glcas/webconfig")) return realpath("/var/run/glcas/webconfig");
-
- return $configpath;
- //return false;
-}
-
-
-
-?>