WebMail Pro 8 documentation

Advanced configuration

Introduction

Admin interface of WebMail Pro 8 allows for setting primary configuration options. Advanced configuration is done via editing configuration files. Due to modular structure of the product, settings are stored in main configuration file data/settings/config.json and in configuration file of each specific module, data/settings/modules/MODULENAME.config.json file.

Main config.json file

Parameter Type Example Description
SiteName string AfterLogic Title that will be shown in browser's header
LicenseKey string License key is supplied here
AdminLogin string superadmin Administrative login
AdminPassword string Administrative password (empty by default)
AdminLanguage string English Admin interface language
DBType spec MySQL Database engine used. Currently, only MySQL is supported
DBPrefix string au_ Prefix used for database tables' names (empty by default)
DBHost string 127.0.0.1 Denotes hostname or socket path used for connecting to SQL database
DBName string The name of database in SQL server used by WebMail Pro 8
DBLogin string root Login for SQL user
DBPassword string Password to access SQL database
UseSlaveConnection bool false These parameters refer to separate read/write access to the database. When UseSlaveConnection is enabled, the first set of credentials will be used to write to the database while Slave credentials - to read from it
DBSlaveHost string 127.0.0.1
DBSlaveName string
DBSlaveLogin string root
DBSlavePassword string
DBUseExplain bool false Use EXPLAIN in SQL queries
DBUseExplainExtended bool false Use Extended EXPLAIN
DBLogQueryParams bool false If enabled, parameters values will be recorded in the logs
DBDebugBacktraceLimit bool false this parameter can be used to limit the number of stack frames returned
EnableLogging bool false Activates debug logging
EnableEventLogging bool false Activates user activity logging
LoggingLevel spec Full For debug logs, verbosity level can be set to Full, Warning or Error
LogFileName string log-{Y-m-d}.txt Denotes log filename pattern
LogCustomFullPath string Allows for overriding log files location
LogPostView string Determines whether to log full POST data or just key names
EnableMultiChannel bool false This setting and next two are reserved for Aurora Corporate
EnableMultiTenant bool false
TenantGlobalCapa string
AllowThumbnail bool true If disabled, image thumbnails will not be generated
ThumbnailMaxFileSizeMb int 5 Denotes a max filesize of images thumbnails are generated for
AppCookiePath string / Allows for overriding path parameter for cookies
CacheCtrl bool true Enable caching temporary files
CacheLangs bool true Enable caching language files
CacheTemplates bool true Enable caching templates
DisplayServerErrorInformation bool true If enabled, error messages will include texts returned from the server
RedirectToHttps bool false If enabled, users will automatically be redirected from HTTP to HTTPS
SocketConnectTimeoutSeconds int 20 Socket connection timeout limit (in seconds)
SocketGetTimeoutSeconds int 20 Socket stream access timeout (in seconds)
SocketVerifySsl bool false Enables SSL certificate checks
UseAppMinJs bool true Enables loading minified JS files (default behavior)
XFrameOptions string If set to SAMEORIGIN, disallows embedding product interface into IFrame, see Preventing clickjacking attacks with X-Frame-Options header documentation page for details.
RemoveOldLogs bool true If enabled, logs older than 1 day are automatically removed

CoreWebclient.config.json file

Parameter Type Example Description
AllowChangeSettings bool false If enabled, users are allowed to change interface settings
AllowDesktopNotifications bool false Enabling desktop notifications
AllowIosProfile bool false Along with SyncIosAfterLogin, activates prompt for getting iOS profile after logging in
AllowMobile bool false Enabling mobile-friendly layout automatically when logging in from iOS or Android smartphone
AllowPrefetch bool false If enabled, message bodies are fetched in background, to speed up displaying a message once it's selected
AttachmentSizeLimit int 0 Max size of attachments allowed to add, 0 for unlimited
AutoRefreshIntervalMinutes int 1 Refresh rate for mail and other screens
CustomLogoutUrl string If specified, users will be redirected to page with this URL after logging out
EntryModule string mail Default screen (see next setting)
HeaderModulesOrder array mail, contacts List of screens in the order they're displayed
LanguageNames array العربية, Български, 中文(简体), .... tiếng Việt Denotes native names for languages
ShowQuotaBar bool false If enabled, users will be able to see their email account quota and space used (assuming IMAP server returns quota information)
Theme string Default Skin name
ThemeList array Default, DeepForest, Funny List of skins offered

Core.config.json file

Parameter Type Example Description
AllowPostLogin bool false Enables sending login credentials via POST
CsrfTokenProtection bool false Enables CSRF protection implemented via a special token used
UserSelectsDateFormat bool false Allows user to select date format
DateFormat spec DD/MM/YYYY Date format used by default
DateFormatList array DD/MM/YYYY, MM/DD/YYYY, DD Month YYYY List of date formats offered
GetAccountWithPassword bool false If enabled, getting account via API will return password as well
Language string English Default language
AutodetectLanguage bool false If enabled, language will be autodetected based on what language is used in user's web browser
PostLoginErrorRedirectUrl string ./ For logging in via POST, users will be redirected to this URL on failed login attempt
TimeFormat spec F24 Time format used by default
ProductName string Afterlogic WebMail Pro PHP Product name reported in admin interface

