%
'
' $Id: default.asp,v 1.1.1.1 2003/03/09 22:45:57 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(conquerChatPrivUsers) OR NOT IsObject(conquerChatPrivRooms)) Then
Response.Redirect("errorInSetup.asp")
Response.End
End If
Dim userId
' do not show login screen if a valid session exists
If (loggedOn()) Then
Response.Redirect "frames.asp"
Response.End
End If
Dim mode, errorMessage
mode = Request("mode")
If (mode = "userLogin") Then
Dim userName,userPassword
userName = Server.HTMLEncode(Request("username"))
userPassword = Server.HTMLEncode(Request("userpassword"))
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 (NOT tieneAudiencia(userName,userPassword)) Then
errorMessage = getMsg("error.no_tiene_audiencia")
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()) & " " _
)
Session("user") = p.data
' redirect to new frame window and create a new user login
Response.Redirect("frames.asp")
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 (conquerChatPrivRooms.Count = 0) Then
setupRooms()
End If
%>
<%= getMsg("application.name") %>
<% If (Len(errorMessage) > 0) Then %>
<%
' display all users and their associated rooms
Dim user, room_
For Each userId In conquerChatPrivUsers
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("