*}{if $field->getValue()} checked{/if}{*
*}{foreach from=$field->getFieldAttributes() key='attributeName' item='attributeValue'} {$attributeName}="{$attributeValue}"{/foreach}{*
*}>
- <label for="{@$field->getPrefixedId()}" class="green"><span class="icon icon16 fa-check"></span> {lang}wcf.global.form.boolean.yes{/lang}</label>
+ <label for="{@$field->getPrefixedId()}" class="green">{icon size=16 name='check' type='solid'} {lang}wcf.global.form.boolean.yes{/lang}</label>
</li>
<li>
<input type="radio" {*
*}{if !$field->getValue()} checked{/if}{*
*}{foreach from=$field->getFieldAttributes() key='attributeName' item='attributeValue'} {$attributeName}="{$attributeValue}"{/foreach}{*
*}>
- <label for="{@$field->getPrefixedId()}_no" class="red"><span class="icon icon16 fa-times"></span> {lang}wcf.global.form.boolean.no{/lang}</label>
+ <label for="{@$field->getPrefixedId()}_no" class="red">{icon size=16 name='times' type='solid'} {lang}wcf.global.form.boolean.no{/lang}</label>
</li>
</ol>
<{if $box->showHeader}section{else}div{/if} class="box{if $box->getImage()} boxWithImage{/if}{if $box->showEditButton()} boxWithEditButton{/if}{if $box->cssClassName} {$box->cssClassName}{/if}" data-box-identifier="{@$box->identifier}">
{if $box->showEditButton()}
- <a href="{link controller='BoxEdit' id=$box->boxID isACP=true}{/link}" class="boxEditButton jsTooltip" title="{lang}wcf.page.box.edit{/lang}"><span class="icon icon16 fa-pencil-square-o"></span></a>
+ <a href="{link controller='BoxEdit' id=$box->boxID isACP=true}{/link}" class="boxEditButton jsTooltip" title="{lang}wcf.page.box.edit{/lang}">{icon size=16 name='pen-to-square'}</a>
{/if}
{if $box->getImage()}
<div class="boxImage">
{if $__wcf->session->getVar('__3rdPartyProvider') === 'github' && $__wcf->session->getVar('__oauthUser')}
<label><input type="checkbox" name="githubConnect" value="1"{if $githubConnect} checked{/if}> {lang}wcf.user.3rdparty.github.connect{/lang}</label>
{else}
- <a href="{link controller='GithubAuth'}{/link}" class="thirdPartyLoginButton githubLoginButton button"><span class="icon icon24 fa-github"></span> <span>{lang}wcf.user.3rdparty.github.connect{/lang}</span></a>
+ <a href="{link controller='GithubAuth'}{/link}" class="thirdPartyLoginButton githubLoginButton button">{icon size=24 name='github' type='brand'} <span>{lang}wcf.user.3rdparty.github.connect{/lang}</span></a>
{/if}
</dd>
</dl>
{if $__wcf->session->getVar('__3rdPartyProvider') === 'twitter' && $__wcf->session->getVar('__oauthUser')}
<label><input type="checkbox" name="twitterConnect" value="1"{if $twitterConnect} checked{/if}> {lang}wcf.user.3rdparty.twitter.connect{/lang}</label>
{else}
- <a href="{link controller='TwitterAuth'}{/link}" class="thirdPartyLoginButton twitterLoginButton button"><span class="icon icon24 fa-twitter"></span> <span>{lang}wcf.user.3rdparty.twitter.connect{/lang}</span></a>
+ <a href="{link controller='TwitterAuth'}{/link}" class="thirdPartyLoginButton twitterLoginButton button">{icon size=24 name='twitter' type='brand'} <span>{lang}wcf.user.3rdparty.twitter.connect{/lang}</span></a>
{/if}
</dd>
</dl>
{if $__wcf->session->getVar('__3rdPartyProvider') === 'facebook' && $__wcf->session->getVar('__oauthUser')}
<label><input type="checkbox" name="facebookConnect" value="1"{if $facebookConnect} checked{/if}> {lang}wcf.user.3rdparty.facebook.connect{/lang}</label>
{else}
- <a href="{link controller='FacebookAuth'}{/link}" class="thirdPartyLoginButton facebookLoginButton button"><span class="icon icon24 fa-facebook"></span> <span>{lang}wcf.user.3rdparty.facebook.connect{/lang}</span></a>
+ <a href="{link controller='FacebookAuth'}{/link}" class="thirdPartyLoginButton facebookLoginButton button">{icon size=24 name='facebook-f' type='brand'} <span>{lang}wcf.user.3rdparty.facebook.connect{/lang}</span></a>
{/if}
</dd>
</dl>
{if $__wcf->session->getVar('__3rdPartyProvider') === 'google' && $__wcf->session->getVar('__oauthUser')}
<label><input type="checkbox" name="googleConnect" value="1"{if $googleConnect} checked{/if}> {lang}wcf.user.3rdparty.google.connect{/lang}</label>
{else}
- <a href="{link controller='GoogleAuth'}{/link}" class="thirdPartyLoginButton googleLoginButton button"><span class="icon icon24 fa-google"></span> <span>{lang}wcf.user.3rdparty.google.connect{/lang}</span></a>
+ <a href="{link controller='GoogleAuth'}{/link}" class="thirdPartyLoginButton googleLoginButton button">{icon size=24 name='google' type='brand'} <span>{lang}wcf.user.3rdparty.google.connect{/lang}</span></a>
{/if}
</dd>
</dl>
<ol role="group" aria-label="{lang}wcf.acl.allowAll{/lang}" class="flexibleButtonGroup">
<li>
<input type="radio" id="{@$__aclSimplePrefix}aclAllowAll" name="{@$__aclInputName}[allowAll]" value="1"{if $aclValues[allowAll]} checked{/if}>
- <label for="{@$__aclSimplePrefix}aclAllowAll" class="green"><span class="icon icon16 fa-check"></span> {lang}wcf.acp.option.type.boolean.yes{/lang}</label>
+ <label for="{@$__aclSimplePrefix}aclAllowAll" class="green">{icon size=16 name='check' type='solid'} {lang}wcf.acp.option.type.boolean.yes{/lang}</label>
</li>
<li>
<input type="radio" id="{@$__aclSimplePrefix}aclAllowAll_no" name="{@$__aclInputName}[allowAll]" value="0"{if !$aclValues[allowAll]} checked{/if}>
- <label for="{@$__aclSimplePrefix}aclAllowAll_no" class="red"><span class="icon icon16 fa-times"></span> {lang}wcf.acp.option.type.boolean.no{/lang}</label>
+ <label for="{@$__aclSimplePrefix}aclAllowAll_no" class="red">{icon size=16 name='times' type='solid'} {lang}wcf.acp.option.type.boolean.no{/lang}</label>
</li>
</ol>
</dd>
<ol class="flexibleButtonGroup">
<li>
<input type="radio" id="{@$__aclSimplePrefix}invertPermissions" name="{@$__aclSimplePrefix}invertPermissions" value="1"{if $invertPermissions} checked{/if}>
- <label for="{@$__aclSimplePrefix}invertPermissions" class="green"><span class="icon icon16 fa-check"></span> {lang}wcf.acp.option.type.boolean.yes{/lang}</label>
+ <label for="{@$__aclSimplePrefix}invertPermissions" class="green">{icon size=16 name='check' type='solid'} {lang}wcf.acp.option.type.boolean.yes{/lang}</label>
</li>
<li>
<input type="radio" id="{@$__aclSimplePrefix}invertPermissions_no" name="{@$__aclSimplePrefix}invertPermissions" value="0"{if !$invertPermissions} checked{/if}>
- <label for="{@$__aclSimplePrefix}invertPermissions_no" class="red"><span class="icon icon16 fa-times"></span> {lang}wcf.acp.option.type.boolean.no{/lang}</label>
+ <label for="{@$__aclSimplePrefix}invertPermissions_no" class="red">{icon size=16 name='times' type='solid'} {lang}wcf.acp.option.type.boolean.no{/lang}</label>
</li>
</ol>
<small>{lang}wcf.acl.access.invertPermissions.description{/lang}</small>
<ul id="{@$__aclSimplePrefix}aclAccessList" class="aclList containerList">
{foreach from=$aclValues[group] item=aclGroup}
<li>
- <span class="icon icon16 fa-users"></span>
+ {icon size=16 name='users' type='solid'}
<span class="aclLabel">{$aclGroup}</span>
<span class="icon icon16 fa-times pointer jsTooltip" title="{lang}wcf.global.button.delete{/lang}"></span>
<input type="hidden" name="{@$__aclInputName}[group][]" value="{@$aclGroup->groupID}">
{/foreach}
{foreach from=$aclValues[user] item=aclUser}
<li>
- <span class="icon icon16 fa-user"></span>
+ {icon size=16 name='user' type='solid'}
<span class="aclLabel">{$aclUser}</span>
<span class="icon icon16 fa-times pointer jsTooltip" title="{lang}wcf.global.button.delete{/lang}"></span>
<input type="hidden" name="{@$__aclInputName}[user][]" value="{@$aclUser->userID}">
<ul class="inlineList contentHeaderMetaData articleMetaData">
{if $article->hasLabels()}
<li>
- <span class="icon icon16 fa-tags"></span>
+ {icon size=16 name='tags' type='solid'}
<ul class="labelList">
{foreach from=$article->getLabels() item=label}
<li>{@$label->render()}</li>
{/if}
<li itemprop="author" itemscope itemtype="http://schema.org/Person">
- <span class="icon icon16 fa-user"></span>
+ {icon size=16 name='user' type='solid'}
{if $article->userID}
<a href="{$article->getUserProfile()->getLink()}" class="userLink" data-object-id="{@$article->userID}" itemprop="url">
<span itemprop="name">{@$article->getUserProfile()->getFormattedUsername()}</span>
</li>
<li>
- <span class="icon icon16 fa-clock-o"></span>
+ {icon size=16 name='clock'}
<a href="{$article->getLink()}">{@$article->time|time}</a>
<meta itemprop="datePublished" content="{@$article->time|date:'c'}">
<meta itemprop="dateModified" content="{@$article->time|date:'c'}">
{if $article->getDiscussionProvider()->getDiscussionCountPhrase()}
<li itemprop="interactionStatistic" itemscope itemtype="http://schema.org/InteractionCounter">
- <span class="icon icon16 fa-comments"></span>
+ {icon size=16 name='comments' type='solid'}
{if $article->getDiscussionProvider()->getDiscussionLink()}<a href="{$article->getDiscussionProvider()->getDiscussionLink()}">{else}<span>{/if}
{$article->getDiscussionProvider()->getDiscussionCountPhrase()}
{if $article->getDiscussionProvider()->getDiscussionLink()}</a>{else}</span>{/if}
{/if}
<li>
- <span class="icon icon16 fa-eye"></span>
+ {icon size=16 name='eye'}
{lang}wcf.article.articleViews{/lang}
</li>
<nav class="contentHeaderNavigation">
<ul>
{content}
- {if $article->canEdit()}<li><a href="{link controller='ArticleEdit' id=$article->articleID}{/link}" class="button buttonPrimary"><span class="icon icon16 fa-pencil"></span> <span>{lang}wcf.acp.article.edit{/lang}</span></a></li>{/if}
+ {if $article->canEdit()}<li><a href="{link controller='ArticleEdit' id=$article->articleID}{/link}" class="button buttonPrimary">{icon size=16 name='pencil' type='solid'} <span>{lang}wcf.acp.article.edit{/lang}</span></a></li>{/if}
{event name='contentHeaderNavigation'}
{/content}
</ul>
<ul class="articleLikeButtons buttonGroup buttonList smallButtons">
<li>
<a href="{$articleContent->getLink()}" class="button wsShareButton jsOnly" data-link-title="{$articleContent->getTitle()}">
- <span class="icon icon16 fa-share-alt"></span> <span>{lang}wcf.message.share{/lang}</span>
+ {icon size=16 name='share-alt' type='solid'} <span>{lang}wcf.message.share{/lang}</span>
</a>
</li>
{if $__wcf->session->getPermission('user.profile.canReportContent')}
- <li class="jsReportArticle jsOnly" data-object-id="{@$articleContent->articleID}"><a href="#" title="{lang}wcf.moderation.report.reportContent{/lang}" class="button jsTooltip"><span class="icon icon16 fa-exclamation-triangle"></span> <span class="invisible">{lang}wcf.moderation.report.reportContent{/lang}</span></a></li>
+ <li class="jsReportArticle jsOnly" data-object-id="{@$articleContent->articleID}"><a href="#" title="{lang}wcf.moderation.report.reportContent{/lang}" class="button jsTooltip">{icon size=16 name='exclamation-triangle' type='solid'} <span class="invisible">{lang}wcf.moderation.report.reportContent{/lang}</span></a></li>
{/if}
{if MODULE_LIKE && ARTICLE_ENABLE_LIKE && $__wcf->session->getPermission('user.like.canLike') && $article->userID != $__wcf->user->userID}
- <li class="jsOnly"><span class="button reactButton{if $articleLikeData[$article->articleID]|isset && $articleLikeData[$article->articleID]->reactionTypeID} active{/if}" title="{lang}wcf.reactions.react{/lang}" data-reaction-type-id="{if $articleLikeData[$article->articleID]|isset && $articleLikeData[$article->articleID]->reactionTypeID}{$articleLikeData[$article->articleID]->reactionTypeID}{else}0{/if}"><span class="icon icon16 fa-smile-o"></span> <span class="invisible">{lang}wcf.reactions.react{/lang}</span></span></li>
+ <li class="jsOnly"><span class="button reactButton{if $articleLikeData[$article->articleID]|isset && $articleLikeData[$article->articleID]->reactionTypeID} active{/if}" title="{lang}wcf.reactions.react{/lang}" data-reaction-type-id="{if $articleLikeData[$article->articleID]|isset && $articleLikeData[$article->articleID]->reactionTypeID}{$articleLikeData[$article->articleID]->reactionTypeID}{else}0{/if}">{icon size=16 name='face-smile'} <span class="invisible">{lang}wcf.reactions.react{/lang}</span></span></li>
{/if}
</ul>
</div>
<ul>
{content}
{if $action == 'edit'}
- <li><a href="{$article->getLink()}" class="button buttonPrimary"><span class="icon icon16 fa-search"></span> <span>{lang}wcf.acp.article.button.viewArticle{/lang}</span></a></li>
+ <li><a href="{$article->getLink()}" class="button buttonPrimary">{icon size=16 name='search' type='solid'} <span>{lang}wcf.acp.article.button.viewArticle{/lang}</span></a></li>
{/if}
{event name='contentHeaderNavigation'}
{/content}
{capture assign='contentInteractionButtons'}
{if $action == 'edit'}
{if $article->canDelete()}
- <a href="#" class="contentInteractionButton button small jsButtonRestore" data-confirm-message-html="{lang __encode=true isArticleEdit=true}wcf.acp.article.restore.confirmMessage{/lang}"{if !$article->isDeleted} style="display: none"{/if}><span class="icon icon16 fa-undo"></span> <span>{lang}wcf.global.button.restore{/lang}</span></a>
- <a href="#" class="contentInteractionButton button small jsButtonDelete" data-confirm-message-html="{lang __encode=true isArticleEdit=true}wcf.acp.article.delete.confirmMessage{/lang}"{if !$article->isDeleted} style="display: none"{/if}><span class="icon icon16 fa-times"></span> <span>{lang}wcf.global.button.delete{/lang}</span></a>
- <a href="#" class="contentInteractionButton button small jsButtonTrash" data-confirm-message-html="{lang __encode=true isArticleEdit=true}wcf.acp.article.trash.confirmMessage{/lang}"{if $article->isDeleted} style="display: none"{/if}><span class="icon icon16 fa-times"></span> <span>{lang}wcf.global.button.trash{/lang}</span></a>
+ <a href="#" class="contentInteractionButton button small jsButtonRestore" data-confirm-message-html="{lang __encode=true isArticleEdit=true}wcf.acp.article.restore.confirmMessage{/lang}"{if !$article->isDeleted} style="display: none"{/if}>{icon size=16 name='undo' type='solid'} <span>{lang}wcf.global.button.restore{/lang}</span></a>
+ <a href="#" class="contentInteractionButton button small jsButtonDelete" data-confirm-message-html="{lang __encode=true isArticleEdit=true}wcf.acp.article.delete.confirmMessage{/lang}"{if !$article->isDeleted} style="display: none"{/if}>{icon size=16 name='times' type='solid'} <span>{lang}wcf.global.button.delete{/lang}</span></a>
+ <a href="#" class="contentInteractionButton button small jsButtonTrash" data-confirm-message-html="{lang __encode=true isArticleEdit=true}wcf.acp.article.trash.confirmMessage{/lang}"{if $article->isDeleted} style="display: none"{/if}>{icon size=16 name='times' type='solid'} <span>{lang}wcf.global.button.trash{/lang}</span></a>
{/if}
{if $languages|count > 1 || $article->isMultilingual}
- <a href="#" class="contentInteractionButton button small jsButtonToggleI18n"><span class="icon icon16 fa-language"></span> <span>{lang}wcf.acp.article.button.toggleI18n{/lang}</span></a>
+ <a href="#" class="contentInteractionButton button small jsButtonToggleI18n">{icon size=16 name='language' type='solid'} <span>{lang}wcf.acp.article.button.toggleI18n{/lang}</span></a>
{/if}
{/if}
{/capture}
{capture assign='contentHeaderNavigation'}
{if $__wcf->getSession()->getPermission('admin.content.article.canManageArticle') || $__wcf->getSession()->getPermission('admin.content.article.canContributeArticle')}
{if $availableLanguages|count > 1}
- <li><a href="#" class="button buttonPrimary jsButtonArticleAdd"><span class="icon icon16 fa-plus"></span> <span>{lang}wcf.acp.article.add{/lang}</span></a></li>
+ <li><a href="#" class="button buttonPrimary jsButtonArticleAdd">{icon size=16 name='plus' type='solid'} <span>{lang}wcf.acp.article.add{/lang}</span></a></li>
{else}
- <li><a href="{link controller='ArticleAdd'}{/link}" class="button buttonPrimary"><span class="icon icon16 fa-plus"></span> <span>{lang}wcf.acp.article.add{/lang}</span></a></li>
+ <li><a href="{link controller='ArticleAdd'}{/link}" class="button buttonPrimary">{icon size=16 name='plus' type='solid'} <span>{lang}wcf.acp.article.add{/lang}</span></a></li>
{/if}
{/if}
{/capture}
</ul>
</div>
{if ARTICLE_ENABLE_VISIT_TRACKING}
- <a href="#" class="markAllAsReadButton contentInteractionButton button small jsOnly"><span class="icon icon16 fa-check"></span> <span>{lang}wcf.global.button.markAllAsRead{/lang}</span></a>
+ <a href="#" class="markAllAsReadButton contentInteractionButton button small jsOnly">{icon size=16 name='check' type='solid'} <span>{lang}wcf.global.button.markAllAsRead{/lang}</span></a>
{/if}
{/capture}
{/if}
{if $article->getDiscussionProvider()->getDiscussionCountPhrase()}{* empty phrase indicates that comments are disabled *}
<div class="contentItemMetaIcon">
- <span class="icon icon16 fa-comments"></span>
+ {icon size=16 name='comments' type='solid'}
<span aria-label="{$article->getDiscussionProvider()->getDiscussionCountPhrase()}">
{$article->getDiscussionProvider()->getDiscussionCount()}
</span>
<ul class="attachmentMetaData inlineList">
<li>
- <span class="icon icon16 fa-file-text-o"></span>
+ {icon size=16 name='file-lines'}
{@$attachment->filesize|filesize}
</li>
<li>
- <span class="icon icon16 fa-expand"></span>
+ {icon size=16 name='up-right-and-down-left-from-center' type='solid'}
{#$attachment->width}×{#$attachment->height}
</li>
<li>
- <span class="icon icon16 fa-eye"></span>
+ {icon size=16 name='eye'}
{#$attachment->downloads}
</li>
</ul>
<ol class="flexibleButtonGroup optionTypeBoolean">
<li>
<input type="radio" id="{$option->optionName}"{if $value == 1} checked{/if} name="values[{$option->optionName}]" value="1"{if $disableOptions || $enableOptions} class="jsEnablesOptions" data-is-boolean="true" data-disable-options="[ {@$disableOptions}]" data-enable-options="[ {@$enableOptions}]"{/if}>
- <label for="{$option->optionName}" class="green"><span class="icon icon16 fa-check"></span> {lang}wcf.acp.option.type.boolean.yes{/lang}</label>
+ <label for="{$option->optionName}" class="green">{icon size=16 name='check' type='solid'} {lang}wcf.acp.option.type.boolean.yes{/lang}</label>
</li>
<li>
<input type="radio" id="{$option->optionName}_no"{if $value == 0} checked{/if} name="values[{$option->optionName}]" value="0"{if $disableOptions || $enableOptions} class="jsEnablesOptions" data-is-boolean="true" data-disable-options="[ {@$disableOptions}]" data-enable-options="[ {@$enableOptions}]"{/if}>
- <label for="{$option->optionName}_no" class="red"><span class="icon icon16 fa-times"></span> {lang}wcf.acp.option.type.boolean.no{/lang}</label>
+ <label for="{$option->optionName}_no" class="red">{icon size=16 name='times' type='solid'} {lang}wcf.acp.option.type.boolean.no{/lang}</label>
</li>
</ol>
<ol class="flexibleButtonGroup optionTypeBoolean">
<li>
<input type="radio" id="{$option->optionName}"{if $value == 1} checked{/if} name="values[{$option->optionName}]" value="1"{if $disableOptions || $enableOptions} class="jsEnablesOptions" data-is-boolean="true" data-disable-options="[ {@$disableOptions}]" data-enable-options="[ {@$enableOptions}]"{/if}{if !$searchOption} disabled{/if}>
- <label for="{$option->optionName}" class="green"><span class="icon icon16 fa-check"></span> {lang}wcf.acp.option.type.boolean.yes{/lang}</label>
+ <label for="{$option->optionName}" class="green">{icon size=16 name='check' type='solid'} {lang}wcf.acp.option.type.boolean.yes{/lang}</label>
</li>
<li>
<input type="radio" id="{$option->optionName}_no"{if $value == 0} checked{/if} name="values[{$option->optionName}]" value="0"{if $disableOptions || $enableOptions} class="jsEnablesOptions" data-is-boolean="true" data-disable-options="[ {@$disableOptions}]" data-enable-options="[ {@$enableOptions}]"{/if}{if !$searchOption} disabled{/if}>
- <label for="{$option->optionName}_no" class="red"><span class="icon icon16 fa-times"></span> {lang}wcf.acp.option.type.boolean.no{/lang}</label>
+ <label for="{$option->optionName}_no" class="red">{icon size=16 name='times' type='solid'} {lang}wcf.acp.option.type.boolean.no{/lang}</label>
</li>
</ol>
<h3 class="articleListTitle">{$boxArticle->getTitle()}</h3>
<ul class="inlineList articleListMetaData">
<li>
- <span class="icon icon16 fa-clock-o"></span>
+ {icon size=16 name='clock'}
{@$boxArticle->time|time}
</li>
<li>
- <span class="icon icon16 fa-comments"></span>
+ {icon size=16 name='comments' type='solid'}
{$boxArticle->getDiscussionProvider()->getDiscussionCountPhrase()}
</li>
</ul>
{if $__wcf->getSession()->getPermission('admin.content.article.canManageArticle')}
{capture assign='contentHeaderNavigation'}
{if $availableLanguages|count > 1}
- <li><a href="#" class="button buttonPrimary jsButtonArticleAdd"><span class="icon icon16 fa-plus"></span> <span>{lang}wcf.acp.article.add{/lang}</span></a></li>
+ <li><a href="#" class="button buttonPrimary jsButtonArticleAdd">{icon size=16 name='plus' type='solid'} <span>{lang}wcf.acp.article.add{/lang}</span></a></li>
{else}
- <li><a href="{link controller='ArticleAdd'}categoryID={@$category->categoryID}{/link}" class="button buttonPrimary"><span class="icon icon16 fa-plus"></span> <span>{lang}wcf.acp.article.add{/lang}</span></a></li>
+ <li><a href="{link controller='ArticleAdd'}categoryID={@$category->categoryID}{/link}" class="button buttonPrimary">{icon size=16 name='plus' type='solid'} <span>{lang}wcf.acp.article.add{/lang}</span></a></li>
{/if}
{/capture}
{/if}
<a href="#" class="contentInteractionButton jsSubscribeButton jsOnly button small{if $category->isSubscribed()} active{/if}" data-object-type="com.woltlab.wcf.article.category" data-object-id="{@$category->categoryID}"><span class="icon icon16 fa-bookmark{if !$category->isSubscribed()}-o{/if}"></span> <span>{lang}wcf.user.objectWatch.button.subscribe{/lang}</span></a>
{/if}
{if ARTICLE_ENABLE_VISIT_TRACKING}
- <a href="#" class="markAllAsReadButton contentInteractionButton button small jsOnly"><span class="icon icon16 fa-check"></span> <span>{lang}wcf.global.button.markAllAsRead{/lang}</span></a>
+ <a href="#" class="markAllAsReadButton contentInteractionButton button small jsOnly">{icon size=16 name='check' type='solid'} <span>{lang}wcf.global.button.markAllAsRead{/lang}</span></a>
{/if}
{/capture}
{capture assign='contentInteractionButtons'}
{if $page->showShareButtons()}
- <a href="{$content->getLink()}" class="contentInteractionButton button small wsShareButton jsOnly" data-link-title="{$content->getTitle()}"><span class="icon icon16 fa-share"></span> <span>{lang}wcf.message.share{/lang}</span></a>
+ <a href="{$content->getLink()}" class="contentInteractionButton button small wsShareButton jsOnly" data-link-title="{$content->getTitle()}">{icon size=16 name='share' type='solid'} <span>{lang}wcf.message.share{/lang}</span></a>
{/if}
{if $page->isMultilingual && $__wcf->user->userID && $page->getPageLanguages()|count > 1}
</div>
{/if}
- {if $__wcf->getSession()->getPermission('admin.content.cms.canManagePage')}<a href="{link controller='PageEdit' id=$page->pageID isACP=true}{/link}" class="contentInteractionButton button small"><span class="icon icon16 fa-pencil"></span> <span>{lang}wcf.acp.page.edit{/lang}</span></a>{/if}
+ {if $__wcf->getSession()->getPermission('admin.content.cms.canManagePage')}<a href="{link controller='PageEdit' id=$page->pageID isACP=true}{/link}" class="contentInteractionButton button small">{icon size=16 name='pencil' type='solid'} <span>{lang}wcf.acp.page.edit{/lang}</span></a>{/if}
{/capture}
{include file='header'}
<nav class="jsMobileNavigation buttonGroupNavigation">
<ul class="buttonList iconList">
{if $comment->isDisabled && $commentCanModerate}
- <li class="jsOnly"><a href="#" class="jsEnableComment"><span class="icon icon16 fa-check"></span> <span class="invisible">{lang}wcf.comment.approve{/lang}</span></a></li>
+ <li class="jsOnly"><a href="#" class="jsEnableComment">{icon size=16 name='check' type='solid'} <span class="invisible">{lang}wcf.comment.approve{/lang}</span></a></li>
{/if}
{if $commentManager->supportsReport() && $__wcf->session->getPermission('user.profile.canReportContent')}
- <li class="jsReportCommentComment jsOnly" data-object-id="{@$comment->commentID}"><a href="#" title="{lang}wcf.moderation.report.reportContent{/lang}" class="jsTooltip"><span class="icon icon16 fa-exclamation-triangle"></span> <span class="invisible">{lang}wcf.moderation.report.reportContent{/lang}</span></a></li>
+ <li class="jsReportCommentComment jsOnly" data-object-id="{@$comment->commentID}"><a href="#" title="{lang}wcf.moderation.report.reportContent{/lang}" class="jsTooltip">{icon size=16 name='exclamation-triangle' type='solid'} <span class="invisible">{lang}wcf.moderation.report.reportContent{/lang}</span></a></li>
{/if}
{if MODULE_LIKE && $commentManager->supportsLike() && $__wcf->session->getPermission('user.like.canLike') && $comment->userID != $__wcf->user->userID}
- <li class="jsOnly"><a href="#" class="reactButton jsTooltip {if $likeData[comment][$comment->commentID]|isset && $likeData[comment][$comment->commentID]->reactionTypeID} active{/if}" title="{lang}wcf.reactions.react{/lang}" data-reaction-type-id="{if $likeData[comment][$comment->commentID]|isset && $likeData[comment][$comment->commentID]->reactionTypeID}{$likeData[comment][$comment->commentID]->reactionTypeID}{else}0{/if}"><span class="icon icon16 fa-smile-o"></span> <span class="invisible">{lang}wcf.reactions.react{/lang}</span></a></li>
+ <li class="jsOnly"><a href="#" class="reactButton jsTooltip {if $likeData[comment][$comment->commentID]|isset && $likeData[comment][$comment->commentID]->reactionTypeID} active{/if}" title="{lang}wcf.reactions.react{/lang}" data-reaction-type-id="{if $likeData[comment][$comment->commentID]|isset && $likeData[comment][$comment->commentID]->reactionTypeID}{$likeData[comment][$comment->commentID]->reactionTypeID}{else}0{/if}">{icon size=16 name='face-smile'} <span class="invisible">{lang}wcf.reactions.react{/lang}</span></a></li>
{/if}
{event name='commentOptions'}
<nav class="jsMobileNavigation buttonGroupNavigation">
<ul class="buttonList iconList">
{if $response->isDisabled && $commentCanModerate}
- <li class="jsOnly"><a href="#" class="jsEnableResponse"><span class="icon icon16 fa-check"></span> <span class="invisible">{lang}wcf.comment.approve{/lang}</span></a></li>
+ <li class="jsOnly"><a href="#" class="jsEnableResponse">{icon size=16 name='check' type='solid'} <span class="invisible">{lang}wcf.comment.approve{/lang}</span></a></li>
{/if}
{if $commentManager->supportsReport() && $__wcf->session->getPermission('user.profile.canReportContent')}
- <li class="jsReportCommentResponse jsOnly" data-object-id="{@$response->responseID}"><a href="#" title="{lang}wcf.moderation.report.reportContent{/lang}" class="jsTooltip"><span class="icon icon16 fa-exclamation-triangle"></span> <span class="invisible">{lang}wcf.moderation.report.reportContent{/lang}</span></a></li>
+ <li class="jsReportCommentResponse jsOnly" data-object-id="{@$response->responseID}"><a href="#" title="{lang}wcf.moderation.report.reportContent{/lang}" class="jsTooltip">{icon size=16 name='exclamation-triangle' type='solid'} <span class="invisible">{lang}wcf.moderation.report.reportContent{/lang}</span></a></li>
{/if}
- {if MODULE_LIKE && $commentManager->supportsLike() && $__wcf->session->getPermission('user.like.canLike') && $response->userID != $__wcf->user->userID}<li class="jsOnly"><a href="#" class="reactButtonCommentResponse jsTooltip {if $likeData[response][$response->responseID]|isset && $likeData[response][$response->responseID]->reactionTypeID} active{/if}" title="{lang}wcf.reactions.react{/lang}" data-reaction-type-id="{if $likeData[response][$response->responseID]|isset && $likeData[response][$response->responseID]->reactionTypeID}{$likeData[response][$response->responseID]->reactionTypeID}{else}0{/if}"><span class="icon icon16 fa-smile-o"></span> <span class="invisible">{lang}wcf.reactions.react{/lang}</span></a></li>{/if}
+ {if MODULE_LIKE && $commentManager->supportsLike() && $__wcf->session->getPermission('user.like.canLike') && $response->userID != $__wcf->user->userID}<li class="jsOnly"><a href="#" class="reactButtonCommentResponse jsTooltip {if $likeData[response][$response->responseID]|isset && $likeData[response][$response->responseID]->reactionTypeID} active{/if}" title="{lang}wcf.reactions.react{/lang}" data-reaction-type-id="{if $likeData[response][$response->responseID]|isset && $likeData[response][$response->responseID]->reactionTypeID}{$likeData[response][$response->responseID]->reactionTypeID}{else}0{/if}">{icon size=16 name='face-smile'} <span class="invisible">{lang}wcf.reactions.react{/lang}</span></a></li>{/if}
{event name='commentOptions'}
</ul>
{if $__contentInteractionDropdownItems}
<div class="contentInteractionDropdown dropdown jsOnly">
- <a href="#" class="button small dropdownToggle" aria-label="{lang}wcf.global.button.more{/lang}"><span class="icon icon16 fa-ellipsis-v"></span></a>
+ <a href="#" class="button small dropdownToggle" aria-label="{lang}wcf.global.button.more{/lang}">{icon size=16 name='ellipsis-v' type='solid'}</a>
<ul class="contentInteractionDropdownItems dropdownMenu">
{@$__contentInteractionDropdownItems}
{capture assign='contentTitle'}{lang}wcf.edit.versions{/lang}: {$object->getTitle()}{/capture}
-{capture assign='contentHeaderNavigation'}<li><a href="{$object->getLink()}" class="button buttonPrimary"><span class="icon icon16 fa-arrow-right"></span> <span>{lang}wcf.edit.button.goToContent{/lang}</span></a></li>{/capture}
+{capture assign='contentHeaderNavigation'}<li><a href="{$object->getLink()}" class="button buttonPrimary">{icon size=16 name='arrow-right' type='solid'} <span>{lang}wcf.edit.button.goToContent{/lang}</span></a></li>{/capture}
{include file='header'}
<nav class="jsMobileNavigation buttonGroupNavigation">
<ul class="buttonList iconList jsOnly">
- <li><a class="pointer jsTooltip jsObjectAction" data-object-action="delete" title="{lang}wcf.user.button.unfollow{/lang}" data-object-id="{@$user->followID}"><span class="icon icon16 fa-times"></span> <span class="invisible">{lang}wcf.user.button.unfollow{/lang}</span></a></li>
+ <li><a class="pointer jsTooltip jsObjectAction" data-object-action="delete" title="{lang}wcf.user.button.unfollow{/lang}" data-object-id="{@$user->followID}">{icon size=16 name='times' type='solid'} <span class="invisible">{lang}wcf.user.button.unfollow{/lang}</span></a></li>
{event name='userButtons'}
</ul>
</nav>
<ul class="buttonList iconList jsOnly">
<li>
<a class="pointer jsTooltip jsEditIgnoreButton" title="{lang}wcf.global.button.edit{/lang}">
- <span class="icon icon16 fa-pencil"></span>
+ {icon size=16 name='pencil' type='solid'}
<span class="invisible">{lang}wcf.global.button.edit{/lang}</span>
</a>
</li>
{content}
{if FACEBOOK_PUBLIC_KEY !== '' && FACEBOOK_PRIVATE_KEY !== ''}
<li id="facebookAuth" class="thirdPartyLogin">
- <a href="{link controller='FacebookAuth'}{/link}" class="button thirdPartyLoginButton facebookLoginButton"><span class="icon icon24 fa-facebook-official"></span> <span>{lang}wcf.user.3rdparty.facebook.login{/lang}</span></a>
+ <a href="{link controller='FacebookAuth'}{/link}" class="button thirdPartyLoginButton facebookLoginButton">{icon size=24 name='facebook' type='brand'} <span>{lang}wcf.user.3rdparty.facebook.login{/lang}</span></a>
</li>
{/if}
{if GOOGLE_PUBLIC_KEY !== '' && GOOGLE_PRIVATE_KEY !== ''}
<li id="googleAuth" class="thirdPartyLogin">
- <a href="{link controller='GoogleAuth'}{/link}" class="button thirdPartyLoginButton googleLoginButton"><span class="icon icon24 fa-google"></span> <span>{lang}wcf.user.3rdparty.google.login{/lang}</span></a>
+ <a href="{link controller='GoogleAuth'}{/link}" class="button thirdPartyLoginButton googleLoginButton">{icon size=24 name='google' type='brand'} <span>{lang}wcf.user.3rdparty.google.login{/lang}</span></a>
</li>
{/if}
{if TWITTER_PUBLIC_KEY !== '' && TWITTER_PRIVATE_KEY !== ''}
<li id="twitterAuth" class="thirdPartyLogin">
- <a href="{link controller='TwitterAuth'}{/link}" class="button thirdPartyLoginButton twitterLoginButton"><span class="icon icon24 fa-twitter"></span> <span>{lang}wcf.user.3rdparty.twitter.login{/lang}</span></a>
+ <a href="{link controller='TwitterAuth'}{/link}" class="button thirdPartyLoginButton twitterLoginButton">{icon size=24 name='twitter' type='brand'} <span>{lang}wcf.user.3rdparty.twitter.login{/lang}</span></a>
</li>
{/if}
{if GITHUB_PUBLIC_KEY !== '' && GITHUB_PRIVATE_KEY !== ''}
<li id="githubAuth" class="thirdPartyLogin">
- <a href="{link controller='GithubAuth'}{/link}" class="button thirdPartyLoginButton githubLoginButton"><span class="icon icon24 fa-github"></span> <span>{lang}wcf.user.3rdparty.github.login{/lang}</span></a>
+ <a href="{link controller='GithubAuth'}{/link}" class="button thirdPartyLoginButton githubLoginButton">{icon size=24 name='github' type='brand'} <span>{lang}wcf.user.3rdparty.github.login{/lang}</span></a>
</li>
{/if}
<div class="box48">
{if $media->isImage}
- <span class="icon icon48 fa-file-image-o"></span>
+ {icon size=48 name='file-image'}
{else}
{@$media->getElementTag(48)}
{/if}
{/hascontent}
<div class="containerListFilterOptions jsOnly">
- <button class="button small jsStaticDialog" data-dialog-id="membersListSortFilter"><span class="icon icon16 fa-filter"></span> {lang}wcf.global.filter{/lang}</button>
+ <button class="button small jsStaticDialog" data-dialog-id="membersListSortFilter">{icon size=16 name='filter' type='solid'} {lang}wcf.global.filter{/lang}</button>
</div>
</div>
<ol class="containerList userList">
<div class="messageTabMenu" data-preselect="{if $preselectTabMenu|isset}{$preselectTabMenu}{else}true{/if}" data-wysiwyg-container-id="{if $wysiwygContainerID|isset}{$wysiwygContainerID}{else}text{/if}">
<nav class="messageTabMenuNavigation jsOnly">
<ul>
- {if MODULE_SMILEY && !$smileyCategories|empty}<li data-name="smilies"><a><span class="icon icon16 fa-smile-o"></span> <span>{lang}wcf.message.smilies{/lang}</span></a></li>{/if}
+ {if MODULE_SMILEY && !$smileyCategories|empty}<li data-name="smilies"><a>{icon size=16 name='face-smile'} <span>{lang}wcf.message.smilies{/lang}</span></a></li>{/if}
{if !$attachmentHandler|empty && $attachmentHandler->canUpload()}
- <li data-name="attachments"><a><span class="icon icon16 fa-paperclip"></span> <span>{lang}wcf.attachment.attachments{/lang}</span></a></li>
+ <li data-name="attachments"><a>{icon size=16 name='paperclip' type='solid'} <span>{lang}wcf.attachment.attachments{/lang}</span></a></li>
{/if}
- {if $__messageFormSettings}<li data-name="settings"><a><span class="icon icon16 fa-cog"></span> <span>{lang}wcf.message.settings{/lang}</span></a></li>{/if}
- {if $__showPoll|isset && $__showPoll}<li data-name="poll"><a><span class="icon icon16 fa-bar-chart"></span> <span>{lang}wcf.poll.management{/lang}</span></a></li>{/if}
+ {if $__messageFormSettings}<li data-name="settings"><a>{icon size=16 name='cog' type='solid'} <span>{lang}wcf.message.settings{/lang}</span></a></li>{/if}
+ {if $__showPoll|isset && $__showPoll}<li data-name="poll"><a>{icon size=16 name='chart-column' type='solid'} <span>{lang}wcf.poll.management{/lang}</span></a></li>{/if}
{event name='tabMenuTabs'}
</ul>
</nav>
<div class="messageTabMenu"{if $preselectTabMenu|isset} data-preselect="{$preselectTabMenu}"{/if} data-wysiwyg-container-id="{$wysiwygSelector}">
<nav class="messageTabMenuNavigation jsOnly">
<ul>
- {if MODULE_SMILEY && !$smileyCategories|empty}<li data-name="smilies"><a><span class="icon icon16 fa-smile-o"></span> <span>{lang}wcf.message.smilies{/lang}</span></a></li>{/if}
+ {if MODULE_SMILEY && !$smileyCategories|empty}<li data-name="smilies"><a>{icon size=16 name='face-smile'} <span>{lang}wcf.message.smilies{/lang}</span></a></li>{/if}
{if !$attachmentHandler|empty && $attachmentHandler->canUpload()}
- <li data-name="attachments"><a><span class="icon icon16 fa-paperclip"></span> <span>{lang}wcf.attachment.attachments{/lang}</span></a></li>
+ <li data-name="attachments"><a>{icon size=16 name='paperclip' type='solid'} <span>{lang}wcf.attachment.attachments{/lang}</span></a></li>
{/if}
- {if $__messageFormSettingsInlineContent}<li data-name="settings"><a><span class="icon icon16 fa-cog"></span> <span>{lang}wcf.message.settings{/lang}</span></a></li>{/if}
- {if $__showPoll|isset && $__showPoll}<li data-name="poll"><a><span class="icon icon16 fa-bar-chart"></span> <span>{lang}wcf.poll.management{/lang}</span></a></li>{/if}
+ {if $__messageFormSettingsInlineContent}<li data-name="settings"><a>{icon size=16 name='cog' type='solid'} <span>{lang}wcf.message.settings{/lang}</span></a></li>{/if}
+ {if $__showPoll|isset && $__showPoll}<li data-name="poll"><a>{icon size=16 name='chart-column' type='solid'} <span>{lang}wcf.poll.management{/lang}</span></a></li>{/if}
{event name='tabMenuTabs'}
</ul>
</nav>
<nav class="contentHeaderNavigation">
<ul>
{content}
- {if $queue->getAffectedObject()}<li><a href="{$queue->getAffectedObject()->getLink()}" class="button buttonPrimary"><span class="icon icon16 fa-arrow-right"></span> <span>{lang}wcf.moderation.jumpToContent{/lang}</span></a></li>{/if}
+ {if $queue->getAffectedObject()}<li><a href="{$queue->getAffectedObject()->getLink()}" class="button buttonPrimary">{icon size=16 name='arrow-right' type='solid'} <span>{lang}wcf.moderation.jumpToContent{/lang}</span></a></li>{/if}
{event name='contentHeaderNavigation'}
{/content}
</ul>
{/capture}
{capture assign='contentInteractionButtons'}
- <a id="moderationAssignUser" class="contentInteractionButton button small jsOnly"><span class="icon icon16 fa-user-plus"></span> <span>{lang}wcf.moderation.assignedUser.change{/lang}</span></a>
+ <a id="moderationAssignUser" class="contentInteractionButton button small jsOnly">{icon size=16 name='user-plus' type='solid'} <span>{lang}wcf.moderation.assignedUser.change{/lang}</span></a>
{if !$queue->isDone()}
- <a id="enableContent" class="contentInteractionButton button small jsOnly"><span class="icon icon16 fa-check"></span> <span>{lang}wcf.moderation.activation.enableContent{/lang}</span></a>
- {if $queueManager->canRemoveContent($queue->getDecoratedObject())}<a id="removeContent" class="contentInteractionButton button small jsOnly"><span class="icon icon16 fa-times"></span> <span>{lang}wcf.moderation.activation.removeContent{/lang}</span></a>{/if}
+ <a id="enableContent" class="contentInteractionButton button small jsOnly">{icon size=16 name='check' type='solid'} <span>{lang}wcf.moderation.activation.enableContent{/lang}</span></a>
+ {if $queueManager->canRemoveContent($queue->getDecoratedObject())}<a id="removeContent" class="contentInteractionButton button small jsOnly">{icon size=16 name='times' type='solid'} <span>{lang}wcf.moderation.activation.removeContent{/lang}</span></a>{/if}
{/if}
{/capture}
{/capture}
{capture assign='contentInteractionButtons'}
- <a href="#" class="markAllAsReadButton contentInteractionButton button small jsOnly"><span class="icon icon16 fa-check"></span> <span>{lang}wcf.global.button.markAllAsRead{/lang}</span></a>
- <a href="{link controller='DeletedContentList'}{/link}" class="contentInteractionButton button small"><span class="icon icon16 fa-trash"></span> <span>{lang}wcf.moderation.showDeletedContent{/lang}</span></a>
+ <a href="#" class="markAllAsReadButton contentInteractionButton button small jsOnly">{icon size=16 name='check' type='solid'} <span>{lang}wcf.global.button.markAllAsRead{/lang}</span></a>
+ <a href="{link controller='DeletedContentList'}{/link}" class="contentInteractionButton button small">{icon size=16 name='trash-can' type='solid'} <span>{lang}wcf.moderation.showDeletedContent{/lang}</span></a>
{/capture}
{include file='header'}
</li>
{/hascontent}
<li class="columnApplyFilter jsOnly">
- <button class="button small jsStaticDialog" data-dialog-id="moderationListSortFilter"><span class="icon icon16 fa-filter"></span> {lang}wcf.global.filter{/lang}</button>
+ <button class="button small jsStaticDialog" data-dialog-id="moderationListSortFilter">{icon size=16 name='filter' type='solid'} {lang}wcf.global.filter{/lang}</button>
</li>
</ol>
</li>
<nav class="contentHeaderNavigation">
<ul>
{content}
- {if $queue->getAffectedObject()}<li><a href="{$queue->getAffectedObject()->getLink()}" class="button buttonPrimary"><span class="icon icon16 fa-arrow-right"></span> <span>{lang}wcf.moderation.jumpToContent{/lang}</span></a></li>{/if}
+ {if $queue->getAffectedObject()}<li><a href="{$queue->getAffectedObject()->getLink()}" class="button buttonPrimary">{icon size=16 name='arrow-right' type='solid'} <span>{lang}wcf.moderation.jumpToContent{/lang}</span></a></li>{/if}
{event name='contentHeaderNavigation'}
{/content}
</ul>
{/capture}
{capture assign='contentInteractionButtons'}
- <a id="moderationAssignUser" class="contentInteractionButton button small jsOnly"><span class="icon icon16 fa-user-plus"></span> <span>{lang}wcf.moderation.assignedUser.change{/lang}</span></a>
+ <a id="moderationAssignUser" class="contentInteractionButton button small jsOnly">{icon size=16 name='user-plus' type='solid'} <span>{lang}wcf.moderation.assignedUser.change{/lang}</span></a>
{if !$queue->isDone()}
{if $queueManager->canRemoveContent($queue->getDecoratedObject())}
- <a id="removeContent" class="contentInteractionButton button small jsOnly"><span class="icon icon16 fa-times"></span> <span>{lang}wcf.moderation.activation.removeContent{/lang}</span></a>
+ <a id="removeContent" class="contentInteractionButton button small jsOnly">{icon size=16 name='times' type='solid'} <span>{lang}wcf.moderation.activation.removeContent{/lang}</span></a>
{/if}
- <a id="removeReport" class="contentInteractionButton button small jsOnly"><span class="icon icon16 fa-check-square-o"></span> <span>{lang}wcf.moderation.report.removeReport{/lang}</span></a>
+ <a id="removeReport" class="contentInteractionButton button small jsOnly">{icon size=16 name='square-check'} <span>{lang}wcf.moderation.report.removeReport{/lang}</span></a>
{/if}
{if $queue->canChangeJustifiedStatus()}
- <a id="changeJustifiedStatus" class="contentInteractionButton button small jsOnly"><span class="icon icon16 fa-refresh"></span> <span>{lang}wcf.moderation.report.changeJustifiedStatus{/lang}</span></a>
+ <a id="changeJustifiedStatus" class="contentInteractionButton button small jsOnly">{icon size=16 name='arrows-rotate' type='solid'} <span>{lang}wcf.moderation.report.changeJustifiedStatus{/lang}</span></a>
{/if}
{/capture}
{capture assign='contentInteractionButtons'}
{if $__wcf->getUserNotificationHandler()->getNotificationCount()}
- <a href="#" class="jsMarkAllAsConfirmed contentInteractionButton button small jsOnly"><span class="icon icon16 fa-check"></span> <span>{lang}wcf.global.button.markAllAsRead{/lang}</span></a>
+ <a href="#" class="jsMarkAllAsConfirmed contentInteractionButton button small jsOnly">{icon size=16 name='check' type='solid'} <span>{lang}wcf.global.button.markAllAsRead{/lang}</span></a>
{/if}
{/capture}
</div>
{else}
<div>
- <span class="icon icon32 fa-users"></span>
+ {icon size=32 name='users' type='solid'}
</div>
<div class="details">
{else}
<span class="icon icon24 {if $settings[$event->eventID][mailNotificationType] === 'instant'}fa-flash{else}fa-clock-o{/if} green jsIconNotificationSettingsEmailType"></span>
{/if}
- <span class="icon icon16 fa-caret-down"></span>
+ {icon size=16 name='caret-down' type='solid'}
</a>
{/if}
</div>
<div class="userMenuContent">
<div class="userMenuItem userMenuItemNarrow userMenuItemSingleLine">
<div class="userMenuItemImage">
- <span class="icon icon32 fa-pencil"></span>
+ {icon size=32 name='pencil' type='solid'}
</div>
<div class="userMenuItemContent">
<a href="{link controller='User' object=$__wcf->user editOnInit=true}{/link}" class="userMenuItemLink">{lang}wcf.user.editProfile{/lang}</a>
{if $__wcf->session->getPermission('admin.general.canUseAcp')}
<div class="userMenuItem userMenuItemNarrow userMenuItemSingleLine">
<div class="userMenuItemImage">
- <span class="icon icon32 fa-wrench"></span>
+ {icon size=32 name='wrench' type='solid'}
</div>
<div class="userMenuItemContent">
<a href="{link isACP=true}{/link}" class="userMenuItemLink">{lang}wcf.global.acp{/lang}</a>
aria-haspopup="true"
aria-expanded="false"
>
- <span class="icon icon32 fa-bell-o"></span> <span>{lang}wcf.user.notification.notifications{/lang}</span>{if $__wcf->getUserNotificationHandler()->getNotificationCount()} <span class="badge badgeUpdate">{#$__wcf->getUserNotificationHandler()->getNotificationCount()}</span>{/if}
+ {icon size=32 name='bell'} <span>{lang}wcf.user.notification.notifications{/lang}</span>{if $__wcf->getUserNotificationHandler()->getNotificationCount()} <span class="badge badgeUpdate">{#$__wcf->getUserNotificationHandler()->getNotificationCount()}</span>{/if}
</a>
{if !OFFLINE || $__wcf->session->getPermission('admin.general.canViewPageDuringOfflineMode')}
<script data-relocate="true">
aria-haspopup="true"
aria-expanded="false"
>
- <span class="icon icon32 fa-exclamation-triangle"></span>
+ {icon size=32 name='exclamation-triangle' type='solid'}
<span>{lang}wcf.moderation.moderation{/lang}</span>
{if $__wcf->getModerationQueueManager()->getUnreadModerationCount()}<span class="badge badgeUpdate">{#$__wcf->getModerationQueueManager()->getUnreadModerationCount()}</span>{/if}
</a>
<!-- page search -->
<li>
- <a href="{link controller='Search'}{/link}" id="userPanelSearchButton" class="jsTooltip" title="{lang}wcf.global.search{/lang}"><span class="icon icon32 fa-search"></span> <span>{lang}wcf.global.search{/lang}</span></a>
+ <a href="{link controller='Search'}{/link}" id="userPanelSearchButton" class="jsTooltip" title="{lang}wcf.global.search{/lang}">{icon size=32 name='search' type='solid'} <span>{lang}wcf.global.search{/lang}</span></a>
</li>
</ul>
</nav>
{capture assign='contentTitle'}{lang}wcf.page.error.permissionDenied.title{/lang}{/capture}
{if !$isFirstVisit}
{capture assign='contentHeaderNavigation'}
- <li id="backToReferrer" style="display: none"><a href="#" class="button" rel="noopener"><span class="icon icon16 fa-arrow-left"></span> {lang}wcf.page.error.backward{/lang}</a></li>
+ <li id="backToReferrer" style="display: none"><a href="#" class="button" rel="noopener">{icon size=16 name='arrow-left' type='solid'} {lang}wcf.page.error.backward{/lang}</a></li>
{/capture}
<script data-relocate="true">
<h2 class="sectionTitle">{lang}wcf.user.login{/lang}</h2>
<p>{lang}wcf.page.error.loginAvailable{/lang}</p>
- <p style="margin-top: 20px"><a href="{link controller='Login' url=$__wcf->getRequestURI()}{/link}" class="button"><span class="icon icon16 fa-key"></span> {lang}wcf.user.loginOrRegister{/lang}</a></p>
+ <p style="margin-top: 20px"><a href="{link controller='Login' url=$__wcf->getRequestURI()}{/link}" class="button">{icon size=16 name='key' type='solid'} {lang}wcf.user.loginOrRegister{/lang}</a></p>
</section>
{/if}
{if $message->getUserProfile()}
{user object=$message->getUserProfile() type='avatar48' ariaHidden='true' tabindex='-1'}
{else}
- <span class="icon icon48 fa-file-o"></span>
+ {icon size=48 name='file'}
{/if}
{elseif $_messageCustomIcon|strpos:'fa-' === 0}
<span class="icon icon48 {$_messageCustomIcon}"></span>
{if 'Facebook'|in_array:$__share_buttons_providers}
<li>
<a href="#" role="button" class="button jsShareFacebook" title="{lang}wcf.message.share.facebook{/lang}" aria-label="{lang}wcf.message.share.facebook{/lang}">
- <span class="icon icon24 fa-facebook-official"></span>
+ {icon size=24 name='facebook' type='brand'}
<span>{lang}wcf.message.share.facebook{/lang}</span>
</a>
</li>
{if 'Twitter'|in_array:$__share_buttons_providers}
<li>
<a href="#" role="button" class="button jsShareTwitter" title="{lang}wcf.message.share.twitter{/lang}" aria-label="{lang}wcf.message.share.twitter{/lang}">
- <span class="icon icon24 fa-twitter"></span>
+ {icon size=24 name='twitter' type='brand'}
<span>{lang}wcf.message.share.twitter{/lang}</span>
</a>
</li>
{if 'Reddit'|in_array:$__share_buttons_providers}
<li>
<a href="#" role="button" class="button jsShareReddit" title="{lang}wcf.message.share.reddit{/lang}" aria-label="{lang}wcf.message.share.reddit{/lang}">
- <span class="icon icon24 fa-reddit"></span>
+ {icon size=24 name='reddit' type='brand'}
<span>{lang}wcf.message.share.reddit{/lang}</span>
</a>
</li>
{/capture}
{capture assign='contentInteractionButtons'}
- <a href="{link controller='TagSearch'}{/link}" class="contentInteractionButton button small"><span class="icon icon16 fa-search"></span> <span>{lang}wcf.search.type.tags{/lang}</span></a>
+ <a href="{link controller='TagSearch'}{/link}" class="contentInteractionButton button small">{icon size=16 name='search' type='solid'} <span>{lang}wcf.search.type.tags{/lang}</span></a>
{/capture}
{include file='header'}
<ul class="inlineList contentHeaderMetaData">
{if !$trophy->getDescription()|empty}<li>{@$trophy->getDescription()}</li>{/if}
<li>
- <span class="icon icon16 fa-users"></span>
+ {icon size=16 name='users' type='solid'}
<span>{lang}wcf.user.trophy.trophyAwarded{/lang}</span>
</li>
</ul>
{capture assign='contentInteractionButtons'}
{if ARTICLE_ENABLE_VISIT_TRACKING}
- <a href="#" class="markAllAsReadButton contentInteractionButton button small jsOnly"><span class="icon icon16 fa-check"></span> <span>{lang}wcf.global.button.markAllAsRead{/lang}</span></a>
+ <a href="#" class="markAllAsReadButton contentInteractionButton button small jsOnly">{icon size=16 name='check' type='solid'} <span>{lang}wcf.global.button.markAllAsRead{/lang}</span></a>
{/if}
{/capture}
<div class="userProfileCoverPhoto" style="background-image: url({$user->getCoverPhoto()->getURL()})">
{if ($user->userID == $__wcf->user->userID || $user->canEdit()) && ($__wcf->getSession()->getPermission('user.profile.coverPhoto.canUploadCoverPhoto') || $user->coverPhotoHash)}
<div class="userProfileManageCoverPhoto dropdown jsOnly">
- <a href="#" class="button small dropdownToggle"><span class="icon icon16 fa-pencil"></span> {lang}wcf.user.coverPhoto.edit{/lang}</a>
+ <a href="#" class="button small dropdownToggle">{icon size=16 name='pencil' type='solid'} {lang}wcf.user.coverPhoto.edit{/lang}</a>
<ul class="dropdownMenu">
{if $__wcf->getSession()->getPermission('user.profile.coverPhoto.canUploadCoverPhoto')}
<li><a href="#" class="jsButtonUploadCoverPhoto jsStaticDialog" data-dialog-id="userProfileCoverPhotoUpload">{lang}wcf.user.coverPhoto.upload{/lang}</a></li>
<ul class="userProfileButtonContainer">
{content}
{if $user->canEdit() || ($__wcf->getUser()->userID == $user->userID && $user->canEditOwnProfile())}
- <li><a href="#" class="jsButtonEditProfile button buttonPrimary"><span class="icon icon16 fa-pencil"></span> <span>{lang}wcf.user.editProfile{/lang}</span></a></li>
+ <li><a href="#" class="jsButtonEditProfile button buttonPrimary">{icon size=16 name='pencil' type='solid'} <span>{lang}wcf.user.editProfile{/lang}</span></a></li>
{/if}
{event name='contentHeaderNavigation'}
{capture assign='contentInteractionButtons'}
{if $__menuSearch}
<div class="contentInteractionButton dropdown jsOnly">
- <a href="#" class="button small dropdownToggle"><span class="icon icon16 fa-search"></span> <span>{lang}wcf.user.searchUserContent{/lang}</span></a>
+ <a href="#" class="button small dropdownToggle">{icon size=16 name='search' type='solid'} <span>{lang}wcf.user.searchUserContent{/lang}</span></a>
<ul class="dropdownMenu userProfileButtonMenu" data-menu="search">
{@$__menuSearch}
</ul>
{/if}
{if $__menuManagement}
<div class="contentInteractionButton dropdown jsOnly">
- <a href="#" class="button small dropdownToggle"><span class="icon icon16 fa-cog"></span> <span>{lang}wcf.user.profile.management{/lang}</span></a>
+ <a href="#" class="button small dropdownToggle">{icon size=16 name='cog' type='solid'} <span>{lang}wcf.user.profile.management{/lang}</span></a>
<ul class="dropdownMenu userProfileButtonMenu" data-menu="management">
{@$__menuManagement}
</ul>
<ul class="buttonList iconList">
{content}
{if $user->homepage && $user->homepage != 'http://'}
- <li><a class="jsTooltip" title="{lang}wcf.user.option.homepage{/lang}" {anchorAttributes url=$user->homepage appendClassname=false isUgc=true}><span class="icon icon16 fa-home"></span> <span class="invisible">{lang}wcf.user.option.homepage{/lang}</span></a></li>
+ <li><a class="jsTooltip" title="{lang}wcf.user.option.homepage{/lang}" {anchorAttributes url=$user->homepage appendClassname=false isUgc=true}>{icon size=16 name='house' type='solid'} <span class="invisible">{lang}wcf.user.option.homepage{/lang}</span></a></li>
{/if}
{if $user->userID != $__wcf->user->userID}
{if $user->isAccessible('canViewEmailAddress')}
- <li><a class="jsTooltip" href="mailto:{@$user->getEncodedEmail()}" title="{lang}wcf.user.button.mail{/lang}"><span class="icon icon16 fa-envelope-o"></span> <span class="invisible">{lang}wcf.user.button.mail{/lang}</span></a></li>
+ <li><a class="jsTooltip" href="mailto:{@$user->getEncodedEmail()}" title="{lang}wcf.user.button.mail{/lang}">{icon size=16 name='envelope'} <span class="invisible">{lang}wcf.user.button.mail{/lang}</span></a></li>
{/if}
{/if}
{if $__wcf->user->userID && $user->userID != $__wcf->user->userID}
{if !$__wcf->getUserProfileHandler()->isIgnoredByUser($user->userID)}
{if $__wcf->getUserProfileHandler()->isFollowing($user->userID)}
- <li class="jsOnly"><a href="#" data-following="1" data-object-id="{@$user->userID}" class="jsFollowButton jsTooltip" title="{lang}wcf.user.button.unfollow{/lang}"><span class="icon icon16 fa-minus"></span> <span class="invisible">{lang}wcf.user.button.unfollow{/lang}</span></a></li>
+ <li class="jsOnly"><a href="#" data-following="1" data-object-id="{@$user->userID}" class="jsFollowButton jsTooltip" title="{lang}wcf.user.button.unfollow{/lang}">{icon size=16 name='minus' type='solid'} <span class="invisible">{lang}wcf.user.button.unfollow{/lang}</span></a></li>
{else}
- <li class="jsOnly"><a href="#" data-following="0" data-object-id="{@$user->userID}" class="jsFollowButton jsTooltip" title="{lang}wcf.user.button.follow{/lang}"><span class="icon icon16 fa-plus"></span> <span class="invisible">{lang}wcf.user.button.follow{/lang}</span></a></li>
+ <li class="jsOnly"><a href="#" data-following="0" data-object-id="{@$user->userID}" class="jsFollowButton jsTooltip" title="{lang}wcf.user.button.follow{/lang}">{icon size=16 name='plus' type='solid'} <span class="invisible">{lang}wcf.user.button.follow{/lang}</span></a></li>
{/if}
{/if}
{/if}
{capture assign='contentInteractionButtons'}
{if ARTICLE_ENABLE_VISIT_TRACKING}
- <a href="#" class="markAllAsReadButton contentInteractionButton button small jsOnly"><span class="icon icon16 fa-check"></span> <span>{lang}wcf.global.button.markAllAsRead{/lang}</span></a>
+ <a href="#" class="markAllAsReadButton contentInteractionButton button small jsOnly">{icon size=16 name='check' type='solid'} <span>{lang}wcf.global.button.markAllAsRead{/lang}</span></a>
{/if}
{/capture}
<div id="workerContainer">
<header class="box48 contentHeader">
- <span class="icon icon48 fa-spinner"></span>
+ {icon size=48 name='spinner' type='solid'}
<div>
<h1 class="contentTitle">{lang}wcf.global.worker.executing{/lang}</h1>