code cleanup and comments

This commit is contained in:
2020-07-10 10:11:31 +02:00
parent 016e52f1e7
commit adb20dea14
10 changed files with 27 additions and 162 deletions

View File

@ -4,12 +4,22 @@ from wtforms.validators import DataRequired, ValidationError, Email, EqualTo
from database.models import User, Device
import email_validator
'''
LoginForm defines the flask form used for the
email-based login procedure
This Form is based on 'The Flask Mega-Tutorial'
'''
class LoginForm(FlaskForm):
username = StringField('Username', validators=[DataRequired()])
password = PasswordField('Password', validators=[DataRequired()])
remember_me = BooleanField('Remember Me')
submit = SubmitField('Sign In')
'''
RegiatrationForm validates username, email and pw
This Form is based on 'The Flask mega-Tutorial'
'''
class RegistrationForm(FlaskForm):
username = StringField('Username', validators=[DataRequired()])
email = StringField('Email', validators=[DataRequired(), Email()])
@ -31,7 +41,7 @@ class RegistrationForm(FlaskForm):
class DeviceForm(FlaskForm):
deviceName=StringField('New Device ID', validators=[DataRequired()])
submit = SubmitField('Add New Device')
#
def validate_deviceName (self, deviceName):
device = Device.query.filter_by(deviceName=deviceName.data).first()
if device is None:

View File

@ -25,7 +25,9 @@ import requests
from database.models import Calendar as dbCalendar
from backend import Calendar, Event
# Configuration
# Configuration class for the google client
# all necessary variables and secrets are defined in this
# aswell as some helper functions
class GoogleClient():
def __init__(self):
self.CLIENT_SECRETS_FILE = "certificate/client_secret.json"

View File

@ -13,7 +13,7 @@ from flask_login import (
login_user,
logout_user,
)
from random_word import RandomWords
from random_words import RandomWords
import requests
import server.googleHandler as google
@ -74,18 +74,19 @@ def devices():
# if this is a post request from the 'unlink' submittion form
# delete this device from the list
form = DeviceForm()
if request.method == 'POST':
if request.form.get("submit") == "Unlink":
device = db.session.query(Device).filter(Device.deviceName==request.form.get("device")).first()
db.session.delete(device)
db.session.commit()
# if this is part of the device form
form = DeviceForm()
if form.validate_on_submit():
device = db.session.query(Device).filter(Device.deviceName==form.deviceName.data).first()
current_user.devices.append(device)
db.session.commit()
elif form.validate_on_submit():
device = db.session.query(Device).filter(Device.deviceName==form.deviceName.data).first()
current_user.devices.append(device)
db.session.commit()
return flask.render_template('devices.html',
devices=current_user.devices,
@ -222,9 +223,7 @@ def generateDeviceFingerprint():
while True:
fingerprint = ""
length = 3
randos = r.get_random_words(limit=length, hasDictionaryDef="true",
includePartOfSpeech="noun", minDictionaryCount=1,
maxDictionaryCount=10, minLength=5, maxLength=10)
randos = r.random_words(count=length)
for i in range(len(randos)):
fingerprint += randos[i]
if i < length-1:

View File

@ -34,9 +34,9 @@
<form action="" method="post">
<div class="container grey" style="margin-top: 3rem;">
<div>{{ form.hidden_tag() }}</div>
<div style="width: 7rem; margin: 1rem">{{ form.deviceName.label }}</div>
<div style="width: 12rem; margin: 1rem">{{ form.deviceName(size=24) }}</div>
<div style="with: 7rem; margin: 1rem">{{ form.submit() }}</div>
<div style="margin: 1rem">{{ form.deviceName.label }}</div>
<div style="margin: 1rem">{{ form.deviceName(size=24) }}</div>
<div style="with: 8rem; margin: 1rem">{{ form.submit() }}</div>
{% for error in form.deviceName.errors %}
<span style="color: red;">[{{ error }}]</span>
{% endfor %}