Esempio n. 1
0
def addPatient(request):
    try:
        if request.method=="GET" and request.session.get('user_id') and request.session.get('role_id')==1:
            return render(request,"doctorsView/registerUser.html");
        elif request.method=="POST" and request.session.get('user_id') and request.session.get('role_id')==1:
            logger.debug("Obtaining db fields")
            registration = Users()
            registration.first_name = request.POST.get('FirstName')
            registration.last_name = request.POST.get('LastName')
            registration.email = request.POST.get('email')
            registration.user_id = request.POST.get('email')
            registration.dob = request.POST.get('dob')
            registration.address = request.POST.get('address')
            registration.password = "******"
            registration.gender=request.POST.get('gender')
            registration.marital_status=request.POST.get('inputMaritalStatus')
            registration.height= request.POST.get('inputHeight')
            registration.weight=request.POST.get('inputWeight')
            registration.blood_type=request.POST.get('inputBloodType')
            registration.phone_number=request.POST.get('inputPhone')
            # need to convert to a timezone as it throws an exception
            registration.date_created = datetime.datetime.now()
            registration.date_modified = datetime.datetime.now()
            registration.save()
            saved_details = Users.objects.get(id=registration.id)
            send_mail('HealthCareWeb registration', 'Hi,\n You have successfully registered for Enhanced Health Care Web.Please find below the username:'******' \n password:'******'*****@*****.**', [saved_details.email], fail_silently=True)
                #saved_details=User.objects.filter(id=created_id).values()
                #serialized_obj = serializers.serialize('json', [ saved_details, ])
            #return JsonResponse({"email":saved_details.email,"id":saved_details.id})
            return HttpResponseRedirect(reverse('addSensor')+'?email='+saved_details.email)
        else:
            return render(request, 'index.html')
    except HTTPError:
                logger.debug("Error Handling Registration")
                return "Error"
Esempio n. 2
0
def add_users():
    if request.method == "POST":

        username = request.json['username']

        if Users.query.filter_by(username=username).first():
            return make_response({"err": "user already exist"}, 400)

        new_user = Users()
        new_user.email = request.json["email"]
        new_user.username = request.json["username"]
        new_user.fname = request.json["fname"]
        new_user.lname = request.json["lname"]
        new_user.role = request.json["role"]

        db.session.add(new_user)
        db.session.commit()

        token = ''.join(
            random.choices(string.ascii_uppercase + string.digits, k=20))

        user_authentication = UserAuthentication()
        user_authentication.username = username
        user_authentication.token = token
        db.session.add(user_authentication)
        db.session.commit()

        return make_response(
            {
                "user": UserSchema().dump(new_user),
                "token": token
            }, 200)

    all_users = Users.query.all()
    return make_response({"user": UserSchema(many=True).dump(all_users)}, 200)
Esempio n. 3
0
def register():
    if not request.is_json:
        return jsonify({"msg": "Formato invalido!"}), 400

    email = request.json.get('email', None)
    password = request.json.get('password', None)

    if not email or email == '':
        return jsonify({"msg": "Ingresa un correo valido!"}), 400
    if not password or password == '':
        return jsonify({"msg": "Ingresa un password!"}), 400

    users = Users.query.filter_by(email=email).first()
    if users:
        return jsonify({"msg": "Usuario ya existe!"}), 400

    users = Users()
    users.email = email
    users.password = bcrypt.generate_password_hash(password)
    users.role_id = 2

    db.session.add(users)
    db.session.commit()

    access_token = create_access_token(identity=users.email)
    data = {"access_token": access_token, "users": users.serialize()}

    return jsonify(data), 201
Esempio n. 4
0
def register():
    if not request.is_json:
        return jsonify({"msg": "Invalid format"}), 400

    email = request.json.get('email', None)
    password = request.json.get('password', None)

    if not email or email == '':
        return jsonify({"msg": "ERROR: Enter correct mail"}), 400
    if not password or password == '':
        return jsonify({"msg": "ERROR: Enter correct password"}), 400

    users = Users.query.filter_by(email=email).first()
    if users:
        return jsonify({"msg": "ERROR: Username all ready exist"}), 400

    users = Users()
    users.email = email
    users.password = bcrypt.generate_password_hash(password)
    users.role_id = 2

    db.session.add(users)
    db.session.commit()

    access_token = create_access_token(identity=users.email)
    data = {"access_token": access_token, "users": users.serialize()}

    return jsonify(data), 201
