home *** CD-ROM | disk | FTP | other *** search
/ Chip 2002 January / 01_02.iso / software / netscape62win / mail.xpi / bin / chrome / messenger.jar / content / messenger / msgFolderPickerOverlay.js < prev    next >
Text File  |  2001-04-11  |  3KB  |  103 lines

  1. /* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
  2.  *
  3.  * The contents of this file are subject to the Netscape Public
  4.  * License Version 1.1 (the "License"); you may not use this file
  5.  * except in compliance with the License. You may obtain a copy of
  6.  * the License at http://www.mozilla.org/NPL/
  7.  *
  8.  * Software distributed under the License is distributed on an "AS
  9.  * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
  10.  * implied. See the License for the specific language governing
  11.  * rights and limitations under the License.
  12.  *
  13.  * The Original Code is mozilla.org code.
  14.  *
  15.  * The Initial Developer of the Original Code is Netscape
  16.  * Communications Corporation.  Portions created by Netscape are
  17.  * Copyright (C) 1998 Netscape Communications Corporation. All
  18.  * Rights Reserved.
  19.  *
  20.  * Contributor(s):
  21.  * Alec Flett <alecf@netscape.com>
  22.  */
  23.  
  24. var gMessengerBundle;
  25.  
  26. // call this from dialog onload() to set the menu item to the correct value
  27. function MsgFolderPickerOnLoad(pickerID)
  28. {
  29.     var uri = null;
  30.     try { 
  31.         uri = window.arguments[0].preselectedURI;
  32.     }
  33.     catch (ex) {
  34.         uri = null;
  35.     }
  36.  
  37.     if (uri) {
  38.         //dump("on loading, set titled button to " + uri + "\n");
  39.  
  40.         // verify that the value we are attempting to
  41.         // pre-flight the menu with is valid for this
  42.         // picker type
  43.         var msgfolder = GetMsgFolderFromUri(uri);
  44.             if (!msgfolder) return; 
  45.         
  46.         var verifyFunction = null;
  47.  
  48.         switch (pickerID) {
  49.             case "msgNewFolderPicker":
  50.                 verifyFunction = msgfolder.canCreateSubfolders;
  51.                 break;
  52.             case "msgRenameFolderPicker":
  53.                 verifyFunction = msgfolder.canRename;
  54.                 break;
  55.             default:
  56.                 verifyFunction = msgfolder.canFileMessages;
  57.                 break;
  58.         }
  59.  
  60.         if (verifyFunction) {
  61.             SetFolderPicker(uri,pickerID);
  62.         }
  63.     }
  64. }
  65.  
  66. function PickedMsgFolder(selection,pickerID)
  67. {
  68.     var selectedUri = selection.getAttribute('id');
  69.     SetFolderPicker(selectedUri,pickerID);
  70. }     
  71.  
  72. function SetFolderPicker(uri,pickerID)
  73. {
  74.   if (!gMessengerBundle)
  75.     gMessengerBundle = document.getElementById("bundle_messenger");
  76.  
  77.     var picker = document.getElementById(pickerID);
  78.     var msgfolder = GetMsgFolderFromUri(uri);
  79.  
  80.     if (!msgfolder) return;
  81.  
  82.     var selectedValue = null;
  83.     var serverName;
  84.  
  85.     if (msgfolder.isServer)
  86.         selectedValue = msgfolder.name;
  87.     else {
  88.         if (msgfolder.server)
  89.             serverName = msgfolder.server.prettyName;
  90.         else {
  91.             dump("Cant' find server for " + uri + "\n");
  92.             serverName = "???";
  93.         }
  94.  
  95.         selectedValue = gMessengerBundle.getFormattedString("verboseFolderFormat",
  96.                                                             [msgfolder.name,
  97.                                                             serverName]);
  98.     }
  99.  
  100.     picker.setAttribute("label",selectedValue);
  101.     picker.setAttribute("uri",uri);
  102. }
  103.