add: forum posts ui

This commit is contained in:
trisua 2025-08-03 23:24:57 -04:00
parent ef029c59b3
commit 2be87c397d
90 changed files with 1459 additions and 1299 deletions

View file

@ -4,21 +4,21 @@
(text "{% endblock %} {% block body %} {{ macros::nav() }}")
(main
("class" "flex flex-col gap-2")
("class" "flex flex_col gap_2")
(div
("class" "card-nest w-full")
("class" "card_nest w_full")
(div
("class" "card small flex items-center gap-2")
("class" "card small flex items_center gap_2")
(text "{{ icon \"scroll\" }}")
(span
(text "{{ text \"general:link.audit_log\" }}")))
(div
("class" "card flex flex-col gap-2")
("class" "card flex flex_col gap_2")
(text "{% for item in items %}")
(div
("class" "card-nest")
("class" "card_nest")
(a
("class" "card small flex items-center gap-2 flush")
("class" "card small flex items_center gap_2 flush")
("href" "/api/v1/auth/user/find/{{ item.moderator }}")
(text "{{ components::avatar(username=item.moderator, selector_type=\"id\") }}")
(span

View file

@ -4,19 +4,19 @@
(text "{% endblock %} {% block body %} {{ macros::nav() }}")
(main
("class" "flex flex-col gap-2")
("class" "flex flex_col gap_2")
(div
("class" "card-nest w-full")
("class" "card_nest w_full")
(div
("class" "card small flex items-center gap-2")
("class" "card small flex items_center gap_2")
(text "{{ icon \"flag\" }}")
(span
(text "{{ text \"general:label.file_report\" }}")))
(form
("class" "card flex flex-col gap-2")
("class" "card flex flex_col gap_2")
("onsubmit" "create_report_from_form(event)")
(div
("class" "flex flex-col gap-1")
("class" "flex flex_col gap_1")
(label
("for" "title")
(text "{{ text \"communities:label.content\" }}"))

View file

@ -4,13 +4,13 @@
(text "{% endblock %} {% block body %} {{ macros::nav() }}")
(main
("class" "flex flex-col gap-2")
("class" "flex flex_col gap_2")
(div
("class" "card-nest w-full")
("class" "card_nest w_full")
(div
("class" "card small flex items-center justify-between gap-2")
("class" "card small flex items_center justify_between gap_2")
(div
("class" "flex items-center gap-2")
("class" "flex items_center gap_2")
(text "{{ icon \"ban\" }}")
(span
(text "{{ text \"general:link.ip_bans\" }}")))
@ -21,12 +21,12 @@
(span
(text "{{ text \"communities:action.create\" }}"))))
(div
("class" "card flex flex-col gap-2")
("class" "card flex flex_col gap_2")
(text "{% for item in items %}")
(div
("class" "card-nest")
("class" "card_nest")
(a
("class" "card small flex items-center gap-2 flush")
("class" "card small flex items_center gap_2 flush")
("href" "/api/v1/auth/user/find/{{ item.moderator }}")
(text "{{ components::avatar(username=item.moderator, selector_type=\"id\") }}")
(span
@ -35,13 +35,13 @@
("class" "fade date")
(text "{{ item.created }}")))
(div
("class" "card secondary flex flex-col gap-2")
("class" "card secondary flex flex_col gap_2")
(code
(text "{{ item.ip }}"))
(span
(text "{{ item.reason|markdown|safe }}"))
(div
("class" "card w-full flex flex-wrap gap-2")
("class" "card w_full flex flex_wrap gap_2")
(button
("onclick" "remove_ipban('{{ item.ip }}')")
("class" "red lowered")

View file

@ -4,21 +4,21 @@
(text "{% endblock %} {% block body %} {{ macros::nav() }}")
(main
("class" "flex flex-col gap-2")
("class" "flex flex_col gap_2")
(div
("class" "card-nest w-full")
("class" "card_nest w_full")
(div
("class" "card small flex items-center gap-2")
("class" "card small flex items_center gap_2")
(text "{{ icon \"shield\" }}")
(span
(text "{{ text \"mod_panel:label.manage_profile\" }}")))
(div
("class" "card lowered")
(div
("class" "flex flex-col gap-2")
("class" "flex flex_col gap_2")
("id" "mod_options")
(div
("class" "card w-full flex flex-wrap gap-2")
("class" "card w_full flex flex_wrap gap_2")
("ui_ident" "actions")
(a
("href" "/settings?username={{ profile.username }}")
@ -256,47 +256,47 @@
}, 100);
}, 150);"))))
(div
("class" "card-nest w-full")
("class" "card_nest w_full")
(div
("class" "card small flex items-center justify-between gap-2")
("class" "card small flex items_center justify_between gap_2")
(div
("class" "flex items-center gap-2")
("class" "flex items_center gap_2")
(text "{{ icon \"users-round\" }}")
(span
(text "{{ text \"mod_panel:label.associations\" }}"))))
(div
("class" "card lowered flex flex-wrap gap-2")
("class" "card lowered flex flex_wrap gap_2")
(text "{% for user in associations -%}")
(text "{{ components::user_plate(user=user, show_menu=false) }}")
(text "{%- endfor %}")))
(text "{% if invite -%}")
(div
("class" "card-nest w-full")
("class" "card_nest w_full")
(div
("class" "card small flex items-center justify-between gap-2")
("class" "card small flex items_center justify_between gap_2")
(div
("class" "flex items-center gap-2")
("class" "flex items_center gap_2")
(text "{{ icon \"ticket\" }}")
(span
(text "{{ text \"mod_panel:label.invited_by\" }}"))))
(div
("class" "card lowered flex flex-wrap gap-2")
("class" "card lowered flex flex_wrap gap_2")
(text "{{ components::user_plate(user=invite[0], show_menu=false) }}")))
(text "{%- endif %}")
(div
("class" "card-nest w-full")
("class" "card_nest w_full")
(div
("class" "card small flex items-center justify-between gap-2")
("class" "card small flex items_center justify_between gap_2")
(div
("class" "flex items-center gap-2")
("class" "flex items_center gap_2")
(icon (text "scale"))
(span
(str (text "mod_panel:label.ban_reason")))))
(form
("class" "card flex flex-col gap-2")
("class" "card flex flex_col gap_2")
("onsubmit" "event.preventDefault(); profile_request(false, 'ban_reason', { reason: event.target.reason.value || '' })")
(div
("class" "flex flex-col gap-1")
("class" "flex flex_col gap_1")
(label
("for" "title")
(str (text "mod_panel:label.ban_reason")))
@ -310,11 +310,11 @@
(button
(str (text "general:action.save")))))
(div
("class" "card-nest w-full")
("class" "card_nest w_full")
(div
("class" "card small flex items-center justify-between gap-2")
("class" "card small flex items_center justify_between gap_2")
(div
("class" "flex items-center gap-2")
("class" "flex items_center gap_2")
(text "{{ icon \"blocks\" }}")
(span
(text "{{ text \"mod_panel:label.permissions_level_builder\" }}")))
@ -325,14 +325,14 @@
(span
(text "{{ text \"general:action.save\" }}"))))
(div
("class" "card lowered flex flex-col gap-2")
("class" "card lowered flex flex_col gap_2")
("id" "permission_builder")))
(div
("class" "card-nest w-full")
("class" "card_nest w_full")
(div
("class" "card small flex items-center justify-between gap-2")
("class" "card small flex items_center justify_between gap_2")
(div
("class" "flex items-center gap-2")
("class" "flex items_center gap_2")
(text "{{ icon \"blocks\" }}")
(span
(text "{{ text \"mod_panel:label.permissions_level_builder\" }}")))
@ -343,7 +343,7 @@
(span
(text "{{ text \"general:action.save\" }}"))))
(div
("class" "card lowered flex flex-col gap-2")
("class" "card lowered flex flex_col gap_2")
("id" "secondary_permission_builder")))
(script
(text "setTimeout(async () => {

View file

@ -4,21 +4,21 @@
(text "{% endblock %} {% block body %} {{ macros::nav() }}")
(main
("class" "flex flex-col gap-2")
("class" "flex flex_col gap_2")
(div
("class" "card-nest w-full")
("class" "card_nest w_full")
(div
("class" "card small flex items-center gap-2")
("class" "card small flex items_center gap_2")
(text "{{ icon \"flag\" }}")
(span
(text "{{ text \"general:link.reports\" }}")))
(div
("class" "card flex flex-col gap-2")
("class" "card flex flex_col gap_2")
(text "{% for item in items %}")
(div
("class" "card-nest")
("class" "card_nest")
(a
("class" "card small flex items-center gap-2 flush")
("class" "card small flex items_center gap_2 flush")
("href" "/api/v1/auth/user/find/{{ item.owner }}")
(text "{{ components::avatar(username=item.owner, selector_type=\"id\") }}")
(span
@ -27,12 +27,12 @@
("class" "fade date")
(text "{{ item.created }}")))
(div
("class" "card secondary flex flex-col gap-2")
("class" "card secondary flex flex_col gap_2")
(span
("class" "no_p_margin")
(text "{{ item.content|markdown|safe }}"))
(div
("class" "card w-full flex flex-wrap gap-2")
("class" "card w_full flex flex_wrap gap_2")
(button
("onclick" "open_reported_content('{{ item.asset }}', '{{ item.asset_type }}')")
(text "{{ icon \"external-link\" }}")

View file

@ -4,16 +4,16 @@
(text "{% endblock %} {% block body %} {{ macros::nav() }}")
(main
("class" "flex flex-col gap-2")
("class" "flex flex_col gap_2")
(div
("class" "card-nest w-full")
("class" "card_nest w_full")
(div
("class" "card small flex items-center gap-2")
("class" "card small flex items_center gap_2")
(text "{{ icon \"chart-line\" }}")
(span
(text "{{ text \"general:link.stats\" }}")))
(div
("class" "card flex flex-col gap-2")
("class" "card flex flex_col gap_2")
(ul
(li
(b

View file

@ -4,13 +4,13 @@
(text "{% endblock %} {% block body %} {{ macros::nav() }}")
(main
("class" "flex flex-col gap-2")
("class" "flex flex_col gap_2")
(div
("class" "card-nest")
("class" "card_nest")
(div
("class" "card small flex items-center justify-between gap-2")
("class" "card small flex items_center justify_between gap_2")
(span
("class" "flex items-center gap-2")
("class" "flex items_center gap_2")
(text "{{ icon \"gavel\" }}")
(span
(text "{{ text \"mod_panel:label.create_warning\" }}")))
@ -21,10 +21,10 @@
(span
(text "{{ text \"dialog:action.cancel\" }}"))))
(form
("class" "card flex flex-col gap-2")
("class" "card flex flex_col gap_2")
("onsubmit" "create_warning_from_form(event)")
(div
("class" "flex flex-col gap-1")
("class" "flex flex_col gap_1")
(label
("for" "content")
(text "{{ text \"communities:label.content\" }}"))
@ -39,23 +39,23 @@
(button
(text "{{ text \"communities:action.create\" }}"))))
(div
("class" "card-nest")
("class" "card_nest")
(div
("class" "card small flex items-center justify-between gap-2")
("class" "card small flex items_center justify_between gap_2")
(span
("class" "flex items-center gap-2")
("class" "flex items_center gap_2")
(text "{{ icon \"message-circle-warning\" }}")
(span
(text "{{ text \"mod_panel:label.warnings\" }}"))))
(div
("class" "card flex flex-col gap-4")
("class" "card flex flex_col gap_4")
(text "{% for item in items %}")
(div
("class" "card-nest")
("class" "card_nest")
(div
("class" "card small flex items-center justify-between gap-2")
("class" "card small flex items_center justify_between gap_2")
(a
("class" "flex items-center gap-2 flush")
("class" "flex items_center gap_2 flush")
("href" "/api/v1/auth/user/find/{{ item.moderator }}")
("title" "Moderator")
(text "{{ components::avatar(username=item.moderator, selector_type=\"id\") }}")
@ -71,7 +71,7 @@
(span
(text "{{ text \"general:action.delete\" }}"))))
(div
("class" "card secondary flex flex-col gap-2")
("class" "card secondary flex flex_col gap_2")
(span
("class" "no_p_margin")
(text "{{ item.content|markdown|safe }}"))))