home *** CD-ROM | disk | FTP | other *** search
/ PC World 2003 May / PCWorld_2003-05_cd.bin / Komunik / phoenix / chrome / pippki.jar / content / pippki / pref-validation.js < prev    next >
Text File  |  2002-10-14  |  3KB  |  96 lines

  1. /*
  2.  * The contents of this file are subject to the Mozilla Public
  3.  * License Version 1.1 (the "License"); you may not use this file
  4.  * except in compliance with the License. You may obtain a copy of
  5.  * the License at http://www.mozilla.org/MPL/
  6.  *
  7.  * Software distributed under the License is distributed on an "AS
  8.  * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
  9.  * implied. See the License for the specific language governing
  10.  * rights and limitations under the License.
  11.  *
  12.  * The Original Code is mozilla.org code.
  13.  *
  14.  * The Initial Developer of the Original Code is Netscape
  15.  * Communications Corporation.  Portions created by Netscape are
  16.  * Copyright (C) 2001 Netscape Communications Corporation. All
  17.  * Rights Reserved.
  18.  *
  19.  * Contributor(s):
  20.  *  David Drinan <ddrinan@netscape.com>
  21.  */
  22.  
  23. const nsIX509CertDB = Components.interfaces.nsIX509CertDB;
  24. const nsX509CertDB = "@mozilla.org/security/x509certdb;1";
  25. const nsIOCSPResponder = Components.interfaces.nsIOCSPResponder;
  26. const nsISupportsArray = Components.interfaces.nsISupportsArray;
  27.  
  28. var certdb;
  29. var ocspResponders;
  30.  
  31. function onLoad()
  32. {
  33.   var ocspEntry;
  34.   var i;
  35.  
  36.   certdb = Components.classes[nsX509CertDB].getService(nsIX509CertDB);
  37.   ocspResponders = certdb.getOCSPResponders();
  38.  
  39.   var signersMenu = document.getElementById("signingCA");
  40.   var signersURL = document.getElementById("serviceURL");
  41.   for (i=0; i<ocspResponders.length; i++) {
  42.     ocspEntry = ocspResponders.queryElementAt(i, nsIOCSPResponder);
  43.     var menuItemNode = document.createElement("menuitem");
  44.     menuItemNode.setAttribute("value", ocspEntry.responseSigner);
  45.     menuItemNode.setAttribute("label", ocspEntry.responseSigner);
  46.     signersMenu.firstChild.appendChild(menuItemNode);
  47.   }
  48.  
  49.   parent.initPanel('chrome://pippki/content/pref-validation.xul');
  50.  
  51.   doEnabling();
  52. }
  53.  
  54. function doEnabling()
  55. {
  56.   var signersMenu = document.getElementById("signingCA");
  57.   var signersURL = document.getElementById("serviceURL");
  58.   var radiogroup = document.getElementById("securityOCSPEnabled");
  59.   
  60.   switch ( radiogroup.value ) {
  61.    case "0":
  62.    case "1":
  63.     signersMenu.setAttribute("disabled", true);
  64.     signersURL.setAttribute("disabled", true);
  65.     break;
  66.    case "2":
  67.    default:
  68.     signersMenu.removeAttribute("disabled");
  69.     signersURL.removeAttribute("disabled");
  70.   }
  71. }
  72.  
  73. function changeURL()
  74. {
  75.   var signersMenu = document.getElementById("signingCA");
  76.   var signersURL = document.getElementById("serviceURL");
  77.   var CA = signersMenu.getAttribute("value");
  78.   var i;
  79.   var ocspEntry;
  80.  
  81.   for (i=0; i < ocspResponders.length; i++) {
  82.     ocspEntry = ocspResponders.queryElementAt(i, nsIOCSPResponder);
  83.     if (CA == ocspEntry.responseSigner) {
  84.       signersURL.setAttribute("value", ocspEntry.serviceURL);
  85.       break;
  86.     }
  87.   }
  88. }
  89.  
  90. function openCrlManager()
  91. {
  92.     window.open('chrome://pippki/content/crlManager.xul',  "",
  93.                 'chrome,width=500,height=400,resizable=1');
  94. }
  95.  
  96.