mirror of
https://github.com/SuiteCRM/SuiteCRM-Core.git
synced 2025-09-05 10:18:33 +08:00
[Legacy] Create Admin Panel Schema
This commit is contained in:
parent
6ee178318e
commit
d80e47964d
7 changed files with 372 additions and 8 deletions
|
@ -40,3 +40,4 @@ parameters:
|
|||
logout: true
|
||||
session-expired: true
|
||||
site_url: true
|
||||
admin-panel-definitions: true
|
||||
|
|
|
@ -156,6 +156,22 @@ class AppMetadata
|
|||
*/
|
||||
public $minimalModuleMetadata;
|
||||
|
||||
/**
|
||||
* Admin Metadata
|
||||
*
|
||||
* @var array
|
||||
*
|
||||
* @ApiProperty(
|
||||
* attributes={
|
||||
* "openapi_context"={
|
||||
* "type"="array",
|
||||
* "description"="The admin metadata",
|
||||
* },
|
||||
* }
|
||||
* )
|
||||
*/
|
||||
public $adminMetadata;
|
||||
|
||||
/**
|
||||
* The module
|
||||
*
|
||||
|
@ -324,5 +340,21 @@ class AppMetadata
|
|||
return $this;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array|null
|
||||
*/
|
||||
public function getAdminMetadata(): ?array
|
||||
{
|
||||
return $this->adminMetadata;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array|null $adminMetadata
|
||||
*/
|
||||
public function setAdminMetadata(?array $adminMetadata): void
|
||||
{
|
||||
$this->adminMetadata = $adminMetadata;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -40,6 +40,7 @@ use App\SystemConfig\Service\SystemConfigProviderInterface;
|
|||
use App\Themes\Service\ThemeImageService;
|
||||
use App\UserPreferences\Entity\UserPreference;
|
||||
use App\UserPreferences\Service\UserPreferencesProviderInterface;
|
||||
use App\ViewDefinitions\Service\AdminPanelDefinitionProviderInterface;
|
||||
use Exception;
|
||||
use Symfony\Component\Security\Core\Security;
|
||||
|
||||
|
@ -103,6 +104,11 @@ class AppMetadataProvider implements AppMetadataProviderInterface
|
|||
*/
|
||||
protected $userHandler;
|
||||
|
||||
/**
|
||||
* @var AdminPanelDefinitionProviderInterface
|
||||
*/
|
||||
protected $adminPanelDefinitions;
|
||||
|
||||
/**
|
||||
* AppMetadataProvider constructor.
|
||||
* @param ModuleNameMapperInterface $moduleNameMapper
|
||||
|
@ -128,7 +134,8 @@ class AppMetadataProvider implements AppMetadataProviderInterface
|
|||
ThemeImageService $themeImageService,
|
||||
ModuleMetadataProviderInterface $moduleMetadata,
|
||||
Security $security,
|
||||
UserHandler $userHandler
|
||||
UserHandler $userHandler,
|
||||
AdminPanelDefinitionProviderInterface $adminPanelDefinitions
|
||||
) {
|
||||
$this->moduleNameMapper = $moduleNameMapper;
|
||||
$this->systemConfigProvider = $systemConfigProvider;
|
||||
|
@ -141,6 +148,7 @@ class AppMetadataProvider implements AppMetadataProviderInterface
|
|||
$this->moduleMetadata = $moduleMetadata;
|
||||
$this->security = $security;
|
||||
$this->userHandler = $userHandler;
|
||||
$this->adminPanelDefinitions = $adminPanelDefinitions;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -203,6 +211,19 @@ class AppMetadataProvider implements AppMetadataProviderInterface
|
|||
$metadata->setMinimalModuleMetadata($this->getMinimalModuleMetadata($moduleName));
|
||||
}
|
||||
|
||||
/** @var \User $currentUser */
|
||||
$currentUser = $this->userHandler->getCurrentUser() ?? null;
|
||||
|
||||
if (in_array('adminMetadata', $exposed, true) && !empty($currentUser) && $currentUser->isAdmin()) {
|
||||
$adminMetadata = [
|
||||
'adminPanel' => $this->adminPanelDefinitions->getAdminPanelDef()
|
||||
];
|
||||
$metadata->setAdminMetadata($adminMetadata);
|
||||
} elseif (!$currentUser->isAdmin()) {
|
||||
$adminMetadata = [];
|
||||
$metadata->setAdminMetadata($adminMetadata);
|
||||
}
|
||||
|
||||
return $metadata;
|
||||
}
|
||||
|
||||
|
@ -488,6 +509,8 @@ class AppMetadataProvider implements AppMetadataProviderInterface
|
|||
$metadata->setThemeImages($this->themeImageService->get($theme)->toArray());
|
||||
}
|
||||
|
||||
$metadata->setAdminMetadata([]);
|
||||
|
||||
return $metadata;
|
||||
}
|
||||
|
||||
|
|
|
@ -0,0 +1,156 @@
|
|||
<?php
|
||||
/**
|
||||
* SuiteCRM is a customer relationship management program developed by SalesAgility Ltd.
|
||||
* Copyright (C) 2023 SalesAgility Ltd.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify it under
|
||||
* the terms of the GNU Affero General Public License version 3 as published by the
|
||||
* Free Software Foundation with the addition of the following permission added
|
||||
* to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
|
||||
* IN WHICH THE COPYRIGHT IS OWNED BY SALESAGILITY, SALESAGILITY DISCLAIMS THE
|
||||
* WARRANTY OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
* FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
|
||||
* details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* In accordance with Section 7(b) of the GNU Affero General Public License
|
||||
* version 3, these Appropriate Legal Notices must retain the display of the
|
||||
* "Supercharged by SuiteCRM" logo. If the display of the logos is not reasonably
|
||||
* feasible for technical reasons, the Appropriate Legal Notices must display
|
||||
* the words "Supercharged by SuiteCRM".
|
||||
*/
|
||||
|
||||
|
||||
namespace App\ViewDefinitions\LegacyHandler;
|
||||
|
||||
use App\Engine\LegacyHandler\LegacyHandler;
|
||||
use App\Engine\LegacyHandler\LegacyScopeState;
|
||||
use App\Module\Service\ModuleNameMapperInterface;
|
||||
use App\ViewDefinitions\Service\AdminPanelDefinitionProviderInterface;
|
||||
use Symfony\Component\HttpFoundation\Session\SessionInterface;
|
||||
use App\Routes\Service\RouteConverterInterface;
|
||||
|
||||
/**
|
||||
* Class AdminPanelDefinitionHandler
|
||||
*/
|
||||
class AdminPanelDefinitionHandler extends LegacyHandler implements AdminPanelDefinitionProviderInterface
|
||||
{
|
||||
use FieldDefinitionsInjectorTrait;
|
||||
|
||||
public const HANDLER_KEY = 'adminPanel-definitions';
|
||||
|
||||
/**
|
||||
* @var ModuleNameMapperInterface
|
||||
*/
|
||||
protected $moduleNameMapper;
|
||||
|
||||
/**
|
||||
* @var RouteConverterInterface
|
||||
*/
|
||||
private $routeConverter;
|
||||
|
||||
/**
|
||||
* AdminPanelDefinitionsHandler constructor.
|
||||
* @param string $projectDir
|
||||
* @param string $legacyDir
|
||||
* @param string $legacySessionName
|
||||
* @param string $defaultSessionName
|
||||
* @param LegacyScopeState $legacyScopeState
|
||||
* @param ModuleNameMapperInterface $moduleNameMapper
|
||||
* @param SessionInterface $session
|
||||
* @param RouteConverterInterface $routeConverter
|
||||
*/
|
||||
public function __construct(
|
||||
string $projectDir,
|
||||
string $legacyDir,
|
||||
string $legacySessionName,
|
||||
string $defaultSessionName,
|
||||
LegacyScopeState $legacyScopeState,
|
||||
ModuleNameMapperInterface $moduleNameMapper,
|
||||
SessionInterface $session,
|
||||
RouteConverterInterface $routeConverter
|
||||
) {
|
||||
parent::__construct(
|
||||
$projectDir,
|
||||
$legacyDir,
|
||||
$legacySessionName,
|
||||
$defaultSessionName,
|
||||
$legacyScopeState,
|
||||
$session
|
||||
);
|
||||
$this->moduleNameMapper = $moduleNameMapper;
|
||||
$this->routeConverter = $routeConverter;
|
||||
}
|
||||
|
||||
/**
|
||||
* @inheritDoc
|
||||
*/
|
||||
public function getHandlerKey(): string
|
||||
{
|
||||
return self::HANDLER_KEY;
|
||||
}
|
||||
|
||||
/**
|
||||
* @inheritDoc
|
||||
*/
|
||||
public function getAdminPanelDef(): array
|
||||
{
|
||||
$this->init();
|
||||
/* @noinspection PhpIncludeInspection */
|
||||
require 'modules/Administration/metadata/adminpaneldefs.php';
|
||||
$admin_group_header = $admin_group_header ?? [];
|
||||
$adminPanel = [];
|
||||
foreach ($admin_group_header as $adminEntry) {
|
||||
if (empty($adminEntry)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$mapEntry = [
|
||||
'titleLabelKey' => $adminEntry[0] ?? '',
|
||||
'descriptionLabelKey' => $adminEntry[4] ?? '',
|
||||
'linkGroup' => [],
|
||||
'icon' => $adminEntry[5] ?? ''
|
||||
];
|
||||
$adminEntryLinks = $adminEntry[3] ?? [];
|
||||
|
||||
foreach ($adminEntryLinks as $linkGroupKey => $linkGroup) {
|
||||
$mappedLinkGroup = [];
|
||||
if (empty($linkGroup)) {
|
||||
continue;
|
||||
}
|
||||
foreach ($linkGroup as $linkKey => $link) {
|
||||
$path = $this->routeConverter->convertUri($link[3]);
|
||||
$path = str_replace('./#/', '/', $path);
|
||||
$mappedLink = [
|
||||
'category' => $link[0] ?? '',
|
||||
'titleKey' => $link[1] ?? '',
|
||||
'descriptionKey' => $link[2] ?? '',
|
||||
'link' => $path ?? '',
|
||||
'icon' => $link[4] ?? '',
|
||||
];
|
||||
$query = parse_url($path, PHP_URL_QUERY);
|
||||
if ($query) {
|
||||
parse_str($query, $params);
|
||||
$mappedLink['params'] = $params;
|
||||
$path = str_replace('?' . $query, '', $path);
|
||||
$mappedLink['link'] = $path;
|
||||
}
|
||||
$mappedLinkGroup[$linkKey] = $mappedLink;
|
||||
}
|
||||
$mapEntry['linkGroup'][$linkGroupKey] = $mappedLinkGroup;
|
||||
|
||||
}
|
||||
$adminPanel[] = $mapEntry;
|
||||
|
||||
}
|
||||
$this->close();
|
||||
|
||||
return $adminPanel;
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,39 @@
|
|||
<?php
|
||||
/**
|
||||
* SuiteCRM is a customer relationship management program developed by SalesAgility Ltd.
|
||||
* Copyright (C) 2023 SalesAgility Ltd.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify it under
|
||||
* the terms of the GNU Affero General Public License version 3 as published by the
|
||||
* Free Software Foundation with the addition of the following permission added
|
||||
* to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
|
||||
* IN WHICH THE COPYRIGHT IS OWNED BY SALESAGILITY, SALESAGILITY DISCLAIMS THE
|
||||
* WARRANTY OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
* FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
|
||||
* details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* In accordance with Section 7(b) of the GNU Affero General Public License
|
||||
* version 3, these Appropriate Legal Notices must retain the display of the
|
||||
* "Supercharged by SuiteCRM" logo. If the display of the logos is not reasonably
|
||||
* feasible for technical reasons, the Appropriate Legal Notices must display
|
||||
* the words "Supercharged by SuiteCRM".
|
||||
*/
|
||||
|
||||
|
||||
namespace App\ViewDefinitions\Service;
|
||||
|
||||
interface AdminPanelDefinitionProviderInterface
|
||||
{
|
||||
|
||||
/**
|
||||
* Get admin panel defs
|
||||
* @return array
|
||||
*/
|
||||
public function getAdminPanelDef(): array;
|
||||
}
|
|
@ -4014,3 +4014,115 @@ $app_strings['LBL_SIGNATURE'] = 'Signature';
|
|||
$app_strings['LBL_NEW_NOTIFICATION'] = "You have {{context.unread}} new notifications";
|
||||
$app_strings['LBL_NOTIFICATION_ITEM_DATE'] = 'Due: {{fields.date_start.value}}';
|
||||
$app_strings['LBL_NOTIFICATION_ITEM_DATE_ENTERED'] = 'Notified: {{fields.snooze.value}}';
|
||||
|
||||
$app_strings['LBL_USERS_TITLE'] = "Users & Authentication";
|
||||
$app_strings['LBL_USERS_DESC'] = "Create, edit, activate and deactivate users in SuiteCRM.";
|
||||
$app_strings['LBL_OAUTH2_CLIENTS_TITLE'] = 'OAuth2 Clients and Tokens';
|
||||
$app_strings['LBL_OAUTH2_CLIENTS'] = 'Manage which clients have access to the OAuth2 Server and view session log and revoke active sessions';
|
||||
$app_strings['LBL_OAUTH'] = 'OAuth key management';
|
||||
$app_strings['LBL_OAUTH_TITLE'] = 'OAuth Keys';
|
||||
$app_strings['LBL_MANAGE_PASSWORD_TITLE'] = 'Password Management';
|
||||
$app_strings['LBL_MANAGE_PASSWORD'] = 'Manage password requirements and expiration';
|
||||
$app_strings['LBL_CONFIG_SECURITYGROUPS_TITLE'] = 'Security Suite Settings';
|
||||
$app_strings['LBL_CONFIG_SECURITYGROUPS'] = 'Configure Security Suite settings such as group inheritance, additive security, etc';
|
||||
$app_strings['LBL_MANAGE_SECURITYGROUPS_TITLE'] = 'Security Suite Group Management';
|
||||
$app_strings['LBL_MANAGE_SECURITYGROUPS'] = 'Security Suite Group Editor';
|
||||
$app_strings['LBL_MANAGE_ROLES_TITLE'] = 'Role Management';
|
||||
$app_strings['LBL_MANAGE_ROLES'] = 'Manage role membership and properties';
|
||||
$app_strings['LBL_MANAGE_USERS_TITLE'] = 'User Management';
|
||||
$app_strings['LBL_MANAGE_USERS'] = 'Manage user accounts and passwords';
|
||||
$app_strings['LBL_ADMINISTRATION_HOME_TITLE'] = 'System';
|
||||
$app_strings['LBL_ADMINISTRATION_HOME_DESC'] = 'Configure the system-wide settings according to the specifications of your organization. Users can override some of the default locale settings within their user settings page.';
|
||||
$app_strings['LBL_CONFIGURE_SETTINGS_TITLE'] = 'System Settings';
|
||||
$app_strings['LBL_CONFIGURE_SETTINGS'] = 'Configure system-wide settings';
|
||||
$app_strings['LBL_CURRENCY'] = 'Set up currencies and conversion rates';
|
||||
$app_strings['LBL_MANAGE_CURRENCIES'] = 'Currencies';
|
||||
$app_strings['LBL_ELASTIC_SEARCH_SETTINGS'] = 'Elasticsearch';
|
||||
$app_strings['LBL_ELASTIC_SEARCH_SETTINGS_DESC'] = 'Configure Elasticsearch preferences';
|
||||
$app_strings['LBL_MANAGE_LANGUAGES'] = 'Languages';
|
||||
$app_strings['LBL_LANGUAGES'] = 'Manage which languages are available for users';
|
||||
$app_strings['LBL_MANAGE_LOCALE'] = 'Locale';
|
||||
$app_strings['LBL_LOCALE'] = 'Set default localization settings for your system';
|
||||
$app_strings['LBL_PDF_HEADER'] = 'PDF Settings';
|
||||
$app_strings['LBL_CHANGE_PDF_SETTINGS'] = 'Change PDF Settings';
|
||||
$app_strings['LBL_SUITE_SCHEDULER_TITLE'] = 'Scheduler';
|
||||
$app_strings['LBL_SUITE_SCHEDULER'] = 'Set up scheduled events';
|
||||
$app_strings['LBL_SEARCH_WRAPPER'] = 'Search Settings';
|
||||
$app_strings['LBL_SEARCH_WRAPPER_DESC'] = 'Configure the global search preferences for the system';
|
||||
$app_strings['LBL_THEME_SETTINGS'] = 'Themes';
|
||||
$app_strings['LBL_THEME_SETTINGS_DESC'] = 'Choose themes for users to be able to select';
|
||||
$app_strings['LBL_MODULE_ADMIN'] = 'Module Settings';
|
||||
$app_strings['LBL_MODULE_ADMIN_HEADER_DESC'] = 'Configure Module specifics and settings';
|
||||
$app_strings['LBL_AOP_SETTINGS'] = 'Case Module Settings';
|
||||
$app_strings['LBL_CHANGE_SETTINGS_AOP'] = 'Change settings for Cases and the Cases Portal';
|
||||
$app_strings['LBL_AOS_SETTINGS'] = 'Sales Module Settings';
|
||||
$app_strings['LBL_CHANGE_SETTINGS'] = 'Change settings for Quotes, Contracts and Invoices';
|
||||
$app_strings['LBL_BUSINESS_HOURS'] = 'Business hours';
|
||||
$app_strings['LBL_AOP_BUSINESS_HOURS_DESC'] = "Restrict Workflow & Case automations to certain days and times";
|
||||
$app_strings['LBL_CONFIGURE_GROUP_TABS_DESC'] = 'Create and edit module menu filters';
|
||||
$app_strings['LBL_CONFIGURE_TABS_AND_SUBPANELS'] = 'Display Modules and Subpanels';
|
||||
$app_strings['LBL_CONFIGURE_TABS_AND_SUBPANELS_DESC'] = 'Choose which modules are displayed in the navigation bar and which subpanels are displayed system-wide';
|
||||
$app_strings['LBL_CONFIGURE_GROUP_TABS'] = 'Configure Module Menu Filters';
|
||||
$app_strings['LBL_CONNECTOR_SETTINGS'] = 'Connectors';
|
||||
$app_strings['LBL_CONNECTOR_SETTINGS_DESC'] = 'Manage connector settings';
|
||||
$app_strings['LBL_SUITEFEED_SETTINGS'] = 'Activity Stream Settings';
|
||||
$app_strings['LBL_SUITEFEED_SETTINGS_DESC'] = 'Enable the user feed and module feeds for the My Activity Stream dashlet';
|
||||
$app_strings['LBL_HISTORY_CONTACTS_EMAILS'] = 'History Subpanel';
|
||||
$app_strings['LBL_HISTORY_CONTACTS_EMAILS_DESC'] = "Enable/Disable contacts\' emails in history";
|
||||
$app_strings['LBL_RELEASE'] = 'Manage releases and versions';
|
||||
$app_strings['LBL_MANAGE_RELEASES'] = 'Releases';
|
||||
$app_strings['LBL_EMAIL_TITLE'] = 'Email';
|
||||
$app_strings['LBL_EMAIL_DESC'] = 'Manage outbound and inbound emails. The email settings must be configured in order to enable users to send out email and newsletter campaigns.';
|
||||
$app_strings['LBL_CAMPAIGN_CONFIG_TITLE'] = 'Campaign Email Settings';
|
||||
$app_strings['LBL_CAMPAIGN_CONFIG_DESC'] = 'Configure email settings for campaigns';
|
||||
$app_strings['LBL_MASS_EMAIL_MANAGER_DESC'] = 'Manage the outbound email queue';
|
||||
$app_strings['LBL_MASS_EMAIL_MANAGER_TITLE'] = 'Email Queue';
|
||||
$app_strings['LBL_MANAGE_EXTERNAL_OAUTH_CONNECTIONS'] = 'External OAuth Connections';
|
||||
$app_strings['LBL_MANAGE_EXTERNAL_OAUTH_CONNECTIONS_DESC'] = 'Setup external OAuth connections';
|
||||
$app_strings['LBL_MANAGE_EXTERNAL_OAUTH_PROVIDERS'] = 'External OAuth Providers';
|
||||
$app_strings['LBL_MANAGE_EXTERNAL_OAUTH_PROVIDERS_DESC'] = 'Setup external OAuth providers';
|
||||
$app_strings['LBL_MANAGE_MAILBOX'] = 'Inbound Email';
|
||||
$app_strings['LBL_MAILBOX_DESC'] = 'Set up group mail accounts for monitoring inbound email and manage personal inbound mail account information for users';
|
||||
$app_strings['LBL_MANAGE_MAILBOX_OUTBOUND'] = 'Outbound Email';
|
||||
$app_strings['LBL_MAILBOX_OUTBOUND_DESC'] = 'Configure outbound email settings';
|
||||
$app_strings['LBL_MASS_EMAIL_CONFIG_TITLE'] = 'Email Settings';
|
||||
$app_strings['LBL_MASS_EMAIL_CONFIG_DESC'] = 'Configure email settings';
|
||||
$app_strings['LBL_MASS_EMAIL_MANAGER_DESC'] = 'Manage the outbound email queue';
|
||||
$app_strings['LBL_ADMIN_TOOLS_TITLE'] = 'Admin Tools';
|
||||
$app_strings['LBL_ADMIN_TOOLS_HEADER_DESC'] = 'Repair, backup and run diagnosis on your SuiteCRM instance';
|
||||
$app_strings['LBL_BACKUPS_TITLE'] = 'Backups';
|
||||
$app_strings['LBL_BACKUPS'] = 'Backup SuiteCRM files';
|
||||
$app_strings['LBL_DIAGNOSTIC_TITLE'] = 'Diagnostic Tool';
|
||||
$app_strings['LBL_DIAGNOSTIC_DESC'] = 'Capture system configuration for diagnostics and analysis';
|
||||
$app_strings['LBL_IMPORT_WIZARD'] = 'Import Wizard';
|
||||
$app_strings['LBL_IMPORT_WIZARD_DESC'] = 'Use the import wizard to easily import records into the system';
|
||||
$app_strings['LBL_MODULE_LOADER_TITLE'] = 'Module Loader';
|
||||
$app_strings['LBL_MODULE_LOADER'] = 'Add or remove SuiteCRM modules, themes, language packs and other extensions';
|
||||
$app_strings['LBL_UPGRADE_TITLE'] = 'Repair';
|
||||
$app_strings['LBL_UPGRADE'] = 'Check and repair SuiteCRM';
|
||||
$app_strings['LBL_TOOLS_DESC'] = 'Create and edit modules and module layouts, manage standard and custom fields and configure tabs.';
|
||||
$app_strings['LBL_STUDIO_TITLE'] = 'Developer Tools';
|
||||
$app_strings['LBL_MODULEBUILDER'] = 'Module Builder';
|
||||
$app_strings['LBL_MODULEBUILDER_DESC'] = 'Build new modules to expand the functionality of SuiteCRM';
|
||||
$app_strings['LBL_RENAME_TABS'] = 'Rename Modules';
|
||||
$app_strings['LBL_CHANGE_NAME_MODULES'] = 'Change the names of the modules appearing within the application';
|
||||
$app_strings['LBL_DROPDOWN_EDITOR'] = 'Dropdown Editor';
|
||||
$app_strings['DESC_DROPDOWN_EDITOR'] = 'Add, delete, or change the dropdown lists';
|
||||
$app_strings['LBL_WORKFLOW_MANAGER'] = 'Workflow Manager';
|
||||
$app_strings['LBL_WORKFLOW_MANAGER_DESC'] = 'Manage, Add, delete or change Workflow processes';
|
||||
$app_strings['LBL_STUDIO_DESC'] = 'Customize module fields, layouts and relationships';
|
||||
$app_strings['LBL_STUDIO'] = 'Studio';
|
||||
$app_strings['LBL_GOOGLE_SUITE_ADMIN_HEADER'] = 'Google Suite';
|
||||
$app_strings['LBL_GOOGLE_SUITE_ADMIN_DESC'] = 'Manage your Google Suite Integration.';
|
||||
$app_strings['LBL_GOOGLE_CALENDAR_SETTINGS_TITLE'] = 'Google Calendar Settings';
|
||||
$app_strings['LBL_GOOGLE_CALENDAR_SETTINGS_DESC'] = 'Configuration settings to adjust your Google Calendar';
|
||||
$app_strings['LBL_JJWG_MAPS_ADMIN_CONFIG_TITLE'] = 'Google Maps Settings';
|
||||
$app_strings['LBL_JJWG_MAPS_ADMIN_CONFIG_DESC'] = 'Configuration settings to adjust your Google Maps';
|
||||
$app_strings['LBL_JJWG_MAPS_ADMIN_GEOCODED_COUNTS_TITLE'] = 'Geocoded Counts';
|
||||
$app_strings['LBL_JJWG_MAPS_ADMIN_GEOCODED_COUNTS_DESC'] = 'Shows the number of module objects geocoded, grouped by geocoding response';
|
||||
$app_strings['LBL_JJWG_MAPS_ADMIN_GEOCODE_ADDRESSES_TITLE'] = 'Geocode Addresses';
|
||||
$app_strings['LBL_JJWG_MAPS_ADMIN_GEOCODE_ADDRESSES_DESC'] = 'Geocode your object addreses. This process may take a few minutes!';
|
||||
$app_strings['LBL_JJWG_MAPS_ADMIN_GEOCODING_TEST_TITLE'] = 'Geocoding Test';
|
||||
$app_strings['LBL_JJWG_MAPS_ADMIN_GEOCODING_TEST_DESC'] = 'Run a single geocoding test with detailed display results.';
|
||||
$app_strings['LBL_JJWG_MAPS_ADMIN_ADDRESS_CACHE_TITLE'] = 'Address Cache';
|
||||
$app_strings['LBL_JJWG_MAPS_ADMIN_ADDRESS_CACHE_DESC'] = 'Provides access to Address Cache information. This is only cache.';
|
||||
|
|
|
@ -95,7 +95,7 @@ $admin_option_defs['Administration']['securitygroup_config'] = [
|
|||
'security-suite-group-management'
|
||||
];
|
||||
|
||||
$admin_group_header[] = ['LBL_USERS_TITLE', '', false, $admin_option_defs, 'LBL_USERS_DESC'];
|
||||
$admin_group_header[] = ['LBL_USERS_TITLE', '', false, $admin_option_defs, 'LBL_USERS_DESC', 'users_and_authentication'];
|
||||
|
||||
//system.
|
||||
$admin_option_defs = [];
|
||||
|
@ -164,7 +164,7 @@ $admin_option_defs['Administration']['theme_settings'] = [
|
|||
'themes'
|
||||
];
|
||||
|
||||
$admin_group_header[] = ['LBL_ADMINISTRATION_HOME_TITLE', '', false, $admin_option_defs, 'LBL_ADMINISTRATION_HOME_DESC'];
|
||||
$admin_group_header[] = ['LBL_ADMINISTRATION_HOME_TITLE', '', false, $admin_option_defs, 'LBL_ADMINISTRATION_HOME_DESC', 'system_admin'];
|
||||
|
||||
//Module Settings
|
||||
$admin_option_defs = [];
|
||||
|
@ -232,7 +232,7 @@ $admin_option_defs['Administration']['aos'] = [
|
|||
'aos-settings'
|
||||
];
|
||||
|
||||
$admin_group_header['sagility'] = ['LBL_MODULE_ADMIN', '', false, $admin_option_defs, 'LBL_MODULE_ADMIN_HEADER_DESC'];
|
||||
$admin_group_header['sagility'] = ['LBL_MODULE_ADMIN', '', false, $admin_option_defs, 'LBL_MODULE_ADMIN_HEADER_DESC', 'module_settings'];
|
||||
|
||||
|
||||
//email manager.
|
||||
|
@ -290,7 +290,7 @@ $admin_option_defs['Campaigns']['mass_Email'] = [
|
|||
];
|
||||
|
||||
|
||||
$admin_group_header[] = ['LBL_EMAIL_TITLE', '', false, $admin_option_defs, 'LBL_EMAIL_DESC'];
|
||||
$admin_group_header[] = ['LBL_EMAIL_TITLE', '', false, $admin_option_defs, 'LBL_EMAIL_DESC', 'email_admin'];
|
||||
|
||||
//admin tools
|
||||
$admin_option_defs = [];
|
||||
|
@ -334,7 +334,7 @@ $admin_option_defs['Administration']['module_loader'] = [
|
|||
'module-loader'
|
||||
];
|
||||
|
||||
$admin_group_header[] = ['LBL_ADMIN_TOOLS_TITLE', '', false, $admin_option_defs, 'LBL_ADMIN_TOOLS_HEADER_DESC'];
|
||||
$admin_group_header[] = ['LBL_ADMIN_TOOLS_TITLE', '', false, $admin_option_defs, 'LBL_ADMIN_TOOLS_HEADER_DESC', 'admin_tools'];
|
||||
|
||||
//studio.
|
||||
$admin_option_defs = [];
|
||||
|
@ -383,7 +383,7 @@ $admin_option_defs['any']['workflow_management'] = [
|
|||
'workflow'
|
||||
];
|
||||
|
||||
$admin_group_header[] = ['LBL_STUDIO_TITLE', '', false, $admin_option_defs, 'LBL_TOOLS_DESC'];
|
||||
$admin_group_header[] = ['LBL_STUDIO_TITLE', '', false, $admin_option_defs, 'LBL_TOOLS_DESC', 'developer_tools'];
|
||||
|
||||
//Google Settings
|
||||
$admin_option_defs = [];
|
||||
|
@ -436,7 +436,8 @@ $admin_group_header[] = [
|
|||
'',
|
||||
false,
|
||||
$admin_option_defs,
|
||||
'LBL_GOOGLE_SUITE_ADMIN_DESC'
|
||||
'LBL_GOOGLE_SUITE_ADMIN_DESC',
|
||||
'google_suite'
|
||||
];
|
||||
|
||||
if (file_exists('custom/modules/Administration/Ext/Administration/administration.ext.php')) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue