コード例 #1
0
def register():

    form = RegistrationForm()
    phone_form = PhoneForm()


    if form.validate_on_submit():

        user = User(first_name=form.first_name.data,
                    last_name=form.last_name.data,
                    dob=form.dob.data.strftime('%Y-%m-%d'),
                    email=form.email.data,
                    password=form.password.data,
                    address=form.address.data,
                    city=form.city.data,
                    # phone=form.phone.data # old and working!
                    phone=phone_form.phone.data


                    )

        if user.mel(form.email.data) and user.chk_pass(form.password.data):

            db.session.add(user)
            db.session.commit()
            flash("Thanks for registration!")

            return redirect(url_for('login'))
    return render_template('register.html', form=form, phone_form=phone_form)
コード例 #2
0
ファイル: views.py プロジェクト: mdifils/CatalogApp
def fblogin():
    """This view handle the authentication and authorization with facebook"""
    # Validate state token
    if request.args.get('state') != login_session['state']:
        return respond('Invalid state parameter.', 401)

    token = request.data.decode()

    # Use token to get user info from API
    userinfo_url = "https://graph.facebook.com/v3.2/me"
    params = {"access_token": token, "fields": "name,id,email"}
    resp = requests.get(userinfo_url, params=params)

    assert resp.ok, resp.text
    facebook_info = resp.json()
    user = User.query.filter_by(email=facebook_info['email']).first()

    if not user:
        user = User(email=facebook_info['email'],
                    username=facebook_info['name'],
                    token=token,
                    provider='facebook',
                    provider_id=facebook_info['id'])
        db.session.add(user)
        db.session.commit()

    else:
        user.token = token
        db.session.add(user)
        db.session.commit()

    login_user(user)
    flash(f"you are now logged in as {current_user.username}")

    return redirect(url_for('index'))
コード例 #3
0
def login():
    #FB login check db
    if request.method == 'POST':
        email = request.form['email']
        user = User.query.filter_by(email=email).first()
        if user is None:
            user = User(email=email, username=email, password='******')
            db.session.add(user)
            db.session.commit()
            user = User.query.filter_by(email=email).first()
        login_user(user)
        print(email)

    ##normal login##
    form = LoginForm()
    if form.validate_on_submit():
        # Grab the user from our User Models table
        user = User.query.filter_by(email=form.email.data).first()
        if user.check_password(form.password.data) and user is not None:
            # Log in the user
            login_user(user)
            flash('Logged in successfully.')
            next = request.args.get('next')
            if next == None or not next[0] == '/':
                next = url_for('welcome_user')
            return redirect(next)
    return render_template('login.html', form=form)
コード例 #4
0
ファイル: views.py プロジェクト: mdifils/CatalogApp
def register():
    """This view render the registration page if the method is GET """
    if request.method == 'POST':
        # Record the user in the our User Model table
        user = User(email=request.form['email'],
                    username=request.form['username'])
        user.hash_password(request.form['password'])
        db.session.add(user)
        db.session.commit()
        flash('Thanks for registering! Now you can login!')

        return redirect(url_for('users.login'))

    return render_template('register.html')
コード例 #5
0
def register():
    if request.method == 'POST':
        email = request.form['email']
        username = request.form['username']
        password = request.form['psw']
        rpsw = request.form['rpsw']
        usertype = request.form['optradio']
        if User.query.filter_by(email=email).first():
            flash('Email address already register')
            return render_template('register.html')

        elif User.query.filter_by(username=username).first():
            flash('username already taken')
            return render_template('register.html')

        elif password == rpsw:
            user = User(email=email,
                        username=username,
                        password=password,
                        user_type=usertype)
            db.session.add(user)
            db.session.commit()
            flash('Thanks for registering! Now you can login!')
            return redirect(url_for('login'))
        else:
            flash('please enter same password')
            return render_template('register.html')
    return render_template('register.html')
