public static function appendErrors(XMLElement $result, array $fields, $errors, $post_values)
    {
        $result->setAttribute('result', 'error');
        $result->appendChild(new XMLElement('message', __('Entry encountered errors when saving.'), array(
            'message-id' => EventMessages::ENTRY_ERRORS
        )));

        foreach ($errors as $field_id => $message) {
            $field = FieldManager::fetch($field_id);

            // Do a little bit of a check for files so that we can correctly show
            // whether they are 'missing' or 'invalid'. If it's missing, then we
            // want to remove the data so `__reduceType` will correctly resolve to
            // missing instead of invalid.
            // @see https://github.com/symphonists/s3upload_field/issues/17
            if (isset($_FILES['fields']['error'][$field->get('element_name')])) {
                $upload = $_FILES['fields']['error'][$field->get('element_name')];

                if ($upload === UPLOAD_ERR_NO_FILE) {
                    unset($fields[$field->get('element_name')]);
                }
            }

            if (is_array($fields[$field->get('element_name')])) {
                $type = array_reduce($fields[$field->get('element_name')], array('SectionEvent', '__reduceType'));
            } else {
                $type = ($fields[$field->get('element_name')] == '') ? 'missing' : 'invalid';
            }

            $error = self::createError($field, $type, $message);
            $result->appendChild($error);
        }

        if (isset($post_values) && is_object($post_values)) {
            $result->appendChild($post_values);
        }

        return $result;
    }
public static function appendErrors(XMLElement $result, array $fields, $errors, $post_values)
    {
        $result->setAttribute('result', 'error');
        $result->appendChild(new XMLElement('message', __('Entry encountered errors when saving.'), array(
            'message-id' => EventMessages::ENTRY_ERRORS
        )));

        foreach ($errors as $field_id => $message) {
            $field = FieldManager::fetch($field_id);

            // Do a little bit of a check for files so that we can correctly show
            // whether they are 'missing' or 'invalid'. If it's missing, then we
            // want to remove the data so `__reduceType` will correctly resolve to
            // missing instead of invalid.
            // @see https://github.com/symphonists/s3upload_field/issues/17
            if (isset($_FILES['fields']['error'][$field->get('element_name')])) {
                $upload = $_FILES['fields']['error'][$field->get('element_name')];

                if ($upload === UPLOAD_ERR_NO_FILE) {
                    unset($fields[$field->get('element_name')]);
                }
            }

            if (is_array($fields[$field->get('element_name')])) {
                $type = array_reduce($fields[$field->get('element_name')], array('SectionEvent', '__reduceType'));
            } else {
                $type = ($fields[$field->get('element_name')] == '') ? 'missing' : 'invalid';
            }

            $error = self::createError($field, $type, $message);
            $result->appendChild($error);
        }

        if (isset($post_values) && is_object($post_values)) {
            $result->appendChild($post_values);
        }

        return $result;
    }
public static function appendErrors ( XMLElement $ result , array $ fields , $ errors , $ post_values ) { $ result -> setAttribute ( 'result' , 'error' ) ; $ result -> appendChild ( new XMLElement ( 'message' , __ ( 'Entry encountered errors when saving.' ) , array ( 'message-id' => EventMessages :: ENTRY_ERRORS ) ) ) ; foreach ( $ errors as $ field_id => $ message ) { $ field = FieldManager :: fetch ( $ field_id ) ; // Do a little bit of a check for files so that we can correctly show // whether they are 'missing' or 'invalid'. If it's missing, then we // want to remove the data so `__reduceType` will correctly resolve to // missing instead of invalid. // @see https://github.com/symphonists/s3upload_field/issues/17 if ( isset ( $ _FILES [ 'fields' ] [ 'error' ] [ $ field -> get ( 'element_name' ) ] ) ) { $ upload = $ _FILES [ 'fields' ] [ 'error' ] [ $ field -> get ( 'element_name' ) ] ; if ( $ upload === UPLOAD_ERR_NO_FILE ) { unset ( $ fields [ $ field -> get ( 'element_name' ) ] ) ; } } if ( is_array ( $ fields [ $ field -> get ( 'element_name' ) ] ) ) { $ type = array_reduce ( $ fields [ $ field -> get ( 'element_name' ) ] , array ( 'SectionEvent' , '__reduceType' ) ) ; } else { $ type = ( $ fields [ $ field -> get ( 'element_name' ) ] == '' ) ? 'missing' : 'invalid' ; } $ error = self :: createError ( $ field , $ type , $ message ) ; $ result -> appendChild ( $ error ) ; } if ( isset ( $ post_values ) && is_object ( $ post_values ) ) { $ result -> appendChild ( $ post_values ) ; } return $ result ; }
Appends errors generated from fields during the execution of an Event

@param XMLElement $result
@param array $fields
@param array $errors
@param object $post_values
@throws Exception
@return XMLElement
Appends errors generated from fields during the execution of an Event