Changeset 2899 for trunk/expressoMail1_2/js/jscode
- Timestamp:
- 06/07/10 11:07:57 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/expressoMail1_2/js/jscode/draw_api_folders.js
r2800 r2899 444 444 } 445 445 446 function draw_tree_folders(folders){ 446 function draw_tree_folders( folders ) 447 { 447 448 // Check if the tree folders alredy exist. 448 translatedFolders = new Map(); 449 if (Element('dftree_tree_folders')){ 450 if (!expresso_offline) { 451 var update_tree_folders = function(data){ 452 build_quota(data); 453 var unseen_in_mailbox = 0; 454 var unseen_in_shared_folders = 0; 455 for (var i=0; i<data.length; i++){ 456 if ( data[i].folder_unseen > 0 ) 449 if ( ! Element( 'dftree_tree_folders' ) ) 450 { 451 translatedFolders = new Map( ); 452 if ( ! expresso_offline ) 453 { 454 tree_folders = new dFTree( { 455 "name" : 'tree_folders' 456 } ); 457 458 var n_root = new dNode( { 459 "id" : 'root', 460 "caption" : get_lang( "My Folders" ) 461 } ); 462 463 tree_folders.add( n_root, 'anything' ); //Places the root; second argument can be anything. 464 465 var unseen_in_mailbox = 0; 466 var unseen_in_shared_folders = 0; 467 468 for ( var i = 0; i < folders.length; i++ ) 469 { 470 if ( folders[ i ].folder_unseen > 0 ) 471 { 472 unseen_in_mailbox = parseInt( unseen_in_mailbox + folders[ i ].folder_unseen ); 473 if ( folders[i].folder_id.indexOf( 'INBOX' ) !== 0 ) 474 unseen_in_shared_folders = parseInt( unseen_in_shared_folders + folders[ i ].folder_unseen ); 475 476 var nn = new dNode( { 477 "id" : folders[i].folder_id, 478 "caption" : lang_folder( folders[ i ].folder_name ) 479 + '<font style=color:red> (</font><span id="dftree_' 480 + folders[ i ].folder_id 481 + '_unseen" style=color:red>' 482 + folders[ i ].folder_unseen 483 + '</span><font style=color:red>)</font>', 484 "onClick" : "change_folder('" + folders[ i ].folder_id+"','" + folders[ i ].folder_name + "')", 485 "plusSign" : folders[ i ].folder_hasChildren 486 } ); 487 488 if ( folders[ i ].folder_name.toLowerCase( ) == 'inbox' ) 489 Element( 'new_m' ).innerHTML = '<font style="color:red">' + folders[ i ].folder_unseen + '</font>'; 490 } 491 else 492 var nn = new dNode( { 493 "id" : folders[ i ].folder_id, 494 "caption" : lang_folder( folders[ i ].folder_name ), 495 "onClick" : "change_folder('" + folders[ i ].folder_id + "','" + folders[ i ].folder_name + "')", 496 "plusSign" : folders[ i ].folder_hasChildren 497 }); 498 499 if ( folders[ i ].folder_parent == '' ) 500 folders[ i ].folder_parent = 'root'; 501 else 502 { 503 if ( folders[ i ].folder_parent == 'user' && ( ! tree_folders.getNodeById( 'user' ) ) ) 457 504 { 458 unseen_in_mailbox = parseInt( unseen_in_mailbox + data[ i ].folder_unseen ); 459 if ( data[i].folder_id.indexOf( 'INBOX' ) !== 0 ) 460 unseen_in_shared_folders = parseInt( unseen_in_shared_folders + data[ i ].folder_unseen ); 461 } 462 463 var folder_unseen = Element('dftree_'+data[i].folder_id+'_unseen'); 464 465 if ((folder_unseen) && (data[i].folder_unseen > 0)) 466 { 467 folder_unseen.innerHTML = data[i].folder_unseen; 468 } 469 else if (data[i].folder_unseen > 0) 470 { 471 tree_folders.getNodeById(data[i].folder_id).alter({ 472 caption:lang_folder(data[i].folder_name) + '<font style=color:red> (</font><span id="dftree_'+data[i].folder_id+'_unseen" style=color:red>'+data[i].folder_unseen+'</span><font style=color:red>)</font>' 473 }); 474 tree_folders.getNodeById(data[i].folder_id)._refresh(); 475 } 476 else if (data[i].folder_unseen <= 0) 477 { 478 tree_folders.getNodeById(data[i].folder_id).alter({ 479 caption:lang_folder(data[i].folder_name) 480 }); 481 tree_folders.getNodeById(data[i].folder_id)._refresh(); 482 } 483 if(data[i].folder_id == current_folder){ 484 var old_new_m = isNaN(parseInt(Element('new_m').innerHTML)) ? parseInt(Element('new_m').firstChild.innerHTML) : parseInt(Element('new_m').innerHTML); 485 // if(!isNaN(old_new_m) && old_new_m < data[i].folder_unseen){ 486 // Element('tot_m').innerHTML = parseInt(Element('tot_m').innerHTML) + (parseInt(data[i].folder_unseen)-old_new_m); 487 // } 488 Element('new_m').innerHTML = data[i].folder_unseen ? '<font color="RED">'+data[i].folder_unseen+'</font>' : 0; 489 draw_paging(Element('tot_m').innerHTML); 490 } 491 } 492 493 var display_unseen_in_mailbox = tree_folders.getNodeById( 'root' ); 494 //if ( unseen_in_mailbox ) 495 // display_unseen_in_mailbox.alter({caption:'<font style=color:red>[</font><span id="dftree_root_unseen" style="color:red">' + unseen_in_mailbox +'</span><font style=color:red>]</font> ' + get_lang("My Folders")}); 496 //else 497 display_unseen_in_mailbox.alter({ 498 caption:get_lang("My Folders") 499 }); 500 display_unseen_in_mailbox._refresh(); 501 502 var display_unseen_in_shared_folders = tree_folders.getNodeById( 'user' ); 503 if ( display_unseen_in_shared_folders ) 504 { 505 if ( unseen_in_shared_folders ) 506 display_unseen_in_shared_folders.alter({ 507 caption:'<font style=color:red>[</font><span id="dftree_user_unseen" style="color:red">' + unseen_in_shared_folders +'</span><font style=color:red>]</font> ' + get_lang("Shared folders") 508 }); 509 else 510 display_unseen_in_shared_folders.alter({ 511 caption:get_lang("Shared folders") 512 }); 513 display_unseen_in_shared_folders._refresh(); } }; 514 } 515 return; 516 } 517 else{ 518 if (!expresso_offline) { 519 tree_folders = new dFTree({ 520 name: 'tree_folders' 521 }); 522 var n_root = new dNode({ 523 id:'root', 524 caption: get_lang("My Folders") 525 }); 526 tree_folders.add(n_root,'anything'); //Places the root; second argument can be anything. 527 528 var unseen_in_mailbox = 0; 529 var unseen_in_shared_folders = 0; 530 for (var i=0; i<folders.length; i++){ 531 if (folders[i].folder_unseen > 0) 532 { 533 unseen_in_mailbox = parseInt( unseen_in_mailbox + folders[ i ].folder_unseen ); 534 if ( folders[i].folder_id.indexOf( 'INBOX' ) !== 0 ) 535 unseen_in_shared_folders = parseInt( unseen_in_shared_folders + folders[ i ].folder_unseen ); 536 537 var nn = new dNode({ 538 id:folders[i].folder_id, 539 caption:lang_folder(folders[i].folder_name) + '<font style=color:red> (</font><span id="dftree_'+folders[i].folder_id+'_unseen" style=color:red>'+folders[i].folder_unseen+'</span><font style=color:red>)</font>', 540 onClick:"change_folder('"+folders[i].folder_id+"','"+folders[i].folder_name+"')", 541 plusSign:folders[i].folder_hasChildren 542 }); 543 544 if( folders[i].folder_name.toLowerCase() == 'inbox' ) 545 Element('new_m').innerHTML = '<font style="color:red">' + folders[i].folder_unseen + '</font>'; 546 } 547 else 548 var nn = new dNode({ 549 id:folders[i].folder_id, 550 caption:lang_folder(folders[i].folder_name), 551 onClick:"change_folder('"+folders[i].folder_id+"','"+folders[i].folder_name+"')", 552 plusSign:folders[i].folder_hasChildren 553 }); 554 555 if (folders[i].folder_parent == '') 556 folders[i].folder_parent = 'root'; 557 else if (folders[i].folder_parent == 'user'){ 558 559 if (!tree_folders.getNodeById('user')){ 560 tmpFolderId = folders[i].folder_id.split(cyrus_delimiter).pop(); 561 if (tmpFolderId != folders[i].folder_name) 562 { 563 translatedFolders.add(tmpFolderId, folders[i].folder_name); 564 } 565 var n_root_shared_folders = new dNode({ 566 id:'user', 567 caption:get_lang("Shared folders"), 568 plusSign:true 569 }); 570 tree_folders.add(n_root_shared_folders,'root'); 571 } 572 } 573 tree_folders.add(nn,folders[i].folder_parent); 574 } 575 } 576 //tree_local_folders = new dFTree({name: 'tree_local_folders'}); 577 /** 578 * Pastas locais 579 */ 580 if (preferences.use_local_messages==1 || expresso_offline) { 581 if (!window.google || !google.gears) { 582 if (!expresso_local_messages.installGears()) 583 preferences.use_local_messages=0; 584 } 585 else{ 586 if (!window.google || !google.gears) { 587 temp = confirm(get_lang("To use local messages you have to install google gears. Would you like to be redirected to gears installation page?")); 588 if (temp) { 589 location.href = "http://gears.google.com/?action=install&message="+ 590 "Para utilizar o recurso de mensagens locais, instale o google gears&return=" + 591 document.location.href; 592 } 593 else { 594 preferences.use_local_messages=0; 595 } 596 } 597 else{ 598 if (expresso_offline) 599 tree_folders = new dFTree({ 600 name: 'tree_folders' 601 }); 602 var root_local = new dNode({ 603 id: "local_root", 604 caption: get_lang('local folders') 605 }); 606 tree_folders.add(root_local, "root"); //coloca root local 607 var local_folders = expresso_local_messages.list_local_folders(); 608 for (var i in local_folders) { //Coloca as pastas locais. 609 if(!isNaN(i)){ 610 var node_root = "local_root"; 611 var new_caption = local_folders[i][0]; 612 if (local_folders[i][0].indexOf("/") != "-1") { 613 final_pos = local_folders[i][0].lastIndexOf("/"); 614 node_root = "local_" + local_folders[i][0].substr(0, final_pos); 615 new_caption = local_folders[i][0].substr(final_pos + 1); 616 } 617 if (local_folders[i][1] > 0) 618 var nodeLocal = new dNode({ 619 id: "local_" + local_folders[i][0], 620 caption: lang_folder(new_caption) + '<font style=color:red> (</font><span id="local_unseen" style=color:red>' + local_folders[i][1] + '</span><font style=color:red>)</font>', 621 onClick: "change_folder('local_" + local_folders[i][0] + "','" + new_caption + "')", 622 plusSign: local_folders[i][2] 623 }); 624 else 625 var nodeLocal = new dNode({ 626 id: "local_" + local_folders[i][0], 627 caption: lang_folder(new_caption), 628 onClick: "change_folder('local_" + local_folders[i][0] + "','" + new_caption + "')", 629 plusSign: local_folders[i][2] 630 }); 631 tree_folders.add(nodeLocal, node_root); 632 } 633 } 634 } 635 } 636 } 637 638 tree_folders.draw(Element('content_folders')); 639 if (!expresso_offline) { 640 n_root.changeState(); 641 folder_select = (current_folder ? current_folder:"INBOX"); 642 if (typeof(tree_folders.getNodeById(folder_select)) == 'undefined') 643 return false; 644 tree_folders.getNodeById(folder_select)._select(); 645 } 646 else { 647 root_local.changeState(); 648 tree_folders.getNodeById('local_Inbox')._select(); 649 } 650 651 var trash_span=document.getElementById('lINBOX/'+trashfolder+'tree_folders'); 652 var draft_span=document.getElementById('lINBOX/'+draftsfolder+'tree_folders'); 653 var sent_span=document.getElementById('lINBOX/'+sentfolder+'tree_folders'); 654 var spam_span=document.getElementById('lINBOX/'+spamfolder+'tree_folders'); 655 656 if (trash_span) 657 trash_span.style.backgroundImage="url(" + URL_SERVER + "phpgwapi/templates/"+template+"/images/foldertree_trash.png)"; 658 659 if (draft_span) 660 draft_span.style.backgroundImage="url(" + URL_SERVER + "phpgwapi/templates/"+template+"/images/foldertree_draft.png)"; 661 662 if (sent_span) 663 sent_span.style.backgroundImage="url(" + URL_SERVER + "phpgwapi/templates/"+template+"/images/foldertree_sent.png)"; 664 665 if (spam_span) 666 spam_span.style.backgroundImage="url(" + URL_SERVER + "phpgwapi/templates/"+template+"/images/foldertree_spam.png)"; 667 668 669 draw_paging(Element('tot_m').innerHTML); 670 if(document.getElementById("nINBOX/"+trashfolder+"tree_folders")) 671 { 672 var trash = document.createElement("SPAN"); 673 trash.id = 'empty_trash'; 674 trash.className = 'clean_folder'; 675 trash.style.cursor = 'pointer'; 676 trash.onclick = function () { 677 empty_trash_imap(); 678 }; 679 trash.innerHTML = "["+get_lang("Clean")+"]"; 680 trash.title=get_lang("Empty trash"); 681 trash.onmouseover = function() { 682 trash.style.color="red"; 683 }; 684 trash.onmouseout= function() { 685 trash.style.color="#666666"; 686 }; 687 document.getElementById("nINBOX/"+trashfolder+"tree_folders").appendChild(trash); 688 } 689 if(document.getElementById("nINBOX/"+spamfolder+"tree_folders")) 690 { 691 var spam = document.createElement("SPAN"); 692 spam.id = 'empty_spam'; 693 spam.className = 'clean_folder'; 694 spam.style.cursor = 'pointer'; 695 spam.style.padding = '0 0 0 6px'; 696 spam.onclick = function () { 697 empty_spam_imap(); 698 }; 699 spam.innerHTML = "["+get_lang("Clean")+"]"; 700 spam.title=get_lang("Empty Spam Folder"); 701 spam.onmouseover = function() { 702 spam.style.color="red"; 703 }; 704 spam.onmouseout= function() { 705 spam.style.color="#666666"; 706 }; 707 document.getElementById("nINBOX/"+spamfolder+"tree_folders").appendChild(spam); 708 } 709 710 // Draw right menu folders. 711 /* 712 var treeroot = document.getElementById('chroottree_folders'); 713 for (var linkBox = treeroot.firstChild; linkBox != null; linkBox = linkBox.nextSibling) 714 _dragArea.makeMenuBox(linkBox); 715 */ 716 717 if(!expresso_offline) 718 var display_unseen_in_mailbox = tree_folders.getNodeById( 'root' ); 719 else 720 var display_unseen_in_mailbox = tree_folders.getNodeById( 'local_root' ); 721 //if ( unseen_in_mailbox ) 722 // display_unseen_in_mailbox.alter({caption:'<font style=color:red>[</font><span id="dftree_root_unseen" style="color:red">' + unseen_in_mailbox +'</span><font style=color:red>]</font> ' + get_lang("My Folders")}); 723 //else 724 display_unseen_in_mailbox.alter({ 725 caption:get_lang("My Folders") 726 }); 727 display_unseen_in_mailbox._refresh(); 728 729 var display_unseen_in_shared_folders = tree_folders.getNodeById( 'user' ); 730 if ( display_unseen_in_shared_folders ) 731 { 732 if ( unseen_in_shared_folders ) 733 display_unseen_in_shared_folders.alter({ 734 caption:'<font style=color:red>[</font><span id="dftree_user_unseen" style="color:red">' + unseen_in_shared_folders +'</span><font style=color:red>]</font> ' + get_lang("Shared folders") 735 }); 736 else 737 display_unseen_in_shared_folders.alter({ 738 caption:get_lang("Shared folders") 739 }); 740 display_unseen_in_shared_folders._refresh(); 741 } 742 } 743 744 if (!expresso_offline) { 745 var folder_create = ""; 746 var nm1 = ""; 747 if(tree_folders._folderPr.length > 0){ 748 var nm_folder = ""; 749 for(var i=0; i < tree_folders._folderPr.length; i++){ 750 nm_folder = tree_folders._folderPr[i].split(cyrus_delimiter); 751 if(nm_folder[0] == "INBOX"){ 752 if(nm1 == ""){ 753 nm1 = nm_folder[1]; 754 folder_create = "INBOX" + cyrus_delimiter + nm_folder[1] + ";"; 755 }else{ 756 if( nm1 != nm_folder[1]){ 757 folder_create += "INBOX" + cyrus_delimiter + nm_folder[1] + ";"; 758 nm1 = nm_folder[1]; 505 tmpFolderId = folders[ i ].folder_id.split( cyrus_delimiter ).pop( ); 506 if ( tmpFolderId != folders[ i ].folder_name ) 507 translatedFolders.add( tmpFolderId, folders[ i ].folder_name ); 508 509 var n_root_shared_folders = new dNode( { 510 "id" : 'user', 511 "caption" : get_lang( "Shared folders" ), 512 "plusSign" : true 513 } ); 514 tree_folders.add( n_root_shared_folders, 'root' ); 759 515 } 760 516 } 761 } 762 } 763 } 764 if(folder_create != ""){ 765 if(confirm(get_lang("There are folders with invalid format. Do you want to fix them?"))){ 766 var handler_correct_folders = function(data){ 767 //Timeout to release HTTPRequest , loadScript and update tree folders. 768 if(data) 769 setTimeout("expresso.connector.loadScript('jscode/TreeShow');ttreeBox.update_folder();",500); 517 tree_folders.add( nn, folders[ i ].folder_parent ); 518 } 519 } 520 521 /** 522 * Pastas locais 523 */ 524 if (preferences.use_local_messages==1 || expresso_offline) 525 { 526 if (!window.google || !google.gears) { 527 if (!expresso_local_messages.installGears()) 528 preferences.use_local_messages=0; 529 } 530 else{ 531 if (!window.google || !google.gears) { 532 temp = confirm(get_lang("To use local messages you have to install google gears. Would you like to be redirected to gears installation page?")); 533 if (temp) { 534 location.href = "http://gears.google.com/?action=install&message="+ 535 "Para utilizar o recurso de mensagens locais, instale o google gears&return=" + 536 document.location.href; 537 } 538 else { 539 preferences.use_local_messages=0; 540 } 541 } 542 else{ 543 if (expresso_offline) 544 tree_folders = new dFTree({ 545 "name" : 'tree_folders' 546 }); 547 var root_local = new dNode({ 548 "id" : "local_root", 549 "caption" : get_lang('local folders') 550 }); 551 tree_folders.add(root_local, "root"); //coloca root local 552 var local_folders = expresso_local_messages.list_local_folders(); 553 for (var i in local_folders) { //Coloca as pastas locais. 554 if(!isNaN(i)){ 555 var node_root = "local_root"; 556 var new_caption = local_folders[i][0]; 557 if (local_folders[i][0].indexOf("/") != "-1") { 558 final_pos = local_folders[i][0].lastIndexOf("/"); 559 node_root = "local_" + local_folders[i][0].substr(0, final_pos); 560 new_caption = local_folders[i][0].substr(final_pos + 1); 561 } 562 if (local_folders[i][1] > 0) 563 var nodeLocal = new dNode({ 564 "id": "local_" + local_folders[i][0], 565 "caption": lang_folder(new_caption) + '<font style=color:red> (</font><span id="local_unseen" style=color:red>' + local_folders[i][1] + '</span><font style=color:red>)</font>', 566 "onClick": "change_folder('local_" + local_folders[i][0] + "','" + new_caption + "')", 567 "plusSign": local_folders[i][2] 568 }); 569 else 570 var nodeLocal = new dNode({ 571 "id": "local_" + local_folders[i][0], 572 "caption": lang_folder(new_caption), 573 "onClick": "change_folder('local_" + local_folders[i][0] + "','" + new_caption + "')", 574 "plusSign": local_folders[i][2] 575 }); 576 tree_folders.add(nodeLocal, node_root); 577 } 578 } 579 } 580 } 581 } 582 583 tree_folders.draw( Element( 'content_folders' ) ); 584 if ( ! expresso_offline ) 585 { 586 n_root.changeState( ); 587 folder_select = ( current_folder ? current_folder : "INBOX" ); 588 589 if ( typeof( tree_folders.getNodeById( folder_select ) ) == 'undefined' ) 590 return false; 591 592 tree_folders.getNodeById( folder_select )._select( ); 593 } 594 else 595 { 596 root_local.changeState( ); 597 tree_folders.getNodeById( 'local_Inbox' )._select( ); 598 } 599 600 var trash_span = document.getElementById( 'lINBOX/' + trashfolder + 'tree_folders' ); 601 var draft_span = document.getElementById( 'lINBOX/' + draftsfolder + 'tree_folders' ); 602 var sent_span = document.getElementById( 'lINBOX/' + sentfolder + 'tree_folders' ); 603 var spam_span = document.getElementById( 'lINBOX/' + spamfolder + 'tree_folders' ); 604 605 var folder_img = URL_SERVER + "phpgwapi/templates/" +template + "/images/foldertree_" 606 607 if ( trash_span ) 608 trash_span.style.backgroundImage = "url(" + folder_img + "trash.png)"; 609 610 if ( draft_span ) 611 draft_span.style.backgroundImage = "url(" + folder_img + "draft.png)"; 612 613 if ( sent_span ) 614 sent_span.style.backgroundImage = "url(" + folder_img + "sent.png)"; 615 616 if ( spam_span ) 617 spam_span.style.backgroundImage = "url(" + folder_img + "spam.png)"; 618 619 620 draw_paging( Element( 'tot_m' ).innerHTML ); 621 622 if ( document.getElementById( "nINBOX/" + trashfolder + "tree_folders" ) ) 623 { 624 var trash = document.createElement( "SPAN" ); 625 trash.id = 'empty_trash'; 626 trash.className = 'clean_folder'; 627 trash.style.cursor = 'pointer'; 628 trash.onclick = function( ) 629 { 630 empty_trash_imap( ); 770 631 }; 771 cExecute("expressoMail1_2.imap_functions.create_extra_mailbox",handler_correct_folders,"nw_folders="+folder_create); 772 } 773 } 774 } 632 trash.innerHTML = "[" + get_lang( "Clean" ) + "]"; 633 trash.title = get_lang( "Empty trash" ); 634 trash.onmouseover = function( ) 635 { 636 trash.style.color = "red"; 637 }; 638 trash.onmouseout= function( ) 639 { 640 trash.style.color="#666666"; 641 }; 642 document.getElementById( "nINBOX/" + trashfolder + "tree_folders" ).appendChild( trash ); 643 } 644 if ( document.getElementById( "nINBOX/" + spamfolder + "tree_folders" ) ) 645 { 646 var spam = document.createElement( "SPAN" ); 647 spam.id = 'empty_spam'; 648 spam.className = 'clean_folder'; 649 spam.style.cursor = 'pointer'; 650 spam.style.padding = '0 0 0 6px'; 651 spam.onclick = function( ) 652 { 653 empty_spam_imap( ); 654 }; 655 spam.innerHTML = "[" + get_lang( "Clean" ) + "]"; 656 spam.title = get_lang( "Empty Spam Folder" ); 657 spam.onmouseover = function( ) 658 { 659 spam.style.color = "red"; 660 }; 661 spam.onmouseout = function( ) 662 { 663 spam.style.color = "#666666"; 664 }; 665 document.getElementById( "nINBOX/" + spamfolder + "tree_folders" ).appendChild( spam ); 666 } 667 668 if ( ! expresso_offline ) 669 var display_unseen_in_mailbox = tree_folders.getNodeById( 'root' ); 670 else 671 var display_unseen_in_mailbox = tree_folders.getNodeById( 'local_root' ); 672 673 display_unseen_in_mailbox.alter( { 674 "caption" : get_lang( "My Folders" ) 675 } ); 676 677 display_unseen_in_mailbox._refresh( ); 678 679 var display_unseen_in_shared_folders = tree_folders.getNodeById( 'user' ); 680 681 if ( display_unseen_in_shared_folders ) 682 { 683 if ( unseen_in_shared_folders ) 684 display_unseen_in_shared_folders.alter( { 685 "caption" : '<font style=color:red>[</font><span id="dftree_user_unseen" style="color:red">' 686 + unseen_in_shared_folders 687 + '</span><font style=color:red>]</font> ' 688 + get_lang( "Shared folders" ) 689 } ); 690 else 691 display_unseen_in_shared_folders.alter( { 692 "caption" : get_lang( "Shared folders" ) 693 } ); 694 695 display_unseen_in_shared_folders._refresh( ); 696 } 697 } 698 699 if ( ! expresso_offline ) 700 { 701 var folder_create = ""; 702 var nm1 = ""; 703 if ( tree_folders._folderPr.length > 0 ) 704 { 705 var nm_folder = ""; 706 for ( var i = 0; i < tree_folders._folderPr.length; i++ ) 707 { 708 nm_folder = tree_folders._folderPr[ i ].split( cyrus_delimiter ); 709 if( nm_folder[ 0 ] == "INBOX" ) 710 { 711 if ( nm1 == "" ) 712 { 713 nm1 = nm_folder[ 1 ]; 714 folder_create = "INBOX" + cyrus_delimiter + nm_folder[ 1 ] + ";"; 715 } 716 else 717 { 718 if ( nm1 != nm_folder[ 1 ] ) 719 { 720 folder_create += "INBOX" + cyrus_delimiter + nm_folder[ 1 ] + ";"; 721 nm1 = nm_folder[ 1 ]; 722 } 723 } 724 } 725 } 726 } 727 728 if ( folder_create != "" ) 729 { 730 if ( confirm( get_lang( "There are folders with invalid format. Do you want to fix them?" ) ) ) 731 { 732 var handler_correct_folders = function( data ) 733 { 734 //Timeout to release HTTPRequest , loadScript and update tree folders. 735 if ( data ) 736 setTimeout( "expresso.connector.loadScript('jscode/TreeShow');ttreeBox.update_folder();", 500 ); 737 }; 738 cExecute( "expressoMail1_2.imap_functions.create_extra_mailbox", handler_correct_folders, "nw_folders=" + folder_create ); 739 } 740 } 741 } 775 742 } 776 743
Note: See TracChangeset
for help on using the changeset viewer.