diff --git a/bookwyrm/templates/snippets/shelve_button/shelve_button_dropdown.html b/bookwyrm/templates/snippets/shelve_button/shelve_button_dropdown.html
index 353a37a1c..43e9591fb 100644
--- a/bookwyrm/templates/snippets/shelve_button/shelve_button_dropdown.html
+++ b/bookwyrm/templates/snippets/shelve_button/shelve_button_dropdown.html
@@ -7,5 +7,5 @@
{% endblock %}
{% block dropdown-list %}
-{% include 'snippets/shelve_button/shelve_button_options.html' with active_shelf=active_shelf shelves=user_shelves dropdown=True class="shelf-option is-fullwidth is-small is-radiusless is-white" %}
+{% include 'snippets/shelve_button/shelve_button_dropdown_options.html' with active_shelf=active_shelf shelves=user_shelves dropdown=True class="shelf-option is-fullwidth is-small is-radiusless is-white" %}
{% endblock %}
diff --git a/bookwyrm/templates/snippets/shelve_button/shelve_button_dropdown_options.html b/bookwyrm/templates/snippets/shelve_button/shelve_button_dropdown_options.html
new file mode 100644
index 000000000..2162a596a
--- /dev/null
+++ b/bookwyrm/templates/snippets/shelve_button/shelve_button_dropdown_options.html
@@ -0,0 +1,72 @@
+{% load bookwyrm_tags %}
+{% load utilities %}
+{% load i18n %}
+
+{% with next_shelf_identifier=active_shelf.shelf.identifier|next_shelf %}
+
+{% for shelf in shelves %}
+{% comparison_bool shelf.identifier active_shelf.shelf.identifier as is_current %}
+
+
+ {% if shelf.identifier == 'reading' %}
+
+ {% trans "Start reading" as button_text %}
+ {% url 'reading-status' 'start' book.id as fallback_url %}
+ {% include 'snippets/toggle/toggle_button.html' with class=class text=button_text controls_text="start_reading" controls_uid=button_uuid focus="modal_title_start_reading" disabled=is_current fallback_url=fallback_url %}
+
+ {% elif shelf.identifier == 'read' %}
+
+ {% trans "Read" as button_text %}
+ {% url 'reading-status' 'finish' book.id as fallback_url %}
+ {% include 'snippets/toggle/toggle_button.html' with class=class text=button_text controls_text="finish_reading" controls_uid=button_uuid focus="modal_title_finish_reading" disabled=is_current fallback_url=fallback_url %}
+
+ {% elif shelf.identifier == 'to-read' %}
+
+ {% trans "Want to read" as button_text %}
+ {% url 'reading-status' 'want' book.id as fallback_url %}
+ {% include 'snippets/toggle/toggle_button.html' with class=class text=button_text controls_text="want_to_read" controls_uid=button_uuid focus="modal_title_want_to_read" disabled=is_current fallback_url=fallback_url %}
+
+ {% elif shelf.editable %}
+
+
+
+ {% endif %}
+
+
+{% endfor %}
+
+
+{% if dropdown %}
+ {% if readthrough and active_shelf.shelf.identifier != 'read' %}
+
+ {% trans "Update progress" as button_text %}
+ {% include 'snippets/toggle/toggle_button.html' with class=class text=button_text controls_text="progress_update" controls_uid=button_uuid focus="modal_title_progress_update" %}
+
+ {% endif %}
+
+ {% if active_shelf.shelf %}
+
+
+
+ {% endif %}
+{% endif %}
+
+{% endwith %}
+
diff --git a/bookwyrm/templates/snippets/shelve_button/shelve_button_options.html b/bookwyrm/templates/snippets/shelve_button/shelve_button_options.html
index 9cdf150ec..393340922 100644
--- a/bookwyrm/templates/snippets/shelve_button/shelve_button_options.html
+++ b/bookwyrm/templates/snippets/shelve_button/shelve_button_options.html
@@ -4,7 +4,6 @@
{% with next_shelf_identifier=active_shelf.shelf.identifier|next_shelf %}
-{% if not dropdown %}
{% trans "Read" %}
-{% endif %}
{% for shelf in shelves %}
-{% comparison_bool shelf.identifier active_shelf.shelf.identifier boolean=dropdown as is_current %}
+
+ {% if shelf.identifier == 'reading' %}
- {% if dropdown %}
{% endif %}
+ {% trans "Start reading" as button_text %}
+ {% url 'reading-status' 'start' book.id as fallback_url %}
+ {% include 'snippets/toggle/toggle_button.html' with class=class text=button_text controls_text="start_reading" controls_uid=button_uuid focus="modal_title_start_reading" fallback_url=fallback_url %}
-
- {% if shelf.identifier == 'reading' %}
- {% if not dropdown or next_shelf_identifier != shelf.identifier %}
+ {% elif shelf.identifier == 'read' %}
- {% trans "Start reading" as button_text %}
- {% url 'reading-status' 'start' book.id as fallback_url %}
- {% include 'snippets/toggle/toggle_button.html' with class=class text=button_text controls_text="start_reading" controls_uid=button_uuid focus="modal_title_start_reading" disabled=is_current fallback_url=fallback_url %}
+ {% trans "Finish reading" as button_text %}
+ {% url 'reading-status' 'finish' book.id as fallback_url %}
+ {% include 'snippets/toggle/toggle_button.html' with class=class text=button_text controls_text="finish_reading" controls_uid=button_uuid focus="modal_title_finish_reading" fallback_url=fallback_url %}
- {% endif %}
- {% elif shelf.identifier == 'read' %}
- {% if not dropdown or next_shelf_identifier != shelf.identifier %}
+ {% elif shelf.identifier == 'to-read' %}
- {% trans "Finish reading" as button_text %}
- {% url 'reading-status' 'finish' book.id as fallback_url %}
- {% include 'snippets/toggle/toggle_button.html' with class=class text=button_text controls_text="finish_reading" controls_uid=button_uuid focus="modal_title_finish_reading" disabled=is_current fallback_url=fallback_url %}
+ {% trans "Want to read" as button_text %}
+ {% url 'reading-status' 'want' book.id as fallback_url %}
+ {% include 'snippets/toggle/toggle_button.html' with class=class text=button_text controls_text="want_to_read" controls_uid=button_uuid focus="modal_title_want_to_read" fallback_url=fallback_url %}
- {% endif %}
- {% elif shelf.identifier == 'to-read' %}
- {% if not dropdown or next_shelf_identifier != shelf.identifier %}
+ {% elif shelf.editable %}
- {% trans "Want to read" as button_text %}
- {% url 'reading-status' 'want' book.id as fallback_url %}
- {% include 'snippets/toggle/toggle_button.html' with class=class text=button_text controls_text="want_to_read" controls_uid=button_uuid focus="modal_title_want_to_read" disabled=is_current fallback_url=fallback_url %}
-
- {% endif %}
- {% elif shelf.editable %}
-
-
-
- {% endif %}
-
- {% if dropdown %}{% endif %}
-{% endfor %}
-
-
-{% if dropdown %}
- {% if readthrough and active_shelf.shelf.identifier != 'read' %}
-
- {% trans "Update progress" as button_text %}
- {% include 'snippets/toggle/toggle_button.html' with class=class text=button_text controls_text="progress_update" controls_uid=button_uuid focus="modal_title_progress_update" %}
-
- {% endif %}
-
- {% if active_shelf.shelf %}
-
-
-
+
{% endif %}
-{% endif %}
+
+{% endfor %}
{% endwith %}
diff --git a/bookwyrm/templatetags/utilities.py b/bookwyrm/templatetags/utilities.py
index 173716d21..fe83278ac 100644
--- a/bookwyrm/templatetags/utilities.py
+++ b/bookwyrm/templatetags/utilities.py
@@ -36,9 +36,9 @@ def get_title(book, too_short=5):
@register.simple_tag(takes_context=False)
-def comparison_bool(str1, str2, boolean=True):
+def comparison_bool(str1, str2):
"""idk why I need to write a tag for this, it returns a bool"""
- return boolean and str1 == str2
+ return str1 == str2
@register.filter(is_safe=True)