Changeset 3364 for branches/2.2


Ignore:
Timestamp:
10/15/10 16:01:58 (14 years ago)
Author:
eduardoalex
Message:

Ticket #1231 - Arvore permanece expandida a menos que exita nova pasta para renderizar

File:
1 edited

Legend:

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

    r3345 r3364  
    2929                this.localServer = google.gears.factory.create('beta.localserver'); 
    3030                this.store = this.localServer.createStore('test-store'); 
     31                this.update_folder = false; 
    3132        } 
    3233         
     
    4849         
    4950        mail_sync.prototype.start_sync = function() { 
     51                if (is_ie) 
     52                                connector.loadScript('TreeShow'); 
    5053                if(this.working) { 
    5154                        //Já está sincronizando... 
     
    97100                                 
    98101                                if (!rs2.isValidRow()) { 
     102                                        if((!preferences.hide_folders) || (preferences.hide_folders=="0")) 
     103                                                this.update_folder = true; //Precisa atualizar as pastas na arvore de pastas 
    99104                                        this.dbGears.execute("insert into folder (folder,uid_usuario) values (?,?)", [actual_check, account_id]); 
    100105                                } 
     
    102107                                        actual_check += "/"+folders_to_check[parseInt(i)+1]; 
    103108                        } 
    104                         ttreeBox.update_folder(); 
     109                         
    105110                        rs.next(); 
    106111                } 
     
    138143                        document.getElementById('main_title').innerHTML = get_lang("Deleting downloadeds msgs..."); 
    139144                        expresso_mail_sync.remove_archived_mails(); 
    140                         this.working=false; 
    141                         update_menu(); 
     145                        if((!preferences.hide_folders) || (preferences.hide_folders=="0")) { 
     146                                if (expresso_mail_sync.update_folder) { 
     147                                        ttreeBox.update_folder(); 
     148                                        expresso_mail_sync.update_folder = false; 
     149                                } 
     150                                else  
     151                                        draw_tree_local_folders(); 
     152                        } 
     153                        expresso_mail_sync.working=false; 
    142154                        return; 
    143155                } 
     
    147159                if(folder_to_sync[3]) { //Em caso de arquivamento normal, pode ser que a pasta inbox ainda não tenha sido criada. 
    148160                        expresso_mail_sync.open_conn() 
    149                         if(!expresso_mail_sync.has_local_mails()) { 
     161                        if(folder_to_sync[1]=="Inbox" && !expresso_mail_sync.has_inbox_folder()) { 
     162                                if((!preferences.hide_folders) || (preferences.hide_folders=="0")) 
     163                                        expresso_mail_sync.update_folder = true; //Precisa atualizar as pastas na arvore de pastas 
    150164                                expresso_mail_sync.dbGears.execute("insert into folder (folder,uid_usuario) values (?,?)",["Inbox",account_id]); 
    151165                        } 
    152166                        expresso_mail_sync.dbGears.close(); 
    153                         ttreeBox.update_folder(); 
     167                         
    154168                         
    155169                } 
    156170                 
    157171                var start_sync_mails = function(data) { 
     172                        if (!data) { //Erro ao pegar lista de e-mails a serem baixados 
     173                                write_msg(get_lang("Problems while downloading mails, please try later")); 
     174                                expresso_mail_sync.working=false; 
     175                                window.setTimeout("eval('document.getElementById(\"main_title\").innerHTML =\"Expresso Mail\"')",3000); 
     176                                return; 
     177                        } 
    158178                        expresso_mail_sync.messages=data; 
    159179                        if(expresso_mail_sync.is_auto) 
     
    338358        } 
    339359         
    340         mail_sync.prototype.has_local_mails = function() {//This function considers that the connection with base is already opened. 
    341                 var rs = this.dbGears.execute("select rowid from folder limit 0,1"); 
     360        mail_sync.prototype.has_inbox_folder = function() {//This function considers that the connection with base is already opened. 
     361                var rs = this.dbGears.execute("select rowid from folder where folder='Inbox' and uid_usuario=?",[account_id]); 
    342362                if(rs.isValidRow()) 
    343363                        return true; 
     
    377397                                        Element('tot_m').innerHTML = parseInt(Element('tot_m').innerHTML) - data.msgs_number.length; 
    378398                                } 
    379                                 ttreeBox.update_folder(); 
     399                                 
    380400                                refresh(); 
    381401                                expresso_mail_sync.remove_archived_mails(); 
Note: See TracChangeset for help on using the changeset viewer.