Esempio n. 5
0
def sign_up():
    global currentUser
    # ---- creating user ----
    errors = []

    user = Users()
    user.name = request.form['form-first-name']
    user.lastname = request.form['form-last-name']
    user.email = request.form['form-email']
    user.set_password(request.form['form-newpassword'])

    if not user.name:
        errors.append('You must introduce your name')

    if not user.lastname:
        errors.append('You must introduce your lastname')

    if not user.email:
        errors.append('You must introduce an email')

    if not errors:
        db.session.add(user)
        try:
            db.session.commit()
        except IntegrityError:
            # User Error
            return render_template('login.html', flag='signup', error='An error has occurred')
    else:
        return render_template('login.html', flag='signup', errors=errors)

    currentUser = user
    session['logged_in'] = True

    return render_template('new_home.html', user=user.email)
Esempio n. 6
0
def gettoken(request):
    auth_code = request.GET["code"]
    redirect_uri = request.build_absolute_uri(reverse("oauth:gettoken"))
    token = get_token_from_code(auth_code, redirect_uri)
    access_token = token["access_token"]
    user = get_me(access_token)
    refresh_token = token["refresh_token"]

    #expires_in is in seconds
    expires_in = token["expires_in"]

    expiration = int(time.time()) + expires_in - 120

    #saving the session
    request.session['access_token'] = access_token
    request.session['refresh_token'] = refresh_token
    request.session['token_expires'] = expiration
    #npuser = new_possible_user
    npuser = Users()
    global current_user
    current_user = user['mail']
    npuser.email = user['mail']
    npuser.username = user['displayName']
    try:
        npuser.save()
    except:
        pass
    return HttpResponseRedirect(reverse('oauth:token'))
Esempio n. 7
0
def register():
    if request.method == "POST":
        email = request.json.get("email", None)
        name = request.json.get("name", None)
        first_lastname = request.json.get("lastname1", None)
        second_lastname = request.json.get("lastname2", None)
        password = request.json.get("password", None)

        if not email or email == "":
            return jsonify({"msg": "El email es requerido"}), 400

        if not name or name == "":
            return jsonify({"msg": "Debes indicar tu nombre"}), 400

        if not first_lastname or first_lastname == "":
            return jsonify({"msg": "Debes indicar tu apellido paterno"}), 400

        if not second_lastname or second_lastname == "":
            return jsonify({"msg": "Debes indicar tu apellido materno"}), 400

        if not password or password == "":
            return jsonify({"msg": "La contrasena es requerida"}), 400

        user = Users.query.filter_by(email=email).first()
        if user:
            return jsonify({"msg": "El email ya existe"}), 400

        if "avatar" in request.files:
            avatar = request.files["avatar"]
            if avatar.filename != "":
                if allowed_images_file(avatar.filename):
                    filename = secure_filename(avatar.filename)
                    avatar.save(
                        os.path.join(
                            os.path.join(app.config['UPLOAD_FOLDER'],
                                         "img/avatar"), filename))
                else:
                    return jsonify({"msg": "Image not allowed"})

        user = Users()
        user.email = email
        user.name = name
        user.first_lastname = first_lastname
        user.second_lastname = second_lastname
        user.password = bcrypt.generate_password_hash(password)

        if "avatar" in request.files:
            user.avatar = filename

        db.session.add(user)
        db.session.commit()

        html = render_template("emails/email-register.html", user=user)

        #send_mail("Registro de usuario", user.email, user.username, html)

        access_token = create_access_token(identity=user.email)
        data = {"access_token": access_token, "user": user.serialize()}
        return jsonify(data), 200
Esempio n. 8
0
def generate_user():
    user = Users()
    user.name = FAKER_GENERATOR.first_name()
    user.lastname = FAKER_GENERATOR.last_name()
    user.email = FAKER_GENERATOR.email()
    user.set_password(FAKER_GENERATOR.password())

    return user
Esempio n. 9
0
def loadadmin():
    users = Users()
    users.email = "*****@*****.**"
    users.password = bcrypt.generate_password_hash("123456")
    users.role_id = "1"

    db.session.add(users)
    db.session.commit()

    print("Administrador Creado! Buena Suerte!")
