home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2005 October / maximum-cd-2005-10.iso / Software / Apps / FirefoxSetup1.0.6.exe / browser.xpi / bin / chrome / browser.jar / content / browser / pref / pref-advanced.js < prev    next >
Encoding:
Text File  |  2004-10-30  |  6.2 KB  |  167 lines

  1.  
  2.  
  3. var _elementIDs = ["moveSystemCaret", "hideTabBar", "loadInBackground",
  4.                     "loadBookmarksInBackground", "warnOnClose", "useAutoScrolling",
  5.                     "useSmoothScrolling", "enableAutoImageResizing",
  6.                     "useSSL2", "useSSL3", "useTLS1", "useTypeAheadFind",
  7.                     "certSelection", "securityOCSPEnabled", "serviceURL", "signingCA",
  8.                     "tabbedExternalLinks", "tabbedWindowLinks",
  9.                     "enableSoftwareInstall", "enableSmartUpdate", 
  10.                     "enableExtensionUpdate"];
  11.  
  12. const nsIX509CertDB = Components.interfaces.nsIX509CertDB;
  13. const nsX509CertDB = "@mozilla.org/security/x509certdb;1";
  14. const nsIOCSPResponder = Components.interfaces.nsIOCSPResponder;
  15. const nsISupportsArray = Components.interfaces.nsISupportsArray;
  16.  
  17. var certdb;
  18. var ocspResponders;
  19.  
  20. function onOK()
  21. {
  22.   // the .ui pref is only the saved state of the prefs dialog's radio buttons.
  23.   // the other pref is the real one.
  24.   try {
  25.     var prefVal = document.getElementById("tabbedOpenForce").checked ?
  26.                     document.getElementById("tabbedWindowLinks").value : 2;
  27.     parent.hPrefWindow.setPref("int", "browser.link.open_newwindow", prefVal);
  28.   } catch(e) {
  29.     // never loaded |advanced| pane
  30.   }
  31. }
  32.  
  33. function Startup() {
  34.   var prefVal = parent.hPrefWindow.getPref("int", "browser.link.open_newwindow",
  35.                                            false);
  36.   document.getElementById("tabbedOpenForce").checked = prefVal != 2;
  37.   updateWindowLinksBehavior();
  38.   parent.hPrefWindow.registerOKCallbackFunc(onOK);
  39.  
  40.   // XXXben - Hide Single Window mode prefs for 1.0 to avoid crashes see 266759
  41.   if (parent.hPrefWindow.getPref("bool", "browser.tabs.showSingleWindowModePrefs", false)) {
  42.     document.getElementById("tabbedOpenForce").hidden = false;
  43.     document.getElementById("tabbedWindowLinks").hidden = false;
  44.   }
  45.  
  46.   var ocspEntry;
  47.   var i;
  48.  
  49.   certdb = Components.classes[nsX509CertDB].getService(nsIX509CertDB);
  50.   ocspResponders = certdb.getOCSPResponders();
  51.  
  52.   var signersMenu = document.getElementById("signingCA");
  53.   var signersURL = document.getElementById("serviceURL");
  54.   for (i=0; i<ocspResponders.length; i++) {
  55.     ocspEntry = ocspResponders.queryElementAt(i, nsIOCSPResponder);
  56.     var menuItemNode = document.createElement("menuitem");
  57.     menuItemNode.setAttribute("value", ocspEntry.responseSigner);
  58.     menuItemNode.setAttribute("label", ocspEntry.responseSigner);
  59.     signersMenu.firstChild.appendChild(menuItemNode);
  60.   }
  61.  
  62.   doSecurityEnabling();
  63.   
  64.   // XXXben menulists suck, see explanation in pref-privacy.js
  65.   // style resolution problem inside scrollable areas. 
  66.   var scb = document.getElementById("signingCABox");
  67.   var sca = document.getElementById("signingCA");
  68.   sca.removeAttribute("hidden");
  69.   sca.parentNode.removeChild(sca);
  70.   scb.appendChild(sca);
  71. }
  72.  
  73. function doSecurityEnabling()
  74. {
  75.   var signersMenu = document.getElementById("signingCA");
  76.   var signersURL = document.getElementById("serviceURL");
  77.   var radiogroup = document.getElementById("securityOCSPEnabled");
  78.   
  79.   switch ( radiogroup.value ) {
  80.   case "0":
  81.   case "1":
  82.     signersMenu.setAttribute("disabled", true);
  83.     signersURL.setAttribute("disabled", true);
  84.     break;
  85.   case "2":
  86.   default:
  87.     if (!parent.hPrefWindow.getPrefIsLocked("security.OCSP.signingCA"))
  88.       signersMenu.removeAttribute("disabled");
  89.     if (!parent.hPrefWindow.getPrefIsLocked("security.OCSP.URL"))
  90.       signersURL.removeAttribute("disabled");
  91.   }
  92. }
  93.  
  94. function changeURL()
  95. {
  96.   var signersMenu = document.getElementById("signingCA");
  97.   var signersURL = document.getElementById("serviceURL");
  98.   var CA = signersMenu.getAttribute("value");
  99.   var i;
  100.   var ocspEntry;
  101.  
  102.   for (i=0; i < ocspResponders.length; i++) {
  103.     ocspEntry = ocspResponders.queryElementAt(i, nsIOCSPResponder);
  104.     if (CA == ocspEntry.responseSigner) {
  105.       signersURL.setAttribute("value", ocspEntry.serviceURL);
  106.       break;
  107.     }
  108.   }
  109. }
  110.  
  111. function openCrlManager()
  112. {
  113.     window.open('chrome://pippki/content/crlManager.xul',  "",
  114.                 'chrome,width=500,height=400,resizable=1');
  115. }
  116.  
  117. function openCertManager()
  118. {
  119.   //check for an existing certManager window and focus it; it's not application modal
  120.   const kWindowMediatorContractID = "@mozilla.org/appshell/window-mediator;1";
  121.   const kWindowMediatorIID = Components.interfaces.nsIWindowMediator;
  122.   const kWindowMediator = Components.classes[kWindowMediatorContractID].getService(kWindowMediatorIID);
  123.   var lastCertManager = kWindowMediator.getMostRecentWindow("mozilla:certmanager");
  124.   if (lastCertManager)
  125.     lastCertManager.focus();
  126.   else {
  127.     window.open('chrome://pippki/content/certManager.xul',  "",
  128.                 'chrome,centerscreen,resizable=yes,dialog=no');
  129.   }
  130. }
  131.  
  132. function openDeviceManager()
  133. {
  134.   //check for an existing deviceManger window and focus it; it's not application modal
  135.   const kWindowMediatorContractID = "@mozilla.org/appshell/window-mediator;1";
  136.   const kWindowMediatorIID = Components.interfaces.nsIWindowMediator;
  137.   const kWindowMediator = Components.classes[kWindowMediatorContractID].getService(kWindowMediatorIID);
  138.   var lastCertManager = kWindowMediator.getMostRecentWindow("mozilla:devicemanager");
  139.   if (lastCertManager)
  140.     lastCertManager.focus();
  141.   else {
  142.     window.open('chrome://pippki/content/device_manager.xul',  "devmgr",
  143.                 'chrome,centerscreen,resizable=yes,dialog=no');
  144.   }
  145. }
  146.  
  147. function updateWindowLinksBehavior() {
  148.   var radioNodes = document.getElementById("tabbedWindowLinks").childNodes;
  149.   var ctr;
  150.   if (document.getElementById("tabbedOpenForce").checked)
  151.     for (ctr = 0; ctr < radioNodes.length; ++ctr)
  152.       radioNodes.item(ctr).removeAttribute("disabled");
  153.   else
  154.     for (ctr = 0; ctr < radioNodes.length; ++ctr)
  155.       radioNodes.item(ctr).setAttribute("disabled", "true");
  156. }
  157.  
  158. function checkForUpdates()
  159. {
  160.   var updates = Components.classes["@mozilla.org/updates/update-service;1"]
  161.                           .getService(Components.interfaces.nsIUpdateService);
  162.   updates.checkForUpdates([], 0, Components.interfaces.nsIUpdateItem.TYPE_ANY, 
  163.                           Components.interfaces.nsIUpdateService.SOURCE_EVENT_USER,
  164.                           window);
  165. }
  166.  
  167.