browse.aspx
上传用户:avia982301
上传日期:2008-10-30
资源大小:557k
文件大小:8k
源码类别:

.net编程

开发平台:

C#

  1. <%@ Page language="VB" AutoEventWireup="false" aspCompat="True" validateRequest="False"%>
  2. <% @Import Namespace="System.IO" %>
  3. <!--#include file="config.aspx"-->
  4. <%
  5. '######################################
  6. ' eWebEditor v4.00 - Advanced online web based WYSIWYG HTML editor.
  7. ' Copyright (c) 2003-2007 eWebSoft.com
  8. '
  9. ' For further information go to http://www.ewebsoft.com/
  10. ' This copyright notice MUST stay intact for use.
  11. '######################################
  12. %>
  13. <%
  14. Call InitParam()
  15. Call OutScript(GetList())
  16. %>
  17. <script language="vb" runat="server">
  18. Dim sType As String, sStyleName As String
  19. Dim sCurrDir As String, sDir As String
  20. Dim sAllowExt As String, sUploadDir As String, sBaseUrl As String, sContentPath As String, sAllowBrowse As String
  21. Function GetList()
  22. Dim s_List, s_Url
  23. s_List = ""
  24. Dim oUploadFile, sFileName
  25. Dim i
  26. Dim sMapCurrDir
  27. sMapCurrDir = Server.MapPath(sCurrDir)
  28. If sDir <> "" Then
  29. If InstrRev(sDir, "/") > 1 Then
  30. s_Url= Left(sDir, InstrRev(sDir, "/") - 1)
  31. Else
  32. s_Url = ""
  33. End If
  34. s_List = s_List & "<tr onclick='doRowClick(this)' onmouseover='doRowOver(this)' onmouseout='doRowOut(this)' isdir='true' path='" & s_Url & "'>" & _
  35. "<td><img border=0 src='../sysimage/file/parentfolder.gif'></td>" & _
  36. "<td>..</td>" & _
  37. "<td>&nbsp;</td>" & _
  38. "</tr>"
  39. End If
  40. Dim sSubDir As String
  41. Dim oSubDirInfo As DirectoryInfo
  42. For Each sSubDir In Directory.GetDirectories(sMapCurrDir)
  43. oSubDirInfo = New DirectoryInfo(sSubDir)
  44. If sDir = "" Then
  45. s_Url = oSubDirInfo.Name
  46. Else
  47. s_Url = sDir & "/" & oSubDirInfo.Name
  48. End If
  49. s_List = s_List & "<tr onclick='doRowClick(this)' onmouseover='doRowOver(this)' onmouseout='doRowOut(this)' isdir='true' path='" & s_Url & "'>" & _
  50. "<td><img border=0 src='../sysimage/file/closedfolder.gif'></td>" & _
  51. "<td noWrap>" & oSubDirInfo.Name & "</td>" & _
  52. "<td>&nbsp;</td>" & _
  53. "</tr>"
  54. Next
  55. Dim sUploadFiles() As String
  56. sUploadFiles = Directory.GetFiles(sMapCurrDir)
  57. Dim sUploadFile As String
  58. Dim oFileInfo As FileInfo
  59. For Each sUploadFile In sUploadFiles
  60. oFileInfo = New FileInfo(sUploadFile)
  61. sFileName = oFileInfo.Name
  62. If CheckValidExt(sFileName) = True Then
  63. If sDir = "" Then
  64. s_Url = sContentPath & sFileName
  65. Else
  66. s_Url = sContentPath & sDir & "/" & sFileName
  67. End If
  68. s_List = s_List & "<tr onclick='doRowClick(this)' onmouseover='doRowOver(this)' onmouseout='doRowOut(this)' url='" & s_Url & "'>" & _
  69. "<td>" & FileName2Pic(sFileName) & "</td>" & _
  70. "<td noWrap>" & sFileName & "</td>" & _
  71. "<td align=right>" & GetSizeUnit(oFileInfo.Length) & "</td>" & _
  72. "</tr>"
  73. End If
  74. Next
  75. If sDir = "" Then
  76. s_Url = "/"
  77. Else
  78. s_Url = "/" & sDir & "/"
  79. End If
  80. s_List = s_List & "</table>"
  81. s_List =  HTML2JS(s_List)
  82. s_List = "parent.setDirList(""" & s_List & """, """ & s_Url & """)"
  83. GetList = s_List
  84. End Function
  85. Sub OutScript(str)
  86. Response.Write ("<HTML><HEAD><meta http-equiv='Content-Type' content='text/html; charset=utf-8'><TITLE>eWebEditor</TITLE></head><body>")
  87. Response.Write ("<script language=javascript>" & str & "</s" & "cript>")
  88. Response.Write ("</body></html>")
  89. Response.End
  90. End Sub
  91. Function CheckValidExt(s_FileName)
  92. If sAllowExt = "" Then
  93. CheckValidExt = True
  94. Exit Function
  95. End If
  96. Dim i, aExt, sExt
  97. sExt = LCase(Mid(s_FileName, InStrRev(s_FileName, ".") + 1))
  98. CheckValidExt = False
  99. aExt = Split(LCase(sAllowExt), "|")
  100. For i = 0 To UBound(aExt)
  101. If aExt(i) = sExt Then
  102. CheckValidExt = True
  103. Exit Function
  104. End If
  105. Next
  106. End Function
  107. Sub InitParam()
  108. sType = UCase(Trim(Request.QueryString("type")))
  109. sStyleName = Trim(Request.QueryString("style"))
  110. Dim i, aStyleConfig, bValidStyle
  111. bValidStyle = False
  112. For i = 1 To Ubound(aStyle)
  113. aStyleConfig = Split(aStyle(i), "|||")
  114. If Lcase(sStyleName) = Lcase(aStyleConfig(0)) Then
  115. bValidStyle = True
  116. Exit For
  117. End If
  118. Next
  119. If bValidStyle = False Then
  120. OutScript("alert('Invalid Style!')")
  121. End If
  122. sBaseUrl = aStyleConfig(19)
  123. sAllowBrowse = aStyleConfig(43)
  124. If sAllowBrowse <> "1" Then
  125. OutScript("alert('Do not allow browse!')")
  126. End If
  127. sUploadDir = aStyleConfig(3)
  128. If Left(sUploadDir, 1) <> "/" Then
  129. sUploadDir = "../" & sUploadDir
  130. End If
  131. Select Case sBaseUrl
  132. Case "0"
  133. sContentPath = aStyleConfig(23)
  134. Case "1"
  135. sContentPath = RelativePath2RootPath(sUploadDir)
  136. Case "2"
  137. sContentPath = RootPath2DomainPath(RelativePath2RootPath(sUploadDir))
  138. End Select
  139. Select Case sType
  140. Case "FILE"
  141. sAllowExt = ""
  142. Case "MEDIA"
  143. sAllowExt = "rm|mp3|wav|mid|midi|ra|avi|mpg|mpeg|asf|asx|wma|mov"
  144. Case "FLASH"
  145. sAllowExt = "swf"
  146. Case Else
  147. sAllowExt = "bmp|jpg|jpeg|png|gif"
  148. End Select
  149. sCurrDir = sUploadDir
  150. sDir = Trim(Request("dir"))
  151. sDir = Replace(sDir, "", "/")
  152. sDir = Replace(sDir, "../", "")
  153. sDir = Replace(sDir, "./", "")
  154. If sDir <> "" Then
  155. If CheckValidDir(Server.Mappath(sUploadDir & sDir)) = True Then
  156. sCurrDir = sUploadDir & sDir & "/"
  157. Else
  158. sDir = ""
  159. End If
  160. End If
  161. End Sub
  162. Function CheckValidDir(s_Dir)
  163. CheckValidDir = Directory.Exists(s_Dir)
  164. End Function
  165. Function RelativePath2RootPath(url)
  166. Dim sTempUrl
  167. sTempUrl = url
  168. If Left(sTempUrl, 1) = "/" Then
  169. RelativePath2RootPath = sTempUrl
  170. Exit Function
  171. End If
  172. Dim sWebEditorPath
  173. sWebEditorPath = Request.ServerVariables("SCRIPT_NAME")
  174. sWebEditorPath = Left(sWebEditorPath, InstrRev(sWebEditorPath, "/") - 1)
  175. Do While Left(sTempUrl, 3) = "../"
  176. sTempUrl = Mid(sTempUrl, 4)
  177. sWebEditorPath = Left(sWebEditorPath, InstrRev(sWebEditorPath, "/") - 1)
  178. Loop
  179. RelativePath2RootPath = sWebEditorPath & "/" & sTempUrl
  180. End Function
  181. Function RootPath2DomainPath(url)
  182. Dim sHost, sPort
  183. sHost = Split(Request.ServerVariables("SERVER_PROTOCOL"), "/")(0) & "://" & Request.ServerVariables("HTTP_HOST")
  184. sPort = Request.ServerVariables("SERVER_PORT")
  185. If sPort <> "80" Then
  186. sHost = sHost & ":" & sPort
  187. End If
  188. RootPath2DomainPath = sHost & url
  189. End Function
  190. Function FileName2Pic(sFileName)
  191. Dim sExt, sPicName
  192. sExt = UCase(Mid(sFileName, InstrRev(sFileName, ".")+1))
  193. Select Case sExt
  194. Case "TXT"
  195. sPicName = "txt.gif"
  196. Case "CHM", "HLP"
  197. sPicName = "hlp.gif"
  198. Case "DOC"
  199. sPicName = "doc.gif"
  200. Case "PDF"
  201. sPicName = "pdf.gif"
  202. Case "MDB"
  203. sPicName = "mdb.gif"
  204. Case "GIF"
  205. sPicName = "gif.gif"
  206. Case "JPG"
  207. sPicName = "jpg.gif"
  208. Case "BMP"
  209. sPicName = "bmp.gif"
  210. Case "PNG"
  211. sPicName = "pic.gif"
  212. Case "ASP", "JSP", "JS", "PHP", "PHP3", "ASPX"
  213. sPicName = "code.gif"
  214. Case "HTM", "HTML", "SHTML"
  215. sPicName = "htm.gif"
  216. Case "ZIP"
  217. sPicName = "zip.gif"
  218. Case "RAR"
  219. sPicName = "rar.gif"
  220. Case "EXE"
  221. sPicName = "exe.gif"
  222. Case "AVI"
  223. sPicName = "avi.gif"
  224. Case "MPG", "MPEG", "ASF"
  225. sPicName = "mp.gif"
  226. Case "RA", "RM"
  227. sPicName = "rm.gif"
  228. Case "MP3"
  229. sPicName = "mp3.gif"
  230. Case "MID", "MIDI"
  231. sPicName = "mid.gif"
  232. Case "WAV"
  233. sPicName = "audio.gif"
  234. Case "XLS"
  235. sPicName = "xls.gif"
  236. Case "PPT", "PPS"
  237. sPicName = "ppt.gif"
  238. Case "SWF"
  239. sPicName = "swf.gif"
  240. Case Else
  241. sPicName = "unknow.gif"
  242. End Select
  243. FileName2Pic = "<img border=0 src='../sysimage/file/" & sPicName & "'>"
  244. End Function
  245. Function GetSizeUnit(n_Size)
  246. If n_Size >= 1024*1024 Then
  247. GetSizeUnit = FormatNumber((n_Size / 1024 / 1024), 2, -1, 0, 0) & "M"
  248. Else
  249. GetSizeUnit = FormatNumber((n_Size / 1024), 2, -1, 0, 0) & "K"
  250. End If
  251. End Function
  252. Function HTML2JS(s_HTML)
  253. Dim s_JS
  254. s_JS = Replace(s_HTML, Vbcrlf, "")
  255. s_JS = Replace(s_JS, "", "\")
  256. s_JS = Replace(s_JS, """", """")
  257. HTML2JS = s_JS
  258. End Function
  259. </script>