diff --git a/cps/templates/user_edit.html b/cps/templates/user_edit.html
index c3fccc40..ecf8042e 100644
--- a/cps/templates/user_edit.html
+++ b/cps/templates/user_edit.html
@@ -140,7 +140,7 @@
{% if g.user and g.user.role_admin() and not profile and not new_user and not content.role_anonymous() %}
{% endif %}
@@ -149,8 +149,8 @@
{% if not profile %}
{{_('Back')}}
-
{% endif %}
+
{% if downloads %}
diff --git a/cps/web.py b/cps/web.py
index 3c70bc70..b0deea82 100644
--- a/cps/web.py
+++ b/cps/web.py
@@ -2420,18 +2420,22 @@ def add_to_shelf(shelf_id, book_id):
if shelf is None:
app.logger.info("Invalid shelf specified")
if not request.is_xhr:
+ flash(_(u"Invalid shelf specified"), category="error")
return redirect(url_for('index'))
return "Invalid shelf specified", 400
if not shelf.is_public and not shelf.user_id == int(current_user.id):
app.logger.info("Sorry you are not allowed to add a book to the the shelf: %s" % shelf.name)
if not request.is_xhr:
+ flash(_(u"Sorry you are not allowed to add a book to the the shelf: %(shelfname)s", shelfname=shelf.name),
+ category="error")
return redirect(url_for('index'))
return "Sorry you are not allowed to add a book to the the shelf: %s" % shelf.name, 403
if shelf.is_public and not current_user.role_edit_shelfs():
app.logger.info("User is not allowed to edit public shelves")
if not request.is_xhr:
+ flash(_(u"You are not allowed to edit public shelves"), category="error")
return redirect(url_for('index'))
return "User is not allowed to edit public shelves", 403
@@ -2440,6 +2444,7 @@ def add_to_shelf(shelf_id, book_id):
if book_in_shelf:
app.logger.info("Book is already part of the shelf: %s" % shelf.name)
if not request.is_xhr:
+ flash(_(u"Book is already part of the shelf: %(shelfname)s", shelfname=shelf.name), category="error")
return redirect(url_for('index'))
return "Book is already part of the shelf: %s" % shelf.name, 400
@@ -2454,7 +2459,10 @@ def add_to_shelf(shelf_id, book_id):
ub.session.commit()
if not request.is_xhr:
flash(_(u"Book has been added to shelf: %(sname)s", sname=shelf.name), category="success")
- return redirect(request.environ["HTTP_REFERER"])
+ if "HTTP_REFERER" in request.environ:
+ return redirect(request.environ["HTTP_REFERER"])
+ else:
+ return redirect(url_for('index'))
return "", 204
@@ -3110,6 +3118,11 @@ def new_user():
content.sidebar_view += ub.SIDEBAR_AUTHOR
if "show_detail_random" in to_save:
content.sidebar_view += ub.DETAIL_RANDOM
+ if "show_sorted" in to_save:
+ content.sidebar_view += ub.SIDEBAR_SORTED
+ if "show_recent" in to_save:
+ content.sidebar_view += ub.SIDEBAR_RECENT
+
content.role = 0
if "admin_role" in to_save:
content.role = content.role + ub.ROLE_ADMIN