tbrehm
2006-02-16 e22f1ee5203faf0f33abf02b92cb0a0d3f30a801
Updates mail module
8 files copied
6 files deleted
5 files modified
98 files renamed
12 files added
1909 ■■■■■ changed files
config/exim4/exim4.conf.template 21 ●●●●● patch | view | raw | blame | history
interface/lib/classes/getconf.inc.php 43 ●●●●● patch | view | raw | blame | history
interface/lib/classes/ini_parser.inc.php 50 ●●●●● patch | view | raw | blame | history
interface/lib/classes/listform.inc.php 64 ●●●●● patch | view | raw | blame | history
interface/lib/classes/tform.inc.php 4 ●●●● patch | view | raw | blame | history
interface/lib/config.inc.php 8 ●●●● patch | view | raw | blame | history
interface/sql/ispconfig3db.sql 529 ●●●●● patch | view | raw | blame | history
interface/web/mail/form/mail_alias.tform.php 3 ●●●●● patch | view | raw | blame | history
interface/web/mail/form/mail_blacklist.tform.php 8 ●●●●● patch | view | raw | blame | history
interface/web/mail/form/mail_box.tform.php 19 ●●●●● patch | view | raw | blame | history
interface/web/mail/form/mail_domain.tform.php 3 ●●●●● patch | view | raw | blame | history
interface/web/mail/form/mail_domain_alias.tform.php 6 ●●●●● patch | view | raw | blame | history
interface/web/mail/form/mail_domain_catchall.tform.php 3 ●●●●● patch | view | raw | blame | history
interface/web/mail/form/mail_domain_relay.tform.php 3 ●●●●● patch | view | raw | blame | history
interface/web/mail/form/mail_forward.tform.php patch | view | raw | blame | history
interface/web/mail/form/mail_spamfilter.tform.php 146 ●●●●● patch | view | raw | blame | history
interface/web/mail/form/mail_whitelist.tform.php 8 ●●●●● patch | view | raw | blame | history
interface/web/mail/lib/admin.conf.php patch | view | raw | blame | history
interface/web/mail/lib/lang/en_mail_alias.lng 3 ●●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/en_mail_alias_list.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/en_mail_blacklist.lng 3 ●●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/en_mail_blacklist_list.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/en_mail_box.lng 4 ●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/en_mail_box_list.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/en_mail_domain.lng 2 ●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/en_mail_domain_alias.lng 13 ●●●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/en_mail_domain_alias_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/en_mail_domain_catchall.lng 1 ●●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/en_mail_domain_catchall_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/en_mail_domain_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/en_mail_domain_relay.lng 2 ●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/en_mail_domain_relay_list.lng 1 ●●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/en_mail_forward.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/en_mail_forward_list.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/en_mail_spamfilter.lng 19 ●●●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/en_mail_spamfilter_list.lng 13 ●●●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/en_mail_whitelist.lng 3 ●●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/en_mail_whitelist_list.lng 2 ●●●●● patch | view | raw | blame | history
interface/web/mail/lib/lang/fr_mail_domain.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/fr_mail_domain_list.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/se_mail_alias.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/se_mail_alias_list.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/se_mail_blacklist.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/se_mail_blacklist_list.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/se_mail_box.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/se_mail_box_list.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/se_mail_domain.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/se_mail_domain_alias.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/se_mail_domain_alias_list.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/se_mail_domain_catchall.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/se_mail_domain_catchall_list.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/se_mail_domain_list.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/se_mail_domain_relay.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/se_mail_domain_relay_list.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/se_mail_forward.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/se_mail_forward_list.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/se_mail_whitelist.lng patch | view | raw | blame | history
interface/web/mail/lib/lang/se_mail_whitelist_list.lng patch | view | raw | blame | history
interface/web/mail/lib/module.conf.php 109 ●●●●● patch | view | raw | blame | history
interface/web/mail/list/mail_alias.list.php patch | view | raw | blame | history
interface/web/mail/list/mail_blacklist.list.php 26 ●●●●● patch | view | raw | blame | history
interface/web/mail/list/mail_box.list.php patch | view | raw | blame | history
interface/web/mail/list/mail_domain.list.php 18 ●●●●● patch | view | raw | blame | history
interface/web/mail/list/mail_domain_alias.list.php 17 ●●●●● patch | view | raw | blame | history
interface/web/mail/list/mail_domain_catchall.list.php 9 ●●●●● patch | view | raw | blame | history
interface/web/mail/list/mail_domain_relay.list.php 17 ●●●●● patch | view | raw | blame | history
interface/web/mail/list/mail_forward.list.php patch | view | raw | blame | history
interface/web/mail/list/mail_spamfilter.list.php 85 ●●●●● patch | view | raw | blame | history
interface/web/mail/list/mail_whitelist.list.php 26 ●●●●● patch | view | raw | blame | history
interface/web/mail/mail_alias_del.php patch | view | raw | blame | history
interface/web/mail/mail_alias_edit.php patch | view | raw | blame | history
interface/web/mail/mail_alias_list.php patch | view | raw | blame | history
interface/web/mail/mail_blacklist_del.php patch | view | raw | blame | history
interface/web/mail/mail_blacklist_edit.php 34 ●●●● patch | view | raw | blame | history
interface/web/mail/mail_blacklist_list.php patch | view | raw | blame | history
interface/web/mail/mail_box_del.php patch | view | raw | blame | history
interface/web/mail/mail_box_edit.php 7 ●●●●● patch | view | raw | blame | history
interface/web/mail/mail_box_list.php patch | view | raw | blame | history
interface/web/mail/mail_domain_alias_del.php patch | view | raw | blame | history
interface/web/mail/mail_domain_alias_edit.php patch | view | raw | blame | history
interface/web/mail/mail_domain_alias_list.php patch | view | raw | blame | history
interface/web/mail/mail_domain_catchall_del.php patch | view | raw | blame | history
interface/web/mail/mail_domain_catchall_edit.php patch | view | raw | blame | history
interface/web/mail/mail_domain_catchall_list.php patch | view | raw | blame | history
interface/web/mail/mail_domain_del.php patch | view | raw | blame | history
interface/web/mail/mail_domain_edit.php patch | view | raw | blame | history
interface/web/mail/mail_domain_list.php patch | view | raw | blame | history
interface/web/mail/mail_domain_relay_del.php patch | view | raw | blame | history
interface/web/mail/mail_domain_relay_edit.php patch | view | raw | blame | history
interface/web/mail/mail_domain_relay_list.php patch | view | raw | blame | history
interface/web/mail/mail_domain_route_del.php 13 ●●●● patch | view | raw | blame | history
interface/web/mail/mail_domain_route_edit.php 5 ●●●●● patch | view | raw | blame | history
interface/web/mail/mail_domain_route_list.php 30 ●●●●● patch | view | raw | blame | history
interface/web/mail/mail_forward_del.php patch | view | raw | blame | history
interface/web/mail/mail_forward_edit.php patch | view | raw | blame | history
interface/web/mail/mail_forward_list.php patch | view | raw | blame | history
interface/web/mail/mail_spamfilter_del.php 13 ●●●● patch | view | raw | blame | history
interface/web/mail/mail_spamfilter_edit.php 35 ●●●● patch | view | raw | blame | history
interface/web/mail/mail_spamfilter_list.php 26 ●●●●● patch | view | raw | blame | history
interface/web/mail/mail_whitelist_del.php patch | view | raw | blame | history
interface/web/mail/mail_whitelist_edit.php 34 ●●●● patch | view | raw | blame | history
interface/web/mail/mail_whitelist_list.php patch | view | raw | blame | history
interface/web/mail/templates/mail_alias_edit.htm patch | view | raw | blame | history
interface/web/mail/templates/mail_alias_list.htm patch | view | raw | blame | history
interface/web/mail/templates/mail_blacklist_edit.htm 4 ●●●● patch | view | raw | blame | history
interface/web/mail/templates/mail_blacklist_list.htm 32 ●●●●● patch | view | raw | blame | history
interface/web/mail/templates/mail_box_autoresponder_edit.htm patch | view | raw | blame | history
interface/web/mail/templates/mail_box_list.htm patch | view | raw | blame | history
interface/web/mail/templates/mail_box_mailbox_edit.htm 4 ●●●● patch | view | raw | blame | history
interface/web/mail/templates/mail_domain_alias_edit.htm patch | view | raw | blame | history
interface/web/mail/templates/mail_domain_alias_list.htm 7 ●●●● patch | view | raw | blame | history
interface/web/mail/templates/mail_domain_catchall_edit.htm patch | view | raw | blame | history
interface/web/mail/templates/mail_domain_catchall_list.htm 5 ●●●● patch | view | raw | blame | history
interface/web/mail/templates/mail_domain_edit.htm patch | view | raw | blame | history
interface/web/mail/templates/mail_domain_list.htm 7 ●●●● patch | view | raw | blame | history
interface/web/mail/templates/mail_domain_relay_edit.htm patch | view | raw | blame | history
interface/web/mail/templates/mail_domain_relay_list.htm 8 ●●●●● patch | view | raw | blame | history
interface/web/mail/templates/mail_forward_edit.htm patch | view | raw | blame | history
interface/web/mail/templates/mail_forward_list.htm patch | view | raw | blame | history
interface/web/mail/templates/mail_spamfilter_edit.htm 66 ●●●●● patch | view | raw | blame | history
interface/web/mail/templates/mail_spamfilter_list.htm 30 ●●●●● patch | view | raw | blame | history
interface/web/mail/templates/mail_whitelist_edit.htm 4 ●●●● patch | view | raw | blame | history
interface/web/mail/templates/mail_whitelist_list.htm 32 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/en_mail_domain_alias.lng 11 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/lang/en_mail_whitelist.lng 8 ●●●●● patch | view | raw | blame | history
interface/web/sites/lib/module.conf.php 89 ●●●●● patch | view | raw | blame | history
interface/web/sites/mail_whitelist_edit.php 55 ●●●●● patch | view | raw | blame | history
interface/web/sites/templates/mail_blacklist_list.htm 27 ●●●●● patch | view | raw | blame | history
interface/web/sites/templates/mail_whitelist_list.htm 27 ●●●●● patch | view | raw | blame | history
config/exim4/exim4.conf.template
@@ -127,7 +127,10 @@
  require verify        = sender
  # Blacklist management
  # Whitelist
  # Blacklist
  deny    senders = ${lookup mysql {SELECT DISTINCT address FROM MYSQL_BLACKTABLE WHERE '${quote_mysql:$sender_address}' LIKE address \
                                    AND (recipient = '' OR recipient = '${quote_mysql:$domain}' OR recipient = '${quote_mysql:$local_part}@${quote_mysql:$domain}') \
                                    AND active = '1' AND server_id = 'MAILSERVER_ID'}{$value}}
@@ -182,8 +185,8 @@
        warn    message = X-SA-Report: $spam_report 
                spam = nobody:true
                condition = ${if >{$spam_score_int}{0}{true}{false}}
        warn    message = X-SA-Status: Yes 
                spam = nobody:true
                condition = ${if >{$spam_score_int}{50}{true}{false}}
@@ -347,14 +350,14 @@
  transport = autoresponder_transport
  unseen  
cc_router:
  driver = redirect
  data = ${lookup mysql {SELECT cc FROM MYSQL_EMAILTABLE WHERE email=CONCAT('${quote_mysql:$local_part}','@','${quote_mysql:$domain}')}{$value}}
  unseen
# cc_router:
#   driver = redirect
#   data = ${lookup mysql {SELECT cc FROM MYSQL_EMAILTABLE WHERE email=CONCAT('${quote_mysql:$local_part}','@','${quote_mysql:$domain}')}{$value}}
#   unseen
forward_router:
  driver = redirect
  data = ${lookup mysql {SELECT forward FROM MYSQL_EMAILTABLE WHERE email=CONCAT('${quote_mysql:$local_part}','@','${quote_mysql:$domain}') AND forward != ''}{$value}}
# forward_router:
#   driver = redirect
#   data = ${lookup mysql {SELECT forward FROM MYSQL_EMAILTABLE WHERE email=CONCAT('${quote_mysql:$local_part}','@','${quote_mysql:$domain}') AND forward != ''}{$value}}
local_mailbox_router:
  driver = accept
interface/lib/classes/getconf.inc.php
copy from interface/web/sites/mail_blacklist_edit.php copy to interface/lib/classes/getconf.inc.php
File was copied from interface/web/sites/mail_blacklist_edit.php
@@ -1,6 +1,7 @@
<?php
/*
Copyright (c) 2005, Till Brehm, projektfarm Gmbh
Copyright (c) 2006, Till Brehm, projektfarm Gmbh
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
@@ -27,29 +28,33 @@
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
class getconf {
/******************************************
* Begin Form configuration
******************************************/
    var $config;
$tform_def_file = "form/mail_blacklist.tform.php";
    function get_server_config($server_id, $section = '') {
        global $app;
/******************************************
* End Form configuration
******************************************/
require_once('../../lib/config.inc.php');
require_once('../../lib/app.inc.php');
// Checking module permissions
if(!stristr($_SESSION["s"]["user"]["modules"],$_SESSION["s"]["module"]["name"])) {
    header("Location: ../index.php");
    exit;
        if(!is_array($this->config[$server_id])) {
            $app->uses('ini_parser');
            $server_id = intval($server_id);
            $server = $app->db->queryOneRecord("SELECT config FROM server WHERE server_id = $server_id");
            $this->config[$server_id] = $app->ini_parser->parse_ini_string(stripslashes($server["config"]));
}
// Loading classes
$app->uses('tpl,tform,tform_actions');
$app->tform_actions->onLoad();
        if($section == '') {
            return $this->config[$server_id];
        } else {
            return $this->config[$server_id][$section];
        }
    }
    function get_global_config() {
        die("not yet implemented");
    }
}
?>
interface/lib/classes/ini_parser.inc.php
copy from interface/web/sites/mail_blacklist_edit.php copy to interface/lib/classes/ini_parser.inc.php
File was copied from interface/web/sites/mail_blacklist_edit.php
@@ -1,6 +1,7 @@
<?php
/*
Copyright (c) 2005, Till Brehm, projektfarm Gmbh
Copyright (c) 2006, Till Brehm, projektfarm Gmbh
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
@@ -27,29 +28,42 @@
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
class ini_parser {
/******************************************
* Begin Form configuration
******************************************/
    var $config;
