Esempio n. 1
0
def add_user(username, password, email, head_image_url, token):
    if usersdb.find_one({'email': email}):
        return JSONResponseUserAlreadyExist
    tmpusers = usersdb.find().sort([('user_id', -1)]).limit(1)

    lastuser = None
    for user in tmpusers:
        lastuser = user
    new_user_id = 1
    if lastuser is not None and 'user_id' in lastuser:
        new_user_id = int(lastuser['user_id']) + 1

    tmpuser = {
        'user_id': new_user_id,
        'username': username,
        'email': email,
        'head_image_url': head_image_url,
        'password': password,
        'deactivated': False
    }

    usersdb.insert(tmpuser)
    changeTokenUser(token, new_user_id)
    log("User %s created, username = %s, password = %s, email = %s, head_image_url = %s"
        % (new_user_id, username, password, email, head_image_url))
    return JSONResponse(dumps(tmpuser))
Esempio n. 2
0
def add_user(username, password, email, head_image_url, token):
    if usersdb.find_one({'email': email}):
        return JSONResponseUserAlreadyExist
    tmpusers = usersdb.find().sort([('user_id', -1)]).limit(1)

    lastuser = None
    for user in tmpusers:
        lastuser = user
    new_user_id = 1
    if lastuser is not None and 'user_id' in lastuser:
        new_user_id = int(lastuser['user_id'])+1

    tmpuser = {
        'user_id': new_user_id,
        'username': username,
        'email': email,
        'head_image_url': head_image_url,
        'password': password,
        'deactivated': False
    }

    usersdb.insert(tmpuser)
    changeTokenUser(token, new_user_id)
    log("User %s created, username = %s, password = %s, email = %s, head_image_url = %s" % (new_user_id, username, password, email, head_image_url))
    return JSONResponse(dumps(tmpuser))
Esempio n. 3
0
def del_user(user_id):
    tmpuser = usersdb.find_one({'user_id': user_id})
    if tmpuser is None:
        return JSONResponseUserNotFound
    tmpuser = usersdb.update({'user_id': user_id}, {'$set': {'deactivated': True}})
    log("User %s deactivated" % user_id)
    return JSONResponse(dumps(tmpuser))
Esempio n. 4
0
def save_upload_file(file, user_id, subdir):
    if isAllowedFile(file.filename):
        if file is not None:
            UPLOAD_SUBFOLDER = str(user_id) + '/' + subdir
            UPLOAD_FOLDER = os.getcwd() + '/uploads'
            UPLOAD_FOLDER = os.path.join(UPLOAD_FOLDER, UPLOAD_SUBFOLDER)
            if not os.path.exists(UPLOAD_FOLDER):
                os.makedirs(UPLOAD_FOLDER)
            savepath = os.path.join(UPLOAD_FOLDER,
                                    secure_filename(file.filename))
            log("User %s uploaded %s to %s" %
                (user_id, secure_filename(file.filename), savepath))
            file.save(savepath)
            if subdir == COVER_IMAGES_SUBDIR:
                return JSONResponse(
                    dumps({
                        'cover_image_url':
                        "%s%s/%s" % (BASE_URL, UPLOAD_SUBFOLDER,
                                     secure_filename(file.filename))
                    }))
            else:
                return JSONResponse(
                    dumps({
                        'head_image_url':
                        "%s%s/%s" % (BASE_URL, UPLOAD_SUBFOLDER,
                                     secure_filename(file.filename))
                    }))
        else:
            return JSONResponse(dumps({'message': "Null file provided."}), 400)
    else:
        return JSONResponse(dumps({'message': 'Not allowed file format.'}),
                            400)
Esempio n. 5
0
def get_new_token():
    randomToken = generateAccessToken()
    expire_time = int(time.time()) + expire_seconds
    tmptoken = {'token': randomToken, 'user_id': 0, 'expire_time': expire_time}
    tokensdb.insert_one(tmptoken)
    log("Token %s generated, expired when %s seconds" %
        (randomToken, expire_time))
    return JSONResponse(dumps(tmptoken), 201)
 def __init__(self, response_dict_or_string="", response_code=200):
     if type(response_dict_or_string) is dict:
         self.response_message = dumps(response_dict_or_string)
     elif type(response_dict_or_string) is list:
         self.response_message = dumps(response_dict_or_string)
     else:
         self.response_message = response_dict_or_string
     self.response_code = response_code
     log("Created JSON response, return code=%s, message=%s" % (self.response_code, self.response_message))