Mail.config.json file

Parameter Type Example Description
AllowAddAccounts bool false Activates "Add New Account" button in Email Accounts screen of Settings area
AllowAutosaveInDrafts bool false If enabled, message in Compose screen will be auto-saved periodically
AllowIdentities bool false Enables the use of identities
AllowFilters bool false ManageSieve-based filters
AllowForward bool false ManageSieve-based forwarding
AllowAutoresponder bool false ManageSieve-based autoresponders
AllowInsertImage bool false Activates the tool for inserting images into a message
AlwaysShowImagesInMessage bool false By default, external images are blocked for safety purposes, this setting disables the feature
AutoSaveIntervalSeconds int 60 Works together with AllowAutosaveInDrafts, denotes auto-save interval
DisplayInlineCss bool false If enabled, WebMail Pro 8 will attempt to display messages with inline CSS converted
ImageUploadSizeLimit int 0 Works together with AllowInsertImage, specifies max file size for images uploaded
MessageBodySizeLimit int 25000 Specifies max size of plain & html text bodies displayed
SaveRepliesToCurrFolder bool false If enabled, improves message threading by saving replies to current folder
UseDateFromHeaders bool false By default, message date is retrieved from internal messages information on IMAP, this setting forces displaying message date the way it's shown in Date headers
UseSortImapForDateMode bool false By default, emails are sorted by the order they were added in the folder. This setting forces sorting messages by date when they were received by the mail server
XMailerValue string AfterLogic webmail client Value used in X-Mailer header in mails sent from WebMail Pro 8
ForwardedFlagName string $Forwarded System name for Forwarded flag on IMAP. Shouldn't be edited unless IMAP server you use utilizes a different name
AllowNewUsersRegister bool false Legacy setting superseded by AutocreateMailAccountOnNewUserFirstLogin (see below)
PreferStarttls bool false If enabled, WebMail Pro 8 will attempt to connect to mail server over STARTTLS if server supports it
ExternalHostNameOfLocalImap string Value which should be used for external clients connecting to IMAP instead of localhost or similar one
ExternalHostNameOfLocalSmtp string Value which should be used for external clients connecting to SMTP instead of localhost or similar one
AutocreateMailAccount OnNewUserFirstLogin bool false If enabled, users will have their account created in the database on first successful IMAP authentication in WebMail Pro 8
SieveUseStarttls bool false If enabled, WebMail Pro 8 will access ManageSieve over STARTTLS
DisableStarttlsForLocalhost bool false If set to true, STARTTLS access will only be used for remote hosts but not for localhost
XOriginatingIP bool false If set to true, outgoing mail messages will have X-Originating-IP header with sender's IP address there (it's about actual IP of user, not the WebMail installation IP).

MailWebclient.config.json file

Parameter Type Example Description
AllowAppRegisterMailto bool false If enabled, users will be able to set WebMail Pro 8 as an application for handling "mailto:" links
AllowChangeInputDirection bool false Allows for switching between LeftToRight and RightToLeft input directions
AllowSpamFolder bool false Adds Spam folder to the list of special folders and "Move to spam" button to toolbar
AllowAddNewFolder OnMainScreen bool false Adds "New Folder" button in addition to "New Message" on main screen
ComposeToolbarOrder array back, send, save, importance, MailSensitivity, confirmation, OpenPgp List of tools in Compose toolbar
DefaultFontName string Tahoma Default font name used for composing mail
DefaultFontSize int 3 Default font size used for composing mail. Supported values: 2, 3, 5, 7. Default value is 3 which corresponds to 16px, 2 is 13px
JoinReplyPrefixes bool false If enabled, subject prefixes like "Re: Re: Re:" will be joined together like "Re[3]:"
MailsPerPage int 20 Number of email messages displayed on a page
MaxMessagesBodies SizeToPrefetch int 50000 Works together with AllowPrefetch in CoreWebclient.config.json file, defines max amount of message bodies fetched in one request
ShowEmailAsTabName bool false If enabled, email address will be shown instead of Mail screen name

StandardLoginFormWebclient.config.json

Parameter Type Example Description
CustomLoginUrl string If specified, users which aren't logged in will be redirected to this URL instead of login form
InfoText string Arbitrary HTML text shown on login page under all the buttons
BottomInfoHtmlText string Arbitrary HTML text shown at the bottom of login page, by default it holds "Powered by WebMail Pro 8" text
AllowChangeLanguage bool false Allows user to change interface language on login
UseDropdownLanguagesView bool false Works together with AllowChangeLanguage; if enabled, languages are selected with a dropdown; otherwise, list of language is presented as a table with national flags