コード例 #1
0
ファイル: sidebar.py プロジェクト: dat210a/calendarize
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)
コード例 #2
0
ファイル: main_app.py プロジェクト: dat210a/calendarize
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)
コード例 #3
0
ファイル: sidebar.py プロジェクト: dat210a/calendarize
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'})
コード例 #4
0
ファイル: sidebar.py プロジェクト: dat210a/calendarize
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)
コード例 #5
0
ファイル: sidebar.py プロジェクト: dat210a/calendarize
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'})
コード例 #6
0
ファイル: sidebar.py プロジェクト: dat210a/calendarize
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'})