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
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"))
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"))
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"))
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"))