diff --git a/resource_conflict.module b/resource_conflict.module
index 179cab9..6bcc730 100644
--- a/resource_conflict.module
+++ b/resource_conflict.module
@@ -6,7 +6,7 @@
  *
  * Determine if a required resource is currently booked.
  */
-function resource_conflict_nodeapi(&$node, $op, $teaser = NULL, $page = NULL) {
+function resource_conflict_nodeapi(&$node, $op, $a3 = NULL, $a4 = NULL) {
   switch ($op) {
     case 'validate':
       $type = $node->type;
@@ -29,7 +29,7 @@ function resource_conflict_nodeapi(&$node, $op, $teaser = NULL, $page = NULL) {
         if (!empty($start) && !empty($end)) {
           $overlapping_node_ids = _resource_conflict_overlaps_from_date($start, $end);
         }
-        else {
+        elseif (empty($a3[$date_field]['#required'])) {  // field not required
           // If we got here, someone broke the requirements, so turn off
           // resource conflict for this type and notify an admin
           _resource_conflict_disable($type);
