# Templates & Themes # Manage Templates in Eenos How to create service template files and configurations in the Eenos hosting control panel. # New Page # Introduction ### Getting Start With Eenos Template Customization The Eenos control panel is fully customizable. Eenos uses two types of template languages: #### The Mako Template The Python Mako template is an easy template language. To study more about the Mako template language please read from the website [https://www.makotemplates.org/](https://www.makotemplates.org/)

If a template file in Eenos doesn't have an extension it will be a Mako template file

#### The Jinja2 Template This is another famous Python template language. Eenos uses the Jinja2 template languages for some of its configurations. To read more about the Jinja template, please read the documentation from [https://jinja.palletsprojects.com/](https://jinja.palletsprojects.com/)

If a template file has an extension with **.jinja**, it will be a Jinja2 template file

#### Location of Templates The template files in Eenos are located in the folder **/usr/local/eenos/templates/**

Do not edit the default templates provided by Eenos, which will be updated during software update time. Always make a custom template by copying the default templates and edit it.

Always create a custom template folder named **custom** inside every template default folder and place the custom templates inside the new custom subfolder.

#### Template Priority You can use the same name of a default template as a custom template. If there is a custom template with the same name as the default template, the custom template will be used. If there is a a user template with the same name as the default or custom template, then the user template will be used. # Alerts Templates ### Eenos Alert Email Templates These templates are used to send alert emails from the Eenos control panel. These templates are html files with[ **Python Mako**](https://www.makotemplates.org/ " Python Mako") language. **Template Language**: Mako #### Template Types and Locations
**Template Type****Location****Description**
Global Template /usr/local/eenos/templates/alertsThe default templates
Global Custom Template /usr/local/eenos/templates/alerts/custom Your custom templates
User TemplateNoneNo user templates are available
To create a custom template, copy the templates to the custom template location and modify it. # ClamAV Templates ### Eenos ClamAv Settings Templates These templates are used to customize clamav server settings in the Eenos control panel. . **Template Language**: [ **Jinja**](https://jinja.palletsprojects.com/ "Python Jinja") **Template file name:** clamd. conf.jinja #### Template Types and Locations
**Template Type****Location****Description**
Global Template /usr/local/eenos/templates/clamavThe default templates
Global Custom Template /usr/local/eenos/templates/clamav/custom Your custom templates
User TemplateNoneNo user templates are available
To create a custom template, copy the templates to the custom template location and modify it. # DNS Templates ### DNS Zone Templates These templates are used to create DNZ Zone files in the Eenos control panel. **Template Language**: Mako #### Template Types and Locations
**Template Type****Location****Description**
Global Templates /usr/local/eenos/templates/dnsThe default templates
Global Custom Template /usr/local/eenos/templates/dns/custom Your custom templates
User Template/var/eenos/userdata/**USER**/templates/dnsUser-specific DNS template, where USER is Eenso user name
To create a custom template, copy the templates to the custom template location and modify it. # DoveCot Templates ### Dovecot Settings Templates These templates are used to customize Dovecot server settings in the Eenos control panel. **Template Language**: [ **Jinja**](https://jinja.palletsprojects.com/ "Python Jinja") #### Template Types and Locations
**Template Type****Location****Description**
Global Template /usr/local/eenos/templates/dovecotThe default templates
Global Custom Template /usr/local/eenos/templates/dovecot/custom Your custom templates
User TemplateNoneNo user templates are available
To create a custom template, copy the templates to the custom template location and modify it. # Exim Templates ### Exim Server Settings Templates These templates are used to customize Email SMTP server settings in the Eenos control panel. **Template Language**: [ **Jinja**](https://jinja.palletsprojects.com/ "Python Jinja") #### Template Types and Locations
**Template Type****Location****Description**
Global Template /usr/local/eenos/templates/eximThe default templates
Global Custom Template /usr/local/eenos/templates/exim/custom Your custom templates
User TemplateNoneNo user templates are available
To create a custom template, copy the templates to the custom template location and modify it. # Mailman3 Templates ### Mailman3 Settings Templates These templates are used to customize Mailman3 server settings in the Eenos control panel. **Template Language**: [ **Jinja**](https://jinja.palletsprojects.com/ "Python Jinja") **Template file name:** mailman.cfg.jinja #### Template Types and Locations
**Template Type****Location****Description**
Global Template /usr/local/eenos/templates/mailmanThe default templates
Global Custom Template /usr/local/eenos/templates/mailman/custom Your custom templates
User TemplateNoneNo user templates are available
To create a custom template, copy the templates to the custom template location and modify it. # pure-ftpd Templates ### Pure-FTPD Settings Templates These templates are used to customize pure-ftpd server settings in the Eenos control panel. **Template Language**: Mako **Template file name:** pure-ftpd.conf #### Template Types and Locations
**Template Type****Location****Description**
Global Template /usr/local/eenos/templates/pureftpdThe default templates
Global Custom Template /usr/local/eenos/templates/pureftpd/custom Your custom templates
User TemplateNoneNo user templates are available
To create a custom template, copy the templates to the custom template location and modify it. # SpamAssassin Templates ### Eenos SpamAssassin Settings Templates These templates are used to customize spamd server settings in the Eenos control panel. **Template Language**: [ **Jinja**](https://jinja.palletsprojects.com/ "Python Jinja") **Template file name:** local.cf.jinja #### Template Types and Locations
**Template Type****Location****Description**
Global Template /usr/local/eenos/templates/spamassassin/The default templates
Global Custom Template /usr/local/eenos/templates/spamassassin/custom Your custom templates
User TemplateNoneNo user templates are available
To create a custom template, copy the templates to the custom template location and modify it. # AppTemplates ( Nginx , HTTPD, OpenliteSpeed ) ### Eenos App templates These templates are used to create customized virtual host settings for your website based on the apps hosted. If you have a WordPress website with some custom settings that are required to be configured on the server side, you can create a custom vhost template for that website. Please remember the create the app template for the webserver you are using. You can create and manage App templates for the web server Apache HTTPD, Nginx, and OpenLiteSpeed **Template Language**: Mako #### Apache HTTPD Template Locations
**Template Type****Location****Description**
Global Template /usr/local/eenos/templates/webserver/httpdThe default templates
Global Custom Template /usr/local/eenos/templates/webserver/httpd/custom Your custom templates
User Template/var/eenos/userdata/USER/templates/httpd/For the Eenos user USER
#### Nginx Template Locations
**Template Type****Location****Description**
Global Template/usr/local/eenos/templates/webserver/nginxThe default templates
Global Custom Template /usr/local/eenos/templates/webserver/nginx/custom Your custom templates
User Template/var/eenos/userdata/USER/templates/nginx/For the Eenos user USER
#### OpenLiteSpeed Template Locations
**Template Type****Location****Description**
Global Template/usr/local/eenos/templates/webserver/openlitespeed/The default templates
Global Custom Template /usr/local/eenos/templates/webserver/openlitespeed/custom/ Your custom templates
User Template/var/eenos/userdata/USER/templates/openlitespeed/For the Eenos user USER

