public function checkPostData($data, MessageStack &$errors, $ignore_missing_fields = false) { $errors = NULL; $status = self::STATUS_ERROR; $section = Section::loadFromHandle($entry->get('section')); $schema = $section->fetchFieldsSchema(); foreach ($schema as $info) { $result = NULL; $field = FieldManager::instance()->fetch($info['id']); if ($ignore_missing_fields && !isset($data[$field->get('element_name')])) { continue; } if (Field::STATUS_OK != $field->checkPostFieldData(isset($data[$info['element_name']]) ? $data[$info['element_name']] : NULL, $message, $this->get('id'))) { $strict = false; $status = self::STATUS_ERROR; $errors[$info['id']] = $message; } } return $status; }