Populating group_id and org_id in tt_config table.
[timetracker.git] / WEB-INF / lib / ttSysConfig.class.php
index cb7637d..fd99052 100644 (file)
@@ -35,18 +35,23 @@ define('SYSC_LAST_INVOICE_CC', 'last_invoice_cc');
 
 // Class ttSysConfig is used for storing and retrieving named values associated with users.
 class ttSysConfig {
-  var $u_id = null;
+  var $user_id = null;
+  var $group_id = null;
+  var $org_id = null;
   var $mdb2 = null;
 
   // Constructor.
-  function __construct($u_id) {
-    $this->u_id = $u_id;
+  function __construct($user_id) {
+    global $user;
+    $this->user_id = $user_id; // TODO: review "on behalf" situation and refactor if necessary.
+    $this->group_id = $user->getActiveGroup();
+    $this->org_id = $user->org_id;
     $this->mdb2 = getConnection();
   }
 
   // The getValue retrieves a value identified by name.
   function getValue($name) {
-    $res = $this->mdb2->query("select param_value from tt_config where user_id = ".$this->u_id." and param_name=".$this->mdb2->quote($name));
+    $res = $this->mdb2->query("select param_value from tt_config where user_id = ".$this->user_id." and param_name=".$this->mdb2->quote($name));
     if (!is_a($res, 'PEAR_Error')) {
       $val = $res->fetchRow();
       return $val['param_value'];
@@ -57,13 +62,15 @@ class ttSysConfig {
   // The setValue sets a value identified by name.
   function setValue($name, $value) {
     $rcnt = 0;
-    $res = $this->mdb2->query("select count(*) as rcnt from tt_config where user_id = ".$this->u_id." and param_name = ".$this->mdb2->quote($name));
+    $res = $this->mdb2->query("select count(*) as rcnt from tt_config where user_id = ".$this->user_id." and param_name = ".$this->mdb2->quote($name));
     if ($val = $res->fetchRow()) $rcnt = $val['rcnt'];
     
     if ($rcnt > 0) {
-      $affected = $this->mdb2->exec("update tt_config set param_value = ".$this->mdb2->quote($value)." where user_id = ".$this->u_id." and param_name=".$this->mdb2->quote($name));
+      $affected = $this->mdb2->exec("update tt_config set param_value = ".$this->mdb2->quote($value)." where user_id = ".$this->user_id." and param_name=".$this->mdb2->quote($name));
     } else {
-      $affected = $this->mdb2->exec("insert into tt_config set param_value = ".$this->mdb2->quote($value).", param_name = ".$this->mdb2->quote($name).", user_id = ".$this->u_id);
+      $sql = "insert into tt_config set param_value = ".$this->mdb2->quote($value).
+        ", param_name = ".$this->mdb2->quote($name).", user_id = ".$this->user_id.", group_id = ".$this->group_id.", org_id = ".$this->org_id;
+      $affected = $this->mdb2->exec($sql);
     }
     return (!is_a($affected, 'PEAR_Error'));
   }