<% ' ' $Id: default.asp,v 1.2 2002/11/03 16:48:34 peter Exp $ ' ' This page is the main entrace for ConquerChat. It shows a list of currently ' logged in chatusers and makes it possible to log in by entering your user- ' name in the appropriate field. ' ' @author Peter Theill peter@theill.com ' Option Explicit Response.Buffer = True %> <% ' many users does not read the included README.TXT file before trying to ' set up this chat -- in order to help them a bit we check if we have the ' required objects properly initialised On Error Resume Next If (NOT IsObject(conquerChatUsers) OR NOT IsObject(conquerChatRooms)) Then Response.Redirect("errorInSetup.asp") Response.End End If Dim userId userId = Request("userId") ' do not show login screen if a valid session exists If (userId <> "") Then Response.Redirect "frames.asp?userId=" & userId Response.End End If Dim mode, errorMessage mode = Request("mode") If (mode = "userLogin") Then Dim userName userName = Server.HTMLEncode(Request("username")) If (countUsers() >= USERS) Then errorMessage = getMsg("error.maximum_users_reached") ElseIf (Len(userName) = 0) Then errorMessage = getMsg("error.missing_username") ElseIf (Len(userName) > MAX_USERNAME_LENGTH) Then errorMessage = getMsg("error.username_length_exceeded", MAX_USERNAME_LENGTH) ElseIf (userExists(userName)) Then errorMessage = getMsg("error.username_in_use") ElseIf (NOT isValidUsername(userName)) Then errorMessage = getMsg("error.invalid_username") ElseIf (isUserNameBlocked(userName)) Then errorMessage = getMsg("error.username_blocked") Else Dim p Set p = New Person p.id = -1 p.name = userName p.roomId = 0 p.ipAddress = Request.ServerVariables("REMOTE_ADDR") ' we have a new chat user thus we need to create a new ' id for him/her Set p = addUser(p) ' tell all other users about this new user Call addMessage( _ p.id, _ "-1", _ " " & getMsg("user.logged_on", p.name, Now()) & "
" _ ) ' redirect to new frame window and create a new user login Response.Redirect("frames.asp?userId=" & p.id) Response.End End If End If ' > If (mode = "userLogin") Then ' make sure we don't show any inactive users for new chat users kickInactiveUsers() If (conquerChatRooms.Count = 0) Then setupRooms() End If %> <%= APPLICATION_NAME %> <% If (Len(errorMessage) > 0) Then %>

<%= errorMessage %>
<% End If %>
<%= getMsg("login.join_chat", APPLICATION_NAME) %>

  <%= getMsg("login.username") %>  
  " border=0 tabindex=2 title="<%= getMsg("button.login.title") %>">  
 


 
  <% If (countUsers() <> 0) Then %> <% ' display all users and their associated rooms Dim user, room_ For Each userId In conquerChatUsers Set user = getUser(userId) Set room_ = getRoom(user.roomId) If (room_ Is Nothing) Then Set room_ = New Room room_.name = "N/A" End If Response.Write("") Response.Write(" ") Response.Write(" ") Response.Write(" " & vbCrLf) Response.Write("") Next %> <% Else %> <% End If %>
<%= getMsg("login.users_online") %>
  <%= getMsg("login.header.username") %> <%= getMsg("login.header.room") %>
" & user.name & "" & Server.HTMLEncode(room_.name) & "

<%= getMsg("login.users_logged_on", countUsers(), USERS) %>
 <%= getMsg("login.no_users_online") %>
 

[This is the development version of ConquerChat -- you are able to log on to test the features of it but errors might occur since I'm working directly on this one. This chat may not show the exact downloadable source either since I might be in the progress of developing additional features. If you're interested in getting the free ASP source code for this chat, visit the ConquerChat section where you're able to download all versions.]