Ignore:
Timestamp:
08/03/12 15:32:43 (12 years ago)
Author:
gustavo
Message:

Ticket #2954 - Merge de algumas novas funcionalidades da nova versão, #2953, #2971

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/expressoMail1_2/js/main.js

    r6910 r6930  
    2020        }  
    2121} 
    22          
    23  
    2422         
    2523function mount_url_folder(folders){ 
     
    102100                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... 
    103101                        connector.loadScript('mail_sync'); 
    104                         if (is_ie) 
    105                                 connector.loadScript('TreeShow'); 
    106102                        setTimeout('auto_archiving()', 30000); 
    107103                         
    108104                } 
     105                /*Carrega a lista de mensagens*/ 
     106                var  handler_populateSelectedMsgs = function(data){ 
     107                        populateSelectedMsgs(data); 
     108                } 
     109                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); 
    109110                //Substituido por padrão Jquery 
    110111                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); 
     
    639640                                if (!existent) 
    640641                                { 
     642                                        selectedPagingMsgs[data[i].msg_number] = false; 
     643                                        totalFolderMsgs++; 
     644                                        updateSelectedMsgs(false,data[i].msg_number); 
    641645                                        var new_msg = this.make_tr_message(data[i], current_folder, data.offsetToGMT); 
    642646                                        $(new_msg).draggable({ 
     
    687691                                                }, 
    688692                                                helper: function(event){ 
    689                                                                 if($(this).find("input:checkbox").attr("checked") != "checked"){ 
    690                                                                         $(this).find("input:checkbox").trigger('click'); 
    691                                                                         $(this).addClass("selected_msg"); 
    692                                                                 } 
    693                                                                 if($("#table_box").find("tr input:checked").length > 1) 
    694                                                                         return $("<tr><td>"+DataLayer.render('../prototype/modules/mail/templates/draggin_box.ejs', {texto : (($("#table_box").find("tr input:checked")).length+" mensagens selecionadas"), type: "messages"})+"</td></tr>"); 
    695                                                                 if(     $(this).find(".td_msg_subject").text().length > 18 ) 
    696                                                                         return $("<tr><td>"+DataLayer.render('../prototype/modules/mail/templates/draggin_box.ejs', {texto : $(this).find(".td_msg_subject").text().substring(0,18) + "...", type: "messages"})+"</td></tr>"); 
    697                                                                 else 
    698                                                                         return $("<tr><td>"+DataLayer.render('../prototype/modules/mail/templates/draggin_box.ejs', {texto : $(this).find(".td_msg_subject").text(), type: "messages"})+"</td></tr>"); 
     693                                                        $(this).addClass("selected_msg").find("input:checkbox").attr("checked", true); 
     694                                                        updateSelectedMsgs($(this).find("input:checkbox").is(':checked'),$(this).attr("id")); 
     695                                                        if ( $("#tbody_box .selected_shortcut_msg").length > 1) { 
     696                                                                $("#tbody_box .selected_shortcut_msg").addClass("selected_msg").find('.checkbox').attr('checked',true); 
     697                                                                $.each( $(".selected_shortcut_msg"), function(index, value){ 
     698                                                        updateSelectedMsgs($(value).find(":checkbox").is(':checked'),$(value).attr("id")); 
     699                                                        }); 
     700                                                        } 
     701                                                        if(totalSelected() > 1) 
     702                                                                return $("<tr><td>"+DataLayer.render('../prototype/modules/mail/templates/draggin_box.ejs', {texto : (totalSelected()+" mensagens selecionadas"), type: "messages"})+"</td></tr>"); 
     703                                                        if(     $(this).find(".td_msg_subject").text().length > 18 ) 
     704                                                                return $("<tr><td>"+DataLayer.render('../prototype/modules/mail/templates/draggin_box.ejs', {texto : $(this).find(".td_msg_subject").text().substring(0,18) + "...", type: "messages"})+"</td></tr>"); 
     705                                                        else 
     706                                                                return $("<tr><td>"+DataLayer.render('../prototype/modules/mail/templates/draggin_box.ejs', {texto : $(this).find(".td_msg_subject").text(), type: "messages"})+"</td></tr>"); 
    699707                                                }, 
    700708                                                iframeFix: true, 
     
    704712                                                containment: "#divAppbox" 
    705713                                        }).bind("contextmenu", function(){ 
    706                                                 if($(this).find("input:checkbox").attr("checked") != "checked"){ 
    707                                                         $(this).find("input:checkbox").trigger('click'); 
    708                                                         $(this).addClass("selected_msg"); 
     714                                                if (!(($(event.target).find('img').length > 0) && ($(event.target).hasClass('td-label')))){ 
     715                                                        if($(this).find("input:checkbox").attr("checked") != "checked"){ 
     716                                                                $(this).find("input:checkbox").trigger('click'); 
     717                                                                $(this).addClass("selected_msg"); 
     718                                                        } 
     719                                                        updateSelectedMsgs($(this).find("input:checkbox").is(':checked'),$(this).attr("id")); 
    709720                                                } 
    710721                                        }); 
     
    829840                          
    830841                        if (!archive && (parseInt(preferences.save_deleted_msg)) && (folder != userTrashFolder)){  
    831                                 move_msgs2(folder, msgs_number, border_ID, userTrashFolder,special_folders['Trash'],show_success_msg );  
     842                    if(currentTab == 0) 
     843                                                msgs_number = get_selected_messages(); 
     844                            move_msgs2(folder, ""+msgs_number, border_ID, userTrashFolder,special_folders['Trash'],show_success_msg );  
    832845                                return; 
    833846        } 
     
    899912                refresh(); 
    900913        } 
    901  
    902         if (msgs_number == 'selected') 
     914        if(currentTab == 0 ) 
    903915                msgs_number = get_selected_messages(); 
     916 
    904917        if (msgs_number.length > 0 || parseInt(msgs_number) > 0) 
    905918                cExecute ("$this.imap_functions.delete_msgs&folder="+folder+"&msgs_number="+msgs_number+"&border_ID="+border_ID+"&sort_box_type="+sort_box_type+"&search_box_type="+search_box_type+"&sort_box_reverse="+sort_box_reverse, handler_delete_msgs); 
     
    10641077                        params += "&new_folder="+url_encode(new_folder); 
    10651078                        params += "&new_folder_name="+url_encode(new_folder_name); 
    1066                 cExecute ("$this.imap_functions.move_search_messages", handler_move_search_msgs, params); 
    1067         } 
     1079                        cExecute ("$this.imap_functions.move_search_messages", handler_move_search_msgs, params); 
     1080                } 
    10681081        } 
    10691082        else 
     
    10901103                                var move_to_folder = data.match(/^(.*)Spam(.*)$/) ? "Spam" : special_folders['Trash']; 
    10911104                                alert(get_lang('There is not %1 folder, Expresso is creating it for you... Please, repeat your request later.', folder_error)); 
    1092                                 connector.loadScript('TreeShow'); 
    10931105                                ttree.FOLDER = 'root'; 
    1094                                 ttreeBox.new_past(move_to_folder); 
     1106                                create_new_folder(move_to_folder,"INBOX"); 
    10951107                                return false; 
    10961108                        }else{ 
     
    12361248        } catch (e) {}  
    12371249 
    1238         if (msgs_number == 'selected'){ 
     1250        if(currentTab == 0) 
    12391251                msgs_number = get_selected_messages(); 
    1240                 } 
    12411252 
    12421253        if(openTab.type[currentTab] == 1){ 
     
    12601271                                url: 'controller.php?' + $.param( {action: '$this.imap_functions.move_messages', 
    12611272                                                                    folder: folder, 
    1262                                                                     msgs_number: msgs_number, 
     1273                                                                    msgs_number: ""+msgs_number, 
    12631274                                                                    border_ID: border_ID, 
    12641275                                                                    sort_box_type: sort_box_type, 
     
    12731284                                success: function( data ){ 
    12741285                                    data = connector.unserialize( data ); 
    1275                                      
     1286                                    $.each(msgs_number, function(index, value){ 
     1287                                        delete selectedPagingMsgs[value]; 
     1288                                    }); 
     1289                                    totalFolderMsgs -= totalSelected(); 
     1290 
     1291                                    //TESTE 
     1292                                    selectAllFolderMsgs(); 
     1293                                $('.select-link').unbind('click'); 
     1294 
    12761295                                    if( data ) 
    12771296                                        handler_move_msgs( data ); 
     
    16211640} 
    16221641 
    1623 function get_selected_messages(){ 
     1642/*function get_selected_messages(){ 
    16241643        var main; 
    16251644        try{ 
     
    16651684 
    16661685                          
    1667                         /* Verifica se está na tela de pesquisa. */  
     1686                        /* Verifica se está na tela de pesquisa. */ /* 
    16681687                        if(selected_messages.indexOf("_") != -1)  
    16691688                        {  
    16701689                                results_search_messages = selected_messages;  
    1671                                 /* Retira a informação da aba */  
     1690                                /* Retira a informação da aba */ /* 
    16721691                                selected_messages = selected_messages.substring(0,selected_messages.indexOf("_")); 
    16731692        } 
     
    16851704                        return selected_messages_by_shortcuts; 
    16861705                }*/ 
    1687                 /*Se houver mais de uma mensagem selecionada por atalho*/ 
     1706                /*Se houver mais de uma mensagem selecionada por atalho*//* 
    16881707                if (array_selected_messages_by_shortcuts.length > 1){ 
    16891708                        if (selected_messages == "") 
     
    16971716        else 
    16981717                return selected_messages; 
     1718}*/ 
     1719function get_selected_messages(){ 
     1720        var selected = new Array(); 
     1721        $.each(selectedPagingMsgs, function(index, value){ 
     1722                if(value) 
     1723                        selected.push(index); 
     1724        }); 
     1725        return ""+selected; 
    16991726} 
    17001727 
     
    21762203                                    var attach = {}; 
    21772204                                    attach.fileName =  attachments[i].text.substring(0, attachments[i].text.lastIndexOf('(')); 
    2178  
    2179                                     if(attach.fileName.length > 45) 
    2180                                         attach.fileName = attach.fileName.substr(0, 32) + " ... " + attach.fileName.substr(attach.fileName.length-9, attach.fileName.length); 
     2205                    attach.fullFileName = attach.fileName; 
     2206                                    if(attach.fileName.length > 20) 
     2207                                        attach.fileName = attach.fileName.substr(0, 17) + " ... " + attach.fileName.substr(attach.fileName.length-9, attach.fileName.length); 
    21812208 
    21822209                                    attach.fileSize =  attachments[i].text.substring(( attachments[i].text.lastIndexOf('(')+1), attachments[i].text.lastIndexOf(')')); 
    21832210 
     2211                    attach.error = false; 
     2212                    fileUploadMSG.find(' .attachments-list').show(); 
    21842213                                    var upload = $(DataLayer.render("../prototype/modules/mail/templates/attachment_add_itemlist.ejs", {file : attach})); 
    2185                                     upload.find('.status-upload').remove(); 
    2186                                     upload.find('.in-progress').remove();  
    21872214                                    upload.append('<input type="hidden" name="fileId[]" value=\''+idATT+'\'/>'); 
    2188                                     upload.find('.button.close').button({ 
    2189                                             icons: { 
    2190                                                     primary: "ui-icon-close" 
    2191                                             }, 
    2192                                             text: false 
    2193  
    2194                                     }).click(function(){ 
     2215                    upload.find(".att-box-loading").remove(); 
     2216                                    upload.find('.att-box-delete').click(function(){ 
    21952217                                            var idAttach = $(this).parent().find('input[name="fileId[]"]').val(); 
    21962218                                            var content_body = RichTextEditor.getData('body_'+new_border_ID); 
     
    22082230                                            fileUploadMSG.find('.attachments-list').find('input[value="'+idAttach+'"]'); 
    22092231                                            delAttachment(new_border_ID,idAttach);  
    2210                                             $(this).parent().remove(); 
     2232                                            $(this).parent().qtip("destroy"); 
     2233                        $(this).parent().remove(); 
     2234                        if(!fileUploadMSG.find(' .attachments-list').find(".att-box").length){ 
     2235                            fileUploadMSG.find(' .attachments-list').hide(); 
     2236                        } 
    22112237                                    }); 
    22122238 
    22132239                                    fileUploadMSG.find('.attachments-list').append(upload); 
     2240                    fileUploadMSG.find('.attachments-list .att-box:last').qtip({ 
     2241                        content: DataLayer.render("../prototype/modules/mail/templates/attachment_add_itemlist_tooltip.ejs", {attach : attach}), 
     2242                        position: { 
     2243                            corner: { 
     2244                                tooltip: 'bottomMiddle', 
     2245                                target: 'topMiddle' 
     2246                            }, 
     2247                            adjust: { 
     2248                               resize: true, 
     2249                               scroll: true, 
     2250                               screen: show 
     2251                            } 
     2252                        }, 
     2253                        show: { 
     2254                            when: 'mouseover', // Don't specify a show event 
     2255                            ready: false // Show the tooltip when ready 
     2256                        }, 
     2257                        hide: 'mouseout', // Don't specify a hide event 
     2258                        style: { 
     2259                            border: { 
     2260                                width: 1, 
     2261                                radius: 5 
     2262                            }, 
     2263                            width: { 
     2264                                                                 min: 75, 
     2265                                                                 max : 1000 
     2266                                                        }, 
     2267                            padding: 3,  
     2268                            textAlign: 'left', 
     2269                            tip: true, // Give it a speech bubble tip with automatic corner detection 
     2270                            name: 'blue' // Style it according to the preset 'cream' style 
     2271                        } 
     2272                    }); 
    22142273                                } 
    22152274                                else 
     
    22342293                                    var attach = {}; 
    22352294                                    attach.fileName =  arrayAttachmentsA[i].text.substring(0, arrayAttachmentsA[i].text.lastIndexOf('(')); 
    2236  
    2237                                     if(attach.fileName.length > 45) 
    2238                                         attach.fileName = attach.fileName.substr(0, 32) + " ... " + attach.fileName.substr(attach.fileName.length-9, attach.fileName.length); 
     2295                    attach.fullFileName = attach.fileName; 
     2296                                    if(attach.fileName.length > 20) 
     2297                                        attach.fileName = attach.fileName.substr(0, 17) + " ... " + attach.fileName.substr(attach.fileName.length-9, attach.fileName.length); 
    22392298 
    22402299                                    attach.fileSize =  arrayAttachmentsA[i].text.substring(( arrayAttachmentsA[i].text.lastIndexOf('(')+1), arrayAttachmentsA[i].text.lastIndexOf(')')); 
    2241  
     2300                    attach.error = false; 
     2301                    fileUploadMSG.find(' .attachments-list').show(); 
    22422302                                    var upload = $(DataLayer.render("../prototype/modules/mail/templates/attachment_add_itemlist.ejs", {file : attach})); 
    2243                                     upload.find('.status-upload').remove(); 
    2244                                     upload.find('.in-progress').remove();  
     2303                                    upload.find('.att-box-loading').remove();  
    22452304                                    upload.append('<input type="hidden" name="fileId[]" value=\''+arrayAttachments[i]+'\'/>'); 
    2246                                     upload.find('.button.close').button({ 
    2247                                             icons: { 
    2248                                                     primary: "ui-icon-close" 
    2249                                             }, 
    2250                                             text: false 
    2251  
    2252                                     }).click(function(){ 
    2253                                             var idAttach = $(this).parent().parent().find('input[name="fileId[]"]').val(); 
     2305                                    upload.find('.att-box-delete').click(function(){ 
     2306                                            var idAttach = $(this).parent().find('input[name="fileId[]"]').val(); 
    22542307                                            var content_body = RichTextEditor.getData('body_'+new_border_ID); 
    22552308                                            var imagens = content_body.match(/<img[^>]*>/g); 
     
    22662319                                            fileUploadMSG.find('.attachments-list').find('input[value="'+idAttach+'"]'); 
    22672320                                            delAttachment(new_border_ID,idAttach);  
    2268                                             $(this).parent().remove(); 
     2321                                            $(this).parent().qtip("destroy"); 
     2322                        $(this).parent().remove(); 
     2323                        if(!fileUploadMSG.find(' .attachments-list').find(".att-box").length){ 
     2324                            fileUploadMSG.find(' .attachments-list').hide(); 
     2325                        } 
    22692326                                    }); 
    22702327 
    22712328                                    fileUploadMSG.find('.attachments-list').append(upload); 
    2272  
     2329                    fileUploadMSG.find('.attachments-list .att-box:last').qtip({ 
     2330                        content: DataLayer.render("../prototype/modules/mail/templates/attachment_add_itemlist_tooltip.ejs", {attach : attach}), 
     2331                        position: { 
     2332                            corner: { 
     2333                                tooltip: 'bottomMiddle', 
     2334                                target: 'topMiddle' 
     2335                            }, 
     2336                            adjust: { 
     2337                               resize: true, 
     2338                               scroll: true, 
     2339                               screen: show 
     2340                            } 
     2341                        }, 
     2342                        show: { 
     2343                            when: 'mouseover', // Don't specify a show event 
     2344                            ready: false // Show the tooltip when ready 
     2345                        }, 
     2346                        hide: 'mouseout', // Don't specify a hide event 
     2347                        style: { 
     2348                            border: { 
     2349                                width: 1, 
     2350                                radius: 5 
     2351                            }, 
     2352                            width: { 
     2353                                                                 min: 75, 
     2354                                                                 max : 1000 
     2355                                                        }, 
     2356                            padding: 3,  
     2357                            textAlign: 'left', 
     2358                            tip: true, // Give it a speech bubble tip with automatic corner detection 
     2359                            name: 'blue' // Style it according to the preset 'cream' style 
     2360                        } 
     2361                    }); 
    22732362                        } 
    22742363 
     
    22882377            if((attachments[i].tagName=="SPAN") || (attachments[i].tagName=="IMG") || ((attachments[i].href.indexOf("javascript:download_local_attachment")==-1)&&(attachments[i].href.indexOf("javascript:download_attachments")==-1))) 
    22892378                    continue; 
    2290  
     2379                fileUploadMSG.find(' .attachments-list').show(); 
    22912380                var arrayAtt = attachments[i].href.replace("javascript:download_attachments(", "").replace(")", "").split(',');                                  
    22922381                var att = new Object(); 
     
    23002389 
    23012390                var attach = {}; 
     2391 
    23022392                attach.fileName =  attachments[i].text.substring(0, attachments[i].text.lastIndexOf('(')); 
    2303  
    2304                 if(attach.fileName.length > 45) 
    2305                     attach.fileName = attach.fileName.substr(0, 32) + " ... " + attach.fileName.substr(attach.fileName.length-9, attach.fileName.length); 
     2393                attach.fullFileName = attach.fileName; 
     2394 
     2395                if(attach.fileName.length > 20) 
     2396                    attach.fileName = attach.fileName.substr(0, 17) + " ... " + attach.fileName.substr(attach.fileName.length-9, attach.fileName.length); 
    23062397 
    23072398                attach.fileSize =  attachments[i].text.substring(( attachments[i].text.lastIndexOf('(')+1), attachments[i].text.lastIndexOf(')')); 
     2399                attach.error = false; 
    23082400 
    23092401                var upload = $(DataLayer.render("../prototype/modules/mail/templates/attachment_add_itemlist.ejs", {file : attach})); 
    2310                 upload.find('.status-upload').remove(); 
    2311                 upload.find('.in-progress').remove();  
    2312                 upload.find('.button.close').button({ 
    2313                         icons: { 
    2314                                 primary: "ui-icon-close" 
     2402                upload.find('.att-box-loading').remove();  
     2403                upload.find('.att-box-delete').click(function(){ 
     2404                    var idAttach = $(this).parent().find('input[name="fileId[]"]').val(); 
     2405                    var content_body = RichTextEditor.getData('body_'+new_border_ID); 
     2406                    var imagens = content_body.match(/<img[^>]*>/g); 
     2407                    var att = JSON.parse(idAttach); 
     2408                    if(imagens != null) 
     2409                    {    
     2410                        for (var x = 0; x < imagens.length; x++) 
     2411                            if(imagens[x].indexOf('src="./inc/get_archive.php?msgFolder='+att.folder+'&amp;msgNumber='+att.uid+'&amp;indexPart='+att.part) !== -1) 
     2412                                content_body = content_body.replace(imagens[x],''); 
     2413 
     2414                         RichTextEditor.setData('body_'+new_border_ID,content_body);     
     2415                    }        
     2416 
     2417                    fileUploadMSG.find(' .attachments-list').find('input[value="'+idAttach+'"]'); 
     2418                    delAttachment(new_border_ID,idAttach);  
     2419                    $(this).parent().qtip("destroy"); 
     2420                    $(this).parent().remove(); 
     2421                    if(!fileUploadMSG.find(' .attachments-list').find(".att-box").length){ 
     2422                        fileUploadMSG.find(' .attachments-list').hide(); 
     2423                    } 
     2424                });      
     2425 
     2426 
     2427                upload.append('<input type="hidden" name="fileId[]" value=\''+idATT+'\'/>'); 
     2428                fileUploadMSG.find('.attachments-list').append(upload); 
     2429                fileUploadMSG.find('.attachments-list .att-box:last').qtip({ 
     2430                    content: DataLayer.render("../prototype/modules/mail/templates/attachment_add_itemlist_tooltip.ejs", {attach : attach}), 
     2431                    position: { 
     2432                        corner: { 
     2433                            tooltip: 'bottomMiddle', 
     2434                            target: 'topMiddle' 
    23152435                        }, 
    2316                         text: false 
    2317                 }).click(function(){ 
    2318                         var idAttach = $(this).parent().find('input[name="fileId[]"]').val(); 
    2319                         var content_body = RichTextEditor.getData('body_'+new_border_ID); 
    2320                         var imagens = content_body.match(/<img[^>]*>/g); 
    2321                         var att = JSON.parse(idAttach); 
    2322                         if(imagens != null) 
    2323                         {    
    2324                             for (var x = 0; x < imagens.length; x++) 
    2325                                 if(imagens[x].indexOf('src="./inc/get_archive.php?msgFolder='+att.folder+'&amp;msgNumber='+att.uid+'&amp;indexPart='+att.part) !== -1) 
    2326                                     content_body = content_body.replace(imagens[x],''); 
    2327  
    2328                              RichTextEditor.setData('body_'+new_border_ID,content_body);     
    2329                         }        
    2330  
    2331                         fileUploadMSG.find(' .attachments-list').find('input[value="'+idAttach+'"]'); 
    2332                         delAttachment(new_border_ID,idAttach);  
    2333                         $(this).parent().remove(); 
    2334                 });      
    2335  
    2336  
    2337                 upload.find("p").append('<input type="hidden" name="fileId[]" value=\''+idATT+'\'/>'); 
    2338                 fileUploadMSG.find('.attachments-list').append(upload); 
     2436                        adjust: { 
     2437                           resize: true, 
     2438                           scroll: true, 
     2439                           screen: show 
     2440                        } 
     2441                    }, 
     2442                    show: { 
     2443                        when: 'mouseover', // Don't specify a show event 
     2444                        ready: false // Show the tooltip when ready 
     2445                    }, 
     2446                    hide: 'mouseout', // Don't specify a hide event 
     2447                    style: { 
     2448                        border: { 
     2449                            width: 1, 
     2450                            radius: 5 
     2451                        }, 
     2452                        width: { 
     2453                                                         min: 75, 
     2454                                                         max : 1000 
     2455                                                }, 
     2456                        padding: 3,  
     2457                        textAlign: 'left', 
     2458                        tip: true, // Give it a speech bubble tip with automatic corner detection 
     2459                        name: 'blue' // Style it according to the preset 'cream' style 
     2460                    } 
     2461                }); 
    23392462 
    23402463    }                    
     
    25822705 
    25832706function send_message(ID, folder, folder_name){ 
    2584      if(!zebraDiscardEventDialog && $('#fileupload_msg'+ID).find('.in-progress').length ) 
    2585      { 
    2586          zebraDiscardEventDialog = true; 
    2587          window.setTimeout(function() { 
    2588          $.Zebra_Dialog('Existem anexos sendo enviados para o servidor. Caso envie sua mensagem agora estes arquivos serão perdidos.', { 
    2589                     'type':     'question', 
    2590                     'overlay_opacity': '0.5', 
    2591                     'buttons':  ['Descartar anexos e enviar', 'Continuar editando e esperar anexos'], 
    2592                     'width' : 500, 
    2593                     'onClose':  function(clicked) { 
    2594                             if(clicked == 'Descartar anexos e enviar' )  
    2595                               send_valided_message(ID, folder, folder_name); 
    2596  
    2597                             window.setTimeout(function() { 
    2598                                     zebraDiscardEventDialog = false; 
    2599                             }, 500); 
     2707    if(!zebraDiscardEventDialog && $('#fileupload_msg'+ID).find('.att-box-loading').length ) 
     2708    { 
     2709        zebraDiscardEventDialog = true; 
     2710        window.setTimeout(function() { 
     2711            $.Zebra_Dialog('Existem anexos sendo enviados para o servidor. Caso envie sua mensagem agora estes arquivos serão perdidos.', { 
     2712                'type':     'question', 
     2713                'overlay_opacity': '0.5', 
     2714                'buttons':  ['Descartar anexos e enviar', 'Continuar editando e esperar anexos'], 
     2715                'width' : 500, 
     2716                'onClose':  function(clicked) { 
     2717                    if(clicked == 'Descartar anexos e enviar' ){  
     2718                        $.each($('#fileupload_msg'+ID).find('.att-box'), function(index, value){ 
     2719                            if($(value).find(".att-box-loading").length) 
     2720                                $(value).find('.att-box-delete').trigger("click"); 
     2721                        }); 
     2722                        send_valided_message(ID, folder, folder_name); 
    26002723                    } 
    2601              }) 
    2602           }, 300);  
    2603  
    2604      } 
    2605      else 
    2606        send_valided_message(ID, folder, folder_name);      
     2724                    window.setTimeout(function() { 
     2725                        zebraDiscardEventDialog = false; 
     2726                    }, 500); 
     2727                } 
     2728            }) 
     2729        }, 300);  
     2730    }else 
     2731        send_valided_message(ID, folder, folder_name);      
    26072732} 
    26082733 
     
    31063231                          success: function( data ){ 
    31073232                              data = connector.unserialize( data ); 
    3108                                
     3233 
     3234                              selectAllFolderMsgs(); 
     3235                              $('.select-link').unbind('click'); 
     3236 
    31093237                              if( data ) 
    31103238                                  handler_set_messages_flag( data ); 
     
    34213549} 
    34223550 
    3423 function empty_trash_imap(){ 
     3551function empty_trash_imap(shared, button){ 
     3552        if(shared){ 
     3553                var folder_part = $(button).parents("li:first").attr("id").split(cyrus_delimiter); 
     3554                var folder = folder_part[0]+cyrus_delimiter+folder_part[1]; 
     3555        } 
     3556 
    34243557        var handler_empty_trash = function(data){ 
    34253558                Element('chk_box_select_all_messages').checked = false; 
     
    34323565                draw_tree_labels(); 
    34333566                if (data){ 
     3567                        if(typeof(data) == "object"){ 
     3568                                if(data[1] == "Permission denied"){ 
     3569                                        cExecute("$this.imap_functions.get_folders_list&onload=true", update_menu); 
     3570                                        return write_msg(get_lang("Permission denied")); 
     3571                                } 
     3572                        } 
    34343573                        write_msg(get_lang('Your Trash folder was empty.')); 
    34353574                        if (get_current_folder() == mount_url_folder(["INBOX",special_folders["Trash"]])){ 
     
    34513590                'onClose':  function(caption) { 
    34523591                        if(caption == get_lang("Yes")){ 
    3453                                 cExecute ("$this.imap_functions.empty_folder&clean_folder="+"imapDefaultTrashFolder", handler_empty_trash); 
     3592                                cExecute ("$this.imap_functions.empty_folder&clean_folder="+"imapDefaultTrashFolder"+(shared ? "&shared="+folder : ""), handler_empty_trash); 
    34543593                        } 
    34553594                } 
     
    34573596} 
    34583597 
    3459 function empty_spam_imap(){ 
     3598function empty_spam_imap(shared, button){ 
     3599        if(shared){ 
     3600                var folder_part = $(button).parents("li:first").attr("id").split(cyrus_delimiter); 
     3601                var folder = folder_part[0]+cyrus_delimiter+folder_part[1]; 
     3602        } 
    34603603        var handler_empty_spam = function(data){ 
    34613604                Element('chk_box_select_all_messages').checked = false; 
     
    34713614                draw_tree_labels(); 
    34723615                update_quota(get_current_folder()); 
    3473                 if (data) 
    3474                         write_msg(get_lang('Your Spam folder was empty.')); 
     3616                if (data){ 
     3617                        if(typeof(data) == "object"){ 
     3618                                if(data[1] == "Permission denied"){ 
     3619                                        cExecute("$this.imap_functions.get_folders_list&onload=true", update_menu); 
     3620                                        return write_msg(get_lang("Permission denied")); 
     3621                                }else{ 
     3622                                        write_msg(get_lang('Your Spam folder was empty.'));              
     3623                                } 
     3624                        }else{ 
     3625                                write_msg(get_lang('Your Spam folder was empty.'));      
     3626                        } 
     3627                } 
    34753628                else 
    34763629                        write_msg(get_lang('ERROR emptying your Spam folder.')); 
     
    34843637                'onClose':  function(caption) { 
    34853638                        if(caption == get_lang("Yes")){ 
    3486                                 cExecute ("$this.imap_functions.empty_folder&clean_folder="+"imapDefaultSpamFolder", handler_empty_spam); 
     3639                                cExecute ("$this.imap_functions.empty_folder&clean_folder="+"imapDefaultSpamFolder"+(shared ? "&shared="+folder : ""), handler_empty_spam); 
    34873640                        } 
    34883641                } 
     
    36203773                msgs_number = get_selected_messages(); 
    36213774 
     3775        //TODO: REFATORAR O CÓDIGO PARA EVITAR recodificação 
     3776        if(currentTab == 0) 
     3777                msgs_number = get_selected_messages(); 
     3778 
    36223779        if (parseInt(msgs_number) > 0 || msgs_number.length > 0) 
    36233780                cExecute ("$this.imap_functions.spam&folder="+folder+"&spam=false"+"&msgs_number="+msgs_number+"&border_ID="+border_ID+"&sort_box_type="+sort_box_type+"&sort_box_reverse="+sort_box_reverse+"&reuse_border="+border_ID+"&new_folder="+new_folder+"&new_folder_name="+new_folder_name+"&get_previous_msg="+0+"&cyrus_delimiter="+cyrus_delimiter, handler_move_msgs); 
     
    36573814                return; 
    36583815        }else if(msgs_number == 'selected') 
     3816                msgs_number = get_selected_messages(); 
     3817 
     3818        //TODO: REFATORAR O CÓDIGO PARA EVITAR recodificação 
     3819        if(currentTab == 0) 
    36593820                msgs_number = get_selected_messages(); 
    36603821 
     
    41884349 
    41894350function create_new_folder(name_folder, base_path){ 
     4351        //Limit reached folders 
     4352        if(preferences.imap_max_folders){ 
     4353                if(cp_tree1.length == parseInt(preferences.imap_max_folders)){ 
     4354                        $(".folders-loading").removeClass("folders-loading"); 
     4355                        cExecute("$this.imap_functions.get_folders_list&onload=true", update_menu); 
     4356                        return write_msg(get_lang("Limit reached folders")); 
     4357                } 
     4358        } 
     4359         
    41904360        $.ajax({ 
    41914361                url : "controller.php?action=$this.imap_functions.create_mailbox", 
     
    41974367                        if(data == "Mailbox already exists"){ 
    41984368                                write_msg(get_lang("Mailbox already exists")); 
     4369                        }else if(data.substring(data.indexOf("Permission"), data.length) == "Permission denied"){ 
     4370                                $(".folders-loading").removeClass("folders-loading"); 
     4371                                cExecute("$this.imap_functions.get_folders_list&onload=true", update_menu); 
     4372                                return write_msg(get_lang("Permission denied")); 
    41994373                        } 
    42004374                        cExecute("$this.imap_functions.get_folders_list&onload=true", update_menu); 
Note: See TracChangeset for help on using the changeset viewer.