"using the global db object"

This commit is contained in:
Ralf Becker 2008-03-25 16:54:16 +00:00
parent cdfcf4cfbe
commit 1c4b1f9636

View File

@ -26,8 +26,13 @@
*/ */
class historylog class historylog
{ {
/**
* Reference to the global db object
*
* @var egw_db
*/
var $db; var $db;
var $table = 'egw_history_log'; const TABLE = 'egw_history_log';
/** /**
* App.name this class is instanciated for / working on * App.name this class is instanciated for / working on
* *
@ -66,17 +71,11 @@ class historylog
if (is_object($GLOBALS['egw_setup']->db)) if (is_object($GLOBALS['egw_setup']->db))
{ {
$this->db = clone($GLOBALS['egw_setup']->db); $this->db = $GLOBALS['egw_setup']->db;
} }
else else
{ {
$this->db = clone($GLOBALS['egw']->db); $this->db = $GLOBALS['egw']->db;
}
$this->db->set_app('phpgwapi');
if (!is_object($GLOBALS['egw']->datetime))
{
$GLOBALS['egw']->datetime =& CreateObject('phpgwapi.datetime');
} }
$this->tz_offset_s = $GLOBALS['egw']->datetime->tz_offset; $this->tz_offset_s = $GLOBALS['egw']->datetime->tz_offset;
} }
@ -95,7 +94,7 @@ class historylog
{ {
$where['history_record_id'] = $record_id; $where['history_record_id'] = $record_id;
} }
$this->db->delete($this->table,$where,__LINE__,__FILE__); $this->db->delete(self::TABLE,$where,__LINE__,__FILE__);
return $this->db->affected_rows(); return $this->db->affected_rows();
} }
@ -112,7 +111,7 @@ class historylog
{ {
if ($new_value != $old_value) if ($new_value != $old_value)
{ {
$this->db->insert($this->table,array( $this->db->insert(self::TABLE,array(
'history_record_id' => $record_id, 'history_record_id' => $record_id,
'history_appname' => $this->appname, 'history_appname' => $this->appname,
'history_owner' => $GLOBALS['egw_info']['user']['account_id'], 'history_owner' => $GLOBALS['egw_info']['user']['account_id'],
@ -155,12 +154,11 @@ class historylog
} }
if (!isset($filter['history_appname'])) $filter['history_appname'] = $this->appname; if (!isset($filter['history_appname'])) $filter['history_appname'] = $this->appname;
$this->db->select($this->table,'*',$filter,__LINE__,__FILE__,false,$orderby);
$rows = array(); $rows = array();
while(($row = $this->db->row(true,'history_'))) foreach($this->db->select(self::TABLE,'*',$filter,__LINE__,__FILE__,false,$orderby) as $row)
{ {
$row['user_ts'] = $this->db->from_timestamp($row['timestamp']) + 3600 * $GLOBALS['egw_info']['user']['preferences']['common']['tz_offset']; $row['user_ts'] = $this->db->from_timestamp($row['history_timestamp']) + 3600 * $GLOBALS['egw_info']['user']['preferences']['common']['tz_offset'];
$rows[] = $row; $rows[] = egw_db::strip_array_keys($row,'history_');
} }
return $rows; return $rows;
} }
@ -209,17 +207,16 @@ class historylog
$where[] = '('.implode(' OR ',$to_or).')'; $where[] = '('.implode(' OR ',$to_or).')';
} }
$this->db->select($this->table,'*',$where,__LINE__,__FILE__,false,$orderby); foreach($this->db->select(self::TABLE,'*',$where,__LINE__,__FILE__,false,$orderby) as $row)
while ($this->db->next_record())
{ {
$return_values[] = array( $return_values[] = array(
'id' => $this->db->f('history_id'), 'id' => $row['history_id'],
'record_id' => $this->db->f('history_record_id'), 'record_id' => $row['history_record_id'],
'owner' => $GLOBALS['egw']->accounts->id2name($this->db->f('history_owner')), 'owner' => $GLOBALS['egw']->accounts->id2name($row['history_owner']),
'status' => str_replace(' ','',$this->db->f('history_status')), 'status' => str_replace(' ','',$row['history_status']),
'new_value' => $this->db->f('history_new_value'), 'new_value' => $row['history_new_value'],
'old_value' => $this->db->f('history_old_value'), 'old_value' => $row['history_old_value'],
'datetime' => $this->db->from_timestamp($this->db->f('history_timestamp')) 'datetime' => $this->db->from_timestamp($row['history_timestamp']),
); );
} }
return $return_values; return $return_values;