Changeset e35d8e


Ignore:
Timestamp:
Jan 29, 2008, 8:10:05 AM (13 years ago)
Author:
rene <rene@…>
Branches:
master
Children:
524c35
Parents:
61e69b
Message:

Merged rdf-branch changes r86:102 into the trunk

Files:
9 added
33 deleted
19 edited

Legend:

Unmodified
Added
Removed
  • chrome.manifest

    r61e69b re35d8e  
    11content v_identity jar:chrome/v_identity.jar!/content/v_identity/
    22locale  v_identity  en-US   jar:chrome/v_identity.jar!/locale/en-US/v_identity/
    3 locale  v_identity  de-DE   jar:chrome/v_identity.jar!/locale/de-DE/v_identity/
    4 locale  v_identity  es-ES   jar:chrome/v_identity.jar!/locale/es-ES/v_identity/
    5 locale  v_identity  fr-FR   jar:chrome/v_identity.jar!/locale/fr-FR/v_identity/
    6 locale  v_identity  cs-CZ   jar:chrome/v_identity.jar!/locale/cs-CZ/v_identity/
    7 locale  v_identity  it-IT   jar:chrome/v_identity.jar!/locale/it-IT/v_identity/
    8 locale  v_identity  nl-NL   jar:chrome/v_identity.jar!/locale/nl-NL/v_identity/
    9 locale  v_identity  ko-KR   jar:chrome/v_identity.jar!/locale/ko-KR/v_identity/
    10 locale  v_identity  sk-SK   jar:chrome/v_identity.jar!/locale/sk-SK/v_identity/
    113skin    v_identity  classic/1.0 jar:chrome/v_identity.jar!/skin/classic/v_identity/
    124overlay chrome://messenger/content/messengercompose/messengercompose.xul    chrome://v_identity/content/v_identity.xul
    135overlay chrome://messenger/content/messengercompose/messengercompose.xul    chrome://v_identity/content/vI_context.xul
    146overlay chrome://messenger/content/messenger.xul                chrome://v_identity/content/vI_context.xul
     7overlay chrome://messenger/content/messenger.xul                chrome://v_identity/content/vI_upgradeOverlay.xul
    158overlay chrome://messenger/content/mailWindowOverlay.xul            chrome://v_identity/content/vI_getHeader.xul
  • chrome/content/v_identity/_version.dtd

    r61e69b re35d8e  
    1 <!ENTITY vident.version "0.4.5pre3">
     1<!ENTITY vident.version "0.4.5pre4">
  • chrome/content/v_identity/contents.rdf

    r61e69b re35d8e  
    3232    <RDF:Seq about="chrome://messenger/content/messenger.xul">
    3333      <RDF:li>chrome://v_identity/content/vI_context.xul</RDF:li>
     34      <RDF:li>chrome://v_identity/content/vI_upgradeOverlay.xul</RDF:li>
    3435    </RDF:Seq>
    3536
  • chrome/content/v_identity/vI_account.js

    r61e69b re35d8e  
    2626    account : null,
    2727   
     28    AccountManager : Components.classes["@mozilla.org/messenger/account-manager;1"]
     29        .getService(Components.interfaces.nsIMsgAccountManager),
     30
     31   
     32    prefroot : Components.classes["@mozilla.org/preferences-service;1"]
     33        .getService(Components.interfaces.nsIPrefService)
     34        .getBranch(null),
     35
    2836    _copyBoolAttribute : function(name) {
    2937        vI_account.account.defaultIdentity.setBoolAttribute(name,
     
    7684        }
    7785    },
    78    
    79     removeAccount : function() {
     86       
     87    cleanupSystem : function() {
     88        vI_notificationBar.dump("## vI_account: cleanupSystem:\n")
     89        for (var i=0; i < vI_account.AccountManager.accounts.Count(); i++) {
     90            var account = vI_account.AccountManager.accounts.QueryElementAt(i, Components.interfaces.nsIMsgAccount);
     91            vI_account.removeAccount(account);
     92        }
     93        vI_notificationBar.dump("## vI_account: cleanupSystem done.\n")
     94    },
     95   
     96    removeAccount : function(account) {
     97        var key = account.key;
     98        var server = account.incomingServer;
     99        if (!server || server.hostName != "virtualIdentity") {
     100            try {   vI_account.prefroot.getBoolPref("mail.account." + account.key + ".vIdentity");
     101                account.incomingServer = vI_account.AccountManager.
     102                            createIncomingServer("toRemove","virtualIdentity","pop3");
     103            } catch (e) { return; };
     104        }
     105        try { account.incomingServer.rootFolder.Delete(); }
     106        catch (e) { };
     107        vI_notificationBar.dump("## vI_account: removing account " + key + ".\n")
     108        vI_account.AccountManager.removeAccount(account);
     109        try { vI_account.prefroot.clearUserPref("mail.account." + key + ".vIdentity");  }
     110        catch (e) { };
     111    },
     112   
     113    removeUsedVIAccount : function() {
    80114        if (vI_account.account) {
    81             vI_account.account.incomingServer = gAccountManager.createIncomingServer("toRemove","virtualIdentity","pop3");
    82             //~ try { vI_account.account.incomingServer.rootFolder.Delete(); }
    83             //~ catch (e) { };
    84            
    85             gAccountManager.removeAccount(vI_account.account);
     115            vI_account.removeAccount(vI_account.account);
    86116            vI_account.account = null;
    87117        }
     
    95125        }
    96126       
     127        vI_account.cleanupSystem();
     128       
    97129        /*
    98130        // the easiest way would be to get all requiered Attributes might be to duplicate the default account like this
    99         var recentAccount = gAccountManager.getAccount(vI.elements.Obj_MsgIdentity.selectedItem.getAttribute("accountkey"));
    100         vI.VIdent_Account = gAccountManager.duplicateAccount(recentAccount);
     131        var recentAccount = vI_account.AccountManager.getAccount(vI.elements.Obj_MsgIdentity.selectedItem.getAttribute("accountkey"));
     132        vI.VIdent_Account = vI_account.AccountManager.duplicateAccount(recentAccount);
    101133        // but this ends up in the following exception:
    102134        // "Component returned failure code: 0x80004001 (NS_ERROR_NOT_IMPLEMENTED) [nsIMsgAccountManager.duplicateAccount]"
     
    104136        */
    105137       
    106         vI_account.account = gAccountManager.createAccount();
    107        
    108         vI_account.account.addIdentity(gAccountManager.createIdentity());
     138        vI_account.account = vI_account.AccountManager.createAccount();
     139        vI_account.prefroot.setBoolPref("mail.account." + vI_account.account.key + ".vIdentity", true)
     140       
     141        vI_account.account.addIdentity(vI_account.AccountManager.createIdentity());
    109142   
    110143        // the new account uses the same incomingServer than the base one, has to be replaced before the account is removed
    111         var servers = gAccountManager.GetServersForIdentity(vI.helper.getBaseIdentity());
     144        var servers = vI_account.AccountManager.GetServersForIdentity(vI.helper.getBaseIdentity());
    112145        vI_account.account.incomingServer = servers.QueryElementAt(0, Components.interfaces.nsIMsgIncomingServer);
    113146       
     
    141174                case "2"  :
    142175                dump ("## vI_account: preparing Fcc --- use Settings of Default Account\n");
    143                 vI_account.account.defaultIdentity.doFcc = gAccountManager.defaultAccount.defaultIdentity.doFcc;
    144                 vI_account.account.defaultIdentity.fccFolder = gAccountManager.defaultAccount.defaultIdentity.fccFolder;
    145                 vI_account.account.defaultIdentity.fccFolderPickerMode = gAccountManager.defaultAccount.defaultIdentity.fccFolderPickerMode;
     176                vI_account.account.defaultIdentity.doFcc = vI_account.AccountManager.defaultAccount.defaultIdentity.doFcc;
     177                vI_account.account.defaultIdentity.fccFolder = vI_account.AccountManager.defaultAccount.defaultIdentity.fccFolder;
     178                vI_account.account.defaultIdentity.fccFolderPickerMode = vI_account.AccountManager.defaultAccount.defaultIdentity.fccFolderPickerMode;
    146179                break;
    147180                case "3"  :
     
    177210            case "2"  :
    178211            dump ("## vI_account: preparing Draft --- use Settings of Default Account\n");
    179             vI_account.account.defaultIdentity.draftFolder = gAccountManager.defaultAccount.defaultIdentity.draftFolder;
    180             vI_account.account.defaultIdentity.draftsFolderPickerMode = gAccountManager.defaultAccount.defaultIdentity.draftsFolderPickerMode;
     212            vI_account.account.defaultIdentity.draftFolder = vI_account.AccountManager.defaultAccount.defaultIdentity.draftFolder;
     213            vI_account.account.defaultIdentity.draftsFolderPickerMode = vI_account.AccountManager.defaultAccount.defaultIdentity.draftsFolderPickerMode;
    181214            break;
    182215            case "3"  :
     
    204237            case "2"  :
    205238            dump ("## vI_account: preparing Templates --- use Settings of Default Account\n");
    206             vI_account.account.defaultIdentity.stationeryFolder = gAccountManager.defaultAccount.defaultIdentity.stationeryFolder;
    207             vI_account.account.defaultIdentity.tmplFolderPickerMode = gAccountManager.defaultAccount.defaultIdentity.tmplFolderPickerMode;
     239            vI_account.account.defaultIdentity.stationeryFolder = vI_account.AccountManager.defaultAccount.defaultIdentity.stationeryFolder;
     240            vI_account.account.defaultIdentity.tmplFolderPickerMode = vI_account.AccountManager.defaultAccount.defaultIdentity.tmplFolderPickerMode;
    208241            break;
    209242            case "3"  :
  • chrome/content/v_identity/vI_msgIdentityClone.js

    r61e69b re35d8e  
    304304                }
    305305                vI.elements.Obj_vILogo.setAttribute("hidden","false");
    306                 vI_addressBook.elements.Obj_aBookSave.setAttribute("hidden",
    307                     !vI.preferences.getBoolPref("aBook_show_switch") ||
    308                     !vI.preferences.getBoolPref("aBook_use"));
     306                //~ vI_storage.elements.Obj_storageSave.setAttribute("hidden",
     307                    //~ !vI.preferences.getBoolPref("storage_show_switch"));
    309308            }
    310309            // code to hide the signature
     
    323322                vI.Cleanup();
    324323                vI.elements.Obj_vILogo.setAttribute("hidden","true");
    325                 vI_addressBook.elements.Obj_aBookSave.setAttribute("hidden",
    326                     !vI.preferences.getBoolPref("aBook_show_switch") ||
    327                     !vI.preferences.getBoolPref("aBook_use_non_vI") ||
    328                     !vI.preferences.getBoolPref("aBook_use"));
     324                //~ vI_storage.elements.Obj_storageSave.setAttribute("hidden",
     325                    //~ !vI.preferences.getBoolPref("storage_show_switch"));
    329326                vI_msgIdentityClone.elements.Obj_MsgIdentity_clone
    330327                    .setAttribute("oldvalue",null)
     
    346343        var accounts = queryISupportsArray(gAccountManager.accounts, Components.interfaces.nsIMsgAccount);
    347344        for (var i in accounts) {
    348             var server = accounts[i].incomingServer;
    349                 //  ignore (other) virtualIdentity Accounts
    350                 if (!server || server.hostName == "virtualIdentity") continue;
    351                
     345            var server = accounts[i].incomingServer;               
    352346                var identites = queryISupportsArray(accounts[i].identities, Components.interfaces.nsIMsgIdentity);
    353347                for (var j in identites) {
    354348                    var identity = identites[j];
    355349                    var smtpKey = identity.smtpServerKey;
    356                     if (!identity.smtpServerKey) smtpKey = accounts[i].defaultIdentity.smtpServerKey;
    357                     if (!identity.smtpServerKey) smtpKey = vI_smtpSelector.smtpService.defaultServer.key;
    358350                    if (    identity.getUnicharAttribute("fullName") == address.name &&
    359351                        identity.getUnicharAttribute("useremail") == address.email &&
  • chrome/content/v_identity/vI_notificationBar.js

    r61e69b re35d8e  
    5252    },
    5353
    54     init : function() {
     54    init : function(upgrade) {
    5555        vI_notificationBar.Obj_vINotification = document.getElementById("vINotification");
     56        vI_notificationBar.Obj_DebugBox = document.getElementById("vIDebugBox");
    5657        vI_notificationBar.checkVersion();
    57         if (!vI_notificationBar.preferences.getBoolPref("debug_notification")) return;
    58         vI_notificationBar.Obj_DebugBox = document.getElementById("vIDebugBox");
     58        if (upgrade || !vI_notificationBar.preferences.getBoolPref("debug_notification")) return;
    5959        vI_notificationBar.Obj_DebugBox.setAttribute("hidden","false");
    6060        document.getElementById("vIDebugBoxSplitter").setAttribute("hidden","false");
     
    115115    },
    116116   
     117    dumpUpgrade : function(note) {
     118        vI_notificationBar.__dump(note, true);
     119    },
     120   
    117121    dump : function(note) {
    118122        if (!vI_notificationBar.preferences.getBoolPref("debug_notification")) {
     
    123127            return
    124128        }
     129        vI_notificationBar.__dump(note, false);
     130    },
     131   
     132    __dump : function (note, upgrade) {
    125133        dump(note);
    126         if (!vI_notificationBar.Obj_DebugBox) vI_notificationBar.init();
     134        if (!vI_notificationBar.Obj_DebugBox) vI_notificationBar.init(upgrade);
    127135        if (!vI_notificationBar.Obj_DebugBox) return;
    128136        var new_text = document.createTextNode(note);
     
    132140        vI_notificationBar.Obj_DebugBox.inputField.scrollTop =
    133141            vI_notificationBar.Obj_DebugBox.inputField.scrollHeight - vI_notificationBar.Obj_DebugBox.inputField.clientHeight
     142   
    134143    },
    135144   
     
    147156        vI_notificationBar.dump("** " + note + "\n");
    148157        if (!vI_notificationBar.preferences.getBoolPref(prefstring)) return;
    149         if (!vI_notificationBar.Obj_vINotification) vI_notificationBar.init();
     158        if (!vI_notificationBar.Obj_vINotification) vI_notificationBar.init(false);
    150159        if (!vI_notificationBar.versionOk) return;
    151160        if (vI_notificationBar.timer) window.clearTimeout(vI_notificationBar.timer);
  • chrome/content/v_identity/vI_prefDialog.js

    r61e69b re35d8e  
    6767                "VIdent_identity.warn_virtual",
    6868                "VIdent_identity.hide_signature",
    69                 "VIdent_identity.aBook_use",
    70                 "VIdent_identity.aBook_storedefault",
    71                 "VIdent_identity.aBook_dont_update_multiple",
    72                 "VIdent_identity.aBook_show_switch",
    73                 "VIdent_identity.aBook_warn_update",
    74                 "VIdent_identity.aBook_use_for_smart_reply",
    75                 "VIdent_identity.aBook_prefer_smart_reply",
    76                 "VIdent_identity.aBook_ignore_smart_reply",
    77                 "VIdent_identity.aBook_warn_vI_replace",
    78                 "VIdent_identity.aBook_use_non_vI",
    79                 "VIdent_identity.aBook_notification",
    80                 "VIdent_identity.aBook_getOneOnly",
     69                "VIdent_identity.storage_storedefault",
     70                "VIdent_identity.storage_dont_update_multiple",
     71                "VIdent_identity.storage_show_switch",
     72                "VIdent_identity.storage_warn_update",
     73                "VIdent_identity.storage_use_for_smart_reply",
     74                "VIdent_identity.storage_prefer_smart_reply",
     75                "VIdent_identity.storage_ignore_smart_reply",
     76                "VIdent_identity.storage_warn_vI_replace",
     77                "VIdent_identity.storage_notification",
     78                "VIdent_identity.storage_getOneOnly",
    8179                "VIdent_identity.autoReplyToSelf"],
    8280   
     
    139137                "VIdent_identity.smart_reply_autocreate",
    140138                "VIdent_identity.smart_reply_headers_reset",
    141                 "VIdent_identity.aBook_use_for_smart_reply",
    142                 "VIdent_identity.aBook_prefer_smart_reply",
    143                 "VIdent_identity.aBook_ignore_smart_reply",
    144                 "aBookTab2",
     139                "VIdent_identity.storage_use_for_smart_reply",
     140                "VIdent_identity.storage_prefer_smart_reply",
     141                "VIdent_identity.storage_ignore_smart_reply",
     142                "storageTab2",
    145143                "smartReplyTab", "smartReplyTab1", "smartReplyTab2", "smartReplyTab3"];
    146144            for( var i = 0; i < elementIDs.length; i++ ) {
     
    154152            vI_prefDialog.base.smartReplyResultConstraint();
    155153        },
    156 
    157         aBookConstraint : function(element) {
    158             var elementIDs = [
    159                 "VIdent_identity.aBook_storedefault",
    160                 "VIdent_identity.aBook_show_switch",
    161                 "VIdent_identity.aBook_warn_update",
    162                 "VIdent_identity.aBook_use_for_smart_reply",
    163                 "VIdent_identity.aBook_prefer_smart_reply",
    164                 "VIdent_identity.aBook_ignore_smart_reply",
    165                 "VIdent_identity.aBook_warn_vI_replace",
    166                 "VIdent_identity.aBook_remove_entries",
    167                 "VIdent_identity.aBook_use_non_vI",
    168                 "VIdent_identity.aBook_dont_update_multiple",
    169                 "VIdent_identity.aBook_getOneOnly",
    170                 "aBookTab", "aBookTab1", "aBookTab2", "aBookTab3"];
    171             for( var i = 0; i < elementIDs.length; i++ ) {
    172                 if (element.checked)
    173                     document.getElementById(elementIDs[i])
    174                         .removeAttribute("disabled");
    175                 else
    176                     document.getElementById(elementIDs[i])
    177                         .setAttribute("disabled", "true");
    178             }
    179             vI_prefDialog.base.aBookSmartReplyConstraint();
    180             vI_prefDialog.base.aBookCheckCounter();
    181         },
    182154       
    183155        smartReplyResultConstraint : function() {
     
    193165        },
    194166       
    195         aBookSmartReplyConstraint : function() {
    196             if (!document.getElementById("VIdent_identity.aBook_use").checked) return;
    197             var use_for_smart_reply = document.getElementById("VIdent_identity.aBook_use_for_smart_reply")
    198             var prefer_smart_reply = document.getElementById("VIdent_identity.aBook_prefer_smart_reply")
    199             var ignore_smart_reply = document.getElementById("VIdent_identity.aBook_ignore_smart_reply")
     167        storageSmartReplyConstraint : function() {
     168            var use_for_smart_reply = document.getElementById("VIdent_identity.storage_use_for_smart_reply")
     169            var prefer_smart_reply = document.getElementById("VIdent_identity.storage_prefer_smart_reply")
     170            var ignore_smart_reply = document.getElementById("VIdent_identity.storage_ignore_smart_reply")
    200171            prefer_smart_reply.setAttribute("disabled", !use_for_smart_reply.checked)
    201172            ignore_smart_reply.setAttribute("disabled", !use_for_smart_reply.checked)
     
    204175        smartReplyHeaderReset : function() {
    205176            var textfield = document.getElementById("VIdent_identity.smart_reply_headers")
    206             textfield.value = "x-original-to\nto\ncc"
     177            textfield.value = "envelope-to\nx-original-to\nto\ncc"
    207178        },
    208179       
     
    229200            document.getElementById("VIdent_identity.hide_signature").setAttribute("disabled", "false");
    230201        },
    231        
    232         aBookCheckCounter : function() {
    233             var aBookStatus = document.getElementById("VIdent_identity.aBook_status");
    234             var strings = document.getElementById("vIdentBundle");
    235             var number = vI_addressBook.removeVIdentityFromABook(false);
    236             var statusString = "";
    237             if (number > 0)
    238                 statusString = strings.getString("vident.clearAddressBook.status.prefix") + " " + number + " " +
    239                     strings.getString("vident.clearAddressBook.status.postfix")
    240             else    {
    241                 statusString = strings.getString("vident.clearAddressBook.status.none")
    242                 document.getElementById("VIdent_identity.aBook_remove_entries").setAttribute("disabled", "true")
    243             }
    244             aBookStatus.setAttribute("value", statusString);
    245         }
    246202    },
    247203
     
    280236        vI_prefDialog.base.smartReplyConstraint(document.getElementById("VIdent_identity.smart_reply"));
    281237        vI_prefDialog.base.smartReplyHideSignature();
    282         vI_prefDialog.base.aBookConstraint(document.getElementById("VIdent_identity.aBook_use"));
    283         window.setTimeout(vI_prefDialog.base.aBookCheckCounter, 0); // do this in background, cause this might take a while
    284238       
    285239        //~ if (vI_prefDialog.preferences.getBoolPref("experimental")){
  • chrome/content/v_identity/vI_prefDialog.xul

    r61e69b re35d8e  
    4949<script type="application/x-javascript"
    5050            src="chrome://v_identity/content/vI_prefDialog.js" />
    51 <script type="application/x-javascript"
    52             src="chrome://v_identity/content/vI_addressBook.js" />
    5351
    5452  <stringbundleset id="stringbundleset">
     
    8583        <tab label="&vident.prefs.vIdentityTab.label;" />
    8684        <tab id="smartReplyTab" label="&vident.prefs.smartReplyTab.label;" />
    87         <tab id="aBookTab" label="&vident.prefs.aBookTab.label;" />
     85        <tab id="storageTab" label="&vident.prefs.storageTab.label;" />
    8886        <tab label="&vident.prefs.notificationTab.label;" />
    8987    </tabs>
     
    106104            <checkbox id="VIdent_identity.smart_timestamp" label="&vident.prefs.smartTimestamp.label;"
    107105                prefstring="smart_timestamp" />
    108             <checkbox id="VIdent_identity.aBook_use" label="&vident.prefs.aBook.label;"
    109                 prefstring="aBook_use"
    110                 oncommand="vI_prefDialog.base.aBookConstraint(this);"
    111                 />
    112             <hbox><spacer width="20px"/><checkbox id="VIdent_identity.aBook_use_non_vI" label="&vident.prefs.aBookNonVIdentity.label;"
    113                 prefstring="aBook_use_non_vI" />
    114             </hbox>             
    115106            <spacer height="10px"/>
    116107            <checkbox id="VIdent_identity.show_smtp" label="&vident.prefs.SMTP.label;"
     
    361352        </tabbox>
    362353    </tabpanel>
    363     <tabpanel orient="vertical" label="&vident.prefs.aBookTab.header;">
    364         <dialogheader title="&vident.prefs.aBookTab.header;"/>
     354    <tabpanel orient="vertical" label="&vident.prefs.storageTab.header;">
     355        <dialogheader title="&vident.prefs.storageTab.header;"/>
    365356        <tabbox>
    366357        <tabs>
    367             <tab id="aBookTab1" label="&vident.prefs.aBookTab.Tab1.label;" />
    368             <tab id="aBookTab2" label="&vident.prefs.aBookTab.Tab2.label;" />
    369             <tab id="aBookTab3" label="&vident.prefs.aBookTab.Tab3.label;" />
     358            <tab id="storageTab1" label="&vident.prefs.storageTab.Tab1.label;" />
     359            <tab id="storageTab2" label="&vident.prefs.storageTab.Tab2.label;" />
    370360        </tabs>
    371361        <tabpanels>
    372362            <tabpanel orient="vertical">
    373363            <groupbox>
    374             <caption label="&vident.prefs.aBookCap1.caption;"/>
    375             <vbox align="left">
    376                 <checkbox id="VIdent_identity.aBook_storedefault" label="&vident.prefs.aBook.storedefault.label;"
    377                     prefstring="aBook_storedefault"/>
    378                 <checkbox id="VIdent_identity.aBook_show_switch" label="&vident.prefs.aBook.show_switch.label;"
    379                     prefstring="aBook_show_switch"/>
    380                 <checkbox id="VIdent_identity.aBook_warn_update" label="&vident.prefs.aBook.warn_update.label;"
    381                     prefstring="aBook_warn_update"/>
    382                 <checkbox id="VIdent_identity.aBook_dont_update_multiple" label="&vident.prefs.aBook.dont_update_multiple.label;"
    383                     prefstring="aBook_dont_update_multiple"/>
    384             </vbox>
    385             </groupbox>
    386             <groupbox>
    387             <caption label="&vident.prefs.aBookCap2.caption;"/>
    388             <vbox align="left">
    389                 <checkbox id="VIdent_identity.aBook_warn_vI_replace" label="&vident.prefs.aBook.warn_vI_replace.label;"
    390                     prefstring="aBook_warn_vI_replace"/>
    391                 <checkbox id="VIdent_identity.aBook_getOneOnly" label="&vident.prefs.aBook.get_One_Only.label;"
    392                     prefstring="aBook_getOneOnly"/>
     364            <caption label="&vident.prefs.storageCap1.caption;"/>
     365            <vbox align="left">
     366                <checkbox id="VIdent_identity.storage_storedefault" label="&vident.prefs.storage.storedefault.label;"
     367                    prefstring="storage_storedefault"/>
     368                <checkbox id="VIdent_identity.storage_show_switch" label="&vident.prefs.storage.show_switch.label;"
     369                    prefstring="storage_show_switch"/>
     370                <checkbox id="VIdent_identity.storage_warn_update" label="&vident.prefs.storage.warn_update.label;"
     371                    prefstring="storage_warn_update"/>
     372                <checkbox id="VIdent_identity.storage_dont_update_multiple" label="&vident.prefs.storage.dont_update_multiple.label;"
     373                    prefstring="storage_dont_update_multiple"/>
     374            </vbox>
     375            </groupbox>
     376            <groupbox>
     377            <caption label="&vident.prefs.storageCap2.caption;"/>
     378            <vbox align="left">
     379                <checkbox id="VIdent_identity.storage_warn_vI_replace" label="&vident.prefs.storage.warn_vI_replace.label;"
     380                    prefstring="storage_warn_vI_replace"/>
     381                <checkbox id="VIdent_identity.storage_getOneOnly" label="&vident.prefs.storage.get_One_Only.label;"
     382                    prefstring="storage_getOneOnly"/>
    393383            </vbox>
    394384            </groupbox>
     
    396386            <tabpanel orient="vertical">
    397387            <groupbox>
    398             <caption label="&vident.prefs.aBookCap3.caption;"/>
    399             <vbox align="left">
    400                 <description width="500px">&vident.prefs.aBook.reply.desc;</description>
    401                 <checkbox id="VIdent_identity.aBook_use_for_smart_reply" label="&vident.prefs.aBook.use_for_smart_reply.label;"
    402                     prefstring="aBook_use_for_smart_reply"
    403                     oncommand="vI_prefDialog.base.aBookSmartReplyConstraint();" />
    404                 <hbox><spacer width="20px"/><checkbox id="VIdent_identity.aBook_prefer_smart_reply" label="&vident.prefs.aBook.prefer_smart_reply.label;"
    405                     prefstring="aBook_prefer_smart_reply"/>
    406                 </hbox>
    407                 <hbox><spacer width="20px"/><checkbox id="VIdent_identity.aBook_ignore_smart_reply" label="&vident.prefs.aBook.ignore_smart_reply.label;"
    408                     prefstring="aBook_ignore_smart_reply"/>
    409                 </hbox>
    410             </vbox>
    411             </groupbox>
    412             </tabpanel>
    413             <tabpanel orient="vertical">
    414             <groupbox>
    415             <caption label="&vident.prefs.aBookCap4.caption;"/>
    416             <vbox align="left">
    417                 <vbox><description width="500px">&vident.prefs.aBook.remove_entries.desc;</description>
    418                 <spacer height="10px" />
    419                 <label id="VIdent_identity.aBook_status" />
    420                 <hbox><spacer flex="1"/>
    421                 <button id="VIdent_identity.aBook_remove_entries" label="&vident.prefs.aBook.remove_entries.remove;"
    422                     oncommand="vI_addressBook.removeVIdentityFromABook(true);vI_prefDialog.base.aBookCheckCounter();"/>
    423                 <spacer flex="1"/></hbox>
    424                 </vbox>
     388            <caption label="&vident.prefs.storageCap3.caption;"/>
     389            <vbox align="left">
     390                <description width="500px">&vident.prefs.storage.reply.desc;</description>
     391                <checkbox id="VIdent_identity.storage_use_for_smart_reply" label="&vident.prefs.storage.use_for_smart_reply.label;"
     392                    prefstring="storage_use_for_smart_reply"
     393                    oncommand="vI_prefDialog.base.storageSmartReplyConstraint();" />
     394                <hbox><spacer width="20px"/><checkbox id="VIdent_identity.storage_prefer_smart_reply" label="&vident.prefs.storage.prefer_smart_reply.label;"
     395                    prefstring="storage_prefer_smart_reply"/>
     396                </hbox>
     397                <hbox><spacer width="20px"/><checkbox id="VIdent_identity.storage_ignore_smart_reply" label="&vident.prefs.storage.ignore_smart_reply.label;"
     398                    prefstring="storage_ignore_smart_reply"/>
     399                </hbox>
    425400            </vbox>
    426401            </groupbox>
     
    438413            <checkbox id="VIdent_identity.smart_reply_notification" label="&vident.prefs.notifySmartIdentity.label;"
    439414                prefstring="smart_reply_notification"/>
    440             <checkbox id="VIdent_identity.aBook_notification" label="&vident.prefs.notifyABook.label;"
    441                 prefstring="aBook_notification"/>
     415            <checkbox id="VIdent_identity.storage_notification" label="&vident.prefs.notifystorage.label;"
     416                prefstring="storage_notification"/>
    442417            <hbox>
    443418            <vbox><spacer flex="1"/><label value="&vident.prefs.notifyTime.prefix.label;" /><spacer flex="1"/></vbox>
  • chrome/content/v_identity/vI_smartIdentity.js

    r61e69b re35d8e  
    7474            case msgComposeType.NewsPost:
    7575            case msgComposeType.MailToUrl:
    76                 if (vI.preferences.getBoolPref("aBook_use"))
    77                     vI_smartIdentity.queryABook();
     76                if (vI.preferences.getBoolPref("storeVIdentity"))
     77                    vI_smartIdentity.queryStorage();
    7878                if (vI.preferences.getBoolPref("smart_timestamp"))
    7979                    vI_smartIdentity.SmartTimestamp();
     
    8383    },
    8484   
    85     // this function creates a list of possible sender addresses from Addressbook and uses them (according to SmartReply behaivior)
    86     queryABook : function() {
     85    // this function creates a list of possible sender addresses from Storage and uses them (according to SmartReply behaivior)
     86    queryStorage : function() {
    8787        var all_addresses = { number : 0, emails : {}, fullNames : {}, combinedNames : {}, id_keys : {}, smtp_keys : {} };
    88         vI_addressBook.getVIdentityFromAllRecipients(all_addresses);
    89         vI_notificationBar.dump("## vI_smartIdentity: checked for Addressbook-Identities and found " + all_addresses.number + " address(es)\n")
     88        vI_storage.getVIdentityFromAllRecipients(all_addresses);
     89        vI_notificationBar.dump("## vI_smartIdentity: checked for stored VIdentities and found " + all_addresses.number + " address(es)\n")
    9090        if (all_addresses.number > 0) vI_smartIdentity.smartIdentitySelection(all_addresses, false);
    9191    },
     
    128128        else vI_notificationBar.dump("## vI_smartIdentity: SmartDraft: No Header found, shouldn't happen\n");
    129129       
    130         var aBook_addresses = { number : 0, emails : {}, fullNames : {}, combinedNames : {}, id_keys : {}, smtp_keys : {} };
    131         vI_addressBook.getVIdentityFromAllRecipients(aBook_addresses);
    132        
    133         vI_notificationBar.dump("## vI_smartIdentity: checked for Addressbook-Identities and found " + aBook_addresses.number + " address(es)\n")
    134        
    135         all_addresses = vI_smartIdentity.mergeWithoutDuplicates(all_addresses, aBook_addresses);
     130        var storage_addresses = { number : 0, emails : {}, fullNames : {}, combinedNames : {}, id_keys : {}, smtp_keys : {} };
     131        vI_storage.getVIdentityFromAllRecipients(storage_addresses);
     132       
     133        vI_notificationBar.dump("## vI_smartIdentity: checked for stored VIdentities and found " + storage_addresses.number + " address(es)\n")
     134       
     135        all_addresses = vI_smartIdentity.mergeWithoutDuplicates(all_addresses, storage_addresses);
    136136           
    137137        vI_smartIdentity.smartIdentitySelection(all_addresses, true);
     
    164164        for (var i in accounts) {
    165165            var server = accounts[i].incomingServer;
    166             //  ignore (other) virtualIdentity Accounts
    167             if (!server || server.hostName == "virtualIdentity") continue;
    168166            // ignore newsgroup accounts if not selected in preferences
    169167            if (!vI.preferences.getBoolPref("smart_reply_for_newsgroups") &&
     
    251249        for (index = 0; index < all_addresses.number; index++) {
    252250            if (all_addresses.emails[index] == email &&
    253                 (!all_addresses.id_keys[index] || !id_key || all_addresses.id_keys[index] == id_key) &&
    254                 (!all_addresses.smtp_keys[index] || !smtp_key || all_addresses.smtp_keys[index] == smtp_key) ) {
     251                (!all_addresses.id_keys[index] || !id_key ||
     252                    (all_addresses.id_keys[index] == id_key && all_addresses.smtp_keys[index] == smtp_key))) {
    255253                // found, so check if we can use the Name of the new field
    256254                if (all_addresses.fullNames[index] == "" && fullName != "") {
     
    261259                }
    262260                // check if id_key or smtp_key can be used
    263                 if (id_key) {
     261                if (!all_addresses.id_keys[index] && id_key) {
    264262                    all_addresses.id_keys[index] = id_key;
    265                     vI_notificationBar.dump("## vI_smartIdentity:   added id_key '" + id_key
    266                         + "' to stored email '" + email +"'\n")
    267                     }
    268                 else all_addresses.id_keys[index] = null;
    269                 if (smtp_key) {
    270263                    all_addresses.smtp_keys[index] = smtp_key;
    271                     vI_notificationBar.dump("## vI_smartIdentity:   added smtp_key '" + smtp_key
    272                         + "' to stored email '" + email +"'\n")
    273                     }
    274                 else all_addresses.smtp_keys[index] = smtp_key;
     264                    vI_notificationBar.dump("## vI_smartIdentity:   added id '" + id_key
     265                        + "' smtp '" + smtp_key + "' to stored email '" + email +"'\n")
     266                }
    275267                return all_addresses;
    276268            }
     
    280272        all_addresses.fullNames[index] = fullName;
    281273        all_addresses.combinedNames[index] = combinedName;
    282         if (id_key) all_addresses.id_keys[index] = id_key;
    283         else all_addresses.id_keys[index] = null;
    284         if (smtp_key) all_addresses.smtp_keys[index] = smtp_key;
    285         else all_addresses.smtp_keys[index] = smtp_key;
     274        all_addresses.id_keys[index] = id_key;
     275        all_addresses.smtp_keys[index] = smtp_key;
    286276        all_addresses.number = index + 1;
    287277        return all_addresses;
     
    354344       
    355345        var all_addresses = { number : 0, emails : {}, fullNames : {}, combinedNames : {}, id_keys : {}, smtp_keys : {} };
    356         var aBook_addresses = { number : 0, emails : {}, fullNames : {}, combinedNames : {}, id_keys : {}, smtp_keys : {} };
     346        var storage_addresses = { number : 0, emails : {}, fullNames : {}, combinedNames : {}, id_keys : {}, smtp_keys : {} };
    357347       
    358348        /* first step: collect addresses */
    359349       
    360         // check if addressbook-search should be used before SmartReply
    361         if (vI.preferences.getBoolPref("aBook_use_for_smart_reply")) {
    362             vI_addressBook.getVIdentityFromAllRecipients(aBook_addresses);
    363             vI_notificationBar.dump("## vI_smartIdentity: checked for Addressbook-Identities and found " + aBook_addresses.number + " address(es)\n")
     350        // check if Storage-search should be used before SmartReply
     351        if (vI.preferences.getBoolPref("storage_use_for_smart_reply")) {
     352            vI_storage.getVIdentityFromAllRecipients(storage_addresses);
     353            vI_notificationBar.dump("## vI_smartIdentity: checked for stored VIdentities and found " + storage_addresses.number + " address(es)\n")
    364354        }
    365355       
    366356        vI_notificationBar.dump("## vI_smartIdentity: ----------------------------------------------------------\n")
    367357        if (hdr) {
    368             if (aBook_addresses.number == 0 || !vI.preferences.getBoolPref("aBook_ignore_smart_reply")) {
     358            if (storage_addresses.number == 0 || !vI.preferences.getBoolPref("storage_ignore_smart_reply")) {
    369359           
    370360                vI_smartIdentity.collectAddresses(all_addresses, hdr);
     
    391381                }   
    392382            }
    393             else vI_notificationBar.dump("## vI_smartIdentity: SmartReply skipped, Identities in Addressbook found.\n");
     383            else vI_notificationBar.dump("## vI_smartIdentity: SmartReply skipped, Identities in Storage found.\n");
    394384        }
    395385        else vI_notificationBar.dump("## vI_smartIdentity: SmartReply skipped. No Header-information found.\n");
     
    397387        vI_notificationBar.dump("## vI_smartIdentity: ----------------------------------------------------------\n")
    398388       
    399         // merge SmartReply-Identities and Addressbook-Identites
    400         if (vI.preferences.getBoolPref("aBook_prefer_smart_reply"))
    401             all_addresses = vI_smartIdentity.mergeWithoutDuplicates(all_addresses, aBook_addresses)
     389        // merge SmartReply-Identities and Storage-Identites
     390        if (vI.preferences.getBoolPref("storage_prefer_smart_reply"))
     391            all_addresses = vI_smartIdentity.mergeWithoutDuplicates(all_addresses, storage_addresses)
    402392        else
    403             all_addresses = vI_smartIdentity.mergeWithoutDuplicates(aBook_addresses, all_addresses)
    404        
    405         vI_notificationBar.dump("## vI_smartIdentity: merged SmartReply & Addressbook, " + all_addresses.number + " address(es) left\n")
     393            all_addresses = vI_smartIdentity.mergeWithoutDuplicates(storage_addresses, all_addresses)
     394       
     395        vI_notificationBar.dump("## vI_smartIdentity: merged SmartReply & Storage, " + all_addresses.number + " address(es) left\n")
    406396       
    407397        if (all_addresses.number == 0) return;
     
    442432   
    443433    changeIdentityToSmartIdentity : function(all_addresses, selectedValue) {
    444         if (all_addresses.id_keys[selectedValue]) vI_msgIdentityClone.setMenuToIdentity(all_addresses.id_keys[selectedValue])
    445         if (all_addresses.smtp_keys[selectedValue]) vI_smtpSelector.setMenuToKey(all_addresses.smtp_keys[selectedValue])
     434        if (all_addresses.id_keys[selectedValue]) {
     435            vI_msgIdentityClone.setMenuToIdentity(all_addresses.id_keys[selectedValue])
     436            vI_smtpSelector.setMenuToKey(all_addresses.smtp_keys[selectedValue])
     437        }
    446438        vI_msgIdentityClone.setIdentity(all_addresses.combinedNames[selectedValue]);
    447439        vI_smartIdentity.removeSmartIdentityFromRecipients(all_addresses, selectedValue);
  • chrome/content/v_identity/vI_smartReplyDialog.js

    r61e69b re35d8e  
    5252            if (vI_smartReply_dialog.all_addresses.smtp_keys[index])
    5353                smtp = vI_smartReply_dialog.getSMTPName(vI_smartReply_dialog.all_addresses.smtp_keys[index])
    54             menuentry += ((id||smtp)?"   (":"") + (id?id:"") + ((id&&smtp)?",":"") + (smtp?"SMTP:"+smtp:"") + ((id||smtp)?")":"")
     54            menuentry += (id?"(" + id + "," +
     55                    (smtp?smtp:document.getElementById("bundle_messenger").getString("defaultServerTag")) +
     56                    ")":"")
    5557            vI_smartReply_dialog.add_row(menuentry);
    5658        }
  • chrome/content/v_identity/vI_smtpSelector.js

    r61e69b re35d8e  
    3737        vI_smtpSelector.elements.Obj_SMTPServerList = document.getElementById("smtp_server_list");
    3838        vI_smtpSelector.elements.Obj_SMTPServerListPopup = document.getElementById("smtp_server_list_popup");
    39         vI_smtpSelector.loadSMTP_server_list();
    40         if (vI.preferences.getBoolPref("show_smtp") &&
    41             (vI_smtpSelector.elements.Obj_SMTPServerListPopup.childNodes.length > 1))
     39        vI_smtpSelector.__loadSMTP_server_list();
     40        vI_smtpSelector.__selectUsedSMTPServer();
     41        if (vI.preferences.getBoolPref("show_smtp"))
    4242                vI_smtpSelector.elements.Area_SMTPServerList.setAttribute("hidden", "false");
    4343    },
     
    4545    loadSMTP : function()
    4646    {
    47         vI_msgIdentityClone.inputEvent();
     47        vI_msgIdentityClone.inputEvent(); // any change of the menu is handled by vI_msgIdentityClone
    4848    },
    4949   
     
    5757                }
    5858            }
    59         if (!smtpKey) smtpKey = vI_smtpSelector.smtpService.defaultServer.key;
    6059        vI_smtpSelector.setMenuToKey(smtpKey);
    6160    },
    6261   
    6362    setMenuToKey : function (smtpKey) {
    64         if (!smtpKey) return;
    6563        MenuItems = vI_smtpSelector.elements.Obj_SMTPServerListPopup.childNodes
    6664        for (index = 0; index < MenuItems.length; index++) {
     65            if (MenuItems[index].localName == "menuseparator") continue;
    6766            if (MenuItems[index].getAttribute("key") == smtpKey) {
    68                     vI_smtpSelector.elements.Obj_SMTPServerList.selectedItem =
    69                         MenuItems[index];
    70                     break;
     67                vI_notificationBar.dump("## v_smtpSelector: use SMTP " + MenuItems[index].label + "\n")
     68                vI_smtpSelector.elements.Obj_SMTPServerList.selectedItem =
     69                    MenuItems[index];
     70                break;
    7171            }
    7272        }
    7373    },
    74 
    75     loadSMTP_server_list : function()
    76     {
    77         var idserver;
     74   
     75    __selectUsedSMTPServer : function() {
    7876        if (vI.helper.getBaseIdentity().smtpServerKey) {
    79             idserver = vI_smtpSelector.smtpService.getServerByKey(vI.helper.getBaseIdentity().smtpServerKey);
    80             vI_notificationBar.dump("## v_smtpSelector: use SMTP from BaseIdentity: " + vI_smtpSelector.getSMTPName(idserver.key) + "\n")
     77            document.getElementById('smtp_server_list').value = vI.helper.getBaseIdentity().smtpServerKey
     78            vI_notificationBar.dump("## v_smtpSelector: use SMTP from BaseIdentity: " + vI.helper.getBaseIdentity().smtpServerKey + "\n")
    8179            }
    8280        else {
     
    8684           
    8785            for (var x in accounts) {
    88                 if (idserver) {
    89                     vI_notificationBar.dump("## v_smtpSelector: use SMTP from Account of BaseIdentity: " + vI_smtpSelector.getSMTPName(idserver.key) + "\n")
    90                     break;
    91                 }
    9286                var server = accounts[x].incomingServer;
    93                
    94                 //  ignore (other) virtualIdentity Accounts
    95                 if (!server || server.hostName == "virtualIdentity") continue;
    9687               
    9788                var identities = queryISupportsArray(accounts[x].identities, Components.interfaces.nsIMsgIdentity);
     
    10091                    if (identity.key == vI.helper.getBaseIdentity().key) {
    10192                        if (accounts[x].defaultIdentity.smtpServerKey)
    102                             idserver = vI_smtpSelector.smtpService.getServerByKey(accounts[x].defaultIdentity.smtpServerKey);
    103                         break;
    104                         }
     93                            vI_notificationBar.dump("## v_smtpSelector: use SMTP from Account of BaseIdentity: " + accounts[x].defaultIdentity.smtpServerKey + "\n")
     94                        document.getElementById('smtp_server_list').value = accounts[x].defaultIdentity.smtpServerKey
     95                        return;
     96                    }
    10597                }
    10698            }
    10799        }
    108         if (!idserver) {
    109             idserver = vI_smtpSelector.smtpService.defaultServer;
    110             vI_notificationBar.dump("## v_smtpSelector: use default SMTP: " + vI_smtpSelector.getSMTPName(idserver.key) + "\n")
    111         }
    112        
    113         var defaultServer = vI_smtpSelector.smtpService.defaultServer;
     100    },
     101   
     102    __loadSMTP_server_list : function()
     103    {
     104        var listitem = vI_smtpSelector.__createDefaultSmtpListItem();
     105        vI_smtpSelector.elements.Obj_SMTPServerListPopup.appendChild(listitem);
     106        vI_smtpSelector.elements.Obj_SMTPServerList.selectedItem = listitem;
     107
     108        var separator = document.createElement("menuseparator");
     109        vI_smtpSelector.elements.Obj_SMTPServerListPopup.appendChild(separator);
     110
    114111        var servers = vI_smtpSelector.smtpService.smtpServers;
    115        
    116         var serverCount = servers.Count();
    117 
    118         for (var i=0 ; i<serverCount; i++) {
     112        for (var i=0 ; i<servers.Count(); i++) {
    119113            var server = servers.QueryElementAt(i, Components.interfaces.nsISmtpServer);
    120             if (!server.redirectorType)
    121             {
    122               var listitem = vI_smtpSelector.createSmtpListItemx(server);
    123               vI_smtpSelector.elements.Obj_SMTPServerListPopup.appendChild(listitem);
    124               // set choosen default server
    125               if (idserver == server) vI_smtpSelector.elements.Obj_SMTPServerList.selectedItem = listitem;
     114            if (!server.redirectorType) {
     115                var listitem = vI_smtpSelector.__createSmtpListItem(server);
     116                vI_smtpSelector.elements.Obj_SMTPServerListPopup.appendChild(listitem);
    126117            }
    127118        }
    128119    },
    129 
    130     createSmtpListItemx : function (server) {
     120   
     121    __createDefaultSmtpListItem : function () {
    131122        var listitem = document.createElement("menuitem");
    132 
     123        listitem.setAttribute("label", document.getElementById("bundle_messenger").getString("defaultServerTag"));
     124        return listitem;   
     125    },
     126   
     127    __createSmtpListItem : function (server) {
     128        var listitem = document.createElement("menuitem");
    133129        listitem.setAttribute("label", (server.description?server.description:server.hostname));
    134130        listitem.setAttribute("key", server.key);
    135         // give it some unique id
    136         listitem.id = "smtpServer." + server.key;
    137 
    138131        return listitem;
    139     },
    140    
    141     getSMTPName : function (key) {
    142         var server = vI_smtpSelector.smtpService.getServerByKey(key)
    143         return (server.description?server.description:server.hostname)
    144132    }
    145133}
  • chrome/content/v_identity/v_identity.js

    r61e69b re35d8e  
    7777                name = name.replace(/^\s+|\s+$/g,"")
    7878            }
    79             vI_notificationBar.dump("## v_identity: getAddress: name '" +
     79            vI_notificationBar.dump("## v_identity: getAddress: address '" + address + "' name '" +
    8080                name + "' email '" + email + "'\n");
    8181            return { name: name,
     
    121121            vI_notificationBar.dump("## v_identity: NotifyComposeFieldsReady\n");
    122122            vI_msgIdentityClone.initReplyToFields();
    123             vI_addressBook.init();
     123            vI_storage.init();
    124124            vI_smartIdentity.init();
    125125        },
     
    188188                vI.addVirtualIdentityToMsgIdentityMenu();
    189189                vI.original_functions.GenericSendMessage(msgType);
    190                 vI_addressBook.storeVIdentityToAllRecipients(msgType);
     190                vI_storage.storeVIdentityToAllRecipients(msgType);
    191191                if (window.cancelSendMessage) {
    192192                    vI.Cleanup_Account();
     
    243243                vI.msgType = msgType; if (vI.warning(msgType)) {
    244244                    vI.original_functions.GenericSendMessage(msgType);
    245                     vI_addressBook.storeVIdentityToAllRecipients(msgType); } }
     245                    vI_storage.storeVIdentityToAllRecipients(msgType); } }
    246246       
    247247        gMsgCompose.RegisterStateListener(vI.ComposeStateListener);
     
    298298                vI.msgType = msgType; if (vI.warning(msgType)) {
    299299                    vI.original_functions.GenericSendMessage(msgType);
    300                     vI_addressBook.storeVIdentityToAllRecipients(msgType); } }
     300                    vI_storage.storeVIdentityToAllRecipients(msgType); } }
    301301            vI_notificationBar.dump("## v_identity: restored GenericSendMessage (Virtual Identity deactivated)\n");
    302302        }
     
    308308        if (vI_account.account) {
    309309            vI.remVirtualIdentityFromMsgIdentityMenu();
    310             vI_account.removeAccount();
     310            vI_account.removeUsedVIAccount();
    311311        }
    312312    },
  • chrome/content/v_identity/v_identity.xul

    r61e69b re35d8e  
    4545<script type="application/x-javascript" src="chrome://v_identity/content/vI_smtpSelector.js" />
    4646<script type="application/x-javascript" src="chrome://v_identity/content/vI_notificationBar.js"/>
    47 <script type="application/x-javascript" src="chrome://v_identity/content/vI_addressBook.js"/>
     47<script type="application/x-javascript" src="chrome://v_identity/content/vI_rdfDatasource.js"/>
     48<script type="application/x-javascript" src="chrome://v_identity/content/vI_storage.js"/>
    4849
    4950  <stringbundleset id="stringbundleset">
    5051    <stringbundle id="vIdentBundle" src="chrome://v_identity/locale/v_identity.properties" />
     52    <stringbundle id="bundle_messenger" src="chrome://messenger/locale/messenger.properties" />
    5153  </stringbundleset>
    5254
     
    7476    </menulist>
    7577    </hbox>
    76     <checkbox id="aBook_save" label="&vident.composeDialog.aBookSave.label;"
    77         tooltiptext="&vident.composeDialog.aBookSave.tooltiptext;" hidden="true" />
     78    <checkbox id="storage_save" label="&vident.composeDialog.storageSave.label;"
     79        tooltiptext="&vident.composeDialog.storageSave.tooltiptext;" hidden="true" />
    7880</hbox>
    7981   
  • chrome/locale/en-US/v_identity/v_identity.dtd

    r61e69b re35d8e  
    1313<!ENTITY vident.prefs.smartReplyNewsgroups.label "use Smart Reply also if answering to a newsgroup">
    1414<!ENTITY vident.prefs.smartTimestamp.label "use Smart Timestamp">
    15 <!ENTITY vident.prefs.aBook.label "use Addressbook to store Virtual Identities">
    16 <!ENTITY vident.prefs.aBookNonVIdentity.label "store also usual Identities in you Addressbook">
    1715<!ENTITY vident.prefs.SMTP.label "show SMTP Menu">
    1816<!ENTITY vident.prefs.menuEntry.label "add entry for Settings-Dialog to Tools menu">
     
    4038<!ENTITY vident.prefs.smartReplyTab.Tab3.label "3. use addresses">
    4139<!ENTITY vident.prefs.smartReplyTab.caption "Virtual Identity Smart Reply">
    42 <!ENTITY vident.prefs.smartReplyTab3.caption "Virtual Identity Smart Reply / Addressbook">
     40<!ENTITY vident.prefs.smartReplyTab3.caption "Virtual Identity Smart Reply / Storage">
    4341<!ENTITY vident.prefs.smartReplyTab.Tab1.desc "To find a Reply-Identity, Smart Reply has to get a list of possible sender identities. Therefore usually the header-fields &apos;To&apos; and &apos;Cc&apos; are analyzed. Here you can enter those and/or other header-fields. (additional options: to select header number n out of any headers with the same name add &apos;:n&apos;. If you add &apos;:@&apos; to any entry, only email-addresses are used, names are ignored.)">
    4442<!ENTITY vident.prefs.smartReply.headers.desc "additional headers  -  one per line, for instance &apos;x-original-to&apos; or &apos;x-original-to:@&apos; or &apos;x-original-to:2:@&apos;">
     
    4846<!ENTITY vident.prefs.smartReply.ignoreFullname.label "ignore full name while comparing email addresses with existing identities">
    4947<!ENTITY vident.prefs.smartReply.defaultFullname.label "if there is no name to any found email-address, use the following one:">
    50 <!ENTITY vident.prefs.smartReplyTab.Tab3.desc "At the end the filtered addresses are added to the message-identity dropdown menu. You can also select, how they are might be used as the new senders identity (If you use the Addressbook to lookup for Identities, the same Options are used).">
     48<!ENTITY vident.prefs.smartReplyTab.Tab3.desc "At the end the filtered addresses are combined with the stored previous Virtual Identities (see storage configuration). Than they are added to the message-identity dropdown menu. You can also select, how they are might be used as the new senders identity.">
    5149<!ENTITY vident.prefs.smartReply.ask.label "open a dialog to choose Identity">
    5250<!ENTITY vident.prefs.smartReply.ask_always.label "ask also if there is only one possible address">
    5351<!ENTITY vident.prefs.smartReply.autocreate.label "use first found identity without interaction">
    5452<!ENTITY vident.prefs.smartReply.autocreate.desc "(if there is only one possible address)">
    55 <!ENTITY vident.prefs.aBookTab.label "Addressbook">
    56 <!ENTITY vident.prefs.aBookTab.header "Storing Virtual Identities in Addressbook">
    57 <!ENTITY vident.prefs.aBookCap1.caption "Storing of Virtual Identities">
    58 <!ENTITY vident.prefs.aBookCap2.caption "Reading of Virtual Identities">
    59 <!ENTITY vident.prefs.aBookCap3.caption "Configure Reply-Identities">
    60 <!ENTITY vident.prefs.aBookCap4.caption "Cleaning of Addressbooks">
    61 <!ENTITY vident.prefs.aBookTab.Tab1.label "1. Common Configurations">
    62 <!ENTITY vident.prefs.aBookTab.Tab2.label "2. Reply-Identities">
    63 <!ENTITY vident.prefs.aBookTab.Tab3.label "3. Extended">
    64 <!ENTITY vident.prefs.aBook.storedefault.label "save Virtual Identities while sending emails">
    65 <!ENTITY vident.prefs.aBook.warn_update.label "ask before overwriting Virtual Identities in your Addressbook">
    66 <!ENTITY vident.prefs.aBook.dont_update_multiple.label "never overwrite (and ask) if email has multiple recipients">
    67 <!ENTITY vident.prefs.aBook.show_switch.label "show switch to activate/deactivate saving of Identities">
    68 <!ENTITY vident.prefs.aBook.warn_vI_replace.label "ask before Virtual Identity in Sender-Field will be replaced">
    69 <!ENTITY vident.prefs.aBook.get_One_Only.label "ignore Addressbook after first Virtual Identity was retrieved">
    70 <!ENTITY vident.prefs.aBookCap2.caption "Selection of Senders Identity">
    71 <!ENTITY vident.prefs.aBook.reply.desc "If you answer any emails and usage of Addressbook is activated together with 'Smart Reply', this is the place to configure if and how the found Identities will be used. Choosing in between the resulting Identities is done the same way as configured under 'Smart Reply'.">
    72 <!ENTITY vident.prefs.aBook.use_for_smart_reply.label "use Addressbook Identities together with 'Smart-Reply'">
    73 <!ENTITY vident.prefs.aBook.prefer_smart_reply.label "prefer 'Smart Reply'-Identities">
    74 <!ENTITY vident.prefs.aBook.ignore_smart_reply.label "ignore 'Smart Reply'-Identities if Identities were found in Addressbook">
    75 <!ENTITY vident.prefs.aBookCap3.caption "extended Options">
    76 <!ENTITY vident.prefs.aBook.remove_entries.desc "Here you are able to remove all Virtual Identity Informations from you Addressbooks.">
    77 <!ENTITY vident.prefs.aBook.remove_entries.remove "remove Informations">
     53<!ENTITY vident.prefs.storageTab.label "Storage">
     54<!ENTITY vident.prefs.storageTab.header "Storing Virtual Identities">
     55<!ENTITY vident.prefs.storageCap1.caption "Storing of Virtual Identities">
     56<!ENTITY vident.prefs.storageCap2.caption "Reading of Virtual Identities">
     57<!ENTITY vident.prefs.storageCap3.caption "Configure Reply-Identities">
     58<!ENTITY vident.prefs.storageTab.Tab1.label "1. Common Configurations">
     59<!ENTITY vident.prefs.storageTab.Tab2.label "2. Reply-Identities">
     60<!ENTITY vident.prefs.storage.storedefault.label "save Virtual Identities while sending emails">
     61<!ENTITY vident.prefs.storage.warn_update.label "ask before overwriting Virtual Identities in your Storage">
     62<!ENTITY vident.prefs.storage.dont_update_multiple.label "never overwrite (and ask) if email has multiple recipients">
     63<!ENTITY vident.prefs.storage.show_switch.label "show switch to activate/deactivate saving of Identities">
     64<!ENTITY vident.prefs.storage.warn_vI_replace.label "ask before Virtual Identity in Sender-Field will be replaced">
     65<!ENTITY vident.prefs.storage.get_One_Only.label "ignore Storage after first Virtual Identity was retrieved">
     66<!ENTITY vident.prefs.storageCap2.caption "Selection of Senders Identity">
     67<!ENTITY vident.prefs.storage.reply.desc "If you answer any emails, the priority of stored Virtual Identities compared to ones retrieved with 'Smart Reply' can configured here. Choosing in between the resulting Identities is done the same way as configured under 'Smart Reply'.">
     68<!ENTITY vident.prefs.storage.use_for_smart_reply.label "use stored Identities together with 'Smart-Reply'">
     69<!ENTITY vident.prefs.storage.prefer_smart_reply.label "prefer 'Smart Reply'-Identities">
     70<!ENTITY vident.prefs.storage.ignore_smart_reply.label "ignore 'Smart Reply'-Identities if Virtual Identities were found stored">
    7871<!ENTITY vident.prefs.notificationTab.header "Status Messages">
    7972<!ENTITY vident.prefs.notificationTab.caption "Notifications">
    8073<!ENTITY vident.prefs.notifyHeaders.label "show information about recognized headers">
    8174<!ENTITY vident.prefs.notifySmartIdentity.label "activate Smart Reply / Smart Draft status messages">
    82 <!ENTITY vident.prefs.notifyABook.label "activate Addressbook status messages">
     75<!ENTITY vident.prefs.notifystorage.label "activate Storage status messages">
    8376<!ENTITY vident.prefs.notifyTime.prefix.label "time to show status messages (0 = infinite)">
    8477<!ENTITY vident.prefs.notifyTime.postfix.label "seconds">
     
    8780<!ENTITY vident.prefs.notifyDebug.label "show area with debug-informations">
    8881<!ENTITY vident.accPane.prettyName.prefix "virtual Id">
    89 <!ENTITY vident.composeDialog.aBookSave.label "save">
    90 <!ENTITY vident.composeDialog.aBookSave.tooltiptext "save Identity while sending in Addressbook">
     82<!ENTITY vident.composeDialog.storageSave.label "save">
     83<!ENTITY vident.composeDialog.storageSave.tooltiptext "save Identity while sending">
    9184<!ENTITY vident.replySelector.dialogheader.title "Virtual Identity">
    9285<!ENTITY vident.replySelector.caption.label "Choose a Virtual Identity">
  • chrome/locale/en-US/v_identity/v_identity.properties

    r61e69b re35d8e  
    22vident.sendLater.prefix= Replace Virtual Identity with Default Identity (
    33vident.sendLater.postfix= ) ?
    4 vident.updateAddressBook.warning1=For the address '
    5 vident.updateAddressBook.warning2=' the Virtual Identity '
    6 vident.updateAddressBook.warning3=' is stored in your Addressbook. Should I replace this Identity with '
    7 vident.updateAddressBook.warning4=' ?
    8 vident.clearAddressBook.status.prefix=Currently are
    9 vident.clearAddressBook.status.postfix= Virtual Identities registered in your Addressbooks.
    10 vident.clearAddressBook.status.none=Currently are no Informations about Virtual Identites in your Addressbooks.
    11 vident.clearAddressBook.warning= Would you really like to remove these Informations?
    12 vident.updateVirtualIdentity.warning1=Foor the address '
    13 vident.updateVirtualIdentity.warning2=' in your Addressbook the Virtual Identity '
     4vident.updateStorage.warning1=For the recipient '
     5vident.updateStorage.warning2=' the Virtual Identity '
     6vident.updateStorage.warning3=' is stored. Should I replace this Identity with '
     7vident.updateStorage.warning4=' ?
     8vident.updateVirtualIdentity.warning1=For the recipient '
     9vident.updateVirtualIdentity.warning2=' the Virtual Identity '
    1410vident.updateVirtualIdentity.warning3=' is stored. Should I replace current Virtual Identity in Senders Field with this one?
    1511vident.smartIdentity.vIUsage= using Virtual Identity as sender
    16 vident.smartIdentity.vIaBookUsage= using Virtual Identity from Addressbook as sender
    17 vident.smartIdentity.vIaBookCollidingIdentity= New recipient has a different Virtual Identity stored in Addressbook. Ignored.
     12vident.smartIdentity.vIStorageUsage= using stored Virtual Identity as sender
     13vident.smartIdentity.vIStorageCollidingIdentity= New recipient has a different Virtual Identity stored. Ignored.
    1814vident.smartIdentity.ignoreRegExp= ignoring invalid regular expression.
    1915vident.smartIdentity.matchExisting= found matching existent Identity.
  • chrome/skin/classic/v_identity/v_identity.css

    r61e69b re35d8e  
    22@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
    33
     4#upgradeWizard {
     5    width: 550px;
     6    height: 350px
     7}
     8
     9#upgradeWizard wizardpage {
     10    overflow:   hidden;
     11}
     12
     13#upgradeWizard browser {
     14    height:     175px;
     15}
     16
     17#upgradeWizard textbox {
     18    height:     165px;
     19}
     20   
    421.v_identity_logo_button {
    522    -moz-appearance: toolbarbutton;
  • defaults/preferences/preferences.js

    r61e69b re35d8e  
    1515pref("extensions.virtualIdentity.smart_reply_ask", false);
    1616pref("extensions.virtualIdentity.smart_reply_ask_always", false);
    17 pref("extensions.virtualIdentity.smart_reply_headers", "x-original-to\nto\ncc");
     17pref("extensions.virtualIdentity.smart_reply_headers", "envelope-to\nx-original-to\nto\ncc");
    1818pref("extensions.virtualIdentity.smart_reply_filter", "");
    1919pref("extensions.virtualIdentity.smart_reply_notification", true);
     
    2929pref("extensions.virtualIdentity.warn_virtual", false);
    3030pref("extensions.virtualIdentity.hide_signature", false);
    31 pref("extensions.virtualIdentity.aBook_use", true);
    32 pref("extensions.virtualIdentity.aBook_use_non_vI", false);
    33 pref("extensions.virtualIdentity.aBook_storedefault", true);
    34 pref("extensions.virtualIdentity.aBook_dont_update_multiple", true);
    35 pref("extensions.virtualIdentity.aBook_show_switch", true);
    36 pref("extensions.virtualIdentity.aBook_warn_update", true);
    37 pref("extensions.virtualIdentity.aBook_use_for_smart_reply", true);
    38 pref("extensions.virtualIdentity.aBook_prefer_smart_reply", false);
    39 pref("extensions.virtualIdentity.aBook_ignore_smart_reply", true);
    40 pref("extensions.virtualIdentity.aBook_warn_vI_replace", true);
    41 pref("extensions.virtualIdentity.aBook_notification", true);
    42 pref("extensions.virtualIdentity.aBook_getOneOnly", true);
     31pref("extensions.virtualIdentity.storage_storedefault", true);
     32pref("extensions.virtualIdentity.storage_dont_update_multiple", true);
     33pref("extensions.virtualIdentity.storage_show_switch", true);
     34pref("extensions.virtualIdentity.storage_warn_update", true);
     35pref("extensions.virtualIdentity.storage_use_for_smart_reply", true);
     36pref("extensions.virtualIdentity.storage_prefer_smart_reply", false);
     37pref("extensions.virtualIdentity.storage_ignore_smart_reply", true);
     38pref("extensions.virtualIdentity.storage_warn_vI_replace", true);
     39pref("extensions.virtualIdentity.storage_notification", true);
     40pref("extensions.virtualIdentity.storage_getOneOnly", true);
    4341pref("extensions.virtualIdentity.experimental", false);
    4442pref("extensions.virtualIdentity.autoReplyToSelf", false);
     43pref("extensions.virtualIdentity.storeVIdentity", true);
    4544pref("extensions.{dddd428e-5ac8-4a81-9f78-276c734f75b8}.description", "chrome://v_identity/locale/v_identity.properties");
  • install.js

    r61e69b re35d8e  
    77// Editable Items Begin
    88var displayName         = "Virtual Identity"; // The name displayed to the user (don't include the version)
    9 var version             = "0.4.5pre3";
     9var version             = "0.4.5pre4";
    1010var name                = "v_identity"; // The leafname of the JAR file (without the .jar part)
    1111
     
    2222var localeDir           = "/" + name + "/"
    2323
    24 var locales             = new Array( "en-US", "es-ES", "de-DE", "fr-FR", "nl-NL", "cs-CZ", "it-IT", "sk-SK", "ko-KR" );
     24var locales             = new Array( "en-US" );
    2525var skins               = new Array( "classic" ); // "modern"
    2626var prefs               = new Array( "preferences.js" );
  • install.rdf

    r61e69b re35d8e  
    2727    <em:id>{dddd428e-5ac8-4a81-9f78-276c734f75b8}</em:id>
    2828    <em:name>Virtual Identity</em:name>
    29     <em:version>0.4.5pre3</em:version>
     29    <em:version>0.4.5pre4</em:version>
    3030    <em:description>Allows you to modify your Identity settings for a single Mail on the fly.</em:description>
    3131    <em:creator>Rene Ejury</em:creator>
    3232    <em:contributor>Translations: www.babelzilla.org</em:contributor>
    33     <em:contributor>markh</em:contributor>      <!-- dutch localization -->
    34     <em:contributor>PatheticCockroach</em:contributor>      <!-- french localization -->
    35     <em:contributor>Proyecto Nave</em:contributor>      <!-- spanish localization -->
    36     <em:contributor>Michal Kec (MiK)</em:contributor>       <!-- czech localization -->
    37     <em:contributor>Underpass</em:contributor>      <!-- italian localization -->
    38     <em:contributor>Sai</em:contributor>        <!-- slovakian localization -->
    39     <em:contributor>wtspout</em:contributor>        <!-- korean localization -->
    4033    <em:homepageURL>http://www.absorb.it/virtual-id</em:homepageURL>
    4134    <!--
Note: See TracChangeset for help on using the changeset viewer.