[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Phpgroupware-cvs] admin/inc class.bolog.inc.php, 1.7, 1.7.4.1 class.sol
From: |
Chris Weiss <address@hidden> |
Subject: |
[Phpgroupware-cvs] admin/inc class.bolog.inc.php, 1.7, 1.7.4.1 class.solog.inc.php, 1.5.2.1, 1.5.2.1.2.1 class.uiaccounts.inc.php, 1.23.2.9.2.20, 1.23.2.9.2.21 class.uilog.inc.php, 1.8.4.2, 1.8.4.3 hook_admin.inc.php, 1.26.2.1.2.4, 1.26.2.1.2.5 hook_sidebox_menu.inc.php, 1.1.2.3, 1.1.2.4 |
Date: |
Sun, 19 Oct 2003 01:34:04 +0000 |
Update of /cvsroot/phpgroupware/admin/inc
In directory subversions:/tmp/cvs-serv4760/admin/inc
Modified Files:
Tag: Version-0_9_16-branch
class.bolog.inc.php class.solog.inc.php
class.uiaccounts.inc.php class.uilog.inc.php
hook_admin.inc.php hook_sidebox_menu.inc.php
Log Message:
improved logging classes, patch #2100
Index: hook_sidebox_menu.inc.php
===================================================================
RCS file: /cvsroot/phpgroupware/admin/inc/Attic/hook_sidebox_menu.inc.php,v
retrieving revision 1.1.2.3
retrieving revision 1.1.2.4
diff -C2 -d -r1.1.2.3 -r1.1.2.4
*** hook_sidebox_menu.inc.php 10 Aug 2003 08:58:37 -0000 1.1.2.3
--- hook_sidebox_menu.inc.php 19 Oct 2003 01:34:02 -0000 1.1.2.4
***************
*** 77,80 ****
--- 77,86 ----
}
+ if (!
$GLOBALS['phpgw']->acl->check('error_log_access',1,'admin'))
+ {
+ $file['Edit Log Levels'] =
$GLOBALS['phpgw']->link('/index.php','menuaction=admin.uiloglevels.edit_log_levels');
+ }
+
+
if (!
$GLOBALS['phpgw']->acl->check('applications_access',16,'admin'))
{
Index: class.uilog.inc.php
===================================================================
RCS file: /cvsroot/phpgroupware/admin/inc/class.uilog.inc.php,v
retrieving revision 1.8.4.2
retrieving revision 1.8.4.3
diff -C2 -d -r1.8.4.2 -r1.8.4.3
*** class.uilog.inc.php 25 May 2003 15:41:25 -0000 1.8.4.2
--- class.uilog.inc.php 19 Oct 2003 01:34:02 -0000 1.8.4.3
***************
*** 1,13 ****
<?php
!
/***************************************************************************\
! * phpGroupWare - uilog
*
! * http://www.phpgroupware.org
*
! * Written by : jerry westrick address@hidden *
! * -------------------------------------------------
*
! * This program is free software; you can redistribute it and/or modify
it *
! * under the terms of the GNU General Public License as published by the
*
! * Free Software Foundation; either version 2 of the License, or (at
your *
! * option) any later version.
*
!
\***************************************************************************/
/* $Id$ */
--- 1,12 ----
<?php
!
/**************************************************************************\
! * phpGroupWare - Administration
*
! * http://www.phpgroupware.org
*
! * --------------------------------------------
*
! * This program is free software; you can redistribute it and/or modify
it *
! * under the terms of the GNU General Public License as published by
the *
! * Free Software Foundation; either version 2 of the License, or (at
your *
! * option) any later version.
*
!
\**************************************************************************/
/* $Id$ */
***************
*** 15,26 ****
class uilog
{
! var $grants;
! var $cat_id;
! var $start;
! var $search;
! var $filter;
!
var $public_functions = array(
! 'list_log' => True
);
--- 14,21 ----
class uilog
{
! var $template;
var $public_functions = array(
! 'list_log' => True,
! 'purge_log' => True
);
***************
*** 32,304 ****
}
! $_cols = $GLOBALS['HTTP_POST_VARS']['_cols'];
! $nocols = $GLOBALS['HTTP_POST_VARS']['nocols'];
! $_delcol = $GLOBALS['HTTP_POST_VARS']['_delcol'];
! $layout = $GLOBALS['HTTP_POST_VARS']['layout'];
! $editable = $GLOBALS['HTTP_GET_VARS']['editable'];
! $modifytable = $GLOBALS['HTTP_GET_VARS']['modifytable']
? $GLOBALS['HTTP_GET_VARS']['modifytable'] :
$GLOBALS['HTTP_POST_VARS']['modifytable'];
!
! $this->bolog = CreateObject('admin.bolog',True);
! $this->html = createobject('admin.html');
! $this->t =
CreateObject('phpgwapi.Template',$GLOBALS['phpgw']->common->get_tpl_dir('admin'));
! $this->lastid = '';
! $this->editmode = False;
! // Handle the Edit Table Button
! if (isset($editable))
{
! $this->editmode = $editable;
}
!
! // Handle return from Modify Table form...
! if ($modifytable)
{
! // the delete column must not be empty
! if (!isset($_delcol))
! {
! $_delcol = array();
! }
! // Build New fields_inc array...
! if (isset($_cols))
! {
! $c = array();
! for ($i=0;$i<count($_cols);$i++)
! {
! if (!in_array($i, $_delcol))
! {
! $c[] = $_cols[$i];
! }
! }
! $this->fields_inc = $c;
! }
! // Reset Mode to display...
! $this->editmode = False;
! $this->layout = $layout;
! // Save the fields_inc values in Session and
User Preferences...
! $data =
array('fields_inc'=>$this->fields_inc,'layout'=>$layout);
!
$GLOBALS['phpgw']->session->appsession('session_data','log',$data);
!
$GLOBALS['phpgw']->preferences->read_repository();
!
$GLOBALS['phpgw']->preferences->delete('log','fields_inc');
!
$GLOBALS['phpgw']->preferences->add('log','fields_inc',$this->fields_inc);
!
$GLOBALS['phpgw']->preferences->delete('log','layout');
!
$GLOBALS['phpgw']->preferences->add('log','layout',$this->layout);
!
$GLOBALS['phpgw']->preferences->save_repository();
}
! // Make sure that $this->fields_inc is filled
! if ( !isset($this->field_inc))
{
! // Need to fill from Session Data...
! $data =
$GLOBALS['phpgw']->session->appsession('session_data','log');
! if (isset($data) && isset($data['fields_inc']))
{
! $this->fields_inc = $data['fields_inc'];
! $this->layout = $data['layout'];
}
! else
{
!
$GLOBALS['phpgw']->preferences->read_repository();
! // Get From User Profile...
! if
(@$GLOBALS['phpgw_info']['user']['preferences']['log']['fields_inc'])
! {
! $fields_inc =
$GLOBALS['phpgw_info']['user']['preferences']['log']['fields_inc'];
! $this->fields_inc = $fields_inc;
! $layout =
$GLOBALS['phpgw_info']['user']['preferences']['log']['layout'];
! $this->layout = $layout;
!
$GLOBALS['phpgw']->session->appsession('session_data','log',array('fields_inc'=>$fields_inc,'layout'=>$layout));
! }
! else
! {
! // Use defaults...
! $this->fields_inc = array(
! 'log_severity',
! 'log_id',
! 'log_date_e',
! 'log_app',
! 'log_full_name',
! 'log_msg_seq_no',
! 'log_msg_date_e',
! 'log_msg_severity',
! 'log_msg_code',
! 'log_msg_text',
! 'log_msg_file',
! 'log_msg_line'
! );
! $this->layout[]=
array(0,1,2,3,4,5,6,7,8,9);
! $this->layout[]=
array(0,1,2,3,4,5,6,7,10,11);
!
! // Store defaults in session
data...
!
$GLOBALS['phpgw']->session->appsession(
! 'session_data',
! 'log',
! array(
!
'fields_inc'=>$this->fields_inc,
!
'layout'=>$this->layout
! )
! );
! }
}
! } // Values already filled...
! reset($this->fields_inc);
! while(list($cno,$cname)=each($this->fields_inc))
{
! $this->column[$cname]=$cno;
}
! }
!
! function list_log()
! {
! if (False) // add some errors to the log...
{
! // Test 1: single Error line immedeately to
errorlog
! // (could be type Debug, Info, Warning, or
Error)
!
$GLOBALS['phpgw']->log->write(array('text'=>'I-TestWrite, write:
%1','p1'=>'This message should appear in
log','file'=>__FILE__,'line'=>__LINE__));
!
! // Test 2: A message should appear in log even
if clearstack is called
!
$GLOBALS['phpgw']->log->message(array('text'=>'I-TestMsg, msg: %1','p1'=>'This
message should appear in log','file'=>__FILE__,'line'=>__LINE__));
!
$GLOBALS['phpgw']->log->error(array('text'=>'I-TestInfo, info: %1','p1'=>'This
Informational should not be in log','file'=>__FILE__,'line'=>__LINE__));
! $GLOBALS['phpgw']->log->clearstack();
! $GLOBALS['phpgw']->log->commit(); // commit
error stack to log...
!
! // Test 3: one debug message
!
$GLOBALS['phpgw']->log->error(array('text'=>'D-Debug, dbg: %1','p1'=>'This
debug statment should be in log','file'=>__FILE__,'line'=>__LINE__));
! $GLOBALS['phpgw']->log->commit(); // commit
error stack to log...
!
! // Test 3: debug and one informational
!
$GLOBALS['phpgw']->log->error(array('text'=>'D-Debug, dbg: %1','p1'=>'This
debug statment should be in log','file'=>__FILE__,'line'=>__LINE__));
!
$GLOBALS['phpgw']->log->error(array('text'=>'I-TestInfo, info: %1','p1'=>'This
Informational should be in log','file'=>__FILE__,'line'=>__LINE__));
! $GLOBALS['phpgw']->log->commit(); // commit
error stack to log...
!
! // Test 4: an informational and a Warning
!
$GLOBALS['phpgw']->log->error(array('text'=>'D-Debug, dbg: %1','p1'=>'This
debug statment should be in log','file'=>__FILE__,'line'=>__LINE__));
!
$GLOBALS['phpgw']->log->error(array('text'=>'I-TestInfo, info: %1','p1'=>'This
Informational should be in log','file'=>__FILE__,'line'=>__LINE__));
!
$GLOBALS['phpgw']->log->error(array('text'=>'W-TestWarn, warn: %1','p1'=>'This
is a test Warning','file'=>__FILE__,'line'=>__LINE__));
! $GLOBALS['phpgw']->log->commit(); // commit
error stack to log...
!
! // Test 5: and an error
!
$GLOBALS['phpgw']->log->error(array('text'=>'D-Debug, dbg: %1','p1'=>'This
debug statment should be in log','file'=>__FILE__,'line'=>__LINE__));
!
$GLOBALS['phpgw']->log->error(array('text'=>'I-TestInfo, info: %1','p1'=>'This
Informational should be in log','file'=>__FILE__,'line'=>__LINE__));
!
$GLOBALS['phpgw']->log->error(array('text'=>'W-TestWarn, warn: %1','p1'=>'This
is a test Warning','file'=>__FILE__,'line'=>__LINE__));
!
$GLOBALS['phpgw']->log->error(array('text'=>'E-TestError, err: %1','p1'=>'This
is a test Error','file'=>__FILE__,'line'=>__LINE__));
! $GLOBALS['phpgw']->log->commit(); // commit
error stack to log...
!
! // Test 6: and finally a fatal...
!
$GLOBALS['phpgw']->log->error(array('text'=>'D-Debug, dbg: %1','p1'=>'This
debug statment should be in log','file'=>__FILE__,'line'=>__LINE__));
!
$GLOBALS['phpgw']->log->error(array('text'=>'I-TestInfo, info: %1','p1'=>'This
Informational should be in log','file'=>__FILE__,'line'=>__LINE__));
!
$GLOBALS['phpgw']->log->error(array('text'=>'W-TestWarn, warn: %1','p1'=>'This
is a test Warning','file'=>__FILE__,'line'=>__LINE__));
!
$GLOBALS['phpgw']->log->error(array('text'=>'E-TestError, err: %1','p1'=>'This
is a test Error','file'=>__FILE__,'line'=>__LINE__));
!
$GLOBALS['phpgw']->log->error(array('text'=>'F-Abend, abort: %1','p1'=>'Force
abnormal termination','file'=>__FILE__,'line'=>__LINE__));
}
- $this->t->set_file(array('log_list_t' => 'log.tpl'));
-
- // -------------------------- Layout Description
-------------------------------
- $phycols = array('2%', '2%', '15%', '10%', '15%', '2%',
'20%', '2%', '7%', '25%');
- // -------------------------- end Layout Description
---------------------------
-
- // Get list of Possible Columns
- $header = $this->bolog->get_error_cols_e();
-
- // Describe table layout...
- $header['#phycols'] = $phycols;
- $header['#layout'] = $this->layout;
-
- // Set User Configured List of columns to show
- $header['_cols']= $this->fields_inc;
-
- // Set Table formating parameters
- $header['#table_parms']=array('width'=>"98%",
'bgcolor'=>"000000", 'border'=>"0");
! // Set Header formating parameters
! $header['#head_parms']=array('bgcolor'=>"D3DCFF");
!
! // Column Log_ID
! $header['log_id']['#parms_hdr'] =
array('align'=>"center");
! $header['log_id']['#title'] = 'Id';
! $header['log_id']['align'] = 'center';
!
! // Column Log_Severity
! $header['log_severity']['#parms_hdr'] =
array('align'=>"center");
! $header['log_severity']['#title'] = 'S';
! $header['log_severity']['align'] = 'center';
!
! // Column Trans Date
! $header['log_date_e']['#title'] = 'Tans. Date';
!
! // Column Application
! $header['log_app']['#title'] = 'App.';
!
! // Column FullName
! $header['log_full_name']['#title'] = 'User';
! $header['log_full_name']['align'] = 'center';
!
! // Column log_msg_seq_no
! $header['log_msg_seq_no']['#parms_hdr'] =
array('align'=>"center");
! $header['log_msg_seq_no']['#title'] = 'Sno';
! $header['log_msg_seq_no']['align'] = 'center';
!
! // Column log_msg_seq_no
! $header['log_msg_date_e']['#title'] = 'TimeStamp';
! $header['log_msg_severity']['#title'] = 'S';
! $header['log_msg_severity']['align'] = 'center';
! $header['log_msg_code']['#title'] = 'Code';
! $header['log_msg_text']['#title'] = 'Error Msg';
! $header['log_msg_file']['#title'] = 'File';
! $header['log_msg_line']['#title'] = 'Line';
!
! // Set up Grouping, Suppression...
! $header['_groupby']=array('log_id'=>1);
!
$header['_supres']=array('log_id'=>1,'log_severity'=>1,'log_date_e'=>1,'log_app'=>1,'log_full_name'=>1);
!
! // Hack Get All Rows
! $rows =
$this->bolog->get_error_e(array('orderby'=>array('log_id','log_msg_log_id')));
! $norows = count($rows);
! $header['_edittable']=$this->editmode;
! $table = $this->html->hash_table($rows,$header,$this,
'format_row');
! $this->t->set_var('event_list',$table);
! $GLOBALS['phpgw_info']['flags']['app_header'] =
lang('Admin').' - '.($this->editmode?lang('Edit Table format') : lang('View
error log'));
! $GLOBALS['phpgw']->common->phpgw_header();
! echo parse_navbar();
! $this->t->pfp('out','log_list_t');
! // $this->set_app_langs();
}
!
! function format_row($rno, $row)
{
! switch($row['log_severity']['value'])
! {
! case 'D': $row['log_severity']['bgcolor'] =
'D3DCFF'; break;
! case 'I': $row['log_severity']['bgcolor'] =
'C0FFC0'; break;
! case 'W': $row['log_severity']['bgcolor'] =
'FFFFC0'; break;
! case 'E': $row['log_severity']['bgcolor'] =
'FFC0C0'; break;
! case 'F': $row['log_severity']['bgcolor'] =
'FF0909'; break;
! }
!
! switch($row['log_msg_severity']['value'])
! {
! case 'D': $color = 'D3DCFF'; break;
! case 'I': $color = 'C0FFC0'; break;
! case 'W': $color = 'FFFFC0'; break;
! case 'E': $color = 'FFC0C0'; break;
! case 'F': $color = 'FF0909'; break;
! }
! reset($this->fields_inc);
! while(list($cno,$fld) = each($this->fields_inc))
{
! if (substr($fld,0,7) == 'log_msg')
! {
! $row[$fld]['bgcolor'] = $color;
! }
! else
! {
! // $row[$cno]['bgcolor'] = $lcolor;
! }
}
! return $row;
}
}
- ?>
--- 27,169 ----
}
! $this->bo = createobject('admin.bolog');
! $this->nextmatchs = createobject('phpgwapi.nextmatchs');
! $this->template = $GLOBALS['phpgw']->template;
! $this->template->set_file(
! Array(
! 'errorlog' => 'errorlog_view.tpl',
! 'form_button' =>
'form_button_script.tpl'
! )
! );
! $this->template->set_block('errorlog','list');
! $this->template->set_block('errorlog','row');
! $this->template->set_block('errorlog','row_empty');
! }
! function list_log()
! {
! if
($GLOBALS['phpgw']->acl->check('error_log_access',1,'admin'))
{
! $GLOBALS['phpgw']->redirect_link('/index.php');
}
!
! $account_id = get_var('account_id',array('GET','POST'));
! $start = get_var('start',array('POST'),0);
! $sort = get_var('sort',array('POST'),0);
! $order = get_var('order',array('POST'),0);
!
! $GLOBALS['phpgw_info']['flags']['app_header'] =
lang('Admin').' - '.lang('View error log');
! if ( $account_id )
{
! $GLOBALS['phpgw_info']['flags']['app_header']
.= ' ' . lang('for') . ' ' .
$GLOBALS['phpgw']->common->grab_owner_name($account_id);
! }
!
! $GLOBALS['phpgw']->common->phpgw_header();
! echo parse_navbar();
! $total_records = $this->bo->total($account_id);
! $var = Array(
! 'th_bg' =>
$GLOBALS['phpgw_info']['theme']['th_bg'],
! 'nextmatchs_left' =>
$this->nextmatchs->left('/index.php',$start,$total_records,'&menuaction=admin.uilog.list_log&account_id='
. $account_id),
! 'nextmatchs_right' =>
$this->nextmatchs->right('/index.php',$start,$total_records,'&menuaction=admin.uilog.list_log&account_id='
. $account_id),
! 'showing' =>
$this->nextmatchs->show_hits($total_records,$start),
! 'lang_loginid' => lang('LoginID'),
! 'lang_date' => lang('time'),
! 'lang_app' => lang('module'),
! 'lang_severity' => lang('severity'),
! 'lang_line' => lang('line'),
! 'lang_file' => lang('file'),
! 'lang_message' => lang('log message'),
! 'lang_total' => lang('Total')
! );
! $this->template->set_var($var);
!
! $records =
$this->bo->list_log($account_id,$start,$order,$sort);
! while (is_array($records) && list(,$record) =
each($records))
! {
!
$this->nextmatchs->template_alternate_row_color($this->template);
!
! $var = array(
! 'row_date' =>
$record['log_date'],
! 'row_loginid' =>
$record['log_account_lid'],
! 'row_app' => $record['log_app'],
! 'row_severity' =>
$record['log_severity'],
! 'row_file' => $record['log_file'],
! 'row_line' => $record['log_line'],
! 'row_message' => $record['log_msg'],
! );
! $this->template->set_var($var);
! $this->template->fp('rows_access','row',True);
}
! if (! $total_records && $account_id)
{
!
$this->nextmatchs->template_alternate_row_color($this->template);
! $this->template->set_var('row_message',lang('No
error log records exist for this user'));
!
$this->template->fp('rows_access','row_empty',True);
! }
!
! if ( $total_records )
! {
! if ( $account_id )
{
! $var = Array(
! 'submit_button' =>
lang('Submit'),
! 'action_url_button' =>
$GLOBALS['phpgw']->link('/index.php','menuaction=admin.uilog.purge_log&account_id='
. $account_id),
! 'action_text_button' => '
'.lang('Delete all log records for
').$GLOBALS['phpgw']->common->grab_owner_name($account_id),
! 'action_confirm_button' => '',
! 'action_extra_field' => ''
! );
}
! else
{
! $var = Array(
! 'submit_button' =>
lang('Submit'),
! 'action_url_button' =>
$GLOBALS['phpgw']->link('/index.php','menuaction=admin.uilog.purge_log'),
! 'action_text_button' => '
'.lang('Delete all log records'),
! 'action_confirm_button' => '',
! 'action_extra_field' => ''
! );
}
+ $this->template->set_var($var);
+ $var['purge_log_button'] =
$this->template->fp('button', 'form_button', True);
+ $this->template->set_var($var);
+ }
! if ( $account_id )
{
! $var = Array(
! 'bg_color' =>
$GLOBALS['phpgw_info']['themes']['bg_color'],
! 'footer_total' => lang('Total records')
. ' ' . lang('for') . ' ' .
$GLOBALS['phpgw']->common->grab_owner_name($account_id) . ': ' . $total_records
! );
}
! else
{
! $var = Array(
! 'bg_color' =>
$GLOBALS['phpgw_info']['themes']['bg_color'],
! 'footer_total' => lang('Total records')
. ': ' . $total_records
! );
}
! // create the menu on the left, if needed
! $menuClass = CreateObject('admin.uimenuclass');
! $var['rows'] =
$menuClass->createHTMLCode('view_account');
! $this->template->set_var($var);
! $this->template->pfp('out','list');
}
!
! function purge_log()
{
! if
($GLOBALS['phpgw']->acl->check('error_log_access',1,'admin'))
{
! $GLOBALS['phpgw']->redirect_link('/index.php');
}
! $account_id = get_var('account_id',array('GET','POST'));
! $this->bo->purge_log($account_id);
! $this->list_log();
}
+
}
Index: class.uiaccounts.inc.php
===================================================================
RCS file: /cvsroot/phpgroupware/admin/inc/class.uiaccounts.inc.php,v
retrieving revision 1.23.2.9.2.20
retrieving revision 1.23.2.9.2.21
diff -C2 -d -r1.23.2.9.2.20 -r1.23.2.9.2.21
*** class.uiaccounts.inc.php 17 Oct 2003 05:26:34 -0000 1.23.2.9.2.20
--- class.uiaccounts.inc.php 19 Oct 2003 01:34:02 -0000 1.23.2.9.2.21
***************
*** 546,549 ****
--- 546,559 ----
);
}
+
+ if ($_GET['account_id'] && // can't set it on add
+ !
$GLOBALS['phpgw']->acl->check('error_log_access',1,'admin'))
+ {
+ $GLOBALS['menuData'][] = array(
+ 'description' => 'Error Log',
+ 'url' => '/index.php',
+ 'extradata' =>
'menuaction=admin.uilog.list_log'
+ );
+ }
}
Index: hook_admin.inc.php
===================================================================
RCS file: /cvsroot/phpgroupware/admin/inc/hook_admin.inc.php,v
retrieving revision 1.26.2.1.2.4
retrieving revision 1.26.2.1.2.5
diff -C2 -d -r1.26.2.1.2.4 -r1.26.2.1.2.5
*** hook_admin.inc.php 31 May 2003 23:47:21 -0000 1.26.2.1.2.4
--- hook_admin.inc.php 19 Oct 2003 01:34:02 -0000 1.26.2.1.2.5
***************
*** 62,65 ****
--- 62,70 ----
}
+ if (! $GLOBALS['phpgw']->acl->check('error_log_access',1,'admin'))
+ {
+ $file['Edit Log Levels'] =
$GLOBALS['phpgw']->link('/index.php','menuaction=admin.uiloglevels.edit_log_levels');
+ }
+
if (! $GLOBALS['phpgw']->acl->check('applications_access',16,'admin'))
{
Index: class.solog.inc.php
===================================================================
RCS file: /cvsroot/phpgroupware/admin/inc/class.solog.inc.php,v
retrieving revision 1.5.2.1
retrieving revision 1.5.2.1.2.1
diff -C2 -d -r1.5.2.1 -r1.5.2.1.2.1
*** class.solog.inc.php 15 Feb 2002 01:51:46 -0000 1.5.2.1
--- class.solog.inc.php 19 Oct 2003 01:34:02 -0000 1.5.2.1.2.1
***************
*** 1,9 ****
<?php
/**************************************************************************\
! * phpGroupWare - solog
*
* http://www.phpgroupware.org
*
- * This application written by Jerry Westrick <address@hidden> *
- * --------------------------------------------
*
- * Funding for this program was provided by http://www.checkwithmom.com
*
* --------------------------------------------
*
* This program is free software; you can redistribute it and/or modify
it *
--- 1,6 ----
<?php
/**************************************************************************\
! * phpGroupWare - Administration
*
* http://www.phpgroupware.org
*
* --------------------------------------------
*
* This program is free software; you can redistribute it and/or modify
it *
***************
*** 18,178 ****
{
var $db;
- var $owner;
- var $error_cols = '';
- var $error_cols_e = '';
- var $public_functions = array(
- 'get_error_cols' => True,
- 'get_error_cols_e' => True,
- 'get_error' => True,
- 'get_error_e' => True
- );
function solog()
{
! $this->db = $GLOBALS['phpgw']->db;
! }
!
! function get_error_cols()
! {
! if ($this->error_cols == '')
! {
! $this->error_cols = array();
!
! /* fields from phpgw_log table */
! $clist = $this->db->metadata('phpgw_log');
! for ($i=0; $i<count($clist); $i++)
! {
! $name = $clist[$i]['name'];
! $this->error_cols[$name] = array();
! }
!
! /* fields from phpgw_log_msg table */
! $clist = $this->db->metadata('phpgw_log_msg');
! for ($i=0; $i<count($clist); $i++)
! {
! $name = $clist[$i]['name'];
! $this->error_cols[$name] = array();
! }
! }
! return $this->error_cols;
}
! function get_error_cols_e()
{
! if ($this->task_cols_e == '')
{
! /* Get Columns for Errors */
! $this->error_cols_e = $this->get_error_cols();
!
! /* Enhance with Columns for phpgw_accounts */
! $clist = $this->db->metadata('phpgw_accounts');
! for ($i=0; $i<count($clist); $i++)
! {
! $name = $clist[$i]['name'];
! $this->error_cols_e[$name] = array();
! }
}
- return $this->error_cols_e;
}
! function get_error_e($parms)
{
! /* Fixed From */
! if (!isset($parms['from']))
! {
! $parms['from'] = array('phpgw_accounts');
! }
! else
! {
! $parms['from'][] = 'phpgw_accounts';
! }
! /* Fix Where */
! if (!isset($parms['where']))
! {
! $parms['where'] = array('phpgw_log.log_user =
phpgw_accounts.account_id');
! }
! else
! {
! $parms['where'][] = 'phpgw_log.log_id =
phpgw_accounts.account_id';
! }
!
! /* Fix Default Fields */
! if (!isset($parms['fields']))
{
! $parms['fields'] = $this->get_error_cols_e();
}
!
! return $this->get_error($parms);
}
! function get_no_errors()
{
! /* Get max ErrorId */
! $this->db->query("select count(*) as max_id from
phpgw_log, phpgw_log_msg WHERE phpgw_log.log_id =
phpgw_log_msg.log_msg_log_id",__LINE__,__FILE__);
$this->db->next_record();
- return $this->db->f('max_id');
- }
! function get_error($parms)
{
! /* Get parameter values */
! $from = $parms['from'];
! $where = $parms['where'];
! $orderby = $parms['orderby'];
! $fields = $parms['fields'];
!
! /* Build From_Clause */
! $from_clause = 'FROM phpgw_log, phpgw_log_msg ';
! if (isset($from))
! {
! $from[] = 'phpgw_log';
! $from[] = 'phpgw_log_msg';
! $from_clause = 'FROM '.implode(', ' , $from).'
';
! }
!
! /* Build Where_Clause */
! $where_clause = 'WHERE phpgw_log.log_id =
phpgw_log_msg.log_msg_log_id ';
! if (isset($where))
! {
! $where[] = 'phpgw_log.log_id =
phpgw_log_msg.log_msg_log_id';
! $where_clause = 'WHERE ' . implode(' AND
',$where) . ' ';
! }
!
! /* Build Order_By_Clause */
! $orderby_clause = 'ORDER BY phpgw_log.log_id,
phpgw_log_msg.log_msg_seq_no ';
! if (isset($orderby))
! {
! $orderby_clause = 'ORDER BY ' . implode(',
',$orderby);
! }
!
! /* If no Fields specified default to * */
! if (!isset($fields))
! {
! $fields = $this->get_error_cols();
! }
!
! $rows = array();
!
! /* Do Select */
! @reset($fields);
! while(list($key,$val) = @each($fields))
! {
! $fkeys .= $key . ',';
! }
! $fkeys = substr($fkeys,0,-1);
! $select = 'SELECT ' . $fkeys . ' ' . $from_clause .
$where_clause . $orderby_clause;
! $this->db->query($select,__LINE__,__FILE__);
! while($this->db->next_record())
! {
! reset($fields);
! while(list($fname,$fopt) = each($fields))
! {
! $this_row[$fname]['value'] =
$this->db->f($fname);
! }
! $rows[] = $this_row;
}
! return $rows;
}
}
--- 15,79 ----
{
var $db;
function solog()
{
! $this->db = $GLOBALS['phpgw']->db;
}
! function test_account_id($account_id)
{
! if ($account_id)
{
! return " where log_account_id='$account_id'";
}
}
! function list_log($account_id,$start,$order,$sort)
{
! $where = $this->test_account_id($account_id);
! $this->db->limit_query("select
log_date,log_account_lid,log_app,log_severity,log_file,log_line,log_msg from
phpgw_log $where order by log_id desc",$start,__LINE__,__FILE__);
! while ($this->db->next_record())
{
! $records[] = array(
! 'log_date' =>
$this->db->f('log_date'),
! 'log_account_lid' =>
$this->db->f('log_account_lid'),
! 'log_app' =>
$this->db->f('log_app'),
! 'log_severity' =>
$this->db->f('log_severity'),
! 'log_file' =>
$this->db->f('log_file'),
! 'log_line' =>
$this->db->f('log_line'),
! 'log_msg' =>
$this->db->f('log_msg')
! );
}
! return $records;
}
! function total($account_id)
{
! $where = $this->test_account_id($account_id);
!
! $this->db->query("select count(*) from phpgw_log
$where");
$this->db->next_record();
! return $this->db->f(0);
! }
!
! function purge_log($account_id)
{
! $where = $this->test_account_id($account_id);
! $db = $GLOBALS['phpgw']->db;
! $db->query("delete from phpgw_log
$where",__LINE__,__FILE__);
! if ( $db->Errno ) {
! log_error(array('text' => 'Failed to delete log
records from database using where clause of %1. DB errno %2: message %3',
! 'p1' => $where,
! 'p2' =>
$db->Errno,
! 'p3' =>
$db->Error,
! 'file' =>
__FILE__,
! 'line' =>
__LINE__));
! return false;
}
! return true;
}
+
}
Index: class.bolog.inc.php
===================================================================
RCS file: /cvsroot/phpgroupware/admin/inc/class.bolog.inc.php,v
retrieving revision 1.7
retrieving revision 1.7.4.1
diff -C2 -d -r1.7 -r1.7.4.1
*** class.bolog.inc.php 18 Dec 2001 05:58:11 -0000 1.7
--- class.bolog.inc.php 19 Oct 2003 01:34:02 -0000 1.7.4.1
***************
*** 1,13 ****
<?php
!
/***************************************************************************\
! * phpGroupWare - log
*
! * http://www.phpgroupware.org
*
! * Written by : Jerry Westrick address@hidden *
! * -------------------------------------------------
*
! * This program is free software; you can redistribute it and/or modify
it *
! * under the terms of the GNU General Public License as published by the
*
! * Free Software Foundation; either version 2 of the License, or (at
your *
! * option) any later version.
*
!
\***************************************************************************/
/* $Id$ */
--- 1,12 ----
<?php
!
/**************************************************************************\
! * phpGroupWare - Administration
*
! * http://www.phpgroupware.org
*
! * --------------------------------------------
*
! * This program is free software; you can redistribute it and/or modify
it *
! * under the terms of the GNU General Public License as published by
the *
! * Free Software Foundation; either version 2 of the License, or (at
your *
! * option) any later version.
*
!
\**************************************************************************/
/* $Id$ */
***************
*** 17,85 ****
var $public_functions = array
(
! 'read_log' => True
);
!
! function bolog($session=False)
{
! $this->so = CreateObject('admin.solog');
}
! function get_error_cols()
{
! $fields = $this->so->get_error_cols();
! // boAccounts
! $fields['account_pwd']['include'] = false;
! return $fields;
! }
! function get_error_cols_e()
! {
! $fields = $this->so->get_error_cols_e();
! $fields['log_date_e'] = array();
! $fields['log_msg_date_e'] = array();
! $fields['log_full_name'] = array();
! // boAccounts
! $fields['account_pwd']['include'] = false;
! $fields['account_lastlogin_e'] = array();
! $fields['account_lastloginfrom_e'] = array();
! $fields['account_lastpwd_change_e'] = array();
! return $fields;
! }
! function get_error($values='')
! {
! $rows = $this->so->get_error($values);
! // should remove the accounts_pwd
! return $rows;
}
! function get_no_errors()
{
! $rows = $this->so->get_no_errors();
! return $rows;
}
! function get_error_e($values='')
{
! $rows = $this->so->get_error_e($values);
!
! // Enhance the fields
! reset($rows);
! while(list($rno,$r)=each($rows))
! {
! unset($r['acount_pwd']); // remove the
accounts_pwd
! $r['log_date_e']['value'] =
$GLOBALS['phpgw']->common->show_date($GLOBALS['phpgw']->db->from_timestamp($r['log_date']['value']));
! $r['log_msg_date_e']['value'] =
$GLOBALS['phpgw']->common->show_date($GLOBALS['phpgw']->db->from_timestamp($r['log_msg_date']['value']));
! $r['log_full_name']['value'] =
$r['account_lastname']['value'] . ', ' .$r['account_firstname']['value'];
! $r['account_lastlogin_e']['value'] =
$GLOBALS['phpgw']->common->show_date($GLOBALS['phpgw']->db->from_timestamp($r['account_lastlogin']['value']));
! $r['account_lastpwd_change_e']['value'] =
$GLOBALS['phpgw']->common->show_date($GLOBALS['phpgw']->db->from_timestamp($r['account_lastpwd_change']['value']));
! $r['account_lastloginfrom_e']['value'] =
'www.nowhere.com';
!
! $r['log_msg_text']['value'] =
lang($r['log_msg_msg']['value'],explode('|',$r['log_msg_parms']['value']));
!
! $rows[$rno]=$r;
! }
! return $rows;
}
}
- ?>
--- 16,73 ----
var $public_functions = array
(
! 'list_log' => True,
! 'purge_log' => True
);
!
! function bolog()
{
! $this->so = createobject('admin.solog');
}
! function list_log($account_id,$start,$order,$sort)
{
! if
($GLOBALS['phpgw']->acl->check('error_log_access',1,'admin'))
! {
! return false;
! }
!
! $records =
$this->so->list_log($account_id,$start,$order,$sort);
! while (is_array($records) && list(,$record) =
each($records))
! {
! // build and pass the format by hand as we want
to show the seconds
! $record['log_date'] =
$GLOBALS['phpgw']->common->show_date(
!
$GLOBALS['phpgw']->db->from_timestamp($record['log_date']),
!
$GLOBALS['phpgw_info']['user']['preferences']['common']['dateformat'] . ' -
H:i:s');
! if (ereg('@',$record['log_account_lid']))
! {
! $t =
split('@',$record['log_account_lid']);
! $record['log_account_lid'] = $t[0];
! }
!
! $record['log_severity'] =
lang($GLOBALS['phpgw']->log->get_level_name($record['log_severity']));
! $_records[] = array(
! 'log_date' =>
$record['log_date'],
! 'log_account_lid' =>
$record['log_account_lid'],
! 'log_app' =>
$record['log_app'],
! 'log_severity' =>
$record['log_severity'],
! 'log_file' =>
$record['log_file'],
! 'log_line' =>
$record['log_line'],
! 'log_msg' =>
$record['log_msg']
! );
! }
! return $_records;
}
! function purge_log($account_id)
{
! return $this->so->purge_log($account_id);
}
! function total($account_id)
{
! return $this->so->total($account_id);
}
+
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Phpgroupware-cvs] admin/inc class.bolog.inc.php, 1.7, 1.7.4.1 class.solog.inc.php, 1.5.2.1, 1.5.2.1.2.1 class.uiaccounts.inc.php, 1.23.2.9.2.20, 1.23.2.9.2.21 class.uilog.inc.php, 1.8.4.2, 1.8.4.3 hook_admin.inc.php, 1.26.2.1.2.4, 1.26.2.1.2.5 hook_sidebox_menu.inc.php, 1.1.2.3, 1.1.2.4,
Chris Weiss <address@hidden> <=
- Prev by Date:
[Phpgroupware-cvs] admin/setup phpgw_en.lang, 1.23.2.18.2.13, 1.23.2.18.2.14
- Next by Date:
[Phpgroupware-cvs] phpgwapi/setup default_records.inc.php, 1.4.2.6.2.5, 1.4.2.6.2.6 setup.inc.php, 1.37.2.6.2.12, 1.37.2.6.2.13 tables_current.inc.php, 1.32.2.6.2.10, 1.32.2.6.2.11 tables_update.inc.php, 1.53.2.9.2.19, 1.53.2.9.2.20
- Previous by thread:
[Phpgroupware-cvs] admin/setup phpgw_en.lang, 1.23.2.18.2.13, 1.23.2.18.2.14
- Next by thread:
[Phpgroupware-cvs] phpgwapi/setup default_records.inc.php, 1.4.2.6.2.5, 1.4.2.6.2.6 setup.inc.php, 1.37.2.6.2.12, 1.37.2.6.2.13 tables_current.inc.php, 1.32.2.6.2.10, 1.32.2.6.2.11 tables_update.inc.php, 1.53.2.9.2.19, 1.53.2.9.2.20
- Index(es):