<%@ LANGUAGE="VBScript" %> <% referers = Array("www.promail.co.uk") mailComp = "CDOSYS" smtpServer = "intmail.atlas.pipex.net" fromAddr = "web@promail.co.uk" Response.Buffer = true errorMsgs = Array() 'Check for form data. '-------------------- If Request.ServerVariables("Content_Length") = 0 then call AddErrorMsg("No form data submitted.") End If 'Check if referer is allowed. '---------------------------- if UBound(referers) >= 0 then validReferer = false referer = GetHost(Request.ServerVariables("HTTP_REFERER")) for each host in referers if host = referer then validReferer = true end if next if not validReferer then if referer = "" then call AddErrorMsg("No referer.") else call AddErrorMsg("Invalid referer: '" & referer & "'.") end if end if end if 'Check for the recipients field. '------------------------------- if Request.Form("_recipients") = "" then call AddErrorMsg("Missing email recipient.") end if 'Check all recipient email addresses. '------------------------------------ recipients = Split(Request.Form("_recipients"), ",") for each name in recipients name = Trim(name) if not IsValidEmailAddress(name) then call AddErrorMsg("Invalid email address in recipient list: " & name & ".") end if next recipients = Join(recipients, ",") 'Get replyTo email address from specified field, if given, and check it. '------------------------------------------------------------------------ name = Trim(Request.Form("_replyToField")) if name <> "" then replyTo = Request.Form(name) else replyTo = Request.Form("_replyTo") end if if replyTo <> "" then if not IsValidEmailAddress(replyTo) then call AddErrorMsg("Invalid email address in reply-to field: " & replyTo & ".") end if end if 'Get subject text. subject = Request.Form("_subject") 'If required fields are specified, check for them. '------------------------------------------------- if Request.Form("_requiredFields") <> "" then required = Split(Request.Form("_requiredFields"), ",") for each name in required name = Trim(name) if Left(name, 1) <> "_" and Request.Form(name) = "" then call AddErrorMsg("Missing value for " & name) end if next end if 'If a field order was given, use it. Otherwise use the order the fields were received in. '---------------------------------------------------------------------------------------- str = "" if Request.Form("_fieldOrder") <> "" then fieldOrder = Split(Request.Form("_fieldOrder"), ",") for each name in fieldOrder if str <> "" then str = str & "," end if str = str & Trim(name) next fieldOrder = Split(str, ",") else fieldOrder = FormFieldList() end if 'If there were no errors, build the email note and send it. '---------------------------------------------------------- if UBound(errorMsgs) < 0 then 'Build table of form fields and values. '-------------------------------------- 'body = "" & vbCrLf 'for each name in fieldOrder 'body = body _ ' & "" _ ' & "" _ ' & "" _ '& "" & vbCrLf 'next 'body = body & "
" & name & ":" & Request.Form(name) & "
" & vbCrLf body = "The following details have been sent:

" body = body & "Name : " & Request.Form("txtContactName") & "

" body = body & "Job Title : " & Request.Form("txtContactJobTitle") & "

" body = body & "Company Name : " & Request.Form("txtContactCompanyName") & "

" body = body & "Address Line : " & Request.Form("txtContactAddressLine1") & " " & Request.Form("txtContactAddressline2") & "

" body = body & "Town : " & Request.Form("txtContactTown") & "

" body = body & "Country : " & Request.Form("txtContactCountry") & "

" body = body & "PostCode : " & Request.Form("txtContactPostCode") & "

" body = body & "Tel : " & Request.Form("txtContactTel") & "

" body = body & "Fax : " & Request.Form("txtContactFax") & "

" body = body & "Email Address : " & Request.Form("txtContactEmailAddress") & "

" body = body & "Type of Business : " & Request.Form("txtContactTypeofBusiness") & "

" body = body & "Mail Volume : " & Request.Form("selContactMailVolume") & "

" body = body & "Areas of Interest : " & Request.Form("selContactAreasofInterest") & "

" body = body & "Other : " & Request.Form("txtContactOther") & "

" body = body & "Comments : " & Request.Form("txtContactComments") 'Add a table for any requested environmental variables. '------------------------------------------------------ 'if Request.Form("_envars") <> "" then ' body = body _ ' & "

 

" & vbCrLf _ ' & "" & vbCrLf ' envars = Split(Request.Form("_envars"), ",") ' for each name in envars ' name = Trim(name) ' body = body _ ' & "" _ ' & "" _ ' & "" _ ' & "" & vbCrLf ' next ' body = body & "
" & name & ":" & Request.ServerVariables(name) & "
" & vbCrLf 'end if 'Send it. '-------- str = SendMail() if str <> "" then AddErrorMsg(str) end if 'Redirect if a URL was given. '---------------------------- If Request.Form("_redirect") <> "" then Response.Redirect(Request.Form("_redirect")) End If End if %> ProMail - Mailing Machines & Mailing Equipment - Contact Us
 