$tform_def_file = "form/mail_blacklist.tform.php";
    function parse_ini_string($ini) {
        $ini = str_replace("\r\n","\n",$ini);
        $lines = explode("\n",$ini);
/******************************************
* End Form configuration
******************************************/
        foreach($lines as $line) {
require_once('../../lib/config.inc.php');
require_once('../../lib/app.inc.php');
// Checking module permissions
if(!stristr($_SESSION["s"]["user"]["modules"],$_SESSION["s"]["module"]["name"])) {
    header("Location: ../index.php");
    exit;
            if($line != '') {
                $line = trim($line);
                if(preg_match("/^\[([\w\d_]+)\]$/", $line, $matches)) {
                    $section = strtolower($matches[1]);
                } elseif(preg_match("/^([\w\d_]+)=(.*)$/", $line, $matches) && $section != null) {
                    $item = trim($matches[1]);
                    $this->config[$section][$item] = trim($matches[2]);
                }
            }
        }
        return $this->config;
}
// Loading classes
$app->uses('tpl,tform,tform_actions');
$app->tform_actions->onLoad();
    function get_ini_string($file) {
        $content = '';
        foreach($this->config as $section => $data) {
            $content .= "[$section]\n";
            foreach($data as $item => $value) {
                if($value != '') $content .= "$item=$value\n";
            }
        }
        return $content;
    }
}
?>
interface/lib/classes/listform.inc.php
@@ -53,9 +53,73 @@
                include_once($file);
                $this->listDef = $liste;
                $this->module = $module;
                // Fill datasources
                foreach($this->listDef["item"] as $key => $field) {
                    if(is_array($field['datasource'])) {
                        $this->listDef["item"][$key]["value"] = $this->getDatasourceData($field);
                    }
                }
                return true;
        }
        /**
        * Get the key => value array of a form filed from a datasource definitiom
        *
        * @param field = array with field definition
        * @param record = Dataset as array
        * @return key => value array for the value field of a form
        */
        function getDatasourceData($field) {
                global $app;
                $values = array();
                if($field["datasource"]["type"] == 'SQL') {
                        // Preparing SQL string. We will replace some
                        // common placeholders
                        $querystring = $field["datasource"]["querystring"];
                        $querystring = str_replace("{USERID}",$_SESSION["s"]["user"]["userid"],$querystring);
                        $querystring = str_replace("{GROUPID}",$_SESSION["s"]["user"]["default_group"],$querystring);
                        $querystring = str_replace("{GROUPS}",$_SESSION["s"]["user"]["groups"],$querystring);
                        $table_idx = $this->formDef['db_table_idx'];
                        //$querystring = str_replace("{RECORDID}",$record[$table_idx],$querystring);
                        $app->uses("tform");
                        $querystring = str_replace("{AUTHSQL}",$app->tform->getAuthSQL('r'),$querystring);
                        // Getting the records
                        $tmp_records = $app->db->queryAllRecords($querystring);
                        if($app->db->errorMessage != '') die($app->db->errorMessage);
                        if(is_array($tmp_records)) {
                                $key_field = $field["datasource"]["keyfield"];
                                $value_field = $field["datasource"]["valuefield"];
                                foreach($tmp_records as $tmp_rec) {
                                        $tmp_id = $tmp_rec[$key_field];
                                        $values[$tmp_id] = $tmp_rec[$value_field];
                                }
                        }
                }
                if($field["datasource"]["type"] == 'CUSTOM') {
                        // Calls a custom class to validate this record
                        if($field["datasource"]['class'] != '' and $field["datasource"]['function'] != '') {
                                $datasource_class = $field["datasource"]['class'];
                                $datasource_function = $field["datasource"]['function'];
                                $app->uses($datasource_class);
                                $record = array();
                                $values = $app->$datasource_class->$datasource_function($field, $record);
                        } else {
                                $this->errorMessage .= "Custom datasource class or function is empty<br>\r\n";
                        }
                }
                return $values;
        }
        function getSearchSQL($sql_where = "") {
                global $db;
interface/lib/classes/tform.inc.php
@@ -196,7 +196,7 @@
        /**
        * Get the key => value array of a form filed from a datasource definitiom
        *
        * @param field = NEW oder EDIT
        * @param field = array with field definition
        * @param record = Dataset as array
        * @return key => value array for the value field of a form
        */
@@ -560,7 +560,7 @@
                                        }
                                break;
                                case 'ISEMAIL':
                                        if(!preg_match("/^\w+[\w.-]*\w+@\w+[\w.-]*\w+\.[a-z]{2,4}$/i", $field_value)) {
                                        if(!preg_match("/^\w+[\w.-]*\w+@\w+[\w.-]*\w+\.[a-z]{2,10}$/i", $field_value)) {
                                                $errmsg = $validator['errmsg'];
                                                $this->errorMessage .= $this->wordbook[$errmsg]."<br>\r\n";
                                        }
interface/lib/config.inc.php
@@ -29,11 +29,11 @@
ini_set('register_globals',0);
$conf["app_title"] = "MyDNSConfig";
$conf["app_version"] = "1.0.0";
$conf["app_title"] = "ISPConfig";
$conf["app_version"] = "3.0.0";
$conf["rootpath"]                 = "F:\\server\\www\\ispconfig3\\interface";
//$conf["rootpath"]                 = "D:\\www\\ispconfig3\\interface";
//$conf["rootpath"]            = "F:\\server\\www\\ispconfig3\\interface";
$conf["rootpath"]            = "D:\\www\\ispconfig3\\interface";
//$conf["rootpath"]                 = "/home/www/ispconfig3/web/cms";
$conf["fs_div"]                 = "\\"; // File system divider, \\ on windows and / on linux and unix
interface/sql/ispconfig3db.sql
@@ -1,305 +1,231 @@
-- phpMyAdmin SQL Dump
-- version 2.6.2-Debian-3sarge1
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Erstellungszeit: 25. November 2005 um 19:28
-- Server Version: 4.0.24
-- PHP-Version: 4.3.10-16
--
-- Datenbank: `mailserver`
--
# phpMyAdmin MySQL-Dump
# version 2.4.0-rc1
# http://www.phpmyadmin.net/ (download page)
#
# Host: localhost
# Erstellungszeit: 16. Februar 2006 um 22:34
# Server Version: 4.0.23
# PHP-Version: 5.0.3
# Datenbank: `ispconfig3`
# --------------------------------------------------------
-- --------------------------------------------------------
#
# Tabellenstruktur für Tabelle `mail_blacklist`
#
--
-- Tabellenstruktur für Tabelle `mail_blacklist`
--
DROP TABLE IF EXISTS mail_blacklist;
CREATE TABLE mail_blacklist (
  blacklist_id int(11) NOT NULL auto_increment,
  sys_userid int(11) NOT NULL default '0',
  sys_groupid int(11) NOT NULL default '0',
  sys_perm_user varchar(5) NOT NULL default '',
  sys_perm_group varchar(5) NOT NULL default '',
  sys_perm_other varchar(5) NOT NULL default '',
  server_id int(11) NOT NULL default '0',
  address varchar(200) NOT NULL default '',
  recipient varchar(200) NOT NULL default '',
  active enum('0','1') NOT NULL default '1',
  PRIMARY KEY  (blacklist_id),
  KEY server_id (server_id,address,recipient)
) TYPE=MyISAM;
# --------------------------------------------------------
DROP TABLE IF EXISTS `mail_blacklist`;
CREATE TABLE `mail_blacklist` (
  `blacklist_id` int(11) NOT NULL auto_increment,
  `sys_userid` int(11) NOT NULL default '0',
  `sys_groupid` int(11) NOT NULL default '0',
  `sys_perm_user` varchar(5) NOT NULL default '',
  `sys_perm_group` varchar(5) NOT NULL default '',
  `sys_perm_other` varchar(5) NOT NULL default '',
  `server_id` int(11) NOT NULL default '0',
  `address` varchar(200) NOT NULL default '',
  `recipient` varchar(200) NOT NULL default '',
  `active` enum('0','1') NOT NULL default '1',
  PRIMARY KEY  (`blacklist_id`),
  KEY `server_id` (`server_id`,`address`,`recipient`)
) TYPE=MyISAM AUTO_INCREMENT=3 ;
#
# Tabellenstruktur für Tabelle `mail_box`
#
--
-- Daten für Tabelle `mail_blacklist`
--
DROP TABLE IF EXISTS mail_box;
CREATE TABLE mail_box (
  mailbox_id int(11) NOT NULL auto_increment,
  sys_userid int(11) NOT NULL default '0',
  sys_groupid int(11) NOT NULL default '0',
  sys_perm_user varchar(5) NOT NULL default '',
  sys_perm_group varchar(5) NOT NULL default '',
  sys_perm_other varchar(5) NOT NULL default '',
  server_id int(11) NOT NULL default '0',
  email varchar(255) NOT NULL default '',
  cryptpwd varchar(128) NOT NULL default '',
  clearpwd varchar(128) NOT NULL default '',
  name varchar(128) NOT NULL default '',
  uid int(10) unsigned NOT NULL default '0',
  gid int(10) unsigned NOT NULL default '0',
  maildir varchar(255) NOT NULL default '',
  quota varchar(255) NOT NULL default '',
  autoresponder enum('0','1') NOT NULL default '0',
  autoresponder_text tinytext NOT NULL,
  active enum('0','1') NOT NULL default '1',
  PRIMARY KEY  (mailbox_id),
  KEY server_id (server_id,email)
) TYPE=MyISAM;
# --------------------------------------------------------
INSERT INTO `mail_blacklist` (`blacklist_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `address`, `recipient`, `active`) VALUES (2, 1, 0, 'riud', 'riud', '', 1, 'till@test.int', 'till@test.int', '0');
#
# Tabellenstruktur für Tabelle `mail_domain`
#
-- --------------------------------------------------------
DROP TABLE IF EXISTS mail_domain;
CREATE TABLE mail_domain (
  domain_id int(11) NOT NULL auto_increment,
  sys_userid int(11) NOT NULL default '0',
  sys_groupid int(11) NOT NULL default '0',
  sys_perm_user varchar(5) NOT NULL default '',
  sys_perm_group varchar(5) NOT NULL default '',
  sys_perm_other varchar(5) NOT NULL default '',
  server_id int(11) NOT NULL default '0',
  domain varchar(255) NOT NULL default '',
  type enum('local','relay','alias') NOT NULL default 'local',
  destination varchar(255) NOT NULL default '',
  active tinyint(4) NOT NULL default '1',
  PRIMARY KEY  (domain_id),
  KEY server_id (server_id,domain,type)
) TYPE=MyISAM;
# --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `mail_box`
--
#
# Tabellenstruktur für Tabelle `mail_domain_catchall`
#
DROP TABLE IF EXISTS `mail_box`;
CREATE TABLE `mail_box` (
  `mailbox_id` int(11) NOT NULL auto_increment,
  `sys_userid` int(11) NOT NULL default '0',
  `sys_groupid` int(11) NOT NULL default '0',
  `sys_perm_user` varchar(5) NOT NULL default '',
  `sys_perm_group` varchar(5) NOT NULL default '',
  `sys_perm_other` varchar(5) NOT NULL default '',
  `server_id` int(11) NOT NULL default '0',
  `email` varchar(255) NOT NULL default '',
  `cryptpwd` varchar(128) NOT NULL default '',
  `clearpwd` varchar(128) NOT NULL default '',
  `name` varchar(128) NOT NULL default '',
  `uid` int(10) unsigned NOT NULL default '0',
  `gid` int(10) unsigned NOT NULL default '0',
  `maildir` varchar(255) NOT NULL default '',
  `quota` varchar(255) NOT NULL default '',
  `cc` varchar(50) NOT NULL default '',
  `forward` varchar(50) NOT NULL default '',
  `autoresponder` enum('0','1') NOT NULL default '0',
  `autoresponder_text` tinytext NOT NULL,
  `active` enum('0','1') NOT NULL default '1',
  PRIMARY KEY  (`mailbox_id`),
  KEY `server_id` (`server_id`,`email`)
) TYPE=MyISAM AUTO_INCREMENT=2 ;
DROP TABLE IF EXISTS mail_domain_catchall;
CREATE TABLE mail_domain_catchall (
  domain_catchall_id int(11) NOT NULL auto_increment,
  sys_userid int(11) NOT NULL default '0',
  sys_groupid int(11) NOT NULL default '0',
  sys_perm_user varchar(5) NOT NULL default '',
  sys_perm_group varchar(5) NOT NULL default '',
  sys_perm_other varchar(5) NOT NULL default '',
  server_id int(11) NOT NULL default '0',
  domain varchar(255) NOT NULL default '',
  destination varchar(255) NOT NULL default '',
  active enum('0','1') NOT NULL default '1',
  PRIMARY KEY  (domain_catchall_id),
  KEY server_id (server_id,domain)
) TYPE=MyISAM;
# --------------------------------------------------------
--
-- Daten für Tabelle `mail_box`
--
#
# Tabellenstruktur für Tabelle `mail_greylist`
#
INSERT INTO `mail_box` (`mailbox_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `email`, `cryptpwd`, `clearpwd`, `name`, `uid`, `gid`, `maildir`, `quota`, `cc`, `forward`, `autoresponder`, `autoresponder_text`, `active`) VALUES (1, 1, 0, 'riud', 'riud', '', 1, 'till@test.int', '$1$tRlfKeOB$iHJgCn8mH8x/dh/XWy6v0/', '', '', 0, 0, '/var/spool/mail/till', '100', '', '', '0', '', '1');
DROP TABLE IF EXISTS mail_greylist;
CREATE TABLE mail_greylist (
  greylist_id int(11) NOT NULL auto_increment,
  relay_ip varchar(64) default NULL,
  from_domain varchar(255) default NULL,
  block_expires datetime NOT NULL default '0000-00-00 00:00:00',
  record_expires datetime NOT NULL default '0000-00-00 00:00:00',
  origin_type enum('MANUAL','AUTO') NOT NULL default 'AUTO',
  create_time datetime NOT NULL default '0000-00-00 00:00:00',
  PRIMARY KEY  (greylist_id)
) TYPE=MyISAM;
# --------------------------------------------------------
-- --------------------------------------------------------
#
# Tabellenstruktur für Tabelle `mail_mailman_domain`
#
--
-- Tabellenstruktur für Tabelle `mail_domain`
--
DROP TABLE IF EXISTS mail_mailman_domain;
CREATE TABLE mail_mailman_domain (
  mailman_id int(11) NOT NULL auto_increment,
  server_id int(11) NOT NULL default '0',
  domain varchar(255) NOT NULL default '',
  mm_home varchar(255) NOT NULL default '',
  mm_wrap varchar(255) NOT NULL default '',
  mm_user varchar(50) NOT NULL default '',
  mm_group varchar(50) NOT NULL default '',
  PRIMARY KEY  (mailman_id,server_id,domain)
) TYPE=MyISAM;
# --------------------------------------------------------
DROP TABLE IF EXISTS `mail_domain`;
CREATE TABLE `mail_domain` (
  `domain_id` int(11) NOT NULL auto_increment,
  `sys_userid` int(11) NOT NULL default '0',
  `sys_groupid` int(11) NOT NULL default '0',
  `sys_perm_user` varchar(5) NOT NULL default '',
  `sys_perm_group` varchar(5) NOT NULL default '',
  `sys_perm_other` varchar(5) NOT NULL default '',
  `server_id` int(11) NOT NULL default '0',
  `domain` varchar(255) NOT NULL default '',
  `type` enum('local','relay','alias') NOT NULL default 'local',
  `relay_host` varchar(255) NOT NULL default '',
  `destination` varchar(255) NOT NULL default '',
  `active` tinyint(4) NOT NULL default '1',
  PRIMARY KEY  (`domain_id`),
  KEY `server_id` (`server_id`,`domain`,`type`)
) TYPE=MyISAM AUTO_INCREMENT=7 ;
#
# Tabellenstruktur für Tabelle `mail_redirect`
#
--
-- Daten für Tabelle `mail_domain`
--
DROP TABLE IF EXISTS mail_redirect;
CREATE TABLE mail_redirect (
  redirect_id int(11) NOT NULL auto_increment,
  sys_userid int(11) NOT NULL default '0',
  sys_groupid int(11) NOT NULL default '0',
  sys_perm_user varchar(5) NOT NULL default '',
  sys_perm_group varchar(5) NOT NULL default '',
  sys_perm_other varchar(5) NOT NULL default '',
  server_id int(11) NOT NULL default '0',
  email varchar(255) NOT NULL default '',
  destination varchar(255) NOT NULL default '',
  type enum('alias','forward') NOT NULL default 'alias',
  active enum('0','1') NOT NULL default '1',
  PRIMARY KEY  (redirect_id),
  KEY server_id (server_id,email)
) TYPE=MyISAM;
# --------------------------------------------------------
INSERT INTO `mail_domain` (`domain_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `domain`, `type`, `relay_host`, `destination`, `active`) VALUES (1, 1, 0, 'riud', 'riud', '', 1, 'test.int', 'local', '', '', 1);
INSERT INTO `mail_domain` (`domain_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `domain`, `type`, `relay_host`, `destination`, `active`) VALUES (2, 1, 0, 'riud', 'riud', '', 1, 'test2.int', 'alias', '', 'test.int', 1);
INSERT INTO `mail_domain` (`domain_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `domain`, `type`, `relay_host`, `destination`, `active`) VALUES (5, 1, 0, 'riud', 'riud', '', 1, 'ensign.int', 'alias', '', 'ensign.de', 1);
#
# Tabellenstruktur für Tabelle `mail_spamfilter`
#
-- --------------------------------------------------------
DROP TABLE IF EXISTS mail_spamfilter;
CREATE TABLE mail_spamfilter (
  spamfilter_id int(11) NOT NULL auto_increment,
  sys_userid int(11) NOT NULL default '0',
  sys_groupid int(11) NOT NULL default '0',
  sys_perm_user varchar(5) NOT NULL default '',
  sys_perm_group varchar(5) NOT NULL default '',
  sys_perm_other varchar(5) NOT NULL default '',
  server_id int(11) NOT NULL default '0',
  email varchar(255) NOT NULL default '',
  spam_rewrite_score_int int(11) NOT NULL default '0',
  spam_delete_score_int int(11) NOT NULL default '0',
  spam_redirect_score_int int(11) NOT NULL default '0',
  spam_rewrite_subject varchar(50) NOT NULL default '***SPAM***',
  spam_redirect_maildir varchar(255) NOT NULL default '',
  spam_redirect_maildir_purge int(11) NOT NULL default '7',
  active enum('0','1') NOT NULL default '1',
  PRIMARY KEY  (spamfilter_id),
  KEY server_id (server_id,email)
) TYPE=MyISAM;
# --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `mail_domain_catchall`
--
#
# Tabellenstruktur für Tabelle `mail_transport`
#
DROP TABLE IF EXISTS `mail_domain_catchall`;
CREATE TABLE `mail_domain_catchall` (
  `domain_catchall_id` int(11) NOT NULL auto_increment,
  `sys_userid` int(11) NOT NULL default '0',
  `sys_groupid` int(11) NOT NULL default '0',
  `sys_perm_user` varchar(5) NOT NULL default '',
  `sys_perm_group` varchar(5) NOT NULL default '',
  `sys_perm_other` varchar(5) NOT NULL default '',
  `server_id` int(11) NOT NULL default '0',
  `domain` varchar(255) NOT NULL default '',
  `destination` varchar(255) NOT NULL default '',
  `active` enum('0','1') NOT NULL default '1',
  PRIMARY KEY  (`domain_catchall_id`),
  KEY `server_id` (`server_id`,`domain`)
) TYPE=MyISAM AUTO_INCREMENT=2 ;
DROP TABLE IF EXISTS mail_transport;
CREATE TABLE mail_transport (
  whitelist_id int(11) NOT NULL auto_increment,
  sys_userid int(11) NOT NULL default '0',
  sys_groupid int(11) NOT NULL default '0',
  sys_perm_user varchar(5) NOT NULL default '',
  sys_perm_group varchar(5) NOT NULL default '',
  sys_perm_other varchar(5) NOT NULL default '',
  server_id int(11) NOT NULL default '0',
  domain varchar(255) NOT NULL default '',
  destination varchar(255) NOT NULL default '',
  active enum('0','1') NOT NULL default '1',
  PRIMARY KEY  (whitelist_id),
  KEY server_id (server_id,destination),
  KEY server_id_2 (server_id,domain)
) TYPE=MyISAM;
# --------------------------------------------------------
--
-- Daten für Tabelle `mail_domain_catchall`
--
#
# Tabellenstruktur für Tabelle `mail_whitelist`
#
INSERT INTO `mail_domain_catchall` (`domain_catchall_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `domain`, `destination`, `active`) VALUES (1, 1, 1, 'riud', 'riud', '', 1, 'test.int', 'till@test.int', '1');
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `mail_greylist`
--
DROP TABLE IF EXISTS `mail_greylist`;
CREATE TABLE `mail_greylist` (
  `greylist_id` int(11) NOT NULL auto_increment,
  `relay_ip` varchar(64) default NULL,
  `from_domain` varchar(255) default NULL,
  `block_expires` datetime NOT NULL default '0000-00-00 00:00:00',
  `record_expires` datetime NOT NULL default '0000-00-00 00:00:00',
  `origin_type` enum('MANUAL','AUTO') NOT NULL default 'AUTO',
  `create_time` datetime NOT NULL default '0000-00-00 00:00:00',
  PRIMARY KEY  (`greylist_id`)
) TYPE=MyISAM AUTO_INCREMENT=1 ;
--
-- Daten für Tabelle `mail_greylist`
--
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `mail_mailman_domain`
--
DROP TABLE IF EXISTS `mail_mailman_domain`;
CREATE TABLE `mail_mailman_domain` (
  `mailman_id` int(11) NOT NULL auto_increment,
  `server_id` int(11) NOT NULL default '0',
  `domain` varchar(255) NOT NULL default '',
  `mm_home` varchar(255) NOT NULL default '',
  `mm_wrap` varchar(255) NOT NULL default '',
  `mm_user` varchar(50) NOT NULL default '',
  `mm_group` varchar(50) NOT NULL default '',
  PRIMARY KEY  (`mailman_id`,`server_id`,`domain`)
) TYPE=MyISAM AUTO_INCREMENT=1 ;
--
-- Daten für Tabelle `mail_mailman_domain`
--
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `mail_redirect`
--
DROP TABLE IF EXISTS `mail_redirect`;
CREATE TABLE `mail_redirect` (
  `redirect_id` int(11) NOT NULL auto_increment,
  `sys_userid` int(11) NOT NULL default '0',
  `sys_groupid` int(11) NOT NULL default '0',
  `sys_perm_user` varchar(5) NOT NULL default '',
  `sys_perm_group` varchar(5) NOT NULL default '',
  `sys_perm_other` varchar(5) NOT NULL default '',
  `server_id` int(11) NOT NULL default '0',
  `email` varchar(255) NOT NULL default '',
  `destination` varchar(255) NOT NULL default '',
  `type` enum('alias','forward') NOT NULL default 'alias',
  `active` enum('0','1') NOT NULL default '1',
  PRIMARY KEY  (`redirect_id`),
  KEY `server_id` (`server_id`,`email`)
) TYPE=MyISAM AUTO_INCREMENT=4 ;
--
-- Daten für Tabelle `mail_redirect`
--
INSERT INTO `mail_redirect` (`redirect_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `email`, `destination`, `type`, `active`) VALUES (1, 1, 0, 'riud', 'riud', '', 1, 'tom@test.int', 'till@test.int', 'alias', '1');
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `mail_spamfilter`
--
DROP TABLE IF EXISTS `mail_spamfilter`;
CREATE TABLE `mail_spamfilter` (
  `spamfilter_id` int(11) NOT NULL auto_increment,
  `sys_userid` int(11) NOT NULL default '0',
  `sys_groupid` int(11) NOT NULL default '0',
  `sys_perm_user` varchar(5) NOT NULL default '',
  `sys_perm_group` varchar(5) NOT NULL default '',
  `sys_perm_other` varchar(5) NOT NULL default '',
  `server_id` int(11) NOT NULL default '0',
  `email` varchar(255) NOT NULL default '',
  `spam_rewrite_score_int` int(11) NOT NULL default '0',
  `spam_delete_score_int` int(11) NOT NULL default '0',
  `spam_redirect_score_int` int(11) NOT NULL default '0',
  `spam_rewrite_subject` varchar(50) NOT NULL default '***SPAM***',
  `spam_redirect_maildir` varchar(255) NOT NULL default '',
  `active` enum('0','1') NOT NULL default '1',
  PRIMARY KEY  (`spamfilter_id`),
  KEY `server_id` (`server_id`,`email`)
) TYPE=MyISAM AUTO_INCREMENT=2 ;
--
-- Daten für Tabelle `mail_spamfilter`
--
INSERT INTO `mail_spamfilter` (`spamfilter_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `email`, `spam_rewrite_score_int`, `spam_delete_score_int`, `spam_redirect_score_int`, `spam_rewrite_subject`, `spam_redirect_maildir`, `active`) VALUES (1, 0, 0, '', '', '', 1, 'till@test.int', 100, 100, 1, '***SPAM mag ich nicht***', '/var/spool/mail/spam', '1');
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `mail_transport`
--
DROP TABLE IF EXISTS `mail_transport`;
CREATE TABLE `mail_transport` (
  `whitelist_id` int(11) NOT NULL auto_increment,
  `sys_userid` int(11) NOT NULL default '0',
  `sys_groupid` int(11) NOT NULL default '0',
  `sys_perm_user` varchar(5) NOT NULL default '',
  `sys_perm_group` varchar(5) NOT NULL default '',
  `sys_perm_other` varchar(5) NOT NULL default '',
  `server_id` int(11) NOT NULL default '0',
  `domain` varchar(255) NOT NULL default '',
  `destination` varchar(255) NOT NULL default '',
  `active` enum('0','1') NOT NULL default '1',
  PRIMARY KEY  (`whitelist_id`),
  KEY `server_id` (`server_id`,`destination`),
  KEY `server_id_2` (`server_id`,`domain`)
) TYPE=MyISAM AUTO_INCREMENT=1 ;
--
-- Daten für Tabelle `mail_transport`
--
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `mail_whitelist`
--
DROP TABLE IF EXISTS `mail_whitelist`;
CREATE TABLE `mail_whitelist` (
  `whitelist_id` int(11) NOT NULL auto_increment,
  `sys_userid` int(11) NOT NULL default '0',
  `sys_groupid` int(11) NOT NULL default '0',
  `sys_perm_user` varchar(5) NOT NULL default '',
  `sys_perm_group` varchar(5) NOT NULL default '',
  `sys_perm_other` varchar(5) NOT NULL default '',
  `server_id` int(11) NOT NULL default '0',
  `address` varchar(255) NOT NULL default '',
  `active` enum('0','1') NOT NULL default '1',
  PRIMARY KEY  (`whitelist_id`),
  KEY `server_id` (`server_id`,`address`)
) TYPE=MyISAM AUTO_INCREMENT=1 ;
--
-- Daten für Tabelle `mail_whitelist`
--
-- --------------------------------------------------------
DROP TABLE IF EXISTS mail_whitelist;
CREATE TABLE mail_whitelist (
  whitelist_id int(11) NOT NULL auto_increment,
  sys_userid int(11) NOT NULL default '0',
  sys_groupid int(11) NOT NULL default '0',
  sys_perm_user varchar(5) NOT NULL default '',
  sys_perm_group varchar(5) NOT NULL default '',
  sys_perm_other varchar(5) NOT NULL default '',
  server_id int(11) NOT NULL default '0',
  address varchar(255) NOT NULL default '',
  recipient varchar(255) NOT NULL default '',
  active enum('0','1') NOT NULL default '1',
  PRIMARY KEY  (whitelist_id),
  KEY server_id (server_id,address)
) TYPE=MyISAM;
# --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `reseller`
@@ -351,25 +277,26 @@
-- Tabellenstruktur für Tabelle `server`
--
DROP TABLE IF EXISTS `server`;
CREATE TABLE `server` (
  `server_id` bigint(20) NOT NULL auto_increment,
  `sys_userid` int(11) NOT NULL default '0',
  `sys_groupid` int(11) NOT NULL default '0',
  `sys_perm_user` varchar(5) NOT NULL default '',
  `sys_perm_group` varchar(5) NOT NULL default '',
  `sys_perm_other` varchar(5) NOT NULL default '',
  `server_name` varchar(255) NOT NULL default '',
  `mail_server` int(11) NOT NULL default '0',
  `web_server` int(11) NOT NULL default '0',
  `dns_server` int(11) NOT NULL default '0',
  `file_server` int(11) NOT NULL default '0',
  `mysql_server` int(11) NOT NULL default '0',
  `postgresql_server` int(11) NOT NULL default '0',
  `firebird_server` int(11) NOT NULL default '0',
  `active` int(11) NOT NULL default '1',
  PRIMARY KEY  (`server_id`)
) TYPE=MyISAM AUTO_INCREMENT=2 ;
DROP TABLE IF EXISTS server;
CREATE TABLE server (
  server_id bigint(20) NOT NULL auto_increment,
  sys_userid int(11) NOT NULL default '0',
  sys_groupid int(11) NOT NULL default '0',
  sys_perm_user varchar(5) NOT NULL default '',
  sys_perm_group varchar(5) NOT NULL default '',
  sys_perm_other varchar(5) NOT NULL default '',
  server_name varchar(255) NOT NULL default '',
  mail_server int(11) NOT NULL default '0',
  web_server int(11) NOT NULL default '0',
  dns_server int(11) NOT NULL default '0',
  file_server int(11) NOT NULL default '0',
  mysql_server int(11) NOT NULL default '0',
  postgresql_server int(11) NOT NULL default '0',
  firebird_server int(11) NOT NULL default '0',
  config text NOT NULL,
  active int(11) NOT NULL default '1',
  PRIMARY KEY  (server_id)
) TYPE=MyISAM;
--
-- Daten für Tabelle `server`
interface/web/mail/form/mail_alias.tform.php
File was renamed from interface/web/sites/form/mail_alias.tform.php
@@ -86,6 +86,9 @@
                                        'keyfield'        => 'email',
                                        'valuefield'    => 'email'
                                     ),
            'validators'    => array (     0 => array (    'type'    => 'ISEMAIL',
                                                        'errmsg'=> 'destination_error_isemail'),
                                    ),
            'value'        => ''
        ),
        'type' => array (
interface/web/mail/form/mail_blacklist.tform.php
File was renamed from interface/web/sites/form/mail_blacklist.tform.php
@@ -80,6 +80,14 @@
            'width'        => '30',
            'maxlength'    => '255'
        ),
        'recipient' => array (
            'datatype'    => 'VARCHAR',
            'formtype'    => 'TEXT',
            'default'    => '',
            'value'        => '',
            'width'        => '30',
            'maxlength'    => '255'
        ),
        'active' => array (
            'datatype'    => 'INTEGER',
            'formtype'    => 'CHECKBOX',
interface/web/mail/form/mail_box.tform.php
File was renamed from interface/web/sites/form/mail_box.tform.php
@@ -88,6 +88,25 @@
            'width'        => '30',
            'maxlength'    => '255'
        ),
        'quota' => array (
            'datatype'    => 'INTEGER',
            'formtype'    => 'TEXT',
            'validators'    => array (     0 => array (    'type'    => 'ISINT',
                                                        'errmsg'=> 'quota_error_isint'),
                                    ),
            'default'    => '',
            'value'        => '',
            'width'        => '30',
            'maxlength'    => '255'
        ),
        'maildir' => array (
            'datatype'    => 'VARCHAR',
            'formtype'    => 'TEXT',
            'default'    => '',
            'value'        => '',
            'width'        => '30',
            'maxlength'    => '255'
        ),
        'active' => array (
            'datatype'    => 'INTEGER',
            'formtype'    => 'CHECKBOX',
interface/web/mail/form/mail_domain.tform.php
File was renamed from interface/web/sites/form/mail_domain.tform.php
@@ -76,6 +76,9 @@
                                                        'errmsg'=> 'domain_error_empty'),
                                        1 => array (    'type'    => 'UNIQUE',
                                                        'errmsg'=> 'domain_error_unique'),
                                        2 => array (    'type'    => 'REGEX',
                                                        'regex' => '/^[\w\.\-]{2,64}\.[a-zA-Z]{2,10}$/',
                                                        'errmsg'=> 'domain_error_regex'),
                                    ),
            'default'    => '',
            'value'        => '',
