Cleaned up the user menu, extra profile link
[GitHub/WoltLab/WCF.git] / wcfsetup / install / lang / en.xml
index 9158e3aa15f726e89c6f295558bd017808f29d37..39cd03850f4484a813d664aa84d20baa7c0a3967 100644 (file)
@@ -1,5 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <language xmlns="http://www.woltlab.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.woltlab.com http://www.woltlab.com/XSD/5.4/language.xsd" languagecode="en" languagename="English" countrycode="gb">
+<import>
        <category name="wcf.acl">
                <item name="wcf.acl.access"><![CDATA[Restricted Access]]></item>
                <item name="wcf.acl.access.grant"><![CDATA[Allow Access]]></item>
                <item name="wcf.acp.box.controller.sortField"><![CDATA[Sort By]]></item>
                <item name="wcf.acp.box.controller.sortField.description"><![CDATA[The selected object property is used for sorting.]]></item>
                <item name="wcf.acp.box.controller.limit"><![CDATA[Maximum Number of Items]]></item>
+               <item name="wcf.acp.box.conditions"><![CDATA[Conditions]]></item>
+               <item name="wcf.acp.box.conditions.page"><![CDATA[Page]]></item>
+               <item name="wcf.acp.box.conditions.pointInTime"><![CDATA[Time]]></item>
+               <item name="wcf.acp.box.conditions.user"><![CDATA[Active user]]></item>
        </category>
        <category name="wcf.acp.cache">
                <item name="wcf.acp.cache.button.clear"><![CDATA[Clear Cache]]></item>
                <item name="wcf.acp.dataImport.configure.data"><![CDATA[Data]]></item>
                <item name="wcf.acp.dataImport.configure.data.description"><![CDATA[Import the data selected below:]]></item>
                <item name="wcf.acp.dataImport.configure.database"><![CDATA[Database Credentials]]></item>
+               <item name="wcf.acp.dataImport.configure.database.error.exception"><![CDATA[An error occurred while trying to access the database:
+               {foreach from=$exceptions item='exception'}<br><strong>{$exception->getMessage()}</strong>{/foreach}]]></item>
                <item name="wcf.acp.dataImport.configure.database.host"><![CDATA[Hostname]]></item>
                <item name="wcf.acp.dataImport.configure.database.user"><![CDATA[Username]]></item>
                <item name="wcf.acp.dataImport.configure.database.password"><![CDATA[Password]]></item>
                <item name="wcf.acp.dataImport.configure.fileSystem"><![CDATA[Filesystem]]></item>
                <item name="wcf.acp.dataImport.configure.fileSystem.path"><![CDATA[Path to the Old Installation]]></item>
                <item name="wcf.acp.dataImport.configure.fileSystem.path.description"><![CDATA[Please enter the path to the old installation, this is required to import files, such as avatars or attachments.]]></item>
-               <item name="wcf.acp.dataImport.configure.database.error"><![CDATA[An error occurred while trying to access the database:<br><strong>{$exception->getPrevious()->getMessage()}</strong>]]></item>
-               <item name="wcf.acp.dataImport.configure.fileSystem.path.error"><![CDATA[Unable to find a valid installation located at the path you have provided.]]></item>
+               <item name="wcf.acp.dataImport.configure.fileSystem.path.error.invalid"><![CDATA[Unable to find a valid installation located at the path you have provided.]]></item>
+               <item name="wcf.acp.dataImport.configure.fileSystem.path.error.thisCommunity"><![CDATA[The provided path matches the path of an installed app.]]></item>
                <item name="wcf.acp.dataImport.configure.settings"><![CDATA[Settings]]></item>
                <item name="wcf.acp.dataImport.configure.settings.userMergeMode"><![CDATA[Behavior for colliding user accounts]]></item>
                <item name="wcf.acp.dataImport.configure.settings.userMergeMode.4"><![CDATA[Merge user accounts with same email address]]></item>
                <item name="wcf.acp.dataImport.data.com.woltlab.wcf.userTrophy"><![CDATA[Assigned trophies]]></item>
                <item name="wcf.acp.dataImport.data.com.woltlab.wcf.reactionType"><![CDATA[Reaction Types]]></item>
                <item name="wcf.acp.dataImport.data.com.woltlab.wcf.page"><![CDATA[CMS pages]]></item>
-               <item name="wcf.acp.dataImport.existingMapping.confirmMessage"><![CDATA[Do you really want to delete the existing import mappings?]]></item>
-               <item name="wcf.acp.dataImport.existingMapping.notice"><![CDATA[There are import mappings created by a previous import process, these mappings are used to properly handle connections between data from the imported forum and this one. In case you have imported all the desired data, you can <a id="deleteMapping">delete</a> the mappings. It is strongly recommended to keep these mappings as long as there is still data to be imported now or in the future. These mappings cannot be used to perform incremental imports of the same type of data. Instead their purpose is to import different types of data using multiple import processes, possibly using importers provided by a plugin.]]></item>
+               <item name="wcf.acp.dataImport.existingMapping.notice"><![CDATA[There are import mappings created by a previous import process, these mappings are used to properly handle connections between data from the imported forum and this one. In case you have imported all the desired data, you can <a href="#" role="button" id="deleteMapping" data-confirm-message="Do you really want to delete the existing import mappings?">delete the mappings</a>. It is strongly recommended to keep these mappings as long as there is still data to be imported now or in the future. These mappings cannot be used to perform incremental imports of the same type of data. Instead their purpose is to import different types of data using multiple import processes, possibly using importers provided by a plugin.]]></item>
                <item name="wcf.acp.dataImport.exporter"><![CDATA[Data Source]]></item>
                <item name="wcf.acp.dataImport.selectExporter"><![CDATA[Select Data Source]]></item>
                <item name="wcf.acp.dataImport.selectExporter.error.invalid"><![CDATA[The selected data source is invalid.]]></item>
                <item name="wcf.acp.devtools.project.requiredPackages.description"><![CDATA[In order to install this package, the following packages have to be already installed or the versions delivered together with the package have to be installed first.]]></item>
                <item name="wcf.acp.devtools.project.excludedPackages"><![CDATA[Conflicting Packages]]></item>
                <item name="wcf.acp.devtools.project.excludedPackages.description"><![CDATA[This package cannot be installed if one of the following packages is already installed (in the specified <strong>or new</strong> version).]]></item>
