Do something like this (PHP and Perl are fairly close so you should be able to understand what I have, if not just ask):
Code:
if( $bbuserid ) {
$user = $DB_site->query_first( "SELECT username,
canpost,
usergroupid
FROM users
WHERE userid = $bbuserid" );
$bbusername = $user[ username ];
$usergroupid = $user[ usergroupid ];
$canpost = $user[ canpost ];
if( $canpost == 0 or $usergroupid == 366 ) {
print( "<font face=\"TREBUCHET MS,ARIAL,HELVETICA\">Sorry, you are banned from FanHome Chat! If you feel this is in error, please e-mail the administration at: <a href=\"mailto:administrators@fanhome.com\">administrators@fanhome.com</a></font><br>" );
} else {
print( "<APPLET align=middle code=\"digi.digichat.DigiChatApplet\" codeBase=\"http://www.yourdomain.com/path/to/digichat/\" width=\"600\" height=\"480\" align=\"middle\" ARCHIVE=\"client.jar\" nickname=\"$bbusername\">
<PARAM NAME=\"siteID\" VALUE=\"1000\">
<PARAM NAME=\"cabbase\" VALUE=\"Client.cab\">
<PARAM NAME=\"background\" VALUE=\"FFFFFF\">
<PARAM NAME=\"textcolor\" VALUE=\"000000\">
<PARAM NAME=\"url\" VALUE=\"http://forums.fanhome.com/member.php?action=getinfo&userid=$bbuserid\">
<PARAM NAME=\"openProfileURL\" VALUE=\"true\">
<PARAM NAME=\"room\" VALUE=\"$room\">
<PARAM NAME=\"embedded\" VALUE=\"true\">
FanHome Chat requires a Java Compatible web browser to run.
</APPLET>\n" );
} // end if
} else {
print( "<font face=\"TREBUCHET MS,ARIAL,HELVETICA\">Sorry, you must be logged in to use FanHome Chat!</font><br>" );
} // end if
I have the canpost check to see if they're "turned off" for some reason. Usergroupid 366 is what I have set up for users that we ban -- they aren't allowed to chat either.
If they're logged out I don't let them in either. You can configure DigiChat to disallow changing of usernames for guests and limit hosts to connect from -- it's a great program.
If you want to get fancy you can store more stuff in the users table for their chat settings and you can pass those as more parameters to the chat applet. I simply set up the username and their profile URL. There is also a way to capture any settings they change -- so if they edit their icon in chat and exit you can set it up to write to the database with the particular iconid. It's pretty sweet and it on my "to-do" list.
If you have any other questions just ask.