interface/web/mail/form/mail_domain_alias.tform.php
File was renamed from interface/web/sites/form/mail_domain_alias.tform.php
@@ -76,6 +76,9 @@
                                                        'errmsg'=> 'domain_error_empty'),
                                        1 => array (    'type'    => 'UNIQUE',
                                                        'errmsg'=> 'domain_error_unique'),
                                        2 => array (    'type'    => 'REGEX',
                                                        'regex' => '/^[\w\.\-]{2,64}\.[a-zA-Z]{2,10}$/',
                                                        'errmsg'=> 'domain_error_regex'),
                                    ),
            'default'    => '',
            'value'        => '',
@@ -87,6 +90,9 @@
            'formtype'    => 'TEXT',
            'validators'    => array (     0 => array (    'type'    => 'NOTEMPTY',
                                                        'errmsg'=> 'destination_error_empty'),
                                        1 => array (    'type'    => 'REGEX',
                                                        'regex' => '/^[\w\.\-]{2,64}\.[a-zA-Z]{2,10}$/',
                                                        'errmsg'=> 'destination_error_regex'),
                                    ),
            'default'    => '',
            'value'        => '',
interface/web/mail/form/mail_domain_catchall.tform.php
File was renamed from interface/web/sites/form/mail_domain_catchall.tform.php
@@ -69,6 +69,9 @@
            'formtype'    => 'SELECT',
            'validators'    => array (     0 => array (    'type'    => 'UNIQUE',
                                                        'errmsg'=> 'domain_error_unique'),
                                        1 => array (    'type'    => 'REGEX',
                                                        'regex' => '/^[\w\.\-]{2,64}\.[a-zA-Z]{2,10}$/',
                                                        'errmsg'=> 'domain_error_regex'),
                                    ),
            'datasource'    => array (     'type'    => 'SQL',
                                        'querystring' => "SELECT domain FROM mail_domain WHERE type = 'local' AND {AUTHSQL} ORDER BY domain",
interface/web/mail/form/mail_domain_relay.tform.php
File was renamed from interface/web/sites/form/mail_domain_relay.tform.php
@@ -76,6 +76,9 @@
                                                        'errmsg'=> 'domain_error_empty'),
                                        1 => array (    'type'    => 'UNIQUE',
                                                        'errmsg'=> 'domain_error_unique'),
                                        2 => array (    'type'    => 'REGEX',
                                                        'regex' => '/^[\w\.\-]{2,64}\.[a-zA-Z]{2,10}$/',
                                                        'errmsg'=> 'domain_error_regex'),
                                    ),
            'default'    => '',
            'value'        => '',
