Beispiel #1
0
    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")
Beispiel #2
0
    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')