%@ Language=VBScript %>
<%
strAction = Request.QueryString("mode")
strReferer = Request.QueryString("referer")
if len(strReferer) = 0 then strReferer = "default.asp"
blnAdvanced = false
blnError = false
if Request.Form("advanced") = "check" then
blnAdvcheck = true
else
blnAdvcheck = false
end if
select case strAction
case "new"
strMessage = "Sie müssen sich erst als Partner anmelden."
blnAdvanced = true
case "timeout"
strMessage = "Das Konto wurde wegen Zeitüberschreitung deaktiviert, da Ihre Anmeldung jeweils für ein Jahr guültig ist!"
case "login"
strMessage = "Bitte melden Sie sich an..."
case "check"
blnAdvanced = true
fldName = trim(Request.Form("fldName"))
fldPass = trim(Request.Form("fldPass"))
fldPass2 = trim(Request.Form("fldPass2"))
fldMembr = trim(lcase(Request.Form("fldMembr")))
strError = "
"
if blnAdvcheck then
if fldPass <> fldPass2 then
strError = strError & "Kennwort und Wiederholung stimmen nicht überein "
blnError = true
end if
if len(fldName) < 4 then
strError = strError & "Name muss mindestens vier Zeichen haben "
blnError = true
end if
else
if len(fldPass) < 4 then
strError = strError & "Name muss mindestens vier Zeichen haben "
blnError = true
end if
end if
regex = "^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+\.([a-zA-Z]{2,3})$"
set objRx = new RegExp
objRx.Pattern = regex
objRx.IgnoreCase = true
set objMatch = objRx.Execute(fldMembr)
if objMatch.Count = 0 then
strError = strError & "Die E-Mail-Adresse ist nicht korrekt "
blnError = true
end if
if not blnError then
set objConn = Server.CreateObject("ADODB.Connection")
set objRS = Server.CreateObject("ADODB.RecordSet")
objConn.Open strConn
query = "SELECT * FROM members"
objRS.Open query, objConn, adOpenKeyset, adLockOptimistic
objRS.Filter = "member = '" & fldMembr & "'"
if objRS.EOF and blnAdvcheck then
objRS.AddNew
objRS.Fields("member") = fldMembr
objRS.Fields("name") = fldName
objRS.Fields("password") = fldPass
objRS.Fields("timestamp") = now()
objRS.Fields("success") = 1
objRS.Fields("success") = 0
objRs.Update
Session("member") = fldMembr
Response.Redirect strReferer
elseif not objRS.EOF then
if fldPass = objRS("password") then
if not blnAdvcheck then
objRS.Fields("success") = objRS.Fields("success") + 1
objRS.Update
Session("member") = fldMembr
Response.Redirect strReferer
end if
strError = strError & "Die E-Mail-Adresse und Kennwort sind vorhanden. Wollen Sie sich mit diesen Informationen anmelden? "
blnAdvanced = false
else
objRS.Fields("failed") = objRS.Fields("failed") + 1
if objRS.Fields("failed") >= 3 then
objRS.Fields("failed") = 0
strError = strError & "Drei Fehlversuche: Konto wird gesperrt... "
blnAdvanced = true
else
strError = strError & "Die E-Mail-Adresse existiert schon mit einem anderen Kennwort. Versuchen Sie es mit einem anderen Kennwort. "
blnAdvanced = false
end if
objRs.Update
end if
else
strError = strError & "Name oder Kennwort nicht gefunden, bitte melden Sie sich neu an. "
end if
end if
strError = strError & "