124 lines
4.9 KiB
HTML
Executable File
124 lines
4.9 KiB
HTML
Executable File
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
|
|
|
<!--
|
|
The contents of this file are subject to the Netscape Public License
|
|
Version 1.0 (the "NPL"); you may not use this file except in
|
|
compliance with the NPL. You may obtain a copy of the NPL at
|
|
http://www.mozilla.org/NPL/
|
|
|
|
Software distributed under the NPL is distributed on an "AS IS" basis,
|
|
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
|
|
for the specific language governing rights and limitations under the
|
|
NPL.
|
|
|
|
The Initial Developer of this code under the NPL is Netscape
|
|
Communications Corporation. Portions created by Netscape are
|
|
Copyright (C) 1998 Netscape Communications Corporation. All Rights
|
|
Reserved.
|
|
|
|
Contributors:
|
|
Mark Olson <maolson@earthlink.net>
|
|
Alexey Chernyak <alexeyc@bigfoot.com>
|
|
Frank Tang <ftang@netscape.com>
|
|
Mike Connelly <mozilla@shepherdstown.com>
|
|
Robert Kaiser <kairo@kairo.at>
|
|
-->
|
|
|
|
<html>
|
|
<head>
|
|
<script type="application/x-javascript">
|
|
var strBundleService = Components.classes["@mozilla.org/intl/stringbundle;1"].getService(Components.interfaces.nsIStringBundleService);
|
|
var pluginsbundle = strBundleService.createBundle("chrome://communicator/locale/plugins.properties");
|
|
var regionbundle = strBundleService.createBundle("chrome://communicator-region/locale/region.properties");
|
|
|
|
document.writeln("<title>" + pluginsbundle.GetStringFromName("title_label") + "<\/title>");
|
|
</script>
|
|
<link rel="stylesheet" type="text/css" href="chrome://communicator/skin/plugins.css">
|
|
</head>
|
|
<body>
|
|
<div id="outside">
|
|
<script type="application/x-javascript">
|
|
|
|
/* JavaScript to enumerate and display all installed plug-ins
|
|
|
|
* First, refresh plugins in case anything has been changed recently in
|
|
* prefs: (The "false" argument tells refresh not to reload or activate
|
|
* any plug-ins that would be active otherwise. In contrast, one would
|
|
* use "true" in the case of ASD instead of restarting)
|
|
*/
|
|
navigator.plugins.refresh(false);
|
|
|
|
|
|
var numPlugins = navigator.plugins.length;
|
|
|
|
if (numPlugins > 0)
|
|
document.writeln("<div id=\"plugs\">" + pluginsbundle.GetStringFromName("installedplugins_label") + "<\/div>");
|
|
else
|
|
document.writeln("<div id=\"noplugs\">" + pluginsbundle.GetStringFromName("nopluginsareinstalled_label") + "<\/div>");
|
|
|
|
document.writeln("<div id=\"findmore\">" + pluginsbundle.GetStringFromName("findmore_label") + " ");
|
|
document.writeln("<a href=\"" + regionbundle.GetStringFromName("more_plugins_url") + "\">" + regionbundle.GetStringFromName("more_plugins_label") + "<\/a>.");
|
|
document.writeln("<\/div>");
|
|
|
|
document.writeln("<div id=\"installhelp\">" + pluginsbundle.GetStringFromName("installhelp_label") + " ");
|
|
document.writeln("<a href=\"" + regionbundle.GetStringFromName("plugindoc_url") + "\">" + regionbundle.GetStringFromName("plugindoc_label") + "<\/a>.");
|
|
document.writeln("<\/div><hr>");
|
|
|
|
for (var i = 0; i < numPlugins; i++)
|
|
{
|
|
var plugin = navigator.plugins[i];
|
|
|
|
if (plugin)
|
|
{
|
|
document.write("<div class=\"plugname\">");
|
|
document.write(plugin.name);
|
|
document.writeln("<\/div>");
|
|
|
|
document.writeln("<dl><dd><span class=\"label\">" + pluginsbundle.GetStringFromName("filename_label") + "<\/span> ");
|
|
document.write(plugin.filename);
|
|
document.writeln("<\/dd><dd>");
|
|
document.write(plugin.description);
|
|
document.writeln("<\/dd><\/dl>");
|
|
|
|
document.writeln("<table class=\"contenttable\">");
|
|
document.writeln("<thead>");
|
|
document.writeln("<tr><th class=\"type\">" + pluginsbundle.GetStringFromName("mimetype_label") + "<\/th>");
|
|
document.writeln("<th class=\"desc\">" + pluginsbundle.GetStringFromName("description_label") + "<\/th>");
|
|
document.writeln("<th class=\"suff\">" + pluginsbundle.GetStringFromName("suffixes_label") + "<\/th>");
|
|
document.writeln("<th class=\"enabled\">" + pluginsbundle.GetStringFromName("enabled_label") + "<\/th><\/tr>");
|
|
document.writeln("<\/thead>");
|
|
document.writeln("<tbody>");
|
|
|
|
var numTypes = plugin.length;
|
|
var mimetype;
|
|
var enabled;
|
|
var enabledPlugin;
|
|
for (var j = 0; j < numTypes; j++)
|
|
{
|
|
mimetype = plugin[j];
|
|
|
|
if (mimetype)
|
|
{
|
|
enabled = pluginsbundle.GetStringFromName("no_label");
|
|
enabledPlugin = mimetype.enabledPlugin;
|
|
if (enabledPlugin && (enabledPlugin.filename == plugin.filename))
|
|
enabled = pluginsbundle.GetStringFromName("yes_label");
|
|
|
|
document.writeln("<tr>");
|
|
document.writeln("<td>" + mimetype.type + "<\/td>");
|
|
document.writeln("<td>" + mimetype.description + "<\/td>");
|
|
document.writeln("<td>" + mimetype.suffixes + "<\/td>");
|
|
document.writeln("<td>" + enabled + "<\/td>");
|
|
document.writeln("<\/tr>");
|
|
}
|
|
}
|
|
|
|
document.write("<\/tbody>");
|
|
document.write("<\/table>");
|
|
}
|
|
}
|
|
</script>
|
|
</div>
|
|
</body>
|
|
</html>
|