Example #1
0
def submit_upload_form(title, author, genre, isbn, price, uploader, summary, cover_img, file_location):
    """
    Saves file to the database folder, preferably under the blobs subdirectory.
    :param title: str
    :param author: str
    :param genre: str
    :param isbn: str
    :param price: int
    :param uploader: str
    :param summary: str
    :param cover_img: str
    :param file_location: str
    :return:
    """

    # Upload file to subdirectory
    serialize_ebook(EBook(title=title,
                          author=author,
                          genre=genre,
                          isbn=isbn,
                          price=price,
                          uploader=load_serialized_user(uploader),
                          summary=summary,
                          cover_img=cover_img,
                          book_text=convert_pdf_to_txt(file_location)
                          ), isbn, file_location)
Example #2
0
def submit_upload_form(title, author, genre, isbn, price, uploader, summary,
                       cover_img, file_location):
    """
    Saves file to the database folder, preferably under the blobs subdirectory.
    :param title: str
    :param author: str
    :param genre: str
    :param isbn: str
    :param price: int
    :param uploader: str
    :param summary: str
    :param cover_img: str
    :param file_location: str
    :return:
    """

    # Upload file to subdirectory
    serialize_ebook(
        EBook(title=title,
              author=author,
              genre=genre,
              isbn=isbn,
              price=price,
              uploader=load_serialized_user(uploader),
              summary=summary,
              cover_img=cover_img,
              book_text=convert_pdf_to_txt(file_location)), isbn,
        file_location)
Example #3
0
def login_user(username, password):
    user = load_serialized_user(username)
    if user is not None:
        if user.password == password:
            return user
        else:
            return None
    else:
        return None
Example #4
0
def login_user(username, password):
    user = load_serialized_user(username)
    if user is not None:
        if user.password == password:
            return user
        else:
            return None
    else:
        return None
Example #5
0
def remove_ebook_with_infraction(isbn, infraction_reason, timestamp=None):
    book = load_serialized_ebook(isbn)
    user = load_serialized_user(book.uploader.username)
    user.credits -= (book.reward_amount + 100)
    user.infractions[isbn + str(datetime.datetime.now())] = infraction_reason
    check_infractions(user)
    serialize_user(user, user.username)
    delete_ebook_from_users(isbn)
    remove_ebook(isbn)
    if timestamp is not None:
        remove_report(isbn, timestamp)
Example #6
0
def remove_ebook_with_infraction(isbn, infraction_reason, timestamp=None):
    book = load_serialized_ebook(isbn)
    user = load_serialized_user(book.uploader.username)
    user.credits -= (book.reward_amount + 100)
    user.infractions[isbn + str(datetime.datetime.now())] = infraction_reason
    check_infractions(user)
    serialize_user(user, user.username)
    delete_ebook_from_users(isbn)
    remove_ebook(isbn)
    if timestamp is not None:
        remove_report(isbn, timestamp)
Example #7
0
def apply_second_pass_attribute(username, isbn, original_price, su_price):
    """
    Sets the second pass attribute which triggers dialogs to confirm if the uploader
    wants to accept the lower price
    :param username: str
    :param isbn: str
    :param original_price: int
    :param su_price: int
    :return:
    """
    user = load_serialized_user(username)
    user.second_pass[isbn] = (original_price,
                              su_price,)
    serialize_user(user, username)
Example #8
0
def apply_second_pass_attribute(username, isbn, original_price, su_price):
    """
    Sets the second pass attribute which triggers dialogs to confirm if the uploader
    wants to accept the lower price
    :param username: str
    :param isbn: str
    :param original_price: int
    :param su_price: int
    :return:
    """
    user = load_serialized_user(username)
    user.second_pass[isbn] = (
        original_price,
        su_price,
    )
    serialize_user(user, username)
Example #9
0
def blacklist_book_uploader(isbn):
    book = load_serialized_ebook(isbn)
    user = load_serialized_user(book.uploader.username)
    user.is_blacklisted = True
    serialize_user(user, user.username)
Example #10
0
def remove_user_credits(username, credit):
    user = load_serialized_user(username)
    user.credits -= credit
    serialize_user(user, username)
Example #11
0
def add_user_credits(username, credit):
    user = load_serialized_user(username)
    user.credits += credit
    update_serialized_user(user)
Example #12
0
              "Magazine",
              "Religion",
              "Sports"]

init_ISBN = 1000000000
count, user_count, price = 0, 0, 10
user_list = []
lorem = """Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec vel massa non sem tristique condimentum.
Nullam egestas nibh nibh, nec gravida nunc pharetra nec. Nullam accumsan facilisis quam sed laoreet. Nam lorem nisi,
mattis eget justo eu, mattis congue arcu. Aenean vitae urna at justo ultrices congue at eget sem. Suspendisse sed
justo quis enim varius congue. Maecenas venenatis aliquam nulla et congue. Nulla sit amet pellentesque dui. Fusce
tempus massa et dui tempor iaculis."""

for user in os.listdir(USER_DIR_PATH):
    if user.endswith('.pickle'):
        user_list.append(load_serialized_user(user[:-7]))

for pdf in os.listdir(PDF_DIR_PATH):
    if count == len(GENRE_LIST):
        break

    if pdf.endswith('.pdf'):
        e_book = EBook(title=(pdf[:-4]),
                       author="Author#" + str(count),
                       genre=GENRE_LIST[count],
                       price=price,
                       uploader=user_list[user_count],
                       summary=lorem,
                       cover_img=os.path.abspath(os.path.join(COVER_DIR_PATH, 'temp-cover' + str(count) + '.jpg')),
                       isbn=str(init_ISBN),
                       approved=True,
Example #13
0
    "Kids", "Adventure", "Education", "DIY", "Romance", "Comedy", "Fantasy",
    "Biography", "History", "Magazine", "Religion", "Sports"
]

init_ISBN = 1000000000
count, user_count, price = 0, 0, 10
user_list = []
lorem = """Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec vel massa non sem tristique condimentum.
Nullam egestas nibh nibh, nec gravida nunc pharetra nec. Nullam accumsan facilisis quam sed laoreet. Nam lorem nisi,
mattis eget justo eu, mattis congue arcu. Aenean vitae urna at justo ultrices congue at eget sem. Suspendisse sed
justo quis enim varius congue. Maecenas venenatis aliquam nulla et congue. Nulla sit amet pellentesque dui. Fusce
tempus massa et dui tempor iaculis."""

for user in os.listdir(USER_DIR_PATH):
    if user.endswith('.pickle'):
        user_list.append(load_serialized_user(user[:-7]))

for pdf in os.listdir(PDF_DIR_PATH):
    if count == len(GENRE_LIST):
        break

    if pdf.endswith('.pdf'):
        e_book = EBook(title=(pdf[:-4]),
                       author="Author#" + str(count),
                       genre=GENRE_LIST[count],
                       price=price,
                       uploader=user_list[user_count],
                       summary=lorem,
                       cover_img=os.path.abspath(
                           os.path.join(COVER_DIR_PATH,
                                        'temp-cover' + str(count) + '.jpg')),
Example #14
0
def blacklist_book_uploader(isbn):
    book = load_serialized_ebook(isbn)
    user = load_serialized_user(book.uploader.username)
    user.is_blacklisted = True
    serialize_user(user, user.username)
Example #15
0
def remove_user_credits(username, credit):
    user = load_serialized_user(username)
    user.credits -= credit
    serialize_user(user, username)
Example #16
0
def add_user_credits(username, credit):
    user = load_serialized_user(username)
    user.credits += credit
    update_serialized_user(user)