From d04b60349ee0b668c296e46db384a962516c4ea7 Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Fri, 6 Jul 2018 20:45:15 +0200 Subject: [PATCH] Improve module listing and implement help doc draft for tests --- Docs/Help/en/accounts.md | 113 ++++++++++++++++++ Docs/{help_groups.md => Help/en/groups.md} | 10 +- .../{help_settings.md => Help/en/settings.md} | 6 +- Docs/Help/en/table_of_contents.md | 5 + Docs/Help/img/accounts/accounts_general.png | Bin 0 -> 20700 bytes .../img/accounts/accounts_groups.png | Bin .../img/accounts/accounts_permissions.png | Bin .../img/general/settings_localization.png | Bin .../img/general/settings_logging.png | Bin .../img/general/settings_security.png | Bin .../{ => Help}/img/groups/groups_accounts.png | Bin Docs/{ => Help}/img/groups/groups_general.png | Bin .../img/groups/groups_permissions.png | Bin Docs/img/accounts/accounts_general.png | Bin 17554 -> 0 bytes Theme/Backend/Lang/en.lang.php | 1 + Theme/Backend/accounts-single.tpl.php | 2 +- Theme/Backend/modules-list.tpl.php | 10 +- 17 files changed, 135 insertions(+), 12 deletions(-) create mode 100644 Docs/Help/en/accounts.md rename Docs/{help_groups.md => Help/en/groups.md} (89%) rename Docs/{help_settings.md => Help/en/settings.md} (90%) create mode 100644 Docs/Help/en/table_of_contents.md create mode 100644 Docs/Help/img/accounts/accounts_general.png rename Docs/{ => Help}/img/accounts/accounts_groups.png (100%) rename Docs/{ => Help}/img/accounts/accounts_permissions.png (100%) rename Docs/{ => Help}/img/general/settings_localization.png (100%) rename Docs/{ => Help}/img/general/settings_logging.png (100%) rename Docs/{ => Help}/img/general/settings_security.png (100%) rename Docs/{ => Help}/img/groups/groups_accounts.png (100%) rename Docs/{ => Help}/img/groups/groups_general.png (100%) rename Docs/{ => Help}/img/groups/groups_permissions.png (100%) delete mode 100644 Docs/img/accounts/accounts_general.png diff --git a/Docs/Help/en/accounts.md b/Docs/Help/en/accounts.md new file mode 100644 index 0000000..cb3b494 --- /dev/null +++ b/Docs/Help/en/accounts.md @@ -0,0 +1,113 @@ +# Accounts + +In `Accounts` you can create, delete and modify the accounts. Accounts are necessary for almost all data associated to persons or organizations. Usually modules either create new accounts when they want to store personal data or use an existing account for which the data should be stored. + +## General + +![General Settings]({/base}{/rootPath}/Modules/Admin/Docs/Help/img/accounts/accounts_general.png) + +### ID + +The id (unique identifier) is automatically generated. + +### Type + +An account can be either a: + +* `Person` +* or a `Organization` + +Both types can have the same permissions and functionality. This can be helpful for a lot of modules that rely on organizations or companies (e.g. a sales module that handles people as customers but also companies as customers). + +### Status + +An account has the following status: + +* Active +* Inactive (usually used for long inactive accounts) +* Timeout (usually used for timeouts in case of bad behaviour which will be automatically revoked after a certain time) +* Banned (usually used to disable accounts for an indefinate time) + +### Username + +Name of the account which can be shown in various places insdead of the full name. + +### Name1 - Name3 + +The name of the account. In some cases 3 names are necessary such as first name, middle name and family name. If more than 3 names are required you have to additionaly put them into one of the 3 name fields. + +### Email + +The email field is the main email contact address for the account. This email address will be also used for password recovery. + +### Password + +The password field can be used to overwrite the current account password. If the password gets changed the user will also receive a notification email. + +Alternatively click the `Reset` button and the account will receive an email with a temporary link redirecting the user to a page where he can change the password. + +The required password structure is defined in the general settings. + +## Permissions + +![General Settings]({/base}{/rootPath}/Modules/Admin/Docs/Help/img/accounts/accounts_permissions.png) + +Permissions have the following components which can be combined to either address a wide e.g. range of units, applications or modules or in order to address a very specific combination of those. + +### Unit + +The unit this permission is set for. Leave empty to address all units + +### App + +The application this permission is set for. Leave empty to address all applications + +### Module + +The module this permission is set for. Leave empty to address all modules + +### Type + +The type is a `module` specific subpart which only should be set if the module is defined in the permission. For further information what kind of types are available for a module please refere to the module specific documentation. Usually it referes to a single page of a module. + +### Element + +The element is a `module` and `type` specific subpart which only should be set if the `type` is defined in the permission. For further information what kind of elements are available for a module and type please refere to the module specific documentation. Usually it referes to a section on a module page. + +### Component + +The component is a `module`, `type` and `element` specific subpart which only should be set if the `element` is defined in the permission. For further information what kind of components are available for a module, type and element please refere to the module specific documentation. Usually it referes to a single input or option in a module. + +### Permission + +The actual permission consists of create (C), read (R), update (U), delete (D), permission (P) options. + +#### Create (C) + +This allows a user to create something. Usually a user should also have (R) permission in this case. + +#### Read (R) + +This allows a user to read/see something. + +#### Update (U) + +This allows a user to update/modify something. Usually a user should also have (R) permission in this case. + +#### Delete (D) + +This allows a user to delete/remove something. Usually a user should also have (R) permission in this case. + +#### Permission (P) + +This allows a user to change permissions. Usually a user should also have (C, R, U, D) permissions because the user could just give himself these permissions anyways. Only selected users should have this permission even if it is only specified for a specific module, type, element or component. + +## Groups + +![General Settings]({/base}{/rootPath}/Modules/Admin/Docs/Help/img/accounts/accounts_groups.png) + +In the groups section you can see all groups that this account is assigned to and you can also add or remove the account to other groups. If you would like to add the account to the same groups as a different account just select the account whos groups you would like to copy and the account will be added to the same groups (one time only, there will be **no relation** between the two accounts. + +## Audit Log + +In the audit log you can see all the changes of the group. \ No newline at end of file diff --git a/Docs/help_groups.md b/Docs/Help/en/groups.md similarity index 89% rename from Docs/help_groups.md rename to Docs/Help/en/groups.md index 8f3ee3c..d867fa2 100644 --- a/Docs/help_groups.md +++ b/Docs/Help/en/groups.md @@ -4,7 +4,11 @@ In `Groups` you can create, delete and modify the groups. Groups are global for ## General -![General Settings](img/groups/groups_general.png) +![General Settings]({/base}{/rootPath}/Modules/Admin/Docs/Help/img/groups/groups_general.png) + +### ID + +The id (unique identifier) is automatically generated. ### Name @@ -16,7 +20,7 @@ Sometimes it makes sense to provide some additional information for a group. In ## Permissions -![General Settings](img/groups/groups_permissions.png) +![General Settings]({/base}{/rootPath}/Modules/Admin/Docs/Help/img/groups/groups_permissions.png) Permissions have the following components which can be combined to either address a wide e.g. range of units, applications or modules or in order to address a very specific combination of those. @@ -70,7 +74,7 @@ This allows a user to change permissions. Usually a user should also have (C, R, ## Accounts -![General Settings](img/groups/groups_accounts.png) +![General Settings]({/base}{/rootPath}/Modules/Admin/Docs/Help/img/groups/groups_accounts.png) In the accounts section you can see all users that are assigned to this group and you can also add or remove accounts. If you would like to add all users from a different group simply select the group and all the users that are part of this group will be added to this group as well (one time only, there will be **no relation** (e.g. parent/child group) between these two groups). diff --git a/Docs/help_settings.md b/Docs/Help/en/settings.md similarity index 90% rename from Docs/help_settings.md rename to Docs/Help/en/settings.md index a4b46e0..780dfa6 100644 --- a/Docs/help_settings.md +++ b/Docs/Help/en/settings.md @@ -8,7 +8,7 @@ In the admin module under `General` the global settings can be set. In the security section it's possible to define and modify the global security settings. These settings will be used for every user. -![General Settings](img/general/settings_security.png) +![General Settings]({/base}{/rootPath}/Modules/Admin/Docs/Help/img/general/settings_security.png) #### Password Regex @@ -80,13 +80,13 @@ In the logging section the logging settings can be defined. These settings don't **Recommended:** `active and default path` -![General Settings](img/general/settings_logging.png) +![General Settings]({/base}{/rootPath}/Modules/Admin/Docs/Help/img/general/settings_logging.png) ## Localization In the localization tab it's possible to define the default localization settings. Be aware that users may have localization settings different from the default settings. These localization settings are only important to provide a fallback if the user localization settings are not working. -![Localization Settings](img/general/settings_localization.png) +![Localization Settings]({/base}{/rootPath}/Modules/Admin/Docs/Help/img/general/settings_localization.png) ### Defaults diff --git a/Docs/Help/en/table_of_contents.md b/Docs/Help/en/table_of_contents.md new file mode 100644 index 0000000..e174f36 --- /dev/null +++ b/Docs/Help/en/table_of_contents.md @@ -0,0 +1,5 @@ +# Table of Contents + +* [Settings]({%}&page=settings) +* [Accounts]({%}&page=accounts) +* [Groups]({%}&page=groups) diff --git a/Docs/Help/img/accounts/accounts_general.png b/Docs/Help/img/accounts/accounts_general.png new file mode 100644 index 0000000000000000000000000000000000000000..f5b1668c12527cd8fe9378dd1713964e27b6547c GIT binary patch literal 20700 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 'Profile', 'RAddress' => 'Remote Address', 'ReCache' => 'Re-Cache', + 'Reset' => 'Reset', 'Running' => 'Running', 'Short' => 'Short', 'Sea' => 'Sea', diff --git a/Theme/Backend/accounts-single.tpl.php b/Theme/Backend/accounts-single.tpl.php index 057b51d..513af5c 100644 --- a/Theme/Backend/accounts-single.tpl.php +++ b/Theme/Backend/accounts-single.tpl.php @@ -52,7 +52,7 @@ echo $this->getData('nav')->render(); ?> - +
or
diff --git a/Theme/Backend/modules-list.tpl.php b/Theme/Backend/modules-list.tpl.php index 0eac27c..b23b01c 100644 --- a/Theme/Backend/modules-list.tpl.php +++ b/Theme/Backend/modules-list.tpl.php @@ -41,12 +41,12 @@ $installed = $this->app->moduleManager->getInstalledModules(); printHtml($module['name']['id']); ?> printHtml($module['name']['external']); ?> printHtml($module['version']); ?> - getHtml('Active')); - elseif (\in_array($module['name']['internal'], $installed)) - echo strtolower($this->getHtml('Inactive')); + getHtml('Active')); + elseif (isset($installed[$module['name']['internal']])) + echo \mb_strtolower($this->getHtml('Inactive')); else - echo strtolower($this->getHtml('Available')); ?> + echo \mb_strtolower($this->getHtml('Available')); ?> getHtml('Empty', 0, 0); ?>