nodebb-theme-harmony 1.0.0-beta.11 → 1.0.0-beta.110
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -1
- package/languages/en-GB/harmony.json +6 -1
- package/library.js +27 -25
- package/package.json +1 -1
- package/plugin.json +0 -1
- package/public/harmony.js +133 -9
- package/public/settings.js +1 -0
- package/screenshots/categories.png +0 -0
- package/screenshots/recent.png +0 -0
- package/screenshots/topic.png +0 -0
- package/scss/account.scss +1 -1
- package/scss/chats.scss +53 -25
- package/scss/common.scss +84 -10
- package/scss/flags.scss +5 -0
- package/scss/groups.scss +2 -2
- package/scss/harmony.scss +3 -0
- package/scss/mixins.scss +7 -3
- package/scss/modals.scss +5 -3
- package/scss/modules/bottom-sheet.scss +1 -1
- package/scss/modules/composer.scss +0 -4
- package/scss/modules/cover.scss +1 -11
- package/scss/modules/filters.scss +8 -0
- package/scss/modules/paginator.scss +24 -0
- package/scss/modules/topic-navigator.scss +18 -42
- package/scss/modules/topics-list.scss +32 -17
- package/scss/modules/user-menu.scss +6 -0
- package/scss/overrides.scss +4 -1
- package/scss/sidebar.scss +39 -11
- package/scss/topic.scss +19 -13
- package/templates/account/blocks.tpl +35 -40
- package/templates/account/categories.tpl +47 -29
- package/templates/account/consent.tpl +66 -10
- package/templates/account/edit/password.tpl +25 -30
- package/templates/account/edit/username.tpl +21 -26
- package/templates/account/edit.tpl +105 -116
- package/templates/account/followers.tpl +12 -19
- package/templates/account/following.tpl +12 -18
- package/templates/account/groups.tpl +12 -17
- package/templates/account/info.tpl +178 -206
- package/templates/account/posts.tpl +31 -36
- package/templates/account/profile.tpl +66 -73
- package/templates/account/sessions.tpl +8 -30
- package/templates/account/settings.tpl +222 -203
- package/templates/account/theme.tpl +39 -25
- package/templates/account/topics.tpl +36 -38
- package/templates/account/uploads.tpl +33 -40
- package/templates/admin/plugins/harmony.tpl +21 -3
- package/templates/categories.tpl +3 -6
- package/templates/category.tpl +13 -14
- package/templates/chats.tpl +9 -10
- package/templates/flags/detail.tpl +160 -193
- package/templates/flags/list.tpl +3 -70
- package/templates/footer.tpl +2 -2
- package/templates/groups/details.tpl +22 -19
- package/templates/groups/list.tpl +1 -1
- package/templates/groups/members.tpl +0 -2
- package/templates/header.tpl +2 -2
- package/templates/login.tpl +4 -4
- package/templates/notifications.tpl +5 -5
- package/templates/partials/account/admin-menu.tpl +9 -9
- package/templates/partials/account/category-item.tpl +14 -17
- package/templates/partials/account/footer.tpl +3 -0
- package/templates/partials/account/header.tpl +78 -81
- package/templates/partials/account/session-list.tpl +18 -0
- package/templates/partials/account/sidebar-left.tpl +31 -25
- package/templates/partials/breadcrumbs.tpl +6 -6
- package/templates/partials/buttons/newTopic.tpl +1 -1
- package/templates/partials/categories/item.tpl +31 -27
- package/templates/partials/categories/lastpost.tpl +7 -7
- package/templates/partials/category/filter-dropdown-content.tpl +37 -0
- package/templates/partials/{category-selector-content.tpl → category/selector-dropdown-content.tpl} +7 -7
- package/templates/partials/category/sort.tpl +22 -7
- package/templates/partials/category/subcategory.tpl +2 -3
- package/templates/partials/category/tags.tpl +0 -2
- package/templates/partials/category/tools.tpl +28 -25
- package/templates/partials/category/watch.tpl +39 -6
- package/templates/partials/chats/dropdown.tpl +4 -1
- package/templates/partials/chats/message-window.tpl +10 -9
- package/templates/partials/chats/message.tpl +4 -6
- package/templates/partials/chats/options.tpl +14 -6
- package/templates/partials/chats/recent_room.tpl +41 -32
- package/templates/partials/cookie-consent.tpl +5 -5
- package/templates/partials/flags/bulk-actions.tpl +9 -0
- package/templates/partials/flags/filters.tpl +165 -78
- package/templates/partials/flags/results.tpl +38 -0
- package/templates/partials/groups/admin.tpl +4 -4
- package/templates/partials/groups/badge.tpl +1 -1
- package/templates/partials/groups/list.tpl +2 -2
- package/templates/partials/groups/memberlist.tpl +1 -1
- package/templates/partials/groups/sidebar-left.tpl +10 -10
- package/templates/partials/header/brand.tpl +9 -2
- package/templates/partials/mobile-footer.tpl +13 -13
- package/templates/partials/notifications_list.tpl +11 -8
- package/templates/partials/paginator.tpl +11 -9
- package/templates/partials/post_bar.tpl +26 -25
- package/templates/partials/posts_list_item.tpl +5 -5
- package/templates/partials/quick-search-results.tpl +3 -3
- package/templates/partials/search-filters.tpl +184 -0
- package/templates/partials/search-results.tpl +28 -35
- package/templates/partials/sidebar/chats.tpl +22 -33
- package/templates/partials/sidebar/drafts.tpl +45 -34
- package/templates/partials/sidebar/logged-in-menu.tpl +5 -5
- package/templates/partials/sidebar/logged-out-menu.tpl +1 -1
- package/templates/partials/sidebar/notifications.tpl +28 -7
- package/templates/partials/sidebar/search.tpl +1 -1
- package/templates/partials/sidebar/user-menu.tpl +38 -29
- package/templates/partials/sidebar-left.tpl +11 -11
- package/templates/partials/sidebar-right.tpl +1 -3
- package/templates/partials/skin-switcher.tpl +3 -3
- package/templates/partials/tags/filter-dropdown-content.tpl +34 -0
- package/templates/partials/tags_list.tpl +4 -4
- package/templates/partials/topic/browsing-users.tpl +0 -2
- package/templates/partials/topic/event.tpl +1 -1
- package/templates/partials/topic/navigator-mobile.tpl +30 -11
- package/templates/partials/topic/navigator.tpl +23 -17
- package/templates/partials/topic/post-editor.tpl +0 -2
- package/templates/partials/topic/post-menu-list.tpl +60 -62
- package/templates/partials/topic/post-menu.tpl +16 -11
- package/templates/partials/topic/post.tpl +45 -27
- package/templates/partials/topic/quickreply.tpl +5 -5
- package/templates/partials/topic/reply-button.tpl +3 -3
- package/templates/partials/topic/sort.tpl +17 -5
- package/templates/partials/topic/tools.tpl +2 -2
- package/templates/partials/topic/topic-menu-list.tpl +22 -24
- package/templates/partials/topic/watch.tpl +42 -9
- package/templates/partials/topic-filters.tpl +6 -3
- package/templates/partials/topic-list-bar.tpl +50 -46
- package/templates/partials/topic-terms.tpl +6 -3
- package/templates/partials/topics_list.tpl +88 -93
- package/templates/partials/userFilter-placeholders.tpl +5 -0
- package/templates/partials/users/filter-dropdown-content.tpl +23 -0
- package/templates/partials/users/item.tpl +25 -27
- package/templates/partials/users_list.tpl +1 -1
- package/templates/popular.tpl +3 -1
- package/templates/post-queue.tpl +166 -0
- package/templates/recent.tpl +3 -2
- package/templates/register.tpl +4 -4
- package/templates/search.tpl +39 -177
- package/templates/tags.tpl +3 -3
- package/templates/top.tpl +3 -1
- package/templates/topic.tpl +74 -68
- package/templates/unread.tpl +3 -1
- package/templates/users.tpl +7 -3
- package/templates/modules/usercard.tpl +0 -39
- package/templates/partials/acceptTos.tpl +0 -11
- package/templates/partials/category-filter-content.tpl +0 -30
- package/templates/partials/category-filter-right.tpl +0 -5
- package/templates/partials/category-filter.tpl +0 -3
- package/templates/partials/category-selector-right.tpl +0 -5
- package/templates/partials/category-selector.tpl +0 -3
- package/templates/partials/slideout-menu.tpl +0 -6
|
@@ -1,20 +1,26 @@
|
|
|
1
|
-
<div class="d-
|
|
2
|
-
<
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
1
|
+
<div class="pagination-block d-none d-lg-block flex-grow-1 mb-2">
|
|
2
|
+
<div class="d-flex justify-content-end sticky-top mt-4" style="top:6rem;z-index:1;">
|
|
3
|
+
<div class="ps-1 ps-md-0 d-inline-block">
|
|
4
|
+
<div class="scroller-content d-flex gap-2 flex-column align-items-start">
|
|
5
|
+
<div class="pointer pagetop btn-ghost-sm d-inline-flex" style="padding: 4px;"><i class="fa fa-chevron-up"></i> <span class="timeago text-xs text-muted text-nowrap" title="{./timestampISO}"></span></div>
|
|
6
|
+
<div class="scroller-container position-relative">
|
|
7
|
+
<div class="scroller-thumb d-flex gap-2 text-nowrap position-relative" style="height: 40px;">
|
|
8
|
+
<div class="scroller-thumb-icon bg-primary rounded d-inline-block" style="width:9px; height: 40px;"></div>
|
|
9
|
+
<div>
|
|
10
|
+
<p class="small thumb-text d-none d-md-inline-block ff-secondary fw-semibold user-select-none mb-0"></p>
|
|
11
|
+
<p class="meta thumb-timestamp timeago text-xs text-muted ff-secondary fw-semibold mb-0 user-select-none"></p>
|
|
12
|
+
</div>
|
|
13
|
+
</div>
|
|
14
|
+
|
|
15
|
+
<div class="unread d-inline-block position-absolute bottom-0">
|
|
16
|
+
<div class="meta small position-absolute top-50 translate-middle-y text-nowrap fw-semibold ms-2">
|
|
17
|
+
<a class="text-decoration-none" href="{url}"></a>
|
|
18
|
+
</div>
|
|
19
|
+
</div>
|
|
20
|
+
</div>
|
|
21
|
+
<div class="pointer pagebottom btn-ghost-sm d-inline-flex" style="padding: 4px;"><i class="fa fa-chevron-down"></i> <span class="timeago text-xs text-muted text-nowrap" title="{./lastposttimeISO}"></span></div>
|
|
15
22
|
</div>
|
|
16
23
|
</div>
|
|
17
24
|
</div>
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
</div>
|
|
25
|
+
</div>
|
|
26
|
+
|
|
@@ -1,134 +1,132 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
<!-- IF posts.display_moderator_tools -->
|
|
1
|
+
{{{ if posts.display_moderator_tools }}}
|
|
4
2
|
<li>
|
|
5
|
-
<a class="dropdown-item" component="post/edit" role="menuitem" tabindex="-1" href="#">
|
|
6
|
-
<span class="menu-icon"><i class="fa fa-fw fa-pencil"></i></span> [[topic:edit]]
|
|
3
|
+
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" component="post/edit" role="menuitem" tabindex="-1" href="#">
|
|
4
|
+
<span class="menu-icon"><i class="fa fa-fw text-muted fa-pencil"></i></span> [[topic:edit]]
|
|
7
5
|
</a>
|
|
8
6
|
</li>
|
|
9
|
-
<li
|
|
10
|
-
<a class="dropdown-item" component="post/delete" role="menuitem" tabindex="-1" href="#" class="
|
|
11
|
-
<span class="menu-icon"><i class="fa fa-fw fa-trash-o"></i
|
|
7
|
+
<li {{{ if posts.deleted }}}hidden{{{ end }}}>
|
|
8
|
+
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" component="post/delete" role="menuitem" tabindex="-1" href="#" class="{{{ if posts.deleted }}}hidden{{{ end }}}">
|
|
9
|
+
<span class="menu-icon"><i class="fa fa-fw text-muted fa-trash-o"></i></span> [[topic:delete]]
|
|
12
10
|
</a>
|
|
13
11
|
</li>
|
|
14
|
-
<li
|
|
15
|
-
<a class="dropdown-item" component="post/restore" role="menuitem" tabindex="-1" href="#" class="
|
|
16
|
-
<span class="menu-icon"><i class="fa fa-fw fa-history"></i
|
|
12
|
+
<li {{{ if !posts.deleted }}}hidden{{{ end }}}>
|
|
13
|
+
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" component="post/restore" role="menuitem" tabindex="-1" href="#" class="{{{ if !posts.deleted }}}hidden{{{ end }}}">
|
|
14
|
+
<span class="menu-icon"><i class="fa fa-fw text-muted fa-history"></i></span> [[topic:restore]]
|
|
17
15
|
</a>
|
|
18
16
|
</li>
|
|
19
|
-
|
|
20
|
-
<li
|
|
21
|
-
<a class="dropdown-item" component="post/purge" role="menuitem" tabindex="-1" href="#" class="
|
|
22
|
-
<span class="menu-icon"><i class="fa fa-fw fa-eraser"></i></span> [[topic:purge]]
|
|
17
|
+
{{{ if posts.display_purge_tools }}}
|
|
18
|
+
<li {{{ if !posts.deleted }}}hidden{{{ end }}}>
|
|
19
|
+
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" component="post/purge" role="menuitem" tabindex="-1" href="#" class="{{{ if !posts.deleted }}}hidden{{{ end }}}">
|
|
20
|
+
<span class="menu-icon"><i class="fa fa-fw text-muted fa-eraser"></i></span> [[topic:purge]]
|
|
23
21
|
</a>
|
|
24
22
|
</li>
|
|
25
|
-
|
|
23
|
+
{{{ end }}}
|
|
26
24
|
|
|
27
|
-
|
|
25
|
+
{{{ if posts.display_move_tools }}}
|
|
28
26
|
<li>
|
|
29
|
-
<a class="dropdown-item" component="post/move" role="menuitem" tabindex="-1" href="#">
|
|
30
|
-
<span class="menu-icon"><i class="fa fa-fw fa-arrows"></i></span> [[topic:move]]
|
|
27
|
+
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" component="post/move" role="menuitem" tabindex="-1" href="#">
|
|
28
|
+
<span class="menu-icon"><i class="fa fa-fw text-muted fa-arrows"></i></span> [[topic:move]]
|
|
31
29
|
</a>
|
|
32
30
|
</li>
|
|
33
|
-
|
|
31
|
+
{{{ end }}}
|
|
34
32
|
|
|
35
|
-
|
|
33
|
+
{{{ if posts.display_change_owner_tools }}}
|
|
36
34
|
<li>
|
|
37
|
-
<a class="dropdown-item" component="post/change-owner" role="menuitem" tabindex="-1" href="#">
|
|
38
|
-
<span class="menu-icon"><i class="fa fa-fw fa-user"></i></span> [[topic:change-owner]]
|
|
35
|
+
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" component="post/change-owner" role="menuitem" tabindex="-1" href="#">
|
|
36
|
+
<span class="menu-icon"><i class="fa fa-fw text-muted fa-user"></i></span> [[topic:change-owner]]
|
|
39
37
|
</a>
|
|
40
38
|
</li>
|
|
41
|
-
|
|
39
|
+
{{{ end }}}
|
|
42
40
|
|
|
43
|
-
|
|
41
|
+
{{{ if posts.ip }}}
|
|
44
42
|
<li>
|
|
45
|
-
<a class="dropdown-item" component="post/copy-ip" role="menuitem" tabindex="-1" href="#" data-clipboard-text="{posts.ip}">
|
|
46
|
-
<span class="menu-icon" ><i class="fa fa-fw fa-copy"></i></span> [[topic:copy-ip]] {posts.ip}
|
|
43
|
+
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" component="post/copy-ip" role="menuitem" tabindex="-1" href="#" data-clipboard-text="{posts.ip}">
|
|
44
|
+
<span class="menu-icon" ><i class="fa fa-fw text-muted fa-copy"></i></span> [[topic:copy-ip]] {posts.ip}
|
|
47
45
|
</a>
|
|
48
46
|
</li>
|
|
49
|
-
|
|
47
|
+
{{{ if posts.display_ip_ban }}}
|
|
50
48
|
<li>
|
|
51
|
-
<a class="dropdown-item" component="post/ban-ip" role="menuitem" tabindex="-1" href="#" data-ip="{posts.ip}">
|
|
52
|
-
<span class="menu-icon"><i class="fa fa-fw fa-ban"></i></span> [[topic:ban-ip]] {posts.ip}
|
|
49
|
+
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" component="post/ban-ip" role="menuitem" tabindex="-1" href="#" data-ip="{posts.ip}">
|
|
50
|
+
<span class="menu-icon"><i class="fa fa-fw text-muted fa-ban"></i></span> [[topic:ban-ip]] {posts.ip}
|
|
53
51
|
</a>
|
|
54
52
|
</li>
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
53
|
+
{{{ end }}}
|
|
54
|
+
{{{ end }}}
|
|
55
|
+
{{{ end }}}
|
|
58
56
|
|
|
59
|
-
{{{each posts.tools}}}
|
|
57
|
+
{{{ each posts.tools }}}
|
|
60
58
|
<li {{{ if ./disabled }}}class="disabled" {{{ end }}}>
|
|
61
|
-
<a class="dropdown-item" {{{ if ./action}}}component="{./action}"{{{ end }}} role="menuitem" tabindex="-1" href="{{{ if ./href }}}{./href}{{{ else }}}#{{{ end }}}">
|
|
62
|
-
<span class="menu-icon"><i class="fa fa-fw {
|
|
59
|
+
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" {{{ if ./action}}}component="{./action}"{{{ end }}} role="menuitem" tabindex="-1" href="{{{ if ./href }}}{./href}{{{ else }}}#{{{ end }}}">
|
|
60
|
+
<span class="menu-icon"><i class="fa fa-fw text-muted {./icon}"></i></span> {{./html}}
|
|
63
61
|
</a>
|
|
64
62
|
</li>
|
|
65
|
-
{{{end}}}
|
|
63
|
+
{{{ end }}}
|
|
66
64
|
|
|
67
|
-
|
|
68
|
-
|
|
65
|
+
{{{ if !posts.deleted }}}
|
|
66
|
+
{{{ if (posts.display_history && privileges.posts:history)}}}
|
|
69
67
|
<li>
|
|
70
|
-
<a class="dropdown-item" component="post/view-history" role="menuitem" tabindex="-1" href="#">
|
|
71
|
-
<span class="menu-icon"><i class="fa fa-fw fa-history"></i></span> [[topic:view-history]]
|
|
68
|
+
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" component="post/view-history" role="menuitem" tabindex="-1" href="#">
|
|
69
|
+
<span class="menu-icon"><i class="fa fa-fw text-muted fa-history"></i></span> [[topic:view-history]]
|
|
72
70
|
</a>
|
|
73
71
|
</li>
|
|
74
|
-
|
|
72
|
+
{{{ end }}}
|
|
75
73
|
|
|
76
74
|
{{{ if config.loggedIn }}}
|
|
77
75
|
<li>
|
|
78
|
-
<a class="dropdown-item" component="post/bookmark" role="menuitem" tabindex="-1" href="#" data-bookmarked="{posts.bookmarked}">
|
|
76
|
+
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" component="post/bookmark" role="menuitem" tabindex="-1" href="#" data-bookmarked="{posts.bookmarked}">
|
|
79
77
|
<span class="menu-icon">
|
|
80
|
-
<i component="post/bookmark/on" class="fa fa-fw fa-
|
|
81
|
-
<i component="post/bookmark/off" class="fa fa-fw fa-
|
|
78
|
+
<i component="post/bookmark/on" class="fa fa-fw text-muted fa-bookmark {{{ if !posts.bookmarked }}}hidden{{{ end }}}"></i>
|
|
79
|
+
<i component="post/bookmark/off" class="fa fa-fw text-muted fa-bookmark-o {{{ if posts.bookmarked }}}hidden{{{ end }}}"></i>
|
|
82
80
|
</span>
|
|
83
81
|
<span class="bookmark-text">[[topic:bookmark]]</span>
|
|
84
|
-
<span component="post/bookmark-count" class="bookmarkCount badge" data-bookmarks="{posts.bookmarks}">{posts.bookmarks}</span>
|
|
82
|
+
<span component="post/bookmark-count" class="bookmarkCount badge bg-secondary" data-bookmarks="{posts.bookmarks}">{posts.bookmarks}</span>
|
|
85
83
|
</a>
|
|
86
84
|
</li>
|
|
87
85
|
{{{ end }}}
|
|
88
86
|
|
|
89
87
|
<li>
|
|
90
|
-
<a class="dropdown-item" role="menuitem" tabindex="-1" href="#" data-clipboard-text="{posts.absolute_url}">
|
|
91
|
-
<i class="fa fa-fw fa-link"></i> [[topic:copy-permalink]]
|
|
88
|
+
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" role="menuitem" tabindex="-1" href="#" data-clipboard-text="{posts.absolute_url}">
|
|
89
|
+
<i class="fa fa-fw text-muted fa-link"></i> [[topic:copy-permalink]]
|
|
92
90
|
</a>
|
|
93
91
|
</li>
|
|
94
92
|
|
|
95
|
-
|
|
96
|
-
|
|
93
|
+
{{{ if postSharing.length }}}
|
|
94
|
+
{{{ if config.loggedIn }}}<li class="dropdown-divider"></li>{{{ end }}}
|
|
97
95
|
<li class="dropdown-header">[[topic:share_this_post]]</li>
|
|
98
|
-
|
|
99
|
-
{{{each postSharing}}}
|
|
96
|
+
{{{ end }}}
|
|
97
|
+
{{{ each postSharing }}}
|
|
100
98
|
<li>
|
|
101
|
-
<a class="dropdown-item" role="menuitem" component="share/{
|
|
99
|
+
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" role="menuitem" component="share/{./id}" tabindex="-1" href="#"><span class="menu-icon"><i class="fa fa-fw text-muted {./class}"></i></span> {./name}</a>
|
|
102
100
|
</li>
|
|
103
|
-
{{{end}}}
|
|
104
|
-
|
|
101
|
+
{{{ end }}}
|
|
102
|
+
{{{ end }}}
|
|
105
103
|
|
|
106
104
|
{{{ if posts.display_flag_tools }}}
|
|
107
105
|
<li class="dropdown-divider"></li>
|
|
108
106
|
|
|
109
107
|
<li {{{ if posts.flags.flagged }}}hidden{{{ end }}}>
|
|
110
|
-
<a class="dropdown-item" component="post/flag" role="menuitem" tabindex="-1" href="#"><i class="fa fa-fw fa-flag"></i> [[topic:flag-post]]</a>
|
|
108
|
+
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" component="post/flag" role="menuitem" tabindex="-1" href="#"><i class="fa fa-fw text-muted fa-flag"></i> [[topic:flag-post]]</a>
|
|
111
109
|
</li>
|
|
112
110
|
<li {{{ if !posts.flags.flagged }}}hidden{{{ end }}} class="disabled text-muted">
|
|
113
|
-
<a class="dropdown-item" component="post/already-flagged" role="menuitem" tabindex="-1" href="#"><i class="fa fa-fw fa-flag"></i> [[topic:already-flagged]]</a>
|
|
111
|
+
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" component="post/already-flagged" role="menuitem" tabindex="-1" href="#"><i class="fa fa-fw text-muted fa-flag"></i> [[topic:already-flagged]]</a>
|
|
114
112
|
</li>
|
|
115
113
|
|
|
116
114
|
{{{ if (!posts.selfPost && posts.uid) }}}
|
|
117
115
|
<li>
|
|
118
|
-
<a class="dropdown-item" component="post/flagUser" role="menuitem" tabindex="-1" href="#"><i class="fa fa-fw fa-flag"></i> [[topic:flag-user]]</a>
|
|
116
|
+
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" component="post/flagUser" role="menuitem" tabindex="-1" href="#"><i class="fa fa-fw text-muted fa-flag"></i> [[topic:flag-user]]</a>
|
|
119
117
|
</li>
|
|
120
118
|
{{{ end }}}
|
|
121
119
|
{{{ end }}}
|
|
122
120
|
|
|
123
|
-
|
|
121
|
+
{{{ if posts.display_moderator_tools }}}
|
|
124
122
|
{{{ if posts.flags.exists }}}
|
|
125
123
|
<li>
|
|
126
|
-
<a class="dropdown-item" role="menuitem" tabindex="-1" href="{config.relative_path}/flags/{posts.flags.flagId}"><i class="fa fa-fw fa-exclamation-circle"></i> [[topic:view-flag-report]]</a>
|
|
124
|
+
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" role="menuitem" tabindex="-1" href="{config.relative_path}/flags/{posts.flags.flagId}"><i class="fa fa-fw text-muted fa-exclamation-circle"></i> [[topic:view-flag-report]]</a>
|
|
127
125
|
</li>
|
|
128
126
|
{{{ if (posts.flags.state == "open") }}}
|
|
129
127
|
<li>
|
|
130
|
-
<a class="dropdown-item" component="post/flagResolve" data-flagId="{posts.flags.flagId}" role="menuitem" tabindex="-1" href="#"><i class="fa fa-fw fa-check"></i> [[topic:resolve-flag]]</a>
|
|
128
|
+
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" component="post/flagResolve" data-flagId="{posts.flags.flagId}" role="menuitem" tabindex="-1" href="#"><i class="fa fa-fw text-muted fa-check"></i> [[topic:resolve-flag]]</a>
|
|
131
129
|
</li>
|
|
132
130
|
{{{ end }}}
|
|
133
131
|
{{{ end }}}
|
|
134
|
-
|
|
132
|
+
{{{ end }}}
|
|
@@ -1,25 +1,30 @@
|
|
|
1
1
|
<span component="post/tools" class="dropdown moderator-tools bottom-sheet d-inline-block {{{ if !./display_post_menu }}}hidden{{{ end }}}">
|
|
2
2
|
<a class="btn-ghost-sm dropdown-toggle d-block" href="#" data-bs-toggle="dropdown"><i class="fa fa-fw fa-ellipsis-v text-primary"></i></a>
|
|
3
|
-
<ul class="dropdown-menu dropdown-menu-end" role="menu">
|
|
3
|
+
<ul class="dropdown-menu dropdown-menu-end p-1 text-sm" role="menu">
|
|
4
4
|
<li class="dropdown-item placeholder-wave">
|
|
5
|
-
<div class="placeholder" style="width: 20px;"
|
|
6
|
-
<div class="placeholder col-3"
|
|
5
|
+
<div class="placeholder" style="width: 20px;"></div>
|
|
6
|
+
<div class="placeholder col-3"></div>
|
|
7
7
|
</li>
|
|
8
8
|
<li class="dropdown-item placeholder-wave">
|
|
9
|
-
<div class="placeholder" style="width: 20px;"
|
|
10
|
-
<div class="placeholder col-5"
|
|
9
|
+
<div class="placeholder" style="width: 20px;"></div>
|
|
10
|
+
<div class="placeholder col-5"></div>
|
|
11
11
|
</li>
|
|
12
12
|
<li class="dropdown-item placeholder-wave">
|
|
13
|
-
<div class="placeholder" style="width: 20px;"
|
|
14
|
-
<div class="placeholder col-
|
|
13
|
+
<div class="placeholder" style="width: 20px;"></div>
|
|
14
|
+
<div class="placeholder col-9"></div>
|
|
15
15
|
</li>
|
|
16
16
|
<li class="dropdown-item placeholder-wave">
|
|
17
|
-
<div class="placeholder" style="width: 20px;"
|
|
18
|
-
<div class="placeholder col-7"
|
|
17
|
+
<div class="placeholder" style="width: 20px;"></div>
|
|
18
|
+
<div class="placeholder col-7"></div>
|
|
19
19
|
</li>
|
|
20
20
|
<li class="dropdown-item placeholder-wave">
|
|
21
|
-
<div class="placeholder" style="width: 20px;"
|
|
22
|
-
<div class="placeholder col-
|
|
21
|
+
<div class="placeholder" style="width: 20px;"></div>
|
|
22
|
+
<div class="placeholder col-10"></div>
|
|
23
|
+
</li>
|
|
24
|
+
<li class="dropdown-divider"></li>
|
|
25
|
+
<li class="dropdown-item placeholder-wave">
|
|
26
|
+
<div class="placeholder" style="width: 20px;"></div>
|
|
27
|
+
<div class="placeholder col-10"></div>
|
|
23
28
|
</li>
|
|
24
29
|
</ul>
|
|
25
30
|
</span>
|
|
@@ -1,22 +1,30 @@
|
|
|
1
|
+
{{{ if (!./index && widgets.mainpost-header.length) }}}
|
|
2
|
+
<div data-widget-area="mainpost-header">
|
|
3
|
+
{{{ each widgets.mainpost-header }}}
|
|
4
|
+
{widgets.mainpost-header.html}
|
|
5
|
+
{{{ end }}}
|
|
6
|
+
</div>
|
|
7
|
+
{{{ end }}}
|
|
8
|
+
|
|
1
9
|
<div class="d-flex align-items-start gap-3">
|
|
2
10
|
<div class="icon py-1 bg-body d-none d-sm-block">
|
|
3
11
|
<a class="d-inline-block position-relative text-decoration-none" href="{{{ if ./user.userslug }}}{config.relative_path}/user/{./user.userslug}{{{ else }}}#{{{ end }}}">
|
|
4
12
|
{buildAvatar(posts.user, "48px", true, "", "user/picture")}
|
|
5
|
-
<span component="user/status" class="position-absolute translate-middle-y
|
|
13
|
+
<span component="user/status" class="position-absolute translate-middle-y border border-white border-2 rounded-circle status {posts.user.status}"><span class="visually-hidden">[[global:{posts.user.status}]]</span></span>
|
|
6
14
|
</a>
|
|
7
15
|
</div>
|
|
8
16
|
|
|
9
|
-
<div class="d-flex flex-grow-1 flex-column w-100" style="min-width: 0;">
|
|
10
|
-
<div class="d-flex align-items-center gap-1 flex-wrap w-100 post-header mt-1">
|
|
17
|
+
<div class="post-container d-flex flex-grow-1 flex-column w-100" style="min-width: 0;">
|
|
18
|
+
<div class="d-flex align-items-center gap-1 flex-wrap w-100 post-header mt-1" itemprop="author" itemscope itemtype="https://schema.org/Person">
|
|
11
19
|
<div class="icon bg-body d-sm-none">
|
|
12
20
|
<a class="d-inline-block position-relative text-decoration-none" href="{{{ if ./user.userslug }}}{config.relative_path}/user/{./user.userslug}{{{ else }}}#{{{ end }}}">
|
|
13
21
|
{buildAvatar(posts.user, "20px", true, "", "user/picture")}
|
|
14
|
-
<span component="user/status" class="position-absolute translate-middle-y
|
|
22
|
+
<span component="user/status" class="position-absolute translate-middle-y border border-white border-2 rounded-circle status {posts.user.status}"><span class="visually-hidden">[[global:{posts.user.status}]]</span></span>
|
|
15
23
|
</a>
|
|
16
24
|
</div>
|
|
17
25
|
|
|
18
26
|
<span class="text-nowrap">
|
|
19
|
-
<a class="fw-bold" href="{{{ if ./user.userslug }}}{config.relative_path}/user/{./user.userslug}{{{ else }}}#{{{ end }}}" itemprop="
|
|
27
|
+
<a class="fw-bold" href="{{{ if ./user.userslug }}}{config.relative_path}/user/{./user.userslug}{{{ else }}}#{{{ end }}}" itemprop="name" data-username="{posts.user.username}" data-uid="{posts.user.uid}">{posts.user.displayname}</a>
|
|
20
28
|
</span>
|
|
21
29
|
|
|
22
30
|
{{{ each posts.user.selectedGroups }}}
|
|
@@ -25,19 +33,18 @@
|
|
|
25
33
|
{{{ end }}}
|
|
26
34
|
{{{ end }}}
|
|
27
35
|
|
|
28
|
-
|
|
36
|
+
{{{ if posts.user.banned }}}
|
|
29
37
|
<span class="badge bg-danger rounded-1">[[user:banned]]</span>
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
<div class="d-flex gap-1 hidden-xs align-items-center">
|
|
33
|
-
{{{ if posts.toPid }}}
|
|
34
|
-
<span class="text-muted">replied to</span><!-- FIX THIS, DOES NOT l10n PROPERLY -->
|
|
35
|
-
<a component="post/parent" data-topid="{posts.toPid}" href="{config.relative_path}/post/{posts.toPid}"><!-- IF posts.parent.username -->{posts.parent.username}<!-- ELSE -->[[global:guest]]<!-- ENDIF posts.parent.username --></a>
|
|
36
|
-
{{{ else }}}
|
|
37
|
-
<span class="text-muted">wrote</span><!-- FIX THIS, DOES NOT l10n PROPERLY -->
|
|
38
|
-
{{{ end }}}
|
|
38
|
+
{{{ end }}}
|
|
39
39
|
|
|
40
|
-
|
|
40
|
+
<div class="d-flex gap-1 align-items-center">
|
|
41
|
+
<span class="text-muted">
|
|
42
|
+
{{{ if posts.toPid }}}
|
|
43
|
+
{generateRepliedTo(@value, config.timeagoCutoff)}
|
|
44
|
+
{{{ else }}}
|
|
45
|
+
{generateWrote(@value, config.timeagoCutoff)}
|
|
46
|
+
{{{ end }}}
|
|
47
|
+
</span>
|
|
41
48
|
|
|
42
49
|
<i component="post/edit-indicator" class="fa fa-edit text-muted{{{ if privileges.posts:history }}} pointer{{{ end }}} edit-icon {{{ if !posts.editor.username }}}hidden{{{ end }}}" title="[[global:edited-timestamp, {./editedISO}]]"></i>
|
|
43
50
|
<span data-editor="{posts.editor.userslug}" component="post/editor" class="visually-hidden">[[global:last_edited_by, {posts.editor.username}]] <span class="timeago" title="{posts.editedISO}"></span></span>
|
|
@@ -45,16 +52,17 @@
|
|
|
45
52
|
|
|
46
53
|
<div>
|
|
47
54
|
<span>
|
|
48
|
-
|
|
55
|
+
{{{ if posts.user.custom_profile_info.length }}}
|
|
49
56
|
|
|
|
50
|
-
{{{each posts.user.custom_profile_info}}}
|
|
57
|
+
{{{ each posts.user.custom_profile_info }}}
|
|
51
58
|
{posts.user.custom_profile_info.content}
|
|
52
|
-
{{{end}}}
|
|
53
|
-
|
|
59
|
+
{{{ end }}}
|
|
60
|
+
{{{ end }}}
|
|
54
61
|
</span>
|
|
55
62
|
</div>
|
|
56
63
|
<div class="d-flex align-items-center gap-1 flex-grow-1 justify-content-end">
|
|
57
64
|
<span class="bookmarked opacity-0 text-primary"><i class="fa fa-bookmark-o"></i></span>
|
|
65
|
+
<a href="{config.relative_path}/post/{./pid}" class="post-index text-muted d-none d-md-inline">#{increment(./index, "1")}</a>
|
|
58
66
|
</div>
|
|
59
67
|
</div>
|
|
60
68
|
|
|
@@ -74,7 +82,7 @@
|
|
|
74
82
|
<a component="post/reply-count" data-target-component="post/replies/container" href="#" class="d-flex gap-2 align-items-center mt-2 btn-outline border rounded-1 p-1 threaded-replies user-select-none float-start text-muted text-decoration-none {{{ if !posts.replies.count }}}hidden{{{ end }}}">
|
|
75
83
|
<span component="post/reply-count/avatars" class="avatars d-inline-flex gap-1 align-items-top {{{ if posts.replies.hasMore }}}hasMore{{{ end }}}">
|
|
76
84
|
{{{each posts.replies.users}}}
|
|
77
|
-
<span>{buildAvatar(posts.replies.users, "20px", true, "")}</span>
|
|
85
|
+
<span>{buildAvatar(posts.replies.users, "20px", true, "avatar-tooltip")}</span>
|
|
78
86
|
{{{end}}}
|
|
79
87
|
{{{ if posts.replies.hasMore}}}
|
|
80
88
|
<span><i class="fa fa-ellipsis"></i></span>
|
|
@@ -95,20 +103,22 @@
|
|
|
95
103
|
|
|
96
104
|
<div component="post/actions" class="d-flex justify-content-end gap-1 post-tools">
|
|
97
105
|
<!-- IMPORT partials/topic/reactions.tpl -->
|
|
98
|
-
<a component="post/reply" href="#" class="btn-ghost-sm user-select-none {{{ if !privileges.topics:reply }}}hidden{{{ end }}}" title="[[topic:reply]]"><i class="fa fa-reply text-primary"></i></a>
|
|
99
|
-
<a component="post/quote" href="#" class="btn-ghost-sm user-select-none {{{ if !privileges.topics:reply }}}hidden{{{ end }}}" title="[[topic:quote]]"><i class="fa fa-quote-right text-primary"></i></a>
|
|
106
|
+
<a component="post/reply" href="#" class="btn-ghost-sm user-select-none {{{ if !privileges.topics:reply }}}hidden{{{ end }}}" title="[[topic:reply]]"><i class="fa fa-fw fa-reply text-primary"></i></a>
|
|
107
|
+
<a component="post/quote" href="#" class="btn-ghost-sm user-select-none {{{ if !privileges.topics:reply }}}hidden{{{ end }}}" title="[[topic:quote]]"><i class="fa fa-fw fa-quote-right text-primary"></i></a>
|
|
100
108
|
|
|
101
109
|
{{{ if !reputation:disabled }}}
|
|
102
110
|
<div class="d-flex votes align-items-stretch">
|
|
103
111
|
<a component="post/upvote" href="#" class="btn-ghost-sm {{{ if posts.upvoted }}}upvoted{{{ end }}}">
|
|
104
|
-
<i class="fa fa-chevron-up text-primary"></i>
|
|
112
|
+
<i class="fa fa-fw fa-chevron-up text-primary"></i>
|
|
105
113
|
</a>
|
|
106
114
|
|
|
107
|
-
<
|
|
115
|
+
<meta itemprop="upvoteCount" content="{posts.upvotes}">
|
|
116
|
+
<meta itemprop="downvoteCount" content="{posts.downvotes}">
|
|
117
|
+
<div class="d-inline-block px-2 mx-1 btn-ghost-sm" component="post/vote-count" data-votes="{posts.votes}">{posts.votes}</div>
|
|
108
118
|
|
|
109
119
|
{{{ if !downvote:disabled }}}
|
|
110
120
|
<a component="post/downvote" href="#" class="btn-ghost-sm {{{ if posts.downvoted }}}downvoted{{{ end }}}">
|
|
111
|
-
<i class="fa fa-chevron-down text-primary"></i>
|
|
121
|
+
<i class="fa fa-fw fa-chevron-down text-primary"></i>
|
|
112
122
|
</a>
|
|
113
123
|
{{{ end }}}
|
|
114
124
|
</div>
|
|
@@ -116,4 +126,12 @@
|
|
|
116
126
|
|
|
117
127
|
<!-- IMPORT partials/topic/post-menu.tpl -->
|
|
118
128
|
</div>
|
|
119
|
-
</div>
|
|
129
|
+
</div>
|
|
130
|
+
|
|
131
|
+
{{{ if (!./index && widgets.mainpost-footer.length) }}}
|
|
132
|
+
<div data-widget-area="mainpost-footer">
|
|
133
|
+
{{{ each widgets.mainpost-footer }}}
|
|
134
|
+
{widgets.mainpost-footer.html}
|
|
135
|
+
{{{ end }}}
|
|
136
|
+
</div>
|
|
137
|
+
{{{ end }}}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
<div component="topic/quickreply/container" class="quick-reply d-flex gap-3">
|
|
1
|
+
{{{ if privileges.topics:reply }}}
|
|
2
|
+
<div component="topic/quickreply/container" class="quick-reply d-flex gap-3 mb-4">
|
|
3
3
|
<div class="icon hidden-xs">
|
|
4
|
-
<a class="d-inline-block position-relative" href="
|
|
4
|
+
<a class="d-inline-block position-relative" href="{{{ if loggedInUser.userslug }}}{config.relative_path}/user/{loggedInUser.userslug}{{{ else }}}#{{{ end }}}">
|
|
5
5
|
{buildAvatar(loggedInUser, "48px", true, "", "user/picture")}
|
|
6
|
-
{{{ if loggedInUser.status }}}<span component="user/status" class="position-absolute translate-middle-y
|
|
6
|
+
{{{ if loggedInUser.status }}}<span component="user/status" class="position-absolute translate-middle-y border border-white border-2 rounded-circle status {loggedInUser.status}"><span class="visually-hidden">[[global:{loggedInUser.status}]]</span></span>{{{ end }}}
|
|
7
7
|
</a>
|
|
8
8
|
</div>
|
|
9
9
|
<form class="flex-grow-1 d-flex flex-column gap-2" method="post" action="{config.relative_path}/compose">
|
|
@@ -25,4 +25,4 @@
|
|
|
25
25
|
</form>
|
|
26
26
|
|
|
27
27
|
</div>
|
|
28
|
-
|
|
28
|
+
{{{ end }}}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
<div component="topic/reply/container" class="btn-group action-bar
|
|
1
|
+
<div component="topic/reply/container" class="btn-group action-bar {{{ if !privileges.topics:reply }}}hidden{{{ end }}}">
|
|
2
2
|
<a href="{config.relative_path}/compose?tid={tid}&title={title}" class="d-flex align-items-center btn btn-sm btn-primary px-3 fw-semibold " component="topic/reply" data-ajaxify="false" role="button"><i class="fa fa-reply d-sm-block d-md-none"></i><span class="d-none d-md-block"> [[topic:reply]]</span></a>
|
|
3
3
|
<button type="button" class="btn btn-sm btn-primary dropdown-toggle" data-bs-toggle="dropdown">
|
|
4
4
|
<span class="caret"></span>
|
|
5
5
|
</button>
|
|
6
|
-
<ul class="dropdown-menu dropdown-menu-end" role="menu">
|
|
7
|
-
<li><a class="dropdown-item" href="#" component="topic/reply-as-topic">[[topic:reply-as-topic]]</a></li>
|
|
6
|
+
<ul class="dropdown-menu dropdown-menu-end p-1 text-sm" role="menu">
|
|
7
|
+
<li><a class="dropdown-item rounded-1" href="#" component="topic/reply-as-topic">[[topic:reply-as-topic]]</a></li>
|
|
8
8
|
</ul>
|
|
9
9
|
</div>
|
|
10
10
|
|
|
@@ -1,13 +1,25 @@
|
|
|
1
1
|
<div class="btn-group bottom-sheet" component="thread/sort">
|
|
2
|
-
<button class="btn-ghost-sm d-flex gap-2
|
|
2
|
+
<button class="btn-ghost-sm d-flex gap-2 dropdown-toggle" data-bs-toggle="dropdown" type="button">
|
|
3
3
|
<span class="d-flex gap-2 align-items-center">
|
|
4
4
|
<i class="fa fa-fw fa-arrow-down-wide-short text-primary"></i>
|
|
5
5
|
<span class="d-none d-md-inline fw-semibold">[[topic:sort_by]]</span>
|
|
6
6
|
</span>
|
|
7
7
|
</button>
|
|
8
|
-
<ul class="dropdown-menu">
|
|
9
|
-
<li><a class="dropdown-item" href="#" class="oldest_to_newest" data-sort="oldest_to_newest"
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
<ul class="dropdown-menu p-1 text-sm">
|
|
9
|
+
<li><a class="dropdown-item rounded-1 d-flex align-items-center gap-2" href="#" class="oldest_to_newest" data-sort="oldest_to_newest">
|
|
10
|
+
<span class="flex-grow-1">[[topic:oldest_to_newest]]</span>
|
|
11
|
+
<i class="flex-shrink-0 fa fa-fw"></i>
|
|
12
|
+
</a>
|
|
13
|
+
</li>
|
|
14
|
+
<li><a class="dropdown-item rounded-1 d-flex align-items-center gap-2" href="#" class="newest_to_oldest" data-sort="newest_to_oldest">
|
|
15
|
+
<span class="flex-grow-1">[[topic:newest_to_oldest]]</span>
|
|
16
|
+
<i class="flex-shrink-0 fa fa-fw"></i>
|
|
17
|
+
</a>
|
|
18
|
+
</li>
|
|
19
|
+
<li><a class="dropdown-item rounded-1 d-flex align-items-center gap-2" href="#" class="most_votes" data-sort="most_votes">
|
|
20
|
+
<span class="flex-grow-1">[[topic:most_votes]]</span>
|
|
21
|
+
<i class="flex-shrink-0 fa fa-fw"></i>
|
|
22
|
+
</a>
|
|
23
|
+
</li>
|
|
12
24
|
</ul>
|
|
13
25
|
</div>
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{{{ if privileges.view_thread_tools }}}
|
|
2
2
|
<div class="btn-group thread-tools bottom-sheet">
|
|
3
|
-
<button class="btn-ghost-sm d-flex gap-2
|
|
3
|
+
<button class="btn-ghost-sm d-flex gap-2 dropdown-toggle" data-bs-toggle="dropdown" type="button">
|
|
4
4
|
<i class="fa fa-fw fa-gear link-primary"></i>
|
|
5
5
|
<span class="d-none d-md-inline fw-semibold">[[topic:thread_tools.title]]</span>
|
|
6
6
|
</button>
|
|
7
|
-
<ul class="dropdown-menu">
|
|
7
|
+
<ul class="dropdown-menu p-1 text-sm">
|
|
8
8
|
<li class="placeholder-wave"><a class="dropdown-item d-flex gap-2" href="#"><div class="placeholder bg-secondary rounded-1" style="width: 1em;"></div><div class="placeholder bg-secondary rounded-1 col-8"></div></a></li>
|
|
9
9
|
<li class="placeholder-wave"><a class="dropdown-item d-flex gap-2" href="#"><div class="placeholder bg-secondary rounded-1" style="width: 1em;"></div><div class="placeholder bg-secondary rounded-1 col-8"></div></a></li>
|
|
10
10
|
<li class="placeholder-wave"><a class="dropdown-item d-flex gap-2" href="#"><div class="placeholder bg-secondary rounded-1" style="width: 1em;"></div><div class="placeholder bg-secondary rounded-1 col-8"></div></a></li>
|
|
@@ -1,34 +1,32 @@
|
|
|
1
|
-
<!-- THIS FILE IS STILL PERSONA -->
|
|
2
|
-
|
|
3
1
|
{{{ if privileges.editable }}}
|
|
4
|
-
<li
|
|
5
|
-
<li
|
|
6
|
-
<li
|
|
7
|
-
<li
|
|
2
|
+
<li {{{ if locked }}}hidden{{{ end }}}><a component="topic/lock" href="#" class="dropdown-item rounded-1 d-flex align-items-center gap-2 {{{ if locked }}}hidden{{{ end }}}"><i class="fa fa-fw text-muted fa-lock"></i> [[topic:thread_tools.lock]]</a></li>
|
|
3
|
+
<li {{{ if !locked }}}hidden{{{ end }}}><a component="topic/unlock" href="#" class="dropdown-item rounded-1 d-flex align-items-center gap-2 {{{ if !locked }}}hidden{{{ end }}}"><i class="fa fa-fw text-muted fa-unlock"></i> [[topic:thread_tools.unlock]]</a></li>
|
|
4
|
+
<li {{{ if pinned }}}hidden{{{ end }}}><a component="topic/pin" href="#" class="dropdown-item rounded-1 d-flex align-items-center gap-2 {{{ if pinned }}}hidden{{{ end }}}"><i class="fa fa-fw text-muted fa-thumb-tack"></i> [[topic:thread_tools.pin]]</a></li>
|
|
5
|
+
<li {{{ if !pinned }}}hidden{{{ end }}}><a component="topic/unpin" href="#" class="dropdown-item rounded-1 d-flex align-items-center gap-2 {{{ if !pinned }}}hidden{{{ end }}}"><i class="fa fa-fw text-muted fa-thumb-tack fa-rotate-90"></i> [[topic:thread_tools.unpin]]</a></li>
|
|
8
6
|
|
|
9
|
-
<li><a component="topic/move" class="dropdown-item" href="#"><i class="fa fa-fw fa-arrows"></i> [[topic:thread_tools.move]]</a></li>
|
|
10
|
-
<li><a component="topic/merge" class="dropdown-item" href="#"><i class="fa fa-fw fa-code-fork"></i> [[topic:thread_tools.merge]]</a></li>
|
|
11
|
-
<li><a component="topic/fork" class="dropdown-item" href="#"><i class="fa fa-fw fa-code-fork"></i> [[topic:thread_tools.fork]]</a></li>
|
|
7
|
+
<li><a component="topic/move" class="dropdown-item rounded-1 d-flex align-items-center gap-2" href="#"><i class="fa fa-fw text-muted fa-arrows"></i> [[topic:thread_tools.move]]</a></li>
|
|
8
|
+
<li><a component="topic/merge" class="dropdown-item rounded-1 d-flex align-items-center gap-2" href="#"><i class="fa fa-fw text-muted fa-code-fork"></i> [[topic:thread_tools.merge]]</a></li>
|
|
9
|
+
<li><a component="topic/fork" class="dropdown-item rounded-1 d-flex align-items-center gap-2" href="#"><i class="fa fa-fw text-muted fa-code-fork"></i> [[topic:thread_tools.fork]]</a></li>
|
|
12
10
|
{{{ if !scheduled }}}
|
|
13
|
-
<li><a component="topic/move-posts" class="dropdown-item" href="#"><i class="fa fa-fw fa-arrows"></i> [[topic:thread_tools.move-posts]]</a></li>
|
|
11
|
+
<li><a component="topic/move-posts" class="dropdown-item rounded-1 d-flex align-items-center gap-2" href="#"><i class="fa fa-fw text-muted fa-arrows"></i> [[topic:thread_tools.move-posts]]</a></li>
|
|
14
12
|
{{{ end }}}
|
|
15
|
-
<li><a component="topic/mark-unread-for-all" class="dropdown-item" href="#"><i class="fa fa-fw fa-inbox"></i> [[topic:thread_tools.markAsUnreadForAll]]</a></li>
|
|
13
|
+
<li><a component="topic/mark-unread-for-all" class="dropdown-item rounded-1 d-flex align-items-center gap-2" href="#"><i class="fa fa-fw text-muted fa-inbox"></i> [[topic:thread_tools.markAsUnreadForAll]]</a></li>
|
|
16
14
|
<li class="dropdown-divider"></li>
|
|
17
15
|
{{{ end }}}
|
|
18
16
|
|
|
19
|
-
|
|
20
|
-
<li
|
|
17
|
+
{{{ if privileges.deletable }}}
|
|
18
|
+
<li {{{ if deleted }}}hidden{{{ end }}}><a component="topic/delete" href="#" class="dropdown-item rounded-1 d-flex align-items-center gap-2 {{{ if deleted }}}hidden{{{ end }}}"><i class="fa fa-fw text-muted fa-trash-o"></i> [[topic:thread_tools.delete]]</a></li>
|
|
21
19
|
{{{ if !scheduled }}}
|
|
22
|
-
<li
|
|
20
|
+
<li {{{ if !deleted }}}hidden{{{ end }}}><a component="topic/restore" href="#" class="dropdown-item rounded-1 d-flex align-items-center gap-2 {{{ if !deleted }}}hidden{{{ end }}}"><i class="fa fa-fw text-muted fa-history"></i> [[topic:thread_tools.restore]]</a></li>
|
|
21
|
+
{{{ end }}}
|
|
22
|
+
{{{ if privileges.purge }}}
|
|
23
|
+
<li {{{ if !deleted }}}hidden{{{ end }}}><a component="topic/purge" href="#" class="dropdown-item rounded-1 d-flex align-items-center gap-2 {{{ if !deleted }}}hidden{{{ end }}}"><i class="fa fa-fw text-muted fa-eraser"></i> [[topic:thread_tools.purge]]</a></li>
|
|
24
|
+
{{{ end }}}
|
|
25
|
+
{{{ if privileges.isAdminOrMod }}}
|
|
26
|
+
<li><a component="topic/delete/posts" class="dropdown-item rounded-1 d-flex align-items-center gap-2" href="#"><i class="fa fa-fw text-muted fa-trash-o"></i> [[topic:thread_tools.delete-posts]]</a></li>
|
|
23
27
|
{{{ end }}}
|
|
24
|
-
<!-- IF privileges.purge -->
|
|
25
|
-
<li <!-- IF !deleted -->hidden<!-- ENDIF !deleted -->><a component="topic/purge" href="#" class="dropdown-item <!-- IF !deleted -->hidden<!-- ENDIF !deleted -->"><i class="fa fa-fw fa-eraser"></i> [[topic:thread_tools.purge]]</a></li>
|
|
26
|
-
<!-- END -->
|
|
27
|
-
<!-- IF privileges.isAdminOrMod -->
|
|
28
|
-
<li><a component="topic/delete/posts" class="dropdown-item" href="#"><i class="fa fa-fw fa-trash-o"></i> [[topic:thread_tools.delete-posts]]</a></li>
|
|
29
|
-
<!-- ENDIF privileges.isAdminOrMod -->
|
|
30
28
|
|
|
31
|
-
{{{each thread_tools}}}
|
|
32
|
-
<li><a href="#" class="dropdown-item {
|
|
33
|
-
{{{end}}}
|
|
34
|
-
|
|
29
|
+
{{{ each thread_tools }}}
|
|
30
|
+
<li><a href="#" class="dropdown-item rounded-1 d-flex align-items-center gap-2 {./class}"><i class="fa fa-fw text-muted {./icon}"></i> {./title}</a></li>
|
|
31
|
+
{{{ end }}}
|
|
32
|
+
{{{ end }}}
|