Home Home Site Map SiteMap Contact Us Contact Us
Promail - Mailroom Technology, Mailroom Supplies, Mailroom Service
Promail - Mailroom Technology, Mailroom Supplies, Mailroom Service
 
Home >> Contact Us

Last Updated:

   
 
ProMail - How to Contact Us
 

If you're looking to improve the efficiency in your mailroom, please come and visit us at our headquarters in Brackley. You'll also be able to have a look around our workshops and see live demos of some of the mailing equipment we have on offer. We’re sure we’ll be able to help you; otherwise we will certainly know someone that can assist you if we’re unable to.

For further details about specific equipment or to discuss your requirements, please contact the sales department on 01280 709590.

You can place your orders with Promail directly by telephone, fax or you can send an email to sales@promail.co.uk.

Please contact parts@promail.co.uk for all your mailing and printing consumable requirements. We endeavour to always have the parts in stock, which can be despatched quickly to you, at very competitive prices.


Promail Ltd
Units 12 & 13 Network 43
Buckingham Court
Buckingham Road
Brackley
Northants
NN13 7EU
Get a detailed map from Multimap
Tel: +44 (0)1280 709590
Fax: +44 (0)1280 706200
Email: sales@promail.co.uk
Directions: Take the M40 to Junction 10 or the M1 to Junction 15A (A43). Follow the A43 towards Brackley. as you pass Brackley town centre on the main A43, follow the signs for Buckingham Road Industry. This is just off the main A43 at the junction with the A422. Network 43 is the second left turning on Buckingham Road.

Home | Mailing Equipment | Refurbished Sales | Service & Parts

News & Features | Special Offers | Consumables | Contact Us

 
Links
Kalmar Mail Pro Inserters
Belca Polywrappers
MCS Array Inkjet Printers
Mercure Envelope Sealers
StreamFeeder Specialist Paper Feeders
Hefter SystemForm Paper Bursters
Morgana Folders
 
   
 
