Merge branch 'woltlab-suite6.0'

This commit is contained in:
Tim Düsterhus 2024-03-04 20:36:45 +01:00
commit b96b995d67
Signed by: TimWolla
GPG Key ID: 8FF75566094168AF
16 changed files with 68 additions and 68 deletions

View File

@ -16,7 +16,7 @@
<controller>chat\acp\form\RoomAddForm</controller> <controller>chat\acp\form\RoomAddForm</controller>
<parent>chat.acp.menu.link.room.list</parent> <parent>chat.acp.menu.link.room.list</parent>
<permissions>admin.chat.canManageRoom</permissions> <permissions>admin.chat.canManageRoom</permissions>
<icon>fa-plus</icon> <icon>plus</icon>
</acpmenuitem> </acpmenuitem>
<acpmenuitem name="chat.acp.menu.link.command.trigger.list"> <acpmenuitem name="chat.acp.menu.link.command.trigger.list">
@ -29,7 +29,7 @@
<controller>chat\acp\form\CommandTriggerAddForm</controller> <controller>chat\acp\form\CommandTriggerAddForm</controller>
<parent>chat.acp.menu.link.command.trigger.list</parent> <parent>chat.acp.menu.link.command.trigger.list</parent>
<permissions>admin.chat.canManageTriggers</permissions> <permissions>admin.chat.canManageTriggers</permissions>
<icon>fa-plus</icon> <icon>plus</icon>
</acpmenuitem> </acpmenuitem>
<acpmenuitem name="chat.acp.menu.link.suspension.list"> <acpmenuitem name="chat.acp.menu.link.suspension.list">

View File

@ -7,7 +7,7 @@
<nav class="contentHeaderNavigation"> <nav class="contentHeaderNavigation">
<ul> <ul>
<li><a href="{link application='chat' controller='CommandTriggerList'}{/link}" class="button"><span class="icon icon16 fa-list"></span> <span>{lang}chat.acp.command.trigger.list{/lang}</span></a></li> <li><a href="{link application='chat' controller='CommandTriggerList'}{/link}" class="button">{icon name='list'} <span>{lang}chat.acp.command.trigger.list{/lang}</span></a></li>
{event name='contentHeaderNavigation'} {event name='contentHeaderNavigation'}
</ul> </ul>

View File

@ -14,7 +14,7 @@
<nav class="contentHeaderNavigation"> <nav class="contentHeaderNavigation">
<ul> <ul>
<li><a href="{link controller='CommandTriggerAdd' application='chat'}{/link}" class="button"><span class="icon icon16 fa-plus"></span> <span>{lang}chat.acp.command.trigger.add{/lang}</span></a></li> <li><a href="{link controller='CommandTriggerAdd' application='chat'}{/link}" class="button">{icon name='plus'} <span>{lang}chat.acp.command.trigger.add{/lang}</span></a></li>
{event name='contentHeaderNavigation'} {event name='contentHeaderNavigation'}
</ul> </ul>
@ -45,8 +45,8 @@
{foreach from=$objects item=trigger} {foreach from=$objects item=trigger}
<tr class="jsTriggerRow"> <tr class="jsTriggerRow">
<td class="columnIcon"> <td class="columnIcon">
<a href="{link controller='CommandTriggerEdit' object=$trigger application='chat'}{/link}" title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip"><span class="icon icon16 fa-pencil"></span></a> <a href="{link controller='CommandTriggerEdit' object=$trigger application='chat'}{/link}" title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip">{icon name='pencil'}</a>
<span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{$trigger->triggerID}" data-confirm-message-html="{lang __encode=true}chat.acp.command.trigger.delete.sure{/lang}"></span> <span class="jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{$trigger->triggerID}" data-confirm-message-html="{lang __encode=true}chat.acp.command.trigger.delete.sure{/lang}">{icon name='xmark'}</span>
{event name='rowButtons'} {event name='rowButtons'}
</td> </td>
@ -75,7 +75,7 @@
<nav class="contentFooterNavigation"> <nav class="contentFooterNavigation">
<ul> <ul>
<li><a href="{link controller='CommandTriggerAdd' application='chat'}{/link}" class="button"><span class="icon icon16 fa-plus"></span> <span>{lang}chat.acp.command.trigger.add{/lang}</span></a></li> <li><a href="{link controller='CommandTriggerAdd' application='chat'}{/link}" class="button">{icon name='plus'} <span>{lang}chat.acp.command.trigger.add{/lang}</span></a></li>
{event name='contentFooterNavigation'} {event name='contentFooterNavigation'}
</ul> </ul>

