public function postForm(ContactRequest $request) { Mail::send('emails.contact', $request->all(), function ($message) { $message->to('*****@*****.**')->subject('Contact'); }); return view('confirm'); }
public function save(ContactRequest $contactRequest) { if ($contactRequest->isValid()) { $contactRequest->isNew() ? $this->add($contactRequest) : $this->modify($contactRequest); } else { throw new RuntimeException('L\'adresse doit être valide pour être enregistrée'); } }
public function isContactRequestExist(ContactRequest $contactRequest) { $q = $this->dao->prepare('SELECT * FROM ' . $this->table() . ' WHERE (USER_ID_TO = :userIdTo AND USER_ID_FROM = :userIdFrom) OR (USER_ID_TO = :userIdFrom AND USER_ID_FROM = :userIdTo)'); $q->bindValue(':userIdTo', $contactRequest->getUserIdTo(), PDO::PARAM_INT); $q->bindValue(':userIdFrom', $contactRequest->getUserIdFrom(), PDO::PARAM_INT); $q->execute(); $contactRequest = $q->fetch(PDO::FETCH_ASSOC); if (is_array($contactRequest)) { return true; } return false; }
function lauchScript2() { $managers = new Managers('pdo', PDOFactory::getMysqlConnexion()); $reservationManager = $managers->getManagerOf('announcementreservations'); $feedbacksManager = $managers->getManagerOf('feedbacks'); $feedbackRequestsManager = $managers->getManagerOf('feedbackrequests'); $contactsManager = $managers->getManagerOf('contacts'); $contactRequestsManager = $managers->getManagerOf('contactrequests'); $usersManager = $managers->getManagerOf('users'); $listOfPassedReservation = $reservationManager->getListOfPassedValidated(); $messageMail = new Mail(); foreach ($listOfPassedReservation as $reservation) { $listOfFeddbackRequest = $feedbackRequestsManager->getByReservationId($reservation->id()); $listOfFeddback = $feedbacksManager->getByReservationId($reservation->id()); if (count($listOfFeddback) + count($listOfFeddbackRequest) == 0) { $feedbackRequest = new FeedbackRequest(); $feedbackRequest->setAnnounceId($reservation->getAnnouncementId()); $feedbackRequest->setReservationId($reservation->id()); $feedbackRequest->setUserOwnerId($reservation->getUserOwnerId()); $feedbackRequest->setUserSubscriberId($reservation->getUserSubscriberId()); //ENVOI POUR LE PRETEUR $feedbackRequest->setId(null); $feedbackRequest->setUserAuthorId($feedbackRequest->getUserOwnerId()); $feedbackRequestsManager->save($feedbackRequest); //Envoyer un mail pour le preteur ICI $messageMail->sendFeedbackRequest($usersManager->get($feedbackRequest->getUserOwnerId()), $usersManager->get($feedbackRequest->getUserSubscriberId())); //ENVOI POUR L'EMPRUNTEUR $feedbackRequest->setId(null); $feedbackRequest->setUserAuthorId($feedbackRequest->getUserSubscriberId()); $feedbackRequestsManager->save($feedbackRequest); //Envoyer un mail pour l'emprunteur ICI $messageMail->sendFeedbackRequest($usersManager->get($feedbackRequest->getUserSubscriberId()), $usersManager->get($feedbackRequest->getUserOwnerId())); //On effectue la création d'un ajout de contact s'ils ne le sont pas déjà ou qu'aucune demande n'est en attente $contactRequest = new ContactRequest(); $contactRequest->setContactGroupId(ContactGroups::TIPPEURS); $contactRequest->setUserIdFrom($reservation->getUserSubscriberId()); $contactRequest->setUserIdTo($reservation->getUserOwnerId()); if (!$contactRequestsManager->isContactRequestExist($contactRequest) && !$contactsManager->isContactExistById($contactRequest->getUserIdFrom(), $contactRequest->getUserIdTo())) { $contactRequestsManager->save($contactRequest); $userFrom = $usersManager->get($contactRequest->getUserIdFrom()); $userTo = $usersManager->get($contactRequest->getUserIdTo()); $messageMail->sendContactRequest($userFrom, $userTo); } } } }
protected function processForm(sfWebRequest $request, sfForm $form) { $form->bind($request->getParameter($form->getName()), $request->getFiles($form->getName())); if ($form->isValid()) { $contact_req = new ContactRequest(); $contact_req->setRequestDate(date('Y-m-d')); $contact_req->setTitle($request->getParameter('contact_request[title]')); $contact_req->setFirstName($request->getParameter('contact_request[first_name]')); $contact_req->setLastName($request->getParameter('contact_request[last_name]')); $contact_req->setAddress1($request->getParameter('contact_request[address1]')); $contact_req->setAddress2($request->getParameter('contact_request[address2]')); $contact_req->setCity($request->getParameter('contact_request[city]')); $contact_req->setState($request->getParameter('contact_request[state]')); $contact_req->setZipcode($request->getParameter('contact_request[zipcode]')); $contact_req->setCountry($request->getParameter('contact_request[country]')); $contact_req->setDayPhone($request->getParameter('contact_request[day_phone]')); $contact_req->setEvePhone($request->getParameter('contact_request[eve_phone]')); $contact_req->setFaxPhone($request->getParameter('contact_request[fax_phone]')); $contact_req->setMobilePhone($request->getParameter('contact_request[mobile_phone]')); $contact_req->setEmail($request->getParameter('contact_request[email]')); $contact_req->setRefSourceId($request->getParameter('contact_request[ref_source_id]')); $contact_req->setSendAppFormat($request->getParameter('contact_request[send_app_format]')); $contact_req->setComment($request->getParameter('contact_request[comment]')); //Set Session Id $sessionId = session_id(); $contact_req->setSessionId($sessionId); //end set session id $contact_req->setIpAddress($request->getRemoteAddress()); $contact_req->save(); $this->redirect('contact_request/thankyou'); } }
public function executeAdd(HTTPRequest $request) { $userId = htmlspecialchars($request->getData('userId')); $user = $this->_usersManager->get($userId); $this->page->smarty()->assign('user', $user); if ($request->postExists('contact-group')) { $contactRequest = new ContactRequest(); $contactRequest->setUserIdFrom($this->_user->id()); $contactRequest->setUserIdTo(htmlspecialchars($request->postData('user-id-to'))); $contactRequest->setContactGroupId(htmlspecialchars($request->postData('contact-group'))); $this->_contactRequestsManager->save($contactRequest); //TODO envoyer un mail $userFrom = $this->_usersManager->get($contactRequest->getUserIdFrom()); $userTo = $this->_usersManager->get($contactRequest->getUserIdTo()); $messageMail = new Mail(); $messageMail->sendContactRequest($userFrom, $userTo); $this->app->user()->setFlash('contact-request-sent'); $this->app->httpResponse()->redirect('/contacts'); } }
private function assignVars(Users $user) { $isContactRequestExist = false; $isContactExist = false; if (!is_null($this->_user)) { $contactRequest = new ContactRequest(); $contact = new Contact(); $contactRequest->setUserIdFrom($this->_user->id()); $contactRequest->setUserIdTo($user->id()); $isContactRequestExist = $this->_contactRequestsManager->isContactRequestExist($contactRequest); $contact->setUserId1($this->_user->id()); $contact->setUserId2($user->id()); $isContactExist = $this->_contactsManager->isContactExist($contact); } $this->page->smarty()->assign('isContactRequestExist', $isContactRequestExist); $this->page->smarty()->assign('isContactExist', $isContactExist); }
/** * Adds an object to the instance pool. * * Propel keeps cached copies of objects in an instance pool when they are retrieved * from the database. In some cases -- especially when you override doSelect*() * methods in your stub classes -- you may need to explicitly add objects * to the cache in order to ensure that the same objects are always returned by doSelect*() * and retrieveByPK*() calls. * * @param ContactRequest $value A ContactRequest object. * @param string $key (optional) key to use for instance map (for performance boost if key was already calculated externally). */ public static function addInstanceToPool(ContactRequest $obj, $key = null) { if (Propel::isInstancePoolingEnabled()) { if ($key === null) { $key = (string) $obj->getId(); } // if key === null self::$instances[$key] = $obj; } }