Esempio n. 7
0
def del_book(user_id, book_id):
    if not isBookExist(user_id, book_id):
        return JSONResponse(jsonify({'message': "book %s not found." % (book_id)}), 404)
    allcategories = categorysdb.find({'$and': [{'user_id': user_id}, {'book_list': book_id}]}).sort('category_id', 1)
    for category in allcategories:
        del_books_from_category(user_id, category['category_id'], book_id)
    updateResult = booksdb.update({'$and': [{'user_id': user_id}, {'book_id': book_id}]}, {'$set': {'deleted': True}})
    log("User %s deleted book %s" % (user_id, book_id))
    return JSONResponse(updateResult)
Esempio n. 8
0
def add_book(user_id,
             bookname,
             author="",
             publisher="",
             publish_date="",
             price=0,
             ISBN="",
             tags=[],
             cover_image_url='http://i.imgur.com/zNPKpwk.jpg',
             category=[]):
    new_book_id = 1
    tmpbooks = booksdb.find().sort([('book_id', -1)]).limit(1)
    for book in tmpbooks:
        lastbook = book
    if lastbook['user_id'] is not None:
        new_book_id = int(lastbook['book_id']) + 1
    nowtime = time.time()
    if price == "":
        price = 0

    tmpbook = {
        'book_id': new_book_id,
        'bookname': bookname,
        'author': author,
        'publisher': publisher,
        'publish_date': publish_date,
        'price': float(price),
        'ISBN': ISBN,
        'user_id': user_id,
        'tags': tags,
        'cover_image_url': cover_image_url,
        'deleted': False,
        'create_time': nowtime,
        'update_time': nowtime,
    }
    booksdb.insert(tmpbook)
    if type(category) is list:
        addresult = JSONResponse()
        for category_id in category:
            addresult = add_books_to_category(user_id, category_id,
                                              new_book_id)
    elif type(category) is int:
        addresult = add_books_to_category(user_id, category, new_book_id)
    if int(addresult.response_code) / 100 != 2:
        return addresult

    if type(category) is list:
        tmpbook[
            'category_id'] = category  # category data is stored in categorysdb, so it is not inserted to booksdb.
    elif type(category) is int:
        tmpbook['category_id'] = list()
        tmpbook['category_id'].append(category)
    log("User %s created a book, id=%s, bookname=\"%s\", author=\"%s\", publisher=\"%s\", publish_date=\"%s\", price=\"%s\", ISBN=\"%s\" tags=\"%s\", create_time=\"%s\", update_time=\"%s\", categoey=\"%s\""
        % (user_id, new_book_id, bookname, author, publisher, publish_date,
           price, ISBN, tags, nowtime, nowtime, category))
    return JSONResponse(dumps(tmpbook), 201)
Esempio n. 9
0
def del_user(user_id):
    tmpuser = usersdb.find_one({'user_id': user_id})
    if tmpuser is None:
        return JSONResponseUserNotFound
    tmpuser = usersdb.update({'user_id': user_id},
                             {'$set': {
                                 'deactivated': True
                             }})
    log("User %s deactivated" % user_id)
    return JSONResponse(dumps(tmpuser))
Esempio n. 10
0
 def __init__(self, response_dict_or_string="", response_code=200):
     if type(response_dict_or_string) is dict:
         self.response_message = dumps(response_dict_or_string)
     elif type(response_dict_or_string) is list:
         self.response_message = dumps(response_dict_or_string)
     else:
         self.response_message = response_dict_or_string
     self.response_code = response_code
     log("Created JSON response, return code=%s, message=%s" %
         (self.response_code, self.response_message))
Esempio n. 11
0
def get_new_token():
    randomToken = generateAccessToken()
    expire_time = int(time.time()) + expire_seconds
    tmptoken = {
        'token': randomToken,
        'user_id': 0,
        'expire_time': expire_time
    }
    tokensdb.insert_one(tmptoken)
    log("Token %s generated, expired when %s seconds" % (randomToken, expire_time))
    return JSONResponse(dumps(tmptoken), 201)
Esempio n. 12
0
def del_category(user_id, category_id):
    if not isCategoryExist(user_id, category_id):
        return JSONResponse(
            jsonify({'message': "category %s not found." % category_id}), 404)
    updateResult = categorysdb.update(
        {'$and': [{
            'user_id': user_id
        }, {
            'category_id': category_id
        }]}, {'$set': {
            'deleted': True
        }})
    log("User %s deleted category %s" % (user_id, category_id))
    return JSONResponse(updateResult)
