Пример #1
0
 def post(self):
     if self.get_argument("auth")=="PCBOSS":
         requestType = self.get_argument("type")
         if requestType == "add_user":
             email = self.get_request("email")
             password = self.get_argument("password")
             first_name = self.get_argument("first_name")
             last_name = self.get_argument("last_name")
             if Database.addUser(email, Encryption.pwdHash(password), first_name, last_name):
                 self.write("Success")
             else:
                 self.write("Failure")
         elif requestType == "list_jobs":
             self.write(str(Database.listJobs()))
         elif requestType == "request_file":
             filenum = self.get_argument("file_number")
             self.write(str(Database.getJob(filenum)))
         elif requestType == "update_job_status":
             filenum = int(self.get_argument("file_number"))
             status = self.get_argument("status")
             Database.updateStatus(filenum, status)
         elif requestType == "recent_file":
             self.write(str(Database.mostRecentFile()))
         elif requestType == "recent_file_timestamp":
             self.write(str(Database.mostRecentTimestamp()))
         elif requestType == "get_users":
             self.write(str(Database.listUsers()))
         elif requestType == "edit_user":
             email = self.get_argument("email")
             fname = self.get_argument("first_name")
             lname = self.get_argument("last_name")
             pword = self.get_argument("password")
             Database.updateAccount(email, fname, lname, pword)
     else:
         self.write("Error: Unrecognized Request")
Пример #2
0
def authUser(uname, pwd):
    pwdHash = Encryption.pwdHash(pwd)
    if Database.isValid(uname,pwdHash):
        token = Encryption.sessionToken()

        #It's almost impossibly unlikely that we'll wind up with two identical tokens,
        #but if we did, it would be a hard bug to find.
        while token in validTokens:
            token = Encryption.sessionToken()
        validTokens[token] = uname
        return token
    return False
Пример #3
0
def authUser(uname, pwd):
    pwdHash = Encryption.pwdHash(pwd)
    if Database.isValid(uname,pwdHash):
        token = Encryption.sessionToken()

        #It's almost impossibly unlikely that we'll wind up with two identical tokens,
        #but if we did, it would be a hard bug to find.
        while not memcache.get(token) == None:
            token = Encryption.sessionToken()
        memcache.set(key=token, value=uname, time=KEY_STORE_TIME)
        return token
    return False
Пример #4
0
def updateAccount(token, fname, lname, pwd=False):
    if pwd:
        pwdHash = Encryption.pwdHash(pwd)
        Database.updateAccount(getUser(token), fname, lname, pwdHash)
    else:
        Database.updateAccount(getUser(token), fname, lname)