fckeditor asp版本的文件重命名_网页编辑器教程-查字典教程网
fckeditor asp版本的文件重命名
fckeditor asp版本的文件重命名
发布时间:2016-12-29 来源:查字典编辑
摘要:定位到:editorfilemanagerconnectorsaspio.asp主要是修改:SanitizeFileName这个函数,并添加...

定位到:editorfilemanagerconnectorsaspio.asp

主要是修改:SanitizeFileName这个函数,并添加取得扩展名和文件重命名的方法,详细代码如下:

复制代码 代码如下:

' Do a cleanup of the file name to avoid possible problems

function SanitizeFileName( sNewFileName )

Dim oRegex

Dim oExt

Set oRegex = New RegExp

oRegex.Global = True

if ( ConfigForceSingleExtension = True ) then

oRegex.Pattern = ".(?![^.]*$)"

sNewFileName = oRegex.Replace( sNewFileName, "_" )

'取得文件扩展名

sNewFileName = makefilename(now())"."&GetExtend(sNewFileName)

end if

' remove / | : ? * " < > and control characters

oRegex.Pattern = "(|/|||:|?|*|""|<|>|[u0000-u001F]|u007F)"

SanitizeFileName = oRegex.Replace( sNewFileName, "_" )

Set oRegex = Nothing

end function

Function GetExtend(filename)

dim tmp

if filename<>"" then

tmp=mid(filename,instrrev(filename,".")+1,len(filename)-instrrev(filename,"."))

tmp=LCase(tmp)

if instr(1,tmp,"asp")>0 or instr(1,tmp,"php")>0 or instr(1,tmp,"php3")>0 or instr(1,tmp,"aspx")>0 then

getextend="txt"

else

getextend=tmp

end if

else

getextend=""

end if

End Function

function makefilename(fname)

fname = fname '前fname为变量,后fname为函数参数引用

fname = replace(fname,"-","")

fname = replace(fname," ","")

fname = replace(fname,":","")

fname = replace(fname,"PM","")

fname = replace(fname,"AM","")

fname = replace(fname,"上午","")

fname = replace(fname,"下午","")

makefilename = fname

end function

懒得改的话就直接拷贝下面的代码:

复制代码 代码如下:

<%

' FCKeditor - The text editor for Internet - http://www.fckeditor.net

' Copyright (C) 2003-2009 Frederico Caldeira Knabben

'

' == BEGIN LICENSE ==

'

' Licensed under the terms of any of the following licenses at your

' choice:

'

' - GNU General Public License Version 2 or later (the "GPL")

' http://www.gnu.org/licenses/gpl.html

'

' - GNU Lesser General Public License Version 2.1 or later (the "LGPL")

' http://www.gnu.org/licenses/lgpl.html

'

' - Mozilla Public License Version 1.1 or later (the "MPL")

' http://www.mozilla.org/MPL/MPL-1.1.html

'

' == END LICENSE ==

'

' This file include IO specific functions used by the ASP Connector.

%>

<%

function CombinePaths( sBasePath, sFolder)

sFolder = replace(sFolder, "", "/")

CombinePaths = RemoveFromEnd( sBasePath, "/" ) & "/" & RemoveFromStart( sFolder, "/" )

end function

function CombineLocalPaths( sBasePath, sFolder)

sFolder = replace(sFolder, "/", "")

' The RemoveFrom* functions use RegExp, so we must escape the

CombineLocalPaths = RemoveFromEnd( sBasePath, "" ) & "" & RemoveFromStart( sFolder, "" )

end function

Function GetResourceTypePath( resourceType, sCommand )

if ( sCommand = "QuickUpload") then

GetResourceTypePath = ConfigQuickUploadPath.Item( resourceType )

else

GetResourceTypePath = ConfigFileTypesPath.Item( resourceType )

end if

end Function

Function GetResourceTypeDirectory( resourceType, sCommand )

if ( sCommand = "QuickUpload") then

if ( ConfigQuickUploadAbsolutePath.Item( resourceType ) <> "" ) then

