Skip to content

Commit 269eb51

Browse files
committed
Email Black and Whitelists
1 parent 31ed6c6 commit 269eb51

26 files changed

+834
-15
lines changed

interface/sql/ispconfig3db.sql

Lines changed: 49 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33
# http://www.phpmyadmin.net/ (download page)
44
#
55
# Host: localhost
6-
# Erstellungszeit: 24. November 2005 um 23:49
7-
# Server Version: 4.0.23
8-
# PHP-Version: 5.0.3
6+
# Erstellungszeit: 25. November 2005 um 17:03
7+
# Server Version: 4.0.22
8+
# PHP-Version: 5.0.2
99
# Datenbank: `ispconfig3`
1010
# --------------------------------------------------------
1111

@@ -16,8 +16,14 @@
1616
DROP TABLE IF EXISTS mail_blacklist;
1717
CREATE TABLE mail_blacklist (
1818
blacklist_id int(11) NOT NULL auto_increment,
19+
sys_userid int(11) NOT NULL default '0',
20+
sys_groupid int(11) NOT NULL default '0',
21+
sys_perm_user varchar(5) NOT NULL default '',
22+
sys_perm_group varchar(5) NOT NULL default '',
23+
sys_perm_other varchar(5) NOT NULL default '',
1924
server_id int(11) NOT NULL default '0',
2025
address varchar(255) NOT NULL default '',
26+
active enum('0','1') NOT NULL default '1',
2127
PRIMARY KEY (blacklist_id),
2228
KEY server_id (server_id,address)
2329
) TYPE=MyISAM;
@@ -26,6 +32,7 @@ CREATE TABLE mail_blacklist (
2632
# Daten für Tabelle `mail_blacklist`
2733
#
2834

35+
INSERT INTO mail_blacklist VALUES (1, 1, 1, 'riud', 'riud', '', 1, 'test@du.com', '1');
2936
# --------------------------------------------------------
3037

3138
#
@@ -113,6 +120,7 @@ CREATE TABLE mail_domain_catchall (
113120
server_id int(11) NOT NULL default '0',
114121
domain varchar(255) NOT NULL default '',
115122
destination varchar(255) NOT NULL default '',
123+
active enum('0','1') NOT NULL default '1',
116124
PRIMARY KEY (domain_catchall_id),
117125
KEY server_id (server_id,domain)
118126
) TYPE=MyISAM;
@@ -121,6 +129,7 @@ CREATE TABLE mail_domain_catchall (
121129
# Daten für Tabelle `mail_domain_catchall`
122130
#
123131

132+
INSERT INTO mail_domain_catchall VALUES (1, 1, 1, 'riud', 'riud', '', 1, 'test.de', 'info@ensign.de', '1');
124133
# --------------------------------------------------------
125134

126135
#
@@ -196,15 +205,48 @@ INSERT INTO mail_redirect VALUES (1, 1, 0, 'riud', 'riud', '', 1, 'tom@test.de',
196205
INSERT INTO mail_redirect VALUES (2, 1, 0, 'riud', 'riud', '', 1, 'hallo@test.de', 't.brehm@ensign.de', 'forward', '1');
197206
# --------------------------------------------------------
198207

208+
#
209+
# Tabellenstruktur für Tabelle `mail_transport`
210+
#
211+
212+
DROP TABLE IF EXISTS mail_transport;
213+
CREATE TABLE mail_transport (
214+
whitelist_id int(11) NOT NULL auto_increment,
215+
sys_userid int(11) NOT NULL default '0',
216+
sys_groupid int(11) NOT NULL default '0',
217+
sys_perm_user varchar(5) NOT NULL default '',
218+
sys_perm_group varchar(5) NOT NULL default '',
219+
sys_perm_other varchar(5) NOT NULL default '',
220+
server_id int(11) NOT NULL default '0',
221+
domain varchar(255) NOT NULL default '',
222+
destination varchar(255) NOT NULL default '',
223+
active enum('0','1') NOT NULL default '1',
224+
PRIMARY KEY (whitelist_id),
225+
KEY server_id (server_id,destination),
226+
KEY server_id_2 (server_id,domain)
227+
) TYPE=MyISAM;
228+
229+
#
230+
# Daten für Tabelle `mail_transport`
231+
#
232+
233+
# --------------------------------------------------------
234+
199235
#
200236
# Tabellenstruktur für Tabelle `mail_whitelist`
201237
#
202238

203239
DROP TABLE IF EXISTS mail_whitelist;
204240
CREATE TABLE mail_whitelist (
205241
whitelist_id int(11) NOT NULL auto_increment,
242+
sys_userid int(11) NOT NULL default '0',
243+
sys_groupid int(11) NOT NULL default '0',
244+
sys_perm_user varchar(5) NOT NULL default '',
245+
sys_perm_group varchar(5) NOT NULL default '',
246+
sys_perm_other varchar(5) NOT NULL default '',
206247
server_id int(11) NOT NULL default '0',
207248
address varchar(255) NOT NULL default '',
249+
active enum('0','1') NOT NULL default '1',
208250
PRIMARY KEY (whitelist_id),
209251
KEY server_id (server_id,address)
210252
) TYPE=MyISAM;
@@ -341,6 +383,10 @@ INSERT INTO sys_datalog VALUES (27, 'mail_box', 'mailbox_id:1', 'u', 1132788121,
341383
INSERT INTO sys_datalog VALUES (28, 'mail_box', 'mailbox_id:1', 'u', 1132788482, 'admin', 'a:1:{s:8:"cryptpwd";a:2:{s:3:"old";s:34:"$1$ye3.TQ1.$v/RvqbuU.Gh7UrLlA6HqX/";s:3:"new";s:0:"";}}');
342384
INSERT INTO sys_datalog VALUES (29, 'mail_redirect', 'redirect_id:0', 'i', 1132859789, 'admin', 'a:5:{s:9:"server_id";a:2:{s:3:"old";N;s:3:"new";i:1;}s:5:"email";a:2:{s:3:"old";N;s:3:"new";s:11:"tom@test.de";}s:11:"destination";a:2:{s:3:"old";N;s:3:"new";s:12:"till@test.de";}s:4:"type";a:2:{s:3:"old";N;s:3:"new";s:5:"alias";}s:6:"active";a:2:{s:3:"old";N;s:3:"new";i:1;}}');
343385
INSERT INTO sys_datalog VALUES (30, 'mail_redirect', 'redirect_id:0', 'i', 1132868928, 'admin', 'a:5:{s:9:"server_id";a:2:{s:3:"old";N;s:3:"new";i:1;}s:5:"email";a:2:{s:3:"old";N;s:3:"new";s:13:"hallo@test.de";}s:11:"destination";a:2:{s:3:"old";N;s:3:"new";s:17:"t.brehm@ensign.de";}s:4:"type";a:2:{s:3:"old";N;s:3:"new";s:7:"forward";}s:6:"active";a:2:{s:3:"old";N;s:3:"new";i:1;}}');
386+
INSERT INTO sys_datalog VALUES (31, 'mail_domain_catchall', 'domain_catchall_id:0', 'i', 1132930015, 'admin', 'a:3:{s:6:"domain";a:2:{s:3:"old";N;s:3:"new";s:7:"test.de";}s:11:"destination";a:2:{s:3:"old";N;s:3:"new";s:14:"info@ensign.de";}s:6:"active";a:2:{s:3:"old";N;s:3:"new";i:1;}}');
387+
INSERT INTO sys_datalog VALUES (32, 'mail_domain_catchall', 'domain_catchall_id:0', 'i', 1132930049, 'admin', 'a:3:{s:6:"domain";a:2:{s:3:"old";N;s:3:"new";s:7:"test.de";}s:11:"destination";a:2:{s:3:"old";N;s:3:"new";s:14:"info@ensign.de";}s:6:"active";a:2:{s:3:"old";N;s:3:"new";i:1;}}');
388+
INSERT INTO sys_datalog VALUES (33, 'mail_domain_catchall', 'domain_catchall_id:1', 'u', 1132930357, 'admin', 'a:1:{s:9:"server_id";a:2:{s:3:"old";s:1:"0";s:3:"new";i:1;}}');
389+
INSERT INTO sys_datalog VALUES (34, 'mail_blacklist', 'blacklist_id:0', 'i', 1132932985, 'admin', 'a:3:{s:9:"server_id";a:2:{s:3:"old";N;s:3:"new";i:1;}s:7:"address";a:2:{s:3:"old";N;s:3:"new";s:11:"test@du.com";}s:6:"active";a:2:{s:3:"old";N;s:3:"new";i:1;}}');
344390
# --------------------------------------------------------
345391

346392
#
Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
<?php
2+
3+
/*
4+
Form Definition
5+
6+
Tabledefinition
7+
8+
Datatypes:
9+
- INTEGER (Forces the input to Int)
10+
- DOUBLE
11+
- CURRENCY (Formats the values to currency notation)
12+
- VARCHAR (no format check, maxlength: 255)
13+
- TEXT (no format check)
14+
- DATE (Dateformat, automatic conversion to timestamps)
15+
16+
Formtype:
17+
- TEXT (Textfield)
18+
- TEXTAREA (Textarea)
19+
- PASSWORD (Password textfield, input is not shown when edited)
20+
- SELECT (Select option field)
21+
- RADIO
22+
- CHECKBOX
23+
- CHECKBOXARRAY
24+
- FILE
25+
26+
VALUE:
27+
- Wert oder Array
28+
29+
Hint:
30+
The ID field of the database table is not part of the datafield definition.
31+
The ID field must be always auto incement (int or bigint).
32+
33+
34+
*/
35+
36+
$form["title"] = "Email Blacklist";
37+
$form["description"] = "";
38+
$form["name"] = "mail_blacklist";
39+
$form["action"] = "mail_blacklist_edit.php";
40+
$form["db_table"] = "mail_blacklist";
41+
$form["db_table_idx"] = "blacklist_id";
42+
$form["db_history"] = "yes";
43+
$form["tab_default"] = "blacklist";
44+
$form["list_default"] = "mail_blacklist_list.php";
45+
$form["auth"] = 'yes'; // yes / no
46+
47+
$form["auth_preset"]["userid"] = 0; // 0 = id of the user, > 0 id must match with id of current user
48+
$form["auth_preset"]["groupid"] = 0; // 0 = default groupid of the user, > 0 id must match with groupid of current user
49+
$form["auth_preset"]["perm_user"] = 'riud'; //r = read, i = insert, u = update, d = delete
50+
$form["auth_preset"]["perm_group"] = 'riud'; //r = read, i = insert, u = update, d = delete
51+
$form["auth_preset"]["perm_other"] = ''; //r = read, i = insert, u = update, d = delete
52+
53+
$form["tabs"]['blacklist'] = array (
54+
'title' => "Blacklist",
55+
'width' => 100,
56+
'template' => "templates/mail_blacklist_edit.htm",
57+
'fields' => array (
58+
##################################
59+
# Begin Datatable fields
60+
##################################
61+
'server_id' => array (
62+
'datatype' => 'INTEGER',
63+
'formtype' => 'SELECT',
64+
'default' => '',
65+
'datasource' => array ( 'type' => 'SQL',
66+
'querystring' => 'SELECT server_id,server_name FROM server WHERE {AUTHSQL} ORDER BY server_name',
67+
'keyfield'=> 'server_id',
68+
'valuefield'=> 'server_name'
69+
),
70+
'value' => ''
71+
),
72+
'address' => array (
73+
'datatype' => 'VARCHAR',
74+
'formtype' => 'TEXT',
75+
'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY',
76+
'errmsg'=> 'address_error_notempty'),
77+
),
78+
'default' => '',
79+
'value' => '',
80+
'width' => '30',
81+
'maxlength' => '255'
82+
),
83+
'active' => array (
84+
'datatype' => 'INTEGER',
85+
'formtype' => 'CHECKBOX',
86+
'default' => '1',
87+
'value' => '1'
88+
),
89+
##################################
90+
# ENDE Datatable fields
91+
##################################
92+
)
93+
);
94+
95+
96+
?>

interface/web/sites/form/mail_domain.tform.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@
6363
'formtype' => 'SELECT',
6464
'default' => '',
6565
'datasource' => array ( 'type' => 'SQL',
66-
'querystring' => 'SELECT server_id,server_name FROM server WHERE 1 ORDER BY server_name',
66+
'querystring' => 'SELECT server_id,server_name FROM server WHERE {AUTHSQL} ORDER BY server_name',
6767
'keyfield'=> 'server_id',
6868
'valuefield'=> 'server_name'
6969
),

interface/web/sites/form/mail_domain_catchall.tform.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@
7171
'errmsg'=> 'domain_error_unique'),
7272
),
7373
'datasource' => array ( 'type' => 'SQL',
74-
'querystring' => "SELECT domain FROM mail_domain WHERE type = 'local' ORDER BY domain",
74+
'querystring' => "SELECT domain FROM mail_domain WHERE type = 'local' AND {AUTHSQL} ORDER BY domain",
7575
'keyfield'=> 'domain',
7676
'valuefield'=> 'domain'
7777
),
Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
<?php
2+
3+
/*
4+
Form Definition
5+
6+
Tabledefinition
7+
8+
Datatypes:
9+
- INTEGER (Forces the input to Int)
10+
- DOUBLE
11+
- CURRENCY (Formats the values to currency notation)
12+
- VARCHAR (no format check, maxlength: 255)
13+
- TEXT (no format check)
14+
- DATE (Dateformat, automatic conversion to timestamps)
15+
16+
Formtype:
17+
- TEXT (Textfield)
18+
- TEXTAREA (Textarea)
19+
- PASSWORD (Password textfield, input is not shown when edited)
20+
- SELECT (Select option field)
21+
- RADIO
22+
- CHECKBOX
23+
- CHECKBOXARRAY
24+
- FILE
25+
26+
VALUE:
27+
- Wert oder Array
28+
29+
Hint:
30+
The ID field of the database table is not part of the datafield definition.
31+
The ID field must be always auto incement (int or bigint).
32+
33+
34+
*/
35+
36+
$form["title"] = "Email Whitelist";
37+
$form["description"] = "";
38+
$form["name"] = "mail_whitelist";
39+
$form["action"] = "mail_whitelist_edit.php";
40+
$form["db_table"] = "mail_whitelist";
41+
$form["db_table_idx"] = "whitelist_id";
42+
$form["db_history"] = "yes";
43+
$form["tab_default"] = "whitelist";
44+
$form["list_default"] = "mail_whitelist_list.php";
45+
$form["auth"] = 'yes'; // yes / no
46+
47+
$form["auth_preset"]["userid"] = 0; // 0 = id of the user, > 0 id must match with id of current user
48+
$form["auth_preset"]["groupid"] = 0; // 0 = default groupid of the user, > 0 id must match with groupid of current user
49+
$form["auth_preset"]["perm_user"] = 'riud'; //r = read, i = insert, u = update, d = delete
50+
$form["auth_preset"]["perm_group"] = 'riud'; //r = read, i = insert, u = update, d = delete
51+
$form["auth_preset"]["perm_other"] = ''; //r = read, i = insert, u = update, d = delete
52+
53+
$form["tabs"]['whitelist'] = array (
54+
'title' => "Witelist",
55+
'width' => 100,
56+
'template' => "templates/mail_whitelist_edit.htm",
57+
'fields' => array (
58+
##################################
59+
# Begin Datatable fields
60+
##################################
61+
'server_id' => array (
62+
'datatype' => 'INTEGER',
63+
'formtype' => 'SELECT',
64+
'default' => '',
65+
'datasource' => array ( 'type' => 'SQL',
66+
'querystring' => 'SELECT server_id,server_name FROM server WHERE {AUTHSQL} ORDER BY server_name',
67+
'keyfield'=> 'server_id',
68+
'valuefield'=> 'server_name'
69+
),
70+
'value' => ''
71+
),
72+
'address' => array (
73+
'datatype' => 'VARCHAR',
74+
'formtype' => 'TEXT',
75+
'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY',
76+
'errmsg'=> 'address_error_notempty'),
77+
),
78+
'default' => '',
79+
'value' => '',
80+
'width' => '30',
81+
'maxlength' => '255'
82+
),
83+
'active' => array (
84+
'datatype' => 'INTEGER',
85+
'formtype' => 'CHECKBOX',
86+
'default' => '1',
87+
'value' => '1'
88+
),
89+
##################################
90+
# ENDE Datatable fields
91+
##################################
92+
)
93+
);
94+
95+
96+
?>
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?php
2+
$wb["server_id_txt"] = 'Server';
3+
$wb["address_txt"] = 'Address';
4+
$wb["active_txt"] = 'Active';
5+
$wb["btn_save_txt"] = 'Save';
6+
$wb["btn_cancel_txt"] = 'Cancel';
7+
$wb["address_error_notempty"] = 'Address is empty.';
8+
?>
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
<?php
2+
$wb["list_head_txt"] = 'Email Blacklist';
3+
$wb["server_id_txt"] = 'Server';
4+
$wb["address_txt"] = 'Blacklisted address';
5+
$wb["page_txt"] = 'Page';
6+
$wb["page_of_txt"] = 'of';
7+
$wb["page_next_txt"] = 'Next';
8+
$wb["page_back_txt"] = 'Back';
9+
$wb["delete_txt"] = 'Delete';
10+
$wb["filter_txt"] = 'Filter';
11+
$wb["add_new_record_txt"] = 'Add new Blacklist record';
12+
?>
Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
<?php
2-
$wb["server_id_txt"] = 'server_id';
3-
$wb["domain_txt"] = 'domain';
4-
$wb["destination_txt"] = 'destination';
5-
$wb["active_txt"] = 'active';
2+
$wb["domain_txt"] = 'Domain';
3+
$wb["destination_txt"] = 'Destination';
4+
$wb["active_txt"] = 'Active';
65
$wb["btn_save_txt"] = 'Save';
76
$wb["btn_cancel_txt"] = 'Cancel';
7+
$wb["domain_error_unique"] = "There is already a Catchall record for this domain.";
8+
$wb["no_domain_perm"] = "You have no permission for this domain.";
89
?>
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?php
2+
$wb["server_id_txt"] = 'Server';
3+
$wb["address_txt"] = 'Address';
4+
$wb["active_txt"] = 'Active';
5+
$wb["btn_save_txt"] = 'Save';
6+
$wb["btn_cancel_txt"] = 'Cancel';
7+
$wb["address_error_notempty"] = 'Address is empty.';
8+
?>
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
<?php
2+
$wb["list_head_txt"] = 'Email Whitelist';
3+
$wb["server_id_txt"] = 'Server';
4+
$wb["address_txt"] = 'Whitelisted address';
5+
$wb["page_txt"] = 'Page';
6+
$wb["page_of_txt"] = 'of';
7+
$wb["page_next_txt"] = 'Next';
8+
$wb["page_back_txt"] = 'Back';
9+
$wb["delete_txt"] = 'Delete';
10+
$wb["filter_txt"] = 'Filter';
11+
$wb["add_new_record_txt"] = 'Add new Whitelist record';
12+
?>

0 commit comments

Comments
 (0)