コード例 #1
0
ファイル: OrderController.php プロジェクト: evo9/dryharder
 public function request()
 {
     $api = new Api();
     $data = [];
     if ($api->key()) {
         try {
             $data = $api->ContrInfo();
         } catch (\Exception $e) {
         }
     }
     $rules = ['address1' => 'required', 'address2' => 'required', 'orderText' => 'required', 'comment' => ''];
     // тип формы "новый клиент" (иначе - авторизованный)
     if (!$api->key()) {
         Validation::prepareInput(['phone']);
         $rules['phone'] = 'required|phone';
         $rules['email'] = 'required|email';
     }
     Input::merge(array_map('trim', Input::all()));
     $validator = \Validator::make(Input::all(), $rules);
     if ($validator->fails()) {
         return $this->responseError($validator, $validator->errors()->first());
     }
     $fields = array_keys($rules);
     foreach ($fields as $key) {
         $data[$key] = Input::get($key);
     }
     Mailer::requestOrderMessage($data);
     OrderRequest::unguard();
     OrderRequest::create(['email' => $data['email'], 'phone' => Customer::instance()->phone($data['phone']), 'address1' => $data['address1'], 'address2' => $data['address2'], 'orderText' => $data['orderText'], 'comment' => $data['comment']]);
     return $this->responseSuccess(['email' => $data['email'], 'phone' => Customer::instance()->phone($data['phone']), 'address' => $data['address1']], 'Заказ оформлен');
 }
コード例 #2
0
 public function boot()
 {
     View::addNamespace('mailer', __DIR__ . '/../src/Components/views/mailer');
     View::addNamespace('cmd', app_path() . '/commands/views');
     View::addNamespace('socials', app_path('/src/Components/views/socials'));
     View::addNamespace('flash', app_path('src/Components/views/flashes'));
     View::addExtension('html', 'php');
     Validation::extend();
 }
コード例 #3
0
ファイル: MessageController.php プロジェクト: evo9/dryharder
 public function create()
 {
     Validation::prepareInput(['phone']);
     $validator = Validator::make(Input::all(), ['name' => 'required|min:3', 'phone' => 'required|min:10', 'email' => 'required|email', 'text' => 'required|min:10']);
     if ($validator->fails()) {
         return $this->responseError($validator, 'Исправьте ошибки в полях формы');
     }
     Mailer::feedbackMessage(['name' => Input::get('name'), 'phone' => Input::get('phone'), 'email' => Input::get('email'), 'text' => Input::get('text')]);
     return $this->responseSuccess();
 }
コード例 #4
0
 public function boot()
 {
     View::addNamespace('ac', __DIR__ . '/../src/Account/views');
     View::addExtension('html', 'php');
     Validation::extend();
 }
コード例 #5
0
ファイル: MainController.php プロジェクト: evo9/dryharder
 /**
  * изменение данных клиентом
  *
  * @return \Illuminate\Http\JsonResponse
  */
 public function formUser()
 {
     Validation::prepareInput(['phone', 'phone2']);
     $fields = ['name', 'phone', 'phone2', 'email', 'address'];
     $validator = Validation::validator($fields);
     if ($validator->fails()) {
         return $this->responseError($validator, 'Некорректные данные');
     }
     $api = new Api();
     $api->SaveInfo(Input::only($fields));
     return Response::json(['data' => '', 'message' => 'Данные успешно сохранены']);
 }
コード例 #6
0
ファイル: SignupController.php プロジェクト: evo9/dryharder
 /**
  * регистрация
  * @return \Response
  */
 public function register()
 {
     Validation::prepareInput(['phone']);
     // всегда обязательные поля
     $fields = ['name', 'phone', 'email'];
     // регистрация может быть основна на адресе,
     // который был определен по промокоду
     if (\Input::get('address_id')) {
         $fields[] = 'address_id';
     } elseif (\Input::get('address')) {
         $fields[] = 'address';
     } else {
         // или при регистрации указывается полный адрес
         $fields[] = 'city';
         $fields[] = 'street';
         $fields[] = 'house';
         $fields[] = 'room';
         $fields[] = 'float';
     }
     $validator = Validation::validator($fields);
     if ($validator->fails()) {
         return $this->responseError($validator, 'Некорректные данные');
     }
     try {
         $api = new Api();
         $message = $api->RegistrNew(\Input::only($fields));
         // инвайт
         $invite = new InviteComponent();
         $cookie = $invite->registerInviteExternal($validator->getData()['phone']);
         $response = $this->responseSuccess([], $message);
         if ($cookie) {
             $response->withCookie($cookie);
         }
         return $response;
     } catch (\Exception $e) {
         return $this->responseException($e, 'Не удалось обработать данные');
     }
 }