Changeset 18c0db


Ignore:
Timestamp:
Feb 22, 2008, 5:27:27 PM (14 years ago)
Author:
rene <rene@…>
Branches:
master
Children:
bad8ce
Parents:
77bc3c
Message:

shifted Identity-Menu functions, added Storage-Identites to dropdown menu

Location:
chrome/content/v_identity
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • chrome/content/v_identity/vI_msgIdentityClone.js

    r77bc3c r18c0db  
    110110        vI_notificationBar.dump("## vI_msgIdentityClone: setMenuToIdentity MsgIdentityPopup_clone.doCommand()\n");
    111111        vI_msgIdentityClone.elements.Obj_MsgIdentityPopup_clone.doCommand();
     112    },
     113   
     114    addSeparatorToCloneMenu: function() {
     115        var object = vI_msgIdentityClone.elements.Obj_msgIdentityClone;
     116        var separator = document.createElement("menuseparator");
     117        separator.setAttribute("id", "vid_separator");
     118        vI_msgIdentityClone.elements.Obj_MsgIdentityPopup_clone.appendChild(
     119            separator)
     120    },
     121
     122    addIdentityToCloneMenu: function(name, id, smtp) {
     123        var accountname = null; var separator = null;
     124        if (id) {
     125            // if a base-id exists, search the account related to this id
     126            MenuItems = vI_msgIdentityClone.elements.Obj_MsgIdentity_clone.firstChild.childNodes
     127            for (j = 0; j < MenuItems.length; j++) {
     128                if (MenuItems[j].localName == "menuseparator") {
     129                    separator = true; break;
     130                }
     131                if (MenuItems[j].getAttribute("value") == id )
     132                    accountname = MenuItems[j].getAttribute("accountname")
     133            }
     134        }
     135        if (!separator) vI_msgIdentityClone.addSeparatorToCloneMenu();
     136       
     137        if (!accountname) accountname = vI_msgIdentityClone.elements.Obj_MsgIdentity_clone.getAttribute("accountname")
     138        accountname = document.getElementById("prettyName-Prefix").getAttribute("label") + accountname
     139       
     140        vI.helper.addIdentityMenuItem(vI_msgIdentityClone.elements.Obj_MsgIdentityPopup_clone,
     141            name, accountname, "", "vid", id, smtp)
     142    },
     143   
     144    // adds MenuItem for Identities to the cloned Identity-Select Dropdown Menu
     145    addIdentitiesToCloneMenu: function(all_addresses) {
     146        vI_msgIdentityClone.addSeparatorToCloneMenu();
     147        for (index = 0; index < all_addresses.number; index++) {
     148            vI_msgIdentityClone.addIdentityToCloneMenu(
     149                all_addresses.combinedNames[index], all_addresses.id_keys[index], all_addresses.smtp_keys[index])
     150        }
    112151    },
    113152   
  • chrome/content/v_identity/vI_smartIdentity.js

    r77bc3c r18c0db  
    415415   
    416416    smartIdentitySelection : function(all_addresses, autocreate) {
    417         vI_smartIdentity.addSmartIdentitiesToCloneMenu(all_addresses);
     417        vI_msgIdentityClone.addIdentitiesToCloneMenu(all_addresses);
    418418       
    419419        if (!autocreate && vI.preferences.getBoolPref("smart_reply_ask") &&
     
    482482            gMsgCompose.editor.beginningOfDocument();
    483483    },
    484    
    485     // adds MenuItem for SmartIdentities to the Identity-Select Dropdown Menu
    486     // this might get conflicts with other code, so use the cloned Dropdown-Menu instead
    487     addSmartIdentitiesToCloneMenu: function(all_addresses) {
    488         vI.helper.addSeparatorToCloneMenu();
    489         var object = vI_msgIdentityClone.elements.Obj_MsgIdentityPopup_clone
    490         for (index = 0; index < all_addresses.number; index++) {
    491             var accountname = null;
    492             if (all_addresses.id_keys[index]) {
    493                 MenuItems = vI_msgIdentityClone.elements.Obj_MsgIdentity.firstChild.childNodes
    494                 for (j = 0; j < MenuItems.length; j++) {
    495                     if ( MenuItems[j].getAttribute("value") == all_addresses.id_keys[index] ) {
    496                         accountname = MenuItems[j].getAttribute("accountname")
    497                         break;
    498                     }
    499                 }
    500             }
    501             if (!accountname) accountname = vI_msgIdentityClone.elements.Obj_MsgIdentity_clone.getAttribute("accountname")
    502             accountname = document.getElementById("prettyName-Prefix").getAttribute("label") + accountname
    503            
    504             vI.helper.addIdentityMenuItem(object, all_addresses.combinedNames[index],
    505                 accountname, "", "vid",
    506                 all_addresses.id_keys[index],
    507                 all_addresses.smtp_keys[index])
    508         }
    509     },
    510484}
  • chrome/content/v_identity/vI_storage.js

    r77bc3c r18c0db  
    158158                vI_storage.firstUsedStorageData.id != storageData.id ||
    159159                vI_storage.firstUsedStorageData.smtp != storageData.smtp ) {
    160                     // XX add Identity to dropdown-menu
     160                    // add Identity to dropdown-menu
     161                    vI_msgIdentityClone.addIdentityToCloneMenu(
     162                        vI_storage.__combineNames(storageData.fullName, storageData.email),
     163                        storageData.id, storageData.smtp)
    161164                    vI_notificationBar.setNote(vI.elements.strings.getString("vident.smartIdentity.vIStorageCollidingIdentity"),
    162165                    "storage_notification");
     
    165168        // only update fields if new Identity is different than old one.
    166169        else if (!vI_storage.__equalsCurrentIdentity(storageData)) {
    167             // XX add Identity to dropdown-menu
     170            // add Identity to dropdown-menu
     171            vI_msgIdentityClone.addIdentityToCloneMenu(
     172                vI_storage.__combineNames(storageData.fullName, storageData.email),
     173                storageData.id, storageData.smtp)
    168174            var warning = vI_storage.__getReplaceVIdentityWarning(recipient, storageData);
    169175            if (    vI_msgIdentityClone.elements.Obj_MsgIdentity_clone.getAttribute("value") != "vid" ||
     
    172178                    vI_msgIdentityClone.setMenuToIdentity(storageData.id)
    173179                    vI_smtpSelector.setMenuToKey(storageData.smtp)
    174                     if (vI_msgIdentityClone.setIdentity(storageData.fullName + "<" + storageData.email + ">"))
     180                    if (vI_msgIdentityClone.setIdentity(
     181                        vI_storage.__combineNames(storageData.fullName, storageData.email)))
    175182                    vI_notificationBar.setNote(vI.elements.strings.getString("vident.smartIdentity.vIStorageUsage") + ".",
    176183                        "storage_notification");
  • chrome/content/v_identity/v_identity.js

    r77bc3c r18c0db  
    4848           
    4949            return MenuItem
    50         },
    51 
    52         addSeparatorToCloneMenu: function() {
    53             var object = vI_msgIdentityClone.elements.Obj_msgIdentityClone;
    54             var separator = document.createElement("menuseparator");
    55             separator.setAttribute("id", "vid_separator");
    56             vI_msgIdentityClone.elements.Obj_MsgIdentityPopup_clone.appendChild(
    57                 separator)
    5850        },
    5951
Note: See TracChangeset for help on using the changeset viewer.