getPermission( session_get_user() ); if (!$perm || !is_object($perm)) { return; } /* Enforce Project Admin Perms */ if (!$perm->isAdmin()) { exit_permission_denied(); } site_project_header($params); echo ($HTML->subMenu( array( $Language->getText('project_admin_utils','admin'), $Language->getText('project_admin_utils','user_permissions'), $Language->getText('project_admin_utils','edit_public_info'), $Language->getText('project_admin_utils','project_history'), $Language->getText('project_admin_utils','vhosts'), $Language->getText('project_admin_utils','post_jobs'), $Language->getText('project_admin_utils','edit_jobs'), $Language->getText('project_admin_utils','multimedia_data'), $Language->getText('project_admin_utils','database_admin'), $Language->getText('project_admin_utils','stats')), array ( '/project/admin/?group_id='.$group_id, '/project/admin/userperms.php?group_id='.$group_id, '/project/admin/editgroupinfo.php?group_id='.$group_id, '/project/admin/history.php?group_id='.$group_id, '/project/admin/vhost.php?group_id='.$group_id, '/people/createjob.php?group_id='.$group_id, '/people/?group_id='.$group_id, '/project/admin/editimages.php?group_id='.$group_id, '/project/admin/database.php?group_id='.$group_id, '/project/stats/?group_id='.$group_id))); } /* Standard footer to be used on all /project/admin/* pages */ function project_admin_footer($params) { site_project_footer($params); } /* The following three functions are for group audit trail When changes like adduser/rmuser/change status are made to a group, a row is added to audit trail using group_add_history() */ function group_get_history ($group_id=false) { $sql="SELECT group_history.field_name,group_history.old_value,group_history.adddate,users.user_name ". "FROM group_history,users ". "WHERE group_history.mod_by=users.user_id ". "AND group_id='$group_id' ORDER BY group_history.adddate DESC"; return db_query($sql); } function group_add_history ($field_name,$old_value,$group_id) { $group=group_get_object($group_id); $group->addHistory($field_name,$old_value); } /* Nicely html-formatted output of this group's audit trail */ function show_grouphistory ($group_id) { /* show the group_history rows that are relevant to this group_id */ global $sys_datefmt, $Language; $result=group_get_history($group_id); $rows=db_numrows($result); if ($rows > 0) { echo '
'; $title_arr=array(); $title_arr[]=$Language->getText('project_admin_utils','field'); $title_arr[]=$Language->getText('project_admin_utils','old_value'); $title_arr[]=$Language->getText('project_admin_utils','date'); $title_arr[]=$Language->getText('project_admin_utils','by'); echo $GLOBALS['HTML']->listTableTop ($title_arr); for ($i=0; $i < $rows; $i++) { $field=db_result($result, $i, 'field_name'); echo '