def post(self, post_subject): # If any user does not logged in redirect to homepage if not self.user: self.redirect("/login") post_to_delete = Post.find_by_subject(post_subject) # If post couldn't find redirect 404 page if not post_to_delete: self.error(404) return self.render('404.html') if not self.user.owner_of(post_to_delete): self.redirect("/") else: # delete post likes for like in post_to_delete.postlike_set: like.delete() # delete comment and comment likes for comment in post_to_delete.comment_set: for like in comment.commentlike_set: like.delete() comment.delete() # finally delete the post's itself post_to_delete.delete() self.redirect('/')
def post(self, post_subject): # If any user does not logged in redirect to homepage if not self.user: self.redirect('/') post_to_update = Post.find_by_subject(post_subject) # If post couldn't find redirect 404 page if not post_to_update: self.error(404) return self.render('404.html') # If user is not owner of the post, redirect with an error if not self.user.owner_of(post_to_update): self.redirect("/") else: values = { 'subject': self.request.get('subject'), 'content': self.request.get('content')} if values['subject'] and values['content']: values = { 'subject': self.request.get('subject').strip(), 'content': self.request.get('content').strip()} post_to_update.subject = values['subject'] post_to_update.content = values['content'] post_to_update.put() self.redirect(post_to_update.link_to('show')) else: errors = {} if not values['subject']: errors['subject'] = "can't be blank" if not values['content']: errors['content'] = "can't be blank" self.render("/posts/edit.html", values=values, errors=errors)
def post(self, post_subject): # If any user does not logged in redirect to homepage if not self.user: self.redirect('/') # Post page contains a form to post comments, # so a post request comes, lets put that comment into database post_to_comment = Post.find_by_subject(post_subject) # If post couldn't find redirect 404 page if not post_to_comment: self.error(404) return self.render('404.html') content = self.request.get('content').strip() if content: comment = Comment( content=content, post=post_to_comment, user=self.user) comment.put() self.redirect(post_to_comment.link_to('show')) else: errors = {'content': "can't be blank"} self.render( "/posts/post.html", post=post_to_comment, errors=errors)
def post(self, post_subject): # If any user does not logged in redirect to homepage if not self.user: self.redirect('/') post_to_update = Post.find_by_subject(post_subject) # If post couldn't find redirect 404 page if not post_to_update: self.error(404) return self.render('404.html') # If user is not owner of the post, redirect with an error if not self.user.owner_of(post_to_update): self.redirect("/") else: values = { 'subject': self.request.get('subject'), 'content': self.request.get('content') } if values['subject'] and values['content']: values = { 'subject': self.request.get('subject').strip(), 'content': self.request.get('content').strip() } post_to_update.subject = values['subject'] post_to_update.content = values['content'] post_to_update.put() self.redirect(post_to_update.link_to('show')) else: errors = {} if not values['subject']: errors['subject'] = "can't be blank" if not values['content']: errors['content'] = "can't be blank" self.render("/posts/edit.html", values=values, errors=errors)
def post(self, post_subject): # If any user does not logged in redirect to homepage if not self.user: self.redirect('/') # Post page contains a form to post comments, # so a post request comes, lets put that comment into database post_to_comment = Post.find_by_subject(post_subject) # If post couldn't find redirect 404 page if not post_to_comment: self.error(404) return self.render('404.html') content = self.request.get('content').strip() if content: comment = Comment(content=content, post=post_to_comment, user=self.user) comment.put() self.redirect(post_to_comment.link_to('show')) else: errors = {'content': "can't be blank"} self.render("/posts/post.html", post=post_to_comment, errors=errors)
def get(self, post_subject): post = Post.find_by_subject(post_subject) if not post: self.error(404) return self.render('404.html') self.render("/posts/post.html", post=post, errors=None)
def post(self, post_subject): # If any user does not logged in redirect to homepage if not self.user: self.redirect("/login") post_to_dislike = Post.find_by_subject(post_subject) # If post couldn't find redirect 404 page if not post_to_dislike: self.error(404) return self.render('404.html') if not self.user.liked_post_before(post_to_dislike): self.redirect("/") else: for like in post_to_dislike.postlike_set: if like.user.key() == self.user.key(): like.delete() break self.redirect('/')
def post(self, post_subject): # If any user does not logged in redirect to homepage if not self.user: self.redirect("/login") post_to_like = Post.find_by_subject(post_subject) # If post couldn't find redirect 404 page if not post_to_like: self.error(404) return self.render('404.html') # If user is owner of the post, redirect with an error if self.user.owner_of(post_to_like): self.redirect("/") elif self.user.liked_post_before(post_to_like): self.redirect("/") else: new_like = PostLike(post=post_to_like, user=self.user) new_like.put() self.redirect('/')
def get(self, post_subject): # If any user does not logged in redirect to homepage if not self.user: self.redirect("/login") post_to_update = Post.find_by_subject(post_subject) # If post couldn't find redirect 404 page if not post_to_update: self.error(404) return self.render('404.html') # If user is not owner of the post, redirect with an error if not self.user.owner_of(post_to_update): self.redirect("/") else: values = { 'subject': post_to_update.subject, 'content': post_to_update.content} self.render( "/posts/edit.html", post=post_to_update, values=values, errors=None)
def get(self, post_subject): # If any user does not logged in redirect to homepage if not self.user: self.redirect("/login") post_to_update = Post.find_by_subject(post_subject) # If post couldn't find redirect 404 page if not post_to_update: self.error(404) return self.render('404.html') # If user is not owner of the post, redirect with an error if not self.user.owner_of(post_to_update): self.redirect("/") else: values = { 'subject': post_to_update.subject, 'content': post_to_update.content } self.render("/posts/edit.html", post=post_to_update, values=values, errors=None)