コード例 #1
0
ファイル: book.py プロジェクト: magnitou/Bookflix_ing2
def validate_date(isbn):
    set_db()
    complete = Book.is_complete(isbn)
    if complete:
        book = Book.find_by_isbn(isbn)
        today = dt.datetime.now()#.strfstrftime("%Y-%m-%d")
        if book is None:
            caps = Book.allChapter(isbn)            
            for cap in caps:
                if cap['available_to'] is not None and today > cap['available_to']:
                    print("Se encontro un capitulo vencido")
                    return False
                if cap['available_from'] is not None and today < cap['available_from']:
                    print("Se encontro un capitulo no disponible")
                    return False
            print("Ningun Capitulo se vencio")
            return True
        else:
            if book['available_to'] is not None and today > book['available_to']:
                print("El libro esta vencido")
                return False
            if book['available_from'] is not None and today < book['available_from']:
                print("El libro aun no esta disponible")
                return False
            else:
                print("El libro no esta vencido")
                return True                                
    else:
        print("Aun no se cargo el libro")
        return False
コード例 #2
0
ファイル: book.py プロジェクト: magnitou/Bookflix_ing2
def create_chapter(isbn):
    set_db()
    print("Crea cap")
    if not Book.is_complete(isbn):    
        if request.files: 
            archivo = request.files['archivo']
            book_name = Book.find_meta_by_isbn(isbn)['titulo']
            chapter_name = book_name + "_cap_"+str(request.form['num'])+".pdf"
            if not os.path.exists(static_path+book_name):
                os.mkdir(static_path+book_name)            
            if validate_chapter_isbn(isbn, request.form['num']):
                archivo.save(os.path.join(static_path+book_name, chapter_name))
                Book.create_chapter(request.form, chapter_name,isbn)
            else:
                flash("El capitulo  ya fue cargado")#+str(request.form['num']+
                return redirect(url_for("book_new_chapter", isbn=isbn))
        
        if request.form['completo']=="True":            
            Book.mark_complete(isbn)
            merger(book_name)
        
        flash("Capitulo cargado")
    else:
        flash("Ya se cargo todo el libro")
    print("Hizo todo")
    return redirect(url_for("book_menu"))
コード例 #3
0
ファイル: book.py プロジェクト: magnitou/Bookflix_ing2
def create(isbn): #Crea / Guarda un archivo de libro
    set_db()
    if validate_book_isbn(isbn) and not Book.is_complete(isbn):    
        if request.files: 
            archivo = request.files['archivo']
            book_name = Book.find_meta_by_isbn(isbn)['titulo']  
            if not os.path.exists(static_path+book_name):          
                os.mkdir(static_path+book_name)        
            archivo.save(os.path.join(static_path+book_name, book_name+"_Full.pdf"))
        Book.create(request.form, book_name+"_Full.pdf",isbn)
        Book.mark_complete(isbn)
        print(Book.is_complete(isbn))
        flash("Libro cargado")
    else:
        flash("Ya existe un libro con el mismo ISBN")
    return redirect(url_for("book_menu"))
コード例 #4
0
ファイル: book.py プロジェクト: magnitou/Bookflix_ing2
def new_chapter(isbn):
    set_db()
    if not Book.is_complete(isbn):
        titulo = Book.find_meta_by_isbn(isbn)['titulo']
        today = dt.datetime.now().strftime("%Y-%m-%d")
        return render_template('books/new_chapter.html', isbn=isbn, titulo=titulo, today=today)
    else:
        if validate_book_isbn(isbn):
            flash("Ya se cargaron todos los capitulos")
        else:
            flash("Ya se cargó el libro")
    return redirect(url_for("book_menu"))
コード例 #5
0
ファイル: book.py プロジェクト: magnitou/Bookflix_ing2
def delete_chapter(isbn, num):
    set_db()
    filename = Book.find_chapter_by_isbn(isbn, num)['archivo']
    book_name = Book.find_meta_by_isbn(isbn)['titulo']
    if filename is not None and filename in os.listdir(static_path+book_name):
        os.remove(static_path+book_name+'/'+filename)
        if Book.is_complete(isbn):
            os.remove(static_path+book_name+'/'+book_name+'_Full.pdf')
            Book.mark_incomplete(isbn)
        Book.delete_chapter(isbn, num)
        flash("Archivo eliminado")
    else:
        flash("Algo raro paso")
    return redirect(url_for("book_menu"))