interface/web/mail/form/mail_forward.tform.php
interface/web/mail/form/mail_spamfilter.tform.php
New file
@@ -0,0 +1,146 @@
<?php
/*
    Form Definition
    Tabledefinition
    Datatypes:
    - INTEGER (Forces the input to Int)
    - DOUBLE
    - CURRENCY (Formats the values to currency notation)
    - VARCHAR (no format check, maxlength: 255)
    - TEXT (no format check)
    - DATE (Dateformat, automatic conversion to timestamps)
    Formtype:
    - TEXT (Textfield)
    - TEXTAREA (Textarea)
    - PASSWORD (Password textfield, input is not shown when edited)
    - SELECT (Select option field)
    - RADIO
    - CHECKBOX
    - CHECKBOXARRAY
    - FILE
    VALUE:
    - Wert oder Array
    Hint:
    The ID field of the database table is not part of the datafield definition.
    The ID field must be always auto incement (int or bigint).
*/
$form["title"]             = "Spamfilter";
$form["description"]     = "";
$form["name"]             = "mail_spamfilter";
$form["action"]            = "mail_spamfilter_edit.php";
$form["db_table"]        = "mail_spamfilter";
$form["db_table_idx"]    = "spamfilter_id";
$form["db_history"]        = "yes";
$form["tab_default"]    = "spamfilter";
$form["list_default"]    = "mail_spamfilter_list.php";
$form["auth"]            = 'yes'; // yes / no
$form["auth_preset"]["userid"]  = 0; // 0 = id of the user, > 0 id must match with id of current user
$form["auth_preset"]["groupid"] = 0; // 0 = default groupid of the user, > 0 id must match with groupid of current user
$form["auth_preset"]["perm_user"] = 'riud'; //r = read, i = insert, u = update, d = delete
$form["auth_preset"]["perm_group"] = 'riud'; //r = read, i = insert, u = update, d = delete
$form["auth_preset"]["perm_other"] = ''; //r = read, i = insert, u = update, d = delete
$form["tabs"]['spamfilter'] = array (
    'title'     => "Spamfilter",
    'width'     => 100,
    'template'     => "templates/mail_spamfilter_edit.htm",
    'fields'     => array (
    ##################################
    # Begin Datatable fields
    ##################################
        'server_id' => array (
            'datatype'    => 'INTEGER',
            'formtype'    => 'TEXT',
            'default'    => '',
            'value'        => '',
            'width'        => '30',
            'maxlength'    => '255'
        ),
        'email' => array (
            'datatype'    => 'VARCHAR',
            'formtype'    => 'TEXT',
            'validators'    => array (     0 => array (    'type'    => 'NOTEMPTY',
                                                        'errmsg'=> 'email_error_notempty'),
                                        1 => array (    'type'    => 'UNIQUE',
                                                        'errmsg'=> 'email_error_unique'),
                                    ),
            'default'    => '',
            'value'        => '',
            'width'        => '30',
            'maxlength'    => '255'
        ),
        'spam_rewrite_score_int' => array (
            'datatype'    => 'INTEGER',
            'formtype'    => 'TEXT',
            'default'    => '5.00',
            'value'        => '',
            'width'        => '10',
            'maxlength'    => '10'
        ),
        'spam_redirect_score_int' => array (
            'datatype'    => 'INTEGER',
            'formtype'    => 'TEXT',
            'default'    => '7.00',
            'value'        => '',
            'width'        => '10',
            'maxlength'    => '10'
        ),
        'spam_delete_score_int' => array (
            'datatype'    => 'INTEGER',
            'formtype'    => 'TEXT',
            'default'    => '15.00',
            'value'        => '',
            'width'        => '10',
            'maxlength'    => '10'
        ),
        'spam_rewrite_subject' => array (
            'datatype'    => 'VARCHAR',
            'formtype'    => 'TEXT',
            'default'    => '***SPAM***',
            'value'        => '',
            'width'        => '30',
            'maxlength'    => '255'
        ),
        'spam_redirect_maildir' => array (
            'datatype'    => 'VARCHAR',
            'formtype'    => 'SELECT',
            'datasource'    => array (     'type'    => 'SQL',
                                        'querystring' => 'SELECT mailbox_id,email FROM mail_box WHERE {AUTHSQL} ORDER BY email',
                                        'keyfield'=> 'mailbox_id',
                                        'valuefield'=> 'email'
                                     ),
            'default'    => '',
            'value'        => ''
        ),
        'spam_redirect_maildir_purge' => array (
            'datatype'    => 'INTEGER',
            'formtype'    => 'TEXT',
            'default'    => '7',
            'value'        => '',
            'width'        => '10',
            'maxlength'    => '10'
        ),
        'active' => array (
            'datatype'    => 'INTEGER',
            'formtype'    => 'CHECKBOX',
            'default'    => '1',
            'value'        => '1'
        ),
    ##################################
    # ENDE Datatable fields
    ##################################
    )
);
?>
interface/web/mail/form/mail_whitelist.tform.php
File was renamed from interface/web/sites/form/mail_whitelist.tform.php
@@ -80,6 +80,14 @@
            'width'        => '30',
            'maxlength'    => '255'
        ),
        'recipient' => array (
            'datatype'    => 'VARCHAR',
            'formtype'    => 'TEXT',
            'default'    => '',
            'value'        => '',
            'width'        => '30',
            'maxlength'    => '255'
        ),
        'active' => array (
            'datatype'    => 'INTEGER',
            'formtype'    => 'CHECKBOX',
interface/web/mail/lib/admin.conf.php
interface/web/mail/lib/lang/en_mail_alias.lng
File was renamed from interface/web/sites/lib/lang/en_mail_alias.lng
@@ -4,7 +4,8 @@
$wb["active_txt"] = 'Active';
$wb["btn_save_txt"] = 'Save';
$wb["btn_cancel_txt"] = 'Cancel';
$wb["email_error_isemail"] = 'Emailaddress is empty.';
$wb["email_error_isemail"] = 'Email address is invalid.';
$wb["email_error_unique"] = 'Duplicate Emailaddress.';
$wb["no_domain_perm"] = "You have no permission for this domain.";
$wb["destination_error_isemail"] = 'Destination Emailaddress is invalid.';
?>
interface/web/mail/lib/lang/en_mail_alias_list.lng
interface/web/mail/lib/lang/en_mail_blacklist.lng
File was renamed from interface/web/sites/lib/lang/en_mail_blacklist.lng
@@ -1,8 +1,9 @@
<?php
$wb["server_id_txt"] = 'Server';
$wb["address_txt"] = 'Address';
$wb["address_txt"] = 'Block Address';
$wb["active_txt"] = 'Active';
$wb["btn_save_txt"] = 'Save';
$wb["btn_cancel_txt"] = 'Cancel';
$wb["address_error_notempty"] = 'Address is empty.';
$wb["recipient_txt"] = 'Recipient';
?>
interface/web/mail/lib/lang/en_mail_blacklist_list.lng
File was renamed from interface/web/sites/lib/lang/en_mail_blacklist_list.lng
@@ -2,6 +2,8 @@
$wb["list_head_txt"] = 'Email Blacklist';
$wb["server_id_txt"] = 'Server';
$wb["address_txt"] = 'Blacklisted address';
$wb["recipient_txt"] = 'Recipient';
$wb["active_txt"] = 'Active';
$wb["page_txt"] = 'Page';
$wb["page_of_txt"] = 'of';
$wb["page_next_txt"] = 'Next';
interface/web/mail/lib/lang/en_mail_box.lng
File was renamed from interface/web/sites/lib/lang/en_mail_box.lng
@@ -4,10 +4,12 @@
$wb["active_txt"] = 'Active';
$wb["btn_save_txt"] = 'Save';
$wb["btn_cancel_txt"] = 'Cancel';
$wb["email_error_isemail"] = 'Emailaddress is empty.';
$wb["email_error_isemail"] = 'Email address is invalid.';
$wb["email_error_unique"] = 'Duplicate Emailaddress.';
$wb["autoresponder_text_txt"] = 'Text';
$wb["autoresponder_txt"] = 'Autoresponder';
$wb["no_domain_perm"] = "You have no permission for this domain.";
$wb["error_no_pwd"] = "Password is empty.";
$wb["quota_error_isint"] = 'Mailbox size must be a number.';
$wb["quota_txt"] = 'Mailbox size';
?>
interface/web/mail/lib/lang/en_mail_box_list.lng
interface/web/mail/lib/lang/en_mail_domain.lng
File was renamed from interface/web/sites/lib/lang/en_mail_domain.lng
@@ -7,6 +7,6 @@
$wb["btn_cancel_txt"] = 'Cancel';
$wb["domain_error_empty"] = 'Domain is empty.';
$wb["domain_error_unique"] = 'Duplicate Domain.';
$wb["destination_error_empty"] = 'Destination is empty.';
$wb["domain_error_regex"] = 'Invalid domain name.';
?>
interface/web/mail/lib/lang/en_mail_domain_alias.lng
New file
@@ -0,0 +1,13 @@
<?php
$wb["server_id_txt"] = 'Server';
$wb["domain_txt"] = 'Domain';
$wb["destination_txt"] = 'Destination domain';
$wb["active_txt"] = 'Active';
$wb["btn_save_txt"] = 'Save';
$wb["btn_cancel_txt"] = 'Cancel';
$wb["domain_error_empty"] = 'Domain is empty.';
$wb["domain_error_unique"] = 'Duplicate Domain.';
$wb["destination_error_empty"] = 'Destination is empty.';
$wb["domain_error_regex"] = 'Invalid domain name od domain contains invalid characters.';
$wb["destination_error_regex"] = 'Destination domain is invalid or contains invalid characters.';
?>
interface/web/mail/lib/lang/en_mail_domain_alias_list.lng
File was renamed from interface/web/sites/lib/lang/en_mail_domain_alias_list.lng
@@ -10,4 +10,5 @@
$wb["delete_txt"] = 'Delete';
$wb["filter_txt"] = 'Filter';
$wb["add_new_record_txt"] = 'Add new Alias Domain';
$wb["active_txt"] = 'Active';
?>
interface/web/mail/lib/lang/en_mail_domain_catchall.lng
File was renamed from interface/web/sites/lib/lang/en_mail_domain_catchall.lng
@@ -6,4 +6,5 @@
$wb["btn_cancel_txt"] = 'Cancel';
$wb["domain_error_unique"] = "There is already a Catchall record for this domain.";
$wb["no_domain_perm"] = "You have no permission for this domain.";
$wb["domain_error_regex"] = 'Invalid domain name od domain contains invalid characters.';
?>
interface/web/mail/lib/lang/en_mail_domain_catchall_list.lng
File was renamed from interface/web/sites/lib/lang/en_mail_domain_catchall_list.lng
@@ -10,4 +10,5 @@
$wb["delete_txt"] = 'Delete';
$wb["filter_txt"] = 'Filter';
$wb["add_new_record_txt"] = 'Add new Catchall';
$wb["active_txt"] = 'Active';
?>
interface/web/mail/lib/lang/en_mail_domain_list.lng
File was renamed from interface/web/sites/lib/lang/en_mail_domain_list.lng
@@ -9,4 +9,5 @@
$wb["delete_txt"] = 'Delete';
$wb["filter_txt"] = 'Filter';
$wb["add_new_record_txt"] = 'Add new Domain';
$wb["active_txt"] = 'Active';
?>
interface/web/mail/lib/lang/en_mail_domain_relay.lng
File was renamed from interface/web/sites/lib/lang/en_mail_domain_relay.lng
@@ -6,5 +6,5 @@
$wb["btn_cancel_txt"] = 'Cancel';
$wb["domain_error_empty"] = 'Domain is empty.';
$wb["domain_error_unique"] = 'Duplicate Domain.';
$wb["destination_error_empty"] = 'Destination is empty.';
$wb["domain_error_regex"] = 'Invalid domain name od domain contains invalid characters.';
?>
interface/web/mail/lib/lang/en_mail_domain_relay_list.lng
File was renamed from interface/web/sites/lib/lang/en_mail_domain_relay_list.lng
@@ -9,4 +9,5 @@
$wb["delete_txt"] = 'Delete';
$wb["filter_txt"] = 'Filter';
$wb["add_new_record_txt"] = 'Add new Relay Domain';
$wb["active_txt"] = 'Active';
?>
interface/web/mail/lib/lang/en_mail_forward.lng
interface/web/mail/lib/lang/en_mail_forward_list.lng
interface/web/mail/lib/lang/en_mail_spamfilter.lng
New file
@@ -0,0 +1,19 @@
<?php
$wb["email_txt"] = 'Email';
$wb["spam_rewrite_score_int_txt"] = 'Rewrite score';
$wb["spam_redirect_score_int_txt"] = 'Redirect score';
$wb["spam_delete_score_int_txt"] = 'Delete score';
$wb["spam_rewrite_subject_txt"] = 'Rewrite subject';
$wb["spam_redirect_maildir_txt"] = 'Redirect mailbox';
$wb["btn_save_txt"] = 'Save';
$wb["btn_cancel_txt"] = 'Cancel';
$wb["active_txt"] = 'Active';
$wb["spam_rewrite_txt"] = 'Rewrite email subject above this score.';
$wb["spam_redirect_txt"] = 'Redirect email above this score to the selected mailbox.';
$wb["spam_delete_txt"] = 'Delete email above this score.';
$wb["disable_txt"] = 'Hint: To disable a filtering option, set the score to 0.00.';
$wb["email_error_isemail"] = 'Email address is invalid.';
$wb["email_error_unique"] = 'There is already an spamfilter record for this email address.';
$wb["spam_redirect_maildir_purge_txt"] = 'Purge Maildir after';
$wb["days_txt"] = 'Days.';
?>
interface/web/mail/lib/lang/en_mail_spamfilter_list.lng
New file
@@ -0,0 +1,13 @@
<?php
$wb["list_head_txt"] = 'Spamfilter';
$wb["active_txt"] = 'Active';
$wb["server_id_txt"] = 'Server';
$wb["email_txt"] = 'Email';
$wb["page_txt"] = 'Page';
$wb["page_of_txt"] = 'of';
$wb["page_next_txt"] = 'Next';
$wb["page_back_txt"] = 'Back';
$wb["delete_txt"] = 'Delete';
$wb["filter_txt"] = 'Filter';
$wb["add_new_record_txt"] = 'Add new Spamfilter record';
?>
interface/web/mail/lib/lang/en_mail_whitelist.lng
copy from interface/web/sites/lib/lang/en_mail_blacklist.lng copy to interface/web/mail/lib/lang/en_mail_whitelist.lng
File was copied from interface/web/sites/lib/lang/en_mail_blacklist.lng
@@ -1,6 +1,7 @@
<?php
$wb["server_id_txt"] = 'Server';
$wb["address_txt"] = 'Address';
$wb["address_txt"] = 'Witelist Address';
$wb["recipient_txt"] = 'Recipient';
$wb["active_txt"] = 'Active';
$wb["btn_save_txt"] = 'Save';
$wb["btn_cancel_txt"] = 'Cancel';
interface/web/mail/lib/lang/en_mail_whitelist_list.lng
File was renamed from interface/web/sites/lib/lang/en_mail_whitelist_list.lng
@@ -2,6 +2,8 @@
$wb["list_head_txt"] = 'Email Whitelist';
$wb["server_id_txt"] = 'Server';
$wb["address_txt"] = 'Whitelisted address';
$wb["recipient_txt"] = 'Recipient';
$wb["active_txt"] = 'Active';
$wb["page_txt"] = 'Page';
$wb["page_of_txt"] = 'of';
$wb["page_next_txt"] = 'Next';
interface/web/mail/lib/lang/fr_mail_domain.lng
interface/web/mail/lib/lang/fr_mail_domain_list.lng
interface/web/mail/lib/lang/se_mail_alias.lng
interface/web/mail/lib/lang/se_mail_alias_list.lng
interface/web/mail/lib/lang/se_mail_blacklist.lng
interface/web/mail/lib/lang/se_mail_blacklist_list.lng
interface/web/mail/lib/lang/se_mail_box.lng
interface/web/mail/lib/lang/se_mail_box_list.lng
interface/web/mail/lib/lang/se_mail_domain.lng
interface/web/mail/lib/lang/se_mail_domain_alias.lng
interface/web/mail/lib/lang/se_mail_domain_alias_list.lng
interface/web/mail/lib/lang/se_mail_domain_catchall.lng
interface/web/mail/lib/lang/se_mail_domain_catchall_list.lng
interface/web/mail/lib/lang/se_mail_domain_list.lng
interface/web/mail/lib/lang/se_mail_domain_relay.lng
interface/web/mail/lib/lang/se_mail_domain_relay_list.lng
interface/web/mail/lib/lang/se_mail_forward.lng
interface/web/mail/lib/lang/se_mail_forward_list.lng
interface/web/mail/lib/lang/se_mail_whitelist.lng
interface/web/mail/lib/lang/se_mail_whitelist_list.lng
interface/web/mail/lib/module.conf.php
New file
@@ -0,0 +1,109 @@
<?php
$module = array (
  'name' => 'mail',
  'title' => 'Email',
  'template' => 'module.tpl.htm',
  'navframe_page' => '',
  'startpage' => 'mail/index.php',
  'tab_width' => '',
  'nav' =>
  array (
    0 =>
    array (
      'title' => 'Email Accounts',
      'open' => 1,
      'items' =>
      array (
        0 =>
        array (
          'title' => 'Domain',
          'target' => 'content',
          'link' => 'mail/mail_domain_list.php',
        ),
        1 =>
        array (
          'title' => 'Domain Alias',
          'target' => 'content',
          'link' => 'mail/mail_domain_alias_list.php',
        ),
        2 =>
        array (
          'title' => 'Domain Relay',
          'target' => 'content',
          'link' => 'mail/mail_domain_relay_list.php',
        ),
        3 =>
        array (
          'title' => 'Email Mailbox',
          'target' => 'content',
          'link' => 'mail/mail_box_list.php',
        ),
        4 =>
        array (
          'title' => 'Email Alias',
          'target' => 'content',
          'link' => 'mail/mail_alias_list.php',
        ),
        5 =>
        array (
          'title' => 'Email Forward',
          'target' => 'content',
          'link' => 'mail/mail_forward_list.php',
        ),
        6 =>
        array (
          'title' => 'Email Catchall',
          'target' => 'content',
          'link' => 'mail/mail_domain_catchall_list.php',
        ),
        7 =>
        array (
          'title' => 'Email Routing',
          'target' => 'content',
          'link' => '',
        ),
      ),
    ),
    1 =>
    array (
      'title' => 'Email Filter',
      'open' => 1,
      'items' =>
      array (
        0 =>
        array (
          'title' => 'Whitelist',
          'target' => 'content',
          'link' => 'mail/mail_whitelist_list.php',
        ),
        1 =>
        array (
          'title' => 'Blacklist',
          'target' => 'content',
          'link' => 'mail/mail_blacklist_list.php',
        ),
        2 =>
        array (
          'title' => 'Spamfilter',
          'target' => 'content',
          'link' => 'mail/mail_spamfilter_list.php',
        ),
      ),
    ),
    2 =>
    array (
      'title' => 'Fetchmail',
      'open' => 1,
      'items' =>
      array (
        0 =>
        array (
          'title' => 'Fetchmail Accounts',
          'target' => 'content',
          'link' => 'mail/fetchmail_list.php',
        ),
      ),
    ),
  ),
)
?>
interface/web/mail/list/mail_alias.list.php
interface/web/mail/list/mail_blacklist.list.php
File was renamed from interface/web/sites/list/mail_blacklist.list.php
@@ -47,12 +47,27 @@
* Suchfelder
*****************************************************/
$liste["item"][] = array(    'field'        => "active",
                            'datatype'    => "VARCHAR",
                            'formtype'    => "SELECT",
                            'op'        => "=",
                            'prefix'    => "",
                            'suffix'    => "",
                            'width'        => "",
                            'value'        => array('1' => "Yes",'0' => "No"));
$liste["item"][] = array(    'field'        => "server_id",
                            'datatype'    => "VARCHAR",
                            'formtype'    => "TEXT",
                            'formtype'    => "SELECT",
                            'op'        => "like",
                            'prefix'    => "%",
                            'suffix'    => "%",
                            'datasource'    => array (     'type'    => 'SQL',
                                                        'querystring' => 'SELECT server_id,server_name FROM server WHERE {AUTHSQL} ORDER BY server_name',
                                                        'keyfield'=> 'server_id',
                                                        'valuefield'=> 'server_name'
                                                       ),
                            'width'        => "",
                            'value'        => "");
@@ -66,4 +81,13 @@
                            'value'        => "");
