/** * Gets an array of Coordinator objects which contain a foreign key that references this object. * * If this collection has already been initialized with an identical Criteria, it returns the collection. * Otherwise if this Coordinator has previously been saved, it will retrieve * related CoordinatorsRelatedByLeadId from storage. If this Coordinator is new, it will return * an empty collection or the current collection, the criteria is ignored on a new object. * * @param PropelPDO $con * @param Criteria $criteria * @return array Coordinator[] * @throws PropelException */ public function getCoordinatorsRelatedByLeadId($criteria = null, PropelPDO $con = null) { if ($criteria === null) { $criteria = new Criteria(CoordinatorPeer::DATABASE_NAME); } elseif ($criteria instanceof Criteria) { $criteria = clone $criteria; } if ($this->collCoordinatorsRelatedByLeadId === null) { if ($this->isNew()) { $this->collCoordinatorsRelatedByLeadId = array(); } else { $criteria->add(CoordinatorPeer::LEAD_ID, $this->id); CoordinatorPeer::addSelectColumns($criteria); $this->collCoordinatorsRelatedByLeadId = CoordinatorPeer::doSelect($criteria, $con); } } else { // criteria has no effect for a new object if (!$this->isNew()) { // the following code is to determine if a new query is // called for. If the criteria is the same as the last // one, just return the collection. $criteria->add(CoordinatorPeer::LEAD_ID, $this->id); CoordinatorPeer::addSelectColumns($criteria); if (!isset($this->lastCoordinatorRelatedByLeadIdCriteria) || !$this->lastCoordinatorRelatedByLeadIdCriteria->equals($criteria)) { $this->collCoordinatorsRelatedByLeadId = CoordinatorPeer::doSelect($criteria, $con); } } } $this->lastCoordinatorRelatedByLeadIdCriteria = $criteria; return $this->collCoordinatorsRelatedByLeadId; }
public static function getNotInCoordinator() { $c = new Criteria(); $coordinators = CoordinatorPeer::doSelect($c); if ($coordinators) { foreach ($coordinators as $coordinator) { $c->addJoin(self::ID, CoordinatorPeer::MEMBER_ID, Criteria::LEFT_JOIN); $c->addJoin(self::PERSON_ID, PersonPeer::ID); $c->add($coordinator->getMemberId(), null, Criteria::ISNULL); $not_in_coordinator_persons = PersonPeer::doSelect($c); } } else { $not_in_coordinator_persons = PersonPeer::doSelect($c); } $arr = array(); $arr[0] = '-- select --'; foreach ($not_in_coordinator_persons as $not_in_coordinator_person) { $arr[$not_in_coordinator_person->getId()] = $not_in_coordinator_person->getLastName(); } return $arr; }