Exemplo n.º 1
0
def create():
    content = request.json

    username = content['username']
    user_exists = UsersModel.find_user_by_username(username)
    if user_exists:
        return jsonify(success=False, msg='Username already exists'), 409

    email = content['email']
    email_exists = UsersModel.find_user_by_email(email)
    if email_exists:
        return jsonify(success=False, msg='Email already used'), 409

    password = content['password']
    display_name = content['displayName']

    new_user = UsersModel(username,
                          hashlib.sha256(password.encode("utf-8")).hexdigest(),
                          email)
    new_user.save_to_db()

    new_location = LocationsModel(new_user, 0.0, 0.0)
    new_location.save_to_db()

    premade = '[{"key":"InitialGreeting","title":"Greetings","text":"Hi, this is ' + display_name + '"}]'
    new_pass = PassesModel(new_user, display_name, premade)
    new_pass.save_to_db()

    return jsonify(success=True), 200
Exemplo n.º 2
0
    def post(self):

        data = Users.parser.parse_args()

        if UsersModel.find_by_email(data['email']):
            return {
                'data': {
                    'status': False,
                    'message': "Email Already Regsitered"
                }
            }, 201

        if UsersModel.find_by_phone(data['phone_number']):
            return {
                'data': {
                    'status': False,
                    'message': "Phone Number Already Registered"
                }
            }, 201
            # return {'error': "Phone Number Already Registered"}, 400

        user = UsersModel(data['fname'], data['lname'], data['email'],
                          data['phone_number'], data['password'])
        user.save_to_db()

        return {
            'data': {
                'status': True,
                'message': "Registration Successful"
            }
        }, 201
Exemplo n.º 3
0
    def put(self, Email):
        data = self.parser.parse_args()

        user = UsersModel.find_by_Email(Email)

        if user:
            user = UsersModel(Email, **data)
            user.save_to_db()
            return user.json()
        else:
            return {'message': 'User not found.'}, 404
Exemplo n.º 4
0
    def post(self, Email):
        if UsersModel.find_by_Email(Email):
            return {'message': "An user with Email '{}' already exists.".format(Email)}, 400

        data = self.parser.parse_args()

        user = UsersModel(Email, **data)

        try:
            user.CreatedOn = datetime.utcnow()
            user.save_to_db()

        except:
            return {"message": "An error occurred while inserting the user."}, 500

        return user.json(), 201
Exemplo n.º 5
0
    def post(self):
        """
        POST method
        Adds a new account
        Return: dict (account created / message)
        """
        data = parser.parse_args()

        if not data['mail']:
            return {'message': {"mail": "Mail cant be empty"}}, 400

        if not data['google_token']:
            return {
                'message': {
                    "google_token": "Google token cant be empty"
                }
            }, 400

        if not data['role']:
            return {'message': {"role": "Role cant be empty"}}, 400

        if UsersModel.find_by_mail(data['mail']):
            return {
                'message':
                "Account with mail [{}] already exists".format(data['mail'])
            }, 409

        user = UsersModel(google_token=data['google_token'],
                          mail=data['mail'],
                          role=data['role'])

        if data['role'] != '0':
            try:
                user.save_to_db()
                return {'user': UsersModel.find_by_mail(user.mail).json()}, 201
            except:
                return {"message": "Error Description"}, 500
        else:
            try:
                user.save_to_db()
                return {'user': UsersModel.find_by_mail(user.mail).json()}, 201
            except:
                return {"message": "Error Description"}, 500
Exemplo n.º 6
0
 def init_users(self):
     user1 = UsersModel(mail='*****@*****.**',
                        google_token='juy65rfty76Hg65FVytfGGDD63ccxeDFg',
                        role=0)
     user1.country = 'España'
     user1.id_bank_data = 1234567890123456
     user1.name = 'Joan'
     user1.surname = 'Martin'
     user1.national_id_document = '23432123P'
     user1.save_to_db()
     user2 = UsersModel(mail='*****@*****.**',
                        google_token='jug65FVytfGGDD63ccxeDFg',
                        role=0)
     user2.country = 'España'
     user2.id_bank_data = 6543217890123456
     user2.name = 'Juan'
     user2.surname = 'Martínez'
     user2.national_id_document = '23845467M'
     user2.save_to_db()
Exemplo n.º 7
0
    def post(self):
        data = self.parser.parse_args()
        user = UsersModel(**data)
        user.created_by = 1
        user.created_on = datetime.now()
        user.modified_by = 0
        user.deleted_by = 0
        user.modified_on = None
        user.deleted_on = None

        try:
            validateObj = UsersModel.validateData(data, request)

            if type(validateObj) is dict:
                return {"success": False, "errors": validateObj}, 400

            if UsersModel.find_by_name(data['email']):
                return {
                    "success": False,
                    "message": "A user with that Record Name already exists"
                }, 400
            name = data['email']
            if name.strip():
                user.save_to_db()
                user.token = encodeID(user.user_id)
                user.save_to_db()
            else:
                return {
                    "success": False,
                    "message": "String Should not be empty"
                }
        except Exception as e:
            return {
                "message":
                "An error occurred creating the Record.'{}'".format(e)
            }, 500
        return user.json(), 201
	def post(self):


		data = Users.parser.parse_args()

		if UsersModel.find_by_email(data['email']):
			return {'data':{'status': False,
							'message': "Email Already Regsitered"}}, 201

		if UsersModel.find_by_phone(data['phone_number']):
			return {'data':{'status': False,
							'message': "Phone Number Already Registered"}}, 201
			# return {'error': "Phone Number Already Registered"}, 400

		if data['register_ref'] == "0":
			
			refcode = UsersModel.getRefCode(data['fname'])
			user = UsersModel(data['fname'], data['lname'], data['email'], data['phone_number'], data['password'],refcode, data['register_ref'],0,"fcm")
			try:
				user.save_to_db()
			except:
				return {'message': "An Error Occured"}, 500

			return {'data':{'status': True, 'message': "Registration Successful"}}, 201


		else:
			user_ref =  UsersModel.find_by_refcode(data['register_ref'])
			if user_ref is not None:
				no = user_ref.register_ref_no
				if no == 2:
					return {'data': {'status': False,
								'message': "User Crossed his/her Limit"}}
					#refernece code cannot be added. User crosseds the limit

				elif no < 2:
					no = no + 1
					user_ref.register_ref_no = no

					try:
						db.session.commit()
					except:
						return {'message': "An Error Occured"}, 500

					userpromo = UserPromoModel(user_ref.id, "REF020", "2018-12-12", False)
					
					try:
						userpromo.save_to_db()
					except:
						return {'message': "User promo table Error"}, 500
					refcode = UsersModel.getRefCode(data['fname'])
					user = UsersModel(data['fname'], data['lname'], data['email'], data['phone_number'], data['password'],refcode, data['register_ref'],0,"fcm")

					try:
						user.save_to_db()
						user_id_for_promo = user.id
						userpromo_u = UserPromoModel(user_id_for_promo, "REF010", "2018-12-12", False)
						userpromo_u.save_to_db()
					except:
						return {'message': "An Error Occured"}, 500

					return {'data':{'status': True, 'message': "Registration Successful"}}, 201
			else:
				return {'data': {'status': False,
								'message': "Reference Code Invalid"}}