$liste["item"][] = array(    'field'        => "recipient",
                            'datatype'    => "VARCHAR",
                            'formtype'    => "TEXT",
                            'op'        => "like",
                            'prefix'    => "%",
                            'suffix'    => "%",
                            'width'        => "",
                            'value'        => "");
?>
interface/web/mail/list/mail_box.list.php
interface/web/mail/list/mail_domain.list.php
File was renamed from interface/web/sites/list/mail_domain.list.php
@@ -47,12 +47,28 @@
* Suchfelder
*****************************************************/
$liste["item"][] = array(    'field'        => "active",
                            'datatype'    => "VARCHAR",
                            'formtype'    => "SELECT",
                            'op'        => "=",
                            'prefix'    => "",
                            'suffix'    => "",
                            'width'        => "",
                            'value'        => array('1' => "Yes",'0' => "No"));
$liste["item"][] = array(    'field'        => "server_id",
                            'datatype'    => "VARCHAR",
                            'formtype'    => "TEXT",
                            'formtype'    => "SELECT",
                            'op'        => "like",
                            'prefix'    => "%",
                            'suffix'    => "%",
                            'datasource'    => array (     'type'    => 'SQL',
                                                        'querystring' => 'SELECT server_id,server_name FROM server WHERE {AUTHSQL} ORDER BY server_name',
                                                        'keyfield'=> 'server_id',
                                                        'valuefield'=> 'server_name'
                                                       ),
                            'width'        => "",
                            'value'        => "");
interface/web/mail/list/mail_domain_alias.list.php
File was renamed from interface/web/sites/list/mail_domain_alias.list.php
@@ -47,12 +47,27 @@
* Suchfelder
*****************************************************/
$liste["item"][] = array(    'field'        => "active",
                            'datatype'    => "VARCHAR",
                            'formtype'    => "SELECT",
                            'op'        => "=",
                            'prefix'    => "",
                            'suffix'    => "",
                            'width'        => "",
                            'value'        => array('1' => "Yes",'0' => "No"));
$liste["item"][] = array(    'field'        => "server_id",
                            'datatype'    => "VARCHAR",
                            'formtype'    => "TEXT",
                            'formtype'    => "SELECT",
                            'op'        => "like",
                            'prefix'    => "%",
                            'suffix'    => "%",
                            'datasource'    => array (     'type'    => 'SQL',
                                                        'querystring' => 'SELECT server_id,server_name FROM server WHERE {AUTHSQL} ORDER BY server_name',
                                                        'keyfield'=> 'server_id',
                                                        'valuefield'=> 'server_name'
                                                       ),
                            'width'        => "",
                            'value'        => "");
interface/web/mail/list/mail_domain_catchall.list.php
File was renamed from interface/web/sites/list/mail_domain_catchall.list.php
@@ -47,6 +47,15 @@
* Suchfelder
*****************************************************/
$liste["item"][] = array(    'field'        => "active",
                            'datatype'    => "VARCHAR",
                            'formtype'    => "SELECT",
                            'op'        => "=",
                            'prefix'    => "",
                            'suffix'    => "",
                            'width'        => "",
                            'value'        => array('1' => "Yes",'0' => "No"));
