Admin Logs Stuff | > Module written by Matt Mecham | > Date started: 11nd September 2002 | | > Module Version Number: 1.0.0 +-------------------------------------------------------------------------- */ // Ensure we've not accessed this script directly: $idx = new ad_adlogs(); class ad_adlogs { var $base_url; var $colours = array(); function ad_adlogs() { global $IN, $root_path, $INFO, $DB, $SKIN, $ADMIN, $std, $MEMBER, $GROUP; // Make sure we're a root admin, or else! if ($MEMBER['mgroup'] != $INFO['admin_group']) { $ADMIN->error("Sorry, these functions are for the root admin group only"); } $this->colours = array( "cat" => "green", "forum" => "darkgreen", "mem" => "red", 'group' => "purple", 'mod' => 'orange', 'op' => 'darkred', 'help' => 'darkorange', 'modlog' => 'steelblue', ); switch($IN['code']) { case 'view': $this->view(); break; case 'remove': $this->remove(); break; //------------------------- default: $this->list_current(); break; } } //--------------------------------------------- // Remove archived files //--------------------------------------------- function view() { global $IN, $root_path, $INFO, $DB, $SKIN, $ADMIN, $std, $MEMBER, $GROUP; $start = $IN['st'] ? $IN['st'] : 0; $ADMIN->page_detail = "Viewing all actions by a administrator"; $ADMIN->page_title = "Administration Logs Manager"; if ($IN['search_string'] == "") { $DB->query("SELECT COUNT(id) as count FROM ibf_admin_logs WHERE member_id='".$IN['mid']."'"); $row = $DB->fetch_row(); $row_count = $row['count']; $query = "&act=adminlog&mid={$IN['mid']}&code=view"; $DB->query("SELECT m.*, mem.id, mem.name FROM ibf_admin_logs m, ibf_members mem WHERE m.member_id='".$IN['mid']."' AND m.member_id=mem.id ORDER BY m.ctime DESC LIMIT $start, 20"); } else { $IN['search_string'] = urldecode($IN['search_string']); $dbq = "m.".$IN['search_type']." LIKE '%".$IN['search_string']."%'"; $DB->query("SELECT COUNT(m.id) as count FROM ibf_admin_logs m WHERE $dbq"); $row = $DB->fetch_row(); $row_count = $row['count']; $query = "&act=modlog&code=view&search_type={$IN['search_type']}&search_string=".urlencode($IN['search_string']); $DB->query("SELECT m.*, mem.id, mem.name FROM ibf_admin_logs m, ibf_members mem WHERE m.member_id='".$IN['mid']."' AND m.member_id=mem.id AND $dbq ORDER BY m.ctime DESC LIMIT $start, 20"); } $links = $std->build_pagelinks( array( 'TOTAL_POSS' => $row_count, 'PER_PAGE' => 20, 'CUR_ST_VAL' => $start, 'L_SINGLE' => "Single Page", 'L_MULTI' => "Pages: ", 'BASE_URL' => $ADMIN->base_url.$query, ) ); $ADMIN->page_detail = "You may view and remove actions performed by your administrators"; $ADMIN->page_title = "Administrator Logs Manager"; //+------------------------------- $SKIN->td_header[] = array( "Member Name" , "20%" ); $SKIN->td_header[] = array( "Action Perfomed" , "40%" ); $SKIN->td_header[] = array( "Time of action" , "20%" ); $SKIN->td_header[] = array( "IP address" , "20%" ); $ADMIN->html .= $SKIN->start_table( "Saved Admin Logs" ); $ADMIN->html .= $SKIN->add_td_basic($links, 'center', 'catrow'); if ( $DB->get_num_rows() ) { while ( $row = $DB->fetch_row() ) { $row['ctime'] = $std->get_date( $row['ctime'], 'LONG' ); $ADMIN->html .= $SKIN->add_td_row( array( "{$row['name']}", "{$row['note']}", "{$row['ctime']}", "{$row['ip_address']}", ) ); } } else { $ADMIN->html .= $SKIN->add_td_basic("