677<%@ language="vbscript" %> <% Option Explicit %> CICT - Centro de Informações Científicas e Tecnológicas

<% Const STR_DIR_GIF = "images/diretorio2.gif" Const STR_UNK_GIF = "images/file.gif" Const VOLTAR_GIF = "images/voltar.gif" Dim strSERoot Dim strCWD Dim strSEScript strSERoot = Server.MapPath("/cict/Acervo Privado") strSEScript = Request.ServerVariables("SCRIPT_NAME") Function GetFileGIFName(strFName) Dim strGif strGif = 0 If Not fsoEdit.FileExists(server.mapPath(strGif)) Then GetFileGIFName = STR_UNK_GIF Else GetFileGIFName = strGif End If End Function Function MakeIconImg(strFName) MakeIconImg = "" End Function Function MakeDirLink(fld, strDir,flag) If strDir = ".." Then MakeDirLink = "" + "Voltar" + "" Else If flag=1 Then MakeDirLink = ""+ "" + strDir + "" + "" Else MakeDirLink = "" + strDir + "" End If End If End Function Function MakeFileLink(fileCur) Dim caminho caminho=replace(right(Server.URLEncode(fileCur.Path),len(Server.URLEncode(fileCur.Path))-4),"%5C","/") caminho=replace(caminho,"+","%20") MakeFileLink = "" + fileCur.name + "" End Function Function MakeFileSize(fileCur) MakeFileSize = CStr(fileCur.size) + "Bytes" End Function Function NumArq(dir) Dim diretorio Dim Filecont Dim DCont Dim FCont Set diretorio = fsoEdit.GetFolder(dir) For Each Filecont In Diretorio.Files DCont=DCont+1 Next For Each Filecont In Diretorio.Subfolders Fcont=Fcont+1 Next NumArq=Fcont+Dcont End Function Function MostraArvore(strPath) Dim diret Dim numDiret Dim DirAtual Dim SaidaDown() Dim Nivel() Dim Out Dim Cont Dim Espaco Dim I Dim DocAtual Dim flagA Set diret = fsoEdit.GetFolder(strPath) numDiret=1 Do While Not (LCase(diret) = LCase(strSERoot)) numDiret=numDiret+1 Set diret = fsoEdit.GetFolder(diret.parentfolder) Loop ReDim Nivel(numDiret) ReDim SaidaDown(numDiret) ReDim SaidaUp(numDiret) Set Nivel(numDiret) = fsoEdit.GetFolder(strPath) If Not numDiret=1 Then For Cont=1 To numDiret Set Nivel(numDiret-cont) = fsoEdit.GetFolder(Nivel((numdiret+1)-Cont).ParentFolder) Next End If Out="" + MakeIconImg(VOLTAR_GIF) + MakeDirLink(Nivel(numDiret-1),"..",1) + "" For Cont=1 To (numDiret-1) Espaco="" For I=1 To Cont-1 Espaco=Espaco & "" Next For Each DirAtual In Nivel(cont).Subfolders If (DirAtual=Nivel(cont+1)) Then SaidaDown(cont) = SaidaDown(cont) + "" + Espaco + MakeIconImg(STR_DIR_GIF) + MakeDirLink(Nivel(Cont),DirAtual.Name,1) + "" + vbCR Exit For Else SaidaDown(cont) = SaidaDown(cont) + "" + Espaco + MakeIconImg(STR_DIR_GIF) + MakeDirLink(Nivel(Cont),DirAtual.Name,0) + "" + vbCR End If Next Next For Cont=1 To (numDiret-1) Out=Out + SaidaDown(cont) Next Espaco="" For I=1 To (numDiret-1) Espaco=Espaco + "" Next For Each DirAtual In Nivel(numDiret).Subfolders SaidaDown(numDiret) = SaidaDown(numDiret) + "" + Espaco + MakeIconImg(STR_DIR_GIF) + MakeDirLink(Nivel(numDiret),DirAtual.Name,0) + "" + vbCR Next For Each DocAtual In Nivel(numDiret).Files SaidaDown(numDiret) = SaidaDown(numDiret) + "" + Espaco + MakeIconImg(GetFileGIFName(DocAtual.name)) + MakeFileLink(DocAtual) + "" + MakeFileSize(DocAtual) + "" + vbCR Next Out=Out + SaidaDown(numDiret) For Cont=1 To (numDiret-1) Espaco="" FlagA=0 For I=1 To (cont-1) Espaco=Espaco + "" Next For Each DirAtual In Nivel(cont).Subfolders If FlagA=1 Then SaidaUp(cont) = SaidaUp(cont) + "" + Espaco + MakeIconImg(STR_DIR_GIF) + MakeDirLink(Nivel(Cont),DirAtual.Name,0) + "" + vbCR Else If (DirAtual=Nivel(cont+1)) Then FlagA=1 End If End If Next Next For Cont=1 To (numDiret-1) Out=Out + SaidaUp(numdiret-cont) Next MostraArvore=Out End Function strCWD = Request.QueryString("CWD") %> <% If InStr(strCwd,strSERoot)>0 Then %>

Diretório: <%=right(strCWD,len(strCWD)-3)%>

<%=MostraArvore(strCWD)%>
<% Else strCwd=strSERoot %>

Diretório: <%=right(strCWD,len(strCWD)-3)%>

<%=MostraArvore(strCWD)%>
<%End If%>