Skip to content
Andreas Rudolph edited this page Mar 15, 2021 · 22 revisions

This page describes how to customize the application for yourself.

Customer Support Tool

Any customization of Customer Support Tool (besides the source code itself) can be done through the files in the Customer/src/main/resources/de/openindex/support/customer/resources directory.

The following screenshot shows an example for a branded Customer Support Tool with custom default settings, custom translations and a company logo on the sidebar:

branded customer window

Application settings

All application settings are stored in the application.properties file. You may provide customization for different languages e.g. by creating a application_de.properties file (for German language). If a value in application_de.properties is not present, the program will use the default value from application.properties.

Key Description
name internal name of the application; used to create the work directory in users home directory
title readable title of the application
version version number of the application; automatically replaced during the build process
website.author website of the author / company; used in the about dialog
website.source website of the source code; used in the about dialog
connectionSettingsVisible hide connection settings by default on application startup (host, port & SSL)
connectionSettingsEditable allow the customer the change the connection settings (host, port & SSL)
permanentOptions permanently save and load application settings in users home directory
customTrustStore allow the user to place its own truststore into his home directory
default.host default hostname used in the application
default.port default port number used in the application
default.ssl enable / disable SSL encryption by default in the application

Besides these there are certain settings starting with i18n.. These key may be used to provide translations of the application in other languages. See application_de.properties as an example for a German translation.

Application icon

The application icon is loaded from application.png and might be replaced with your own customized icon.

Other icons

Other icons used by the application are stored in the icon_*.png files within the resources directory. These might be replaced by your own customized icons. Make sure to use an image size of 16x16 pixels.

Sidebar images

Images placed on the left side of the application windows are stored in sidebar.png and sidebar_*.png within the resources directory. These might be replaced by your own customized images. The width of the sidebar in the application windows is automatically calculated from the image width.

Branding overlay to the sidebar

If a file called branding.png is present in the resources directory, it is painted over the sidebar on the bottom. This image can be used to integrate a company logo into the application. The branding image should have the same width as the sidebar image itself.

According to the current language you might provide different branding images - e.g. a file called branding_de.jpg would be used, if the application is loaded in German language.

About the application

The about.html file contains the application information shown in the about dialog. You might translate the file into other languages and append the language code to the file name like about_de.html for the German translation.

The file can be formatted freely according to the HTML 3.2 standard.

The application title and version numbers are automatically replaced in this file during the build process.

Notice: If you modify the application information make sure, that notes about the authors and licenses are kept intact.

Custom truststore

The application provides its default SSL truststore in the truststore.jks file. The password to access the truststore is stored in the truststore.jks.txt file. This truststore is used in conjunction with the custom keystore, that is integrated into Staff Support Tool.

Staff Support Tool

Any customization of Staff Support Tool (besides the source code itself) can be done through the files in the Staff/src/main/resources/de/openindex/support/staff/resources directory.

The following screenshot shows an example for a branded Staff Support Tool with a custom startup image:

branded staff window

Application settings

All application settings are stored in the application.properties file. You may provide customization for different languages e.g. by creating a application_de.properties file (for German language). If a value in application_de.properties is not present, the program will use the default value from application.properties.

Key Description
name internal name of the application; used to create the work directory in users home directory
title readable title of the application
version version number of the application; automatically replaced during the build process
website.author website of the author / company; used in the about dialog
website.source website of the source code; used in the about dialog
permanentOptions permanently save and load application settings in users home directory
customKeyStore allow the user to place its own keystore into his home directory
sshHostKeyCheck enable verification of host keys, when SSH connections are established
default.localPort default local port number used in the application
default.ssh enable / disable SSH tunneling by default in the application
default.sshHost default SSH hostname in the application
default.sshKey default path to the SSH key in the application
default.sshPort default SSH port number in the application
default.sshKeyAuth enable / disable SSH public key authentication by default in the application
default.sshRemotePort default SSH remote port number in the application
default.sshUser default SSH user name in the application
default.ssl enable / disable SSL encryption by default in the application

Besides these there are certain settings starting with i18n.. These key may be used to provide translations of the application in other languages. See application_de.properties as an example for a German translation.

Application icon

The application icon is loaded from application.png and might be replaced with your own customized icon.

Other icons

Other icons used by the application are stored in the icon_*.png files within the resources directory. These might be replaced by your own customized icons. Make sure to use an image size of 16x16 pixels.

Sidebar images

Images placed on the left side of the application windows are stored in the sidebar_*.png files within the resources directory. These might be replaced by your own customized images. The width of the sidebar in the application windows is automatically calculated from the image width.

Branding overlay to the sidebar

If a file called branding.png is present in the resources directory, it is painted over the sidebar on the bottom. This image can be used to integrate a company logo into the application. The branding image should have the same width as the sidebar image itself.

According to the current language you might provide different branding images - e.g. a file called branding_de.jpg would be used, if the application is loaded in German language.

Custom startup image

If a file called startup.png is present in the resources directory, it is painted over the black background on application startup. If this file is not present, the application.png file is used instead.

About the application

The about.html file contains the application information shown in the about dialog. You might translate the file into other languages and append the language code to the file name like about_de.html for the German translation.

The file can be formatted freely according to the HTML 3.2 standard.

The application title and version numbers are automatically replaced in this file during the build process.

Notice: If you modify the application information make sure, that notes about the authors and licenses are kept intact.

Custom keystore

The application provides its default SSL keystore in the keystore.jks file. The password to access the keystore is stored in the keystore.jks.txt file. This keystore is used in conjunction with the custom truststore, that is integrated into Customer Support Tool.

Customize keystore & truststore for SSL encryption

If you like to provide a customized application bundle, it is strongly recommended to generate your own keystore & truststore. You can create the required files by starting the script share/ssl/init.ssh. The script will generate a customized keystore.jks / keystore.jks.txt and truststore.jks / truststore.jks.txt, which you can place into the resources folder of Customer Support Tool and Staff Support Tool.