Exemplo n.º 1
0
 /**
  * Приём анкеты Сити банка
  */
 public function executeCitiCashBackApplication(sfRequest $request)
 {
     $form = new CitiBankApplicationForm();
     $form->bind($request->getPostParameters());
     if ($form->isValid()) {
         $this->_sendEmail($form->getValues());
         return $this->renderJsonSuccess('Анкета успешно отправлена');
     }
     $errors = $form->getErrorSchema()->getErrors();
     $errorMessages = array();
     //TODO: refactor: все сообщения русским языком должны создаваться на клиенте,
     //сервер должен слать только код поля (например, "email") и сообщение валидатора
     $humanFieldNames = array("email" => "Email", "birthday" => "Дата рождения", "name" => "Имя", "patronymic" => "Отчество", "surname" => "Фамилия", "mobile_phone" => "Мобильный телефон");
     foreach ($errors as $fieldName => $error) {
         $errorMessages[] = sprintf("%s", $humanFieldNames[$fieldName]);
     }
     return $this->renderJsonError("Пожалуйста, исправьте заполнение полей: \n" . implode(', ', $errorMessages));
 }