<% Response.expires = 0 Response.expiresabsolute = Now() - 1 Response.addHeader "pragma", "no-cache" Response.addHeader "cache-control", "private" Response.CacheControl = "no-cache" %> <% ewCurSec = 0 ' Initialise ' User levels Const ewAllowAdd = 1 Const ewAllowDelete = 2 Const ewAllowEdit = 4 Const ewAllowView = 8 Const ewAllowList = 8 Const ewAllowReport = 8 Const ewAllowSearch = 8 Const ewAllowAdmin = 16 %> <% If Session("design-desk-shop-DAT_status") <> "login" Then Response.Redirect "login.asp" Else ' Restore Security Table - created in Login arrSecurity = Session("ewSecurity") ' Get Current Table Security sTmp1 = -1 For sTmp = 1 to UBound(arrSecurity, 2) If arrSecurity(0, sTmp) = "Users" Then sTmp1 = sTmp Exit For End If Next ewCurLvl = Session("design-desk-shop-DAT_status_UserLevel") If IsNumeric(ewCurLvl) And sTmp1 <> -1 Then If ewCurLvl = -1 Then ' System Administrator ewCurSec = 31 ElseIf ewCurLvl > 0 and ewCurLvl <= 1 Then ewCurSec = arrSecurity(ewCurLvl, sTmp1) End If End If End If %> <% ' Initialize common variables x_ID = Null x_Username = Null x_password = Null x_First_Name = Null x_Last_Name = Null x_AccesssLevel = Null x_Create_Date = Null %> <% nStartRec = 0 nStopRec = 0 nTotalRecs = 0 nRecCount = 0 nRecActual = 0 sKeyMaster = "" sDbWhereMaster = "" sSrchAdvanced = "" sSrchBasic = "" sSrchWhere = "" sDbWhere = "" sDefaultOrderBy = "" sDefaultFilter = "" sWhere = "" sGroupBy = "" sHaving = "" 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() ' Get Search Criteria for Basic Search SetUpBasicSearch() ' Build Search Criteria If sSrchAdvanced <> "" Then sSrchWhere = sSrchAdvanced ' Advanced Search ElseIf sSrchBasic <> "" Then sSrchWhere = sSrchBasic ' Basic Search End If ' Save Search Criteria If sSrchWhere <> "" Then Session("Users_searchwhere") = sSrchWhere ' Reset start record counter (new search) nStartRec = 1 Session("Users_REC") = nStartRec Else sSrchWhere = Session("Users_searchwhere") End If ' Build WHERE condition sDbWhere = "" If sDbWhereMaster <> "" Then sDbWhere = sDbWhere & "(" & sDbWhereMaster & ") AND " End If If sSrchWhere <> "" Then sDbWhere = sDbWhere & "(" & sSrchWhere & ") AND " End If If Len(sDbWhere) > 5 Then sDbWhere = Mid(sDbWhere, 1, Len(sDbWhere)-5) ' Trim rightmost AND End If ' Build SQL sSql = "SELECT * FROM [Users]" ' Load Default Filter sDefaultFilter = "" sGroupBy = "" sHaving = "" ' Load Default Order sDefaultOrderBy = "" sWhere = "" If sDefaultFilter <> "" Then sWhere = sWhere & "(" & sDefaultFilter & ") AND " End If If sDbWhere <> "" Then sWhere = sWhere & "(" & sDbWhere & ") AND " End If If (ewCurSec And ewAllowList) <> ewAllowList Then sWhere = sWhere & "(0=1) AND " End If If Right(sWhere, 5) = " AND " Then sWhere = Left(sWhere, Len(sWhere)-5) If sWhere <> "" Then sSql = sSql & " WHERE " & sWhere End If If sGroupBy <> "" Then sSql = sSql & " GROUP BY " & sGroupBy End If If sHaving <> "" Then sSql = sSql & " HAVING " & sHaving End If ' Set Up Sorting Order sOrderBy = "" SetUpSortOrder() If sOrderBy <> "" Then sSql = sSql & " ORDER BY " & sOrderBy End If 'Session("ewmsg") = sSql ' Uncomment to show SQL for debugging %> <% ' Set up Record Set Set rs = Server.CreateObject("ADODB.Recordset") rs.CursorLocation = 3 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 %>

TABLE: Users

   Show all  
