Chat notifs (#11832)

* first part of chat notifs

* moved default notif to manage page

* spec

* notifs

* delete settings on room delete
This commit is contained in:
Barış Soner Uşaklı
2023-07-21 15:31:34 -04:00
committed by GitHub
parent f377650161
commit 61f036ce1d
15 changed files with 249 additions and 46 deletions

View File

@@ -1,10 +1,11 @@
<div class="mb-3">
<div class="mb-3">
<label class="form-label">[[modules:chat.room-name-optional]]</label>
<input component="chat/room/name" class="form-control"/>
<label class="form-label text-nowrap">[[modules:chat.room-name-optional]]</label>
<input component="chat/room/name" class="form-control" />
</div>
<div class="mb-3">
<div class="dropdown mb-3">
<div class="dropdown">
<label class="form-label">[[modules:chat.add-user]]</label>
<input component="chat/search" class="form-control" type="text" placeholder="[[global:user-search-prompt]]" data-bs-toggle="dropdown"/>
<ul component="chat/search/list" class="dropdown-menu p-1 overflow-auto" style="max-height: 400px;">
@@ -15,7 +16,7 @@
{{{ end }}}
</ul>
</div>
<ul component="chat/room/users" class="list-group">
<ul component="chat/room/users" class="list-group mt-2">
{{{ each selectedUsers }}}
<li class="list-group-item d-flex gap-2 align-items-center justify-content-between" component="chat/user" data-uid="{./uid}">
<a href="#" class="text-reset text-decoration-none">{buildAvatar(@value, "24px", true)} {./username}</a>

View File

@@ -1,4 +1,4 @@
<div class="mb-3">
<div class="">
<label class="form-label">[[modules:chat.add-user]]</label>
<input component="chat/manage/user/add/search" class="form-control" type="text" placeholder="[[global:user-search-prompt]]" />
<p class="text-danger"></p>
@@ -12,16 +12,29 @@
<li class="list-group-item"><i class="fa fa-spinner fa-spin"></i> [[modules:chat.retrieving-users]]</li>
</ul>
{{{ if (user.isAdmin && group.public ) }}}
{{{ if user.isAdmin }}}
<hr/>
<div class="d-flex gap-2 mb-3 align-items-center justify-content-between">
<label class="form-label text-nowrap mb-0">[[modules:chat.default-notification-setting]]</label>
<select component="chat/room/notification/setting" class="form-select" style="width: 200px;">
<option value="1" {{{ if (room.notificationSetting == "1") }}}selected{{{ end }}}>[[modules:chat.notification-setting-none]]</option>
<option value="2" {{{ if (room.notificationSetting == "2") }}}selected{{{ end }}}>[[modules:chat.notification-setting-at-mention-only]]</option>
<option value="3" {{{ if (room.notificationSetting == "3") }}}selected{{{ end }}}>[[modules:chat.notification-setting-all-messages]]</option>
</select>
</div>
{{{ if room.public }}}
<label class="form-label">[[modules:chat.select-groups]]</label>
<select component="chat/room/groups" class="form-select mb-1" multiple size="10">
<select component="chat/room/groups" class="form-select mb-3" multiple size="10">
{{{ each groups }}}
<option value="{./displayName}" {{{ if ./selected }}}selected{{{ end }}}>{./displayName}</option>
{{{ end }}}
</select>
{{{ end }}}
<div class="d-flex justify-content-end">
<button component="chat/manage/save/groups" class="btn btn-sm btn-primary">[[global:save]]</button>
<button component="chat/manage/save" class="btn btn-sm btn-primary">[[global:save]]</button>
</div>
{{{ end }}}
</div>