Index: block_class/block_class.module
===================================================================
--- block_class/block_class.module	(revision 15470)
+++ block_class/block_class.module	(working copy)
@@ -1,23 +1,32 @@
 <?php
 // $Id: block_class.module,v 1.3.4.4 2010/01/18 22:10:13 toddnienkerk Exp $
 
-function block_class_attributes($block) {
-  $ret = db_fetch_object(db_query('SELECT css_class FROM {block_class} WHERE module = "%s" AND delta = "%s"', $block->module, $block->delta));
-  if ($ret !== FALSE) {
-    return $ret;
+/*
+ * Extend block's classes with any user defined classes.
+ */
+function block_class_preprocess_block(&$vars) {
+  $block = $vars['block'];
+  $classes = block_class($block);
+  $vars['classes_array'] = array_merge ($vars['classes_array'], explode (' ', $classes));
   }
 
-  $undef = (object) NULL;
-  $undef->css_class = '';
-  return $undef;
+/**
+ * Return classes as string
+ */
+function block_class($block) {
+  $ret = db_query('SELECT css_class FROM {block_class} WHERE module = :module AND delta = :delta', array(':module' => $block->module, ':delta' => $block->delta))->fetchField();
+  return $ret ? $ret : '';
 }
 
 
+/**
+ * Alter block edit form
+ */
 function block_class_form_alter(&$form, &$form_state, $form_id) {
   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);
+    $css_class = block_class($block);
     
     $form['block_class'] = array(
       '#type' => 'fieldset',
@@ -28,7 +37,7 @@
     $form['block_class']['css_class'] = array(
       '#type' => 'textfield',
       '#title' => t('CSS class(es)'),
-      '#default_value' => $attributes->css_class,
+      '#default_value' => $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.'),
     );
 
@@ -37,24 +46,19 @@
 }
 
 
+/**
+ * Save supplied class.
+ */
 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 = $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);
-  
+      db_delete('block_class')->condition('module', $module)->condition('delta', $delta)->execute();
       if (!empty($class)) {
-        db_query('INSERT INTO {block_class} (module, delta, css_class) VALUES ("%s", "%s", "%s")', $module, $delta, $class);
-      }
+        $id = db_insert('block_class')->fields(array('module' => $module, 'delta' => $delta, 'css_class' => $class))->execute();
     }
   }
 }
-
-
-function block_class($block) {
-  $attributes = block_class_attributes($block);
-  return check_plain($attributes->css_class);
 }
Index: block_class/block_class.install
===================================================================
--- block_class/block_class.install	(revision 15470)
+++ block_class/block_class.install	(working copy)
@@ -1,24 +1,37 @@
 <?php
 // $Id: block_class.install,v 1.4.4.2 2009/06/03 12:21:45 toddnienkerk Exp $
 
+/**
+ * @file
+ * Install, update and uninstall functions for the block_class module.
+ *
+ */
+
+/**
+ * @todo Please document this function.
+ * @see http://drupal.org/node/1354
+ */
 function block_class_schema() {
   $schema['block_class'] = array(
       'fields' => array(
-           'module' => array('type' => 'varchar', 'length' => '50', 'not null' => TRUE),
-           'delta' => array('type' => 'varchar', 'length' => '32', 'not null' => TRUE),
-           'css_class' => array('type' => 'varchar', 'length' => '50', 'not null' => TRUE)),
+      'module' => array(
+        'type' => 'varchar',
+        'length' => '50',
+        'not null' => TRUE,
+      ),
+      'delta' => array(
+        'type' => 'varchar',
+        'length' => '32',
+        'not null' => TRUE,
+      ),
+      'css_class' => array(
+        'type' => 'varchar',
+        'length' => '50',
+        'not null' => TRUE,
+      ),
+    ),
       'primary key' => array('module', 'delta'),
   );
   
   return $schema;
 }
-
-
-function block_class_install() {
-  drupal_install_schema('block_class');
-}
-
-
-function block_class_uninstall() {
-  drupal_uninstall_schema('block_class');
-}
Index: block_class/block_class.info
===================================================================
--- block_class/block_class.info	(revision 15470)
+++ block_class/block_class.info	(working copy)
@@ -1,11 +1,7 @@
 ; $Id: block_class.info,v 1.1.4.2 2009/06/03 12:21:45 toddnienkerk Exp $
 name = Block Class
 description = Allows assigning CSS classes to blocks.
-core = 6.x
-
-; Information added by drupal.org packaging script on 2010-01-18
-version = "6.x-1.3"
-core = "6.x"
-project = "block_class"
-datestamp = "1263853204"
+core = 7.x
 
+files[] = block_class.install
+files[] = block_class.module
