coding change, duh
[php-bacula-disk-changer.git] / lib / lib.php
1 <?php
2
3 function db_getDB($changer_name)
4 {
5         global $BASE_DATA, $BASE_LIB, $BACULA_USER;
6         
7         try {
8                 $dbobject = new PDO("sqlite:$BASE_DATA/$changer_name"."db");
9         } catch(PDOException $exep) {
10                 echo "<font color='red'>Cannot open sqlitedb, ".$exep->getMessage()."</font><br>";
11                 return;
12         }
13         
14         
15         db_createDB($dbobject);
16         
17         return $dbobject;
18 }
19
20 function db_createDB($dbobject)
21 {
22         
23         if($dbobject->query("select * from disk_list")) {
24                 //error_log("table exists?");
25         } else {
26                 //error_log("table not exists?");
27                 $dbobject->query('CREATE TABLE "disk_list" ("disk_id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,"disk_name" TEXT NOT NULL);');
28                 $dbobject->query('CREATE TABLE sqlite_sequence(name,seq)');
29                 $dbobject->query('CREATE TABLE "config" ("config_name" TEXT NOT NULL,"config_value" TEXT NOT NULL)');
30
31                 // TODO create action group here
32                 
33         }
34 }
35
36 function conf_getVal($name)
37 {
38         $db = db_getDB();
39         
40         $sql = "select conf_val from conf where conf_name=='$name'";
41         error_log("from getval: ".$sql);
42         
43         $res = $db->query($sql);
44         
45         if(!$res) return false;
46         
47         $val = false;
48         
49         foreach($res as $row) {
50                 $val = $row["conf_val"];
51         }
52         
53         return $val;
54 }
55
56 function conf_setVal($name, $value)
57 {
58         $db = db_getDB();
59         
60         $sql = "delete from conf where conf_name=='$name'";
61         $db->query($sql);
62         
63         $sql = "insert into conf values ('$name', '$value')";
64         $db->query($sql);
65         
66         error_log("from setval: ".$sql);
67 }
68 ?>