Index: simplenews_digest.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/simplenews_digest/simplenews_digest.module,v
retrieving revision 1.1
diff -u -p -r1.1 simplenews_digest.module
--- simplenews_digest.module	3 Aug 2008 05:40:24 -0000	1.1
+++ simplenews_digest.module	3 Jan 2009 12:08:10 -0000
@@ -340,20 +340,29 @@ function simplenews_digest_inject_node()
 // Query the database for nodes to send in newsletter
 function simplenews_digest_select_nodes($newsletter) {
   $terms = variable_get('simplenews_digest_terms', 0);
-  $selected_terms = array_filter($terms);
-  $term_placeholders = implode(',', array_fill(0, count($selected_terms), '%d'));
+
+  // Get terms if any are selected
+  if (!empty($terms) && $terms != 0) {
+    $selected_terms = array_filter($terms);
+    $term_placeholders = implode(',', array_fill(0, count($selected_terms), '%d'));
+  }
 
   $content_types = variable_get('simplenews_digest_content_types', 0);
   $selected_content_types = array_filter($content_types);
   $type_placeholders = implode(',', array_fill(0, count($selected_content_types), "'%s'"));
 
-  // Limit query to node types and terms that will go into newsletter
-
-  $query = "SELECT DISTINCT n.nid, n.type, n.title from {node} n INNER JOIN {term_node} t ON n.nid = t.nid WHERE t.tid IN ($term_placeholders) AND n.type IN ($type_placeholders) AND n.created >= %d AND n.created < %d AND n.status = 1 ORDER BY n.created DESC";
-  $result = db_query($query, array_merge($selected_terms, $selected_content_types, array($newsletter['start_time'], $newsletter['end_time'])));
-  //while($node = db_fetch_object($result)) { //debug
-    //print 'hi'; //debug
-  //} //debug
+  // If there are no terms selected, omit terms from query
+  if (!empty($terms) && $terms != 0) {
+    // Limit query to node types and terms that will go into newsletter
+    $query = "SELECT DISTINCT n.nid, n.type, n.title from {node} n INNER JOIN {term_node} t ON n.nid = t.nid WHERE t.tid IN ($term_placeholders) AND n.type IN ($type_placeholders) AND n.created >= %d AND n.created < %d AND n.status = 1 ORDER BY n.created DESC";
+    $result = db_query($query, array_merge($selected_terms, $selected_content_types, array($newsletter['start_time'], $newsletter['end_time'])));
+    //while($node = db_fetch_object($result)) { //debug
+      //print 'hi'; //debug
+    //} //debug
+  } else {
+    $query = "SELECT DISTINCT nid, type, title from {node} WHERE type IN ($type_placeholders) AND created >= %d AND created < %d AND status = 1 ORDER BY created DESC";
+    $result = db_query($query, array_merge($selected_content_types, array($newsletter['start_time'], $newsletter['end_time'])));
+  }
   
   return $result;
 }
