Customization is available for the Mail Express web pages and for the various email notifications that Mail Express sends. You can modify all interfaces that have Globalscape or Mail Express branding, including Web portal headers, footers, and logos, and Mail Express-added email content. (The Globalscape Professional Services team provides custom branding services.) All customizations are file-based; that is, you can create customized text and image files and place them in a specified location. If any customization contains invalid variables or formatting, the default notifications are used and an error is displayed in the Audit Event History report to inform you of the issue. (The Audit Event History report will display a Template Customization error.)
Mail Express uses the Freemarker Template Engine to handle processing the template files (.FTL). Refer to the Freemarker website for more information about editing Freemarker templates. |
Customizations are performed by editing the templates located in <Installation Directory>\webapps\ROOT\WEB-INF\template. The Mail Express Server service does not require a restart for changes to the templates to take effect.
Each template includes minimal Globalscape branding as a footer on each web page and email.
Attachment email headers read, "The following attachments have been securely sent to you and can be downloaded until <expiration_date>."
The time and date format for all notifications is Month Day, Year HH:MM:SS AM/PM. For example: June 20, 2013 3:11:44 PM CDT. The time is the local server time.
The default welcome text on any portal page is "Welcome to the Mail Express <name> Portal" where <name> is File Dropoff, Internal, or Pickup.
The default welcome text on any login page is "Welcome to the Mail Express <name> Login Page" where <name> is Administration, File Dropoff, or Internal.
Customized files in the \template\ directory are automatically backed up during reinstall or upgrade. You must migrate your customizations to the new templates rather than simply copying your old templates into the directory, because the new templates may have functionality changes.
For example, if you wanted to include a custom URL that recipients could click in the email that Mail Express sends to them so that they can access your custom Drop-Off portal to return files, you would edit the addinsendtemplate.html.ftl template to include the custom link:
<p>
<#if packageLinkOnly>
<a href="${packageLink}">Download <#if attachments?size == 1>attachment<#else>attachments</#if></a> Please use this customized Mail Express <a href="https://mesrv/dropoff/to/${sender.utfText}">Drop-Off</a> link to return any files to me.
<#else>
<span style="font-size:11px"><i>Additional download options are available at the <a href="${packageLink}">Pick-Up Portal</a>. Please use this customized Mail Express <a href="https://mesrv/dropoff/to/${sender.utfText}">Drop-Off</a> link to return any files to me.</i></span>
</#if>
</p>
The text in red was added to the existing text in the template.
Mail Express uses a variety of templates to build the various emails that it sends. You can customize the text and some text attributes in the template.
The templates are purposefully very simple. The text of the email is editable. The email address and link are added with variables. (Be careful to not change any of the variables in angle brackets, <variable>, as that will prevent the email from functioning properly.)
Each of the emails is composed of the following template types:
<ID>.html.ftl is the template for the HTML-formatted version of the email that will be seen by recipients using HTML mode to view emails in their email client software.
<ID>.subject.ftl is the template for the subject line of the email
<ID>.text.ftl is the template for the text-formatted version of the email that will be seen by recipients using plain text to view emails in their email client software.
If you want HTML email recipients and plain-text email recipients to view the same message, you will have to edit both versions of the template. The subject template applies to both HTML and plain text.
Many templates use data in a common format. The properties of these structures are detailed in the table.
Structure |
Description |
Properties |
Actor |
Represents a user account |
|
Attachment |
Represents a file attachment to an email |
|
Problem |
Represents a system error |
|
AccountSummary |
Represents a user account from an invitation |
|
InviteSummary |
Represents an account invitation: who sent it, what was it called, and when it was sent |
|
EmailAddress |
Represents an RFC822 email address; e.g. [Joe Bloggs <joe.bloggs@example.com>]. In the example, "Joe Bloggs" is the "personal name" portion of the email address, and "joe.bloggs@example.com" is the "address" portion of the email address. |
|
FormatMethod |
A wrapper around the "java.lang.String.format(String format, Object… args)" method for execution within a template. |
Example execution: ${format("%s %s.", "Hello", "world")} |
Template Name |
Template Files |
Data Model |
Account activation
|
|
|
Account Appeal Link The email sent to users whose email requires verification for a given action. Such actions include requesting a password reset and new account creation (if email verification is required for newly created accounts). The email contains a link to complete the process. |
|
|
For password reset requests, this link takes you to the reset password page. Once the user changes the password, either by this link or by logging in and going to the change password page, the Password Changed template is used to format the email to notify the user of the change. |
||
Account Request The email sent to admin users detailing an account request. |
|
|
Download Notification Email The email sent to the original sender when the package has been downloaded by a recipient. |
|
|
External User Invitation The email automatically sent to newly created external users inviting them to use the Mail Express system. |
|
|
Package Upload Portal Send Notification The email sent to recipients of packages sent from the Package Upload Portal. |
|
|
Package Upload Send Confirmation The email confirmation sent to the sender detailing the transfer’s files, recipients. |
|
|
Package Upload URL The email sent via the Administration portal’s Drop-Off Settings page. Used to notify recipients of the Mail Express Server’s Package Upload Page URL. |
|
|
The email sent to users whose password has been changed via the change password link in the web portal. |
|
|
Store Quota Notification The email sent to admin users when the file store quota or database size quota has been reached. |
|
|
Test Email The test email send when using the test functionality on the Administration portal’s SMTP configuration page. |
|
none |
Undeliverable Notification The email sent to sender in the event that Mail Express was unable to deliver the message and the reason why; also whenever you receive a delivery status notification update from the mail server. |
|
|
Template Name |
Template Files |
Data Model |
Outlook Add-in Invitation Message The invitation message customized per recipient included in the account invitation email from the Outlook Add-In. |
|
|
Outlook Add-in Recipient Header The recipient header customized per recipient included in the email from the Outlook Add-In. |
|
|
Outlook Add-In Send Notification The email sent to recipients of packages sent from the Outlook Add-In.) |
|
|
The "minimal" templates below should all be used together to create a minimal email header. The "minimal" templates are installed in the <Installation Directory>\webapps\ROOT\WEB-INF\template\minimal templates\ folder.
To use a "minimal" template
Rename the standard template (e.g., addinsendtemplate.html.ftl to addinsendtemplate - original.html.ftl).
Copy the "minimal" template into the \template\ folder and then rename the "minimal" template to the original name (e.g., addinsendtemplate.html - minimal.ftl to addinsendtemplate.html.ftl).
To use a translated "minimal" template
(Refer to Localization and Language Support for more information about the localized templates.)
Copy the translated "minimal" template into the \template\ folder.
Rename the translated "minimal" template to the standard, translated name (e.g., addinsendtemplate.html – minimal_de.ftl to addinsendtemplate.html_de.ftl).
Repeat the procedure for each of the translated "minimal" templates.
Each of the renamed templates must be saved in the <Installation Directory>\webapps\ROOT\WEB-INF\template folder.
Template Name |
Template Files |
Data Model |
Package Upload Portal Send Notification - Minimal The email sent to recipients of packages sent from the Package Upload Portal. |
|
Refer to description of non-minimal templates above. |
Outlook Add-in Invitation Message - Minimal The invitation message customized per recipient included in the account invitation email from the Outlook Add-In. |
|
Refer to description of non-minimal templates above. |
Outlook Add-in Recipient Header - Minimal The recipient header customized per recipient included in the email from the Outlook Add-In. |
|
Refer to description of non-minimal templates above. |
Outlook Add-In Send Notification - Minimal The email sent to recipients of packages sent from the Outlook Add-In.) |
|
Refer to description of non-minimal templates above. |
Minimal header example:
There are six basic types of web portal customizations, described in "1. Template" below.
Each page has a customizable header at the top of the page and footer at the bottom of the page.
In one case, we allow the page's content to be customized.
Pages can be further specialized with an enumerated argument.
Pages can be localized based on the web-viewer (i.e., the computer's language setting).
Only the parts of the Web portals mentioned below are customizable.
The template file's name must have the following format:
custompage[template].[parameter].[location].html_[language]_[country].ftl
Template:
Account: self-maintenance pages; specialized by "Account template customization"
Login: login page; specialized by "Portal type"
Home: portal disambiguation page
Portal: landing page; specialized by "Portal type"
TermsOfService: provides the Terms of Service that external users must agree to before using the system.
Misc: (miscellaneous) every other page; specialized by "Portal type"
Default: global "catch-all" customizations
Parameter (portal or account page changes):
Admin
External
Internal
Pickup
PasswordChange
RequestAccount
LostPassword
Location:
Header
Footer (The footer’s data-model only contains specialization parameters of portal-type.)
Content
The default templates are for "en_US."
For details of country-specific codes, refer to the ISO 3166 code lists.
For details of language-specific ISO 639-1 codes, refer to the Codes for the Representation of Names of Languages
Language |
ISO 639-1 code |
English |
en |
German |
gem |
Spanish |
spa |
French |
fr |
Chinese |
zh |
Turkish |
tr |
Italian |
it |
Portuguese |
pt |
Data model
path: String; path to load image resources
parameter: String; specialization argument
template: String; type of customized template
format: [freemarker.template.TemplateMethodModel]; hook into the String.format(String, Object, …) method
In Mail Express v4.0.1, you can require external users to accept a Terms of Service agreement before accessing the external portals. An additional Freemarker template is provided to customize the Terms of Service page (custompageTermsOfService.content.html.ftl).
On the General User Settings page, the administrator must select the Require external users to agree to Terms of Service check box to display the Terms of Service. Their agreement is stored in the Mail Express database, and the account will not be presented with the agreement again.
Suppose someone was trying to sign in to the Administrator portal. Mail Express would look for a customized template to render both the header and footer of that page. For the header, below is the order the files would be considered (the footer is similarly processed). Failing to find the first one, Mail Express would look for the second one. Failing that, it would look for the next one, and so on. If no custom header file is found, Mail Express uses the default.
custompagelogin.admin.header.html_en_US.ftl
custompagelogin.admin.header.html_en.ftl
custompagelogin.admin.header.html.ftl
custompagelogin.header.html_en_US.ftl
custompagelogin.header.html_en.ftl
custompagelogin.header.html.ftl
custompagedefault.header.html_en_US.ftl
custompagedefault.header.html_en.ftl
custompagedefault.header.html.ftl
The same data model is used for any template that is found. Administrators can choose any number of files at the appropriate level to meet their specific needs. Footers are processed similarly to headers; the only notable difference is that the footer’s data model only contains specialization parameters of portal-type.
Localization depends on the templates available and the language setting on the client computer. (That is, if you define a Japanese template, but the client computer does not have the Japanese language pack installed, the client computer will not display the Japanese template correctly.)
Template Files |
Data Model |
sendattachmenttemplate.html.ftl The Package Recipient Notification emails that are sent to recipients after a package is sent via either the Outlook Plug-in or the Package Upload Portal will contain a small attached html file. By default this file will contain the list of links to download the files. This template allows for customization of this attached html file. |
|
krb5.conf.ftl Mainly for debugging purposes; allows customization of the Kerberos configuration file used for Kerberos authentication. |
|
Date Format
You can specify the date and time format within the templates that use dates. For example, in the variable ${expiration?datetime?string.long}, you would change long to short, medium, or full:
short—e.g., 11/20/10 12:45 PM
medium—Nov 20, 2010
long—November 20, 2010
full—Wednesday, November 20, 2010
Branding templates are available in the C:\Program Files\Globalscape\Mail Express\webapps\ROOT\WEB-INF\template directory for adding your own branding to email notifications.
Template Name |
Template Files |
Editable Content |
Package Upload Portal Send Notification Branding |
|
${email} <div style="font-size:9px;">Powered by Globalscape® Mail Express™ </div> |
|
${email} Powered by Globalscape\u00AE Mail Express\u2122 |
|
Outlook Add-in Send Notification Branding |
|
<div style="font-family:Arial;border:solid 1px #2E62AA;padding:.5em .2em .2em .5em;font-size:13px;margin-bottom:0.8em;"> ${email} <div style="font-size:9px;">Powered by Globalscape® Mail Express™</div> </div> |
|
${email} Powered by Globalscape\u00AE Mail Express\u2122 |
The images subdirectory (by default, <Installation Directory>\webapps\ROOT\WEB-INF\template\images) contains the Mail Express logo and others. You can "brand" Mail Express with your own graphics by overwriting the existing file. HeaderBar.header_logo.png is the header image for all Mail Express pages.
To replace the Mail Express logo with your own
Make a copy of HeaderBar.header_logo.png and then paste it in the same directory. It will be saved as Copy of HeaderBar.header_logo.png.
Create/copy/edit your own logo, making sure it has the same dimensions (310 x 32 pixels) by cropping or resizing it, or use the HeaderBar.header_logo.png as a "template" and paste/create your logo on top of it in your graphic editor.
Save the new logo in the image subdirectory, named HeaderBar.header_logo.png overwriting the existing logo. (You will still have Copy of HeaderBar.header_logo.png if you decide to revert to the original.) Mail Express Server will display your new logo in place of the Mail Express logo.
If you need to go back to the original logo, just rename or delete your logo from the images directory, then rename the original back to HeaderBar.header_logo.png.
It is not necessary to reboot the server to see your changes.