norris%netscape.com 66694f8a98 Get IRCChat working without compromising security.
Fix bugs 20261, 23518
r=rginda,mstoltz


git-svn-id: svn://10.0.0.236/trunk@57437 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-11 22:02:06 +00:00

163 lines
5.3 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<title>IRC Test Clients</title>
<script language="JavaScript">
function loadClient(version)
{
switch (version)
{
case 1:
window.open ("test1.html", "test1");
break;
case 2:
window.open ("test2.html", "test2");
break;
case 3:
window.open ("test3.xul", "test3", "resizable=1");
break;
}
}
</script>
</head>
<body bgcolor="white">
<h1>IRC Test Clients</h1>
<p>
<script language="javascript">
if (navigator.userAgent.indexOf ("Mozilla/5.0") == -1)
document.write ("<h1>The IRC Clients require Mozilla/5.0," +
"Things won't work for you.</h1>");
</script>
Welcome to the Mozilla IRC client tests page. If you are generally
impatient, you can jump right to
<a href="#samples">the sample clients</a>, if not, read on. For even more
information, see the
<a href="http://www.mozilla.org/projects/rt-messaging/chatzilla/">
Chatzilla homepage</a>.
<center>
<table border="1" bgcolor="lightgrey">
<tr>
<th>
File
</th>
<th>
Status (blank is bad<a href="#security">*</a>)
</th>
</tr>
<tr>
<td>
Component binary (libbs.so, or bs.dll)
</td>
<td>
<script language="javascript">
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
if (Components.classes["component://misc/bs/connection"])
document.write ("OK");
else
document.write ("Missing");
</script>
</td>
</tr>
<tr>
<td>
Type Library (bs.xpt)
</td>
<td>
<script language="javascript">
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
if (Components.interfaces.bsIConnection)
document.write ("OK");
else
document.write ("Missing");
</script>
</td>
</tr>
</table>
</center>
<p>
If either of the files in the table above are not properly installed,
the IRC client
will not be able to create a a socket connection, and will be mostly
useless. The shared object
is called libbs.so on Unix, and bs.dll on Windows (It is not yet
available on Mac), the interface definition is called bs.xpt, and is
the same file on all platforms. Both of these files should be located
in your MOZILLA_FIVE_HOME/components directory. Everything else
related to the IRC client is either JavaScript, XUL, or HTML, and
therefore is platform independant.
<p>
<a name="security"></a>
Currently, the security code which prevents unsigned scripts from
doing Bad Things is incomplete. If the status boxes above are blank,
this is most likely the cause. In order to work around this limitation,
you must edit your <b>all.js</b> file, changing lines:
<pre>
pref("security.checkdomprops", true);
pref("security.checkxpconnect", true);
</pre>
To read:
<pre>
pref("security.checkdomprops", false);
pref("security.checkxpconnect", false);
</pre>
This will disable the security code so that the IRC client can create
the XPCOM component it needs.
<p>
<a name="samples"></a>
<hr>
<h2>Sample clients...</h2>
<br>
<button onclick="loadClient(3)">test3.xul</button>
is very
close to what I expect
the final client to be. At least, I expect not to throw out too much of
this code. The UI, on the otherhand, is potentially disposable.
<a href="./">irc/tests/</a>test3.css holds the styles
for the UI, while <a href="./">irc/tests/</a>test3-output-default.css
defines the default style of the output window. test3 displays usage
info when it starts up, also /help can be used to display all possible
commands.
<h3>DISCLAIMER: test clients 1 and 2 have bitrotted, and may not work
"out of the box"</h3>
<p>
<button onclick="loadClient(2)">test2.html</button> is
(you guessed it) the second
client. The messages in the output window can be styled by tweaking
<a href="./">irc/tests/</a>test2.css. The views window
controls what network or channel
you are currently viewing. There is NO DEFAULT, after joining a channel
you must click on its entry in the views list before you see any output.
The basic commands are:
<pre>
/network linuxnet
/connect
/nick <your-nick>
/join #mozillazine
</pre>
<p>
<button onclick="loadClient(1)">test1.html</button> is
the
first client. It has no
CSS, and all input is displayed in the same window. If you experience
stability problems with the other clients, try this one.
Commands are the same as in test2.html
<p>
Please direct discussions to the netscape.public.mozilla.rt-messaging
newsgroup, or if you feel it necessary, contact me
(<a href="mailto:rginda@ndcico.com">Rob Ginda</a>) direclty.
<hr>
<address><a href="mailto:rginda@ndcico.com"></a></address>
<!-- Created: Wed Sep 15 23:34:25 XXX 1999 -->
<!-- hhmts start -->
Last modified: Tue Dec 7 03:32:00 XXX 1999
<!-- hhmts end -->
</body>
</html>