View File

@ -19,7 +19,7 @@
<nav class="contentHeaderNavigation"> <nav class="contentHeaderNavigation">
<ul> <ul>
<li><a href="{link application='chat' controller='RoomList'}{/link}" class="button"><span class="icon icon16 fa-list"></span> <span>{lang}chat.acp.room.list{/lang}</span></a></li> <li><a href="{link application='chat' controller='RoomList'}{/link}" class="button">{icon name='list'} <span>{lang}chat.acp.room.list{/lang}</span></a></li>
{event name='contentHeaderNavigation'} {event name='contentHeaderNavigation'}
</ul> </ul>

View File

@ -19,7 +19,7 @@
<nav class="contentHeaderNavigation"> <nav class="contentHeaderNavigation">
<ul> <ul>
<li><a href="{link controller='RoomAdd' application='chat'}{/link}" class="button"><span class="icon icon16 fa-plus"></span> <span>{lang}chat.acp.room.add{/lang}</span></a></li> <li><a href="{link controller='RoomAdd' application='chat'}{/link}" class="button">{icon name='plus'} <span>{lang}chat.acp.room.add{/lang}</span></a></li>
{event name='contentHeaderNavigation'} {event name='contentHeaderNavigation'}
</ul> </ul>
@ -42,9 +42,9 @@
<a href="{link controller='RoomEdit' application='chat' object=$room}{/link}">{$room}</a> <a href="{link controller='RoomEdit' application='chat' object=$room}{/link}">{$room}</a>
<span class="statusDisplay sortableButtonContainer"> <span class="statusDisplay sortableButtonContainer">
<span class="icon icon16 fa-arrows sortableNodeHandle"></span> <span class="sortableNodeHandle">{icon name='up-down-left-right'}</span>
<a href="{link controller='RoomEdit' application='chat' object=$room}{/link}" title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip"><span class="icon icon16 fa-pencil"></span></a> <a href="{link controller='RoomEdit' application='chat' object=$room}{/link}" title="{lang}wcf.global.button.edit{/lang}" class="jsTooltip">{icon name='pencil'}</a>
<span class="icon icon16 fa-times jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{$room->roomID}" data-confirm-message-html="{lang __encode=true}chat.acp.room.delete.sure{/lang}"></span> <span class="jsDeleteButton jsTooltip pointer" title="{lang}wcf.global.button.delete{/lang}" data-object-id="{$room->roomID}" data-confirm-message-html="{lang __encode=true}chat.acp.room.delete.sure{/lang}">{icon name='xmark'}</span>
{event name='itemButtons'} {event name='itemButtons'}
</span> </span>
</span> </span>
@ -70,7 +70,7 @@
<nav class="contentFooterNavigation"> <nav class="contentFooterNavigation">
<ul> <ul>
<li><a href="{link controller='RoomAdd' application='chat'}{/link}" class="button"><span class="icon icon16 fa-plus"></span> <span>{lang}chat.acp.room.add{/lang}</span></a></li> <li><a href="{link controller='RoomAdd' application='chat'}{/link}" class="button">{icon name='plus'} <span>{lang}chat.acp.room.add{/lang}</span></a></li>
{event name='contentFooterNavigation'} {event name='contentFooterNavigation'}
</ul> </ul>

View File

