/** * process invite * * @param sfWebRequest $request */ protected function processInvite(sfWebRequest $request) { $fromMember = $this->getUser()->getMember(); $this->forward404Unless($this->application->isHadByMember($fromMember->getId())); $ids = $request->getParameter('ids', array()); foreach ($ids as $id) { $memberRelationship = Doctrine::getTable('MemberRelationship')->retrieveByFromAndTo($fromMember->getId(), $id); if ($memberRelationship && !$memberRelationship->isFriend()) { return false; } } $resultIds = array(); foreach ($ids as $id) { $applicationInvite = Doctrine::getTable('ApplicationInvite')->findOneByApplicationIdAndToMemberId($this->application->getId(), $id); if (!$applicationInvite) { $applicationInvite = new ApplicationInvite(); $applicationInvite->setApplication($this->application); $applicationInvite->setToMemberId($id); $applicationInvite->setFromMemberId($fromMember->getId()); $applicationInvite->save(); $resultIds[] = $id; } } return $resultIds; }