--- block_class/block_class.module	Fri Sep 26 04:27:04 2008
+++ block_class/block_class.module	Mon Jun 01 18:54:49 2009
@@ -20,43 +20,34 @@
 
 
 function block_class_form_alter(&$form, &$form_state, $form_id) {
-  if ($form_id == 'block_admin_configure') {
+  if ($form_id == 'block_admin_configure' || $form_id == 'block_add_block_form') {
     $block->module = $form['module']['#value'];
     $block->delta = $form['delta']['#value'];
     $attributes = block_class_attributes($block);
-    
-    $form['block_class'] = array(
-      '#type' => 'fieldset',
-      '#title' => t('Block Class settings'),
-      '#collapsible' => TRUE,
-      '#weight' => -1,
-    );
-    $form['block_class']['css_class'] = array(
+
+    $form['block_settings']['css_class'] = array(
       '#type' => 'textfield',
       '#title' => t('CSS class(es)'),
       '#default_value' => $attributes->css_class,
       '#description' => t('Separate classes with a space. IMPORTANT: You must add &lt;?php print block_class($block); ?&gt; to your theme\'s block.tpl.php file to make the classes appear.'),
     );
-    
-   $form['#validate'][] = 'block_class_validate';
+
+    $form['#submit'][] = 'block_class_form_submit';
   }
 }
 
-
-function block_class_validate($form, &$form_state) {
-  if ($form_state['values']['form_id'] == 'block_admin_configure') {
+function block_class_form_submit($form, &$form_state) {
+  if ($form_state['values']['form_id'] == 'block_admin_configure' || $form_state['values']['form_id'] == 'block_add_block_form') {
     if (isset($form_state['values']['css_class']) && user_access('administer blocks')) {
-      $module = arg(4);
-      $delta = arg(5);
+      $module = $form_state['values']['module'];
+      $delta = $form_state['values']['delta'];
       $class = $form_state['values']['css_class'];
-  
+
       db_query('DELETE FROM {block_class} WHERE module = "%s" AND delta = "%s"', $module, $delta);
-  
+
       if (!empty($class)) {
         db_query('INSERT INTO {block_class} (module, delta, css_class) VALUES ("%s", "%s", "%s")', $module, $delta, $class);
       }
     }
   }
-
-  block_admin_configure_validate($form, $form_state);
-}
\ No newline at end of file
+}
