Пример #1
0
    def handleVerifyUser(self):

        db = SportEventsDB() 
        
        # get the content length (in bytes)
        length = self.headers["Content-Length"]

        # read the body to a string
        body = self.rfile.read(int(length)).decode("utf-8")
        print("Body: ", body)
        # print the body as a string
        
        parsed_body = parse_qs(body)
        print("parsed body", parsed_body)

        email = parsed_body["email"][0]  #copy each for column heading 
        plain_password = parsed_body["password"][0]

        user = db.getOneUserEmail(email)
        
        if user != None:
            if bcrypt.verify(plain_password, user["encpass"]):
                id = user["id"]
                self.session["userid"] = id
                self.send_response(201)
                self.end_headers()
            else:
                # status code 401
                self.handleNotAuthorized()

        else:
            # status code 401
            self.handleNotAuthorized()
Пример #2
0
    def handleCreateSportEvents(self):

        # get the content length (in bytes)
        length = self.headers["Content-Length"]

        # read the body to a string
        body = self.rfile.read(int(length)).decode("utf-8")
        print("Body: ", body)
        # print the body as a string

        parsed_body = parse_qs(body)
        print("parsed body", parsed_body)

        league = parsed_body["league"][0]  #copy each for column heading
        teamname = parsed_body["teamname"][0]
        conferance = parsed_body["conferance"][0]
        teamrank = parsed_body["teamrank"][0]
        location = parsed_body["location"][0]
        mascot = parsed_body["mascot"][0]

        db = SportEventsDB()
        db.insertSportsEvent(league, teamname, conferance, teamrank, location,
                             mascot)

        # respond to the client
        self.send_response(201)
        self.send_header("Access-Control-Allow-Origin", "*")
        self.end_headers()
Пример #3
0
    def handleCreateUsers(self):
        db = SportEventsDB() 
        
    # get the content length (in bytes)
        length = self.headers["Content-Length"]

        # read the body to a string
        body = self.rfile.read(int(length)).decode("utf-8")
        print("Body: ", body)
        # print the body as a string
        
        parsed_body = parse_qs(body)
        print("parsed body", parsed_body)

        email = parsed_body["email"][0]  #copy each for column heading 
        fname = parsed_body["fname"][0]
        lname= parsed_body["lname"][0]
        req_password= parsed_body["password"][0]

        if db.getOneUserEmail(email) == None:

            encryptpassword = bcrypt.hash(req_password)
            db.insertUserRegistration(fname,lname,email,encryptpassword)
            # respond to the client
            self.send_response(201)
            self.end_headers()

        else:
            # status code 422
            self.handleUnprocessableAction()
Пример #4
0
    def RetrieveOneEvent(self):
        parts = self.path.split("/")
        sports_id = parts[2]
        db = SportEventsDB()
        sport = db.getOneSportEvent(sports_id)

        if sport != None:
            self.send_response(200)
            self.send_header("Content-Type", "application/json")
            self.send_header("Access-Control-Allow-Origin", "*")
            self.end_headers()
            self.wfile.write(bytes(json.dumps(sport), "utf-8"))
        else:
            self.handleNotFound()
Пример #5
0
    def RetrieveSportEvents(self):
        # respond accordingly
        self.send_response(200)
        self.send_header("Content-Type", "application/json")
        self.send_header("Access-Control-Allow-Origin", "*")

        # allow acces the over to other servers
        self.end_headers()

        # read from the database
        db = SportEventsDB()
        sports = db.getSportsEvents()

        # send a body
        self.wfile.write(bytes(json.dumps(sports), "utf-8"))
Пример #6
0
    def HandleDeleteOneEvent(self):
        parts = self.path.split("/")
        sport_id = parts[2]
        db = SportEventsDB()
        sport = db.getOneSportEvent(sport_id)

        if sport != None:
            db.DeleteSportEvent(sport_id)
            self.send_response(200)
            self.send_header("Content-Type", "application/json")
            self.send_header("Access-Control-Allow-Origin", "*")
            self.end_headers()

        else:
            self.handleNotFound()
Пример #7
0
    def RetrieveOneEvent(self):
                
        if "userid" not in self.session:
            self.handleNotAuthorized()
            return

        parts = self.path.split("/")
        sports_id = parts[2]
        db = SportEventsDB()
        sport = db.getOneSportEvent(sports_id)

        if sport != None:
            self.send_response(200)
            self.send_header("Content-Type", "application/json")
            self.end_headers()
            self.wfile.write(bytes(json.dumps(sport), "utf-8"))
        else:
            self.handleNotFound()
Пример #8
0
    def HandleDeleteOneEvent(self):
        
        if "userid" not in self.session:
            self.handleNotAuthorized()
            return

        parts = self.path.split("/")
        sport_id = parts[2]
        db = SportEventsDB()
        sport = db.getOneSportEvent(sport_id)

        if sport != None:
            db.DeleteSportEvent(sport_id)
            self.send_response(200)
            self.send_header("Content-Type", "application/json")
            self.end_headers()
            
        else:
            self.handleNotFound()
Пример #9
0
    def handleUpdateOneEvent(self):
        
        if "userid" not in self.session:
            self.handleNotAuthorized()
            return

        parts = self.path.split("/")
        sports_id = parts[2]
        db = SportEventsDB()
        sport = db.getOneSportEvent(sports_id)

        if sport != None:

            # respond to the client
            self.send_response(200)
            self.send_header("Content-Type", "application/json")
            self.end_headers()
            self.wfile.write(bytes(json.dumps(sport), "utf-8"))

            length = self.headers["Content-Length"]

            # read the body to a string
            body = self.rfile.read(int(length)).decode("utf-8")
            print("Body: ", body)
            # print the body as a string
            
            parsed_body = parse_qs(body)
            print("parsed body", parsed_body)

            league = parsed_body["league"][0]  #copy each for column heading 
            teamname = parsed_body["teamname"][0]
            conferance = parsed_body["conferance"][0]
            teamrank = parsed_body["teamrank"][0]
            location = parsed_body["location"][0]
            mascot = parsed_body["mascot"][0]
   
            db.UpdateSportEvent(league,teamname,conferance,teamrank,location,mascot,sports_id)

            self.send_response(200)
            self.end_headers()

        else:
            self.handleNotFound()
Пример #10
0
    def RetrieveSportEvents(self):

        if "userid" not in self.session:
            self.handleNotAuthorized()
            return

        # respond accordingly
        self.send_response(200)
        self.send_header("Content-Type", "application/json")

        # allow acces the over to other servers
        self.end_headers()

        # read from the database
        db = SportEventsDB()
        sports = db.getSportsEvents()

        # send a body
        self.wfile.write(bytes(json.dumps(sports), "utf-8"))
Пример #11
0
def run():

    db = SportEventsDB()
    db.createUserTable()
    db.createSportTable()
    db = None # disconnect

    port = 8080
    if len(sys.argv) > 1:
        port = int(sys.argv[1])

    listen=("0.0.0.0",port)
    server=HTTPServer(listen, MyRequestHandler)

    print("Server listening on","{}:{}".format(*listen))
    server.serve_forever()