--- webformblock/webformblock.module	Fri Sep 10 08:53:12 2010 -0400
+++ webformblock/webformblock.module	Fri Sep 10 09:29:42 2010 -0400
@@ -12,10 +12,10 @@
  *
  */
 function webformblock_form_alter(&$form, $form_state, $form_id) {
-  $node = $form['#parameters'][2];
-  
+  $node = (isset($form['#parameters'][2]) ? $form['#parameters'][2] : NULL);
+
   if ($form_id == 'webform_node_form') {
-  
+
     $form['webform']['advanced']['addblock'] = array(
       '#type' => 'checkbox',
       '#return_value' => 1,
@@ -24,10 +24,10 @@
       '#description' => t('Allow this form to appear in its own block which can be positioned in any block region.'),
       '#weight' => -20,
     );
-  } elseif ($node->webform['addblock'] == 1) { 
+  } elseif (isset($node->webform['addblock']) && $node->webform['addblock'] == 1) {
     form_clean_id(null, true);
-    $anchorname = form_clean_id(str_replace('/', '', strtolower( drupal_get_path_alias('node/' . $node->nid) ))); 
-    $form['#action'] = url(drupal_get_path_alias($_GET['q']), array('fragment' => $anchorname)); 
+    $anchorname = form_clean_id(str_replace('/', '', strtolower( drupal_get_path_alias('node/' . $node->nid) )));
+    $form['#action'] = url(drupal_get_path_alias($_GET['q']), array('fragment' => $anchorname));
   }
 }
 
@@ -38,41 +38,44 @@
  */
 function webformblock_nodestatus($nid) {
   if (!$nid) { return false; }
-  
+
   $match = db_result(db_query("SELECT nid FROM {webform_block} WHERE nid = %d", $nid));
   return $match == $nid ? true : false;
 }
 
 
-function webformblock_nodeapi(&$node, $op, $a3 = NULL, $a4 = NUL) { 
-  switch ($op) {
-    case 'load':
-      $node->webform['addblock'] = webformblock_nodestatus($node->nid);
-      break;
-  
-    case 'update':
-      if ($node->webform['addblock'] == true) {
-        $r = db_query("SELECT nid FROM {webform_block} WHERE nid = %d", $node->nid);
+function webformblock_nodeapi(&$node, $op, $a3 = NULL, $a4 = NUL) {
+  //if an operation is being applied to a webform
+  if ($node->type === 'webform') {
+    switch ($op) {
+      case 'load':
+        $node->webform['addblock'] = webformblock_nodestatus($node->nid);
+        break;
 
-        // If the update fails it must be the first time for this node
-        if (db_result($r) != $node->nid) {
-          db_query("INSERT INTO {webform_block} SET nid = %d", $node->nid);
+      case 'update':
+        if ($node->webform['addblock'] == true) {
+          $r = db_query("SELECT nid FROM {webform_block} WHERE nid = %d", $node->nid);
+
+          // If the update fails it must be the first time for this node
+          if (db_result($r) != $node->nid) {
+            db_query("INSERT INTO {webform_block} SET nid = %d", $node->nid);
+          }
+        } else {
+          db_query("DELETE FROM {webform_block} WHERE nid = %d", $node->nid);
         }
-      } else {
+        break;
+
+      case 'insert':
+        if ($node->webform['addblock'] == true) {
+           db_query("INSERT INTO {webform_block} SET nid = %d", $node->nid);
+        }
+        break;
+
+      case 'delete':
         db_query("DELETE FROM {webform_block} WHERE nid = %d", $node->nid);
-      }
-      break;
-      
-    case 'insert':
-      if ($node->webform['addblock'] == true) {
-         db_query("INSERT INTO {webform_block} SET nid = %d", $node->nid);
-      }
-      break;
-      
-    case 'delete':
-      db_query("DELETE FROM {webform_block} WHERE nid = %d", $node->nid);
-      break;
-  }
+        break;
+    }
+  }//end - if
 }
 
 
@@ -84,19 +87,19 @@
     case 'list':
       $block = webformblock_list();
       break;
-          
+
     case 'configure':
       return array('editnode' => array(
         '#type' => 'item',
         '#value' => l(t('Edit webform'), 'node/'.$delta.'/edit', array('query' => 'destination=admin/build/block/configure/webformblock/' . $delta) ),
       ));
       break;
-          
+
     case 'view':
       $block = webformblock_view($delta);
       break;
   }
-  
+
   return $block;
 }
 
@@ -107,7 +110,7 @@
  */
 function webformblock_list() {
   $blocks = array();
-  
+
   $wfb = db_query('SELECT n.title, n.nid FROM {webform_block} wfb LEFT JOIN {node} n ON wfb.nid = n.nid WHERE n.type = "webform" AND n.status = 1');
   while($block = db_fetch_object($wfb)) {
     $blocks[$block->nid] = array(
@@ -127,13 +130,13 @@
  */
 function webformblock_view($nid) {
   $node = node_load(array('nid' => $nid));
-      
+
   $block_subject = $node->title;
   $node->title = '';
 
   $anchorname = form_clean_id(str_replace('/', '', strtolower( drupal_get_path_alias('node/' . $node->nid) )));
   $node = node_view($node, false, false, false);
-  
+
   $content = '<a name="'. $anchorname .'"></a>' . $node;
 
   $block = array(
@@ -143,4 +146,3 @@
 
   return $block;
 }
-