Terms . Privacy . Contact Us . SiteMap © Copyright ProMail 2009  
   
  <% '--------------------------------------------------------------------------- ' Subroutines and functions. '--------------------------------------------------------------------------- Sub AddErrorMsg(msg) dim n 'Add an error message to the list. '--------------------------------- n = UBound(errorMsgs) Redim Preserve errorMsgs(n + 1) errorMsgs(n + 1) = msg end sub function GetHost(url) dim i, s GetHost = "" 'Strip down to host or IP address and port number, if any. if Left(url, 7) = "http://" then s = Mid(url, 8) elseif Left(url, 8) = "https://" then s = Mid(url, 9) end if i = InStr(s, "/") if i > 1 then s = Mid(s, 1, i - 1) end if getHost = s end function 'Define the global list of valid TLDs. dim validTlds function IsValidEmailAddress(emailAddr) dim i, localPart, domain, charCode, subdomain, subdomains, tld 'Check for valid syntax in an email address. IsValidEmailAddress = true 'Parse out the local part and the domain. i = InStrRev(emailAddr, "@") if i <= 1 then IsValidEmailAddress = false exit function end if localPart = Left(emailAddr, i - 1) domain = Mid(emailAddr, i + 1) if Len(localPart) < 1 or Len(domain) < 3 then IsValidEmailAddress = false exit function end if 'Check for invalid characters in the local part. for i = 1 to Len(localPart) charCode = Asc(Mid(localPart, i, 1)) if charCode < 32 or charCode >= 127 then IsValidEmailAddress = false exit function end if next 'Check for invalid characters in the domain. domain = LCase(domain) for i = 1 to Len(domain) charCode = Asc(Mid(domain, i, 1)) if not ((charCode >= 97 and charCode <= 122) or (charCode >= 48 and charCode <= 57) or charCode = 45 or charCode = 46) then IsValidEmailAddress = false exit function end if next 'Check each subdomain. subdomains = Split(domain, ".") for each subdomain in subdomains if Len(subdomain) < 1 then IsValidEmailAddress = false exit function end if next 'Last subdomain should be a TDL. tld = subdomains(UBound(subdomains)) if not IsArray(validTlds) then call SetValidTlds() end if for i = LBound(validTlds) to UBound(validTlds) if tld = validTlds(i) then exit function end if next IsValidEmailAddress = false end function sub setValidTlds() 'Load the global list of valid TLDs. validTlds = Array("aero", "biz", "com", "coop", "edu", "gov", "info", "int", "mil", "museum", "name", "net", "org", "pro", _ "ac", "ad", "ae", "af", "ag", "ai", "al", "am", "an", "ao", "aq", "ar", "as", "at", "au", "aw", "az", _ "ba", "bb", "bd", "be", "bf", "bg", "bh", "bi", "bj", "bm", "bn", "bo", "br", "bs", "bt", "bv", "bw", "by", "bz", _ "ca", "cc", "cd", "cf", "cg", "ch", "ci", "ck", "cl", "cm", "cn", "co", "cr", "cu", "cv", "cx", "cy", "cz", _ "de", "dj", "dk", "dm", "do", "dz", "ec", "ee", "eg", "eh", "er", "es", "et", _ "fi", "fj", "fk", "fm", "fo", "fr", _ "ga", "gd", "ge", "gf", "gg", "gh", "gi", "gl", "gm", "gn", "gp", "gq", "gr", "gs", "gt", "gu", "gw", "gy", _ "hk", "hm", "hn", "hr", "ht", "hu", _ "id", "ie", "il", "im", "in", "io", "iq", "ir", "is", "it", _ "je", "jm", "jo", "jp", _ "ke", "kg", "kh", "ki", "km", "kn", "kp", "kr", "kw", "ky", "kz", _ "la", "lb", "lc", "li", "lk", "lr", "ls", "lt", "lu", "lv", "ly", _ "ma", "mc", "md", "mg", "mh", "mk", "ml", "mm", "mn", "mo", "mp", "mq", "mr", "ms", "mt", "mu", "mv", "mw ", "mx", "my", "mz", _ "na", "nc", "ne", "nf", "ng", "ni", "nl", "no", "np", "nr", "nu", "nz", _ "om", _ "pa", "pe", "pf", "pg", "ph", "pk", "pl", "pm", "pn", "pr", "ps", "pt", "pw", "py", _ "qa", _ "re", "ro", "ru", "rw", _ "sa", "sb", "sc", "sd", "se", "sg", "sh", "si", "sj", "sk", "sl", "sm", "sn", "so", "sr", "st", "sv", "sy", "sz", _ "tc", "td", "tf", "tg", "th", "tj", "tk", "tm", "tn", "to", "tp", "tr", "tt", "tv", "tw", "tz", _ "ua", "ug", "uk", "um", "us", "uy", "uz", _ "va", "vc", "ve", "vg", "vi", "vn", "vu", _ "wf", "ws", _ "ye", "yt", "yu", _ "za", "zm", "zw") end sub function FormFieldList() dim str, i, name 'Build an array of form field names ordered as they were received. str = "" for i = 1 to Request.Form.Count for each name in Request.Form if Left(name, 1) <> "_" and Request.Form(name) is Request.Form(i) then if str <> "" then str = str & "," end if str = str & name exit for end if next next FormFieldList = Split(str, ",") end function function SendMail() dim mailObj, cdoMessage, cdoConfig dim addrList 'Send email based on mail component. Uses global variables for parameters 'because there are so many. SendMail = "" 'Send email (CDONTS version). Note: CDONTS has no error checking. if mailComp = "CDONTS" then set mailObj = Server.CreateObject("CDONTS.NewMail") mailObj.BodyFormat = 0 mailObj.MailFormat = 0 mailObj.From = fromAddr mailObj.Value("Reply-To") = replyTo mailObj.To = recipients mailObj.Subject = subject mailObj.Body = body mailObj.Send set mailObj = Nothing exit function end if 'Send email (CDOSYS version). if mailComp = "CDOSYS" then set cdoMessage = Server.CreateObject("CDO.Message") set cdoConfig = Server.CreateObject("CDO.Configuration") cdoConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = smtpServer cdoConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25 cdoConfig.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 cdoConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 cdoConfig.Fields("http://schemas.microsoft.com/cdo/configuration/sendusername") = "web@promail.co.uk" cdoConfig.Fields("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "S?y5/2EcGw" cdoConfig.Fields.Update set cdoMessage.Configuration = cdoConfig cdoMessage.From = fromAddr cdoMessage.ReplyTo = replyTo cdoMessage.To = recipients cdoMessage.Subject = "Promail - Contact Enquiry" cdoMessage.HtmlBody = body on error resume next cdoMessage.Send if Err.Number <> 0 then SendMail = "Email send failed: " & Err.Description & "." end if set cdoMessage = Nothing set cdoConfig = Nothing exit function end if 'Send email (JMail version). if mailComp = "JMail" then set mailObj = Server.CreateObject("JMail.SMTPMail") mailObj.Silent = true mailObj.ServerAddress = smtpServer mailObj.Sender = fromAddr mailObj.ReplyTo = replyTo mailObj.Subject = subject addrList = Split(recipients, ",") for each addr in addrList mailObj.AddRecipient Trim(addr) next mailObj.ContentType = "text/html" mailObj.Body = body if not mailObj.Execute then SendMail = "Email send failed: " & mailObj.ErrorMessage & "." end if exit function end if 'Send email (ASPMail version). if mailComp = "ASPMail" then set mailObj = Server.CreateObject("SMTPsvg.Mailer") mailObj.RemoteHost = smtpServer mailObj.FromAddress = fromAddr mailObj.ReplyTo = replyTo for each addr in Split(recipients, ",") mailObj.AddRecipient "", Trim(addr) next mailObj.Subject = subject mailObj.ContentType = "text/html" mailObj.BodyText = body if not mailObj.SendMail then SendMail = "Email send failed: " & mailObj.Response & "." end if exit function end if end function %>