コード例 #6
0
ファイル: app.py プロジェクト: ahmedelbadawy/hemodialysis_web
def register():
    form = RegistrationForm()

    if form.validate_on_submit():
        user = User(email=form.email.data,
                    username=form.username.data,
                    password=form.password.data,
                    job=form.job.data,
                    name=form.name.data,
                    phone=form.phone.data,
                    profile_image="default_profile.jpg")

        db.session.add(user)
        db.session.commit()
        if (form.job.data == 'patient'):
            patient = P_accounts(email=form.email.data,
                                 username=form.username.data,
                                 name=form.name.data,
                                 phone=form.phone.data)
            db.session.add(patient)
            db.session.commit()
        else:
            doctor = D_accounts(email=form.email.data,
                                username=form.username.data,
                                name=form.name.data,
                                phone=form.phone.data)
            db.session.add(doctor)
            db.session.commit()

        flash('Thanks for registering! Now you can login!')
        return redirect(url_for('login'))

    return render_template('register.html', form=form)
コード例 #7
0
def register():
    form = RegistrationForm()

    if form.validate_on_submit():
        user = User(email=form.email.data,
                    username=form.username.data,
                    password=form.password.data)

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

        email=str(form.email.data)
        username=str(form.username.data)
        password=str(form.password.data)
        password=generate_password_hash(password)
        sql = "INSERT INTO users(email,username,password_hash) values(%s,%s,%s)"
        data = (email,username,password)
        conn = mysql.connect()
        cursor = conn.cursor()
        cursor.execute(sql, data)
        conn.commit()

        flash('Thanks for registering! Now you can login!')
        return redirect(url_for('login'))
    return render_template('register.html', form=form)
コード例 #8
0
ファイル: app.py プロジェクト: dhananjayns/Medical-Assist
def register():
    form = RegistrationForm()

    if form.validate_on_submit():

        # # Check if not None for that user email!
        # if User.query.filter_by(email=form.email.data).first():
        #     raise ValidationError('Your email has been registered already!')
        #     #return redirect(url_for('register'))
        #     flag=False
        #
        #
        # # Check if not None for that username!
        # if User.query.filter_by(username=form.username.data).first():
        #     raise ValidationError('Sorry, that username is taken!')
        #     #return redirect(url_for('register'))
        #     flag=False
        #
        # if flag:
        user = User(email=form.email.data,
                    username=form.username.data,
                    password=form.password.data,
                    location=form.location.data)
        db.session.add(user)
        db.session.commit()
        flash('Thanks for registering! Now you can login!')

        mytext = "Welcome to Med Assist!" + '.Thanks for registering! Now you can login!'
        myobj = gTTS(text=mytext, lang=language, slow=False)
        myobj.save("welcome.mp3")
        os.system("mpg123 welcome.mp3")

        return redirect(url_for('login'))

    return render_template('register.html', form=form)
コード例 #9
0
ファイル: app.py プロジェクト: YoungHaYoo12/flask-bootcamp
def register():
    form = RegistrationForm()
    if form.validate_on_submit():
        user = User(form.email.data, form.username.data, form.password.data)
        db.session.add(user)
        db.session.commit()
        return redirect(url_for('login'))
    return render_template('register.html', form=form)
コード例 #10
0
def login():
    form = RegisterForm()
    if form.validate_on_submit():
        email = form.email.data
        password = form.password.data
        name = form.name.data
        surname = form.surname.data
        gender = form.gender.data
        mobile = form.mobile.data
        address = form.address.data
        birthday = form.birthday.data
        if User.query.filter_by(email=email).first():
            flash("Such user already exists")
            return render_template("login.html", form=form)
        else:
            user = User(email, password)
            user.name = name + " " + surname
            user.birth_date = birthday
            user.phone = mobile
            user.address = address
            user.gender = gender
            db.session.add(user)
            db.session.commit()

    return render_template("login.html", form=form)
