nodebb-theme-harmony 1.0.0-beta.8 → 1.0.0-beta.81
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 +5 -1
- package/library.js +20 -25
- package/package.json +1 -1
- package/plugin.json +0 -1
- package/public/harmony.js +148 -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 +66 -8
- 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 +6 -1
- 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 +14 -42
- package/scss/modules/topics-list.scss +6 -0
- package/scss/overrides.scss +4 -1
- package/scss/sidebar.scss +21 -11
- package/scss/topic.scss +26 -13
- package/templates/account/blocks.tpl +35 -40
- package/templates/account/categories.tpl +26 -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 +35 -26
- package/templates/account/topics.tpl +33 -38
- package/templates/account/uploads.tpl +33 -40
- package/templates/admin/plugins/harmony.tpl +17 -3
- package/templates/categories.tpl +1 -1
- package/templates/category.tpl +12 -13
- package/templates/chats.tpl +7 -8
- package/templates/flags/detail.tpl +160 -193
- package/templates/flags/list.tpl +4 -70
- package/templates/footer.tpl +2 -2
- package/templates/groups/details.tpl +21 -18
- package/templates/groups/list.tpl +1 -1
- package/templates/groups/members.tpl +0 -2
- package/templates/header.tpl +1 -1
- package/templates/login.tpl +2 -2
- package/templates/notifications.tpl +1 -1
- package/templates/partials/account/category-item.tpl +4 -4
- 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 +6 -0
- package/templates/partials/breadcrumbs.tpl +6 -6
- package/templates/partials/categories/item.tpl +20 -19
- package/templates/partials/categories/lastpost.tpl +2 -2
- package/templates/partials/{category-filter-content.tpl → category/filter-dropdown-content.tpl} +8 -6
- package/templates/partials/{category-selector-content.tpl → category/selector-dropdown-content.tpl} +3 -3
- package/templates/partials/category/subcategory.tpl +1 -1
- package/templates/partials/category/tags.tpl +0 -2
- package/templates/partials/category/watch.tpl +28 -4
- package/templates/partials/chats/message-window.tpl +8 -7
- package/templates/partials/chats/message.tpl +4 -6
- package/templates/partials/chats/recent_room.tpl +41 -32
- package/templates/partials/cookie-consent.tpl +5 -5
- package/templates/partials/flags/filters.tpl +141 -80
- 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/memberlist.tpl +1 -1
- package/templates/partials/groups/sidebar-left.tpl +1 -1
- package/templates/partials/header/brand.tpl +1 -1
- package/templates/partials/mobile-footer.tpl +69 -64
- package/templates/partials/notifications_list.tpl +2 -2
- package/templates/partials/paginator.tpl +11 -9
- package/templates/partials/post_bar.tpl +26 -24
- 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 -32
- package/templates/partials/sidebar/chats.tpl +22 -33
- package/templates/partials/sidebar/drafts.tpl +42 -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 +29 -8
- package/templates/partials/sidebar/search.tpl +1 -1
- package/templates/partials/sidebar/user-menu.tpl +6 -6
- package/templates/partials/sidebar-left.tpl +13 -10
- package/templates/partials/sidebar-right.tpl +1 -3
- package/templates/partials/skin-switcher.tpl +2 -2
- package/templates/partials/tags/filter-dropdown-content.tpl +31 -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/navigation-post.tpl +5 -9
- package/templates/partials/topic/navigator-mobile.tpl +62 -0
- package/templates/partials/topic/navigator.tpl +21 -17
- package/templates/partials/topic/post-editor.tpl +0 -2
- package/templates/partials/topic/post-menu-list.tpl +36 -38
- package/templates/partials/topic/post-menu.tpl +15 -10
- package/templates/partials/topic/post.tpl +39 -21
- package/templates/partials/topic/quickreply.tpl +5 -5
- package/templates/partials/topic/reply-button.tpl +1 -1
- package/templates/partials/topic/topic-menu-list.tpl +16 -18
- package/templates/partials/topic/watch.tpl +28 -4
- package/templates/partials/topic-list-bar.tpl +50 -46
- package/templates/partials/topics_list.tpl +40 -38
- package/templates/partials/userFilter-placeholders.tpl +5 -0
- package/templates/partials/users/filter-dropdown-content.tpl +20 -0
- package/templates/partials/users/item.tpl +24 -26
- package/templates/partials/users_list.tpl +1 -1
- package/templates/popular.tpl +3 -1
- package/templates/post-queue.tpl +144 -0
- package/templates/recent.tpl +3 -2
- package/templates/register.tpl +2 -2
- 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 +2 -2
- package/templates/modules/usercard.tpl +0 -39
- package/templates/partials/acceptTos.tpl +0 -11
- 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
package/scss/modules/cover.scss
CHANGED
|
@@ -12,12 +12,11 @@
|
|
|
12
12
|
|
|
13
13
|
&:hover {
|
|
14
14
|
.controls {
|
|
15
|
-
opacity:
|
|
15
|
+
opacity: 1;
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
.controls {
|
|
20
|
-
text-align: center;
|
|
21
20
|
height: 200px;
|
|
22
21
|
line-height: 200px;
|
|
23
22
|
opacity: 0;
|
|
@@ -28,15 +27,6 @@
|
|
|
28
27
|
> * {
|
|
29
28
|
pointer-events: all;
|
|
30
29
|
}
|
|
31
|
-
|
|
32
|
-
.fa {
|
|
33
|
-
color: white;
|
|
34
|
-
background-color: #333;
|
|
35
|
-
opacity: 1;
|
|
36
|
-
margin: 15px;
|
|
37
|
-
padding: 5px;
|
|
38
|
-
border-radius: 4px;
|
|
39
|
-
}
|
|
40
30
|
}
|
|
41
31
|
|
|
42
32
|
&.active {
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
.skin-noskin [component="pagination"] {
|
|
2
|
+
.page-item.active:not(.disabled) .page-link {
|
|
3
|
+
color: $body-color;
|
|
4
|
+
background-color: $gray-300;
|
|
5
|
+
border-color: $gray-300;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
.page-item:not(.disabled):hover .page-link {
|
|
9
|
+
color: $body-color;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
[component="pagination"] {
|
|
14
|
+
.page-item.active:not(.disabled) .page-link {
|
|
15
|
+
color: $pagination-active-color;
|
|
16
|
+
}
|
|
17
|
+
.page-item:not(.disabled):hover .page-link {
|
|
18
|
+
color: $pagination-hover-color;
|
|
19
|
+
background-color: $pagination-hover-bg;
|
|
20
|
+
}
|
|
21
|
+
.page-item:not(.disabled) .page-link {
|
|
22
|
+
color: $body-color;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
@@ -1,59 +1,31 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
background-color: mix($dark, $light, 10%);
|
|
12
|
-
|
|
13
|
-
.handle {
|
|
1
|
+
.topic .pagination-block {
|
|
2
|
+
min-width: 150px;
|
|
3
|
+
.scroller-container {
|
|
4
|
+
height: 300px;
|
|
5
|
+
border-left: 2px solid $border-color;
|
|
6
|
+
|
|
7
|
+
.scroller-thumb {
|
|
8
|
+
&:not(.active) {
|
|
9
|
+
transition: top 100ms linear;
|
|
10
|
+
}
|
|
14
11
|
cursor: grab;
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
&:active {
|
|
18
|
-
transition: none;
|
|
12
|
+
&.active {
|
|
19
13
|
cursor: grabbing;
|
|
20
14
|
}
|
|
21
|
-
|
|
22
|
-
.meta {
|
|
23
|
-
top: -8px;
|
|
24
|
-
left: calc($spacer + 8px);
|
|
25
|
-
font-size: 13px;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
.knob {
|
|
30
|
-
width: 16px;
|
|
31
|
-
height: 16px;
|
|
32
|
-
background-color: $link-color;
|
|
33
|
-
margin-left: 1px;
|
|
34
15
|
}
|
|
35
16
|
|
|
36
17
|
.unread {
|
|
37
|
-
width:
|
|
18
|
+
width: 1px;
|
|
38
19
|
height: 0; // initial
|
|
39
20
|
bottom: 0;
|
|
40
21
|
background: $primary;
|
|
41
22
|
transition: $transition-base;
|
|
23
|
+
left: -1px;
|
|
42
24
|
|
|
43
25
|
.meta {
|
|
44
|
-
left:
|
|
26
|
+
left: 5px;
|
|
45
27
|
font-size: 13px;
|
|
46
28
|
}
|
|
47
29
|
}
|
|
48
30
|
}
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
.sidebar.open {
|
|
52
|
-
[component="topic/navigator"] {
|
|
53
|
-
align-self: flex-start;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
[component="topic/navigator"].d-sm-flex.mt-auto + .mt-auto {
|
|
57
|
-
margin-top: 0 !important;
|
|
58
|
-
}
|
|
59
31
|
}
|
package/scss/overrides.scss
CHANGED
|
@@ -39,6 +39,8 @@ $text-muted: $gray-600 !default;
|
|
|
39
39
|
$border-color: $gray-200 !default;
|
|
40
40
|
$link-color: shade-color($blue, 20%) !default;
|
|
41
41
|
|
|
42
|
+
$btn-ghost-hover-color: mix($light, $dark, 90%);
|
|
43
|
+
|
|
42
44
|
// no caret on dropdown-toggle
|
|
43
45
|
$enable-caret: false;
|
|
44
46
|
|
|
@@ -53,8 +55,9 @@ $link-hover-decoration: underline;
|
|
|
53
55
|
|
|
54
56
|
// Custom fonts
|
|
55
57
|
$font-family-sans-serif: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
|
|
56
|
-
$font-family-secondary: "Poppins" !default;
|
|
58
|
+
$font-family-secondary: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !default;
|
|
57
59
|
$font-weight-semibold: 500 !default;
|
|
60
|
+
$small-font-size: 0.875rem !default;
|
|
58
61
|
|
|
59
62
|
$breadcrumb-divider: quote("→");
|
|
60
63
|
$breadcrumb-divider-color: $gray-500 !default;
|
package/scss/sidebar.scss
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
.skin-noskin {
|
|
2
2
|
// only using colors when there is no bootswatch skin applied
|
|
3
|
-
nav.sidebar, .bottombar {
|
|
3
|
+
nav.sidebar, .bottombar-nav {
|
|
4
4
|
color: $secondary !important;
|
|
5
5
|
background-color: $light !important;
|
|
6
6
|
}
|
|
7
|
-
.bottombar {
|
|
7
|
+
.bottombar-nav {
|
|
8
8
|
.dropdown-menu {
|
|
9
9
|
color: $secondary !important;
|
|
10
10
|
background-color: $light !important;
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
}
|
|
14
14
|
|
|
15
15
|
.sidebar {
|
|
16
|
-
$hover-color: mix($light, $dark, 90);
|
|
16
|
+
$hover-color: mix($light, $dark, 90%);
|
|
17
17
|
|
|
18
18
|
@include media-breakpoint-up(lg) {
|
|
19
19
|
&.open {
|
|
@@ -76,7 +76,7 @@
|
|
|
76
76
|
.chats-dropdown, .notifications-dropdown, .drafts-dropdown {
|
|
77
77
|
min-width: 300px;
|
|
78
78
|
width: 300px;
|
|
79
|
-
|
|
79
|
+
.list-container {
|
|
80
80
|
max-height: 400px;
|
|
81
81
|
overflow-y: auto;
|
|
82
82
|
}
|
|
@@ -87,7 +87,8 @@
|
|
|
87
87
|
line-height: 12px;
|
|
88
88
|
&.visible-open {
|
|
89
89
|
font-size:12px;
|
|
90
|
-
line-height:
|
|
90
|
+
line-height: 12px;
|
|
91
|
+
font-weight: normal;
|
|
91
92
|
}
|
|
92
93
|
}
|
|
93
94
|
|
|
@@ -97,7 +98,10 @@
|
|
|
97
98
|
}
|
|
98
99
|
|
|
99
100
|
.bottombar {
|
|
100
|
-
|
|
101
|
+
transition: bottom 150ms linear;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
.bottombar-nav {
|
|
101
105
|
.nav-text {
|
|
102
106
|
font-size: 1rem;
|
|
103
107
|
color: $body-color;
|
|
@@ -128,15 +132,21 @@
|
|
|
128
132
|
overflow: auto!important;
|
|
129
133
|
}
|
|
130
134
|
.search-dropdown .quick-search-results {
|
|
131
|
-
max-height:
|
|
135
|
+
max-height: 225px!important;
|
|
132
136
|
overflow-y: auto!important;
|
|
133
137
|
}
|
|
134
138
|
.search-dropdown, .chats-dropdown, .notifications-dropdown, .drafts-dropdown {
|
|
135
|
-
left: 0!important;
|
|
136
|
-
right: 0!important;
|
|
137
|
-
bottom: $spacer!important;
|
|
139
|
+
left: 0 !important;
|
|
140
|
+
right: 0 !important;
|
|
141
|
+
bottom: $spacer * 0.7 !important;
|
|
138
142
|
box-shadow: none!important;
|
|
139
|
-
|
|
143
|
+
|
|
144
|
+
border-left: 0;
|
|
145
|
+
border-right: 0;
|
|
146
|
+
border-bottom: 0;
|
|
147
|
+
border-radius: 0;
|
|
148
|
+
|
|
149
|
+
.list-container {
|
|
140
150
|
max-height: 60vh!important;
|
|
141
151
|
overflow-y: auto!important;
|
|
142
152
|
}
|
package/scss/topic.scss
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
.pagination-block { display: none; }
|
|
2
|
+
|
|
1
3
|
.page-topic {
|
|
2
4
|
[component="topic/title"] {
|
|
3
5
|
font-size: 28px;
|
|
@@ -14,21 +16,10 @@
|
|
|
14
16
|
line-height: 20px;
|
|
15
17
|
}
|
|
16
18
|
|
|
17
|
-
.action-bar {
|
|
18
|
-
.dropdown-toggle::after {
|
|
19
|
-
border: none;
|
|
20
|
-
font-family: "FontAwesome";
|
|
21
|
-
content: "\f078";
|
|
22
|
-
color: tint-color($primary, 40%);
|
|
23
|
-
|
|
24
|
-
position: relative;
|
|
25
|
-
top: 2px;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
|
|
29
19
|
.topic {
|
|
30
20
|
.posts {
|
|
31
21
|
max-width: 960px;
|
|
22
|
+
width: 960px;
|
|
32
23
|
// fixes code blocks pushing content out on mobile
|
|
33
24
|
@include media-breakpoint-down(md) {
|
|
34
25
|
max-width: calc(100vw - $grid-gutter-width);
|
|
@@ -49,11 +40,13 @@
|
|
|
49
40
|
}
|
|
50
41
|
|
|
51
42
|
[component="post"] {
|
|
52
|
-
&.deleted {
|
|
43
|
+
&.deleted .post-container {
|
|
53
44
|
opacity: .5;
|
|
54
45
|
}
|
|
55
46
|
|
|
56
47
|
[component="post/content"] {
|
|
48
|
+
@include fix-lists();
|
|
49
|
+
|
|
57
50
|
pre {
|
|
58
51
|
max-height: calc($font-size-base * 24);
|
|
59
52
|
}
|
|
@@ -67,6 +60,17 @@
|
|
|
67
60
|
[component="post/reply-count"] {
|
|
68
61
|
font-size: $font-size-base * .75;
|
|
69
62
|
}
|
|
63
|
+
|
|
64
|
+
[component="post/upvote"], [component="post/downvote"] {
|
|
65
|
+
&.upvoted, &.downvoted {
|
|
66
|
+
background-color: lighten($btn-ghost-hover-color, 5%);
|
|
67
|
+
|
|
68
|
+
&:hover {
|
|
69
|
+
background-color: $btn-ghost-hover-color;
|
|
70
|
+
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
70
74
|
}
|
|
71
75
|
}
|
|
72
76
|
|
|
@@ -106,6 +110,15 @@
|
|
|
106
110
|
}
|
|
107
111
|
}
|
|
108
112
|
}
|
|
113
|
+
|
|
114
|
+
.pagination-block {
|
|
115
|
+
display: block;
|
|
116
|
+
transition: opacity 250ms ease-in;
|
|
117
|
+
opacity: 0;
|
|
118
|
+
&.ready {
|
|
119
|
+
opacity: 1;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
109
122
|
}
|
|
110
123
|
|
|
111
124
|
@include media-breakpoint-up(sm) {
|
|
@@ -1,45 +1,40 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
<
|
|
4
|
-
|
|
5
|
-
<div class="
|
|
6
|
-
<div class="
|
|
7
|
-
<
|
|
8
|
-
<div class="justify-content-end">
|
|
9
|
-
<div class="dropdown">
|
|
10
|
-
<div class="input-group">
|
|
11
|
-
<input class="form-control form-control-sm" type="text" id="user-search" placeholder="[[users:enter_username]]" data-bs-toggle="dropdown" autocomplete="off"/>
|
|
12
|
-
<button class="btn btn-primary btn-sm" type="button">
|
|
13
|
-
<i class="fa fa-search"></i>
|
|
14
|
-
</button>
|
|
15
|
-
</div>
|
|
1
|
+
<!-- IMPORT partials/account/header.tpl -->
|
|
2
|
+
<div class="d-flex justify-content-between mb-3">
|
|
3
|
+
<h3 class="fw-semibold fs-5">[[pages:account/blocks, {username}]]</h3>
|
|
4
|
+
<div class="justify-content-end">
|
|
5
|
+
<div class="dropdown">
|
|
6
|
+
<div class="input-group">
|
|
7
|
+
<input class="form-control form-control-sm" type="text" id="user-search" placeholder="[[users:enter_username]]" data-bs-toggle="dropdown" autocomplete="off"/>
|
|
16
8
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
{{{ end }}}
|
|
29
|
-
</ul>
|
|
30
|
-
</div>
|
|
31
|
-
</div>
|
|
32
|
-
</div>
|
|
33
|
-
<div class="users">
|
|
34
|
-
<div id="users-container" class="row row-cols-2 row-cols-lg-3 row-cols-xl-4 g-2">
|
|
35
|
-
{{{ each users }}}
|
|
36
|
-
<!-- IMPORT partials/users/item.tpl -->
|
|
9
|
+
<ul component="blocks/search/list" class="dropdown-menu dropdown-menu-end block-edit overflow-auto" style="max-height:300px;">
|
|
10
|
+
<li><a href="#" class="dropdown-item">[[admin/menu:search.start-typing]]</a></li>
|
|
11
|
+
{{{ each edit }}}
|
|
12
|
+
<li class="">
|
|
13
|
+
<div class="dropdown-item d-flex flex-nowrap gap-2 justify-content-between">
|
|
14
|
+
<div class="text-truncate">
|
|
15
|
+
<a href="{config.relative_path}/uid/{./uid}" class="text-decoration-none">{buildAvatar(edit, "24px", true)} {./username}</a>
|
|
16
|
+
</div>
|
|
17
|
+
<button class="btn btn-sm btn-primary text-nowrap" data-uid="{./uid}" data-action="toggle">[[user:block_toggle]]</button>
|
|
18
|
+
</div>
|
|
19
|
+
</li>
|
|
37
20
|
{{{ end }}}
|
|
38
|
-
</
|
|
39
|
-
|
|
40
|
-
|
|
21
|
+
</ul>
|
|
22
|
+
|
|
23
|
+
<button class="btn btn-primary btn-sm" type="button">
|
|
24
|
+
<i class="fa fa-search"></i>
|
|
25
|
+
</button>
|
|
41
26
|
</div>
|
|
42
27
|
</div>
|
|
43
|
-
|
|
44
28
|
</div>
|
|
45
|
-
</div>
|
|
29
|
+
</div>
|
|
30
|
+
<div class="users">
|
|
31
|
+
<div id="users-container" class="row row-cols-2 row-cols-lg-3 row-cols-xl-4 g-2">
|
|
32
|
+
{{{ each users }}}
|
|
33
|
+
<!-- IMPORT partials/users/item.tpl -->
|
|
34
|
+
{{{ end }}}
|
|
35
|
+
</div>
|
|
36
|
+
<div class="alert alert-warning text-center"{{{ if users.length }}} style="display: none;"{{{ end }}}>[[user:has_no_blocks]]</div>
|
|
37
|
+
<!-- IMPORT partials/paginator.tpl -->
|
|
38
|
+
</div>
|
|
39
|
+
|
|
40
|
+
<!-- IMPORT partials/account/footer.tpl -->
|
|
@@ -1,34 +1,31 @@
|
|
|
1
|
-
|
|
2
|
-
<!-- IMPORT partials/account/header.tpl -->
|
|
1
|
+
<!-- IMPORT partials/account/header.tpl -->
|
|
3
2
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
<
|
|
7
|
-
|
|
3
|
+
<div class="d-flex justify-content-between align-items-center mb-3">
|
|
4
|
+
<div class="d-flex gap-1">
|
|
5
|
+
<h3 class="fw-semibold fs-5 mb-0">{title}</h3>
|
|
6
|
+
</div>
|
|
8
7
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
<li><a class="dropdown-item" href="#" component="category/ignoring" data-state="ignoring"><i class="fa fa-fw fa-eye-slash"></i> [[category:ignoring]]<p class="help-text"><small>[[category:ignoring.description]]</small></p></a></li>
|
|
20
|
-
</ul>
|
|
21
|
-
</div>
|
|
22
|
-
</div>
|
|
23
|
-
<div class="col-lg-12">
|
|
24
|
-
<ul class="categories list-unstyled" itemscope itemtype="http://www.schema.org/ItemList">
|
|
25
|
-
{{{each categories}}}
|
|
26
|
-
<!-- IMPORT partials/account/category-item.tpl -->
|
|
27
|
-
{{{end}}}
|
|
28
|
-
</ul>
|
|
29
|
-
<!-- IMPORT partials/paginator.tpl -->
|
|
30
|
-
</div>
|
|
31
|
-
</div>
|
|
8
|
+
<div class="d-flex gap-1">
|
|
9
|
+
<div class="btn-group bottom-sheet" component="category/watch/all">
|
|
10
|
+
<button class="btn-ghost-sm fw-semibold dropdown-toggle" data-bs-toggle="dropdown" type="button">
|
|
11
|
+
<span>[[user:change_all]]</span>
|
|
12
|
+
</button>
|
|
13
|
+
<ul class="dropdown-menu dropdown-menu-end">
|
|
14
|
+
<li><a class="dropdown-item" href="#" component="category/watching" data-state="watching"><i class="fa fa-fw fa-inbox"></i> [[category:watching]]<p class="help-text"><small>[[category:watching.description]]</small></p></a></li>
|
|
15
|
+
<li><a class="dropdown-item" href="#" component="category/notwatching" data-state="notwatching"><i class="fa fa-fw fa-clock-o"></i> [[category:not-watching]]<p class="help-text"><small>[[category:not-watching.description]]</small></p></a></li>
|
|
16
|
+
<li><a class="dropdown-item" href="#" component="category/ignoring" data-state="ignoring"><i class="fa fa-fw fa-eye-slash"></i> [[category:ignoring]]<p class="help-text"><small>[[category:ignoring.description]]</small></p></a></li>
|
|
17
|
+
</ul>
|
|
32
18
|
</div>
|
|
33
19
|
</div>
|
|
34
20
|
</div>
|
|
21
|
+
|
|
22
|
+
<div>
|
|
23
|
+
<ul class="categories list-unstyled" itemscope itemtype="http://www.schema.org/ItemList">
|
|
24
|
+
{{{each categories}}}
|
|
25
|
+
<!-- IMPORT partials/account/category-item.tpl -->
|
|
26
|
+
{{{end}}}
|
|
27
|
+
</ul>
|
|
28
|
+
<!-- IMPORT partials/paginator.tpl -->
|
|
29
|
+
</div>
|
|
30
|
+
|
|
31
|
+
<!-- IMPORT partials/account/footer.tpl -->
|
|
@@ -1,17 +1,73 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
<!-- IMPORT partials/account/header.tpl -->
|
|
2
|
+
<h3 class="fw-semibold fs-5">[[user:consent.title]]</h3>
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
<div class="flex-1 ps-md-2 ps-lg-5" style="min-width: 0;">
|
|
7
|
-
<h3 class="fw-semibold fs-5">[[user:consent.title]]</h3>
|
|
4
|
+
<p class="lead">[[user:consent.lead]]</p>
|
|
5
|
+
<p>[[user:consent.intro]]</p>
|
|
8
6
|
|
|
9
|
-
|
|
10
|
-
<p>[[user:consent.intro]]</p>
|
|
7
|
+
<hr />
|
|
11
8
|
|
|
12
|
-
|
|
9
|
+
<div class="row">
|
|
10
|
+
<div class="col-sm-6">
|
|
11
|
+
{{{ if gdpr_consent }}}
|
|
12
|
+
<div class="alert alert-success">
|
|
13
|
+
<i class="fa fa-check float-end fa-3x"></i>
|
|
14
|
+
[[user:consent.received]]
|
|
15
|
+
</div>
|
|
16
|
+
{{{ else }}}
|
|
17
|
+
<div class="alert alert-warning">
|
|
18
|
+
[[user:consent.not_received]]
|
|
19
|
+
<br /><br />
|
|
20
|
+
<div class="text-center">
|
|
21
|
+
<button class="btn btn-warning" data-action="consent">[[user:consent.give]]</button>
|
|
22
|
+
</div>
|
|
23
|
+
</div>
|
|
24
|
+
{{{ end }}}
|
|
25
|
+
<div class="card">
|
|
26
|
+
<div class="card-body">
|
|
27
|
+
<p>[[user:consent.email_intro]]</p>
|
|
28
|
+
{{{ if digest.enabled }}}
|
|
29
|
+
<p>[[user:consent.digest_frequency, {digest.frequency}]]</p>
|
|
30
|
+
{{{ else }}}
|
|
31
|
+
<p>[[user:consent.digest_off]]</p>
|
|
32
|
+
{{{ end }}}
|
|
13
33
|
|
|
14
|
-
|
|
34
|
+
<div class="d-grid">
|
|
35
|
+
<a class="btn btn-outline-secondary" href="./settings">
|
|
36
|
+
<i class="fa fa-cog"></i>
|
|
37
|
+
[[pages:account/settings]]
|
|
38
|
+
</a>
|
|
39
|
+
</div>
|
|
40
|
+
</div>
|
|
41
|
+
</div>
|
|
42
|
+
</div>
|
|
43
|
+
<div class="col-sm-6">
|
|
44
|
+
<div class="card">
|
|
45
|
+
<div class="card-body">
|
|
46
|
+
<p><strong>[[user:consent.right_of_access]]</strong></p>
|
|
47
|
+
<p>[[user:consent.right_of_access_description]]</p>
|
|
48
|
+
<p><strong>[[user:consent.right_to_rectification]]</strong></p>
|
|
49
|
+
<p>[[user:consent.right_to_rectification_description]]</p>
|
|
50
|
+
<p><strong>[[user:consent.right_to_erasure]]</strong></p>
|
|
51
|
+
<p>[[user:consent.right_to_erasure_description]]</p>
|
|
52
|
+
<p><strong>[[user:consent.right_to_data_portability]]</strong></p>
|
|
53
|
+
<p>[[user:consent.right_to_data_portability_description]]</p>
|
|
54
|
+
|
|
55
|
+
<hr />
|
|
56
|
+
|
|
57
|
+
<div class="btn-group-vertical d-grid">
|
|
58
|
+
<a data-action="export-profile" class="btn btn-outline-secondary">
|
|
59
|
+
<i class="fa fa-download"></i> [[user:consent.export_profile]]
|
|
60
|
+
</a>
|
|
61
|
+
<a data-action="export-posts" class="btn btn-outline-secondary">
|
|
62
|
+
<i class="fa fa-download"></i> [[user:consent.export_posts]]
|
|
63
|
+
</a>
|
|
64
|
+
<a data-action="export-uploads" class="btn btn-outline-secondary">
|
|
65
|
+
<i class="fa fa-download"></i> [[user:consent.export_uploads]]
|
|
66
|
+
</a>
|
|
67
|
+
</div>
|
|
68
|
+
</div>
|
|
15
69
|
</div>
|
|
16
70
|
</div>
|
|
17
71
|
</div>
|
|
72
|
+
|
|
73
|
+
<!-- IMPORT partials/account/footer.tpl -->
|
|
@@ -1,37 +1,32 @@
|
|
|
1
|
-
|
|
2
|
-
<!-- IMPORT partials/account/header.tpl -->
|
|
1
|
+
<!-- IMPORT partials/account/header.tpl -->
|
|
3
2
|
|
|
4
|
-
|
|
5
|
-
<!-- IMPORT partials/account/sidebar-left.tpl -->
|
|
6
|
-
<div class="flex-1 ps-md-2 ps-lg-5" style="min-width: 0;">
|
|
7
|
-
<h3 class="fw-semibold fs-5">{{{ if isSelf }}}[[user:change_password]]{{{ else }}}[[pages:{template.name}, {username}]]{{{ end }}}</h3>
|
|
3
|
+
<h3 class="fw-semibold fs-5">{{{ if isSelf }}}[[user:change_password]]{{{ else }}}[[pages:{template.name}, {username}]]{{{ end }}}</h3>
|
|
8
4
|
|
|
9
|
-
|
|
10
|
-
|
|
5
|
+
<form class="edit-form">
|
|
6
|
+
<!-- disables autocomplete on FF --><input type="password" style="display:none">
|
|
11
7
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
8
|
+
{{{ if isSelf }}}
|
|
9
|
+
<div class="mb-2">
|
|
10
|
+
<label class="form-label fw-semibold text-xm" for="inputCurrentPassword">[[user:current_password]]</label>
|
|
11
|
+
<input autocomplete="off" class="form-control" type="password" id="inputCurrentPassword" placeholder="[[user:current_password]]" value="" {{{ if !hasPassword }}} disabled{{{ end }}}>
|
|
12
|
+
</div>
|
|
13
|
+
{{{ end }}}
|
|
18
14
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
15
|
+
<div class="mb-2">
|
|
16
|
+
<label class="form-label fw-semibold text-xm" for="inputNewPassword">[[user:new_password]]</label>
|
|
17
|
+
<input class="form-control" type="password" id="inputNewPassword" placeholder="[[user:password]]" value="">
|
|
18
|
+
<span class="form-feedback" id="password-notify"></span>
|
|
19
|
+
</div>
|
|
24
20
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
21
|
+
<div class="mb-2">
|
|
22
|
+
<label class="form-label fw-semibold text-xm" for="inputNewPasswordAgain">[[user:confirm_password]]</label>
|
|
23
|
+
<input class="form-control" type="password" id="inputNewPasswordAgain" placeholder="[[user:confirm_password]]" value="">
|
|
24
|
+
<span class="form-feedback" id="password-confirm-notify"></span>
|
|
25
|
+
</div>
|
|
30
26
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
</div>
|
|
34
|
-
</form>
|
|
35
|
-
</div>
|
|
27
|
+
<div class="form-actions">
|
|
28
|
+
<button id="changePasswordBtn" class="btn btn-primary btn-block"><i class="hide fa fa-spinner fa-spin"></i> [[user:change_password]]</button>
|
|
36
29
|
</div>
|
|
37
|
-
</
|
|
30
|
+
</form>
|
|
31
|
+
|
|
32
|
+
<!-- IMPORT partials/account/footer.tpl -->
|