You are here

protected function MerciDefaultController::conflicts in MERCI (Manage Equipment Reservations, Checkout and Inventory) 7.3

2 calls to MerciDefaultController::conflicts()
MerciDefaultController::validate in merci_core/reservation.handler.inc
MerciDefaultController_non_inventory::bestFit in merci_core/reservation.handler.inc

File

merci_core/reservation.handler.inc, line 295
Abstraction of the selection logic of an entity reference field.

Class

MerciDefaultController
A null implementation of EntityReference_SelectionHandler.

Code

protected function conflicts() {
  $conflicts = array();
  foreach ($this->dates as $dates) {
    $date_value = $dates['value'];
    $query = $this
      ->buildConflictQuery($dates);
    $result = $query
      ->execute();
    foreach ($result as $record) {
      if (!isset($conflicts[$record->item_id])) {
        $conflicts[$record->item_id] = array();
      }
      if (!isset($conflicts[$record->item_id][$date_value])) {
        $conflicts[$record->item_id][$date_value] = array();
      }
      $conflicts[$record->item_id][$date_value][] = $record;
    }
  }
  $return = array();
  foreach ($this->items as $delta => $item) {
    if (isset($conflicts[$item
      ->getIdentifier()])) {
      $return[$delta] = $conflicts[$item
        ->getIdentifier()];
    }
  }
  return $return;
}