Ignore:
Timestamp:
07/26/12 17:59:57 (12 years ago)
Author:
gustavo
Message:

Ticket #2971 - Edicao de pastas compartilhadas na propria arvore de pastas

Location:
sandbox/2.4.2-expresso2
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • sandbox/2.4.2-expresso2/expressoMail1_2/inc/class.imap_functions.inc.php

    r6846 r6888  
    39033903        function empty_folder($params) 
    39043904        { 
    3905                 $folder = 'INBOX' . $this->imap_delimiter . $_SESSION['phpgw_info']['expressomail']['email_server'][$params['clean_folder']]; 
     3905                $folder = (isset($params['shared']) ? $params['shared'] : 'INBOX') . $this->imap_delimiter . $_SESSION['phpgw_info']['expressomail']['email_server'][$params['clean_folder']]; 
    39063906                $mbox_stream = $this->open_mbox($folder); 
    39073907                $return = imap_delete($mbox_stream,'1:*'); 
     3908                $return = imap_errors(); 
    39083909                if($mbox_stream) 
    39093910                        imap_close($mbox_stream, CL_EXPUNGE); 
  • sandbox/2.4.2-expresso2/expressoMail1_2/js/main.js

    r6875 r6888  
    34993499} 
    35003500 
    3501 function empty_trash_imap(){ 
     3501function empty_trash_imap(shared, button){ 
     3502        if(shared){ 
     3503                var folder_part = $(button).parents("li:first").attr("id").split(cyrus_delimiter); 
     3504                var folder = folder_part[0]+cyrus_delimiter+folder_part[1]; 
     3505        } 
     3506 
    35023507        var handler_empty_trash = function(data){ 
    35033508                Element('chk_box_select_all_messages').checked = false; 
     
    35103515                draw_tree_labels(); 
    35113516                if (data){ 
     3517                        if(typeof(data) == "object"){ 
     3518                                if(data[1] == "Permission denied"){ 
     3519                                        return write_msg(get_lang("Permission denied")); 
     3520                                } 
     3521                        } 
    35123522                        write_msg(get_lang('Your Trash folder was empty.')); 
    35133523                        if (get_current_folder() == mount_url_folder(["INBOX",special_folders["Trash"]])){ 
     
    35293539                'onClose':  function(caption) { 
    35303540                        if(caption == get_lang("Yes")){ 
    3531                                 cExecute ("$this.imap_functions.empty_folder&clean_folder="+"imapDefaultTrashFolder", handler_empty_trash); 
     3541                                cExecute ("$this.imap_functions.empty_folder&clean_folder="+"imapDefaultTrashFolder"+(shared ? "&shared="+folder : ""), handler_empty_trash); 
    35323542                        } 
    35333543                } 
     
    35353545} 
    35363546 
    3537 function empty_spam_imap(){ 
     3547function empty_spam_imap(shared, button){ 
     3548        if(shared){ 
     3549                var folder_part = $(button).parents("li:first").attr("id").split(cyrus_delimiter); 
     3550                var folder = folder_part[0]+cyrus_delimiter+folder_part[1]; 
     3551        } 
    35383552        var handler_empty_spam = function(data){ 
    35393553                Element('chk_box_select_all_messages').checked = false; 
     
    35493563                draw_tree_labels(); 
    35503564                update_quota(get_current_folder()); 
    3551                 if (data) 
    3552                         write_msg(get_lang('Your Spam folder was empty.')); 
     3565                if (data){ 
     3566                        if(typeof(data) == "object"){ 
     3567                                if(data[1] == "Permission denied"){ 
     3568                                        return write_msg(get_lang("Permission denied")); 
     3569                                }else{ 
     3570                                        write_msg(get_lang('Your Spam folder was empty.'));              
     3571                                } 
     3572                        }else{ 
     3573                                write_msg(get_lang('Your Spam folder was empty.'));      
     3574                        } 
     3575                } 
    35533576                else 
    35543577                        write_msg(get_lang('ERROR emptying your Spam folder.')); 
     
    35623585                'onClose':  function(caption) { 
    35633586                        if(caption == get_lang("Yes")){ 
    3564                                 cExecute ("$this.imap_functions.empty_folder&clean_folder="+"imapDefaultSpamFolder", handler_empty_spam); 
     3587                                cExecute ("$this.imap_functions.empty_folder&clean_folder="+"imapDefaultSpamFolder"+(shared ? "&shared="+folder : ""), handler_empty_spam); 
    35653588                        } 
    35663589                } 
     
    42654288                        if(data == "Mailbox already exists"){ 
    42664289                                write_msg(get_lang("Mailbox already exists")); 
     4290                        }else if(data.substring(data.indexOf("Permission"), data.length) == "Permission denied"){ 
     4291                                $(".folders-loading").removeClass("folders-loading"); 
     4292                                return write_msg(get_lang("Permission denied")); 
    42674293                        } 
    42684294                        cExecute("$this.imap_functions.get_folders_list&onload=true", update_menu); 
  • sandbox/2.4.2-expresso2/prototype/modules/mail/js/foldertree.js

    r6875 r6888  
    318318                                if(shared.valid){ 
    319319                                        shared.head = folder_.parent().attr('id').split(cyrus_delimiter).length == 2 ?  true : false; 
    320                                         var teste = folder_.parent().attr('id').split(cyrus_delimiter); 
    321                                         var acls = shared_acls[teste[0]+cyrus_delimiter+teste[1]]; 
     320                                        var folder_name_parts = folder_.parent().attr('id').split(cyrus_delimiter); 
     321                                        var acls = shared_acls[folder_name_parts[0]+cyrus_delimiter+folder_name_parts[1]]; 
     322 
    322323                                } 
    323324 
     
    353354                                                                        type : "POST", 
    354355                                                                        data : "current="+folder_id+"&rename="+new_name, 
    355                                                                         success : function(){ 
     356                                                                        success : function(data){ 
     357                                                                                data = connector.unserialize(data)[1]; 
     358                                                                                if(data == "Permission denied"){ 
     359                                                                                        $(".folders-loading").removeClass("folders-loading"); 
     360                                                                                        return write_msg(get_lang("Permission denied")); 
     361                                                                                } 
    356362                                                                                write_msg(get_lang("The folder was successfully rename")); 
    357363                                                                                cExecute("$this.imap_functions.get_folders_list&onload=true", update_menu); 
     
    402408                                                                                        $(".folders-loading").removeClass("folders-loading"); 
    403409                                                                                        return write_msg(get_lang("Mailbox does not exist")); 
     410                                                                                }else if(data.substring(data.indexOf("Permission"), data.length) == "Permission denied"){ 
     411                                                                                        $(".folders-loading").removeClass("folders-loading"); 
     412                                                                                        return write_msg(get_lang("Permission denied")); 
    404413                                                                                } 
    405414                                                                                write_msg(get_lang("The folder %1 was successfully removed", folder_name)); 
     
    466475                                                draw_new_tree_folder(); 
    467476                                        }); 
     477                                }).end().find(".float-menu-export").click(function(){ 
     478                                        //proxy_mensagens.export_all_messages($(this).parents("li:first").attr("id")) 
     479 
     480                                        var name_box = $(this).parents("li:first").attr("id"); 
     481                                        var name_folder = name_box.split(cyrus_delimiter)[name_box.split(cyrus_delimiter).length-1]; 
     482 
     483                                        var hand_export = function(data){ 
     484                                                if(!data){ 
     485                                                        write_msg(get_lang('Error compressing messages (ZIP). Contact the administrator.')) 
     486                                                }else if(data["empty_folder"]){ 
     487                                                        write_msg(get_lang("The selected folder is empty.")); 
     488                                                }else 
     489                                                  download_attachments(null, null, data, null,null, name_folder +'.zip'); 
     490                                        } 
     491                                        cExecute("$this.exporteml.export_all",hand_export,"folder="+name_box);   
     492                                        write_msg(get_lang('You must wait while the messages will be exported...'));             
    468493                                }); 
    469494                                //FUNÇÃO DO eventNU FLUTUANTE NOVA PASTA < END 
  • sandbox/2.4.2-expresso2/prototype/modules/mail/templates/float_folder_menu.ejs

    r6875 r6888  
    2323                else if(data.name_folder == spamfolder){%> 
    2424                        <span class="ui-icon ui-icon-trash float-menu-clean floating-default" onclick="empty_spam_imap();" title="Limpar Pasta"></span>   
     25                         
    2526                <%}%> 
     27 
    2628        <%}else{ %> 
    2729        <%      if(parseInt(data.acl.create)){%> 
     
    3537                        <span class="ui-icon ui-icon-close float-menu-remove floating-default" title="Excluir Pasta"></span> 
    3638                <%}%> 
     39                <%if(data.name_folder == trashfolder && parseInt(data.acl.delete)){%> 
     40                        <span class="ui-icon ui-icon-trash float-menu-clean floating-default" onclick="empty_trash_imap(true, $(this));" title="Limpar Pasta"></span>   
     41                <%}else if(data.name_folder == spamfolder && parseInt(data.acl.delete)){%> 
     42                        <span class="ui-icon ui-icon-trash float-menu-clean floating-default" onclick="empty_spam_imap(true, $(this));" title="Limpar Pasta"></span>   
     43                <%}%> 
    3744        <%}%> 
     45 
     46        <span class="ui-icon ui-icon-arrowthickstop-1-n float-menu-export floating-default" title="Exportar Mensagens da Pasta"></span>   
    3847 </span> 
Note: See TracChangeset for help on using the changeset viewer.