Index: modules/signup_status_limit/signup_status_limit.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/signup_status/modules/signup_status_limit/signup_status_limit.module,v
retrieving revision 1.4
diff -u -p -r1.4 signup_status_limit.module
--- modules/signup_status_limit/signup_status_limit.module	18 Sep 2009 19:24:51 -0000	1.4
+++ modules/signup_status_limit/signup_status_limit.module	21 Sep 2009 04:38:57 -0000
@@ -28,10 +28,61 @@ function signup_status_limit_form_alter(
       module_load_include('inc', 'signup_status_limit', 'signup_status_limit.signup_form');
       return signup_status_limit_alter_signup_edit_form($form, $form_state);
 
+    case 'signup_node_admin_summary_form':
+      return signup_status_limit_alter_signup_node_admin_summary_form($form, $form_state);
+
   }
 }
 
 /**
+ * Alter the signup summary form on the node/N/signups/admin page.
+ *
+ * Depending on what kind of signup limit the node is configured to use,
+ * modify the summary fieldset to display the right limit information and
+ * provide a link to the settings page.
+ */
+function signup_status_limit_alter_signup_node_admin_summary_form(&$form, &$form_state) {
+  $node = node_load($form['nid']['#value']);
+  $form['signup_limit_type'] = array(
+    '#type' => 'item',
+    '#title' => t('Signup limit type'),
+    '#value' => l(($node->signup_status_limit_type == 'status') ? t('Per-status limits') : t('Limit on total signups'), 'node/' . $node->nid . '/signups/settings', array('fragment' => 'signup-limit')),
+  );
+  if ($node->signup_status_limit_type == 'global') {
+    $form['limit'] = array(
+      '#type' => 'item',
+      '#title' => t('Limit on total signups'),
+      '#value' => $node->signup_close_signup_limit,
+      '#weight' => 1,
+    );
+    $form['slots_used']['#weight'] = 2;
+  }
+  else {
+    unset($form['slots_used']);
+    unset($form['limit']);
+    $header = array(
+      t('Signup status'),
+      t('Limit'),
+      t('Total'),
+    );
+    $signup_status_codes = signup_status_codes();
+    $rows = array();
+    foreach (signup_status_codes() as $cid => $code) {
+      $rows[] = array(
+        check_plain($code['name']),
+        isset($node->signup_status_limit[$cid]['limit']) ? $node->signup_status_limit[$cid]['limit'] : 0,
+        isset($node->signup_status_limit[$cid]['total']) ? $node->signup_status_limit[$cid]['total'] : 0,
+      );
+    }
+    $form['signup_status_limits'] = array(
+      '#type' => 'item',
+      '#value' => theme('table', $header, $rows),
+    );
+  }
+}
+
+
+/**
  * Implement hook_theme().
  */
 function signup_status_limit_theme() {
