Ignore:
Timestamp:
05/06/10 09:12:42 (14 years ago)
Author:
amuller
Message:

Ticket #1064 - Implementando parcialmente o ticket

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/expressoMail1_2/js/jscode/draw_api_messages.js

    r2708 r2714  
    1 var openTab = { 
    2         'type' : [], // 8 types of tabs, further info. see expressolivre.org/dev/wiki/mail/Documentacao 
    3         'content_id' : [], 
    4         'imapUid' : [], // Stores the imap email number of current tab 
    5         'countFile' : [0,0,0,0,0,0,0,0,0,0], // Stores the number of files attached in current tab 
    6         'imapBox' : [], // Stores the folder name 
    7         'toPreserve' : [], // Check if the message should be removed from draft after send 
    8         'autosave_timer' : [] // The timeout timer for autosave function 
    9 }; 
    10 var tabTypes = { 
    11         'new':4, 
    12         'forward':6, 
    13         'reply_with_history':7, 
    14         'reply_to_all_with_history':7, 
    15         'reply_without_history':7, 
    16         'reply_to_all_without_history':7, 
    17         'edit':5 
    18 }; 
    19 var currentTab,numBox = 0; // Open Tab and num of mailboxes opened at context 
    20  
    211// Objeto Map, talvez o ideal fosse adicionar este objeto à Api do egroupware, e carregá-lo 
    222// aqui no expressoMail. 
     
    8060} 
    8161 
    82 function createNxtPrevButtons(info_msg,ID,folder_id){ 
     62function createNxtPrevButtons(msg_folder,ID,folder_id){ 
    8363        var next_previous_msg_td = createAndSet("TD",[ "noWrap", "align", "width" ], [ "true", "right", "40px"]); 
    8464        var img_next_msg = createAndSet("IMG", [ 'id', 'src', 'title' ], [ 
     
    9171        if (folder){ // mensagem local criptografada nao tem ID da pasta local 
    9272                if (folder.nextSibling){ 
    93                         var nextMsgBox = folder.nextSibling.name?folder.nextSibling.name:info_msg.msg_folder; 
     73                        var nextMsgBox = folder.nextSibling.name?folder.nextSibling.name:msg_folder; 
    9474 
    9575                        if (nextMsgBox == "INBOX/decifradas")// teste para ver se a mensagem vem da pasta oculta decifradas 
     
    9878                        img_next_msg.onclick = function() 
    9979                        { 
    100                                 currentTab = ID; 
    101                                 openTab.type[ID] = 2; 
    102                                 proxy_mensagens.get_msg(folder.nextSibling.id,nextMsgBox,true,show_msg); 
     80                                openTab.type[currentTab] = 2; 
     81                                if ( nextMsgBox == undefined ) 
     82                                       nextMsgBox = current_folder; 
     83                                var allHeaders = folderHeaders[nextMsgBox]; 
     84                                for (i in allHeaders) 
     85                                        if (allHeaders[i].msg_number == folder.nextSibling.id){ 
     86                                                var nextHeader = allHeaders[i]; 
     87                                                break; 
     88                                        } 
     89                                proxy_mensagens.get_msg(nextHeader,nextMsgBox,true,show_msg,currentTab); 
    10390                        }; 
    10491                } 
     
    10794                        img_next_msg.src = URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/down.gray.button.png'; 
    10895                        img_next_msg.style.cursor = 'default'; 
    109  
    11096                } 
    11197        } 
     
    114100                img_next_msg.src = URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/down.gray.button.png'; 
    115101                img_next_msg.style.cursor = 'default'; 
    116                 if (!proxy_mensagens.is_local_folder(get_current_folder()) && !(info_msg.msg_folder == "INBOX/decifradas")) // testa se a mensagem e local 
     102                if (!proxy_mensagens.is_local_folder(get_current_folder()) && !(msg_folder == "INBOX/decifradas")) // testa se a mensagem e local 
    117103                { 
    118104                        img_next_msg.onclick = function() 
     
    137123                if (folder.previousSibling) 
    138124                { 
    139                         var previousMsgBox = folder.previousSibling.name?folder.previousSibling.name:info_msg.msg_folder; 
     125                        var previousMsgBox = folder.previousSibling.name?folder.previousSibling.name:msg_folder; 
    140126 
    141127                        if (previousMsgBox == "INBOX/decifradas") // teste para ver se a mensagem vem da pasta oculta decifradas 
     
    144130                        img_previous_msg.onclick = function() 
    145131                        { 
    146                                 currentTab = ID; 
    147                                 openTab.type[ID] = 2; 
    148                                 proxy_mensagens.get_msg(folder.previousSibling.id,previousMsgBox,true,show_msg); 
     132                                openTab.type[currentTab] = 2; 
     133                                if ( previousMsgBox == undefined ) 
     134                                       previousMsgBox = current_folder; 
     135                                var allHeaders = folderHeaders[previousMsgBox]; 
     136                                for (i in allHeaders) 
     137                                        if (allHeaders[i].msg_number == folder.previousSibling.id){ 
     138                                                var previousHeader = allHeaders[i]; 
     139                                                break; 
     140                                        } 
     141                                proxy_mensagens.get_msg(previousHeader,previousMsgBox,true,show_msg,currentTab); 
    149142                        }; 
    150143                } 
     
    159152                img_previous_msg.src = URL_SERVER + 'expressoMail1_2/templates/'+template+'/images/up.gray.button.png'; 
    160153                img_previous_msg.style.cursor = 'default'; 
    161                 if (!proxy_mensagens.is_local_folder(get_current_folder()) && !(info_msg.msg_folder == "INBOX/decifradas")) // testa se a mensagem e local 
     154                if (!proxy_mensagens.is_local_folder(get_current_folder()) && !(msg_folder == "INBOX/decifradas")) // testa se a mensagem e local 
    162155                { 
    163156                        img_previous_msg.onclick = function() 
     
    282275        } 
    283276 
    284         var next_previous_msg_td = createNxtPrevButtons(info_msg,ID,folder_id); 
     277        var next_previous_msg_td = createNxtPrevButtons(info_msg.msg_folder,ID,folder_id); 
    285278        if (typeof(next_previous_msg_td) == 'undefined') 
    286279                return false; 
     
    298291                _name = info_msg.from.email.length > _maxChar ? info_msg.from.email.substring(0,_maxChar) + "..." : info_msg.from.email; 
    299292 
    300         td.innerHTML = _name.bold() + ', ' + info_msg.smalldate; 
    301         if (info_msg.attachments.length > 0) 
    302                 td.innerHTML += "&nbsp<img style='cursor:pointer' onclick='javascript:Element(\"option_hide_more_"+ID+"\").onclick()' src ='" + URL_SERVER + "expressoMail1_2/templates/"+template+"/images/clip.gif' title='"+info_msg.attachments.names+"'>"; 
     293        td.innerHTML = _name.bold() + ', ' + info_msg.udate; 
     294        if (info_msg.attachment.names.length > 0) 
     295                td.innerHTML += "&nbsp<img style='cursor:pointer' onclick='javascript:Element(\"option_hide_more_"+ID+"\").onclick()' src ='" + URL_SERVER + "expressoMail1_2/templates/"+template+"/images/clip.gif' title='"+info_msg.attachment.names+"'>"; 
    303296 
    304297        if (typeof(info_msg.signature) == 'string') 
     
    321314                var option_hide_more = createAndSet("SPAN",['class','value','id'],['message_options','more_options','option_hide_more_'+ID],get_lang('show details')); 
    322315                option_hide_more.onclick = function(){ 
    323                         var _height = Element("div_message_scroll_"+ID).style.height; 
     316                        try{ 
     317                                var _height = Element("div_message_scroll_"+ID).style.height; 
     318                        } 
     319                        catch(e){ 
     320                                return; 
     321                        } 
    324322                        _height = parseInt(_height.replace("px","")); 
    325323                        var _offset = 35; 
     
    464462        return true; 
    465463} 
    466 function draw_message(info_msg, ID){ 
    467         var content = document.getElementById('content_id_' + ID); 
     464 
     465function draw_message_header(header,border_id){ 
    468466        var defaultWidth = document.body.offsetWidth - 37; 
    469467        if(Element("folderscol").style.display != 'none') 
    470468                defaultWidth -= Element("folderscol").offsetWidth; 
    471469 
    472  
    473         var table_message = createAndSet("TABLE",['border','width'],["0",defaultWidth]); 
     470        var table_message = createAndSet("TABLE",['id','border','width'],['table_message_'+border_id,"0",defaultWidth]); 
     471        table_message.id = 'table_message_'+border_id; 
    474472        var tbody_message = document.createElement("TBODY"); 
    475  
    476         if (!make_options_message(info_msg,tbody_message)) 
     473        if (!make_options_message(header,tbody_message)) 
    477474                return; 
    478475 
     476        table_message.appendChild(tbody_message); 
     477        var content = document.getElementById('content_id_' + border_id); 
     478        content.appendChild(table_message); 
     479        loading_img = content.appendChild(loading_img); 
     480} 
     481 
     482 
     483function draw_message(info_msg, ID){ 
     484        var defaultWidth = document.body.offsetWidth - 37; 
     485        if(Element("folderscol").style.display != 'none') 
     486                defaultWidth -= Element("folderscol").offsetWidth; 
     487 
     488        var table_message = Element('table_message_'+ID); 
     489        var tbody_message = table_message.childNodes[0]; 
    479490 
    480491        var tbody_message_others_options = document.createElement("TBODY"); 
     
    658669        div.style.background = 'WHITE'; 
    659670        div.style.height = document.body.clientHeight - offset - 125; 
    660         content.style.height = document.body.clientHeight - offset - 90; 
    661671        div.style.overflow = "auto"; 
    662672        div.style.width = defaultWidth - (is_ie ? 5 : 0); 
     
    714724        } 
    715725 
    716         table_message.appendChild(tbody_message); 
    717         content.appendChild(table_message); 
     726 
    718727        var msg_number = createAndSet("INPUT",['id','type','value'],["msg_number_" + ID, "hidden", info_msg.msg_number]); 
     728        var content = document.getElementById('content_id_' + ID); 
     729        loading_img = content.removeChild( loading_img ); 
     730        content.style.height = document.body.clientHeight - offset - 90; 
    719731        content.appendChild(msg_number); 
    720732        ////////////////////////////////////////////////////////////////////////////////////////////////////// 
Note: See TracChangeset for help on using the changeset viewer.