Displaying Source Code(s)
|
|
PrettyPath Function
--------------------------------------------------------------------------------
Description : PrettyPath formats a path for use in user
displays. PrettyPath is useful for trimming down long directory
paths or abbreviating them. No attempt is made by PrettyPath to
determine the validity of the entered path's syntax or if the
path already exists on the server. The output of PrettyPath is
meant for display purposes only. It should not be used
programmatically to pass paths to the FileSystemObject for
example.
Arguments
=============
There are 4 arguments. Only the first, sPath, is required. To
bypass the other three arguments, enter null as a placeholder
for the argument. If you specify null for any of the last three
arguments, the default will be used. Defaults for each argument
are below. sPath Required. String. The path to format for
display. Can be a virtual, relative or absolute path to a file
or folder. hLen Optional. Integer. Default: 3 Each path element
will stop being displayed after this length. Value can be 0 or
greater. Regardless of the remaining characters in the element,
they will be replaced with three dots as placeholders "...".
Example: if hLen is 2 and the path entered is "c:winntsystem32"
then PrettyPath will format the path as "c:wi...sy..." If hLen
is 0, the path would be "c:......" bFile Optional. Boolean.
Default: False Show the file name (if path is determined to be a
file by prettypath). If set to true, the bExtOnly argument is
ignored and the file name in it's entirety (including extension)
is shown. Does nothing if the path entered is determined to be a
directory path. bExtOnly Optional. Boolean. Default: True Show
the file extension (if path is determined to be a file by
PrettyPath). If True, file extension is shown. If false,
extension may be removed depending on the size of hLen.
<%
Private Function PrettyPath(ByVal sPath, ByVal hLen, ByVal bFile,
ByVal bExtOnly)
Dim elements, i, tmp, bLast, sElm, sDelim, chopsize
Dim showfullfilename, showfileextension
chopsize = hLen
showfullfilename = bFile
showfileextension = bExtOnly
If IsNull(chopsize) Then chopsize = 3
If IsNull(showfullfilename) Then showfullfilename = False
If IsNull(showfileextension) Then showfileextension = True
bLast = False
sDelim = ""
If InStr(sPath, sDelim) = 0 Then sDelim = "/"
elements = Split(sPath, sDelim)
For i = 0 To UBound(elements)
sElm = elements(i)
If Len(sElm) > 5 Then
If i = UBound(elements) Then
If showfullfilename Then
tmp = ""
Exit For
ElseIf showfileextension Then
tmp = Right(sElm, Len(sElm) - _
InStrRev(sElm, "."))
bLast = True
End If
End If
If chopsize > 0 Then
elements(i) = Left(sElm, chopsize) & "..."
Else
elements(i) = "..."
End If
If showfileextension And bLast Then
elements(i) = elements(i) & tmp
End If
End If
Next
PrettyPath = Join(elements, sDelim)
End Function
%>
|
|
|