Esempio n. 10
0
def loadadmin():
    users = Users()
    users.email = "*****@*****.**"
    users.password = bcrypt.generate_password_hash("123456")        #Its obviously the first change that I make into my webpage is to change this password of my account
    users.role_id = "1"

    db.session.add(users)
    db.session.commit()

    print("Hola Jero! Volviste! Buena suerte programando!")
Esempio n. 11
0
def create_user():
    req = json.loads(json.dumps(request.get_json()))
    user = Users()
    user.username = req["username"]
    user.email = req["email"]
    mem_role = Role.query.filter_by(name='Member').first()
    user.roles.append(mem_role)
    user.password = req["password"]
    db.session.add(user)
    db.session.commit()
    return ("Sucess")
Esempio n. 12
0
 def post(self):
     if self.request.get('name') != ''\
        and self.request.get('email') != ''\
        and self.request.get('password1') != ''\
        and self.request.get('password2') != ''\
     and (self.request.get('password1') == self.request.get('password2')):
         user = Users()
         user.name = self.request.get('name')
         user.email = self.request.get('email')
         user.password = hashlib.md5(self.request.get('password1')).hexdigest()
         user.put()
         self.redirect('/adduser_form')
     else:
         template_values = {
             'error': 'error',
         }
         path = os.path.join(os.path.dirname(__file__), 'templates/add_user.html')
         self.response.out.write(template.render(path, template_values))
Esempio n. 13
0
 def post(self):
     fb_user = facebook.get_user_from_cookie(self.request.cookies, APP_ID, APP_SECRET)
     if fb_user:
         access_token = fb_user['access_token']
         url = urlfetch.fetch("https://graph.facebook.com/me?access_token=" + access_token, method=urlfetch.GET, deadline=20)
         profile = json.loads(url.content)
         self.response.out.write("Welcome " + profile['name'])
         query = Users.all()
         query.filter("accessToken = ", access_token)
         if query.get():
             pass
         else:
             user = Users()
             user.facebookID = profile['id']
             user.email = db.Email(profile['email'])
             user.accessToken = access_token
             user.put()
             self.response.out.write("<br>You are now added to the database")
             taskqueue.add(url='/birthdays', params={"email": profile['email'], "access_token": access_token})
Esempio n. 14
0
def user_register(request):
	curtime=get_datetimenow();
	
	if request.user.is_authenticated():
		return HttpResponseRedirect("/register/")
	try:
		if request.method=='POST':
			username=request.POST.get('username','')
			password1=request.POST.get('password1','')
			password2=request.POST.get('password2','')
			email=request.POST.get('email','')
			nickname=request.POST.get('nickname','')
			errors=[]
			
			registerForm=RegisterForm({'username':username,'password1':password1,'password2':password2,'email':email,'nickname':nickname})
			if not registerForm.is_valid():
				errors.extend(registerForm.errors.values())
				return render(request,"register.html",{'curtime':curtime,'username':username,'email':email,'nickname':nickname,'errors':errors})
			if password1!=password2:
				errors.append(u"两次输入的密码不一致!")
				return render(request,"register.html",{'curtime':curtime,'username':username,'email':email,'nickname':nickname,'errors':errors})
				
			filterResult=Users.objects.filter(username=username)#c************
			if len(filterResult)>0:
				errors.append(u"用户名已存在")
				return render_to_response("/register/",RequestContext(request,{'curtime':curtime,'username':username,'email':email,'nickname':nickname,'errors':errors}))
			
			user=Users()
			user.username=username
			user.set_password(password1)
			user.email=email
			user.nickname=nickname
			user.save()
			newUser=auth.authenticate(username=username,password=password1)
			if newUser is not None:
				auth.login(request, newUser)
				return HttpResponseRedirect(settings.ROOTPATH)
	except Exception,e:
		errors.append(str(e))
		#这个errors会出来一堆u/什么什么的未编码utf8(
		return render(request,"register.html",{'curtime':curtime,'username':username,'email':email,'nickname':nickname,'errors':errors})
