def post(self, post_id): #comment content = self.request.get('content') #check if post exists if not self.post_exists(post_id): page_error = 'This post does not exist !' return self.render('login-form.html', page_error = page_error) #Check if user is logged in if self.user: u = self.user.name author = User.by_name(u) post = Post.by_id(post_id) #Check if user wrote comment if content: c = Comment(author = author, post = post, content = content ) c.put() time.sleep(0.1) self.redirect('/%s' %str(c.post.key().id())) else: page_error = "content, please!!" self.render('permalink.html', page_error = page_error, post = post) #User is redirected to login else: page_error = "You must login in to comment!" self.render('login-form.html', page_error = page_error)
def get(self, post_id): post_key = db.Key.from_path('Post', int(post_id)) post = db.get(post_key) #Get all comments for post id comments = Comment.all().filter('post =', post_key) comments.order("-created") #check if post exists if not self.post_exists(post_id): page_error = 'This post does not exist !' return self.render('login-form.html', page_error = page_error) user_id = self.read_secure_cookie('user_id') author_id = post.author.key().id() edit = False #check if logged in user is the author of the post #if the user is the author he can edit and/or delete the post if user_id: if (long(user_id) == author_id): edit = True #number of likes post = Post.by_id(post_id) likes = Like.all().filter('post =', post).count() self.render("permalink.html", post = post, comments = comments, edit = edit, likes = likes)
def get(self, post_id): if self.user: postid = int(post_id) blog = Post.by_id(postid) title = blog.subject self.render_front(title=title) else: self.redirect('/login')
def post(self): blogid = self.request.get_all('delete-post') for bid in blogid: postid = int(bid) b = Post.by_id(postid) if b.author == self.user.name: b.delete() else: error = "You can only delete blogs you created!" self.render("delete-post.html", error=error) self.redirect('/welcome')
def get(self, post_id): if self.user: postid = int(post_id) blog = Post.by_id(postid) if blog.author != self.user.name: error = "" self.render("like-post.html", blog=blog, error=error) else: error = "You cannot Like/Unlike your own posts!" self.render("like-post.html", blog=blog, error=error) else: self.redirect('/login')
def get(self, post_id): post_key = db.Key.from_path('Post', int(post_id)) post = db.get(post_key) #Check if user is logged in if self.user: user_id = self.read_secure_cookie('user_id') author_id = post.author.key().id() u = self.user.name #check if user has permission to like this post if long(user_id) != author_id: user = User.by_name(u) user_key = self.user.key() post = Post.by_id(post_id) likes = Like.all().filter('post =', post) #Check if user has already liked this post hasLiked = False for l in likes: if l.user.key() == user_key: hasLiked = True if not hasLiked: like = Like(user=user, post=post) like.put() count = Like.all().filter('post =', post).count() #count += 1 self.render("like.html", like=like, count=count, post=post) else: count = Like.all().filter('post =', post).count() page_error = "You have already liked this post" self.render("like.html", count=count, page_error=page_error, post=post) else: page_error = 'You can not like your own posts' self.render('like.html', page_error=page_error, post=post) else: error = 'please login' self.render('login-form.html', error=error, post=post)
def post(self, post_id): postid = int(post_id) blog = Post.by_id(postid) error = "" if self.user.name != blog.author: if self.user.name in blog.likes_post: error = "You have already Liked this Post!" self.render("like-post.html", blog=blog, error=error) elif self.user.name in blog.dislikes_post: error = "You have already Un-Liked this Post!" self.render("like-post.html", blog=blog, error=error) else: blog.likes_post.append(self.user.name) blog.put() self.redirect('/welcome')
def get(self, post_id): if self.user: postid = int(post_id) blog = Post.by_id(postid) if not blog: self.error(404) return username = self.user.name if blog.author == username: self.render_front(blog.subject, blog.content) else: error = "You can only blogs created by you!" self.render_front(error=error) else: self.redirect('/login')
def post(self, post_id): if self.user: content = self.request.get('content') postid = int(post_id) blog = Post.by_id(postid) title = blog.subject if content: comment = Comment(title=title, content=content, created_by=self.user.name, post_id=postid) comment.put() self.redirect('/comment') else: error = "We need some content for the comment" self.render_front(title, content, error) else: self.redirect('/login')
def post(self, post_id): subject = self.request.get('subject') content = self.request.get('content') if subject and content: postid = int(post_id) b = Post.by_id(postid) if b.author == self.user.name: b.subject = subject b.content = content b.author = self.user.name b.put() self.redirect('/blog/%s' % str(b.key().id())) else: error = "You can only edit blogs created by you" self.render_front(error=error) else: error = "We need both a subject and some content" self.render_front(subject, content, error)