def is_blocked(user_id, user_id_blocked): # inform data1 user blocked a other user list_data_1 = query_db(QUERY_USER_BLOCKED, (user_id, user_id_blocked), is_data_fetched=True) # inform data2 user were blocked by a other user list_data_2 = query_db(QUERY_USER_BLOCKED, (user_id_blocked, user_id), is_data_fetched=True) if list_data_1 and len(list_data_1) > 0: return 1 elif list_data_2 and len(list_data_2) > 0: return 2 return 0
def is_blocked(user_id, user_blocked): if query_db(QUERY_USER_BLOCKED, ( user_id, user_blocked, )): return 1 return 0
def unblock(user_id): if query_db(QUERY_UNBLOCK_USER, (user_id), is_data_fetched=True): print "Unblock successfully" return True print "Can not unblock" return False
def get_id(username, password): list_data = query_db(QUERY_LOGIN, ( username, password, ), is_data_fetched=True) user_id = list_data[0]['id'] return user_id
def search_friend(user_id, nickname): list_friends = query_db(QUERY_SEARCHING_FRIEND, ( user_id, '%' + nickname + '%', ), is_data_fetched=True) return list_friends
def sent_message(recipient_id, message_content, sender_id): if is_blocked(recipient_id, sender_id): print "You are blocked" return False if query_db(QUERY_SENT_MESSAGE, (recipient_id, message_content, sender_id)): return True else: return False
def block(user_id, user_id_blocked): if query_db(QUERY_BLOCKED_USER, ( user_id, user_id_blocked, )): return True else: print('Can not blocked') return False
def detail_message(user_id, friend_id): messages = query_db(QUERY_DETAIL_MESSAGE, ( user_id, friend_id, friend_id, user_id, ), is_data_fetched=True) if messages and len(messages) > 0: # update message seen is true for message in messages: if message['recipient_id'] == user_id: query_db(QUERY_MESSAGE_SEEN, ( user_id, friend_id, )) return messages print "Have no detail message"
def is_friend_existed(user_id, friend_id): list_data = query_db(QUERY_FRIEND, ( user_id, friend_id, ), is_data_fetched=True) if list_data and len(list_data) > 0: return True return False
def view_friends_by_contact_time(user_id): # Query friend in message list_friends_in_message = query_db(QUERY_FRIENDS_IN_MESSAGE, (user_id, ), is_data_fetched=True) list_friend_ids = list() ret_data = list() if len(list_friends_in_message) > 0: for friend in list_friends_in_message: if friend['friend_id'] not in list_friend_ids: list_friend_ids.append(friend['friend_id']) ret_data.append(friend) # all friend list_friends = query_db(QUERY_FRIENDS, (user_id, ), is_data_fetched=True) if len(list_friends) > 0: for friend in list_friends: if friend['friend_id'] not in list_friend_ids: ret_data.append(friend) return ret_data
def group_friend_by_lives_in(user_id): list_friends = query_db(QUERY_GROUP_FRIENDS, (user_id, ), is_data_fetched=True) ret_data = dict() for friend in list_friends: lives_in = friend['lives_in'].lower() if lives_in in ret_data: ret_data[lives_in].append(friend['nickname']) else: ret_data[lives_in] = list() ret_data[lives_in].append(friend['nickname']) return ret_data
def login(username, password): list_data = query_db(QUERY_LOGIN, ( username, password, ), is_data_fetched=True) if list_data and len(list_data) > 0: user_id = list_data[0]['id'] if change_status_login(user_id): print("login successfully") return True else: print "Can not login" return False
def register(email, fullname, birth_of_date, sex, username, password, lives_in=None): if query_db(QUERY_REGISTER_ACCOUNT, ( email, fullname, birth_of_date, sex, username, password, lives_in, )): return True return False
def view_message(user_id, username): messages = query_db(QUERY_MESSAGE.format(username), ( user_id, user_id, ), is_data_fetched=True) list_ids = list() ret_data = list() # list message unread for message in messages: item = dict() if message['recipient_id'] == user_id: if message['sender_id'] not in list_ids: list_ids.append(message['sender_id']) item['id'] = message['sender_id'] item['username'] = message['username'] item['unread'] = 0 if message['seen'] == 0: item['unread'] = 1 ret_data.append(item.copy()) else: if message['seen'] == 0: for item in ret_data: if message['sender_id'] == item['id']: item['unread'] += 1 # list message sent for message in messages: item = dict() if message['sender_id'] == user_id: if message['recipient_id'] not in list_ids: list_ids.append(message['recipient_id']) item['id'] = message['recipient_id'] item['username'] = message['username'] ret_data.append(item.copy()) return ret_data
def view_list_block(user_id): list_users_blocked = query_db(QUERY_LIST_BLOCK, (user_id, ), is_data_fetched=True) return list_users_blocked
def remove_block(user_id, user_id_blocked): if query_db(QUERY_UNBLOCK, (user_id, user_id_blocked)): return True return False
def get_user_info_by_id(user_id): ret_data = query_db(QUERY_INFO_BY_ID, (user_id, ), is_data_fetched=True) if ret_data and len(ret_data) > 0: item = ret_data[0] return item
def edit_nicknames(friend_id, new_nickname): if query_db(QUERY_EDIT_NICKNAME, (new_nickname, friend_id)): print " edit successfully" return 1 print "edit unsuccessfully" return 0
def change_status_login(id): if query_db(QUERY_STATUS_LOGIN, (id, )): return True return False
def is_email_existed(email): list_data = query_db(QUERY_EMAIL, (email, ), is_data_fetched=True) if list_data and len(list_data) > 0: return True return False
def search_username(username): list_username = query_db(QUERY_SEARCH_USERNAME, ("%" + username + "%", ), is_data_fetched=True) return list_username
def remove_friend(user_id, friend_id): if query_db(QUERY_UNFRIEND, (user_id, friend_id)): return True return False
def logout(user_id): if query_db(QUERY_LOGOUT, (user_id, )): print "logout successfully" return True print "(Waring) Can not logout" return False
def count_message_unread(user_id): messages_unread = query_db(QUERY_MESSAGE_UNREAD, (user_id, ), is_data_fetched=True) return messages_unread
def add_friend(user_id, friend_id, username): if query_db(QUERY_ADD_FRIEND, (user_id, friend_id, username)): return True return False
def show_list_block(user_id): # Show list block list_block = query_db(QUERY_LIST_BLOCK, (user_id, ), is_data_fetched=True) if list_block and len(list_block) > 0: return list_block
def view_friends(user_id): list_friends = query_db(QUERY_FRIENDS, (user_id, ), is_data_fetched=True) if list_friends and len(list_friends) > 0: return list_friends
def detail_friend(friend_id): list_info_friend = query_db(QUERY_DETAIL_FRIEND, (friend_id, ), is_data_fetched=True) return list_info_friend
def is_user_existed(user_id): if query_db(QUERY_USER, (user_id, )): return True return False
def list_friend_blocked(user_id): return list_friend_blocked == query_db(QUERY_FRIEND_BLOCK, (user_id, ), is_data_fetched=True)