Esempio n. 13
0
def add_books_to_category(user_id, category_id, book_list_or_int):
    if not isCategoryExist(user_id, category_id):
        return JSONResponse(jsonify({'message': 'category not found'}), 404)
    if type(book_list_or_int) is list:
        for book_id in book_list_or_int:
            if not isBookExist(user_id, book_id):
                return JSONResponse(
                    jsonify({
                        'message':
                        'User %s doesn\'t own book %s' % (user_id, book_id)
                    }))
        categorysdb.update(
            {'$and': [{
                'user_id': user_id
            }, {
                'category_id': category_id
            }]}, {'$addToSet': {
                'book_list': {
                    '$each': book_list_or_int
                }
            }})
    if type(book_list_or_int) is int:
        if not isBookExist(user_id, book_list_or_int):
            return JSONResponse(
                jsonify({
                    'message':
                    'User %s doesn\'t own book %s' %
                    (user_id, book_list_or_int)
                }))
        categorysdb.update(
            {'$and': [{
                'user_id': user_id
            }, {
                'category_id': category_id
            }]}, {'$addToSet': {
                'book_list': book_list_or_int
            }})
    else:
        return JSONResponse(
            jsonify({'message': 'Wrong book_id data type provided.'}), 400)
    tmpcategory = categorysdb.find_one(
        {'$and': [{
            'user_id': user_id
        }, {
            'category_id': category_id
        }]})
    log("User %s added books %s to category %s" %
        (user_id, book_list_or_int, category_id))
    return JSONResponse(dumps(tmpcategory), 200)
Esempio n. 14
0
def add_book(user_id,bookname, author="", publisher="", publish_date="", price=0, ISBN="", tags=[],
             cover_image_url='http://i.imgur.com/zNPKpwk.jpg', category=[]):
    new_book_id = 1
    tmpbooks = booksdb.find().sort([('book_id', -1)]).limit(1)
    for book in tmpbooks:
        lastbook = book
    if lastbook['user_id'] is not None:
        new_book_id = int(lastbook['book_id'])+1
    nowtime = time.time()
    if price == "":
        price = 0

    tmpbook = {
        'book_id': new_book_id,
        'bookname': bookname,
        'author': author,
        'publisher': publisher,
        'publish_date': publish_date,
        'price': float(price),
        'ISBN': ISBN,
        'user_id': user_id,
        'tags': tags,
        'cover_image_url': cover_image_url,
        'deleted': False,
        'create_time': nowtime,
        'update_time': nowtime,
    }
    booksdb.insert(tmpbook)
    if type(category) is list:
        addresult = JSONResponse()
        for category_id in category:
            addresult = add_books_to_category(user_id, category_id, new_book_id)
    elif type(category) is int:
        addresult = add_books_to_category(user_id, category, new_book_id)
    if int(addresult.response_code)/100 != 2:
            return addresult


    if type(category) is list:
        tmpbook['category_id'] = category # category data is stored in categorysdb, so it is not inserted to booksdb.
    elif type(category) is int:
        tmpbook['category_id'] = list()
        tmpbook['category_id'].append(category)
    log("User %s created a book, id=%s, bookname=\"%s\", author=\"%s\", publisher=\"%s\", publish_date=\"%s\", price=\"%s\", ISBN=\"%s\" tags=\"%s\", create_time=\"%s\", update_time=\"%s\", categoey=\"%s\""
          % (user_id, new_book_id, bookname, author, publisher, publish_date, price, ISBN, tags, nowtime, nowtime, category))
    return JSONResponse(dumps(tmpbook), 201)
Esempio n. 15
0
def login(email, password, token):
    log ("user %s is logging in, password = %s, token = %s" % (email, password, token))
    if time.time() > getTokenExpireTime(token):
        log("token %s expired" % (token))
        return JSONREsponseTokenExpired
    tmpuser = usersdb.find_one({'email': email})
    if tmpuser is None:
        log("User %s not found." % email)
        return JSONResponseUserNotFound
    if tmpuser['deactivated'] is True:
        return JSONResponseUserDeactivated
    if tmpuser['password'] == password:
        changeTokenUser(token, tmpuser['user_id'])
        log("User %s logged in with token %s" % (email, token))
        tmpuser["message"] = "Login successful"
        return JSONResponse(dumps(tmpuser))
    else:
        log("User %s logged in with wrong password" % email)
        return JSONResponseWrongPassword