GetResourceTypeDirectory = ConfigQuickUploadAbsolutePath.Item( resourceType )

else

' Map the "UserFiles" path to a local directory.

GetResourceTypeDirectory = Server.MapPath( ConfigQuickUploadPath.Item( resourceType ) )

end if

else

if ( ConfigFileTypesAbsolutePath.Item( resourceType ) <> "" ) then

GetResourceTypeDirectory = ConfigFileTypesAbsolutePath.Item( resourceType )

else

' Map the "UserFiles" path to a local directory.

GetResourceTypeDirectory = Server.MapPath( ConfigFileTypesPath.Item( resourceType ) )

end if

end if

end Function

Function GetUrlFromPath( resourceType, folderPath, sCommand )

GetUrlFromPath = CombinePaths( GetResourceTypePath( resourceType, sCommand ), folderPath )

End Function

Function RemoveExtension( fileName )

RemoveExtension = Left( fileName, InStrRev( fileName, "." ) - 1 )

End Function

Function ServerMapFolder( resourceType, folderPath, sCommand )

Dim sResourceTypePath

' Get the resource type directory.

sResourceTypePath = GetResourceTypeDirectory( resourceType, sCommand )

' Ensure that the directory exists.

CreateServerFolder sResourceTypePath

' Return the resource type directory combined with the required path.

ServerMapFolder = CombineLocalPaths( sResourceTypePath, folderPath )

End Function

Sub CreateServerFolder( folderPath )

Dim oFSO

Set oFSO = Server.CreateObject( "Scripting.FileSystemObject" )

Dim sParent

sParent = oFSO.GetParentFolderName( folderPath )

' If folderPath is a network path (serverfolder) then sParent is an empty string.

' Get out.

if (sParent = "") then exit sub

' Check if the parent exists, or create it.

If ( NOT oFSO.FolderExists( sParent ) ) Then CreateServerFolder( sParent )

If ( oFSO.FolderExists( folderPath ) = False ) Then

On Error resume next

oFSO.CreateFolder( folderPath )

if err.number<>0 then

dim sErrorNumber

Dim iErrNumber, sErrDescription

iErrNumber = err.number

sErrDescription = err.Description

On Error Goto 0

Select Case iErrNumber

Case 52

sErrorNumber = "102" ' Invalid Folder Name.

Case 70

sErrorNumber = "103" ' Security Error.

Case 76

sErrorNumber = "102" ' Path too long.

Case Else

sErrorNumber = "110"

End Select

SendError sErrorNumber, "CreateServerFolder(" & folderPath & ") : " & sErrDescription

end if

End If

Set oFSO = Nothing

End Sub

Function IsAllowedExt( extension, resourceType )

Dim oRE

Set oRE = New RegExp

oRE.IgnoreCase = True

oRE.Global = True

Dim sAllowed, sDenied

sAllowed = ConfigAllowedExtensions.Item( resourceType )

sDenied = ConfigDeniedExtensions.Item( resourceType )

IsAllowedExt = True

If sDenied <> "" Then

oRE.Pattern = sDenied

IsAllowedExt = Not oRE.Test( extension )

End If

If IsAllowedExt And sAllowed <> "" Then

oRE.Pattern = sAllowed

IsAllowedExt = oRE.Test( extension )

End If

Set oRE = Nothing

End Function

Function IsAllowedType( resourceType )

Dim oRE

Set oRE = New RegExp

oRE.IgnoreCase = False

oRE.Global = True

oRE.Pattern = "^(" & ConfigAllowedTypes & ")$"

IsAllowedType = oRE.Test( resourceType )

Set oRE = Nothing

End Function

Function IsAllowedCommand( sCommand )

Dim oRE

Set oRE = New RegExp

oRE.IgnoreCase = True

oRE.Global = True

oRE.Pattern = "^(" & ConfigAllowedCommands & ")$"

IsAllowedCommand = oRE.Test( sCommand )

Set oRE = Nothing

End Function

function GetCurrentFolder()

dim sCurrentFolder

