<?xml version="1.0" encoding="UTF-8"?>
<data xmlns="http://www.woltlab.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.woltlab.com http://www.woltlab.com/XSD/maelstrom/acpMenu.xsd">
<import>
- <acpmenuitem name="wcf.acp.menu.link.system">
+ <!-- configuration -->
+ <acpmenuitem name="wcf.acp.menu.link.configuration">
<showorder>1</showorder>
- </acpmenuitem>
-
- <!-- options -->
- <acpmenuitem name="wcf.acp.menu.link.option">
- <parent>wcf.acp.menu.link.system</parent>
- <showorder>1</showorder>
- <permissions>admin.system.canEditOption</permissions>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.option.category">
- <parent>wcf.acp.menu.link.option</parent>
- <showorder>1</showorder>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.option.management">
- <parent>wcf.acp.menu.link.option</parent>
- <showorder>2</showorder>
- </acpmenuitem>
- <!-- /options -->
-
- <!-- packages -->
- <acpmenuitem name="wcf.acp.menu.link.package">
- <parent>wcf.acp.menu.link.system</parent>
- <showorder>2</showorder>
- <permissions>admin.system.package.canInstallPackage,admin.system.package.canUpdatePackage,admin.system.package.canUninstallPackage,admin.system.package.canEditServer</permissions>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.application.management">
- <controller><![CDATA[wcf\acp\page\ApplicationManagementPage]]></controller>
- <parent>wcf.acp.menu.link.package</parent>
- <permissions>admin.system.canManageApplication</permissions>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.package.list">
- <controller><![CDATA[wcf\acp\page\PackageListPage]]></controller>
- <parent>wcf.acp.menu.link.package</parent>
- <permissions>admin.system.package.canUpdatePackage,admin.system.package.canUninstallPackage</permissions>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.package.install">
- <controller><![CDATA[wcf\acp\form\PackageStartInstallForm]]></controller>
- <parent>wcf.acp.menu.link.package.list</parent>
- <permissions>admin.system.package.canInstallPackage</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.package.server.list">
- <controller><![CDATA[wcf\acp\page\PackageUpdateServerListPage]]></controller>
- <parent>wcf.acp.menu.link.package</parent>
- <permissions>admin.system.package.canEditServer</permissions>
- </acpmenuitem>
- <!-- /packages -->
-
- <!-- cronjobs -->
- <acpmenuitem name="wcf.acp.menu.link.cronjob">
- <parent>wcf.acp.menu.link.system</parent>
- <showorder>3</showorder>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.cronjob.list">
- <controller><![CDATA[wcf\acp\page\CronjobListPage]]></controller>
- <parent>wcf.acp.menu.link.cronjob</parent>
- <permissions>admin.system.canManageCronjob</permissions>
- <showorder>1</showorder>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.cronjob.add">
- <controller><![CDATA[wcf\acp\form\CronjobAddForm]]></controller>
- <parent>wcf.acp.menu.link.cronjob.list</parent>
- <permissions>admin.system.canManageCronjob</permissions>
- <showorder>2</showorder>
- <icon>fa-plus</icon>
- </acpmenuitem>
- <!-- /cronjobs -->
-
- <acpmenuitem name="wcf.acp.menu.link.captcha">
- <parent>wcf.acp.menu.link.system</parent>
- <showorder>4</showorder>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.captcha.question.list">
- <parent>wcf.acp.menu.link.captcha</parent>
- <controller><![CDATA[wcf\acp\page\CaptchaQuestionListPage]]></controller>
- <permissions>admin.captcha.canManageCaptchaQuestion</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.captcha.question.add">
- <parent>wcf.acp.menu.link.captcha.question.list</parent>
- <controller><![CDATA[wcf\acp\form\CaptchaQuestionAddForm]]></controller>
- <permissions>admin.captcha.canManageCaptchaQuestion</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
-
- <!-- maintenance -->
- <acpmenuitem name="wcf.acp.menu.link.maintenance">
- <parent>wcf.acp.menu.link.system</parent>
- <showorder>5</showorder>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.maintenance.cache">
- <controller><![CDATA[wcf\acp\page\CacheListPage]]></controller>
- <parent>wcf.acp.menu.link.maintenance</parent>
- <permissions>admin.system.canManageApplication</permissions>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.maintenance.rebuildData">
- <controller><![CDATA[wcf\acp\page\RebuildDataPage]]></controller>
- <parent>wcf.acp.menu.link.maintenance</parent>
- <permissions>admin.system.canRebuildData</permissions>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.maintenance.import">
- <controller><![CDATA[wcf\acp\form\DataImportForm]]></controller>
- <parent>wcf.acp.menu.link.maintenance</parent>
- <permissions>admin.system.canImportData</permissions>
- </acpmenuitem>
- <!-- /maintenance -->
-
- <!-- log -->
- <acpmenuitem name="wcf.acp.menu.link.log">
- <parent>wcf.acp.menu.link.system</parent>
- <showorder>6</showorder>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.log.session">
- <controller><![CDATA[wcf\acp\page\ACPSessionLogListPage]]></controller>
- <parent>wcf.acp.menu.link.log</parent>
- <permissions>admin.system.canViewLog</permissions>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.log.cronjob">
- <controller><![CDATA[wcf\acp\page\CronjobLogListPage]]></controller>
- <parent>wcf.acp.menu.link.log</parent>
- <permissions>admin.system.canManageCronjob</permissions>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.log.exception">
- <controller><![CDATA[wcf\acp\page\ExceptionLogViewPage]]></controller>
- <parent>wcf.acp.menu.link.log</parent>
- <permissions>admin.system.canViewLog</permissions>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.log.stat">
- <controller><![CDATA[wcf\acp\page\StatPage]]></controller>
- <parent>wcf.acp.menu.link.log</parent>
- <permissions>admin.system.canViewLog</permissions>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.log.authentication.failure">
- <controller><![CDATA[wcf\acp\page\UserAuthenticationFailureListPage]]></controller>
- <parent>wcf.acp.menu.link.log</parent>
- <permissions>admin.system.canViewLog</permissions>
- <options>enable_user_authentication_failure</options>
- </acpmenuitem>
- <!-- /log -->
-
+ <icon>fa-wrench</icon>
+ </acpmenuitem>
+
+ <!-- option -->
+ <acpmenuitem name="wcf.acp.menu.link.option">
+ <parent>wcf.acp.menu.link.configuration</parent>
+ <showorder>1</showorder>
+ <permissions>admin.configuration.canEditOption</permissions>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.option.category">
+ <parent>wcf.acp.menu.link.option</parent>
+ <showorder>1</showorder>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.option.management">
+ <parent>wcf.acp.menu.link.option</parent>
+ <showorder>2</showorder>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.activityPoint">
+ <parent>wcf.acp.menu.link.option</parent>
+ <controller><![CDATA[wcf\acp\form\UserActivityPointOptionForm]]></controller>
+ <permissions>admin.user.canEditActivityPoints</permissions>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.notificationPresetSettings">
+ <parent>wcf.acp.menu.link.option</parent>
+ <controller><![CDATA[wcf\acp\form\NotificationPresetSettingsForm]]></controller>
+ <permissions>admin.user.canEditUser</permissions>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.userOptionDefaults">
+ <controller><![CDATA[wcf\acp\form\UserOptionSetDefaultsForm]]></controller>
+ <parent>wcf.acp.menu.link.option</parent>
+ <permissions>admin.user.canManageUserOption</permissions>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.captcha.question.list">
+ <parent>wcf.acp.menu.link.option</parent>
+ <controller><![CDATA[wcf\acp\page\CaptchaQuestionListPage]]></controller>
+ <permissions>admin.captcha.canManageCaptchaQuestion</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.captcha.question.add">
+ <parent>wcf.acp.menu.link.captcha.question.list</parent>
+ <controller><![CDATA[wcf\acp\form\CaptchaQuestionAddForm]]></controller>
+ <permissions>admin.captcha.canManageCaptchaQuestion</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+ <!-- /option -->
+
+ <!-- package -->
+ <acpmenuitem name="wcf.acp.menu.link.package">
+ <parent>wcf.acp.menu.link.configuration</parent>
+ <showorder>2</showorder>
+ <permissions>admin.configuration.package.canInstallPackage,admin.configuration.package.canUpdatePackage,admin.configuration.package.canUninstallPackage,admin.configuration.package.canEditServer</permissions>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.application.management">
+ <controller><![CDATA[wcf\acp\page\ApplicationManagementPage]]></controller>
+ <parent>wcf.acp.menu.link.package</parent>
+ <permissions>admin.configuration.canManageApplication</permissions>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.package.list">
+ <controller><![CDATA[wcf\acp\page\PackageListPage]]></controller>
+ <parent>wcf.acp.menu.link.package</parent>
+ <permissions>admin.configuration.package.canUpdatePackage,admin.configuration.package.canUninstallPackage</permissions>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.package.install">
+ <controller><![CDATA[wcf\acp\form\PackageStartInstallForm]]></controller>
+ <parent>wcf.acp.menu.link.package.list</parent>
+ <permissions>admin.configuration.package.canInstallPackage</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.package.server.list">
+ <controller><![CDATA[wcf\acp\page\PackageUpdateServerListPage]]></controller>
+ <parent>wcf.acp.menu.link.package</parent>
+ <permissions>admin.configuration.package.canEditServer</permissions>
+ </acpmenuitem>
+ <!-- /package -->
+
+ <!-- /configuration -->
+
+ <!-- user -->
<acpmenuitem name="wcf.acp.menu.link.user">
<showorder>2</showorder>
- </acpmenuitem>
-
- <!-- users -->
- <acpmenuitem name="wcf.acp.menu.link.user.management">
- <parent>wcf.acp.menu.link.user</parent>
- <showorder>1</showorder>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.user.list">
- <controller><![CDATA[wcf\acp\page\UserListPage]]></controller>
- <parent>wcf.acp.menu.link.user.management</parent>
- <permissions>admin.user.canSearchUser</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.user.search">
- <controller><![CDATA[wcf\acp\form\UserSearchForm]]></controller>
- <parent>wcf.acp.menu.link.user.list</parent>
- <permissions>admin.user.canSearchUser</permissions>
- <icon>fa-search</icon>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.user.add">
- <controller><![CDATA[wcf\acp\form\UserAddForm]]></controller>
- <parent>wcf.acp.menu.link.user.list</parent>
- <permissions>admin.user.canAddUser</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.user.bulkProcessing">
- <controller><![CDATA[wcf\acp\form\UserBulkProcessingForm]]></controller>
- <parent>wcf.acp.menu.link.user.management</parent>
- <permissions>admin.user.canEditUser,admin.user.canDeleteUser,admin.user.canMailUser</permissions>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.user.mail">
- <controller><![CDATA[wcf\acp\form\UserMailForm]]></controller>
- <link><![CDATA[action=all]]></link>
- <parent>wcf.acp.menu.link.user.management</parent>
- <permissions>admin.user.canMailUser</permissions>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.activityPoint">
- <parent>wcf.acp.menu.link.user.management</parent>
- <controller><![CDATA[wcf\acp\form\UserActivityPointOptionForm]]></controller>
- <permissions>admin.user.canEditActivityPoints</permissions>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.notificationPresetSettings">
- <parent>wcf.acp.menu.link.user.management</parent>
- <controller><![CDATA[wcf\acp\form\NotificationPresetSettingsForm]]></controller>
- <permissions>admin.user.canEditUser</permissions>
- </acpmenuitem>
- <!-- /users -->
-
- <!-- user groups -->
- <acpmenuitem name="wcf.acp.menu.link.group">
- <parent>wcf.acp.menu.link.user</parent>
- <showorder>2</showorder>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.group.list">
- <controller><![CDATA[wcf\acp\page\UserGroupListPage]]></controller>
- <parent>wcf.acp.menu.link.group</parent>
- <permissions>admin.user.canEditGroup,admin.user.canDeleteGroup</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.group.add">
- <controller><![CDATA[wcf\acp\form\UserGroupAddForm]]></controller>
- <parent>wcf.acp.menu.link.group.list</parent>
- <permissions>admin.user.canAddGroup</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.group.mail">
- <controller><![CDATA[wcf\acp\form\UserMailForm]]></controller>
- <link><![CDATA[action=group]]></link>
- <parent>wcf.acp.menu.link.group</parent>
- <permissions>admin.user.canMailUser</permissions>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.group.assignment">
- <controller><![CDATA[wcf\acp\page\UserGroupAssignmentListPage]]></controller>
- <parent>wcf.acp.menu.link.group</parent>
- <permissions>admin.user.canManageGroupAssignment</permissions>
- </acpmenuitem>
- <!-- user groups -->
-
- <acpmenuitem name="wcf.acp.menu.link.user.rank">
- <parent>wcf.acp.menu.link.user</parent>
- <options>module_user_rank</options>
- <showorder>3</showorder>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.user.rank.list">
- <parent>wcf.acp.menu.link.user.rank</parent>
- <controller><![CDATA[wcf\acp\page\UserRankListPage]]></controller>
- <permissions>admin.user.rank.canManageRank</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.user.rank.add">
- <parent>wcf.acp.menu.link.user.rank.list</parent>
- <controller><![CDATA[wcf\acp\form\UserRankAddForm]]></controller>
- <permissions>admin.user.rank.canManageRank</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
-
- <!-- user options -->
- <acpmenuitem name="wcf.acp.menu.link.user.option">
- <parent>wcf.acp.menu.link.user</parent>
- <showorder>4</showorder>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.user.option.list">
- <controller><![CDATA[wcf\acp\page\UserOptionListPage]]></controller>
- <parent>wcf.acp.menu.link.user.option</parent>
- <permissions>admin.user.canManageUserOption</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.user.option.add">
- <controller><![CDATA[wcf\acp\form\UserOptionAddForm]]></controller>
- <parent>wcf.acp.menu.link.user.option.list</parent>
- <permissions>admin.user.canManageUserOption</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.user.option.category.list">
- <controller><![CDATA[wcf\acp\page\UserOptionCategoryListPage]]></controller>
- <parent>wcf.acp.menu.link.user.option</parent>
- <permissions>admin.user.canManageUserOption</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.user.option.category.add">
- <controller><![CDATA[wcf\acp\form\UserOptionCategoryAddForm]]></controller>
- <parent>wcf.acp.menu.link.user.option.category.list</parent>
- <permissions>admin.user.canManageUserOption</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.user.option.setDefaults">
- <controller><![CDATA[wcf\acp\form\UserOptionSetDefaultsForm]]></controller>
- <parent>wcf.acp.menu.link.user.option</parent>
- <permissions>admin.user.canManageUserOption</permissions>
- </acpmenuitem>
- <!-- /user options -->
-
- <acpmenuitem name="wcf.acp.menu.link.notice">
- <parent>wcf.acp.menu.link.user</parent>
- <showorder>5</showorder>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.notice.list">
- <controller><![CDATA[wcf\acp\page\NoticeListPage]]></controller>
- <parent>wcf.acp.menu.link.notice</parent>
- <permissions>admin.notice.canManageNotice</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.notice.add">
- <controller><![CDATA[wcf\acp\form\NoticeAddForm]]></controller>
- <parent>wcf.acp.menu.link.notice.list</parent>
- <permissions>admin.notice.canManageNotice</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.paidSubscription">
- <parent>wcf.acp.menu.link.user</parent>
- <showorder>6</showorder>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.paidSubscription.list">
- <controller><![CDATA[wcf\acp\page\PaidSubscriptionListPage]]></controller>
- <parent>wcf.acp.menu.link.paidSubscription</parent>
- <permissions>admin.paidSubscription.canManageSubscription</permissions>
- <options>module_paid_subscription</options>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.paidSubscription.user.list">
- <controller><![CDATA[wcf\acp\page\PaidSubscriptionUserListPage]]></controller>
- <parent>wcf.acp.menu.link.paidSubscription</parent>
- <permissions>admin.paidSubscription.canManageSubscription</permissions>
- <options>module_paid_subscription</options>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.paidSubscription.transactionLog.list">
- <controller><![CDATA[wcf\acp\page\PaidSubscriptionTransactionLogListPage]]></controller>
- <parent>wcf.acp.menu.link.paidSubscription</parent>
- <permissions>admin.paidSubscription.canManageSubscription</permissions>
- <options>module_paid_subscription</options>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.display">
- <showorder>3</showorder>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.dashboard">
- <parent>wcf.acp.menu.link.display</parent>
- <showorder>1</showorder>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.dashboard.list">
- <parent>wcf.acp.menu.link.dashboard</parent>
- <controller><![CDATA[wcf\acp\page\DashboardListPage]]></controller>
- <permissions>admin.content.dashboard.canEditDashboard</permissions>
- </acpmenuitem>
-
- <!-- style -->
- <acpmenuitem name="wcf.acp.menu.link.style">
- <parent>wcf.acp.menu.link.display</parent>
- <showorder>2</showorder>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.style.list">
- <controller><![CDATA[wcf\acp\page\StyleListPage]]></controller>
- <parent>wcf.acp.menu.link.style</parent>
- <permissions>admin.style.canManageStyle</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.style.import">
- <controller><![CDATA[wcf\acp\form\StyleImportForm]]></controller>
- <parent>wcf.acp.menu.link.style.list</parent>
- <permissions>admin.style.canManageStyle</permissions>
- <icon>fa-upload</icon>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.style.add">
- <controller><![CDATA[wcf\acp\form\StyleAddForm]]></controller>
- <parent>wcf.acp.menu.link.style.list</parent>
- <permissions>admin.style.canManageStyle</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
- <!-- /style -->
-
- <!-- page menu -->
- <acpmenuitem name="wcf.acp.menu.link.pageMenu">
- <parent>wcf.acp.menu.link.display</parent>
- <showorder>3</showorder>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.pageMenu.list">
- <controller><![CDATA[wcf\acp\page\PageMenuItemListPage]]></controller>
- <parent>wcf.acp.menu.link.pageMenu</parent>
- <permissions>admin.display.canManagePageMenu</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.pageMenu.add">
- <controller><![CDATA[wcf\acp\form\PageMenuItemAddForm]]></controller>
- <parent>wcf.acp.menu.link.pageMenu.list</parent>
- <permissions>admin.display.canManagePageMenu</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
- <!-- /page menu -->
-
- <!-- template -->
- <acpmenuitem name="wcf.acp.menu.link.template">
- <parent>wcf.acp.menu.link.display</parent>
- <showorder>4</showorder>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.template.list">
- <controller><![CDATA[wcf\acp\page\TemplateListPage]]></controller>
- <parent>wcf.acp.menu.link.template</parent>
- <permissions>admin.template.canManageTemplate</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.template.add">
- <controller><![CDATA[wcf\acp\form\TemplateAddForm]]></controller>
- <parent>wcf.acp.menu.link.template.list</parent>
- <permissions>admin.template.canManageTemplate</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.template.group.list">
- <controller><![CDATA[wcf\acp\page\TemplateGroupListPage]]></controller>
- <parent>wcf.acp.menu.link.template</parent>
- <permissions>admin.template.canManageTemplate</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.template.group.add">
- <controller><![CDATA[wcf\acp\form\TemplateGroupAddForm]]></controller>
- <parent>wcf.acp.menu.link.template.group.list</parent>
- <permissions>admin.template.canManageTemplate</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
- <!-- /template -->
-
- <!-- language -->
- <acpmenuitem name="wcf.acp.menu.link.language">
- <parent>wcf.acp.menu.link.display</parent>
- <showorder>5</showorder>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.language.list">
- <parent>wcf.acp.menu.link.language</parent>
- <controller><![CDATA[wcf\acp\page\LanguageListPage]]></controller>
- <permissions>admin.language.canManageLanguage</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.language.import">
- <parent>wcf.acp.menu.link.language.list</parent>
- <controller><![CDATA[wcf\acp\form\LanguageImportForm]]></controller>
- <permissions>admin.language.canManageLanguage</permissions>
- <icon>fa-upload</icon>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.language.item.list">
- <parent>wcf.acp.menu.link.language</parent>
- <controller><![CDATA[wcf\acp\form\LanguageItemList]]></controller>
- <permissions>admin.language.canManageLanguage</permissions>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.language.multilingualism">
- <parent>wcf.acp.menu.link.language</parent>
- <controller><![CDATA[wcf\acp\form\LanguageMultilingualismForm]]></controller>
- <permissions>admin.language.canManageLanguage</permissions>
- </acpmenuitem>
-
- <!-- <acpmenuitem name="wcf.acp.menu.link.language.server">
- <parent>wcf.acp.menu.link.language</parent>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.language.server.list">
- <controller><![CDATA[wcf\acp\page\LanguageServerListPage]]></controller>
- <parent>wcf.acp.menu.link.language.server</parent>
- <permissions>admin.language.canManageLanguage</permissions>
- </acpmenuitem>-->
- <!-- /language -->
-
- <acpmenuitem name="wcf.acp.menu.link.ad">
- <parent>wcf.acp.menu.link.display</parent>
- <!-- do NOT use 'module_ad', the ACP checkbox is incorrectly recognized by adblockers -->
- <options>module_wcf_ad</options>
- <showorder>6</showorder>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.ad.list">
- <controller><![CDATA[wcf\acp\page\AdListPage]]></controller>
- <parent>wcf.acp.menu.link.ad</parent>
- <permissions>admin.ad.canManageAd</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.ad.add">
- <controller><![CDATA[wcf\acp\form\AdAddForm]]></controller>
- <parent>wcf.acp.menu.link.ad.list</parent>
- <permissions>admin.ad.canManageAd</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
-
+ <icon>fa-users</icon>
+ </acpmenuitem>
+
+ <!-- management -->
+ <acpmenuitem name="wcf.acp.menu.link.user.management">
+ <parent>wcf.acp.menu.link.user</parent>
+ <showorder>1</showorder>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.user.list">
+ <controller><![CDATA[wcf\acp\page\UserListPage]]></controller>
+ <parent>wcf.acp.menu.link.user.management</parent>
+ <permissions>admin.user.canSearchUser</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.user.search">
+ <controller><![CDATA[wcf\acp\form\UserSearchForm]]></controller>
+ <parent>wcf.acp.menu.link.user.list</parent>
+ <permissions>admin.user.canSearchUser</permissions>
+ <icon>fa-search</icon>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.user.add">
+ <controller><![CDATA[wcf\acp\form\UserAddForm]]></controller>
+ <parent>wcf.acp.menu.link.user.list</parent>
+ <permissions>admin.user.canAddUser</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.user.bulkProcessing">
+ <controller><![CDATA[wcf\acp\form\UserBulkProcessingForm]]></controller>
+ <parent>wcf.acp.menu.link.user.management</parent>
+ <permissions>admin.user.canEditUser,admin.user.canDeleteUser,admin.user.canMailUser</permissions>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.user.mail">
+ <controller><![CDATA[wcf\acp\form\UserMailForm]]></controller>
+ <link><![CDATA[action=all]]></link>
+ <parent>wcf.acp.menu.link.user.management</parent>
+ <permissions>admin.user.canMailUser</permissions>
+ </acpmenuitem>
+ <!-- /management -->
+
+ <!-- group -->
+ <acpmenuitem name="wcf.acp.menu.link.group">
+ <parent>wcf.acp.menu.link.user</parent>
+ <showorder>2</showorder>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.group.list">
+ <controller><![CDATA[wcf\acp\page\UserGroupListPage]]></controller>
+ <parent>wcf.acp.menu.link.group</parent>
+ <permissions>admin.user.canEditGroup,admin.user.canDeleteGroup</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.group.add">
+ <controller><![CDATA[wcf\acp\form\UserGroupAddForm]]></controller>
+ <parent>wcf.acp.menu.link.group.list</parent>
+ <permissions>admin.user.canAddGroup</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.group.mail">
+ <controller><![CDATA[wcf\acp\form\UserMailForm]]></controller>
+ <link><![CDATA[action=group]]></link>
+ <parent>wcf.acp.menu.link.group</parent>
+ <permissions>admin.user.canMailUser</permissions>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.group.assignment">
+ <controller><![CDATA[wcf\acp\page\UserGroupAssignmentListPage]]></controller>
+ <parent>wcf.acp.menu.link.group</parent>
+ <permissions>admin.user.canManageGroupAssignment</permissions>
+ </acpmenuitem>
+ <!-- /group -->
+
+ <!-- rank -->
+ <acpmenuitem name="wcf.acp.menu.link.user.rank">
+ <parent>wcf.acp.menu.link.user</parent>
+ <options>module_user_rank</options>
+ <showorder>3</showorder>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.user.rank.list">
+ <parent>wcf.acp.menu.link.user.rank</parent>
+ <controller><![CDATA[wcf\acp\page\UserRankListPage]]></controller>
+ <permissions>admin.user.rank.canManageRank</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.user.rank.add">
+ <parent>wcf.acp.menu.link.user.rank.list</parent>
+ <controller><![CDATA[wcf\acp\form\UserRankAddForm]]></controller>
+ <permissions>admin.user.rank.canManageRank</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+ <!-- /rank -->
+
+ <!-- option -->
+ <acpmenuitem name="wcf.acp.menu.link.user.option">
+ <parent>wcf.acp.menu.link.user</parent>
+ <showorder>4</showorder>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.user.option.list">
+ <controller><![CDATA[wcf\acp\page\UserOptionListPage]]></controller>
+ <parent>wcf.acp.menu.link.user.option</parent>
+ <permissions>admin.user.canManageUserOption</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.user.option.add">
+ <controller><![CDATA[wcf\acp\form\UserOptionAddForm]]></controller>
+ <parent>wcf.acp.menu.link.user.option.list</parent>
+ <permissions>admin.user.canManageUserOption</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.user.option.category.list">
+ <controller><![CDATA[wcf\acp\page\UserOptionCategoryListPage]]></controller>
+ <parent>wcf.acp.menu.link.user.option</parent>
+ <permissions>admin.user.canManageUserOption</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.user.option.category.add">
+ <controller><![CDATA[wcf\acp\form\UserOptionCategoryAddForm]]></controller>
+ <parent>wcf.acp.menu.link.user.option.category.list</parent>
+ <permissions>admin.user.canManageUserOption</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+ <!-- /option -->
+
+ <!-- notice -->
+ <acpmenuitem name="wcf.acp.menu.link.notice">
+ <parent>wcf.acp.menu.link.user</parent>
+ <showorder>5</showorder>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.notice.list">
+ <controller><![CDATA[wcf\acp\page\NoticeListPage]]></controller>
+ <parent>wcf.acp.menu.link.notice</parent>
+ <permissions>admin.notice.canManageNotice</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.notice.add">
+ <controller><![CDATA[wcf\acp\form\NoticeAddForm]]></controller>
+ <parent>wcf.acp.menu.link.notice.list</parent>
+ <permissions>admin.notice.canManageNotice</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+ <!-- /notice -->
+
+ <!-- paid subscription -->
+ <acpmenuitem name="wcf.acp.menu.link.paidSubscription">
+ <parent>wcf.acp.menu.link.user</parent>
+ <showorder>6</showorder>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.paidSubscription.list">
+ <controller><![CDATA[wcf\acp\page\PaidSubscriptionListPage]]></controller>
+ <parent>wcf.acp.menu.link.paidSubscription</parent>
+ <permissions>admin.paidSubscription.canManageSubscription</permissions>
+ <options>module_paid_subscription</options>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.paidSubscription.user.list">
+ <controller><![CDATA[wcf\acp\page\PaidSubscriptionUserListPage]]></controller>
+ <parent>wcf.acp.menu.link.paidSubscription</parent>
+ <permissions>admin.paidSubscription.canManageSubscription</permissions>
+ <options>module_paid_subscription</options>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.paidSubscription.transactionLog.list">
+ <controller><![CDATA[wcf\acp\page\PaidSubscriptionTransactionLogListPage]]></controller>
+ <parent>wcf.acp.menu.link.paidSubscription</parent>
+ <permissions>admin.paidSubscription.canManageSubscription</permissions>
+ <options>module_paid_subscription</options>
+ </acpmenuitem>
+ <!-- /paid subscription -->
+
+ <!-- /user -->
+
+ <!-- content -->
<acpmenuitem name="wcf.acp.menu.link.content">
- <showorder>4</showorder>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.smiley">
- <parent>wcf.acp.menu.link.content</parent>
- <options>module_smiley</options>
- <showorder>1</showorder>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.smiley.list">
- <controller><![CDATA[wcf\acp\page\SmileyListPage]]></controller>
- <parent>wcf.acp.menu.link.smiley</parent>
- <permissions>admin.content.smiley.canManageSmiley</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.smiley.add">
- <controller><![CDATA[wcf\acp\form\SmileyAddForm]]></controller>
- <parent>wcf.acp.menu.link.smiley.list</parent>
- <permissions>admin.content.smiley.canManageSmiley</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.smiley.category.list">
- <controller><![CDATA[wcf\acp\page\SmileyCategoryListPage]]></controller>
- <parent>wcf.acp.menu.link.smiley</parent>
- <permissions>admin.content.smiley.canManageSmiley</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.smiley.category.add">
- <controller><![CDATA[wcf\acp\form\SmileyCategoryAddForm]]></controller>
- <parent>wcf.acp.menu.link.smiley.category.list</parent>
- <permissions>admin.content.smiley.canManageSmiley</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.label">
- <parent>wcf.acp.menu.link.content</parent>
- <showorder>2</showorder>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.label.list">
- <controller><![CDATA[wcf\acp\page\LabelListPage]]></controller>
- <parent>wcf.acp.menu.link.label</parent>
- <permissions>admin.content.label.canManageLabel</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.label.add">
- <controller><![CDATA[wcf\acp\form\LabelAddForm]]></controller>
- <parent>wcf.acp.menu.link.label.list</parent>
- <permissions>admin.content.label.canManageLabel</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.label.group.list">
- <controller><![CDATA[wcf\acp\page\LabelGroupListPage]]></controller>
- <parent>wcf.acp.menu.link.label</parent>
- <permissions>admin.content.label.canManageLabel</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.label.group.add">
- <controller><![CDATA[wcf\acp\form\LabelGroupAddForm]]></controller>
- <parent>wcf.acp.menu.link.label.group.list</parent>
- <permissions>admin.content.label.canManageLabel</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.bbcode">
- <parent>wcf.acp.menu.link.content</parent>
<showorder>3</showorder>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.bbcode.list">
- <controller><![CDATA[wcf\acp\page\BBCodeListPage]]></controller>
- <parent>wcf.acp.menu.link.bbcode</parent>
- <permissions>admin.content.bbcode.canManageBBCode</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.bbcode.add">
- <controller><![CDATA[wcf\acp\form\BBCodeAddForm]]></controller>
- <parent>wcf.acp.menu.link.bbcode.list</parent>
- <permissions>admin.content.bbcode.canManageBBCode</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.bbcode.mediaProvider.list">
- <controller><![CDATA[wcf\acp\page\BBCodeMediaProviderListPage]]></controller>
- <parent>wcf.acp.menu.link.bbcode</parent>
- <permissions>admin.content.bbcode.canManageBBCode</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.bbcode.mediaProvider.add">
- <controller><![CDATA[wcf\acp\form\BBCodeMediaProviderAddForm]]></controller>
- <parent>wcf.acp.menu.link.bbcode.mediaProvider.list</parent>
- <permissions>admin.content.bbcode.canManageBBCode</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.tag">
- <parent>wcf.acp.menu.link.content</parent>
- <options>module_tagging</options>
+ <icon>fa-file-text</icon>
+ </acpmenuitem>
+
+ <!-- cms -->
+ <acpmenuitem name="wcf.acp.menu.link.cms">
+ <parent>wcf.acp.menu.link.content</parent>
+ <showorder>1</showorder>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.cms.page.list">
+ <controller><![CDATA[wcf\acp\page\PageListPage]]></controller>
+ <parent>wcf.acp.menu.link.cms</parent>
+ <permissions>admin.content.cms.canManagePage</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.cms.page.landing">
+ <controller><![CDATA[wcf\acp\form\PageLandingForm]]></controller>
+ <parent>wcf.acp.menu.link.cms.page.list</parent>
+ <permissions>admin.content.cms.canManagePage</permissions>
+ <icon>fa-home</icon>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.cms.page.add">
+ <controller><![CDATA[wcf\acp\form\PageAddForm]]></controller>
+ <parent>wcf.acp.menu.link.cms.page.list</parent>
+ <permissions>admin.content.cms.canManagePage</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.cms.menu.list">
+ <controller><![CDATA[wcf\acp\page\MenuListPage]]></controller>
+ <parent>wcf.acp.menu.link.cms</parent>
+ <permissions>admin.content.cms.canManageMenu</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.cms.menu.add">
+ <controller><![CDATA[wcf\acp\form\MenuAddForm]]></controller>
+ <parent>wcf.acp.menu.link.cms.menu.list</parent>
+ <permissions>admin.content.cms.canManageMenu</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.cms.box.list">
+ <controller><![CDATA[wcf\acp\page\BoxListPage]]></controller>
+ <parent>wcf.acp.menu.link.cms</parent>
+ <permissions>admin.content.cms.canManageBox</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.cms.box.add">
+ <controller><![CDATA[wcf\acp\form\BoxAddForm]]></controller>
+ <parent>wcf.acp.menu.link.cms.box.list</parent>
+ <permissions>admin.content.cms.canManageBox</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.cms.media.list">
+ <controller><![CDATA[wcf\acp\page\MediaListPage]]></controller>
+ <parent>wcf.acp.menu.link.cms</parent>
+ <permissions>admin.content.cms.canManageMedia</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.cms.media.add">
+ <controller><![CDATA[wcf\acp\form\MediaAddForm]]></controller>
+ <parent>wcf.acp.menu.link.cms.media.list</parent>
+ <permissions>admin.content.cms.canManageMedia</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+ <!-- /cms -->
+
+ <!-- label -->
+ <acpmenuitem name="wcf.acp.menu.link.label">
+ <parent>wcf.acp.menu.link.content</parent>
+ <showorder>2</showorder>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.label.list">
+ <controller><![CDATA[wcf\acp\page\LabelListPage]]></controller>
+ <parent>wcf.acp.menu.link.label</parent>
+ <permissions>admin.content.label.canManageLabel</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.label.add">
+ <controller><![CDATA[wcf\acp\form\LabelAddForm]]></controller>
+ <parent>wcf.acp.menu.link.label.list</parent>
+ <permissions>admin.content.label.canManageLabel</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.label.group.list">
+ <controller><![CDATA[wcf\acp\page\LabelGroupListPage]]></controller>
+ <parent>wcf.acp.menu.link.label</parent>
+ <permissions>admin.content.label.canManageLabel</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.label.group.add">
+ <controller><![CDATA[wcf\acp\form\LabelGroupAddForm]]></controller>
+ <parent>wcf.acp.menu.link.label.group.list</parent>
+ <permissions>admin.content.label.canManageLabel</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+ <!-- /label -->
+
+ <!-- bbcode -->
+ <acpmenuitem name="wcf.acp.menu.link.bbcode">
+ <parent>wcf.acp.menu.link.content</parent>
+ <showorder>3</showorder>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.bbcode.list">
+ <controller><![CDATA[wcf\acp\page\BBCodeListPage]]></controller>
+ <parent>wcf.acp.menu.link.bbcode</parent>
+ <permissions>admin.content.bbcode.canManageBBCode</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.bbcode.add">
+ <controller><![CDATA[wcf\acp\form\BBCodeAddForm]]></controller>
+ <parent>wcf.acp.menu.link.bbcode.list</parent>
+ <permissions>admin.content.bbcode.canManageBBCode</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.bbcode.mediaProvider.list">
+ <controller><![CDATA[wcf\acp\page\BBCodeMediaProviderListPage]]></controller>
+ <parent>wcf.acp.menu.link.bbcode</parent>
+ <permissions>admin.content.bbcode.canManageBBCode</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.bbcode.mediaProvider.add">
+ <controller><![CDATA[wcf\acp\form\BBCodeMediaProviderAddForm]]></controller>
+ <parent>wcf.acp.menu.link.bbcode.mediaProvider.list</parent>
+ <permissions>admin.content.bbcode.canManageBBCode</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+ <!-- /bbcode -->
+
+ <!-- tag -->
+ <acpmenuitem name="wcf.acp.menu.link.tag">
+ <parent>wcf.acp.menu.link.content</parent>
+ <options>module_tagging</options>
+ <showorder>4</showorder>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.tag.list">
+ <controller><![CDATA[wcf\acp\page\TagListPage]]></controller>
+ <parent>wcf.acp.menu.link.tag</parent>
+ <permissions>admin.content.tag.canManageTag</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.tag.add">
+ <controller><![CDATA[wcf\acp\form\TagAddForm]]></controller>
+ <parent>wcf.acp.menu.link.tag.list</parent>
+ <permissions>admin.content.tag.canManageTag</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+ <!-- /tag -->
+
+ <!-- attachment -->
+ <acpmenuitem name="wcf.acp.menu.link.attachment">
+ <parent>wcf.acp.menu.link.content</parent>
+ <showorder>5</showorder>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.attachment.list">
+ <controller><![CDATA[wcf\acp\page\AttachmentListPage]]></controller>
+ <parent>wcf.acp.menu.link.attachment</parent>
+ <permissions>admin.attachment.canManageAttachment</permissions>
+ </acpmenuitem>
+ <!-- /attachment -->
+
+ <!-- /content -->
+
+ <!-- application -->
+ <acpmenuitem name="wcf.acp.menu.link.application">
<showorder>4</showorder>
+ <icon>fa-comments</icon>
</acpmenuitem>
+ <!-- /application -->
- <acpmenuitem name="wcf.acp.menu.link.tag.list">
- <controller><![CDATA[wcf\acp\page\TagListPage]]></controller>
- <parent>wcf.acp.menu.link.tag</parent>
- <permissions>admin.content.tag.canManageTag</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.tag.add">
- <controller><![CDATA[wcf\acp\form\TagAddForm]]></controller>
- <parent>wcf.acp.menu.link.tag.list</parent>
- <permissions>admin.content.tag.canManageTag</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.attachment">
- <parent>wcf.acp.menu.link.content</parent>
+ <!-- customization -->
+ <acpmenuitem name="wcf.acp.menu.link.customization">
<showorder>5</showorder>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.attachment.list">
- <controller><![CDATA[wcf\acp\page\AttachmentListPage]]></controller>
- <parent>wcf.acp.menu.link.attachment</parent>
- <permissions>admin.attachment.canManageAttachment</permissions>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.community">
- <showorder>5</showorder>
- </acpmenuitem>
-
- <!-- lantia -->
- <acpmenuitem name="wcf.acp.menu.link.cms">
- <parent>wcf.acp.menu.link.content</parent>
- <showorder>1</showorder>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.cms.page.list">
- <controller><![CDATA[wcf\acp\page\PageListPage]]></controller>
- <parent>wcf.acp.menu.link.cms</parent>
- <permissions>admin.content.cms.canManagePage</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.cms.page.landing">
- <controller><![CDATA[wcf\acp\form\PageLandingForm]]></controller>
- <parent>wcf.acp.menu.link.cms.page.list</parent>
- <permissions>admin.content.cms.canManagePage</permissions>
- <icon>fa-home</icon>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.cms.page.add">
- <controller><![CDATA[wcf\acp\form\PageAddForm]]></controller>
- <parent>wcf.acp.menu.link.cms.page.list</parent>
- <permissions>admin.content.cms.canManagePage</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.cms.menu.list">
- <controller><![CDATA[wcf\acp\page\MenuListPage]]></controller>
- <parent>wcf.acp.menu.link.cms</parent>
- <permissions>admin.content.cms.canManageMenu</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.cms.menu.add">
- <controller><![CDATA[wcf\acp\form\MenuAddForm]]></controller>
- <parent>wcf.acp.menu.link.cms.menu.list</parent>
- <permissions>admin.content.cms.canManageMenu</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.cms.box.list">
- <controller><![CDATA[wcf\acp\page\BoxListPage]]></controller>
- <parent>wcf.acp.menu.link.cms</parent>
- <permissions>admin.content.cms.canManageBox</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.cms.box.add">
- <controller><![CDATA[wcf\acp\form\BoxAddForm]]></controller>
- <parent>wcf.acp.menu.link.cms.box.list</parent>
- <permissions>admin.content.cms.canManageBox</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
-
- <acpmenuitem name="wcf.acp.menu.link.cms.media.list">
- <controller><![CDATA[wcf\acp\page\MediaListPage]]></controller>
- <parent>wcf.acp.menu.link.cms</parent>
- <permissions>admin.content.cms.canManageMedia</permissions>
- </acpmenuitem>
- <acpmenuitem name="wcf.acp.menu.link.cms.media.add">
- <controller><![CDATA[wcf\acp\form\MediaAddForm]]></controller>
- <parent>wcf.acp.menu.link.cms.media.list</parent>
- <permissions>admin.content.cms.canManageMedia</permissions>
- <icon>fa-plus</icon>
- </acpmenuitem>
+ <icon>fa-desktop</icon>
+ </acpmenuitem>
+
+ <!-- style -->
+ <acpmenuitem name="wcf.acp.menu.link.style">
+ <parent>wcf.acp.menu.link.customization</parent>
+ <showorder>1</showorder>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.style.list">
+ <controller><![CDATA[wcf\acp\page\StyleListPage]]></controller>
+ <parent>wcf.acp.menu.link.style</parent>
+ <permissions>admin.style.canManageStyle</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.style.import">
+ <controller><![CDATA[wcf\acp\form\StyleImportForm]]></controller>
+ <parent>wcf.acp.menu.link.style.list</parent>
+ <permissions>admin.style.canManageStyle</permissions>
+ <icon>fa-upload</icon>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.style.add">
+ <controller><![CDATA[wcf\acp\form\StyleAddForm]]></controller>
+ <parent>wcf.acp.menu.link.style.list</parent>
+ <permissions>admin.style.canManageStyle</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+ <!-- /style -->
+
+ <!-- template -->
+ <acpmenuitem name="wcf.acp.menu.link.template">
+ <parent>wcf.acp.menu.link.customization</parent>
+ <showorder>2</showorder>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.template.list">
+ <controller><![CDATA[wcf\acp\page\TemplateListPage]]></controller>
+ <parent>wcf.acp.menu.link.template</parent>
+ <permissions>admin.template.canManageTemplate</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.template.add">
+ <controller><![CDATA[wcf\acp\form\TemplateAddForm]]></controller>
+ <parent>wcf.acp.menu.link.template.list</parent>
+ <permissions>admin.template.canManageTemplate</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.template.group.list">
+ <controller><![CDATA[wcf\acp\page\TemplateGroupListPage]]></controller>
+ <parent>wcf.acp.menu.link.template</parent>
+ <permissions>admin.template.canManageTemplate</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.template.group.add">
+ <controller><![CDATA[wcf\acp\form\TemplateGroupAddForm]]></controller>
+ <parent>wcf.acp.menu.link.template.group.list</parent>
+ <permissions>admin.template.canManageTemplate</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+ <!-- /template -->
+
+ <!-- language -->
+ <acpmenuitem name="wcf.acp.menu.link.language">
+ <parent>wcf.acp.menu.link.customization</parent>
+ <showorder>3</showorder>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.language.list">
+ <parent>wcf.acp.menu.link.language</parent>
+ <controller><![CDATA[wcf\acp\page\LanguageListPage]]></controller>
+ <permissions>admin.language.canManageLanguage</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.language.import">
+ <parent>wcf.acp.menu.link.language.list</parent>
+ <controller><![CDATA[wcf\acp\form\LanguageImportForm]]></controller>
+ <permissions>admin.language.canManageLanguage</permissions>
+ <icon>fa-upload</icon>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.language.item.list">
+ <parent>wcf.acp.menu.link.language</parent>
+ <controller><![CDATA[wcf\acp\form\LanguageItemList]]></controller>
+ <permissions>admin.language.canManageLanguage</permissions>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.language.multilingualism">
+ <parent>wcf.acp.menu.link.language</parent>
+ <controller><![CDATA[wcf\acp\form\LanguageMultilingualismForm]]></controller>
+ <permissions>admin.language.canManageLanguage</permissions>
+ </acpmenuitem>
+ <!-- /language -->
+
+ <!-- smiley -->
+ <acpmenuitem name="wcf.acp.menu.link.smiley">
+ <parent>wcf.acp.menu.link.customization</parent>
+ <options>module_smiley</options>
+ <showorder>4</showorder>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.smiley.list">
+ <controller><![CDATA[wcf\acp\page\SmileyListPage]]></controller>
+ <parent>wcf.acp.menu.link.smiley</parent>
+ <permissions>admin.content.smiley.canManageSmiley</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.smiley.add">
+ <controller><![CDATA[wcf\acp\form\SmileyAddForm]]></controller>
+ <parent>wcf.acp.menu.link.smiley.list</parent>
+ <permissions>admin.content.smiley.canManageSmiley</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.smiley.category.list">
+ <controller><![CDATA[wcf\acp\page\SmileyCategoryListPage]]></controller>
+ <parent>wcf.acp.menu.link.smiley</parent>
+ <permissions>admin.content.smiley.canManageSmiley</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.smiley.category.add">
+ <controller><![CDATA[wcf\acp\form\SmileyCategoryAddForm]]></controller>
+ <parent>wcf.acp.menu.link.smiley.category.list</parent>
+ <permissions>admin.content.smiley.canManageSmiley</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+ <!-- /smiley -->
+
+ <!-- ad -->
+ <acpmenuitem name="wcf.acp.menu.link.ad">
+ <parent>wcf.acp.menu.link.customization</parent>
+ <!-- do NOT use 'module_ad', the ACP checkbox is incorrectly recognized by adblockers -->
+ <options>module_wcf_ad</options>
+ <showorder>5</showorder>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.ad.list">
+ <controller><![CDATA[wcf\acp\page\AdListPage]]></controller>
+ <parent>wcf.acp.menu.link.ad</parent>
+ <permissions>admin.ad.canManageAd</permissions>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.ad.add">
+ <controller><![CDATA[wcf\acp\form\AdAddForm]]></controller>
+ <parent>wcf.acp.menu.link.ad.list</parent>
+ <permissions>admin.ad.canManageAd</permissions>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+ <!-- /ad -->
+
+ <!-- /customization -->
+
+ <!-- management -->
+ <acpmenuitem name="wcf.acp.menu.link.management">
+ <showorder>6</showorder>
+ <icon>fa-cog</icon>
+ </acpmenuitem>
+
+ <!-- maintenance -->
+ <acpmenuitem name="wcf.acp.menu.link.maintenance">
+ <parent>wcf.acp.menu.link.management</parent>
+ <showorder>1</showorder>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.cronjob.list">
+ <controller><![CDATA[wcf\acp\page\CronjobListPage]]></controller>
+ <parent>wcf.acp.menu.link.maintenance</parent>
+ <permissions>admin.management.canManageCronjob</permissions>
+ <showorder>1</showorder>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.cronjob.add">
+ <controller><![CDATA[wcf\acp\form\CronjobAddForm]]></controller>
+ <parent>wcf.acp.menu.link.cronjob.list</parent>
+ <permissions>admin.management.canManageCronjob</permissions>
+ <showorder>2</showorder>
+ <icon>fa-plus</icon>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.maintenance.cache">
+ <controller><![CDATA[wcf\acp\page\CacheListPage]]></controller>
+ <parent>wcf.acp.menu.link.maintenance</parent>
+ <permissions>admin.configuration.canManageApplication</permissions>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.maintenance.rebuildData">
+ <controller><![CDATA[wcf\acp\page\RebuildDataPage]]></controller>
+ <parent>wcf.acp.menu.link.maintenance</parent>
+ <permissions>admin.management.canRebuildData</permissions>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.maintenance.import">
+ <controller><![CDATA[wcf\acp\form\DataImportForm]]></controller>
+ <parent>wcf.acp.menu.link.maintenance</parent>
+ <permissions>admin.management.canImportData</permissions>
+ </acpmenuitem>
+ <!-- /maintenance -->
+
+ <!-- stat -->
+ <acpmenuitem name="wcf.acp.menu.link.stat">
+ <parent>wcf.acp.menu.link.management</parent>
+ <showorder>2</showorder>
+ </acpmenuitem>
+ <acpmenuitem name="wcf.acp.menu.link.stat.list">
+ <controller><![CDATA[wcf\acp\page\StatPage]]></controller>
+ <parent>wcf.acp.menu.link.stat</parent>
+ <permissions>admin.management.canViewLog</permissions>
+ </acpmenuitem>
+ <!-- /stat -->
+
+ <!-- log -->
+ <acpmenuitem name="wcf.acp.menu.link.log">
+ <parent>wcf.acp.menu.link.management</parent>
+ <showorder>3</showorder>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.log.session">
+ <controller><![CDATA[wcf\acp\page\ACPSessionLogListPage]]></controller>
+ <parent>wcf.acp.menu.link.log</parent>
+ <permissions>admin.management.canViewLog</permissions>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.log.cronjob">
+ <controller><![CDATA[wcf\acp\page\CronjobLogListPage]]></controller>
+ <parent>wcf.acp.menu.link.log</parent>
+ <permissions>admin.management.canManageCronjob</permissions>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.log.exception">
+ <controller><![CDATA[wcf\acp\page\ExceptionLogViewPage]]></controller>
+ <parent>wcf.acp.menu.link.log</parent>
+ <permissions>admin.management.canViewLog</permissions>
+ </acpmenuitem>
+
+ <acpmenuitem name="wcf.acp.menu.link.log.authentication.failure">
+ <controller><![CDATA[wcf\acp\page\UserAuthenticationFailureListPage]]></controller>
+ <parent>wcf.acp.menu.link.log</parent>
+ <permissions>admin.management.canViewLog</permissions>
+ <options>enable_user_authentication_failure</options>
+ </acpmenuitem>
+ <!-- /log -->
+
+ <!-- /management -->
</import>
</data>
<p class="info">{lang}wcf.page.cookiePolicy.info{/lang}</p>
{/if}
- {if $__wcf->session->getPermission('admin.system.package.canUpdatePackage') && $__wcf->getAvailableUpdates()}
+ {if $__wcf->session->getPermission('admin.configuration.package.canUpdatePackage') && $__wcf->getAvailableUpdates()}
<p class="info">{lang}wcf.global.availableUpdates{/lang}</p>
{/if}
<data xmlns="http://www.woltlab.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.woltlab.com http://www.woltlab.com/XSD/maelstrom/userGroupOption.xsd">
<import>
<categories>
- <category name="user"></category>
+ <category name="user" />
<category name="user.profile">
<parent>user</parent>
</category>
<parent>user.message</parent>
</category>
- <category name="mod"></category>
+ <category name="mod" />
<category name="mod.general">
<parent>mod</parent>
</category>
<parent>mod.general</parent>
</category>
- <category name="admin"></category>
+ <category name="admin" />
+
<category name="admin.general">
<parent>admin</parent>
</category>
- <category name="admin.system">
+
+ <!-- admin.configuration -->
+ <category name="admin.configuration">
<parent>admin</parent>
</category>
- <category name="admin.system.package">
- <parent>admin.system</parent>
- </category>
- <category name="admin.maintenance">
- <parent>admin.system</parent>
+ <category name="admin.configuration.package">
+ <parent>admin.configuration</parent>
</category>
+ <!-- /admin.configuration -->
+
+ <!-- admin.user -->
<category name="admin.user">
<parent>admin</parent>
</category>
<category name="admin.user.group">
<parent>admin.user</parent>
</category>
- <category name="admin.user.option"><!-- @deprecated -->
- <parent>admin.user</parent>
- </category>
- <category name="admin.user.rank"><!-- @deprecated -->
- <parent>admin.user</parent>
- </category>
+ <!-- /admin.user -->
- <category name="admin.display">
+ <!-- admin.content -->
+ <category name="admin.content">
<parent>admin</parent>
</category>
- <category name="admin.style"><!-- @deprecated -->
- <parent>admin.display</parent>
- </category>
- <category name="admin.display.pageMenu"><!-- @deprecated -->
- <parent>admin.display</parent>
- </category>
- <category name="admin.template"><!-- @deprecated -->
- <parent>admin.display</parent>
- </category>
+ <!-- /admin.content -->
- <category name="admin.content">
+ <!-- admin.application -->
+ <category name="admin.application">
<parent>admin</parent>
</category>
- <category name="admin.attachment"><!-- @deprecated -->
- <parent>admin.content</parent>
- </category>
- <category name="admin.content.bbcode"><!-- @deprecated -->
- <parent>admin.content</parent>
- </category>
- <category name="admin.content.smiley"><!-- @deprecated -->
- <parent>admin.content</parent>
- </category>
- <category name="admin.content.dashboard"><!-- @deprecated -->
- <parent>admin.content</parent>
- </category>
- <category name="admin.content.label"><!-- @deprecated -->
- <parent>admin.content</parent>
- </category>
- <category name="admin.content.tag"><!-- @deprecated -->
- <parent>admin.content</parent>
- </category>
+ <!-- /admin.application -->
- <category name="admin.community">
+ <!-- admin.customization -->
+ <category name="admin.customization">
<parent>admin</parent>
</category>
- <category name="admin.language"><!-- @deprecated -->
- <parent>admin.display</parent>
+ <!-- /admin.customization -->
+
+ <!-- admin.management -->
+ <category name="admin.management">
+ <parent>admin</parent>
</category>
+ <!-- /admin.management -->
</categories>
<options>
+ <!-- admin.general -->
<option name="admin.general.canViewPrivateUserOptions">
<categoryname>admin.general</categoryname>
<optiontype>boolean</optiontype>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
- <option name="admin.system.canEditOption">
- <categoryname>admin.system</categoryname>
+ <option name="admin.user.canViewInvisible">
+ <categoryname>admin.general</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
- <option name="admin.system.canViewLog">
- <categoryname>admin.system</categoryname>
+ <option name="admin.user.canViewIpAddress">
+ <categoryname>admin.general</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
- <option name="admin.system.canManageApplication">
- <categoryname>admin.system.package</categoryname>
+ <!-- /admin.general -->
+
+ <!-- admin.configuration -->
+ <option name="admin.configuration.canEditOption">
+ <categoryname>admin.configuration</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
- <option name="admin.system.canImportData">
- <categoryname>admin.system</categoryname>
+ <option name="admin.user.canEditActivityPoints">
+ <categoryname>admin.configuration</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
- <option name="admin.system.canRebuildData">
- <categoryname>admin.system</categoryname>
+ <option name="admin.captcha.canManageCaptchaQuestion">
+ <categoryname>admin.configuration</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
- <option name="admin.system.canManageCronjob">
- <categoryname>admin.system</categoryname>
+ <option name="admin.configuration.canManageApplication">
+ <categoryname>admin.configuration.package</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
- <option name="admin.system.package.canUpdatePackage">
- <categoryname>admin.system.package</categoryname>
+ <option name="admin.configuration.package.canUpdatePackage">
+ <categoryname>admin.configuration.package</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
- <option name="admin.system.package.canUninstallPackage">
- <categoryname>admin.system.package</categoryname>
+ <option name="admin.configuration.package.canUninstallPackage">
+ <categoryname>admin.configuration.package</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
- <option name="admin.system.package.canEditServer">
- <categoryname>admin.system.package</categoryname>
+ <option name="admin.configuration.package.canEditServer">
+ <categoryname>admin.configuration.package</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
+ <!-- /admin.configuration -->
+
+ <!-- admin.user -->
<option name="admin.user.accessibleGroups">
<categoryname>admin.user.group</categoryname>
<optiontype>userGroups</optiontype>
- <defaultvalue></defaultvalue>
+ <defaultvalue />
<admindefaultvalue>1,2,3,4,5</admindefaultvalue>
<usersonly>1</usersonly>
</option>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
+ <option name="admin.user.canEnableUser">
+ <categoryname>admin.user.user</categoryname>
+ <optiontype>boolean</optiontype>
+ <defaultvalue>0</defaultvalue>
+ <admindefaultvalue>1</admindefaultvalue>
+ <usersonly>1</usersonly>
+ </option>
<option name="admin.user.canBanUser">
<categoryname>admin.user.user</categoryname>
<optiontype>boolean</optiontype>
<usersonly>1</usersonly>
</option>
- <option name="admin.paidSubscription.canManageSubscription">
+ <option name="admin.notice.canManageNotice">
<categoryname>admin.user.user</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<usersonly>1</usersonly>
</option>
- <option name="admin.content.dashboard.canEditDashboard">
- <categoryname>admin.display</categoryname>
+ <option name="admin.user.rank.canManageRank">
+ <categoryname>admin.user.user</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
- <option name="admin.style.canManageStyle">
- <categoryname>admin.display</categoryname>
+ <option name="admin.paidSubscription.canManageSubscription">
+ <categoryname>admin.user.user</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
- <option name="admin.style.canUseDisabledStyle">
- <categoryname>admin.display</categoryname>
+ <!-- /admin.user -->
+
+ <!-- admin.content -->
+ <option name="admin.content.cms.canManagePage">
+ <categoryname>admin.content</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
- <option name="admin.display.canManagePageMenu">
- <categoryname>admin.display</categoryname>
+ <option name="admin.content.cms.canManageMenu">
+ <categoryname>admin.content</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
- <option name="admin.template.canManageTemplate">
- <categoryname>admin.display</categoryname>
+ <option name="admin.content.cms.canManageBox">
+ <categoryname>admin.content</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
- <option name="admin.language.canManageLanguage">
- <categoryname>admin.display</categoryname>
+ <option name="admin.content.cms.canManageMedia">
+ <categoryname>admin.content</categoryname>
+ <optiontype>boolean</optiontype>
+ <defaultvalue>0</defaultvalue>
+ <admindefaultvalue>1</admindefaultvalue>
+ <usersonly>1</usersonly>
+ </option>
+ <option name="admin.content.cms.canUseMedia">
+ <categoryname>admin.content</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
- <option name="admin.ad.canManageAd">
- <categoryname>admin.display</categoryname>
+ <option name="admin.content.canBulkRevertContentChanges">
+ <categoryname>admin.content</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
+ <options>module_edit_history</options>
</option>
- <option name="user.attachment.maxSize">
- <categoryname>user.message.attachment</categoryname>
- <optiontype>fileSize</optiontype>
- <defaultvalue>1000000</defaultvalue>
- <minvalue>10000</minvalue>
- <options>module_attachment</options>
+ <option name="admin.content.label.canManageLabel">
+ <categoryname>admin.content</categoryname>
+ <optiontype>boolean</optiontype>
+ <defaultvalue>0</defaultvalue>
+ <admindefaultvalue>1</admindefaultvalue>
+ <usersonly>1</usersonly>
</option>
- <option name="user.attachment.allowedExtensions">
- <categoryname>user.message.attachment</categoryname>
- <optiontype>textarea</optiontype>
- <defaultvalue><![CDATA[gif
-jpg
-jpeg
-png
-bmp
-zip
-txt
-pdf]]></defaultvalue>
- <wildcard><![CDATA[*]]></wildcard>
- <options>module_attachment</options>
+
+ <option name="admin.content.bbcode.canManageBBCode">
+ <categoryname>admin.content</categoryname>
+ <optiontype>boolean</optiontype>
+ <defaultvalue>0</defaultvalue>
+ <admindefaultvalue>1</admindefaultvalue>
+ <usersonly>1</usersonly>
</option>
- <option name="user.attachment.maxCount">
- <categoryname>user.message.attachment</categoryname>
- <optiontype>integer</optiontype>
- <defaultvalue>10</defaultvalue>
- <minvalue>1</minvalue>
- <options>module_attachment</options>
- <maxvalue>100</maxvalue>
+
+ <option name="admin.content.tag.canManageTag">
+ <categoryname>admin.content</categoryname>
+ <optiontype>boolean</optiontype>
+ <defaultvalue>0</defaultvalue>
+ <admindefaultvalue>1</admindefaultvalue>
+ <usersonly>1</usersonly>
</option>
<option name="admin.attachment.canManageAttachment">
<options>module_attachment</options>
<usersonly>1</usersonly>
</option>
+ <!-- /admin.content -->
- <option name="admin.content.bbcode.canManageBBCode">
- <categoryname>admin.content</categoryname>
+ <!-- admin.customization -->
+ <option name="admin.style.canManageStyle">
+ <categoryname>admin.customization</categoryname>
+ <optiontype>boolean</optiontype>
+ <defaultvalue>0</defaultvalue>
+ <admindefaultvalue>1</admindefaultvalue>
+ <usersonly>1</usersonly>
+ </option>
+ <option name="admin.style.canUseDisabledStyle">
+ <categoryname>admin.customization</categoryname>
+ <optiontype>boolean</optiontype>
+ <defaultvalue>0</defaultvalue>
+ <admindefaultvalue>1</admindefaultvalue>
+ <usersonly>1</usersonly>
+ </option>
+
+ <option name="admin.template.canManageTemplate">
+ <categoryname>admin.customization</categoryname>
+ <optiontype>boolean</optiontype>
+ <defaultvalue>0</defaultvalue>
+ <admindefaultvalue>1</admindefaultvalue>
+ <usersonly>1</usersonly>
+ </option>
+
+ <option name="admin.language.canManageLanguage">
+ <categoryname>admin.customization</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
- <option name="admin.content.cms.canManagePage">
- <categoryname>admin.content</categoryname>
+ <option name="admin.ad.canManageAd">
+ <categoryname>admin.customization</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
+ <!-- /admin.customization -->
- <option name="admin.content.cms.canManageMenu">
- <categoryname>admin.content</categoryname>
+ <!-- admin.management -->
+ <option name="admin.management.canManageCronjob">
+ <categoryname>admin.management</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
- <option name="admin.content.cms.canManageBox">
- <categoryname>admin.content</categoryname>
+ <option name="admin.management.canRebuildData">
+ <categoryname>admin.management</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
- <option name="admin.content.cms.canManageMedia">
- <categoryname>admin.content</categoryname>
+ <option name="admin.management.canImportData">
+ <categoryname>admin.management</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
- <option name="admin.content.cms.canUseMedia">
- <categoryname>admin.content</categoryname>
+ <option name="admin.management.canViewLog">
+ <categoryname>admin.management</categoryname>
<optiontype>boolean</optiontype>
<defaultvalue>0</defaultvalue>
<admindefaultvalue>1</admindefaultvalue>
<usersonly>1</usersonly>
</option>
+ <!-- /admin.management -->
+
+ <option name="user.attachment.maxSize">
+ <categoryname>user.message.attachment</categoryname>
+ <optiontype>fileSize</optiontype>
+ <defaultvalue>1000000</defaultvalue>
+ <minvalue>10000</minvalue>
+ <options>module_attachment</options>
+ </option>
+ <option name="user.attachment.allowedExtensions">
+ <categoryname>user.message.attachment</categoryname>
+ <optiontype>textarea</optiontype>
+ <defaultvalue><![CDATA[gif
+jpg
+jpeg
+png
+bmp
+zip
+txt
+pdf]]></defaultvalue>
+ <wildcard><![CDATA[*]]></wildcard>
+ <options>module_attachment</options>
+ </option>
+ <option name="user.attachment.maxCount">
+ <categoryname>user.message.attachment</categoryname>
+ <optiontype>integer</optiontype>
+ <defaultvalue>10</defaultvalue>
+ <minvalue>1</minvalue>
+ <options>module_attachment</options>
+ <maxvalue>100</maxvalue>
+ </option>
<!-- user.message -->
<option name="user.message.canUseSmilies">
</option>
<!-- /user.message.comment -->
- <option name="admin.user.canViewInvisible">
- <categoryname>admin.general</categoryname>
- <optiontype>boolean</optiontype>
- <defaultvalue>0</defaultvalue>
- <admindefaultvalue>1</admindefaultvalue>
- <usersonly>1</usersonly>
- </option>
- <option name="admin.user.canViewIpAddress">
- <categoryname>admin.general</categoryname>
- <optiontype>boolean</optiontype>
- <defaultvalue>0</defaultvalue>
- <admindefaultvalue>1</admindefaultvalue>
- <usersonly>1</usersonly>
- </option>
- <option name="admin.user.canEnableUser">
- <categoryname>admin.user.user</categoryname>
- <optiontype>boolean</optiontype>
- <defaultvalue>0</defaultvalue>
- <admindefaultvalue>1</admindefaultvalue>
- <usersonly>1</usersonly>
- </option>
- <option name="admin.user.canEditActivityPoints">
- <categoryname>admin.user.user</categoryname>
- <optiontype>boolean</optiontype>
- <defaultvalue>0</defaultvalue>
- <admindefaultvalue>1</admindefaultvalue>
- <usersonly>1</usersonly>
- </option>
-
- <option name="admin.user.rank.canManageRank">
- <categoryname>admin.user.user</categoryname>
- <optiontype>boolean</optiontype>
- <defaultvalue>0</defaultvalue>
- <admindefaultvalue>1</admindefaultvalue>
- <usersonly>1</usersonly>
- </option>
-
<!-- user.signature -->
<option name="user.signature.canUseSmilies">
<categoryname>user.signature</categoryname>
</option>
<!-- /user.profileComment -->
- <option name="admin.content.canBulkRevertContentChanges">
- <categoryname>admin.content</categoryname>
- <optiontype>boolean</optiontype>
- <defaultvalue>0</defaultvalue>
- <admindefaultvalue>1</admindefaultvalue>
- <usersonly>1</usersonly>
- <options>module_edit_history</options>
- </option>
-
- <option name="admin.content.label.canManageLabel">
- <categoryname>admin.content</categoryname>
- <optiontype>boolean</optiontype>
- <defaultvalue>0</defaultvalue>
- <admindefaultvalue>1</admindefaultvalue>
- <usersonly>1</usersonly>
- </option>
-
- <option name="admin.content.tag.canManageTag">
- <categoryname>admin.content</categoryname>
- <optiontype>boolean</optiontype>
- <defaultvalue>0</defaultvalue>
- <admindefaultvalue>1</admindefaultvalue>
- <usersonly>1</usersonly>
- </option>
-
- <option name="admin.notice.canManageNotice">
- <categoryname>admin.user.user</categoryname>
- <optiontype>boolean</optiontype>
- <defaultvalue>0</defaultvalue>
- <admindefaultvalue>1</admindefaultvalue>
- <usersonly>1</usersonly>
- </option>
-
- <option name="admin.captcha.canManageCaptchaQuestion">
- <categoryname>admin.system</categoryname>
- <optiontype>boolean</optiontype>
- <defaultvalue>0</defaultvalue>
- <admindefaultvalue>1</admindefaultvalue>
- <usersonly>1</usersonly>
- </option>
-
<!-- todo: find better category -->
<option name="user.tag.canViewTag">
<categoryname>user.message</categoryname>
*/
init: function() {
this._className = 'wcf\\data\\acp\\search\\provider\\ACPSearchProviderAction';
- this._super('#search input[name=q]');
+ this._super('#pageHeaderSearch input[name=q]');
// disable form submitting
- $('#search > form').on('submit', function(event) {
+ $('#pageHeaderSearch > form').on('submit', function(event) {
event.preventDefault();
});
},
}
window.location = this._list.find('li.dropdownNavigationItem > a').attr('href');
+ },
+
+ _success: function(data) {
+ this._super(data);
+
+ this._list.addClass('acpSearchDropdown');
}
});
--- /dev/null
+.layoutBoundary {
+ margin: 0;
+ max-width: none;
+ min-width: 0;
+}
+
+.pageContainer {
+ /* required for sticky page header */
+ padding-top: 50px;
+}
+
+/* page header */
+.pageHeaderContainer {
+ left: 0;
+ position: fixed;
+ right: 0;
+ top: 0;
+
+ .pageHeader > div > div {
+ height: 50px;
+ padding: 10px 10px 10px 0;
+ }
+
+ .pageHeaderLogo {
+ flex: 0 0 120px;
+ margin: 0;
+ order: 1;
+ text-align: center;
+
+ .pageHeaderLogoLarge {
+ display: none;
+ }
+
+ .pageHeaderLogoSmall {
+ display: inline;
+ }
+ }
+
+ .mainMenu {
+ flex: 0 0 auto;
+ order: 2;
+ }
+
+ .pageHeaderSearch {
+ flex: 0 0 auto;
+ order: 3;
+
+ .pageHeaderSearchInput {
+ border-width: 0 !important;
+ height: 50px;
+ width: 300px;
+ }
+ }
+
+ .userPanel {
+ flex: 1 1 auto;
+ order: 4;
+ }
+}
+
+.acpSearchDropdown {
+ border-width: 0;
+ top: 50px !important;
+ width: 300px;
+
+ &::before,
+ &::after {
+ display: none;
+ }
+}
+
+
+.acpPageContentContainer {
+ display: flex;
+ flex: 1 0 auto;
+}
+
+.acpPageMenu .icon, .acpPageSubMenu .icon {
+ color: inherit;
+}
+
+.acpPageMenu {
+ background-color: rgb(52, 73, 94);
+ flex: 0 0 120px;
+ text-align: center;
+ overflow: hidden;
+
+ .acpPageMenuLink {
+ color: rgb(192, 192, 192);
+ display: block;
+ padding: 20px 10px;
+
+ &.active {
+ background-color: rgb(65, 86, 107);
+ color: rgb(255, 255, 255);
+
+ > .icon {
+ transform: scale(1);
+ }
+ }
+
+ > .icon {
+ transform: scale(.8);
+ transition: transform .12s linear;
+ }
+ }
+
+ .acpPageMenuItemLabel {
+ display: block;
+ margin-top: 5px;
+ }
+}
+
+
+.acpPageSubMenu {
+ background-color: rgb(65, 86, 107);
+ flex: 0 0 auto;
+}
+
+.acpPageSubMenuCategoryList{
+ flex: 0 0 300px;
+ overflow: hidden;
+ width: 300px;
+
+ &:not(.active) {
+ display: none;
+ }
+
+ > .acpPageSubMenuCategory {
+ margin-top: 20px;
+ padding-left: 20px;
+
+ > span {
+ color: rgb(169, 169, 169);
+ display: block;
+ padding: 5px 20px;
+ text-transform: uppercase;
+ }
+ }
+
+ .acpPageSubMenuLink,
+ .acpPageSubMenuIcon {
+ color: rgb(255, 255, 255);
+ display: block;
+ overflow: hidden;
+ padding: 5px 20px;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ }
+
+ .acpPageSubMenuLink:hover,
+ .acpPageSubMenuLink:hover ~ .acpPageSubMenuIcon:not(.active),
+ .acpPageSubMenuIcon:hover {
+ background-color: rgb(52, 73, 94);
+ }
+
+ .acpPageSubMenuLinkWrapper {
+ display: flex;
+
+ > .acpPageSubMenuLink {
+ flex: 1 1 auto;
+ }
+
+ > .acpPageSubMenuIcon {
+ flex: 0 0 auto;
+ }
+ }
+
+ .acpPageSubMenuItemList > .active > a,
+ .acpPageSubMenuLink.active,
+ .acpPageSubMenuLink.active ~ .acpPageSubMenuIcon,
+ .acpPageSubMenuIcon.active {
+ background-color: rgb(255, 255, 255) !important;
+ color: rgb(44, 62, 80) !important;
+ }
+}
+
+.main {
+ flex: 1 1 auto;
+ padding: 40px 0 40px 20px;
+}
+
+.pageFooter {
+ padding: 20px 0;
+ text-align: center;
+}
+++ /dev/null
-.wcfAcpMenu {
- &.doubleColumned {
- -webkit-columns: 2;
- -moz-columns: 2;
- columns: 2;
-
- -webkit-column-gap: 1px;
- -moz-column-gap: 1px;
- column-gap: 1px;
-
- -webkit-column-rule: 1px solid $wcfContentBorderInner;
- -moz-column-rule: 1px solid $wcfContentBorderInner;
- column-rule: 1px solid $wcfContentBorderInner;
-
- > li {
- -webkit-column-break-inside: avoid;
- page-break-inside: avoid;
- break-inside: avoid;
- }
- }
-
- > li {
- min-width: 250px;
- }
-}
-
-.boxMenuDepth1 > li > span {
- color: $wcfTabularBoxHeadline;
- cursor: default;
-
- @extend .wcfFontBold;
-}
-
-.menuItemWrapper {
- display: flex;
-
- &:hover > a,
- > .active {
- background-color: $wcfDropdownBackgroundActive;
- color: $wcfDropdownLinkActive;
-
- > .icon {
- color: $wcfDropdownLinkActive;
- }
- }
-
- > a {
- color: $wcfDropdownLink;
- display: block;
- flex: 0 0 auto;
- padding: 5px 10px;
- white-space: nowrap;
-
- &:first-child {
- flex: 1 1 auto;
- padding: 5px 20px 5px 40px;
- }
- }
-}
+ </div>
</div>
- </div>
- </section>
+ </section>
+ </div>
{include file='pageFooter'}
</div>
</script>
<script>
$(function() {
- {* work-around for unknown core-object during WCFSetup *}
- {if PACKAGE_ID}
- {assign var=activeMenuItems value=$__wcf->getACPMenu()->getActiveMenuItems()|array_reverse}
- var $activeMenuItems = [{implode from=$activeMenuItems item=_menuItem}'{$_menuItem}'{/implode}];
- //new WCF.ACP.Menu($activeMenuItems);
- {/if}
-
if (jQuery.browser.touch) $('html').addClass('touch');
new WCF.Effect.SmoothScroll();
WCF.System.PageNavigation.init('.pagination');
{if $__wcf->user->userID}
- //new WCF.ACP.Search();
+ new WCF.ACP.Search();
{/if}
{event name='javascriptInit'}
{event name='afterPageHeader'}
- {*include file='pageNavbarTop'*}
-
- <section id="main" class="main" role="main">
-
- {*
- <header id="pageHeader" class="layoutBoundary">
- <div>
- {if $__wcf->user->userID}
- <nav id="topMenu" class="userPanel">
- <div class="layoutBoundary">
- <ul class="userPanelItems">
- <li id="userMenu" class="dropdown">
- <a class="dropdownToggle framed" data-toggle="userMenu">{if PACKAGE_ID}{@$__wcf->getUserProfileHandler()->getAvatar()->getImageTag(24)} {/if}{lang}wcf.user.userNote{/lang}</a>
- <ul class="dropdownMenu">
- {if PACKAGE_ID > 1}
- <li><a href="{link controller='User' object=$__wcf->user forceFrontend=true}{/link}" class="box32">
- <div class="framed">{@$__wcf->getUserProfileHandler()->getAvatar()->getImageTag(32)}</div>
-
- <div class="containerHeadline">
- <h3>{$__wcf->user->username}</h3>
- <small>{lang}wcf.user.myProfile{/lang}</small>
- </div>
- </a></li>
- {if $__wcf->getUserProfileHandler()->canEditOwnProfile()}<li><a href="{link controller='User' object=$__wcf->user forceFrontend=true}editOnInit=true#about{/link}">{lang}wcf.user.editProfile{/lang}</a></li>{/if}
- <li><a href="{link controller='Settings' forceFrontend=true}{/link}">{lang}wcf.user.menu.settings{/lang}</a></li>
-
- {event name='userMenuItems'}
-
- <li class="dropdownDivider"></li>
- {/if}
- <li><a href="{link controller='Logout'}t={@SECURITY_TOKEN}{/link}" onclick="WCF.System.Confirmation.show('{lang}wcf.user.logout.sure{/lang}', $.proxy(function (action) { if (action == 'confirm') window.location.href = $(this).attr('href'); }, this)); return false;">{lang}wcf.user.logout{/lang}</a></li>
- </ul>
- </li>
-
- {if PACKAGE_ID > 1}
- <li id="jumpToPage" class="dropdown">
- <a href="{link forceFrontend=true}{/link}" class="dropdownToggle" data-toggle="jumpToPage"><span class="icon icon16 icon-home"></span> <span>{lang}wcf.global.jumpToPage{/lang}</span></a>
- <ul class="dropdownMenu">
- {foreach from=$__wcf->getPageMenu()->getMenuItems('header') item=_menuItem}
- <li><a href="{$_menuItem->getProcessor()->getLink()}">{lang}{$_menuItem->menuItem}{/lang}</a></li>
- {/foreach}
- </ul>
- </li>
-
- {if $__wcf->session->getPermission('admin.system.package.canUpdatePackage') && $__wcf->getAvailableUpdates()}
- <li>
- <a href="{link controller='PackageUpdate'}{/link}"><span class="icon icon16 icon-refresh"></span> <span>{lang}wcf.acp.package.updates{/lang}</span> <span class="badge badgeInverse">{#$__wcf->getAvailableUpdates()}</span></a>
- </li>
- {/if}
- {/if}
-
- <li id="woltlab" class="dropdown">
- <a class="dropdownToggle" data-toggle="woltlab"><span class="icon icon16 icon-info-sign"></span> <span>WoltLab®</span></a>
-
- <ul class="dropdownMenu">
- <li><a class="externalURL" href="{@$__wcf->getPath()}acp/dereferrer.php?url={"https://www.woltlab.com"|rawurlencode}"{if EXTERNAL_LINK_TARGET_BLANK} target="_blank"{/if}>{lang}wcf.acp.index.woltlab.website{/lang}</a></li>
- <li><a class="externalURL" href="{@$__wcf->getPath()}acp/dereferrer.php?url={"https://community.woltlab.com"|rawurlencode}"{if EXTERNAL_LINK_TARGET_BLANK} target="_blank"{/if}>{lang}wcf.acp.index.woltlab.forums{/lang}</a></li>
- <li><a class="externalURL" href="{@$__wcf->getPath()}acp/dereferrer.php?url={"https://www.woltlab.com/ticket-add/"|rawurlencode}"{if EXTERNAL_LINK_TARGET_BLANK} target="_blank"{/if}>{lang}wcf.acp.index.woltlab.tickets{/lang}</a></li>
- <li><a class="externalURL" href="{@$__wcf->getPath()}acp/dereferrer.php?url={"https://pluginstore.woltlab.com"|rawurlencode}"{if EXTERNAL_LINK_TARGET_BLANK} target="_blank"{/if}>{lang}wcf.acp.index.woltlab.pluginStore{/lang}</a></li>
- </ul>
- </li>
-
- {event name='topMenu'}
- </ul>
-
- {if $__wcf->getSession()->getPermission('admin.general.canUseAcp')}
- <aside id="search" class="searchBar">
- <form>
- <input type="search" name="q" placeholder="{lang}wcf.global.search.enterSearchTerm{/lang}" value="" />
- </form>
- </aside>
- {/if}
- </div>
- </nav>
- {/if}
-
- <div id="logo" class="logo">
- <a href="{link}{/link}">
- <h1>{lang}wcf.global.acp{/lang}</h1>
- {if PACKAGE_ID > 1}
- {event name='headerLogo'}
- {else}
- <img src="{@$__wcf->getPath()}acp/images/wcfLogo.png" alt="" style="height: 80px; width: 502px;" />
- {/if}
- </a>
- </div>
+ <div id="acpPageContentContainer" class="acpPageContentContainer">
+ {include file='pageMenu'}
- *}{* work-around for unknown core-object during WCFSetup *}{*
- {if PACKAGE_ID && $__wcf->user->userID}
- {hascontent}
- <nav id="mainMenu" class="mainMenu">
- <ul>{content}{foreach from=$__wcf->getACPMenu()->getMenuItems('') item=_menuItem}<li data-menu-item="{$_menuItem->menuItem}"><a>{lang}{@$_menuItem->menuItem}{/lang}</a></li>{/foreach}{/content}</ul>
- </nav>
- {/hascontent}
- {/if}
-
- <nav class="navigation navigationHeader">
- <ul class="navigationIcons">
- <li id="toBottomLink" class="toBottomLink"><a href="{@$__wcf->getAnchor('bottom')}" title="{lang}wcf.global.scrollDown{/lang}" class="jsTooltip"><span class="icon icon16 icon-arrow-down"></span> <span class="invisible">{lang}wcf.global.scrollDown{/lang}</span></a></li>
- {event name='navigationIcons'}
- </ul>
- </nav>
- </div>
- </header>
- *}
-
- <div class="layoutBoundary">
- <div id="content" class="content">
-
+ <section id="main" class="main" role="main">
+ <div class="layoutBoundary">
+ <div id="content" class="content">
+
\ No newline at end of file
<dl>
<dt>{lang}wcf.acp.index.system.php{/lang}</dt>
<dd>
- {if $__wcf->session->getPermission('admin.system.package.canInstallPackage') && $__wcf->session->getPermission('admin.system.package.canUpdatePackage')}
+ {if $__wcf->session->getPermission('admin.configuration.package.canInstallPackage') && $__wcf->session->getPermission('admin.configuration.package.canUpdatePackage')}
<a href="{link controller='PHPInfo'}{/link}">{PHP_VERSION}</a>
{else}
{PHP_VERSION}
'wcf.acp.pluginStore.purchasedItems.noResults': '{lang}wcf.acp.pluginStore.purchasedItems.noResults{/lang}'
});
- {if $__wcf->session->getPermission('admin.system.package.canUninstallPackage')}
+ {if $__wcf->session->getPermission('admin.configuration.package.canUninstallPackage')}
new WCF.ACP.Package.Uninstallation($('.jsPackageRow .jsUninstallButton'), {if PACKAGE_ID > 1}'{link controller='PackageList' forceWCF=true encode=false}packageID={literal}{packageID}{/literal}{/link}'{else}null{/if});
{if $packageID}
new WCF.PeriodicalExecuter(function(pe) {
{/if}
{/if}
- {if $__wcf->session->getPermission('admin.system.package.canUpdatePackage')}
+ {if $__wcf->session->getPermission('admin.configuration.package.canUpdatePackage')}
new WCF.ACP.Package.Update.Search();
{/if}
- {if $__wcf->session->getPermission('admin.system.package.canInstallPackage') && $__wcf->session->getPermission('admin.system.package.canUpdatePackage')}
+ {if $__wcf->session->getPermission('admin.configuration.package.canInstallPackage') && $__wcf->session->getPermission('admin.configuration.package.canUpdatePackage')}
new WCF.ACP.PluginStore.PurchasedItems.Search();
{/if}
});
<nav>
<ul>
{content}
- {if $__wcf->session->getPermission('admin.system.package.canInstallPackage')}
+ {if $__wcf->session->getPermission('admin.configuration.package.canInstallPackage')}
<li><a href="{link controller='PackageStartInstall'}action=install{/link}" class="button"><span class="icon icon16 fa-plus"></span> <span>{lang}wcf.acp.package.startInstall{/lang}</span></a></li>
{/if}
<nav>
<ul>
{content}
- {if $__wcf->session->getPermission('admin.system.package.canInstallPackage')}
+ {if $__wcf->session->getPermission('admin.configuration.package.canInstallPackage')}
<li><a href="{link controller='PackageStartInstall'}action=install{/link}" class="button"><span class="icon icon16 fa-plus"></span> <span>{lang}wcf.acp.package.startInstall{/lang}</span></a></li>
{/if}
{/if}
</div>
</div>
-
- <script data-relocate="true">
- var header = elById('pageHeader');
- var pageHeaderContainer = elBySel('.pageHeaderContainer');
- header.style.setProperty('min-height', header.clientHeight + 'px');
-
- function stickyHeader() {
- header.classList[(document.body.scrollTop > 50) ? 'add' : 'remove']('sticky');
- pageHeaderContainer.classList[(document.body.scrollTop > 50) ? 'add' : 'remove']('stickyPageHeader');
- }
-
- stickyHeader();
- window.addEventListener('scroll', stickyHeader);
- </script>
</header>
</div>
\ No newline at end of file
<div id="pageHeaderLogo" class="pageHeaderLogo">
<a href="{link}{/link}">
- {* @TODO *}
- <img src="{@$__wcf->getPath()}images/default-logo.png" alt="" class="pageHeaderLogoLarge">
- <img src="{@$__wcf->getPath()}images/default-logo-small.png" alt="" class="pageHeaderLogoSmall">
-
- {event name='headerLogo'}
+ <img src="{@$__wcf->getPath()}acp/images/wcfLogo.png" alt="" class="pageHeaderLogoLarge">
+ <img src="{@$__wcf->getPath()}acp/images/wcfLogo-small.png" alt="" class="pageHeaderLogoSmall">
</a>
</div>
\ No newline at end of file
-{if PACKAGE_ID}{assign var=_activeMenuItems value=$__wcf->getACPMenu()->getActiveMenuItems()}{/if}
-<nav id="mainMenu" class="mainMenu">
- {if PACKAGE_ID}
- <ol class="boxMenu">
- {foreach from=$__wcf->getACPMenu()->getMenuItems('') item=_sectionMenuItem}
- <li class="boxMenuHasChildren{if $_sectionMenuItem->menuItem|in_array:$_activeMenuItems} active{/if}" data-menu-item="{$_sectionMenuItem->menuItem}">
- <span>{@$_sectionMenuItem}</span>
-
- {assign var=_menuItemCategories value=$__wcf->getACPMenu()->getMenuItems($_sectionMenuItem->menuItem)}
- <ol class="wcfAcpMenu boxMenuDepth1 subMenu{if $_menuItemCategories|count > 3} doubleColumned{/if}">
- {foreach from=$_menuItemCategories item=_menuItemCategory}
- <li>
- <span>{@$_menuItemCategory}</span>
-
- <ol class="boxMenuDepth2 menuItemList">
- {foreach from=$__wcf->getACPMenu()->getMenuItems($_menuItemCategory->menuItem) item=_menuItem}
- {assign var=_subMenuItems value=$__wcf->getACPMenu()->getMenuItems($_menuItem->menuItem)}
-
- {if $_subMenuItems|empty}
- <li{if $_menuItem->menuItem|in_array:$_activeMenuItems} class="active"{/if}><a href="{$_menuItem->getLink()}">{@$_menuItem}</a></li>
- {else}
- {if $_menuItemCategory->menuItem === 'wcf.acp.menu.link.option'}
- {* handle special option categories *}
- {foreach from=$_subMenuItems item=_subMenuItem}
- <li{if $_subMenuItem->menuItem|in_array:$_activeMenuItems} class="active"{/if}><a href="{$_subMenuItem->getLink()}">{@$_subMenuItem}</a></li>
- {/foreach}
- {else}
- <li>
- <div class="menuItemWrapper">
- <a href="{$_menuItem->getLink()}"{if $_menuItem->menuItem|in_array:$_activeMenuItems && $_activeMenuItems[0] === $_menuItem->menuItem} class="active"{/if}>{@$_menuItem}</a>
-
- {foreach from=$_subMenuItems item=_subMenuItem}
- <a href="{$_subMenuItem->getLink()}" class="jsTooltip{if $_subMenuItem->menuItem|in_array:$_activeMenuItems} active{/if}" title="{@$_subMenuItem}"><span class="icon icon16 {$_subMenuItem->icon}"></span></a>
- {/foreach}
- </div>
- </li>
- {/if}
- {/if}
- {/foreach}
- </ol>
- </li>
- {/foreach}
- </ol>
- </li>
- {/foreach}
- </ol>
- {/if}
-</nav>
+<div id="mainMenu" class="mainMenu">
+ <!-- placeholder for mobile UI -->
+</div>
<div id="pageHeaderSearch" class="pageHeaderSearch" data-disable-auto-focus="true">
<form method="post" action="{@$__searchFormLink}">
- <div class="pageHeaderSearchInputContainer dropdown">
- <input type="search" name="q" id="pageHeaderSearchInput" class="pageHeaderSearchInput dropdownToggle" placeholder="{@$__searchInputPlaceholder}" autocomplete="off" required="required" value="{if $query|isset}{$query}{/if}" data-toggle="search" />
-
- <ul class="dropdownMenu">
- {hascontent}
- <li class="dropdownText">
- {content}
- {@$__searchDropdownOptions}
- {/content}
- </li>
- <li class="dropdownDivider"></li>
- {/hascontent}
- <li><a href="{@$__searchFormLink}">{lang}wcf.search.extended{/lang}</a></li>
- </ul>
+ <div class="pageHeaderSearchInputContainer">
+ <input type="search" name="q" id="pageHeaderSearchInput" class="pageHeaderSearchInput" placeholder="{@$__searchInputPlaceholder}" autocomplete="off" required="required" value="{if $query|isset}{$query}{/if}" data-toggle="search" />
<button class="pageHeaderSearchInputButton" type="submit">
<span class="icon icon16 pointer fa-search" title="{lang}wcf.global.search{/lang}"></span>
<nav id="topMenu" class="userPanel">
<ul class="userPanelItems">
{if $__wcf->user->userID}
- <!-- user menu -->
- <li id="userMenu" class="dropdown">
- <a class="dropdownToggle" data-toggle="userMenu">{if PACKAGE_ID}{@$__wcf->getUserProfileHandler()->getAvatar()->getImageTag(32)} {/if}{lang}wcf.user.userNote{/lang}</a>
- <ul class="dropdownMenu">
- {if PACKAGE_ID > 1}
+ {if PACKAGE_ID}
+ <li id="userMenu" class="dropdown">
+ <a class="dropdownToggle" data-toggle="userMenu">{@$__wcf->getUserProfileHandler()->getAvatar()->getImageTag(32)}</a>
+ <ul class="dropdownMenu">
+ {* TODO: this was copied straight from the frontend *}
<li><a href="{link controller='User' object=$__wcf->user forceFrontend=true}{/link}" class="box32">
<div>{@$__wcf->getUserProfileHandler()->getAvatar()->getImageTag(32)}</div>
{event name='userMenuItems'}
<li class="dropdownDivider"></li>
- {/if}
- <li><a href="{link controller='Logout'}t={@SECURITY_TOKEN}{/link}" onclick="WCF.System.Confirmation.show('{lang}wcf.user.logout.sure{/lang}', $.proxy(function (action) { if (action == 'confirm') window.location.href = $(this).attr('href'); }, this)); return false;">{lang}wcf.user.logout{/lang}</a></li>
- </ul>
- </li>
+ <li><a href="{link controller='Logout'}t={@SECURITY_TOKEN}{/link}" onclick="WCF.System.Confirmation.show('{lang}wcf.user.logout.sure{/lang}', $.proxy(function (action) { if (action == 'confirm') window.location.href = $(this).attr('href'); }, this)); return false;">{lang}wcf.user.logout{/lang}</a></li>
+ </ul>
+ </li>
- {if PACKAGE_ID}
<li id="jumpToPage" class="dropdown">
<a href="{link forceFrontend=true}{/link}" class="dropdownToggle" data-toggle="jumpToPage"><span class="icon icon32 fa-home"></span> <span>{lang}wcf.global.jumpToPage{/lang}</span></a>
<ul class="dropdownMenu">
</ul>
</li>
- {if $__wcf->session->getPermission('admin.system.package.canUpdatePackage') && $__wcf->getAvailableUpdates()}
+ {if $__wcf->session->getPermission('admin.configuration.package.canUpdatePackage') && $__wcf->getAvailableUpdates()}
<li>
<a href="{link controller='PackageUpdate'}{/link}"><span class="icon icon32 fa-refresh"></span> <span>{lang}wcf.acp.package.updates{/lang}</span> <span class="badge badgeInverse">{#$__wcf->getAvailableUpdates()}</span></a>
</li>
--- /dev/null
+{if PACKAGE_ID && $__wcf->user->userID}
+ {assign var=_activeMenuItems value=$__wcf->getACPMenu()->getActiveMenuItems()}
+
+ <nav id="acpPageMenu" class="acpPageMenu">
+ <ol class="acpPageMenuList">
+ {foreach from=$__wcf->getACPMenu()->getMenuItems('') item=_sectionMenuItem}
+ <li>
+ <a href="#" class="acpPageMenuLink{if $_sectionMenuItem->menuItem|in_array:$_activeMenuItems} active{/if}" data-menu-item="{$_sectionMenuItem->menuItem}">
+ <span class="icon icon48 {$_sectionMenuItem->icon}"></span>
+ <span class="acpPageMenuItemLabel">{@$_sectionMenuItem}</span>
+ </a>
+ </li>
+ {/foreach}
+ </ol>
+ </nav>
+
+ <nav id="acpPageSubMenu" class="acpPageSubMenu">
+ {foreach from=$__wcf->getACPMenu()->getMenuItems('') item=_sectionMenuItem}
+ <ol class="acpPageSubMenuCategoryList{if $_sectionMenuItem->menuItem|in_array:$_activeMenuItems} active{/if}" data-menu-item="{$_sectionMenuItem->menuItem}">
+ {foreach from=$__wcf->getACPMenu()->getMenuItems($_sectionMenuItem->menuItem) item=_menuItemCategory}
+ <li class="acpPageSubMenuCategory">
+ <span>{@$_menuItemCategory}</span>
+
+ <ol class="acpPageSubMenuItemList">
+ {foreach from=$__wcf->getACPMenu()->getMenuItems($_menuItemCategory->menuItem) item=_menuItem}
+ {assign var=_subMenuItems value=$__wcf->getACPMenu()->getMenuItems($_menuItem->menuItem)}
+
+ {if $_subMenuItems|empty}
+ <li{if $_menuItem->menuItem|in_array:$_activeMenuItems} class="active"{/if}><a href="{$_menuItem->getLink()}" class="acpPageSubMenuLink">{@$_menuItem}</a></li>
+ {else}
+ {if $_menuItem->menuItem === 'wcf.acp.menu.link.option.category'}
+ {* handle special option categories *}
+ {foreach from=$_subMenuItems item=_subMenuItem}
+ <li{if $_subMenuItem->menuItem|in_array:$_activeMenuItems} class="active"{/if}><a href="{$_subMenuItem->getLink()}" class="acpPageSubMenuLink">{@$_subMenuItem}</a></li>
+ {/foreach}
+ {else}
+ <li class="acpPageSubMenuLinkWrapper">
+ <a href="{$_menuItem->getLink()}" class="acpPageSubMenuLink{if $_menuItem->menuItem|in_array:$_activeMenuItems && $_activeMenuItems[0] === $_menuItem->menuItem} active{/if}">{@$_menuItem}</a>
+
+ {foreach from=$_subMenuItems item=_subMenuItem}
+ <a href="{$_subMenuItem->getLink()}" class="acpPageSubMenuIcon jsTooltip{if $_subMenuItem->menuItem|in_array:$_activeMenuItems} active{/if}" title="{@$_subMenuItem}"><span class="icon icon16 {$_subMenuItem->icon}"></span></a>
+ {/foreach}
+ </li>
+ {/if}
+ {/if}
+ {/foreach}
+ </ol>
+ </li>
+ {/foreach}
+ </ol>
+ {/foreach}
+ </nav>
+{/if}
* Bootstraps WCF's JavaScript with additions for the ACP usage.
*
* @author Alexander Ebert
- * @copyright 2001-2015 WoltLab GmbH
+ * @copyright 2001-2016 WoltLab GmbH
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @module WoltLab/WCF/Acp/Bootstrap
*/
-define(['WoltLab/WCF/Bootstrap'], function(Bootstrap) {
+define(['WoltLab/WCF/Bootstrap', './Ui/Page/Menu'], function(Bootstrap, UiPageMenu) {
"use strict";
/**
- * ACP Boostrapper.
- *
* @exports WoltLab/WCF/Acp/Bootstrap
*/
- var AcpBootstrap = {
+ return {
/**
* Bootstraps general modules and frontend exclusive ones.
*
- * @param {object<string, *>} options bootstrap options
+ * @param {Object} options bootstrap options
*/
setup: function(options) {
Bootstrap.setup();
+ UiPageMenu.init();
}
};
-
- return AcpBootstrap;
});
--- /dev/null
+/**
+ * Provides the ACP menu navigation.
+ *
+ * @author Alexander Ebert
+ * @copyright 2001-2016 WoltLab GmbH
+ * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
+ * @module WoltLab/WCF/Acp/Ui/Page/Menu
+ */
+define(['Dictionary'], function(Dictionary) {
+ "use strict";
+
+ var _activeMenuItem = '';
+ var _menuItems = new Dictionary();
+ var _menuItemContainers = new Dictionary();
+
+ /**
+ * @exports WoltLab/WCF/Acp/Ui/Page/Menu
+ */
+ return {
+ /**
+ * Initializes the ACP menu navigation.
+ */
+ init: function() {
+ elBySelAll('.acpPageMenuLink', null, (function(link) {
+ var menuItem = elData(link, 'menu-item');
+ if (link.classList.contains('active')) {
+ _activeMenuItem = menuItem;
+ }
+
+ link.addEventListener(WCF_CLICK_EVENT, this._toggle.bind(this));
+
+ _menuItems.set(menuItem, link);
+ }).bind(this));
+
+ elBySelAll('.acpPageSubMenuCategoryList', null, function(container) {
+ _menuItemContainers.set(elData(container, 'menu-item'), container);
+ });
+ },
+
+ /**
+ * Toggles a menu item.
+ *
+ * @param {Event} event event object
+ * @protected
+ */
+ _toggle: function(event) {
+ event.preventDefault();
+ event.stopPropagation();
+
+ var link = event.currentTarget;
+ var menuItem = elData(link, 'menu-item');
+
+ // remove active marking from currently active menu
+ if (_activeMenuItem) {
+ _menuItems.get(_activeMenuItem).classList.remove('active');
+ _menuItemContainers.get(_activeMenuItem).classList.remove('active');
+ }
+
+ if (_activeMenuItem === menuItem) {
+ // current item was active before
+ _activeMenuItem = '';
+ }
+ else {
+ link.classList.add('active');
+ _menuItemContainers.get(menuItem).classList.add('active');
+
+ _activeMenuItem = menuItem;
+ }
+ }
+ };
+});
/**
* @see \wcf\action\AbstractAction::$neededPermissions
*/
- public $neededPermissions = array('admin.system.canViewLog');
+ public $neededPermissions = array('admin.management.canViewLog');
/**
* @see \wcf\action\IAction::execute()
/**
* @see \wcf\page\AbstractPage::$neededPermissions
*/
- public $neededPermissions = array('admin.system.canManageApplication');
+ public $neededPermissions = array('admin.configuration.canManageApplication');
/**
* application package id
/**
* @see \wcf\page\AbstractPage::$neededPermissions
*/
- public $neededPermissions = array('admin.system.canManageCronjob');
+ public $neededPermissions = array('admin.management.canManageCronjob');
/**
* cronjob class name
/**
* @see \wcf\page\AbstractPage::$neededPermissions
*/
- public $neededPermissions = array('admin.system.canImportData');
+ public $neededPermissions = array('admin.management.canImportData');
/**
* list of available exporters
ACPMenu::getInstance()->setActiveMenuItem('wcf.acp.option.category.'.$this->category->categoryName);
// check permission
- WCF::getSession()->checkPermissions(array('admin.system.canEditOption'));
+ WCF::getSession()->checkPermissions(array('admin.configuration.canEditOption'));
if ($this->category->categoryName == 'module') {
// check master password
* @see \wcf\page\IPage::show()
*/
public function show() {
- if (!WCF::getSession()->getPermission('admin.system.package.canInstallPackage') && !WCF::getSession()->getPermission('admin.system.package.canUpdatePackage')) {
+ if (!WCF::getSession()->getPermission('admin.configuration.package.canInstallPackage') && !WCF::getSession()->getPermission('admin.configuration.package.canUpdatePackage')) {
throw new PermissionDeniedException();
}
/**
* @see \wcf\page\AbstractPage::$neededPermissions
*/
- public $neededPermissions = array('admin.system.package.canEditServer');
+ public $neededPermissions = array('admin.configuration.package.canEditServer');
/**
* server url
WCF::getSession()->disableUpdate();
WCF::getSession()->changeUser($this->user, true);
- if (!WCF::getSession()->getPermission('admin.system.canManageApplication')) {
+ if (!WCF::getSession()->getPermission('admin.configuration.canManageApplication')) {
throw new UserInputException('username', 'notAuthorized');
}
}
/**
* @see \wcf\page\AbstractPage::$neededPermissions
*/
- public $neededPermissions = array('admin.system.canViewLog');
+ public $neededPermissions = array('admin.management.canViewLog');
/**
* @see \wcf\page\SortablePage::$defaultSortField
/**
* @see \wcf\page\AbstractPage::$neededPermissions
*/
- public $neededPermissions = array('admin.system.canViewLog');
+ public $neededPermissions = array('admin.management.canViewLog');
/**
* @see \wcf\page\SortablePage::$defaultSortField
/**
* @see \wcf\page\AbstractPage::$neededPermissions
*/
- public $neededPermissions = array('admin.system.canManageApplication');
+ public $neededPermissions = array('admin.configuration.canManageApplication');
/**
* @see \wcf\page\IPage::readData()
/**
* @see \wcf\page\AbstractPage::$neededPermissions
*/
- public $neededPermissions = array('admin.system.canManageApplication');
+ public $neededPermissions = array('admin.configuration.canManageApplication');
/**
* indicates if cache was cleared
/**
* @see \wcf\page\AbstractPage::$neededPermissions
*/
- public $neededPermissions = array('admin.system.canManageCronjob');
+ public $neededPermissions = array('admin.management.canManageCronjob');
/**
* @see \wcf\page\SortablePage::$defaultSortField
/**
* @see \wcf\page\AbstractPage::$neededPermissions
*/
- public $neededPermissions = array('admin.system.canManageCronjob');
+ public $neededPermissions = array('admin.management.canManageCronjob');
/**
* @see \wcf\page\MultipleLinkPage::$itemsPerPage
/**
* @see \wcf\page\AbstractPage::$neededPermissions
*/
- public $neededPermissions = array('admin.system.canViewLog');
+ public $neededPermissions = array('admin.management.canViewLog');
/**
* @see \wcf\page\MultipleLinkPage::$itemsPerPage
/**
* @see \wcf\page\AbstractPage::$neededPermissions
*/
- public $neededPermissions = array('admin.system.package.canInstallPackage', 'admin.system.package.canUpdatePackage');
+ public $neededPermissions = array('admin.configuration.package.canInstallPackage', 'admin.configuration.package.canUpdatePackage');
/**
* @see \wcf\page\IPage::assignVariables()
}
if ($this->queue->action == 'install') {
- WCF::getSession()->checkPermissions(array('admin.system.package.canInstallPackage'));
+ WCF::getSession()->checkPermissions(array('admin.configuration.package.canInstallPackage'));
}
else {
- WCF::getSession()->checkPermissions(array('admin.system.package.canUpdatePackage'));
+ WCF::getSession()->checkPermissions(array('admin.configuration.package.canUpdatePackage'));
}
$this->installingImportedStyle = WCF::getSession()->getVar('stylePackageImportLocation') !== null;
/**
* @see \wcf\page\AbstractPage::$neededPermissions
*/
- public $neededPermissions = array('admin.system.package.canUpdatePackage', 'admin.system.package.canUninstallPackage');
+ public $neededPermissions = array('admin.configuration.package.canUpdatePackage', 'admin.configuration.package.canUninstallPackage');
/**
* @see \wcf\page\MultipleLinkPage::$itemsPerPage
/**
* @see \wcf\page\AbstractPage::$neededPermissions
*/
- public $neededPermissions = array('admin.system.package.canUpdatePackage', 'admin.system.package.canUninstallPackage');
+ public $neededPermissions = array('admin.configuration.package.canUpdatePackage', 'admin.configuration.package.canUninstallPackage');
/**
* id of the package
/**
* @see \wcf\page\AbstractPage::$neededPermissions
*/
- public $neededPermissions = array('admin.system.package.canUpdatePackage');
+ public $neededPermissions = array('admin.configuration.package.canUpdatePackage');
/**
* @see \wcf\page\IPage::readData()
/**
* @see \wcf\page\AbstractPage::$neededPermissions
*/
- public $neededPermissions = array('admin.system.package.canEditServer');
+ public $neededPermissions = array('admin.configuration.package.canEditServer');
/**
* @see \wcf\page\SortablePage::$defaultSortField
/**
* @see \wcf\page\AbstractPage::$neededPermissions
*/
- public $neededPermissions = array('admin.system.package.canUpdatePackage', 'admin.system.package.canUninstallPackage');
+ public $neededPermissions = array('admin.configuration.package.canUpdatePackage', 'admin.configuration.package.canUninstallPackage');
/**
* list of purchased products grouped by WCF major release
/**
* @see \wcf\page\AbstractPage::$neededPermissions
*/
- public $neededPermissions = array('admin.system.canRebuildData');
+ public $neededPermissions = array('admin.management.canRebuildData');
/**
* object types
/**
* @see \wcf\page\AbstractPage::$activeMenuItem
*/
- public $activeMenuItem = 'wcf.acp.menu.link.log.stat';
+ public $activeMenuItem = 'wcf.acp.menu.link.stat.list';
/**
* @see \wcf\page\AbstractPage::$neededPermissions
*/
- public $neededPermissions = array('admin.system.canViewLog');
+ public $neededPermissions = array('admin.management.canViewLog');
/**
* start date (yyyy-mm-dd)
/**
* @see \wcf\page\AbstractPage::$neededPermissions
*/
- public $neededPermissions = array('admin.system.canViewLog');
+ public $neededPermissions = array('admin.management.canViewLog');
/**
* @see \wcf\page\AbstractPage::$neededModules
/**
* @see \wcf\data\AbstractDatabaseObjectAction::$permissionsCreate
*/
- protected $permissionsCreate = array('admin.system.canManageCronjob');
+ protected $permissionsCreate = array('admin.management.canManageCronjob');
/**
* @see \wcf\data\AbstractDatabaseObjectAction::$permissionsDelete
*/
- protected $permissionsDelete = array('admin.system.canManageCronjob');
+ protected $permissionsDelete = array('admin.management.canManageCronjob');
/**
* @see \wcf\data\AbstractDatabaseObjectAction::$permissionsUpdate
*/
- protected $permissionsUpdate = array('admin.system.canManageCronjob');
+ protected $permissionsUpdate = array('admin.management.canManageCronjob');
/**
* @see \wcf\data\AbstractDatabaseObjectAction::$allowGuestAccess
* Validates the clear all action.
*/
public function validateClearAll() {
- WCF::getSession()->checkPermissions(array('admin.system.canManageCronjob'));
+ WCF::getSession()->checkPermissions(array('admin.management.canManageCronjob'));
}
/**
/**
* @see \wcf\data\AbstractDatabaseObjectAction::$permissionsCreate
*/
- protected $permissionsCreate = array('admin.system.canEditOption');
+ protected $permissionsCreate = array('admin.configuration.canEditOption');
/**
* @see \wcf\data\AbstractDatabaseObjectAction::$permissionsDelete
*/
- protected $permissionsDelete = array('admin.system.canEditOption');
+ protected $permissionsDelete = array('admin.configuration.canEditOption');
/**
* @see \wcf\data\AbstractDatabaseObjectAction::$permissionsUpdate
*/
- protected $permissionsUpdate = array('admin.system.canEditOption');
+ protected $permissionsUpdate = array('admin.configuration.canEditOption');
/**
* @see \wcf\data\AbstractDatabaseObjectAction::$requireACP
/**
* @see \wcf\data\AbstractDatabaseObjectAction::$permissionsCreate
*/
- protected $permissionsCreate = array('admin.system.canEditOption');
+ protected $permissionsCreate = array('admin.configuration.canEditOption');
/**
* @see \wcf\data\AbstractDatabaseObjectAction::$permissionsDelete
*/
- protected $permissionsDelete = array('admin.system.canEditOption');
+ protected $permissionsDelete = array('admin.configuration.canEditOption');
/**
* @see \wcf\data\AbstractDatabaseObjectAction::$permissionsUpdate
*/
- protected $permissionsUpdate = array('admin.system.canEditOption');
+ protected $permissionsUpdate = array('admin.configuration.canEditOption');
/**
* @see \wcf\data\AbstractDatabaseObjectAction::$requireACP
* @return boolean
*/
public function canUninstall() {
- if (!WCF::getSession()->getPermission('admin.system.package.canUninstallPackage')) {
+ if (!WCF::getSession()->getPermission('admin.configuration.package.canUninstallPackage')) {
return false;
}
/**
* @see \wcf\data\AbstractDatabaseObjectAction::$permissionsCreate
*/
- protected $permissionsCreate = array('admin.system.package.canInstallPackage');
+ protected $permissionsCreate = array('admin.configuration.package.canInstallPackage');
/**
* @see \wcf\data\AbstractDatabaseObjectAction::$permissionsDelete
*/
- protected $permissionsDelete = array('admin.system.package.canUninstallPackage');
+ protected $permissionsDelete = array('admin.configuration.package.canUninstallPackage');
/**
* @see \wcf\data\AbstractDatabaseObjectAction::$permissionsUpdate
*/
- protected $permissionsUpdate = array('admin.system.package.canUpdatePackage');
+ protected $permissionsUpdate = array('admin.configuration.package.canUpdatePackage');
/**
* @see \wcf\data\AbstractDatabaseObjectAction::$requireACP
* Validates parameters to search for purchased items in the WoltLab Plugin-Store.
*/
public function validateSearchForPurchasedItems() {
- WCF::getSession()->checkPermissions(array('admin.system.package.canInstallPackage', 'admin.system.package.canUpdatePackage'));
+ WCF::getSession()->checkPermissions(array('admin.configuration.package.canInstallPackage', 'admin.configuration.package.canUpdatePackage'));
$this->readString('password', true);
$this->readString('username', true);
*/
public function validateCancelInstallation() {
// check permissions
- WCF::getSession()->checkPermissions(array('admin.system.package.canInstallPackage'));
+ WCF::getSession()->checkPermissions(array('admin.configuration.package.canInstallPackage'));
// validate queue
$this->queue = $this->getSingleObject();
* Validates parameters to search for installable packages.
*/
public function validateSearch() {
- WCF::getSession()->checkPermissions(array('admin.system.package.canInstallPackage'));
+ WCF::getSession()->checkPermissions(array('admin.configuration.package.canInstallPackage'));
$this->readString('package', true);
$this->readString('packageDescription', true);
* Validates parameters to return a result list for a previous search.
*/
public function validateGetResultList() {
- WCF::getSession()->checkPermissions(array('admin.system.package.canInstallPackage'));
+ WCF::getSession()->checkPermissions(array('admin.configuration.package.canInstallPackage'));
$this->readInteger('pageNo');
$this->readInteger('searchID');
* Validates permissions to search for updates.
*/
public function validateSearchForUpdates() {
- WCF::getSession()->checkPermissions(array('admin.system.package.canUpdatePackage'));
+ WCF::getSession()->checkPermissions(array('admin.configuration.package.canUpdatePackage'));
$this->readBoolean('ignoreCache', true);
}
* Validates parameters to perform a system update.
*/
public function validatePrepareUpdate() {
- WCF::getSession()->checkPermissions(array('admin.system.package.canUpdatePackage'));
+ WCF::getSession()->checkPermissions(array('admin.configuration.package.canUpdatePackage'));
if (!isset($this->parameters['packages']) || !is_array($this->parameters['packages'])) {
throw new UserInputException('packages');
* Validates parameters to prepare a package installation.
*/
public function validatePrepareInstallation() {
- WCF::getSession()->checkPermissions(array('admin.system.package.canInstallPackage'));
+ WCF::getSession()->checkPermissions(array('admin.configuration.package.canInstallPackage'));
if (!isset($this->parameters['packages']) || !is_array($this->parameters['packages']) || count($this->parameters['packages']) != 1) {
throw new UserInputException('packages');
/**
* @see \wcf\data\AbstractDatabaseObjectAction::$permissionsCreate
*/
- protected $permissionsCreate = array('admin.system.package.canEditServer');
+ protected $permissionsCreate = array('admin.configuration.package.canEditServer');
/**
* @see \wcf\data\AbstractDatabaseObjectAction::$permissionsDelete
*/
- protected $permissionsDelete = array('admin.system.package.canEditServer');
+ protected $permissionsDelete = array('admin.configuration.package.canEditServer');
/**
* @see \wcf\data\AbstractDatabaseObjectAction::$permissionsUpdate
*/
- protected $permissionsUpdate = array('admin.system.package.canEditServer');
+ protected $permissionsUpdate = array('admin.configuration.package.canEditServer');
/**
* @see \wcf\data\AbstractDatabaseObjectAction::$requireACP
* Validates the getData action.
*/
public function validateGetData() {
- WCF::getSession()->checkPermissions(array('admin.system.canViewLog'));
+ WCF::getSession()->checkPermissions(array('admin.management.canViewLog'));
// validate start date
if (empty($this->parameters['startDate']) || !preg_match('/^\d{4}\-\d{2}\-\d{2}$/', $this->parameters['startDate'])) {
* @return string
*/
public function checkForUpdates() {
- if (WCF::getSession()->getPermission('admin.system.package.canUpdatePackage') && VERBOSITY >= -1 && !self::getArgvParser()->disableUpdateCheck) {
+ if (WCF::getSession()->getPermission('admin.configuration.package.canUpdatePackage') && VERBOSITY >= -1 && !self::getArgvParser()->disableUpdateCheck) {
$updates = PackageUpdateDispatcher::getInstance()->getAvailableUpdates();
if (!empty($updates)) {
$return = self::getReader()->println(count($updates) . ' update' . (count($updates) > 1 ? 's are' : ' is') . ' available');
* @see \wcf\system\cli\command\ICLICommand::canAccess()
*/
public function canAccess() {
- return WCF::getSession()->getPermission('admin.system.canImportData');
+ return WCF::getSession()->getPermission('admin.management.canImportData');
}
/**
// check update or install support
if ($package !== null) {
- CLIWCF::getSession()->checkPermissions(array('admin.system.package.canUpdatePackage'));
+ CLIWCF::getSession()->checkPermissions(array('admin.configuration.package.canUpdatePackage'));
$archive->setPackage($package);
if (!$archive->isValidUpdate()) {
}
}
else {
- CLIWCF::getSession()->checkPermissions(array('admin.system.package.canInstallPackage'));
+ CLIWCF::getSession()->checkPermissions(array('admin.configuration.package.canInstallPackage'));
if (!$archive->isValidInstall()) {
$this->error('noValidInstall');
* @see \wcf\system\cli\command\ICLICommand::canAccess()
*/
public function canAccess() {
- return CLIWCF::getSession()->getPermission('admin.system.package.canInstallPackage') || CLIWCF::getSession()->getPermission('admin.system.package.canUpdatePackage');
+ return CLIWCF::getSession()->getPermission('admin.configuration.package.canInstallPackage') || CLIWCF::getSession()->getPermission('admin.configuration.package.canUpdatePackage');
}
}
* Validates accessibility of resetMapping().
*/
public function validateResetMapping() {
- WCF::getSession()->checkPermissions(array('admin.system.canImportData'));
+ WCF::getSession()->checkPermissions(array('admin.management.canImportData'));
// reset caches
CacheHandler::getInstance()->flushAll();
* @see \wcf\system\search\acp\IACPSearchResultProvider::search()
*/
public function search($query) {
- if (!WCF::getSession()->getPermission('admin.system.package.canUpdatePackage') && !WCF::getSession()->getPermission('admin.system.package.canUninstallPackage')) {
+ if (!WCF::getSession()->getPermission('admin.configuration.package.canUpdatePackage') && !WCF::getSession()->getPermission('admin.configuration.package.canUninstallPackage')) {
return array();
}
closedir($handle);
}
- $additional = ['mainMenu'];
+ $additional = ['layout'];
for ($i = 0, $length = count($additional); $i < $length; $i++) {
$files[] = WCF_DIR . 'acp/style/' . $additional[$i] . '.scss';
}
* @see \wcf\system\worker\IWorker::validate()
*/
public function validate() {
- WCF::getSession()->checkPermissions(array('admin.system.canRebuildData'));
+ WCF::getSession()->checkPermissions(array('admin.management.canRebuildData'));
}
/**
* @see \wcf\system\worker\IWorker::validate()
*/
public function validate() {
- WCF::getSession()->checkPermissions(array('admin.system.canImportData'));
+ WCF::getSession()->checkPermissions(array('admin.management.canImportData'));
if (!isset($this->parameters['objectType'])) {
throw new SystemException("parameter 'objectType' missing");
// benchmark link styling
.benchmark,
.copyright {
- margin-top: 20px;
+ &:not(:first-child) {
+ margin-top: 20px;
+ }
a {
// use text color instead
<item name="wcf.acp.group.option.admin.general.canUseAcp.description"><![CDATA[Mitglieder dieser Benutzergruppe können die Administrationsoberfläche betreten und dort abhängig von den weiteren Zugriffsrechten verschiedene Aktionen durchführen. Diese Option muss aktiviert sein, wenn diesen Benutzern andere administrative Funktionen erlaubt werden sollen.]]></item>
<item name="wcf.acp.group.option.admin.general.canViewPrivateUserOptions"><![CDATA[Kann versteckte Profilinformationen sehen]]></item>
<item name="wcf.acp.group.option.admin.language.canManageLanguage"><![CDATA[Kann Sprachen verwalten]]></item>
- <item name="wcf.acp.group.option.admin.system.canEditOption"><![CDATA[Kann allgemeine Einstellungen vornehmen]]></item>
+ <item name="wcf.acp.group.option.admin.configuration.canEditOption"><![CDATA[Kann allgemeine Einstellungen vornehmen]]></item>
<item name="wcf.acp.group.option.admin.style.canUseDisabledStyle"><![CDATA[Kann deaktivierte Stile benutzen]]></item>
- <item name="wcf.acp.group.option.admin.system.canViewLog"><![CDATA[Kann Protokolle abrufen]]></item>
- <item name="wcf.acp.group.option.admin.system.canManageApplication"><![CDATA[Kann Anwendungen verwalten]]></item>
- <item name="wcf.acp.group.option.admin.system.canManageCronjob"><![CDATA[Kann zeitgesteuerte Aufgaben verwalten]]></item>
- <item name="wcf.acp.group.option.admin.system.package.canEditServer"><![CDATA[Kann Update-Server bearbeiten]]></item>
- <item name="wcf.acp.group.option.admin.system.package.canInstallPackage"><![CDATA[Kann Pakete installieren]]></item>
- <item name="wcf.acp.group.option.admin.system.package.canUninstallPackage"><![CDATA[Kann Pakete deinstallieren]]></item>
- <item name="wcf.acp.group.option.admin.system.package.canUpdatePackage"><![CDATA[Kann Pakete aktualisieren]]></item>
+ <item name="wcf.acp.group.option.admin.management.canViewLog"><![CDATA[Kann Protokolle abrufen]]></item>
+ <item name="wcf.acp.group.option.admin.configuration.canManageApplication"><![CDATA[Kann Anwendungen verwalten]]></item>
+ <item name="wcf.acp.group.option.admin.management.canManageCronjob"><![CDATA[Kann zeitgesteuerte Aufgaben verwalten]]></item>
+ <item name="wcf.acp.group.option.admin.configuration.package.canEditServer"><![CDATA[Kann Update-Server bearbeiten]]></item>
+ <item name="wcf.acp.group.option.admin.configuration.package.canInstallPackage"><![CDATA[Kann Pakete installieren]]></item>
+ <item name="wcf.acp.group.option.admin.configuration.package.canUninstallPackage"><![CDATA[Kann Pakete deinstallieren]]></item>
+ <item name="wcf.acp.group.option.admin.configuration.package.canUpdatePackage"><![CDATA[Kann Pakete aktualisieren]]></item>
<item name="wcf.acp.group.option.admin.user.accessibleGroups"><![CDATA[Zugängliche Benutzergruppen]]></item>
<item name="wcf.acp.group.option.admin.user.accessibleGroups.description"><![CDATA[Mitglieder dieser Benutzergruppe haben auf diese Gruppen Zugriff. Zusätzlich muss angegeben werden, ob z.B. die Benutzergruppe bearbeitet werden darf.]]></item>
<item name="wcf.acp.group.option.admin.user.canAddGroup"><![CDATA[Kann neue Benutzergruppen erstellen]]></item>
<item name="wcf.acp.group.option.admin.user.canMailUser"><![CDATA[Kann E-Mails an Benutzer senden]]></item>
<item name="wcf.acp.group.option.admin.user.canSearchUser"><![CDATA[Kann Benutzer suchen]]></item>
<item name="wcf.acp.group.option.category.admin"><![CDATA[Administrative Rechte]]></item>
- <item name="wcf.acp.group.option.category.admin.display"><![CDATA[Darstellung]]></item>
- <item name="wcf.acp.group.option.category.admin.display.pageMenu"><![CDATA[Seitenmenü]]></item>
+ <item name="wcf.acp.group.option.category.admin.customization"><![CDATA[Anpassung]]></item>
+ <item name="wcf.acp.group.option.category.admin.management"><![CDATA[Verwaltung]]></item>
<item name="wcf.acp.group.option.category.admin.general"><![CDATA[Allgemeine Rechte]]></item>
<item name="wcf.acp.group.option.category.admin.language"><![CDATA[Sprachen]]></item>
<item name="wcf.acp.group.option.category.admin.style"><![CDATA[Stile]]></item>
- <item name="wcf.acp.group.option.category.admin.system"><![CDATA[System]]></item>
- <item name="wcf.acp.group.option.category.admin.system.package"><![CDATA[Pakete]]></item>
+ <item name="wcf.acp.group.option.category.admin.configuration"><![CDATA[Konfiguration]]></item>
+ <item name="wcf.acp.group.option.category.admin.configuration.package"><![CDATA[Pakete]]></item>
<item name="wcf.acp.group.option.category.admin.user"><![CDATA[Benutzer]]></item>
<item name="wcf.acp.group.option.category.admin.user.group"><![CDATA[Benutzergruppen]]></item>
<item name="wcf.acp.group.option.category.admin.user.user"><![CDATA[Benutzer]]></item>
<item name="wcf.acp.group.option.category.admin.template"><![CDATA[Templates]]></item>
<item name="wcf.acp.group.option.admin.template.canManageTemplate"><![CDATA[Kann Templates verwalten]]></item>
<item name="wcf.acp.group.option.admin.style.canManageStyle"><![CDATA[Kann Stile verwalten]]></item>
- <item name="wcf.acp.group.option.category.admin.content"><![CDATA[Inhalte]]></item>
+ <item name="wcf.acp.group.option.category.admin.content"><![CDATA[Inhalt]]></item>
<item name="wcf.acp.group.option.admin.content.canBulkRevertContentChanges"><![CDATA[Kann Änderungen der letzten Tage zurücksetzen]]></item>
- <item name="wcf.acp.group.option.category.admin.community"><![CDATA[Community]]></item>
+ <item name="wcf.acp.group.option.category.admin.application"><![CDATA[Anwendungen]]></item>
<item name="wcf.acp.group.option.category.mod.general"><![CDATA[Allgemeine Rechte]]></item>
<item name="wcf.acp.group.option.category.admin.user.option"><![CDATA[Benutzerprofilfelder]]></item>
<item name="wcf.acp.group.option.admin.user.canManageUserOption"><![CDATA[Kann Benutzerprofilfelder verwalten]]></item>
<item name="wcf.acp.group.option.category.admin.content.tag"><![CDATA[Tags]]></item>
<item name="wcf.acp.group.option.admin.content.tag.canManageTag"><![CDATA[Kann Tags verwalten]]></item>
<item name="wcf.acp.group.option.user.signature.maxLength"><![CDATA[Maximale Signaturlänge]]></item>
- <item name="wcf.acp.group.option.admin.system.canImportData"><![CDATA[Kann Daten importieren]]></item>
- <item name="wcf.acp.group.option.admin.system.canRebuildData"><![CDATA[Kann Anzeigen aktualisieren]]></item>
+ <item name="wcf.acp.group.option.admin.management.canImportData"><![CDATA[Kann Daten importieren]]></item>
+ <item name="wcf.acp.group.option.admin.management.canRebuildData"><![CDATA[Kann Anzeigen aktualisieren]]></item>
<item name="wcf.acp.group.description"><![CDATA[Beschreibung der Benutzergruppe]]></item>
<item name="wcf.acp.group.button.choose"><![CDATA[Benutzergruppe wählen]]></item>
<item name="wcf.acp.group.option.error.validationFailed"><![CDATA[Sie haben einen ungültigen Inhalt eingegeben.]]></item>
</category>
<category name="wcf.acp.menu">
+ <item name="wcf.acp.menu.link.management"><![CDATA[Verwaltung]]></item>
<item name="wcf.acp.menu.link.maintenance"><![CDATA[Wartung]]></item>
<item name="wcf.acp.menu.link.maintenance.cache"><![CDATA[Cache]]></item>
<item name="wcf.acp.menu.link.application.management"><![CDATA[Anwendungen verwalten]]></item>
- <item name="wcf.acp.menu.link.community"><![CDATA[Community]]></item>
+ <item name="wcf.acp.menu.link.application"><![CDATA[Anwendungen]]></item>
<item name="wcf.acp.menu.link.content"><![CDATA[Inhalt]]></item>
<item name="wcf.acp.menu.link.cronjob"><![CDATA[Cronjobs]]></item>
<item name="wcf.acp.menu.link.cronjob.add"><![CDATA[Cronjob hinzufügen]]></item>
<item name="wcf.acp.menu.link.group.add"><![CDATA[Benutzergruppe hinzufügen]]></item>
<item name="wcf.acp.menu.link.group.mail"><![CDATA[E-Mail an Gruppenmitglieder]]></item>
<item name="wcf.acp.menu.link.group.list"><![CDATA[Benutzergruppen]]></item>
- <item name="wcf.acp.menu.link.display"><![CDATA[Darstellung]]></item>
+ <item name="wcf.acp.menu.link.customization"><![CDATA[Anpassung]]></item>
<item name="wcf.acp.menu.link.option"><![CDATA[Optionen]]></item>
<item name="wcf.acp.menu.link.package"><![CDATA[Pakete]]></item>
<item name="wcf.acp.menu.link.package.install"><![CDATA[Paket installieren]]></item>
<item name="wcf.acp.menu.link.style.add"><![CDATA[Stil hinzufügen]]></item>
<item name="wcf.acp.menu.link.style.import"><![CDATA[Stil importieren]]></item>
<item name="wcf.acp.menu.link.style.list"><![CDATA[Stile]]></item>
- <item name="wcf.acp.menu.link.system"><![CDATA[System]]></item>
+ <item name="wcf.acp.menu.link.configuration"><![CDATA[Konfiguration]]></item>
<item name="wcf.acp.menu.link.user"><![CDATA[Benutzer]]></item>
<item name="wcf.acp.menu.link.user.add"><![CDATA[Benutzer hinzufügen]]></item>
<item name="wcf.acp.menu.link.user.list"><![CDATA[Benutzer]]></item>
<item name="wcf.acp.menu.link.user.management"><![CDATA[Benutzer]]></item>
<item name="wcf.acp.menu.link.user.bulkProcessing"><![CDATA[Benutzer-Massenbearbeitung]]></item>
<item name="wcf.acp.menu.link.user.search"><![CDATA[Benutzer suchen]]></item>
- <item name="wcf.acp.menu.link.user.option"><![CDATA[Benutzerprofilfelder]]></item>
- <item name="wcf.acp.menu.link.user.option.list"><![CDATA[Benutzerprofilfelder]]></item>
- <item name="wcf.acp.menu.link.user.option.add"><![CDATA[Benutzerprofilfeld hinzufügen]]></item>
- <item name="wcf.acp.menu.link.user.option.category.list"><![CDATA[Benutzerprofilfeld-Kategorien]]></item>
- <item name="wcf.acp.menu.link.user.option.category.add"><![CDATA[Benutzerprofilfeld-Kategorie hinzufügen]]></item>
- <item name="wcf.acp.menu.link.user.option.setDefaults"><![CDATA[Benutzerprofil-Einstellungen verwalten]]></item>
+ <item name="wcf.acp.menu.link.user.option"><![CDATA[Profilfelder]]></item>
+ <item name="wcf.acp.menu.link.user.option.list"><![CDATA[Profilfelder]]></item>
+ <item name="wcf.acp.menu.link.user.option.add"><![CDATA[Profilfeld hinzufügen]]></item>
+ <item name="wcf.acp.menu.link.user.option.category.list"><![CDATA[Profilfeld-Kategorien]]></item>
+ <item name="wcf.acp.menu.link.user.option.category.add"><![CDATA[Profilfeld-Kategorie hinzufügen]]></item>
+ <item name="wcf.acp.menu.link.userOptionDefaults"><![CDATA[Benutzerprofil-Einstellungen]]></item>
<item name="wcf.acp.menu.link.template"><![CDATA[Templates]]></item>
<item name="wcf.acp.menu.link.template.list"><![CDATA[Templates]]></item>
<item name="wcf.acp.menu.link.template.add"><![CDATA[Template hinzufügen]]></item>
<item name="wcf.acp.menu.link.tag.list"><![CDATA[Tags]]></item>
<item name="wcf.acp.menu.link.maintenance.import"><![CDATA[Datenimport]]></item>
<item name="wcf.acp.menu.link.maintenance.rebuildData"><![CDATA[Anzeigen aktualisieren]]></item>
- <item name="wcf.acp.menu.link.log.stat"><![CDATA[Statistiken]]></item>
+ <item name="wcf.acp.menu.link.stat"><![CDATA[Statistiken]]></item>
+ <item name="wcf.acp.menu.link.stat.list"><![CDATA[Statistiken]]></item>
<item name="wcf.acp.menu.link.group.assignment"><![CDATA[Automatische Zuordnungen]]></item>
<item name="wcf.acp.menu.link.notice"><![CDATA[Hinweise]]></item>
<item name="wcf.acp.menu.link.notice.add"><![CDATA[Hinweis hinzufügen]]></item>
<item name="wcf.acp.menu.link.ad.list"><![CDATA[Werbung]]></item>
<item name="wcf.acp.menu.link.captcha"><![CDATA[Captchas]]></item>
<item name="wcf.acp.menu.link.captcha.question.add"><![CDATA[Frage hinzufügen]]></item>
- <item name="wcf.acp.menu.link.captcha.question.list"><![CDATA[Fragen]]></item>
+ <item name="wcf.acp.menu.link.captcha.question.list"><![CDATA[Captcha-Fragen]]></item>
<item name="wcf.acp.menu.link.log.authentication.failure"><![CDATA[Fehlgeschlagene Anmeldungen]]></item>
<item name="wcf.acp.menu.link.paidSubscription"><![CDATA[Bezahlte Mitgliedschaften]]></item>
<item name="wcf.acp.menu.link.paidSubscription.list"><![CDATA[Mitgliedschaften auflisten]]></item>
<item name="wcf.acp.menu.link.paidSubscription.user.list"><![CDATA[Aktive Mitgliedschaften auflisten]]></item>
<item name="wcf.acp.menu.link.paidSubscription.transactionLog.list"><![CDATA[Transaktionen auflisten]]></item>
- <item name="wcf.acp.menu.link.notificationPresetSettings"><![CDATA[Vorgabewerte für Benachrichtigungen bearbeiten]]></item>
+ <item name="wcf.acp.menu.link.notificationPresetSettings"><![CDATA[Benachrichtigungen]]></item>
</category>
<category name="wcf.acp.notice">
<item name="wcf.acp.group.option.admin.general.canUseAcp.description"><![CDATA[Users of this group may access the Administration Control Panel based upon their granted permissions. This option must be enabled if you wish to grant access to any administrative option.]]></item>
<item name="wcf.acp.group.option.admin.general.canViewPrivateUserOptions"><![CDATA[Can view private user options]]></item>
<item name="wcf.acp.group.option.admin.language.canManageLanguage"><![CDATA[Can manage languages]]></item>
- <item name="wcf.acp.group.option.admin.system.canEditOption"><![CDATA[Can edit system options]]></item>
+ <item name="wcf.acp.group.option.admin.configuration.canEditOption"><![CDATA[Can edit system options]]></item>
<item name="wcf.acp.group.option.admin.style.canUseDisabledStyle"><![CDATA[Can view disabled styles]]></item>
- <item name="wcf.acp.group.option.admin.system.canViewLog"><![CDATA[Can view log files]]></item>
- <item name="wcf.acp.group.option.admin.system.canManageApplication"><![CDATA[Can manage applications]]></item>
- <item name="wcf.acp.group.option.admin.system.canManageCronjob"><![CDATA[Can manage cronjobs]]></item>
- <item name="wcf.acp.group.option.admin.system.package.canEditServer"><![CDATA[Can edit update servers]]></item>
- <item name="wcf.acp.group.option.admin.system.package.canInstallPackage"><![CDATA[Can install packages]]></item>
- <item name="wcf.acp.group.option.admin.system.package.canUninstallPackage"><![CDATA[Can uninstall packages]]></item>
- <item name="wcf.acp.group.option.admin.system.package.canUpdatePackage"><![CDATA[Can update packages]]></item>
+ <item name="wcf.acp.group.option.admin.management.canViewLog"><![CDATA[Can view log files]]></item>
+ <item name="wcf.acp.group.option.admin.configuration.canManageApplication"><![CDATA[Can manage applications]]></item>
+ <item name="wcf.acp.group.option.admin.management.canManageCronjob"><![CDATA[Can manage cronjobs]]></item>
+ <item name="wcf.acp.group.option.admin.configuration.package.canEditServer"><![CDATA[Can edit update servers]]></item>
+ <item name="wcf.acp.group.option.admin.configuration.package.canInstallPackage"><![CDATA[Can install packages]]></item>
+ <item name="wcf.acp.group.option.admin.configuration.package.canUninstallPackage"><![CDATA[Can uninstall packages]]></item>
+ <item name="wcf.acp.group.option.admin.configuration.package.canUpdatePackage"><![CDATA[Can update packages]]></item>
<item name="wcf.acp.group.option.admin.user.accessibleGroups"><![CDATA[Accessible User Groups]]></item>
<item name="wcf.acp.group.option.admin.user.accessibleGroups.description"><![CDATA[Users of this group have access to these groups, furthermore you need to specify if these users are allowed to edit these groups.]]></item>
<item name="wcf.acp.group.option.admin.user.canAddGroup"><![CDATA[Can add user groups]]></item>
<item name="wcf.acp.group.option.admin.user.canMailUser"><![CDATA[Can send emails to users]]></item>
<item name="wcf.acp.group.option.admin.user.canSearchUser"><![CDATA[Can search users]]></item>
<item name="wcf.acp.group.option.category.admin"><![CDATA[Administrative Permissions]]></item>
- <item name="wcf.acp.group.option.category.admin.display"><![CDATA[Appearance]]></item>
+ <item name="wcf.acp.group.option.category.admin.configuration"><![CDATA[Configuration]]></item>
+ <item name="wcf.acp.group.option.category.admin.customization"><![CDATA[Customization]]></item>
+ <item name="wcf.acp.group.option.category.admin.management"><![CDATA[Management]]></item>
<item name="wcf.acp.group.option.category.admin.display.pageMenu"><![CDATA[Page Menu]]></item>
<item name="wcf.acp.group.option.category.admin.general"><![CDATA[General Permissions]]></item>
<item name="wcf.acp.group.option.category.admin.language"><![CDATA[Languages]]></item>
<item name="wcf.acp.group.option.category.admin.style"><![CDATA[Styles]]></item>
- <item name="wcf.acp.group.option.category.admin.system"><![CDATA[System]]></item>
- <item name="wcf.acp.group.option.category.admin.system.package"><![CDATA[Packages]]></item>
+ <item name="wcf.acp.group.option.category.admin.configuration.package"><![CDATA[Packages]]></item>
<item name="wcf.acp.group.option.category.admin.user"><![CDATA[Users]]></item>
<item name="wcf.acp.group.option.category.admin.user.group"><![CDATA[User Groups]]></item>
<item name="wcf.acp.group.option.category.admin.user.user"><![CDATA[Users]]></item>
<item name="wcf.acp.group.option.admin.style.canManageStyle"><![CDATA[Can manage styles]]></item>
<item name="wcf.acp.group.option.category.admin.content"><![CDATA[Content]]></item>
<item name="wcf.acp.group.option.admin.content.canBulkRevertContentChanges"><![CDATA[Can bulk revert content changes]]></item>
- <item name="wcf.acp.group.option.category.admin.community"><![CDATA[Community]]></item>
+ <item name="wcf.acp.group.option.category.admin.application"><![CDATA[Applications]]></item>
<item name="wcf.acp.group.option.category.mod.general"><![CDATA[General]]></item>
<item name="wcf.acp.group.option.category.admin.user.option"><![CDATA[User Profile Fields]]></item>
<item name="wcf.acp.group.option.admin.user.canManageUserOption"><![CDATA[Can manage user profile fields]]></item>
<item name="wcf.acp.group.option.category.admin.content.tag"><![CDATA[Tags]]></item>
<item name="wcf.acp.group.option.admin.content.tag.canManageTag"><![CDATA[Can manage tags]]></item>
<item name="wcf.acp.group.option.user.signature.maxLength"><![CDATA[Maximum Signature Length]]></item>
- <item name="wcf.acp.group.option.admin.system.canImportData"><![CDATA[Can import data]]></item>
- <item name="wcf.acp.group.option.admin.system.canRebuildData"><![CDATA[Can rebuild data]]></item>
+ <item name="wcf.acp.group.option.admin.management.canImportData"><![CDATA[Can import data]]></item>
+ <item name="wcf.acp.group.option.admin.management.canRebuildData"><![CDATA[Can rebuild data]]></item>
<item name="wcf.acp.group.description"><![CDATA[Description]]></item>
<item name="wcf.acp.group.button.choose"><![CDATA[Choose User Group]]></item>
<item name="wcf.acp.group.option.error.validationFailed"><![CDATA[You have entered an invalid value.]]></item>
</category>
<category name="wcf.acp.menu">
+ <item name="wcf.acp.menu.link.management"><![CDATA[Management]]></item>
<item name="wcf.acp.menu.link.maintenance"><![CDATA[Maintenance]]></item>
<item name="wcf.acp.menu.link.maintenance.cache"><![CDATA[Cache]]></item>
<item name="wcf.acp.menu.link.application.management"><![CDATA[Manage Applications]]></item>
- <item name="wcf.acp.menu.link.community"><![CDATA[Community]]></item>
+ <item name="wcf.acp.menu.link.application"><![CDATA[Applications]]></item>
<item name="wcf.acp.menu.link.content"><![CDATA[Content]]></item>
<item name="wcf.acp.menu.link.cronjob"><![CDATA[Cronjobs]]></item>
<item name="wcf.acp.menu.link.cronjob.add"><![CDATA[Add Cronjob]]></item>
<item name="wcf.acp.menu.link.group.add"><![CDATA[Add User Group]]></item>
<item name="wcf.acp.menu.link.group.mail"><![CDATA[Email Users]]></item>
<item name="wcf.acp.menu.link.group.list"><![CDATA[User Groups]]></item>
- <item name="wcf.acp.menu.link.display"><![CDATA[Appearance]]></item>
+ <item name="wcf.acp.menu.link.customization"><![CDATA[Customization]]></item>
<item name="wcf.acp.menu.link.option"><![CDATA[Options]]></item>
- <item name="wcf.acp.menu.link.option.importAndExport"><![CDATA[Import & Export]]></item>
<item name="wcf.acp.menu.link.package"><![CDATA[Packages]]></item>
<item name="wcf.acp.menu.link.package.install"><![CDATA[Install Package]]></item>
<item name="wcf.acp.menu.link.package.server.list"><![CDATA[Package Servers]]></item>
<item name="wcf.acp.menu.link.style.add"><![CDATA[Add Style]]></item>
<item name="wcf.acp.menu.link.style.import"><![CDATA[Import Style]]></item>
<item name="wcf.acp.menu.link.style.list"><![CDATA[Styles]]></item>
- <item name="wcf.acp.menu.link.system"><![CDATA[System]]></item>
+ <item name="wcf.acp.menu.link.configuration"><![CDATA[Configuration]]></item>
<item name="wcf.acp.menu.link.user"><![CDATA[Users]]></item>
<item name="wcf.acp.menu.link.user.add"><![CDATA[Add User]]></item>
<item name="wcf.acp.menu.link.user.list"><![CDATA[Users]]></item>
<item name="wcf.acp.menu.link.user.option.add"><![CDATA[Add Custom User Field]]></item>
<item name="wcf.acp.menu.link.user.option.category.list"><![CDATA[Field Categories]]></item>
<item name="wcf.acp.menu.link.user.option.category.add"><![CDATA[Add Field Category]]></item>
- <item name="wcf.acp.menu.link.user.option.setDefaults"><![CDATA[Manage User Field Settings]]></item>
+ <item name="wcf.acp.menu.link.userOptionDefaults"><![CDATA[User Field Settings]]></item>
<item name="wcf.acp.menu.link.template"><![CDATA[Templates]]></item>
<item name="wcf.acp.menu.link.template.list"><![CDATA[Templates]]></item>
<item name="wcf.acp.menu.link.template.add"><![CDATA[Add Template]]></item>
<item name="wcf.acp.menu.link.tag.list"><![CDATA[Tags]]></item>
<item name="wcf.acp.menu.link.maintenance.import"><![CDATA[Data Import]]></item>
<item name="wcf.acp.menu.link.maintenance.rebuildData"><![CDATA[Rebuild Data]]></item>
- <item name="wcf.acp.menu.link.log.stat"><![CDATA[Statistics]]></item>
+ <item name="wcf.acp.menu.link.stat"><![CDATA[Statistics]]></item>
+ <item name="wcf.acp.menu.link.stat.list"><![CDATA[Statistics]]></item>
<item name="wcf.acp.menu.link.group.assignment"><![CDATA[Automatic Assignments]]></item>
<item name="wcf.acp.menu.link.notice"><![CDATA[Notices]]></item>
<item name="wcf.acp.menu.link.notice.add"><![CDATA[Add Notice]]></item>
<item name="wcf.acp.menu.link.ad.list"><![CDATA[Ads]]></item>
<item name="wcf.acp.menu.link.captcha"><![CDATA[Captchas]]></item>
<item name="wcf.acp.menu.link.captcha.question.add"><![CDATA[Add Question]]></item>
- <item name="wcf.acp.menu.link.captcha.question.list"><![CDATA[Questions]]></item>
+ <item name="wcf.acp.menu.link.captcha.question.list"><![CDATA[Captcha Questions]]></item>
<item name="wcf.acp.menu.link.log.authentication.failure"><![CDATA[Failed Login Attempts]]></item>
<item name="wcf.acp.menu.link.paidSubscription"><![CDATA[Paid Subscriptions]]></item>
<item name="wcf.acp.menu.link.paidSubscription.list"><![CDATA[List Paid Subscriptions]]></item>
<item name="wcf.acp.menu.link.paidSubscription.user.list"><![CDATA[List Active Subscriptions]]></item>
<item name="wcf.acp.menu.link.paidSubscription.transactionLog.list"><![CDATA[List Transactions]]></item>
- <item name="wcf.acp.menu.link.notificationPresetSettings"><![CDATA[Default Notification Settings]]></item>
+ <item name="wcf.acp.menu.link.notificationPresetSettings"><![CDATA[Notifications]]></item>
</category>
<category name="wcf.acp.notice">
-- default user group options
INSERT INTO wcf1_user_group_option (optionID, optionName, categoryName, optionType, defaultValue, showOrder, usersOnly) VALUES (1, 'admin.general.canUseAcp', 'admin.general', 'boolean', '0', 1, 1);
-INSERT INTO wcf1_user_group_option (optionID, optionName, categoryName, optionType, defaultValue, showOrder, usersOnly) VALUES (2, 'admin.system.package.canInstallPackage', 'admin.system.package', 'boolean', '0', 1, 1);
+INSERT INTO wcf1_user_group_option (optionID, optionName, categoryName, optionType, defaultValue, showOrder, usersOnly) VALUES (2, 'admin.configuration.package.canInstallPackage', 'admin.configuration.package', 'boolean', '0', 1, 1);
INSERT INTO wcf1_user_group_option (optionID, optionName, categoryName, optionType, defaultValue, showOrder, usersOnly) VALUES (3, 'admin.user.canEditGroup', 'admin.user.group', 'boolean', '0', 1, 1);
-- default user group option values