def post(self): if not self.user: return self.redirect('/login') subject = self.request.get('subject') content = self.request.get('content') blog_name = self.request.get('blog_name', tools.DEFAULT_BLOG_NAME) if subject and content: new_post = tools.Post( parent=tools.blog_key(blog_name), subject=subject, content=content, author=tools.User._by_name(self.user.name).key, authname=tools.User._by_name(self.user.name).name, likes=0, likers=[]) new_post.put() self.redirect('/%s' % str(new_post.key.id())) else: error = "Include subject and content please!" self.render_page("new-post.html", subject=subject, content=content, error=error)
def get(self, post_id): key = tools.ndb.Key('Post', int(post_id), parent=tools.blog_key()) p = key.get() if p is not None: self.render_page("delete-post.html", p=p, username=self.user.name) else: return self.redirect('/blog')
def get(self, post_id, comment_id): p_key = tools.ndb.Key('Post', int(post_id), parent=tools.blog_key()) p = p_key.get() c_key = tools.ndb.Key(tools.Comment, int(comment_id), parent=p_key) c = c_key.get() self.render_page("delete-comment.html", p=p, c=c, username=self.user.name)
def get(self, post_id, comment_id): p_key = tools.ndb.Key('Post', int(post_id), parent=tools.blog_key()) p = p_key.get() c_key = tools.ndb.Key(tools.Comment, int(comment_id), parent=p_key) c = c_key.get() if c is not None: self.render_page("edit-comment.html", p=p, c=c, username=self.user.name) else: self.redirect('/%s' % str(p.key.id()))
def get(self, post_id, comment_id): p_key = tools.ndb.Key('Post', int(post_id), parent=tools.blog_key()) c_key = tools.ndb.Key(tools.Comment, int(comment_id), parent=p_key) c = c_key.get() cauth = c.author.get() if not c: return self.redirect('/') if self.user: self.render_page("c_permalink.html", c=c, username=self.user.name) else: self.render_page("c_permalink.html", c=c)
def post(self, post_id): if not self.user: return self.redirect('/login') key = tools.ndb.Key('Post', int(post_id), parent=tools.blog_key()) p = key.get() if p is not None: if self.user.key == p.author: p.key.delete() self.redirect('/') else: return self.redirect('/blog')
def post(self, post_id): if not self.user: self.redirect('/login') else: key = tools.ndb.Key('Post', int(post_id), parent=tools.blog_key()) post = key.get() liker = self.user.name if liker in post.likers: post.likes = post.likes - 1 post.likers.remove(liker) post.put() self.redirect('/')
def post(self, post_id, comment_id): if not self.user: return self.redirect('/login') p_key = tools.ndb.Key('Post', int(post_id), parent=tools.blog_key()) c_key = tools.ndb.Key(tools.Comment, int(comment_id), parent=p_key) c = c_key.get() if c is not None: if self.user.key == c.author: post_id_str = c.post_parent_id c.key.delete() self.redirect('/' + post_id_str + '#comments') else: self.redirect('/' + post_id_str)
def post(self, post_id): if not self.user: return self.redirect('/login') key = tools.ndb.Key('Post', int(post_id), parent=tools.blog_key()) p = key.get() if p is not None: if self.user.key == p.author: p.subject = self.request.get('subject') p.content = self.request.get('content') p.put() self.redirect('/%s' % str(p.key.id())) else: return self.redirect('/blog')
def post(self, post_id): if not self.user: return self.redirect('/login') key = tools.ndb.Key('Post', int(post_id), parent=tools.blog_key()) post = key.get() post_id_str = str(post.key.id()) c = tools.Comment(parent=post.key) c.post_parent_id = post_id_str c.author = tools.User._by_name(self.user.name).key c.authname = tools.User._by_name(self.user.name).name c.content = self.request.get('comment_content') c.put() self.redirect('/' + post_id_str + '#comments')
def post(self, post_id): if not self.user: self.redirect('/login') else: key = tools.ndb.Key('Post', int(post_id), parent=tools.blog_key()) post = key.get() # Can't like your own post author = post.author liker = self.user.name if (author == liker) or (liker in post.likers): self.redirect('/nolike') else: post.likes = post.likes + 1 post.likers.append(liker) post.put() self.redirect('/')
def get(self, post_id): key = tools.ndb.Key('Post', int(post_id), parent=tools.blog_key()) post = key.get() post_auth = post.author.get() comments_query = tools.Comment.query(ancestor=post.key).order( tools.Comment.created) comments_for_post = comments_query.fetch() if not post: self.error(404) return if self.user: self.render_page("permalink.html", post=post, auth=post_auth, comments=comments_for_post, username=self.user.name) else: self.render_page("permalink.html", post=post, auth=post_auth, comments=comments_for_post)