Forum Moderators: open
<%
'* **********************************************************************
'* MODULE : frmkontakthandler.asp
'* AUTHOR : WebJoe
'* CREATED : Dec 11 2002
'* COMPATIBILITY : MS WinNT 4.0 Server, IIS4 w/ Option Pack 4 & simple SMTP
'* DESCRIPTION : Sends mail with text from a form
'* The following fields are mandatory in the form:
'* cmbKontakt, tbsEmail, tbsCc, tbsBcc, tbsSubject,
'* tbnImportance, tbsAnswerfile.
'* COPYRIGHT : Copyright (c) 2002 WebJoe.
'* DISTRIBUTION : Freely redistributable. Use at your own risk.
'* **********************************************************************Dim lsKontakt, lsFrmField, lsMsgBody
Dim lsFrmFrom, lsFrmTo, lsFrmCc, lsFrmBcc, lsFrmSubject, lsFrmImportance, lsFrmRedirect
Dim lsClientIP, lsClientUA
Dim loCDOMail'-------------------------------------------------------
' Get values from hidden fields for sending the mail
'-------------------------------------------------------lnKontakt = Request.Form("cmbKontakt")
lsFrmFrom = Request.Form("tbsEmail")
lsFrmCc = Request.Form("tbsCc")
lsFrmBcc = Request.Form("tbsBcc")
lsFrmSubject = Request.Form("tbsSubject")
lsFrmImportance = Request.Form("tbnImportance")
lsFrmRedirect = Request.Form("tbsAnswerfile")'-------------------------------------------------------
' Evaluate recipient
'-------------------------------------------------------Select Case lnKontakt
Case 1
lsfrmTo = "izv-obmann@yourdomain.tld"
Case 2
lsfrmTo = "2.izv-obmann@yourdomain.tld"
Case 3
lsFrmTo = "webmaster@yourdomain.tld"
Case 4
lsFrmTo = "redaktion@yourdomain.tld"
Case 5
lsFrmTo = "constaffel@yourdomain.tld"
Case 6
lsFrmTo = "drei-koenige@yourdomain.tld"
Case 7
lsFrmTo = "fluntern@yourdomain.tld"
Case 8
lsFrmTo = "gerwe-schuhmacher@yourdomain.tld"
Case 9
lsFrmTo = "hard@yourdomain.tld"
Case 10
lsFrmTo = "hoengg@yourdomain.tld"
Case 11
lsFrmTo = "hottingen@yourdomain.tld"
Case 12
lsFrmTo = "kaembel@yourdomain.tld"
Case 13
lsFrmTo = "letzi@yourdomain.tld"
Case 14
lsFrmTo = "meisen@yourdomain.tld"
Case 15
lsFrmTo = "oberstrass@yourdomain.tld"
Case 16
lsFrmTo = "riesbach@yourdomain.tld"
Case 17
lsFrmTo = "saffran@yourdomain.tld"
Case 18
lsFrmTo = "schiffleuten@yourdomain.tld"
Case 19
lsFrmTo = "schmiden@yourdomain.tld"
Case 20
lsFrmTo = "schneidern@yourdomain.tld"
Case 21
lsFrmTo = "schwamendingen@yourdomain.tld"
Case 22
lsFrmTo = "st.niklaus@yourdomain.tld"
Case 23
lsFrmTo = "stadtzunft@yourdomain.tld"
Case 24
lsFrmTo = "waag@yourdomain.tld"
Case 25
lsFrmTo = "weggen@yourdomain.tld"
Case 26
lsFrmTo = "widder@yourdomain.tld"
Case 27
lsFrmTo = "wiedikon@yourdomain.tld"
Case 28
lsFrmTo = "witikon@yourdomain.tld"
Case 29
lsFrmTo = "wollishofen@yourdomain.tld"
Case 30
lsFrmTo = "zimmerleuten@yourdomain.tld"
Case Else
lsFrmTo = "info@yourdomain.tld"
End Select'-------------------------------------------------------
' If values are empty, put in some defaults
'-------------------------------------------------------If lsFrmFrom = "" Then
lsFrmFrom = "contact form <frmkontakt@yourdomain.tld>"
End IfIf lsFrmCc = "" Then
lsFrmCc = lsFrmCc
End IfIf lsFrmBcc = "" Then
lsFrmBcc = "frmkontakt@yourdomain.tld"
End IfIf lsFrmSubject = "" Then
lsFrmSubject = "Default subject"
End IfIf lsFrmImportance = "" Then
lsFrmImportance = 1 ' 0: Low, 1: Normal, 2: High
End IfIf lsFrmRedirect = "" Then
lsFrmRedirect = ""
End If'-------------------------------------------------------
'Get all form elements and structure the e-mail
'-------------------------------------------------------For Each lsFrmField In Request.Form
Select Case lsFrmField
Case "tbsEmail", "cmbKontakt", "tbsCc", "tbsBcc", "tbsSubject", "tbnImportance", "tbsAnswerfile"
lsMsgBody = lsMsgBody
Case Else
lsMsgBody = lsMsgBody & Mid(lsFrmField, 4, Len(lsFrmField)-3) & _
Space(25-Len(lsFrmField)) & ": " & Request.Form(lsFrmField) & vbCrLf
End Select
NextlsMsgBody = "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" & vbCrLf & _
lsFrmSubject & vbCrLf & _
"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" & vbCrLf & vbCrLf & _
lsMsgBody & vbCrLf & _
"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" & vbCrLf & vbCrLf & _
"Script Provided by Chris A. Lutz" & vbCrLfIf lsFrmTo = "info@yourdomain.tld" Or lsFrmTo = "webmaster@yourdomain.tld" then
lsMsgBody = lsMsgBody & _
"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" & vbCrLf & _
"User agent : " & lsClientUA & vbCrLf & _
"Remote address : " & lsClientIP & vbCrLf
End If'-------------------------------------------------------
'Get values from hidden fields for sending the mail
'-------------------------------------------------------Set loCDOMail = Server.CreateObject("CDONTS.NewMail")
loCDOMail.BodyFormat = 1
loCDOMail.MailFormat = 1
loCDOMail.From = lsFrmFrom
loCDOMail.To = lsFrmTo
loCDOMail.CC = lsFrmCc
loCDOMail.BCC = lsFrmBcc
loCDOMail.Subject = lsFrmSubject
loCDOMail.Importance = lsFrmImportance
loCDOMail.Body = lsMsgBody'--------------------------------------------------
'Sending the text and error handling
'--------------------------------------------------loCDOMail.Send
If Err.Number = 0 Then ' OK?
If lsFrmRedirect = "" Then
Response.Write "<P>Thank you.</P>"
Else
Response.Redirect(lsFrmRedirect)
End If
Else ' Not OK!
Response.Write "<P>An error has occured. Please " _
& "contact the administrator." _
& "Error: " & objSend.Response & "</P>"
End IfSet loCDOMail = Nothing
%>