mirror of
https://github.com/NodeBB/NodeBB.git
synced 2026-01-02 05:40:43 +01:00
feat: add missing aria/role attributes to dropdown elements
This commit is contained in:
@@ -15,7 +15,7 @@ define('forum/account/blocks', [
|
||||
$('#user-search').on('keyup', function () {
|
||||
const username = this.value;
|
||||
if (!username) {
|
||||
return blockListEl.translateHtml('<li><a href="#" class="dropdown-item">[[admin/menu:search.start-typing]]</a></li>');
|
||||
return blockListEl.translateHtml('<li><a href="#" class="dropdown-item" role="menuitem">[[admin/menu:search.start-typing]]</a></li>');
|
||||
}
|
||||
api.get('/api/users', {
|
||||
query: username,
|
||||
@@ -26,7 +26,7 @@ define('forum/account/blocks', [
|
||||
return alerts.error(err);
|
||||
}
|
||||
if (!data.users.length) {
|
||||
return blockListEl.translateHtml('<li><a href="#" class="dropdown-item">[[users:no-users-found]]</a></li>');
|
||||
return blockListEl.translateHtml('<li><a href="#" class="dropdown-item" role="menuitem">[[users:no-users-found]]</a></li>');
|
||||
}
|
||||
// Only show first 10 matches
|
||||
if (data.matchCount > 10) {
|
||||
|
||||
@@ -11,12 +11,12 @@
|
||||
<div class="col-12 col-md-9" id="active-widgets">
|
||||
<div class="d-flex justify-content-between">
|
||||
<div class="dropdown mb-3">
|
||||
<button class="btn btn-light btn-sm dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
|
||||
<button class="btn btn-light btn-sm dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<span class="selected-template">{templates.0.template}</span> <span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu {{{ if config.isRTL }}}dropdown-menu-end{{{ end }}} p-1">
|
||||
<ul class="dropdown-menu {{{ if config.isRTL }}}dropdown-menu-end{{{ end }}} p-1" role="menu">
|
||||
{{{ each templates }}}
|
||||
<li><a class="dropdown-item rounded-1 d-flex justify-content-between align-items-center gap-3" href="#" data-template="{./template}" data-toggle="pill">{./template} <span class="badge text-bg-light border" style="min-width: 2.15em;">{./widgetCount}</span></a></li>
|
||||
<li><a class="dropdown-item rounded-1 d-flex justify-content-between align-items-center gap-3" href="#" data-template="{./template}" data-toggle="pill" role="menuitem">{./template} <span class="badge text-bg-light border" style="min-width: 2.15em;">{./widgetCount}</span></a></li>
|
||||
{{{ end }}}
|
||||
</ul>
|
||||
</div>
|
||||
@@ -85,13 +85,13 @@
|
||||
|
||||
<div class="btn-group" component="clone">
|
||||
<button type="button" class="btn btn-primary" component="clone/button">[[admin/extend/widgets:clone-from]] ...</button>
|
||||
<button type="button" class="btn btn-primary dropdown-toggle flex-0" data-bs-toggle="dropdown">
|
||||
<button type="button" class="btn btn-primary dropdown-toggle flex-0" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu dropdown-menu-end">
|
||||
<ul class="dropdown-menu dropdown-menu-end" role="menu">
|
||||
{{{ each templates }}}
|
||||
{{{ if !@first }}}
|
||||
<li><a class="dropdown-item" href="#">{./template}</a></li>
|
||||
<li><a class="dropdown-item" href="#" role="menuitem">{./template}</a></li>
|
||||
{{{ end }}}
|
||||
{{{ end }}}
|
||||
</ul>
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<h4 class="fw-bold tracking-tight mb-0">[[admin/manage/groups:edit-group]]</h4>
|
||||
|
||||
<div component="group-selector" class="btn-group">
|
||||
<button type="button" class="btn-ghost-sm dropdown-toggle w-100" data-bs-toggle="dropdown">
|
||||
<button type="button" class="btn-ghost-sm dropdown-toggle w-100" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<span component="group-selector-selected">{group.displayName}</span> <span class="caret"></span>
|
||||
</button>
|
||||
<div component="group-selector-search" class="hidden position-absolute w-100">
|
||||
@@ -154,7 +154,7 @@
|
||||
|
||||
<div class="edit-privileges-selector w-100">
|
||||
<div component="category-selector" class="btn-group w-100">
|
||||
<button type="button" class="btn-ghost-sm justify-content-start flex-fill dropdown-toggle" data-bs-toggle="dropdown">
|
||||
<button type="button" class="btn-ghost-sm justify-content-start flex-fill dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fa fa-fw fa-lock text-primary"></i> <span>[[admin/manage/groups:privileges]]</span> <span class="caret"></span>
|
||||
</button>
|
||||
<div component="category-selector-search" class="hidden position-absolute">
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<option value="500">[[admin/manage/users:500-per-page]]</option>
|
||||
</select>
|
||||
<div class="btn-group" id="filter-by">
|
||||
<button type="button" class="btn btn-light btn-sm dropdown-toggle" data-bs-toggle="dropdown">
|
||||
<button type="button" class="btn btn-light btn-sm dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
[[admin/manage/users:filter-by]] <span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu" role="menu">
|
||||
@@ -38,49 +38,49 @@
|
||||
</ul>
|
||||
</div>
|
||||
<div class="btn-group">
|
||||
<button class="btn btn-primary btn-sm dropdown-toggle" id="action-dropdown" data-bs-toggle="dropdown" type="button" disabled="disabled">[[admin/manage/users:edit]] <span class="caret"></span></button>
|
||||
<ul class="dropdown-menu dropdown-menu-end p-1 text-sm">
|
||||
<button class="btn btn-primary btn-sm dropdown-toggle" id="action-dropdown" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false" type="button" disabled="disabled">[[admin/manage/users:edit]] <span class="caret"></span></button>
|
||||
<ul class="dropdown-menu dropdown-menu-end p-1 text-sm" role="menu">
|
||||
|
||||
<li><h6 class="dropdown-header">[[admin/manage/users:email]]</h6></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 change-email"><i class="text-secondary fa fa-fw fa-envelope text-start"></i> [[admin/manage/users:change-email]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 validate-email"><i class="text-secondary fa fa-fw fa-envelope-circle-check"></i> [[admin/manage/users:validate-email]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 send-validation-email"><i class="text-secondary fa fa-fw fa-mail-forward"></i> [[admin/manage/users:send-validation-email]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 change-email" role="menuitem"><i class="text-secondary fa fa-fw fa-envelope text-start"></i> [[admin/manage/users:change-email]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 validate-email" role="menuitem"><i class="text-secondary fa fa-fw fa-envelope-circle-check"></i> [[admin/manage/users:validate-email]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 send-validation-email" role="menuitem"><i class="text-secondary fa fa-fw fa-mail-forward"></i> [[admin/manage/users:send-validation-email]]</a></li>
|
||||
|
||||
<li><hr class="dropdown-divider"></li>
|
||||
|
||||
<li><h6 class="dropdown-header">[[admin/manage/users:password]]</h6></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 change-password"><i class="text-secondary fa fa-fw fa-key"></i> [[admin/manage/users:change-password]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 password-reset-email"><i class="text-secondary fa fa-fw fa-envelope-open-text"></i> [[admin/manage/users:password-reset-email]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 force-password-reset"><i class="text-secondary fa fa-fw fa-user-lock"></i> [[admin/manage/users:force-password-reset]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 reset-lockout"><i class="text-secondary fa fa-fw fa-lock-open"></i> [[admin/manage/users:reset-lockout]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 change-password" role="menuitem"><i class="text-secondary fa fa-fw fa-key"></i> [[admin/manage/users:change-password]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 password-reset-email" role="menuitem"><i class="text-secondary fa fa-fw fa-envelope-open-text"></i> [[admin/manage/users:password-reset-email]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 force-password-reset" role="menuitem"><i class="text-secondary fa fa-fw fa-user-lock"></i> [[admin/manage/users:force-password-reset]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 reset-lockout" role="menuitem"><i class="text-secondary fa fa-fw fa-lock-open"></i> [[admin/manage/users:reset-lockout]]</a></li>
|
||||
|
||||
<li><hr class="dropdown-divider"></li>
|
||||
|
||||
<li><h6 class="dropdown-header">[[admin/manage/users:manage]]</h6></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 manage-groups"><i class="text-secondary fa fa-fw fa-users"></i> [[admin/manage/users:manage-groups]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 set-reputation"><i class="text-secondary fa fa-fw fa-star"></i> [[admin/manage/users:set-reputation]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 manage-groups" role="menuitem"><i class="text-secondary fa fa-fw fa-users"></i> [[admin/manage/users:manage-groups]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 set-reputation" role="menuitem"><i class="text-secondary fa fa-fw fa-star"></i> [[admin/manage/users:set-reputation]]</a></li>
|
||||
|
||||
<li><hr class="dropdown-divider"></li>
|
||||
|
||||
<li><h6 class="dropdown-header">[[admin/manage/users:ban]]</h6></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 ban-user"><i class="text-secondary fa fa-fw fa-gavel"></i> [[admin/manage/users:ban-users]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 ban-user-temporary"><i class="text-secondary fa fa-fw fa-clock-o"></i> [[admin/manage/users:temp-ban]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 unban-user"><i class="text-secondary fa fa-fw fa-comment-o"></i> [[admin/manage/users:unban]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 ban-user" role="menuitem"><i class="text-secondary fa fa-fw fa-gavel"></i> [[admin/manage/users:ban-users]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 ban-user-temporary" role="menuitem"><i class="text-secondary fa fa-fw fa-clock-o"></i> [[admin/manage/users:temp-ban]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 unban-user" role="menuitem"><i class="text-secondary fa fa-fw fa-comment-o"></i> [[admin/manage/users:unban]]</a></li>
|
||||
|
||||
<li><hr class="dropdown-divider"></li>
|
||||
|
||||
<li><h6 class="dropdown-header">[[admin/manage/users:delete]]</h6></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 delete-user"><i class="text-secondary fa fa-fw fa-trash-o"></i> [[admin/manage/users:delete-users]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 delete-user-content"><i class="text-secondary fa fa-fw fa-trash-o"></i> [[admin/manage/users:delete-content]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 delete-user-and-content"><i class="text-secondary fa fa-fw fa-trash-o"></i> [[admin/manage/users:purge]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 delete-user" role="menuitem"><i class="text-secondary fa fa-fw fa-trash-o"></i> [[admin/manage/users:delete-users]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 delete-user-content" role="menuitem"><i class="text-secondary fa fa-fw fa-trash-o"></i> [[admin/manage/users:delete-content]]</a></li>
|
||||
<li><a href="#" class="dropdown-item rounded-1 delete-user-and-content" role="menuitem"><i class="text-secondary fa fa-fw fa-trash-o"></i> [[admin/manage/users:purge]]</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="btn-group">
|
||||
<button class="btn btn-light btn-sm dropdown-toggle" data-bs-toggle="dropdown" type="button"><i class="fa fa-gear text-primary"></i></button>
|
||||
<ul class="dropdown-menu dropdown-menu-end p-1">
|
||||
<li><a class="dropdown-item rounded-1" href="#" data-action="create">[[admin/manage/users:create]]</a></li>
|
||||
{{{ if showInviteButton }}}<li><a class="dropdown-item rounded-1" href="#" component="user/invite">[[admin/manage/users:invite]]</a></li>{{{ end }}}
|
||||
<li><a target="_blank" href="#" class="dropdown-item rounded-1 export-csv">[[admin/manage/users:download-csv]]</a></li>
|
||||
<button class="btn btn-light btn-sm dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false" type="button"><i class="fa fa-gear text-primary"></i></button>
|
||||
<ul class="dropdown-menu dropdown-menu-end p-1" role="menu">
|
||||
<li><a class="dropdown-item rounded-1" href="#" data-action="create" role="menuitem">[[admin/manage/users:create]]</a></li>
|
||||
{{{ if showInviteButton }}}<li><a class="dropdown-item rounded-1" href="#" component="user/invite" role="menuitem">[[admin/manage/users:invite]]</a></li>{{{ end }}}
|
||||
<li><a target="_blank" href="#" class="dropdown-item rounded-1 export-csv" role="menuitem">[[admin/manage/users:download-csv]]</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
@@ -156,11 +156,11 @@
|
||||
<td>
|
||||
{{{ if ./ips.length }}}
|
||||
<div class="dropdown">
|
||||
<button class="btn btn-light btn-sm" data-bs-toggle="dropdown"><i class="fa fa-fw fa-list text-muted"></i></button>
|
||||
<ul class="dropdown-menu p-1">
|
||||
<button class="btn btn-light btn-sm" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><i class="fa fa-fw fa-list text-muted"></i></button>
|
||||
<ul class="dropdown-menu p-1" role="menu">
|
||||
{{{ each ./ips }}}
|
||||
<li class="d-flex gap-1 {{{ if !@last }}}mb-1{{{ end }}}">
|
||||
<a class="dropdown-item rounded-1">{@value}</a>
|
||||
<a class="dropdown-item rounded-1" role="menuitem">{@value}</a>
|
||||
<button data-ip="{@value}" onclick="navigator.clipboard.writeText(this.getAttribute('data-ip'))" class="btn btn-light btn-sm"><i class="fa fa-copy"></i></button>
|
||||
</li>
|
||||
{{{ end }}}
|
||||
|
||||
@@ -29,20 +29,20 @@
|
||||
<a href="./categories/{./cid}" class="btn btn-light btn-sm d-none d-sm-block">[[admin/manage/categories:edit]]</a>
|
||||
|
||||
<div class="category-tools">
|
||||
<button class="btn btn-light btn-sm dropdown-toggle" data-bs-toggle="dropdown" type="button"><i class="fa fa-fw fa-gear text-primary"></i></button>
|
||||
<ul class="dropdown-menu dropdown-menu-end p-1">
|
||||
<li><a href="{{{if ./link}}}{./link}{{{else}}}{config.relative_path}/category/{./cid}{{{end}}}" class="dropdown-item rounded-1 d-block d-sm-none" target="_blank">[[admin/admin:view]]</a></li>
|
||||
<button class="btn btn-light btn-sm dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false" type="button"><i class="fa fa-fw fa-gear text-primary"></i></button>
|
||||
<ul class="dropdown-menu dropdown-menu-end p-1" role="menu">
|
||||
<li>
|
||||
<a href="{{{if ./link}}}{./link}{{{else}}}{config.relative_path}/category/{./cid}{{{end}}}" class="dropdown-item rounded-1 d-block d-sm-none" target="_blank" role="menuitem">[[admin/admin:view]]</a>
|
||||
</li>
|
||||
|
||||
<li><a href="./categories/{./cid}" class="dropdown-item rounded-1 d-block d-sm-none">[[admin/manage/categories:edit]]</a></li>
|
||||
<li><a href="./categories/{./cid}" class="dropdown-item rounded-1 d-block d-sm-none" role="menuitem">[[admin/manage/categories:edit]]</a></li>
|
||||
|
||||
|
||||
|
||||
<li><a class="dropdown-item rounded-1" href="./categories/{categories.cid}/analytics">[[admin/manage/categories:analytics]]</a></li>
|
||||
<li><a class="dropdown-item rounded-1" href="{config.relative_path}/admin/manage/privileges/{categories.cid}">[[admin/manage/categories:privileges]]</a></li>
|
||||
<li><a href="#" class="set-order dropdown-item rounded-1" data-cid="{categories.cid}" data-order="{categories.order}">[[admin/manage/categories:set-order]]</a></li>
|
||||
<li><a class="dropdown-item rounded-1" href="./categories/{categories.cid}/analytics" role="menuitem">[[admin/manage/categories:analytics]]</a></li>
|
||||
<li><a class="dropdown-item rounded-1" href="{config.relative_path}/admin/manage/privileges/{categories.cid}" role="menuitem">[[admin/manage/categories:privileges]]</a></li>
|
||||
<li><a href="#" class="set-order dropdown-item rounded-1" data-cid="{categories.cid}" data-order="{categories.order}" role="menuitem">[[admin/manage/categories:set-order]]</a></li>
|
||||
<li class="dropdown-divider"></li>
|
||||
<li>
|
||||
<a class="dropdown-item rounded-1" href="#" data-disable-cid="{categories.cid}" data-action="toggle" data-disabled="{categories.disabled}">
|
||||
<a class="dropdown-item rounded-1" href="#" data-disable-cid="{categories.cid}" data-action="toggle" data-disabled="{categories.disabled}" role="menuitem">
|
||||
{{{if categories.disabled}}}
|
||||
[[admin/manage/categories:enable]]
|
||||
{{{else}}}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<form type="form">
|
||||
<div class="form-group">
|
||||
<div component="category-selector" class="btn-group">
|
||||
<button type="button" class="btn btn-outline-secondary dropdown-toggle" data-bs-toggle="dropdown">
|
||||
<button type="button" class="btn btn-outline-secondary dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<span component="category-selector-selected">[[topic:thread-tools.select-category]]</span> <span class="caret"></span>
|
||||
</button>
|
||||
<div component="category-selector-search" class="hidden position-absolute">
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<button type="button" class="btn-ghost-sm dropdown-toggle" data-bs-toggle="dropdown">
|
||||
<button type="button" class="btn-ghost-sm dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<span component="category-selector-selected">
|
||||
<span class="category-item d-inline-flex align-items-center gap-1">
|
||||
{{{ if (selectedCategory && !showCategorySelectLabel) }}}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<div component="category-selector" class="btn-group">
|
||||
<button type="button" class="btn btn-light btn-sm dropdown-toggle" data-bs-toggle="dropdown">
|
||||
<button type="button" class="btn btn-light btn-sm dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fa fa-fw fa-lock text-primary"></i> <span>[[admin/manage/groups:privileges]]</span> <span class="caret"></span>
|
||||
</button>
|
||||
<div component="category-selector-search" class="hidden position-absolute">
|
||||
|
||||
@@ -42,10 +42,10 @@
|
||||
<button class="btn btn-outline-secondary btn-sm dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="true">
|
||||
<i class="fa fa-copy"></i>
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li data-action="copyToAllGroup"><a class="dropdown-item" href="#">[[admin/manage/categories:privileges.copy-group-privileges-to-all-categories]]</a></li>
|
||||
<li data-action="copyToChildrenGroup"><a class="dropdown-item" href="#">[[admin/manage/categories:privileges.copy-group-privileges-to-children]]</a></li>
|
||||
<li data-action="copyPrivilegesFromGroup"><a class="dropdown-item" href="#">[[admin/manage/categories:privileges.copy-group-privileges-from]]</a></li>
|
||||
<ul class="dropdown-menu" role="menu">
|
||||
<li data-action="copyToAllGroup"><a class="dropdown-item" href="#" role="menuitem">[[admin/manage/categories:privileges.copy-group-privileges-to-all-categories]]</a></li>
|
||||
<li data-action="copyToChildrenGroup"><a class="dropdown-item" href="#" role="menuitem">[[admin/manage/categories:privileges.copy-group-privileges-to-children]]</a></li>
|
||||
<li data-action="copyPrivilegesFromGroup"><a class="dropdown-item" href="#" role="menuitem">[[admin/manage/categories:privileges.copy-group-privileges-from]]</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</td>
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
{{{ if user.privileges.admin:settings }}}
|
||||
<div component="acp/search" class="my-1 acp-search">
|
||||
<div class="dropdown">
|
||||
<input type="text" data-bs-toggle="dropdown" class="form-control" placeholder="[[admin/menu:search.placeholder]]">
|
||||
<input type="text" data-bs-toggle="dropdown" class="form-control" placeholder="[[admin/menu:search.placeholder]]" aria-haspopup="true" aria-expanded="false">
|
||||
<ul class="dropdown-menu state-start-typing p-1" role="menu">
|
||||
<li role="presentation" class="no-results">
|
||||
<a class="dropdown-item rounded-1">[[admin/menu:search.no-results]]</a>
|
||||
<a class="dropdown-item rounded-1" role="menuitem">[[admin/menu:search.no-results]]</a>
|
||||
</li>
|
||||
<li role="presentation" class="dropdown-divider search-forum"></li>
|
||||
<li role="presentation" class="search-forum">
|
||||
@@ -13,10 +13,10 @@
|
||||
</a>
|
||||
</li>
|
||||
<li role="presentation" class="keep-typing">
|
||||
<a class="dropdown-item rounded-1">[[admin/menu:search.keep-typing]]</a>
|
||||
<a class="dropdown-item rounded-1" role="menuitem">[[admin/menu:search.keep-typing]]</a>
|
||||
</li>
|
||||
<li role="presentation" class="start-typing">
|
||||
<a class="dropdown-item rounded-1">[[admin/menu:search.start-typing]]</a>
|
||||
<a class="dropdown-item rounded-1" role="menuitem">[[admin/menu:search.start-typing]]</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
@@ -7,12 +7,12 @@
|
||||
<div class="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;">
|
||||
<li component="chat/search/start-typing"><a href="#" class="dropdown-item rounded-1">[[admin/menu:search.start-typing]]</a></li>
|
||||
<li component="chat/search/no-users" class="hidden"><a href="#" class="dropdown-item rounded-1">[[users:no-users-found]]</a></li>
|
||||
<input component="chat/search" class="form-control" type="text" placeholder="[[global:user-search-prompt]]" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false"/>
|
||||
<ul component="chat/search/list" class="dropdown-menu p-1 overflow-auto" style="max-height: 400px;" role="menu">
|
||||
<li component="chat/search/start-typing"><a href="#" class="dropdown-item rounded-1" role="menuitem">[[admin/menu:search.start-typing]]</a></li>
|
||||
<li component="chat/search/no-users" class="hidden"><a href="#" class="dropdown-item rounded-1" role="menuitem">[[users:no-users-found]]</a></li>
|
||||
{{{ each searchUsers }}}
|
||||
<li component="chat/search/user" data-uid="{./uid}"><a href="#" class="dropdown-item rounded-1">{buildAvatar(@value, "24px", true)} {./username}</a></li>
|
||||
<li component="chat/search/user" data-uid="{./uid}"><a href="#" class="dropdown-item rounded-1" role="menuitem">{buildAvatar(@value, "24px", true)} {./username}</a></li>
|
||||
{{{ end }}}
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
@@ -28,42 +28,42 @@
|
||||
<button class="btn btn-sm btn-link" data-action="reply" title="[[topic:reply]]"><i class="fa fa-reply"></i></button>
|
||||
|
||||
<div class="btn-group d-inline-block">
|
||||
<button class="btn btn-sm btn-link dropdown-toggle" data-bs-toggle="dropdown"><i class="fa fa-ellipsis" type="button"></i></button>
|
||||
<ul class="dropdown-menu dropdown-menu-end p-1 text-sm list-unstyled">
|
||||
<button class="btn btn-sm btn-link dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><i class="fa fa-ellipsis" type="button"></i></button>
|
||||
<ul class="dropdown-menu dropdown-menu-end p-1 text-sm list-unstyled" role="menu">
|
||||
{{{ if (isAdminOrGlobalMod || (!config.disableChatMessageEditing && messages.self)) }}}
|
||||
<li>
|
||||
<a href="#" class="dropdown-item rounded-1" data-action="edit"><span class="d-inline-flex align-items-center gap-2"><i class="fa fa-fw fa-pencil text-muted"></i> [[topic:edit]]</span></a>
|
||||
<a href="#" class="dropdown-item rounded-1" data-action="edit" role="menuitem"><span class="d-inline-flex align-items-center gap-2"><i class="fa fa-fw fa-pencil text-muted"></i> [[topic:edit]]</span></a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#" class="dropdown-item rounded-1" data-action="delete"><span class="d-inline-flex align-items-center gap-2"><i class="fa fa-fw fa-trash text-muted"></i> [[topic:delete]]</span></a>
|
||||
<a href="#" class="dropdown-item rounded-1" data-action="delete" role="menuitem"><span class="d-inline-flex align-items-center gap-2"><i class="fa fa-fw fa-trash text-muted"></i> [[topic:delete]]</span></a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#" class="dropdown-item rounded-1" data-action="restore"><span class="d-inline-flex align-items-center gap-2"><i class="fa fa-fw fa-repeat text-muted"></i> [[topic:restore]]</span></a>
|
||||
<a href="#" class="dropdown-item rounded-1" data-action="restore" role="menuitem"><span class="d-inline-flex align-items-center gap-2"><i class="fa fa-fw fa-repeat text-muted"></i> [[topic:restore]]</span></a>
|
||||
</li>
|
||||
{{{ end }}}
|
||||
|
||||
{{{ if (isAdminOrGlobalMod || isOwner )}}}
|
||||
<li>
|
||||
<a href="#" class="dropdown-item rounded-1" data-action="pin"><span class="d-inline-flex align-items-center gap-2"><i class="fa fa-fw fa-thumbtack text-muted"></i> [[modules:chat.pin-message]]</span></a>
|
||||
<a href="#" class="dropdown-item rounded-1" data-action="pin" role="menuitem"><span class="d-inline-flex align-items-center gap-2"><i class="fa fa-fw fa-thumbtack text-muted"></i> [[modules:chat.pin-message]]</span></a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#" class="dropdown-item rounded-1" data-action="unpin"><span class="d-inline-flex align-items-center gap-2"><i class="fa fa-fw fa-thumbtack fa-rotate-90 text-muted"></i> [[modules:chat.unpin-message]]</span></a>
|
||||
<a href="#" class="dropdown-item rounded-1" data-action="unpin" role="menuitem"><span class="d-inline-flex align-items-center gap-2"><i class="fa fa-fw fa-thumbtack fa-rotate-90 text-muted"></i> [[modules:chat.unpin-message]]</span></a>
|
||||
</li>
|
||||
<li class="dropdown-divider"></li>
|
||||
{{{ end }}}
|
||||
|
||||
{{{ if isAdminOrGlobalMod }}}
|
||||
<li>
|
||||
<a href="#" class="dropdown-item rounded-1 chat-ip-button"><span class="d-inline-flex align-items-center gap-2"><i class="fa fa-fw fa-info-circle text-muted"></i> [[modules:chat.show-ip]]</span></a>
|
||||
<a href="#" class="dropdown-item rounded-1 chat-ip-button" role="menuitem"><span class="d-inline-flex align-items-center gap-2"><i class="fa fa-fw fa-info-circle text-muted"></i> [[modules:chat.show-ip]]</span></a>
|
||||
</li>
|
||||
{{{ end }}}
|
||||
|
||||
<li>
|
||||
<a href="#" class="dropdown-item rounded-1" data-action="copy-text" data-mid="{messages.mid}"><span class="d-inline-flex align-items-center gap-2"><i class="fa fa-fw fa-copy text-muted"></i> [[modules:chat.copy-text]]</span></a>
|
||||
<a href="#" class="dropdown-item rounded-1" data-action="copy-text" data-mid="{messages.mid}" role="menuitem"><span class="d-inline-flex align-items-center gap-2"><i class="fa fa-fw fa-copy text-muted"></i> [[modules:chat.copy-text]]</span></a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a href="#" class="dropdown-item rounded-1" data-action="copy-link" data-mid="{messages.mid}"><span class="d-inline-flex align-items-center gap-2"><i class="fa fa-fw fa-link text-muted"></i> [[modules:chat.copy-link]]</span></a>
|
||||
<a href="#" class="dropdown-item rounded-1" data-action="copy-link" data-mid="{messages.mid}" role="menuitem"><span class="d-inline-flex align-items-center gap-2"><i class="fa fa-fw fa-link text-muted"></i> [[modules:chat.copy-link]]</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
@@ -13,16 +13,16 @@
|
||||
|
||||
<!-- notification dropdown -->
|
||||
<div class="dropdown d-flex" data-manual-tooltip="1" title="[[modules:chat.notification-settings]]" component="chat/notification/setting">
|
||||
<button class="btn-ghost-sm position-relative" data-bs-toggle="dropdown">
|
||||
<button class="btn-ghost-sm position-relative" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fa fa-bell text-muted"></i>
|
||||
<span class="position-absolute top-0 end-0 text-xs text-muted opacity-50" style="font-size: 10px!important; padding: 1px; line-height: 10px;">
|
||||
<i component="chat/notification/setting/icon" class="fa {notificationOptionsIcon}"></i>
|
||||
</span>
|
||||
</button>
|
||||
<ul class="dropdown-menu dropdown-menu-end p-1 text-sm">
|
||||
<ul class="dropdown-menu dropdown-menu-end p-1 text-sm" role="menu">
|
||||
{{{ each notificationOptions }}}
|
||||
<li>
|
||||
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" href="#" data-value="{./value}" data-icon="{./icon}">
|
||||
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" href="#" data-value="{./value}" data-icon="{./icon}" role="menuitem">
|
||||
<div class="d-flex flex-column gap-1">
|
||||
<div class="d-flex align-items-center gap-2">
|
||||
<div class="flex-grow-1">{./label}</div>
|
||||
@@ -49,30 +49,30 @@
|
||||
|
||||
<!-- manage/options dropdown -->
|
||||
<div class="dropdown d-flex" data-manual-tooltip="1" title="[[modules:chat.options]]">
|
||||
<button class="btn-ghost-sm" data-bs-toggle="dropdown" component="chat/controlsToggle">
|
||||
<button component="chat/controlsToggle" class="btn-ghost-sm" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fa fa-gear text-muted"></i>
|
||||
</button>
|
||||
<ul class="dropdown-menu dropdown-menu-end p-1 text-sm" component="chat/controls">
|
||||
<ul class="dropdown-menu dropdown-menu-end p-1 text-sm" component="chat/controls" role="menu">
|
||||
<li>
|
||||
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" href="#" data-action="manage">
|
||||
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" href="#" data-action="manage" role="menuitem">
|
||||
<i class="fa fa-fw text-muted fa-cog"></i> [[modules:chat.manage-room]]
|
||||
</a>
|
||||
</li>
|
||||
{{{ if isOwner }}}
|
||||
<li>
|
||||
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" href="#" data-action="rename">
|
||||
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" href="#" data-action="rename" role="menuitem">
|
||||
<i class="fa fa-fw text-muted fa-edit"></i> [[modules:chat.rename-room]]
|
||||
</a>
|
||||
</li>
|
||||
{{{ end }}}
|
||||
<li>
|
||||
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" href="#" data-action="leave">
|
||||
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" href="#" data-action="leave" role="menuitem">
|
||||
<i class="fa fa-fw text-muted fa-sign-out"></i> [[modules:chat.leave-room]]
|
||||
</a>
|
||||
</li>
|
||||
{{{ if (public && isAdmin) }}}
|
||||
<li>
|
||||
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" href="#" data-action="delete">
|
||||
<a class="dropdown-item rounded-1 d-flex align-items-center gap-2" href="#" data-action="delete" role="menuitem">
|
||||
<i class="fa fa-fw text-danger fa-trash"></i> [[modules:chat.delete-room]]
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -21,16 +21,16 @@
|
||||
<button type="button" class="btn btn-outline-secondary dropdown-toggle" data-bs-toggle="dropdown" autocomplete="off" aria-haspopup="true" aria-expanded="false">
|
||||
<i class="fa fa-clone"></i> [[post-queue:bulk-actions]] <span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu dropdown-menu-end">
|
||||
<ul class="dropdown-menu dropdown-menu-end" role="menu">
|
||||
{{{ if canAccept }}}
|
||||
<li><a class="dropdown-item" href="#" data-action="accept-all">[[post-queue:accept-all]]</a></li>
|
||||
<li><a class="dropdown-item" href="#" data-action="accept-selected">[[post-queue:accept-selected]]</a></li>
|
||||
<li><a class="dropdown-item" href="#" data-action="accept-all" role="menuitem">[[post-queue:accept-all]]</a></li>
|
||||
<li><a class="dropdown-item" href="#" data-action="accept-selected" role="menuitem">[[post-queue:accept-selected]]</a></li>
|
||||
<li class="dropdown-divider"></li>
|
||||
<li><a class="dropdown-item" href="#" data-action="reject-all">[[post-queue:reject-all]]</a></li>
|
||||
<li><a class="dropdown-item" href="#" data-action="reject-selected">[[post-queue:reject-selected]]</a></li>
|
||||
<li><a class="dropdown-item" href="#" data-action="reject-all" role="menuitem">[[post-queue:reject-all]]</a></li>
|
||||
<li><a class="dropdown-item" href="#" data-action="reject-selected" role="menuitem">[[post-queue:reject-selected]]</a></li>
|
||||
{{{ else }}}
|
||||
<li><a class="dropdown-item" href="#" data-action="reject-all">[[post-queue:remove-all]]</a></li>
|
||||
<li><a class="dropdown-item" href="#" data-action="reject-selected">[[post-queue:remove-selected]]</a></li>
|
||||
<li><a class="dropdown-item" href="#" data-action="reject-selected" role="menuitem">[[post-queue:remove-selected]]</a></li>
|
||||
{{{ end }}}
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user