// Objeto Map, talvez o ideal fosse adicionar este objeto à Api do egroupware, e carregá-lo
// aqui no expressoMail.
function Map()
{
this.keys = new Array();
this.values = new Array();
}
Map.prototype.add = function(key, value)
{
this.keys.push(key);
this.values.push(value);
};
Map.prototype.get = function(key)
{
result = new Array();
for (i = 0; i < this.keys.length; i++)
{
if (this.keys[i] == key)
{
result.push(this.values[i]);
}
}
if (result.length == 0)
{
return null;
}
return result;
};
var translatedFolders = new Map();
/* Class draw_message */
function draw_message(){
var id=0;
}
draw_message.prototype.createNxtPrevButtons = function(msg_folder,folder_id){
var next_previous_msg_td = createAndSet("TD",[ "noWrap", "align", "width" ], [ "true", "right", "40px"]);
var img_next_msg = createAndSet("IMG", [ 'id', 'src', 'title' ], [
'msg_opt_next_' + this.id,
URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/down.button.png',
get_lang('Next') ]);
img_next_msg.style.cursor = 'pointer';
var folder = document.getElementById(folder_id);
if (folder){ // mensagem local criptografada nao tem ID da pasta local
if (folder.nextSibling){
var nextMsgBox = folder.nextSibling.name?folder.nextSibling.name:msg_folder;
if (nextMsgBox == "INBOX/decifradas")// teste para ver se a mensagem vem da pasta oculta decifradas
nextMsgBox = get_current_folder();
img_next_msg.onclick = function()
{
openTab.type[currentTab] = 2;
if ( nextMsgBox == undefined )
nextMsgBox = current_folder;
var allHeaders = folderHeaders[nextMsgBox];
for (i in allHeaders)
if (allHeaders[i].msg_number == folder.nextSibling.id){
var nextHeader = allHeaders[i];
break;
}
proxy_mensagens.get_msg(nextHeader,nextMsgBox,true,show_msg,currentTab);
};
}
else
{
img_next_msg.src = URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/down.gray.button.png';
img_next_msg.style.cursor = 'default';
}
}
else
{
img_next_msg.src = URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/down.gray.button.png';
img_next_msg.style.cursor = 'default';
if (!proxy_mensagens.is_local_folder(get_current_folder()) && !(msg_folder == "INBOX/decifradas")) // testa se a mensagem e local
{
img_next_msg.onclick = function()
{
delete_border(this.id);
};
}
}
var img_space = document.createElement("SPAN");
img_space.innerHTML = " ";
var img_previous_msg = createAndSet("IMG",['id','src','title'],['msg_opt_previous_' + this.id,
URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/up.button.png',
get_lang('Previous')]);
img_previous_msg.style.cursor = 'pointer';
if (!folder){
delete_border(this.id);
return;
}
if (folder){ // mensagem local criptografada nao tem this.id da pasta local
if (folder.previousSibling)
{
var previousMsgBox = folder.previousSibling.name?folder.previousSibling.name:msg_folder;
if (previousMsgBox == "INBOX/decifradas") // teste para ver se a mensagem vem da pasta oculta decifradas
previousMsgBox = get_current_folder();
img_previous_msg.onclick = function()
{
openTab.type[currentTab] = 2;
if ( previousMsgBox == undefined )
previousMsgBox = current_folder;
var allHeaders = folderHeaders[previousMsgBox];
for (i in allHeaders)
if (allHeaders[i].msg_number == folder.previousSibling.id){
var previousHeader = allHeaders[i];
break;
}
proxy_mensagens.get_msg(previousHeader,previousMsgBox,true,show_msg,currentTab);
};
}
else
{
img_previous_msg.src = URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/up.gray.button.png';
img_previous_msg.style.cursor = 'default';
}
}
else
{
img_previous_msg.src = URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/up.gray.button.png';
img_previous_msg.style.cursor = 'default';
if (!proxy_mensagens.is_local_folder(get_current_folder()) && !(msg_folder == "INBOX/decifradas")) // testa se a mensagem e local
{
img_previous_msg.onclick = function()
{
delete_border(this.id);
};
}
}
next_previous_msg_td.appendChild(img_previous_msg);
next_previous_msg_td.appendChild(img_space);
next_previous_msg_td.appendChild(img_next_msg);
return next_previous_msg_td;
};
var idx_cc = 0;
draw_message.prototype.draw_plugin_cc = function(addrs)
{
expresso.connector.loadScript("jscode/ccQuickAdd");
var id=this.id;
var array_addrs = '';
var array_name = '';
var cc_data = new Array();
if(typeof(addrs.name) != 'undefined') {
array_name = LTrim(addrs.name).split(" ");
array_addrs = new Array(addrs.email);
}
else {
array_addrs = (typeof addrs == 'object' ? addrs.toString().split("\" ") : addrs.split("\" "));
array_name = LTrim(array_addrs[0]).replace('"','').split(" ");
}
var _split = array_name[0].split('@');
cc_data[0] = _split[0];
cc_data[1] = _split[0];
cc_data[2] = '';
for (i=1; i < array_name.length; i++)
cc_data[2] += array_name[i] + " ";
if(array_addrs.length > 1)
cc_data[3] = array_addrs[1] ? array_addrs[1].replace("<",'').replace(">",'') : '';
else
cc_data[3] = array_addrs[0];
var sm_envelope_img1 = '';
var to_addybook_add = "";
to_addybook_add += addrs;
to_addybook_add += sm_envelope_img1;
idx_cc++;
to_addybook_add += "";
return to_addybook_add;
};
draw_message.prototype.show_signature_certificate_data = function(){
var _height = Element("div_message_scroll_"+this.id).style.height;
_height = parseInt(_height.replace("px",""));
var _offset = 130;
if (this.value == 'more_cert'){
//this.innerHTML += "Mais Informaᅵᅵes";
this.value = 'hide_cert';
Element("div_message_scroll_"+this.id).style.height = (_height + _offset)+"px";
Element('tr_signature_'+this.id).style.display = 'none';
Element('td_signature_'+this.id).style.display = 'none';
}
else{
//this.innerHTML += "Mais Informaᅵᅵes";
this.value = 'more_cert';
Element("div_message_scroll_"+this.id).style.height = (_height - _offset)+"px";
Element('tr_signature_'+this.id).style.display = '';
Element('td_signature_'+this.id).style.display = '';
}
};
draw_message.prototype.putSignature = function(info_msg,tdx){
var tr_signature = document.createElement("TR");
var td_signature = document.createElement("TD");
td_signature.className = 'tr_message_header';
tr_signature.id = 'tr_signature_'+this.id;
td_signature.colSpan = "5";
tr_signature.style.display = 'none';
for (i=0; i < info_msg.signature.length; i++)
td_signature.innerHTML += ''+info_msg.signature[i]+'
';
td_signature.innerHTML += '
';
var signature_status_pos = info_msg.signature[0].indexOf('Message untouched');
td_signature.id = "td_signature_"+this.id;
if(signature_status_pos < 0 )
{
tdx.innerHTML += ' ';
tr_signature.style.display = '';
}
else
{
tdx.innerHTML += ' ';
}
tr_signature.appendChild(td_signature);
return tr_signature;
};
draw_message.prototype.make_options_message = function(info_msg, tbody_message){
var tr0 = document.createElement("TR");
tr0.className = "tr_message_header";
var td0 = document.createElement("TD");
var table_message_options = createAndSet("TABLE",['border','width','class'],["0","100%",'table_message']);
var tbody_message_options = document.createElement("TBODY");
var tr = document.createElement("TR");
var td = document.createElement("TD");
td.setAttribute("noWrap","true");
var _name = '';
var menuHidden = Element("folderscol").style.display == 'none' ? true : false;
var folder_id = info_msg.msg_number;
var folder = document.getElementById(folder_id);
if (!folder){
delete_border(this.id);
return false;
}
var next_previous_msg_td = this.createNxtPrevButtons(info_msg.msg_folder,folder_id);
if (typeof(next_previous_msg_td) == 'undefined')
return false;
var _maxChar = menuHidden ? 40 : 15;
if (info_msg.from.name)
{
var spanName = document.createElement("SPAN");
spanName.innerHTML = info_msg.from.name;
_name = spanName.innerHTML.length > _maxChar ? spanName.innerHTML.substring(0,_maxChar) + "..." : spanName.innerHTML;
}
else
_name = info_msg.from.email.length > _maxChar ? info_msg.from.email.substring(0,_maxChar) + "..." : info_msg.from.email;
var id = this.id;
td.innerHTML = _name.bold() + ', ' + info_msg.udate;
if (info_msg.attachment.names.length > 0)
td.innerHTML += " ";
if (typeof(info_msg.signature) == 'string')
{
if (info_msg.signature != "void")
td.innerHTML += ' ';
else
td.innerHTML += " ";
}
if (info_msg.DispositionNotificationTo)
{
td.innerHTML += ' ';
}
// NORMAL MSG
if(info_msg.Draft != 'X')
{
var options = createAndSet("TD",['noWrap','width','align'],['true','30%','right']);
var option_hide_more = createAndSet("SPAN",['class','value','id'],['message_options','more_options','option_hide_more_'+id],get_lang('show details'));
option_hide_more.onclick = function(){
try{
var _height = Element("div_message_scroll_"+id).style.height;
}
catch(e){
return;
}
_height = parseInt(_height.replace("px",""));
var _offset = 35;
if (this.value != 'hide_options'){
this.innerHTML = ""+get_lang('hide details')+"";
this.value = 'hide_options';
Element("div_message_scroll_"+id).style.height = (_height - _offset)+"px";
Element('table_msg_details_'+id).style.display = '';
}
else{
this.innerHTML = get_lang('show details');
this.value = 'more_options';
Element("div_message_scroll_"+id).style.height = (_height + _offset)+"px";
Element('table_msg_details_'+id).style.display = 'none';
}
};
var option_mark = createAndSet("TD",['width','align'],['50%','left']);
var option_mark_as_unseen = ''+get_lang("Unseen")+', ';
if (info_msg.Flagged == "F")
var option_mark_important = ''+get_lang("Normal")+'';
else
var option_mark_important = ''+get_lang("Important")+'';
option_mark.innerHTML = option_mark_as_unseen+option_mark_important;
var option_forward = createAndSet("SPAN",['id','class'],['msg_opt_forward_'+this.id, 'message_options'],get_lang('Forward'));
option_forward.onclick = function(){new_message('forward', this.id);};
appendChilds(options,option_hide_more,createAndSet('SPAN',false,false,' | '),option_forward);
var option_reply_options = createAndSet("IMG",['id', 'src', 'value'],['msg_opt_reply_options_'+this.id,URL_SERVER+'expressoMail1_2/templates/default/images/down.png','show']);
option_reply_options.onmouseover = function(){
option_reply_options.src= URL_SERVER+'expressoMail1_2/templates/default/images/over.png';
};
option_reply_options.onmouseout = function(){
if (this.value == 'show')
{
option_reply_options.src= URL_SERVER+'expressoMail1_2/templates/default/images/down.png';
}
else
{
option_reply_options.src= URL_SERVER+'expressoMail1_2/templates/default/images/pressed.png';
}
};
option_reply_options.onclick = function(){
if (this.value != 'hide'){
this.value = 'hide';
option_reply_options.src= URL_SERVER+'expressoMail1_2/templates/default/images/pressed.png';
Element('tr_other_options_'+this.id).style.display = '';
}
else{
this.value = 'show';
option_reply_options.src= URL_SERVER+'expressoMail1_2/templates/default/images/down.png';
Element('tr_other_options_'+this.id).style.display = 'none';
}
};
var _option_reply = createAndSet("SPAN",['id','class'],['msg_opt_reply_'+this.id,'message_options'],get_lang('Reply'));
_option_reply.onclick = function(){new_message('reply_with_history', this.id);};
appendChilds(options,createAndSet('SPAN',false,false,' | '),option_reply_options,_option_reply);
appendChilds(tr,td,option_mark,options,next_previous_msg_td);
tbody_message_options.appendChild(tr);
////////// OTHER OPTIONS ////////////////////
var _tr_other_options = createAndSet("TR",['id'],['tr_other_options_' + this.id]);
_tr_other_options.style.display = 'none';
var div_other_options = document.createElement("DIV");
var option_mark_as = ''+get_lang("Mark as")+': ';
var option_mark_as_unseen = ''+get_lang("Unseen")+', ';
var option_mark_as_important = ''+get_lang("Important")+', ';
var option_mark_as_normal = ''+get_lang("Normal")+' | ';
var option_reply_without_history = ''+get_lang("Reply without history")+'';
var option_reply_to_all = ''+get_lang("Reply to all")+' | ';
var option_reply_to_all_without_history = ''+get_lang("Reply to all without history")+' | ';
div_other_options.innerHTML = option_reply_to_all + option_reply_to_all_without_history + option_reply_without_history;
if (use_spam_filter) {
if(info_msg.msg_folder == 'INBOX'+cyrus_delimiter+'Spam')
div_other_options.innerHTML += ' | '+get_lang("Not Spam")+'';
else
div_other_options.innerHTML += ' | '+get_lang("Mark as Spam")+'';
}
var td_other_options = createAndSet("TD",['colSpan','align','noWrap'],['3','right','true']);
td_other_options.appendChild(div_other_options);
_tr_other_options.appendChild(td_other_options);
tbody_message_options.appendChild(_tr_other_options);
////////// END OTHER OPTIONS ////////////////
table_message_options.appendChild(tbody_message_options);
td0.appendChild(table_message_options);
tr0.appendChild(td0);
tbody_message.appendChild(tr0);
if (info_msg.signature && info_msg.signature.length > 0)
{
tbody_message.appendChild(putSignature(this.id,info_msg,td));
}
}
else // IF DRAFT
{
var options = createAndSet('TD',['width','noWrap','align'],['1%','true','right']);
var option_hide_more = createAndSet("SPAN",['class','value','id'],['message_options','more_options','option_hide_more_'+this.id],get_lang('Show details'));
option_hide_more.onclick = function(){
var _height = Element("div_message_scroll_"+id).style.height;
_height = parseInt(_height.replace("px",""));
var _offset = 35;
if (this.value != 'hide_options'){
this.innerHTML = ""+get_lang('Hide details')+"";
this.value = 'hide_options';
Element("div_message_scroll_"+id).style.height = (_height - _offset)+"px";
Element('table_msg_details_'+id).style.display = '';
}
else{
this.innerHTML = get_lang('show details');
this.value = 'more_options';
Element("div_message_scroll_"+id).style.height = (_height + _offset)+"px";
Element('table_msg_details_'+id).style.display = 'none';
}
};
var option_edit = createAndSet('SPAN',['class'],['message_options'], get_lang('Edit'));
option_edit.onclick= function () { new_message('edit',this.id); };
appendChilds(options, option_hide_more, createAndSet('SPAN',false,false," | "), option_edit);
tbody_message_options.appendChild(appendChilds(tr, td, options, next_previous_msg_td));
table_message_options.appendChild(tbody_message_options);
td0.appendChild(table_message_options);
tr0.appendChild(td0);
tbody_message.appendChild(tr0);
}
return true;
};
draw_message.prototype.draw_message_header = function(header,border_id){
this.id = border_id;
var defaultWidth = document.body.offsetWidth - 37;
if(Element("folderscol").style.display != 'none')
defaultWidth -= Element("folderscol").offsetWidth;
var table_message = createAndSet("TABLE",['id','border','width'],['table_message_'+border_id,"0",defaultWidth]);
table_message.id = 'table_message_'+border_id;
var tbody_message = document.createElement("TBODY");
if (!this.make_options_message(header,tbody_message))
return;
table_message.appendChild(tbody_message);
var content = document.getElementById('content_id_' + border_id);
content.appendChild(table_message);
loading_img = content.appendChild(loading_img);
};
draw_message.prototype.draw_message_body = function (info_msg){
var defaultWidth = document.body.offsetWidth - 37;
if(Element("folderscol").style.display != 'none')
defaultWidth -= Element("folderscol").offsetWidth;
var table_message = Element('table_message_'+this.id);
var tbody_message = table_message.childNodes[0];
var tbody_message_others_options = document.createElement("TBODY");
var tr1 = document.createElement("TR");
tr1.className = "tr_message_header";
var td1 = createAndSet('TD',['width'],['7%'],get_lang("From: "));
td1.appendChild(deny_email(info_msg.from.email));
var id=this.id;
if (info_msg.sender){
var tr111 = document.createElement("TR");
tr111.className = "tr_message_header";
var td111 = createAndSet('TD',['noWrap'],['true'],get_lang("Sent by")+": ");
td111.appendChild(deny_email(info_msg.sender.email));
var sender = document.createElement("TD");
sender.className = "header_message_field";
sender.id = "sender_"+id;
sender.innerHTML += this.draw_plugin_cc(info_msg.sender.full);
var sender_values = createAndSet("INPUT",['id','type','value'],["sender_values_"+id,"HIDDEN",info_msg.sender.full]);
tbody_message_others_options.appendChild(appendChilds(tr111, td111, sender, sender_values));
}
var from = createAndSet('TD',['id','class'],["from_"+this.id,"header_message_field"],info_msg.from.full);
if (info_msg.Draft != "X"){
from.innerHTML += this.draw_plugin_cc(info_msg.from);
tbody_message_others_options.appendChild(tr1);
}
var from_values = createAndSet('INPUT',['id','type','value'],["from_values_"+this.id,"HIDDEN",info_msg.from.full]);
var local_message = createAndSet("INPUT",['id','name','type','value'],["is_local_"+this.id,"is_local","HIDDEN",(info_msg.local_message)?"1":"0"]);
appendChilds(tr1,td1,from,from_values,local_message);
if (info_msg.reply_to){
var tr11 = document.createElement("TR");
tr11.className = "tr_message_header";
var _td11 = createAndSet('TD',['noWrap'],['true'],get_lang("Reply to")+": ");
var _reply_to = createAndSet('TD',['id', 'class'],["reply_to_"+id, "header_message_field"],this.draw_plugin_cc(info_msg.reply_to));
var _reply_to_values = createAndSet('INPUT',['id', 'type', 'value'],["reply_to_values_"+id,"HIDDEN",info_msg.reply_to]);
tbody_message_others_options.appendChild(appendChilds(tr11,_td11,_reply_to,_reply_to_values));
}
//////////////////////////////////////////////////////////////////////////////////////////////////////
var tr2 = document.createElement("TR");
tr2.className = "tr_message_header";
var td2 = document.createElement("TD");
td2.innerHTML = get_lang("To: ");
var to = document.createElement("TD");
to.id = "to_"+id;
var _to_values = createAndSet('INPUT',['id', 'type', 'value'],["to_values_"+id, "HIDDEN", info_msg.toaddress2]);
// Salva a pasta da mensagem
var _input_cfolder = createAndSet('INPUT',['id', 'name', 'type', 'value'],["input_folder_"+id, "input_folder", "hidden", info_msg.msg_folder]);
td2.appendChild(_input_cfolder);
toaddress_array[id] = info_msg.toaddress2.split(",");
if (toaddress_array[id].length > 1){
to.innerHTML += this.draw_plugin_cc(toaddress_array[id][0]);
var _div_toaddrs = createAndSet('SPAN',['id','style'],["div_toaddress_"+id,'display: inline']," ("+get_lang('more')+")");
to.appendChild(_div_toaddrs);
}
else {
to.innerHTML += this.draw_plugin_cc(toaddress_array[id]);
}
to.className = "header_message_field";
tbody_message_others_options.appendChild(appendChilds(tr2,td2,to,_to_values));
if (info_msg.cc){
var tr3 = document.createElement("TR");
tr3.className = "tr_message_header";
var td3 = document.createElement("TD");
td3.innerHTML = "CC: ";
var cc = createAndSet("TD",['id', 'class'],["cc_"+this.id,"header_message_field"]);
var cc_values = createAndSet("INPUT",['id', 'type', 'value'],["cc_values_"+this.id, "HIDDEN", info_msg.cc]);
ccaddress_array[this.id] = info_msg.cc.split(",");
if (ccaddress_array[this.id].length > 1){
var div_ccaddress = document.createElement("SPAN");
div_ccaddress.id = "div_ccaddress_"+this.id;
var div_ccaddress_full = createAndSet("SPAN",['id', 'style'],["div_ccaddress_full_"+this.id, "display: inline"]);
cc.innerHTML = this.draw_plugin_cc(ccaddress_array[this.id][0]);
div_ccaddress.innerHTML += " ("+get_lang('more')+")";
cc.appendChild(div_ccaddress);
}
else{
cc.innerHTML = this.draw_plugin_cc(info_msg.cc);
}
tbody_message_others_options.appendChild(appendChilds(tr3,td3,cc,cc_values));
}
if (info_msg.bcc)
{
tbody_message_others_options.appendChild(this.getBcc(info_msg.bcc));
}
var tr4 = document.createElement("TR");
tr4.className = "tr_message_header";
var td4 = document.createElement("TD");
td4.innerHTML = get_lang("Date: ");
var date = createAndSet('TD',['id','class'],["date_"+this.id,"header_message_field"],info_msg.fulldate);
var date_day = createAndSet('INPUT',['id', 'type', 'value'],["date_day_"+this.id, "HIDDEN", info_msg.msg_day]);
var date_hour = createAndSet('INPUT',['id', 'type', 'value'],["date_hour_"+this.id, "HIDDEN", info_msg.msg_hour]);
tbody_message_others_options.appendChild(appendChilds(tr4,td4,date,date_day,date_hour));
var tr5 = document.createElement("TR");
tr5.className = "tr_message_header";
var td5 = document.createElement("TD");
td5.innerHTML = get_lang("Subject");
var subject = createAndSet('TD',['id', 'class'],["subject_"+this.id, "header_message_field"],info_msg.subject);
tbody_message_others_options.appendChild(appendChilds(tr5,td5,subject));
if (info_msg.attachments.length > 0){
var tr6 = document.createElement("TR");
tr6.className = "tr_message_header";
var td6 = document.createElement("TD");
td6.innerHTML = get_lang("Attachments: ");
var attachments = document.createElement("TD");
attachments.align='left';
td6.vAlign = "top";
var zipped_attachments = '';
if(info_msg.attachments.length >= 1) {
var zipped_attachments = createAndSet("TABLE",['style','cellPadding','cellSpacing'],['margin-bottom: 4px','0','0']);
var td = document.createElement("TD");
if(info_msg.attachments.length > 1) {
var link_attachment = document.createElement("A");
if(proxy_mensagens.is_local_folder(current_folder))
link_attachment.setAttribute("href", "javascript:expresso_local_messages.download_all_local_attachments('"+info_msg.msg_folder+"','"+info_msg.msg_number+"')");
else
link_attachment.setAttribute("href", "javascript:download_all_attachments('"+info_msg.msg_folder+"','"+info_msg.msg_number+"')");
link_attachment.innerHTML = " "+info_msg.attachments.length+' '+get_lang('files')+' :: '+get_lang('Download all atachments');
link_attachment.innerHTML += '
';
td.appendChild(link_attachment);
}
var tr = document.createElement("TR");
if(parseInt(preferences.remove_attachments_function))
{
var del_attachments = document.createElement("A");
del_attachments.setAttribute("href", "javascript:remove_all_attachments('"+info_msg.msg_folder+"','"+info_msg.msg_number+"')");
del_attachments.innerHTML = get_lang('remove all attachments');
del_attachments.appendChild(document.createElement('BR'));
td.appendChild(del_attachments);
tr.appendChild(td);
}
tr.appendChild(td);
zipped_attachments.appendChild(tr);
attachments.appendChild(zipped_attachments);
}
attachments.id = "attachments_" + this.id;
for (var i=0; i';
attachments.appendChild(link_attachment);
}
}
tr6.appendChild(td6);
tr6.appendChild(attachments);
tbody_message_others_options.appendChild(tr6);
}
// BEGIN MAKE THE SCROLL HEIGHT
var bar = document.getElementById("toolbar");
var offset = 0;
if(bar.style.visibility != 'hidden')
offset = bar.offsetHeight ? bar.offsetHeight : bar.clientHeight;
var div = document.createElement("DIV");
div.id = "div_message_scroll_"+this.id;
div.style.background = 'WHITE';
div.style.height = document.body.clientHeight - offset - 125;
div.style.overflow = "auto";
div.style.width = defaultWidth - (is_ie ? 5 : 0);
// END MAKE THE SCROLL HEIGHT
var table_msg_details = createAndSet("TABLE",['id','width','class'],['table_msg_details_' + this.id,defaultWidth - 30,'table_message']);
table_msg_details.style.display = 'none';
table_msg_details.appendChild(tbody_message_others_options);
div.appendChild(table_msg_details);
var tr = document.createElement("TR");
var td = document.createElement("TD");
td.colSpan = '2';
var newBody = this.blockImage(info_msg,this.id,td);
td.appendChild(div);
tr.appendChild(td);
tbody_message.appendChild(tr);
//////////////////////////////////////////////////////////////////////////////////////////////////////
//Make the body message.
///////////////////////////////////////////////////////////////////////////////////////////////////////
var tr = document.createElement("TR");
tr.className = "tr_message_body";
var td = document.createElement("TD");
//td.setAttribute("colSpan","2");
newBody = newBody.replace(""+newBody+"
";
function mailto( link )
{
var mail = link.href.substr( 7 );
link.onclick = function( )
{
new_message_to( mail );
return false;
};
}
var links = div.getElementsByTagName( 'a' );
for ( var i = 0; i < links.length; i++ )
if ( links.item( i ).href.indexOf( 'mailto:' ) === 0 )
mailto( links.item( i ) );
else
{
if ( links.item( i ).href.indexOf( 'javascript:' ) !== 0 )
links.item( i ).setAttribute( 'target', '_blank' );
}
if ((info_msg.thumbs)&&(info_msg.thumbs.length > 0)){
//////////////////////////////////////////////////////////////////////////////////////////////////////
//Make the thumbs of the message.
//////////////////////////////////////////////////////////////////////////////////////////////////////
div.appendChild(this.getThumbs(info_msg.attachments, info_msg.thumbs, info_msg.msg_number, info_msg.msg_folder));
}
var msg_number = createAndSet("INPUT",['id','type','value'],["msg_number_" + this.id, "hidden", info_msg.msg_number]);
var content = document.getElementById('content_id_' + this.id);
loading_img = content.removeChild( loading_img );
content.style.height = document.body.clientHeight - offset - 90;
content.appendChild(msg_number);
//////////////////////////////////////////////////////////////////////////////////////////////////////
//Exibe o cabecalho da mensagem totalmente aberto caso esteja setado nas preferencias do usuario
if (preferences.show_head_msg_full == 1)
{
option_hide_more.onclick();
if (Element('div_toaddress_'+this.id) != null)
{
show_div_address_full(this.id,'to');
}
if (Element('div_ccaddress_'+this.id) != null)
{
show_div_address_full(this.id,'cc');
}
}
};
draw_message.prototype.getThumbs = function(attachments, thumbs, msg_number, msg_folder){
var table_message_thumbs = document.createElement("TABLE");
table_message_thumbs.width = "80%";
table_message_thumbs.style.borderTop = "2px solid rgb(170, 170, 170)";
var tbody_message_thumbs = document.createElement("TBODY");
var tr = document.createElement("TR");
tr.className = "tr_message_body";
var td = document.createElement("TD");
td.setAttribute("colSpan","2");
td.id = "body_thumbs_"+msg_number;
td.innerHTML += " "+attachments.length+" "+get_lang("attachment")+(attachments.length > 1 ? "s" : "")+" "+get_lang("in this message")+"";
var _link_attachments = '';
if(thumbs.length > 1){
_link_attachments = document.createElement("A");
_link_attachments.className = "message_options";
if(proxy_mensagens.is_local_folder(current_folder))
_link_attachments.setAttribute("href", "javascript:expresso_local_messages.download_all_local_attachments('"+msg_folder+"','"+msg_number+"')");
else
_link_attachments.setAttribute("href", "javascript:download_all_attachments('"+msg_folder+"','"+msg_number+"')");
_link_attachments.innerHTML = get_lang('Download all atachments');
}
if(_link_attachments){
td.innerHTML += " :: ";
td.appendChild(_link_attachments);
}
td.innerHTML += "
"+get_lang("Tip: For faster save, click over the image with right button.");
td.innerHTML += "
";
for (var i=0; i";
td.innerHTML += thumbs[i];
td.innerHTML += " ";
}
tr.appendChild(td);
tbody_message_thumbs.appendChild(tr);
table_message_thumbs.appendChild(tbody_message_thumbs);
return table_message_thumbs;
};
draw_message.prototype.getBcc = function(bccField){
/*
* @AUTHOR Rodrigo Souza dos Santos
* @MODIFY-DATE 2008/09/11
* @BRIEF Adding routine to create bcc (blind carbon copy) field if there is one.
*/
var tr3 = document.createElement("tr");
tr3.className = "tr_message_header";
var td3 = document.createElement("td");
td3.innerHTML = get_lang("BCC") + " : ";
var cco = document.createElement("td");
cco.id = "cco_"+this.id;
var cco_values = createAndSet("INPUT",['id', 'type', 'value'],["cco_values_"+this.id,"hidden",bccField]);
ccoaddress_array[this.id] = bccField.split(",");
if (ccoaddress_array[this.id].length > 1){
var div_ccoaddress = document.createElement("SPAN");
div_ccoaddress.id = "div_ccoaddress_"+this.id;
var div_ccoaddress_full = createAndSet("SPAN",['id', 'style'],["div_ccoaddress_full_"+this.id, "display:inline"]);
/*
* The function below is ugly, doesn't possible use this.
* The problem is that the code's function was written
* on a hardcode concept.
*/
//cco.innerHTML = this.draw_plugin_cc(ccoaddress_array[this.id][0]);
cco.innerHTML = ccoaddress_array[this.id][0];
div_ccoaddress.innerHTML += " ("+get_lang('more')+")";
cco.appendChild(div_ccoaddress);
}
else{
/*
* The function below is ugly, it is not possible to use this.
* The problem is that the code's function was written
* on a hardcode concept.
*/
//cco.innerHTML = this.draw_plugin_cc(info_msg.cco);
cco.innerHTML = bccField;
}
cco.className = "header_message_field";
return appendChilds(tr3,td3,cco,cco_values);
};
draw_message.prototype.blockImage = function(info_msg,ID,td){
var imgTag = info_msg.body.match(/(]*src[^>=]*=['"]?[^'">]*["']?[^>]*>)|(<[^>]*(style[^=>]*=['"][^>]*background(-image)?:[^:;>]*url\()[^>]*>)/gi);
var newBody = info_msg.body;
if(!info_msg.showImg && imgTag)
{
var domains = '';
var blocked = false;
var forbidden = true;
if (preferences.notification_domains != null && typeof(preferences.notification_domains) != 'undefined')
{
domains = preferences.notification_domains.split(',');
for(var j = 0; j < imgTag.length; j++)
{
for (var i = 0; i < domains.length; i++)
{
if (imgTag[j].match(/cid:([\w\d]){5,}/) || imgTag[j].match(/src=\"\.\/inc\/show_embedded_attach\.php/g))
{
forbidden = false;
continue;
}
imgSource = imgTag[j].match(/=['"](http:\/\/)+[^'"\/]*/);
if (imgSource && imgSource.toString().substr(5).match(domains[i]))
forbidden = false;
}
if (forbidden)
{
newBody = newBody.replace(imgTag[j],"");
blocked=true;
}
}
if (blocked)
{
var showImgLink = document.createElement('DIV');
showImgLink.id="show_img_link_"+ID;
showImgLink.onclick = function(){show_msg_img(info_msg.msg_number,info_msg.msg_folder)};
showImgLink.className="show_img_link";
showImgLink.innerHTML = get_lang("Show images from")+": "+info_msg.from.email;
td.appendChild(showImgLink);
}
}
}
return newBody;
};
draw_msg = new draw_message();
function changeLinkState(el,state){
el.innerHTML = get_lang(state);
switch (state){
case 'important':
{
el.onclick = function(){changeLinkState(el,'normal');set_messages_flag('unflagged',currentTab.substr(0,currentTab.indexOf("_r"))); write_msg(get_lang('Message marked as ')+get_lang("Normal"))};
break;
}
case 'normal':
{
el.onclick = function(){ changeLinkState(el,'important');set_messages_flag('flagged',currentTab.substr(0,currentTab.indexOf("_r")));write_msg(get_lang('Message marked as ')+get_lang("Important"))};
break;
}
case 'unseen':
{
el.onclick = function(){ changeLinkState(el,'seen');set_messages_flag('unseen',currentTab.substr(0,currentTab.indexOf("_r")));write_msg(get_lang('Message marked as ')+get_lang("unseen"))};
break;
}
case 'seen':
{
el.onclick = function(){ changeLinkState(el,'unseen');set_messages_flag('seen',currentTab.substr(0,currentTab.indexOf("_r")));write_msg(get_lang('Message marked as ')+get_lang("seen"))};
break;
}
default:
{
break;
}
}
}
function constructMenuNewMessage(ID,tbody_message,table_message,content)
{
table_message.width = "100%";
var tr0 = document.createElement("TR");
tr0.className = "tr_message_header";
var td0 = document.createElement("TD");
td0.colSpan = '3';
var table_menu_new_message = document.createElement("TABLE");
table_menu_new_message.width = "100%";
table_menu_new_message.border = '0';
table_menu_new_message.className = 'table_message';
var tbody_menu_new_message = document.createElement("TBODY");
var tr_menu_new_message = document.createElement("TR");
var td_menu_new_message = document.createElement("TD");
td_menu_new_message.setAttribute("noWrap","true");
if ((preferences.save_in_folder == '-1') || (preferences.save_in_folder == '')){
//var option_send = ''+get_lang("Send")+' | ';
var option_send = '' + ' | ';
if(!expresso_offline)
var option_send_and_file= ''+get_lang("Send and file")+' | ';
else
var option_send_and_file='';
}
else{
//var option_send = ''+get_lang("Send")+' | ';
var option_send = '' + ' | ';
var option_send_and_file='';
wfolders.alert = true;
}
// var option_save_as = ''+get_lang("Save as")+' | ';
if (!expresso_offline) {
var option_save = ''+get_lang("Save")+' | ';
var option_search = ''+get_lang("Search")+'';
}
else {
var option_save = '';
var option_search = '';
}
td_menu_new_message.innerHTML = option_send + option_send_and_file + option_save + option_search;
tr_menu_new_message.appendChild(td_menu_new_message);
tbody_menu_new_message.appendChild(tr_menu_new_message);
table_menu_new_message.appendChild(tbody_menu_new_message);
content.appendChild(table_menu_new_message);
tr0.appendChild(td0);
tbody_message.appendChild(tr0);
////////////////////////////////////////////////////////////////////////////////////////////////////////
}
function constructFromField(tbody_message,ID)
{
var tr1_1 = document.createElement("TR");
tr1_1.style.display = 'none';
var td1_1 = document.createElement("TD");
td1_1.innerHTML = get_lang("From")+":";
td1_1.setAttribute("noWrap","true");
td1_1.style.width = "1%";
var td_from = document.createElement("TD");
td_from.setAttribute("noWrap","true");
td_from.style.width = "100%";
var sel_from = document.createElement('SELECT');
sel_from.id = "from_"+ID;
sel_from.name = "input_from";
sel_from.style.width = "70%";
sel_from.setAttribute("wrap","soft");
td_from.appendChild(sel_from);
tr1_1.appendChild(td1_1);
tr1_1.appendChild(td_from);
tbody_message.appendChild(tr1_1);
if(!expresso_offline)
draw_from_field(sel_from,tr1_1);
var tr1 = document.createElement("TR");
var td1 = document.createElement("TD");
td1.innerHTML = get_lang("To")+":";
td1.setAttribute("noWrap","true");
td1.style.width = "1%";
var td_to = document.createElement("TD");
td_to.setAttribute("noWrap","true");
td_to.style.width = "100%";
var input_to = document.createElement('TEXTAREA');
input_to.id = "to_"+ID;
input_to.name = "input_to";
input_to.setAttribute("tabIndex","1");
input_to.style.width = "100%";
input_to.setAttribute("wrap","soft");
input_to.onfocus = function(){clearTimeout(parseInt(setTimeOutLayer)); search_contacts('onfocus', this.id);};
input_to.onblur = function(){setTimeOutLayer=setTimeout('search_contacts("lostfocus","'+this.id+'")',100);};
if (!is_ie)
{
input_to.rows = 2;
input_to.onkeypress = function (e)
{
if ((e.keyCode) == 120) //F9
{
emQuickSearch(input_to.value, 'to', ID);
}
else
{
if (((e.keyCode == 13) || ((e.keyCode == 38)||(e.keyCode == 40))) && (document.getElementById('tipDiv').style.visibility!='hidden'))
{
e.preventDefault();
search_contacts(e.keyCode,this.id);
}
}
};
input_to.onkeyup = function (e)
{
if ((e.keyCode != 13) && (e.keyCode != 38) && (e.keyCode != 40))
{
search_contacts(e.keyCode,this.id);
}
};
}
else
{
input_to.rows = 3;
input_to.onkeyup = function (e)
{
if ((window.event.keyCode) == 120) //F9
{
emQuickSearch(input_to.value, 'to', ID);
}
else
{
search_contacts(window.event.keyCode,this.id);
}
};
}
td_to.appendChild(input_to);
var forwarded_local_message = document.createElement("INPUT"); //Hidden para indicar se é um forward de uma mensagem local
forwarded_local_message.id = "is_local_forward"+ID;
forwarded_local_message.name = "is_local_forward";
forwarded_local_message.type = "HIDDEN";
forwarded_local_message.value = "0";
td_to.appendChild(forwarded_local_message);
////////////////////////////////////////////////////////////////////////////////////////////////////////
if (!expresso_offline) {
var img_search = document.createElement("IMG");
img_search.src = URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/search.gif';
img_search.title = get_lang('Search') + " | " + get_lang('Use F9 Key as shortcut.');
img_search.onclick = function () {emQuickSearch(document.getElementById('to_'+ID).value, 'to', ID);};
}
else {
var img_search = document.createElement("SPAN");
}
var span_search = document.createElement("SPAN");
span_search.innerHTML = get_lang('Search');
var td1_img_search = document.createElement("TD");
td1_img_search.setAttribute("noWrap","true");
var td1_span_search = document.createElement("TD");
td1_span_search.setAttribute("noWrap","true");
td1_img_search.appendChild(img_search);
td1_span_search.appendChild(span_search);
tr1.appendChild(td1);
tr1.appendChild(td_to);
tr1.appendChild(td1_img_search);
tbody_message.appendChild(tr1);
}
function draw_new_message(border_ID)
{
Tooltip.init();
var ID = create_border("",border_ID);
if (ID === false){
return false;
}
expresso.connector.hold_session = true;
var footer_menu = Element("footer_menu");
if (footer_menu) {
footer_menu.style.display = 'none';
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////
var form = document.createElement("FORM");
form.name = "form_message_"+ID;
form.method = "POST";
form.onsubmit = function(){return false;};
if(!is_ie)
form.enctype="multipart/form-data";
else
form.encoding="multipart/form-data";
var content = Element('content_id_' + ID);
var table_message = document.createElement("TABLE");
var tbody_message = document.createElement("TBODY");
constructMenuNewMessage(ID,tbody_message,table_message,content);
constructFromField(tbody_message,ID);
//////////////////////////////////////////////////////////////////////////////////////////////////////
var tr2 = document.createElement("TR");
tr2.id = "tr_cc_"+ID;
tr2.style.display = 'none';
var td2 = document.createElement("TD");
td2.innerHTML = "Cc:";
td2.setAttribute("noWrap","true");
td2.style.width = "1%";
var td_cc = document.createElement("TD");
td_cc.setAttribute("noWrap","true");
td_cc.style.width = "100%";
var input_cc = document.createElement('TEXTAREA');
input_cc.id = "cc_"+ID;
input_cc.name = "input_cc";
input_cc.setAttribute("tabIndex","1");
input_cc.style.width = "100%";
input_cc.onfocus = function(){clearTimeout(parseInt(setTimeOutLayer)); search_contacts('onfocus',this.id);};
input_cc.onblur = function(){setTimeOutLayer=setTimeout('search_contacts("lostfocus","'+this.id+'")',100);};
if (!is_ie)
{
input_cc.rows = 2;
input_cc.onkeypress = function (e)
{
if ((e.keyCode) == 120) //F9
{
emQuickSearch(input_cc.value, 'cc', ID);
}
else
{
if (((e.keyCode == 13) || ((e.keyCode == 38)||(e.keyCode == 40))) && (document.getElementById('tipDiv').style.visibility!='hidden'))
{
e.preventDefault();
search_contacts(e.keyCode,this.id);
}
}
};
input_cc.onkeyup = function (e)
{
if ((e.keyCode != 13) && (e.keyCode != 38) && (e.keyCode != 40))
{
search_contacts(e.keyCode,this.id);
}
};
}
else if (is_ie)
{
input_cc.rows = 3;
input_cc.onkeyup = function (e)
{
if ((window.event.keyCode) == 120) //F9
{
emQuickSearch(input_cc.value, 'cc', ID);
}
else
{
search_contacts(window.event.keyCode,this.id);
}
};
}
td_cc.appendChild(input_cc);
var img_search = document.createElement("IMG");
img_search.src = URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/search.gif';
img_search.onclick = function () {emQuickSearch(document.getElementById('cc_'+ID).value, 'cc', ID)};
img_search.title = get_lang('Search') + " | " + get_lang('Use F9 Key as shortcut.');
var span_search = document.createElement("SPAN");
span_search.innerHTML = get_lang('Search');
var td2_img_search = document.createElement("TD");
td2_img_search.setAttribute("noWrap","true");
var td2_span_search = document.createElement("TD");
td2_span_search.setAttribute("noWrap","true");
td2_img_search.appendChild(img_search);
td2_span_search.appendChild(span_search);
tr2.appendChild(td2);
tr2.appendChild(td_cc);
tr2.appendChild(td2_img_search);
tbody_message.appendChild(tr2);
//////////////////////////////////////////////////////////////////////////////////////////////////////
var tr3 = document.createElement("TR");
tr3.id = "tr_cco_"+ID;
tr3.style.display = 'none';
var td3 = document.createElement("TD");
td3.setAttribute("noWrap","true");
td3.innerHTML = get_lang("CCo")+":";
td3.style.width = "1%";
var td_cco = document.createElement("TD");
td_cco.setAttribute("noWrap","true");
td_cco.style.width = "100%";
var input_cco = document.createElement('TEXTAREA');
input_cco.id = "cco_"+ID;
input_cco.name = "input_cco";
input_cco.setAttribute("tabIndex","1");
input_cco.style.width = "100%";
input_cco.onfocus = function(){clearTimeout(parseInt(setTimeOutLayer)); search_contacts('onfocus',this.id);};
input_cco.onblur = function(){setTimeOutLayer=setTimeout('search_contacts("lostfocus","'+this.id+'")',100);};
if (!is_ie)
{
input_cco.rows = 2;
input_cco.onkeypress = function (e)
{
if ((e.keyCode) == 120) //F9
{
emQuickSearch(input_cco.value, 'cco', ID);
}
else
{
if (((e.keyCode == 13) || ((e.keyCode == 38)||(e.keyCode == 40))) && (document.getElementById('tipDiv').style.visibility!='hidden'))
{
e.preventDefault();
search_contacts(e.keyCode,this.id);
}
}
};
input_cco.onkeyup = function (e)
{
if ((e.keyCode != 13) && (e.keyCode != 38) && (e.keyCode != 40))
{
search_contacts(e.keyCode,this.id);
}
};
}
else if (is_ie)
{
input_cco.rows = 3;
input_cco.onkeyup = function (e)
{
if ((window.event.keyCode) == 120) //F9
{
emQuickSearch(input_cco.value, 'cco', ID);
}
else
{
search_contacts(window.event.keyCode,this.id);
}
};
}
td_cco.appendChild(input_cco);
var img_search = document.createElement("IMG");
img_search.src = URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/search.gif';
img_search.title = get_lang('Search') + " | " + get_lang('Use F9 Key as shortcut.');
img_search.onclick = function () {emQuickSearch(document.getElementById('cco_'+ID).value, 'cco', ID);};
var span_search = document.createElement("SPAN");
span_search.innerHTML = get_lang('Search');
var td3_img_search = document.createElement("TD");
td3_img_search.setAttribute("noWrap","true");
var td3_span_search = document.createElement("TD");
td3_span_search.setAttribute("noWrap","true");
td3_img_search.appendChild(img_search);
td3_span_search.appendChild(span_search);
tr3.appendChild(td3);
tr3.appendChild(td_cco);
tr3.appendChild(td3_img_search);
tbody_message.appendChild(tr3);
//////////////////////////////////////////////////////////////////////////////////////////////////////
var tr_link = document.createElement("TR");
tr_link.id = "tr_link_"+ID;
var td1_link = document.createElement("TD");
var td2_link = document.createElement("TD");
td1_link.innerHTML = " ";
var a_cc_link = document.createElement('A');
a_cc_link.innerHTML = get_lang('Add CC');
a_cc_link.id = "a_cc_link_"+ID;
a_cc_link.setAttribute("href","javascript:void(0)");
a_cc_link.setAttribute("tabIndex","-1");
a_cc_link.onclick = function () {
this.style.display='none';
document.getElementById('tr_cc_'+ID).style.display='';document.getElementById('space_link_'+ID).style.display='none';
input_cc.focus();
return false;
};
td2_link.appendChild(a_cc_link);
var space = document.createElement("span");
space.id ="space_link_"+ID;
space.innerHTML=" | ";
td2_link.appendChild(space);
var a_cco_link = document.createElement('A');
a_cco_link.innerHTML = get_lang('Add BCC');
a_cco_link.id = "a_cco_link_"+ID;
a_cco_link.setAttribute("href","javascript:void(0)");
a_cco_link.setAttribute("tabIndex","-1");
a_cco_link.onclick = function () {
this.style.display='none';
document.getElementById('tr_cco_'+ID).style.display='';
document.getElementById('space_link_'+ID).style.display='none';
input_cco.focus();
return false;
};
td2_link.appendChild(a_cco_link);
tr_link.appendChild(td1_link);
tr_link.appendChild(td2_link);
tbody_message.appendChild(tr_link);
//////////////////////////////////////////////////////////////////////////////////////////////////////
var tr4 = document.createElement("TR");
var td4 = document.createElement("TD");
//td4.setAttribute("noWrap","true");
td4.innerHTML = get_lang("Subject")+":";
var td_subject = document.createElement("TD");
var input_subject = document.createElement('input');
input_subject.id = "subject_"+ID;
input_subject.name = "input_subject";
input_subject.setAttribute("tabIndex","1");
input_subject.style.width = "90%";
input_subject.setAttribute("autocomplete","off");
td_subject.appendChild(input_subject);
tr4.appendChild(td4);
tr4.appendChild(td_subject);
tbody_message.appendChild(tr4);
//////////////////////////////////////////////////////////////////////////////////////////////////////
var tr5 = document.createElement("TR");
var td5 = document.createElement("TD");
td5.innerHTML = " ";
var td_return_receipt = document.createElement("TD");
td_return_receipt.setAttribute("noWrap","true");
td_return_receipt.innerHTML = get_lang("Return receipt")+":";
if (is_ie)
{
var input_return_receipt = document.createElement('input name=input_return_receipt');
}
else
{
var input_return_receipt = document.createElement('input');
input_return_receipt.name = "input_return_receipt";
}
input_return_receipt.type = "checkbox";
input_return_receipt.className = "checkbox";
input_return_receipt.id = "return_receipt_"+ID;
input_return_receipt.setAttribute("tabIndex","-1");
td_return_receipt.appendChild(input_return_receipt);
// Workaround para resolver problema ao enviar e-mails
if((preferences.use_assinar_criptografar != '0'))
{
if(parseInt(preferences.use_signature_digital_cripto)==1)
{
td_return_receipt.innerHTML += " " + get_lang("Digitally sign message?")+"";
if (is_ie)
{
var input_return_digital = document.createElement('input name=input_return_digital');
}
else
{
var input_return_digital = document.createElement('input');
input_return_digital.name = "input_return_digital";
}
input_return_digital.type = "checkbox";
input_return_digital.className = "checkbox";
input_return_digital.id = "return_digital_"+ID;
input_return_digital.setAttribute("tabIndex","-1");
if(parseInt(preferences.use_signature_digital)==1)
{
input_return_digital.defaultChecked=true;
}
td_return_receipt.appendChild(input_return_digital);
td_return_receipt.innerHTML += " " + get_lang("Digitally crypt message?")+"";
if (is_ie)
{
var input_return_cripto = document.createElement('input name=input_return_cripto');
}
else
{
var input_return_cripto = document.createElement('input');
input_return_cripto.name = "input_return_cripto";
}
input_return_cripto.type = "checkbox";
input_return_cripto.className = "checkbox";
input_return_cripto.id = "return_cripto_"+ID;
input_return_cripto.setAttribute("tabIndex","-1");
input_return_cripto.defaultChecked=false;
if(parseInt(preferences.use_signature_cripto)==1)
{
input_return_cripto.defaultChecked=true;
}
td_return_receipt.appendChild(input_return_cripto);
}
}
td_return_receipt.innerHTML += "";
tr5.appendChild(td5);
tr5.appendChild(td_return_receipt);
tbody_message.appendChild(tr5);
if (parseInt(preferences.use_important_flag))
{
var trn = document.createElement("TR");
var tdn = document.createElement("TD");
tdn.innerHTML = " ";
var td_important_msg = document.createElement("TD");
td_important_msg.setAttribute("noWrap","true");
td_important_msg.innerHTML = get_lang("Important message")+":";
var input_important_message = document.createElement('input');
input_important_message.type = "checkbox";
input_important_message.className = "checkbox";
input_important_message.id = "important_message_"+ID;
input_important_message.name = "input_important_message";
input_important_message.setAttribute("tabIndex","-1");
td_important_msg.appendChild(input_important_message);
trn.appendChild(tdn);
trn.appendChild(td_important_msg);
tbody_message.appendChild(trn);
}
var add_files = document.createElement("A");
add_files.setAttribute("href", "javascript:void(0)");
add_files.onclick = function () { addFile(ID); return false;};
add_files.innerHTML = get_lang("Attachments: add+");
add_files.setAttribute("tabIndex","-1");
var divfiles = document.createElement("DIV");
divfiles.id = "divFiles_"+ID;
var tr5 = document.createElement("TR");
var td5_link = document.createElement("TD");
var td5_input = document.createElement("TD");
td5_input.innerHTML = " ";
td5_link.setAttribute("valign","top");
td5_link.setAttribute("colSpan","2");
td5_link.appendChild(add_files);
tr5.appendChild(td5_input);
tr5.appendChild(td5_link);
tbody_message.appendChild(tr5);
var tr6 = document.createElement("TR");
var td6_link = document.createElement("TD");
var td6_input = document.createElement("TD");
tr6.appendChild(td6_link);
td6_input.appendChild(divfiles);
tr6.appendChild(td6_input);
tbody_message.appendChild(tr6);
//////////////////////////////////////////////////////////////////////////////////////////////////////
var tr5 = document.createElement("TR");
var td5 = document.createElement("TD");
td5.innerHTML = " ";
var td_body = document.createElement("TD");
td_body.setAttribute("colSpan","2");
var div_body_position = document.createElement("DIV");
div_body_position.id = "body_position_" + ID;
td_body.appendChild(div_body_position);
tr5.appendChild(td5);
tr5.appendChild(td_body);
tbody_message.appendChild(tr5);
// BEGIN MAKE THE SCROLL HEIGHT
var defaultWidth = document.body.clientWidth - (is_ie ? 200 : 195);
var _bar = document.getElementById("toolbar");
var _offset = 0;
if(_bar.style.visibility != 'hidden')
_offset = _bar.offsetHeight ? _bar.offsetHeight : _bar.clientHeight;
var _div = document.createElement("DIV");
_div.id = "div_message_scroll_"+ID;
_div.style.height = document.body.clientHeight - _offset - 105;
content.style.height = document.body.clientHeight - _offset - 80;
_div.style.overflow = "auto";
_div.style.width = defaultWidth;
// END MAKE THE SCROLL HEIGHT
// Hide the contac tips and re-position the pallete color.
_div.onscroll = function() {
var intElemScrollTop = Element("div_message_scroll_"+ID).scrollTop;
if (!is_ie)
ColorPalette.repos(intElemScrollTop);
Tooltip.scrollChanged();
};
//////////////////////////////////////////////////////////////////////////////////////////////////////
_div.appendChild(form);
content.appendChild(_div);
table_message.appendChild(tbody_message);
form.appendChild(table_message);
expresso.connector.loadScript("jscode/rich_text_editor");
RichTextEditor.loadEditor(ID);
//////////////////////////////////////////////////////////////////////////////////////////////////////
return ID;
}
// Verify if any user is sharing his name/email address
// for use in the new messages's "From " field.
function draw_from_field(sel_from,tr1_1){
var el_shared_users = Element("el_shared_users");
// The element was loaded and populated...so return.
if(el_shared_users){
// Nothing to work...so return.
if(el_shared_users.options.length == 0)
return;
tr1_1.style.display = '';
for (var x = 0; x < el_shared_users.options.length; x++) {
var _option = document.createElement("OPTION");
_option.text = el_shared_users.options[x].text;
_option.value = el_shared_users.options[x].value;
sel_from.options[sel_from.options.length] = _option;
}
return;
}
// Get the shared folders.....
var sharedFolders = new Array();
for(var i = 0; i < folders.length; i++) {
var x = folders[i].folder_id;
if (folders[i].folder_parent == 'user'){
sharedFolders[sharedFolders.length] = x;
}
}
var matchUser = '#';
var sharedUsers = new Array();
// Filter the shared folders (only root folders) .....
for(var i = 0; i < sharedFolders.length; i++) {
if(!sharedFolders[i].match(matchUser)) {
matchUser = sharedFolders[i];
sharedUsers[sharedUsers.length] = matchUser.substring(("user"+cyrus_delimiter).length,matchUser.length);
}
}
// Handler function for cExecute
var h_user = function(data) {
if(data.length > 0) {
tr1_1.style.display = '';
var _option = document.createElement("OPTION");
_option.text = '"'+data.myname+'" <'+Element("user_email").value+'>';
_option.value = data.myname+";"+Element("user_email").value;
sel_from.options[sel_from.options.length] = _option;
var options = '';
for (var x = 0; x < data.length; x++) {
var _option = document.createElement("OPTION");
_option.text = '"'+data[x].cn[0] + '" <'+data[x].mail[0]+'>';
_option.value = data[x].cn[0] + ';'+data[x].mail[0]+';'+data[x].save_shared[0]+';'+data[x].uid[0];
sel_from.options[sel_from.options.length] = _option;
}
}
var shared_users_from = Element("el_shared_users");
if(!shared_users_from) {
shared_users_from = sel_from.cloneNode(true);
shared_users_from.id = "el_shared_users";
shared_users_from.style.display = 'none';
document.body.appendChild(shared_users_from);
}
};
// First time, so execute.....
cExecute ("expressoMail1_2.ldap_functions.getSharedUsersFrom&uids="+sharedUsers.join(';'), h_user);
}
function changeBgColorToON(all_messages, begin, end){
for (begin; begin<=end; begin++)
{
add_className(all_messages[begin], 'selected_msg');
Element("check_box_message_" + all_messages[begin].id).checked = true;
}
}
function updateBoxBgColor(box){
// Set first TR Class
var _className = 'tr_msg_read2';
for(var i = 0; i < box.length;i++){
if(exist_className(box[i],_className))
remove_className(box[i], _className);
_className = (_className == 'tr_msg_read2' ? 'tr_msg_read' : 'tr_msg_read2');
if(!exist_className(box[i],_className))
add_className( box[i], _className);
}
}
function changeBgColor(event, msg_number){
actual_tr = Element(msg_number);
if (event.shiftKey)
{
last_tr = Element(last_message_selected);
if(!last_tr)
last_tr = actual_tr;
all_messages = actual_tr.parentNode.childNodes;
for (var i=0; i < all_messages.length; i++)
{
if (actual_tr.id == all_messages[i].id)
first_order = i;
if (last_tr.id == all_messages[i].id)
last_order = i;
}
if (parseInt(first_order) > parseInt(last_order))
changeBgColorToON(all_messages, last_order, first_order);
else
changeBgColorToON(all_messages, first_order, last_order);
}
else{
//if ( exist_className(actual_tr, 'selected_msg') )
if ( Element('check_box_message_' + msg_number).checked )
add_className(actual_tr, 'selected_msg');
else
remove_className(actual_tr, 'selected_msg');
}
last_message_selected = msg_number;
}
function deny_email(email){
expresso.connector.loadScript("jscode/filter");
expresso.connector.loadScript("jscode/filters");
var dn_em = document.createElement("SPAN");
dn_em.id = "tt_d";
dn_em.onclick = function(){filter_rules.new_rule(url_encode(email));};
dn_em.setAttribute("title",get_lang("Block Sender"));
dn_em.style.cursor = "pointer";
dn_em.innerHTML = "";
return dn_em;
}
function show_div_address_full(id, type) {
var div_address_full = Element("div_"+type+"address_full_"+id);
if(!div_address_full) {
div_address_full = document.createElement("SPAN");
div_address_full.id = "div_"+type+"address_full_"+id;
div_address_full.style.display="none";
var _address = eval(type+"address_array['"+id+"']");
var isOverLimit = (_address.length > 100);
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!");
}
for(var idx = 1 ; idx < _address.length;idx++) {
div_address_full.innerHTML += isOverLimit ? '
'+_address[idx] : ','+this.draw_plugin_cc(_address[idx]);
}
div_address_full.innerHTML += " ("+get_lang('less')+")";
Element(type+"_"+id).appendChild(div_address_full);
}
Element('div_'+type+'address_'+id).style.display='none';
div_address_full.style.display='';
}
function draw_footer_box(num_msgs){
folder = get_current_folder();
var span_R = Element("table_message");
var span_options = Element("span_options");
if(!span_options) {
span_options = document.createElement("TD");
span_options.style.fontSize = "12";
span_options.id = "span_options";
span_R.appendChild(span_options);
}
var change_font_color = 'onmouseover="var last_class = this.className;'+
'if (this.className != \'message_options_over\')'+
'this.className=\'message_options_active\'; '+
'this.onmouseout=function(){this.className=last_class;}"';
span_options.innerHTML =
''+get_lang("Delete")+''+
''+get_lang("Move")+''+
((expresso_offline)?" ":''+get_lang("Print")+'')+
// ''+get_lang("Print")+''+
((expresso_offline)?" ":''+get_lang("Export")+'') +
((expresso_offline)?" ":''+get_lang("Import")+'');
if(preferences.use_local_messages==1 && !expresso_offline)
if(proxy_mensagens.is_local_folder(current_folder))
span_options.innerHTML += ' '+get_lang("Unarchive")+'';
else
span_options.innerHTML += ' '+get_lang("Archive")+'';
if (use_spam_filter) {
if ( current_folder == 'INBOX'+cyrus_delimiter+'Spam' ) {
span_options.innerHTML += ' | '+get_lang("Not Spam")+'';
}
else {
span_options.innerHTML += ' | '+get_lang("Mark as Spam")+'';
}
}
var span_D = Element("span_D");
if(!span_D){
span_D = document.createElement("TD");
span_D.align = "right";
span_D.style.fontSize = "12";
span_D.id = "span_D";
span_R.appendChild(span_D);
}
span_D.innerHTML =
get_lang("List")+': '+
''+get_lang("All")+', '+
''+get_lang("l_unseen")+', '+
''+get_lang("l_seen")+', '+
''+get_lang("l_answered")+', '+
''+get_lang("l_important")+' ';
draw_paging(num_msgs);
Element("tot_m").innerHTML = num_msgs;
};