예제 #1
0
파일: comment.py 프로젝트: yetone/orange
 def post(self, post_id):
     user = self.current_user
     post_id = int(post_id)
     post = db.query(Post).get(post_id)
     if not post:
         raise tornado.web.HTTPError(404)
     else:
         origin_content = self.get_argument("comment-content", "")
         content = md(origin_content)
         if origin_content == "":
             self.redirect(self.next_url)
             return
         comment = Comment(post_id=post_id, user_id=user.id, content=content, origin_content=origin_content)
         db.add(comment)
         db.commit()
         the_comment = (
             db.query(Comment).order_by(sa.desc(Comment.created_at)).filter(Comment.user_id == user.id).first()
         )
         if self.is_ajax():
             self.write(
                 tornado.escape.json_encode(
                     {
                         "username": user.name,
                         "avatar": user.get_avatar(size=24),
                         "time": formatDate(int(time.time())),
                         "content": content,
                     }
                 )
             )
         if post.user_id != user.id:
             db.add(Notifier(post_id=post_id, who_id=user.id, whom_id=post.user_id, comment_id=the_comment.id))
             db.commit()
         if content.find("@") != -1:
             put_notifier(comment=comment, post=post)
예제 #2
0
파일: post.py 프로젝트: yetone/orange
 def post(self, post_id):
     post_id = int(post_id)
     origin_content = self.get_argument("content", '')
     if origin_content != '':
         content = md(origin_content)
         user = self.current_user
         post = db.query(Post).get(post_id)
         post.origin_content = origin_content
         post.content = content
         db.commit()
         if self.is_ajax():
             self.write(
                 tornado.escape.json_encode({
                     'username':
                     user.name,
                     'avatar':
                     user.get_avatar(),
                     'time':
                     formatDate(int(time.time())),
                     'content':
                     content
                 }))
         else:
             self.redirect(self.next_url)
     else:
         self.redirect(self.next_url)
         return
예제 #3
0
파일: post.py 프로젝트: yetone/orange
 def post(self):
     user = self.current_user
     origin_content = self.get_argument("content", '')
     content = md(origin_content)
     if origin_content != '':
         post = Post(user_id=user.id,
                     content=content,
                     origin_content=origin_content)
         db.add(post)
         db.commit()
         if self.is_ajax():
             self.write(
                 tornado.escape.json_encode({
                     'username':
                     user.name,
                     'avatar':
                     user.get_avatar(),
                     'time':
                     formatDate(int(time.time())),
                     'content':
                     content,
                     'id':
                     post.id
                 }))
             '''
             self.render('site/ajaxpage.html', posts = [post])
             '''
         else:
             self.redirect(self.next_url)
         if post.content.find('@') != -1:
             post_put_notifier(post)
     else:
         self.redirect(self.next_url)
     return
예제 #4
0
 def post(self):
     user = self.current_user
     description = self.get_argument("description", '')
     website = self.get_argument("website", '')
     city = self.get_argument("city", '')
     user.description = md(description)
     user.website = website
     user.city = city
     db.add(user)
     db.commit()
     self.redirect("/user/%s" % (user.name))
     return
예제 #5
0
파일: post.py 프로젝트: CShWen/bruce
 def post(self):
     self.checkAdmin()
     title = self.get_argument("post[title]", '')
     origin_content = self.get_argument("post[content]", '')
     content = md(origin_content)
     if title != '' and origin_content != '':
         db.add(Post(title=title, content=content,
             origin_content=origin_content))
         db.commit()
         self.redirect("/")
     else:
         self.render("postadd.html", error=u"标题或内容不能为空。",
                 title=title, origin_content=origin_content)
예제 #6
0
 def post(self, pid):
     self.check_admin()
     title = self.get_argument("post[title]", default='')
     origin_content = self.get_argument("post[content]", default='')
     content = md(origin_content)
     post = db.query(Post).get(pid)
     post.title = title
     post.origin_content = origin_content
     post.content = content
     if title != '' and origin_content != '':
         db.commit()
         self.redirect("/post/%d" % (int(pid)))
     else:
         self.render("postedit.html", error=u"标题或内容不能为空。", post=post)
예제 #7
0
파일: post.py 프로젝트: CShWen/bruce
 def post(self, pid):
     self.checkAdmin()
     title = self.get_argument("post[title]", default='')
     origin_content = self.get_argument("post[content]", default='')
     content = md(origin_content)
     post = db.query(Post).get(pid)
     post.title = title
     post.origin_content = origin_content
     post.content = content
     if title != '' and origin_content != '':
         db.commit()
         self.redirect("/post/%d" % (int(pid)))
     else:
         self.render("postedit.html", error=u"标题或内容不能为空。",
                 post=post)
예제 #8
0
 def post(self):
     self.check_admin()
     title = self.get_argument("post[title]", '')
     origin_content = self.get_argument("post[content]", '')
     content = md(origin_content)
     if title != '' and origin_content != '':
         db.add(
             Post(title=title,
                  content=content,
                  origin_content=origin_content))
         db.commit()
         self.redirect("/")
     else:
         self.render("postadd.html",
                     error=u"标题或内容不能为空。",
                     title=title,
                     origin_content=origin_content)
