Index: /Applications/MAMP/htdocs/projsearch/drupal/sites/all/modules/project/project.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/project/project.module,v
retrieving revision 1.309
diff -u -p -r1.309 project.module
--- project.module	6 Mar 2008 06:41:43 -0000	1.309
+++ project.module	11 Apr 2008 03:05:22 -0000
@@ -51,15 +51,44 @@ function _project_taxonomy_help($vid = 0
 function project_block($op = 'list', $delta = 0) {
   if ($op == 'list') {
     $blocks[0]['info'] = t('Project navigation');
+    $blocks[1]['info'] = t('Project search');
     return $blocks;
   }
   else if ($op == 'view') {
-    $block['subject'] = t('Project navigation');
-    $block['content'] = drupal_get_form('project_quick_navigate_form');
+    switch ($delta) {
+      case 0:
+        $block = array(
+          'subject' => t('Project navigation'),
+          'content' => drupal_get_form('project_quick_navigate_form'),
+        );
+        break;
+      case 1:
+        if (user_access('search content')) {
+          $block = array(
+            'subject' => t('Search projects'), 
+            'content' => drupal_get_form('project_search_block_form', 'project_project'),
+          );
+        }
+        break;
+    }
     return $block;
   }
 }
 
+function project_search_block_form($node_type) {
+  $form = search_box('project_search_block_form_'. $node_type);
+  $form['node_type'] = array(
+    '#type' => 'value',
+    '#value' => $node_type,
+  );
+  $form['#base'] = 'project_search_block_form';
+  return $form;
+}
+
+function project_search_block_form_submit($form_id, $form_values) {
+  return 'search/node/type:'. $form_values['node_type'] .' '. trim($form_values[$form_id .'_'. $form_values['node_type'] .'_keys']);
+}
+
 function project_node_info() {
   return array(
     'project_project' => array(
