|
|
@ -917,11 +917,15 @@ def list_restriction(res_type, user_id):
|
|
|
|
|
|
|
|
|
|
|
|
@admi.route("/ajax/fullsync", methods=["POST"])
|
|
|
|
@admi.route("/ajax/fullsync", methods=["POST"])
|
|
|
|
@login_required
|
|
|
|
@login_required
|
|
|
|
def ajax_fullsync():
|
|
|
|
def ajax_self_fullsync():
|
|
|
|
count = ub.session.query(ub.KoboSyncedBooks).filter(current_user.id == ub.KoboSyncedBooks.user_id).delete()
|
|
|
|
return do_full_kobo_sync(current_user.id)
|
|
|
|
message = _("{} sync entries deleted").format(count)
|
|
|
|
|
|
|
|
ub.session_commit(message)
|
|
|
|
|
|
|
|
return Response(json.dumps([{"type": "success", "message": message}]), mimetype='application/json')
|
|
|
|
@admi.route("/ajax/fullsync/<int:userid>", methods=["POST"])
|
|
|
|
|
|
|
|
@login_required
|
|
|
|
|
|
|
|
@admin_required
|
|
|
|
|
|
|
|
def ajax_fullsync(userid):
|
|
|
|
|
|
|
|
return do_full_kobo_sync(userid)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@admi.route("/ajax/pathchooser/")
|
|
|
|
@admi.route("/ajax/pathchooser/")
|
|
|
@ -931,6 +935,13 @@ def ajax_pathchooser():
|
|
|
|
return pathchooser()
|
|
|
|
return pathchooser()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def do_full_kobo_sync(userid):
|
|
|
|
|
|
|
|
count = ub.session.query(ub.KoboSyncedBooks).filter(userid == ub.KoboSyncedBooks.user_id).delete()
|
|
|
|
|
|
|
|
message = _("{} sync entries deleted").format(count)
|
|
|
|
|
|
|
|
ub.session_commit(message)
|
|
|
|
|
|
|
|
return Response(json.dumps([{"type": "success", "message": message}]), mimetype='application/json')
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def check_valid_read_column(column):
|
|
|
|
def check_valid_read_column(column):
|
|
|
|
if column != "0":
|
|
|
|
if column != "0":
|
|
|
|
if not calibre_db.session.query(db.CustomColumns).filter(db.CustomColumns.id == column) \
|
|
|
|
if not calibre_db.session.query(db.CustomColumns).filter(db.CustomColumns.id == column) \
|
|
|
|