diff --git a/modules/resource_conflict/resource_conflict.module b/modules/resource_conflict/resource_conflict.module index f4d805e..2f9f828 100644 --- a/modules/resource_conflict/resource_conflict.module +++ b/modules/resource_conflict/resource_conflict.module @@ -381,10 +381,10 @@ function _resource_conflict_get_overlaps($start, $end) { $start_field_name = $date_db_info['columns']['value']['column']; $end_field_name = $date_db_info['columns']['value2']['column']; - $query = "SELECT DISTINCT nid FROM $date_table - WHERE('%s' >= $start_field_name AND '%s' < $end_field_name) - OR('%s' > $start_field_name AND '%s' <= $end_field_name) - OR('%s' <= $start_field_name AND '%s' >= $end_field_name)"; + $query = "SELECT DISTINCT {node}.nid FROM {node} INNER JOIN $date_table date_table ON {node}.vid = date_table.vid + WHERE('%s' >= date_table.$start_field_name AND '%s' < date_table.$end_field_name) + OR('%s' > date_table.$start_field_name AND '%s' <= date_table.$end_field_name) + OR('%s' <= date_table.$start_field_name AND '%s' >= date_table.$end_field_name)"; $result = db_query($query, $date_start, $date_start, $date_end, $date_end, $date_start, $date_end); @@ -394,9 +394,9 @@ function _resource_conflict_get_overlaps($start, $end) { } } elseif ($date_field == 'event') { //event enabled - $query = "SELECT DISTINCT nid FROM {event} WHERE (%d >= event_start AND %d < event_end) - OR (%d > event_start AND %d <= event_end) - OR (%d <= event_start AND %d >= event_end)"; + $query = "SELECT DISTINCT {node}.nid FROM {node} INNER JOIN {event} ON {node}.vid = {event}.vid WHERE (%d >= {event}.event_start AND %d < {event}.event_end) + OR (%d > {event}.event_start AND %d <= {event}.event_end) + OR (%d <= {event}.event_start AND %d >= {event}.event_end)"; $result = db_query($query, $event_start, $event_start, $event_end, $event_end, $event_start, $event_end); // Create an array of all of the results