def editPage(id): if 'userid' not in session: return redirect("/") mysql = connectToMySQL("books_coffee") query = "SELECT * FROM readers WHERE id=" + session['userid'] user = mysql.query_db(query) mysql = connectToMySQL("books_coffee") query = "SELECT * FROM books WHERE id=" + str(id) + ";" book = mysql.query_db(query) mysql = connectToMySQL("books_coffee") query = "SELECT * FROM posts WHERE book_id=" + str(id) + ";" posts = mysql.query_db(query) mysql = connectToMySQL("books_coffee") query = "SELECT * FROM comments" comments = mysql.query_db(query) return render_template("edit.html", user=user, book=book, posts=posts, comments=comments)
def addEmail(): if not EMAIL_REGEX.match( request.form['email']) or len(request.form['email']) < 1: flash("Email is not valid!", "first") flash("Please enter a valid email address", "second") return redirect('/') else: # if email already exists in database, flash different message mysql = connectToMySQL("emails") query = "SELECT * FROM email_info WHERE email = %(email)s;" data = {"email": request.form["email"]} result = mysql.query_db(query, data) if result != (): flash("Email is not valid!", "first") flash("Email already exists, please enter new email", "second") return redirect('/') mysql = connectToMySQL("emails") query = "INSERT INTO email_info (email) VALUES (%(email)s);" data = {"email": request.form["email"]} new_email_id = mysql.query_db(query, data) new_email = request.form['email'] flash( "The email address you entered (" + new_email + ") is a VALID email addess! Thank you!", "success") return redirect("/success") # return the reirect to success page
def book(id): mysql = connectToMySQL("books_coffee") query = "SELECT * FROM spoils WHERE id=" + str(id) + ";" spoil = mysql.query_db(query) mysql = connectToMySQL("books_coffee") query = "SELECT readers.username FROM readers JOIN spoils ON spoils.reader_id = readers.id WHERE spoils.id=" + str( id) + ";" spoiler = mysql.query_db(query) mysql = connectToMySQL("books_coffee") query = "SELECT readers.username, spoil_comments.comment FROM spoil_comments JOIN readers ON spoil_comments.reader_id = readers.id WHERE spoil_id=" + str( id) + ";" comments = mysql.query_db(query) if 'userid' not in session: return render_template("spoilerBook.html", spoil=spoil, comments=comments, spoiler=spoiler) id = session['userid'] mysql = connectToMySQL("books_coffee") query = "SELECT * FROM readers WHERE id=" + str(id) + ";" user = mysql.query_db(query) return render_template("spoilerBook.html", user=user, spoil=spoil, comments=comments, spoiler=spoiler)
def create_user(): if 'userid' not in session: return redirect('/') db = connectToMySQL("shaped") query = "SELECT * FROM users" user = db.query_db(query) print(user) session['user'] = user session['first_name'] = user db = connectToMySQL('shaped') query1 = "SELECT goal, goal.created_at, users_id, users.first_name,goal.id FROM goal JOIN users ON users.id = goal.users_id WHERE users.id= " + str( session['userid']) print(query) goal = db.query_db(query1) print(goal) session['goal'] = goal db = connectToMySQL('shaped') query1 = "SELECT tips, description, users_id, users.first_name ,tips.id FROM tips JOIN users ON users.id = tips.users_id " tips = db.query_db(query1) session['tip'] = tips return render_template('index.html', user=user, id=session['userid'], goal=goal, tips=tips)
def success(): if 'userid' in session: mysql = connectToMySQL('usersdbase') query = "SELECT * FROM users WHERE id=%(id)s" data = {'id': session['userid']} user = mysql.query_db(query, data) ############# RETRIEVE OTHER USERS ############## mysql = connectToMySQL('usersdbase') userquery = "SELECT * FROM users WHERE id !=%(id)s" users = mysql.query_db(userquery, data) ######### RETRIEVE MY MESSAGES ################# mysql = connectToMySQL('usersdbase') messageQuery = "SELECT * FROM messages WHERE sent_to =%(id)s" messages = mysql.query_db(messageQuery, data) timenow = datetime.now(tz=None).hour countMessages = len(messages) return render_template('success.html', user=user, users=users, messages=messages, timenow=timenow, countMessages=countMessages) else: flash("You must be logged in to enter this website", "login-error") return redirect('/')
def delete(id): print(id) db = connectToMySQL("shaped") query = "DELETE FROM goal WHERE id=" + str(id) db.query_db(query) db = connectToMySQL("shaped") query1 = "DELETE FROM messages WHERE id=" + str(id) db.query_db(query1) return redirect('/showUsers')
def home(id): mysql = connectToMySQL("books_coffee") query = "SELECT * FROM books WHERE books.reader_id =" + str(id) + ";" books = mysql.query_db(query) mysql = connectToMySQL("books_coffee") query = "SELECT * FROM readers WHERE id=" + str(id) + ";" reader = mysql.query_db(query) return render_template("readerPage.html", reader=reader, books=books)
def add_pet_to_db(): mysql = connectToMySQL("Me_Pets") query = "INSERT INTO pets (name, type, created_at, updated_at) VALUES (%(nm)s, %(tp)s, NOW(), NOW());" data = {"nm": request.form["name"], "tp": request.form["type"]} new_pet_id = mysql.query_db(query, data) return redirect("/")
def add_newUser_to_db(): is_valid = True if len(request.form['fname']) < 1: is_valid = False flash("First name should be greater than 1", "ffm") if len(request.form['lname']) < 1: is_valid = False flash("Last name should be greater than 1", "flm") if len(request.form['email']) < 2: is_valid = False flash("Please enter again your email", "fem") if not EMAIL_REGEX.match(request.form['email']): flash("Invalid email address!", "fiem") is_valid = False if len(request.form['password']) < 2: is_valid = False flash("Please enter again your password", "fpm") if not is_valid: return redirect("/") else: # pw_hash = bcrypt.generate_password_hash(request.form['password']) # print(pw_hash) mysql = connectToMySQL("loginreg_db") query = "INSERT INTO users(first_name, last_name, email, password) VALUES (%(fn)s, %(ln)s, %(email)s, %(password_hash)s)" data = { 'fn': request.form['fname'], 'ln': request.form['lname'], 'email': request.form['email'], 'password_hash': pw_hash } new_user_id = mysql.query_db(query, data) session['id']=new_user_id flash("Succesfully, signed up!", "success") return redirect("/show")
def process_form(): is_valid = True if len(request.form['name']) < 2: is_valid = False flash("Please enter a location name", "name") if len(request.form['location']) < 2: is_valid = False flash("Please enter a location name", "location") if len(request.form['language']) < 2: is_valid = False flash("Language should be at least 2 characters", "language") if len(request.form['comment']) > 120: is_valid = False flash("Comment can not exceed 120 characters", "comment") if is_valid == False: return redirect("/") else: db = connectToMySQL('survey') query = "INSERT INTO survey (name, location, language, comment, created_at, updated_at) VALUES (%(name)s, %(location)s, %(language)s, %(comment)s, NOW(), NOW());" data = { "name": request.form["name"], "location": request.form["location"], "language": request.form["language"], "comment": request.form["comment"] } flash("Successfully Imported!") id = db.query_db(query, data) return redirect("/results/" + str(id))
def spoilerRoom(): mysql = connectToMySQL("books_coffee") query = "SELECT * FROM spoils;" spoils = mysql.query_db(query) if 'userid' not in session: print("No user in session") else: id = session['userid'] mysql = connectToMySQL("books_coffee") query = "SELECT * FROM readers WHERE id=" + str(id) + ";" user = mysql.query_db(query) return render_template("spoilerRoom.html", user=user, spoils=spoils) return render_template("spoilerRoom.html", spoils=spoils)
def filter(char): print("*" * 80) mysql = connectToMySQL('world') query = "SELECT * FROM countries WHERE name LIKE %%(name)s ORDER BY name " + char data = {'name': request.form['search'] + "%"} countries = mysql.query_db(query, data) return jsonify(countries=countries)
def bookClub(): mysql = connectToMySQL("books_coffee") query = "SELECT * FROM readers;" readers = mysql.query_db(query) return render_template("bookClub.html", readers=readers)
def homePage(): if 'userid' not in session: return redirect("/") id = session['userid'] mysql = connectToMySQL("books_coffee") query = "SELECT * FROM readers WHERE id=" + str(id) + ";" reader = mysql.query_db(query) mysql = connectToMySQL("books_coffee") query = "SELECT * FROM books WHERE books.reader_id =" + session[ 'userid'] + ";" books = mysql.query_db(query) return render_template("homePage.html", reader=reader, books=books)
def result(): print(request.form) is_valid = True if len(request.form['name']) < 1: is_valid = False flash("Please enter valid name", "first") if 'location' not in request.form: is_valid = False flash("Please select a valid location", "second") if 'language' not in request.form: is_valid = False flash("Please select a valid language", "third") if len(request.form['comment']) > 120: is_valid = False flash("Cannot exceed 120 characters", "fourth") if not is_valid: # if any selection returns false return redirect("/") else: # only if there are no 'flashes' will the code for adding person to database mysql = connectToMySQL("dojo_survery") query = "INSERT INTO students (name, location, language, comment) VALUES (%(name)s, %(loc)s, %(lang)s, %(comm)s);" data = { "name": request.form["name"], "loc": request.form["location"], "lang": request.form["language"], "comm": request.form["comment"] } new_student_id = mysql.query_db(query, data) return redirect("/result/" + str(new_student_id)) # return the reirect to new student input
def showid(id): db = connectToMySQL('users') query = ('SELECT * FROM users WHERE ID = %(id)s;') data = {"id": id} users = db.query_db(query, data) print(users) return render_template("show.html", show_user=users)
def setGoals(): db = connectToMySQL("shaped") query = "INSERT INTO goal (goal, created_at, updated_at, users_id) VALUES (%(go)s, NOW(), NOW(), %(users_id)s)" data = {'go': request.form['goal'], 'users_id': session['userid']} user = db.query_db(query, data) return redirect("/showUsers")
def register(): is_valid = True if len(request.form['username']) < 1: is_valid = False flash("Please enter a username", "username") if len(request.form['username']) > 1 and len(request.form['username']) < 4: is_valid = False flash("Username: at least 4 characters", "username") if len(str(request.form['username'])) > 15: is_valid = False flash("Username max: 15 characters", "length") mysql = connectToMySQL("books_coffee") query = "SELECT * FROM readers WHERE username = %(username)s" data = {'username': request.form['username']} result = mysql.query_db(query, data) if result: is_valid = False flash("This username already exists...", "username") if len(request.form['password']) < 1: is_valid = False flash("Please enter a password", "password") if len(request.form['password']) > 0 and len(request.form['password']) < 4: is_valid = False flash("...", "password") if is_valid == False: return redirect("/createAccount") password_hash = bcrypt.generate_password_hash(request.form['password']) mysql = connectToMySQL('books_coffee') query = "INSERT INTO readers (username, password, updated_at, created_at) VALUES (%(username)s, %(password_hash)s, NOW(), NOW())" data = { 'username': request.form['username'], 'password_hash': password_hash } id = mysql.query_db(query, data) session['userid'] = str(id) return redirect("/")
def removeBook(): mysql = connectToMySQL("books_coffee") query = "UPDATE books SET status = %(status)s WHERE id = %(id)s" data = {"status": "removed", "id": request.form['id']} mysql.query_db(query, data) return redirect("/homePage")
def showTip(id): db = connectToMySQL('shaped') query1 = "SELECT tips, description, users_id, users.first_name ,tips.id FROM tips JOIN users ON users.id = tips.users_id WHERE tips.id = " + str( id) tips = db.query_db(query1) print(tips) return render_template("show.html", x=tips)
def search(): mysql = connectToMySQL('world') # query = "SELECT * FROM countries WHERE name LIKE %%(name)s;" query = "SELECT * ,LOCATE(%(name)s,name) FROM countries WHERE locate(%(name)s,name)>0 LIMIT 0,10;" data = {'name': request.form['search']} countries = mysql.query_db(query, data) print(countries) return jsonify(countries=countries)
def delete1(id): print(id) db = connectToMySQL("shaped") query1 = "DELETE FROM messages WHERE id=" + str(id) db.query_db(query1) return redirect('/chat')
def city(): mysql = connectToMySQL('world') query = "SELECT * ,LOCATE(%(name)s,name) FROM cities WHERE locate(%(name)s,name)>0 LIMIT 0,10;" # query = "SELECT * FROM cities;" data = {'name': request.form['search']} cities = mysql.query_db(query, data) print(cities, "*" * 80) return jsonify(cities=cities)
def edit_process(): mysql = connectToMySQL('usersdb') query = "UPDATE users SET fullname=%(name)s, email=%(email)s, updated_at=NOW() WHERE id=%(id)s" data = { 'name': request.form['fname'] + ' ' + request.form['lname'], 'email': request.form['email'], 'id': request.form['id'] } mysql.query_db(query, data) return redirect('/show_user/' + str(request.form['id']))
def add_user_to_db(): db = connectToMySQL('users') query = "INSERT INTO users (first_name, last_name, email, created_at, updated_at) VALUES (%(fn)s,%(ln)s, %(em)s, NOW(), NOW());" data = { "fn": request.form["first_name"], "ln": request.form["last_name"], "em": request.form["email"] } id = db.query_db(query, data) return redirect("/users/" + str(id))
def show(): mysql = connectToMySQL('loginreg_db') query = 'SELECT * FROM users WHERE id = %(id)s' data ={ 'id': session['id'] # 'email': session['email'] } users = mysql.query_db(query, data) # print(users) return render_template("show.html", users = users )
def chat(): if 'userid' not in session: return redirect('/') db = connectToMySQL("shaped") query = "SELECT * FROM users" user = db.query_db(query) print(user) session['user'] = user session['first_name'] = user db = connectToMySQL('shaped') query1 = "SELECT message, recipient_id, users_id, users.first_name ,messages.id FROM messages JOIN users ON users.id = messages.users_id WHERE recipient_id = " + str( session['userid']) message = db.query_db(query1) print(message) session['message'] = message return render_template("chat.html", user=user, message=message)
def register(): is_valid = True if not EMAIL_REGEX.match(request.form['email']): flash("Invalid email address!", "email") is_valid = False if len(request.form['first_name']) < 2: is_valid = False flash("Please enter a first name", "first_name") if len(request.form['last_name']) < 2: is_valid = False flash("Please enter a last name", "last_name") if len(request.form['password']) < 7: is_valid = False flash("Your password must be at least 8 characters", "password") if not request.form['password'] == request.form['confirm_password']: is_valid = False flash("Your passwords dont match!", "confirm_password") else: mysql = connectToMySQL('login') query = " SELECT * FROM users WHERE email = %(email)s;" data = { "email": request.form['email'], } email = mysql.query_db(query, data) if len(email) > 0: is_valid = False flash("Email already in use", "email2") if not is_valid: return redirect('/') else: pw_hash = bcrypt.generate_password_hash(request.form['password']) print(pw_hash) mysql = connectToMySQL('login') query = "INSERT INTO users (first_name, last_name, email, password, created_at, updated_at) VALUES ( %(fn)s, %(ln)s, %(email)s, %(pw)s, NOW(), NOW());" data = { "fn": request.form['first_name'], "ln": request.form['last_name'], "email": request.form['email'], "pw": pw_hash } id = mysql.query_db(query, data) session['id'] = str(id) return redirect('/success/' + str(id))
def update(): db = connectToMySQL('users') query = 'UPDATE users SET first_name = %(fn)s, last_name = %(ln)s, email = %(em)s WHERE id = %(id)s' data = { "fn": request.form["first_name"], "ln": request.form["last_name"], "em": request.form["email"], "id": request.form["id"] } db.query_db(query, data) return redirect("/users")
def process(): if not EMAIL_REGEX.match(request.form['email']): flash("Invalid email address!", "email") return redirect('/') else: mysql = connectToMySQL("email") query = "INSERT INTO users (email, created_at, updated_at) VALUES (%(email)s, NOW(), NOW());" data = {"email": request.form['email']} flash("Email successfully added!", "email") mysql.query_db(query, data) return redirect('/success')