add: show_nsfw, hide_extra_post_tabs settings
add: ability to remove tokens from account switcher ui
This commit is contained in:
parent
88afb3ec37
commit
701ea79c9a
7 changed files with 70 additions and 77 deletions
|
@ -198,6 +198,7 @@
|
|||
(text "{% macro profile_nav(selected=\"\") -%}")
|
||||
(div
|
||||
("class" "pillmenu")
|
||||
(text "{% if is_self or is_helper or not profile.settings.hide_extra_post_tabs -%}")
|
||||
(a
|
||||
("href" "/@{{ profile.username }}")
|
||||
("class" "{% if selected == 'posts' -%}active{%- endif %}")
|
||||
|
@ -213,16 +214,16 @@
|
|||
("class" "{% if selected == 'media' -%}active{%- endif %}")
|
||||
(str (text "auth:label.media")))
|
||||
|
||||
(text "{% if is_self or is_helper %}")
|
||||
(text "{% if is_self or is_helper -%}")
|
||||
(a
|
||||
("href" "/@{{ profile.username }}/outbox")
|
||||
("class" "{% if selected == 'outbox' -%}active{%- endif %}")
|
||||
(str (text "auth:label.outbox")))
|
||||
(text "{% endif %}")
|
||||
(text "{%- endif %}")
|
||||
|
||||
(text "{% if is_helper %}")
|
||||
(text "{% if is_helper -%}")
|
||||
(a
|
||||
("href" "/requests?id={{ profile.id }}")
|
||||
(str (text "requests:label.requests")))
|
||||
(text "{% endif %}"))
|
||||
(text "{%- endif %} {%- endif %}"))
|
||||
(text "{%- endmacro %}")
|
||||
|
|
|
@ -70,7 +70,7 @@
|
|||
(span
|
||||
(text "{{ text \"requests:label.user_follow_request_message\" }}"))
|
||||
(div
|
||||
("class" "card flex w-full secondary gap-2")
|
||||
("class" "card flex flex-wrap w-full secondary gap-2")
|
||||
(a
|
||||
("href" "/api/v1/auth/user/find/{{ request.id }}")
|
||||
("class" "button")
|
||||
|
|
|
@ -1247,6 +1247,16 @@
|
|||
\"{{ profile.settings.private_last_seen }}\",
|
||||
\"checkbox\",
|
||||
],
|
||||
[
|
||||
[\"hide_extra_post_tabs\", \"Hide extra post tabs (replies, media)\"],
|
||||
\"{{ profile.settings.hide_extra_post_tabs }}\",
|
||||
\"checkbox\",
|
||||
],
|
||||
[
|
||||
[\"show_nsfw\", \"Show NSFW posts\"],
|
||||
\"{{ profile.settings.show_nsfw }}\",
|
||||
\"checkbox\",
|
||||
],
|
||||
[[], \"Questions\", \"title\"],
|
||||
[
|
||||
[
|
||||
|
|
|
@ -271,25 +271,20 @@
|
|||
("onsubmit" "event.preventDefault()")
|
||||
(div ("id" "tokens") ("style" "display: contents"))
|
||||
|
||||
(a
|
||||
("href" "/auth/login")
|
||||
("class" "button")
|
||||
("data-turbo", "false")
|
||||
(icon (text "plus"))
|
||||
(span (str (text "general:action.add_account"))))
|
||||
|
||||
(div
|
||||
("class" "flex justify-between")
|
||||
(div null?)
|
||||
(a
|
||||
("href" "/auth/login")
|
||||
("class" "button")
|
||||
("data-turbo", "false")
|
||||
(icon (text "plus"))
|
||||
(span (str (text "general:action.add_account"))))
|
||||
|
||||
(div
|
||||
("class" "flex gap-2")
|
||||
(button
|
||||
("class" "quaternary")
|
||||
("onclick" "document.getElementById('tokens_dialog').close()")
|
||||
("type" "button")
|
||||
(icon (text "check"))
|
||||
(span "{{ text \"dialog:action.okay\" }}")))))))
|
||||
(button
|
||||
("class" "quaternary")
|
||||
("onclick" "document.getElementById('tokens_dialog').close()")
|
||||
("type" "button")
|
||||
(icon (text "check")))))))
|
||||
|
||||
; user scripts
|
||||
(text "{%- endif %} {% if user and use_user_theme -%} {{ components::theme(user=user, theme_preference=user.settings.theme_preference) }}
|
||||
|
|
|
@ -438,7 +438,7 @@
|
|||
["object"],
|
||||
);
|
||||
|
||||
self.define("login", ({ $ }, username) => {
|
||||
self.define("login", (_, username) => {
|
||||
const token = self.LOGIN_ACCOUNT_TOKENS[username];
|
||||
|
||||
if (!token) {
|
||||
|
@ -448,20 +448,41 @@
|
|||
window.location.href = `/api/v1/auth/token?token=${token}`;
|
||||
});
|
||||
|
||||
self.define("remove_token", async (_, username) => {
|
||||
if (
|
||||
!(await trigger("atto::confirm", [
|
||||
"Are you sure you would like to do this?",
|
||||
]))
|
||||
) {
|
||||
return;
|
||||
}
|
||||
|
||||
delete self.LOGIN_ACCOUNT_TOKENS[username];
|
||||
self.set_login_account_tokens(self.LOGIN_ACCOUNT_TOKENS);
|
||||
|
||||
trigger("atto::toast", ["success", "Token removed"]);
|
||||
});
|
||||
|
||||
self.define("render_token_picker", ({ $ }, element) => {
|
||||
element.innerHTML = "";
|
||||
for (const token of Object.entries($.LOGIN_ACCOUNT_TOKENS)) {
|
||||
element.innerHTML += `<button class="quaternary w-full justify-start" onclick="trigger('me::login', ['${token[0]}'])">
|
||||
<img
|
||||
title="${token[0]}'s avatar"
|
||||
src="/api/v1/auth/user/${token[0]}/avatar?selector_type=username"
|
||||
alt="Avatar image"
|
||||
class="avatar"
|
||||
style="--size: 24px"
|
||||
/>
|
||||
element.innerHTML += `<div class="flex gap-2 flex-row">
|
||||
<button class="quaternary w-full justify-start" onclick="trigger('me::login', ['${token[0]}'])">
|
||||
<img
|
||||
title="${token[0]}'s avatar"
|
||||
src="/api/v1/auth/user/${token[0]}/avatar?selector_type=username"
|
||||
alt="Avatar image"
|
||||
class="avatar"
|
||||
style="--size: 24px"
|
||||
/>
|
||||
|
||||
<span>${token[0]}</span>
|
||||
</button>`;
|
||||
<span>${token[0]}</span>
|
||||
</button>
|
||||
|
||||
<button onclick="trigger('me::remove_token', ['${token[0]}'])" class="small square red quaternary">
|
||||
-
|
||||
</button>
|
||||
</div>`;
|
||||
}
|
||||
});
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue