|
- <%
- Option Explicit
-
- Sub Main
- ShowFileList
-
- If Len(Request.Form("filename")) > 0 then
- ShowDocs
- End If
- End Sub
-
-
- Sub ShowFileList
- %>
- <h1>Select File</h1>
-
- <form action="docs.asp" method="POST">
- <select name="filename">
- <%
- dim fso : set fso = Server.CreateObject("Scripting.FileSystemObject")
- dim files : set files = fso.GetFolder(Server.MapPath(".")).Files
- dim file
- For Each file in files
- If fso.GetExtensionName(file.Path) = "asp" and file.Name <> "docs.asp" and InStr(file.Name, "_old") = 0 then
- response.write "<option value='" & file.Name & "'>" & file.Name & "</option>"
- End If
- Next
- %>
- </select>
- <input type="submit" value="Get Docs">
- </form>
- <hr>
- <%
- End Sub
-
-
- Sub ShowDocs
- dim fso : set fso = Server.CreateObject("Scripting.FileSystemObject")
- dim path : path = fso.GetFolder(Server.MapPath(".")).Path
- dim file : set file = fso.OpenTextFile(path & "\" & Request.Form("filename"))
-
- dim re : set re = new RegExp
- With re
- .Pattern = "Public Property|Public Sub|Public Function"
- .Global = true
- .IgnoreCase = true
- End With
-
- dim line, matches, result
-
- Do Until file.AtEndOfStream
- line = file.ReadLine()
- set matches = re.Execute(line)
- If matches.Count > 0 then
- result = line
- result = Replace(result, "Public Property", "<span class='subdued'>Property</span>")
- result = Replace(result, "Public Sub", "<span class='subdued'>Sub</span>")
- result = Replace(result, "Public Function", "<span class='subdued'>Function</span>")
- response.write "<p>" & result & "</p>"
- End If
- Loop
-
- End Sub
-
-
- %>
-
- <!doctype html>
- <html>
- <head>
- <style>
- body { font-family: calibri; }
-
- p { font-weight: bold; }
- .subdued { font-weight: normal; color: #999; }
- </style>
- </head>
- <body>
-
- <% Call Main %>
-
- </body>
- </html>
|