def post(self): """ Changes the admin password. """ DA = DataAccessor() session = getSessionByRequest(self) user = getSessionUser(session) old = self.request.get("old") new = self.request.get("new") new2 = self.request.get("new2") if old != user.password: setSessionMessage(session, "Invalid Password") self.redirect("/admin") if new != new2: setSessionMessage(session, "Your new passwords did not match. Please try again.", True) else: setSessionMessage(session, "You have successfully changed your password.", False) # Reset the password DA.update(user, password=new) # Reset the session. session.generated = False session.put() self.redirect("/admin")
def post(self, key=0): """ Edits the given rating. """ DA = DataAccessor() rated = db.get(db.Key(key)) session = getSessionByRequest(self) user = getSessionUser(session) rating = getUserRating(user, rated) if (not rating) : setSessionMessage(session, "You cannot edit something you have not rated.", True) self.redirect('/student') return q = DA.getAllRatings().filter("rated =", rated) if q.count() != 1 : setSessionMessage(session, "This item is no longer editable.", True); self.redirect("/student/") return typename = rated.__class__.__name__ if typename == 'Book': isbn = self.request.get('isbn') title = self.request.get('title') author = self.request.get('author') DA.update( rated, isbn=isbn, title=title, author=author ) elif typename == 'Paper': paperType = self.request.get('paperType').upper() title = self.request.get('title') author = self.request.get('author') DA.update( rated, paperType=paperType, title=title, author=author ) elif typename == 'Course': unique = self.request.get('unique') courseNum = self.request.get('courseNum') name = self.request.get('name') semester = self.request.get('semester').upper() instructor = self.request.get('instructor') year = self.request.get('year') DA.update( rated, unique=unique, courseNum=courseNum, name=name, semester=semester, year=year, instructor=instructor ) elif typename == 'Game': platform = self.request.get('platform').upper() title = self.request.get('title') DA.update( rated, platform=platform, title=title ) elif typename in ['Internship', 'PlaceLive', 'PlaceEat', 'PlaceFun', 'PlaceLive', 'PlaceStudy'] : name = self.request.get('name') location = self.request.get('location') semester = self.request.get('semester').upper() year = self.request.get('year') DA.update( rated, name=name, location=location, semester=semester, year=year ) if (validRating(self.request.get('rating'))) : DA.update(rating, rating=int(self.request.get('rating'))) setSessionMessageByRequest(self, "Successfully updated rating.") else : setSessionMessageByRequest(self, "Invalid rating input. Keeping original", True) self.redirect('/student')