예제 #9
0
파일: reply.py 프로젝트: CShWen/bruce
 def post(self, pid):
     name = self.get_argument("reply[name]", default='')
     email = self.get_argument("reply[email]", default='')
     website = self.get_argument("reply[website]", default='')
     origin_content = self.get_argument("reply[content]", default='')
     content = formatText(md(formatText(origin_content)))
     if name == "":
         self.redirect("/post/%d" % int(pid), error=u"请填入名字")
     if email == "":
         self.redirect("/post/%d" % int(pid), error=u"请填入邮箱地址")
     if origin_content == "":
         self.redirect("/post/%d" % int(pid), error=u"请输入评论内容")
     number = db.query(Reply).filter(Reply.pid == pid).count() + 1
     db.add(Reply(pid=int(pid), name=name, email=email, website=website,
         content=content, origin_content=origin_content, number=number))
     db.commit()
     self.replyerSet(name, email, website)
     self.redirect("/post/%d#%d" % (int(pid), int(number)))
예제 #10
0
 def post(self, post_id):
     user = self.current_user
     post_id = int(post_id)
     post = db.query(Post).get(post_id)
     if not post:
         raise tornado.web.HTTPError(404)
     else:
         origin_content = self.get_argument("comment-content", '')
         content = md(origin_content)
         if origin_content == '':
             self.redirect(self.next_url)
             return
         comment = Comment(post_id=post_id,
                           user_id=user.id,
                           content=content,
                           origin_content=origin_content)
         db.add(comment)
         db.commit()
         the_comment = db.query(Comment).order_by(
             sa.desc(Comment.created_at)).filter(
                 Comment.user_id == user.id).first()
         if self.is_ajax():
             self.write(
                 tornado.escape.json_encode({
                     'username':
                     user.name,
                     'avatar':
                     user.get_avatar(size=24),
                     'time':
                     formatDate(int(time.time())),
                     'content':
                     content
                 }))
         if post.user_id != user.id:
             db.add(
                 Notifier(post_id=post_id,
                          who_id=user.id,
                          whom_id=post.user_id,
                          comment_id=the_comment.id))
             db.commit()
         if content.find('@') != -1:
             put_notifier(comment=comment, post=post)
예제 #11
0
파일: reply.py 프로젝트: tek-life/bruce
 def post(self, pid, id):
     self.check_admin()
     name = self.get_argument("reply[name]", default='')
     email = self.get_argument("reply[email]", default='')
     website = self.get_argument("reply[website]", default='')
     origin_content = self.get_argument("reply[content]", default='')
     content = md(format_text(origin_content))
     if name == "":
         self.redirect("/post/%d" % int(pid), error=u"请填入名字")
     if email == "":
         self.redirect("/post/%d" % int(pid), error=u"请填入邮箱地址")
     if origin_content == "":
         self.redirect("/post/%d" % int(pid), error=u"请输入评论内容")
     reply = db.query(Reply).get(id)
     if reply is None:
         raise tornado.web.HTTPError(404)
     reply.name = name
     reply.email = email
     reply.website = website
     reply.origin_content = origin_content
     reply.content = content
     db.commit()
     self.set_replyer(name, email, website)
     self.redirect("/post/%d#%d" % (int(pid), int(reply.number)))
예제 #12
0
파일: reply.py 프로젝트: tek-life/bruce
 def post(self, pid):
     name = self.get_argument("reply[name]", default='')
     email = self.get_argument("reply[email]", default='')
     website = self.get_argument("reply[website]", default='')
     origin_content = self.get_argument("reply[content]", default='')
     content = format_text(md(format_text(origin_content)))
     if name == "":
         self.redirect("/post/%d" % int(pid), error=u"请填入名字")
     if email == "":
         self.redirect("/post/%d" % int(pid), error=u"请填入邮箱地址")
     if origin_content == "":
         self.redirect("/post/%d" % int(pid), error=u"请输入评论内容")
     number = db.query(Reply).filter(Reply.pid == pid).count() + 1
     db.add(
         Reply(pid=int(pid),
               name=name,
               email=email,
               website=website,
               content=content,
               origin_content=origin_content,
               number=number))
     db.commit()
     self.set_replyer(name, email, website)
     self.redirect("/post/%d#%d" % (int(pid), int(number)))
예제 #13
0
파일: reply.py 프로젝트: CShWen/bruce
 def post(self, pid, id):
     self.checkAdmin()
     name = self.get_argument("reply[name]", default='')
     email = self.get_argument("reply[email]", default='')
     website = self.get_argument("reply[website]", default='')
     origin_content = self.get_argument("reply[content]", default='')
     content = md(formatText(origin_content))
     if name == "":
         self.redirect("/post/%d" % int(pid), error=u"请填入名字")
     if email == "":
         self.redirect("/post/%d" % int(pid), error=u"请填入邮箱地址")
     if origin_content == "":
         self.redirect("/post/%d" % int(pid), error=u"请输入评论内容")
     reply = db.query(Reply).get(id)
     if reply is None:
         raise tornado.web.HTTPError(404)
     reply.name = name
     reply.email = email
     reply.website = website
     reply.origin_content = origin_content
     reply.content = content
     db.commit()
     self.replyerSet(name, email, website)
     self.redirect("/post/%d#%d" % (int(pid), int(reply.number)))