Esempio n. 16
0
def login(email, password, token):
    log("user %s is logging in, password = %s, token = %s" %
        (email, password, token))
    if time.time() > getTokenExpireTime(token):
        log("token %s expired" % (token))
        return JSONREsponseTokenExpired
    tmpuser = usersdb.find_one({'email': email})
    if tmpuser is None:
        log("User %s not found." % email)
        return JSONResponseUserNotFound
    if tmpuser['deactivated'] is True:
        return JSONResponseUserDeactivated
    if tmpuser['password'] == password:
        changeTokenUser(token, tmpuser['user_id'])
        log("User %s logged in with token %s" % (email, token))
        tmpuser["message"] = "Login successful"
        return JSONResponse(dumps(tmpuser))
    else:
        log("User %s logged in with wrong password" % email)
        return JSONResponseWrongPassword
Esempio n. 17
0
def update_category(user_id, cataogry_id, category_name=""):
    if not isCategoryExist(user_id, cataogry_id):
        return JSONResponse(
            jsonify({'message': "category %s not found." % (cataogry_id)}),
            404)
    updated = None
    if category_name != "":
        oldCatagory = categorysdb.find_one({
            '$and': [{
                'user_id': user_id
            }, {
                'category_name': category_name
            }, {
                'deleted': False
            }]
        })
        if oldCatagory is not None:
            return JSONResponse(
                jsonify(
                    {'message': "Catagory %s already exist." % category_name}))
        updated = categorysdb.update(
            {'$and': [{
                'user_id': user_id
            }, {
                'category_id': cataogry_id
            }]}, {'$set': {
                'category_name': category_name
            }})
        if updated is not None:
            log("Updated user %s's category %s's category_name to %s" %
                (user_id, cataogry_id, category_name))
    tmpbook = categorysdb.find_one(
        {'$and': [{
            'user_id': user_id
        }, {
            'category_id': cataogry_id
        }]})  # Get updated data.
    return JSONResponse(dumps(tmpbook))
Esempio n. 18
0
def del_book(user_id, book_id):
    if not isBookExist(user_id, book_id):
        return JSONResponse(
            jsonify({'message': "book %s not found." % (book_id)}), 404)
    allcategories = categorysdb.find({
        '$and': [{
            'user_id': user_id
        }, {
            'book_list': book_id
        }]
    }).sort('category_id', 1)
    for category in allcategories:
        del_books_from_category(user_id, category['category_id'], book_id)
    updateResult = booksdb.update(
        {'$and': [{
            'user_id': user_id
        }, {
            'book_id': book_id
        }]}, {'$set': {
            'deleted': True
        }})
    log("User %s deleted book %s" % (user_id, book_id))
    return JSONResponse(updateResult)
Esempio n. 19
0
def add_category(user_id, category_name):
    oldCatagory = categorysdb.find_one({
        '$and': [{
            'user_id': user_id
        }, {
            'category_name': category_name
        }, {
            'deleted': False
        }]
    })
    if oldCatagory is not None:
        return JSONResponse(
            jsonify({'message': "Catagory %s already exist." % category_name}),
            403)

    new_category_id = 1
    lastcata = dict()
    lastcata['category_id'] = 1
    tmpcatas = categorysdb.find().sort([('category_id', -1)]).limit(1)
    for cata in tmpcatas:
        lastcata = cata
    if lastcata['category_id'] is not None:
        new_category_id = int(lastcata['category_id']) + 1

    category = {
        'category_id': new_category_id,
        'category_name': category_name,
        'user_id': user_id,
        'book_list': [],
        'deleted': False
    }

    categorysdb.insert(category)
    log("User %s created a category, category_id = %s , category_name = %s" %
        (user_id, new_category_id, category_name))
    return JSONResponse(dumps(category), 201)
