Index: /trunk/expressoAdmin1_2/setup/phpgw_pt-br.lang
===================================================================
--- /trunk/expressoAdmin1_2/setup/phpgw_pt-br.lang	(revision 6556)
+++ /trunk/expressoAdmin1_2/setup/phpgw_pt-br.lang	(revision 6803)
@@ -168,4 +168,5 @@
 Enable blocking sending email to shared accounts (departments)	expressoAdmin1_2	pt-br	Ativar bloqueio de envio de e-mails para Contas Compartilhadas (departamentos)
 error adding application to new manager	expressoAdmin1_2	pt-br	Erro adicionando aplicação ao novo gerente
+Email address is not valid	expressoAdmin1_2	pt-br	Endereço de e-mail não válido
 Error on function	expressoAdmin1_2	pt-br	Erro na função
 Error on insert	expressoAdmin1_2	pt-br	Erro na inserção
@@ -173,4 +174,7 @@
 Error on Updating	expressoAdmin1_2	pt-br	Erro na atualização
 Error in OpenLDAP.	expressoAdmin1_2	pt-br	Erro no OpenLDAP.
+User already belongs to the list	expressoAdmin1_2	pt-br	Usuário já pertence a lista 
+external user	expressoAdmin1_2	pt-br	Usuário externo 
+external users	expressoAdmin1_2	pt-br	Usuários externos 
 Expire	expressoAdmin1_2	pt-br	Expira
 expressoAdmin1_2	common	pt-br	Expresso Admin
Index: /trunk/expressoAdmin1_2/inc/class.uimaillists.inc.php
===================================================================
--- /trunk/expressoAdmin1_2/inc/class.uimaillists.inc.php	(revision 6157)
+++ /trunk/expressoAdmin1_2/inc/class.uimaillists.inc.php	(revision 6803)
@@ -265,5 +265,5 @@
 					else
 					{
-						$mail_not_found .= "<option value=" . $mail . ">" . utf8_decode($cn) .  " (" . $array_users_uid[$mail] . ")</option>";
+						$mail_not_found .= "<option value=" . $mail . ">"  . $array_users_uid[$mail] . "</option>";
 					}
 				}
@@ -271,5 +271,5 @@
 				if ($mail_not_found != '')
 				{
-					$opt_tmp_mail_not_found = '<option  value="-1" disabled>--------------------&nbsp;&nbsp;&nbsp;&nbsp;'.lang('emails did not find').'&nbsp;&nbsp;&nbsp;&nbsp;------------------ </option>'."\n";
+					$opt_tmp_mail_not_found = '<option  value="-1" disabled>--------------------&nbsp;&nbsp;&nbsp;&nbsp;'.lang('external users').'&nbsp;&nbsp;&nbsp;&nbsp;------------------ </option>'."\n";
 					$ea_select_usersInMaillist .= $opt_tmp_mail_not_found . $mail_not_found;
 				}
Index: /trunk/expressoAdmin1_2/js/jscode/maillists.js
===================================================================
--- /trunk/expressoAdmin1_2/js/jscode/maillists.js	(revision 5133)
+++ /trunk/expressoAdmin1_2/js/jscode/maillists.js	(revision 6803)
@@ -384,2 +384,114 @@
 	return ufn.substring(0,(ufn.length-1));
 }