$liste["item"][] = array(    'field'        => "server_id",
                            'datatype'    => "VARCHAR",
                            'formtype'    => "TEXT",
interface/web/mail/list/mail_domain_relay.list.php
File was renamed from interface/web/sites/list/mail_domain_relay.list.php
@@ -47,12 +47,27 @@
* Suchfelder
*****************************************************/
$liste["item"][] = array(    'field'        => "active",
                            'datatype'    => "VARCHAR",
                            'formtype'    => "SELECT",
                            'op'        => "=",
                            'prefix'    => "",
                            'suffix'    => "",
                            'width'        => "",
                            'value'        => array('1' => "Yes",'0' => "No"));
$liste["item"][] = array(    'field'        => "server_id",
                            'datatype'    => "VARCHAR",
                            'formtype'    => "TEXT",
                            'formtype'    => "SELECT",
                            'op'        => "like",
                            'prefix'    => "%",
                            'suffix'    => "%",
                            'datasource'    => array (     'type'    => 'SQL',
                                                        'querystring' => 'SELECT server_id,server_name FROM server WHERE {AUTHSQL} ORDER BY server_name',
                                                        'keyfield'=> 'server_id',
                                                        'valuefield'=> 'server_name'
                                                       ),
                            'width'        => "",
                            'value'        => "");
interface/web/mail/list/mail_forward.list.php
interface/web/mail/list/mail_spamfilter.list.php
New file
@@ -0,0 +1,85 @@
<?php
/*
    Datatypes:
    - INTEGER
    - DOUBLE
    - CURRENCY
    - VARCHAR
    - TEXT
    - DATE
*/
// Name of the list
$liste["name"]                 = "mail_spamfilter";
// Database table
$liste["table"]             = "mail_spamfilter";
// Index index field of the database table
$liste["table_idx"]            = "spamfilter_id";
// Search Field Prefix
$liste["search_prefix"]     = "search_";
// Records per page
$liste["records_per_page"]     = 15;
// Script File of the list
$liste["file"]                = "mail_spamfilter_list.php";
// Script file of the edit form
$liste["edit_file"]            = "mail_spamfilter_edit.php";
// Script File of the delete script
$liste["delete_file"]        = "mail_spamfilter_del.php";
// Paging Template
$liste["paging_tpl"]        = "templates/paging.tpl.htm";
// Enable auth
$liste["auth"]                = "yes";
/*****************************************************
* Suchfelder
*****************************************************/
$liste["item"][] = array(    'field'        => "active",
                            'datatype'    => "VARCHAR",
                            'formtype'    => "SELECT",
                            'op'        => "=",
                            'prefix'    => "",
                            'suffix'    => "",
                            'width'        => "",
                            'value'        => array('1' => "Yes",'0' => "No"));
$liste["item"][] = array(    'field'        => "server_id",
                            'datatype'    => "VARCHAR",
                            'formtype'    => "SELECT",
                            'op'        => "like",
                            'prefix'    => "%",
                            'suffix'    => "%",
                            'datasource'    => array (     'type'    => 'SQL',
                                                        'querystring' => 'SELECT server_id,server_name FROM server WHERE {AUTHSQL} ORDER BY server_name',
                                                        'keyfield'=> 'server_id',
                                                        'valuefield'=> 'server_name'
                                                       ),
                            'width'        => "",
                            'value'        => "");
$liste["item"][] = array(    'field'        => "email",
                            'datatype'    => "VARCHAR",
                            'formtype'    => "TEXT",
                            'op'        => "like",
                            'prefix'    => "%",
                            'suffix'    => "%",
                            'width'        => "",
                            'value'        => "");
?>
interface/web/mail/list/mail_whitelist.list.php
File was renamed from interface/web/sites/list/mail_whitelist.list.php
@@ -47,7 +47,31 @@
* Suchfelder
*****************************************************/
$liste["item"][] = array(    'field'        => "active",
                            'datatype'    => "VARCHAR",
                            'formtype'    => "SELECT",
                            'op'        => "=",
                            'prefix'    => "",
                            'suffix'    => "",
                            'width'        => "",
                            'value'        => array('1' => "Yes",'0' => "No"));
$liste["item"][] = array(    'field'        => "server_id",
                            'datatype'    => "VARCHAR",
                            'formtype'    => "SELECT",
                            'op'        => "like",
                            'prefix'    => "%",
                            'suffix'    => "%",
                            'datasource'    => array (     'type'    => 'SQL',
                                                        'querystring' => 'SELECT server_id,server_name FROM server WHERE {AUTHSQL} ORDER BY server_name',
                                                        'keyfield'=> 'server_id',
                                                        'valuefield'=> 'server_name'
                                                       ),
                            'width'        => "",
                            'value'        => "");
$liste["item"][] = array(    'field'        => "address",
                            'datatype'    => "VARCHAR",
                            'formtype'    => "TEXT",
                            'op'        => "like",
@@ -56,7 +80,7 @@
                            'width'        => "",
                            'value'        => "");
$liste["item"][] = array(    'field'        => "address",
$liste["item"][] = array(    'field'        => "recipient",
                            'datatype'    => "VARCHAR",
                            'formtype'    => "TEXT",
                            'op'        => "like",
interface/web/mail/mail_alias_del.php
interface/web/mail/mail_alias_edit.php
interface/web/mail/mail_alias_list.php
interface/web/mail/mail_blacklist_del.php
interface/web/mail/mail_blacklist_edit.php
copy from interface/web/sites/mail_box_edit.php copy to interface/web/mail/mail_blacklist_edit.php
File was copied from interface/web/sites/mail_box_edit.php
@@ -32,7 +32,7 @@
* Begin Form configuration
******************************************/
$tform_def_file = "form/mail_box.tform.php";
$tform_def_file = "form/mail_blacklist.tform.php";
/******************************************
* End Form configuration
@@ -56,19 +56,21 @@
    function onShowEnd() {
        global $app, $conf;
        
        $email = $this->dataRecord["email"];
        $email_parts = explode("@",$email);
        $app->tpl->setVar("email_local_part",$email_parts[0]);
        // Getting recipient from data record
        $recipient = $this->dataRecord["recipient"];
        $email_parts = explode("@",$recipient);
        $app->tpl->setVar("recipient_local_part",$email_parts[0]);
        
        // Getting Domains of the user
        $sql = "SELECT domain FROM mail_domain WHERE type = 'local' AND ".$app->tform->getAuthSQL('r');
        $domains = $app->db->queryAllRecords($sql);
        $domain_select = '';
        if($_SESSION["s"]["user"]["typ"] == 'admin') $domain_select .= '<option value=""></option>';
        foreach( $domains as $domain) {
            $selected = ($domain["domain"] == $email_parts[1])?'SELECTED':'';
            $domain_select .= "<option value='$domain[domain]' $selected>$domain[domain]</option>\r\n";
        }
        $app->tpl->setVar("email_domain",$domain_select);
        $app->tpl->setVar("recipient_domain",$domain_select);
        
        parent::onShowEnd();
    }
@@ -77,21 +79,20 @@
        global $app, $conf;
        
        // Check if Domain belongs to user
        $domain = $app->db->queryOneRecord("SELECT server_id, domain FROM mail_domain WHERE domain = '".$app->db->quote($_POST["email_domain"])."' AND ".$app->tform->getAuthSQL('r'));
        if($domain["domain"] != $_POST["email_domain"]) $app->tform->errorMessage .= $app->tform->wordbook["no_domain_perm"];
        // if its an insert, check for password
        if($this->id == 0 and $_POST["cryptpwd"] == '') {
            $app->tform->errorMessage .= $app->tform->wordbook["error_no_pwd"]."<br>";
        }
        $domain = $app->db->queryOneRecord("SELECT server_id, domain FROM mail_domain WHERE domain = '".$app->db->quote($_POST["recipient_domain"])."' AND ".$app->tform->getAuthSQL('r'));
        if($domain["domain"] != $_POST["recipient_domain"]) $app->tform->errorMessage .= $app->tform->wordbook["no_domain_perm"];
        
        // compose the email field
        $this->dataRecord["email"] = $_POST["email_local_part"]."@".$_POST["email_domain"];
        if($_POST["recipient_local_part"] != '') {
            $this->dataRecord["recipient"] = $_POST["recipient_local_part"]."@".$_POST["recipient_domain"];
        } else {
            $this->dataRecord["recipient"] = $_POST["recipient_domain"];
        }
        // Set the server id of the mailbox = server ID of mail domain.
        $this->dataRecord["server_id"] = $domain["server_id"];
        //$this->dataRecord["server_id"] = $domain["server_id"];
        
        unset($this->dataRecord["email_local_part"]);
        unset($this->dataRecord["email_domain"]);
        unset($this->dataRecord["recipient_local_part"]);
        unset($this->dataRecord["recipient_domain"]);
        
        parent::onSubmit();
    }
@@ -101,4 +102,5 @@
$app->tform_actions = new page_action;
$app->tform_actions->onLoad();
?>
interface/web/mail/mail_blacklist_list.php
interface/web/mail/mail_box_del.php
interface/web/mail/mail_box_edit.php
File was renamed from interface/web/sites/mail_box_edit.php
@@ -93,6 +93,13 @@
        unset($this->dataRecord["email_local_part"]);
        unset($this->dataRecord["email_domain"]);
        
        // setting Maildir
        $app->uses('getconf');
        $mail_config = $app->getconf->get_server_config($domain["server_id"],'mail');
        $maildir = str_replace("[domain]",$domain["domain"],$mail_config["maildir_path"]);
        $maildir = str_replace("[localpart]",$_POST["email_local_part"],$maildir);
        $this->dataRecord["maildir"] = $maildir;
        parent::onSubmit();
    }
    
interface/web/mail/mail_box_list.php
interface/web/mail/mail_domain_alias_del.php
interface/web/mail/mail_domain_alias_edit.php
interface/web/mail/mail_domain_alias_list.php
interface/web/mail/mail_domain_catchall_del.php
interface/web/mail/mail_domain_catchall_edit.php
interface/web/mail/mail_domain_catchall_list.php
interface/web/mail/mail_domain_del.php
interface/web/mail/mail_domain_edit.php
interface/web/mail/mail_domain_list.php
interface/web/mail/mail_domain_relay_del.php
interface/web/mail/mail_domain_relay_edit.php
interface/web/mail/mail_domain_relay_list.php
interface/web/mail/mail_domain_route_del.php
copy from interface/web/sites/mail_blacklist_edit.php copy to interface/web/mail/mail_domain_route_del.php
File was copied from interface/web/sites/mail_blacklist_edit.php
@@ -1,4 +1,5 @@
<?php
/*
Copyright (c) 2005, Till Brehm, projektfarm Gmbh
All rights reserved.
@@ -27,12 +28,12 @@
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
/******************************************
* Begin Form configuration
******************************************/
$tform_def_file = "form/mail_blacklist.tform.php";
$list_def_file = "list/mail_domain_route.list.php";
$tform_def_file = "form/mail_domain_route.tform.php";
/******************************************
* End Form configuration
@@ -41,15 +42,13 @@
require_once('../../lib/config.inc.php');
require_once('../../lib/app.inc.php');
// Checking module permissions
// Checke Berechtigungen für Modul
if(!stristr($_SESSION["s"]["user"]["modules"],$_SESSION["s"]["module"]["name"])) {
    header("Location: ../index.php");
    exit;
}
// Loading classes
$app->uses('tpl,tform,tform_actions');
$app->tform_actions->onLoad();
$app->uses("tform_actions");
$app->tform_actions->onDelete();
?>
interface/web/mail/mail_domain_route_edit.php
File was renamed from interface/web/sites/mail_blacklist_edit.php
@@ -32,7 +32,7 @@
* Begin Form configuration
******************************************/
$tform_def_file = "form/mail_blacklist.tform.php";
$tform_def_file = "form/mail_domain_route.tform.php";
/******************************************
* End Form configuration
@@ -49,7 +49,8 @@
// Loading classes
$app->uses('tpl,tform,tform_actions');
$app->tform_actions->onLoad();
// let tform_actions handle the page
$app->tform_actions->onLoad();
?>
interface/web/mail/mail_domain_route_list.php
New file
@@ -0,0 +1,30 @@
<?php
require_once('../../lib/config.inc.php');
require_once('../../lib/app.inc.php');
/******************************************
* Begin Form configuration
******************************************/
$list_def_file = "list/mail_domain_route.list.php";
/******************************************
* End Form configuration
******************************************/
// Checking module permissions
if(!stristr($_SESSION["s"]["user"]["modules"],$_SESSION["s"]["module"]["name"])) {
    header("Location: ../index.php");
    exit;
}
$app->uses('listform_actions');
// Limit the results to alias domains
$app->listform_actions->SQLExtWhere = "";
// Generate the page
$app->listform_actions->onLoad();
?>
interface/web/mail/mail_forward_del.php
interface/web/mail/mail_forward_edit.php
interface/web/mail/mail_forward_list.php
interface/web/mail/mail_spamfilter_del.php
copy from interface/web/sites/mail_blacklist_edit.php copy to interface/web/mail/mail_spamfilter_del.php
File was copied from interface/web/sites/mail_blacklist_edit.php
@@ -1,4 +1,5 @@
<?php
/*
Copyright (c) 2005, Till Brehm, projektfarm Gmbh
All rights reserved.
@@ -27,12 +28,12 @@
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
/******************************************
* Begin Form configuration
******************************************/
$tform_def_file = "form/mail_blacklist.tform.php";
$list_def_file = "list/mail_spamfilter.list.php";
$tform_def_file = "form/mail_spamfilter.tform.php";
/******************************************
* End Form configuration
@@ -41,15 +42,13 @@
require_once('../../lib/config.inc.php');
require_once('../../lib/app.inc.php');
// Checking module permissions
// Checke Berechtigungen für Modul
if(!stristr($_SESSION["s"]["user"]["modules"],$_SESSION["s"]["module"]["name"])) {
    header("Location: ../index.php");
    exit;
}
// Loading classes
$app->uses('tpl,tform,tform_actions');
$app->tform_actions->onLoad();
$app->uses("tform_actions");
$app->tform_actions->onDelete();
?>
interface/web/mail/mail_spamfilter_edit.php
copy from interface/web/sites/mail_box_edit.php copy to interface/web/mail/mail_spamfilter_edit.php
File was copied from interface/web/sites/mail_box_edit.php
@@ -32,7 +32,7 @@
* Begin Form configuration
******************************************/
$tform_def_file = "form/mail_box.tform.php";
$tform_def_file = "form/mail_spamfilter.tform.php";
/******************************************
* End Form configuration
@@ -56,6 +56,7 @@
    function onShowEnd() {
        global $app, $conf;
        
        // Getting email from data record
        $email = $this->dataRecord["email"];
        $email_parts = explode("@",$email);
        $app->tpl->setVar("email_local_part",$email_parts[0]);
@@ -70,6 +71,18 @@
        }
        $app->tpl->setVar("email_domain",$domain_select);
        
        // calculate scores
        if(count($this->dataRecord) > 0) {
            $app->tpl->setVar("spam_rewrite_score_int",number_format($this->dataRecord["spam_rewrite_score_int"] / 100, 2, '.', ''));
            $app->tpl->setVar("spam_redirect_score_int",number_format($this->dataRecord["spam_redirect_score_int"] / 100, 2, '.', ''));
            $app->tpl->setVar("spam_delete_score_int",number_format($this->dataRecord["spam_delete_score_int"] / 100, 2, '.', ''));
        }
        // Changing maildir to mailbox_id
        $sql = "SELECT mailbox_id FROM mail_box WHERE maildir = '".$this->dataRecord["spam_redirect_maildir"]."' AND ".$app->tform->getAuthSQL('r');
        $mailbox = $app->db->queryOneRecord($sql);
        $this->dataRecord["spam_redirect_maildir"] = $mailbox["mailbox_id"];
        parent::onShowEnd();
    }
    
@@ -80,18 +93,27 @@
        $domain = $app->db->queryOneRecord("SELECT server_id, domain FROM mail_domain WHERE domain = '".$app->db->quote($_POST["email_domain"])."' AND ".$app->tform->getAuthSQL('r'));
        if($domain["domain"] != $_POST["email_domain"]) $app->tform->errorMessage .= $app->tform->wordbook["no_domain_perm"];
        
        // if its an insert, check for password
        if($this->id == 0 and $_POST["cryptpwd"] == '') {
            $app->tform->errorMessage .= $app->tform->wordbook["error_no_pwd"]."<br>";
        }
        // compose the email field
        if($_POST["email_local_part"] != '') {
        $this->dataRecord["email"] = $_POST["email_local_part"]."@".$_POST["email_domain"];
        } else {
            $this->dataRecord["email"] = $_POST["email_domain"];
        }
        // Set the server id of the mailbox = server ID of mail domain.
        $this->dataRecord["server_id"] = $domain["server_id"];
        
        unset($this->dataRecord["email_local_part"]);
        unset($this->dataRecord["email_domain"]);
        // calculate scores
        $this->dataRecord["spam_rewrite_score_int"]     = $_POST["spam_rewrite_score_int"] * 100;
        $this->dataRecord["spam_redirect_score_int"]     = $_POST["spam_redirect_score_int"] * 100;
        $this->dataRecord["spam_delete_score_int"]         = $_POST["spam_delete_score_int"] * 100;
        // Changing mailbox_id to maildir
        $sql = "SELECT maildir FROM mail_box WHERE mailbox_id = '".intval($_POST["spam_redirect_maildir"])."' AND ".$app->tform->getAuthSQL('r');
        $mailbox = $app->db->queryOneRecord($sql);
        $this->dataRecord["spam_redirect_maildir"] = $mailbox["maildir"];
        
        parent::onSubmit();
    }
@@ -101,4 +123,5 @@
$app->tform_actions = new page_action;
$app->tform_actions->onLoad();
?>
interface/web/mail/mail_spamfilter_list.php
New file
@@ -0,0 +1,26 @@
<?php
require_once('../../lib/config.inc.php');
require_once('../../lib/app.inc.php');
/******************************************
* Begin Form configuration
******************************************/
$list_def_file = "list/mail_spamfilter.list.php";
/******************************************
* End Form configuration
******************************************/
// Checking module permissions
if(!stristr($_SESSION["s"]["user"]["modules"],$_SESSION["s"]["module"]["name"])) {
    header("Location: ../index.php");
    exit;
}
$app->uses('listform_actions');
$app->listform_actions->onLoad();
?>
interface/web/mail/mail_whitelist_del.php
interface/web/mail/mail_whitelist_edit.php
copy from interface/web/sites/mail_box_edit.php copy to interface/web/mail/mail_whitelist_edit.php
File was copied from interface/web/sites/mail_box_edit.php
@@ -32,7 +32,7 @@
* Begin Form configuration
******************************************/
$tform_def_file = "form/mail_box.tform.php";
$tform_def_file = "form/mail_whitelist.tform.php";
/******************************************
* End Form configuration
@@ -56,19 +56,21 @@
    function onShowEnd() {
        global $app, $conf;
        
        $email = $this->dataRecord["email"];
        $email_parts = explode("@",$email);
        $app->tpl->setVar("email_local_part",$email_parts[0]);
        // Getting recipient from data record
        $recipient = $this->dataRecord["recipient"];
        $email_parts = explode("@",$recipient);
        $app->tpl->setVar("recipient_local_part",$email_parts[0]);
        
        // Getting Domains of the user
        $sql = "SELECT domain FROM mail_domain WHERE type = 'local' AND ".$app->tform->getAuthSQL('r');
        $domains = $app->db->queryAllRecords($sql);
        $domain_select = '';
        if($_SESSION["s"]["user"]["typ"] == 'admin') $domain_select .= '<option value=""></option>';
        foreach( $domains as $domain) {
            $selected = ($domain["domain"] == $email_parts[1])?'SELECTED':'';
            $domain_select .= "<option value='$domain[domain]' $selected>$domain[domain]</option>\r\n";
        }
        $app->tpl->setVar("email_domain",$domain_select);
        $app->tpl->setVar("recipient_domain",$domain_select);
        
        parent::onShowEnd();
    }
@@ -77,21 +79,20 @@
        global $app, $conf;
        
        // Check if Domain belongs to user
        $domain = $app->db->queryOneRecord("SELECT server_id, domain FROM mail_domain WHERE domain = '".$app->db->quote($_POST["email_domain"])."' AND ".$app->tform->getAuthSQL('r'));
        if($domain["domain"] != $_POST["email_domain"]) $app->tform->errorMessage .= $app->tform->wordbook["no_domain_perm"];
        // if its an insert, check for password
        if($this->id == 0 and $_POST["cryptpwd"] == '') {
            $app->tform->errorMessage .= $app->tform->wordbook["error_no_pwd"]."<br>";
        }
        $domain = $app->db->queryOneRecord("SELECT server_id, domain FROM mail_domain WHERE domain = '".$app->db->quote($_POST["recipient_domain"])."' AND ".$app->tform->getAuthSQL('r'));
        if($domain["domain"] != $_POST["recipient_domain"]) $app->tform->errorMessage .= $app->tform->wordbook["no_domain_perm"];
        
        // compose the email field
        $this->dataRecord["email"] = $_POST["email_local_part"]."@".$_POST["email_domain"];
        if($_POST["recipient_local_part"] != '') {
            $this->dataRecord["recipient"] = $_POST["recipient_local_part"]."@".$_POST["recipient_domain"];
        } else {
            $this->dataRecord["recipient"] = $_POST["recipient_domain"];
        }
        // Set the server id of the mailbox = server ID of mail domain.
        $this->dataRecord["server_id"] = $domain["server_id"];
        // $this->dataRecord["server_id"] = $domain["server_id"];
        
        unset($this->dataRecord["email_local_part"]);
        unset($this->dataRecord["email_domain"]);
        unset($this->dataRecord["recipient_local_part"]);
        unset($this->dataRecord["recipient_domain"]);
        
        parent::onSubmit();
    }
@@ -101,4 +102,5 @@
$app->tform_actions = new page_action;
$app->tform_actions->onLoad();
?>
interface/web/mail/mail_whitelist_list.php
interface/web/mail/templates/mail_alias_edit.htm
interface/web/mail/templates/mail_alias_list.htm
interface/web/mail/templates/mail_blacklist_edit.htm
File was renamed from interface/web/sites/templates/mail_blacklist_edit.htm
@@ -12,6 +12,10 @@
    <td width="366" class="frmText11"><input name="address" type="text" class="text" value="{tmpl_var name='address'}" size="30" maxlength="255"></td>
  </tr>
  <tr>
    <td width="126" class="frmText11">{tmpl_var name='recipient_txt'}:</td>
    <td width="366" class="frmText11"><input name="recipient_local_part" type="text" class="text" value="{tmpl_var name='recipient_local_part'}" size="10" maxlength="50"> @ <select name="recipient_domain">{tmpl_var name="recipient_domain"}</select></td>
  </tr>
  <tr>
    <td width="126" class="frmText11">{tmpl_var name='active_txt'}:</td>
    <td width="366" class="frmText11">{tmpl_var name='active'}</td>
  </tr>  <tr>
interface/web/mail/templates/mail_blacklist_list.htm
New file
@@ -0,0 +1,32 @@
<form name="myform" action="mail_blacklist_list.php" method="POST">
<div class="frmTextHead"><tmpl_var name="list_head_txt"></div><br />
<input type="button" value="{tmpl_var name="add_new_record_txt"}" onClick="location.href='mail_blacklist_edit.php'" /><br /><br />
<table width="100%" border="0" cellspacing="0" cellpadding="4">
  <tr>
    <td class="tblHead"><tmpl_var name="active_txt"></td>
    <td class="tblHead"><tmpl_var name="server_id_txt"></td>
    <td class="tblHead"><tmpl_var name="address_txt"></td>
    <td class="tblHead"><tmpl_var name="recipient_txt"></td>
    <td class="tblHead">&nbsp;</td>
  </tr>
  <tr>
    <td class="frmText11"><select name="search_active" onChange="document.myform.submit();">{tmpl_var name='search_active'}</select></td>
    <td class="frmText11"><select name="search_server_id" onChange="document.myform.submit();">{tmpl_var name='search_server_id'}</select></td>
    <td class="frmText11"><input type="text" name="search_address" value="{tmpl_var name='search_address'}" class="text" /></td>
    <td class="frmText11"><input type="text" name="search_recipient" value="{tmpl_var name='search_recipient'}" class="text" /></td>
    <td class="frmText11" align="right"><input name="Filter" type="submit" id="Filter" value="{tmpl_var name="filter_txt"}"></td>
  </tr>
  <tmpl_loop name="records">
  <tr bgcolor="{tmpl_var name="bgcolor"}">
    <td class="frmText11"><a href="mail_blacklist_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="active"}</a></td>
    <td class="frmText11"><a href="mail_blacklist_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="server_id"}</a></td>
    <td class="frmText11"><a href="mail_blacklist_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="address"}</a></td>
    <td class="frmText11"><a href="mail_blacklist_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="recipient"}</a></td>
    <td class="frmText11" align="right">[<a href="javascript: del_record('mail_blacklist_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}');" class="frmText11">{tmpl_var name='delete_txt'}</a>]</td>
  </tr>
  </tmpl_loop>
  <tr>
      <td colspan="5" height="40" align="center" class="tblFooter"><tmpl_var name="paging"></td>
  </tr>
</table>
</form>
interface/web/mail/templates/mail_box_autoresponder_edit.htm
interface/web/mail/templates/mail_box_list.htm
interface/web/mail/templates/mail_box_mailbox_edit.htm
File was renamed from interface/web/sites/templates/mail_box_mailbox_edit.htm
@@ -8,6 +8,10 @@
    <td width="366" class="frmText11"><input name="cryptpwd" type="password" class="text" value="{tmpl_var name='cryptpwd'}" size="25" maxlength="255"></td>
  </tr>
  <tr>
    <td width="126" class="frmText11">{tmpl_var name='quota_txt'}:</td>
    <td width="366" class="frmText11"><input name="quota" type="text" class="text" value="{tmpl_var name='quota'}" size="5" maxlength="5"> MB</td>
  </tr>
  <tr>
    <td width="126" class="frmText11">{tmpl_var name='active_txt'}:</td>
    <td width="366" class="frmText11">{tmpl_var name='active'}</td>
  </tr>  <tr>
interface/web/mail/templates/mail_domain_alias_edit.htm
interface/web/mail/templates/mail_domain_alias_list.htm
File was renamed from interface/web/sites/templates/mail_domain_alias_list.htm
@@ -3,19 +3,22 @@
<input type="button" value="{tmpl_var name="add_new_record_txt"}" onClick="location.href='mail_domain_alias_edit.php'" /><br /><br />
<table width="100%" border="0" cellspacing="0" cellpadding="4">
  <tr>
    <td class="tblHead"><tmpl_var name="active_txt"></td>
    <td class="tblHead"><tmpl_var name="server_id_txt"></td>
    <td class="tblHead"><tmpl_var name="domain_txt"></td>
    <td class="tblHead"><tmpl_var name="destination_txt"></td>
    <td class="tblHead">&nbsp;</td>
  </tr>
  <tr>
    <td class="frmText11"><input type="text" name="search_server_id" value="{tmpl_var name='search_server_id'}" class="text" /></td>
    <td class="frmText11"><select name="search_active" onChange="document.myform.submit();">{tmpl_var name='search_active'}</select></td>
    <td class="frmText11"><select name="search_server_id" onChange="document.myform.submit();">{tmpl_var name='search_server_id'}</select></td>
    <td class="frmText11"><input type="text" name="search_domain" value="{tmpl_var name='search_domain'}" class="text" /></td>
    <td class="frmText11"><input type="text" name="search_destination" value="{tmpl_var name='search_destination'}" class="text" /></td>
    <td class="frmText11" align="right"><input name="Filter" type="submit" id="Filter" value="{tmpl_var name="filter_txt"}"></td>
  </tr>
  <tmpl_loop name="records">
  <tr bgcolor="{tmpl_var name="bgcolor"}">
    <td class="frmText11"><a href="mail_domain_alias_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="active"}</a></td>
    <td class="frmText11"><a href="mail_domain_alias_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="server_id"}</a></td>
    <td class="frmText11"><a href="mail_domain_alias_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="domain"}</a></td>
    <td class="frmText11"><a href="mail_domain_alias_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="destination"}</a></td>
@@ -24,7 +27,7 @@
  </tmpl_loop>
  <tr>
      <td colspan="4" height="40" align="center" class="tblFooter"><tmpl_var name="paging"></td>
      <td colspan="5" height="40" align="center" class="tblFooter"><tmpl_var name="paging"></td>
  </tr>
</table>
</form>
interface/web/mail/templates/mail_domain_catchall_edit.htm
interface/web/mail/templates/mail_domain_catchall_list.htm
File was renamed from interface/web/sites/templates/mail_domain_catchall_list.htm
@@ -3,12 +3,14 @@
<input type="button" value="{tmpl_var name="add_new_record_txt"}" onClick="location.href='mail_domain_catchall_edit.php'" /><br /><br />
<table width="100%" border="0" cellspacing="0" cellpadding="4">
  <tr>
    <td class="tblHead"><tmpl_var name="active_txt"></td>
    <td class="tblHead"><tmpl_var name="server_id_txt"></td>
    <td class="tblHead"><tmpl_var name="domain_txt"></td>
    <td class="tblHead"><tmpl_var name="destination_txt"></td>
    <td class="tblHead">&nbsp;</td>
  </tr>
  <tr>
    <td class="frmText11"><select name="search_active" onChange="document.myform.submit();">{tmpl_var name='search_active'}</select></td>
    <td class="frmText11"><input type="text" name="search_server_id" value="{tmpl_var name='search_server_id'}" class="text" /></td>
    <td class="frmText11"><input type="text" name="search_domain" value="{tmpl_var name='search_domain'}" class="text" /></td>
    <td class="frmText11"><input type="text" name="search_destination" value="{tmpl_var name='search_destination'}" class="text" /></td>
@@ -16,6 +18,7 @@
  </tr>
  <tmpl_loop name="records">
  <tr bgcolor="{tmpl_var name="bgcolor"}">
    <td class="frmText11"><a href="mail_domain_catchall_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="active"}</a></td>
    <td class="frmText11"><a href="mail_domain_catchall_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="server_id"}</a></td>
    <td class="frmText11"><a href="mail_domain_catchall_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="domain"}</a></td>
    <td class="frmText11"><a href="mail_domain_catchall_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="destination"}</a></td>
@@ -24,7 +27,7 @@
  </tmpl_loop>
  <tr>
      <td colspan="4" height="40" align="center" class="tblFooter"><tmpl_var name="paging"></td>
      <td colspan="5" height="40" align="center" class="tblFooter"><tmpl_var name="paging"></td>
  </tr>
</table>
</form>
interface/web/mail/templates/mail_domain_edit.htm
interface/web/mail/templates/mail_domain_list.htm
File was renamed from interface/web/sites/templates/mail_domain_list.htm
@@ -3,24 +3,27 @@
<input type="button" value="{tmpl_var name="add_new_record_txt"}" onClick="location.href='mail_domain_edit.php'" /><br /><br />
<table width="100%" border="0" cellspacing="0" cellpadding="4">
  <tr>
    <td class="tblHead"><tmpl_var name="active_txt"></td>
    <td class="tblHead"><tmpl_var name="server_id_txt"></td>
    <td class="tblHead"><tmpl_var name="domain_txt"></td>
    <td class="tblHead">&nbsp;</td>
  </tr>
  <tr>
    <td class="frmText11"><input type="text" name="search_server_id" value="{tmpl_var name='search_server_id'}" class="text" size="5" /></td>
    <td class="frmText11"><select name="search_active" onChange="document.myform.submit();">{tmpl_var name='search_active'}</select></td>
    <td class="frmText11"><select name="search_server_id" onChange="document.myform.submit();">{tmpl_var name='search_server_id'}</select></td>
    <td class="frmText11"><input type="text" name="search_domain" value="{tmpl_var name='search_domain'}" class="text" /></td>
    <td class="frmText11" align="right"><input name="Filter" type="submit" id="Filter" value="{tmpl_var name="filter_txt"}"></td>
  </tr>
  <tmpl_loop name="records">
  <tr bgcolor="{tmpl_var name="bgcolor"}">
    <td class="frmText11"><a href="mail_domain_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="active"}</a></td>
    <td class="frmText11"><a href="mail_domain_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="server_id"}</a></td>
    <td class="frmText11"><a href="mail_domain_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="domain"}</a></td>
    <td class="frmText11" align="right">[<a href="javascript: del_record('mail_domain_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}');" class="frmText11">{tmpl_var name='delete_txt'}</a>]</td>
  </tr>
  </tmpl_loop>
  <tr>
      <td colspan="3" height="40" align="center" class="tblFooter"><tmpl_var name="paging"></td>
      <td colspan="4" height="40" align="center" class="tblFooter"><tmpl_var name="paging"></td>
  </tr>
</table>
</form>
interface/web/mail/templates/mail_domain_relay_edit.htm
interface/web/mail/templates/mail_domain_relay_list.htm
File was renamed from interface/web/sites/templates/mail_domain_relay_list.htm
@@ -3,25 +3,27 @@
<input type="button" value="{tmpl_var name="add_new_record_txt"}" onClick="location.href='mail_domain_relay_edit.php'" /><br /><br />
<table width="100%" border="0" cellspacing="0" cellpadding="4">
  <tr>
    <td class="tblHead"><tmpl_var name="active_txt"></td>
    <td class="tblHead"><tmpl_var name="server_id_txt"></td>
    <td class="tblHead"><tmpl_var name="domain_txt"></td>
    <td class="tblHead">&nbsp;</td>
  </tr>
  <tr>
    <td class="frmText11"><input type="text" name="search_server_id" value="{tmpl_var name='search_server_id'}" class="text" /></td>
    <td class="frmText11"><select name="search_active" onChange="document.myform.submit();">{tmpl_var name='search_active'}</select></td>
    <td class="frmText11"><select name="search_server_id" onChange="document.myform.submit();">{tmpl_var name='search_server_id'}</select></td>
    <td class="frmText11"><input type="text" name="search_domain" value="{tmpl_var name='search_domain'}" class="text" /></td>
    <td class="frmText11" align="right"><input name="Filter" type="submit" id="Filter" value="{tmpl_var name="filter_txt"}"></td>
  </tr>
  <tmpl_loop name="records">
  <tr bgcolor="{tmpl_var name="bgcolor"}">
    <td class="frmText11"><a href="mail_forward_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="active"}</a></td>
    <td class="frmText11"><a href="mail_domain_relay_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="server_id"}</a></td>
    <td class="frmText11"><a href="mail_domain_relay_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="domain"}</a></td>
    <td class="frmText11" align="right">[<a href="javascript: del_record('mail_domain_relay_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}');" class="frmText11">{tmpl_var name='delete_txt'}</a>]</td>
  </tr>
  </tmpl_loop>
  <tr>
      <td colspan="3" height="40" align="center" class="tblFooter"><tmpl_var name="paging"></td>
      <td colspan="4" height="40" align="center" class="tblFooter"><tmpl_var name="paging"></td>
  </tr>
</table>
</form>
interface/web/mail/templates/mail_forward_edit.htm
interface/web/mail/templates/mail_forward_list.htm
interface/web/mail/templates/mail_spamfilter_edit.htm
New file
@@ -0,0 +1,66 @@
<table width="500" border="0" cellspacing="0" cellpadding="2">
  <tr>
    <td width="126" class="frmText11">{tmpl_var name='email_txt'}:</td>
    <td width="366" class="frmText11"><input name="email_local_part" type="text" class="text" value="{tmpl_var name='email_local_part'}" size="10" maxlength="50"> @ <select name="email_domain">{tmpl_var name="email_domain"}</select></td>
  </tr>
  <tr>
    <td width="126" class="frmText11">{tmpl_var name='active_txt'}:</td>
    <td width="366" class="frmText11">{tmpl_var name='active'}</td>
  </tr>
   <tr>
    <td colspan="2" class="frmText11">&nbsp;</td>
  </tr>
  <tr>
    <td colspan="2"  height="50" class="frmText11"><b>{tmpl_var name='spam_rewrite_txt'}</b></td>
  </tr>
  <tr>
    <td width="126" class="frmText11">{tmpl_var name='spam_rewrite_score_int_txt'}:</td>
    <td width="366" class="frmText11"><input name="spam_rewrite_score_int" type="text" class="text" value="{tmpl_var name='spam_rewrite_score_int'}" size="10" maxlength="10"></td>
  </tr>
  <tr>
    <td width="126" class="frmText11">{tmpl_var name='spam_rewrite_subject_txt'}:</td>
    <td width="366" class="frmText11"><input name="spam_rewrite_subject" type="text" class="text" value="{tmpl_var name='spam_rewrite_subject'}" size="30" maxlength="255"></td>
  </tr>
   <tr>
    <td colspan="2" class="frmText11">&nbsp;</td>
  </tr>
  <tr>
    <td colspan="2"  height="50" class="frmText11"><b>{tmpl_var name='spam_redirect_txt'}</b></td>
  </tr>
  <tr>
    <td width="126" class="frmText11">{tmpl_var name='spam_redirect_score_int_txt'}:</td>
    <td width="366" class="frmText11"><input name="spam_redirect_score_int" type="text" class="text" value="{tmpl_var name='spam_redirect_score_int'}" size="10" maxlength="10"></td>
  </tr>
  <tr>
    <td width="126" class="frmText11">{tmpl_var name='spam_redirect_maildir_txt'}:</td>
    <td width="366" class="frmText11">
        <select name="spam_redirect_maildir" class="text">
            {tmpl_var name='spam_redirect_maildir'}
        </select>
    </td>
  </tr>
  <tr>
    <td width="126" class="frmText11">{tmpl_var name='spam_redirect_maildir_purge_txt'}:</td>
    <td width="366" class="frmText11"><input name="spam_redirect_maildir_purge" type="text" class="text" value="{tmpl_var name='spam_redirect_maildir_purge'}" size="5" maxlength="10"> {tmpl_var name='days_txt'}</td>
  </tr>
   <tr>
    <td colspan="2" class="frmText11">&nbsp;</td>
  </tr>
  <tr>
    <td colspan="2"  height="50" class="frmText11"><b>{tmpl_var name='spam_delete_txt'}</b></td>
  </tr>
  <tr>
    <td width="126" class="frmText11">{tmpl_var name='spam_delete_score_int_txt'}:</td>
    <td width="366" class="frmText11"><input name="spam_delete_score_int" type="text" class="text" value="{tmpl_var name='spam_delete_score_int'}" size="10" maxlength="10"></td>
  </tr>
  <tr>
    <td colspan="2"  height="50" class="frmText11">{tmpl_var name='disable_txt'}</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td><input name="btn_save" type="submit" class="button" value="{tmpl_var name='btn_save_txt'}">
      <input name="btn_cancel" type="button" class="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="self.location.href='mail_spamfilter_list.php';">
    </td>
  </tr>
</table>
<input type="hidden" name="id" value="{tmpl_var name='id'}">
interface/web/mail/templates/mail_spamfilter_list.htm
New file
@@ -0,0 +1,30 @@
<form name="myform" action="mail_spamfilter_list.php" method="POST">
<div class="frmTextHead"><tmpl_var name="list_head_txt"></div><br />
<input type="button" value="{tmpl_var name="add_new_record_txt"}" onClick="location.href='mail_spamfilter_edit.php'" /><br /><br />
<table width="100%" border="0" cellspacing="0" cellpadding="4">
  <tr>
    <td class="tblHead"><tmpl_var name="active_txt"></td>
    <td class="tblHead"><tmpl_var name="server_id_txt"></td>
    <td class="tblHead"><tmpl_var name="email_txt"></td>
    <td class="tblHead">&nbsp;</td>
  </tr>
  <tr>
    <td class="frmText11"><select name="search_active" onChange="document.myform.submit();">{tmpl_var name='search_active'}</select></td>
    <td class="frmText11"><select name="search_server_id" onChange="document.myform.submit();">{tmpl_var name='search_server_id'}</select></td>
    <td class="frmText11"><input type="text" name="search_email" value="{tmpl_var name='search_email'}" class="text" /></td>
    <td class="frmText11" align="right"><input name="Filter" type="submit" id="Filter" value="{tmpl_var name="filter_txt"}"></td>
  </tr>
  <tmpl_loop name="records">
  <tr bgcolor="{tmpl_var name="bgcolor"}">
    <td class="frmText11"><a href="mail_spamfilter_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="active"}</a></td>
    <td class="frmText11"><a href="mail_spamfilter_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="server_id"}</a></td>
    <td class="frmText11"><a href="mail_spamfilter_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="email"}</a></td>
    <td class="frmText11" align="right">[<a href="javascript: del_record('mail_spamfilter_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}');" class="frmText11">{tmpl_var name='delete_txt'}</a>]</td>
  </tr>
  </tmpl_loop>
  <tr>
      <td colspan="4" height="40" align="center" class="tblFooter"><tmpl_var name="paging"></td>
  </tr>
</table>
</form>
interface/web/mail/templates/mail_whitelist_edit.htm
File was renamed from interface/web/sites/templates/mail_whitelist_edit.htm
@@ -12,6 +12,10 @@
    <td width="366" class="frmText11"><input name="address" type="text" class="text" value="{tmpl_var name='address'}" size="30" maxlength="255"></td>
  </tr>
  <tr>
    <td width="126" class="frmText11">{tmpl_var name='recipient_txt'}:</td>
    <td width="366" class="frmText11"><input name="recipient_local_part" type="text" class="text" value="{tmpl_var name='recipient_local_part'}" size="10" maxlength="50"> @ <select name="recipient_domain">{tmpl_var name="recipient_domain"}</select></td>
  </tr>
  <tr>
    <td width="126" class="frmText11">{tmpl_var name='active_txt'}:</td>
    <td width="366" class="frmText11">{tmpl_var name='active'}</td>
  </tr>  <tr>
interface/web/mail/templates/mail_whitelist_list.htm
New file
@@ -0,0 +1,32 @@
<form name="myform" action="mail_whitelist_list.php" method="POST">
<div class="frmTextHead"><tmpl_var name="list_head_txt"></div><br />
<input type="button" value="{tmpl_var name="add_new_record_txt"}" onClick="location.href='mail_whitelist_edit.php'" /><br /><br />
<table width="100%" border="0" cellspacing="0" cellpadding="4">
  <tr>
    <td class="tblHead"><tmpl_var name="active_txt"></td>
    <td class="tblHead"><tmpl_var name="server_id_txt"></td>
    <td class="tblHead"><tmpl_var name="address_txt"></td>
    <td class="tblHead"><tmpl_var name="recipient_txt"></td>
    <td class="tblHead">&nbsp;</td>
  </tr>
  <tr>
    <td class="frmText11"><select name="search_active" onChange="document.myform.submit();">{tmpl_var name='search_active'}</select></td>
    <td class="frmText11"><select name="search_server_id" onChange="document.myform.submit();">{tmpl_var name='search_server_id'}</select></td>
    <td class="frmText11"><input type="text" name="search_address" value="{tmpl_var name='search_address'}" class="text" /></td>
    <td class="frmText11"><input type="text" name="search_recipient" value="{tmpl_var name='search_recipient'}" class="text" /></td>
    <td class="frmText11" align="right"><input name="Filter" type="submit" id="Filter" value="{tmpl_var name="filter_txt"}"></td>
  </tr>
  <tmpl_loop name="records">
  <tr bgcolor="{tmpl_var name="bgcolor"}">
    <td class="frmText11"><a href="mail_whitelist_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="active"}</a></td>
    <td class="frmText11"><a href="mail_whitelist_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="server_id"}</a></td>
    <td class="frmText11"><a href="mail_whitelist_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="address"}</a></td>
    <td class="frmText11"><a href="mail_whitelist_edit.php?id={tmpl_var name='id'}" class="frmText11">{tmpl_var name="recipient"}</a></td>
    <td class="frmText11" align="right">[<a href="javascript: del_record('mail_whitelist_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}');" class="frmText11">{tmpl_var name='delete_txt'}</a>]</td>
  </tr>
  </tmpl_loop>
  <tr>
      <td colspan="5" height="40" align="center" class="tblFooter"><tmpl_var name="paging"></td>
  </tr>
</table>
</form>
interface/web/sites/lib/lang/en_mail_domain_alias.lng
File was deleted
interface/web/sites/lib/lang/en_mail_whitelist.lng
File was deleted
interface/web/sites/lib/module.conf.php
File was deleted
interface/web/sites/mail_whitelist_edit.php
File was deleted
interface/web/sites/templates/mail_blacklist_list.htm
File was deleted
interface/web/sites/templates/mail_whitelist_list.htm
File was deleted