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;
 }
Exemple #4
0
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);
            }
        }
    }
}
Exemple #5
0
 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;
     }
 }