Esempio n. 15
0
def callback():
    # Redirect user to home page if already logged in.
    if current_user is not None and current_user.is_authenticated:
        return redirect(url_for('index'))
    if 'error' in request.args:
        if request.args.get('error') == 'access_denied':
            return 'You denied access.'
        return 'Error encountered.'
    if 'code' not in request.args and 'state' not in request.args:
        return redirect(url_for('login'))
    else:
        # Execution reaches here when user has
        # successfully authenticated our app.
        google = get_google_auth(state=session['oauth_state'])
        try:
            token = google.fetch_token(
                Auth.TOKEN_URI,
                client_secret=Auth.CLIENT_SECRET,
                authorization_response=request.url)
        except HTTPError:
            return 'HTTPError occurred.'
        google = get_google_auth(token=token)
        resp = google.get(Auth.USER_INFO)
        if resp.status_code == 200:
            user_data = resp.json()
            email = user_data['email']
            user = Users.query.filter_by(email=email).first()
            if user is None:
                user = Users()
                user.email = email
            user.user_name = user_data['name']
            print(token)
            user.tokens = json.dumps(token)
            user.avatar = user_data['picture']
            db.session.add(user)
            db.session.commit()
            login_user(user)
            return redirect(url_for('index'))
        return 'Could not fetch your information.'
Esempio n. 16
0
def registerzc(request):
    try:
        users = Users.objects.all()
        if users.filter(phone=request.POST['phone']):
            context = {'info': '手机号已存在!'}
        else:
            ob = Users()
            ob.username = request.POST['username']
            ob.name = request.POST['firstname'] + request.POST['lastname']
            import hashlib
            m = hashlib.md5()
            m.update(bytes(request.POST['password']))
            ob.password = m.hexdigest()
            ob.phone = request.POST['phone']
            ob.email = request.POST['email']
            ob.state = 1
            ob.addtime = time.time()
            ob.save()
            context = {'info': '添加成功!'}
    except:
        context = {'info': '添加失败!'}
        return render(request, "extra-signup.html", {"context": context})

    return redirect('/signin')
Esempio n. 17
0
def register():
    if not request.is_json:
        return jsonify({"msg": "Ingresar formato correcto"}), 400

    username = request.json.get('username', None)
    password = request.json.get('password', None)
    name = request.json.get('name', '')
    lastname = request.json.get('lastname', '')
    email = request.json.get('email', None)

    if not username or username == '':
        return jsonify({"msg": "Ingresar nombre de usuario"}), 400
    if not password or password == '':
        return jsonify({"msg": "Ingresar contraseña"}), 400
    if not email or email == '':
        return jsonify({"msg": "Ingresar correo electronico"}), 400

    users = Users.query.filter_by(username=username).first()
    if users:
        return jsonify(
            {"msg": "Nombre de usuario existe, por favor ingresar otro"}), 400

    users = Users()
    users.username = username
    users.password = bcrypt.generate_password_hash(password)
    users.name = name
    users.lastname = lastname
    users.email = email

    db.session.add(users)
    db.session.commit()

    access_token = create_access_token(identity=users.username)
    data = {"access_token": access_token, "users": users.serialize()}

    return jsonify(data), 201
Esempio n. 18
0
def users(id=None):
    if request.method == 'GET':
        if id is not None:
            user = Users.query.get(id)
            if user:
                return jsonify(user.serialize()), 200
            else:
                return jsonify({"msg": "Usuario no encontrado :("}), 404
        else:
            users = Users.query.all()
            users = list(map(lambda user: user.serialize(), users))
            return jsonify(users), 200

    if request.method == 'POST':
        name = request.json.get('name', None)
        lastname = request.json.get('lastname', None)
        phone = request.json.get('phone', None)
        email = request.json.get('email', None)

        users = Users()

        users.name = name
        users.lastname = lastname
        users.phone = phone
        users.email = email

        db.session.add(users)
        db.session.commit()

        return jsonify(users.serialize()), 201

    if request.method == 'PUT':
        name = request.json.get('name', None)
        lastname = request.json.get('lastname', None)
        phone = request.json.get('phone', None)
        email = request.json.get('email', None)

        if not name or name == "":
            return jsonify({"msg": "Ingresa tu nombre!"}), 400
        if not lastname or lastname == "":
            return jsonify({"msg": "Ingresa tu apellido!"}), 400
        if not phone or phone == "":
            return jsonify({"msg": "Ingresa tu telefono!"}), 400
        if not email or email == "":
            return jsonify({"msg": "Confirma tu email!"}), 400

        users = Users.query.get(id)
        if not users:
            return jsonify({"msg": "No encontrado"}), 404

        users.name = name
        users.lastname = lastname
        users.phone = phone
        users.email = email

        db.session.commit()

        return jsonify(users.serialize()), 201

    if request.method == 'DELETE':
        users = Users.query.get(id)
        if not users:
            return jsonify({"msg": "Usuario no encontrado"}), 404
        db.session.delete(users)
        db.session.commit()
        return jsonify({"msg": "Usuario borrado!"}), 200
