Customize User Interface
User Permissions control available list of Actions
While you can contribute your own navigation bar actions, its also possible to control the available navigation bar action by adding or removing appropriate permissions for the available user roles.
For example if the INVITE_SUPPLIER permission is revoked, the appropriate action in the navigation bar will not be available anymore for the portal admin. To configure the list of available permissisions for the PORTAL_ADMIN_ROLE or the SUPPLIER_ADMIN_ROLE, there are two configuration properties within your <INSTALLATION ROOT>/configuration/configuration.properties file.
permissions.portalAdmin=INVITE_SUPPLIER,VIEW_IMPORT_MANAGER,MANAGE_SUPPLIER_USER,MANAGE_SUPPLIER
permissions.supplierAdmin=START_DRY_RUN,MANAGE_SUPPLIER_USER
All available Permissons can be found in the following table:
Permission |
Desciption |
INVITE_SUPPLIER
|
Will control the navigation bar action "Invite suppliers" to start the supplier invitation workflow. (Default: only portal admins are able to invite suppliers ) |
VIEW_IMPORT_MANAGER
|
Will control the navigation bar action "Manage imports" to show the Import Overview. (Default: only portal admins are able to invite suppliers ) |
MANAGE_SUPPLIER_USER |
Will control the "Create new User" Link within the Supplier Details, as well as all actions which will be corresponding to the action of creating new users like resending the invitation mail, activating or deactivating users. (Default: portal admins and supplier admins are able to create new users. ) |
MANAGE_SUPPLIER |
Will control the actions to activate or deactivate an supplier organizations. |
START_DRY_RUN |
Will control the navigation bar action "Upload data to a catalog" which start give's the user the possiblity to start a dry run. (Default: Only supplier admins are able to start dry run imports. ) |
MANAGE_BROKER_USER |
Provides access to Broker user administration UI, e.g. for catalog assignment. |
Supplier Portal as embedded application
There may be scenarios where Supplier Portal should be embedded into other web applications. This raises two requirements:
it is desired to display only the main part of the application showing all the data and actions necessary to execute all tasks.
Navigation bars and header containing banners, login information etc. are not wanted.it should still be possible to navigate to the several places to do certain tasks, like going to the supplier list overview, invitation, upload data etc.
This should be possible by providing additional url parameters.
Display as embedded application
Hiding navigation bar and application header can simply be done by passing the url parameter embedded with the value true to the Supplier Portal url (false is default).
F.e. http://localhost:9090/hsx/html/Hsp.html?embedded=true
Initialize with a specific locale
Users can switch their UI language on the login page. For initialization purposes it is also possible to use a URL parameter. This also works for application deep links (see next paragraph). Example:
http://localhost:9090/hsx/html/Hsp.html?locale=de_DE
The locale format is equivalent to the String representation of java.util.Locale.
Deep links to the application
Without the navigation bar it should still be possible to reach all areas of the application. Pages displayed in the main area are in the following termed as places.
To reach a certain place the identifier of the place is added and the end of the url beginning with a # symbol. Parameters for the place are followed behind a : symbol.
The syntax looks like this: http://localhost:9090/hsx/html/Hsp.html#{placeIdentifier}:{parameters}. Places parameters follow the normal url parameter syntax: parameterKey1=value1¶meterKey2=value2...
Note that actions performed in the ui are always reflected in the url if it affects a certain place. F.e. opening the supplier details of a supplier in the suppliers list would change the url from http://localhost:9090/hsx/html/Hsp.html#suppliers to http://localhost:9090/hsx/html/Hsp.html#supplier:supplierId={id}.
Below is a full list of places that are currently available in the application, also containing all parameters.
Navigable Site |
Url |
Parameters |
Example |
Dashboard, default place after login |
#dashboard or nothing (because default) |
|
#dashboard:feedId=23 |
List of suppliers |
#suppliers |
- |
#suppliers |
Supplier details |
#supplier |
|
#supplier:supplierId=4 |
List of mappings |
#mappings |
- |
#mappings |
Mapping details |
#mapping |
|
#mapping:mappingId=5 |
Catalog details |
#catalog |
|
#catalog:catalogId=46 |
User details |
#user |
|
#user:userId=8 |
Invite suppliers |
#inviteSuppliers |
- |
#inviteSuppliers |
Upload data (test run) |
#upload |
|
#upload |
Edit catalog |
#editCatalog |
|
#editCatalog:catalogId=32 |
Manage imports |
#imports |
|
#imports |
Add custom pages to the support box
Available since 8.1.1.01
It is now possible to add up to 3 custom pages to the support box of the supplier portal.
In the directory <SUPPLIER_PORTAL_INSTALLATION_DIR>/tomcat/webapps/hsx/html there are 3 HTML-Pages named custom1.html to custom3.html which can be edited to the customer needs.
To add for example a link from the existing login page login.html to the new custom1.html page it is neccessary to add the custom html to the following div:
[...]
<
div
id
=
"hsx-page-navigation-all"
class
=
"hsx-page-navigation"
style
=
"display: none;"
>
<
span
id
=
"hsx-login-link"
><
a
href
=
"login.html"
id
=
"hsx-login-label"
>Log In</
a
> | </
span
>
<
span
id
=
"hsx-registration-link"
><
a
id
=
"hsx-registration-label"
href
=
"Registration.html"
>Register</
a
> | </
span
>
<
span
id
=
"hsx-terms-link"
><
a
id
=
"hsx-terms-label"
href
=
"terms.html"
>Terms & Conditions</
a
> | </
span
>
<
span
id
=
"hsx-imprint-link"
><
a
id
=
"hsx-imprint-label"
href
=
"imprint.html"
>Legal disclaimer</
a
></
span
>
<!-- new code -->
<
span
id
=
"hsx-custom1-link"
><
a
id
=
"hsx-custom1-label"
href
=
"custom1.html"
>Custom Page Name</
a
></
span
>
</
div
>
[...]
This has to be done on every html page where the link to the custom page should be shown.
To make the link name language specific it is necessary to change the SupportBoxMessages_<LOCALE>.properties in every desired language located here <SUPPLIER_PORTAL_INSTALLATION_DIR>\tomcat\webapps\hsx\WEB-INF\classes\com\heiler\hsp\ui\app\client
As we have added the custom1.html we have to edit the property hsx-custom1-label to the desired name.
[...]
hsx-custom1
-label
=<Custom Name of the Page>
[...]
After editing the html and properties files a restart of the supplier portal server is required.
If the changes are not visible the customer will have to clear his browser cache and hard reload the site.