nodebb-theme-harmony 0.0.4 → 0.0.6
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/package.json +1 -1
- package/public/harmony.js +6 -0
- package/scss/chats.scss +4 -22
- package/scss/common.scss +13 -1
- package/templates/chat.tpl +2 -2
- package/templates/chats.tpl +11 -2
- package/templates/modules/taskbar.tpl +1 -1
- package/templates/partials/categories/lastpost.tpl +1 -1
- package/templates/partials/chats/dropdown.tpl +3 -34
- package/templates/partials/chats/message-window.tpl +7 -11
- package/templates/partials/chats/message.tpl +1 -1
- package/templates/partials/chats/options.tpl +5 -7
- package/templates/partials/chats/recent_room.tpl +37 -20
- package/templates/partials/notifications_list.tpl +16 -7
- package/templates/partials/sidebar/chats.tpl +1 -1
- package/templates/partials/sidebar/drafts.tpl +1 -1
- package/templates/partials/sidebar/notifications.tpl +1 -1
- package/templates/partials/chats-menu.tpl +0 -43
package/package.json
CHANGED
package/public/harmony.js
CHANGED
|
@@ -26,6 +26,12 @@ $(document).ready(function () {
|
|
|
26
26
|
width: $('#panel').width(),
|
|
27
27
|
});
|
|
28
28
|
});
|
|
29
|
+
|
|
30
|
+
hooks.on('filter:chat.openChat', function (hookData) {
|
|
31
|
+
// disables chat modals & goes straight to chat page
|
|
32
|
+
hookData.modal = false;
|
|
33
|
+
return hookData;
|
|
34
|
+
});
|
|
29
35
|
});
|
|
30
36
|
|
|
31
37
|
function setupMobileMenu() {
|
package/scss/chats.scss
CHANGED
|
@@ -7,11 +7,6 @@ body.page-user-chats {
|
|
|
7
7
|
overflow: hidden;
|
|
8
8
|
}
|
|
9
9
|
|
|
10
|
-
/* Styles common to both full chat and chat modal */
|
|
11
|
-
.chats-full, .chat-modal {
|
|
12
|
-
height: calc(100vh - var(--panel-offset) - $spacer)!important;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
10
|
.expanded-chat, .chat-modal {
|
|
16
11
|
// no taskbar so hide minimize button
|
|
17
12
|
[data-action="minimize"] {
|
|
@@ -42,9 +37,11 @@ body.page-user-chats {
|
|
|
42
37
|
}
|
|
43
38
|
|
|
44
39
|
/* Mobile handling of chat page */
|
|
45
|
-
@include media-breakpoint-down(
|
|
40
|
+
@include media-breakpoint-down(md) {
|
|
46
41
|
.page-user-chats {
|
|
47
|
-
|
|
42
|
+
.chats-full {
|
|
43
|
+
padding-bottom: 8rem!important;
|
|
44
|
+
}
|
|
48
45
|
|
|
49
46
|
[component="chat/nav-wrapper"][data-loaded="1"] {
|
|
50
47
|
display: none!important;
|
|
@@ -53,20 +50,5 @@ body.page-user-chats {
|
|
|
53
50
|
[component="chat/nav-wrapper"][data-loaded="0"] + [component="chat/main-wrapper"] {
|
|
54
51
|
display: none!important;
|
|
55
52
|
}
|
|
56
|
-
|
|
57
|
-
[component="chat/messages"] {
|
|
58
|
-
width: calc(100vw - $grid-gutter-width);
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
[data-action="pop-out"] {
|
|
63
|
-
display: none!important;
|
|
64
53
|
}
|
|
65
54
|
}
|
|
66
|
-
|
|
67
|
-
/* Mobile handling of chat modal */
|
|
68
|
-
@include media-breakpoint-down(sm) {
|
|
69
|
-
.chat-modal {
|
|
70
|
-
z-index: $zindex-popover + 10;
|
|
71
|
-
}
|
|
72
|
-
}
|
package/scss/common.scss
CHANGED
|
@@ -62,4 +62,16 @@ body {
|
|
|
62
62
|
@include btn-ghost-base();
|
|
63
63
|
font-size: 0.875rem;
|
|
64
64
|
line-height: 1.25rem;
|
|
65
|
-
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
.btn-outline {
|
|
68
|
+
@include btn-ghost-base();
|
|
69
|
+
border-color: $border-color;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.btn-outline-sm {
|
|
73
|
+
@include btn-ghost-base();
|
|
74
|
+
border-color: $border-color;
|
|
75
|
+
font-size: 0.875rem;
|
|
76
|
+
line-height: 1.25rem;
|
|
77
|
+
}
|
package/templates/chat.tpl
CHANGED
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
<div class="modal-content">
|
|
4
4
|
<div class="modal-header d-flex">
|
|
5
5
|
<div class="fs-5 flex-grow-1" component="chat/room/name"><!-- IF roomName -->{roomName}<!-- ELSE -->{usernames}<!-- ENDIF roomName --></div>
|
|
6
|
-
<button type="button" class="btn btn-
|
|
6
|
+
<button type="button" class="btn btn-outline d-none d-md-flex" data-action="maximize">
|
|
7
7
|
<span aria-hidden="true"><i class="fa fa-fw fa-expand"></i></span>
|
|
8
8
|
<span class="sr-only">[[modules:chat.maximize]]</span>
|
|
9
9
|
</button>
|
|
10
|
-
<button type="button" class="btn btn-
|
|
10
|
+
<button type="button" class="btn btn-outline d-none d-md-flex" data-action="minimize">
|
|
11
11
|
<span aria-hidden="true"><i class="fa fa-fw fa-minus"></i></span>
|
|
12
12
|
<span class="sr-only">[[modules:chat.minimize]]</span>
|
|
13
13
|
</button>
|
package/templates/chats.tpl
CHANGED
|
@@ -1,12 +1,21 @@
|
|
|
1
1
|
<div class="chats-full d-flex gap-1 vh-100 py-3">
|
|
2
2
|
<div class="d-flex flex-column h-100" component="chat/nav-wrapper" data-loaded="{{{ if roomId }}}1{{{ else }}}0{{{ end }}}">
|
|
3
3
|
<div class="chat-search dropdown mb-2">
|
|
4
|
-
<
|
|
4
|
+
<label class="text-xs text-muted">[[users:search-user-for-chat]]</label>
|
|
5
|
+
|
|
6
|
+
<div class="input-group">
|
|
7
|
+
<input class="form-control" type="text" component="chat/search" data-bs-toggle="dropdown" />
|
|
8
|
+
<button class="btn btn-primary" type="button">
|
|
9
|
+
<i class="fa fa-search"></i>
|
|
10
|
+
</button>
|
|
11
|
+
</div>
|
|
12
|
+
|
|
5
13
|
<ul component="chat/search/list" class="dropdown-menu">
|
|
6
14
|
<li><a href="#" class="dropdown-item">[[admin/menu:search.start-typing]]</a></li>
|
|
7
15
|
</ul>
|
|
8
16
|
</div>
|
|
9
|
-
<
|
|
17
|
+
<hr class="text-muted opacity-25 my-1">
|
|
18
|
+
<ul component="chat/recent" class="chats-list list-unstyled overflow-auto mb-0 pe-2" data-nextstart="{nextStart}" style="width:300px;">
|
|
10
19
|
{{{each rooms}}}
|
|
11
20
|
<!-- IMPORT partials/chats/recent_room.tpl -->
|
|
12
21
|
{{{end}}}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
<div component="category/posts" class="ps-3">
|
|
5
5
|
<a class="background-link" href="{config.relative_path}/topic/{./topic.slug}{{{ if ./index }}}/{./index}{{{ end }}}"></a>
|
|
6
6
|
<p class="mb-0">
|
|
7
|
-
<a href="{config.relative_path}/user/{./user.userslug}">{buildAvatar(posts.user, "20px", true)}</a>
|
|
7
|
+
<a class="text-decoration-none" href="{config.relative_path}/user/{./user.userslug}">{buildAvatar(posts.user, "20px", true)}</a>
|
|
8
8
|
<a class="permalink text-muted" href="{config.relative_path}/topic/{./topic.slug}{{{ if ./index }}}/{./index}{{{ end }}}">
|
|
9
9
|
<span class="timeago text-xs" title="{../timestampISO}"></span>
|
|
10
10
|
</a>
|
|
@@ -1,38 +1,7 @@
|
|
|
1
1
|
{{{ if !rooms.length }}}
|
|
2
|
-
<li class="text-center
|
|
2
|
+
<li class="text-center p-2">[[modules:chat.no_active]]</li>
|
|
3
3
|
{{{ end }}}
|
|
4
4
|
|
|
5
5
|
{{{ each rooms }}}
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
{{{ if ./users.length }}}
|
|
9
|
-
{{{ if ./groupChat}}}
|
|
10
|
-
<div class="position-relative" style="width:32px; height:32px;">
|
|
11
|
-
<a class="text-decoration-none position-absolute top-0" style="left: 8px;" href="{config.relative_path}/user/{./users.1.userslug}">{buildAvatar(./users.1, "24px", true)}</a>
|
|
12
|
-
<a class="text-decoration-none position-absolute start-0" style="top: 8px;" href="{config.relative_path}/user/{./users.0.userslug}" >{buildAvatar(./users.0, "24px", true)}</a>
|
|
13
|
-
</div>
|
|
14
|
-
{{{ else }}}
|
|
15
|
-
<a href="{config.relative_path}/user/{./users.0.userslug}" class="text-decoration-none">{buildAvatar(./users.0, "32px", true)}</a>
|
|
16
|
-
{{{ end }}}
|
|
17
|
-
{{{ else }}}
|
|
18
|
-
<span class="avatar avatar-rounded text-bg-warning" component="avatar/icon" style="--avatar-size: 32px;">?</span>
|
|
19
|
-
{{{ end }}}
|
|
20
|
-
</div>
|
|
21
|
-
|
|
22
|
-
<div class="notification-chat-content d-flex flex-grow-1 flex-column w-100">
|
|
23
|
-
<div class="room-name fw-semibold text-xs">
|
|
24
|
-
{{{ if !./lastUser.uid }}}
|
|
25
|
-
<span>[[modules:chat.no-users-in-room]]</span>
|
|
26
|
-
{{{ else }}}
|
|
27
|
-
{{{ if ./roomName }}}{./roomName}{{{ else }}}{./usernames}{{{ end }}}
|
|
28
|
-
{{{ end }}}
|
|
29
|
-
</div>
|
|
30
|
-
<div class="teaser-content text-sm line-clamp-3">
|
|
31
|
-
<a href="#" class="text-decoration-none">{buildAvatar(./teaser.user, "14px", true)}</a>
|
|
32
|
-
<strong class="text-xs fw-semibold teaser-username">{./teaser.user.username}:</strong>
|
|
33
|
-
{./teaser.content}
|
|
34
|
-
</div>
|
|
35
|
-
<div class="teaser-timestamp notification-chat-controls text-muted text-xs">{./teaser.timeagoLong}</div>
|
|
36
|
-
</div>
|
|
37
|
-
</li>
|
|
38
|
-
{{{ end }}}
|
|
6
|
+
<!-- IMPORT partials/chats/recent_room.tpl -->
|
|
7
|
+
{{{ end }}}
|
|
@@ -1,24 +1,20 @@
|
|
|
1
1
|
<!-- IF roomId -->
|
|
2
2
|
<div component="chat/messages" class="expanded-chat d-flex flex-column h-100" data-roomid="{roomId}">
|
|
3
|
-
<div component="chat/header" class="d-flex align-items-center px-3">
|
|
4
|
-
<
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
<a href="{config.relative_path}/uid/{../uid}">{../username}</a><!-- IF !@last -->,<!-- END -->
|
|
8
|
-
{{{end}}}
|
|
9
|
-
</span>
|
|
3
|
+
<div component="chat/header" class="d-flex align-items-center px-3 gap-1">
|
|
4
|
+
<h5 class="members flex-1 fw-semibold tracking-tight">
|
|
5
|
+
{./chatWithMessage}
|
|
6
|
+
</h5>
|
|
10
7
|
|
|
11
|
-
<button type="button" class="btn btn-link d-none d-md-block p-2 text-muted" data-action="pop-out" aria-hidden="true" aria-label="Pop Out"><i class="fa fa-compress"></i></button>
|
|
12
8
|
<!-- IMPORT partials/chats/options.tpl -->
|
|
13
|
-
<button type="button" class="btn-close" aria-hidden="true" aria-label="Close" data-action="close"></button>
|
|
14
9
|
</div>
|
|
10
|
+
<hr class="text-muted opacity-25"/>
|
|
15
11
|
<div class="position-relative">
|
|
16
|
-
<div component="chat/messages/scroll-up-alert" class="position-absolute scroll-up-alert alert alert-info hidden w-
|
|
12
|
+
<div component="chat/messages/scroll-up-alert" class="position-absolute me-4 end-0 text-sm scroll-up-alert alert alert-info hidden w-25" role="button" style="z-index: 1;">[[modules:chat.scroll-up-alert]]</div>
|
|
17
13
|
</div>
|
|
18
14
|
<ul class="chat-content p-0 m-0 list-unstyled overflow-auto flex-grow-1">
|
|
19
15
|
<!-- IMPORT partials/chats/messages.tpl -->
|
|
20
16
|
</ul>
|
|
21
|
-
<div component="chat/composer" class="d-flex">
|
|
17
|
+
<div component="chat/composer" class="d-flex gap-1 border-top pt-2">
|
|
22
18
|
<div class="flex-grow-1 position-relative">
|
|
23
19
|
<textarea component="chat/input" placeholder="[[modules:chat.placeholder]]" class="form-control chat-input mousetrap" rows="2" style="resize:none;"></textarea>
|
|
24
20
|
<span component="chat/message/remaining" class="text-muted position-absolute me-1 mb-1" style="right: 0px; bottom:0px;">{maximumChatMessageLength}</span>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<li component="chat/message" class="chat-message mx-2 pe-2 fw-light clear
|
|
1
|
+
<li component="chat/message" class="chat-message mx-2 pe-2 fw-light clear{{{ if ./deleted }}} deleted{{{ end }}} {{{ if messages.newSet }}}border-top pt-3{{{ end }}}" data-index="{messages.index}" data-mid="{messages.messageId}" data-uid="{messages.fromuid}" data-self="{messages.self}" data-break="{messages.newSet}" data-timestamp="{messages.timestamp}">
|
|
2
2
|
<div class="message-header {{{ if !messages.newSet }}}hidden{{{ end }}} pb-2">
|
|
3
3
|
<a href="{config.relative_path}/user/{messages.fromUser.userslug}" class="text-decoration-none">{buildAvatar(messages.fromUser, "24px", false, "not-responsive rounded")}</a>
|
|
4
4
|
<span class="chat-user fw-bold"><a href="{config.relative_path}/user/{messages.fromUser.userslug}">{messages.fromUser.displayname}</a></span>
|
|
@@ -1,7 +1,5 @@
|
|
|
1
|
-
<!-- THIS FILE IS STILL PERSONA -->
|
|
2
|
-
|
|
3
1
|
<div class="dropdown">
|
|
4
|
-
<button class="btn btn-
|
|
2
|
+
<button class="btn btn-outline align-text-top" data-bs-toggle="dropdown" component="chat/controlsToggle"><i class="fa fa-gear"></i></button>
|
|
5
3
|
<ul class="dropdown-menu dropdown-menu-end" component="chat/controls">
|
|
6
4
|
<li class="dropdown-header">[[modules:chat.options]]</li>
|
|
7
5
|
<li>
|
|
@@ -13,14 +11,14 @@
|
|
|
13
11
|
<li>
|
|
14
12
|
<a class="dropdown-item" href="#" data-action="leave"><i class="fa fa-fw fa-sign-out"></i> [[modules:chat.leave]]</a>
|
|
15
13
|
</li>
|
|
16
|
-
|
|
14
|
+
{{{ if users.length }}}
|
|
17
15
|
<li role="separator" class="dropdown-divider"></li>
|
|
18
16
|
<li class="dropdown-header">[[modules:chat.in-room]]</li>
|
|
19
|
-
{{{each users}}}
|
|
17
|
+
{{{ each users }}}
|
|
20
18
|
<li>
|
|
21
19
|
<a class="dropdown-item" href="{config.relative_path}/uid/{../uid}">{buildAvatar(users, "24px", true)} {../username}</a>
|
|
22
20
|
</li>
|
|
23
|
-
{{{end}}}
|
|
24
|
-
|
|
21
|
+
{{{ end }}}
|
|
22
|
+
{{{ end }}}
|
|
25
23
|
</ul>
|
|
26
24
|
</div>
|
|
@@ -1,20 +1,37 @@
|
|
|
1
|
-
<
|
|
2
|
-
<
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
1
|
+
<a class="text-decoration-none text-reset" href="{config.relative_path}/me/chats/{./roomId}">
|
|
2
|
+
<li component="chat/recent/room" data-roomid="{./roomId}" data-full="1" class="{{{ if ./unread }}}unread{{{ end }}} btn-ghost-sm gap-2 justify-content-start align-items-start">
|
|
3
|
+
<div class="main-avatar">
|
|
4
|
+
{{{ if ./users.length }}}
|
|
5
|
+
{{{ if ./groupChat}}}
|
|
6
|
+
<div class="position-relative" style="width:32px; height:32px;">
|
|
7
|
+
<span class="text-decoration-none position-absolute top-0" style="left: 8px;" href="{config.relative_path}/user/{./users.1.userslug}">{buildAvatar(./users.1, "24px", true)}</span>
|
|
8
|
+
<span class="text-decoration-none position-absolute start-0" style="top: 8px;" href="{config.relative_path}/user/{./users.0.userslug}" >{buildAvatar(./users.0, "24px", true)}</span>
|
|
9
|
+
</div>
|
|
10
|
+
{{{ else }}}
|
|
11
|
+
<span href="{config.relative_path}/user/{./users.0.userslug}" class="text-decoration-none">{buildAvatar(./users.0, "32px", true)}</span>
|
|
12
|
+
{{{ end }}}
|
|
13
|
+
{{{ else }}}
|
|
14
|
+
<span class="avatar avatar-rounded text-bg-warning" component="avatar/icon" style="--avatar-size: 32px;">?</span>
|
|
15
|
+
{{{ end }}}
|
|
16
|
+
</div>
|
|
17
|
+
|
|
18
|
+
<div class="d-flex flex-grow-1 flex-column w-100">
|
|
19
|
+
<div class="room-name fw-semibold text-xs">
|
|
20
|
+
{{{ if !./lastUser.uid }}}
|
|
21
|
+
<span>[[modules:chat.no-users-in-room]]</span>
|
|
22
|
+
{{{ else }}}
|
|
23
|
+
{{{ if ./roomName }}}{./roomName}{{{ else }}}{./usernames}{{{ end }}}
|
|
24
|
+
{{{ end }}}
|
|
25
|
+
</div>
|
|
26
|
+
{{{ if ./teaser }}}
|
|
27
|
+
<div class="teaser-content text-sm line-clamp-3 text-break">
|
|
28
|
+
<span href="#" class="text-decoration-none">{buildAvatar(./teaser.user, "14px", true)}</span>
|
|
29
|
+
<strong class="text-xs fw-semibold teaser-username">{./teaser.user.username}:</strong>
|
|
30
|
+
{./teaser.content}
|
|
31
|
+
</div>
|
|
32
|
+
<div class="teaser-timestamp text-muted text-xs">{./teaser.timeagoLong}</div>
|
|
33
|
+
{{{ end }}}
|
|
34
|
+
</div>
|
|
35
|
+
</li>
|
|
36
|
+
</a>
|
|
37
|
+
<hr class="text-muted opacity-25 my-1"/>
|
|
@@ -1,15 +1,24 @@
|
|
|
1
1
|
{{{ if !notifications.length }}}
|
|
2
|
-
<li class="no-notifs text-center
|
|
2
|
+
<li class="no-notifs text-center p-2">[[notifications:no_notifs]]</li>
|
|
3
3
|
{{{ end }}}
|
|
4
4
|
|
|
5
5
|
{{{ each notifications }}}
|
|
6
|
-
<li class="{./readClass} mb-2" data-nid="{./nid}" data-path="{./path}" {{{ if ./pid }}}data-pid="{./pid}"{{{ end }}}{{{ if ./tid }}}data-tid="{./tid}"{{{ end }}}>
|
|
6
|
+
<li class="{./readClass} mb-2 p-1" data-nid="{./nid}" data-path="{./path}" {{{ if ./pid }}}data-pid="{./pid}"{{{ end }}}{{{ if ./tid }}}data-tid="{./tid}"{{{ end }}}>
|
|
7
7
|
<div class="d-flex gap-1 justify-content-between">
|
|
8
|
-
<div>
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
8
|
+
<div class="d-flex gap-2">
|
|
9
|
+
{{{ if ./image }}}
|
|
10
|
+
{{{ if ./from }}}
|
|
11
|
+
<a class="text-decoration-none" href="{config.relative_path}/user/{./user.userslug}"><img class="avatar avatar-rounded" style="--avatar-size: 32px;" src="{./image}" /></a>
|
|
12
|
+
{{{ end }}}
|
|
13
|
+
{{{ else }}}
|
|
14
|
+
<a class="text-decoration-none" href="{config.relative_path}/user/{./user.userslug}"><div class="avatar avatar-rounded" style="--avatar-size: 32px; background-color: {./user.icon:bgColor};">{./user.icon:text}</div></a>
|
|
15
|
+
{{{ end }}}
|
|
16
|
+
<div class=" d-flex flex-column">
|
|
17
|
+
<a href="{./path}" class="text-decoration-none notification-chat-content text-reset text text-sm">
|
|
18
|
+
{./bodyShort}
|
|
19
|
+
</a>
|
|
20
|
+
<div class="text-xs text-muted">{./timeagoLong}</div>
|
|
21
|
+
</div>
|
|
13
22
|
</div>
|
|
14
23
|
<div class="notification-chat-controls">
|
|
15
24
|
{{{ if ./nid }}}
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
</a>
|
|
11
11
|
<ul class="chats-dropdown dropdown-menu p-1 shadow">
|
|
12
12
|
<li>
|
|
13
|
-
<ul component="chat/list" class="chat-list chats-list list-unstyled p-
|
|
13
|
+
<ul component="chat/list" class="chat-list chats-list list-unstyled p-0 pe-1">
|
|
14
14
|
<li class="dropdown-item rounded-1 p-2 d-flex gap-2 placeholder-wave">
|
|
15
15
|
<div class="main-avatar">
|
|
16
16
|
<div class="placeholder" style="width: 32px; height: 32px;"></div>
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
<ul class="drafts-dropdown dropdown-menu p-1 shadow">
|
|
12
12
|
<li>
|
|
13
13
|
<ul component="drafts/list" class="draft-list list-unstyled d-flex flex-column gap-1">
|
|
14
|
-
<li class="no-drafts text-center
|
|
14
|
+
<li class="no-drafts text-center p-2">[[modules:composer.no-drafts]]</li>
|
|
15
15
|
|
|
16
16
|
{{{ each drafts }}}
|
|
17
17
|
{{{ if !@first}}}
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
</a>
|
|
11
11
|
<ul class="notifications-dropdown dropdown-menu p-2 shadow">
|
|
12
12
|
<li>
|
|
13
|
-
<ul component="notifications/list" class="notification-list list-unstyled
|
|
13
|
+
<ul component="notifications/list" class="notification-list list-unstyled">
|
|
14
14
|
<li class="mb-2 placeholder-wave">
|
|
15
15
|
<div class="text-sm placeholder col-11"> </div>
|
|
16
16
|
<div class="text-sm placeholder col-5"> </div><br />
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
<!-- THIS FILE IS STILL PERSONA -->
|
|
2
|
-
|
|
3
|
-
{{{ if config.loggedIn }}}
|
|
4
|
-
<ul class="nav nav-pills">
|
|
5
|
-
<li class="nav-item">
|
|
6
|
-
<a class="nav-link" href="#" data-bs-target="#notifications" data-bs-toggle="tab"><span class="counter unread-count" component="notifications/icon" data-content="{unreadCount.notification}"></span> <i class="fa fa-fw fa-bell"></i></a>
|
|
7
|
-
</li>
|
|
8
|
-
{{{ if !config.disableChat }}}
|
|
9
|
-
<li class="nav-item">
|
|
10
|
-
<a class="nav-link" href="#" data-bs-target="#chats" data-bs-toggle="tab"><i class="counter unread-count" component="chat/icon" data-content="{unreadCount.chat}"></i> <i class="fa fa-fw fa-comment"></i></a>
|
|
11
|
-
</li>
|
|
12
|
-
{{{ end }}}
|
|
13
|
-
<li class="nav-item">
|
|
14
|
-
<a class="nav-link active" href="#" data-bs-target="#profile" data-bs-toggle="tab">
|
|
15
|
-
{buildAvatar(user, "24px", true, "user-icon")}
|
|
16
|
-
<i component="user/status" class="fa fa-fw fa-circle status {user.status}"></i>
|
|
17
|
-
</a>
|
|
18
|
-
</li>
|
|
19
|
-
</ul>
|
|
20
|
-
|
|
21
|
-
<div class="tab-content">
|
|
22
|
-
<div class="tab-pane fade show active" id="profile">
|
|
23
|
-
<section class="menu-section" data-section="profile">
|
|
24
|
-
<ul class="menu-section-list dropdown-menu show text-bg-dark w-100 border-0" component="header/usercontrol"></ul>
|
|
25
|
-
</section>
|
|
26
|
-
</div>
|
|
27
|
-
<div class="tab-pane fade" id="notifications">
|
|
28
|
-
<section class="menu-section text-bg-dark" data-section="notifications">
|
|
29
|
-
<ul class="menu-section-list notification-list-mobile" component="notifications/list"></ul>
|
|
30
|
-
<p class="menu-section-list"><a href="{relative_path}/notifications">[[notifications:see_all]]</a></p>
|
|
31
|
-
</section>
|
|
32
|
-
</div>
|
|
33
|
-
{{{ if !config.disableChat }}}
|
|
34
|
-
<div class="tab-pane fade" id="chats">
|
|
35
|
-
<section class="menu-section text-bg-dark" data-section="chats">
|
|
36
|
-
<ul class="menu-section-list chat-list" component="chat/list">
|
|
37
|
-
<a class="navigation-link" href="{relative_path}/user/{user.userslug}/chats">[[modules:chat.see_all]]</a>
|
|
38
|
-
</ul>
|
|
39
|
-
</section>
|
|
40
|
-
</div>
|
|
41
|
-
{{{ end }}}
|
|
42
|
-
</div>
|
|
43
|
-
{{{ end }}}
|