Esempio n. 19
0
def users(id=None):
    if request.method == 'GET':
        if id is not None:
            user = Users.query.get(id)
            if user:
                return jsonify(user.serialize()), 200
            else:
                return jsonify({"msg": "Username not exist"}), 404
        else:
            users = Users.query.all()
            print("aqui!!")
            users = list(map(lambda user: user.serialize(), users))
            return jsonify(users), 200

    if request.method == 'POST':
        name = request.json.get('name', None)
        lastname = request.json.get('lastname', None)
        phone = request.json.get('phone', None)
        email = request.json.get('email', None)

        users = Users()

        users.name = name
        users.lastname = lastname
        users.phone = phone
        users.email = email

        db.session.add(users)
        db.session.commit()

        return jsonify(users.serialize()), 201

    if request.method == 'PUT':
        name = request.json.get('name', None)
        lastname = request.json.get('lastname', None)
        phone = request.json.get('phone', None)
        email = request.json.get('email', None)

        if not name or name == "":
            return jsonify({"msg": "Insert your name"}), 400
        if not lastname or lastname == "":
            return jsonify({"msg": "Insert your lastname"}), 400
        if not phone or phone == "":
            return jsonify({"msg": "Insert your phone"}), 400
        if not email or email == "":
            return jsonify({"msg": "Confirm your email"}), 400

        users = Users.query.get(id)
        if not users:
            return jsonify({"msg": "Not Found"}), 404

        users.name = name
        users.lastname = lastname
        users.phone = phone
        users.email = email

        db.session.commit()

        return jsonify(users.serialize()), 201

    if request.method == 'DELETE':
        users = Users.query.get(id)
        if not blog:
            return jsonify({"msg": "User not found"}), 404
        db.session.delete(users)
        db.session.commit()
        return jsonify({"msg": "You delete the User"}), 200