@ -141,7 +141,7 @@ require([ 'Bastelstu.be/PromiseWrap/Ajax', 'Bastelstu.be/PromiseWrap/Ui/Confirma
{foreach from=$objects item=suspension} {foreach from=$objects item=suspension}
<tr class="jsSuspensionRow" data-object-id="{$suspension->suspensionID}"> <tr class="jsSuspensionRow" data-object-id="{$suspension->suspensionID}">
<td class="columnIcon"> <td class="columnIcon">
<span class="icon icon16 fa-undo{if !$suspension->isActive()} disabled{else} pointer{/if} jsRevokeButton" title="{lang}chat.acp.suspension.revoke{/lang}" data-confirm-message-html="{lang}chat.acp.suspension.revoke.sure{/lang}"></span> <span class="jsRevokeButton{if !$suspension->isActive()} disabled{else} pointer{/if}" title="{lang}chat.acp.suspension.revoke{/lang}" data-confirm-message-html="{lang}chat.acp.suspension.revoke.sure{/lang}">{icon name='arrow-rotate-left'}</span>
{event name='rowButtons'} {event name='rowButtons'}
</td> </td>

View File

@ -172,7 +172,7 @@ $chatEmbedMaxWidth: 400px;
} }
.chatRoomTopic { .chatRoomTopic {
border-left: 5px solid $wcfContentBorderInner; border-left: 5px solid var(--wcfContentBorderInner);
padding: 5px 0px 5px 10px; padding: 5px 0px 5px 10px;
margin-bottom: 10px; margin-bottom: 10px;
@ -352,7 +352,7 @@ $chatEmbedMaxWidth: 400px;
} }
&.first { &.first {
border-top: 1px solid $wcfContentBorderInner; border-top: 1px solid var(--wcfContentBorderInner);
.chatMessageContainer { .chatMessageContainer {
.chatMessageSide { .chatMessageSide {
@ -406,14 +406,14 @@ $chatEmbedMaxWidth: 400px;
#chatInputContainer { #chatInputContainer {
margin-top: 10px; margin-top: 10px;
margin-bottom: 1.48 * $wcfFontSizeDefault; // 1.48 is the default line height margin-bottom: calc(1.48 * var(--wcfFontSizeDefault)); // 1.48 is the default line height
clear: both; clear: both;
.charCounter { .charCounter {
float: right; float: right;
color: $wcfContentDimmedText; color: var(--wcfContentDimmedText);
margin-bottom: -(1.48 * $wcfFontSizeDefault); margin-bottom: calc(-1.48 * var(--wcfFontSizeDefault));
} }
textarea { textarea {
@ -434,16 +434,16 @@ $chatEmbedMaxWidth: 400px;
} }
} }
.icon16 { fa-icon[size="16"] {
display: none; display: none;
} }
@include screen-lg { @include screen-lg {
.icon16 { fa-icon[size="16"] {
display: inline-block; display: inline-block;
} }
.icon24 { fa-icon[size="24"] {
display: none; display: none;
} }
} }
@ -511,12 +511,12 @@ $chatEmbedMaxWidth: 400px;
&.active, &.active,
&.active:hover { &.active:hover {
color: $wcfButtonTextActive !important; color: var(--wcfButtonTextActive) !important;
} }
&:not(.active) { &:not(.active) {
background-color: transparent; background-color: transparent;
color: $wcfDropdownLink; color: var(--wcfDropdownLink);
} }
border-radius: 0; border-radius: 0;
@ -560,12 +560,12 @@ $chatEmbedMaxWidth: 400px;
flex-direction: column; flex-direction: column;
pointer-events: all; pointer-events: all;
background-color: $wcfContentBackground; background-color: var(--wcfContentBackground);
.modalCloseButton { .modalCloseButton {
border-top: 1px solid $wcfContentBorderInner; border-top: 1px solid var(--wcfContentBorderInner);
background-color: $wcfSidebarBackground; background-color: var(--wcfSidebarBackground);
color: $wcfSidebarLink; color: var(--wcfSidebarLink);
display: block; display: block;
padding: 10px 20px; padding: 10px 20px;
text-align: center; text-align: center;
@ -588,7 +588,7 @@ $chatEmbedMaxWidth: 400px;
> li { > li {
margin-right: 10px; margin-right: 10px;
margin-bottom: 5px; margin-bottom: 5px;
border-right: 1px solid $wcfContentBorderInner; border-right: 1px solid var(--wcfContentBorderInner);
padding-right: 9px; padding-right: 9px;
> a { > a {
@ -608,8 +608,8 @@ $chatEmbedMaxWidth: 400px;
#smileyPickerContainer { #smileyPickerContainer {
> .messageTabMenuContent { > .messageTabMenuContent {
background-color: $wcfContentContainerBackground; background-color: var(--wcfContentContainerBackground);
border: 1px solid $wcfContentBorderInner; border: 1px solid var(--wcfContentBorderInner);
padding: 20px; padding: 20px;
margin-top: 20px; margin-top: 20px;
margin-bottom: 20px; margin-bottom: 20px;

View File

@ -87,8 +87,8 @@ define([
button.closest('.chatMessageBoundary').hidden = true button.closest('.chatMessageBoundary').hidden = true
}) })
const icon = document.createElement('span') const icon = document.createElement('fa-icon')
icon.classList.add('icon', 'icon16', 'fa-times') icon.setIcon('xmark')
button.append(icon) button.append(icon)

View File

@ -29,8 +29,8 @@ define(['WoltLabSuite/Core/Language', '../MessageType'], function (
button.closest('.chatMessageBoundary').hidden = true button.closest('.chatMessageBoundary').hidden = true
}) })
const icon = document.createElement('span') const icon = document.createElement('fa-icon')
icon.classList.add('icon', 'icon16', 'fa-times') icon.setIcon('xmark')
button.append(icon) button.append(icon)

View File

@ -74,7 +74,7 @@ define(['./ToggleButton', 'WoltLabSuite/Core/Ui/Screen'], function (
'small' 'small'
) )
this.shadowToggleButton.innerHTML = this.shadowToggleButton.innerHTML =
'<span class="icon icon24 fa-smile-o"></span>' '<fa-icon size="24" name="face-smile"></fa-icon>'
this.shadowToggleButton.addEventListener( this.shadowToggleButton.addEventListener(
'mousedown', 'mousedown',
this.onClick.bind(this) this.onClick.bind(this)

View File

@ -15,7 +15,7 @@
</authorinformation> </authorinformation>
<requiredpackages> <requiredpackages>
<requiredpackage minversion="5.5.20">com.woltlab.wcf</requiredpackage> <requiredpackage minversion="6.0.7">com.woltlab.wcf</requiredpackage>
<requiredpackage minversion="1.1.0">be.bastelstu.promiseWrap</requiredpackage> <requiredpackage minversion="1.1.0">be.bastelstu.promiseWrap</requiredpackage>
<requiredpackage minversion="0.6.1">be.bastelstu.parserCombinator</requiredpackage> <requiredpackage minversion="0.6.1">be.bastelstu.parserCombinator</requiredpackage>
<requiredpackage minversion="1.6.1">be.bastelstu.bottle</requiredpackage> <requiredpackage minversion="1.6.1">be.bastelstu.bottle</requiredpackage>
@ -23,7 +23,7 @@
</requiredpackages> </requiredpackages>
<excludedpackages> <excludedpackages>
<excludedpackage version="6.0.0 Alpha 1">com.woltlab.wcf</excludedpackage> <excludedpackage version="6.1.0 Alpha 1">com.woltlab.wcf</excludedpackage>
<excludedpackage version="1.700.0 Alpha 1">be.bastelstu.parserCombinator</excludedpackage> <excludedpackage version="1.700.0 Alpha 1">be.bastelstu.parserCombinator</excludedpackage>
</excludedpackages> </excludedpackages>

View File

@ -23,7 +23,7 @@
<script type="x-text/template" data-application="be.bastelstu.chat" data-template-name="DeleteButton"> <script type="x-text/template" data-application="be.bastelstu.chat" data-template-name="DeleteButton">
{/literal} {/literal}
<li> <li>
<a class="button jsTooltip jsDeleteButton" href="#" data-tooltip="{lang}wcf.global.button.delete{/lang}" data-confirm-message-html="{lang __encode=true __literal=true}chat.stream.button.delete.sure{/lang}"><span class="icon icon16 fa-times"></span> <span class="invisible">{lang}wcf.global.button.delete{/lang}</span></a> <a class="button jsTooltip jsDeleteButton" href="#" data-tooltip="{lang}wcf.global.button.delete{/lang}" data-confirm-message-html="{lang __encode=true __literal=true}chat.stream.button.delete.sure{/lang}">{icon name='xmark'} <span class="invisible">{lang}wcf.global.button.delete{/lang}</span></a>
</li> </li>
{literal} {literal}
</script> </script>
@ -32,7 +32,7 @@
<div class="chatMessageContainer inline"> <div class="chatMessageContainer inline">
<div class="chatMessageSide"> <div class="chatMessageSide">
<div class="chatUserAvatar"> <div class="chatUserAvatar">
<span class="icon icon32 fa-info-circle"></span> {icon size=32 name='circle-info'}
</div> </div>
<time><a href="{$message.link}">{$message.formattedTime}</a></time> <time><a href="{$message.link}">{$message.formattedTime}</a></time>
</div> </div>
@ -72,7 +72,7 @@
<div class="chatMessageContainer inline"> <div class="chatMessageContainer inline">
<div class="chatMessageSide"> <div class="chatMessageSide">
<div class="chatUserAvatar"> <div class="chatUserAvatar">
<span class="icon icon32 fa-info-circle"></span> {icon size=32 name='circle-info'}
</div> </div>
<time><a href="{$message.link}">{$message.formattedTime}</a></time> <time><a href="{$message.link}">{$message.formattedTime}</a></time>
</div> </div>
@ -165,11 +165,11 @@
</div> </div>
<span class="chatMessageIcon"> <span class="chatMessageIcon">
{if $__window.RegExp('^shower(?:ing)?$', 'i').test($message.payload.message)} {if $__window.RegExp('^shower(?:ing)?$', 'i').test($message.payload.message)}
<span class="icon icon16 fa-shower"></span> {icon name='shower'}
{else if $__window.RegExp('^bath(?:ing)?$', 'i').test($message.payload.message)} {else if $__window.RegExp('^bath(?:ing)?$', 'i').test($message.payload.message)}
<span class="icon icon16 fa-bath"></span> {icon name='bath'}
{else} {else}
<span class="icon icon16 fa-user-o"></span> {icon name='user'}
{/if} {/if}
</span> </span>
<div class="chatMessage">{lang}chat.messageType.{$message.objectType}{/lang}</div> <div class="chatMessage">{lang}chat.messageType.{$message.objectType}{/lang}</div>
@ -197,7 +197,7 @@
</small> </small>
</div> </div>
<span class="chatMessageIcon"> <span class="chatMessageIcon">
<span class="icon icon16 fa-user"></span> {icon name='user' type='solid'}
</span> </span>
<div class="chatMessage">{lang}chat.messageType.{$message.objectType}{/lang}</div> <div class="chatMessage">{lang}chat.messageType.{$message.objectType}{/lang}</div>
</div> </div>
@ -257,9 +257,9 @@
</div> </div>
<span class="chatMessageIcon"> <span class="chatMessageIcon">
{if $message.objectType === 'be.bastelstu.chat.messageType.join'} {if $message.objectType === 'be.bastelstu.chat.messageType.join'}
<span class="icon icon16 fa-sign-in"></span> {icon name='right-to-bracket'}
{else} {else}
<span class="icon icon16 fa-sign-out"></span> {icon name='right-from-bracket'}
{/if} {/if}
</span> </span>
<div class="chatMessage">{lang}chat.messageType.{$message.objectType}{/lang}</div> <div class="chatMessage">{lang}chat.messageType.{$message.objectType}{/lang}</div>
@ -289,7 +289,7 @@
</small> </small>
</div> </div>
<span class="chatMessageIcon"> <span class="chatMessageIcon">
<span class="icon icon16 fa-user-times"></span> {icon name='user-xmark'}
</span> </span>
<div class="chatMessage">{lang}chat.suspension.message.new.{$message.payload.suspension.objectType}{/lang}</div> <div class="chatMessage">{lang}chat.suspension.message.new.{$message.payload.suspension.objectType}{/lang}</div>
</div> </div>
@ -316,7 +316,7 @@
</small> </small>
</div> </div>
<span class="chatMessageIcon"> <span class="chatMessageIcon">
<span class="icon icon16 fa-user-times"></span> {icon name='user-xmark'}
</span> </span>
<div class="chatMessage">{lang}chat.suspension.message.revoke.{$message.payload.objectType}{/lang}</div> <div class="chatMessage">{lang}chat.suspension.message.revoke.{$message.payload.objectType}{/lang}</div>
</div> </div>
@ -338,7 +338,7 @@
{@$author.coloredUsername} {@$author.coloredUsername}
</a> </a>
</span> </span>
<span class="icon icon16 fa-chevron-right" data-insert-whisper="{if $message.isOwnMessage()}{$message.payload.recipientName}{else}{$author.username}{/if}"></span> <span data-insert-whisper="{if $message.isOwnMessage()}{$message.payload.recipientName}{else}{$author.username}{/if}">{icon name='chevron-right'}</span>
<span class="recipientUsername">{$message.payload.recipientName}</span> <span class="recipientUsername">{$message.payload.recipientName}</span>
<small class="separatorLeft"> <small class="separatorLeft">
<time><a href="{$message.link}">{$message.formattedTime}</a></time> <time><a href="{$message.link}">{$message.formattedTime}</a></time>
@ -359,7 +359,7 @@
</div> </div>
<div class="chatMessageContent"> <div class="chatMessageContent">
<div class="chatMessageHeader"> <div class="chatMessageHeader">
<span class="username"><span class="icon icon16 fa-bullhorn jsTooltip" title="{lang}chat.messageType.be.bastelstu.chat.messageType.broadcast.tooltip{/lang}"></span> <span class="username"><span class="jsTooltip" title="{lang}chat.messageType.be.bastelstu.chat.messageType.broadcast.tooltip{/lang}">{icon name='bullhorn'}</span>
<a href="{$author.link}" class="jsUserActionDropdown" data-user-id="{$author.userID}"> <a href="{$author.link}" class="jsUserActionDropdown" data-user-id="{$author.userID}">
{@$author.coloredUsername} {@$author.coloredUsername}
</a> </a>
@ -391,7 +391,7 @@
<div class="chatMessageContent"> <div class="chatMessageContent">
<div class="chatMessageHeader"> <div class="chatMessageHeader">
<span class="username"> <span class="username">
<span class="icon icon16 fa-star-o jsTooltip" title="{lang}chat.messageType.be.bastelstu.chat.messageType.team.tooltip{/lang}"></span> <span class="jsTooltip" title="{lang}chat.messageType.be.bastelstu.chat.messageType.team.tooltip{/lang}">{icon name='star'}</span>
<a href="{$author.link}" class="jsUserActionDropdown" data-user-id="{$author.userID}"> <a href="{$author.link}" class="jsUserActionDropdown" data-user-id="{$author.userID}">
{@$author.coloredUsername} {@$author.coloredUsername}
</a> </a>
@ -510,7 +510,7 @@
</small> </small>
</div> </div>
<span class="chatMessageIcon"> <span class="chatMessageIcon">
<span class="icon icon16 fa-trash"></span> {icon name='trash-can' type='solid'}
</span> </span>
<div class="chatMessage"> <div class="chatMessage">
{lang}chat.messageType.be.bastelstu.chat.messageType.tombstone.message{/lang} {lang}chat.messageType.be.bastelstu.chat.messageType.tombstone.message{/lang}

View File

@ -1,11 +1,11 @@
<nav id="chatQuickSettingsNavigation"> <nav id="chatQuickSettingsNavigation">
<ul class="buttonGroup jsOnly"> <ul class="buttonGroup jsOnly">
{if MODULE_SMILEY && !$smileyCategories|empty}<li><a class="button" href="#" data-module="Bastelstu.be/Chat/Ui/Settings/SmiliesButton"><span class="icon icon16 fa-smile-o"></span> <span>{lang}wcf.message.smilies{/lang}</span></a></li>{/if} {if MODULE_SMILEY && !$smileyCategories|empty}<li><a class="button" href="#" data-module="Bastelstu.be/Chat/Ui/Settings/SmiliesButton">{icon name='face-smile'} <span>{lang}wcf.message.smilies{/lang}</span></a></li>{/if}
<li><a class="button" href="#" data-module="Bastelstu.be/Chat/Ui/Settings/FullscreenButton"><span class="icon icon16 fa-arrows-alt"></span> <span>{lang}chat.room.button.fullscreen{/lang}</span></a></li> <li><a class="button" href="#" data-module="Bastelstu.be/Chat/Ui/Settings/FullscreenButton">{icon name='maximize'} <span>{lang}chat.room.button.fullscreen{/lang}</span></a></li>
<li><a class="button" href="#" data-module="Bastelstu.be/Chat/Ui/Settings/NotificationsButton"><span class="icon icon16 fa-bell-o"></span> <span>{lang}chat.room.button.notifications{/lang}</span></a></li> <li><a class="button" href="#" data-module="Bastelstu.be/Chat/Ui/Settings/NotificationsButton">{icon name='bell'} <span>{lang}chat.room.button.notifications{/lang}</span></a></li>
<li><a class="button" href="#" data-module="Bastelstu.be/Chat/Ui/Settings/AutoscrollButton"><span class="icon icon16 fa-arrow-down"></span> <span>{lang}chat.room.button.autoscroll{/lang}</span></a></li> <li><a class="button" href="#" data-module="Bastelstu.be/Chat/Ui/Settings/AutoscrollButton">{icon name='arrow-down'} <span>{lang}chat.room.button.autoscroll{/lang}</span></a></li>
<li hidden><a class="button" href="#" data-module="Bastelstu.be/Chat/Ui/Settings/UserListButton"><span class="icon icon16 fa-users"></span> <span>{lang}chat.room.button.userList{/lang}</span></a></li> <li hidden><a class="button" href="#" data-module="Bastelstu.be/Chat/Ui/Settings/UserListButton">{icon name='users'} <span>{lang}chat.room.button.userList{/lang}</span></a></li>
<li hidden><a class="button" href="#" data-module="Bastelstu.be/Chat/Ui/Settings/RoomListButton"><span class="icon icon16 fa-comments"></span> <span>{lang}chat.room.button.roomList{/lang}</span></a></li> <li hidden><a class="button" href="#" data-module="Bastelstu.be/Chat/Ui/Settings/RoomListButton">{icon name='comments' type='solid'} <span>{lang}chat.room.button.roomList{/lang}</span></a></li>
{event name='buttons'} {event name='buttons'}
</ul> </ul>
</nav> </nav>

View File

@ -13,12 +13,12 @@
{capture assign='contentInteractionButtons'} {capture assign='contentInteractionButtons'}
{if $room->canSeeLog()} {if $room->canSeeLog()}
<a href="{link controller='Log' application='chat' object=$room}{/link}" title="{lang}chat.log.title{/lang}" class="contentInteractionButton button small"> <a href="{link controller='Log' application='chat' object=$room}{/link}" title="{lang}chat.log.title{/lang}" class="contentInteractionButton button small">
<span class="icon icon16 fa-tasks"></span> <span>{lang}chat.log.title{/lang}</span> {icon name='bars-progress'} <span>{lang}chat.log.title{/lang}</span>
</a> </a>
{/if} {/if}
<a href="{link}{/link}" title="{lang}chat.room.button.leave{/lang}" class="contentInteractionButton button small chatLeaveButton"> <a href="{link}{/link}" title="{lang}chat.room.button.leave{/lang}" class="contentInteractionButton button small chatLeaveButton">
<span class="icon icon16 fa-power-off"></span> <span>{lang}chat.room.button.leave{/lang}</span> {icon name='power-off'} <span>{lang}chat.room.button.leave{/lang}</span>
</a> </a>
{/capture} {/capture}
@ -28,7 +28,7 @@
{if $room->getTopic()} {if $room->getTopic()}
<div class="chatRoomTopic"> <div class="chatRoomTopic">
<span class="icon icon16 fa-times pointer jsDismissRoomTopicButton"></span> <span class="pointer jsDismissRoomTopicButton">{icon name='xmark'}</span>
{@$room->getTopic()} {@$room->getTopic()}
</div> </div>
{/if} {/if}
@ -54,15 +54,15 @@
{if $__wcf->getSession()->getPermission('user.chat.canAttach')} {if $__wcf->getSession()->getPermission('user.chat.canAttach')}
<div class="chatAttachButton"> <div class="chatAttachButton">
<button id="chatAttachmentUploadButton" class="button small" title="{lang}wcf.attachment.attachments{/lang}"> <button id="chatAttachmentUploadButton" class="button small" title="{lang}wcf.attachment.attachments{/lang}">
<span class="icon icon16 fa-paperclip"></span> {icon name='paperclip'}
<span class="icon icon24 fa-paperclip"></span> {icon size=24 name='paperclip'}
</button> </button>
</div> </div>
{/if} {/if}
<div class="chatInputWrapper"> <div class="chatInputWrapper">
<textarea maxlength="{CHAT_MAX_LENGTH}" class="long" rows="1"></textarea> <textarea maxlength="{CHAT_MAX_LENGTH}" class="long" rows="1"></textarea>
<span id="chatQuickSettings"> <span id="chatQuickSettings">
<span class="icon icon24 fa-ellipsis-v"></span> {icon size=24 name='ellipsis-vertical'}
</span> </span>
</div> </div>
</div> </div>

View File

@ -11,10 +11,10 @@
<div class="iconColumn"> <div class="iconColumn">
{if $user.away !== null} {if $user.away !== null}
<span class="icon icon24 fa-clock-o jsTooltip awayIcon" title="{lang}chat.room.userList.away{/lang}"></span> <span class="jsTooltip awayIcon" title="{lang}chat.room.userList.away{/lang}">{icon size=24 name='clock'}</span>
{/if} {/if}
{if !$user.permissions.canWritePublicly} {if !$user.permissions.canWritePublicly}
<span class="icon icon24 fa-remove jsTooltip" title="{lang}chat.room.userList.mute{/lang}"></span> <span class="jsTooltip" title="{lang}chat.room.userList.mute{/lang}">{icon size=24 name='xmark'}</span>
{/if} {/if}
{/literal} {/literal}
{event name='icons'} {event name='icons'}

View File

@ -1,3 +1,3 @@
{ldelim}if $user.permissions.canMute || $user.permissions.canBan} {ldelim}if $user.permissions.canMute || $user.permissions.canBan}
<span class="icon icon24 fa-legal jsTooltip" title="{lang}chat.room.userList.moderator{/lang}"></span> <span class="jsTooltip" title="{lang}chat.room.userList.moderator{/lang}">{icon size=24 name='gavel'}</span>
{ldelim}/if} {ldelim}/if}