function display_editcategory() { require_once elispm::file('form/fieldcategoryform.class.php'); $level = $this->required_param('level', PARAM_ACTION); $ctxlvl = \local_eliscore\context\helper::get_level_from_name($level); if (!$ctxlvl) { print_error('invalid_context_level', 'local_elisprogram'); } $id = $this->optional_param('id', 0, PARAM_INT); $tmppage = new customfieldpage(array('level' => $level, 'id' => $id, 'action' => 'editcategory', 'level' => $level)); $form = new fieldcategoryform($tmppage->url); if ($form->is_cancelled()) { $tmppage = new customfieldpage(array('level' => $level)); redirect($tmppage->url, get_string('edit_cancelled', 'local_elisprogram')); } else { if ($data = $form->get_data()) { $data->id = $id; $category = new field_category($data); if ($category->id) { $category->save(); } else { $category->save(); // assume each category only belongs to one context level (for now) $categorycontext = new field_category_contextlevel(); $categorycontext->categoryid = $category->id; $categorycontext->contextlevel = $ctxlvl; $categorycontext->save(); } $tmppage = new customfieldpage(array('level' => $level)); redirect($tmppage->url, get_string('field_category_saved', 'local_elisprogram', $category->name)); } else { if ($id) { $category = new field_category($id); $form->set_data($category); } $form->display(); } } }
function action_editcategory() { require_once CURMAN_DIRLOCATION . '/form/fieldcategoryform.class.php'; $level = $this->required_param('level', PARAM_ACTION); $ctxlvl = context_level_base::get_custom_context_level($level, 'block_curr_admin'); if (!$ctxlvl) { print_error('invalid_context_level', 'block_curr_admin'); } $id = $this->optional_param('id', 0, PARAM_INT); $tmppage = new customfieldpage(array('level' => $level, 'id' => $id, 'action' => 'editcategory', 'level' => $level)); $form = new fieldcategoryform($tmppage->get_moodle_url()); if ($form->is_cancelled()) { $tmppage = new customfieldpage(array('level' => $level)); redirect($tmppage->get_url(), get_string('edit_cancelled', 'block_curr_admin')); } else { if ($data = $form->get_data()) { $data->id = $id; $category = new field_category($data); if ($category->id) { $category->update(); } else { $category->add(); // assume each category only belongs to one context level (for now) $categorycontext = new field_category_contextlevel(); $categorycontext->categoryid = $category->id; $categorycontext->contextlevel = $ctxlvl; $categorycontext->add(); } $tmppage = new customfieldpage(array('level' => $level)); redirect($tmppage->get_url(), get_string('field_category_saved', 'block_curr_admin', $category)); } else { if ($id) { $category = new field_category($id); $form->set_data($category); } $form->display(); } } }