def register():
    form = RegistrationForm()
    if form.validate_on_submit():
        user=User(email=form.email.data,username=form.username.data,passowrd=form.passowrd.data)
        db.session.add(user)
        db.session.commit()
        flash("thanks for registration")
        return redirect(url_for('login'))
    return render_template("register.html",form=form)
コード例 #12
0
ファイル: app.py プロジェクト: devmafia/Python_Flask_Udemy
def register():
    form = RegistrationForm()

    if form.validate_on_submit():
        user = User(email=form.email.data, username=form.username.data, password=form.password.data)

    db.session.add(user)
    db.session.commit()
    flash("Thanks for registration!")
    return redirect(url_for('login'))
コード例 #13
0
ファイル: app.py プロジェクト: ahmedelbadawy/hemodialysis_web
def login():

    form = LoginForm()
    if form.validate_on_submit():
        # Grab the user from our User Models table
        user = User.query.filter_by(email=form.email.data).first()

        if (form.email.data == "*****@*****.**"
                and form.password.data == "admin" and user is None):
            user = User(email=form.email.data,
                        username="******",
                        password=form.password.data,
                        job="admin",
                        name="admin",
                        phone="123",
                        profile_image="default_profile.jpg")

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

        if user is not None:

            if user.check_password(form.password.data):
                #Log in the user

                login_user(user)
                flash('Logged in successfully.')

                next = request.args.get('next')

                if next == None or not next[0] == '/':
                    next = url_for('home')

                return redirect(next)

            else:
                flash('Password is not correct')

        else:
            flash('Email is not correct')

    return render_template('login.html', form=form)
コード例 #14
0
ファイル: app.py プロジェクト: Areid0093/FlaskEtc
def register():
    form = RegistrationForm()   
    if form.validate_on_submit():
        user = User(email=form.email.data,
                username=form.username.data,
                password=form.password.data)
        db.session.add(user)
        db.session.commit()
        flash('You have successfully registered!')
        return redirect(url_for('login'))
    return render_template('register.html',form=form)
コード例 #15
0
ファイル: app.py プロジェクト: ghigbie/flask-login
def register():
    form = RegistrationForm()

    if form.validate_on_submit():
        user = User(email=form.email.data, password=form.password.data)

        db.session.add(user)
        db.session.commit()
        flash('Thanks for registering! Now you can login!')
        return redirect(url_for('login'))
    return render_template('register.html', form=form)
コード例 #16
0
def register():
    form = RegistrationForm()

    if form.validate_on_submit():
        user = User(email=form.email.data,username=form.username.data,password=form.password.data)

        db.session.add(user)   #adding user to our database
        db.session.commit()   #saving the changes made in database
        flash("Thanks for registration!")
        return redirect(url_for('login'))
    return render_template('register.html',form=form)
コード例 #17
0
ファイル: app.py プロジェクト: faiksohail/pms_project
def register():
	form = AddForm()

	if form.validate_on_submit():
		email = form.email.data
		password = generate_random_password()

		name = form.name.data
		gender = form.gender.data
		address = form.address.data
		city = form.city.data
		dob = form.dob.data
		contact = form.contact.data

		user = User(email, password)

		patient_role = Role.get_role('patient')

		user.save()
		user.add_role(patient_role)

		user_id = user.id
		patient = Patient(name, gender, address, city, dob, contact, user_id)
		patient.save()

		body_html = render_template('mail/credentials.html', username=name, login_id=user_id, password=password)
		body_text = render_template('mail/credentials.txt', username=name, login_id=user_id, password=password)

		# send_email(email, 'Welcome to PMS', body_html, body_text)
		flash("Please check your email for user id and password.")

		return redirect(url_for('register'))

	return render_template('register.html', form=form)
