mirror of
https://github.com/zulip/zulip.git
synced 2025-10-23 04:52:12 +00:00
templates: Fix invalid <th> inside <thead> (missing <tr>).
Signed-off-by: Anders Kaseorg <anders@zulip.com>
This commit is contained in:
committed by
Tim Abbott
parent
d3238e9a1b
commit
460d63c4dc
@@ -653,9 +653,11 @@ export function handle_sort<Key, Item>($th: JQuery, list: ListWidget<Key, Item>)
|
||||
to find custom sort function
|
||||
|
||||
<thead>
|
||||
<tr>
|
||||
<th data-sort="alphabetic" data-sort-prop="name"></th>
|
||||
<th data-sort="numeric" data-sort-prop="age"></th>
|
||||
<th data-sort="status"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
*/
|
||||
const sort_type = $th.attr("data-sort");
|
||||
|
@@ -12,6 +12,7 @@
|
||||
<div class="progressive-table-wrapper" data-simplebar data-simplebar-tab-index="-1">
|
||||
<table class="table table-striped wrapped-table">
|
||||
<thead class="table-sticky-headers">
|
||||
<tr>
|
||||
<th class="active" data-sort="alphabetic" data-sort-prop="full_name">{{t "Name" }}
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
@@ -27,6 +28,7 @@
|
||||
{{#if is_admin}}
|
||||
<th class="actions">{{t "Actions" }}</th>
|
||||
{{/if}}
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="admin_users_table" class="admin_user_table"
|
||||
data-empty="{{t 'No users match your filters.' }}"></tbody>
|
||||
|
@@ -18,10 +18,12 @@
|
||||
<div class="progressive-table-wrapper" data-simplebar data-simplebar-tab-index="-1">
|
||||
<table class="table table-striped wrapped-table">
|
||||
<thead class="table-sticky-headers">
|
||||
<tr>
|
||||
<th data-sort="alphabetic" data-sort-prop="word">{{t "Word" }}
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
<th class="actions">{{t "Actions" }}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="alert-words-table" class="alert-words-table"
|
||||
data-empty="{{t 'There are no current alert words.' }}"></tbody>
|
||||
|
@@ -9,6 +9,7 @@
|
||||
<div class="progressive-table-wrapper" data-simplebar data-simplebar-tab-index="-1">
|
||||
<table class="table table-striped wrapped-table">
|
||||
<thead class="table-sticky-headers">
|
||||
<tr>
|
||||
<th data-sort="alphabetic" data-sort-prop="name" class="upload-file-name">{{t "File" }}
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
@@ -22,6 +23,7 @@
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
<th class="upload-actions actions">{{t "Actions" }}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody data-empty="{{t 'You have not uploaded any files.' }}" data-search-results-empty="{{t 'No uploaded files match your current filter.' }}" id="uploaded_files_table"></tbody>
|
||||
</table>
|
||||
|
@@ -27,6 +27,7 @@
|
||||
<div class="progressive-table-wrapper" data-simplebar data-simplebar-tab-index="-1">
|
||||
<table class="table table-striped wrapped-table">
|
||||
<thead class="table-sticky-headers">
|
||||
<tr>
|
||||
<th class="active" data-sort="alphabetic" data-sort-prop="full_name">{{t "Name" }}
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
@@ -45,6 +46,7 @@
|
||||
{{#if is_admin}}
|
||||
<th class="actions">{{t "Actions" }}</th>
|
||||
{{/if}}
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="admin_bots_table" class="admin_bot_table"
|
||||
data-empty="{{t 'There are no bots.' }}" data-search-results-empty="{{t 'No bots match your current filter.' }}"></tbody>
|
||||
|
@@ -43,6 +43,7 @@
|
||||
<div class="progressive-table-wrapper" data-simplebar data-simplebar-tab-index="-1">
|
||||
<table class="table table-striped wrapped-table admin_exports_table">
|
||||
<thead class="table-sticky-headers">
|
||||
<tr>
|
||||
<th class="active" data-sort="user">{{t "Requesting user" }}
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
@@ -52,6 +53,7 @@
|
||||
</th>
|
||||
<th>{{t "Status" }}</th>
|
||||
<th class="actions">{{t "Actions" }}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="admin_exports_table" data-empty="{{t 'There are no exports.' }}"></tbody>
|
||||
</table>
|
||||
@@ -70,8 +72,10 @@
|
||||
<div class="progressive-table-wrapper" data-simplebar data-simplebar-tab-index="-1">
|
||||
<table class="table table-striped wrapped-table">
|
||||
<thead class="table-sticky-headers">
|
||||
<tr>
|
||||
<th class="active" data-sort="full_name">{{t "Name" }}</th>
|
||||
<th>{{t "Export permission"}}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="admin_export_consents_table"></tbody>
|
||||
</table>
|
||||
|
@@ -15,6 +15,7 @@
|
||||
<div class="progressive-table-wrapper" data-simplebar data-simplebar-tab-index="-1">
|
||||
<table class="table table-striped wrapped-table">
|
||||
<thead class="table-sticky-headers">
|
||||
<tr>
|
||||
<th class="active" data-sort="alphabetic" data-sort-prop="full_name">{{t "Name" }}
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
@@ -29,6 +30,7 @@
|
||||
{{#if is_admin}}
|
||||
<th class="actions">{{t "Actions" }}</th>
|
||||
{{/if}}
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="admin_deactivated_users_table" class="admin_user_table"
|
||||
data-empty="{{t 'There are no deactivated users.' }}"
|
||||
|
@@ -20,12 +20,14 @@
|
||||
<div class="progressive-table-wrapper" data-simplebar data-simplebar-tab-index="-1">
|
||||
<table class="table table-striped wrapped-table">
|
||||
<thead class="table-sticky-headers">
|
||||
<tr>
|
||||
<th class="active" data-sort="alphabetic" data-sort-prop="name">{{t "Name" }}
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
{{#if is_admin}}
|
||||
<th class="actions"></th>
|
||||
{{/if}}
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody data-empty="{{t 'There are no default channels.' }}" data-search-results-empty="{{t 'No default channels match your current filter.' }}"
|
||||
id="admin_default_streams_table" class="admin_default_stream_table"></tbody>
|
||||
|
@@ -20,6 +20,7 @@
|
||||
<div class="progressive-table-wrapper" data-simplebar data-simplebar-tab-index="-1">
|
||||
<table class="table table-striped wrapped-table admin_emoji_table">
|
||||
<thead class="table-sticky-headers">
|
||||
<tr>
|
||||
<th class="active" data-sort="alphabetic" data-sort-prop="name">{{t "Name" }}
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
@@ -28,6 +29,7 @@
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
<th class="actions">{{t "Actions" }}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="admin_emoji_table" data-empty="{{t 'There are no custom emoji.' }}" data-search-results-empty="{{t 'No custom emojis match your current filter.' }}"></tbody>
|
||||
</table>
|
||||
|
@@ -30,6 +30,7 @@
|
||||
<div class="progressive-table-wrapper" data-simplebar data-simplebar-tab-index="-1">
|
||||
<table class="table table-striped">
|
||||
<thead class="table-sticky-headers">
|
||||
<tr>
|
||||
<th class="active" data-sort="invitee">{{t "Invitee" }}
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
@@ -48,6 +49,7 @@
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
<th class="actions">{{t "Actions" }}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="admin_invites_table" class="admin_invites_table" data-empty="{{t 'There are no invitations.' }}" data-search-results-empty="{{t 'No invitations match your current filter.' }}"></tbody>
|
||||
</table>
|
||||
|
@@ -66,11 +66,13 @@
|
||||
<div class="progressive-table-wrapper" data-simplebar data-simplebar-tab-index="-1">
|
||||
<table class="table table-striped wrapped-table admin_linkifiers_table">
|
||||
<thead class="table-sticky-headers">
|
||||
<tr>
|
||||
<th>{{t "Pattern" }}</th>
|
||||
<th>{{t "URL template" }}</th>
|
||||
{{#if is_admin}}
|
||||
<th class="actions">{{t "Actions" }}</th>
|
||||
{{/if}}
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="admin_linkifiers_table" data-empty="{{t 'No linkifiers configured.' }}" data-search-results-empty="{{t 'No linkifiers match your current filter.' }}"></tbody>
|
||||
</table>
|
||||
|
@@ -6,6 +6,7 @@
|
||||
<div class="progressive-table-wrapper" data-simplebar data-simplebar-tab-index="-1">
|
||||
<table class="table table-striped wrapped-table">
|
||||
<thead class="table-sticky-headers">
|
||||
<tr>
|
||||
<th data-sort="alphabetic" data-sort-prop="user_name">{{t "User" }}
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
@@ -13,6 +14,7 @@
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
<th class="actions">{{t "Actions" }}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="muted_users_table" data-empty="{{t 'You have not muted any users yet.'}}" data-search-results-empty="{{t 'No users match your current filter.' }}"></tbody>
|
||||
</table>
|
||||
|
@@ -74,6 +74,7 @@
|
||||
<div class="progressive-table-wrapper" data-simplebar data-simplebar-tab-index="-1">
|
||||
<table class="table table-striped wrapped-table admin_playgrounds_table">
|
||||
<thead class="table-sticky-headers">
|
||||
<tr>
|
||||
<th class="active" data-sort="alphabetic" data-sort-prop="pygments_language">{{t "Language" }}
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
@@ -86,6 +87,7 @@
|
||||
{{#if is_admin}}
|
||||
<th class="actions">{{t "Actions" }}</th>
|
||||
{{/if}}
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="admin_playgrounds_table" data-empty="{{t 'No playgrounds configured.' }}" data-search-results-empty="{{t 'No playgrounds match your current filter.' }}"></tbody>
|
||||
</table>
|
||||
|
@@ -1,8 +1,10 @@
|
||||
<table class="table table-stripped" id="realm_domains_table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>{{t "Domain" }}</th>
|
||||
<th>{{t "Allow subdomains"}}</th>
|
||||
<th>{{t "Action" }}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
</tbody>
|
||||
|
@@ -17,6 +17,7 @@
|
||||
<div class="progressive-table-wrapper" data-simplebar data-simplebar-tab-index="-1">
|
||||
<table class="table table-striped wrapped-table">
|
||||
<thead class="table-sticky-headers">
|
||||
<tr>
|
||||
<th data-sort="alphabetic" data-sort-prop="stream">{{t "Channel" }}
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
@@ -29,6 +30,7 @@
|
||||
<th data-sort="numeric" data-sort-prop="date_updated" class="active topic_date_updated">{{t "Date updated" }}
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="user_topics_table" data-empty="{{t 'You have not configured any topics yet.'}}" data-search-results-empty="{{t 'No topics match your current filter.' }}"></tbody>
|
||||
</table>
|
||||
|
@@ -17,6 +17,7 @@
|
||||
<div class="subscriber_list_container" data-simplebar data-simplebar-tab-index="-1">
|
||||
<table class="subscriber-list table table-striped">
|
||||
<thead class="table-sticky-headers">
|
||||
<tr>
|
||||
<th class="panel_user_list" data-sort="alphabetic" data-sort-prop="full_name">{{t "Name" }}
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
@@ -24,6 +25,7 @@
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
<th class="action-column">{{t "Action" }}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="create_stream_subscribers" class="subscriber_table" data-empty="{{t 'This channel has no subscribers.' }}" data-search-results-empty="{{t 'No channel subscribers match your current filter.'}}"></tbody>
|
||||
</table>
|
||||
|
@@ -2,6 +2,7 @@
|
||||
<div class="subscriber_list_loading_indicator"></div>
|
||||
<table id="stream_members_list" class="subscriber-list table table-striped">
|
||||
<thead class="table-sticky-headers">
|
||||
<tr>
|
||||
<th class="panel_user_list" data-sort="alphabetic" data-sort-prop="full_name">{{t "Name" }}
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
@@ -11,6 +12,7 @@
|
||||
{{#if can_remove_subscribers}}
|
||||
<th class="remove-button-column"></th>
|
||||
{{/if}}
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody class="subscriber_table" data-empty="{{t 'This channel has no subscribers.' }}" data-search-results-empty="{{t 'No channel subscribers match your current filter.'}}"></tbody>
|
||||
</table>
|
||||
|
@@ -15,6 +15,7 @@
|
||||
<div class="member_list_container" data-simplebar data-simplebar-tab-index="-1">
|
||||
<table class="member-list table table-striped">
|
||||
<thead class="table-sticky-headers">
|
||||
<tr>
|
||||
<th class="panel_user_list" data-sort="alphabetic" data-sort-prop="full_name">{{t "Name" }}
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
@@ -22,6 +23,7 @@
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
<th class="action-column">{{t "Action" }}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="create_user_group_members" class="member_table" data-empty="{{t 'This group has no members.' }}" data-search-results-empty="{{t 'No group members match your current filter.'}}"></tbody>
|
||||
</table>
|
||||
|
@@ -2,6 +2,7 @@
|
||||
<div class="member_list_loading_indicator"></div>
|
||||
<table class="member-list table table-striped">
|
||||
<thead class="table-sticky-headers">
|
||||
<tr>
|
||||
<th class="panel_user_list" data-sort="name">{{t "Name" }}
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
@@ -9,6 +10,7 @@
|
||||
<i class="table-sortable-arrow zulip-icon zulip-icon-sort-arrow-down"></i>
|
||||
</th>
|
||||
<th class="remove-button-column" {{#unless can_remove_members}}style="display:none"{{/unless}}></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody class="member_table" data-empty="{{t 'This group has no members.' }}" data-search-results-empty="{{t 'No group members match your current filter.'}}"></tbody>
|
||||
</table>
|
||||
|
Reference in New Issue
Block a user