def post(self, post_id, vote_default): post = post_exist(post_id) v = vote_exist(post_id, self.user.name) voteresult = self.request.get('voteresult') if not vote_default: vote_default = "votepost" if post: if self.user.name == post.created_by: error = "You cannot Like your own Post" self.render("errorpost.html", p=post, error=error) elif v.count() > 0: error = "You have already voted" self.render("errorpost.html", p=post, error=error) elif not voteresult: error = "You did not vote" + voteresult self.render(vote_default + ".html", p=post, error=error) else: v = Vote(parent=blog_key(), username_fk=self.user.name, post_id_fk=int(post_id), content=voteresult) v.put() self.redirect('/blog/%s' % post_id) else: self.redirect("/blog")
def post(self, post_id): post = post_exist(post_id) v = vote_exist(post_id, self.user.name) if post: if self.user.name == post.created_by: error = "You cannot Like your own Post" self.render("errorpost.html", p=post, error=error) elif v: error = "You have already voted" self.render("errorpost.html", p=p, error=error) else: v = Vote(parent=blog_key(), user_fk=user, post_fk=post, content="Like") v.put() self.redirect('/blog/%s' % post_id) else: self.redirect("/blog")
def post(self): token_string = self.request.get("token") token = Token.query(Token.value == token_string).get() if not token: template = jinja_environment.get_template("templates/error.html") self.response.out.write(template.render({'errmsg': "invalid voting token"})) return if token.used: template = jinja_environment.get_template("templates/error.html") self.response.out.write(template.render({'errmsg': "You've already voted!"})) return game = token.game voter = token.voter three = self.request.get("three") two = self.request.get("two") one = self.request.get("one") if one in [two, three] or two == three: return self.redirect("/vote/" + token.value + "?err=" + str(ERROR_DUPLICATE_VOTE)) if str(voter.id()) in [one, two, three]: return self.redirect("/vote/" + token.value + "?err=" + str(ERROR_VOTE_FOR_SELF)) three_player = Player.get_by_id(int(three)) two_player = Player.get_by_id(int(two)) one_player = Player.get_by_id(int(one)) vote = Vote(game=game, three=three_player.key, two=two_player.key, one=one_player.key) token.used = True vote.put() token.put() template = jinja_environment.get_template('templates/success.html') self.response.out.write(template.render({}))