Esempio n. 1
0
	def login(self, username, password):
		checkData(locals())

		if len(password) == 0 or len(username) == 0:
			raise MissingInputDataError("Insert username and password!")

		from app.backend.controller.usersManager import UsersManager

		usersManager = UsersManager()

		try:
			user = usersManager.getUser(username, password)
			sessionKey = self.__generateSessionKey()
			userUuid = user.uuid
			expireTimestamp = datetime.datetime.now() + datetime.timedelta(days=1)
			
			session = Session(sessionKey = sessionKey, userUuid = userUuid, expireTimestamp = expireTimestamp)
			
			try:
				session.store()
				sessionData = {"sessionKey" : sessionKey, "userUuid" : userUuid}
				return sessionData
			except SessionCreationError as e:
				raise e
			else:
				return None

		except UserNotFoundError as e:
			raise e
		else:
			return None
Esempio n. 2
0
def registerUser(username=None):

    if request.method == "POST":

        sessionKey = validateInput(request.form["sessionKey"])
        userUuid = validateInput(request.form["userUuid"])

        creatorUuid = userUuid
        newUserUsername = username
        newUserPassword = request.form["password"]
        newUserEmail = request.form["email"]
        newUserPersonName = request.form["personName"]
        newUserLevel = request.form["level"]

        try:
            session = SessionManager()
            session.checkSessionValidity(sessionKey, userUuid)
            userManager = UsersManager()
            return returnResult(
                userManager.register(
                    creatorUuid, newUserUsername, newUserPassword, newUserEmail, newUserPersonName, newUserLevel
                )
            )
        except Exception as e:
            return returnError(e)
Esempio n. 3
0
	def logout(self, username):
		checkData(locals())

		from app.backend.controller.usersManager import UsersManager
		usersManager = UsersManager()		
		user = usersManager.getUser(username)
		userUuid = user.uuid

		session = Session(userUuid = userUuid)
		session.retrieve()

		session.delete()

		return {}
Esempio n. 4
0
def userBuildings(username=None):

    if request.method == "POST":

        sessionKey = validateInput(request.form["sessionKey"])
        userUuid = validateInput(request.form["userUuid"])

        try:
            session = SessionManager()
            session.checkSessionValidity(sessionKey, userUuid)
            userManager = UsersManager()
            return returnResult(userManager.getBuildingList(username))
        except Exception as e:
            return returnError(e)
Esempio n. 5
0
def register(username=None):

    if request.method == "POST":

        password = validateInput(request.form["password"])
        personName = validateInput(request.form["personName"])
        email = validateInput(request.form["email"])

        usersManager = UsersManager()

        try:
            return returnResult(
                usersManager.registerTemporary(
                    newUserUsername=username, newUserPassword=password, newUserEmail=email, newUserPersonName=personName
                )
            )

        except Exception as e:
            return returnError(e)