<conditiongroup>userOptions</conditiongroup>
</type>
<!-- /user group assignment conditions -->
+
+ <!-- pages -->
+ <type>
+ <name>com.woltlab.wcf.AccountManagementForm</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\form\AccountManagementForm]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.AvatarEditForm</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\form\AvatarEditForm]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.DisclaimerForm</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\form\DisclaimerForm]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.EmailActivationForm</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\form\EmailActivationForm]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.EmailNewActivationCodeForm</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\form\EmailNewActivationCodeForm]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.LoginForm</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\form\LoginForm]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.LostPasswordForm</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\form\LostPasswordForm]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.MailForm</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\form\MailForm]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.ModerationActivationForm</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\form\ModerationActivationForm]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.ModerationReportForm</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\form\ModerationReportForm]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.NewPasswordForm</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\form\NewPasswordForm]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.NotificationSettingsForm</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\form\NotificationSettingsForm]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.RegisterActivationForm</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\form\RegisterActivationForm]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.RegisterForm</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\form\RegisterForm]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.RegisterNewActivationCodeForm</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\form\RegisterNewActivationCodeForm]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.SearchForm</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\form\SearchForm]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.SettingsForm</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\form\SettingsForm]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.SignatureEditForm</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\form\SignatureEditForm]]></classname>
+ <options>module_user_signature</options>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.UserSearchForm</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\form\UserSearchForm]]></classname>
+ <options>module_members_list</options>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.DashboardPage</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\page\DashboardPage]]></classname>
+ <options>module_dashboard_page</options>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.DeletedContentListPage</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\page\DeletedContentListPage]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.FollowingPage</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\page\FollowingPage]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.IgnoredUsersPage</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\page\IgnoredUsersPage]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.MembersListPage</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\page\MembersListPage]]></classname>
+ <options>module_members_list</options>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.ModerationListPage</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\page\ModerationListPage]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.NotificationListPage</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\page\NotificationListPage]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.RecentActivityListPage</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\page\RecentActivityListPage]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.SearchResultPage</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\page\SearchResultPage]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.TaggedPage</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\page\TaggedPage]]></classname>
+ <options>module_tagging</options>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.TeamPage</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\page\TeamPage]]></classname>
+ <options>module_team_page</options>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.UserPage</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\page\UserPage]]></classname>
+ </type>
+ <type>
+ <name>com.woltlab.wcf.UsersOnlineListPage</name>
+ <definitionname>com.woltlab.wcf.page</definitionname>
+ <classname><![CDATA[wcf\page\UsersOnlineListPage]]></classname>
+ </type>
+ <!-- /pages -->
</import>
</data>
<name>com.woltlab.wcf.condition.userGroupAssignment</name>
<interfacename><![CDATA[wcf\system\condition\IUserCondition]]></interfacename>
</definition>
+
+ <definition>
+ <name>com.woltlab.wcf.page</name>
+ </definition>
</import>
</data>
public function getFormElement(Option $option, $value) {
WCF::getTPL()->assign(array(
'option' => $option,
- 'selectOptions' => $option->parseSelectOptions(),
+ 'selectOptions' => $this->getSelectOptions($option),
'value' => (!is_array($value) ? explode("\n", $value) : $value)
));
return WCF::getTPL()->fetch('multiSelectOptionType');
WCF::getTPL()->assign(array(
'option' => $option,
'searchOption' => $value !== $option->defaultValue || isset($_POST['searchOptions'][$option->optionName]),
- 'selectOptions' => $option->parseSelectOptions(),
+ 'selectOptions' => $this->getSelectOptions($option),
'value' => (!is_array($value) ? explode("\n", $value) : $value)
));
return WCF::getTPL()->fetch('multiSelectSearchableOptionType');
*/
public function validate(Option $option, $newValue) {
if (!is_array($newValue)) $newValue = array();
- $options = $option->parseSelectOptions();
+ $options = $this->getSelectOptions($option);
foreach ($newValue as $value) {
if (!isset($options[$value])) {
throw new UserInputException($option->optionName, 'validationFailed');
--- /dev/null
+<?php
+namespace wcf\system\option;
+use wcf\data\option\Option;
+use wcf\system\page\PageManager;
+
+/**
+ * Option type implementation for selecting multiple pages.
+ *
+ * @author Matthias Schmidt
+ * @copyright 2001-2014 WoltLab GmbH
+ * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
+ * @package com.woltlab.wcf
+ * @subpackage system.option
+ * @category Community Framework
+ */
+class PageMultiSelectOptionType extends MultiSelectOptionType {
+ /**
+ * @see \wcf\system\option\RadioButtonOptionType::getSelectOptions()
+ */
+ protected function getSelectOptions(Option $option) {
+ return PageManager::getInstance()->getSelection($option->application);
+ }
+}
--- /dev/null
+<?php
+namespace wcf\system\option;
+use wcf\data\option\Option;
+use wcf\system\page\PageManager;
+
+/**
+ * Option type implementation for selecting pages.
+ *
+ * @author Matthias Schmidt
+ * @copyright 2001-2014 WoltLab GmbH
+ * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
+ * @package com.woltlab.wcf
+ * @subpackage system.option
+ * @category Community Framework
+ */
+class PageSelectOptionType extends SelectOptionType {
+ /**
+ * @see \wcf\system\option\RadioButtonOptionType::getSelectOptions()
+ */
+ protected function getSelectOptions(Option $option) {
+ return PageManager::getInstance()->getSelection($option->application);
+ }
+}
* @see \wcf\system\option\IOptionType::getFormElement()
*/
public function getFormElement(Option $option, $value) {
- // get options
- $selectOptions = $option->parseSelectOptions();
-
$availableOptions = $option->parseMultipleEnableOptions();
$options = array(
'disableOptions' => array(),
'disableOptions' => $options['disableOptions'],
'enableOptions' => $options['enableOptions'],
'option' => $option,
- 'selectOptions' => $selectOptions,
+ 'selectOptions' => $this->getSelectOptions($option),
'value' => $value
));
return WCF::getTPL()->fetch($this->templateName);
*/
public function validate(Option $option, $newValue) {
if (!empty($newValue)) {
- $options = $option->parseSelectOptions();
+ $options = $this->getSelectOptions($option);
if (!isset($options[$newValue])) {
throw new UserInputException($option->optionName, 'validationFailed');
}
public function getConditionData(Option $option, $newValue) {
return $newValue;
}
+
+ /**
+ * Returns the select options for the given option.
+ *
+ * @param \wcf\dat\option\Option $option
+ * @return array<string>
+ */
+ protected function getSelectOptions(Option $option) {
+ return $option->parseSelectOptions();
+ }
}
'disableOptions' => $options['disableOptions'],
'enableOptions' => $options['enableOptions'],
'option' => $option,
- 'selectOptions' => $option->parseSelectOptions(),
+ 'selectOptions' => $this->getSelectOptions($option),
'value' => $value,
'allowEmptyValue' => ($this->allowEmptyValue || $option->allowEmptyValue)
));
'enableOptions' => $options['enableOptions'],
'option' => $option,
'searchOption' => ($value !== null && $value !== $option->defaultValue) || isset($_POST['searchOptions'][$option->optionName]),
- 'selectOptions' => $option->parseSelectOptions(),
+ 'selectOptions' => $this->getSelectOptions($option),
'value' => $value
));
return WCF::getTPL()->fetch('selectSearchableOptionType');
--- /dev/null
+<?php
+namespace wcf\system\page;
+use wcf\data\object\type\ObjectTypeCache;
+use wcf\data\package\PackageCache;
+use wcf\system\application\ApplicationHandler;
+use wcf\system\exception\SystemException;
+use wcf\system\SingletonFactory;
+use wcf\system\WCF;
+
+/**
+ * Manages the available page object types.
+ *
+ * @author Matthias Schmidt
+ * @copyright 2001-2014 WoltLab GmbH
+ * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
+ * @package com.woltlab.wcf
+ * @subpackage system.page
+ * @category Community Framework
+ */
+class PageManager extends SingletonFactory {
+ /**
+ * list of available page object types
+ * @var array<\wcf\data\object\type\ObjectType>
+ */
+ protected $objectTypes = array();
+
+ /**
+ * @see \wcf\system\SingletonFactory::init()
+ */
+ protected function init() {
+ $this->objectTypes = ObjectTypeCache::getInstance()->getObjectTypes('com.woltlab.wcf.page');
+ }
+
+ /**
+ * Returns a list of the available page object types.
+ *
+ * @return array<\wcf\data\object\type\ObjectType>
+ */
+ public function getObjectTypes() {
+ return $this->objectTypes;
+ }
+
+ /**
+ * Returns an array used to build a page selection. If $application is given,
+ * only pages who belong to the application with the given abbreviation
+ * are returned.
+ *
+ * @param string $application
+ * @return array<string>
+ */
+ public function getSelection($application = null) {
+ $objectTypes = $this->objectTypes;
+
+ // filter by application
+ if ($application !== null) {
+ // validate application
+ if ($application != 'wcf' && ApplicationHandler::getInstance()->getApplication($application) === null) {
+ throw new SystemException("Unknown application with abbreviation '".$application."'");
+ }
+
+ foreach ($objectTypes as $objectTypeName => $objectType) {
+ $classNamePieces = explode('\\', $objectType->className);
+
+ if ($classNamePieces[0] != $application) {
+ unset($objectTypes[$objectTypeName]);
+ }
+ }
+ }
+
+ // filter by options
+ foreach ($objectTypes as $objectTypeName => $objectType) {
+ if ($objectType->options) {
+ $options = explode(',', strtoupper($objectType->options));
+ foreach ($options as $option) {
+ if (!defined($option) || !constant($option)) {
+ unset($objectTypes[$objectTypeName]);
+ break;
+ }
+ }
+ }
+ }
+
+ $selection = array();
+ foreach ($objectTypes as $objectType) {
+ $selection[$objectType->objectTypeID] = WCF::getLanguage()->get('wcf.page.'.$objectType->objectType);
+
+ if ($application === null && substr($objectType->className, 0, 3) != 'wcf') {
+ $classNamePieces = explode('\\', $objectType->className);
+
+ $selection[$objectType->objectTypeID] .= ' ('.PackageCache::getInstance()->getPackage(ApplicationHandler::getInstance()->getApplication($classNamePieces[0])->packageID).')';
+ }
+ }
+
+ sort($selection);
+
+ return $selection;
+ }
+}
<item name="wcf.page.pagePosition"><![CDATA[Seite {#$pageNo} von {#$pages}]]></item>
<item name="wcf.page.sitemap.userAccount"><![CDATA[Benutzerkonto]]></item>
<item name="wcf.page.javascriptDisabled"><![CDATA[In Ihrem Webbrowser ist JavaScript deaktiviert. Um alle Funktionen dieser Webseite nutzen zu können, muss JavaScript aktiviert sein.]]></item>
+
+ <item name="wcf.page.com.woltlab.wcf.AccountManagementForm"><![CDATA[Benutzerkonto-Verwaltung]]></item>
+ <item name="wcf.page.com.woltlab.wcf.AvatarEditForm"><![CDATA[Avatar-Verwaltung]]></item>
+ <item name="wcf.page.com.woltlab.wcf.DisclaimerForm"><![CDATA[Disclaimer]]></item>
+ <item name="wcf.page.com.woltlab.wcf.EmailActivationForm"><![CDATA[Aktivierung neuer E-Mail-Adresse]]></item>
+ <item name="wcf.page.com.woltlab.wcf.EmailNewActivationCodeForm"><![CDATA[E-Mail-Aktivierungscode-Anforderung]]></item>
+ <item name="wcf.page.com.woltlab.wcf.LoginForm"><![CDATA[Anmeldung]]></item>
+ <item name="wcf.page.com.woltlab.wcf.LostPasswordForm"><![CDATA[Kennwort vergessen]]></item>
+ <item name="wcf.page.com.woltlab.wcf.MailForm"><![CDATA[E-Mail-Formular]]></item>
+ <item name="wcf.page.com.woltlab.wcf.ModerationActivationForm"><![CDATA[Inhaltsfreischaltung]]></item>
+ <item name="wcf.page.com.woltlab.wcf.ModerationReportForm"><![CDATA[Inhaltsmeldung]]></item>
+ <item name="wcf.page.com.woltlab.wcf.NewPasswordForm"><![CDATA[Neues Kennwort]]></item>
+ <item name="wcf.page.com.woltlab.wcf.NotificationSettingsForm"><![CDATA[Benachrichtigungseinstellungen]]></item>
+ <item name="wcf.page.com.woltlab.wcf.RegisterActivationForm"><![CDATA[Registrierung abschließen]]></item>
+ <item name="wcf.page.com.woltlab.wcf.RegisterForm"><![CDATA[Registrierung]]></item>
+ <item name="wcf.page.com.woltlab.wcf.RegisterNewActivationCodeForm"><![CDATA[Aktivierungscode-Anforderung]]></item>
+ <item name="wcf.page.com.woltlab.wcf.SearchForm"><![CDATA[Suche]]></item>
+ <item name="wcf.page.com.woltlab.wcf.SettingsForm"><![CDATA[Einstellungen]]></item>
+ <item name="wcf.page.com.woltlab.wcf.SignatureEditForm"><![CDATA[Signatur-Verwaltung]]></item>
+ <item name="wcf.page.com.woltlab.wcf.UserSearchForm"><![CDATA[Mitgliedersuche]]></item>
+ <item name="wcf.page.com.woltlab.wcf.DashboardPage"><![CDATA[Dashboard]]></item>
+ <item name="wcf.page.com.woltlab.wcf.DeletedContentListPage"><![CDATA[Gelöschte Inhalte]]></item>
+ <item name="wcf.page.com.woltlab.wcf.FollowingPage"><![CDATA[Benutzer, denen Sie folgen]]></item>
+ <item name="wcf.page.com.woltlab.wcf.IgnoredUsersPage"><![CDATA[Blockierte Benutzer]]></item>
+ <item name="wcf.page.com.woltlab.wcf.MembersListPage"><![CDATA[Mitglieder]]></item>
+ <item name="wcf.page.com.woltlab.wcf.ModerationListPage"><![CDATA[Moderation]]></item>
+ <item name="wcf.page.com.woltlab.wcf.NotificationListPage"><![CDATA[Benachrichtigungen]]></item>
+ <item name="wcf.page.com.woltlab.wcf.RecentActivityListPage"><![CDATA[Letzte Aktivitäten]]></item>
+ <item name="wcf.page.com.woltlab.wcf.SearchResultPage"><![CDATA[Suchergebnisse]]></item>
+ <item name="wcf.page.com.woltlab.wcf.TaggedPage"><![CDATA[Inhalte mit bestimmtem Tag]]></item>
+ <item name="wcf.page.com.woltlab.wcf.TeamPage"><![CDATA[Team-Mitglieder]]></item>
+ <item name="wcf.page.com.woltlab.wcf.UserPage"><![CDATA[Benutzerprofil]]></item>
+ <item name="wcf.page.com.woltlab.wcf.UsersOnlineListPage"><![CDATA[Benutzer online]]></item>
</category>
<category name="wcf.poll">
<item name="wcf.page.pagePosition"><![CDATA[Page {#$pageNo} of {#$pages}]]></item>
<item name="wcf.page.sitemap.userAccount"><![CDATA[User Account]]></item>
<item name="wcf.page.javascriptDisabled"><![CDATA[Your browser has JavaScript disabled. If you would like to use all features of this site, it is mandatory to enable JavaScript.]]></item>
+
+ <item name="wcf.page.com.woltlab.wcf.AccountManagementForm"><![CDATA[Account Management]]></item>
+ <item name="wcf.page.com.woltlab.wcf.AvatarEditForm"><![CDATA[Avatar Management]]></item>
+ <item name="wcf.page.com.woltlab.wcf.DisclaimerForm"><![CDATA[Disclaimer]]></item>
+ <item name="wcf.page.com.woltlab.wcf.EmailActivationForm"><![CDATA[New Email Address Verification]]></item>
+ <item name="wcf.page.com.woltlab.wcf.EmailNewActivationCodeForm"><![CDATA[New Email Activation Code Request]]></item>
+ <item name="wcf.page.com.woltlab.wcf.LoginForm"><![CDATA[Login]]></item>
+ <item name="wcf.page.com.woltlab.wcf.LostPasswordForm"><![CDATA[Lost Password]]></item>
+ <item name="wcf.page.com.woltlab.wcf.MailForm"><![CDATA[Mail Form]]></item>
+ <item name="wcf.page.com.woltlab.wcf.ModerationActivationForm"><![CDATA[Content Approval]]></item>
+ <item name="wcf.page.com.woltlab.wcf.ModerationReportForm"><![CDATA[Content Report]]></item>
+ <item name="wcf.page.com.woltlab.wcf.NewPasswordForm"><![CDATA[New Password Request]]></item>
+ <item name="wcf.page.com.woltlab.wcf.NotificationSettingsForm"><![CDATA[Notification Settings]]></item>
+ <item name="wcf.page.com.woltlab.wcf.RegisterActivationForm"><![CDATA[Complete Registration]]></item>
+ <item name="wcf.page.com.woltlab.wcf.RegisterForm"><![CDATA[Registration]]></item>
+ <item name="wcf.page.com.woltlab.wcf.RegisterNewActivationCodeForm"><![CDATA[New Activation Code Request]]></item>
+ <item name="wcf.page.com.woltlab.wcf.SearchForm"><![CDATA[Search]]></item>
+ <item name="wcf.page.com.woltlab.wcf.SettingsForm"><![CDATA[Settings]]></item>
+ <item name="wcf.page.com.woltlab.wcf.SignatureEditForm"><![CDATA[Signature Management]]></item>
+ <item name="wcf.page.com.woltlab.wcf.UserSearchForm"><![CDATA[Members Search]]></item>
+ <item name="wcf.page.com.woltlab.wcf.DashboardPage"><![CDATA[Dashboard]]></item>
+ <item name="wcf.page.com.woltlab.wcf.DeletedContentListPage"><![CDATA[Deleted Content]]></item>
+ <item name="wcf.page.com.woltlab.wcf.FollowingPage"><![CDATA[Followed Users]]></item>
+ <item name="wcf.page.com.woltlab.wcf.IgnoredUsersPage"><![CDATA[Blocked Users]]></item>
+ <item name="wcf.page.com.woltlab.wcf.MembersListPage"><![CDATA[Members]]></item>
+ <item name="wcf.page.com.woltlab.wcf.ModerationListPage"><![CDATA[Moderation]]></item>
+ <item name="wcf.page.com.woltlab.wcf.NotificationListPage"><![CDATA[Notifications]]></item>
+ <item name="wcf.page.com.woltlab.wcf.RecentActivityListPage"><![CDATA[Recent Activities]]></item>
+ <item name="wcf.page.com.woltlab.wcf.SearchResultPage"><![CDATA[Search Results]]></item>
+ <item name="wcf.page.com.woltlab.wcf.TaggedPage"><![CDATA[Content With Particular Tag]]></item>
+ <item name="wcf.page.com.woltlab.wcf.TeamPage"><![CDATA[Staff Members]]></item>
+ <item name="wcf.page.com.woltlab.wcf.UserPage"><![CDATA[User Profile]]></item>
+ <item name="wcf.page.com.woltlab.wcf.UsersOnlineListPage"><![CDATA[Users Online]]></item>
</category>
<category name="wcf.poll">