-               <item name="wcf.acp.devtools.project.compatibility"><![CDATA[API Compatibility]]></item>
                <item name="wcf.acp.devtools.project.excludedPackage.excludedPackage"><![CDATA[<kbd>{$packageIdentifier}</kbd>
 {if $version}
        <dl class="plain inlineDataList small">
                <item name="wcf.acp.devtools.project.optionalPackage.packageIdentifier.description"><![CDATA[The path to the package file has to be <kbd>optionals/{literal}{$packageIdentifier}{/literal}.tar</kbd>.]]></item>
                <item name="wcf.acp.devtools.project.optionalPackages"><![CDATA[Optional Packages]]></item>
                <item name="wcf.acp.devtools.project.optionalPackages.description"><![CDATA[The following packages will be offered to be installed optionally after this package has been installed.]]></item>
-               <item name="wcf.acp.devtools.project.apiVersions"><![CDATA[Compatible API Versions]]></item>
-               <item name="wcf.acp.devtools.project.apiVersions.description"><![CDATA[The package is compatible with all of the selected API versions of WoltLab Suite Core.]]></item>
                <item name="wcf.acp.devtools.project.requiredPackages.shortTitle"><![CDATA[Requirements]]></item>
                <item name="wcf.acp.devtools.project.excludedPackages.shortTitle"><![CDATA[Conflicts]]></item>
                <item name="wcf.acp.devtools.project.optionalPackages.shortTitle"><![CDATA[Optional]]></item>
                <item name="wcf.acp.email.log"><![CDATA[Emails Sent]]></item>
                <item name="wcf.acp.email.log.subject"><![CDATA[Subject]]></item>
                <item name="wcf.acp.email.log.time"><![CDATA[Created]]></item>
+               <item name="wcf.acp.email.log.messageId"><![CDATA[Message-ID]]></item>
                <item name="wcf.acp.email.log.status"><![CDATA[Status]]></item>
                <item name="wcf.acp.email.log.status.success"><![CDATA[Sent]]></item>
                <item name="wcf.acp.email.log.status.transient_failure"><![CDATA[Transient Failure]]></item>
                <item name="wcf.acp.exceptionLog.email.subject"><![CDATA[Logged Errors since {$date|plainTime}]]></item>
                <item name="wcf.acp.exceptionLog.email.body"><![CDATA[Dear Administrator,
 
-the following errors have been logged on your website {@PAGE_TITLE|language} since {$date|plainTime}:
+the following errors have been logged on your website {@PAGE_TITLE|phrase} since {$date|plainTime}:
 
 {foreach from=$files key=file item=data}
 log/{$file}.txt{if !$data[verdict]|isset} ({#$data[count]} error{if $data[count] > 1}s{/if}){/if} {* this line ends with a space *}
@@ -741,7 +745,6 @@ ATTENTION: The messages listed above are greatly shortened. You can view details
                <item name="wcf.acp.group.option.user.attachment.maxSize"><![CDATA[Maximum Attachment File Size]]></item>
                <item name="wcf.acp.group.option.user.attachment.allowedExtensions"><![CDATA[Allowed Attachment File Extensions]]></item>
                <item name="wcf.acp.group.option.user.attachment.maxCount"><![CDATA[Maximum Attachments per Message]]></item>
-               <item name="wcf.acp.group.option.user.attachment.maxCount.description"><![CDATA[The maximum number of attachments allowed per message.]]></item>
                <item name="wcf.acp.group.option.category.admin.attachment"><![CDATA[Attachments]]></item>
                <item name="wcf.acp.group.option.admin.attachment.canManageAttachment"><![CDATA[Can manage attachments]]></item>
                <item name="wcf.acp.group.option.category.admin.content.bbcode"><![CDATA[BBCodes]]></item>
@@ -750,6 +753,7 @@ ATTENTION: The messages listed above are greatly shortened. You can view details
                <item name="wcf.acp.group.option.admin.content.smiley.canManageSmiley"><![CDATA[Can manage smilies]]></item>
                <item name="wcf.acp.group.option.user.comment.floodControlTime"><![CDATA[Delay between Comments]]></item>
                <item name="wcf.acp.group.option.user.comment.floodControlTime.description"><![CDATA[Seconds required between creating two comments or replies. Use 0 to disable.]]></item>
+               <item name="wcf.acp.group.option.user.comment.maxLength"><![CDATA[Maximum Comment Length]]></item>
                <item name="wcf.acp.group.option.user.comment.disallowedBBCodes"><![CDATA[Disallowed BBCodes]]></item>
                <item name="wcf.acp.group.option.user.comment.disallowedBBCodes.description"><![CDATA[Selected BBCodes <em>cannot</em> be used by the users of this user group.]]></item>
                <item name="wcf.acp.group.option.user.message.disallowedBBCodes"><![CDATA[Disallowed BBCodes]]></item>
@@ -833,7 +837,7 @@ ATTENTION: The messages listed above are greatly shortened. You can view details
                <item name="wcf.acp.group.option.user.profile.canReportContent"><![CDATA[Can report content]]></item>
                <item name="wcf.acp.group.option.admin.captcha.canManageCaptchaQuestion"><![CDATA[Can manage captcha questions]]></item>
                <item name="wcf.acp.group.button.copy"><![CDATA[Copy User Group]]></item>
-               <item name="wcf.acp.group.copy.confirmMessage"><![CDATA[Do you really want to copy the user group <span class="confirmationObject">{$group->groupName|language|encodeJS}</span>?]]></item>
+               <item name="wcf.acp.group.copy.confirmMessage"><![CDATA[Do you really want to copy the user group <span class="confirmationObject">{$group->getName()}</span>?]]></item>
                <item name="wcf.acp.group.copy.copyACLOptions"><![CDATA[Copy Object Permissions]]></item>
                <item name="wcf.acp.group.copy.copyACLOptions.description"><![CDATA[The permissions set for certain objects like label groups will also be set for the new user group.]]></item>
                <item name="wcf.acp.group.copy.copyMembers"><![CDATA[Copy Members]]></item>
@@ -947,7 +951,8 @@ ATTENTION: The messages listed above are greatly shortened. You can view details
                <item name="wcf.acp.index.tinyBuild"><![CDATA[The accelerated guest view improves the page responsiveness and loading times for both visitors and search engines alike, please consider <a href="{link controller='Option' id=1 optionName="visitor_use_tiny_build"}#category_module.system{/link}">enabling it</a>.]]></item>
                <item name="wcf.acp.index.recaptchaWithoutKey"><![CDATA[Using reCAPTCHA without an individual website key is no longer supported by Google.<br><br>For further use you need to <a href="{$recaptchaKeyLink}">provide a key in your options</a>, please follow the instructions below the input field to obtain a key.]]></item>
                <item name="wcf.acp.index.missingLanguageItems"><![CDATA[Missing language items have been detected (last time: {@$missingLanguageItemsMTime|time}). Check the <a href="{link controller='DevtoolsMissingLanguageItemList'}{/link}">list of missing phrases</a> for more information.]]></item>
-               <item name="wcf.acp.index.nonInnoDbSearch"><![CDATA[Not all tables are using the InnoDB storage engine. You can find details in the <a href="{link controller='SystemCheck'}{/link}">System Check</a>.]]></item>
+               <item name="wcf.acp.index.allowsFrameEmbedding"><![CDATA[The <a href="{$xFrameOptionsLink}">option to prevent embedding of WoltLab Suite within a frame</a> is disabled. This option is deprecated, will be removed in a future version and embedding will be prevented in all cases. Allowing embedding reduces security by allowing <a href="https://en.wikipedia.org/wiki/Clickjacking" class="externalURL">Clickjacking attacks</a> to happen. In addition certain security features for cookies are not available within frames.]]></item>
+               <item name="wcf.acp.index.systemIdMismatch"><![CDATA[The system environment has changed. It is recommended to perform a <a href="{link controller='SystemCheck'}{/link}">System Check</a>.]]></item>
        </category>
        <category name="wcf.acp.label">
                <item name="wcf.acp.label.add"><![CDATA[Add Label]]></item>
@@ -1036,20 +1041,6 @@ ATTENTION: The messages listed above are greatly shortened. You can view details
                <item name="wcf.acp.language.add.package"><![CDATA[Package]]></item>
                <item name="wcf.acp.language.add.package.description"><![CDATA[The imported phrases will be assigned to the selected package.]]></item>
        </category>
-       <category name="wcf.acp.masterPassword">
-               <item name="wcf.acp.masterPassword"><![CDATA[Master Password]]></item>
-               <item name="wcf.acp.masterPassword.confirm"><![CDATA[Confirm Master Password]]></item>
-               <item name="wcf.acp.masterPassword.enter"><![CDATA[Master Password Required]]></item>
-               <item name="wcf.acp.masterPassword.enter.description"><![CDATA[The page or action requires the master password for security reasons, the password will be remembered for your current session. In case you forgot the password, please reset it by removing the file <em>{@$relativeWcfDir}acp/masterPassword.inc.php</em>.]]></item>
-               <item name="wcf.acp.masterPassword.error.invalid"><![CDATA[The password is incorrect. In case you forgot the password, please reset it by removing the file <em>{@$relativeWcfDir}acp/masterPassword.inc.php</em>.]]></item>
-               <item name="wcf.acp.masterPassword.error.notEqual"><![CDATA[The passwords do not match.]]></item>
-               <item name="wcf.acp.masterPassword.error.notSecure"><![CDATA[The password is considered unsafe. It should be at least 8 characters, containing uppercase and lowercase letters, numbers, and special symbols.]]></item>
-               <item name="wcf.acp.masterPassword.example"><![CDATA[Suggestion]]></item>
-               <item name="wcf.acp.masterPassword.example.set"><![CDATA[Use Suggestion]]></item>
-               <item name="wcf.acp.masterPassword.init"><![CDATA[Set Master Password]]></item>
-               <item name="wcf.acp.masterPassword.init.description"><![CDATA[The master password is the last line of defense, protecting both critical settings and sensitive data. One should choose a rather strong password which is neither known to any 3rd party person nor re-used on other web pages.]]></item>
-               <item name="wcf.acp.masterPassword.enter.deprecated"><![CDATA[Support for the master password is discouraged and will be removed in a future version without further notice. The <a href="{link controller='AccountSecurity' forceFrontend=true application='wcf'}#section_multifactor{/link}">Multi-factor Authentication</a> protects accounts more reliably and in all areas. If desired, specific user groups can be required to set up multi-factor authentication, before they are able to enter sensitive areas, such as the Administration Control Panel.]]></item>
-       </category>
        <category name="wcf.acp.menu">
                <item name="wcf.acp.menu.link.management"><![CDATA[Management]]></item>
                <item name="wcf.acp.menu.link.maintenance"><![CDATA[Maintenance]]></item>
@@ -1252,10 +1243,6 @@ ATTENTION: The messages listed above are greatly shortened. You can view details
                <item name="wcf.acp.notice.showOrder.description"><![CDATA[Choose display order of notices.]]></item>
        </category>
        <category name="wcf.acp.option">
-               <item name="wcf.acp.option.blacklist_ip_addresses"><![CDATA[Block by IP Address (Not Recommended)]]></item>
-               <item name="wcf.acp.option.blacklist_ip_addresses.description"><![CDATA[Blocking IP Addresses is more reliably and performant achieved at the web server level. Use of this blocklist is not recommended and this option will be removed in a future version.]]></item>
-               <item name="wcf.acp.option.blacklist_user_agents"><![CDATA[Block by User-Agent (Not Recommended)]]></item>
-               <item name="wcf.acp.option.blacklist_user_agents.description"><![CDATA[User-Agents are easily faked by an attacker and not a reliable indicator of the client’s identity. If a block based on the User-Agent is desired nonetheless, it is achieve more performant at the web server level. Use of this blocklist is not recommended and this option will be removed in a future version.]]></item>
                <item name="wcf.acp.option.cache_source_memcached_host"><![CDATA[Memcached-Server]]></item>
                <item name="wcf.acp.option.cache_source_memcached_host.description"/>
                <item name="wcf.acp.option.cache_source_redis_host"><![CDATA[Redis-Server]]></item>
@@ -1325,8 +1312,8 @@ ATTENTION: The messages listed above are greatly shortened. You can view details
                <item name="wcf.acp.option.error.tooLow"><![CDATA[Under the minimum value{if $option->minvalue !== null} of {#$option->minvalue}{/if}.]]></item>
                <item name="wcf.acp.option.error.tooLong"><![CDATA[The entered text is too long.]]></item>
                <item name="wcf.acp.option.error.tooShort"><![CDATA[The entered text is too short.]]></item>
-               <item name="wcf.acp.option.http_send_x_frame_options"><![CDATA[Disallow embedding in a frame]]></item>
-               <item name="wcf.acp.option.http_send_x_frame_options.description"><![CDATA[Sends the <a href="https://en.wikipedia.org/wiki/Clickjacking" class="externalURL">“X-Frame-Options”</a> header to prevent 3rd party sites from embedding this site in a frame (sends “SAMEORIGIN”).]]></item>
+               <item name="wcf.acp.option.http_send_x_frame_options"><![CDATA[Disallow embedding in a frame (deprecated)]]></item>
+               <item name="wcf.acp.option.http_send_x_frame_options.description"><![CDATA[The option to control embedding within a frame is deprecated, will be removed in a future version and embedding will be prevented in all cases. Allowing embedding reduces security by allowing <a href="https://en.wikipedia.org/wiki/Clickjacking" class="externalURL">Clickjacking attacks</a> to happen. In addition certain security features for cookies are not available within frames.]]></item>
                <item name="wcf.acp.option.image_adapter_type"><![CDATA[Graphics Library]]></item>
                <item name="wcf.acp.option.image_adapter_type.gd"><![CDATA[Use GD Graphics Library (default)]]></item>
                <item name="wcf.acp.option.image_adapter_type.imagick"><![CDATA[Use ImageMagick]]></item>
@@ -1351,9 +1338,8 @@ ATTENTION: The messages listed above are greatly shortened. You can view details
                <item name="wcf.acp.option.mail_smtp_host"><![CDATA[SMTP Server]]></item>
                <item name="wcf.acp.option.mail_smtp_host.description"><![CDATA[The SMTP port 465 requires the host to be prefixed with <kbd>ssl://</kbd>, for example, <kbd>ssl://mail.example.com</kbd> instead of <kbd>mail.example.com</kbd>.]]></item>
                <item name="wcf.acp.option.mail_smtp_port"><![CDATA[SMTP Port]]></item>
-               <item name="wcf.acp.option.mail_smtp_starttls"><![CDATA[SMTP Encryption]]></item>
+               <item name="wcf.acp.option.mail_smtp_starttls"><![CDATA[SMTP Encryption (STARTTLS)]]></item>
                <item name="wcf.acp.option.mail_smtp_starttls.none"><![CDATA[Disabled]]></item>
-               <item name="wcf.acp.option.mail_smtp_starttls.may"><![CDATA[If supported]]></item>
                <item name="wcf.acp.option.mail_smtp_starttls.encrypt"><![CDATA[Required]]></item>
                <item name="wcf.acp.option.mail_smtp_starttls.description"><![CDATA[This option controls the usage of “STARTTLS”. Disable it, if you are using SSL (port 465)!]]></item>
                <item name="wcf.acp.option.mail_smtp_user"><![CDATA[SMTP Username]]></item>
@@ -1363,8 +1349,6 @@ ATTENTION: The messages listed above are greatly shortened. You can view details
                <item name="wcf.acp.option.meta_description"><![CDATA[Meta Description]]></item>
                <item name="wcf.acp.option.og_image"><![CDATA[Open Graph Image]]></item>
                <item name="wcf.acp.option.og_image.description"><![CDATA[Path to the default image that will be displayed when sharing your site on Facebook, Twitter and other social media sites.]]></item>
-               <item name="wcf.acp.option.module_master_password"><![CDATA[Enable master password (Not Recommended)]]></item>
-               <item name="wcf.acp.option.module_master_password.description"><![CDATA[Use of the master password is discouraged. Instead multi-factor authentication should be set up. Multi-factor authentication protects accounts more reliably and in all areas. Support for the master password will be removed in a future version without further notice.]]></item>
                <item name="wcf.acp.option.page_description"><![CDATA[Page Description]]></item>
                <item name="wcf.acp.option.page_title"><![CDATA[Page Title]]></item>
                <item name="wcf.acp.option.proxy_server_http"><![CDATA[Proxy-Server (HTTP)]]></item>
@@ -1423,8 +1407,6 @@ ATTENTION: The messages listed above are greatly shortened. You can view details
 <li>“*” to match parts: “wolt*” matches “woltlab”</li>
 <li>“~” to find splitted parts: “wolt~” matches “wolt-lab”</li>
 </ul>]]></item>
-               <item name="wcf.acp.option.enable_censorship"><![CDATA[Enable censorship]]></item>
-               <item name="wcf.acp.option.enable_censorship.description"><![CDATA[Enables censorship for every message containing the words below.]]></item>
                <item name="wcf.acp.option.category.message.general.share"><![CDATA[Content Share]]></item>
                <item name="wcf.acp.option.enable_share_buttons"><![CDATA[Display content share button]]></item>
                <item name="wcf.acp.option.category.message.general.edit"><![CDATA[Edit History]]></item>
@@ -1442,7 +1424,7 @@ ATTENTION: The messages listed above are greatly shortened. You can view details
                <item name="wcf.acp.option.facebook_public_key.description"><![CDATA[You can obtain your APP-ID and Application Secret at <a href="https://developers.facebook.com/apps" class="externalURL">Facebook</a>. The OAuth redirect URI is: {link controller="FacebookAuth" forceFrontend=true}{/link}]]></item>
                <item name="wcf.acp.option.facebook_private_key"><![CDATA[Facebook Application Secret]]></item>
                <item name="wcf.acp.option.google_public_key"><![CDATA[Google Client ID]]></item>
-               <item name="wcf.acp.option.google_public_key.description"><![CDATA[You can obtain your Client ID and Client Secret at <a href="https://code.google.com/apis/console/" class="externalURL">Google</a>. The Redirect-URI is: {link controller="GoogleAuth" forceFrontend=true}{/link}]]></item>
+               <item name="wcf.acp.option.google_public_key.description"><![CDATA[You can obtain your Client ID and Client Secret at <a href="https://console.cloud.google.com/apis/credentials" class="externalURL">Google</a>. The Redirect-URI is: {link controller="GoogleAuth" forceFrontend=true}{/link}]]></item>
                <item name="wcf.acp.option.google_private_key"><![CDATA[Google Client Secret]]></item>
                <item name="wcf.acp.option.category.dashboard"><![CDATA[Dashboard]]></item>
                <item name="wcf.acp.option.category.dashboard.content"><![CDATA[Content Area]]></item>
@@ -1468,8 +1450,9 @@ ATTENTION: The messages listed above are greatly shortened. You can view details
                <item name="wcf.acp.option.password_min_score"><![CDATA[Security Level]]></item>
                <item name="wcf.acp.option.password_min_score.description"><![CDATA[“Score” value of the <a href="https://github.com/dropbox/zxcvbn" class="externalURL">zxcvbn library</a> that passwords need to achive.]]></item>
                <item name="wcf.acp.option.password_min_score.0"><![CDATA[0: Disabled]]></item>
-               <item name="wcf.acp.option.password_min_score.1"><![CDATA[1: Very guessable (1 million attempts)]]></item>
-               <item name="wcf.acp.option.password_min_score.2"><![CDATA[2: Somewhat guessable (100 million attempts)]]></item>
+               <item name="wcf.acp.option.password_min_score.1"><![CDATA[1: Low (1 million attempts)]]></item>
+               <item name="wcf.acp.option.password_min_score.2"><![CDATA[2: Good (100 million attempts)]]></item>
+               <item name="wcf.acp.option.password_min_score.3"><![CDATA[3: Strong (10 billion attempts)]]></item>
                <item name="wcf.acp.option.register_forbidden_usernames"><![CDATA[Reserved Usernames]]></item>
                <item name="wcf.acp.option.register_forbidden_usernames.description"><![CDATA[You can specify which usernames are unavailable for registration.]]></item>
                <item name="wcf.acp.option.register_forbidden_emails"><![CDATA[Reserved Email Addresses]]></item>
@@ -1598,8 +1581,6 @@ Please follow the instructions described in <a href="https://www.woltlab.com/art
                <item name="wcf.acp.option.captcha_type"><![CDATA[Captcha Type]]></item>
                <item name="wcf.acp.option.register_use_captcha"><![CDATA[Enable Captcha protection during registration]]></item>
                <item name="wcf.acp.option.lost_password_use_captcha"><![CDATA[Enable Captcha protection for lost password]]></item>
-               <item name="wcf.acp.option.profile_mail_use_captcha"><![CDATA[Enable Captcha protection for send email to user]]></item>
-               <item name="wcf.acp.option.search_use_captcha"><![CDATA[Enable Captcha protection for search]]></item>
                <item name="wcf.acp.option.category.security.antispam.captcha"><![CDATA[Captchas]]></item>
                <item name="wcf.acp.option.category.security.general.authentication"><![CDATA[User Authentication]]></item>
                <item name="wcf.acp.option.enable_user_authentication_failure"><![CDATA[Log failed login attempts]]></item>
@@ -1694,7 +1675,7 @@ When prompted for the notification URL for the instant payment notifications, pl
                <item name="wcf.acp.option.article_enable_visit_tracking"><![CDATA[Enable “mark as read” for articles]]></item>
                <item name="wcf.acp.option.enable_ad_rotation"><![CDATA[Enable ad rotation]]></item>
                <item name="wcf.acp.option.enable_ad_rotation.description"><![CDATA[If there is more than one ad per placeholder, a random ad will be displayed every time. Disabling this option will display all ads simultaneously.]]></item>
-               <item name="wcf.acp.option.visitor_use_tiny_build"><![CDATA[Enable accelerated guest view (experimental)]]></item>
+               <item name="wcf.acp.option.visitor_use_tiny_build"><![CDATA[Enable accelerated guest view]]></item>
                <item name="wcf.acp.option.visitor_use_tiny_build.description"><![CDATA[Enables a specialized view mode for guests and search engines alike, providing greatly reduced JavaScript files to achieve faster loading and page rendering.<br><strong>Warning:</strong> This mode is highly restricted and reduces the abilities of guests to interact with your site, such as creating new content. Please review your installed plugins before enabling to see if they are compatible with this setting.]]></item>
                <item name="wcf.acp.option.fb_share_app_id"><![CDATA[Facebook App ID]]></item>
                <item name="wcf.acp.option.fb_share_app_id.description"><![CDATA[You can obtain the app ID from your <a href="https://developers.facebook.com/docs/apps/register?locale=en_US" class="externalURL">app’s dashboard</a>, and is used with the Open Graph tags for sharing.]]></item>
@@ -1909,6 +1890,7 @@ The database is carefully maintained, but there will be always be a margin of er
                <item name="wcf.acp.package.update.server.message"><![CDATA[Server Notice]]></item>
                <item name="wcf.acp.package.update.server.url"><![CDATA[URL]]></item>
                <item name="wcf.acp.package.update.title"><![CDATA[Update]]></item>
+               <item name="wcf.acp.package.update.availableUpdates"><![CDATA[Available Updates]]></item>
                <item name="wcf.acp.package.update.unauthorized"><![CDATA[Authorization Required]]></item>
                <item name="wcf.acp.package.update.username"><![CDATA[Username]]></item>
                <item name="wcf.acp.package.update.step.prepare"><![CDATA[Preparing Update …]]></item>
@@ -1924,6 +1906,9 @@ The database is carefully maintained, but there will be always be a margin of er
                <item name="wcf.acp.package.update.purchaseRequired"><![CDATA[Paid Package]]></item>
                <item name="wcf.acp.package.update.purchaseRequired.button.purchase"><![CDATA[Show in the Plugin-Store]]></item>
                <item name="wcf.acp.package.update.purchaseRequired.description"><![CDATA[The paid package “{$packageName}” must be purchased in the Plugin-Store before you can install it.]]></item>
+               <item name="wcf.acp.package.update.installUpdate"><![CDATA[Install this update]]></item>
+               <item name="wcf.acp.package.update.upgrade"><![CDATA[This package will be upgraded.]]></item>
+               <item name="wcf.acp.package.update.newVersion"><![CDATA[{$currentVersion} → <span class="packageUpdateNewVersion">{$newVersion}</span>]]></item>
                <item name="wcf.acp.package.version"><![CDATA[Version]]></item>
                <item name="wcf.acp.package.packageDir.input"><![CDATA[Installation Directory]]></item>
                <item name="wcf.acp.package.upload"><![CDATA[Upload package]]></item>
@@ -1940,20 +1925,22 @@ The database is carefully maintained, but there will be always be a margin of er
                <item name="wcf.acp.package.validation.errorCode.2"><![CDATA[The package “{$archive}” is missing the required “package.xml” file.]]></item>
                <item name="wcf.acp.package.validation.errorCode.3"><![CDATA[The package name “{$packageName}” does not meet the expectations and was rejected.]]></item>
                <item name="wcf.acp.package.validation.errorCode.4"><![CDATA[The package version “{$packageVersion}” does not meet the expectations and was rejected.]]></item>
-               <item name="wcf.acp.package.validation.errorCode.5"><![CDATA[The package “{$packageName|language}” does not contain valid install instructions.]]></item>
-               <item name="wcf.acp.package.validation.errorCode.6"><![CDATA[The package “{$packageName|language}” (installed version: “{$packageVersion}”) should be updated to version “{$deliveredPackageVersion}”, but an update is not supported.]]></item>
+               <item name="wcf.acp.package.validation.errorCode.5"><![CDATA[The package “{$packageName}” does not contain valid install instructions.]]></item>
+               <item name="wcf.acp.package.validation.errorCode.6"><![CDATA[The package “{$packageName|phrase}” (installed version: “{$packageVersion}”) should be updated to version “{$deliveredPackageVersion}”, but an update is not supported.]]></item>
                <item name="wcf.acp.package.validation.errorCode.7"><![CDATA[The following installed packages exclude the current package due to known incompatibilities: <ul class="nativeList">{foreach from=$packages item=package}<li>“{$package}” ({$package->package})</li>{/foreach}</ul>]]></item>
                <item name="wcf.acp.package.validation.errorCode.8"><![CDATA[This package is incompatible with the following installed packages: <ul class="nativeList">{foreach from=$packages item=package}<li>“{$package}” ({$package->package})</li>{/foreach}</ul>]]></item>
                <item name="wcf.acp.package.validation.errorCode.9"><![CDATA[The installation requires the package “{$packageName}” in version “{$packageVersion}” or higher, but only version “{$deliveredPackageVersion}” is shipped.]]></item>
                <item name="wcf.acp.package.validation.errorCode.10"><![CDATA[Requires the package {if $package === null}“{$packageName}”{else}“{$package}”{/if} in version “{$packageVersion}” or higher, {if $package === null}but it is neither installed nor shipped.{else}but only version “{$package->packageVersion}” is installed.{/if}]]></item>
                <item name="wcf.acp.package.validation.errorCode.11"><![CDATA[The {if $type == 'install'}install{else}update{/if}-instructions specify the file “{$value}” for the Package Installation Plugin “{$pip}”, but it cannot be found in the specified location. Possible causes:<ul class="nativeList"><li>The file has not been added to the archive at all</li><li>The file exists but under a (slightly) different name (typo)</li></ul>]]></item>
-               <item name="wcf.acp.package.validation.errorCode.12"><![CDATA[The package “{$packageName|language}” is already installed in version “{$packageVersion}”.]]></item>
+               <item name="wcf.acp.package.validation.errorCode.12"><![CDATA[The package “{$packageName|phrase}” is already installed in version “{$packageVersion}”.]]></item>
                <item name="wcf.acp.package.validation.errorCode.13"><![CDATA[The API version “{$version}” is invalid.]]></item>
                <item name="wcf.acp.package.validation.errorCode.14"><![CDATA[This package was created for {if $isOlderVersion}an older{else}a newer{/if} version of WoltLab Suite and is not compatible.]]></item>
                <item name="wcf.acp.package.validation.errorCode.15"><![CDATA[This package does not contain any data on API compatibility, the installation is prevented while the developer tools are enabled.]]></item>
                <item name="wcf.acp.package.validation.errorCode.16"><![CDATA[In addition to the &lt;void/&gt; instruction additional Package Installation Plugins are used.]]></item>
                <item name="wcf.acp.package.validation.errorCode.17"><![CDATA[The &lt;void/&gt; instruction may not be used in the install-instructions.]]></item>
                <item name="wcf.acp.package.validation.errorCode.18"><![CDATA[The app “{$application->getPackage()->package}”, which is already installed, uses the same app abbreviation.]]></item>
+               <item name="wcf.acp.package.validation.errorCode.19"><![CDATA[The version “{$version}” of the incompatible package “{$packageName}” is invalid.]]></item>
+               <item name="wcf.acp.package.validation.errorCode.20"><![CDATA[The package “{$packageName}” excludes itself.]]></item>
                <item name="wcf.acp.package.validation.failed"><![CDATA[The package cannot be installed, please review the validation results below.]]></item>
                <item name="wcf.acp.package.evaluation.expired"><![CDATA[The evaluation period of <strong>{$packageName}</strong> has expired. For a legal use of this software, please update to the latest available version.{if $pluginStoreFileID || $isWoltLab}<br>The latest version can be purchased quickly and securely <strong>{if $pluginStoreFileID}<a href="https://pluginstore.woltlab.com/file/{$pluginStoreFileID}/">in the WoltLab Plugin-Store</a>{else}<a href="https://www.woltlab.com/purchase/">on WoltLab.com</a>{/if}</strong>.{/if}]]></item>
                <item name="wcf.acp.package.evaluation.pending"><![CDATA[The evaluation period of the apps listed below will expire on <strong>{$evaluationEndDate|plainTime}</strong> ({@$evaluationEndDate|dateDiff:TIME_NOW:true}). The apps will automatically disable themselves after this date and become unusable, you'll need to install the latest versions of the apps to active them again.
@@ -2014,6 +2001,10 @@ If you have <strong>already bought the licenses for the listed apps</strong>, th
                <item name="wcf.acp.package.upgradeOverrideEnabled"><![CDATA[The upgrade to WoltLab Suite {$version} is now ready. Please click on the button “Search for Updates” to start the upgrade.<br>
 <br>
 <a href="{link controller='PackageEnableUpgradeOverride' application='wcf'}{/link}">Cancel the upgrade</a>]]></item>
+               <item name="wcf.acp.package.quickInstallation"><![CDATA[Installation by StoreCode]]></item>
+               <item name="wcf.acp.package.quickInstallation.code"><![CDATA[StoreCode]]></item>
+               <item name="wcf.acp.package.quickInstallation.code.error.invalid"><![CDATA[The provided StoreCode is invalid.]]></item>
+               <item name="wcf.acp.package.quickInstallation.code.description"><![CDATA[Paste the StoreCode from the official Plugin-Store from your clipboard to start the installation.]]></item>
        </category>
        <category name="wcf.acp.paidSubscription">
                <item name="wcf.acp.paidSubscription.list"><![CDATA[Paid Subscriptions]]></item>
@@ -2046,7 +2037,7 @@ If you have <strong>already bought the licenses for the listed apps</strong>, th
                <item name="wcf.acp.paidSubscription.transactionLog.transactionDetails"><![CDATA[Details]]></item>
                <item name="wcf.acp.paidSubscription.excludedSubscriptions"><![CDATA[Excluded Subscriptions]]></item>
                <item name="wcf.acp.paidSubscription.excludedSubscriptions.description"><![CDATA[Prevents purchasing of other subscriptions for buyers of this subscription.]]></item>
-               <item name="wcf.acp.paidSubscription.user.delete.confirmMessage"><![CDATA[Do you really want to terminate the subscription <span class="confirmationObject">{$subscriptionUser->title|language}</span> for the user <span class="confirmationObject">{$subscriptionUser->username}</span>?]]></item>
+               <item name="wcf.acp.paidSubscription.user.delete.confirmMessage"><![CDATA[Do you really want to terminate the subscription <span class="confirmationObject">{$subscriptionUser->title|phrase}</span> for the user <span class="confirmationObject">{$subscriptionUser->username}</span>?]]></item>
                <item name="wcf.acp.paidSubscription.user.add"><![CDATA[Manually Add Subscription]]></item>
                <item name="wcf.acp.paidSubscription.user.edit"><![CDATA[Edit Active Subscription]]></item>
                <item name="wcf.acp.paidSubscription.error.noPaymentMethods"><![CDATA[Adding subscriptions requires at least one active payment provider for the “Supported Payment Methods” option.]]></item>
@@ -2393,8 +2384,9 @@ If you have <strong>already bought the licenses for the listed apps</strong>, th
                <item name="wcf.acp.pip.eventListener.eventClassName"><![CDATA[PHP Event Class]]></item>
                <item name="wcf.acp.pip.eventListener.eventClassName.description"><![CDATA[The entered class (without leading backslash) fires the event. Alternatively, the entered class inherits from the the class firing the event.]]></item>
                <item name="wcf.acp.pip.eventListener.eventName"><![CDATA[Event Names]]></item>
-               <item name="wcf.acp.pip.eventListener.eventName.description"><![CDATA[Names of the event of the relevant class the event listener is listening to.]]></item>
+               <item name="wcf.acp.pip.eventListener.eventName.description"><![CDATA[Names of the event of the relevant class the event listener is listening to. Default value: <kbd>:default</kbd>]]></item>
                <item name="wcf.acp.pip.eventListener.listenerClassName"><![CDATA[PHP Event Listener Class]]></item>
+               <item name="wcf.acp.pip.eventListener.listenerClassName.error.noCallable"><![CDATA[The class <kbd>{$listenerClassName}</kbd> does not have a <kbd>__invoke()</kbd> method.]]></item>
                <item name="wcf.acp.pip.eventListener.environment"><![CDATA[Environment]]></item>
                <item name="wcf.acp.pip.eventListener.environment.description"><![CDATA[The environment determines whether the event listener is executed in the frontend (<kbd>user</kbd>), the ACP (<kbd>admin</kbd>), or in both (<kbd>all</kbd>).]]></item>
                <item name="wcf.acp.pip.eventListener.inherit"><![CDATA[Support Inheritance]]></item>
@@ -2591,6 +2583,17 @@ If you have <strong>already bought the licenses for the listed apps</strong>, th
                <item name="wcf.acp.pip.language.languageItemValue.en.description"><![CDATA[Helpful code fragments: <kbd>“”</kbd>]]></item>
                <item name="wcf.acp.pip.option.optionName.error.notLowercase"><![CDATA[The option name may not include uppercase letters.]]></item>
                <item name="wcf.acp.pip.option.optionName.error.pattern"><![CDATA[The option name must consist of lowercase latin letters, digits and underscores only. The first and last character must be letters.]]></item>
+               <item name="wcf.acp.pip.fileDelete.info"><![CDATA[The <kbd>fileDelete</kbd> package installation plugin installs deletes files installed with the <kbd>file</kbd> package installation plugin. You can find more information in the <a href="https://docs.woltlab.com/latest/package/pip/fileDelete/" class="externalURL">developer documentation</a>.]]></item>
+               <item name="wcf.acp.pip.fileDelete.file"><![CDATA[File]]></item>
+               <item name="wcf.acp.pip.fileDelete.application"><![CDATA[App]]></item>
+               <item name="wcf.acp.pip.templateDelete.info"><![CDATA[The <kbd>templateDelete</kbd> package installation plugin installs deletes templates installed with the <kbd>template</kbd> package installation plugin. You can find more information in the <a href="https://docs.woltlab.com/latest/package/pip/templateDelete/" class="externalURL">developer documentation</a>.]]></item>
+               <item name="wcf.acp.pip.templateDelete.template"><![CDATA[Template]]></item>
+               <item name="wcf.acp.pip.templateDelete.template.error.tplSuffix"><![CDATA[Only enter the name of the template without the file extension <kbd>.tpl</kbd>.]]></item>
+               <item name="wcf.acp.pip.templateDelete.application"><![CDATA[App]]></item>
+               <item name="wcf.acp.pip.acpTemplateDelete.info"><![CDATA[The <kbd>acpTemplateDelete</kbd> package installation plugin installs deletes templates installed with the <kbd>acpTemplate</kbd> package installation plugin. You can find more information in the <a href="https://docs.woltlab.com/latest/package/pip/acpTemplateDelete/" class="externalURL">developer documentation</a>.]]></item>
+               <item name="wcf.acp.pip.acpTemplateDelete.template"><![CDATA[Template]]></item>
+               <item name="wcf.acp.pip.acpTemplateDelete.template.error.tplSuffix"><![CDATA[Only enter the name of the template without the file extension <kbd>.tpl</kbd>.]]></item>
+               <item name="wcf.acp.pip.acpTemplateDelete.application"><![CDATA[App]]></item>
        </category>
        <category name="wcf.acp.reactionType">
                <item name="wcf.acp.reactionType.type"><![CDATA[Reaction Type]]></item>
@@ -2662,7 +2665,7 @@ If you have <strong>already bought the licenses for the listed apps</strong>, th
                <item name="wcf.acp.search.provider.com.woltlab.wcf.article"><![CDATA[Articles]]></item>
                <item name="wcf.acp.search.provider.com.woltlab.wcf.box"><![CDATA[Boxes]]></item>
                <item name="wcf.acp.search.provider.com.woltlab.wcf.trophy"><![CDATA[Trophies]]></item>
-               <item name="wcf.acp.search.result.subtitle"><![CDATA[{implode from=$pieces item=piece glue=' » '}{$piece|language}{/implode}]]></item>
+               <item name="wcf.acp.search.result.subtitle"><![CDATA[{implode from=$pieces item=piece glue=' » '}{$piece|phrase}{/implode}]]></item>
        </category>
        <category name="wcf.acp.sitemap">
                <item name="wcf.acp.sitemap"><![CDATA[Sitemap]]></item>
@@ -2734,13 +2737,11 @@ If you have <strong>already bought the licenses for the listed apps</strong>, th
                <item name="wcf.acp.systemCheck.directories"><![CDATA[Filesystem]]></item>
                <item name="wcf.acp.systemCheck.php.version"><![CDATA[Version]]></item>
                <item name="wcf.acp.systemCheck.php.version.description"><![CDATA[PHP {$phpVersions[minimum]} or newer is required, the following PHP series are strongly recommended: {implode from=$phpVersions[recommended] item=$recommended}{$recommended}{/implode}.]]></item>
+               <item name="wcf.acp.systemCheck.php.version.deprecated"><![CDATA[The PHP version used is severely outdated and has limited support, proper operation is not guaranteed with this version. It is strongly recommended to switch to a modern PHP version ({implode from=$phpVersions[recommended] item=$recommended}{$recommended}{/implode}).]]></item>
                <item name="wcf.acp.systemCheck.mysql.version"><![CDATA[MySQL]]></item>
                <item name="wcf.acp.systemCheck.mysql.version.description"><![CDATA[MySQL {$mysqlVersions[mysql][5]} or MySQL {$mysqlVersions[mysql][8]} or MariaDB {$mysqlVersions[mariadb][10]} are required at minimum, but it’s strongly recommended to always use the latest available version.]]></item>
                <item name="wcf.acp.systemCheck.mysql.foreignKeys"><![CDATA[Foreign Keys]]></item>
                <item name="wcf.acp.systemCheck.mysql.foreignKeys.description"><![CDATA[Foreign Keys are created with the installation and are required for the software to work.]]></item>
-               <item name="wcf.acp.systemCheck.mysql.searchEngine"><![CDATA[Search]]></item>
-               <item name="wcf.acp.systemCheck.mysql.searchEngine.description"><![CDATA[All tables used for the search must be configured with the InnoDB storage engine.]]></item>
-               <item name="wcf.acp.systemCheck.mysql.searchEngine.incorrect"><![CDATA[The following tables using an incorrect storage engine (expected storage engine <code>InnoDB</code>): {implode from=$results[mysql][searchEngine][incorrectTables] key=tableName item=engine glue=", "}<code>{$tableName}</code> (<code>{$engine}</code>){/implode}. Use the <a href="{link controller='RebuildData'}{/link}">Rebuild Data Page</a> to migrate to the correct storage engine.]]></item>
                <item name="wcf.acp.systemCheck.php.extension"><![CDATA[Extensions]]></item>
                <item name="wcf.acp.systemCheck.php.extension.description"><![CDATA[The official PHP extensions provide additional capabilities and features that are required for the software to work.]]></item>
                <item name="wcf.acp.systemCheck.php.memoryLimit"><![CDATA[Available Memory (“memory_limit”)]]></item>
@@ -2749,6 +2750,8 @@ If you have <strong>already bought the licenses for the listed apps</strong>, th
                <item name="wcf.acp.systemCheck.php.sha256.description"><![CDATA[The cryptographic function SHA-256 is required for a safe and secure operation of the software.]]></item>
                <item name="wcf.acp.systemCheck.mysql.innodb"><![CDATA[InnoDB available]]></item>
                <item name="wcf.acp.systemCheck.mysql.innodb.description"><![CDATA[InnoDB (XtraDB when using MariaDB) is a transaction storage engine for MySQL and is required for the operation of the software. This is a built-in feature of MySQL.]]></item>
+               <item name="wcf.acp.systemCheck.mysql.bufferPool"><![CDATA[Bufferpool Size]]></item>
+               <item name="wcf.acp.systemCheck.mysql.bufferPool.description"><![CDATA[The bufferpool is the place where the stored data is kept in memory. It is shared by every customer using the same database server. The bufferpool must have a size of at least 128 MiB to allow for processing of complex queries. To prevent disk accesses from slowing down the page the bufferpool should generally be configured much larger. The ideal size varies based on the hardware configuration.]]></item>
                <item name="wcf.acp.systemCheck.directories.writable"><![CDATA[Writable Directories]]></item>
                <item name="wcf.acp.systemCheck.directories.writable.description"><![CDATA[Some directories are being written to during the normal operation. The user that runs the PHP process must have write access.]]></item>
                <item name="wcf.acp.systemCheck.php.gd"><![CDATA[Supported formats of the GD library]]></item>
@@ -2926,11 +2929,9 @@ If you have <strong>already bought the licenses for the listed apps</strong>, th
                <item name="wcf.acp.style.styleVersion.error.invalid"><![CDATA[You have provided an invalid version number.]]></item>
                <item name="wcf.acp.style.styleDate.error.invalid"><![CDATA[You have provided an invalid date.]]></item>
                <item name="wcf.acp.style.globals.pageLogo"><![CDATA[Page Logo]]></item>
-               <item name="wcf.acp.style.globals.pageLogo.description"><![CDATA[The filename of the page logo image.]]></item>
                <item name="wcf.acp.style.globals.pageLogo.width"><![CDATA[Page Logo Width]]></item>
                <item name="wcf.acp.style.globals.pageLogo.height"><![CDATA[Page Logo Height]]></item>
                <item name="wcf.acp.style.globals.pageLogoMobile"><![CDATA[Page Logo (Mobile Version)]]></item>
-               <item name="wcf.acp.style.globals.pageLogoMobile.description"><![CDATA[The filename of the page logo image (mobile version).]]></item>
                <item name="wcf.acp.style.globals.fontSizeDefault"><![CDATA[Font Size (Default)]]></item>
                <item name="wcf.acp.style.globals.fontSizeSmall"><![CDATA[Font Size (Small)]]></item>
                <item name="wcf.acp.style.globals.fontSizeHeadline"><![CDATA[Font Size (Headline)]]></item>
@@ -3150,11 +3151,11 @@ You can define the default sender in “Configuration » Options » General » E
                <item name="wcf.acp.user.usersAwaitingApprovalInfo"><![CDATA[<a href="{link controller='UserQuickSearch'}mode=pendingActivation{/link}">{#$usersAwaitingApproval} User{if $usersAwaitingApproval != 1}s{/if}</a> {if $usersAwaitingApproval == 1}is{else}are{/if} awaiting your approval.]]></item>
                <item name="wcf.acp.user.search.conditions.state.enabled"><![CDATA[Approved]]></item>
                <item name="wcf.acp.user.search.conditions.state.disabled"><![CDATA[Awaiting Approval]]></item>
-               <item name="wcf.acp.user.sendNewPassword.mail.subject"><![CDATA[New Password for your Account for Website: {@PAGE_TITLE|language}]]></item>
+               <item name="wcf.acp.user.sendNewPassword.mail.subject"><![CDATA[New Password for your Account for Website: {@PAGE_TITLE|phrase}]]></item>
                <item name="wcf.acp.user.sendNewPassword.mail.plaintext"><![CDATA[Dear {@$mailbox->getUser()->username},
 
 An administrator has reset your password. You are now required to set a new password to be able to use your
-user account {@$mailbox->getUser()->username} on the website {@PAGE_TITLE|language} [URL:{link isEmail=true}{/link}] again:
+user account {@$mailbox->getUser()->username} on the website {@PAGE_TITLE|phrase} [URL:{link isEmail=true}{/link}] again:
 
     {link controller='NewPassword' object=$mailbox->getUser() isEmail=true}k={@$mailbox->getUser()->lostPasswordKey}{/link} {* this line ends with a space *}
 
@@ -3163,7 +3164,7 @@ the lost password form [URL:{link controller='LostPassword' isEmail=true}{/link}
                <item name="wcf.acp.user.sendNewPassword.mail.html.headline"><![CDATA[Dear {$mailbox->getUser()->username},]]></item>
                <item name="wcf.acp.user.sendNewPassword.mail.html.intro"><![CDATA[
 <p>An administrator has reset your password. You are now required to set a new password to be able to use your
-user account {$mailbox->getUser()->username} on the website <a href="{link isHtmlEmail=true}{/link}">{@PAGE_TITLE|language}</a> again:</p>]]></item>
+user account {$mailbox->getUser()->username} on the website <a href="{link isHtmlEmail=true}{/link}">{PAGE_TITLE|phrase}</a> again:</p>]]></item>
                <item name="wcf.acp.user.sendNewPassword.mail.html.reset"><![CDATA[Choose new password]]></item>
                <item name="wcf.acp.user.sendNewPassword.mail.html.outro"><![CDATA[
 <p>If you read this message after {$mailbox->getUser()->lastLostPasswordRequestTime+86400|plainTime} you’ll have to use
@@ -3181,14 +3182,14 @@ the lost password form <a href="{link controller='LostPassword' isHtmlEmail=true
                <item name="wcf.acp.user.authentication.failure.validationError"><![CDATA[Error]]></item>
                <item name="wcf.acp.user.authentication.failure.validationError.invalidPassword"><![CDATA[Incorrect password]]></item>
                <item name="wcf.acp.user.authentication.failure.validationError.invalidUsername"><![CDATA[Unknown user]]></item>
-               <item name="wcf.acp.user.activation.mail.subject"><![CDATA[Your account on the website: {@PAGE_TITLE|language} has been approved]]></item>
+               <item name="wcf.acp.user.activation.mail.subject"><![CDATA[Your account on the website: {@PAGE_TITLE|phrase} has been approved]]></item>
                <item name="wcf.acp.user.activation.mail.html.headline"><![CDATA[Dear {$mailbox->getUser()->username},]]></item>
                <item name="wcf.acp.user.activation.mail.html.text"><![CDATA[
-<p>Your account on the website: <a href="{link}{/link}">{PAGE_TITLE|language}</a> has been approved
+<p>Your account on the website: <a href="{link}{/link}">{PAGE_TITLE|phrase}</a> has been approved
 by an administrator. You are now able to use your user account to its full extent.</p>]]></item>
                <item name="wcf.acp.user.activation.mail.plaintext"><![CDATA[Dear {@$mailbox->getUser()->username},
 
-Your account on the website: {@PAGE_TITLE|language} [URL:{link isEmail=true}{/link}] has been approved by an administrator. You are now able to use your user account to its full extent.]]></item>
+Your account on the website: {@PAGE_TITLE|phrase} [URL:{link isEmail=true}{/link}] has been approved by an administrator. You are now able to use your user account to its full extent.]]></item>
                <item name="wcf.acp.user.notificationPresetSettings"><![CDATA[Default Notification Settings]]></item>
                <item name="wcf.acp.user.notificationPresetSettings.description"><![CDATA[You can set the default notification settings for new users, any changes made here will not affect existing users. Users can customize their settings at any time.]]></item>
                <item name="wcf.acp.user.notificationPresetSettings.applyChangesToExistingUsers"><![CDATA[Apply changes for existing users also]]></item>
@@ -3236,7 +3237,7 @@ Your account on the website: {@PAGE_TITLE|language} [URL:{link isEmail=true}{/li
                <item name="wcf.article.relatedArticles"><![CDATA[Related Articles]]></item>
                <item name="wcf.article.moreArticles"><![CDATA[More Articles]]></item>
                <item name="wcf.article.aboutAuthor"><![CDATA[About the Author]]></item>
-               <item name="wcf.article.articleComments"><![CDATA[{#$article->comments} Comment{if $article->comments != 1}s{/if}]]></item>
+               <item name="wcf.article.articleComments"><![CDATA[{plural value=$articleContent->comments one='# Comment' other='# Comments'}]]></item>
                <item name="wcf.article.articleViews"><![CDATA[{#$article->views} View{if $article->views != 1}s{/if}]]></item>
                <item name="wcf.article.recentActivity.likedArticle"><![CDATA[Reacted with <span title="{$reactionType->getTitle()}" class="jsTooltip">{@$reactionType->renderIcon()}</span> to the article <a href="{$article->getLink()}">{$article->getTitle()}</a>.]]></item>
                <item name="wcf.article.recentActivity.articleComment"><![CDATA[Commented on article <a href="{$article->getLink()}#comment{$commentID}">{$article->getTitle()}</a>.]]></item>
@@ -3456,7 +3457,7 @@ Errors are:
                <item name="wcf.contact.mail.subject"><![CDATA[New message via the contact form]]></item>
                <item name="wcf.contact.mail.plaintext"><![CDATA[Hello,
 
-“{@$name}” sent you a message on {@PAGE_TITLE|language} via the contact form:
+“{@$name}” sent you a message on {@PAGE_TITLE|phrase} via the contact form:
 
 Email: {@$emailAddress} {* this line ends with a space *}
 {foreach from=$options item=option}
@@ -3473,7 +3474,7 @@ Attachments:
 {/if}]]></item>
                <item name="wcf.contact.mail.html"><![CDATA[<h2>Hello,</h2>
 
-<p>“{$name}” sent you a message on <a href="{link isHtmlEmail=true}{/link}">{PAGE_TITLE|language}</a> via the contact form:</p>
+<p>“{$name}” sent you a message on <a href="{link isHtmlEmail=true}{/link}">{PAGE_TITLE|phrase}</a> via the contact form:</p>
 <p><br></p>
 <p>Email: <a href="mailto:{$emailAddress}">{$emailAddress}</a></p>
 {foreach from=$options item=option}
@@ -3854,6 +3855,7 @@ Attachments:
                <item name="wcf.global.button.hide"><![CDATA[Hide]]></item>
                <item name="wcf.global.button.insert"><![CDATA[Insert]]></item>
                <item name="wcf.global.button.list"><![CDATA[List]]></item>
+               <item name="wcf.global.button.more"><![CDATA[More]]></item>
                <item name="wcf.global.button.next"><![CDATA[Next »]]></item>
                <item name="wcf.global.button.preview"><![CDATA[Preview]]></item>
                <item name="wcf.global.button.reply"><![CDATA[Reply]]></item>
@@ -3883,7 +3885,7 @@ Attachments:
 <p class="exceptionText">&nbsp;</p> <!-- required to ensure spacing after copy & paste -->
 <p class="exceptionText">
        The error code can be used by an administrator to lookup the full error message in the Administration Control Panel via “Logs » Errors”.
-       In addition the error has been written to the log file located at <span class="exceptionInlineCodeWrapper"><span class="exceptionInlineCode">{$logFile}</span></span> and can be accessed with a FTP program or similar.
+       In addition the error has been written to the log file located at <span class="exceptionInlineCodeWrapper"><span class="exceptionInlineCode">{$logFile}</span></span> and can be accessed with an FTP program or similar.
 </p>
 <p class="exceptionText">&nbsp;</p> <!-- required to ensure spacing after copy & paste -->
 <p class="exceptionText">Notice: The error code was randomly generated and has no use beyond looking up the full message.</p>]]></item>
@@ -3966,10 +3968,6 @@ Attachments:
                <item name="wcf.global.form.error.noValidSelection"><![CDATA[Choose one of the available options.]]></item>
                <item name="wcf.global.form.error.securityToken"><![CDATA[The validity of your request could not be verified, because the XSRF token was invalid. Please submit the form again.]]></item>
                <item name="wcf.global.form.input.maxItems"><![CDATA[Maximum items reached]]></item>
-               <!-- deprecated since 2.1 -->
-               <item name="wcf.global.form.error.greaterThan.javaScript"><![CDATA[{literal}The entered value has to be greater than {#$greaterThan}.{/literal}]]></item>
-               <item name="wcf.global.form.error.lessThan.javaScript"><![CDATA[{literal}The entered value has to be less than {#$lessThan}.{/literal}]]></item>
-               <!-- /deprecated since 2.1 -->
                <item name="wcf.global.form.required"><![CDATA[Required fields]]></item>
                <item name="wcf.global.form.password.button.hide"><![CDATA[Hide]]></item>
                <item name="wcf.global.form.password.button.show"><![CDATA[Show]]></item>
@@ -4118,6 +4116,7 @@ Attachments:
                <item name="wcf.media.caption"><![CDATA[Caption]]></item>
                <item name="wcf.media.caption.enableHtml"><![CDATA[Enable HTML code in caption]]></item>
                <item name="wcf.media.category.choose"><![CDATA[Categories]]></item>
+               <item name="wcf.media.category.choose.noCategory"><![CDATA[(no category)]]></item>
                <item name="wcf.media.categoryID"><![CDATA[Category]]></item>
                <item name="wcf.media.chooseFile"><![CDATA[Select File]]></item>
                <item name="wcf.media.chooseImage"><![CDATA[Select Image]]></item>
@@ -4212,6 +4211,7 @@ Attachments:
        <category name="wcf.menu">
                <!-- category for menus and menu items -->
                <item name="wcf.menu.page"><![CDATA[Menu]]></item>
+               <item name="wcf.menu.page.button.toggle"><![CDATA[More {$title} pages]]></item>
                <item name="wcf.menu.page.location"><![CDATA[Current Location]]></item>
                <item name="wcf.menu.page.navigation"><![CDATA[Navigation]]></item>
                <item name="wcf.menu.page.options"><![CDATA[Options]]></item>
@@ -4354,6 +4354,7 @@ Attachments:
                <item name="wcf.page.error.backward"><![CDATA[Back to previous page.]]></item>
                <item name="wcf.page.error.insufficientPermissions"><![CDATA[Insufficient Permissions]]></item>
                <item name="wcf.page.error.loginAvailable"><![CDATA[This page or section may be accessible for authorized users only.]]></item>
+               <item name="wcf.page.error.flood"><![CDATA[You have performed too many actions of this type. The function has therefore been temporarily deactivated for security reasons. Please try again later.]]></item>
                <item name="wcf.page.jumpTo"><![CDATA[Go to Page]]></item>
                <item name="wcf.page.jumpTo.description"><![CDATA[Enter a value between “1” and “#pages#”.]]></item>
                <item name="wcf.page.redirect.title"><![CDATA[Redirection]]></item>
@@ -4510,13 +4511,8 @@ Attachments:
        <category name="wcf.search">
                <item name="wcf.search.author"><![CDATA[Search by Author]]></item>
                <item name="wcf.search.extended"><![CDATA[More Options]]></item>
-               <item name="wcf.search.general"><![CDATA[General Search Terms]]></item>
                <item name="wcf.search.matchExactly"><![CDATA[Exact match]]></item>
                <item name="wcf.search.period"><![CDATA[Time Period]]></item>
-               <item name="wcf.search.query"><![CDATA[Search for Term]]></item>
-               <item name="wcf.search.query.description"><![CDATA[Type in one or more search terms, each must be at least 4 characters.]]></item>
-               <item name="wcf.search.results.change"><![CDATA[Change Search]]></item>
-               <item name="wcf.search.results.description"><![CDATA[Search results {#$startIndex}-{#$endIndex} of {#$items}{if $query} for “<strong>{$query}</strong>”{/if}.{if $items == 1000} There are more results available, please enhance your search parameters.{/if}{if $highlight}<br>These terms were highlighted: <span class="highlight">{$highlight}</span>{/if}]]></item>
                <item name="wcf.search.sortBy"><![CDATA[Sort by]]></item>
                <item name="wcf.search.sortBy.relevance"><![CDATA[Relevance]]></item>
                <item name="wcf.search.sortBy.time"><![CDATA[Time]]></item>
@@ -4524,15 +4520,14 @@ Attachments:
                <item name="wcf.search.subjectOnly"><![CDATA[Search subject only]]></item>
                <item name="wcf.search.type"><![CDATA[Search in]]></item>
                <item name="wcf.search.type.everywhere"><![CDATA[Everywhere]]></item>
-               <item name="wcf.search.error.noMatches"><![CDATA[No items matched your search{if !$query|empty} terms: “{$query}”{/if}.]]></item>
-               <item name="wcf.search.error.user.noMatches"><![CDATA[There were no items matching this author.]]></item>
                <item name="wcf.search.object.com.woltlab.wcf.article"><![CDATA[Article]]></item>
                <item name="wcf.search.type.com.woltlab.wcf.article"><![CDATA[Articles]]></item>
                <item name="wcf.search.object.com.woltlab.wcf.page"><![CDATA[Page]]></item>
                <item name="wcf.search.type.com.woltlab.wcf.page"><![CDATA[Pages]]></item>
-               <item name="wcf.search.type.keywords"><![CDATA[Search by Terms]]></item>
                <item name="wcf.search.type.tags"><![CDATA[Search by Tags]]></item>
                <item name="wcf.search.type.tags.popular"><![CDATA[Popular Tags]]></item>
+               <item name="wcf.search.results.title"><![CDATA[{plural value=$count 0='No Results' one='One Result' other='# Results'}{if $query} for “{@$query}”{/if}]]></item>
+               <item name="wcf.search.button.showMoreFilters"><![CDATA[Advanced filters]]></item>
        </category>
        <category name="wcf.style">
                <item name="wcf.style.changeStyle"><![CDATA[Change Style]]></item>
@@ -4541,6 +4536,11 @@ Attachments:
                <item name="wcf.style.colorPicker.current"><![CDATA[current]]></item>
                <item name="wcf.style.currentStyle"><![CDATA[Current Style]]></item>
                <item name="wcf.style.colorPicker.button.apply"><![CDATA[Apply]]></item>
+               <item name="wcf.style.colorPicker.alpha"><![CDATA[Opacity]]></item>
+               <item name="wcf.style.colorPicker.hexAlpha"><![CDATA[Hex Value with Alpha Channel]]></item>
+               <item name="wcf.style.colorPicker.color"><![CDATA[Color]]></item>
+               <item name="wcf.style.colorPicker.button.changeColor"><![CDATA[Change color]]></item>
+               <item name="wcf.style.colorPicker.error.invalidColor"><![CDATA[The entered color is invalid.]]></item>
        </category>
        <category name="wcf.tagging">
                <item name="wcf.tagging.combinedTaggedObjects"><![CDATA[{implode from=$combinedTags item=tag glue=', '}“{$tag->name}”{/implode}]]></item>
@@ -4577,7 +4577,6 @@ Attachments:
                <item name="wcf.user.language"><![CDATA[Language]]></item>
                <item name="wcf.user.language.description"><![CDATA[User interface language]]></item>
                <item name="wcf.user.logout"><![CDATA[Logout]]></item>
-               <item name="wcf.user.logout.sure"><![CDATA[Do you really want to log out?]]></item>
                <item name="wcf.user.password"><![CDATA[Password]]></item>
                <item name="wcf.user.registrationDate"><![CDATA[Registration Date]]></item>
                <item name="wcf.user.registrationIpAddress"><![CDATA[Registration IP Address]]></item>
@@ -4671,11 +4670,11 @@ Attachments:
                <item name="wcf.user.lostPassword.email.error.notFound"><![CDATA[“{$email}” is not used by any account.]]></item>
                <item name="wcf.user.lostPassword.error.tooManyRequests"><![CDATA[The password has been requested at least once in the past 24 hours. For security reasons you must wait at least {#$hours} hour{if $hours != 1}s{/if} before requesting it again.]]></item>
                <item name="wcf.user.lostPassword.error.flood"><![CDATA[You have requested too many passwords. The function has therefore been temporarily deactivated for security reasons. Please try again later.]]></item>
-               <item name="wcf.user.lostPassword.mail.subject"><![CDATA[Lost Password for Website: {@PAGE_TITLE|language}]]></item>
+               <item name="wcf.user.lostPassword.mail.subject"><![CDATA[Lost Password for Website: {@PAGE_TITLE|phrase}]]></item>
                <item name="wcf.user.lostPassword.mail.plaintext"><![CDATA[Dear {@$mailbox->getUser()->username},
 
 You (or someone else) claimed to have lost the password for the user account {@$mailbox->getUser()->username} on
-the website {@PAGE_TITLE|language} [URL:{link isEmail=true}{/link}]. You can change your password after clicking
+the website {@PAGE_TITLE|phrase} [URL:{link isEmail=true}{/link}]. You can change your password after clicking
 the following link:
 
     {link controller='NewPassword' object=$mailbox->getUser() isEmail=true}k={@$mailbox->getUser()->lostPasswordKey}{/link} {* this line ends with a space *}
@@ -4684,7 +4683,7 @@ If you don’t want to change your password you can simply wait. The request wil
                <item name="wcf.user.lostPassword.mail.html.headline"><![CDATA[Dear {$mailbox->getUser()->username},]]></item>
                <item name="wcf.user.lostPassword.mail.html.intro"><![CDATA[
 <p>You (or someone else) claimed to have lost the password for the user account {$mailbox->getUser()->username} on
-the website <a href="{link isHtmlEmail=true}{/link}">{@PAGE_TITLE|language}</a>.</p>]]></item>
+the website <a href="{link isHtmlEmail=true}{/link}">{@PAGE_TITLE|phrase}</a>.</p>]]></item>
                <item name="wcf.user.lostPassword.mail.html.reset"><![CDATA[Change Password]]></item>
                <item name="wcf.user.lostPassword.mail.html.outro"><![CDATA[
 <p>If you don’t want to change your password you can simply wait. The request will expire at {$mailbox->getUser()->lastLostPasswordRequestTime+86400|plainTime}.</p>]]></item>
@@ -4712,15 +4711,16 @@ the website <a href="{link isHtmlEmail=true}{/link}">{@PAGE_TITLE|language}</a>.
                <item name="wcf.user.quit.description"><![CDATA[Note: Posts, attachments, and similar content will remain even after your account has been deleted.]]></item>
                <item name="wcf.user.quit.success"><![CDATA[Your user account will be deleted on {TIME_NOW+7*86400|date}. During this time period you can abort the deletion on this page.]]></item>
                <item name="wcf.user.quit.cancel.success"><![CDATA[The account deletion has been aborted.]]></item>
+               <item name="wcf.user.quit.active"><![CDATA[Your user account will be deleted on {$__wcf->user->quitStarted+7*86400|date}. During this time period you can abort the deletion within the <a href="{link controller='AccountManagement'}{/link}">Account Management Form</a>.]]></item>
                <item name="wcf.user.emailActivation"><![CDATA[Verify New Email Address]]></item>
                <item name="wcf.user.password.error.notSecure"><![CDATA[Please select a more secure password.]]></item>
                <item name="wcf.user.changeUsername.success"><![CDATA[The username has been changed.]]></item>
                <item name="wcf.user.changeEmail.success"><![CDATA[The email address has been changed.]]></item>
                <item name="wcf.user.changeEmail.needReactivation"><![CDATA[Your new email address{if $newEmail|isset} (“{$newEmail}”){/if} must be verified first. You should have received an email which was sent to your new email address containing an activation link. Open the link to verify your new email address.]]></item>
-               <item name="wcf.user.changeEmail.needReactivation.mail.subject"><![CDATA[Email Activation for Website: {@PAGE_TITLE|language}]]></item>
+               <item name="wcf.user.changeEmail.needReactivation.mail.subject"><![CDATA[Email Activation for Website: {@PAGE_TITLE|phrase}]]></item>
                <item name="wcf.user.changeEmail.needReactivation.mail.html.headline"><![CDATA[Dear {$mailbox->getUser()->username},]]></item>
                <item name="wcf.user.changeEmail.needReactivation.mail.html.intro"><![CDATA[
-<p>You have changed your email address on: <a href="{link isHtmlEmail=true}{/link}">{PAGE_TITLE|language}</a>. To complete
+<p>You have changed your email address on: <a href="{link isHtmlEmail=true}{/link}">{PAGE_TITLE|phrase}</a>. To complete
 this change it is required to confirm your new email address once:</p>]]></item>
                <item name="wcf.user.changeEmail.needReactivation.mail.html.activate"><![CDATA[Confirm my email address]]></item>
                <item name="wcf.user.changeEmail.needReactivation.mail.html.outro"><![CDATA[
@@ -4730,7 +4730,7 @@ this change it is required to confirm your new email address once:</p>]]></item>
 you did not register an account with us.</p>]]></item>
                <item name="wcf.user.changeEmail.needReactivation.mail.plaintext"><![CDATA[Dear {@$mailbox->getUser()->username},
 
-You have changed your email address on: {@PAGE_TITLE|language} [URL:{link isEmail=true}{/link}]. To complete
+You have changed your email address on: {@PAGE_TITLE|phrase} [URL:{link isEmail=true}{/link}]. To complete
 this change it is required to confirm your new email address once:
 
     {link controller='EmailActivation' isEmail=true}u={@$mailbox->getUser()->userID}&a={@$mailbox->getUser()->reactivationCode}{/link} {* this line ends with a space *}
@@ -4848,12 +4848,12 @@ not register with us.]]></item>
                <item name="wcf.user.menu.community.notification"><![CDATA[Notifications]]></item>
                <item name="wcf.user.menu.community.following"><![CDATA[Users I Follow]]></item>
                <item name="wcf.user.menu.community.ignoredUsers"><![CDATA[Blocked Users]]></item>
-               <item name="wcf.user.menu.profile"><![CDATA[User Account]]></item>
+               <item name="wcf.user.menu.profile"><![CDATA[Manage Your Account]]></item>
                <item name="wcf.user.menu.profile.accountManagement"><![CDATA[Account Management]]></item>
                <item name="wcf.user.menu.profile.security"><![CDATA[Security]]></item>
                <item name="wcf.user.menu.profile.avatar"><![CDATA[Avatar]]></item>
                <item name="wcf.user.menu.profile.signature"><![CDATA[Signature]]></item>
-               <item name="wcf.user.menu.settings"><![CDATA[Settings]]></item>
+               <item name="wcf.user.menu.settings"><![CDATA[Settings and Privacy]]></item>
                <item name="wcf.user.menu.settings.notification"><![CDATA[Notifications]]></item>
                <item name="wcf.user.menu.settings.paidSubscription"><![CDATA[Paid Subscriptions]]></item>
        </category>
@@ -4861,10 +4861,10 @@ not register with us.]]></item>
                <item name="wcf.user.register"><![CDATA[Registration]]></item>
                <!-- Need Activation -->
                <item name="wcf.user.register.needActivation"><![CDATA[Your user account is not activated yet. You must complete the <a href="{link controller='RegisterActivation'}{/link}">activation process</a> first.]]></item>
-               <item name="wcf.user.register.needActivation.mail.subject"><![CDATA[Activate Your Registration for Website: {@PAGE_TITLE|language}]]></item>
+               <item name="wcf.user.register.needActivation.mail.subject"><![CDATA[Activate Your Registration for Website: {@PAGE_TITLE|phrase}]]></item>
                <item name="wcf.user.register.needActivation.mail.html.headline"><![CDATA[Dear {$mailbox->getUser()->username},]]></item>
                <item name="wcf.user.register.needActivation.mail.html.intro"><![CDATA[
-<p>Thank you for registering at: <a href="{link isHtmlEmail=true}{/link}">{PAGE_TITLE|language}</a>. Before you are able to use your
+<p>Thank you for registering at: <a href="{link isHtmlEmail=true}{/link}">{PAGE_TITLE|phrase}</a>. Before you are able to use your
 user account to its full extent it is required that you confirm validity of your email address once:</p>]]></item>
                <item name="wcf.user.register.needActivation.mail.html.activate"><![CDATA[Confirm my email address]]></item>
                <item name="wcf.user.register.needActivation.mail.html.outro"><![CDATA[
@@ -4874,7 +4874,7 @@ user account to its full extent it is required that you confirm validity of your
 you did not register an account with us.</p>]]></item>
                <item name="wcf.user.register.needActivation.mail.plaintext"><![CDATA[Dear {@$mailbox->getUser()->username},
 
-Thank you for registering at: {@PAGE_TITLE|language} [URL:{link isEmail=true}{/link}]. Before you are
+Thank you for registering at: {@PAGE_TITLE|phrase} [URL:{link isEmail=true}{/link}]. Before you are
 able to use your user account to its full extent it is required that you
 confirm the validity of your email address once:
 
@@ -4900,13 +4900,13 @@ A notification will be sent once your account has been approved.]]></item>
                <!-- Administrator Notification -->
                <item name="wcf.user.register.notification.mail"><![CDATA[Dear Administrator,
 
-someone registered with your website {@PAGE_TITLE|language}: {@$user->username}.
+someone registered with your website {@PAGE_TITLE|phrase}: {@$user->username}.
 
 Email address used: {@$user->email}.
 
 Open the link below to access the user profile:
 {link controller='User' object=$user isEmail=true}{/link}]]></item>
-               <item name="wcf.user.register.notification.mail.subject"><![CDATA[New Registration with Your Website: {@PAGE_TITLE|language}]]></item>
+               <item name="wcf.user.register.notification.mail.subject"><![CDATA[New Registration with Your Website: {@PAGE_TITLE|phrase}]]></item>
                <!-- Disclaimer -->
                <item name="wcf.user.register.disclaimer.accept"><![CDATA[Accept]]></item>
                <item name="wcf.user.register.disclaimer.decline"><![CDATA[Decline]]></item>
@@ -4953,7 +4953,7 @@ Open the link below to access the user profile:
 You used the emergency code “{$usedCode[identifier]}” for multi-factor authentication. This code no longer is valid. {plural value=$remaining 0='**You don't have any remaining codes.**' 1='You have one remaining code.' other='You have # remaining codes.'} {* this line ends with a space *}
 
 You can manage multi-factor authentication within the Account Security page [URL:{link controller='AccountSecurity' isEmail=true}#section_multifactor{/link}]. Within account security you can generate new emergency codes or disable multi-factor authentication.]]></item>
-               <item name="wcf.user.security.multifactor.backup.authenticationEmail.subject"><![CDATA[Authentication using emergency code on {@PAGE_TITLE|language}]]></item>
+               <item name="wcf.user.security.multifactor.backup.authenticationEmail.subject"><![CDATA[Authentication using emergency code on {@PAGE_TITLE|phrase}]]></item>
                <item name="wcf.user.security.multifactor.backup.code"><![CDATA[Emergency Code]]></item>
                <item name="wcf.user.security.multifactor.backup.code.description"><![CDATA[An emergency code consists of 20 digits and may only be used once.]]></item>
                <item name="wcf.user.security.multifactor.backup.error.flood"><![CDATA[Please try again later.]]></item>
@@ -4975,6 +4975,7 @@ You can manage multi-factor authentication within the Account Security page [URL
                <item name="wcf.user.security.multifactor.com.woltlab.wcf.multifactor.totp"><![CDATA[Smartphone App]]></item>
                <item name="wcf.user.security.multifactor.com.woltlab.wcf.multifactor.totp.description"><![CDATA[<small>Generate one time codes with an app on your smartphone.</small>]]></item>
                <item name="wcf.user.security.multifactor.com.woltlab.wcf.multifactor.totp.manage"><![CDATA[Manage Smartphone App]]></item>
+               <item name="wcf.user.security.multifactor.com.woltlab.wcf.multifactor.totp.link"><![CDATA[Begin setup]]></item>
                <item name="wcf.user.security.multifactor.description"><![CDATA[Protect your account by requiring authentication with a second factor for every login.]]></item>
                <item name="wcf.user.security.multifactor.disable"><![CDATA[Disable]]></item>
                <item name="wcf.user.security.multifactor.disable.confirm"><![CDATA[{if $remaining|empty}Completely Disable Multi-factor Authentication{else}Disable <strong>{lang}wcf.user.security.multifactor.{$setup->getObjectType()->objectType}{/lang}</strong>{/if}]]></item>
@@ -5002,7 +5003,7 @@ You can manage multi-factor authentication within the Account Security page [URL
                <item name="wcf.user.security.multifactor.email.enabled"><![CDATA[Emails Enabled]]></item>
                <item name="wcf.user.security.multifactor.email.enabled.description"><![CDATA[<p>Multi-factor authentication via email is enabled for your account. You will receive a one time code via email whenever you login.</p>
 <p>Use the <a href="{link controller='AccountSecurity'}#section_multifactor{/link}">Overview in Account Security</a> if you want to disable multi-factor authentication.</p>]]></item>
-               <item name="wcf.user.security.multifactor.email.subject"><![CDATA[{$code} is your one time code for {@PAGE_TITLE|language}]]></item>
+               <item name="wcf.user.security.multifactor.email.subject"><![CDATA[{$code} is your one time code for {@PAGE_TITLE|phrase}]]></item>
                <item name="wcf.user.security.multifactor.email.success"><![CDATA[The additional authentication via email has successfully been enabled.]]></item>
                <item name="wcf.user.security.multifactor.error.invalidCode"><![CDATA[The entered code is invalid.]]></item>
                <item name="wcf.user.security.multifactor.error.setupAllocationFailed"><![CDATA[Enabling this method failed. Please try again.]]></item>
@@ -5024,7 +5025,7 @@ You can manage multi-factor authentication within the Account Security page [URL
 You successfully enabled multi-factor authentication using the “{lang}wcf.user.security.multifactor.{$method->objectType}{/lang}” method. Going forward you will need to have your second factor handy for every login.
 
 You also received a list of emergency codes to use when your second factor becomes unavailable. **Did you store these emergency codes securely?** If you forgot you can do now by generating new codes in the Emergency Code Management [URL:{link controller='MultifactorManage' object=$backupMethod isEmail=true}{/link}].]]></item>
-               <item name="wcf.user.security.multifactor.setupEmail.subject"><![CDATA[Multi-factor Authentication Enabled on {@PAGE_TITLE|language}]]></item>
+               <item name="wcf.user.security.multifactor.setupEmail.subject"><![CDATA[Multi-factor Authentication Enabled on {@PAGE_TITLE|phrase}]]></item>
                <item name="wcf.user.security.multifactor.totp.code"><![CDATA[One Time Code]]></item>
                <item name="wcf.user.security.multifactor.totp.code.description"><![CDATA[The 6-digit one time code generated by the smartphone app.]]></item>
                <item name="wcf.user.security.multifactor.totp.createTime"><![CDATA[Set Up]]></item>
@@ -5120,6 +5121,9 @@ You also received a list of emergency codes to use when your second factor becom
                <item name="wcf.user.usersOnline.robots"><![CDATA[Search Engine Robots]]></item>
                <item name="wcf.user.usersOnline.record"><![CDATA[Record: {#USERS_ONLINE_RECORD} User{if USERS_ONLINE_RECORD != 1}s{/if} ({@USERS_ONLINE_RECORD_TIME|time})]]></item>
                <item name="wcf.user.usersOnline.users"><![CDATA[Users]]></item>
+               <item name="wcf.user.usersOnline.sortField.lastActivityTime"><![CDATA[Last Activity]]></item>
+               <item name="wcf.user.usersOnline.sortField.requestURI"><![CDATA[Location]]></item>
+               <item name="wcf.user.usersOnline.sortField.username"><![CDATA[Username]]></item>
        </category>
        <category name="wcf.user.recentActivity">
                <item name="wcf.user.recentActivity"><![CDATA[Recent Activities]]></item>
@@ -5286,6 +5290,7 @@ You also received a list of emergency codes to use when your second factor becom
                <item name="wcf.user.notification.notifications"><![CDATA[Notifications]]></item>
                <item name="wcf.user.notification.notifications.disabled"><![CDATA[Disabled]]></item>
                <item name="wcf.user.notification.notifications.enabled"><![CDATA[Enabled]]></item>
+               <item name="wcf.user.notification.settings"><![CDATA[Settings]]></item>
                <item name="wcf.user.notification.showAll"><![CDATA[Display All Notifications]]></item>
                <item name="wcf.user.notification.mail.disabled"><![CDATA[Email notification has been disabled.]]></item>
                <item name="wcf.user.notification.mail.disabled"><![CDATA[The selected email notifications have been unsubscribed.]]></item>
@@ -5303,7 +5308,7 @@ You also received a list of emergency codes to use when your second factor becom
                <item name="wcf.user.notification.mail.plaintext.outro"><![CDATA[This is an automatic notification, PLEASE DO NOT REPLY TO THIS EMAIL!
 
 Visit your notification settings [URL:{link controller='NotificationSettings' isEmail=true}{/link}] to configure
-your notifications on {@PAGE_TITLE|language} [URL:{link isEmail=true}{/link}] as you wish.
+your notifications on {@PAGE_TITLE|phrase} [URL:{link isEmail=true}{/link}] as you wish.
 
 If you only wish to disable this type of notification you can do so by visiting:
 {link controller='NotificationUnsubscribe' isEmail=true}eventID={@$event->eventID}&userID={@$mailbox->getUser()->userID}&token={@$mailbox->getUser()->notificationMailToken}{/link}]]></item>
@@ -5311,7 +5316,7 @@ If you only wish to disable this type of notification you can do so by visiting:
                <item name="wcf.user.notification.mail.html.outro"><![CDATA[<p>This is an automatic notification, <b>please do not reply to this email</b>!</p>
 
 <p>Visit your <a href="{link controller='NotificationSettings' isHtmlEmail=true}{/link}">notification settings</a> to configure
-your notifications on <a href="{link isHtmlEmail=true}{/link}">{PAGE_TITLE|language}</a> as you wish.</p>
+your notifications on <a href="{link isHtmlEmail=true}{/link}">{PAGE_TITLE|phrase}</a> as you wish.</p>
 
 <p>You can <a href="{link controller='NotificationUnsubscribe' isHtmlEmail=true}eventID={@$event->eventID}&userID={@$mailbox->getUser()->userID}&token={@$mailbox->getUser()->notificationMailToken}{/link}">disable only this type of notification</a> as well.</p>]]></item>
                <item name="wcf.user.notification.mail.daily.subject"><![CDATA[{if $count == 1}New Notification{else}{#$count} New Notifications{/if}]]></item>
@@ -5323,7 +5328,7 @@ You currently have {#$notifications|count} unread notification{if $notifications
 {/if}This is an automatic notification, PLEASE DO NOT REPLY TO THIS EMAIL!
 
 Visit your notification settings [URL:{link controller='NotificationSettings' isEmail=true}{/link}] to configure
-your notifications on {@PAGE_TITLE|language} [URL:{link isEmail=true}{/link}] as you wish.
+your notifications on {@PAGE_TITLE|phrase} [URL:{link isEmail=true}{/link}] as you wish.
 
 If you wish to disable all email notifications you can do so by visiting:
 {link controller='NotificationUnsubscribe' isEmail=true}userID={@$mailbox->getUser()->userID}&token={@$mailbox->getUser()->notificationMailToken}{/link}]]></item>
@@ -5335,7 +5340,7 @@ If you wish to disable all email notifications you can do so by visiting:
 <p>This is an automatic notification, <b>please do not reply to this email</b>!</p>
 
 <p>Visit your <a href="{link controller='NotificationSettings' isHtmlEmail=true}{/link}">notification settings</a> to configure
-your notifications on <a href="{link isHtmlEmail=true}{/link}">{PAGE_TITLE|language}</a> as you wish.</p>
+your notifications on <a href="{link isHtmlEmail=true}{/link}">{PAGE_TITLE|phrase}</a> as you wish.</p>
 
 <p>You can <a href="{link controller='NotificationUnsubscribe' isHtmlEmail=true}userID={@$mailbox->getUser()->userID}&token={@$mailbox->getUser()->notificationMailToken}{/link}">disable all email notifications</a> as well.</p>]]></item>
                <item name="wcf.user.notification.mail.authorList.plaintext"><![CDATA[{if !$event->getAuthor()->userID}{if $guestTimesTriggered > 1}Guests{else}A guest{/if}{else}{@$event->getAuthor()->username} [URL:{link controller='User' object=$event->getAuthor() isEmail=true}{/link}]{/if}{if $count > 1 && $count < 4}{if $count == 2 && !$guestTimesTriggered} and {else}, {/if}{@$authors[1]->username} [URL:{link controller='User' object=$authors[1] isEmail=true}{/link}]{if $count == 3}{if !$guestTimesTriggered} and {else}, {/if}{@$authors[2]->username} [URL:{link controller='User' object=$authors[2] isEmail=true}{/link}]{/if}{elseif $count >= 4}{if $guestTimesTriggered},{else} and{/if} {#$count-1} other users{/if}{if $event->getAuthor()->userID && $guestTimesTriggered} and {if $guestTimesTriggered == 1}a guest{else}{#$guestTimesTriggered} guests{/if}{/if}]]></item>
@@ -5419,10 +5424,10 @@ your notifications on <a href="{link isHtmlEmail=true}{/link}">{PAGE_TITLE|langu
                <item name="wcf.user.notification.com.woltlab.wcf.article.comment.response.notification.commentResponseOwner"><![CDATA[Notify me of new replies to comments on my articles]]></item>
                <item name="wcf.user.notification.articleComment.title"><![CDATA[New Comment (Article)]]></item>
                <item name="wcf.user.notification.articleComment.title.stacked"><![CDATA[{#$timesTriggered} new Comments (Article)]]></item>
-               <item name="wcf.user.notification.articleComment.message"><![CDATA[{if $author->userID}<strong>{$author}</strong>{else}A guest{/if} commented on your article <strong>{$article->getTitle()}</strong>.]]></item>
-               <item name="wcf.user.notification.articleComment.message.stacked"><![CDATA[{@'wcf.user.notification.stacked.authorList'|language} commented on your article <strong>{$article->getTitle()}</strong>.]]></item>
-               <item name="wcf.user.notification.articleComment.mail.plaintext"><![CDATA[{@$authorList} commented on your article “{@$article->getTitle()}” [URL:{@$article->getLink()}#comment{@$commentID}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]></item>
-               <item name="wcf.user.notification.articleComment.mail.html"><![CDATA[<p>{@$authorList} commented on your article <a href="{$article->getLink()}#comments/comment{@$commentID}">{$article->getTitle()}</a>:</p>]]></item>
+               <item name="wcf.user.notification.articleComment.message"><![CDATA[{if $author->userID}<strong>{$author}</strong>{else}A guest{/if} commented on the article <strong>{$article->getTitle()}</strong>.]]></item>
+               <item name="wcf.user.notification.articleComment.message.stacked"><![CDATA[{@'wcf.user.notification.stacked.authorList'|language} commented on the article <strong>{$article->getTitle()}</strong>.]]></item>
+               <item name="wcf.user.notification.articleComment.mail.plaintext"><![CDATA[{@$authorList} commented on the article “{@$article->getTitle()}” [URL:{@$article->getLink()}#comment{@$commentID}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]></item>
+               <item name="wcf.user.notification.articleComment.mail.html"><![CDATA[<p>{@$authorList} commented on the article <a href="{$article->getLink()}#comments/comment{@$commentID}">{$article->getTitle()}</a>:</p>]]></item>
                <item name="wcf.user.notification.articleComment.response.title"><![CDATA[New Reply (Article)]]></item>
                <item name="wcf.user.notification.articleComment.response.title.stacked"><![CDATA[{#$timesTriggered} new Replies (Article)]]></item>
                <item name="wcf.user.notification.articleComment.response.message"><![CDATA[{if $author->userID}<strong>{$author}</strong>{else}A guest{/if} replied to your comment on the article <strong>{$article->getTitle()}</strong>.]]></item>
@@ -5442,7 +5447,7 @@ your notifications on <a href="{link isHtmlEmail=true}{/link}">{PAGE_TITLE|langu
                <item name="wcf.user.notification.article.mail.html"><![CDATA[<p><strong>{$author}</strong> wrote the article <a href="{$articleContent->getLink()}">{$articleContent->getTitle()}</a>:</p>]]></item>
                <item name="wcf.user.notification.com.woltlab.wcf.articleComment.response.notification.commentResponseOwner"><![CDATA[Notify me of new replies to comments on my articles]]></item>
                <item name="wcf.user.notification.com.woltlab.wcf.articleComment.response.notification.commentResponse"><![CDATA[Notify me of new replies to my comments]]></item>
-               <item name="wcf.user.notification.com.woltlab.wcf.articleComment.notification.comment"><![CDATA[Notify me of new comments on my articles]]></item>
+               <item name="wcf.user.notification.com.woltlab.wcf.articleComment.notification.comment"><![CDATA[Notify me of new comments on my articles and on articles in subscribed categories]]></item>
                <item name="wcf.user.notification.pageComment.responseOwner.title"><![CDATA[New reply (Page)]]></item>
                <item name="wcf.user.notification.userRegistration.title"><![CDATA[New user registration]]></item>
                <item name="wcf.user.notification.userRegistration.title.stacked"><![CDATA[{#$count} new user registrations]]></item>
@@ -5452,6 +5457,8 @@ your notifications on <a href="{link isHtmlEmail=true}{/link}">{PAGE_TITLE|langu
                <item name="wcf.user.notification.userRegistration.mail.html"><![CDATA[<p>{@$authorList} {if $count == 1}has{else}have{/if} registered:</p>]]></item>
                <item name="wcf.user.notification.status.active"><![CDATA[Active]]></item>
                <item name="wcf.user.notification.status.email"><![CDATA[Email]]></item>
+               <item name="wcf.user.notification.enableDesktopNotifications"><![CDATA[Enable desktop notifications to receive alerts for new notifications.]]></item>
+               <item name="wcf.user.notification.enableDesktopNotifications.button"><![CDATA[Change Preferences]]></item>
        </category>
        <category name="wcf.user.profile">
                <item name="wcf.user.profile.content.about.noPublicData"><![CDATA[{if $userID == $__wcf->getUser()->userID}You have not provided any details yet.{else}There are no details visible to you.{/if}]]></item>
@@ -5478,6 +5485,7 @@ your notifications on <a href="{link isHtmlEmail=true}{/link}">{PAGE_TITLE|langu
                <item name="wcf.user.profile.title"><![CDATA[User profile of {$user->username}]]></item>
        </category>
        <category name="wcf.user.objectWatch">
+               <item name="wcf.user.objectWatch.button.subscribe"><![CDATA[Subscribe]]></item>
                <item name="wcf.user.objectWatch.manageSubscription"><![CDATA[Manage Subscription]]></item>
                <item name="wcf.user.objectWatch.subscribe.com.woltlab.wcf.article.category"><![CDATA[Watch this category]]></item>
                <item name="wcf.user.objectWatch.enableNotification.com.woltlab.wcf.article.category"><![CDATA[Notify me of new articles.]]></item>
@@ -5527,12 +5535,12 @@ your notifications on <a href="{link isHtmlEmail=true}{/link}">{PAGE_TITLE|langu
        <category name="wcf.user.mail">
                <item name="wcf.user.mail.mail.plaintext"><![CDATA[Dear {@$mailbox->getUser()->username},
 
-“{@$username}” sent you a message on {@PAGE_TITLE|language} [URL:{link isEmail=true}{/link}]:
+“{@$username}” sent you a message on {@PAGE_TITLE|phrase} [URL:{link isEmail=true}{/link}]:
 
 {@$message}]]></item>
                <item name="wcf.user.mail.mail.html"><![CDATA[<h2>Dear {$mailbox->getUser()->username},</h2>
 
-<p>“{$username}” sent you a message on <a href="{link isHtmlEmail=true}{/link}">{PAGE_TITLE|language}</a>:</p>
+<p>“{$username}” sent you a message on <a href="{link isHtmlEmail=true}{/link}">{PAGE_TITLE|phrase}</a>:</p>
 
 <p>{@$message|newlineToBreak}</p>]]></item>
        </category>
@@ -5552,4 +5560,52 @@ your notifications on <a href="{link isHtmlEmail=true}{/link}">{PAGE_TITLE|langu
                <item name="wcf.upload.error.reachedRemainingLimit"><![CDATA[You have selected too many files. You can only upload {#$maxFiles} more file{if $maxFiles != 1}s{/if}.]]></item>
                <item name="wcf.upload.error.uploadFailed"><![CDATA[An unknown error occurred during the upload.]]></item>
        </category>
+</import>
+<delete>
+       <item name="wcf.acp.masterPassword"/>
+       <item name="wcf.acp.masterPassword.confirm"/>
+       <item name="wcf.acp.masterPassword.enter"/>
+       <item name="wcf.acp.masterPassword.enter.description"/>
+       <item name="wcf.acp.masterPassword.error.notEqual"/>
+       <item name="wcf.acp.masterPassword.error.notSecure"/>
+       <item name="wcf.acp.masterPassword.error.invalid"/>
+       <item name="wcf.acp.masterPassword.example"/>
+       <item name="wcf.acp.masterPassword.example.set"/>
+       <item name="wcf.acp.masterPassword.init"/>
+       <item name="wcf.acp.masterPassword.init.description"/>
+       <item name="wcf.acp.masterPassword.enter.deprecated"/>
+       <item name="wcf.acp.option.module_master_password"/>
+       <item name="wcf.acp.option.module_master_password.description"/>
+       <item name="wcf.acp.option.blacklist_ip_addresses"/>
+       <item name="wcf.acp.option.blacklist_ip_addresses.description"/>
+       <item name="wcf.acp.option.blacklist_user_agents"/>
+       <item name="wcf.acp.option.blacklist_user_agents.description"/>
+       <item name="wcf.global.form.error.lessThan.javaScript"/>
+       <item name="wcf.global.form.error.greaterThan.javaScript"/>
+       <item name="wcf.acp.devtools.project.compatibility"/>
+       <item name="wcf.acp.devtools.project.apiVersions"/>
+       <item name="wcf.acp.devtools.project.apiVersions.description"/>
+       <item name="wcf.acp.style.globals.pageLogo.description"/>
+       <item name="wcf.acp.style.globals.pageLogoMobile.description"/>
+       <item name="wcf.acp.option.profile_mail_use_captcha"/>
+       <item name="wcf.acp.option.mail_smtp_starttls.may"/>
+       <item name="wcf.acp.index.nonInnoDbSearch"/>
+       <item name="wcf.acp.systemCheck.mysql.searchEngine"/>
+       <item name="wcf.acp.systemCheck.mysql.searchEngine.description"/>
+       <item name="wcf.acp.systemCheck.mysql.searchEngine.incorrect"/>
+       <item name="wcf.acp.group.option.user.attachment.maxCount.description"/>
+       <item name="wcf.acp.option.enable_censorship"/>
+       <item name="wcf.acp.option.enable_censorship.description"/>
+       <item name="wcf.search.type.keywords" />
+       <item name="wcf.acp.option.search_use_captcha" />
+       <item name="wcf.search.query.description" />
+       <item name="wcf.search.results.change" />
+       <item name="wcf.search.results.description" />
+       <item name="wcf.search.general" />
+       <item name="wcf.search.query" />
+       <item name="wcf.search.error.noMatches" />
+       <item name="wcf.search.error.user.noMatches" />
+       <item name="wcf.user.logout.sure"/>
+       <item name="wcf.acp.dataImport.existingMapping.confirmMessage"/>
+</delete>
 </language>