From 2cb1563f63386b35a69e460051aa9b4a2851d104 Mon Sep 17 00:00:00 2001
From: ftimme <ft@falkotimme.com>
Date: Wed, 30 May 2012 07:30:44 -0400
Subject: [PATCH] - Added (clickable) placeholders to client messaging function. - Added check so that the client password isn't inserted into the message (for security reasons).

---
 interface/web/mail/form/mail_domain_catchall.tform.php |   83 +++++++++++++++++++++++++----------------
 1 files changed, 51 insertions(+), 32 deletions(-)

diff --git a/interface/web/mail/form/mail_domain_catchall.tform.php b/interface/web/mail/form/mail_domain_catchall.tform.php
index 0f16d44..b2a40fe 100644
--- a/interface/web/mail/form/mail_domain_catchall.tform.php
+++ b/interface/web/mail/form/mail_domain_catchall.tform.php
@@ -29,6 +29,11 @@
 	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).
+	
+	Search:
+	- searchable = 1 or searchable = 2 include the field in the search
+	- searchable = 1: this field will be the title of the search result
+	- searchable = 2: this field will be included in the description of the search result
 
 
 */
@@ -37,8 +42,8 @@
 $form["description"] 	= "";
 $form["name"] 			= "mail_domain_catchall";
 $form["action"]			= "mail_domain_catchall_edit.php";
-$form["db_table"]		= "mail_domain_catchall";
-$form["db_table_idx"]	= "domain_catchall_id";
+$form["db_table"]		= "mail_forwarding";
+$form["db_table_idx"]	= "forwarding_id";
 $form["db_history"]		= "yes";
 $form["tab_default"]	= "catchall";
 $form["list_default"]	= "mail_domain_catchall_list.php";
@@ -51,8 +56,8 @@
 $form["auth_preset"]["perm_other"] = ''; //r = read, i = insert, u = update, d = delete
 
 $form["tabs"]['catchall'] = array (
-	'title' 	=> "Domain Catchall",
-	'width' 	=> 150,
+	'title' 	=> "Email Catchall",
+	'width' 	=> 100,
 	'template' 	=> "templates/mail_domain_catchall_edit.htm",
 	'fields' 	=> array (
 	##################################
@@ -60,42 +65,55 @@
 	##################################
 		'server_id' => array (
 			'datatype'	=> 'INTEGER',
-			'formtype'	=> 'VARCHAR',
-			'default'	=> '',
-			'value'		=> ''
-		),
-		'domain' => array (
-			'datatype'	=> 'VARCHAR',
-			'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",
-										'keyfield'=> 'domain',
-										'valuefield'=> 'domain'
-									 ),
-			'default'	=> '',
-			'value'		=> '',
-			'width'		=> '30',
-			'maxlength'	=> '255'
-		),
-		'destination' => array (
-			'datatype'	=> 'VARCHAR',
 			'formtype'	=> 'TEXT',
 			'default'	=> '',
 			'value'		=> '',
 			'width'		=> '30',
 			'maxlength'	=> '255'
 		),
+		'source' => array (
+			'datatype'	=> 'VARCHAR',
+			'formtype'	=> 'TEXT',
+			'validators'	=> array ( 	0 => array (	'type'	=> 'NOTEMPTY',
+														'errmsg'=> 'domain_error_empty'),
+										1 => array (	'type'	=> 'UNIQUE',
+														'errmsg'=> 'domain_error_unique'),
+										2 => array (	'type'	=> 'REGEX',
+														'regex' => '/^\@[\w\.\-]{2,255}\.[a-zA-Z\-]{2,30}$/',
+														'errmsg'=> 'domain_error_regex'),
+									),
+			'default'	=> '',
+			'value'		=> '',
+			'width'		=> '30',
+			'maxlength'	=> '255',
+			'searchable' => 1
+		),
+		'destination' => array (
+			'datatype'	=> 'VARCHAR',
+			'formtype'	=> 'SELECT',
+			'default'	=> '',
+			'datasource'	=> array ( 	'type'			=> 'SQL',
+										'querystring' 	=> 'SELECT email FROM mail_user WHERE {AUTHSQL} ORDER BY email',
+										'keyfield'		=> 'email',
+										'valuefield'	=> 'email'
+									 ),
+			'validators'	=> array ( 	0 => array (	'type'	=> 'ISEMAIL',
+														'errmsg'=> 'destination_error_isemail'),
+									),
+			'value'		=> '',
+			'searchable' => 2
+		),
+		'type' => array (
+			'datatype'	=> 'VARCHAR',
+			'formtype'	=> 'SELECT',
+			'default'	=> '',
+			'value'		=> array('alias' => 'Alias','forward'=>'Forward','catchall'=>'Catchall')
+		),
 		'active' => array (
-			'datatype'	=> 'INTEGER',
+			'datatype'	=> 'VARCHAR',
 			'formtype'	=> 'CHECKBOX',
-			'default'	=> '1',
-			'value'		=> '1'
+			'default'	=> 'y',
+			'value'		=> array(0 => 'n',1 => 'y')
 		),
 	##################################
 	# ENDE Datatable fields
@@ -104,4 +122,5 @@
 );
 
 
+
 ?>
\ No newline at end of file

--
Gitblit v1.9.1