Esempio n. 20
0
def update_user(user_id, username="", password="", head_image_url=""):
    tmpuser = usersdb.find_one({'user_id': user_id})
    if tmpuser is None:
        return JSONResponseUserNotFound

    if username != "":
        usersdb.update({'user_id': user_id}, {'$set': {'username': username}})
        log("Updated user %s's username to %s" % (user_id, username))
    if password != "":
        usersdb.update({'user_id': user_id}, {'$set': {'password': password}})
        log("Updated user %s's password to %s" % (user_id, password))
    if head_image_url != "":
        usersdb.update({'user_id': user_id}, {'$set': {'head_image_url': head_image_url}})
        log("Updated user %s's head_image_url to %s" % (user_id, head_image_url))

    tmpuser = usersdb.find_one({'user_id': user_id}) #Get updated data.
    return JSONResponse(dumps(tmpuser))
Esempio n. 21
0
def update_user(user_id, username="", password="", head_image_url=""):
    tmpuser = usersdb.find_one({'user_id': user_id})
    if tmpuser is None:
        return JSONResponseUserNotFound

    if username != "":
        usersdb.update({'user_id': user_id}, {'$set': {'username': username}})
        log("Updated user %s's username to %s" % (user_id, username))
    if password != "":
        usersdb.update({'user_id': user_id}, {'$set': {'password': password}})
        log("Updated user %s's password to %s" % (user_id, password))
    if head_image_url != "":
        usersdb.update({'user_id': user_id},
                       {'$set': {
                           'head_image_url': head_image_url
                       }})
        log("Updated user %s's head_image_url to %s" %
            (user_id, head_image_url))

    tmpuser = usersdb.find_one({'user_id': user_id})  #Get updated data.
    return JSONResponse(dumps(tmpuser))
    # Parses configuration file.
    config_parser = SafeConfigParser()
    config_parser.read(args['config_file'])
    path_pre_processed_positive = config_parser.get(
        'data', 'path_pre_processed_positive')
    path_pre_processed_negative = config_parser.get(
        'data', 'path_pre_processed_negative')
    path_svm_hog_detector = config_parser.get('data', 'path_svm_hog_detector')
    path_svm_binary_detector = config_parser.get('data',
                                                 'path_svm_binary_detector')
    image_width = int(config_parser.get('training', 'image_width'))
    image_height = int(config_parser.get('training', 'image_height'))

    # Load images for training.
    logger = Logger()
    logger.log(Logger.INFO, "Loading images to train SVM classifier.")
    positive_images = Files(path_pre_processed_positive)
    negative_images = Files(path_pre_processed_negative)
    samples = []
    responses = []

    for file_path in positive_images.paths:
        # Load image.
        image = Image(file_path)

        # Convert and equalize image.
        image.convert_to_gray()

        # Add image for training.
        samples.append(image)
        responses.append(1)
Esempio n. 23
0
def update_book(user_id, book_id, bookname="", author="", publisher="", publish_date="", price=0, ISBN="", tags=[], cover_image_url=""):
    if not isBookExist(user_id, book_id):
        return JSONResponse(jsonify({'message': "book %s not found." % (book_id)}), 404)
    updated = 0
    if bookname != "":
        updated = booksdb.update({'$and': [{'user_id': user_id}, {'book_id': book_id}]}, {'$set': {'bookname': bookname}})
        log("Updated user %s's book %s's bookname to %s" % (user_id, book_id, bookname))
    if author != "":
        updated = booksdb.update({'$and': [{'user_id': user_id}, {'book_id': book_id}]}, {'$set': {'author': author}})
        log("Updated user %s's book %s's author to %s" % (user_id, book_id, author))
    if publisher != "":
        updated = booksdb.update({'$and': [{'user_id': user_id}, {'book_id': book_id}]}, {'$set': {'publisher': publisher}})
        log("Updated user %s's book %s's publisher to %s" % (user_id, book_id, publisher))
    if publish_date != "":
        updated = booksdb.update({'$and': [{'user_id': user_id}, {'book_id': book_id}]}, {'$set': {'publish_date': publish_date}})
        log("Updated user %s's book %s's publish_date to %s" % (user_id, book_id, publish_date))
    if price != 0:
        updated = booksdb.update({'$and': [{'user_id': user_id}, {'book_id': book_id}]}, {'$set': {'price': float(price)}})
        log("Updated user %s's book %s's price to %s" % (user_id, book_id, price))
    if ISBN != "":
        updated = booksdb.update({'$and': [{'user_id': user_id}, {'book_id': book_id}]}, {'$set': {'ISBN': ISBN}})
        log("Updated user %s's book %s's ISBN to %s" % (user_id, book_id, ISBN))
    if tags:
        updated = booksdb.update({'$and': [{'user_id': user_id}, {'book_id': book_id}]}, {'$set': {'tags': tags}})
        log("Updated user %s's book %s's tags to %s" % (user_id, book_id, tags))
    if cover_image_url != "":
        updated = booksdb.update({'$and': [{'user_id': user_id}, {'book_id': book_id}]}, {'$set': {'cover_image_url': cover_image_url}})
        log("Updated user %s's book %s's cover_image_url to %s" % (user_id, book_id, cover_image_url))
    if updated:
        nowtime = time.time()
        booksdb.update({'$and': [{'user_id': user_id}, {'book_id': book_id}]}, {'$set': {'update_time': nowtime}})
        log("Updated user %s's book %s's update_time to %s" % (user_id, book_id, nowtime))
    return get_book_by_id(user_id, book_id)
