Ignore:
Timestamp:
07/08/10 17:52:20 (14 years ago)
Author:
amuller
Message:

Ticket #1135 - Aplicando alterações do branches 2.0 no branches 2.2

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2.2/expressoMail1_2/js/draw_api.js

    r1969 r3018  
    436436                        } 
    437437                        folders = data; 
    438                         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); 
    439438                } 
    440439} 
     
    726725        var _divScroll = document.getElementById("divScrollMain_"+numBox); 
    727726 
    728         var bar = document.getElementById("toolbar"); 
    729         var offset = 0; 
    730727 
    731728        if(!_divScroll){                 
     
    742739                _divScroll.style.width  ="99.3%"; 
    743740        } 
    744         // Inicio: Redimensiona DIV SCROLL 
    745         var bar = Element("toolbar"); 
    746         var offset = 0; 
    747         if(bar.style.visibility != 'hidden')  
    748                 offset = (bar.offsetHeight ? bar.offsetHeight :  bar.clientHeight);              
    749         var screenHeight = document.body.clientHeight ? document.body.clientHeight : document.body.offsetHeight; 
    750         var defaultHeight = screenHeight - offset;               
    751         _divScroll.style.height         = defaultHeight - 110; 
    752         Element('content_folders').style.height = defaultHeight - (is_ie ? 165 : 150); 
    753         // Fim: Redimensiona DIV SCROLL 
    754741        _divScroll.appendChild(table_element); 
    755742        openTab.content_id[numBox].appendChild(_divScroll); 
     
    758745 
    759746                if (headers_msgs.num_msgs == 0){ 
    760                         td_info = document.createElement("H3"); 
    761                         td_info.setAttribute("height", "25%"); 
     747                        var tr_info = document.createElement("TR");  
     748                        var td_info = document.createElement("TD");  
     749                        td_info.setAttribute("colspan", "10");  
    762750                        td_info.setAttribute("background", "#FFF"); 
    763                         td_info.setAttribute("id", "msg_info"); 
     751                        tr_info.setAttribute("id", "msg_info"); 
    764752                        td_info.align = "center"; 
     753                        td_info.style.padding = "25px";  
     754                        td_info.style.fontWeight = "bold";  
     755                        td_info.style.fontSize = "11pt";  
    765756                        td_info.innerHTML = get_lang("This mail box is empty"); 
     757                        tr_info.appendChild(td_info);  
    766758                        tbody_element.appendChild(td_info); 
    767759                } 
     
    788780        draw_footer_box(headers_msgs.num_msgs);  
    789781        Element('main_table').style.display = ''; 
     782        if(is_ie6)      // Stupid Fixing on IE6.  
     783                setTimeout("resizeWindow()",1);  
     784        else  
     785                resizeWindow();  
    790786        if(debug) { 
    791787                var _eTime = new Date(); 
     
    954950                _img_sent.src    = "templates/"+template+"/images/sent.gif"; 
    955951 
     952 
     953 
     954                var td_element25 = document.createElement("TD");  
     955                td_element25.className = "td_msg";  
     956                td_element25.setAttribute("width", "1%");  
     957                td_element25.id = "td_message_unseen_"+headers_msgs.msg_number;  
     958                if ((headers_msgs.Unseen == 'U') || (headers_msgs.Recent == 'N'))  
     959                        td_element25.innerHTML = "<img src ='templates/"+template+"/images/unseen.gif' title='"+get_lang('Unseen')+"'>";  
     960                else  
     961                        td_element25.innerHTML = "<img src ='templates/"+template+"/images/seen.gif' title='"+get_lang('Seen')+"'>";  
     962 
     963 
    956964                td_element3 = document.createElement("TD"); 
    957965                td_element3.className = "td_msg"; 
     
    964972                if (typeof(headers_msgs.from) == 'undefined') 
    965973                        return false; 
    966                 if(headers_msgs.from.email.toLowerCase() == Element("user_email").value) 
     974                if( headers_msgs.from.email && headers_msgs.from.email.toLowerCase() == Element("user_email").value ) 
    967975                {  
    968976                        td_element3.onmouseover = function () {this.title=headers_msgs.to.email;}; 
     
    970978                                td_element3.innerHTML += "<span style=\"color:red\">("+get_lang("Draft")+") </span>"; 
    971979                        else{                            
    972                                 if(headers_msgs.to.email.toLowerCase() != Element("user_email").value) 
     980                                if(headers_msgs.to.email != null && headers_msgs.to.email.toLowerCase() != Element("user_email").value)  
    973981                                        td_element24.innerHTML = "<img valign='center' src ='templates/"+template+"/images/sent.gif' title='"+get_lang('Sent')+"'>"; 
    974982                         
     
    10481056                tr_element.appendChild(td_element22); 
    10491057                tr_element.appendChild(td_element23); 
    1050         tr_element.appendChild(td_element24); 
     1058                tr_element.appendChild(td_element24); 
     1059                tr_element.appendChild(td_element25);  
    10511060                tr_element.appendChild(td_element3); 
    10521061                tr_element.appendChild(td_element4); 
     
    11151124function draw_message(info_msg, ID){ 
    11161125        var content = document.getElementById('content_id_' + ID); 
    1117         var defaultWidth = document.body.offsetWidth - 37; 
    11181126         
    11191127        var menuHidden = Element("folderscol").style.display == 'none' ? true : false; 
    1120         if(!menuHidden) 
    1121                 defaultWidth -= Element("folderscol").offsetWidth; 
    11221128         ////////////////////////////////////////////////////////////////////////////////////////////////////// 
    11231129        //Make the next/previous buttom. 
     
    12391245        var tbody_message = document.createElement("TBODY"); 
    12401246        table_message.border = "0"; 
    1241         table_message.width = defaultWidth ; 
     1247        table_message.width = "100%";  
    12421248 
    12431249        ////////////////////////////////////////////////////////////////////////////////////////////////////// 
     
    12681274 
    12691275        td.innerHTML = _name.bold() + ', ' + info_msg.smalldate; 
    1270         if (info_msg.attachments.length > 0) 
     1276        if (info_msg.attachments && info_msg.attachments.length > 0)  
    12711277                td.innerHTML += "&nbsp<img style='cursor:pointer' onclick='javascript:Element(\"option_hide_more_"+ID+"\").onclick()' src ='templates/"+template+"/images/clip.gif' title='"+info_msg.attachments.names+"'>"; 
    12721278         
     
    12961302        option_hide_more.id = 'option_hide_more_'+ID; 
    12971303        option_hide_more.onclick = function(){ 
    1298                 var _height = Element("div_message_scroll_"+ID).style.height; 
    1299                 _height = parseInt(_height.replace("px","")); 
    1300                 var _offset = 35; 
    13011304                if (this.value == 'more_options'){ 
    13021305                        this.innerHTML = "<b><u>"+get_lang('Options')+"</u></b>"; 
    13031306                        this.value = 'hide_options'; 
    1304                         Element("div_message_scroll_"+ID).style.height = (_height - _offset)+"px"; 
    13051307                        Element('table_message_others_options_'+ID).style.display = ''; 
    13061308                        Element('tr_other_options_'+ID).style.display = ''; 
     
    13101312                        this.innerHTML = get_lang('Options'); 
    13111313                        this.value = 'more_options'; 
    1312                         Element("div_message_scroll_"+ID).style.height = (_height + _offset)+"px"; 
    13131314                        Element('table_message_others_options_'+ID).style.display = 'none'; 
    13141315                        Element('tr_other_options_'+ID).style.display = 'none';                  
    13151316                } 
     1317                resizeWindow(); 
    13161318        }; 
    13171319        var option_mark = document.createElement('TD'); 
     
    15101512        var table_message_others_options = document.createElement("TABLE"); 
    15111513        table_message_others_options.id = 'table_message_others_options_' + ID; 
    1512         table_message_others_options.width =  defaultWidth - 30; 
     1514        table_message_others_options.width = "100%"; 
    15131515        table_message_others_options.style.display = 'none'; 
    15141516        table_message_others_options.className = "table_message"; 
     
    16191621        } 
    16201622        else { 
    1621                 to.innerHTML += draw_plugin_cc(ID,toaddress_array[ID]); 
     1623                toAdd = toaddress_array[ID].toString().replace("<","&lt;");  
     1624                toAdd = toAdd.replace(">","&gt;");  
     1625                to.innerHTML += draw_plugin_cc(ID,toAdd);  
    16221626        } 
    16231627        to.className = "header_message_field"; 
     
    17471751        tr5.appendChild(subject); 
    17481752        tbody_message_others_options.appendChild(tr5); 
    1749         if (info_msg.attachments.length > 0){ 
    1750                 var tr6 = document.createElement("TR"); 
     1753        if ( info_msg.attachments && info_msg.attachments.length > 0 ){  
     1754        var tr6 = document.createElement("TR"); 
    17511755                tr6.className = "tr_message_header"; 
    17521756                var td6 = document.createElement("TD"); 
     
    18261830 
    18271831 
    1828         // BEGIN MAKE THE SCROLL HEIGHT 
    1829         var bar = document.getElementById("toolbar"); 
    1830         var offset = 0; 
    1831         if(bar.style.visibility != 'hidden') 
    1832                 offset = bar.offsetHeight ? bar.offsetHeight :  bar.clientHeight; 
    18331832        var div = document.createElement("DIV"); 
    18341833        div.id = "div_message_scroll_"+ID; 
    18351834        div.style.background = 'WHITE'; 
    1836         div.style.height = document.body.clientHeight - offset - 125; 
    1837         content.style.height = document.body.clientHeight - offset - 90; 
    18381835        div.style.overflow = "auto"; 
    1839         div.style.width = defaultWidth - (is_ie ? 5 : 0); 
    1840         // END MAKE THE SCROLL HEIGHT 
     1836        div.style.width = "100%";  
    18411837        table_message_others_options.appendChild(tbody_message_others_options); 
    18421838        var tr = document.createElement("TR"); 
     
    18441840        td.colSpan = '2'; 
    18451841        div.appendChild(table_message_others_options); 
    1846         var imgTag = info_msg.body.match(/(<img[^>]*src[^=]*=['"][^'"]*["'][^>]*>)|(<td[^>]*background[^=]*=['"][^'"]*["'][^>]*>)/gi); 
     1842        var imgTag = info_msg.body.match(/(<img[^>]*src[^>=]*=['"]?[^'">]*["']?[^>]*>)|(<[^>]*(style[^=>]*=['"][^>]*background(-image)?:[^:;>]*url\()[^>]*>)/gi); 
    18471843        var newBody = info_msg.body; 
    18481844        if(!info_msg.showImg && imgTag) 
     
    18591855                                for (var i = 0; i < domains.length; i++) 
    18601856                                { 
     1857                                        if (imgTag[j].match(/cid:([\w\d]){5,}/) || imgTag[j].match(/src=\"\.\/inc\/show_embedded_attach\.php/g))   
     1858                                        { 
     1859                                                forbidden = false; 
     1860                                                continue; 
     1861                                        } 
    18611862                                        imgSource = imgTag[j].match(/=['"](http:\/\/)+[^'"\/]*/); 
    18621863                                        if (imgSource && imgSource.toString().substr(5).match(domains[i])) 
     
    18941895        newBody = newBody.replace("<body","<span"); 
    18951896        newBody = newBody.replace("<BODY","<span"); 
    1896         div.innerHTML+= "<span id='body_"+ID+"'>"+newBody+"</span><br><br>"; 
     1897        while ( ( /<span[^>]*><span[^>]*>/ig ).test( newBody ) )  
     1898                newBody = newBody.replace( /(<span[^>]*>)<span[^>]*>/ig, '$1' );  
     1899 
     1900        var _body = document.createElement( 'div' );  
     1901        _body.id = 'body_' + ID;  
     1902        _body.innerHTML = newBody;  
     1903 
     1904        var _elements = _body.getElementsByTagName( '*' );  
     1905        for( var i = 0; i < _elements.length; i++ )  
     1906                if ( _elements[ i ].attributes && _elements[ i ].attributes.getNamedItem( 'id' ) )  
     1907                        _elements[ i ].attributes.removeNamedItem( 'id' );  
     1908 
     1909        div.appendChild( _body );  
     1910 
     1911        function mailto( link )  
     1912        {  
     1913                var mail = link.href.substr( 7 );  
     1914                link.onclick = function( )  
     1915                {  
     1916                        new_message_to( mail );  
     1917                        return false;  
     1918                };  
     1919        }  
     1920        var links = div.getElementsByTagName( 'a' );  
     1921        for ( var i = 0; i < links.length; i++ ){  
     1922                try{  
     1923                        if ( links.item( i ).href.indexOf( 'mailto:' ) === 0 ){                           
     1924                                mailto( links.item( i ) );  
     1925                        }  
     1926                        else{  
     1927                                if ( links.item( i ).href.indexOf( 'javascript:' ) !== 0 )  
     1928                                        links.item( i ).setAttribute( 'target', '_blank' );  
     1929                        }  
     1930                }catch(e){  
     1931                }  
     1932        }        
    18971933        //////////////////////////////////////////////////////////////////////////////////////////////////////   
    18981934        //Make the thumbs of the message. 
     
    19421978        table_message.appendChild(tbody_message); 
    19431979        content.appendChild(table_message); 
     1980        resizeWindow();  
    19441981        var msg_number = document.createElement('INPUT'); 
    19451982        msg_number.id = "msg_number_" + ID; 
     
    24812518        tr5.appendChild(td_body); 
    24822519        tbody_message.appendChild(tr5); 
    2483 // BEGIN MAKE THE SCROLL HEIGHT 
    2484     var defaultWidth = document.body.clientWidth - (is_ie ? 200 : 195); 
    2485         var _bar = document.getElementById("toolbar"); 
    2486         var _offset = 0; 
    2487         if(_bar.style.visibility != 'hidden')  
    2488                 _offset = _bar.offsetHeight ? _bar.offsetHeight :  _bar.clientHeight;            
    2489         var _div = document.createElement("DIV"); 
     2520        var _div = document.createElement("DIV"); 
    24902521        _div.id = "div_message_scroll_"+ID; 
    2491         _div.style.height = document.body.clientHeight - _offset - 105; 
    2492         content.style.height = document.body.clientHeight - _offset - 80; 
    24932522        _div.style.overflow = "auto"; 
    2494         _div.style.width = defaultWidth; 
    2495         // END MAKE THE SCROLL HEIGHT 
     2523        _div.style.width = "100%";  
    24962524 
    24972525        // Hide the contac tips and re-position the pallete color. 
     
    25122540        if(!expresso_offline) 
    25132541                draw_from_field(sel_from,tr1_1); 
     2542        resizeWindow();  
    25142543        return ID; 
    25152544} 
Note: See TracChangeset for help on using the changeset viewer.