コード例 #1
0
 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();
         }
     }
 }
コード例 #2
0
 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();
         }
     }
 }