Esempio n. 24
0
def logout(token):
    changeTokenUser(token, 0)
    log("user %s with token %s is logouted." %
        (get_user_id_by_token(token), token))
    return JSONResponseUserLogoutSuccessful
Esempio n. 25
0
def update_book(user_id,
                book_id,
                bookname="",
                author="",
                publisher="",
                publish_date="",
                price=0,
                ISBN="",
                tags=[],
                cover_image_url=""):
    if not isBookExist(user_id, book_id):
        return JSONResponse(
            jsonify({'message': "book %s not found." % (book_id)}), 404)
    updated = 0
    if bookname != "":
        updated = booksdb.update(
            {'$and': [{
                'user_id': user_id
            }, {
                'book_id': book_id
            }]}, {'$set': {
                'bookname': bookname
            }})
        log("Updated user %s's book %s's bookname to %s" %
            (user_id, book_id, bookname))
    if author != "":
        updated = booksdb.update(
            {'$and': [{
                'user_id': user_id
            }, {
                'book_id': book_id
            }]}, {'$set': {
                'author': author
            }})
        log("Updated user %s's book %s's author to %s" %
            (user_id, book_id, author))
    if publisher != "":
        updated = booksdb.update(
            {'$and': [{
                'user_id': user_id
            }, {
                'book_id': book_id
            }]}, {'$set': {
                'publisher': publisher
            }})
        log("Updated user %s's book %s's publisher to %s" %
            (user_id, book_id, publisher))
    if publish_date != "":
        updated = booksdb.update(
            {'$and': [{
                'user_id': user_id
            }, {
                'book_id': book_id
            }]}, {'$set': {
                'publish_date': publish_date
            }})
        log("Updated user %s's book %s's publish_date to %s" %
            (user_id, book_id, publish_date))
    if price != 0:
        updated = booksdb.update(
            {'$and': [{
                'user_id': user_id
            }, {
                'book_id': book_id
            }]}, {'$set': {
                'price': float(price)
            }})
        log("Updated user %s's book %s's price to %s" %
            (user_id, book_id, price))
    if ISBN != "":
        updated = booksdb.update(
            {'$and': [{
                'user_id': user_id
            }, {
                'book_id': book_id
            }]}, {'$set': {
                'ISBN': ISBN
            }})
        log("Updated user %s's book %s's ISBN to %s" %
            (user_id, book_id, ISBN))
    if tags:
        updated = booksdb.update(
            {'$and': [{
                'user_id': user_id
            }, {
                'book_id': book_id
            }]}, {'$set': {
                'tags': tags
            }})
        log("Updated user %s's book %s's tags to %s" %
            (user_id, book_id, tags))
    if cover_image_url != "":
        updated = booksdb.update(
            {'$and': [{
                'user_id': user_id
            }, {
                'book_id': book_id
            }]}, {'$set': {
                'cover_image_url': cover_image_url
            }})
        log("Updated user %s's book %s's cover_image_url to %s" %
            (user_id, book_id, cover_image_url))
    if updated:
        nowtime = time.time()
        booksdb.update({'$and': [{
            'user_id': user_id
        }, {
            'book_id': book_id
        }]}, {'$set': {
            'update_time': nowtime
        }})
        log("Updated user %s's book %s's update_time to %s" %
            (user_id, book_id, nowtime))
    return get_book_by_id(user_id, book_id)
Esempio n. 26
0
def logout(token):
    changeTokenUser(token, 0)
    log("user %s with token %s is logouted." % (get_user_id_by_token(token), token))
    return JSONResponseUserLogoutSuccessful