X-Git-Url: https://git.stricted.de/?a=blobdiff_plain;f=wcfsetup%2Finstall%2Flang%2Fen.xml;h=6eadf5e7e144b32688762aa2ff954ef6199a6906;hb=9ce379dc7e01eaf331fc0525b446d1d4b8422b7c;hp=d58d813012810d0589bfe21bbe7e4aca28a2fbf8;hpb=307aa3098436a7f86d1bf757987b7a6631393191;p=GitHub%2FWoltLab%2FWCF.git diff --git a/wcfsetup/install/lang/en.xml b/wcfsetup/install/lang/en.xml index d58d813012..6eadf5e7e1 100644 --- a/wcfsetup/install/lang/en.xml +++ b/wcfsetup/install/lang/en.xml @@ -1,9 +1,13 @@ - + + + + + @@ -33,7 +37,6 @@ - {$ad->adName}?]]> @@ -70,8 +73,22 @@ packageID}{/link}">{$application->getPackage()->getName()}”]]> + + The support for setups with multiple domains is discontinued.

+


+

It is strongly recommended to consolidate all apps on a shared domain, please adjust the domain and path settings for these apps:

+]]>
+ + + + +
@@ -111,6 +128,8 @@ articleID isACP=true}{/link}">previous versions of this article, the last change was by “{$lastVersion->username}” ({@$lastVersion->time|time}).]]> + + @@ -134,19 +153,17 @@ - [{$bbcode->bbcodeTag}]?]]> - Heads up! You must not set this option for inline elements such as bold or links.]]> + Attention: You must not set this option for inline elements such as bold or links.]]> - {$mediaProvider->title}?]]> {$variable} and will be replaced with the regular expression’s matching named group.
@@ -170,7 +187,6 @@ - {$box->name}?]]> @@ -258,7 +274,7 @@ - + @@ -270,7 +286,6 @@ - {$question->getQuestion()}?]]> @@ -304,7 +319,6 @@ - {$cronjob->getDescription()}?]]> @@ -322,7 +336,6 @@ - @@ -376,8 +389,7 @@ - {$object->name}?]]> - usage instructions in the developer documentation.]]> + usage instructions in the developer documentation.]]> @@ -574,9 +586,20 @@ - package.xml in the given directory. The package files have either been deleted or moved.]]> + package.xml in the entered directory. The package files have either been deleted or moved.]]> package.xml file: {implode from=$missingElements item=missingElement}{$missingElement}{/implode}.]]> + + + + + + + + + + + @@ -590,6 +613,16 @@ + + + + + + + + + + @@ -633,7 +666,6 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - {$group->getTitle()}?]]> @@ -654,7 +686,7 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - + @@ -704,7 +736,6 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - @@ -713,7 +744,7 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - + cannot be used by the users of this user group.]]> @@ -734,7 +765,6 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - @@ -745,8 +775,8 @@ ATTENTION: The messages listed above are greatly shortened. You can view details cannot be used in the signature.]]> - - <strong>%s</strong> results in a bolder appearance.]]> + + <strong>%s</strong> results in a bolder appearance.]]> @@ -777,7 +807,7 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - + @@ -787,7 +817,6 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - {$assignment->title}?]]> @@ -849,6 +878,8 @@ ATTENTION: The messages listed above are greatly shortened. You can view details + + @@ -858,17 +889,21 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - + - please set it up now.]]> - - - + + + + + + + + will not be filtered according to the administrator’s permissions and may contain information that would be inaccessible otherwise.]]> @@ -879,7 +914,6 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - Manage Apps.]]> @@ -908,20 +942,19 @@ ATTENTION: The messages listed above are greatly shortened. You can view details enabling it.]]>
For further use you need to provide a key in your options, please follow the instructions below the input field to obtain a key.]]>
- {'WCF_DIR'|constant}log/missingLanguageItems.txt for more information.]]> + list of missing phrases for more information.]]> + System Check.]]>
- {$label}?]]> add a label group before creating labels.]]> - {$group->getTitle()}?]]> @@ -939,13 +972,12 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - + ISO 639-1 language code, you can look up the language code at https://en.wikipedia.org/wiki/ISO_639-1.]]> ISO 3166-1 country code, you can look up the country code at https://en.wikipedia.org/wiki/ISO_3166-1.]]> - {$language->languageName}?]]> @@ -974,7 +1006,7 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - + languageCustomItemDisableTime} on {$item->languageCustomItemDisableTime|date}{/if}.]]> @@ -997,6 +1029,8 @@ ATTENTION: The messages listed above are greatly shortened. You can view details 1}s{/if}.]]> + + @@ -1010,6 +1044,7 @@ ATTENTION: The messages listed above are greatly shortened. You can view details + Multi-factor Authentication 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.]]> @@ -1130,11 +1165,10 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - {$menu->getTitle()}?]]> - {$menuItemNode->getTitle()}?]]> + getTitle()}]]> @@ -1166,6 +1200,9 @@ ATTENTION: The messages listed above are greatly shortened. You can view details + + + @@ -1197,7 +1234,6 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - {$notice->noticeName}?]]> @@ -1212,26 +1248,24 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - - - - - - + + + + - + - + - - memcached.org.]]> + + redis.io.]]> @@ -1285,8 +1319,8 @@ ATTENTION: The messages listed above are greatly shortened. You can view details maxvalue !== null} of {#$option->maxvalue}{/if}.]]> minvalue !== null} of {#$option->minvalue}{/if}.]]> - - + + “X-Frame-Options” header to prevent 3rd party sites from embedding this site in a frame (sends “SAMEORIGIN”).]]> @@ -1296,7 +1330,7 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - + @@ -1306,8 +1340,10 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - + + + ssl://, for example, ssl://mail.example.com instead of mail.example.com.]]> @@ -1321,21 +1357,13 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - - - + + - - - - - - - @@ -1353,13 +1381,11 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - - - + @@ -1369,11 +1395,10 @@ ATTENTION: The messages listed above are greatly shortened. You can view details reCAPTCHA website.]]> - in addition to the keys above if you want to use the invisible variant of reCAPTCHA.]]> + in addition to the keys above if you want to use the invisible variant of reCAPTCHA.]]> - - + @@ -1386,11 +1411,10 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - -
  • “*” to match parts: “wolt*” matches “woltlab”
  • “~” to find splitted parts: “wolt~” matches “wolt-lab”
  • @@ -1431,25 +1455,23 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - - + + - - - - - - - + + zxcvbn library that passwords need to achive.]]> + + + - + - + - + @@ -1459,17 +1481,17 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - + - + @@ -1518,13 +1540,13 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - + -
  • “WBB=WoltLab Burning Board”
  • “GmbH=Gesellschaft mit beschränkter Haftung”
  • @@ -1548,13 +1570,12 @@ ATTENTION: The messages listed above are greatly shortened. You can view details - - Setting up user friendly URLs. Enabling this option will rewrite URLs into a better readable representation. Examples: + Setting up user friendly URLs. Enabling this option will rewrite URLs into a better readable representation. Examples:
    • the link “https://example.com/index.php?thread/1-hello-i-am-john-doe/” will turn into “https://example.com/thread/1-hello-i-am-john-doe/”
    • the link “https://example.com/index.php?members-list/” will turn into “https://example.com/members-list/”
    • @@ -1635,27 +1656,28 @@ When prompted for the notification URL for the instant payment notifications, pl + - + - - *.example.com matches example.com and subdomains such as foo.example.com or www.example.com.
      Enter one domain per line only.]]>
      + + *.example.com matches example.com and subdomains such as foo.example.com or www.example.com.]]> - + - + - + @@ -1675,7 +1697,7 @@ When prompted for the notification URL for the instant payment notifications, pl - + input fields and recipients to better suit your needs.]]> @@ -1689,11 +1711,9 @@ When prompted for the notification URL for the instant payment notifications, pl - - - *.example.com matches example.com and subdomains such as foo.example.com or www.example.com.
      Enter one domain per line only.]]>
      + *.example.com matches example.com and subdomains such as foo.example.com or www.example.com.]]> @@ -1701,7 +1721,7 @@ When prompted for the notification URL for the instant payment notifications, pl - {'WCF_DIR'|constant}log/missingLanguageItems.txt.]]> + Missing Phrases page.]]> @@ -1740,6 +1760,19 @@ The database is carefully maintained, but there will be always be a margin of er Disable and require manual approval.]]> + + AMP versions of certain pages (e.g. articles).]]> + + + + + *.example.com matches example.com and subdomains such as foo.example.com or www.example.com.]]> + + {$item} already exists.]]> + + + + @@ -1760,9 +1793,8 @@ The database is carefully maintained, but there will be always be a margin of er - + - {$option->getTitle()}?]]> @@ -1792,7 +1824,7 @@ The database is carefully maintained, but there will be always be a margin of er - + @@ -1858,6 +1890,7 @@ The database is carefully maintained, but there will be always be a margin of er + customer area on woltlab.com.]]> requiresLicense()}license and serial number{else}username and password{/if}.]]> @@ -1884,6 +1917,9 @@ The database is carefully maintained, but there will be always be a margin of er + + + @@ -1911,6 +1947,9 @@ The database is carefully maintained, but there will be always be a margin of er + + + getPackage()->package}”, which is already installed, uses the same app abbreviation.]]> {$packageName} has expired. For a legal use of this software, please update to the latest available version.{if $pluginStoreFileID || $isWoltLab}
      The latest version can be purchased quickly and securely {if $pluginStoreFileID}in the WoltLab Plugin-Store{else}on WoltLab.com{/if}.{/if}]]>
      {$evaluationEndDate|plainTime} ({@$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. @@ -1926,6 +1965,7 @@ If you have already bought the licenses for the listed apps, th + already bought the licenses for the listed apps, th The column {$error[tableName]}.{$error[columnName]} belongs to a different package and thus cannot be dropped. {else if $error[type] === 'foreignColumnChange'} The column {$error[tableName]}.{$error[columnName]} belongs to a different package and thus cannot be dropped. + {else if $error[type] === 'renameNonexistingColumn'} + The column {$error[tableName]}.{$error[columnName]} does not exist and thus cannot be renamed. {else if $error[type] === 'foreignIndexDrop'} The index {$error[tableName]} ({$error[columnNames]}) belongs to a different package and thus cannot be dropped. {else if $error[type] === 'nonexistingColumnInIndex'} @@ -1948,10 +1990,22 @@ If you have already bought the licenses for the listed apps, th The primary index {$error[tableName]} ({$error[columnNames]}) contains the column {$error[columnName]} whose values can be NULL. {else if $error[type] === 'foreignForeignKeyDrop'} The foreign key {$error[tableName]} ({$error[columnNames]}) belongs to a different package and thus cannot be dropped. + {else if $error[type] === 'unknownTableInForeignKey'} + The foreign key {$error[tableName]} ({$error[columnNames]}) references an unknown table {$error[referencedTableName]}. {else} Unknown error. {/if} {/implode}]]> + {$taintedApplication->getPackage()->getTitle()}{/if} is not fully installed. You need to uninstall and then reinstall the app to be able to use it.]]> + + + +
      The new WoltLab Suite {$version} is available for installation. We have provided a guide with the instructions for the upgrade in our manual.
      +
      +Validate the system requirements to begin the upgrade]]>
      + +
      +Cancel the upgrade]]>
      @@ -1965,7 +2019,7 @@ If you have already bought the licenses for the listed apps, th - + @@ -1988,17 +2042,16 @@ If you have already bought the licenses for the listed apps, th - {$subscription->title|language}?]]>
      Your PHP version has been compiled without OpenSSL support, it is required to establish secure connections, please contact your hosting company or system-administrator to resolve this shortcoming.]]>
      - + - - + + @@ -2006,14 +2059,14 @@ If you have already bought the licenses for the listed apps, th - + - + {$product[packageName]}?]]> - - add it.
      The server address is: “http://store.woltlab.com/{$wcfMajorRelease}/”]]>
      - - + + add it.
      The server address is: “http://store.woltlab.com/{$wcfMajorRelease}/”]]>
      + +
      @@ -2131,6 +2184,7 @@ If you have already bought the licenses for the listed apps, th + @@ -2142,6 +2196,7 @@ If you have already bought the licenses for the listed apps, th + @@ -2322,7 +2377,6 @@ If you have already bought the licenses for the listed apps, th - @@ -2330,11 +2384,11 @@ If you have already bought the licenses for the listed apps, th - - + + - user) or the ACP (admin).]]> + user), the ACP (admin), or in both (all).]]> @@ -2492,7 +2546,7 @@ If you have already bought the licenses for the listed apps, th - + @@ -2500,36 +2554,37 @@ If you have already bought the licenses for the listed apps, th - aclOption package installation plugin allows setting up permissions for individual objects. You can find more information in the developer documentation.]]> - acpMenu package installation plugin installs new ACP menu items. You can find more information in the developer documentation.]]> - acpSearchProvider package installation plugin installs new data provider for the admin panel search. You can find more information in the developer documentation.]]> - bbcode package installation plugin installs new BBCodes. You can find more information in the developer documentation.]]> - box package installation plugin installs new pre-configured boxes. You can find more information in the developer documentation.]]> - clipboardAction package installation plugin installs new clipboard actions that can be executed for multiple objects at once. You can find more information in the developer documentation.]]> - coreObject package installation plugin installs new wcf\system\SingletonFactory objects that can be accessed in templates. You can find more information in the developer documentation.]]> - cronjob package installation plugin installs new cronjobs that are executed regularly in the background. You can find more information in the developer documentation.]]> - eventListener package installation plugin installs new event listeners. You can find more information in the developer documentation.]]> - language package installation plugin installs new language items. You can find more information in the developer documentation.]]> - mediaProvider package installation plugin installs new media providers that automatically convert links to media websites. You can find more information in the developer documentation.]]> - menu package installation plugin installs new menus. You can find more information in the developer documentation.]]> - menuItem package installation plugin installs new menu items for existing menus. You can find more information in the developer documentation.]]> - objectType package installation plugin installs new object types. You can find more information in the developer documentation.]]> - objectTypeDefinition package installation plugin installs new object type definitions. You can find more information in the developer documentation.]]> - option package installation plugin installs new options. You can find more information in the developer documentation.]]> - packageInstallationPlugin package installation plugin installs new package installation plugins. You can find more information in the developer documentation.]]> - page package installation plugin installs new pages. You can find more information in the developer documentation.]]> - smiley package installation plugin installs new smileys. You can find more information in the developer documentation.]]> - templateListener package installation plugin installs new template listeners. You can find more information in the developer documentation.]]> - userGroupOption package installation plugin installs new user group options. You can find more information in the developer documentation.]]> - userMenu package installation plugin installs new menu items for the user menu. You can find more information in the developer documentation.]]> - userNotificationEvent package installation plugin installs new user notification events. You can find more information in the developer documentation.]]> - userOption package installation plugin installs new user options and profile fields. You can find more information in the developer documentation.]]> - userProfileMenu package installation plugin installs new menu items for the user profile menu. You can find more information in the developer documentation.]]> + aclOption package installation plugin allows setting up permissions for individual objects. You can find more information in the developer documentation.]]> + acpMenu package installation plugin installs new ACP menu items. You can find more information in the developer documentation.]]> + acpSearchProvider package installation plugin installs new data provider for the admin panel search. You can find more information in the developer documentation.]]> + bbcode package installation plugin installs new BBCodes. You can find more information in the developer documentation.]]> + box package installation plugin installs new pre-configured boxes. You can find more information in the developer documentation.]]> + clipboardAction package installation plugin installs new clipboard actions that can be executed for multiple objects at once. You can find more information in the developer documentation.]]> + coreObject package installation plugin installs new wcf\system\SingletonFactory objects that can be accessed in templates. You can find more information in the developer documentation.]]> + cronjob package installation plugin installs new cronjobs that are executed regularly in the background. You can find more information in the developer documentation.]]> + eventListener package installation plugin installs new event listeners. You can find more information in the developer documentation.]]> + language package installation plugin installs new language items. You can find more information in the developer documentation.]]> + mediaProvider package installation plugin installs new media providers that automatically convert links to media websites. You can find more information in the developer documentation.]]> + menu package installation plugin installs new menus. You can find more information in the developer documentation.]]> + menuItem package installation plugin installs new menu items for existing menus. You can find more information in the developer documentation.]]> + objectType package installation plugin installs new object types. You can find more information in the developer documentation.]]> + objectTypeDefinition package installation plugin installs new object type definitions. You can find more information in the developer documentation.]]> + option package installation plugin installs new options. You can find more information in the developer documentation.]]> + packageInstallationPlugin package installation plugin installs new package installation plugins. You can find more information in the developer documentation.]]> + page package installation plugin installs new pages. You can find more information in the developer documentation.]]> + smiley package installation plugin installs new smileys. You can find more information in the developer documentation.]]> + templateListener package installation plugin installs new template listeners. You can find more information in the developer documentation.]]> + userGroupOption package installation plugin installs new user group options. You can find more information in the developer documentation.]]> + userMenu package installation plugin installs new menu items for the user menu. You can find more information in the developer documentation.]]> + userNotificationEvent package installation plugin installs new user notification events. You can find more information in the developer documentation.]]> + userOption package installation plugin installs new user options and profile fields. You can find more information in the developer documentation.]]> + userProfileMenu package installation plugin installs new menu items for the user profile menu. You can find more information in the developer documentation.]]> {literal}{if LANGUAGE_USE_INFORMAL_VARIANT}{else}{/if}{/literal}, „“]]> “”]]> + + - {$reactionType->getTitle()}?]]> @@ -2554,8 +2609,6 @@ If you have already bought the licenses for the listed apps, th - - @@ -2568,6 +2621,9 @@ If you have already bought the licenses for the listed apps, th + + + @@ -2622,7 +2678,7 @@ If you have already bought the licenses for the listed apps, th

      Instructions for submitting the sitemap:

      ]]> @@ -2670,12 +2726,12 @@ If you have already bought the licenses for the listed apps, th - + - - MyISAM): {implode from=$results[mysql][searchEngine][incorrectTables] key=tableName item=engine glue=", "}{$tableName} ({$engine}){/implode}.]]> + + InnoDB): {implode from=$results[mysql][searchEngine][incorrectTables] key=tableName item=engine glue=", "}{$tableName} ({$engine}){/implode}. Use the Rebuild Data Page to migrate to the correct storage engine.]]> @@ -2686,21 +2742,25 @@ If you have already bought the licenses for the listed apps, th + +
      - {$updateServer->serverURL}?]]> - + + + + packageUpdateServerID}{/link}">edit this server instead.]]> @@ -2717,7 +2777,6 @@ If you have already bought the licenses for the listed apps, th - {$smiley->getTitle()}?]]> @@ -2733,7 +2792,7 @@ If you have already bought the licenses for the listed apps, th getPath()}”.]]> - + @@ -2755,6 +2814,7 @@ If you have already bought the licenses for the listed apps, th + @@ -2793,7 +2853,9 @@ If you have already bought the licenses for the listed apps, th {$style->styleName}?]]> - + + + custom/ folder in the style’s image folder. You can retrieve the folder’s path within the CSS by using #{$style_image_path}custom/.{/literal}]]> {$style->styleName}?]]> @@ -2821,6 +2883,7 @@ If you have already bought the licenses for the listed apps, th + @@ -2850,7 +2913,6 @@ If you have already bought the licenses for the listed apps, th - @@ -2865,18 +2927,18 @@ If you have already bought the licenses for the listed apps, th - + + + - - {$tag}?]]> @@ -2907,6 +2969,7 @@ If you have already bought the licenses for the listed apps, th + template group first.]]> @@ -2914,11 +2977,9 @@ If you have already bought the licenses for the listed apps, th - {$templateGroup->getName()}?]]> - {$template->templateName}?]]> @@ -2935,7 +2996,6 @@ If you have already bought the licenses for the listed apps, th - {$user->username}?]]> @@ -2958,7 +3018,7 @@ If you have already bought the licenses for the listed apps, th - + @@ -2970,7 +3030,6 @@ If you have already bought the licenses for the listed apps, th - @@ -2990,14 +3049,12 @@ You can define the default sender in “Configuration » Options » General » E - {$category->getTitle()}?]]> - {$option->getTitle()}?]]> @@ -3005,6 +3062,9 @@ You can define the default sender in “Configuration » Options » General » E + + %s as placeholder for the user input.]]> + %s.]]> @@ -3042,14 +3102,12 @@ You can define the default sender in “Configuration » Options » General » E CSS class name.]]> - {$userRank->getTitle()}?]]> - @@ -3076,10 +3134,11 @@ You can define the default sender in “Configuration » Options » General » E - + + - {#$usersAwaitingApproval} User{if $usersAwaitingApproval != 1}s{/if} {if $usersAwaitingApproval == 1}is{else}are{/if} awaiting your approval.]]> + {#$usersAwaitingApproval} User{if $usersAwaitingApproval != 1}s{/if} {if $usersAwaitingApproval == 1}is{else}are{/if} awaiting your approval.]]> @@ -3106,8 +3165,13 @@ the lost password form + + + + + getUser()->username},]]> - + Attention: The bulk processing executes all actions below on all users matching the selected conditions without any further confirmation prompt!]]> + + + + + + + {$user->username}. The user will need to setup up multi-factor authentication from scratch if this checkbox is checked.
      +Attention: Multi-factor authentication is actively set up by users to better protect their accounts. Please make sure to properly authenticate the user before disabling multi-factor authentication for their account.]]>
      @@ -3180,10 +3252,17 @@ Your account on the website: {@PAGE_TITLE|language} [URL:{link isEmail=true}{/li + + + {$author} reacted to your article {$article->getTitle()} ({@$__wcf->getReactionHandler()->renderInlineList($reactions)}).]]> + {$article->getTitle()} ({@$__wcf->getReactionHandler()->renderInlineList($reactions)}).]]> + - filesize|filesize}, downloaded {#$attachment->downloads} times{if $attachment->downloads > 0}, last: {@$attachment->lastDownloadTime|time}{/if})]]> + filesize|filesize} – {plural value=$attachment->downloads 1="1 Download" other="# Downloads"}]]> + filename}”]]> filesize|filesize}, {#$attachment->width}×{#$attachment->height}, viewed {#$attachment->downloads} times]]> + filename}”]]> @@ -3230,13 +3309,16 @@ Allowed extensions: {', '|implode:$attachmentHandler->getFormattedAllowedExtensi + + {$objectTitle}?]]> + - + @@ -3264,7 +3346,7 @@ Allowed extensions: {', '|implode:$attachmentHandler->getFormattedAllowedExtensi - + @@ -3276,9 +3358,12 @@ Errors are: - Missing commands - Failing commands - Core errors]]> - + + + + @@ -3314,10 +3399,19 @@ Errors are: + + + + + + + + + @@ -3334,6 +3428,7 @@ Errors are: + @@ -3352,7 +3447,7 @@ Errors are: Hello, -

      „{$name}“ sent you a message on {PAGE_TITLE|language} via the contact form:

      +

      “{$name}” sent you a message on {PAGE_TITLE|language} via the contact form:


      Email: {$emailAddress}

      {foreach from=$options item=option} @@ -3404,7 +3499,6 @@ Attachments: - {$recipient}?]]> @@ -3413,8 +3507,8 @@ Attachments: - userID}{/link}">{$user->username}” should be deleted.]]> - Heads up: The content will be deleted irrevocably and without any further confirmation prompt!]]> + userID}{/link}">{$user->username}”{else}{#$users|count} users{/if} should be deleted.]]> + Attention: The content will be deleted irrevocably and without any further confirmation prompt!]]> @@ -3696,17 +3790,17 @@ Attachments: - + - + - + @@ -3717,7 +3811,7 @@ Attachments: - + @@ -3795,6 +3889,7 @@ Attachments: + edit the previously created entry.]]> @@ -3831,7 +3926,7 @@ Attachments: - without further confirmation for all items matching your criteria.]]> + without further confirmation for all items matching your criteria.]]> @@ -3844,6 +3939,11 @@ Attachments: + + + + + @@ -3862,6 +3962,8 @@ Attachments: + + @@ -3902,9 +4004,9 @@ Attachments: getFilename()}” may have a maximum size of {$maximumFilesize|filesize}.]]> - getFilename()}“ may have a minimum width of {#$minimumImageWidth} pixels.]]> + getFilename()}” may have a minimum width of {#$minimumImageWidth} pixels.]]> getFilename()}” may have a maximum width of {#$maximumImageWidth} pixels.]]> - getFilename()}“ may have a minimum height of {#$minimumImageHeight} pixels.]]> + getFilename()}” may have a minimum height of {#$minimumImageHeight} pixels.]]> getFilename()}” may have a maximum height of {#$maximumImageHeight} pixels.]]> 1}{#$minimum} files{else}one file{/if}.]]> 1}{#$maximum} files{else}one file{/if}.]]> @@ -3924,7 +4026,7 @@ Attachments: - Maximum Image Size: {$coverPhotoDimensions.max.width}×{$coverPhotoDimensions.max.height} pixels
      Allowed File Extensions: gif, jpg, jpeg, png
      Maximum Filesize: {$__wcf->session->getPermission($coverPhotoPermissionMaxSize)|filesize}]]>
      + Maximum Image Size: {$coverPhotoDimensions.max.width}×{$coverPhotoDimensions.max.height} pixels
      Allowed File Extensions: gif, jpg, jpeg, png, webp
      Maximum Filesize: {$__wcf->session->getPermission($coverPhotoPermissionMaxSize)|filesize}]]>
      @@ -3967,14 +4069,14 @@ Attachments: - getReactionType()->getTitle()}" class="jsTooltip">{@$like->getReactionType()->renderIcon()} to the comment by {if $commentAuthor}{$commentAuthor->username}{else}a guest{/if} on {$user->username}’s wall.]]> - getReactionType()->getTitle()}" class="jsTooltip">{@$like->getReactionType()->renderIcon()} to the response by {if $responseAuthor}{$responseAuthor->username}{else}a guest{/if} on the comment by {if $commentAuthor}{$commentAuthor->username}{else}a guest{/if} on {$user->username}’s wall.]]> + render()} to the comment by {if $commentAuthor}{$commentAuthor->username}{else}a guest{/if} on {$user->username}’s wall.]]> + render()} to the response by {if $responseAuthor}{$responseAuthor->username}{else}a guest{/if} on the comment by {if $commentAuthor}{$commentAuthor->username}{else}a guest{/if} on {$user->username}’s wall.]]> - getReactionType()->getTitle()}" class="jsTooltip">{@$like->getReactionType()->renderIcon()} to the article {$article->getTitle()}.]]> - getReactionType()->getTitle()}" class="jsTooltip">{@$like->getReactionType()->renderIcon()} to the comment by {if $commentAuthor}{$commentAuthor->username}{else}a guest{/if} on the article {$articleContent->getTitle()}.]]> - getReactionType()->getTitle()}" class="jsTooltip">{@$like->getReactionType()->renderIcon()} to the response by {if $responseAuthor}{$responseAuthor->username}{else}a guest{/if} on the comment by {if $commentAuthor}{$commentAuthor->username}{else}a guest{/if} on the article {$articleContent->getTitle()}.]]> - getReactionType()->getTitle()}" class="jsTooltip">{@$like->getReactionType()->renderIcon()} to the comment by {if $commentAuthor}{$commentAuthor->username}{else}a guest{/if} on the page {$page->getTitle()}.]]> - getReactionType()->getTitle()}" class="jsTooltip">{@$like->getReactionType()->renderIcon()} to the response by {if $responseAuthor}{$responseAuthor->username}{else}a guest{/if} on the comment by {if $commentAuthor}{$commentAuthor->username}{else}a guest{/if} on the page {$page->getTitle()}.]]> + render()} to the article {$article->getTitle()}.]]> + render()} to the comment by {if $commentAuthor}{$commentAuthor->username}{else}a guest{/if} on the article {$articleContent->getTitle()}.]]> + render()} to the response by {if $responseAuthor}{$responseAuthor->username}{else}a guest{/if} on the comment by {if $commentAuthor}{$commentAuthor->username}{else}a guest{/if} on the article {$articleContent->getTitle()}.]]> + render()} to the comment by {if $commentAuthor}{$commentAuthor->username}{else}a guest{/if} on the page {$page->getTitle()}.]]> + render()} to the response by {if $responseAuthor}{$responseAuthor->username}{else}a guest{/if} on the comment by {if $commentAuthor}{$commentAuthor->username}{else}a guest{/if} on the page {$page->getTitle()}.]]> @@ -4002,6 +4104,7 @@ Attachments: + @@ -4028,6 +4131,8 @@ Attachments: session->getPermission('admin.content.cms.canOnlyAccessOwnMedia')}Own {/if}Media]]> + + @@ -4057,7 +4162,7 @@ Attachments: - + @@ -4073,6 +4178,10 @@ Attachments: + + + + @@ -4086,6 +4195,10 @@ Attachments: + + + + @@ -4100,6 +4213,8 @@ Attachments: + + @@ -4112,16 +4227,16 @@ Attachments: - userID}A guest{else}{@$author->getAnchorTag()}{/if} wrote a comment on the moderation entry {$moderationQueue->getTitle()}.]]> - getAnchorTag()}{if $count != 1}{if $count == 2} and {else}, {/if}{@$authors[1]->getAnchorTag()}{if $count == 3} and {@$authors[2]->getAnchorTag()}{/if}{/if}{else}{@$authors[0]->getAnchorTag()} and {#$others} other users{/if} wrote comments on the moderation entry {$moderationQueue->getTitle()}.]]> - getTitle()} [URL:{@$notificationContent[variables][moderationQueue]->getLink()}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> - {@$authorList} wrote {if $count == 1 && !$guestTimesTriggered}a comment{else}comments{/if} on the moderation entry {$notificationContent[variables][moderationQueue]->getTitle()}:

      ]]>
      + userID}{$author}{else}A guest{/if} commented on the moderation entry {$moderationQueue}.]]> + {$moderationQueue}.]]> + getTitle()} [URL:{@$moderationQueue->getLink()}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> + {@$authorList} commented on the moderation entry {$moderationQueue->getTitle()}:

      ]]>
      - userID}A guest{else}{@$author->getAnchorTag()}{/if} wrote a reply to a comment by {if $commentAuthor->userID}{$commentAuthor->username}{else}{$commentAuthor->username}{/if} on the moderation entry {$moderationQueue->getTitle()}.]]> - getAnchorTag()}{if $count != 1}{if $count == 2} and {else}, {/if}{@$authors[1]->getAnchorTag()}{if $count == 3} and {@$authors[2]->getAnchorTag()}{/if}{/if}{else}{@$authors[0]->getAnchorTag()} and {#$others} other users{/if} wrote replies to comments on the moderation entry {$moderationQueue->getTitle()}.]]> - username}’s{if $notificationContent[variables][commentAuthor]->userID} [URL:{link controller='User' object=$notificationContent[variables][commentAuthor] isEmail=true}{/link}]{/if} comment on the moderation entry {@$notificationContent[variables][moderationQueue]->getTitle()} [URL:{@$notificationContent[variables][moderationQueue]->getLink()}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> - {@$authorList} wrote {if $count == 1 && !$guestTimesTriggered}a reply{else}replies{/if} to {if $notificationContent[variables][commentAuthor]->userID}{$notificationContent[variables][commentAuthor]->username}{else}{$notificationContent[variables][commentAuthor]->username}{/if}’s comment on the moderation entry {$notificationContent[variables][moderationQueue]->getTitle()}:

      ]]>
      + userID}{$author}{else}A guest{/if} replied to a comment by {$commentAuthor} on the moderation entry {$moderationQueue}.]]> + {$moderationQueue}.]]> + getTitle()} [URL:{@$moderationQueue->getLink()}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> + {@$authorList} replied to {$commentAuthor}’s comment on the moderation entry {$moderationQueue->getTitle()}:

      ]]>
      @@ -4149,27 +4264,30 @@ Attachments: + + + Change the filters.{if $hasActiveFilter} Reset the active filters.{/if}]]>
      - + - userID}A guest{else}{@$author->getAnchorTag()}{/if} wrote a comment on {$moderationQueue->getTitle()} waiting for approval.]]> - getAnchorTag()}{if $count != 1}{if $count == 2} and {else}, {/if}{@$authors[1]->getAnchorTag()}{if $count == 3} and {@$authors[2]->getAnchorTag()}{/if}{/if}{else}{@$authors[0]->getAnchorTag()} and {#$others} other users{/if} wrote comments on {$moderationQueue->getTitle()} waiting for approval.]]> - getTitle()} [URL:{@$notificationContent[variables][moderationQueue]->getLink()}] waiting for approval{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> - {@$authorList} wrote {if $count == 1 && !$guestTimesTriggered}a comment{else}comments{/if} on the moderation entry {$notificationContent[variables][moderationQueue]->getTitle()} waiting for approval:

      ]]>
      + userID}{$author}{else}A guest{/if} commented on {$moderationQueue} waiting for approval.]]> + {$moderationQueue} waiting for approval.]]> + getTitle()} [URL:{@$moderationQueue->getLink()}] waiting for approval{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> + {@$authorList} commented on the moderation entry {$moderationQueue->getTitle()} waiting for approval:

      ]]>
      - userID}A guest{else}{@$author->getAnchorTag()}{/if} wrote a reply to a comment by {if $commentAuthor->userID}{$commentAuthor->username}{else}{$commentAuthor->username}{/if} on {$moderationQueue->getTitle()} waiting for approval.]]> - getAnchorTag()}{if $count != 1}{if $count == 2} and {else}, {/if}{@$authors[1]->getAnchorTag()}{if $count == 3} and {@$authors[2]->getAnchorTag()}{/if}{/if}{else}{@$authors[0]->getAnchorTag()} and {#$others} other users{/if} wrote replies to comments on {$moderationQueue->getTitle()} waiting for approval.]]> - username}’s{if $notificationContent[variables][commentAuthor]->userID} [URL:{link controller='User' object=$notificationContent[variables][commentAuthor] isEmail=true}{/link}]{/if} comment on {@$notificationContent[variables][moderationQueue]->getTitle()} [URL:{@$notificationContent[variables][moderationQueue]->getLink()}] waiting for approval{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> - {@$authorList} wrote {if $count == 1 && !$guestTimesTriggered}a reply{else}replies{/if} to {if $notificationContent[variables][commentAuthor]->userID}{$notificationContent[variables][commentAuthor]->username}{else}{$notificationContent[variables][commentAuthor]->username}{/if}’s comment on {$notificationContent[variables][moderationQueue]->getTitle()} waiting for approval:

      ]]>
      + userID}{$author}{else}A guest{/if} replied to a comment by {$commentAuthor} on {$moderationQueue} waiting for approval.]]> + {$moderationQueue} waiting for approval.]]> + getTitle()} [URL:{@$moderationQueue->getLink()}] waiting for approval{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> + {@$authorList} replied to {$commentAuthor}’s comment on {$moderationQueue->getTitle()} waiting for approval:

      ]]>
      - +
      @@ -4177,28 +4295,31 @@ Attachments: - userID}A guest{else}{@$author->getAnchorTag()}{/if} wrote a comment on the report {$moderationQueue->getTitle()}.]]> - getAnchorTag()}{if $count != 1}{if $count == 2} and {else}, {/if}{@$authors[1]->getAnchorTag()}{if $count == 3} and {@$authors[2]->getAnchorTag()}{/if}{/if}{else}{@$authors[0]->getAnchorTag()} and {#$others} other users{/if} wrote comments on the report {$moderationQueue->getTitle()}.]]> - getTitle()} [URL:{@$notificationContent[variables][moderationQueue]->getLink()}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> - {@$authorList} wrote {if $count == 1 && !$guestTimesTriggered}a comment{else}comments{/if} on the report {$notificationContent[variables][moderationQueue]->getTitle()}:

      ]]>
      + userID}{$author}{else}A guest{/if} commented on the report {$moderationQueue}.]]> + {$moderationQueue}.]]> + getTitle()} [URL:{@$moderationQueue->getLink()}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> + {@$authorList} commented on the report {$moderationQueue->getTitle()}:

      ]]>
      - userID}A guest{else}{@$author->getAnchorTag()}{/if} wrote a reply to a comment by {if $commentAuthor->userID}{$commentAuthor->username}{else}{$commentAuthor->username}{/if} on the report {$moderationQueue->getTitle()}.]]> - getAnchorTag()}{if $count != 1}{if $count == 2} and {else}, {/if}{@$authors[1]->getAnchorTag()}{if $count == 3} and {@$authors[2]->getAnchorTag()}{/if}{/if}{else}{@$authors[0]->getAnchorTag()} and {#$others} other users{/if} wrote replies to comments on the report {$moderationQueue->getTitle()}.]]> - username}’s{if $notificationContent[variables][commentAuthor]->userID} [URL:{link controller='User' object=$notificationContent[variables][commentAuthor] isEmail=true}{/link}]{/if} comment on the report {@$notificationContent[variables][moderationQueue]->getTitle()} [URL:{@$notificationContent[variables][moderationQueue]->getLink()}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> - {@$authorList} wrote {if $count == 1 && !$guestTimesTriggered}a reply{else}replies{/if} to {if $notificationContent[variables][commentAuthor]->userID}{$notificationContent[variables][commentAuthor]->username}{else}{$notificationContent[variables][commentAuthor]->username}{/if}’s comment on the report {$notificationContent[variables][moderationQueue]->getTitle()}:

      ]]>
      + userID}{$author}{else}A guest{/if} replied to a comment by {$commentAuthor->username} on the report {$moderationQueue}.]]> + {$moderationQueue->getTitle()}.]]> + getTitle()} [URL:{@$moderationQueue->getLink()}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> + {@$authorList} replied to {$commentAuthor}’s comment on the report {$moderationQueue->getTitle()}:

      ]]>
      - + 1}s{/if}?]]> - + + + +
      @@ -4275,7 +4396,6 @@ Attachments: - {$page->name}?]]> @@ -4287,7 +4407,6 @@ Attachments: - @@ -4321,7 +4440,7 @@ Attachments: Terms of Service]]> - getTitle()}” will expire {dateInterval start=$notification->time end=$userNotificationObject->endDate full=true format='sentence'} (on {$userNotificationObject->endDate|date:'F jS'}).]]> + {$userNotificationObject->getTitle()} will expire {dateInterval start=$notification->time end=$userNotificationObject->endDate full=true format='sentence'} (on {$userNotificationObject->endDate|date:'F jS'}).]]> getTitle()}” will expire {dateInterval start=$notification->time end=$subscription->endDate full=true format='sentence'} (on {@$subscription->endDate|date:'F jS'}).]]> getTitle()}” will expire {dateInterval start=$notification->time end=$subscription->endDate full=true format='sentence'} (on {$subscription->endDate|date:'F jS'}).]]> @@ -4338,7 +4457,7 @@ Attachments: - + @@ -4361,6 +4480,7 @@ Attachments: + renderIcon()} × {#$count}]]>
      @@ -4376,7 +4496,7 @@ Attachments: - + @@ -4480,10 +4600,10 @@ Attachments: - + Reset the applied filters.]]> @@ -4506,16 +4626,40 @@ Attachments: - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + getUser()->username}, @@ -4558,12 +4702,7 @@ the website {@PAGE_TITLE|language}. - + @@ -4591,17 +4730,18 @@ If you have troubles confirming your email address, please contact the administrator at: {@MAIL_ADMIN_ADDRESS}. Please ignore this email if you did not register with us.]]> - + + - user->email}”.]]> + user->email}”.]]> getSession()->getPermission('user.profile.renamePeriod')} days.]]> @@ -4682,6 +4822,15 @@ not register with us.]]> getBlacklistMatchesTitle() item=matchLabel}{$matchLabel}{/implode}).]]> + + + + user->username}? Logout and change user.]]> + + + + + @@ -4690,6 +4839,7 @@ not register with us.]]> + @@ -4707,7 +4857,7 @@ not register with us.]]> user account to its full extent it is required that you confirm validity of your email address once:

      ]]> Your activation code is: {$mailbox->getUser()->activationCode}.

      +

      Your activation code is: {$mailbox->getUser()->emailConfirmed}.

      If you have trouble confirming your email address, please contact the administrator at: {MAIL_ADMIN_ADDRESS}. Please ignore this email if you did not register an account with us.

      ]]>
      @@ -4717,13 +4867,15 @@ Thank you for registering at: {@PAGE_TITLE|language} [URL:{link isEmail=true}{/l able to use your user account to its full extent it is required that you confirm the validity of your email address once: - {link controller='RegisterActivation' isEmail=true}u={@$mailbox->getUser()->userID}&a={@$mailbox->getUser()->activationCode}{/link} {* this line ends with a space *} + {link controller='RegisterActivation' isEmail=true}u={@$mailbox->getUser()->userID}&a={@$mailbox->getUser()->emailConfirmed}{/link} {* this line ends with a space *} -Your activation code is: {@$mailbox->getUser()->activationCode} {* this line ends with a space *} +Your activation code is: {@$mailbox->getUser()->emailConfirmed} {* this line ends with a space *} If you have trouble confirming your email address, please contact the administrator at: {@MAIL_ADMIN_ADDRESS}. Please ignore this email if you did not register with us.]]> + + user->canEmailConfirm()}Confirm your email address{else}To activate your email address contact the administrator of this site{/if}.]]> username}.
      Your registration is now completed.]]>
      @@ -4737,12 +4889,12 @@ A notification will be sent once your account has been approved.]]> username} +someone registered with your website {@PAGE_TITLE|language}: {@$user->username}. -Email address used: {@$user->email} +Email address used: {@$user->email}. Open the link below to access the user profile: -{link controller='User' object=$user isEmail=true}{/link} ]]> +{link controller='User' object=$user isEmail=true}{/link}]]> @@ -4765,6 +4917,131 @@ Open the link below to access the user profile:

      Source: Mustervorlage.net

      ]]>
      + + + Account Management Form.]]> + + + + + + + + + + + Login once again.]]> + {$user->username} is protected by multi-factor authentication, but no methods are set up. Please contact the administrator for support.]]> + Dear {$setup->getUser()->username}, + +

      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.'}

      + +

      You can manage multi-factor authentication within the Account Security page. Within account security you can generate new emergency codes or disable multi-factor authentication.

      ]]>
      + getUser()->username}, + +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.]]> + + + + + + You can find the latest set of emergency codes for use with the multi-factor authentication below. Codes that are striked out have been used and are no longer valid. Use the bold identifier to compare the list to your notes. Please generate a new set of codes if the listed codes do not match your notes.

      ]]>
      + + + Generate new emergency codes if you lost or used up your existing set. Generating new emergency codes will invalidate all existing codes.

      ]]>
      + +
    • {plural value=$count 0="No codes remaining" 1="One code remaining" other="# codes remaining"}
    • +{if $lastUsed}
    • Last used on {@$lastUsed|plainTime}
    • {/if} +
    ]]>
    + + + + + You will receive a one time code via email after logging in.]]> + + + Generate one time codes with an app on your smartphone.]]> + + + + {lang}wcf.user.security.multifactor.{$setup->getObjectType()->objectType}{/lang}{/if}]]> + + By submitting this form the {lang}wcf.user.security.multifactor.{$setup->getObjectType()->objectType}{/lang} method for multi-factor authentication will be disabled. You will no longer be able to use this method to authenticate yourself.

    +{if !$remaining|empty} +

    After disabling {lang}wcf.user.security.multifactor.{$setup->getObjectType()->objectType}{/lang} the following methods will still be available for multi-factor authentication.

    + +{else} +

    Disabling {lang}wcf.user.security.multifactor.{$setup->getObjectType()->objectType}{/lang} will fully disable the use of multi-factor authentication for your account as it is the only active method.

    +{/if}]]>
    + You are a member of a user group that is required to use multi-factor authentication. For this reason you are not allowed to disable your last multi-factor method ({lang}wcf.user.security.multifactor.{$setup->getObjectType()->objectType}{/lang}).

    ]]>
    + {lang}wcf.user.security.multifactor.{$setup->getObjectType()->objectType}{/lang} method has successfully been disabled.]]> + + {$code}]]> + + + {$lastCode|date:'g:i:s a'} to your email address at {$emailDomain}.]]> + + With enabled confirmation via email you will receive a one time code via email whenever you login. You will need to have access to your email inbox to be able to login successfully.

    ]]>
    + + Multi-factor authentication via email is enabled for your account. You will receive a one time code via email whenever you login.

    +

    Use the Overview in Account Security if you want to disable multi-factor authentication.

    ]]>
    + + + + + The multi-factor authentication is enabled for your account starting now. Going forward you will need to have your second factor handy for every login.

    +


    +

    In addition we generated emergency codes for you. They will allow you to gain access to your account in case your second factor becomes unavailable.

    +


    +

    Please carefully note or save the emergency codes shown below. An example of a secure storage could be a piece of paper within a filing cabinet.

    ]]>
    + + + + Dear {$user->username}, + +

    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.

    ]]>
    + username}, + +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}].]]> + + + + + + + + user->username}’s Smartphone]]> + + + {$deviceName} if you want to switch phones. Use the Overview in Account Security if you want to disable multi-factor authentication.]]> + + + Authenticate using an app on your smartphone.

    +
      +
    1. Install an authentication app such as Google Authenticator (Android, iOS) or Authy (Android, iOS).
    2. +
    3. Scan the QR code within the app.
    4. +
    5. Enter the 6 digit one time code generated by the app.
    6. +
    ]]>
    + +
  • {plural value=$count 0="Not set up" 1="One device set up" other="# devices set up"}
  • +{if $lastUsed}
  • Last used on {@$lastUsed|plainTime}
  • {/if} +]]>
    + {$deviceName} has successfully been added.]]> + {$deviceName} has successfully been removed.]]> + + enable multi-factor authentication.]]> + getUserAgent()->getBrowser()}{$session->getUserAgent()->getBrowser()}{if $session->getUserAgent()->getOS()} on {$session->getUserAgent()->getOS()}{/if}{else}Unknown Device{/if}]]> +
    username}]]> @@ -4772,13 +5049,14 @@ Open the link below to access the user profile: - + getSession()->getPermission('user.profile.trophy.maxUserSpecialTrophies') > 1}trophies{else}trophy{/if} that you want to be shown in your profile and in the message sidebar.{if $__wcf->getSession()->getPermission('user.profile.trophy.maxUserSpecialTrophies') > 1} You can select a maximum of {#$__wcf->getSession()->getPermission('user.profile.trophy.maxUserSpecialTrophies')} trophies.{/if}]]> session->getPermission('user.profile.trophy.maxUserSpecialTrophies')} trophies.]]> getTrophy()->getLink()}">{$userTrophy->getTrophy()->getTitle()}.]]> + @@ -4801,7 +5079,6 @@ Open the link below to access the user profile: - {$trophy->getTitle()}?]]> @@ -4816,17 +5093,11 @@ Open the link below to access the user profile: - stats[members] > 0} - {#$usersOnlineList->stats[members]} Member{if $usersOnlineList->stats[members] != 1}s{/if} -{/if} -{if $usersOnlineList->stats[invisible] > 0} - ({#$usersOnlineList->stats[invisible]} invisible) -{/if} -{if $usersOnlineList->stats[guests] > 0 && $usersOnlineList->stats[members] > 0}and{/if} -{if $usersOnlineList->stats[guests] > 0} - {#$usersOnlineList->stats[guests]} Guest{if $usersOnlineList->stats[guests] != 1}s{/if} -{/if}]]> + stats[members] > 0}{#$usersOnlineList->stats[members]} Member{if $usersOnlineList->stats[members] != 1}s{/if}{/if}{* +*}{if $usersOnlineList->stats[invisible] > 0} ({#$usersOnlineList->stats[invisible]} invisible){/if}{* +*}{if $usersOnlineList->stats[guests] > 0 && $usersOnlineList->stats[members] > 0} and {/if}{* +*}{if $usersOnlineList->stats[guests] > 0}{#$usersOnlineList->stats[guests]} Guest{if $usersOnlineList->stats[guests] != 1}s{/if}{/if}]]> @@ -4861,18 +5132,21 @@ Open the link below to access the user profile: + + + {$exceptionID}.]]> + {$exceptionID}.]]> + -  GitHub. The username and your email address have therefore already been entered.]]> - session->getVar('__githubUsername')} “{$__wcf->session->getVar('__githubUsername')}”{/if}.]]> + session->getVar('__3rdPartyProvider') === 'github'} “{$__wcf->session->getVar('__oauthUser')->getUsername()}”{/if}.]]> -  Twitter. The username has therefore already been entered. Now enter your email address and you can start right away!]]> session->getVar('__twitterUsername')} “{$__wcf->session->getVar('__twitterUsername')}”{/if}.]]> @@ -4881,18 +5155,16 @@ Open the link below to access the user profile: -  Facebook. The username and your email address have therefore already been entered.]]> - session->getVar('__facebookUsername')} “{$__wcf->session->getVar('__facebookUsername')}”{/if}.]]> + session->getVar('__3rdPartyProvider') === 'facebook'} “{$__wcf->session->getVar('__oauthUser')->getUsername()}”{/if}.]]> -  Google. The username and your email address have therefore already been entered.]]> - session->getVar('__googleUsername')} “{$__wcf->session->getVar('__googleUsername')}”{/if}.]]> + session->getVar('__3rdPartyProvider') === 'google'} “{$__wcf->session->getVar('__oauthUser')->getUsername()}”{/if}.]]> @@ -4935,6 +5207,10 @@ Open the link below to access the user profile: + + + + @@ -4947,12 +5223,25 @@ Open the link below to access the user profile: + + + + + + + + + + + + + @@ -4962,7 +5251,7 @@ Open the link below to access the user profile: user->coverPhotoHash}have banned your cover photo and {/if}disallowed you from using a cover photo{if $__wcf->user->disableCoverPhotoReason}: {$__wcf->user->disableCoverPhotoReason}{/if}.]]> - Maximum Image Size: {$coverPhotoDimensions.max.width}×{$coverPhotoDimensions.max.height} pixels
    Allowed File Extensions: gif, jpg, jpeg, png
    Maximum Filesize: {$__wcf->session->getPermission('user.profile.coverPhoto.maxSize')|filesize}]]>
    + Maximum Image Size: {$coverPhotoDimensions.max.width}×{$coverPhotoDimensions.max.height} pixels
    Allowed File Extensions: gif, jpg, jpeg, png, webp
    Maximum Filesize: {$__wcf->session->getPermission('user.profile.coverPhoto.maxSize')|filesize}]]>
    @@ -4983,11 +5272,15 @@ Open the link below to access the user profile: - + + + + + @@ -5001,14 +5294,14 @@ Visit your notification settings [URL:{link controller='NotificationSettings' is your notifications on {@PAGE_TITLE|language} [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='NotificationDisable' isEmail=true}eventID={@$event->eventID}&userID={@$mailbox->getUser()->userID}&token={@$mailbox->getUser()->notificationMailToken}{/link}]]>
    +{link controller='NotificationUnsubscribe' isEmail=true}eventID={@$event->eventID}&userID={@$mailbox->getUser()->userID}&token={@$mailbox->getUser()->notificationMailToken}{/link}]]> Dear {$mailbox->getUser()->username},]]> This is an automatic notification, please do not reply to this email!

    Visit your notification settings to configure your notifications on {PAGE_TITLE|language} as you wish.

    -

    You can disable only this type of notification as well.

    ]]>
    +

    You can disable only this type of notification as well.

    ]]> getUser()->username}, @@ -5021,7 +5314,7 @@ Visit your notification settings [URL:{link controller='NotificationSettings' is your notifications on {@PAGE_TITLE|language} [URL:{link isEmail=true}{/link}] as you wish. If you wish to disable all email notifications you can do so by visiting: -{link controller='NotificationDisable' isEmail=true}userID={@$mailbox->getUser()->userID}&token={@$mailbox->getUser()->notificationMailToken}{/link}]]> +{link controller='NotificationUnsubscribe' isEmail=true}userID={@$mailbox->getUser()->userID}&token={@$mailbox->getUser()->notificationMailToken}{/link}]]> Dear {$mailbox->getUser()->username},

    You currently have {#$notifications|count} unread notification{if $notifications|count != 1}s{/if} older than 24 hours:

    ]]>
    @@ -5032,44 +5325,46 @@ If you wish to disable all email notifications you can do so by visiting:

    Visit your notification settings to configure your notifications on {PAGE_TITLE|language} as you wish.

    -

    You can disable all email notifications as well.

    ]]> +

    You can disable all email notifications as well.

    ]]> 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}]]> getAuthor()->userID}{if $guestTimesTriggered > 1}Guests{else}A guest{/if}{else}{$event->getAuthor()->username}{/if}{if $count > 1 && $count < 4}{if $count == 2 && !$guestTimesTriggered} and {else}, {/if}{$authors[1]->username}{if $count == 3}{if !$guestTimesTriggered} and {else}, {/if}{$authors[2]->username}{/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}]]> + {$authors[0]}{if $count != 1}{if $count == 2 && !$guestTimesTriggered} and {else}, {/if}{$authors[1]}{if $count == 3}{if !$guestTimesTriggered} and {else}, {/if} {$authors[2]}{/if}{/if}{if $guestTimesTriggered} and {plural value=$guestTimesTriggered one='a guest' other='# guests'}{/if}{else}{$authors[0]}{if $guestTimesTriggered},{else} and{/if} {#$others} other users {if $guestTimesTriggered}and {plural value=$guestTimesTriggered one='a guest' other='# guests'}{/if}{/if}]]> + - getAnchorTag()} follows you.]]> - getAnchorTag()}{if $count == 2} and {else}, {/if}{@$authors[1]->getAnchorTag()}{if $count == 3} and {@$authors[2]->getAnchorTag()}{/if}{else}{@$authors[0]->getAnchorTag()} and {#$others} other users{/if} follow you.]]> + {$author} follows you.]]> + {@$authorList} {if $authors|count == 1}follows{else}follow{/if} you:

    ]]>
    - userID}A guest{else}{@$author->getAnchorTag()}{/if} wrote a comment on your wall.]]> - getAnchorTag()}{if $count != 1}{if $count == 2 && !$guestTimesTriggered} and {else}, {/if}{@$authors[1]->getAnchorTag()}{if $count == 3}{if !$guestTimesTriggered} and {else}, {/if} {@$authors[2]->getAnchorTag()}{/if}{/if}{if $guestTimesTriggered} and {if $guestTimesTriggered == 1}a guest{else}guests{/if}{/if}{else}{@$authors[0]->getAnchorTag()}{if $guestTimesTriggered},{else} and{/if} {#$others} other users {if $guestTimesTriggered}and {if $guestTimesTriggered == 1}a guest{else}guests{/if}{/if}{/if} wrote comments on your wall.]]> - - {@$authorList} wrote {if $count == 1 && !$guestTimesTriggered}a comment{else}comments{/if} on your wall:

    ]]>
    + userID}{$author}{else}A guest{/if} commented on your wall.]]> + + getLink()}#wall/comment{@$commentID}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> + {@$authorList} commented on your wall:

    ]]>
    - getAnchorTag()} reacted to your comment on {if $owner === null}your wall{else}{$owner->username}’s wall{/if} ({implode from=$reactions key=reactionID item=count}{@$__wcf->getReactionHandler()->getReactionTypeByID($reactionID)->renderIcon()}×{#$count}{/implode}).]]> - getAnchorTag()}{if $count == 2} and {else}, {/if}{@$authors[1]->getAnchorTag()}{if $count == 3} and {@$authors[2]->getAnchorTag()}{/if}{else}{@$authors[0]->getAnchorTag()} and {#$others} other users{/if} reacted to your comment on {if $owner === null}your wall{else}{$owner->username}’s wall{/if} ({implode from=$reactions key=reactionID item=count}{@$__wcf->getReactionHandler()->getReactionTypeByID($reactionID)->renderIcon()}×{#$count}{/implode}).]]> + {$author} reacted to your comment on {if $owner === null}your wall{else}{$owner}’s{/if} ({@$__wcf->getReactionHandler()->renderInlineList($reactions)}).]]> + {$owner}’s wall{/if} ({@$__wcf->getReactionHandler()->renderInlineList($reactions)}).]]> - userID}A guest{else}{@$author->getAnchorTag()}{/if} wrote a reply to your comment on {if $owner->userID == $__wcf->getUser()->userID}your{else}{$owner->username}’s{/if} wall.]]> - getAnchorTag()}{if $count != 1}{if $count == 2 && !$guestTimesTriggered} and {else}, {/if}{@$authors[1]->getAnchorTag()}{if $count == 3}{if !$guestTimesTriggered} and {else}, {/if} {@$authors[2]->getAnchorTag()}{/if}{/if}{if $guestTimesTriggered} and {if $guestTimesTriggered == 1}a guest{else}guests{/if}{/if}{else}{@$authors[0]->getAnchorTag()}{if $guestTimesTriggered},{else} and{/if} {#$others} other users {if $guestTimesTriggered}and {if $guestTimesTriggered == 1}a guest{else}guests{/if}{/if}{/if} replied to your comment on {if $owner->userID == $__wcf->getUser()->userID}your{else}{$owner->username}’s{/if} wall.]]> - getUser()->userID == $notificationContent[variables][owner]->userID}your{else}{@$notificationContent[variables][owner]->username}’s{/if} wall [URL:{link controller='User' object=$notificationContent[variables][owner] isEmail=true}#wall/comment{@$commentID}/response{@$responseID}{/link}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> - {@$authorList} wrote {if $count == 1 && !$guestTimesTriggered}a reply{else}replies{/if} to your comment on {if $mailbox->getUser()->userID == $notificationContent[variables][owner]->userID}your{else}{$notificationContent[variables][owner]->username}’s{/if} wall:

    ]]>
    + userID}{$author}{else}A guest{/if} replied to your comment on {if $owner->userID == $__wcf->getUser()->userID}your{else}{$owner}’s{/if} wall.]]> + userID == $__wcf->getUser()->userID}your{else}{$owner}’s{/if} wall.]]> + getUser()->userID == $owner->userID}your{else}{@$owner}’s{/if} wall [URL:{@$owner->getLink()}#wall/comment{@$commentID}/response{@$responseID}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> + {@$authorList} replied to your comment on {if $mailbox->getUser()->userID == $owner->userID}your{else}{$owner}’s{/if} wall:

    ]]>
    - getAnchorTag()} reacted to your reply to a comment on {if $owner === null}your wall{else}{$owner->username}’s wall{/if} ({implode from=$reactions key=reactionID item=count}{@$__wcf->getReactionHandler()->getReactionTypeByID($reactionID)->renderIcon()}×{#$count}{/implode}).]]> - getAnchorTag()}{if $count == 2} and {else}, {/if}{@$authors[1]->getAnchorTag()}{if $count == 3} and {@$authors[2]->getAnchorTag()}{/if}{else}{@$authors[0]->getAnchorTag()} and {#$others} other users{/if} reacted to your reply to a comment on {if $owner === null}your wall{else}{$owner->username}’s wall{/if} ({implode from=$reactions key=reactionID item=count}{@$__wcf->getReactionHandler()->getReactionTypeByID($reactionID)->renderIcon()}×{#$count}{/implode}).]]> + {$author} reacted to your reply to a comment on {if $owner === null}your wall{else}{$owner}’s wall{/if} ({@$__wcf->getReactionHandler()->renderInlineList($reactions)}).]]> + {$owner}’s wall{/if} ({@$__wcf->getReactionHandler()->renderInlineList($reactions)}).]]> - userID}A guest{else}{@$author->getAnchorTag()}{/if} wrote a reply to {$commentAuthor->username}’s comment on your wall.]]> - getAnchorTag()}{if $count != 1}{if $count == 2 && !$guestTimesTriggered} and {else}, {/if}{@$authors[1]->getAnchorTag()}{if $count == 3}{if !$guestTimesTriggered} and {else}, {/if} {@$authors[2]->getAnchorTag()}{/if}{/if}{if $guestTimesTriggered} and {if $guestTimesTriggered == 1}a guest{else}guests{/if}{/if}{else}{@$authors[0]->getAnchorTag()}{if $guestTimesTriggered},{else} and{/if} {#$others} other users {if $guestTimesTriggered}and {if $guestTimesTriggered == 1}a guest{else}guests{/if}{/if}{/if} replied to the comment by {if $author->userID}{$author->username}{else}{$author->username}{/if} on your wall.]]> - username}’s{if $notificationContent[variables][commentAuthor]->userID} [URL:{link controller='User' object=$notificationContent[variables][commentAuthor] isEmail=true}{/link}]{/if} comment on your wall [URL:{link controller='User' object=$notificationContent[variables][owner] isEmail=true}#wall/comment{@$commentID}/response{@$responseID}{/link}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> - {@$authorList} wrote {if $count == 1 && !$guestTimesTriggered}a reply{else}replies{/if} to {if $notificationContent[variables][commentAuthor]->userID}{$notificationContent[variables][commentAuthor]->username}{else}{$notificationContent[variables][commentAuthor]->username}{/if}’s comment on your wall:

    ]]>
    + userID}{$author}{else}A guest{/if} replied to {$commentAuthor}’s comment on your wall.]]> + {$author} on your wall.]]> + getLink()}#wall/comment{@$commentID}/response{@$responseID}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> + {@$authorList} replied to {$commentAuthor}’s comment on your wall:

    ]]>
    @@ -5078,7 +5373,7 @@ your notifications on {PAGE_TITLE|langu - getTrophy()->getLink()}">{$userTrophy->getTrophy()->getTitle()}.]]> + {$userTrophy->getTrophy()}.]]> @@ -5088,60 +5383,63 @@ your notifications on {PAGE_TITLE|langu + - userID}A guest{else}{@$author->getAnchorTag()}{/if} wrote a comment on the page {$page->getTitle()}.]]> - getAnchorTag()}{if $count != 1}{if $count == 2 && !$guestTimesTriggered} and {else}, {/if}{@$authors[1]->getAnchorTag()}{if $count == 3}{if !$guestTimesTriggered} and {else}, {/if} {@$authors[2]->getAnchorTag()}{/if}{/if}{if $guestTimesTriggered} and {if $guestTimesTriggered == 1}a guest{else}guests{/if}{/if}{else}{@$authors[0]->getAnchorTag()}{if $guestTimesTriggered},{else} and{/if} {#$others} other users {if $guestTimesTriggered}and {if $guestTimesTriggered == 1}a guest{else}guests{/if}{/if}{/if} wrote comments on the page {$page->getTitle()}.]]> - getTitle()}” [URL:{@$notificationContent[variables][page]->getLink()}#comment{@$commentID}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> - {@$authorList} wrote {if $count == 1 && !$guestTimesTriggered}a comment{else}comments{/if} on the page {$notificationContent[variables][page]->getTitle()}:

    ]]>
    + userID}{$author}{else}A guest{/if} commented on the page {$page->getTitle()}.]]> + {$page->getTitle()}.]]> + getTitle()}” [URL:{@$page->getLink()}#comment{@$commentID}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> + {@$authorList} commented on the page {$page->getTitle()}:

    ]]>
    - userID}A guest{else}{@$author->getAnchorTag()}{/if} wrote a reply to {if $commentAuthor->userID}{$commentAuthor->username}{else}{$commentAuthor->username}{/if}’s comment on the page {$page->getTitle()}.]]> - getAnchorTag()}{if $count != 1}{if $count == 2 && !$guestTimesTriggered} and {else}, {/if}{@$authors[1]->getAnchorTag()}{if $count == 3}{if !$guestTimesTriggered} and {else}, {/if} {@$authors[2]->getAnchorTag()}{/if}{/if}{if $guestTimesTriggered} and {if $guestTimesTriggered == 1}a guest{else}guests{/if}{/if}{else}{@$authors[0]->getAnchorTag()}{if $guestTimesTriggered},{else} and{/if} {#$others} other users {if $guestTimesTriggered}and {if $guestTimesTriggered == 1}a guest{else}guests{/if}{/if}{/if} replied to {if $commentAuthor->userID}{$commentAuthor->username}{else}{$commentAuthor->username}{/if}’s comment on the page {$page->getTitle()}.]]> - username}’s comment on the page “{@$notificationContent[variables][page]->getTitle()}” [URL:{@$notificationContent[variables][page]->getLink()}#comment{@$commentID}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> - {@$authorList} wrote {if $count == 1 && !$guestTimesTriggered}a reply{else}replies{/if} to {@$notificationContent[variables][commentAuthor]->username}’s comment on the page {$notificationContent[variables][page]->getTitle()}:

    ]]>
    + userID}{$author}{else}A guest{/if} replied to {$commentAuthor}’s comment on the page {$page->getTitle()}.]]> + {$commentAuthor}’s comment on the page {$page->getTitle()}.]]> + getTitle()}” [URL:{@$page->getLink()}#comment{@$commentID}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> + {@$authorList} replied to {$commentAuthor}’s comment on the page {$page->getTitle()}:

    ]]>
    - userID}A guest{else}{@$author->getAnchorTag()}{/if} wrote a reply to your comment on the page {$page->getTitle()}.]]> - getAnchorTag()}{if $count != 1}{if $count == 2 && !$guestTimesTriggered} and {else}, {/if}{@$authors[1]->getAnchorTag()}{if $count == 3}{if !$guestTimesTriggered} and {else}, {/if} {@$authors[2]->getAnchorTag()}{/if}{/if}{if $guestTimesTriggered} and {if $guestTimesTriggered == 1}a guest{else}guests{/if}{/if}{else}{@$authors[0]->getAnchorTag()}{if $guestTimesTriggered},{else} and{/if} {#$others} other users {if $guestTimesTriggered}and {if $guestTimesTriggered == 1}a guest{else}guests{/if}{/if}{/if} replied to your comment on the page {$page->getTitle()}.]]> - getTitle()}” [URL:{@$notificationContent[variables][page]->getLink()}#comment{@$commentID}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> - {@$authorList} wrote {if $count == 1 && !$guestTimesTriggered}a reply{else}replies{/if} to your comment on the page {$notificationContent[variables][page]->getTitle()}:

    ]]>
    + userID}{$author}{else}A guest{/if} replied to your comment on the page {$page->getTitle()}.]]> + {$page->getTitle()}.]]> + getTitle()}” [URL:{@$page->getLink()}#comment{@$commentID}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> + {@$authorList} replied to your comment on the page {$page->getTitle()}:

    ]]>
    - userID}{@$author->getAnchorTag()}{else}A guest{/if} commented on your article {$article->getTitle()}.]]> - getAnchorTag()}{if $count != 1}{if $count == 2 && !$guestTimesTriggered} and {else}, {/if}{@$authors[1]->getAnchorTag()}{if $count == 3}{if !$guestTimesTriggered} and {else}, {/if} {@$authors[2]->getAnchorTag()}{/if}{/if}{if $guestTimesTriggered} and {if $guestTimesTriggered == 1}a guest{else}guests{/if}{/if}{else}{@$authors[0]->getAnchorTag()}{if $guestTimesTriggered},{else} and{/if} {#$others} other users {if $guestTimesTriggered}and {if $guestTimesTriggered == 1}a guest{else}guests{/if}{/if}{/if} commented on your article {$article->getTitle()}.]]> - getTitle()}” [URL:{link controller='Article' object=$article isEmail=true}#comment{@$commentID}{/link}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> - {@$authorList} commented on your article {$article->getTitle()}:

    ]]>
    + userID}{$author}{else}A guest{/if} commented on your article {$article->getTitle()}.]]> + {$article->getTitle()}.]]> + getTitle()}” [URL:{@$article->getLink()}#comment{@$commentID}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> + {@$authorList} commented on your article {$article->getTitle()}:

    ]]>
    - userID}{@$author->getAnchorTag()}{else}A guest{/if} replied to your comment on the article {$article->getTitle()}.]]> - getAnchorTag()}{if $count != 1}{if $count == 2 && !$guestTimesTriggered} and {else}, {/if}{@$authors[1]->getAnchorTag()}{if $count == 3}{if !$guestTimesTriggered} and {else}, {/if} {@$authors[2]->getAnchorTag()}{/if}{/if}{if $guestTimesTriggered} and {if $guestTimesTriggered == 1}a guest{else}guests{/if}{/if}{else}{@$authors[0]->getAnchorTag()}{if $guestTimesTriggered},{else} and{/if} {#$others} other users {if $guestTimesTriggered}and {if $guestTimesTriggered == 1}a guest{else}guests{/if}{/if}{/if} replied to your comment on the article {$article->getTitle()}.]]> - getTitle()}” [URL:{link controller='Article' object=$article isEmail=true}#comments/comment{@$commentID}/response{@$responseID}{/link}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> - {@$authorList} wrote {if $count == 1 && !$guestTimesTriggered}a reply{else}replies{/if} to your comment on the article {$article->getTitle()}:

    ]]>
    + userID}{$author}{else}A guest{/if} replied to your comment on the article {$article->getTitle()}.]]> + {$article->getTitle()}.]]> + getTitle()}” [URL:{@$article->getLink()}#comments/comment{@$commentID}/response{@$responseID}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> + {@$authorList} replied to your comment on the article {$article->getTitle()}:

    ]]>
    - userID}{@$author->getAnchorTag()}{else}A guest{/if} replied to a comment by {$commentAuthor->username} on your article {$article->getTitle()}.]]> - getAnchorTag()}{if $count != 1}{if $count == 2 && !$guestTimesTriggered} and {else}, {/if}{@$authors[1]->getAnchorTag()}{if $count == 3}{if !$guestTimesTriggered} and {else}, {/if} {@$authors[2]->getAnchorTag()}{/if}{/if}{if $guestTimesTriggered} and {if $guestTimesTriggered == 1}a guest{else}guests{/if}{/if}{else}{@$authors[0]->getAnchorTag()}{if $guestTimesTriggered},{else} and{/if} {#$others} other users {if $guestTimesTriggered}and {if $guestTimesTriggered == 1}a guest{else}guests{/if}{/if}{/if} replied to a comment by {if $commentAuthor->userID}{$commentAuthor->username}{else}{$commentAuthor->username}{/if} on your article {$article->getTitle()}.]]> - username}’s{if $notificationContent[variables][commentAuthor]->userID} [URL:{link controller='User' object=$notificationContent[variables][commentAuthor] isEmail=true}{/link}]{/if} comment on your article “{@$article->getTitle()}” [URL:{link controller='Article' object=$article isEmail=true}#comments/comment{@$commentID}/response{@$responseID}{/link}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> - {@$authorList} wrote {if $count == 1 && !$guestTimesTriggered}a reply{else}replies{/if} to {if $notificationContent[variables][commentAuthor]->userID}{$notificationContent[variables][commentAuthor]->username}{else}{$notificationContent[variables][commentAuthor]->username}{/if}’s comment on your article {$article->getTitle()}:

    ]]>
    + userID}{$author}{else}A guest{/if} replied to a comment by {$commentAuthor} on your article {$article->getTitle()}.]]> + {$commentAuthor} on your article {$article->getTitle()}.]]> + getTitle()}” [URL:{@$article->getLink()}#comments/comment{@$commentID}/response{@$responseID}]{if $count == 1 && !$guestTimesTriggered}:{else}.{/if}]]> + {@$authorList} replied to {$commentAuthor}’s comment on your article {$article->getTitle()}:

    ]]>
    - userID}{@$author->getAnchorTag()}{else}A guest{/if} wrote the article {$article->getTitle()}.]]> - getAuthor()->userID}{@$event->getAuthor()->username} [URL:{link controller='User' object=$event->getAuthor() isEmail=true}{/link}]{else}A guest{/if} wrote the article “{@$notificationContent[variables][articleContent]->getTitle()}” [URL:{link controller='Article' object=$notificationContent[variables][articleContent] isEmail=true}{/link}]:]]> - {if $event->getAuthor()->userID}{$event->getAuthor()->username}{else}A guest{/if} wrote the article {$notificationContent[variables][articleContent]->getTitle()}:

    ]]>
    + userID}{$author}{else}A guest{/if} wrote the article {$article->getTitle()}.]]> + getTitle()}” [URL:{@$articleContent->getLink()}]:]]> + {$author} wrote the article {$articleContent->getTitle()}:

    ]]>
    - getAnchorTag()} has registered.]]> - getAnchorTag()}{if $count == 2} and {else}, {/if}{@$authors[1]->getAnchorTag()}{if $count == 3} and {@$authors[2]->getAnchorTag()}{/if}{else}{@$authors[0]->getAnchorTag()} and {#$others} other users{/if} have registered.]]> + {$author} has registered.]]> + {@$authorList} {if $count == 1}has{else}have{/if} registered:

    ]]>
    + +
    getUser()->userID}You have not provided any details yet.{else}There are no details visible to you.{/if}]]> @@ -5180,7 +5478,6 @@ your notifications on {PAGE_TITLE|langu - @@ -5204,7 +5501,6 @@ your notifications on {PAGE_TITLE|langu - @@ -5214,10 +5510,9 @@ your notifications on {PAGE_TITLE|langu getTitle()}”:]]> getTitle()}” contains:]]> getTitle()}”:]]> + - - getUser()->username}, “{@$username}” sent you a message on {@PAGE_TITLE|language} [URL:{link isEmail=true}{/link}]: @@ -5225,14 +5520,9 @@ your notifications on {PAGE_TITLE|langu {@$message}]]> Dear {$mailbox->getUser()->username}, -

    „{$username}“ sent you a message on {PAGE_TITLE|language}:

    +

    “{$username}” sent you a message on {PAGE_TITLE|language}:

    {@$message|newlineToBreak}

    ]]> - - - username}.]]> - -