コード例 #18
0
ファイル: app.py プロジェクト: faiksohail/pms_project
def create_superuser():
	while True:
		email = click.prompt('Enter email')
		match = re.match('^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$', email)

		if not match:
			click.echo('The email is not valid. Please enter a valid email.')
		elif User.query.filter_by(email=email).first():
			click.echo('Email already in use.')
		else:
			break

	while True:
		password = click.prompt('Enter Password')

		if len(password) < 8:
			click.echo("Make sure your password is at least 8 letters")
		elif re.search('[0-9]', password) is None:
			click.echo("Make sure your password has a number in it")
		elif re.search('[A-Z]', password) is None:
			click.echo("Make sure your password has a capital letter in it")
		else:
			break

	super_user = User(email, password)
	admin_role = Role.get_role('admin')

	super_user.add_role(admin_role)

	super_user.save()
	click.echo('Successfully added!')
コード例 #19
0
ファイル: app.py プロジェクト: narsimha-na/NACODE-web
def register():
    form = RegistrationForm()

    if form.validate_on_submit():
        user = User(email = form.email.data,
        username= form.username.data,
        password=form.password.data)

        db.session.add(user)
        db.session.commit()
        flash("Thank you for registring with us !")
        return redirect(url_for('login'))
    return render_template('register.html',form=form)
コード例 #20
0
def register():
    form = RegisterForm()
    if form.validate_on_submit():
        # form.check_email()
        # form.check_username()
        new_user = User(form.email.data,
                        form.username.data,
                        form.password.data)
        db.session.add(new_user)
        db.session.commit()
        flash('Thanks for registration')
        return redirect(url_for('user.login'))
    return render_template('register.html', form=form)
コード例 #21
0
def admin_dashboard():

    if request.method == 'POST' and 'teach_search' in request.form:
        branch = request.form['branch']
        tid = request.form['t_id']
        teacher = Teachers.query.filter_by(branch=branch).all()
        if teacher != None:
            return render_template('admin/dashboard.html', teacher=teacher)

        else:
            teacher = Teachers.query.filter_by(t_id=tid).first()
            return render_template('admin/dashboard.html', teacher=teacher)

    if request.method == 'POST' and 'teach_submit' in request.form:
        email = request.form['email']
        password = request.form['psw']
        password1 = request.form['rpsw']
        usertype = request.form['usertype']
        username = request.form['username']

        if User.query.filter_by(email=email).first():
            flash('Email  address already register')
            return redirect(url_for('admin_dashboard'))

        elif User.query.filter_by(username=username).first():
            flash(' Username address already register')
            return redirect(url_for('admin_dashboard'))

        elif password == password1:
            teachers1 = User(email=email,
                             username=username,
                             password=password,
                             user_type=usertype)
            db.session.add(teachers1)
            db.session.commit()
            flash('User successfully register')
            msg = Message("Confirm Email",
                          sender="*****@*****.**",
                          recipients=[email])
            msg.html = render_template('/mail/register.html',
                                       email=email,
                                       password=password,
                                       username=username)
            mail.send(msg)
            return redirect(url_for('admin_dashboard'))

        else:
            flash('Please enter same password')
            return redirect(url_for('admin_dashboard'))

    return render_template('admin/dashboard.html')
コード例 #22
0
def register():

    form = RegistrationForm()

    if form.validate_on_submit():
        username = form.username.data
        passwd = form.password.data
        user = User(username, passwd)
        db.session.add(user)
        db.session.commit()
        flash("Thanks for registration")
        return redirect(url_for('login'))

    return render_template('register.html', form=form)
コード例 #23
0
def register():
    form = RegistrationForm()
    if form.validate_on_submit():
        if form.key.data != SECRET_KEY:
            flash("wrong sescret key!")
            return render_template('register.html', form=form)

        user = User(form.username.data, form.password.data)

        db.session.add(user)
        db.session.commit()
        flash('Thanks for registration!')
        return redirect(url_for('users.login'))
    return render_template('register.html', form=form)
コード例 #24
0
ファイル: app.py プロジェクト: rishabh-in/User_login
def register():

    form = RegistrationForm()

    if form.validate_on_submit():

        user = User(email=form.email.data,
                    username=form.username.data,
                    hashed_password=form.password.data)
        db.session.add(user)
        db.session.commit()

        return redirect(url_for("login"))

    return render_template("registration.html", form=form)