Esempio n. 20
0
File: views.py Progetto: AsaK/SisLoc
def users(request):
    action = request.GET.get('action')
    if action == 'criar':
        inputNome = request.GET.get('inputNome')
        if inputNome is not None:
            inputUsuario = request.GET.get('inputUsuario')
            inputEmail = request.GET.get('inputEmail')
            inputTipo = request.GET.get('inputTipo')
            inputSenha = request.GET.get('inputSenha')
            newUser = Users()
            newUser.name = inputNome
            newUser.username = inputUsuario
            newUser.email = inputEmail
            newUser.type = inputTipo
            newUser.password = hashlib.md5(inputSenha).hexdigest()
            newUser.creation_date = datetime.datetime.now()
            newUser.save()
            UsersResult = Users.objects.all()
            page = request.GET.get('pagina')
            paginator = Paginator(UsersResult, 20) #Show 20 per page
            try:
                UsersResult  = paginator.page(page)
            except PageNotAnInteger:
                # If page is not an integer, deliver first page.
                UsersResult  = paginator.page(1)
            except EmptyPage:
                # If page is out of range (e.g. 9999), deliver last page of results.
                UsersResult  = paginator.page(paginator.num_pages)
            return render(request, 'SisLocApp/users.html', {'UsersResult': UsersResult,
                                                            'action': 'listar',
                                                            'status': 'created'})
        return render(request, 'SisLocApp/users.html', {'action': 'criar'})
    elif action == 'excluir':
        inputExcluir = request.GET.get('inputExcluir')
        userDeleted = Users.objects.filter(id=inputExcluir)
        userDeleted.delete()
        UsersResult = Users.objects.all()
        page = request.GET.get('pagina')
        paginator = Paginator(UsersResult, 20) #Show 20 per page
        try:
            UsersResult  = paginator.page(page)
        except PageNotAnInteger:
            # If page is not an integer, deliver first page.
            UsersResult  = paginator.page(1)
        except EmptyPage:
            # If page is out of range (e.g. 9999), deliver last page of results.
            UsersResult  = paginator.page(paginator.num_pages)
        return render(request, 'SisLocApp/users.html', {'UsersResult': UsersResult,
                                                        'action': 'listar',
                                                        'status': 'deleted'})
    elif action == 'alterar':
        inputAlterar = request.GET.get('inputAlterar')
        UsersResult = Users.objects.get(id=inputAlterar)
        inputNome = request.GET.get('inputNome')
        if inputNome is None:
            return render(request, 'SisLocApp/users.html', {'UsersResult': UsersResult,
                                                            'action': 'alterar'})
        inputEmail = request.GET.get('inputEmail')
        inputTipo = request.GET.get('inputTipo')
        inputAlterarSenha = request.GET.get('inputAlterarSenha')
        UsersResult.name = inputNome
        UsersResult.email = inputEmail
        UsersResult.type = inputTipo
        if inputAlterarSenha == 'on':
            UsersResult.password = request.GET.get('inputSenha')
        UsersResult.save()

        UsersResult = Users.objects.all()
        page = request.GET.get('pagina')
        paginator = Paginator(UsersResult, 20) #Show 20 per page
        try:
            UsersResult  = paginator.page(page)
        except PageNotAnInteger:
            # If page is not an integer, deliver first page.
            UsersResult  = paginator.page(1)
        except EmptyPage:
            # If page is out of range (e.g. 9999), deliver last page of results.
            UsersResult  = paginator.page(paginator.num_pages)
        return render(request, 'SisLocApp/users.html', {'UsersResult': UsersResult,
                                                        'action': 'listar',
                                                        'status': 'updated'})
    else:
        UsersResult = Users.objects.all()
        page = request.GET.get('pagina')
        paginator = Paginator(UsersResult, 20) #Show 20 per page
        try:
            UsersResult  = paginator.page(page)
        except PageNotAnInteger:
            # If page is not an integer, deliver first page.
            UsersResult  = paginator.page(1)
        except EmptyPage:
            # If page is out of range (e.g. 9999), deliver last page of results.
            UsersResult  = paginator.page(paginator.num_pages)
        return render(request, 'SisLocApp/users.html', {'UsersResult': UsersResult,
                                                        'action': 'listar'})
Esempio n. 21
0
def register():
    if not request.is_json:
        return jsonify({"msg": "Formato invalido!"}), 400

    email = request.json.get('email', None)
    password = request.json.get('password', None)

    if not email or email == '':
        return jsonify({"msg": "Ingresa un correo valido!"}), 400
    if not password or password == '':
        return jsonify({"msg": "Ingresa un password!"}), 400

    users = Users.query.filter_by(email=email).first()
    if users:
        return jsonify({"msg": "Usuario ya existe!"}), 400

    users = Users()
    users.email = email
    users.password = bcrypt.generate_password_hash(password)
    users.role_id = 2

    db.session.add(users)
    db.session.commit()

    access_token = create_access_token(identity=users.email)
    data = {
        "access_token": access_token,
        "users": users.serialize()
    }

    return jsonify(data), 201

    if request.method == 'PUT':
        name = request.json.get('name', None)
        lastname = request.json.get('lastname', None)
        phone = request.json.get('phone', None)
        email = request.json.get('email', None)

        if not name or name == "":
            return jsonify({"msg":"Ingresa tu nombre!"}), 400
        if not lastname or lastname == "":
            return jsonify({"msg":"Ingresa tu apellido!"}), 400
        if not phone or phone == "":
            return jsonify({"msg":"Ingresa tu telefono!"}), 400
        if not email or email == "":
            return jsonify({"msg":"Confirma tu email!"}), 400

        users = Users.query.get(id)
        if not users:
            return jsonify({"msg": "No encontrado"}), 404
         
        users.name = name 
        users.lastname = lastname 
        users.phone = phone
        users.email = email
        
        db.session.commit()  

        return jsonify(users.serialize()), 201

    if request.method == 'DELETE':
        users = Users.query.get(id)
        if not users:
            return jsonify({"msg": "Usuario no encontrado"}), 404
        db.session.delete(users)
        db.session.commit()
        return jsonify({"msg":"Usuario borrado!"}), 200