Index: sandbox/newExpressoMail/expressoMail1_2/js/abas.js
===================================================================
--- sandbox/newExpressoMail/expressoMail1_2/js/abas.js	(revision 6997)
+++ sandbox/newExpressoMail/expressoMail1_2/js/abas.js	(revision 7043)
@@ -8,12 +8,13 @@
 var countID = 2;
 var tab_content = "";
+var lastIndexSelected = 0;
 
 var ptabs = $("#ptabs").tabs({ 
-	tabTemplate: "<li><a href='#{href}'>#{label}</a> <span class='ui-icon ui-icon-close'>Remover Aba</span></li>", 
+	tabTemplate: "<li><a href='#{href}'>#{label}</a> <span class='ui-icon ui-icon-close' title='Fechar Aba'>Fechar Aba</span></li>", 
 	add: function( event, ui ) { 
 	        countID++; 
 	        $(ptabs).tabs('select', '#' + ui.panel.id); 
 	        $.cookie('open_tabs', ($.cookie('open_tabs') ? $.cookie('open_tabs')+"," : "") +ui.panel.id.substring(6));
-	        $( ui.panel ).append("<p>"+tab_content+"</p>"); 
+	        $( ui.panel ).addClass("conteudo").append(tab_content); 
 	},
 	show: function(event, ui){
@@ -22,17 +23,78 @@
 	cookie: {
 		expires: 1
+	},
+	select: function(event, ui) { 
+		console.log(ui.index);
+		lastIndexSelected = ui.index;
 	}
 }); 
 
-//CREATE A NEW TAB
-function createTab(href, label, conteudo, callback){
+/* 
+	method : createTab
+	descrition : create a new tab
+	params : {
+		label : Label of the tab
+		* content : Content of the tab
+		* href : Tab id 
+		* callback : a function
+	}
+	comments : {
+		#1 : if the user just set the label, a tab with blank content and a dynamic id is created
+		#2 : if a tab with a set href already exists, don't duplicate, this function only select the tab 
+
+	* = Optional
+*/
+
+function createTab(label, content,href, callback){
 	if( !$("#ptabs_"+href).length){
-		tab_content = conteudo;
-		$(ptabs).tabs("add", "#ptabs_"+href, (label.length > 21 ? label.substring(0, 15)+"..." : label));
-		if(callback)
+		tab_content = content ? content : "";
+		$(ptabs).tabs("add", "#ptabs_"+(href ? href : countID), (label.length > 21 ? label.substring(0, 18)+"..." : label));
+		if(typeof(callback) == 'function') 
 			callback();
 	}else{
-		var index = $( "li", $(ptabs) ).index( $('[href="#ptabs_'+ href +'"]').parent() );
-		$(ptabs).tabs( "select", index );
+		$(ptabs).tabs( "select", indexTab(href) );
 	}
 }
+
+
+/* 
+	method : removeTab
+	descrition : remove a tab
+	params : {
+		* href : Tab id 
+		* callback : a function
+	}
+	comments : {
+		#1 : if the user doesn't set no parameter, this function just remove the open tab
+
+	* = Optional
+*/
+
+function removeTab(href, callback){
+	ptabs.tabs("remove", 
+		(
+			href ? 
+			indexTab(href) : lastIndexSelected
+		)
+	);
+	if(typeof(callback) == 'function') 
+		callback();
+}
+
+
+/* 
+	method : indexTab
+	descrition : remove a tab
+	params : {
+		* href : Tab id 
+	}
+	comments : {
+		#1 : if the user doesn't set no parameter, this function just return the index of the open tab
+
+	* = Optional
+*/
+
+function indexTab(href){
+	return href ? 
+		$( "li", ptabs ).index( $('[href="'+href+'"]').parent() ) : lastIndexSelected;
+}
Index: sandbox/newExpressoMail/expressoMail1_2/js/common_functions.js
===================================================================
--- sandbox/newExpressoMail/expressoMail1_2/js/common_functions.js	(revision 6997)
+++ sandbox/newExpressoMail/expressoMail1_2/js/common_functions.js	(revision 7043)
@@ -1,3 +1,5 @@
 // BEGIN: FUNCTION RESIZE WINDOW
+var numBox = 0;
+
 if (!expresso_offline) {
 	var _showBar = showBar;
@@ -37,5 +39,9 @@
 function resizeWindow(){
 
-	var divScrollMain = Element("divScrollMain_"+numBox);
+	if(!is_ie){
+		var divScrollMain = Element("divScrollMain_"+numBox);
+	}else{
+		var divScrollMain = Element("divScrollMain_"+0);
+	}
 	var table_message = Element("table_message");
 	var content_folders = Element("content_folders");
@@ -64,5 +70,5 @@
 		for(var i = 1; BordersArray.length > 1 && i < BordersArray.length;i++) {
 			var div_scroll = Element("div_message_scroll_"+BordersArray[i].sequence);
-			var div = Element("content_id_"+BordersArray[i].sequence);
+			var div = Element("ptabs_"+BordersArray[i].sequence);
 
 			if(div){
@@ -77,13 +83,47 @@
 	}
 
-	if(content_folders){
-		var search_div = Element("search_div");
-		var contentFoldersY = findPosY(content_folders);
-		content_folders.style.height = (clientHeight - (contentFoldersY + (contentFoldersY > findPosY(search_div) ? 0 : (search_div.clientHeight ? search_div.clientHeight : search_div.offsetHeight) + 5))) + "px";
-	}
 	//redim_borders(count_borders());
 	resizeMailList();
 }
 // END: FUNCTION RESIZE WINDOW
+
+function resizeMailList() {
+	if (document.getElementById("table_message_header_box_"+numBox)==null)
+		return false;
+	var innerWidth = (window.innerWidth?window.innerWidth:document.body.clientWidth);
+	var scrollWidth = (innerWidth - 20 - getColumnPosition(Element("exmail_main_body"),"BODY")[0]);
+	document.getElementById("table_message_header_box_"+numBox).style.width = (scrollWidth-2)+'px';
+	if (document.getElementById("table_resultsearch_"+numBox)==null)
+		document.getElementById("table_box").style.width = scrollWidth+'px';
+	else
+		document.getElementById("table_resultsearch_"+numBox).style.width = scrollWidth+'px';
+	syncColumns();
+	//Alinhamento das colunas data e tamanho na pesquisa
+	if ( numBox > 0){
+		if (is_mozilla && !is_webkit){
+			$('#table_message_header_box_'+numBox).attr('style','width:99.5%');
+			$('#colgroup_head_'+numBox).find('col').each(function(index,value){
+				 $(this).attr('width',colSizes[1][index]);
+			});
+			$('#colgroup_main_'+numBox).find('col').each(function(index,value){
+				 $(this).attr('width',colSizes[1][index]);
+			});	
+		}	
+		else if (is_webkit){
+			$('#table_message_header_box_'+numBox).removeAttr('style');
+			$('#table_message_header_box_'+numBox).css('table-layout','auto');
+		}
+		else{
+			$('#table_message_header_box_'+numBox).css('table-layout','auto');
+		}
+		$('#table_message_header_box_'+numBox).find('td').each(function(index,value){
+		     $(this).width(colSizes[1][index]);
+		});
+		$('#divScrollMain_'+numBox).find('tr:first').find('td').each(function(index,value){
+		     $(this).width(colSizes[1][index]);
+		});			
+	}
+	$('#table_resultsearch_'+numBox).removeAttr('style');
+}
 
 var _beforeunload_ = window.onbeforeunload;
Index: sandbox/newExpressoMail/expressoMail1_2/js/main.js
===================================================================
--- sandbox/newExpressoMail/expressoMail1_2/js/main.js	(revision 6997)
+++ sandbox/newExpressoMail/expressoMail1_2/js/main.js	(revision 7043)
@@ -7,5 +7,5 @@
 var results_search_messages = ""; 
 var cabecalho = '<h4>ExpressoLivre - ExpressoMail</h4>'; 
-// Variavel para controle de atualização das mensagens listadas na modal de alerta de filtro por remetente
+// Variavel para controle de atualizaï¿œï¿œo das mensagens listadas na modal de alerta de filtro por remetente
 var checkAlarmsFilter = false;
 
@@ -15,5 +15,5 @@
 DataLayer.get("folder", true);
 
-//Os IE's < 9 não possui suporte a trim() introduzida no JavaScript 1.8.1
+//Os IE's < 9 nï¿œo possui suporte a trim() introduzida no JavaScript 1.8.1
 if(!String.prototype.trim){  
 	String.prototype.trim = function(){
@@ -21,5 +21,5 @@
 	} 
 }
-	
+
 function mount_url_folder(folders){
 	return folders.join(cyrus_delimiter);
@@ -87,6 +87,6 @@
 
 		$( "#ptabs span.ui-icon-close" ).live( "click", function() { 
-			var index = $( "li", $(ptabs) ).index( $( this ).parent() );
-			$(ptabs).tabs( "remove", index );
+			removeTab($( this ).prev().attr("href"));
+
 			var teste = "";
 			var ola = $( this );
@@ -102,36 +102,51 @@
 			axis: "x", 
 			items: "li:not(.ui-tab-disabled)", 
-			placeholder: "ui-state-highlight" 
 		}).disableSelection();
 
-		if($.cookie('open_tabs')){		
-			if($.cookie('open_tabs') != ""){	
-				var selected = $.cookie('ui-tabs-1');	
-				var ola = $.cookie('open_tabs');
-				$.cookie('open_tabs', "");
-				$.each(ola.split(','), function(index, value){
-					var msg_number = value.split("_r_")[0];
-					var msg_folder = Base64.decode(value.split("_r_")[1]);
-					$.ajax({
-						url: 'controller.php?' + $.param( {action: '$this.imap_functions.get_info_msg',
-					      msg_number: msg_number, 
-					      msg_folder: msg_folder,
-					      decoded: true } ),
-						async : false,
-					  	success: function( data ){
-						    data = connector.unserialize( data );
-						    if( data )
-								show_msg( data );
-							$(ptabs).tabs("select", parseInt(selected));
-					    },
-					  	beforeSend: function( jqXHR, settings ){
-					  		connector.showProgressBar();
-					  	},
-						complete: function( jqXHR, settings ){
-					  		connector.hideProgressBar();
-					  	}
-					});
-				});
-			}
+		if($.cookie('open_tabs')){	
+			$.Zebra_Dialog("Gostaria de recuperar suas mensagens que estavam abertas?", {
+				'type':     'question',
+				'title':    "Recuperar Mensagens Abertas",
+				'buttons':  [get_lang("Yes"), get_lang("No")],
+				'overlay_opacity' : 0.5,
+				'onClose':  function(caption) {
+					if(caption == get_lang("Yes")){
+						if($.cookie('open_tabs') != ""){	
+							var selected = $.cookie('ui-tabs-1');	
+							var ola = $.cookie('open_tabs');
+							$.cookie('open_tabs', "");
+							$.each(ola.split(','), function(index, value){
+								if(value.split("_r_").length > 1){
+									var msg_number = value.split("_r_")[0];
+									var msg_folder = Base64.decode(value.split("_r_")[1]);
+									$.ajax({
+										url: 'controller.php?' + $.param( {action: '$this.imap_functions.get_info_msg',
+									      msg_number: msg_number, 
+									      msg_folder: msg_folder,
+									      decoded: true } ),
+										async : false,
+									  	success: function( data ){
+										    data = connector.unserialize( data );
+										    if( data )
+												show_msg( data );
+											$(ptabs).tabs("select", parseInt(selected));
+									    },
+									  	beforeSend: function( jqXHR, settings ){
+									  		connector.showProgressBar();
+									  	},
+										complete: function( jqXHR, settings ){
+									  		connector.hideProgressBar();
+									  	}
+									});
+								}else{
+									write_msg("Novas Mensagens nï¿œo podem ser recuperadas, verifique seus rascunhos");			
+								}
+							});
+						}
+					}else 
+						write_msg("Mensagens removidas dos cookies");
+						$.cookie('open_tabs', '');
+					}
+			});
 		}
 
@@ -149,5 +164,5 @@
 		    }
 		}
-		if (preferences.use_local_messages==1) { //O I.E 7 estava se atrapalhando caso esses loads fossem feitos após as chamadas ajax. Antes não apresentou problemas...
+		if (preferences.use_local_messages==1) { //O I.E 7 estava se atrapalhando caso esses loads fossem feitos apï¿œs as chamadas ajax. Antes nï¿œo apresentou problemas...
 			connector.loadScript('mail_sync');
 			setTimeout('auto_archiving()', 30000);
@@ -159,5 +174,5 @@
 		}
 		cExecute ("$this.imap_functions.get_msgs&folder=INBOX&sort_box_type=SORTARRIVAL&search_box_type=ALL&sort_box_reverse=1&msg_range_begin=1", handler_populateSelectedMsgs);
-		//Substituido por padrão Jquery
+		//Substituido por padrï¿œo Jquery
 		cExecute ("$this.imap_functions.get_range_msgs2&folder=INBOX&msg_range_begin=1&msg_range_end="+preferences.max_email_per_page+"&sort_box_type=SORTARRIVAL&search_box_type=ALL&sort_box_reverse=1", handler_draw_box);
 		//cExecute ("$this.db_functions.get_dropdown_contacts", save_contacts); //Save contacts needs preferences.
@@ -171,8 +186,8 @@
 		//	
 
-		//Troca da forma de construção de menu para o plugin jquery.contextMenu
+		//Troca da forma de construï¿œï¿œo de menu para o plugin jquery.contextMenu
 		//ConstructMenuTools();
 		
-		if ( (preferences.use_local_messages==1) && (expresso_local_messages.is_offline_installed()) )  //Precisa ser feito após a renderização da caixa de emails
+		if ( (preferences.use_local_messages==1) && (expresso_local_messages.is_offline_installed()) )  //Precisa ser feito apï¿œs a renderizaï¿œï¿œo da caixa de emails
 			check_mail_in_queue();
 		
@@ -181,5 +196,5 @@
 			loadApplet();
 		}
-		// Fim da inserção da applet	
+		// Fim da inserï¿œï¿œo da applet	
 		DataLayer.get("folder", true);
 		cExecute("$this.imap_functions.get_folders_list&onload=true", update_menu);	
@@ -250,5 +265,5 @@
 	}
 
-	// Versão
+	// Versï¿œo
 	Element('divAppboxHeader').innerHTML = title_app;
 
@@ -280,9 +295,9 @@
 		'<td style="padding-left:17px" width=33% id="content_quota" align=left></td>' +
 		'<td width=33% height=16px align=center nowrap><font face=Verdana, Arial, Helvetica, sans-serif color=#000066 size=2>' +
-		'<b>ExpressoMail Offline</b><font size=1><b> - Versão 1.0</b></font></td>' +
+		'<b>ExpressoMail Offline</b><font size=1><b> - Versï¿œo 1.0</b></font></td>' +
 		'<td width=33% id="div_menu_c3" align=right></td>' +
 		'</tr></table>';
 
-		//Troca da forma de construção de menu para o plugin jquery.contextMenu
+		//Troca da forma de construï¿œï¿œo de menu para o plugin jquery.contextMenu
 		//ConstructMenuTools();
 
@@ -302,5 +317,5 @@
 /**
  * Carrega a applet java no objeto search_div
- * @author Mário César Kolling <mario.kolling@serpro.gov.br>
+ * @author Mï¿œrio Cï¿œsar Kolling <mario.kolling@serpro.gov.br>
  */
 
@@ -370,5 +385,5 @@
 }
 /*
-	função que remove todos os anexos...
+	funï¿œï¿œo que remove todos os anexos...
 */
 function remove_all_attachments(folder,msg_num) {
@@ -485,9 +500,9 @@
 		// Verifica se existe o objeto applet
 		if (!Element('cert_applet')){
-			// se não existir, mostra mensagem de erro.
+			// se nï¿œo existir, mostra mensagem de erro.
 			write_msg(get_lang('The preference "%1" isn\'t enabled.', get_lang('Enable digitally sign/cipher the message?')));
 		} else {
 			// se existir prepara os dados para serem enviados e chama a
-			// operação na applet
+			// operaï¿œï¿œo na applet
 
 		   // if ((msg_info.DispositionNotificationTo) && ((msg_info.Unseen == 'U') || (msg_info.Recent == 'N'))){
@@ -524,5 +539,5 @@
 		var id_msg_read = ID+"_r_"+folderName;
         
-        //Evita a tentativa de criação de uma aba cujo ID já existe
+        //Evita a tentativa de criaï¿œï¿œo de uma aba cujo ID jï¿œ existe
         if (Element("border_id_"+id_msg_read) && currentTab > 0) 
 		    id_msg_read += "n";
@@ -548,5 +563,11 @@
 		else {
 			var sbj = msg_info.subject.length < 21 ? msg_info.subject : msg_info.subject.substr(0,21) + "...";
-			createTab(id_msg_read,sbj, msg_info.body);
+			var content = $(DataLayer.render("../prototype/modules/mail/templates/email.ejs", {info : msg_info}));
+
+			createTab(sbj, content.html(), id_msg_read);
+
+			content.find(".message-flags").buttonset();
+			//$(".message-flags").buttonset();
+			//$(".button").button();
 			/*
 			var border_id = create_border(msg_info.subject, id_msg_read);
@@ -592,5 +613,5 @@
 
 			if (confNotification) {
-			/* Adequação a nova funcionalidade. Agora, a confirmação de leitura é uma preferência do usuário. */
+			/* Adequaï¿œï¿œo a nova funcionalidade. Agora, a confirmaï¿œï¿œo de leitura ï¿œ uma preferï¿œncia do usuï¿œrio. */
 				if(preferences.confirm_read_message) {
 					$.Zebra_Dialog(get_lang("Would you like to send the read receipt?"), {
@@ -642,5 +663,5 @@
 				alarmFollowupflagged('filtersAlarms', data);
 			}
-			/* Busca  nas pastas indexadas para ver se há novas mensagens com a flag $FilteredMessage */
+			/* Busca  nas pastas indexadas para ver se hï¿œ novas mensagens com a flag $FilteredMessage */
 			cExecute ("$this.imap_functions.getFlaggedAlertMessages&folders="+fromRules, handlerMessageFilter);
 		}
@@ -864,5 +885,5 @@
 function delete_msgs(folder, msgs_number, border_ID, show_success_msg,archive){	
 			if( preferences.use_local_messages == 1 && expresso_local_messages.isArchiving( msgs_number, folder ) ){
-			  alert( "Impossivel deletar mensagens que estão ainda estão sendo arquivadas." );
+			  alert( "Impossivel deletar mensagens que estï¿œo ainda estï¿œo sendo arquivadas." );
 			  return;
 			}
@@ -877,5 +898,5 @@
 					var arrayFolder = folder.split(cyrus_delimiter); 
 					userTrashFolder = 'user'+cyrus_delimiter+arrayFolder[1]+cyrus_delimiter+special_folders['Trash'];  
-					/** TODO Mudar quando melhorias forem implementadas na API de atualização do cache */
+					/** TODO Mudar quando melhorias forem implementadas na API de atualizaï¿œï¿œo do cache */
 					DataLayer.remove('folder', false);
 					DataLayer.get('folder');
@@ -995,5 +1016,5 @@
 	
 	if( preferences.use_local_messages == 1 && expresso_local_messages.isArchiving( selected_messages, folder ) ){
-	  alert( "Impossivel mover mensagens que estão ainda estão sendo arquivadas." );
+	  alert( "Impossivel mover mensagens que estï¿œo ainda estï¿œo sendo arquivadas." );
 	  return;
 	}
@@ -1144,5 +1165,5 @@
 	var folder_error = new_folder_name;
         if( preferences.use_local_messages == 1 && expresso_local_messages.isArchiving( msgs_number, folder ) ){
-	    alert( "Impossivel mover mensagens que estão ainda estão sendo arquivadas." );
+	    alert( "Impossivel mover mensagens que estï¿œo ainda estï¿œo sendo arquivadas." );
 	    return;
 	}
@@ -1208,5 +1229,5 @@
 					}
 				}
-				//se houver pagina anterior a paginação deve ser refeita
+				//se houver pagina anterior a paginaï¿œï¿œo deve ser refeita
 				else if (current_page > 1){
 					$('#msg_opt_previous_'+msg_to_delete.getAttribute('id') + '_r').trigger('click');
@@ -1252,5 +1273,5 @@
 		if ( preferences.use_shortcuts == '1') {
 			var all_messages = Element('tbody_box').childNodes;
-			// verificar se a msg selecionada com o checkbox é a mesma selecionada com o shortcut
+			// verificar se a msg selecionada com o checkbox ï¿œ a mesma selecionada com o shortcut
 			var msg_list_shortcut = get_selected_messages_shortcut().split(',');
 			if(data.msgs_number.length > 0 && msg_list_shortcut.length > 0 && data.msgs_number.toString() == msg_list_shortcut.toString()){
@@ -1312,5 +1333,5 @@
 		}
 
-	// se a aba estiver aberta e selecionada, apenas a msg da aba é movida
+	// se a aba estiver aberta e selecionada, apenas a msg da aba ï¿œ movida
 	if(currentTab.toString().indexOf("_r") != -1 && currentTab == border_ID)
         {
@@ -1382,5 +1403,5 @@
 }
 
-//Caso deseja-se que não se abra a mensagem anterior independente da 
+//Caso deseja-se que nï¿œo se abra a mensagem anterior independente da 
 //preferencia do usuario
 function move_msgs_not_previus(folder, msgs_number, border_ID, new_folder, new_folder_name) {
@@ -1394,5 +1415,5 @@
 
 
-      // se a aba estiver aberta e selecionada, apenas a msg da aba é movida
+      // se a aba estiver aberta e selecionada, apenas a msg da aba ï¿œ movida
       if(currentTab.toString().indexOf("_r") != -1)
       {
@@ -1430,5 +1451,5 @@
 
 	if( !id_msgs ){
-	    write_msg( "Todas as mensagens já foram arquivadas anteriormente." );
+	    write_msg( "Todas as mensagens jï¿œ foram arquivadas anteriormente." );
 	    return;
 	}
@@ -1443,5 +1464,5 @@
 		msgs_info[i] = connector.unserialize( data[i] );
 
-	    //vejo se já tinha mensagens locais
+	    //vejo se jï¿œ tinha mensagens locais
 	    var h = expresso_local_messages.has_local_mails();
 	    
@@ -1509,5 +1530,5 @@
 
 	 if( !id_msgs ){
-	      write_msg( "Todas as mensagens já foram arquivadas anteriormente." );
+	      write_msg( "Todas as mensagens jï¿œ foram arquivadas anteriormente." );
 	      return;
 	  }
@@ -1522,5 +1543,5 @@
 		msgs_info[i] = connector.unserialize( data[i] );
 
-	    //vejo se já tinha mensagens locais
+	    //vejo se jï¿œ tinha mensagens locais
 	    var h = expresso_local_messages.has_local_mails();
 	    
@@ -1741,9 +1762,9 @@
 
  		         
- 		        /* Verifica se está na tela de pesquisa. */ /*
+ 		        /* Verifica se estï¿œ na tela de pesquisa. */ /*
  		        if(selected_messages.indexOf("_") != -1) 
  		        { 
  		                results_search_messages = selected_messages; 
- 		                /* Retira a informação da aba */ /*
+ 		                /* Retira a informaï¿œï¿œo da aba */ /*
  		                selected_messages = selected_messages.substring(0,selected_messages.indexOf("_"));
 	}
@@ -2119,5 +2140,5 @@
 			openTab.imapBox[new_border_ID] = folder_message.value;
 			document.getElementById('font_border_id_'+new_border_ID).innerHTML = data.subject;
-			title = "Edição: "+ html_entities(data.subject);
+			title = "Ediï¿œï¿œo: "+ html_entities(data.subject);
 			
 			data.to = Element("to_values_" + border_ID).value;
@@ -2191,5 +2212,5 @@
 }
 
-//DESENHA OS RETANGULOS PARA OS E-MAIL NA OPÇÃO REPLY
+//DESENHA OS RETANGULOS PARA OS E-MAIL NA OPï¿œï¿œO REPLY
 function draw_reply_boxes_by_field(field, value, context){
 	array = break_comma(value);
@@ -2554,5 +2575,5 @@
 			}
 			else { // crypt
-				//TODO: Colocar mensagem de erro, e finalizar o método.
+				//TODO: Colocar mensagem de erro, e finalizar o mï¿œtodo.
 				operation = 'nop';
 			}
@@ -2610,5 +2631,7 @@
 
 		*/
-		delete_border(ID,'true');
+		//delete_border(ID,'true');
+		removeTab();
+
 		var arrayTo = content.find(".to-tr").find(".box").clone();
 		save_dynamic_contacts(arrayTo);
@@ -2660,5 +2683,5 @@
 }
 
-/*Função que grava o destinatário nos contatos dinâmicos*/
+/*Funï¿œï¿œo que grava o destinatï¿œrio nos contatos dinï¿œmicos*/
 function save_dynamic_contacts(array){
 	if(parseInt(preferences.use_dynamic_contacts)){
@@ -2692,10 +2715,10 @@
 
 /**
- * Método chamado pela applet para retornar o resultado da assinatura/decifragem do e-mail.
+ * Mï¿œtodo chamado pela applet para retornar o resultado da assinatura/decifragem do e-mail.
  * para posterior envio ao servidor.
- * @author Mário César Kolling <mario.kolling@serpro.gov.br>, Bruno Vieira da Costa <bruno.vieira-costa@serpro.gov.br>
+ * @author Mï¿œrio Cï¿œsar Kolling <mario.kolling@serpro.gov.br>, Bruno Vieira da Costa <bruno.vieira-costa@serpro.gov.br>
  * @param smime O e-mail decifrado/assinado
- * @param ID O ID do e-mail, para saber em que aba esse e-mail será mostrado.
- * @param operation A operação que foi realizada pela applet (assinatura ou decifragem)
+ * @param ID O ID do e-mail, para saber em que aba esse e-mail serï¿œ mostrado.
+ * @param operation A operaï¿œï¿œo que foi realizada pela applet (assinatura ou decifragem)
  */
 function appletReturn(smime, ID, operation, folder){
@@ -2728,8 +2751,8 @@
 	{
 		ID_tmp = ID;
-		// Lê a variável e chama a nova função cExecuteForm
+		// Lï¿œ a variï¿œvel e chama a nova funï¿œï¿œo cExecuteForm
 		// Processa e envia para o servidor web
 		// Faz o request do connector novamente. Talvez implementar no connector
-		// para manter coerência.
+		// para manter coerï¿œncia.
 
 		var handler_send_smime = function(data){
@@ -2743,8 +2766,8 @@
 		textArea.value += smime;
 
-		// Lê a variável e chama a nova função cExecuteForm
+		// Lï¿œ a variï¿œvel e chama a nova funï¿œï¿œo cExecuteForm
 		// Processa e envia para o servidor web
 		// Faz o request do connector novamente. Talvez implementar no connector
-		// para manter coerência.
+		// para manter coerï¿œncia.
 		if (is_ie){
 			var i = 0;
@@ -2766,5 +2789,5 @@
         zebraDiscardEventDialog = true;
         window.setTimeout(function() {
-            $.Zebra_Dialog('Existem anexos sendo enviados para o servidor. Caso envie sua mensagem agora estes arquivos serão perdidos.', {
+            $.Zebra_Dialog('Existem anexos sendo enviados para o servidor. Caso envie sua mensagem agora estes arquivos serï¿œo perdidos.', {
                 'type':     'question',
                 'overlay_opacity': '0.5',
@@ -2793,6 +2816,6 @@
 	if (preferences.auto_save_draft == 1)
 	   autoSaveControl.status[ID] = true;
-	var content = $("#content_id_"+ID);
-	var save_link = $("#content_id_"+ID).find(".save");
+	var content = $("#ptabs_"+ID);
+	var save_link = $("#ptabs_"+ID).find(".save");
 	var onClick = save_link.onclick;
 	save_link.onclick = '';
@@ -2824,9 +2847,9 @@
 	input_type.value = RichTextEditor.plain[ID] ? 'plain' : 'html'; 
 	
-        var uids = document.createElement("INPUT");
+    /*    var uids = document.createElement("INPUT");
 	uids.style.display='none';
 	uids.name = "uids_save";
 	uids.value = uidsSave[ID].toString();
-        
+    */    
         var save_folder = document.createElement("INPUT");
 	save_folder.style.display='none';
@@ -2834,8 +2857,9 @@
 	save_folder.value = (openTab.imapBox[ID] && openTab.type[ID] < 6) ? openTab.imapBox[ID]: "INBOX" + cyrus_delimiter + draftsfolder;
         
-        var msg_attachments = document.createElement("INPUT");
+    /*    var msg_attachments = document.createElement("INPUT");
 	msg_attachments.style.display='none';
 	msg_attachments.name = "attachments";
 	msg_attachments.value = listAttachment(ID);
+	*/
 
 	if (is_ie){
@@ -2847,7 +2871,7 @@
 		form = document.forms["form_message_"+ID];
 
-		// Evita que e-mails assinados sejam enviados quando o usuário tenta enviar um e-mail
-		// não assinado (desmarcou a opção) após tentar enviar um e-mail assinado que não passou
-		// no teste de validação.
+		// Evita que e-mails assinados sejam enviados quando o usuï¿œrio tenta enviar um e-mail
+		// nï¿œo assinado (desmarcou a opï¿œï¿œo) apï¿œs tentar enviar um e-mail assinado que nï¿œo passou
+		// no teste de validaï¿œï¿œo.
 		var checkSign = document.getElementById('return_digital_'+ID);
 		if (checkSign && !checkSign.checked){
@@ -2863,5 +2887,5 @@
 	form.appendChild(input_folder);
     form.appendChild(input_type);
-	// Implementação do In_Reply_To e References
+	// Implementaï¿œï¿œo do In_Reply_To e References
 	var msgId = document.createElement("INPUT");
 	msgId.style.display = 'none';
@@ -2871,6 +2895,6 @@
 	form.appendChild(msgId);
     form.appendChild(save_folder);
-    form.appendChild(uids);
-	form.appendChild(msg_attachments);
+    //form.appendChild(uids);
+	//form.appendChild(msg_attachments);
 
         var mail_type = document.createElement('input');
@@ -2934,5 +2958,5 @@
 			return;
 		}else if(invalidEmail[0] == true){
-			write_msg("Os endereços de destinatário a seguir estão incorretos: "+invalidEmail[1]);
+			write_msg("Os endereï¿œos de destinatï¿œrio a seguir estï¿œo incorretos: "+invalidEmail[1]);
 			return;
 		}
@@ -2961,9 +2985,9 @@
 	if((campo.replace(/^\s+|\s+$/g,"")) != ""){
 			if(invalidEmail[0] == true){
-				write_msg("Erro de SMTP: Os endereços de destinatário a seguir falharam: "+ invalidEmail[1]);
+				write_msg("Erro de SMTP: Os endereï¿œos de destinatï¿œrio a seguir falharam: "+ invalidEmail[1]);
 				return false;
 			}else{
 				if(semicolon.length > 1){
-					var stringError = "Erro de SMTP: Os endereços devem ser separados apenas por vígula: ";
+					var stringError = "Erro de SMTP: Os endereï¿œos devem ser separados apenas por vï¿œgula: ";
 					for(var i= 0; i < semicolon.length; i++){
 						stringError = stringError + semicolon[i];
@@ -3562,15 +3586,15 @@
 			if(to) {
 				if(!printListTO)
-					to = 'Os destinatários não estão sendo exibidos para esta impressão';
+					to = 'Os destinatï¿œrios nï¿œo estï¿œo sendo exibidos para esta impressï¿œo';
 				html += "<tr><td width=7%><font size='2'>" + get_lang('To') + ": </font></td><td><font size='2'>"+to+"</font></td></tr>";
 			}
 			if (cc) {
 				if(!printListCC)
-					cc = 'Os destinatários não estão sendo exibidos para esta impressão';
+					cc = 'Os destinatï¿œrios nï¿œo estï¿œo sendo exibidos para esta impressï¿œo';
 				html += "<tr><td width=7%><font size='2'>" + get_lang('Cc') + ": </font></td><td><font size='2'>"+cc+"</font></td></tr>";
 			}
 			if (cco) {
 				if(!printListCCO)
-					cco = 'Os destinatários não estão sendo exibidos para esta impressão';
+					cco = 'Os destinatï¿œrios nï¿œo estï¿œo sendo exibidos para esta impressï¿œo';
 				html += "<tr><td width=7%><font size='2'>" + get_lang('Cco') + ": </font></td><td><font size='2'>"+cco+"</font></td></tr>";
 			}
@@ -3830,5 +3854,5 @@
 		msgs_number = get_selected_messages();
 
-	//TODO: REFATORAR O CÓDIGO PARA EVITAR recodificação
+	//TODO: REFATORAR O Cï¿œDIGO PARA EVITAR recodificaï¿œï¿œo
 	if(currentTab == 0)
 		msgs_number = get_selected_messages();
@@ -3873,5 +3897,5 @@
 		msgs_number = get_selected_messages();
 
-	//TODO: REFATORAR O CÓDIGO PARA EVITAR recodificação
+	//TODO: REFATORAR O Cï¿œDIGO PARA EVITAR recodificaï¿œï¿œo
 	if(currentTab == 0)
 		msgs_number = get_selected_messages();
@@ -4053,5 +4077,5 @@
 			if ( er.test(folder.id) )
 			{
-				alert( "Mensagens não podem ser importadas em pastas locais" );
+				alert( "Mensagens nï¿œo podem ser importadas em pastas locais" );
 				//archive_msgs('INBOX/Lixeira/tmpMoveToLocal',wfolders_tree._selected.id,data);
 				//cExecute('$this.imap_functions.delete_mailbox',function(){},'del_past=INBOX/Lixeira/tmpMoveToLocal');
@@ -4076,5 +4100,5 @@
 	if(typeof(Encoder) == "undefined"){
 		/*
-		* Deve-se centralizar as informações do usuário logado afim de não incluir
+		* Deve-se centralizar as informaï¿œï¿œes do usuï¿œrio logado afim de nï¿œo incluir
 		* arquivos de modulos distintos para este fim.
 		*/
@@ -4254,5 +4278,5 @@
 							break;	
 						case 6:
-							var acceptedSuggestion = confirm("Deseja atualizar o evento de acordo com a sugestão ?");
+							var acceptedSuggestion = confirm("Deseja atualizar o evento de acordo com a sugestï¿œo ?");
 							$.ajax({
 								url: "controller.php?action="+import_url+'&from_ajax=true&id_user='+User.me.id+'&selected=true&cirus_delimiter='+cyrus_delimiter+'&acceptedSuggestion='+acceptedSuggestion+"&from="+document.getElementById('from_values_'+currentTab).value+'&uidAccount='+decodeOwner(),
@@ -4265,9 +4289,9 @@
 							break;
 						case 9:
-							alert('Seu evento não possui alterações!');
+							alert('Seu evento nï¿œo possui alteraï¿œï¿œes!');
 							return;
 							break;
 						case 11:
-							alert('Este evento já fora importando por algum dos particpantes e já se encontra disponível em sua agenda compartilhada!');
+							alert('Este evento jï¿œ fora importando por algum dos particpantes e jï¿œ se encontra disponï¿œvel em sua agenda compartilhada!');
 							return;
 							break;
@@ -4348,5 +4372,5 @@
 	else {
 		expresso_local_messages.set_as_sent(rowid_message);
-		if(document.getElementById('_action')) { //Não posso manter esse elemento, pois o connector irá criar outro com o mesmo id para a próxima mensagem.
+		if(document.getElementById('_action')) { //Nï¿œo posso manter esse elemento, pois o connector irï¿œ criar outro com o mesmo id para a prï¿œxima mensagem.
 			el =document.getElementById('_action');
 			father = el.parentNode;
@@ -4467,5 +4491,5 @@
 }
 
-		/* Função que chama a tela para o usuário reportar um erro no email. */ 
+		/* Funï¿œï¿œo que chama a tela para o usuï¿œrio reportar um erro no email. */ 
  		function reports_window(currentTab){ 
  		        ID_msg = currentTab.substr(0,currentTab.indexOf("_")); 
@@ -4494,5 +4518,5 @@
 				var prefix = 'user' + cyrus_delimiter+user_selected_name;
 				
-				/** TODO Mudar quando melhorias forem implementadas na API de atualização do cache */
+				/** TODO Mudar quando melhorias forem implementadas na API de atualizaï¿œï¿œo do cache */
 				DataLayer.remove('folder', false);
 				DataLayer.get('folder');
Index: sandbox/newExpressoMail/expressoMail1_2/js/draw_api.js
===================================================================
--- sandbox/newExpressoMail/expressoMail1_2/js/draw_api.js	(revision 6997)
+++ sandbox/newExpressoMail/expressoMail1_2/js/draw_api.js	(revision 7043)
@@ -2,9 +2,9 @@
  * Estrutura que guarda em cache as mensagens abertas, a exemplo da estrutura utilizada
  * na funcionalidade de anexar mensagens.
- * Isto reduz a necessidade de acessar estruturas da tela para obter informações sobre 
+ * Isto reduz a necessidade de acessar estruturas da tela para obter informaï¿œï¿œes sobre 
  * as mensagens, como tem sido para encaminhar, responder, etc.
  * Manter os dados 'limpos' em uma estrutura 'somente-leitura' permite maior flexibilidade
  * para mudar a tela e menos processamento de limpeza de dados (por exemplo retirar tags de 
- * formatação, etc.) 
+ * formataï¿œï¿œo, etc.) 
  */
  
@@ -46,5 +46,5 @@
 
 var currentTab,numBox = 0; // Open Tab and num of mailboxes opened at context
-// Objeto Map, talvez o ideal fosse adicionar este objeto à Api do egroupware, e carregá-lo
+// Objeto Map, talvez o ideal fosse adicionar este objeto ï¿œ Api do egroupware, e carregï¿œ-lo
 // aqui no expressoMail.
 
@@ -982,43 +982,4 @@
 }
 
-function resizeMailList() {
-	if (document.getElementById("table_message_header_box_"+numBox)==null)
-		return false;
-	var innerWidth = (window.innerWidth?window.innerWidth:document.body.clientWidth);
-	var scrollWidth = (innerWidth - 20 - getColumnPosition(Element("exmail_main_body"),"BODY")[0]);
-	document.getElementById("table_message_header_box_"+numBox).style.width = (scrollWidth-2)+'px';
-	if (document.getElementById("table_resultsearch_"+numBox)==null)
-		document.getElementById("table_box").style.width = scrollWidth+'px';
-	else
-		document.getElementById("table_resultsearch_"+numBox).style.width = scrollWidth+'px';
-	syncColumns();
-	//Alinhamento das colunas data e tamanho na pesquisa
-	if ( numBox > 0){
-		if (is_mozilla && !is_webkit){
-			$('#table_message_header_box_'+numBox).attr('style','width:99.5%');
-			$('#colgroup_head_'+numBox).find('col').each(function(index,value){
-				 $(this).attr('width',colSizes[1][index]);
-			});
-			$('#colgroup_main_'+numBox).find('col').each(function(index,value){
-				 $(this).attr('width',colSizes[1][index]);
-			});	
-		}	
-		else if (is_webkit){
-			$('#table_message_header_box_'+numBox).removeAttr('style');
-			$('#table_message_header_box_'+numBox).css('table-layout','auto');
-		}
-		else{
-			$('#table_message_header_box_'+numBox).css('table-layout','auto');
-		}
-		$('#table_message_header_box_'+numBox).find('td').each(function(index,value){
-		     $(this).width(colSizes[1][index]);
-		});
-		$('#divScrollMain_'+numBox).find('tr:first').find('td').each(function(index,value){
-		     $(this).width(colSizes[1][index]);
-		});			
-	}
-	$('#table_resultsearch_'+numBox).removeAttr('style');
-}
-
 function selectCancel(ev) {
 	return (false);
@@ -1081,5 +1042,5 @@
 
 
-/*Cria a div que permite a seleção de todas as mensagens*/
+/*Cria a div que permite a seleï¿œï¿œo de todas as mensagens*/
 function drawSelectMsgsTable(){
 	var div = $('<div>');	
@@ -1104,5 +1065,5 @@
 	var div = $('.select-all-messages');
 	var filterFlag = search_box_type != "ALL" ? '"' + get_lang(search_box_type) + "s" + '"': "";
-	/*Seleciona as mensagens ao navegar pelas páginas*/
+	/*Seleciona as mensagens ao navegar pelas pï¿œginas*/
 	if (allMsgsSelected && msg_number == undefined){
 		$('.checkbox').each(function(){
@@ -1135,5 +1096,5 @@
 		$('#chk_box_select_all_messages').attr('checked',true);
 		if (total_pages > 1){
-			var link = "<a class='select-link' href='#'>Limpar seleção?</a>";
+			var link = "<a class='select-link' href='#'>Limpar seleï¿œï¿œo?</a>";
 			var info = "Todas as <b>"+totalFolderMsgs+"</b> mensagens "+filterFlag+" em "+folder+" foram selecionadas. "+link;
 			div.html("<span>"+info+"<span>");
@@ -1145,5 +1106,5 @@
 	else if (tSelected > 0 && !allMsgsSelected && total_pages > 1){
 		$('#chk_box_select_all_messages').attr('checked',false);
-		var link = "<a class='select-link' href='#'>Limpar seleção?</a>";
+		var link = "<a class='select-link' href='#'>Limpar seleï¿œï¿œo?</a>";
 		if (tSelected == 1){
 			var info = "Foi selecionada <b>"+tSelected+"</b> mensagem "+filterFlag+" em "+folder+". "+link;
@@ -1160,5 +1121,5 @@
 	}
 	else if (allMsgsSelected && total_pages > 1){
-		var link = "<a class='select-link' href='#'>Limpar seleção?</a>";
+		var link = "<a class='select-link' href='#'>Limpar seleï¿œï¿œo?</a>";
 		var info = "Todas as <b>"+totalFolderMsgs+"</b> mensagens "+filterFlag+" em "+folder+" foram selecionadas. "+link;
 		div.html("<span>"+info+"<span>");
@@ -1184,5 +1145,5 @@
 	if (select){
 		allMsgsSelected = true;
-		var link = "<a class='select-link' href='#'>Limpar seleção?</a>";
+		var link = "<a class='select-link' href='#'>Limpar seleï¿œï¿œo?</a>";
 		var info = "Todas as <b>"+totalFolderMsgs+"</b> mensagens "+filterFlag+" em "+folder+" foram selecionadas. "+link;
 		div.html("<span>"+info+"<span>");
@@ -1253,5 +1214,5 @@
 	/**
 	 * Preenche a estrutura de cache de mensagens para posterior consulta de 
-	 * informações sobre as mensagens no escopo global.
+	 * informaï¿œï¿œes sobre as mensagens no escopo global.
 	 */
 	for (var i=0; i<headers_msgs.length; i++) { 
@@ -1264,8 +1225,8 @@
 		kill_current_box();
 
-	if(is_ie)
-		document.getElementById("border_table").width = "99.5%";
-
-	numBox = 0; //As pastas sempre estarão na aba 0
+	//if(is_ie)
+	//		document.getElementById("border_table").width = "99.5%";
+
+	numBox = 0; //As pastas sempre estarï¿œo na aba 0
 	
 	openTab.content_id[numBox] = document.getElementById("ui-tabs-"+numBox);
@@ -1645,5 +1606,5 @@
 }
 
-// Passar o parâmetro offset para esta função
+// Passar o parï¿œmetro offset para esta funï¿œï¿œo
 function make_tr_message(headers_msgs, msg_folder, offsetToGMT){
 		headers_msgs.subject = html_entities(headers_msgs.subject);
@@ -1937,7 +1898,7 @@
 			/**
 				* Hack:
-				* headers_msgs.followupflagged.id não vai funcionar porque já foi feito DataLayer.commit()
+				* headers_msgs.followupflagged.id nï¿œo vai funcionar porque jï¿œ foi feito DataLayer.commit()
 				* por isso o id deve ser obtido do banco
-				* também para verificar se há ou não sinalizador nesta mensagem
+				* tambï¿œm para verificar se hï¿œ ou nï¿œo sinalizador nesta mensagem
 			*/
 
@@ -2258,5 +2219,5 @@
         var folder;
 
-        //Correção para fazer funcionar e-mails assinados no formato encapsulado.
+        //Correï¿œï¿œo para fazer funcionar e-mails assinados no formato encapsulado.
        // folder_id = info_msg.original_ID ? info_msg.original_ID: info_msg.msg_number;
         //if ((folder = document.getElementById(info_msg.msg_number)) == null)
@@ -2284,5 +2245,5 @@
 			};
 		}
-		/*Ultima mensagem de cada página, exceto a ultima*/
+		/*Ultima mensagem de cada pï¿œgina, exceto a ultima*/
         else if( (current_page < total_pages) ){
 		   
@@ -2358,5 +2319,5 @@
 			};
 		}
-		//primeira mensagem de cada página, exceto a primeira
+		//primeira mensagem de cada pï¿œgina, exceto a primeira
 		else if(current_page > 1){
 		      
@@ -3234,5 +3195,5 @@
 			DataLayer.dispatchPath = "../prototype/";
 			var path = "../prototype/modules/calendar/";
-			
+
 			var startEvent = new Date();  
 			if(startEvent.toString('mm') < 30) 
@@ -3254,5 +3215,5 @@
 			
 			
-			//Normalização dos dados evita ter que reemplementar toda as funcionalidades do calendar
+			//Normalizaï¿œï¿œo dos dados evita ter que reemplementar toda as funcionalidades do calendar
 			eventDetails({ 
 					
@@ -3347,5 +3308,5 @@
 	
 	var update_labeleds_msg = function(){
-		//TODO Mudar quando API abstrair atualizações no cache
+		//TODO Mudar quando API abstrair atualizaï¿œï¿œes no cache
 		DataLayer.remove('labeled', false);
 		//DataLayer.get('labeled');
@@ -3375,5 +3336,5 @@
 			$(markers).find('span.removeLabeledMsg').click(function(event){
 				var id_labeled = $(event.target).attr("id");
-				//TODO Mudar quando API abstrair atualizações no cache
+				//TODO Mudar quando API abstrair atualizaï¿œï¿œes no cache
 				//DataLayer.remove('labeled', false);
 				//DataLayer.get('labeled');
@@ -3399,5 +3360,5 @@
 	if ( info_msg.attachments && info_msg.attachments.length > 0 )
 	{
-		//Código no padrão expresso 2.2
+		//Cï¿œdigo no padrï¿œo expresso 2.2
 	var tr6 = document.createElement("TR");
 		tr6.className = "tr_message_header";
@@ -3444,5 +3405,5 @@
 			if((url_decode(info_msg.attachments[i].name).indexOf(".ics")!=-1) || (url_decode(info_msg.attachments[i].name).indexOf(".vcard")!=-1))
 			{
-				//Link para importar calendário
+				//Link para importar calendï¿œrio
 				var link_import_attachment = new Image();
 				link_import_attachment.src = "templates/"+template+"/images/new.png";
@@ -3459,5 +3420,5 @@
             if((url_decode(info_msg.attachments[i].name).indexOf(".eml") != -1))
 			{
-				//Link para importar calendário
+				//Link para importar calendï¿œrio
 				var link_open_msg = new Image();
 				link_open_msg.src = "templates/"+template+"/images/email.png";
@@ -3509,5 +3470,5 @@
 					break;
 				case 12:
-					write_msg('Este evento não existe mais.');
+					write_msg('Este evento nï¿œo existe mais.');
 					return;
 					break;			
@@ -3626,5 +3587,5 @@
 
 				if ( ( links.item( i ).href.indexOf( 'javascript:' ) !== 0 ) &&
-					(links.item( i ).href.indexOf(anchor_pattern) !== 0) ) //se não for âncora
+					(links.item( i ).href.indexOf(anchor_pattern) !== 0) ) //se nï¿œo for ï¿œncora
 						links.item( i ).setAttribute( 'target', '_blank' );
 			}
@@ -3682,5 +3643,5 @@
 	                var fdr = info_msg.msg_folder; 
 					var i = 0;
-				//verifica se está no novo padrão de montagem das mensagens ou no antigo, necessário
+				//verifica se estï¿œ no novo padrï¿œo de montagem das mensagens ou no antigo, necessï¿œrio
 				//para exibir as imagens no arquivamento local arquivamento local.
 				if(thumbs){
@@ -3744,5 +3705,5 @@
 
 	/*
-	 * TODO: implementar o controle como preferência do usuário
+	 * TODO: implementar o controle como preferï¿œncia do usuï¿œrio
 	 *
 	 */
@@ -3777,5 +3738,5 @@
 											'</a>'+ 
 											'<span style="margin-left:5px; margin-top:7px; position:absolute;">'+name+'</span>'+ 
-											'<a title="Próxima" onclick="javascript:$.fancybox.next();" style="float:right;">' + 
+											'<a title="Prï¿œxima" onclick="javascript:$.fancybox.next();" style="float:right;">' + 
 												'<img src="./templates/'+template+'/images/right_arrow_white.png" width="30" height="30" />' + 
 											'</a>' + 
@@ -3879,5 +3840,5 @@
 	var validation = email.split('"');
 	
-	//FUNÇÃO QUE VALIDA OS DADOS QUANDO O EMAIL É DIGITADO COM ("NOME SOBRENOME" <Email@dominio.com>)
+	//FUNï¿œï¿œO QUE VALIDA OS DADOS QUANDO O EMAIL ï¿œ DIGITADO COM ("NOME SOBRENOME" <Email@dominio.com>)
 	var complexValidation = function(complexMail){
 		var Objct = {};
@@ -3899,9 +3860,9 @@
 			ContactBox = complexValidation(validation);
 			break;
-		//CORRIGI ERRO DE DIGITAÇÃO COMO ( huahua"<huhau@hauhau.com>) ou (hahahaha"huahua@email.com) ou ainda (hahahaha"huahua@ema  il.com)
+		//CORRIGI ERRO DE DIGITAï¿œï¿œO COMO ( huahua"<huhau@hauhau.com>) ou (hahahaha"huahua@email.com) ou ainda (hahahaha"huahua@ema  il.com)
 		case 2: 
 			ContactBox = complexValidation(validation);
 			break;
-		//RECEBE O EMAIL CORRETAMENTE SÓ VALIDA POSSIVEIS ERROS COMO O DE CIMA E OS CORRIGI CASO ACONTEÇAM
+		//RECEBE O EMAIL CORRETAMENTE Sï¿œ VALIDA POSSIVEIS ERROS COMO O DE CIMA E OS CORRIGI CASO ACONTEï¿œAM
 		case 3:
 			//RETIRA O PRIMEIRO INDICE QUE FICOU "INUTIL"
@@ -3938,5 +3899,5 @@
 			}		
 			
-			//FECHA OS CONTATOS DINÂMICOS
+			//FECHA OS CONTATOS DINï¿œMICOS
 			if( (e.keyCode == 27) && $( this ).data( "catcomplete" ).menu.active ){
 				   e.stopPropagation();
@@ -4037,10 +3998,10 @@
 			var char = input.val().charAt(input.val().length-1);
 			var maiusculas = RegExp("[A-Z]");
-			/*Se o ultimo caracter for ">" é porque o campo está sendo editado (a partir de duplo clique)*/
+			/*Se o ultimo caracter for ">" ï¿œ porque o campo estï¿œ sendo editado (a partir de duplo clique)*/
 			var tamanho = 0;
 			if(char == ">"){
-				/*Faz um calculo prévio do tamanho do campo de acordo com o tamanho de cada caracter da string*/
+				/*Faz um calculo prï¿œvio do tamanho do campo de acordo com o tamanho de cada caracter da string*/
 				for(i=0; i<input.val().length; i++){
-					/*Se o caracter for maiúsculo, o valor de pixel é maior*/
+					/*Se o caracter for maiï¿œsculo, o valor de pixel ï¿œ maior*/
 					if(maiusculas.test(input.val().substr(i, 1)) == true){
 						tamanho += 9;
@@ -4052,5 +4013,5 @@
 				input.css("width", tamanho);
 			}
-			/*Ao inserir novo contato, não existe a necessidade de calcular tamanho do campo*/
+			/*Ao inserir novo contato, nï¿œo existe a necessidade de calcular tamanho do campo*/
 			else{
 				input.css("width", 15+(input.val().length * 9));
@@ -4063,5 +4024,5 @@
 		var these = $(this);
 		
-		// Função para monstar a caixinha de e-mail.
+		// Funï¿œï¿œo para monstar a caixinha de e-mail.
 		function makeBoxMail(){
 			if(canMakeBox && !fastSearch){
@@ -4099,5 +4060,5 @@
 		}, 50);
 	});
-	//SE FOR EDIÇÃO DE EMAILS RECALCULA O INPUT E SETA O FOCO
+	//SE FOR EDIï¿œï¿œO DE EMAILS RECALCULA O INPUT E SETA O FOCO
 	if(input.hasClass("box-input")){
 		input.trigger("keydown");
@@ -4279,5 +4240,5 @@
 }
 
-//FUNÇÃO QUE "SETA" OS BINDS DOS CAMPOS PARA - CC - CCO
+//FUNï¿œï¿œO QUE "SETA" OS BINDS DOS CAMPOS PARA - CC - CCO
 function input_binds(div, ID){
 
@@ -4304,5 +4265,5 @@
 				box.unbind("dblclick").bind("dblclick", function(e){
 					new $.Zebra_Dialog('<strong>Impossivel editar</strong> um contato do ldap\n' +
-						'<strong>Porém</strong>é possivel remove-lo', {
+						'<strong>Porï¿œm</strong>ï¿œ possivel remove-lo', {
 						'buttons':  false,
 						'modal': false,
@@ -4321,7 +4282,7 @@
 	
 	
-	//VERIFICA PREFERENCIA DE CONTATOS DINÂMICOS ESTA ATIVA
+	//VERIFICA PREFERENCIA DE CONTATOS DINï¿œMICOS ESTA ATIVA
 	if(parseInt(preferences.use_dynamic_contacts)){
-		//PREPARAÇÃO DA ARRAY DOS CONTATOS DINÂMICOS
+		//PREPARAï¿œï¿œO DA ARRAY DOS CONTATOS DINï¿œMICOS
 
 		$.widget( "custom.catcomplete", $.ui.autocomplete, {
@@ -4356,5 +4317,5 @@
 			}
 		});
-		//INSERÇÃO DO AUTO COMPLETE AO INPUT
+		//INSERï¿œï¿œO DO AUTO COMPLETE AO INPUT
 		div.find("input").catcomplete({
 			minLength: 1,			
@@ -4388,5 +4349,5 @@
 			},
 			
-			//EVENTO AO SELECIONAR UM CONTATO DINÂMICO
+			//EVENTO AO SELECIONAR UM CONTATO DINï¿œMICO
 			select: function( event, ui ) {
 				canMakeBox = false;
@@ -4410,9 +4371,9 @@
 		})
 		
-		//MONTAGEM DA LISTA DE CONTATOS DINÂMICOS DO AUTO COMPLETE
+		//MONTAGEM DA LISTA DE CONTATOS DINï¿œMICOS DO AUTO COMPLETE
 		.data( "catcomplete" )._renderItem = function( ul, item ) {
 			if($(ul).find("li").length < 50){
 				var autocomplete = $(this)[0].element;
-				//cálculo dinâmico da largura da lista
+				//cï¿œlculo dinï¿œmico da largura da lista
 				var width = (item.label ? item.label.length : (item.value ? item.value.length : (item.email ? item.email.length : 20 )));
 				width = width*5 + (is_ie ? 170 : 200) + 16;
@@ -4434,6 +4395,6 @@
 							'type':     'question',
 							'custom_class': (is_ie ? 'configure-zebra-dialog' : ''),
-							'title':    'Atenção',
-							'buttons': ['Sim','Não'],		
+							'title':    'Atenï¿œï¿œo',
+							'buttons': ['Sim','Nï¿œo'],		
 							'overlay_opacity': '0.5',
 							'onClose':  function(caption) {
@@ -4443,5 +4404,5 @@
 									updateDynamicContact();
 									cache = new Array();
-								}else if(caption == 'Não'){
+								}else if(caption == 'Nï¿œo'){
 									$(focusIn).focus();
 								}
@@ -4454,5 +4415,5 @@
 	}
 	
-	//FUNÇÃO DOS BOTÕES PARA - CC - CCO
+	//FUNï¿œï¿œO DOS BOTï¿œES PARA - CC - CCO
 	div.parents("tr:first").find("button").button().click(function(){
 		click = true;
@@ -4478,6 +4439,9 @@
 		});	
 	}
-	var ID = create_border("",border_ID);
-	
+	//var ID = create_border("",border_ID);
+	var ID = countID;
+
+	createTab("Nova Mensagem");
+
 	if (ID == 0)
 		return 0;
@@ -4490,5 +4454,5 @@
 		$("#footer_menu").css('display','none');
 	}
-	var content = $("#content_id_"+ID).html(DataLayer.render("../prototype/modules/mail/templates/new_message.ejs", {id: ID}));    
+	var content = $("#ptabs_"+ID).html(DataLayer.render("../prototype/modules/mail/templates/new_message.ejs", {id: ID}));    
 	RichTextEditor.loadEditor2(ID);
 	
@@ -4505,5 +4469,5 @@
 	}
 	
-	//AÇÃO GENERICA PARA ADICIONAR/REMOVER
+	//Aï¿œï¿œO GENERICA PARA ADICIONAR/REMOVER
 	var change_text = function(field, text, to_text){
 		var text = (field.html() == text ? to_text : text);
@@ -4511,5 +4475,5 @@
 	}
 	
-	//AÇÃO GENERICA PARA ADICIONAR/REMOVER CC & CCO
+	//Aï¿œï¿œO GENERICA PARA ADICIONAR/REMOVER CC & CCO
 	var show_hide = function(field, button){
 		button.toggleClass("expressomail-button-icon-ative");
@@ -4525,7 +4489,7 @@
 	input_binds(content.find('[name="input_aux_to"]').css("max-width" , parseInt(content.find(".email-area").css("width"))-5).focus().parent().css({"max-height" : "115px", "overflow-y" : "auto"}), ID);	
 	
-	//Botão TextoRico/TextoSimples
+	//Botï¿œo TextoRico/TextoSimples
 	content.find(".new-msg-head-right-buttons").find(".button").button().filter(".rich-button").click(function(){
-		/*Se o texto do botão for "Texto simples" exibirá a mensagem antes de alterar para texto simples*/
+		/*Se o texto do botï¿œo for "Texto simples" exibirï¿œ a mensagem antes de alterar para texto simples*/
 		if($(".rich-button").find("span").text() == get_lang("Simple Text")){
 			$.Zebra_Dialog(get_lang("Convert this message into plain text can make parts of it are removed. Continue?"), {
@@ -4542,5 +4506,5 @@
 			})
 		}
-		/*Se o texto do botão for "Texto rico" simplesmente altera para texto rico*/
+		/*Se o texto do botï¿œo for "Texto rico" simplesmente altera para texto rico*/
 		else{
 			RichTextEditor.setPlain(check_input(content.find('[name="textplain_rt_checkbox"]')), ID);
@@ -4549,15 +4513,15 @@
 	})
 	
-	//Botão Adicionar/Remover CCO
+	//Botï¿œo Adicionar/Remover CCO
 	.end().filter(".cco-button").click(function(){
 		show_hide(content.find(".cco-tr"), $(this));
 		change_text($(this).find(".ui-button-text"), get_lang("Add BCC"), get_lang('Remove CCo'));
 	})
-	//Botão Adicionar/Remover CC
+	//Botï¿œo Adicionar/Remover CC
 	.end().filter(".cc-button").click(function(){
 		show_hide(content.find(".cc-tr"), $(this));
 		change_text($(this).find(".ui-button-text"), get_lang("Add CC"), get_lang('Remove CC'));
 	})
-    //Botão Responder a
+    //Botï¿œo Responder a
     .end().filter(".reply-to-button").click(function(){
         show_hide(content.find(".reply-to-tr"), $(this));
@@ -4928,5 +4892,5 @@
 	    e.preventDefault();
 	});
-	//DRAG and DROP DE ARQUIVOS NÃO FUNCIONA NO IE
+	//DRAG and DROP DE ARQUIVOS Nï¿œO FUNCIONA NO IE
 	if(!is_ie){
 		$("body").bind('dragenter', function (e) {
@@ -4980,7 +4944,7 @@
 
 	var el_shared_users = Element("el_shared_users");
-	/* Recupera a pasta atual do usuário (selecionada) */
+	/* Recupera a pasta atual do usuï¿œrio (selecionada) */
 	var user_shared = folder.split(cyrus_delimiter);
-	/* Verifica se está nas próprias pastas */
+	/* Verifica se estï¿œ nas prï¿œprias pastas */
 	if(user_shared[0] == "INBOX"){
 		user_shared = User.me.uid;
@@ -4998,9 +4962,9 @@
 			_option.text = el_shared_users.options[x].text;
 			_option.value = el_shared_users.options[x].value;
-			/* Faz o tratamento do nome da pasta para fazer a verificação e selecionar o valor no select */
+			/* Faz o tratamento do nome da pasta para fazer a verificaï¿œï¿œo e selecionar o valor no select */
 			var str_begin_name = _option.text.indexOf('<') + 1;
 			var str_end_name = _option.text.indexOf('@');
 			var user_selected_name = _option.text.substring(str_begin_name, str_end_name);
-			/* Verifica se é o usuário da pasta selecionada */			
+			/* Verifica se ï¿œ o usuï¿œrio da pasta selecionada */			
 			if(user_selected_name == user_shared){
 				_option.selected = 'selected';
@@ -5035,5 +4999,5 @@
 			_option.text =  '"'+mycn+'" <'+Element("user_email").value+'>';
 			_option.value  = mycn+";"+Element("user_email").value;
-			/* Verifica se é o usuário logado */
+			/* Verifica se ï¿œ o usuï¿œrio logado */
 			if(user_shared == User.me.uid)
 				_option.selected = 'selected';
@@ -5047,9 +5011,9 @@
 				_option.text = '"'+cn+'" <'+data[x].mail[0]+'>';
 				_option.value = cn+';'+data[x].mail[0]+';'+data[x].save_shared[0]+';'+data[x].uid[0];
-				/* Faz o tratamento do nome da pasta para fazer a verificação e selecionar o valor no select */
+				/* Faz o tratamento do nome da pasta para fazer a verificaï¿œï¿œo e selecionar o valor no select */
 				var str_begin_name = _option.text.indexOf('<') + 1;
 				var str_end_name = _option.text.indexOf('@');
 				var user_selected_name = _option.text.substring(str_begin_name, str_end_name); 
-				/* Verifica se é o usuário da pasta selecionada */
+				/* Verifica se ï¿œ o usuï¿œrio da pasta selecionada */
 				if(user_selected_name == user_shared){
 					_option.selected = 'selected';
@@ -5220,5 +5184,5 @@
 	var tbody = Element('tbody_box');
 	for (var i=0; i<(headers_msgs.length); i++){
-            // passa parâmetro offset
+            // passa parï¿œmetro offset
 		var tr = this.make_tr_message(headers_msgs[i], headers_msgs[i].msg_folder);
 		if (tr)
@@ -5446,6 +5410,6 @@
 
 		if(isOverLimit) {
-			alert("Esse campo possui muitos endereços ("+_address.length+" destinatários).\r\n"+
-			"Para evitar o travamento do navegador, o botão 'Adicionar Contato' foi desabilitado!");
+			alert("Esse campo possui muitos endereï¿œos ("+_address.length+" destinatï¿œrios).\r\n"+
+			"Para evitar o travamento do navegador, o botï¿œo 'Adicionar Contato' foi desabilitado!");
 		}
 
