/** * Saves one extend field definition based on $_POST data */ function save() { if ($this->input->post('name') != '') { // If no ID (means new one) and this item name already exists in DB : No save if ($this->input->post('id_extend_field') == '') { $where = array('name' => url_title($this->input->post('name')), 'parent' => $this->input->post('parent')); if ($this->input->post('id_parent')) { $where['id_parent'] = $this->input->post('id_parent'); } if ($this->extend_field_model->exists($where)) { $this->error(lang('ionize_message_extend_field_name_exists')); } } $this->_prepare_data(); // Save data $this->id = $this->extend_field_model->save($this->data, $this->lang_data); // Extend fields of parent 'article' only: save type of parent kind (article type) if ($this->input->post('parent') === 'article') { $articleTypeIDs = explode(',', $this->input->post('article_types')); $this->extend_field_model->save_multiple_links('extend_field', $this->id, 'article_type', $articleTypeIDs); } $this->update[] = array('element' => 'extend_fields', 'url' => 'extend_field/get_extend_fields'); $this->success(lang('ionize_message_extend_field_saved')); } else { $this->error(lang('ionize_message_extend_field_not_saved')); } }