def removeFromFavourites(details): user = Users.find_one({'_id': details['userId']}) newFavouritesList = without(details['factId'], user['favouriteFacts']) Users.update_one({'_id': user['_id']}, {'$set': { 'seenFacts': newFavouritesList }}) return 'OK'
def addToFavourites(details): user = Users.find_one({'_id': details['userId']}) newFavouritesList = append(details['factId'], user['favouriteFacts']) Users.update_one({'_id': user['_id']}, {'$set': { 'seenFacts': newFavouritesList }}) return 'OK'
def markAsSeenByUser(details): user = Users.find_one({'_id': details['userId']}) newSeenList = append(details['factId'], user['seenFacts']) Users.update_one({'_id': user['_id']}, {'$set': { 'seenFacts': newSeenList }}) return 'OK'
def getUnseenForUser(userId): user = Users.find_one({'_id': userId}) seenList = user['seenQuotes'] detailedSeenList = map(getById, seenList) seenTextList = map(returnQuote, detailedSeenList) seenQuotes = dict.fromkeys(set(seenTextList), 0) allQuotes = getAll() return without(seenQuotes, allQuotes)
def getSeenForUser(userId): user = Users.find_one({'_id': userId}) seenList = user['seenQuotes'] return map(getById, seenList)
def getFavourites(userId): user = Users.find_one({'_id': userId}) favouritesList = user['favouriteQuotes'] return map(getById, favouritesList)