add: purchased accounts
This commit is contained in:
parent
0aa2ea362f
commit
2ec8d86edf
22 changed files with 1279 additions and 124 deletions
|
@ -72,7 +72,73 @@
|
|||
(str (text "general:label.account_banned_body"))))))
|
||||
|
||||
; if we aren't banned, just show the page body
|
||||
(text "{% else %} {% block body %}{% endblock %} {%- endif %}")
|
||||
(text "{% elif user and user.awaiting_purchase %}")
|
||||
; account waiting for payment message
|
||||
(article
|
||||
(main
|
||||
(div
|
||||
("class" "card-nest")
|
||||
(div
|
||||
("class" "card small flex items-center gap-2 red")
|
||||
(icon (text "frown"))
|
||||
(str (text "general:label.must_activate_account")))
|
||||
|
||||
(div
|
||||
("class" "card no_p_margin flex flex-col gap-2")
|
||||
(p (text "Since you didn't provide an invite code, you'll need to activate your account to use it."))
|
||||
(p (text "Supporter is a recurring membership. If you cancel it, your account will be locked again unless you renew your subscription or provide an invite code."))
|
||||
(div
|
||||
("class" "card w-full lowered flex flex-col gap-2")
|
||||
(text "{{ components::become_supporter_button() }}"))
|
||||
(p (text "Alternatively, you can provide an invite code to activate your account."))
|
||||
(form
|
||||
("class" "card w-full lowered flex flex-col gap-2")
|
||||
("onsubmit" "update_invite_code(event)")
|
||||
(div
|
||||
("class" "flex flex-col gap-1")
|
||||
(label
|
||||
("for" "invite_code")
|
||||
(b
|
||||
(text "Invite code")))
|
||||
(input
|
||||
("type" "text")
|
||||
("placeholder" "invite code")
|
||||
("name" "invite_code")
|
||||
("required" "")
|
||||
("id" "invite_code")))
|
||||
|
||||
(button
|
||||
(text "Submit")))
|
||||
|
||||
(script
|
||||
(text "async function update_invite_code(e) {
|
||||
e.preventDefault();
|
||||
await trigger(\"atto::debounce\", [\"invite_codes::try\"]);
|
||||
fetch(\"/api/v1/auth/user/me/invite_code\", {
|
||||
method: \"POST\",
|
||||
headers: {
|
||||
\"Content-Type\": \"application/json\",
|
||||
},
|
||||
body: JSON.stringify({
|
||||
invite_code: e.target.invite_code.value,
|
||||
}),
|
||||
})
|
||||
.then((res) => res.json())
|
||||
.then((res) => {
|
||||
trigger(\"atto::toast\", [
|
||||
res.ok ? \"success\" : \"error\",
|
||||
res.message,
|
||||
]);
|
||||
|
||||
if (res.ok) {
|
||||
window.location.reload();
|
||||
}
|
||||
});
|
||||
}"))))))
|
||||
(text "{% else %}")
|
||||
; page body
|
||||
(text "{% block body %}{% endblock %}")
|
||||
(text "{%- endif %}")
|
||||
(text "<!-- html_footer_goes_here -->"))
|
||||
|
||||
(text "{% include \"body.html\" %}")))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue