--- moodle_standard/group/autogroup.php	2007-11-19 20:51:16.000000000 -0600
+++ firstinstall/group/autogroup.php	2009-04-01 15:33:29.000000000 -0500
@@ -11,6 +11,7 @@
 require_once('../config.php');
 require_once('lib.php');
 require_once('autogroup_form.php');
+require_once($CFG->dirroot.'/user/filters/lib.php');
 
 if (!defined('AUTOGROUP_MIN_RATIO')) {
     define('AUTOGROUP_MIN_RATIO', 0.7); // means minimum member count is 70% in the smallest group
@@ -61,7 +62,10 @@
     }
 }
 
-/// Create the form
+/// Create the filter form
+$ufiltering = new user_filtering(null, null, array('courseid' => $courseid));
+
+/// Create the grouping form
 $editform = new autogroup_form(null, array('roles' => $rolenames));
 $editform->set_data(array('courseid' => $courseid, 'seed' => time()));
 
@@ -84,7 +88,8 @@
         default:
             error('Unknown ordering');
     }
-    $users = groups_get_potential_members($data->courseid, $data->roleid, $orderby);
+    $filters = $ufiltering->get_sql_filter();
+    $users = groups_get_potential_members($data->courseid, $data->roleid, $orderby, $filters);
     $usercnt = count($users);
 
     if ($data->allocateby == 'random') {
@@ -244,6 +249,9 @@
 if ($error != '') {
     notify($error);
 }
+/// Display the filters
+$ufiltering->display_add();
+$ufiltering->display_active();
 
 /// Display the form
 $editform->display();
