From 2f368e0a34c9bbac83c714bcc45672c8ce8d69b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20Sch=C3=A4fer?= Date: Wed, 27 Jan 2021 15:54:56 +0100 Subject: [PATCH] Change "reusability" to "type" for invites - This makes the choice much clearer - Allows for less generic terms in the table - Future extensibility \o/ --- snikket_web/admin.py | 11 ++-- .../templates/admin_create_invite_form.html | 4 +- snikket_web/templates/admin_edit_invite.html | 2 +- snikket_web/templates/admin_invites.html | 7 ++- snikket_web/templates/library.j2 | 8 +++ snikket_web/translations/messages.pot | 52 +++++++++---------- 6 files changed, 46 insertions(+), 38 deletions(-) diff --git a/snikket_web/admin.py b/snikket_web/admin.py index f8b84da..3a5cf76 100644 --- a/snikket_web/admin.py +++ b/snikket_web/admin.py @@ -148,8 +148,13 @@ class InvitePost(flask_wtf.FlaskForm): # type:ignore default=7*86400, ) - reusable = wtforms.BooleanField( - _l("Invite a group of people"), + type_ = wtforms.RadioField( + _l("Invitation type"), + choices=[ + ("account", _l("Individual")), + ("group", _l("Group")), + ], + default="account", ) action_create_invite = wtforms.SubmitField( @@ -228,7 +233,7 @@ async def create_invite() -> typing.Union[str, quart.Response]: (c.id_, c.name) for c in circles ] if form.validate_on_submit(): - if form.reusable.data: + if form.type_.data == "group": invite = await client.create_group_invite( group_ids=form.circles.data, ttl=form.lifetime.data, diff --git a/snikket_web/templates/admin_create_invite_form.html b/snikket_web/templates/admin_create_invite_form.html index 3a7a2bf..16d03ff 100644 --- a/snikket_web/templates/admin_create_invite_form.html +++ b/snikket_web/templates/admin_create_invite_form.html @@ -5,8 +5,8 @@

{% trans %}Create new invitation{% endtrans %}

{% trans %}Create a new invitation link to invite more users to your Snikket service by clicking the button below.{% endtrans %}

- {{ invite_form.reusable }} - {{ invite_form.reusable.label }} + {{ invite_form.type_.label }} + {{ invite_form.type_ }}
{{ invite_form.lifetime.label }} diff --git a/snikket_web/templates/admin_edit_invite.html b/snikket_web/templates/admin_edit_invite.html index ac3d362..c6936d9 100644 --- a/snikket_web/templates/admin_edit_invite.html +++ b/snikket_web/templates/admin_edit_invite.html @@ -14,7 +14,7 @@
{{ invite.expires | format_date }}
{% trans %}Link{% endtrans %}
{% call showuri(invite.landing_page) %}{% endcall %}
-
{% trans %}Reusability{% endtrans %}
+
{% trans %}Invitation type{% endtrans %}
{% if invite.reusable %}{% trans %}This invitation link can be used arbitrarily often, until it expires, is revoked or a service-wide user limit is reached.{% endtrans %}{% else %}{% trans %}This invitation link can only be used once and is then depleted.{% endtrans %}{% endif %}
{%- set ngroups = invite.group_ids | length -%} {%- if ngroups > 1 -%} diff --git a/snikket_web/templates/admin_invites.html b/snikket_web/templates/admin_invites.html index ed9509d..1dad14b 100644 --- a/snikket_web/templates/admin_invites.html +++ b/snikket_web/templates/admin_invites.html @@ -1,5 +1,5 @@ {% extends "admin_app.html" %} -{% from "library.j2" import action_button, icon, clipboard_button, form_button, custom_form_button, extract_circle_name %} +{% from "library.j2" import action_button, icon, clipboard_button, form_button, custom_form_button, extract_circle_name, invite_type_name %} {% block head_lead %} {{ super() }} {% include "copy-snippet.html" %} @@ -19,7 +19,7 @@ {% trans %}Valid until{% endtrans %} - {% trans %}Reusable{% endtrans %} + {% trans %}Type{% endtrans %} {% trans %}Circle{% endtrans %} {% trans %}Actions{% endtrans %} @@ -28,8 +28,7 @@ {% for invite in invites %} {{ (invite.expires - now) | format_timedelta(add_direction=True) }} - {% if invite.reusable %}{% trans %}Yes{% endtrans %}{% else %}{% trans - %}No{% endtrans %}{% endif %} + {% call invite_type_name(invite) %}{% endcall %} {#- -#}