<%@ 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 %> <% '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 = "Select" elseif upd = "LI" then 'Large Image selectLink = "Select" else 'Downloads selectLink = "Select" 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 = "View" else viewLink = "" end if 'Determine what "delete" link to show deleteLink = "Delete" %> <% rs.MoveNext loop %>
<%=pathRel%>
Action Filename Used? Modified Bytes
<%=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")%>
>

(*) - 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 %>