/**
  * Does the given alert match the given covoit.
  *
  * @param CovoitAlert $alert
  * @param Covoit $covoit
  * @return bool
  */
 private function match(CovoitAlert $alert, Covoit $covoit)
 {
     if ($alert->getStartCity() && $alert->getStartCity()->getId() != $covoit->getStartCity()->getId()) {
         return false;
     }
     if ($alert->getEndCity() && $alert->getEndCity()->getId() != $covoit->getEndCity()->getId()) {
         return false;
     }
     if ($alert->getPriceMax() && $alert->getPriceMax() < $covoit->getPrice()) {
         return false;
     }
     if ($alert->getStartDate() && $alert->getEndDate()) {
         if ($alert->getStartDate() > $covoit->getDate() || $alert->getEndDate() < $covoit->getDate()) {
             return false;
         }
     } elseif ($alert->getStartDate() && !$alert->getEndDate()) {
         if ($alert->getStartDate() != $covoit->getDate()) {
             return false;
         }
     } elseif (!$alert->getStartDate() && $alert->getEndDate()) {
         if ($alert->getEndDate() < $covoit->getDate()) {
             return false;
         }
     }
     return true;
 }