Exemplo n.º 1
0
 public static function edit_action()
 {
     // 拦截
     self::role('member');
     $category = category_model::get_by_id(g_int('id'));
     self::forward_404_if($category === null, '分类不存在');
     if (visitor::is_post()) {
         // 拦截
         self::csrf('member');
         try {
             // 校验
             $checker = new lazy_checker(p());
             $checker->check_model_rules('category');
             // 执行
             $category->name = $checker->name;
             $category->save();
             // 成功
             self::json_result(true, '分类编辑成功。', 0, url('category/index'));
         } catch (check_failed $e) {
             // 失败
             self::json_result(false, $e->get_reasons());
         }
     } else {
         // 呈现
         self::set('category', $category);
         self::show_page();
     }
 }
Exemplo n.º 2
0
 public static function delete($category_id)
 {
     $category = category_model::get_by_id($category_id);
     if ($category !== null) {
         if (!$category->can_be_deleted()) {
             return false;
         }
         category_model::del_by_id($category_id);
         if ($category->has_posts()) {
             post_model::set(array('category_id' => category_model::default_id), array('category_id' => $category_id));
             category_model::inc_by_id(array('post_count' => $category->post_count), category_model::default_id);
         }
     }
     return true;
 }