Пример #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)
Пример #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)
Пример #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
Пример #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
Пример #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)
Пример #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)
Пример #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)
Пример #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)
Пример #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)
Пример #10
0
def remove_user_credits(username, credit):
    user = load_serialized_user(username)
    user.credits -= credit
    serialize_user(user, username)
Пример #11
0
def add_user_credits(username, credit):
    user = load_serialized_user(username)
    user.credits += credit
    update_serialized_user(user)
Пример #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,
Пример #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')),
Пример #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)
Пример #15
0
def remove_user_credits(username, credit):
    user = load_serialized_user(username)
    user.credits -= credit
    serialize_user(user, username)
Пример #16
0
def add_user_credits(username, credit):
    user = load_serialized_user(username)
    user.credits += credit
    update_serialized_user(user)