コード例 #25
0
ファイル: app.py プロジェクト: Fanoflix/Flask-practice
def register():
    form = Registration()

    if form.validate_on_submit():
        # (*) Because we are 'ADDING' to the database a new 'User' object, with the information
        # provided in the form.
        form.check_email(form.email.data)
        user = User(email=form.email.data,
                    username=form.username.data,
                    mypassword=form.password.data)

        db.session.add(user)
        db.session.commit()
        flash('Successfully Registered')
        return redirect(url_for('login'))
    return render_template('register.html', form=form)
コード例 #26
0
def register():
    form = RegisterForm()

    if form.validate_on_submit():
        new_user = User(name=form.name.data,
                        surname=form.surname.data,
                        email=form.email.data,
                        password=form.password.data)

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

        flash('User registered!')
        return redirect(url_for('user.login'))

    return render_template('register.html', form=form)
コード例 #27
0
def register():
    if current_user.is_authenticated:
        return redirect(url_for('home'))
    form = RegistrationForm()
    if form.validate_on_submit():
        hashed_password = bcrypt.generate_password_hash(
            form.password.data).decode('utf-8')
        user = User(username=form.username.data,
                    email=form.email.data,
                    password=form.password.data)
        db.session.add(user)
        db.session.commit()
        flash('Your account has been created! You are now able to log in',
              'success')
        return redirect(url_for('login'))
    return render_template('register.html', title='Register', form=form)
コード例 #28
0
def register():
    form = RegistrationForm(request.form)
    if form.validate():
        hh = None
        hh = form.check_email(request.form['email'])
        if hh == "Your email has been registered already":
            flash("That email id is already taken....")
            return redirect(url_for('register'))
        user = User(name=request.form['name'],
                    email=request.form['email'],
                    ph=request.form['ph'],
                    password=request.form['password'])
        db.session.add(user)
        db.session.commit()
        return redirect(url_for('login'))
    return render_template('register.html', form=form)
コード例 #29
0
def add_doctor():
    form = AddDoctorForm()

    form.specializations.choices = Specialization.specialization_choices()
    form.degrees.choices = Degree.degree_choices()

    if form.validate_on_submit():
        email = form.email.data
        password = generate_random_password()

        name = form.name.data
        gender = form.gender.data
        address = form.address.data
        city = form.city.data

        specialization_ids = form.specializations.data
        degree_ids = form.degrees.data

        dob = form.dob.data
        contact = form.contact.data

        user = User(email, password)

        doctor_role = Role.get_role('doctor')

        user.save()
        user.add_role(doctor_role)

        user_id = user.id
        doctor = Doctor(name, gender, address, city, dob, contact, user_id)

        specializations = [
            Specialization.query.get(i) for i in specialization_ids
        ]
        degrees = [Degree.query.get(i) for i in degree_ids]

        doctor.add_specializations(specializations)
        doctor.add_degrees(degrees)

        doctor.save()

        body_html = render_template('mail/staff_credentials.html',
                                    email=email,
                                    password=password)
        body_text = render_template('mail/staff_credentials.txt',
                                    email=email,
                                    password=password)

        # send_email(email, 'Welcome to PMS', body_html, body_text)

        return redirect(url_for('receptionist.list_doctor'))

    return render_template('receptionist/add_doctor.html', form=form)
コード例 #30
0
def reset_token(token):
    if current_user.is_authenticated:
        return redirect(url_for('index'))
    user = User.verify_reset_token(token)
    if user is None:
        flash('That token is invalid or expires', 'warning')
        return redirect(url_for('reset_request'))
    form = ResetPasswordForm()
    if form.validate_on_submit():
        password_hash = generate_password_hash(form.password.data)
        user.password_hash = password_hash
        db.session.commit()
        flash("Your password has been updated! You can now login")
        return redirect(url_for('login'))

    return render_template('reset_token.html',
                           title="Reset Password",
                           form=form)