示例#1
0
def create_user(user_type, user_dict):
    
    user_dict["password"] = hashlib.md5(user_dict["password"]).hexdigest()
    if user_type == "scholar":
        new_user = ScholarUser(**user_dict)
    else :
        new_user = DonorUser(**user_dict)
    Session.add(new_user)
    Session.commit()

    return new_user
示例#2
0
def valid_login(email, password):
    password = hashlib.md5(password).hexdigest()
    try:
        user = Session.query(User).filter(User.email==email).\
                filter(User.password==password).one()
    except:
        user = False
    return user
示例#3
0
    def profile_update(self):
        user = ScholarUser.by_id(session['user']['id'])
        profile = Profile.by_user_id(session['user']['id'])
        
        if 'school' in request.params :
            school = School.by_name(request.params['school'])
            if not school:
                school = create_school(request.params['school'])
            profile.school = school
            profile.school_id = school.id
        if 'major' in request.params :
            profile.major = request.params['major']
        if 'gpa' in request.params : 
            profile.gpa = request.params['gpa']
        if 'hometown' in request.params :
            profile.hometown = request.params['hometown']
        #birthdate
        #race
        #religion
        #activities
        Session.add(profile)
        Session.commit()

        return "Profile updated."
示例#4
0
    def create(self):
        user = User.by_name(username=request.params['username'])
        if user:
            # The client tried to create a user that already exists
            abort(409, '409 Conflict',
                  headers=[('location', url('user', id=user.username))])  

        user_dict = {}
        for param in request.params:
            if param == "user_type":
                 user_type = request.params[param]
            else :
                user_dict[param] = request.params[param]
        
        new_user = create_user(user_type, user_dict)
        
        #new_user does not have a user id until after commit
        if user_type == "scholar":
            Session.add(Profile(new_user))
            Session.commit()
          
        session["user"] = {"id": new_user.id, "name": "%s %s" % (new_user.firstname, new_user.lastname)}
        session.save()
        return redirect("/"+user_type+"/")
示例#5
0
 def by_user_id(cls, user_id):
     try:
         profile = Session.query(cls).filter(cls.user_id==user_id).one()
     except orm.exc.NoResultFound:
         profile = False
     return profile
示例#6
0
 def by_id(cls,user_id):
     try:
         user = Session.query(cls).filter(cls.id==user_id).one()
     except orm.exc.NoResultFound:
         return False
     return user
示例#7
0
 def by_name(cls,username):
     try:
         user = Session.query(cls).filter(cls.username==username).one()
     except orm.exc.NoResultFound:
         return False
     return user
示例#8
0
def create_school(name):
    school = School(name)
    Session.add(school)
    Session.commit()
    return school
示例#9
0
 def by_name(cls, name):
     try:
         school = Session.query(cls).filter(cls.name==name).one()
     except orm.exc.NoResultFound:
         school = False
     return school