dim oRegex

sCurrentFolder = Request.QueryString("CurrentFolder")

If ( sCurrentFolder = "" ) Then sCurrentFolder = "/"

' Check the current folder syntax (must begin and start with a slash).

If ( Right( sCurrentFolder, 1 ) <> "/" ) Then sCurrentFolder = sCurrentFolder & "/"

If ( Left( sCurrentFolder, 1 ) <> "/" ) Then sCurrentFolder = "/" & sCurrentFolder

' Check for invalid folder paths (..)

If ( InStr( 1, sCurrentFolder, ".." ) <> 0 OR InStr( 1, sCurrentFolder, "" ) <> 0) Then

SendError 102, ""

End If

Set oRegex = New RegExp

oRegex.Global = True

oRegex.Pattern = "(/.)|(//)|([:*?""<>|]|[u0000-u001F]|u007F)"

if (oRegex.Test(sCurrentFolder)) Then

SendError 102, ""

End If

GetCurrentFolder = sCurrentFolder

end function

' Do a cleanup of the folder name to avoid possible problems

function SanitizeFolderName( sNewFolderName )

Dim oRegex

Set oRegex = New RegExp

oRegex.Global = True

' remove . / | : ? * " < > and control characters

oRegex.Pattern = "(.||/|||:|?|*|""|<|>|[u0000-u001F]|u007F)"

SanitizeFolderName = oRegex.Replace( sNewFolderName, "_" )

Set oRegex = Nothing

end function

' Do a cleanup of the file name to avoid possible problems

function SanitizeFileName( sNewFileName )

Dim oRegex

Dim oExt

Set oRegex = New RegExp

oRegex.Global = True

if ( ConfigForceSingleExtension = True ) then

oRegex.Pattern = ".(?![^.]*$)"

sNewFileName = oRegex.Replace( sNewFileName, "_" )

'取得文件扩展名

sNewFileName = makefilename(now())&"."&GetExtend(sNewFileName)

end if

' remove / | : ? * " < > and control characters

oRegex.Pattern = "(|/|||:|?|*|""|<|>|[u0000-u001F]|u007F)"

SanitizeFileName = oRegex.Replace( sNewFileName, "_" )

Set oRegex = Nothing

end function

Function GetExtend(filename)

dim tmp

if filename<>"" then

tmp=mid(filename,instrrev(filename,".")+1,len(filename)-instrrev(filename,"."))

tmp=LCase(tmp)

if instr(1,tmp,"asp")>0 or instr(1,tmp,"php")>0 or instr(1,tmp,"php3")>0 or instr(1,tmp,"aspx")>0 then

getextend="txt"

else

getextend=tmp

end if

else

getextend=""

end if

End Function

function makefilename(fname)

fname = fname '前fname为变量,后fname为函数参数引用

fname = replace(fname,"-","")

fname = replace(fname," ","")

fname = replace(fname,":","")

fname = replace(fname,"PM","")

fname = replace(fname,"AM","")

fname = replace(fname,"上午","")

fname = replace(fname,"下午","")

makefilename = fname

end function

' This is the function that sends the results of the uploading process.

Sub SendUploadResults( errorNumber, fileUrl, fileName, customMsg )

Response.Clear

Response.Write "<script type=""text/javascript"">"

' Minified version of the document.domain automatic fix script (#1919).

' The original script can be found at _dev/domain_fix_template.js

Response.Write "(function(){var d=document.domain;while (true){try{var A=window.parent.document.domain;break;}catch(e) {};d=d.replace(/.*?(?:.|$)/,'');if (d.length==0) break;try{document.domain=d;}catch (e){break;}}})();"

Response.Write "window.parent.OnUploadCompleted(" & errorNumber & ",""" & Replace( fileUrl, """", """" ) & """,""" & Replace( fileName, """", """" ) & """,""" & Replace( customMsg , """", """" ) & """) ;"

Response.Write "</script>"

Response.End

End Sub

%>

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新网页编辑器学习
    热门网页编辑器学习
    编程开发子分类