def profile(): load_user(user['user_id']) form = EditProfileForm(request.form) if request.method == 'POST': # profile_photo = request.files["image"] query = [ user['user_id'], '', form.profile_name.data, form.profile_bio.data, form.fb_handle.data, form.twitter_handle.data, form.ig_handle.data, form.linkedIn_handle.data, form.github_handle.data, hash_password(form.pwd.data), hash_password(form.pwd_repeat.data) ] print(query) final_pwd = '' if form.pwd.data == form.pwd_repeat.data and ( form.pwd.data != '' or form.pwd.data is not None): final_pwd = form.pwd.data cur.callproc('user_profile_updates', [ user['user_id'], '', form.profile_name.data, form.profile_bio.data, form.fb_handle.data, form.twitter_handle.data, form.ig_handle.data, form.linkedIn_handle.data, form.github_handle.data, hash_password(final_pwd), ]) temp = cur.fetchall() conn.commit() return redirect(url_for('useraccounts.profile')) cur.callproc('get_active_months', [ user['user_id'], ]) temp = cur.fetchall() month = [temp] month = list(dict.fromkeys(month[0])) cur.callproc('get_logs', [ user['user_id'], ]) temp = cur.fetchall() data = [temp] logs = {'month': month, 'data': data} return render_template('profile.html', title='Profile', user=user, user_boards=user_boards, user_pages=user_pages, logs=logs)
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 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 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 timeline(): cur.callproc('get_active_months', [ user['user_id'], ]) temp = cur.fetchall() month = [temp] month = list(dict.fromkeys(month[0])) cur.callproc('get_logs', [ user['user_id'], ]) temp = cur.fetchall() data = [temp] logs = {'month': month, 'data': data} print(logs) return render_template('timeline.html', title='Timeline', user=user, user_boards=user_boards, user_pages=user_pages, logs=logs)
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 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 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 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
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 get_index(): cur.execute(query) row = cur.fetchone() rows = cur.fetchall() print(rows) return render_template('index.html', exhibits=rows)