32
32
from functools import wraps
33
33
from urllib .parse import urlparse
34
34
35
- from flask import Blueprint , flash , redirect , url_for , abort , request , make_response , send_from_directory , g , Response
35
+ from flask import Blueprint , flash , redirect , url_for , abort , request , make_response , \
36
+ send_from_directory , g , jsonify
36
37
from markupsafe import Markup
37
38
from .cw_login import current_user
38
39
from flask_babel import gettext as _
@@ -378,10 +379,7 @@ def list_users():
378
379
user .default = get_user_locale_language (user .default_language )
379
380
380
381
table_entries = {'totalNotFiltered' : total_count , 'total' : filtered_count , "rows" : users }
381
- js_list = json .dumps (table_entries , cls = db .AlchemyEncoder )
382
- response = make_response (js_list )
383
- response .headers ["Content-Type" ] = "application/json; charset=utf-8"
384
- return response
382
+ return make_response (json .dumps (table_entries , cls = db .AlchemyEncoder ))
385
383
386
384
387
385
@admi .route ("/ajax/deleteuser" , methods = ['POST' ])
@@ -400,7 +398,7 @@ def delete_user():
400
398
success = list ()
401
399
if not users :
402
400
log .error ("User not found" )
403
- return Response ( json . dumps ({ ' type' : "danger" , ' message' : _ ("User not found" )}), mimetype = 'application/json' )
401
+ return make_response ( jsonify ( type = "danger" , message = _ ("User not found" )) )
404
402
for user in users :
405
403
try :
406
404
message = _delete_user (user )
@@ -416,7 +414,7 @@ def delete_user():
416
414
log .info ("Users {} deleted" .format (user_ids ))
417
415
success = [{'type' : "success" , 'message' : _ ("{} users deleted successfully" ).format (count )}]
418
416
success .extend (errors )
419
- return Response ( json . dumps (success ), mimetype = 'application/json' )
417
+ return make_response ( jsonify (success ))
420
418
421
419
422
420
@admi .route ("/ajax/getlocale" )
@@ -498,10 +496,10 @@ def edit_list_user(param):
498
496
if not ub .session .query (ub .User ). \
499
497
filter (ub .User .role .op ('&' )(constants .ROLE_ADMIN ) == constants .ROLE_ADMIN ,
500
498
ub .User .id != user .id ).count ():
501
- return Response (
502
- json . dumps ([{'type' : "danger" ,
499
+ return make_response (
500
+ jsonify ([{'type' : "danger" ,
503
501
'message' : _ ("No admin user remaining, can't remove admin role" ,
504
- nick = user .name )}]), mimetype = 'application/json' )
502
+ nick = user .name )}]))
505
503
user .role &= ~ value
506
504
else :
507
505
raise Exception (_ ("Value has to be true or false" ))
@@ -947,7 +945,7 @@ def do_full_kobo_sync(userid):
947
945
count = ub .session .query (ub .KoboSyncedBooks ).filter (userid == ub .KoboSyncedBooks .user_id ).delete ()
948
946
message = _ ("{} sync entries deleted" ).format (count )
949
947
ub .session_commit (message )
950
- return Response ( json . dumps ([{ " type" : " success" , " message" : message }]), mimetype = 'application/json' )
948
+ return make_response ( jsonify ( type = " success" , message = message ) )
951
949
952
950
953
951
def check_valid_read_column (column ):
@@ -1264,7 +1262,7 @@ def _configuration_ldap_helper(to_save):
1264
1262
@admin_required
1265
1263
def simulatedbchange ():
1266
1264
db_change , db_valid = _db_simulate_change ()
1267
- return Response ( json . dumps ({ " change" : db_change , " valid" : db_valid }), mimetype = 'application/json' )
1265
+ return make_response ( jsonify ( change = db_change , valid = db_valid ) )
1268
1266
1269
1267
1270
1268
@admi .route ("/admin/user/new" , methods = ["GET" , "POST" ])
@@ -1896,7 +1894,7 @@ def _configuration_result(error_flash=None, reboot=False):
1896
1894
resp ['result' ] = [{'type' : "success" , 'message' : _ ("Calibre-Web configuration updated" )}]
1897
1895
resp ['reboot' ] = reboot
1898
1896
resp ['config_upload' ] = config .config_upload_formats
1899
- return Response ( json . dumps (resp ), mimetype = 'application/json' )
1897
+ return make_response ( jsonify (resp ))
1900
1898
1901
1899
1902
1900
def _db_configuration_result (error_flash = None , gdrive_error = None ):
0 commit comments