diff --git a/cps/admin.py b/cps/admin.py
index fb01e24e..36599d61 100644
--- a/cps/admin.py
+++ b/cps/admin.py
@@ -474,14 +474,14 @@ def update_table_settings():
     return ""
 
 def check_valid_read_column(column):
-    if column is not "0":
+    if column != "0":
         if not calibre_db.session.query(db.Custom_Columns).filter(db.Custom_Columns.id == column) \
               .filter(and_(db.Custom_Columns.datatype == 'bool', db.Custom_Columns.mark_for_delete == 0)).all():
             return False
     return True
 
 def check_valid_restricted_column(column):
-    if column is not "0":
+    if column != "0":
         if not calibre_db.session.query(db.Custom_Columns).filter(db.Custom_Columns.id == column) \
               .filter(and_(db.Custom_Columns.datatype == 'text', db.Custom_Columns.mark_for_delete == 0)).all():
             return False
diff --git a/cps/static/js/details.js b/cps/static/js/details.js
index 395518cb..81c1a395 100644
--- a/cps/static/js/details.js
+++ b/cps/static/js/details.js
@@ -22,7 +22,21 @@ $(function() {
 });
 
 $("#have_read_cb").on("change", function() {
-    $(this).closest("form").submit();
+    $.post({
+        url: this.closest("form").action,
+        error: function(response) {
+            var data = [{type:"danger", message:response.responseText}]
+            $("#flash_success").remove();
+            $("#flash_danger").remove();
+            if (!jQuery.isEmptyObject(data)) {
+                data.forEach(function (item) {
+                    $(".navbar").after('
' +
+                        '
' + item.message + '
' +
+                        '