summaryrefslogtreecommitdiffstats
path: root/security/nss/cmd/certcgi/index.html
diff options
context:
space:
mode:
Diffstat (limited to 'security/nss/cmd/certcgi/index.html')
-rw-r--r--security/nss/cmd/certcgi/index.html789
1 files changed, 789 insertions, 0 deletions
diff --git a/security/nss/cmd/certcgi/index.html b/security/nss/cmd/certcgi/index.html
new file mode 100644
index 000000000..3ae6a10d4
--- /dev/null
+++ b/security/nss/cmd/certcgi/index.html
@@ -0,0 +1,789 @@
+<HTML> <!-- -*- Mode: Java; tab-width: 8 -*- -->
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+<HEAD>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<SCRIPT LANGUAGE="JavaScript1.2">
+
+script_url = 'http://interzone.mcom.com/cgi-bin/certomatic/bin/certcgi.cgi'
+
+ext_page_ver1 =
+ make_page_intro('Version 1 extensions', "#FFFFFF") +
+ '<IFRAME WIDTH="100%" HEIGHT="100%" FRAMEBORDER=0 ID="ext1">' +
+ 'Version 1 X.509 certs do not support extensions' +
+ '</IFRAME>' +
+ '</body></html>';
+
+num_ca = 0;
+
+your_certificate_index_label = 'Your Certificate';
+netscape_extensions_index_label = 'Netscape X.509 Extensions';
+standard_extensions_index_label = 'Standard X.509 Extensions';
+certifying_authorities_index_label = 'Certifying Authorities';
+add_sub_alt_name_index_label = 'Add Subject Alternative Name';
+
+index_list =
+ '0, your_certificate_index_label,' +
+ '0, netscape_extensions_index_label,' +
+ '0, standard_extensions_index_label,' +
+ '0, certifying_authorities_index_label';
+
+add_index_list = '';
+
+ver = 3
+
+max_pages = 13;
+cur_page = 1;
+
+ext_page_array = new Array(max_pages);
+
+index_label = 'Options';
+
+var main_page =
+ make_page_intro('Your Key', "#FFFFFF") +
+ '<IFRAME WIDTH="100%" HEIGHT="100%" FRAMEBORDER=0 ID="main" SRC="main.html">' +
+ '</IFRAME>' +
+ '</body></html>' ;
+
+function setSubAltNameType(form)
+{
+ with(form) {
+ if (SubAltNameRadio[0].checked) {
+ return true;
+ }
+ if (SubAltNameRadio[3].checked || SubAltNameRadio[5].checked) {
+ SubAltNameDataType.checked = true;
+ return true;
+ }
+ if (SubAltNameRadio[1].checked || SubAltNameRadio[2].checked ||
+ SubAltNameRadio[4].checked || SubAltNameRadio[6].checked ||
+ SubAltNameRadio[7].checked || SubAltNameRadio[8].checked) {
+ SubAltNameDataType.checked = false;
+ return true;
+ }
+ }
+ return true;
+}
+
+function setIssuerAltNameType(form)
+{
+ with(form) {
+ if (IssuerAltNameRadio[0].checked) {
+ return true;
+ }
+ if (IssuerAltNameRadio[3].checked || IssuerAltNameRadio[5].checked) {
+ IssuerAltNameDataType.checked = true;
+ return true;
+ }
+ if (IssuerAltNameRadio[1].checked || IssuerAltNameRadio[2].checked ||
+ IssuerAltNameRadio[4].checked || IssuerAltNameRadio[6].checked ||
+ IssuerAltNameRadio[7].checked || IssuerAltNameRadio[8].checked) {
+ IssuerAltNameDataType.checked = false;
+ return true;
+ }
+ }
+ return true;
+}
+
+
+function setNameConstraintNameType(form)
+{
+ with(form) {
+ if (NameConstraintRadio[0].checked) {
+ return true;
+ }
+ if (NameConstraintRadio[3].checked || NameConstraintRadio[5].checked) {
+ NameConstraintNameDataType.checked = true;
+ return true;
+ }
+ if (NameConstraintRadio[1].checked || NameConstraintRadio[2].checked ||
+ NameConstraintRadio[4].checked || NameConstraintRadio[6].checked ||
+ NameConstraintRadio[7].checked || NameConstraintRadio[8].checked) {
+ NameConstraintNameDataType.checked = false;
+ return true;
+ }
+ }
+ return true;
+}
+
+
+function addSubAltName(form)
+{
+ with(form) {
+ var len = SubAltNameSelect.length;
+ var value;
+ var i = 0;
+ while(!(i == (SubAltNameRadio.length - 1)) &
+ !(SubAltNameRadio[i].checked == true)) {
+ i++;
+ }
+ if (i != 0) {
+ value = SubAltNameText.value + " - " + (i + 1);
+ } else {
+ value = SubAltNameText.value + " - " +
+ SubAltNameOtherNameOID.value + " - ";
+ if (SubAltNameDataType.checked) {
+ value += "1 - ";
+ } else {
+ value += "0 - ";
+ }
+ value += (i + 1);
+ if (SubAltNameOtherNameOID.value == "") {
+ alert("Other names must include an OID");
+ return false;
+ }
+ }
+
+ if ((SubAltNameText.value == "") | (SubAltNameRadio[i].checked != true)) {
+ alert("Alternative Names must include values for name and name type.");
+ } else {
+ SubAltNameSelect.options[len] = new Option(value, value);
+ }
+ }
+ return true;
+}
+
+function deleteSubAltName(form)
+{
+ with(form) {
+ while (SubAltNameSelect.selectedIndex >= 0) {
+ SubAltNameSelect[SubAltNameSelect.selectedIndex] = null;
+ }
+ }
+}
+
+function addIssuerAltName(form)
+{
+ with(form)
+ {
+ var len = IssuerAltNameSelect.length;
+ var value;
+ var i = 0;
+
+ while(!(i == (IssuerAltNameRadio.length -1)) &
+ !(IssuerAltNameRadio[i].checked == true)) {
+ i++;
+ }
+ if (i != 0) {
+ value = IssuerAltNameText.value + " - " + (i + 1);
+ } else {
+ value = IssuerAltNameText.value + " - " +
+ IssuerAltNameOtherNameOID.value + " - ";
+ if (IssuerAltNameDataType.checked) {
+ value += "1 - ";
+ } else {
+ value += "0 - ";
+ }
+ value += (i + 1);
+ if (IssuerAltNameOtherNameOID.value == "") {
+ alert("Other names must include an OID");
+ return false;
+ }
+ }
+ if ((IssuerAltNameText.value == "") |
+ (IssuerAltNameRadio[i].checked != true)) {
+ alert("Alternative Names must include values for name and name type.")
+ } else {
+ IssuerAltNameSelect.options[len] = new Option(value, value);
+ }
+ }
+ return true;
+}
+
+function deleteIssuerAltName(form)
+{
+ with(form) {
+ while (IssuerAltNameSelect.selectedIndex >= 0) {
+ IssuerAltNameSelect[IssuerAltNameSelect.selectedIndex] = null;
+ }
+ }
+}
+
+
+
+function addNameConstraint(form)
+{
+ with(form) {
+ var len = NameConstraintSelect.length;
+ var value;
+ var i = 0;
+ var min = NameConstraintMin.value;
+ var max = NameConstraintMax.value;
+
+ while(!(i == (NameConstraintRadio.length - 1) ) &
+ !(NameConstraintRadio[i].checked == true)) {
+ i++;
+ }
+ value = NameConstraintText.value + " - ";
+ if (i == 0) {
+ value += NameConstraintOtherNameOID.value + " - ";
+ if (NameConstraintNameDataType.checked) {
+ value += "1 - ";
+ } else {
+ value += "0 - ";
+ }
+ if (NameConstraintOtherNameOID.value == "") {
+ alert("Other names must include an OID");
+ return false;
+ }
+ }
+ value += (i + 1) + " - ";
+ if (NameConstraintTypeRadio[0].checked == true) {
+ value += "p - ";
+ } else {
+ value += "e - ";
+ }
+ value += min + " - " + max;
+ if ((min == "") | (NameConstraintText.value == "") |
+ (NameConstraintRadio[i].checked != true)) {
+ alert("Name Constraints must include values for minimum, name, and name type.")
+ } else {
+ NameConstraintSelect.options[len] = new Option(value, value);
+ }
+ }
+ return true;
+}
+
+function deleteNameConstraint(form)
+{
+ with(form) {
+ while (NameConstraintSelect.selectedIndex >= 0) {
+ NameConstraintSelect[NameConstraintSelect.selectedIndex] = null;
+ }
+ }
+}
+
+
+function submit_it()
+{
+ save_cur_page(cur_page);
+
+ var ver1 = (ver == 1);
+ var ver3 = (ver == 3);
+ var array_string;
+ var serial = ext_page_array[0][10][0];
+ var serial_number = ext_page_array[0][12][0];
+ var manValidity = ext_page_array[0][19][0];
+ var notBefore = ext_page_array[0][20][0];
+ var notAfter = ext_page_array[0][21][0];
+ var subject = ext_page_array[0][22][0];
+
+ if (subject == "") {
+ alert("The DN field must contain some data");
+ return false;
+ }
+ if (!serial & serial_number == "") {
+ alert("No serial number specified");
+ return false;
+ }
+ if (ext_page_array[0][15][0]) {
+ var keygen = "<keygen name=\"key\" challenge=\"foo\">";
+ } else {
+ switch (ext_page_array[0][17][0]) {
+ case 2:
+ var keygen = "<keygen keytype=\"dsa\" pqg=\"MIGdAkEAjfKklEkidqo9JXWbsGhpy+rA2Dr7jQz3y7gyTw14guXQdi/FtyEOr8Lprawyq3qsSWk9+/g3JMLsBzbuMcgCkQIVAMdzIYxzfsjumTtPLe0w9I7azpFfAkEAYm0CeDnqChNBMWOlW0y1ACmdVSKVbO/LO/8Q85nOLC5xy53l+iS6v1jlt5UhklycxC6fb0ZLCIzFcq9T5teIAg==\" name=\"key\" challenge=\"foo\">";
+ break;
+ case 1:
+ var keygen = "<keygen keytype=\"dsa\" pqg=\"MIHaAmDCboVgX0+6pEeMlbwsasWDVBcJNHPKMzkq9kbCRK2U3k+tE15n+Dc2g3ZjDYr1um51e2iLC34/BwAAAAAAAAAAAAAAAAAAAAAAAAABbBhnlFN5Djmt0Mk8cdEBY5H8iPMCFMhUnFtbpjn3EyfH2DjVg3ALh7FtAmA2zWzhpeCwvOTjYnQorlXiv0WcnSiWmaC79CRYkFt5i+UEfRxwP1eNGJBVB1T+CPW6JGd4WhgsqtSf53pn5DEtv++O7lNfXyOhWhb3KaWHYIx8fuAXtioIWkWmpfEIVZA=\" name=\"key\" challenge=\"foo\">";
+ break;
+ case 0:
+ var keygen = "<keygen keytype=\"dsa\" pqg=\"MIIBHAKBgId8SiiWrcdua5zbsBhPkKfFcnHBG7T/bQla7c6OixGjjmSSuq2fJLvMKa579CaxHxLZzZZXIHmAk9poRgWl2GUUkCJ68XSum8OQzDPXPsofcEdeANjw3mIAAAAAAAAAAAAAAAAAAAAAAAAIE+MkW5hguLIQqWvEVi9dMpbNu6OZAhTIA+y3TgyiwA0D8pt686ofaL1IOQKBgAiZQC6UCXztr2iXxJrAC+51gN5oX/R9Thilln9RGegsWnHrdxUOpcm5vAWp1LU8TOXtujE8kqkm3UxIRhUWQORe9IxLANAXmZJqkw9FEVHkxj6Cy9detwT2MyBzSwS6avsf7aLisgHmI/IHSeapJsQ3NQa3rikb6zRiqIV+TVa6\" name=\"key\" challenge=\"foo\">";
+ break;
+ }
+ }
+ array_string = build_array_string();
+ hiddens = "<input type=\"hidden\" name=\"subject\" value=\'" + subject + "\'> \n" +
+ "<input type=\"hidden\" name=\"serial-auto\" value=\"" + serial + "\"> \n" +
+ "<input type=\"hidden\" name=\"serial_value\" value=\"" + serial_number + "\"> \n" +
+ "<input type=\"hidden\" name=\"ver-1\" value=\"" + ver1 + "\"> \n" +
+ "<input type=\"hidden\" name=\"ver-3\" value=\"" + ver3 + "\"> \n" +
+ "<input type=\"hidden\" name=\"notBefore\" value=\"" + notBefore + "\"> \n" +
+ "<input type=\"hidden\" name=\"notAfter\" value=\"" + notAfter + "\"> \n" +
+ "<input type=\"hidden\" name=\"manValidity\" value=\"" + manValidity + "\"> \n" +
+ array_string;
+
+ var good_submit_page =
+ '<html>' +
+ '<BODY TEXT="#000000" LINK="#000000" VLINK="#000000" ALINK="#FF0000" BGCOLOR="#FFFFFF">' +
+ '<form method="post" action="' + script_url + '">' +
+ 'Select size for your key:' + keygen + '</p>' +
+ '<input type="submit"></p>' +
+ hiddens +
+ '</form>\n' +
+ '</body>\n' +
+ '</html>\n';
+
+ window.frames['right'].document.write(good_submit_page);
+ window.frames['right'].document.close();
+ cur_page = max_pages + 1;
+ make_left_frame(window);
+ return false;
+}
+
+
+
+function build_array_string()
+{
+ var pg;
+ var array_string = '';
+ var pages;
+
+ if ((ext_page_array[3][4][0] > 0) && ext_page_array[3][3][0]) {
+ pages = 4 + parseInt(ext_page_array[3][4][0]);
+ } else {
+ pages = 4;
+ }
+ for (pg = 1; pg < pages; pg++) {
+ if ((pg > 1 || (ver == 3)) && (ext_page_array[pg].length > 1)) {
+ if (pg < 4) {
+ for (i = 0; i < ext_page_array[pg].length; i++) {
+ if (ext_page_array[pg][i][3].indexOf("radio") == -1) {
+ if (ext_page_array[pg][i][3].indexOf("multiple") == -1) {
+ array_string += '<input type=\"hidden\" name=\"' +
+ ext_page_array[pg][i][1] + '\" value=\'' +
+ ext_page_array[pg][i][0] + '\'> \n';
+ } else {
+ for (k = 0; k < ext_page_array[pg][i][0].length; k++) {
+ array_string += '<input type=\"hidden\" name=\"' +
+ ext_page_array[pg][i][1] + k + '\" value=\'' +
+ ext_page_array[pg][i][0][k] + '\'> \n';
+ }
+ }
+ } else {
+ array_string += '<input type=\"hidden\" name=\"' +
+ ext_page_array[pg][i][1] + '-' +
+ ext_page_array[pg][i][2] + '\" value=\'' +
+ ext_page_array[pg][i][0] + '\'> \n';
+ }
+ }
+ } else {
+ for (i = 0; i < ext_page_array[pg].length; i++) {
+ if (ext_page_array[pg][i][3].indexOf("radio") == -1) {
+ if (ext_page_array[pg][i][3].indexOf("multiple") == -1) {
+ array_string += '<input type=\"hidden\" name=\"' +
+ 'CA#' + (pg - 3) + '-' +
+ ext_page_array[pg][i][1] + '\" value=\'' +
+ ext_page_array[pg][i][0] +'\'> \n';
+ } else {
+ for (k = 0; k < ext_page_array[pg][i][0].length; k++) {
+ array_string += '<input type=\"hidden\" name=\"' +
+ 'CA#' + (pg - 3) + '-' +
+ ext_page_array[pg][i][1] + k + '\" value=\'' +
+ ext_page_array[pg][i][0][k] + '\'> \n';
+ }
+ }
+ } else {
+ array_string += '<input type=\"hidden\" name=\"' +
+ 'CA#' + (pg - 3) + '-' +
+ ext_page_array[pg][i][1] + '-' +
+ ext_page_array[pg][i][2] + '\" value=\'' +
+ ext_page_array[pg][i][0] + '\'> \n';
+ }
+ }
+ }
+ }
+ }
+ return array_string;
+}
+
+
+
+function init_ext_page_array()
+{
+ for (i = 0; i < max_pages; i++) {
+ ext_page_array[i] = '';
+ }
+}
+
+function ca_num_change(n,ca_form)
+{
+ with(ca_form) {
+ n = parseInt(n,10);
+ if (caChoiceradio[2].checked) {
+ if (n) {
+ update_left_frame(n);
+ } else {
+ update_left_frame(0);
+ }
+ }
+ }
+}
+
+function choice_change(ca_form)
+{
+ with(ca_form) {
+ if (caChoiceradio[2].checked) {
+ ca_num_change(manCAs.value,ca_form);
+ } else {
+ update_left_frame(0);
+ }
+ }
+}
+
+function update_left_frame(n)
+{
+ var add_string = '';
+ for (var i = 0; i < n; i++) {
+ var j = i + 1;
+ add_string = add_string + ',1, \'CA #' + j + '\'';
+ }
+ top.add_index_list = add_string;
+ num_ca = n;
+ make_left_frame(window);
+}
+
+function set_ver1()
+// redraws the extensions page for version 1 certificates
+{
+ ver = 1
+ if (cur_page == 2 || cur_page == 3) {
+ switch_right_frame(window, cur_page, cur_page);
+ }
+}
+
+
+function set_ver3()
+// redraws the extensions page for version 3 certificates
+{
+ ver = 3
+ if (cur_page == 2) {
+ switch_right_frame(window, 0, 2);
+ } else if (cur_page == 3) {
+ switch_right_frame(window, 0, 3);
+ }
+}
+
+function reset_subject(marker, value, form)
+// Updates the subject field from a subordinate field
+{
+ with(form) {
+ var field_sep = '", ';
+ var begin_index = subject.value.indexOf(marker);
+ if (begin_index != 0 && subject.value[begin_index - 1] != ' ') {
+ begin_index = subject.value.indexOf(marker, begin_index +1);
+ }
+ var end_index = subject.value.indexOf(field_sep, begin_index);
+ if (begin_index > -1) { // is it a delete/change?
+ if (end_index == -1) { // is it the last one (includes only one)?
+ if (value.length > 0) { // do I have to change it?
+ if (begin_index == 0) { // is is the only one?
+ subject.value = marker + '"' + value + '"';
+ } else { // it is the last of many
+ subject.value = subject.value.substring(0,begin_index) +
+ marker + '"' + value + '"';
+ }
+ } else { // must be a delete
+ if (begin_index == 0) { // is it the only one?
+ begin_index += 2;
+ }
+ subject.value = subject.value.substring(0,(begin_index - 2));
+ }
+ } else { // it is the first of many or a middle one
+ if (value.length >0) { // do I have to change it?
+ subject.value =
+ subject.value.substring(0,(begin_index + marker.length + 1)) +
+ value + subject.value.substring(end_index,subject.length);
+ } else { // it is a delete
+ subject.value = subject.value.substring(0,begin_index) +
+ subject.value.substring((end_index + 3),subject.length);
+ }
+ }
+ } else { // It is either an insert or a do nothing
+ if (value.length > 0) { // is it an insert?
+ if (subject.value.length == 0) { // is subject currently empty?
+ subject.value = marker + '"' + value + '"';
+ } else {
+ subject.value = subject.value + ', ' + marker + '"' + value + '"';
+ }
+ }
+ }
+ }
+}
+
+
+
+function reset_subjectFields(form)
+// updates all the subordinate fields from the subject field of a form
+// **** move the strings to global variables, to make maintentance easier ****
+{
+
+ update_subject_Field(form, 'CN=\"', form.name);
+ update_subject_Field(form, 'MAIL=\"', form.email);
+ update_subject_Field(form, 'O=\"', form.org);
+ update_subject_Field(form, 'C=\"', form.country);
+ update_subject_Field(form, ' L=\"', form.loc);
+ update_subject_Field(form, 'ST=\"', form.state);
+ update_subject_Field(form, 'E=\"', form.email);
+ update_subject_Field(form, 'OU=\"', form.org_unit);
+ update_subject_Field(form, 'UID=\"', form.uid);
+}
+
+function update_subject_Field(form, marker, update_field)
+//updates a single subordinate field from the subject field of a form
+// *** need to deal with the two types of e-mail addresses **************
+{
+ with(form) {
+ var field_sep = '", ';
+ var begin_index = subject.value.indexOf(marker) + marker.length;
+ var end_index = subject.value.indexOf(field_sep, begin_index);
+ if (end_index == -1) {
+ end_index = subject.value.indexOf('"',begin_index);
+ }
+ if (begin_index != (-1 + marker.length) ) {
+ update_field.value = subject.value.substring(begin_index, end_index);
+ } else {
+ update_field.value = '';
+ }
+ }
+}
+
+
+function switch_mail(form)
+// **** Do I want to delete the other type of e-mail address ? ************
+{
+ if (form.email_type[0].checked) {
+ var del = 'E=';
+ var ins = 'MAIL=';
+ } else {
+ var del = 'MAIL=';
+ var ins = 'E=';
+ }
+ reset_subject(del, '', form);
+ reset_subject(ins, form.email.value, form);
+}
+
+function make_page_intro(title, bgcolor)
+{
+ var style = '<STYLE TYPE="text/css">BODY{' +
+ 'font-family: Geneva,MS Sans Serif,Arial,Lucida,Helvetica,sans-serif;' +
+ 'font-size: 10pt;' +
+ '}' +
+ 'TD{' +
+ 'font-family: Geneva,MS Sans Serif,Arial,Lucida,Helvetica,sans-serif;' +
+ 'font-size: 10pt;}' +
+ '</STYLE>';
+
+ if (bgcolor == null) { bgcolor = "#C0C0C0"; }
+ return '<HTML><HEAD>' +
+ '<TITLE>' + title + '</TITLE>' +
+ '</HEAD>' +
+ '<BODY TEXT="#000000" LINK="#000000" VLINK="#000000" ALINK="#FF0000" ' +
+ 'BGCOLOR="' + bgcolor + '">';
+}
+
+
+function make_left_frame(window)
+{
+ with (window.frames['index']) {
+ eval ('index_string = make_left_frame_page(cur_page, '
+ + index_list + add_index_list + ' )');
+ fool1 = make_page_intro(index_label, "#FFFFFF") +
+ index_string + '</BODY></HTML>';
+ document.write(fool1);
+ document.close();
+ }
+}
+
+
+function save_cur_page(page_number)
+{
+ var len;
+ var pg = page_number - 1;
+ if (window.frames['right'].document.forms.length != 0) {
+ with (window.frames['right'].document) {
+ if ((page_number != 2 && page_number != 3 && page_number <= max_pages) ||
+ ver == 3) {
+ ext_page_array[pg] = new Array(forms[0].elements.length);
+ for (i = 0; i < forms[0].elements.length; i++) {
+ ext_page_array[pg][i] = new Array(4);
+ switch (forms[0].elements[i].type) {
+ case 'radio':
+ case 'checkbox':
+ ext_page_array[pg][i][0] = forms[0].elements[i].checked;
+ break;
+ case 'select-one':
+ ext_page_array[pg][i][0] = forms[0].elements[i].selectedIndex;
+ break;
+ case 'select-multiple':
+ len = forms[0].elements[i].options.length;
+ ext_page_array[pg][i][0] = new Array(len);
+ for(k = 0; k < len; k++) {
+ ext_page_array[pg][i][0][k] = forms[0].elements[i].options[k].value;
+ }
+ break;
+ default:
+ ext_page_array[pg][i][0] = forms[0].elements[i].value;
+ }
+ ext_page_array[pg][i][1] = forms[0].elements[i].name;
+ ext_page_array[pg][i][2] = forms[0].elements[i].value;
+ ext_page_array[pg][i][3] = forms[0].elements[i].type;
+ }
+ }
+ }
+ }
+}
+
+function reload_form(page_number)
+{
+ var j = page_number - 1;
+ with (window.frames['right'].document) {
+ if (((page_number < 2 || page_number > 3) || ver == 3)
+ && page_number != 0 && (ext_page_array[j].length > 1)) {
+ for (i = 0; i < ext_page_array[j].length; i++) {
+ switch (forms[0].elements[i].type) {
+ case 'radio': case 'checkbox':
+ forms[0].elements[i].checked = ext_page_array[j][i][0];
+ break;
+ case 'select-one':
+ forms[0].elements[i].selectedIndex = ext_page_array[j][i][0];
+ break;
+ case 'select-multiple':
+ for (k = 0; k < ext_page_array[j][i][0].length; k++) {
+ forms[0].elements[i].options[k] =
+ new Option(ext_page_array[j][i][0][k],
+ ext_page_array[j][i][0][k]);
+ }
+ break;
+ default:
+ forms[0].elements[i].value = ext_page_array[j][i][0];
+ }
+ }
+ }
+ }
+}
+
+function switch_right_frame(top_window, old_pane, new_pane)
+{
+ var ext_page_stnd =
+ make_page_intro(standard_extensions_index_label, "#FFFFFF") +
+ '<IFRAME WIDTH="100%" HEIGHT="100%" FRAMEBORDER=0 ID="ext" ' +
+ 'SRC="stnd_ext_form.html">' +
+ '</IFRAME></body></html>';
+
+ var ext_page_nscp =
+ make_page_intro(netscape_extensions_index_label, "#FFFFFF") +
+ '<IFRAME WIDTH="100%" HEIGHT="100%" FRAMEBORDER=0 ID="ext" ' +
+ 'SRC="nscp_ext_form.html">' +
+ '</IFRAME></body></html>';
+
+ var ext_page_ca =
+ make_page_intro(certifying_authorities_index_label, "#FFFFFF") +
+ '<IFRAME WIDTH="100%" HEIGHT="100%" FRAMEBORDER=0 ID="ext" ' +
+ 'SRC="ca.html">' +
+ '</IFRAME></body</html>';
+
+ var ext_page_ca_exp =
+ make_page_intro('Certifying Authority Details', "#FFFFFF") +
+ '<IFRAME WIDTH="100%" HEIGHT="100%" FRAMEBORDER=0 ID="ext" ' +
+ 'SRC="ca_form.html">' +
+ '</IFRAME></body></html>';
+
+
+ if (old_pane > 0 && cur_page <= max_pages) {
+ save_cur_page(old_pane);
+ }
+ cur_page = new_pane;
+ make_left_frame(top_window);
+ if (new_pane == 2 || new_pane == 3) {
+ if (ver == 1) {
+ frames['right'].document.write(ext_page_ver1);
+ frames['right'].document.close();
+ } else if (new_pane == 2) {
+ frames['right'].document.write(ext_page_nscp);
+ frames['right'].document.close();
+ reload_form(new_pane);
+ } else {
+ frames['right'].document.write(ext_page_stnd);
+ frames['right'].document.close();
+ reload_form(new_pane);
+ }
+ } else if (new_pane == 4) {
+ frames['right'].document.write(ext_page_ca);
+ frames['right'].document.close();
+ reload_form(new_pane);
+ } else if (new_pane == 1) {
+ frames['right'].document.write(main_page);
+ frames['right'].document.close();
+ reload_form(new_pane);
+ } else {
+ frames['right'].document.write(ext_page_ca_exp);
+ frames['right'].document.close();
+ reload_form(new_pane);
+ }
+}
+
+function make_left_frame_page(selected)
+{
+ var n_strings = ( make_left_frame_page.arguments.length - 1 ) / 2;
+ var table_background;
+ var command;
+ var indent;
+ var label;
+ var ret_string = "";
+
+ ret_string += '<TABLE CELLSPACING=4>';
+ for ( var i = 1; i <= n_strings; i++ ) {
+ if ( i == selected ) {
+ table_background = 'BGCOLOR=#BBCCBB';
+ } else {
+ table_background = '';
+ }
+
+ indent = make_left_frame_page.arguments[(i*2) - 1];
+ label = make_left_frame_page.arguments[(i*2)];
+
+ if ( indent == 0 ) {
+ ret_string += ('<TR><TD COLSPAN=2 ' + table_background + '>');
+ } else {
+ ret_string += ('<TR><TD>&nbsp;&nbsp;</TD><TD ' + table_background + '>');
+ }
+
+ command = "'parent.switch_right_frame(parent," + selected + "," + i + ")'";
+ ret_string += ('<A HREF="javascript:void setTimeout(' + command + ',0)">');
+ if ( indent == 0 ) { ret_string += "<B>"; }
+ ret_string += label;
+ if ( indent == 0 ) { ret_string += "</B>"; }
+ ret_string += '</A></TD></TR>';
+ }
+ if (selected == (max_pages + 1)) {
+ table_background = 'BGCOLOR=#BBCCBB';
+ } else {
+ table_background = '';
+ }
+ ret_string +=
+ '<TR><TD COLSPAN=2 ' + table_background +
+ '><b><A HREF="javascript:void setTimeout(\'top.submit_it()\', 0)">Finish</A></b>' +
+ '</TD></TR>' +
+ '<input type="submit"></form>' +
+ '</TABLE>';
+ return(ret_string);
+}
+
+
+function make_page(window)
+// Draws the initial page setup
+{
+ selected = cur_page
+ init_ext_page_array()
+
+ with (window.frames['right']) {
+ location="main.html";
+// document.write(main_page);
+// document.close();
+ }
+
+ make_left_frame(window);
+
+}
+</script>
+
+</HEAD>
+<title>Cert-O-Matic</title>
+ <FRAMESET cols="150,*" BORDER=3 ONLOAD="make_page(window)">
+ <FRAME SRC="about:blank" ID="index" NAME="index"
+ MARGINWIDTH=15 MARGINHEIGHT=10 BORDER=3>
+ <FRAME SRC="about:blank" ID="right" NAME="right"
+ MARGINWIDTH=15 MARGINHEIGHT=10 BORDER=3>
+ </FRAMESET>
+</HTML>