mirror of
https://github.com/janeczku/calibre-web
synced 2024-11-28 04:19:59 +00:00
Upload book without reload complete library
This commit is contained in:
parent
46197d82b5
commit
70c666c380
@ -816,6 +816,7 @@ def upload():
|
||||
calibre_db.session.add(db_book)
|
||||
calibre_db.session.flush()
|
||||
book_id = db_book.id
|
||||
title = db_book.title
|
||||
|
||||
error = helper.update_dir_stucture(book_id, config.config_calibre_dir, input_authors[0])
|
||||
|
||||
@ -833,24 +834,24 @@ def upload():
|
||||
|
||||
# save data to database, reread data
|
||||
calibre_db.session.commit()
|
||||
calibre_db.setup_db(config, ub.app_DB_path)
|
||||
#calibre_db.setup_db(config, ub.app_DB_path)
|
||||
# Reread book. It's important not to filter the result, as it could have language which hide it from
|
||||
# current users view (tags are not stored/extracted from metadata and could also be limited)
|
||||
book = calibre_db.get_book(book_id)
|
||||
#book = calibre_db.get_book(book_id)
|
||||
if config.config_use_google_drive:
|
||||
gdriveutils.updateGdriveCalibreFromLocal()
|
||||
if error:
|
||||
flash(error, category="error")
|
||||
uploadText=_(u"File %(file)s uploaded", file=book.title)
|
||||
uploadText=_(u"File %(file)s uploaded", file=title)
|
||||
worker.add_upload(current_user.nickname,
|
||||
"<a href=\"" + url_for('web.show_book', book_id=book.id) + "\">" + uploadText + "</a>")
|
||||
"<a href=\"" + url_for('web.show_book', book_id=book_id) + "\">" + uploadText + "</a>")
|
||||
|
||||
if len(request.files.getlist("btn-upload")) < 2:
|
||||
if current_user.role_edit() or current_user.role_admin():
|
||||
resp = {"location": url_for('editbook.edit_book', book_id=book.id)}
|
||||
resp = {"location": url_for('editbook.edit_book', book_id=book_id)}
|
||||
return Response(json.dumps(resp), mimetype='application/json')
|
||||
else:
|
||||
resp = {"location": url_for('web.show_book', book_id=book.id)}
|
||||
resp = {"location": url_for('web.show_book', book_id=book_id)}
|
||||
return Response(json.dumps(resp), mimetype='application/json')
|
||||
except OperationalError as e:
|
||||
calibre_db.session.rollback()
|
||||
|
Loading…
Reference in New Issue
Block a user