def friends(): with friends_queries() as q: friends_list = q.get_friends(current_user.user_id) friends = [] pending = [] for row in friends_list: if row[0] == current_user.user_id: if row[2]: pending.append(row[2].decode('utf-8')) else: friends.append({ 'name': q.get_user_repr(row[1]), 'email': q.get_user_email(row[1]), 'profile_pic': '1.jpg', 'back_pic': '1-01.jpg' }) else: friends.append({ 'name': q.get_user_repr(row[0]), 'email': q.get_user_email(row[0]), 'profile_pic': '1.jpg', 'back_pic': '1-01.jpg' }) return render_template('friends.html', friends=friends, pending=pending)
def calendar(): """ """ with friends_queries() as queries: invites = queries.get_user_invites(current_user.user_id) invites = len(invites) if invites else 0 invites += len(queries.get_friend_requests(current_user.email)) return render_template('calendar.html', name=current_user.username(), notifier=invites)
def accept_friend(): if request.method == 'POST': sender = request.form.get('friend_id', None) if sender: with friends_queries() as queries: if queries.check_friend(sender, None, current_user.email): queries.accept_friend(sender, current_user.user_id, current_user.email) return json.dumps({'success': 'true'}) return json.dumps({'success': 'false'})
def notifications(): with db.ConnectionInstance() as q: invites = q.get_user_invites(current_user.user_id) with friends_queries() as q: friend_ids = q.get_friend_requests(current_user.email) friend_requests = [{ 'user_id': fid[0], 'sender': q.get_user_repr(fid[0]) } for fid in friend_ids] return render_template('notifications.html', cal_invites=invites, friend_requests=friend_requests)
def friend_request(): if request.method == 'POST': invites = re.sub('\s+', ' ', request.form.get('invites', '')).strip() invites = re.split(',| |;', invites) with friends_queries() as queries: for email in invites: # send email to email sender = current_user.username() sent = send_friend_request(sender, email) #add request to database if sent and not queries.check_friend( current_user.user_id, queries.get_user_id(email), email): queries.add_friend(current_user.user_id, email) return json.dumps({'success': 'true'}) return json.dumps({'success': 'false'})
def remove_friend(): print(request.form) if request.method == 'POST': friend_email = request.form.get('email', None) if friend_email: with friends_queries() as queries: friend_id = queries.get_user_id(friend_email) row = queries.check_friend(current_user.user_id, friend_id, friend_email) if row: queries.remove_friend(row) row = queries.check_friend(friend_id, current_user.user_id, current_user.email) if row: queries.remove_friend(row) return json.dumps({'success': 'true'}) return json.dumps({'success': 'false'})