def get(self): donation_id = self.request.get("donationid", "") if donation_id == "": self.redirect('/donations/') return donation = Donation.get_by_id(int(donation_id)) if donation is None: self.redirect('/donations/') return owner = False user = UserData.current() if user is not None: if user.user_id == donation.created_by.user_id: logging.info("owner!") owner = True action = self.request.get("action") if action == "deletedonation": donation.delete() elif action == "deleteplea": id = self.request.get("id", "") if id == "": self.redirect('/donations/') return # user = UserData.current().user_id # if user != donation.created_by.user_id or user == plea.user.user_id): # self.redirect('/donation/%s' % donation_id) delete_model("Plea", int(id)) self.redirect('/donation/%s' % donation_id) donation.update_plea_count() return elif action == "acceptplea": pleaid = self.request.get("pleaid", "") if pleaid == "": return self.redirect('/donations/') # user = UserData.current() donation.accept_plea(pleaid) # inform pleas that donation is closed # self.redirect('/donation/%s' % donation_id) return self.render("donationview.html", donation=donation, owner=owner) elif action == "closedonation": if not donation.close_donation(): return self.redirect('/donations/') return self.render("donationview.html", donation=donation, owner=owner) logging.info("test2") return self.redirect('/donations/')
def get(self, id): donation = Donation.get_by_id(int(id)) if donation is None: self.redirect('/') owner = False user = UserData.current() if user is not None: if user.user_id == donation.created_by.user_id: owner = True self.render("donationview.html", donation=donation, login_url="/donation/%s" % id, owner=owner)
def post(self): action = self.request.get("action") if action == "newdonation": user = UserData.current() group_id = self.request.get("group") title = self.request.get("title") body = self.request.get("body") # logging.info(repr(body)) body = body.replace("\r\n", "<br />") tmp = self.request.get("specs") logging.info(repr(tmp)) # logging.info() specs = """<ul>""" for spec in tmp.split("\r\n"): # logging.info(spec) if spec != "": specs += """<li>%s</li>""" % spec specs += """</ul>""" logging.info(specs) donation = Donation.create_donation(user=user, group=db.Key.from_path("Group", group_id), specs = str(specs), title=title, body=body) if donation is None: self.redirect('/group/%s' % group_id) return self.redirect('/donation/%s' % donation.key().id()) return if action == "newplea": user = UserData.current() donationid = self.request.get("donationid") donation = Donation.get_by_id(int(donationid)) title = self.request.get("title") body = self.request.get("body") plea = Plea.new_plea(user=user, donation=donation, title=title, body=body) self.redirect('/donation/%s' % donationid) return self.redirect('/donations/')