$this->configPath = $configpath;
try {
- $this->dbobject = new PDO("sqlite:".$this->configPath);
+ $this->dbobject = new PDO("sqlite:$configpath");
} catch(PDOException $exep) {
error_log("execpt on db open");
return false;
{
$sql = "select configvar from config where configname='$configname'";
$res = $this->dbobject->query($sql);
- $val = null;
+ $val = false;
foreach($res as $row) {
$val = $row[0];
error_log("foreach, $val\n");
return true;
}
- function addData($configType, $configName, $configVal)
+ function addData($configType, $configCat, $configName, $configVal)
{
- $sql = "insert into datatable values (NULL, '$configType', '$configName', '$configVal')";
+ $sql = "insert into datatable values (NULL, '$configType', '$configCat', '$configName', '$configVal')";
$this->dbobject->query($sql);
-
+ //error_log("CONFIG: adddata as $sql");
+ }
+
+ function saveConfig()
+ {
+ // stub function for old config method reverse compatability
}
- function getData($configType, $configName="")
+ function getData($configType, $configCat="", $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'";
+ $haveWhere = false;
+
+ $wheredata = "where data_type='$configType'";
+ if($configCat != "") {
+ $wheredata .= " and data_category='$configCat'";
+ }
+
+ if($configName != "") {
+ $wheredata .= " and data_name='$configName'";
}
+
+ $sql = "select data_category,data_name,data_val from datatable $wheredata";
+ //error_log("CONFIG: get via $sql");
+
$res = $this->dbobject->query($sql);
foreach($res as $row) {
- $ret[$nret]["val"] = $row[0];
- if($configName == "") $ret[$nret]["name"] = $row[1];
+ $ret[$nret]["val"] = $row[2];
+ $ret[$nret]["category"] = $row[0];
+ $ret[$nret]["name"] = $row[1];
$nret++;
}
+ if($nret == 0) return false;
return $ret;
}
- function delData($configType, $configName, $configVal)
+ function delData($configType, $configCat, $configName="", $configVal="")
{
- $sql = "delete from datatable where data_type='$configType' and data_name='$configName' and data_val='$configVal')";
+ $extrawhere = "";
+ if($configName != "") {
+ $extrawhere = " and data_name='$configName'";
+ }
+ if($configVal != "") {
+ $extrawhere .= " and data_val='$configVal'";
+ }
+ $sql = "delete from datatable where data_type='$configType' and data_category='$configCat' $extrawhere";
$this->dbobject->query($sql);
+
+ //error_log("del all data was $sql");
}
- function delAllDAta($configType, $configName)
+ function delAllDAta($configType, $configCat)
{
- $sql = "delete from datatable where data_type='$configType' and data_name='$configName'";
+ $sql = "delete from datatable where data_type='$configType' and data_category='$configCat'";
//echo "sql is $sql\n";
$this->dbobject->query($sql);
+ //error_log("del all data was $sql");
}
function setupTables()
foreach($res as $row) {
if($row[0] > 0) {
- echo "Tables exist\n";
+ //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);';
+ $sql = 'CREATE TABLE "datatable" ("data_id" INTEGER PRIMARY KEY AUTOINCREMENT,"data_type" TEXT,"data_category" TEXT,"data_name" TEXT,"data_val" TEXT);';
$this->dbobject->query($sql);
$sql = 'CREATE TABLE sqlite_sequence(name,seq);';