| Nutritional Guidance - Health Clubs - Gyms - 24 Hour Fitness Centers -Open 24 Hours - Personal Training - Group Exercise - Weight Loss Programs - Bootcamp - Boxing - Denton Texas - Justin Texas - Argyle Texas | |||
![]() |
|||
| <% xDb_Conn_Str = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Request.ServerVariables("APPL_PHYSICAL_PATH") & "\_data\sitedata01.mdb" & ";" ' Function to Adjust SQL Function AdjustSql(str) Dim sWrk sWrk = Trim(str & "") sWrk = Replace(sWrk, "'", "''") ' Adjust for Single Quote sWrk = Replace(sWrk, "[", "[[]") ' Adjust for Open Square Bracket AdjustSql = sWrk End Function ' Function to Build SQL Function ewBuildSql(sSelect, sWhere, sGroupBy, sHaving, sOrderBy, sFilter, sSort) Dim sSql, sDbWhere, sDbOrderBy sDbWhere = sWhere If sDbWhere <> "" Then sDbWhere = "(" & sDbWhere & ")" End If If sFilter <> "" Then If sDbWhere <> "" Then sDbWhere = sDbWhere & " AND " sDbWhere = sDbWhere & "(" & sFilter & ")" End If sDbOrderBy = sOrderBy If sSort <> "" Then sDbOrderBy = sSort End If sSql = sSelect If sDbWhere <> "" Then sSql = sSql & " WHERE " & sDbWhere End If If sGroupBy <> "" Then sSql = sSql & " GROUP BY " & sGroupBy End If If sHaving <> "" Then sSql = sSql & " HAVING " & sHaving End If If sDbOrderBy <> "" Then sSql = sSql & " ORDER BY " & sDbOrderBy End If ewBuildSql = sSql End Function %> <% Response.Expires = 0 Response.ExpiresAbsolute = Now() - 1 Response.AddHeader "pragma", "no-cache" Response.AddHeader "cache-control", "private, no-cache, no-store, must-revalidate" %> <% ' Initialize common variables x_ID = Null: ox_ID = Null: z_ID = Null x_department = Null: ox_department = Null: z_department = Null x_pageorder = Null: ox_pageorder = Null: z_pageorder = Null x_status = Null: ox_status = Null: z_status = Null x_pagename = Null: ox_pagename = Null: z_pagename = Null x_main = Null: ox_main = Null: z_main = Null x_subcontent = Null: ox_subcontent = Null: z_subcontent = Null x_bottom = Null: ox_bottom = Null: z_bottom = Null %> <% nStartRec = 0 nStopRec = 0 nTotalRecs = 0 nRecCount = 0 nRecActual = 0 sDbWhereMaster = "" sDbWhereDetail = "" sSrchAdvanced = "" psearch = "" psearchtype = "" sSrchBasic = "" sSrchWhere = "" sDbWhere = "" sOrderBy = "" sSqlMaster = "" nDisplayRecs = 20 nRecRange = 10 ' Open connection to the database Set conn = Server.CreateObject("ADODB.Connection") conn.Open xDb_Conn_Str ' Handle Reset Command ResetCmd() ' Build Filter condition sDbWhere = "" If sDbWhereDetail <> "" Then If sDbWhere <> "" Then sDbWhere = sDbWhere & " AND " sDbWhere = sDbWhere & "(" & sDbWhereDetail & ")" End If If sSrchWhere <> "" Then If sDbWhere <> "" Then sDbWhere = sDbWhere & " AND " sDbWhere = sDbWhere & "(" & sSrchWhere & ")" End If ' Set Up Sorting Order sOrderBy = "" SetUpSortOrder() ' Set up SQL sSql = ewBuildSql(ewSqlSelect, ewSqlWhere, ewSqlGroupBy, ewSqlHaving, ewSqlOrderBy, sDbWhere, sOrderBy) 'Response.Write sSql ' Uncomment to show SQL for debugging %> <% ' Set up Record Set Set rs = Server.CreateObject("ADODB.Recordset") rs.CursorLocation = 2 rs.Open sSql, conn, 1, 2 nTotalRecs = rs.RecordCount If nDisplayRecs <= 0 Then ' Display All Records nDisplayRecs = nTotalRecs End If nStartRec = 1 SetUpStartRec() ' Set Up Start Record Position %> <% If Session(ewSessionMessage) <> "" Then %> <%= Session(ewSessionMessage) %> <% Session(ewSessionMessage) = "" ' Clear message End If %> <% If nTotalRecs > 0 Then %> <% End If %> <% ' Close recordset and connection rs.Close Set rs = Nothing conn.Close Set conn = Nothing %> <% '------------------------------------------------------------------------------- ' Function ResetSearch ' - Clear all search parameters ' Sub ResetSearch() ' Clear search where sSrchWhere = "" Session(ewSessionTblSearchWhere) = sSrchWhere ' Clear advanced search parameters Session(ewSessionTblAdvSrch & "_x_ID") = "" Session(ewSessionTblAdvSrch & "_x_department") = "" Session(ewSessionTblAdvSrch & "_x_pageorder") = "" Session(ewSessionTblAdvSrch & "_x_status") = "" Session(ewSessionTblAdvSrch & "_x_pagename") = "" Session(ewSessionTblAdvSrch & "_x_main") = "" Session(ewSessionTblAdvSrch & "_x_subcontent") = "" Session(ewSessionTblAdvSrch & "_x_bottom") = "" Session(ewSessionTblBasicSrch) = "" Session(ewSessionTblBasicSrchType) = "" End Sub '------------------------------------------------------------------------------- ' Function RestoreSearch ' - Restore all search parameters ' Sub RestoreSearch() ' Restore advanced search settings x_ID = Session(ewSessionTblAdvSrch & "_x_ID") x_department = Session(ewSessionTblAdvSrch & "_x_department") x_pageorder = Session(ewSessionTblAdvSrch & "_x_pageorder") x_status = Session(ewSessionTblAdvSrch & "_x_status") x_pagename = Session(ewSessionTblAdvSrch & "_x_pagename") x_main = Session(ewSessionTblAdvSrch & "_x_main") x_subcontent = Session(ewSessionTblAdvSrch & "_x_subcontent") x_bottom = Session(ewSessionTblAdvSrch & "_x_bottom") psearch = Session(ewSessionTblBasicSrch) psearchtype = Session(ewSessionTblBasicSrchType) End Sub '------------------------------------------------------------------------------- ' Function SetUpSortOrder ' - Set up Sort parameters based on Sort Links clicked ' - Variables setup: sOrderBy, Session(TblOrderBy), Session(Tbl_Field_Sort) Sub SetUpSortOrder() Dim sOrder, sSortField, sLastSort, sThisSort Dim bCtrl ' Check for an Order parameter If Request.QueryString("order").Count > 0 Then sOrder = Request.QueryString("order") ' Field [pagename] If sOrder = "pagename" Then sSortField = "[pagename]" sLastSort = Session(ewSessionTblSort & "_x_pagename") If sLastSort = "ASC" Then sThisSort = "DESC" Else sThisSort = "ASC" Session(ewSessionTblSort & "_x_pagename") = sThisSort Else If Session(ewSessionTblSort & "_x_pagename") <> "" Then Session(ewSessionTblSort & "_x_pagename") = "" End If Session(ewSessionTblOrderBy) = sSortField & " " & sThisSort Session(ewSessionTblStartRec) = 1 End If sOrderBy = Session(ewSessionTblOrderBy) If sOrderBy = "" Then If ewSqlOrderBy <> "" And ewSqlOrderBySessions <> "" Then sOrderBy = ewSqlOrderBy Session(ewSessionTblOrderBy) = sOrderBy Dim arOrderBy, i arOrderBy = Split(ewSqlOrderBySessions, ",") For i = 0 to UBound(arOrderBy)\2 Session(ewSessionTblSort & "_" & arOrderBy(i*2)) = arOrderBy(i*2+1) Next End If End If End Sub '------------------------------------------------------------------------------- ' Function SetUpStartRec ' - Set up Starting Record parameters based on Pager Navigation ' - Variables setup: nStartRec Sub SetUpStartRec() Dim nPageNo ' Check for a START parameter If Request.QueryString(ewTblStartRec).Count > 0 Then nStartRec = Request.QueryString(ewTblStartRec) Session(ewSessionTblStartRec) = nStartRec ElseIf Request.QueryString("pageno").Count > 0 Then nPageNo = Request.QueryString("pageno") If IsNumeric(nPageNo) Then nStartRec = (nPageNo-1)*nDisplayRecs+1 If nStartRec <= 0 Then nStartRec = 1 ElseIf nStartRec >= ((nTotalRecs-1)\nDisplayRecs)*nDisplayRecs+1 Then nStartRec = ((nTotalRecs-1)\nDisplayRecs)*nDisplayRecs+1 End If Session(ewSessionTblStartRec) = nStartRec Else nStartRec = Session(ewSessionTblStartRec) End If Else nStartRec = Session(ewSessionTblStartRec) End If ' Check if correct start record counter If Not IsNumeric(nStartRec) Or nStartRec = "" Then ' Avoid invalid start record counter nStartRec = 1 ' Reset start record counter Session(ewSessionTblStartRec) = nStartRec ElseIf CLng(nStartRec) > CLng(nTotalRecs) Then ' Avoid starting record > total records nStartRec = ((nTotalRecs-1)\nDisplayRecs)*nDisplayRecs+1 ' point to last page first record Session(ewSessionTblStartRec) = nStartRec End If End Sub '------------------------------------------------------------------------------- ' Function ResetCmd ' - Clear list page parameters ' - RESET: reset search parameters ' - RESETALL: reset search & master/detail parameters ' - RESETSORT: reset sort parameters Sub ResetCmd() Dim sCmd ' Get Reset Cmd If Request.QueryString("cmd").Count > 0 Then sCmd = Request.QueryString("cmd") ' Reset Search Criteria If LCase(sCmd) = "reset" Then Call ResetSearch() ' Reset Search Criteria & Session Keys ElseIf LCase(sCmd) = "resetall" Then Call ResetSearch() ' Reset Sort Criteria ElseIf LCase(sCmd) = "resetsort" Then sOrderBy = "" Session(ewSessionTblOrderBy) = sOrderBy If Session(ewSessionTblSort & "_x_pagename") <> "" Then Session(ewSessionTblSort & "_x_pagename") = "" End If ' Reset Start Position (Reset Command) nStartRec = 1 Session(ewSessionTblStartRec) = nStartRec End If End Sub %> |
<%
' ASPMaker 5 configuration
' Project Level Constants
Const ewProjectName = "webshop0307" ' Project Name
Const ewSessionStatus = "webshop0307_status" ' Login Status
Const ewSessionUserName = "webshop0307_status_UserName" ' User Name
Const ewSessionUserID = "webshop0307_status_UserID" ' User ID
Const ewSessionUserLevel = "webshop0307_status_UserLevel" ' User Level
Const ewSessionParentUserID = "webshop0307_status_ParentUserID" ' Parent User ID
Const ewSessionSysAdmin = "webshop0307_SysAdmin" ' System Admin
Const ewSessionArUserLevel = "webshop0307_arUserLevel" ' User Level Array
Const ewSessionArUserLevelPriv = "webshop0307_arUserLevelPriv" ' User Level Privilege Array
Const ewSessionSecurity = "webshop0307_Security" ' Security Array
Const ewSessionMessage = "webshop0307_Message" ' System Message
%>
<%
xDb_Conn_Str = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Request.ServerVariables("APPL_PHYSICAL_PATH") & "\_data\sitedata01.mdb" & ";"
' Function to Adjust SQL
Function AdjustSql(str)
Dim sWrk
sWrk = Trim(str & "")
sWrk = Replace(sWrk, "'", "''") ' Adjust for Single Quote
sWrk = Replace(sWrk, "[", "[[]") ' Adjust for Open Square Bracket
AdjustSql = sWrk
End Function
' Function to Build SQL
Function ewBuildSql(sSelect, sWhere, sGroupBy, sHaving, sOrderBy, sFilter, sSort)
Dim sSql, sDbWhere, sDbOrderBy
sDbWhere = sWhere
If sDbWhere <> "" Then
sDbWhere = "(" & sDbWhere & ")"
End If
If sFilter <> "" Then
If sDbWhere <> "" Then sDbWhere = sDbWhere & " AND "
sDbWhere = sDbWhere & "(" & sFilter & ")"
End If
sDbOrderBy = sOrderBy
If sSort <> "" Then
sDbOrderBy = sSort
End If
sSql = sSelect
If sDbWhere <> "" Then
sSql = sSql & " WHERE " & sDbWhere
End If
If sGroupBy <> "" Then
sSql = sSql & " GROUP BY " & sGroupBy
End If
If sHaving <> "" Then
sSql = sSql & " HAVING " & sHaving
End If
If sDbOrderBy <> "" Then
sSql = sSql & " ORDER BY " & sDbOrderBy
End If
ewBuildSql = sSql
End Function
%>
<%
' ASPMaker 5 configuration
' Table Level Constants
Const ewTblVar = "page"
Const ewTblRecPerPage = "RecPerPage"
Const ewSessionTblRecPerPage = "page_RecPerPage"
Const ewTblStartRec = "start"
Const ewSessionTblStartRec = "page_start"
Const ewTblShowMaster = "showmaster"
Const ewSessionTblMasterKey = "page_MasterKey"
Const ewSessionTblMasterWhere = "page_MasterWhere"
Const ewSessionTblDetailWhere = "page_DetailWhere"
Const ewSessionTblAdvSrch = "page_AdvSrch"
Const ewTblBasicSrch = "psearch"
Const ewSessionTblBasicSrch = "page_psearch"
Const ewTblBasicSrchType = "psearchtype"
Const ewSessionTblBasicSrchType = "page_psearchtype"
Const ewSessionTblSearchWhere = "page_SearchWhere"
Const ewSessionTblSort = "page_Sort"
Const ewSessionTblOrderBy = "page_OrderBy"
Const ewSessionTblKey = "page_Key"
' Table Level SQL
Const ewSqlSelect = "SELECT * FROM [page]"
Const ewSqlWhere = ""
Const ewSqlGroupBy = ""
Const ewSqlHaving = ""
Const ewSqlOrderBy = ""
Const ewSqlOrderBySessions = ""
Const ewSqlKeyWhere = "[ID] = @ID"
Const ewSqlUserIDFilter = ""
%>
<%
' Advanced User Level Security for ASPMaker 5+
Const ewAllowAdd = 1
Const ewAllowDelete = 2
Const ewAllowEdit = 4
Const ewAllowView = 8
Const ewAllowList = 8
Const ewAllowReport = 8
Const ewAllowSearch = 8
Const ewAllowAdmin = 16
Dim arUserLevel ' User Level definitions
Dim arUserLevelPriv ' User Level privileges
' Define User Level Variables
Dim ewCurLvl ' Current user level
ewCurLvl = CurrentUserLevel()
Dim ewCurSec
' No user level security
Sub SetUpUserLevel
End Sub
' Get current user privilege
Function CurrentUserLevelPriv(TableName)
CurrentUserLevelPriv = GetUserLevelPrivEx(TableName, CurrentUserLevel)
End Function
' Get anonymous user privilege
Function GetAnonymousPriv(TableName)
GetAnonymousPriv = GetUserLevelPrivEx(TableName, 0)
End Function
' Get user privilege based on table name and user level
Function GetUserLevelPrivEx(TableName, UserLevel)
GetUserLevelPrivEx = 0
If CStr(UserLevel) = "-1" Then ' System Administrator
GetUserLevelPrivEx = 31
ElseIf UserLevel >= 0 Then
If IsArray(arUserLevelPriv) Then
Dim I
For I = 0 to UBound(arUserLevelPriv, 2)
If CStr(arUserLevelPriv(0, I)) = CStr(TableName) And _
CStr(arUserLevelPriv(1, I)) = CStr(UserLevel) Then
GetUserLevelPrivEx = arUserLevelPriv(2, I)
If IsNull(GetUserLevelPrivEx) Then GetUserLevelPrivEx = 0
If Not IsNumeric(GetUserLevelPrivEx) Then GetUserLevelPrivEx = 0
GetUserLevelPrivEx = CLng(GetUserLevelPrivEx)
Exit For
End If
Next
End If
End If
End Function
' Get current user level name
Function CurrentUserLevelName
GetUserLevelName(CurrentUserLevel)
End Function
' Get user level name based on user level
Function GetUserLevelName(UserLevel)
GetUserLevelName = ""
If CStr(UserLevel) = "-1" Then
GetUserLevelName = "Administrator"
ElseIf UserLevel >= 0 Then
If IsArray(arUserLevel) Then
Dim I
For I = 0 to UBound(arUserLevel, 2)
If CStr(arUserLevel(0, I)) = CStr(UserLevel) Then
GetUserLevelName = arUserLevel(1, I)
Exit For
End If
Next
End If
End If
End Function
' Sub to display all the User Level settings (for debug only)
Sub ShowUserLevelInfo
Dim I
If IsArray(arUserLevel) Then
Response.Write "User Levels: " Response.Write "UserLevelId, UserLevelName " For I = 0 To UBound(arUserLevel, 2) Response.Write " " & arUserLevel(0, I) & ", " & _ arUserLevel(1, I) & " " Next Else Response.Write "No User Level definitions." & " " End If If IsArray(arUserLevelPriv) Then Response.Write "User Level Privs: " Response.Write "TableName, UserLevelId, UserLevelPriv " For I = 0 To UBound(arUserLevelPriv, 2) Response.Write " " & arUserLevelPriv(0, I) & ", " & _ arUserLevelPriv(1, I) & ", " & arUserLevelPriv(2, I) & " " Next Else Response.Write "No User Level privilege settings." & " " End If Response.Write "CurrentUserLevel = " & CurrentUserLevel & " " End Sub ' Function to check privilege for List page (for menu items) Function AllowList(TableName) AllowList = CBool(CurrentUserLevelPriv(TableName) And ewAllowList) End Function ' Get current user name from session Function CurrentUserName CurrentUserName = Session(ewSessionUserName) & "" End Function ' Get current user id from session Function CurrentUserID CurrentUserID = Session(ewSessionUserID) & "" End Function ' Get current parent user id from session Function CurrentParentUserID CurrentParentUserID = Session(ewSessionParentUserID) & "" End Function ' Get current user level from session Function CurrentUserLevel If IsLoggedIn Then CurrentUserLevel = Session(ewSessionUserLevel) Else CurrentUserLevel = 0 ' Anonymous if not logged in End If End Function ' Check if user is logged in Function IsLoggedIn IsLoggedIn = (Session(ewSessionStatus) = "login") End Function ' Check if user is system administrator Function IsSysAdmin IsSysAdmin = (Session(ewSessionSysAdmin) = 1) End Function ' Save user level to session Sub SaveUserLevel Session(ewSessionArUserLevel) = arUserLevel Session(ewSessionArUserLevelPriv) = arUserLevelPriv End Sub ' Load user level from session Sub LoadUserLevel If Not IsArray(Session(ewSessionArUserLevel)) Then SetupUserLevel SaveUserLevel End If arUserLevel = Session(ewSessionArUserLevel) arUserLevelPriv = Session(ewSessionArUserLevelPriv) End Sub %> <% ' ASPMaker functions for ASPMaker 5+ ' (C)2006 e.World Technology Ltd. ' Common constants Const EW_DATE_SEPARATOR = "/" Const EW_SMTPSERVER = "fieldhousefitness.net" Const EW_SMTPSERVER_PORT = 25 Const EW_SMTPSERVER_USERNAME = "fieldhousefitness.net" Const EW_SMTPSERVER_PASSWORD = "" '------------------------------------------------------------------------------- ' Functions for default date format ' ANamedFormat = 0-8, where 0-4 same as VBScript ' 5 = "yyyy/mm/dd" ' 6 = "mm/dd/yyyy" ' 7 = "dd/mm/yyyy" ' 8 = Short Date & " " & Short Time Function EW_FormatDateTime(ADate, ANamedFormat) If IsDate(ADate) Then If ANamedFormat >= 0 And ANamedFormat <= 4 Then EW_FormatDateTime = FormatDateTime(ADate, ANamedFormat) ElseIf ANamedFormat = 5 Then EW_FormatDateTime = Year(ADate) & EW_DATE_SEPARATOR & Month(ADate) & EW_DATE_SEPARATOR & Day(ADate) ElseIf ANamedFormat = 6 Then EW_FormatDateTime = Month(ADate) & EW_DATE_SEPARATOR & Day(ADate) & EW_DATE_SEPARATOR & Year(ADate) ElseIf ANamedFormat = 7 Then EW_FormatDateTime = Day(ADate) & EW_DATE_SEPARATOR & Month(ADate) & EW_DATE_SEPARATOR & Year(ADate) ElseIf ANamedFormat = 8 Then EW_FormatDateTime = FormatDateTime(ADate, 2) If Hour(ADate) <> 0 Or Minute(ADate) <> 0 Or Second(ADate) <> 0 Then EW_FormatDateTime = EW_FormatDateTime & " " & FormatDateTime(ADate, 4) & ":" & ewZeroPad(Second(ADate), 2) End If Else EW_FormatDateTime = ADate End If Else EW_FormatDateTime = ADate End If End Function Function EW_UnFormatDateTime(ADate, ANamedFormat) Dim arDateTime, arDate ADate = Trim(ADate & "") While Instr(ADate, " ") > 0 ADate = Replace(ADate, " ", " ") Wend arDateTime = Split(ADate, " ") If UBound(arDateTime) < 0 Then EW_UnFormatDateTime = ADate Exit Function End If arDate = Split(arDateTime(0), EW_DATE_SEPARATOR) If UBound(arDate) = 2 Then If ANamedFormat = 6 Then EW_UnFormatDateTime = arDate(2) & "/" & arDate(0) & "/" & arDate(1) ElseIf ANamedFormat = 7 Then EW_UnFormatDateTime = arDate(2) & "/" & arDate(1) & "/" & arDate(0) ElseIf ANamedFormat = 5 Then EW_UnFormatDateTime = arDate(0) & "/" & arDate(1) & "/" & arDate(2) Else EW_UnFormatDateTime = arDateTime(0) End If If UBound(arDateTime) > 0 Then If IsDate(arDateTime(1)) Then ' Is time EW_UnFormatDateTime = EW_UnFormatDateTime & " " & arDateTime(1) End If End If Else EW_UnFormatDateTime = ADate End If End Function '------------------------------------------------------------------------------- ' Function for format percent Function EW_FormatPercent(Expression, NumDigitsAfterDecimal, IncludeLeadingDigit, UseParensForNegativeNumbers, GroupDigits) On Error Resume Next EW_FormatPercent = FormatPercent(Expression, NumDigitsAfterDecimal, IncludeLeadingDigit, UseParensForNegativeNumbers, GroupDigits) If Err.Number <> 0 Then EW_FormatPercent = FormatNumber(Expression*100, NumDigitsAfterDecimal, IncludeLeadingDigit, UseParensForNegativeNumbers, GroupDigits) & "%" End If End Function ' Note: Object "conn" is required Function ewExecuteScalar(SQL) ewExecuteScalar = Null If Trim(SQL&"") = "" Then Exit Function Dim rs Set rs = conn.Execute(SQL) If Not rs.Eof Then ewExecuteScalar = rs(0) rs.Close Set rs = Nothing End Function '------------------------------------------------------------------------------- ' Function for debug Sub Trace(aMsg) On Error Resume Next Dim fso, ts Set fso = Server.Createobject("Scripting.FileSystemObject") Set ts = fso.OpenTextFile(Server.MapPath("debug.txt"), 8, True) ts.writeline(aMsg) ts.Close Set ts = Nothing Set fso = Nothing End Sub %> <% ' Function to Load Email Content from input file name ' - Content Loaded to the following variables ' - Subject: sEmailSubject ' - From: sEmailFrom ' - To: sEmailTo ' - Cc: sEmailCc ' - Bcc: sEmailBcc ' - Format: sEmailFormat ' - Content: sEmailContent ' sEmailFrom = "": sEmailTo = "": sEmailCc = "": sEmailBcc = "": sEmailSubject = "": sEmailFormat = "": sEmailContent = "" Sub LoadEmail(fn) Dim sWrk, sHeader, arrHeader Dim sName, sValue Dim i, j ' Initialize sEmailFrom = "": sEmailTo = "": sEmailCc = "": sEmailBcc = "": sEmailSubject = "": sEmailFormat = "": sEmailContent = "" sWrk = LoadTxt(fn) ' Load text file content sWrk = Replace(sWrk, vbCrLf, vbLf) ' Convert to Lf sWrk = Replace(sWrk, vbCr, vbLf) ' Convert to Lf If sWrk <> "" Then ' Locate Header & Mail Content i = InStr(sWrk, vbLf&vbLf) If i > 0 Then sHeader = Mid(sWrk, 1, i) sEmailContent = Mid(sWrk, i+2) arrHeader = Split(sHeader, vbLf) For j = 0 to UBound(arrHeader) i = InStr(arrHeader(j), ":") If i > 0 Then sName = Trim(Mid(arrHeader(j), 1, i-1)) sValue = Trim(Mid(arrHeader(j), i+1)) Select Case LCase(sName) Case "subject": sEmailSubject = sValue Case "from": sEmailFrom = sValue Case "to": sEmailTo = sValue Case "cc": sEmailCc = sValue Case "bcc": sEmailBcc = sValue Case "format": sEmailFormat = sValue End Select End If Next End If End If End Sub ' Function to Load a Text File Function LoadTxt(fn) Dim fso, fobj ' Get text file content Set fso = Server.CreateObject("Scripting.FileSystemObject") Set fobj = fso.OpenTextFile(Server.MapPath(fn)) LoadTxt = fobj.ReadAll ' Read all Content fobj.Close Set fobj = Nothing End Function ' Function to Send out Email Sub Send_Email(sFrEmail, sToEmail, sCcEmail, sBccEmail, sSubject, sMail, sFormat) Dim objMail, objConfig, sServerVersion, i, sIISVer Dim sSmtpServer, iSmtpServerPort sServerVersion = Request.ServerVariables("SERVER_SOFTWARE") If InStr(sServerVersion, "Microsoft-IIS") > 0 Then i = InStr(sServerVersion, "/") If i > 0 Then sIISVer = Trim(Mid(sServerVersion, i+1)) End If End If If sIISVer < "5.0" Then ' NT using CDONTS Set objMail = Server.CreateObject("CDONTS.NewMail") objMail.From = sFrEmail objMail.To = Replace(sToEmail, ",", ";") If sCcEmail <> "" Then objMail.Cc = Replace(sCcEmail, ",", ";") End If If sBccEmail <> "" Then objMail.Bcc = Replace(sBccEmail, ",", ";") End If If LCase(sFormat) = "html" Then objMail.BodyFormat = 0 ' 0 means HTML format, 1 means text objMail.MailFormat = 0 ' 0 means MIME, 1 means text End If objMail.Subject = sSubject objMail.Body = sMail objMail.Send Set objMail = Nothing Else ' 2000 / XP / 2003 using CDO ' Set up Configuration Set objConfig = Server.CreateObject("CDO.Configuration") objConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = EW_SMTPSERVER ' cdoSMTPServer objConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = EW_SMTPSERVER_PORT ' cdoSMTPServerPort objConfig.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 If EW_SMTPSERVER_USERNAME <> "" And EW_SMTPSERVER_PASSWORD <> "" Then objConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 'cdoBasic (clear text) objConfig.Fields("http://schemas.microsoft.com/cdo/configuration/sendusername") = EW_SMTPSERVER_USERNAME objConfig.Fields("http://schemas.microsoft.com/cdo/configuration/sendpassword") = EW_SMTPSERVER_PASSWORD End If objConfig.Fields.Update ' Set up Mail Set objMail = Server.CreateObject("CDO.Message") objMail.From = sFrEmail objMail.To = Replace(sToEmail, ",", ";") If sCcEmail <> "" Then objMail.Cc = Replace(sCcEmail, ",", ";") End If If sBccEmail <> "" Then objMail.Bcc = Replace(sBccEmail, ",", ";") End If If LCase(sFormat) = "html" Then objMail.HtmlBody = sMail Else objMail.TextBody = sMail End If objMail.Subject = sSubject If EW_SMTPSERVER <> "" And LCase(EW_SMTPSERVER) <> "localhost" Then Set objMail.Configuration = objConfig ' Use Configuration objMail.Send Else On Error Resume Next objMail.Send ' Send without Configuration If Err.Number <> 0 Then If Hex(Err.Number) = "80040220" Then ' Requires Configuration Set objMail.Configuration = objConfig Err.Clear On Error GoTo 0 objMail.Send Else Dim ErrNo, ErrSrc, ErrDesc ErrNo = Err.Number ErrSrc = Err.Source ErrDesc = Err.Description On Error GoTo 0 Err.Raise ErrNo, ErrSrc, ErrDesc End If End If End If Set objMail = Nothing Set objConfig = Nothing End If End Sub %> <% ' Function to generate Value Separator based on current row count ' rowcnt - zero based row count ' Function ValueSeparator(rowcnt) ValueSeparator = ", " End Function ' Function to generate View Option Separator based on current row count (Multi-Select / CheckBox) ' rowcnt - zero based row count ' Function ViewOptionSeparator(rowcnt) ViewOptionSeparator = ", " ' Sample code to adjust 2 options per row 'If ((rowcnt + 1) Mod 2 = 0) Then ' 2 options per row 'ViewOptionSeparator = ViewOptionSeparator & " " 'End If End Function ' Function to render repeat column table ' rowcnt - zero based row count ' Function RenderControl(totcnt, rowcnt, repeatcnt, rendertype) Dim sWrk sWrk = "" ' Render control start If rendertype = 1 Then If rowcnt = 0 Then sWrk = sWrk & "
" Response.Write "Request.ServerVariables(""APPL_MD_PATH"")=" & _ Request.ServerVariables("APPL_MD_PATH") & " " End Sub '=============================================================================== ' Other functions for file upload (Do not modify) Function stringToByte(toConv) Dim i, tempChar For i = 1 to Len(toConv) tempChar = Mid(toConv, i, 1) stringToByte = stringToByte & ChrB(AscB(tempChar)) Next End Function Private Function ByteToString(ToConv) On Error Resume Next For I = 1 to LenB(ToConv) ByteToString = ByteToString & Chr(AscB(MidB(ToConv,i,1))) Next End Function Function ConvertToBinary(RawData) Dim oRs Set oRs = Server.CreateObject("ADODB.Recordset") ' Create field in an empty RecordSet Call oRs.Fields.Append("Blob", 205, LenB(RawData)) ' Add field with type adLongVarBinary Call oRs.Open() Call oRs.AddNew() Call oRs.Fields("Blob").AppendChunk(RawData & ChrB(0)) Call oRs.Update() ' Save Blob Data ConvertToBinary = oRs.Fields("Blob").GetChunk(LenB(RawData)) ' Close RecordSet Call oRs.Close() Set oRs = Nothing End Function Function ConvertToUnicode(RawData) Dim oRs Set oRs = Server.CreateObject("ADODB.Recordset") ' Create field in an empty recordset Call oRs.Fields.Append("Text", 201, LenB(RawData)) ' Add field with type adLongVarChar Call oRs.Open() Call oRs.AddNew() Call oRs.Fields("Text").AppendChunk(RawData & ChrB(0)) Call oRs.Update() ' Save Unicode Data ConvertToUnicode = oRs.Fields("Text").Value ' Close recordset Call oRs.Close() Set oRs = Nothing End Function Function ConvertToText(objStream, iStart, iLength, binData) On Error Resume Next If EW_UploadCharset <> "" Then Dim tmpStream Set tmpStream = Server.CreateObject("ADODB.Stream") tmpStream.Type = 1 'adTypeBinary tmpStream.Mode = 3 'adModeReadWrite tmpStream.Open objStream.Position = iStart objStream.CopyTo tmpStream, iLength tmpStream.Position = 0 tmpStream.Type = 2 'adTypeText tmpStream.Charset = EW_UploadCharset ConvertToText = tmpStream.ReadText tmpStream.Close Set tmpStream = Nothing Else ConvertToText = ByteToString(binData) End If ConvertToText = Trim(ConvertToText & "") End Function Function getValue(dict, name) Dim gv If dict.Exists(name) Then gv = CStr(dict(name).Item("Value")) gv = Left(gv, Len(gv)-2) getValue = gv Else getValue = "" End If End Function Function getFileData(dict, name) If dict.Exists(name) Then getFileData = dict(name).Item("Value") If LenB(getFileData) Mod 2 = 1 Then getFileData = getFileData & ChrB(0) End If Else getFileData = "" End If End Function Function getFileName(dict, name) Dim temp, tempPos If dict.Exists(name) Then temp = dict(name).Item("FileName") tempPos = 1 + InStrRev(temp, "\") getFileName = Mid(temp, tempPos) Else getFileName = "" End If End Function Function getFileSize(dict, name) If dict.Exists(name) Then getFileSize = LenB(dict(name).Item("Value")) Else getFileSize = 0 End If End Function Function getFileContentType(dict, name) If dict.Exists(name) Then getFileContentType = dict(name).Item("ContentType") Else getFileContentType = "" End If End Function Function ewFolderExists(Folder) Dim fso Set fso = CreateObject("Scripting.FileSystemObject") ewFolderExists = fso.FolderExists(Folder) Set fso = Nothing End Function Sub ewDeleteFile(FilePath) On Error Resume Next Dim fso Set fso = CreateObject("Scripting.FileSystemObject") If FilePath <> "" And fso.FileExists(FilePath) Then fso.DeleteFile(FilePath) End If Set fso = Nothing End Sub Sub ewRenameFile(OldFilePath, NewFilePath) On Error Resume Next Dim fso Set fso = Server.CreateObject("Scripting.FileSystemObject") If OldFilePath <> "" And fso.FileExists(OldFilePath) Then fso.MoveFile OldFilePath, NewFilePath End If Set fso = Nothing End Sub Function ewCreateFolder(Folder) On Error Resume Next ewCreateFolder = False Dim fso Set fso = Server.CreateObject("Scripting.FileSystemObject") If Not fso.FolderExists(Folder) Then If ewCreateFolder(fso.GetParentFolderName(Folder)) Then fso.CreateFolder(Folder) If Err.Number = 0 Then ewCreateFolder = True End If Else ewCreateFolder = True End If Set fso = Nothing End Function Function ewSaveFile(Folder, FileName, FileData) On Error Resume Next ewSaveFile = False If ewCreateFolder(Folder) Then Set oStream = Server.CreateObject("ADODB.Stream") oStream.Type = 1 ' 1=adTypeBinary oStream.Open oStream.Write ConvertToBinary(FileData) oStream.SaveToFile Folder & FileName, 2 ' 2=adSaveCreateOverwrite oStream.Close Set oStream = Nothing If Err.Number = 0 Then ewSaveFile = True End If End Function Function ewConvertLength(b) ewConvertLength = CLng(AscB(LeftB(b, 1)) + (AscB(RightB(b, 1)) * 256)) End Function Function ewConvertLength2(b) ewConvertLength2 = CLng(AscB(RightB(b, 1)) + (AscB(LeftB(b, 1)) * 256)) End Function ' Get image dimension Sub ewGetImageDimension(img, wd, ht) Dim sPNGHeader, sGIFHeader, sBMPHeader, sJPGHeader, sHeader, sImgType sImgType = "(unknown)" ' image headers, do not changed sPNGHeader = ChrB(137) & ChrB(80) & ChrB(78) sGIFHeader = ChrB(71) & ChrB(73) & ChrB(70) sBMPHeader = ChrB(66) & ChrB(77) sJPGHeader = ChrB(255) & ChrB(216) & ChrB(255) sHeader = MidB(img, 1, 3) ' Handle GIF If sHeader = sGIFHeader Then sImgType = "GIF" wd = ewConvertLength(MidB(img, 7, 2)) ht = ewConvertLength(MidB(img, 9, 2)) ' Handle BMP ElseIf LeftB(sHeader, 2) = sBMPHeader Then sImgType = "BMP" wd = ewConvertLength(MidB(img, 19, 2)) ht = ewConvertLength(MidB(img, 23, 2)) ' Handle PNG ElseIf sHeader = sPNGHeader Then sImgType = "PNG" wd = ewConvertLength2(MidB(img, 19, 2)) ht = ewConvertLength2(MidB(img, 23, 2)) ' Handle JPG Else Dim size, markersize, pos, bEndLoop size = LenB(img) pos = InStrB(img, sJPGHeader) If pos <= 0 Then wd = -1 ht = -1 Exit Sub End If sImgType = "JPG" pos = pos + 2 bEndLoop = False Do While Not bEndLoop and pos < size Do While AscB(MidB(img, pos, 1)) = 255 and pos < size pos = pos + 1 Loop If AscB(MidB(img, pos, 1)) < 192 or AscB(MidB(img, pos, 1)) > 195 Then markersize = ewConvertLength2(MidB(img, pos+1, 2)) pos = pos + markersize + 1 Else bEndLoop = True End If Loop If Not bEndLoop Then wd = -1 ht = -1 Else wd = ewConvertLength2(MidB(img, pos+6, 2)) ht = ewConvertLength2(MidB(img, pos+4, 2)) End If End If End Sub %> <% Response.Expires = 0 Response.ExpiresAbsolute = Now() - 1 Response.AddHeader "pragma", "no-cache" Response.AddHeader "cache-control", "private, no-cache, no-store, must-revalidate" %> <% ' Initialize common variables x_ID = Null: ox_ID = Null: z_ID = Null x_department = Null: ox_department = Null: z_department = Null x_pageorder = Null: ox_pageorder = Null: z_pageorder = Null x_status = Null: ox_status = Null: z_status = Null x_pagename = Null: ox_pagename = Null: z_pagename = Null x_main = Null: ox_main = Null: z_main = Null x_subcontent = Null: ox_subcontent = Null: z_subcontent = Null x_bottom = Null: ox_bottom = Null: z_bottom = Null %> <% Response.Buffer = True x_ID = Request.QueryString("ID") If x_ID = "" Or IsNull(x_ID) Then Response.Redirect "default.asp" ' Get action sAction = Request.Form("a_view") If sAction = "" Or IsNull(sAction) Then sAction = "I" ' Display with input box End If ' Open connection to the database Set conn = Server.CreateObject("ADODB.Connection") conn.Open xDb_Conn_Str Select Case sAction Case "I": ' Get a record to display If Not LoadData() Then ' Load Record based on key Session(ewSessionMessage) = "No records found" conn.Close ' Close Connection Set conn = Nothing Response.Clear Response.Redirect "default.asp" End If End Select %> <% conn.Close ' Close Connection Set conn = Nothing %><% '------------------------------------------------------------------------------- ' Function LoadData ' - Load Data based on Key Value ' - Variables setup: field variables Function LoadData() Dim rs, sSql, sFilter sFilter = ewSqlKeyWhere If Not IsNumeric(x_ID) Then LoadData = False Exit Function End If sFilter = Replace(sFilter, "@ID", AdjustSql(x_ID)) ' Replace key value sSql = ewBuildSql(ewSqlSelect, ewSqlWhere, ewSqlGroupBy, ewSqlHaving, ewSqlOrderBy, sFilter, "") Set rs = Server.CreateObject("ADODB.Recordset") rs.Open sSql, conn If rs.Eof Then LoadData = False Else LoadData = True rs.MoveFirst ' Get the field contents x_ID = rs("ID") x_department = rs("department") x_pageorder = rs("pageorder") x_status = rs("status") x_pagename = rs("pagename") x_main = rs("main") x_subcontent = rs("subcontent") x_bottom = rs("bottom") End If rs.Close Set rs = Nothing End Function %> |
||