%@ Language=VBScript %>
<%
'*************************************************************************
' DO NOT MODIFY THIS SCRIPT IF YOU WANT UPDATES TO WORK!
' Function : Product Maintenance - File Browser
' Product : CandyPress Store Administration
' Version : 2.5
' Modified : February 2004
' Copyright: Copyright (C) 2004 CandyPress.Com
' See "license.txt" for this product for details regarding
' licensing, usage, disclaimers, distribution and general
' copyright requirements. If you don't have a copy of this
' file, you may request one at webmaster@candypress.com
'*************************************************************************
Option explicit
Response.Buffer = true
const adminLevel = 1
%>
<%
'Work Fields
dim I, errMsg, upd
dim path, pathRel, delFile
dim viewLink, selectLink, deleteLink
dim fs, folder, item
dim fileList
'Database
dim mySQL, cn, rs, rs2
'*************************************************************************
'Open Database Connection
call openDB()
'Store Configuration
if loadConfig() = false then
response.redirect "sysMsg.asp?errMsg=" & server.URLEncode("Could not load Store Configuration settings.")
end if
'Put all the filenames in a string for later use
fileList = ""
mySQL="SELECT imageURL,smallImageURL,fileName " _
& "FROM Products "
set rs = openRSexecute(mySQL)
do while not rs.EOF
fileList = fileList & rs("imageURL")
fileList = fileList & rs("smallImageURL")
fileList = fileList & rs("fileName")
rs.MoveNext
loop
call closeRS(rs)
fileList = lCase(fileList)
'Close Database Connection
call closeDB()
%>
File Browser
File Browser
<%
'Get path to requested folder
upd = Request.QueryString("upd")
if upd = "SI" or upd = "LI" then 'Images
pathRel = pImagesDir
path = Server.MapPath(pImagesDir)
else 'Downloads
pathRel = pDownloadDir
path = Server.MapPath(pDownloadDir)
end if
'Get delete file (if any)
delFile = trim(Request.QueryString("del"))
if demoMode = "Y" and len(delFile) > 0 then
errMsg = "File Deletion is not allowed in Demo Mode."
call endOfPage()
end if
on error resume next
'Get FileSystem Object
set fs = CreateObject("Scripting.FileSystemObject")
if err.number <> 0 then
errMsg = err.Description
call endOfPage()
end if
'If delete was requested, delete the file
if len(delFile) > 0 then
fs.DeleteFile(path & "\" & delFile)
if err.Number <> 0 then
errMsg = err.Description & " : " & path & "\" & delFile
call endOfPage()
end if
end if
'Get Folder Object
set folder = fs.GetFolder(path)
if err.number <> 0 then
errMsg = err.Description
call endOfPage()
end if
'Get Recordset Object and Disconnect
Set rs = Server.CreateObject("ADODB.Recordset")
rs.CursorLocation = adUseClient
rs.CursorType = adOpenDynamic
rs.Fields.Append "filename",200,255
rs.Fields.Append "filedate",200,255
rs.Fields.Append "filesize",200,255
rs.open
if err.number <> 0 then
errMsg = err.Description
call endOfPage()
end if
'Populate recordset and sort
for each item in folder.Files
rs.AddNew
rs.Fields("filename") = item.Name
rs.Fields("filedate") = item.dateLastModified
rs.Fields("filesize") = item.Size
rs.update
next
rs.Sort = "filename ASC"
rs.MoveFirst
%>
|
<%=pathRel%>
|
| Action |
Filename |
Used? |
Modified |
Bytes |
<%
'Display files
do while not rs.EOF
'Increment counter
I = I + 1
'Determine what "select"" link to show
if upd = "SI" then 'Small Image
selectLink = "
"
elseif upd = "LI" then 'Large Image
selectLink = "
"
else 'Downloads
selectLink = "
"
end if
'Determine what "view" link to show
if inStrRev(lCase(rs("filename")),".gif") _
or inStrRev(lCase(rs("filename")),".jpg") _
or inStrRev(lCase(rs("filename")),".jpeg") _
or inStrRev(lCase(rs("filename")),".bmp") then
viewLink = "
"
else
viewLink = "
"
end if
'Determine what "delete" link to show
deleteLink = "
"
%>
| <%=selectLink & " " & viewLink & " " & deleteLink & " "%> |
<%=rs("filename")%> |
<%
if inStr(fileList,LCase(rs("filename"))) > 0 then
Response.Write "Y"
else
Response.Write "(*)"
end if
%>
|
<%=rs("filedate")%> |
<%=rs("filesize")%> |
> |
<%
rs.MoveNext
loop
%>
(*) - Filename is not currently being used in the product image or
download filename fields. It may however be used in fields that
support user specified HTML such as product detail, etc.
<%
on error goto 0
call endOfPage()
'*********************************************************************
'End of page processing
'*********************************************************************
sub endOfPage()
'Clean up
set folder = nothing
set fs = nothing
set rs = nothing
'Check for error message
if len(errMsg) <> 0 then
%>
Error : <%=errMsg%>
BACK
<%
end if
%>
<%
Response.End
end sub
%>