def delete_board(board_id): get_data() print(board_id) query = f"UPDATE boards SET status=false WHERE board_id={board_id}" cur.execute(query) conn.commit() return redirect(url_for('boardnotes.board'))
def delete_page(page_id): get_data() query = f"UPDATE pages SET status=false WHERE page_id={page_id}" cur.execute(query) conn.commit() query = f"SELECT board_id from pages where page_id='{page_id}'" cur.execute(query) board_id = cur.fetchall()[0][0] print(board_id) return redirect(url_for('boardnotes.page', board_id=board_id))
def add_board(): get_data() user_id = user['user_id'] board_name = request.form['board_name'] board_desc = request.form['board_desc'] data = {'board_name': board_name, 'board_desc': board_desc} query = f"INSERT INTO boards(board_name, description, status, cover_img, user_id) VALUES ('{board_name}', '{board_desc}', TRUE, NULL, {user_id})" cur.execute(query) conn.commit() return jsonify(data)
def rename_board(): get_data() boardid = request.form['board_id'] boardname = request.form['board_name'] boarddesc = request.form['board_desc'] data = {'board_name': boardname, 'board_desc': boarddesc} query = f"UPDATE boards SET board_name = '{boardname}', description = '{boarddesc}' WHERE board_id={boardid}" cur.execute(query) conn.commit() return jsonify(data)
def page_editor(page_id): get_data() query = f"SELECT * FROM pages WHERE page_id={page_id};" cur.execute(query) temp = cur.fetchall() return render_template('pageEditor.html', user=user, user_boards=user_boards, user_pages=user_pages, page=temp[0])
def add_page(): get_data() page_name = request.form['page_name'] # page_data = request.form['page_data'] board_id = request.form['board_id'] data = {'page_name': page_name} query = f"INSERT INTO pages(page_name, board_id) VALUES ('{page_name}', {board_id})" cur.execute(query) conn.commit() return jsonify(data)
def board(): get_data() user_id = user['user_id'] query = f"SELECT * FROM boards WHERE user_id='{user_id}' and status=true" cur.execute(query) page = cur.fetchall() return render_template('board.html', title='Boards', user=user, user_boards=user_boards, user_pages=user_pages)
def load_boards(user_id): global user_boards user_boards = [] global user_pages user_pages = [] query = f"SELECT board_id,board_name,description FROM boards WHERE user_id={user_id} AND status=true" cur.execute(query) temp = cur.fetchall() for i in temp: user_boards.append(i) for user_board in user_boards: load_pages(user_board[0])
def page(board_id): get_data() query = f"SELECT * FROM pages WHERE board_id='{board_id}' and status=true" cur.execute(query) page = cur.fetchall() return render_template('page.html', title='Pages', user=user, pages=page, board_id=board_id, user_boards=user_boards, user_pages=user_pages)
def add_page_data(page_id): get_data() form = AddPageForm(request.form) page_name = form.page_name.data page_data = form.page_data.data data = {'page_id': page_id, 'page_name': page_name, 'page_data': page_data} query = f"UPDATE pages SET page_data='{page_data}',page_name='{page_name}' WHERE page_id='" \ f"{page_id}';" cur.execute(query) conn.commit() query = f"SELECT board_id from pages where page_id='{page_id}'" cur.execute(query) board_id = cur.fetchall()[0][0] print(board_id) return redirect(url_for('boardnotes.page', board_id=board_id))
def recover_password(): form = RecoverPasswordForm(request.form) if request.method == 'POST' and form.check_email(form.email.data): lettersAndDigits = string.ascii_letters + string.digits pwd = ''.join(random.choice(lettersAndDigits) for i in range(16)) print(pwd) try: query = f"UPDATE Users SET pwd='{hash_password(pwd)}' WHERE email_id = '{form.email.data}'" cur.execute(query) conn.commit() except: print('No account is linked to this email') return redirect(url_for('useraccounts.login')) return render_template('recover_password.html', title='Recover Password', form=form)
def login(): form = LoginForm(request.form) if request.method == 'POST': try: query = f"SELECT user_id FROM users WHERE (username='******' AND pwd='{hash_password(form.pwd.data)}') OR (email_id='{form.username_email.data}' AND pwd='{hash_password(form.pwd.data)}');" cur.execute(query) temp = cur.fetchall() print(temp) user_id = temp[0][0] load_user(user_id) if len(temp) != 0: if request.values.get("c") is not None: return redirect(f'{request.values.get("c")}') return redirect(url_for('boardnotes.board')) except: print('invalid') return render_template('login.html', title='Login', form=form)
def signup(): print(request.form.get('dob')) form = SignUpForm(request.form) if request.method == 'POST' and form.check_username( form.username.data) and form.check_email( form.email.data) and valid_email( form.email.data) and form.check_passwords( form.pwd.data, form.pwd_confirm.data) and form.check_name( form.name.data): try: query = f"INSERT INTO Users(username, pwd, email_id, user_name, birth_date) VALUES ('{form.username.data}', '{hash_password(form.pwd.data)}', '{form.email.data}', '{form.name.data}', '{form.dob.data}')" cur.execute(query) conn.commit() return redirect(url_for('useraccounts.login')) except: print('User Already exists') return render_template('signup.html', title='Sign Up', form=form)
def load_user(user_id): query = f"SELECT * FROM users WHERE user_id={user_id}" cur.execute(query) temp1 = cur.fetchall() load_boards(temp1[0][0]) global user user = { 'user_id': temp1[0][0], 'username': temp1[0][1], 'email_id': temp1[0][3], 'joining_date': temp1[0][4], 'birth_date': temp1[0][5], 'name': temp1[0][6], 'bio': temp1[0][7], 'fb_handle': temp1[0][8], 'ig_handle': temp1[0][9], 'twitter_handle': temp1[0][10], 'linkedin_handle': temp1[0][11], 'github_handle': temp1[0][12], 'profile_pic': temp1[0][13] }
def get_index(): cur.execute(query) row = cur.fetchone() rows = cur.fetchall() print(rows) return render_template('index.html', exhibits=rows)
def check_username(username): query = f"SELECT COUNT(*) FROM Users WHERE username='******'" cur.execute(query) if cur.fetchall()[0][0] != 0: return False return True
def load_pages(board_id): query = f"SELECT page_id, page_name, page_data, board_id FROM pages WHERE board_id={board_id} AND status=true" cur.execute(query) temp = cur.fetchall() for i in temp: user_pages.append(i)
def check_email(emailId): query = f"SELECT COUNT(*) FROM Users WHERE email_id='{emailId}'" cur.execute(query) if cur.fetchall()[0][0] != 0: return True return False