178a179,197
>   $form['general_settings']['abuse_flag_text'] = array(
>     '#type' => 'textfield',
>     '#title' => t('The link users see to flag a node will read'),
>     '#default_value' => variable_get('abuse_flag_text', 'Flag as offensive'),
>     '#size' => 72,
>   );
> 
>   $form['general_settings']['abuse_edit_unflag'] = array(
>     '#type' => 'checkbox',
>     '#title' => t('Allow moderator approved content to be flagged again if it is edited'),
>     '#default_value' => variable_get('abuse_edit_unflag', ''),
>   );
> 
>   $form['general_settings']['abuse_anon_flag_anon'] = array(
>     '#type' => 'checkbox',
>     '#title' => t('Allow anonymous users to flag content by other anonymous users'),
>     '#default_value' => variable_get('abuse_anon_flag_anon', ''),
>   ); 
> 
306a326,334
>     case 'update':
> 	if(_abuse_get_status('node', $node->nid) == 'OK')
> 		{
> 		if(variable_get('abuse_edit_unflag', ''))
> 			{
> 			_abuse_perform_delete($node->nid, 'node');
> 			drupal_set_message('Since the node has been edited, it may be re-flagged as abuse.');
> 			}
> 		}
366c394
<   if ($object && $user && $user->uid == $object->uid) {
---
>   if ($object && $user && $user->uid == $object->uid && (!variable_get('abuse_anon_flag_anon','') || $user->uid)) {
372c400
<       if ($user->uid && ($user->uid != $object->uid)) {
---
>       if ((!$user->uid) || ($user->uid != $object->uid)) {
381c409
<             'title' => t('Flag as offensive'),
---
>             'title' => t(variable_get('abuse_flag_text','Flag as offensive')),
391c419
<           'title' => t('Flag as offensive'),
---
>           'title' => t(variable_get('abuse_flag_text','Flag as offensive')),
410c438
<           'title' => t('Flag as offensive'),
---
>           'title' => t(variable_get('abuse_flag_text','Flag as offensive')),
420c448
<           'title' => t('Flag as offensive'),
---
>           'title' => t(variable_get('abuse_flag_text','Flag as offensive')),
474a503,506
>   $form['intro'] = array(
>     '#type' => 'item',
>     '#value' => variable_get('abuse_form_pre',''),
>   );
589c621
<     drupal_goto($object->path['URL'], $object->path['QUERY'], $object->path['BREADCRUMB']);
---
>     drupal_goto('/');
629a662
>   $form['#submit'] = array ('abuse_operations_form_submit' => 1);
812a846
>   $formnumber = 0;
814c848,849
<     $content .= theme('abuse_report', $report);
---
>     $content .= theme('abuse_report', $report, $formnumber);
>     $formnumber++;
820c855
< function theme_abuse_report($object) {
---
> function theme_abuse_report($object,$formnumber) {
833a869,870
>     $reason = _abuse_reasons($report->reason);
>     $output .= "<dd>". $reason[0]->reason  . "</dd>\n";
838c875
<   $output .= drupal_get_form('abuse_operations_form', $object);
---
>   $output .= drupal_get_form('abuse_operations_form' . $formnumber, $object);
843a881,891
> function abuse_forms() {
>   $args = func_get_args();
>   $form_id = $args[0][0]; 
> 
>   $forms = array();
>   if(strpos($form_id,"abuse_operations_form") == 0) {
> 	$forms[$form_id] = array('callback' => 'abuse_operations_form');
>   }
>   return $forms;
> } 
> 
949d996
<   if ($account->uid) {
954d1000
<         break;
957,958d1002
<         break;
<     }
1031c1075
< function _abuse_reasons() {
---
> function _abuse_reasons($arid = NULL) {
1035c1079,1084
<     $resultset = db_query("SELECT * FROM {abuse_reasons}");
---
>     $query = "SELECT * FROM {abuse_reasons}";
>     if($arid)
>       {
>       $query .= ' WHERE arid=' . $arid;
>       }
>     $resultset = db_query($query);