The App name is the template file name.

If the template has the same name as the Global template, Global custom template, and User template, then the user template will have the higher priority

Don't delete the default templates provided by Eenos.

To create a custom template, copy the templates to the custom template location and modify it. # PHP-FPM Templates ### PHP FPM Templates These templates are used to customize php-fpm settings for websites on the server. **Template Language**: [ ](https://jinja.palletsprojects.com/ "Python Jinja")Mako **Template file name:** default #### Template Types and Locations
**Template Type****Location****Description**
Global Template /usr/local/eenos/templates/webserver/fpm/The default templates
Global Custom Template/usr/local/eenos/templates/webserver/fpm/custom/ Your custom templates
User Template/var/eenos/userdata/USER/templates/fpm/DOMAINFor Eenos USER and DOMAIN
To create a custom template, copy the templates to the custom template location and modify it. # Themes in Eenos How to create user interface themes in the Eenos control panel. # New Page # Introduction ### Getting Started with themes Eenos control panel provides an easy method for creating your own theme for the Eenos control panel. The Eenos control panel user interface uses the Django Template Engine to create web interface themes. Please check the Django developer documentation to understand how the HTML theme files are generated and used with an application.

Eenos Currently supports customizing themes for **the User control panel (UAPP)** and **Reseller Control panel (RAPP)**

Eenos WAP interface doesn't provide an option to customize the theme at this moment, but if you know how to use Django you can do it by yourself.

Don't modify the themes provided by the system directly, which will be replaced during auto-update time.

Improper editing and customization may affect the proper working of the control panel.

# Create a User Control Panel Theme ### How to create a custom theme for UAPP? You can easily customize a theme for your Eenos end-user control panel. Let us create a new theme called **mytheme** as follows, #### Step 1: Copy the Theme file You may copy the default theme files as follows, ```bash cp -arf /usr/local/eenos/uapp/templates/default /usr/local/eenos/uapp/templates/mytheme ``` #### Step 2: Copy the Static File You may copy the following css and JS files too, ```bash cp -arf /usr/local/eenos/uapp/public/static/default /usr/local/eenos/uapp/public/static/mytheme ``` #### Step 3: Editing the new theme mytheme. Edit the theme files in **/usr/local/eenos/uapp/templates/mytheme** and upload all the custom static files to **/usr/local/eenos/uapp/public/static/mytheme** #### Step 4: Change the theme of an Eenos account Now we have a new theme named **mytheme**. You can change the theme of the hosting account from WAP. Do not edit the default theme directly, which will be auto-updated regularly. # Create a Reseller Control Panel Theme ### How to create a custom theme for RAPP? You can easily customize a theme for your Eenos reseller control panel. Let us create a new theme called **mytheme** as follows, #### Step 1: Copy the Theme file You may copy the default theme files as follows, ```bash cp -arf /usr/local/eenos/rapp/templates/default /usr/local/eenos/rapp/templates/mytheme ``` #### Step 2: Copy the Static File You may copy the following css and JS files too, ```bash cp -arf /usr/local/eenos/rapp/public/static/default /usr/local/eenos/rapp/public/static/mytheme ``` #### Step 3: Editing the new theme mytheme. Edit the theme files in **/usr/local/eenos/rapp/templates/mytheme** and upload all the custom static files to **/usr/local/eenos/rapp/public/static/mytheme** #### Step 4: Change the theme of the reseller account Now we have a new theme named **mytheme**. You can change the theme of the hosting account from WAP. Do not edit the default theme directly, which will be auto-updated regularly.