Backend\Modules\Faq\Actions\Edit::validateForm PHP Метод

validateForm() приватный Метод

Validate the form
private validateForm ( )
    private function validateForm()
    {
        if ($this->frm->isSubmitted()) {
            $this->meta->setURLCallback('Backend\\Modules\\Faq\\Engine\\Model', 'getURL', array($this->record['id']));
            $this->frm->cleanupFields();
            // validate fields
            $this->frm->getField('title')->isFilled(BL::err('QuestionIsRequired'));
            $this->frm->getField('answer')->isFilled(BL::err('AnswerIsRequired'));
            $this->frm->getField('category_id')->isFilled(BL::err('CategoryIsRequired'));
            $this->meta->validate();
            if ($this->frm->isCorrect()) {
                // build item
                $item['id'] = $this->id;
                $item['meta_id'] = $this->meta->save(true);
                $item['category_id'] = $this->frm->getField('category_id')->getValue();
                $item['language'] = $this->record['language'];
                $item['question'] = $this->frm->getField('title')->getValue();
                $item['answer'] = $this->frm->getField('answer')->getValue(true);
                $item['hidden'] = $this->frm->getField('hidden')->getValue();
                // update the item
                BackendFaqModel::update($item);
                BackendTagsModel::saveTags($item['id'], $this->frm->getField('tags')->getValue(), $this->URL->getModule());
                BackendModel::triggerEvent($this->getModule(), 'after_edit', array('item' => $item));
                // edit search index
                BackendSearchModel::saveIndex($this->getModule(), $item['id'], array('title' => $item['question'], 'text' => $item['answer']));
                // everything is saved, so redirect to the overview
                $this->redirect(BackendModel::createURLForAction('Index') . '&report=saved&var=' . rawurlencode($item['question']) . '&highlight=' . $item['id']);
            }
        }
    }