Exact phrase  All words  Any word
<% If (ewCurSec And ewAllowAdd) = ewAllowAdd Then %>
Add

<% End If %> <% If Session("ewmsg") <> "" Then %>

<%= Session("ewmsg") %>

<% Session("ewmsg") = "" ' Clear message End If %>
<% If nTotalRecs > 0 Then %> <% If (ewCurSec And ewAllowEdit) = ewAllowEdit Then %> <% End If %> <% If (ewCurSec And ewAllowDelete) = ewAllowDelete Then %> <% End If %> <% End If %> <% ' Avoid starting record > total records If CLng(nStartRec) > CLng(nTotalRecs) Then nStartRec = nTotalRecs End If ' Set the last record to display nStopRec = nStartRec + nDisplayRecs - 1 ' Move to first record directly for performance reason nRecCount = nStartRec - 1 If Not rs.Eof Then rs.MoveFirst rs.Move nStartRec - 1 End If nRecActual = 0 Do While (Not rs.Eof) And (nRecCount < nStopRec) nRecCount = nRecCount + 1 If CLng(nRecCount) >= CLng(nStartRec) Then nRecActual = nRecActual + 1 ' Set row color sItemRowClass = " bgcolor=""#FFFFFF""" ' Display alternate color for rows If nRecCount Mod 2 <> 0 Then sItemRowClass = " bgcolor=""#F5F5F5""" End If ' Load Key for record sKey = rs("ID") x_ID = rs("ID") x_Username = rs("Username") x_password = rs("password") x_First_Name = rs("First_Name") x_Last_Name = rs("Last_Name") x_AccesssLevel = rs("AccesssLevel") x_Create_Date = rs("Create_Date") %> > <% If (ewCurSec And ewAllowEdit) = ewAllowEdit Then %> <% End If %> <% If (ewCurSec And ewAllowDelete) = ewAllowDelete Then %> <% End If %> <% End If rs.MoveNext Loop %>
" style="color: #000000;">ID<% If Session("Users_x_ID_Sort") = "ASC" Then %><% ElseIf Session("Users_x_ID_Sort") = "DESC" Then %><% End If %> " style="color: #000000;">Username <% If Session("Users_x_Username_Sort") = "ASC" Then %><% ElseIf Session("Users_x_Username_Sort") = "DESC" Then %><% End If %> " style="color: #000000;">password <% If Session("Users_x_password_Sort") = "ASC" Then %><% ElseIf Session("Users_x_password_Sort") = "DESC" Then %><% End If %> " style="color: #000000;">First Name <% If Session("Users_x_First_Name_Sort") = "ASC" Then %><% ElseIf Session("Users_x_First_Name_Sort") = "DESC" Then %><% End If %> " style="color: #000000;">Last Name <% If Session("Users_x_Last_Name_Sort") = "ASC" Then %><% ElseIf Session("Users_x_Last_Name_Sort") = "DESC" Then %><% End If %> " style="color: #000000;">Accesss Level<% If Session("Users_x_AccesssLevel_Sort") = "ASC" Then %><% ElseIf Session("Users_x_AccesssLevel_Sort") = "DESC" Then %><% End If %> " style="color: #000000;">Create Date<% If Session("Users_x_Create_Date_Sort") = "ASC" Then %><% ElseIf Session("Users_x_Create_Date_Sort") = "DESC" Then %><% End If %>   
<% Response.Write x_ID %> <% Response.Write x_Username %> <% Response.Write x_password %> <% Response.Write x_First_Name %> <% Response.Write x_Last_Name %> <% If (ewCurSec And ewAllowAdmin) = ewAllowAdmin Then ' System admin %> <% Select Case x_AccesssLevel Case "-1" sTmp = "Administrator" Case "0" sTmp = "Anonymous" Case "1" sTmp = "default_user" Case Else sTmp = Null End Select ox_AccesssLevel = x_AccesssLevel ' Backup Original Value x_AccesssLevel = sTmp %> <% Response.Write x_AccesssLevel %> <% x_AccesssLevel = ox_AccesssLevel ' Restore Original Value %> <% Else %> ******** <% End If %> <% Response.Write x_Create_Date %> ">Edit">Delete
<% ' Close recordset and connection rs.Close Set rs = Nothing conn.Close Set conn = Nothing %>
<% If nTotalRecs > 0 Then rsEof = (nTotalRecs < (nStartRec + nDisplayRecs)) PrevStart = nStartRec - nDisplayRecs If PrevStart < 1 Then PrevStart = 1 NextStart = nStartRec + nDisplayRecs If NextStart > nTotalRecs Then NextStart = nStartRec LastStart = ((nTotalRecs-1)\nDisplayRecs)*nDisplayRecs+1 %> <% If CLng(nStartRec)=1 Then %> <% Else %> <% End If %> <% If CLng(PrevStart) = CLng(nStartRec) Then %> <% Else %> <% End If %> <% If CLng(NextStart) = CLng(nStartRec) Then %> <% Else %> <% End If %> <% If CLng(LastStart) = CLng(nStartRec) Then %> <% Else %> <% End If %>
Page  FirstFirstPreviousPrevious NextNextLastLast of <%=(nTotalRecs-1)\nDisplayRecs+1%>
<% If CLng(nStartRec) > CLng(nTotalRecs) Then nStartRec = nTotalRecs nStopRec = nStartRec + nDisplayRecs - 1 nRecCount = nTotalRecs - 1 If rsEOF Then nRecCount = nTotalRecs If nStopRec > nRecCount Then nStopRec = nRecCount %> Records <%= nStartRec %> to <%= nStopRec %> of <%= nTotalRecs %> <% Else %> <% If (ewCurSec And ewAllowList) = ewAllowList Then %> No records found <% Else %> No Permission <% End If %> <% End If %>
<% '------------------------------------------------------------------------------- ' Function BasicSearchSQL ' - Build WHERE clause for a keyword Function BasicSearchSQL(Keyword) Dim sKeyword sKeyword = AdjustSql(Keyword) BasicSearchSQL = "" BasicSearchSQL = BasicSearchSQL & "[Username] LIKE '%" & sKeyword & "%' OR " BasicSearchSQL = BasicSearchSQL & "[password] LIKE '%" & sKeyword & "%' OR " BasicSearchSQL = BasicSearchSQL & "[First_Name] LIKE '%" & sKeyword & "%' OR " BasicSearchSQL = BasicSearchSQL & "[Last_Name] LIKE '%" & sKeyword & "%' OR " If Right(BasicSearchSQL, 4) = " OR " Then BasicSearchSQL = Left(BasicSearchSQL, Len(BasicSearchSQL)-4) End Function '------------------------------------------------------------------------------- ' Function SetUpBasicSearch ' - Set up Basic Search parameter based on form elements pSearch & pSearchType ' - Variables setup: sSrchBasic Sub SetUpBasicSearch() Dim sSearch, sSearchType, arKeyword, sKeyword sSearch = Request.QueryString("psearch") sSearchType = Request.QueryString("psearchType") If sSearch <> "" Then If sSearchType <> "" Then While InStr(sSearch, " ") > 0 sSearch = Replace(sSearch, " ", " ") Wend arKeyword = Split(Trim(sSearch), " ") For Each sKeyword In arKeyword sSrchBasic = sSrchBasic & "(" & BasicSearchSQL(sKeyword) & ") " & sSearchType & " " Next Else sSrchBasic = BasicSearchSQL(sSearch) End If End If If Right(sSrchBasic, 4) = " OR " Then sSrchBasic = Left(sSrchBasic, Len(sSrchBasic)-4) If Right(sSrchBasic, 5) = " AND " Then sSrchBasic = Left(sSrchBasic, Len(sSrchBasic)-5) End Sub '------------------------------------------------------------------------------- ' Function SetUpSortOrder ' - Set up Sort parameters based on Sort Links clicked ' - Variables setup: sOrderBy, Session("Table_OrderBy"), Session("Table_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 ID If sOrder = "ID" Then sSortField = "[ID]" sLastSort = Session("Users_x_ID_Sort") If sLastSort = "ASC" Then sThisSort = "DESC" Else sThisSort = "ASC" Session("Users_x_ID_Sort") = sThisSort Else If Session("Users_x_ID_Sort") <> "" Then Session("Users_x_ID_Sort") = "" End If ' Field Username If sOrder = "Username" Then sSortField = "[Username]" sLastSort = Session("Users_x_Username_Sort") If sLastSort = "ASC" Then sThisSort = "DESC" Else sThisSort = "ASC" Session("Users_x_Username_Sort") = sThisSort Else If Session("Users_x_Username_Sort") <> "" Then Session("Users_x_Username_Sort") = "" End If ' Field password If sOrder = "password" Then sSortField = "[password]" sLastSort = Session("Users_x_password_Sort") If sLastSort = "ASC" Then sThisSort = "DESC" Else sThisSort = "ASC" Session("Users_x_password_Sort") = sThisSort Else If Session("Users_x_password_Sort") <> "" Then Session("Users_x_password_Sort") = "" End If ' Field First_Name If sOrder = "First_Name" Then sSortField = "[First_Name]" sLastSort = Session("Users_x_First_Name_Sort") If sLastSort = "ASC" Then sThisSort = "DESC" Else sThisSort = "ASC" Session("Users_x_First_Name_Sort") = sThisSort Else If Session("Users_x_First_Name_Sort") <> "" Then Session("Users_x_First_Name_Sort") = "" End If ' Field Last_Name If sOrder = "Last_Name" Then sSortField = "[Last_Name]" sLastSort = Session("Users_x_Last_Name_Sort") If sLastSort = "ASC" Then sThisSort = "DESC" Else sThisSort = "ASC" Session("Users_x_Last_Name_Sort") = sThisSort Else If Session("Users_x_Last_Name_Sort") <> "" Then Session("Users_x_Last_Name_Sort") = "" End If ' Field AccesssLevel If sOrder = "AccesssLevel" Then sSortField = "[AccesssLevel]" sLastSort = Session("Users_x_AccesssLevel_Sort") If sLastSort = "ASC" Then sThisSort = "DESC" Else sThisSort = "ASC" Session("Users_x_AccesssLevel_Sort") = sThisSort Else If Session("Users_x_AccesssLevel_Sort") <> "" Then Session("Users_x_AccesssLevel_Sort") = "" End If ' Field Create_Date If sOrder = "Create_Date" Then sSortField = "[Create_Date]" sLastSort = Session("Users_x_Create_Date_Sort") If sLastSort = "ASC" Then sThisSort = "DESC" Else sThisSort = "ASC" Session("Users_x_Create_Date_Sort") = sThisSort Else If Session("Users_x_Create_Date_Sort") <> "" Then Session("Users_x_Create_Date_Sort") = "" End If Session("Users_OrderBy") = sSortField & " " & sThisSort Session("Users_REC") = 1 End If sOrderBy = Session("Users_OrderBy") If sOrderBy = "" Then sOrderBy = sDefaultOrderBy Session("Users_OrderBy") = sOrderBy 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("start").Count > 0 Then nStartRec = Request.QueryString("start") Session("Users_REC") = 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("Users_REC") = nStartRec Else nStartRec = Session("Users_REC") If Not IsNumeric(nStartRec) Or nStartRec = "" Then nStartRec = 1 ' Reset start record counter Session("Users_REC") = nStartRec End If End If Else nStartRec = Session("Users_REC") If Not IsNumeric(nStartRec) Or nStartRec = "" Then nStartRec = 1 'Reset start record counter Session("Users_REC") = nStartRec End If 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 UCase(sCmd) = "RESET" Then sSrchWhere = "" Session("Users_searchwhere") = sSrchWhere ' Reset Search Criteria & Session Keys ElseIf UCase(sCmd) = "RESETALL" Then sSrchWhere = "" Session("Users_searchwhere") = sSrchWhere ' Reset Sort Criteria ElseIf UCase(sCmd) = "RESETSORT" Then sOrderBy = "" Session("Users_OrderBy") = sOrderBy If Session("Users_x_ID_Sort") <> "" Then Session("Users_x_ID_Sort") = "" If Session("Users_x_Username_Sort") <> "" Then Session("Users_x_Username_Sort") = "" If Session("Users_x_password_Sort") <> "" Then Session("Users_x_password_Sort") = "" If Session("Users_x_First_Name_Sort") <> "" Then Session("Users_x_First_Name_Sort") = "" If Session("Users_x_Last_Name_Sort") <> "" Then Session("Users_x_Last_Name_Sort") = "" If Session("Users_x_AccesssLevel_Sort") <> "" Then Session("Users_x_AccesssLevel_Sort") = "" If Session("Users_x_Create_Date_Sort") <> "" Then Session("Users_x_Create_Date_Sort") = "" End If ' Reset Start Position (Reset Command) nStartRec = 1 Session("Users_REC") = nStartRec End If End Sub %>