Exemplo n.º 1
0
 public static function edit_action()
 {
     // 拦截
     self::role('member');
     if (visitor::is_post()) {
         // 拦截
         self::csrf('member');
         try {
             // 校验
             $checker = new lazy_checker(p());
             $checker->check(setting_model::id_blog_name, array('change_to' => 'string', 'cannot_be' => array('', '')));
             $checker->check(setting_model::id_blog_description, array('change_to' => 'string', 'cannot_be' => array('', '')));
             $checker->check(setting_model::id_blog_keywords, array('change_to' => 'string', 'cannot_be' => array('', '')));
             $checker->check(setting_model::id_copyright, array('change_to' => 'string', 'cannot_be' => array('', '')));
             $checker->check(setting_model::id_captcha_question, array('change_to' => 'string', 'cannot_be' => array('', '')));
             $checker->check(setting_model::id_captcha_answer, array('change_to' => 'string', 'cannot_be' => array('', '')));
             // 执行
             $props = $checker->get_all();
             foreach ($props as $id => $value) {
                 setting_model::set_by_id(array('value' => $value), $id);
             }
             // 成功
             self::json_result(true, '', 0, url('setting/edit'));
         } catch (check_failed $e) {
             // 失败
             self::json_result(false, $e->get_reasons());
         }
     } else {
         // 呈现
         self::set('settings', setting_service::get_settings());
         self::show_page();
     }
 }
Exemplo n.º 2
0
 public static function new_action()
 {
     // 拦截
     self::method('post');
     $post_id = g_int('post_id');
     $post = post_model::get_by_id($post_id);
     self::forward_404_if($post === null, '文章不存在,无法评论');
     try {
         // 校验
         $checker = new lazy_checker(p());
         $checker->check('captcha', array('should_be' => array(setting_model::get_by_id(setting_model::id_captcha_answer)->value, '验证码不正确')));
         $checker->del('captcha');
         $checker->check_model_rules('comment');
         $comment = $checker->get_all();
         if (!visitor::has_role('member') && member_model::get_one(array('name' => $comment['author'])) !== null) {
             $checker->failed('author', '您不能使用管理员的昵称');
         }
         // 执行
         $comment['post_id'] = $post_id;
         $comment['pub_time'] = clock::get_stamp();
         comment_model::add($comment);
         post_model::inc_by_id(array('comment_count' => 1), $post_id);
         setting_model::inc_by_id(array('value' => 1), setting_model::id_comment_count);
         // 成功
         self::json_result(true, '评论成功', 0, url('post/show?id=' . $post_id));
     } catch (check_failed $e) {
         // 失败
         self::json_result(false, $e->get_reasons());
     }
 }
Exemplo n.º 3
0
 public static function new_action()
 {
     // 拦截
     self::method('post');
     self::role('member');
     self::csrf('member');
     try {
         // 校验
         $checker = new lazy_checker(p());
         $checker->check_model_rules('link');
         // 执行
         link_model::add($checker->get_all());
         // 成功
         self::json_result(true, '链接创建成功。', 0, url('link/index'));
     } catch (check_failed $e) {
         // 失败
         self::json_result(false, $e->get_reasons());
     }
 }
Exemplo n.º 4
0
 public static function new_action()
 {
     // 拦截
     self::method('post');
     try {
         // 校验
         $checker = new lazy_checker(p());
         $checker->check('captcha', array('should_be' => array(setting_model::get_by_id(setting_model::id_captcha_answer)->value, '验证码不正确')));
         $checker->del('captcha');
         $checker->check_model_rules('message');
         // 执行
         $message = $checker->get_all();
         $message['pub_time'] = clock::get_stamp();
         message_model::add($message);
         // 成功
         self::json_result(true, '留言成功。', 0, url('site/about'));
     } catch (check_failed $e) {
         // 失败
         self::json_result(false, $e->get_reasons());
     }
 }
Exemplo n.º 5
0
 public static function do_new_action()
 {
     // 拦截
     self::method('post');
     self::role('member');
     self::csrf('member');
     try {
         // 校验
         $checker = new lazy_checker(p());
         $checker->check_model_rules('post');
         // 执行
         $props = $checker->get_all();
         $tags = $props['tags'];
         unset($props['tags']);
         $props['member_id'] = visitor::get_role_id('member');
         $props['pub_time'] = clock::get_stamp();
         $post = new post_model();
         $post->set_props($props);
         publish_service::publish($post, $tags);
         // 成功
         self::json_result(true, '文章发表成功', 0, url('post/show?id=' . $post->id));
     } catch (check_failed $e) {
         // 失败
         self::json_result(false, $e->get_reasons());
     }
 }