+
+function LTrim(value) 
+{ 
+     var w_space = String.fromCharCode(32); 
+     var strTemp = ""; 
+     var iTemp = 0; 
+
+     var v_length = value ? value.length : 0; 
+     if(v_length < 1) 
+             return ""; 
+
+     while(iTemp < v_length){ 
+             if(value && value.charAt(iTemp) != w_space){ 
+                     strTemp = value.substring(iTemp,v_length); 
+                     break; 
+             } 
+             iTemp++; 
+     } 
+     return strTemp; 
+} 
+
+function validateEmail() 
+{ 
+
+     externalEmail = document.getElementById('ea_input_externalUser'); 
+
+     if( externalEmail.value ) 
+     { 
+             //var element = arguments[0]; 
+             var validate = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/; 
+
+             if(this.LTrim(externalEmail.value) != "" && externalEmail.value != "") 
+             { 
+                     if(!validate.test(externalEmail.value)) 
+                     { 
+                             alert(get_lang('Email address is not valid') + '.'); 
+                             externalEmail.focus(); 
+                             return false; 
+                     }else { 
+                             this.add_externalUser2maillist(externalEmail.value); 
+                     } 
+             } 
+
+     } 
+} 
+
+function add_externalUser2maillist(mailAddress) 
+{ 
+     input_externalUsers = mailAddress.toLowerCase(); //document.getElementById('ea_input_externalUser').value; 
+     select_usersInMaillist = document.getElementById('ea_select_usersInMaillist'); 
+
+     var count_externalUsers = input_externalUsers.length; 
+     var count_usersInMaillist = select_usersInMaillist.options.length; 
+     var new_options = ''; 
+
+     var teste = ''; //Variavel que ira receber mensagem de alerta ao usuario; 
+     var alerta = new Boolean(0); //Variavel que sera usada para verificar se o alerta ao usuario sera exibido ou nao; 
+
+     //Laco abaixo compara se o valor escolhido em select_available_users ja existe em select_usersInMaillist 
+     //se existir, adiciona o valor em teste e muda a variavel alerta para true; teste sera exibido em tela 
+     //apenas de alerta  true; ver if no fim da funcao; 
+     for(j = 0; j < count_usersInMaillist; j++) 
+     { 
+             var tmp = select_usersInMaillist.options[j].text 
+
+             if(tmp.match(input_externalUsers)) 
+             { 
+                     teste = get_lang("User already belongs to the list") + "\n" + input_externalUsers + "\n"; 
+                     alerta = new Boolean(1); 
+             } 
+     } 
+
+     if(alerta != true) 
+     { 
+             if(document.all) 
+             { 
+                     if ( (select_usersInMaillist.innerHTML.indexOf('value='+input_externalUsers)) == '-1' ) 
+                     { 
+                             new_options +=  "<option value=" 
+                                                     + input_externalUsers 
+                                                     + ">" 
+                                                     + input_extenalUsers 
+                                                     + "</options>"; 
+                     } 
+             } 
+             else 
+             { 
+                     if ( (select_usersInMaillist.innerHTML.indexOf('value="'+input_externalUsers+'"')) == '-1' ) 
+                     { 
+                             new_options +=  "<option value=" 
+                                                     + input_externalUsers 
+                                                     + ">" 
+                                                     + input_externalUsers 
+                                                     + "</options>"; 
+                     } 
+             } 
+     } 
+
+     if(alerta == true) 
+     { 
+             alert(teste); 
+     } 
+
+
+     if (new_options != '') 
+     { 
+             select_usersInMaillist.innerHTML = new_options + select_usersInMaillist.innerHTML; 
+             select_usersInMaillist.outerHTML = select_usersInMaillist.outerHTML; 
+     } 
+
+     document.getElementById('ea_input_externalUser').value = ''; 
+} 
Index: /trunk/expressoAdmin1_2/templates/default/maillists_form.tpl
===================================================================
--- /trunk/expressoAdmin1_2/templates/default/maillists_form.tpl	(revision 6158)
+++ /trunk/expressoAdmin1_2/templates/default/maillists_form.tpl	(revision 6803)
@@ -73,4 +73,10 @@
 							<b>{lang_users}:</b><br>
 							<select id="ea_select_available_users" style="width:400px; height:200px" multiple size="13"></select>
+                            <br/><br/>  
+                              <b>{lang_external_user}:</b>  
+                              <br/>  
+                              <input id="ea_input_externalUser" size="35" type="text">  
+                              <input id="input_user" value="Adicionar" onclick="javascript:validateEmail();" type="button">  
+                              <br/> 
 						</td>
 					</tr>
