nodebb-theme-persona 13.3.29 → 13.3.31
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/.eslintrc +2 -2
- package/README.md +20 -20
- package/lib/controllers.js +24 -24
- package/library.js +97 -97
- package/package.json +52 -52
- package/plugin.json +20 -20
- package/public/.eslintrc +2 -2
- package/public/admin.js +15 -15
- package/public/modules/autohidingnavbar.js +220 -220
- package/public/modules/mobile-menu.js +190 -190
- package/public/modules/taskbar.js +65 -65
- package/public/persona.js +257 -257
- package/public/settings.js +53 -53
- package/scss/account.scss +336 -336
- package/scss/categories.scss +205 -205
- package/scss/category.scss +161 -161
- package/scss/chats.scss +14 -14
- package/scss/flags.scss +42 -42
- package/scss/footer.scss +16 -16
- package/scss/groups.scss +166 -166
- package/scss/header.scss +361 -361
- package/scss/keyframes.scss +152 -152
- package/scss/mixins.scss +129 -129
- package/scss/mobile.scss +331 -331
- package/scss/modules/composer.scss +20 -20
- package/scss/modules/cookie-consent.scss +12 -12
- package/scss/modules/fab.scss +32 -32
- package/scss/modules/morph.scss +268 -268
- package/scss/modules/necro-post.scss +8 -8
- package/scss/modules/nprogress.scss +80 -80
- package/scss/modules/taskbar.scss +160 -160
- package/scss/modules/user-menu.scss +7 -7
- package/scss/modules/usercard.scss +64 -64
- package/scss/noscript.scss +80 -80
- package/scss/overrides.scss +39 -39
- package/scss/persona.scss +34 -35
- package/scss/posts_list.scss +127 -127
- package/scss/search.scss +48 -48
- package/scss/style.scss +270 -270
- package/scss/tags.scss +10 -10
- package/scss/topic.scss +571 -571
- package/scss/topics_list.scss +16 -16
- package/scss/variables.scss +6 -6
- package/templates/account/blocks.tpl +46 -46
- package/templates/account/categories.tpl +28 -28
- package/templates/account/consent.tpl +68 -68
- package/templates/account/edit/password.tpl +29 -29
- package/templates/account/edit/username.tpl +25 -25
- package/templates/account/edit.tpl +136 -136
- package/templates/account/followers.tpl +17 -17
- package/templates/account/following.tpl +17 -17
- package/templates/account/groups.tpl +16 -16
- package/templates/account/info.tpl +291 -291
- package/templates/account/posts.tpl +18 -18
- package/templates/account/profile.tpl +166 -166
- package/templates/account/sessions.tpl +31 -31
- package/templates/account/settings.tpl +251 -251
- package/templates/account/tags.tpl +9 -9
- package/templates/account/theme.tpl +25 -25
- package/templates/account/topics.tpl +29 -29
- package/templates/account/uploads.tpl +42 -42
- package/templates/admin/plugins/persona.tpl +24 -24
- package/templates/categories.tpl +31 -31
- package/templates/category.tpl +63 -63
- package/templates/flags/detail.tpl +208 -208
- package/templates/flags/list.tpl +71 -71
- package/templates/footer.tpl +11 -11
- package/templates/groups/details.tpl +77 -77
- package/templates/groups/list.tpl +48 -48
- package/templates/groups/members.tpl +5 -5
- package/templates/header.tpl +47 -47
- package/templates/modules/taskbar.tpl +2 -2
- package/templates/modules/usercard.tpl +36 -36
- package/templates/notifications.tpl +66 -66
- package/templates/partials/account/category-item.tpl +23 -23
- package/templates/partials/account/header.tpl +47 -47
- package/templates/partials/account/menu.tpl +108 -108
- package/templates/partials/breadcrumbs.tpl +18 -18
- package/templates/partials/buttons/newTopic.tpl +22 -22
- package/templates/partials/categories/item.tpl +60 -60
- package/templates/partials/categories/lastpost.tpl +26 -26
- package/templates/partials/category/filter-dropdown-content.tpl +31 -31
- package/templates/partials/category/selector-dropdown-content.tpl +32 -32
- package/templates/partials/category/sort.tpl +14 -14
- package/templates/partials/category/subcategory.tpl +17 -17
- package/templates/partials/category/tags.tpl +3 -3
- package/templates/partials/category/tools.tpl +86 -86
- package/templates/partials/category/watch.tpl +55 -55
- package/templates/partials/chats-menu.tpl +40 -40
- package/templates/partials/cookie-consent.tpl +4 -4
- package/templates/partials/flags/filters.tpl +173 -173
- package/templates/partials/groups/admin.tpl +200 -200
- package/templates/partials/groups/filter-dropdown-content.tpl +24 -24
- package/templates/partials/groups/list.tpl +20 -20
- package/templates/partials/groups/memberlist.tpl +42 -42
- package/templates/partials/header/chats.tpl +18 -18
- package/templates/partials/header/notifications.tpl +18 -18
- package/templates/partials/header/search.tpl +24 -24
- package/templates/partials/header/user-menu.tpl +96 -96
- package/templates/partials/menu.tpl +128 -128
- package/templates/partials/notifications_list.tpl +30 -30
- package/templates/partials/paginator.tpl +44 -44
- package/templates/partials/post_bar.tpl +20 -20
- package/templates/partials/posts_list.tpl +7 -7
- package/templates/partials/posts_list_item.tpl +31 -31
- package/templates/partials/quick-search-results.tpl +33 -33
- package/templates/partials/search-filters.tpl +183 -183
- package/templates/partials/search-results.tpl +54 -54
- package/templates/partials/slideout-menu.tpl +4 -4
- package/templates/partials/tags/filter-dropdown-content.tpl +33 -33
- package/templates/partials/tags/watch.tpl +35 -35
- package/templates/partials/tags_list.tpl +4 -4
- package/templates/partials/toast.tpl +19 -19
- package/templates/partials/topic/event.tpl +12 -12
- package/templates/partials/topic/navigation-post.tpl +11 -11
- package/templates/partials/topic/navigator.tpl +39 -39
- package/templates/partials/topic/necro-post.tpl +2 -2
- package/templates/partials/topic/post-menu-list.tpl +132 -132
- package/templates/partials/topic/post-menu.tpl +4 -4
- package/templates/partials/topic/post.tpl +128 -128
- package/templates/partials/topic/quickreply.tpl +28 -28
- package/templates/partials/topic/reply-button.tpl +26 -26
- package/templates/partials/topic/selection-tooltip.tpl +2 -2
- package/templates/partials/topic/sort.tpl +9 -9
- package/templates/partials/topic/stats.tpl +11 -11
- package/templates/partials/topic/tags.tpl +2 -2
- package/templates/partials/topic/tools.tpl +7 -7
- package/templates/partials/topic/topic-menu-list.tpl +74 -74
- package/templates/partials/topic/watch.tpl +47 -47
- package/templates/partials/topic-filters.tpl +11 -11
- package/templates/partials/topic-terms.tpl +11 -11
- package/templates/partials/topics_list.tpl +117 -117
- package/templates/partials/users/filter-dropdown-content.tpl +20 -20
- package/templates/partials/users/item.tpl +43 -43
- package/templates/partials/users_list.tpl +14 -14
- package/templates/partials/users_list_menu.tpl +20 -20
- package/templates/popular.tpl +35 -35
- package/templates/recent.tpl +37 -37
- package/templates/search.tpl +47 -47
- package/templates/tag.tpl +34 -34
- package/templates/tags.tpl +32 -32
- package/templates/top.tpl +35 -35
- package/templates/topic.tpl +129 -129
- package/templates/unread.tpl +37 -37
- package/templates/users.tpl +34 -34
- package/scss/register.scss +0 -71
package/scss/topics_list.scss
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
#new-topics-alert {
|
|
2
|
-
margin-bottom: 0px;
|
|
3
|
-
padding: 10px 16px;
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
.topic-list-header {
|
|
7
|
-
top: calc(var(--panel-offset));
|
|
8
|
-
background-color: $body-bg;
|
|
9
|
-
z-index: $zindex-dropdown; // allows for top nav dropdowns to appear on top
|
|
10
|
-
border-top: 1px solid $post-border-color;
|
|
11
|
-
border-bottom: 1px solid $post-border-color;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
.topic-list .title small {
|
|
15
|
-
font-size: 12px;
|
|
16
|
-
font-weight: normal;
|
|
1
|
+
#new-topics-alert {
|
|
2
|
+
margin-bottom: 0px;
|
|
3
|
+
padding: 10px 16px;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.topic-list-header {
|
|
7
|
+
top: calc(var(--panel-offset));
|
|
8
|
+
background-color: $body-bg;
|
|
9
|
+
z-index: $zindex-dropdown; // allows for top nav dropdowns to appear on top
|
|
10
|
+
border-top: 1px solid $post-border-color;
|
|
11
|
+
border-bottom: 1px solid $post-border-color;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.topic-list .title small {
|
|
15
|
+
font-size: 12px;
|
|
16
|
+
font-weight: normal;
|
|
17
17
|
}
|
package/scss/variables.scss
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
//== Topic List
|
|
2
|
-
//
|
|
3
|
-
//## Post objects found on the category, recent, popular, etc. pages
|
|
4
|
-
|
|
5
|
-
$post-padding: 20px;
|
|
6
|
-
$post-border-color: $gray-200;
|
|
1
|
+
//== Topic List
|
|
2
|
+
//
|
|
3
|
+
//## Post objects found on the category, recent, popular, etc. pages
|
|
4
|
+
|
|
5
|
+
$post-padding: 20px;
|
|
6
|
+
$post-border-color: $gray-200;
|
|
7
7
|
$post-highlight: $info;
|
|
@@ -1,46 +1,46 @@
|
|
|
1
|
-
<!-- IMPORT partials/account/header.tpl -->
|
|
2
|
-
<h1 class="fs-2">[[pages:account/blocks, {username}]]</h1>
|
|
3
|
-
<div class="row justify-content-end mb-2">
|
|
4
|
-
<div class="col-3">
|
|
5
|
-
<div class="dropdown">
|
|
6
|
-
<input class="form-control" type="text" id="user-search" placeholder="[[users:enter-username]]" data-bs-toggle="dropdown" autocomplete="off" aria-haspopup="true" aria-expanded="false"/>
|
|
7
|
-
|
|
8
|
-
<ul component="blocks/search/list" class="dropdown-menu block-edit list-unstyled" role="menu">
|
|
9
|
-
<li component="blocks/start-typing">
|
|
10
|
-
<a href="#" class="dropdown-item" role="menuitem">[[admin/menu:search.start-typing]]</a>
|
|
11
|
-
</li>
|
|
12
|
-
<li component="blocks/no-users" class="hidden">
|
|
13
|
-
<a href="#" class="dropdown-item role="menuitem">[[users:no-users-found]]</a>
|
|
14
|
-
</li>
|
|
15
|
-
{{{ each edit }}}
|
|
16
|
-
<li component="blocks/search/match">
|
|
17
|
-
<div class="dropdown-item d-flex flex-nowrap gap-2 justify-content-between" role="menuitem">
|
|
18
|
-
<div class="text-truncate">
|
|
19
|
-
<a href="{config.relative_path}/uid/{../uid}">{buildAvatar(edit, "24px", true)} {../username}</a>
|
|
20
|
-
</div>
|
|
21
|
-
|
|
22
|
-
<button class="btn btn-sm btn-outline-danger text-nowrap {{{ if ./isBlocked }}}hidden{{{ end }}}" data-uid="{./uid}" data-action="block">[[user:block-user]]</button>
|
|
23
|
-
<button class="btn btn-sm btn-outline-primary text-nowrap {{{ if !./isBlocked }}}hidden{{{ end }}}" data-uid="{./uid}" data-action="unblock">[[user:unblock-user]]</button>
|
|
24
|
-
</div>
|
|
25
|
-
</li>
|
|
26
|
-
{{{ end }}}
|
|
27
|
-
</ul>
|
|
28
|
-
</div>
|
|
29
|
-
</div>
|
|
30
|
-
</div>
|
|
31
|
-
|
|
32
|
-
<div class="users row">
|
|
33
|
-
<div id="users-container" class="users-container list-unstyled d-flex flex-wrap gap-2">
|
|
34
|
-
{{{ each users }}}
|
|
35
|
-
<div class="d-flex flex-column gap-1">
|
|
36
|
-
<!-- IMPORT partials/users/item.tpl -->
|
|
37
|
-
<button class="btn btn-sm btn-outline-primary text-nowrap mx-auto" data-uid="{./uid}" data-action="unblock">[[user:unblock-user]]</button>
|
|
38
|
-
</div>
|
|
39
|
-
{{{ end }}}
|
|
40
|
-
|
|
41
|
-
<div class="alert alert-warning text-center"<!-- IF users.length --> style="display: none;"<!-- END -->>[[user:has-no-blocks]]</div>
|
|
42
|
-
<!-- IMPORT partials/paginator.tpl -->
|
|
43
|
-
</div>
|
|
44
|
-
</div>
|
|
45
|
-
|
|
46
|
-
<!-- IMPORT partials/account/footer.tpl -->
|
|
1
|
+
<!-- IMPORT partials/account/header.tpl -->
|
|
2
|
+
<h1 class="fs-2">[[pages:account/blocks, {username}]]</h1>
|
|
3
|
+
<div class="row justify-content-end mb-2">
|
|
4
|
+
<div class="col-3">
|
|
5
|
+
<div class="dropdown">
|
|
6
|
+
<input class="form-control" type="text" id="user-search" placeholder="[[users:enter-username]]" data-bs-toggle="dropdown" autocomplete="off" aria-haspopup="true" aria-expanded="false"/>
|
|
7
|
+
|
|
8
|
+
<ul component="blocks/search/list" class="dropdown-menu block-edit list-unstyled" role="menu">
|
|
9
|
+
<li component="blocks/start-typing">
|
|
10
|
+
<a href="#" class="dropdown-item" role="menuitem">[[admin/menu:search.start-typing]]</a>
|
|
11
|
+
</li>
|
|
12
|
+
<li component="blocks/no-users" class="hidden">
|
|
13
|
+
<a href="#" class="dropdown-item role="menuitem">[[users:no-users-found]]</a>
|
|
14
|
+
</li>
|
|
15
|
+
{{{ each edit }}}
|
|
16
|
+
<li component="blocks/search/match">
|
|
17
|
+
<div class="dropdown-item d-flex flex-nowrap gap-2 justify-content-between" role="menuitem">
|
|
18
|
+
<div class="text-truncate">
|
|
19
|
+
<a href="{config.relative_path}/uid/{../uid}">{buildAvatar(edit, "24px", true)} {../username}</a>
|
|
20
|
+
</div>
|
|
21
|
+
|
|
22
|
+
<button class="btn btn-sm btn-outline-danger text-nowrap {{{ if ./isBlocked }}}hidden{{{ end }}}" data-uid="{./uid}" data-action="block">[[user:block-user]]</button>
|
|
23
|
+
<button class="btn btn-sm btn-outline-primary text-nowrap {{{ if !./isBlocked }}}hidden{{{ end }}}" data-uid="{./uid}" data-action="unblock">[[user:unblock-user]]</button>
|
|
24
|
+
</div>
|
|
25
|
+
</li>
|
|
26
|
+
{{{ end }}}
|
|
27
|
+
</ul>
|
|
28
|
+
</div>
|
|
29
|
+
</div>
|
|
30
|
+
</div>
|
|
31
|
+
|
|
32
|
+
<div class="users row">
|
|
33
|
+
<div id="users-container" class="users-container list-unstyled d-flex flex-wrap gap-2">
|
|
34
|
+
{{{ each users }}}
|
|
35
|
+
<div class="d-flex flex-column gap-1">
|
|
36
|
+
<!-- IMPORT partials/users/item.tpl -->
|
|
37
|
+
<button class="btn btn-sm btn-outline-primary text-nowrap mx-auto" data-uid="{./uid}" data-action="unblock">[[user:unblock-user]]</button>
|
|
38
|
+
</div>
|
|
39
|
+
{{{ end }}}
|
|
40
|
+
|
|
41
|
+
<div class="alert alert-warning text-center"<!-- IF users.length --> style="display: none;"<!-- END -->>[[user:has-no-blocks]]</div>
|
|
42
|
+
<!-- IMPORT partials/paginator.tpl -->
|
|
43
|
+
</div>
|
|
44
|
+
</div>
|
|
45
|
+
|
|
46
|
+
<!-- IMPORT partials/account/footer.tpl -->
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
<!-- IMPORT partials/account/header.tpl -->
|
|
2
|
-
|
|
3
|
-
<div class="row">
|
|
4
|
-
<h1 class="fs-2">{title}</h1>
|
|
5
|
-
<div class="col-lg-12 mb-2">
|
|
6
|
-
<div class="btn-group bottom-sheet" component="category/watch/all">
|
|
7
|
-
<button class="btn btn-outline-secondary dropdown-toggle" data-bs-toggle="dropdown" type="button" aria-haspopup="true" aria-expanded="false">
|
|
8
|
-
<span>[[user:change-all]]</span>
|
|
9
|
-
<span class="caret"></span>
|
|
10
|
-
</button>
|
|
11
|
-
<ul class="dropdown-menu" role="menu">
|
|
12
|
-
<li><a class="dropdown-item" href="#" component="category/watching" data-state="watching" role="menuitem"><i class="fa fa-fw fa-bell-o"></i> [[category:watching]]<p class="help-text"><small>[[category:watching.description]]</small></p></a></li>
|
|
13
|
-
<li><a class="dropdown-item" href="#" component="category/tracking" data-state="tracking" role="menuitem"><i class="fa fa-fw fa-inbox"></i> [[category:tracking]]<p class="help-text"><small>[[category:tracking.description]]</small></p></a></li>
|
|
14
|
-
<li><a class="dropdown-item" href="#" component="category/notwatching" data-state="notwatching" role="menuitem"><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>
|
|
15
|
-
<li><a class="dropdown-item" href="#" component="category/ignoring" data-state="ignoring" role="menuitem"><i class="fa fa-fw fa-eye-slash"></i> [[category:ignoring]]<p class="help-text"><small>[[category:ignoring.description]]</small></p></a></li>
|
|
16
|
-
</ul>
|
|
17
|
-
</div>
|
|
18
|
-
</div>
|
|
19
|
-
<div class="col-lg-12">
|
|
20
|
-
<ul class="categories list-unstyled" itemscope itemtype="http://www.schema.org/ItemList">
|
|
21
|
-
{{{each categories}}}
|
|
22
|
-
<!-- IMPORT partials/account/category-item.tpl -->
|
|
23
|
-
{{{end}}}
|
|
24
|
-
</ul>
|
|
25
|
-
<!-- IMPORT partials/paginator.tpl -->
|
|
26
|
-
</div>
|
|
27
|
-
</div>
|
|
28
|
-
|
|
1
|
+
<!-- IMPORT partials/account/header.tpl -->
|
|
2
|
+
|
|
3
|
+
<div class="row">
|
|
4
|
+
<h1 class="fs-2">{title}</h1>
|
|
5
|
+
<div class="col-lg-12 mb-2">
|
|
6
|
+
<div class="btn-group bottom-sheet" component="category/watch/all">
|
|
7
|
+
<button class="btn btn-outline-secondary dropdown-toggle" data-bs-toggle="dropdown" type="button" aria-haspopup="true" aria-expanded="false">
|
|
8
|
+
<span>[[user:change-all]]</span>
|
|
9
|
+
<span class="caret"></span>
|
|
10
|
+
</button>
|
|
11
|
+
<ul class="dropdown-menu" role="menu">
|
|
12
|
+
<li><a class="dropdown-item" href="#" component="category/watching" data-state="watching" role="menuitem"><i class="fa fa-fw fa-bell-o"></i> [[category:watching]]<p class="help-text"><small>[[category:watching.description]]</small></p></a></li>
|
|
13
|
+
<li><a class="dropdown-item" href="#" component="category/tracking" data-state="tracking" role="menuitem"><i class="fa fa-fw fa-inbox"></i> [[category:tracking]]<p class="help-text"><small>[[category:tracking.description]]</small></p></a></li>
|
|
14
|
+
<li><a class="dropdown-item" href="#" component="category/notwatching" data-state="notwatching" role="menuitem"><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>
|
|
15
|
+
<li><a class="dropdown-item" href="#" component="category/ignoring" data-state="ignoring" role="menuitem"><i class="fa fa-fw fa-eye-slash"></i> [[category:ignoring]]<p class="help-text"><small>[[category:ignoring.description]]</small></p></a></li>
|
|
16
|
+
</ul>
|
|
17
|
+
</div>
|
|
18
|
+
</div>
|
|
19
|
+
<div class="col-lg-12">
|
|
20
|
+
<ul class="categories list-unstyled" itemscope itemtype="http://www.schema.org/ItemList">
|
|
21
|
+
{{{each categories}}}
|
|
22
|
+
<!-- IMPORT partials/account/category-item.tpl -->
|
|
23
|
+
{{{end}}}
|
|
24
|
+
</ul>
|
|
25
|
+
<!-- IMPORT partials/paginator.tpl -->
|
|
26
|
+
</div>
|
|
27
|
+
</div>
|
|
28
|
+
|
|
29
29
|
<!-- IMPORT partials/account/footer.tpl -->
|
|
@@ -1,69 +1,69 @@
|
|
|
1
|
-
<!-- IMPORT partials/account/header.tpl -->
|
|
2
|
-
<h2>[[user:consent.title]]</h2>
|
|
3
|
-
<p class="lead">[[user:consent.lead]]</p>
|
|
4
|
-
<p>[[user:consent.intro]]</p>
|
|
5
|
-
|
|
6
|
-
<hr />
|
|
7
|
-
|
|
8
|
-
<div class="row">
|
|
9
|
-
<div class="col-sm-6">
|
|
10
|
-
<!-- IF gdpr_consent -->
|
|
11
|
-
<div class="alert alert-success d-flex gap-3">
|
|
12
|
-
[[user:consent.received]]
|
|
13
|
-
<i class="fa fa-check fa-3x"></i>
|
|
14
|
-
</div>
|
|
15
|
-
<!-- ELSE -->
|
|
16
|
-
<div class="alert alert-warning">
|
|
17
|
-
[[user:consent.not-received]]
|
|
18
|
-
<br /><br />
|
|
19
|
-
<div class="text-center">
|
|
20
|
-
<button class="btn btn-warning" data-action="consent">[[user:consent.give]]</button>
|
|
21
|
-
</div>
|
|
22
|
-
</div>
|
|
23
|
-
<!-- END -->
|
|
24
|
-
<div class="card">
|
|
25
|
-
<div class="card-body">
|
|
26
|
-
<p>[[user:consent.email-intro]]</p>
|
|
27
|
-
<!-- IF digest.enabled -->
|
|
28
|
-
<p>[[user:consent.digest-frequency, {digest.frequency}]]</p>
|
|
29
|
-
<!-- ELSE -->
|
|
30
|
-
[[user:consent.digest-off]]
|
|
31
|
-
<!-- END -->
|
|
32
|
-
|
|
33
|
-
<div class="text-center">
|
|
34
|
-
<a class="btn btn-outline-secondary" href="./settings">
|
|
35
|
-
<i class="fa fa-cog"></i>
|
|
36
|
-
[[pages:account/settings]]
|
|
37
|
-
</a>
|
|
38
|
-
</div>
|
|
39
|
-
</div>
|
|
40
|
-
</div>
|
|
41
|
-
</div>
|
|
42
|
-
<div class="col-sm-6">
|
|
43
|
-
<div class="card">
|
|
44
|
-
<div class="card-body">
|
|
45
|
-
<p><strong>[[user:consent.right-of-access]]</strong></p>
|
|
46
|
-
<p>[[user:consent.right-of-access-description]]</p>
|
|
47
|
-
<p><strong>[[user:consent.right-to-rectification]]</strong></p>
|
|
48
|
-
<p>[[user:consent.right-to-rectification-description]]</p>
|
|
49
|
-
<p><strong>[[user:consent.right-to-erasure]]</strong></p>
|
|
50
|
-
<p>[[user:consent.right-to-erasure-description]]</p>
|
|
51
|
-
<p><strong>[[user:consent.right-to-data-portability]]</strong></p>
|
|
52
|
-
<p>[[user:consent.right-to-data-portability-description]]</p>
|
|
53
|
-
|
|
54
|
-
<div class="btn-group-vertical d-grid">
|
|
55
|
-
<a data-action="export-profile" class="btn btn-outline-secondary">
|
|
56
|
-
<i class="fa fa-download"></i> [[user:consent.export-profile]]
|
|
57
|
-
</a>
|
|
58
|
-
<a data-action="export-posts" class="btn btn-outline-secondary">
|
|
59
|
-
<i class="fa fa-download"></i> [[user:consent.export-posts]]
|
|
60
|
-
</a>
|
|
61
|
-
<a data-action="export-uploads" class="btn btn-outline-secondary">
|
|
62
|
-
<i class="fa fa-download"></i> [[user:consent.export-uploads]]
|
|
63
|
-
</a>
|
|
64
|
-
</div>
|
|
65
|
-
</div>
|
|
66
|
-
</div>
|
|
67
|
-
</div>
|
|
68
|
-
|
|
1
|
+
<!-- IMPORT partials/account/header.tpl -->
|
|
2
|
+
<h2>[[user:consent.title]]</h2>
|
|
3
|
+
<p class="lead">[[user:consent.lead]]</p>
|
|
4
|
+
<p>[[user:consent.intro]]</p>
|
|
5
|
+
|
|
6
|
+
<hr />
|
|
7
|
+
|
|
8
|
+
<div class="row">
|
|
9
|
+
<div class="col-sm-6">
|
|
10
|
+
<!-- IF gdpr_consent -->
|
|
11
|
+
<div class="alert alert-success d-flex gap-3">
|
|
12
|
+
[[user:consent.received]]
|
|
13
|
+
<i class="fa fa-check fa-3x"></i>
|
|
14
|
+
</div>
|
|
15
|
+
<!-- ELSE -->
|
|
16
|
+
<div class="alert alert-warning">
|
|
17
|
+
[[user:consent.not-received]]
|
|
18
|
+
<br /><br />
|
|
19
|
+
<div class="text-center">
|
|
20
|
+
<button class="btn btn-warning" data-action="consent">[[user:consent.give]]</button>
|
|
21
|
+
</div>
|
|
22
|
+
</div>
|
|
23
|
+
<!-- END -->
|
|
24
|
+
<div class="card">
|
|
25
|
+
<div class="card-body">
|
|
26
|
+
<p>[[user:consent.email-intro]]</p>
|
|
27
|
+
<!-- IF digest.enabled -->
|
|
28
|
+
<p>[[user:consent.digest-frequency, {digest.frequency}]]</p>
|
|
29
|
+
<!-- ELSE -->
|
|
30
|
+
[[user:consent.digest-off]]
|
|
31
|
+
<!-- END -->
|
|
32
|
+
|
|
33
|
+
<div class="text-center">
|
|
34
|
+
<a class="btn btn-outline-secondary" href="./settings">
|
|
35
|
+
<i class="fa fa-cog"></i>
|
|
36
|
+
[[pages:account/settings]]
|
|
37
|
+
</a>
|
|
38
|
+
</div>
|
|
39
|
+
</div>
|
|
40
|
+
</div>
|
|
41
|
+
</div>
|
|
42
|
+
<div class="col-sm-6">
|
|
43
|
+
<div class="card">
|
|
44
|
+
<div class="card-body">
|
|
45
|
+
<p><strong>[[user:consent.right-of-access]]</strong></p>
|
|
46
|
+
<p>[[user:consent.right-of-access-description]]</p>
|
|
47
|
+
<p><strong>[[user:consent.right-to-rectification]]</strong></p>
|
|
48
|
+
<p>[[user:consent.right-to-rectification-description]]</p>
|
|
49
|
+
<p><strong>[[user:consent.right-to-erasure]]</strong></p>
|
|
50
|
+
<p>[[user:consent.right-to-erasure-description]]</p>
|
|
51
|
+
<p><strong>[[user:consent.right-to-data-portability]]</strong></p>
|
|
52
|
+
<p>[[user:consent.right-to-data-portability-description]]</p>
|
|
53
|
+
|
|
54
|
+
<div class="btn-group-vertical d-grid">
|
|
55
|
+
<a data-action="export-profile" class="btn btn-outline-secondary">
|
|
56
|
+
<i class="fa fa-download"></i> [[user:consent.export-profile]]
|
|
57
|
+
</a>
|
|
58
|
+
<a data-action="export-posts" class="btn btn-outline-secondary">
|
|
59
|
+
<i class="fa fa-download"></i> [[user:consent.export-posts]]
|
|
60
|
+
</a>
|
|
61
|
+
<a data-action="export-uploads" class="btn btn-outline-secondary">
|
|
62
|
+
<i class="fa fa-download"></i> [[user:consent.export-uploads]]
|
|
63
|
+
</a>
|
|
64
|
+
</div>
|
|
65
|
+
</div>
|
|
66
|
+
</div>
|
|
67
|
+
</div>
|
|
68
|
+
|
|
69
69
|
<!-- IMPORT partials/account/footer.tpl -->
|
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
<!-- IMPORT partials/account/header.tpl -->
|
|
2
|
-
|
|
3
|
-
<form class="edit-form">
|
|
4
|
-
<!-- disables autocomplete on FF --><input type="password" style="display:none">
|
|
5
|
-
|
|
6
|
-
<!-- IF isSelf -->
|
|
7
|
-
<div class="mb-2">
|
|
8
|
-
<label class="form-label fw-bold" for="inputCurrentPassword">[[user:current-password]]</label>
|
|
9
|
-
<input autocomplete="off" class="form-control" type="password" id="inputCurrentPassword" placeholder="[[user:current-password]]" value=""<!-- IF !hasPassword --> disabled<!-- ENDIF !hasPassword -->>
|
|
10
|
-
</div>
|
|
11
|
-
<!-- ENDIF isSelf -->
|
|
12
|
-
|
|
13
|
-
<div class="mb-2">
|
|
14
|
-
<label class="form-label fw-bold" for="inputNewPassword">[[user:new-password]]</label>
|
|
15
|
-
<input class="form-control" type="password" id="inputNewPassword" placeholder="[[user:password]]" value="">
|
|
16
|
-
<span class="form-feedback" id="password-notify"></span>
|
|
17
|
-
</div>
|
|
18
|
-
|
|
19
|
-
<div class="mb-2">
|
|
20
|
-
<label class="form-label fw-bold" for="inputNewPasswordAgain">[[user:confirm-password]]</label>
|
|
21
|
-
<input class="form-control" type="password" id="inputNewPasswordAgain" placeholder="[[user:confirm-password]]" value="">
|
|
22
|
-
<span class="form-feedback" id="password-confirm-notify"></span>
|
|
23
|
-
</div>
|
|
24
|
-
|
|
25
|
-
<div class="form-actions">
|
|
26
|
-
<button id="changePasswordBtn" class="btn btn-primary btn-block"><i class="hide fa fa-spinner fa-spin"></i> [[user:change-password]]</button>
|
|
27
|
-
</div>
|
|
28
|
-
</form>
|
|
29
|
-
|
|
1
|
+
<!-- IMPORT partials/account/header.tpl -->
|
|
2
|
+
|
|
3
|
+
<form class="edit-form">
|
|
4
|
+
<!-- disables autocomplete on FF --><input type="password" style="display:none">
|
|
5
|
+
|
|
6
|
+
<!-- IF isSelf -->
|
|
7
|
+
<div class="mb-2">
|
|
8
|
+
<label class="form-label fw-bold" for="inputCurrentPassword">[[user:current-password]]</label>
|
|
9
|
+
<input autocomplete="off" class="form-control" type="password" id="inputCurrentPassword" placeholder="[[user:current-password]]" value=""<!-- IF !hasPassword --> disabled<!-- ENDIF !hasPassword -->>
|
|
10
|
+
</div>
|
|
11
|
+
<!-- ENDIF isSelf -->
|
|
12
|
+
|
|
13
|
+
<div class="mb-2">
|
|
14
|
+
<label class="form-label fw-bold" for="inputNewPassword">[[user:new-password]]</label>
|
|
15
|
+
<input class="form-control" type="password" id="inputNewPassword" placeholder="[[user:password]]" value="">
|
|
16
|
+
<span class="form-feedback" id="password-notify"></span>
|
|
17
|
+
</div>
|
|
18
|
+
|
|
19
|
+
<div class="mb-2">
|
|
20
|
+
<label class="form-label fw-bold" for="inputNewPasswordAgain">[[user:confirm-password]]</label>
|
|
21
|
+
<input class="form-control" type="password" id="inputNewPasswordAgain" placeholder="[[user:confirm-password]]" value="">
|
|
22
|
+
<span class="form-feedback" id="password-confirm-notify"></span>
|
|
23
|
+
</div>
|
|
24
|
+
|
|
25
|
+
<div class="form-actions">
|
|
26
|
+
<button id="changePasswordBtn" class="btn btn-primary btn-block"><i class="hide fa fa-spinner fa-spin"></i> [[user:change-password]]</button>
|
|
27
|
+
</div>
|
|
28
|
+
</form>
|
|
29
|
+
|
|
30
30
|
<!-- IMPORT partials/account/footer.tpl -->
|
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
<!-- IMPORT partials/account/header.tpl -->
|
|
2
|
-
|
|
3
|
-
<form class="form-horizontal edit-form">
|
|
4
|
-
<div class="mb-2">
|
|
5
|
-
<label class="form-label fw-bold" for="inputNewUsername">[[user:username]]</label>
|
|
6
|
-
<input class="form-control" type="text" id="inputNewUsername" placeholder="[[user:username]]" value="{username}">
|
|
7
|
-
</div>
|
|
8
|
-
|
|
9
|
-
<!-- disables autocomplete on FF --><input type="password" style="display:none">
|
|
10
|
-
|
|
11
|
-
<!-- IF isSelf -->
|
|
12
|
-
<div class="mb-2">
|
|
13
|
-
<label class="form-label fw-bold" for="inputCurrentPassword">[[user:current-password]]</label>
|
|
14
|
-
<input autocomplete="off" class="form-control" type="password" id="inputCurrentPassword" placeholder="[[user:current-password]]" value=""<!-- IF !hasPassword --> disabled<!-- ENDIF !hasPassword -->>
|
|
15
|
-
</div>
|
|
16
|
-
<!-- ENDIF isSelf -->
|
|
17
|
-
|
|
18
|
-
<input type="hidden" name="uid" id="inputUID" value="{uid}" />
|
|
19
|
-
|
|
20
|
-
<br/>
|
|
21
|
-
<div class="form-actions">
|
|
22
|
-
<button id="submitBtn" class="btn btn-primary btn-block"><i class="hide fa fa-spinner fa-spin"></i> [[user:change-username]]</button>
|
|
23
|
-
</div>
|
|
24
|
-
</form>
|
|
25
|
-
|
|
1
|
+
<!-- IMPORT partials/account/header.tpl -->
|
|
2
|
+
|
|
3
|
+
<form class="form-horizontal edit-form">
|
|
4
|
+
<div class="mb-2">
|
|
5
|
+
<label class="form-label fw-bold" for="inputNewUsername">[[user:username]]</label>
|
|
6
|
+
<input class="form-control" type="text" id="inputNewUsername" placeholder="[[user:username]]" value="{username}">
|
|
7
|
+
</div>
|
|
8
|
+
|
|
9
|
+
<!-- disables autocomplete on FF --><input type="password" style="display:none">
|
|
10
|
+
|
|
11
|
+
<!-- IF isSelf -->
|
|
12
|
+
<div class="mb-2">
|
|
13
|
+
<label class="form-label fw-bold" for="inputCurrentPassword">[[user:current-password]]</label>
|
|
14
|
+
<input autocomplete="off" class="form-control" type="password" id="inputCurrentPassword" placeholder="[[user:current-password]]" value=""<!-- IF !hasPassword --> disabled<!-- ENDIF !hasPassword -->>
|
|
15
|
+
</div>
|
|
16
|
+
<!-- ENDIF isSelf -->
|
|
17
|
+
|
|
18
|
+
<input type="hidden" name="uid" id="inputUID" value="{uid}" />
|
|
19
|
+
|
|
20
|
+
<br/>
|
|
21
|
+
<div class="form-actions">
|
|
22
|
+
<button id="submitBtn" class="btn btn-primary btn-block"><i class="hide fa fa-spinner fa-spin"></i> [[user:change-username]]</button>
|
|
23
|
+
</div>
|
|
24
|
+
</form>
|
|
25
|
+
|
|
26
26
|
<!-- IMPORT partials/account/footer.tpl -->
|