Example #1
0
 /**
  * Customer address validation.
  *
  * @param \Magento\Framework\DataObject $response
  * @return void
  */
 protected function _validateCustomerAddress($response)
 {
     $addresses = $this->getRequest()->getPost('address');
     if (!is_array($addresses)) {
         return;
     }
     foreach (array_keys($addresses) as $index) {
         if ($index == '_template_') {
             continue;
         }
         $addressForm = $this->_formFactory->create('customer_address', 'adminhtml_customer_address');
         $requestScope = sprintf('address/%s', $index);
         $formData = $addressForm->extractData($this->getRequest(), $requestScope);
         $errors = $addressForm->validateData($formData);
         if ($errors !== true) {
             $messages = $response->hasMessages() ? $response->getMessages() : [];
             foreach ($errors as $error) {
                 $messages[] = $error;
             }
             $response->setMessages($messages);
             $response->setError(1);
         }
     }
 }