<% ' 初始输入参数 Dim sContentID, sStyleID, sFullScreen Dim sStyleName, sStyleDir, sStyleCSS, sStyleUploadDir, nStateFlag, sDetectFromWord, sInitMode, sBaseUrl, sBaseHref, sAutoRemote, sShowBorder Dim sVersion, sReleaseDate, sLicense Dim aButtonCode(), aButtonHTML() Dim sToolBar, sToolBarNormal, sToolBarFullScreen ' 初始化 Call Init() %> eWebEditor - eWebSoft在线编辑器 <% If nStateFlag = 1 Then %> <% End If %>
<%=sToolBar%>
增高编辑区 减小编辑区
<% ' 显示调用错误提示 Sub ShowErr(str) Call DBConnEnd() Response.Write "调用错误:" & str Response.End End Sub ' 初始化 Sub Init() ' 取全屏标志 sFullScreen = Trim(Request.QueryString("fullscreen")) ' 取对应的内容ID sContentID = Trim(Request.QueryString("id")) If sContentID = "" Then ShowErr "请传入调用参数ID,即隐藏的内容表单项ID!" ' 取样式初始值 sStyleName = Get_SafeStr(Trim(Request.QueryString("style"))) If sStyleName = "" Then sStyleName = "standard" Dim s_SelfUrl, s_ApplicationName, n_Application, i s_SelfUrl = UCase(Request.ServerVariables("SERVER_NAME") & ":" & Request.ServerVariables("SERVER_PORT") & Request.ServerVariables("SCRIPT_NAME") & "?style=" & sStyleName) n_Application = 0 Dim aApplicationName, aApplicationUrl, aApplicationValue aApplicationName = Application("eWebEditor_ApplicationName") aApplicationUrl = Application("eWebEditor_ApplicationUrl") If IsArray(aApplicationName) = True Then n_Application = UBound(aApplicationName) ' 是否在内存中 For i = 1 To n_Application If aApplicationUrl(i) = s_SelfUrl Then s_ApplicationName = aApplicationName(i) aApplicationValue = Application(s_ApplicationName) sStyleID = aApplicationValue(0) sStyleName = aApplicationValue(1) sStyleDir = aApplicationValue(2) sStyleCSS = aApplicationValue(3) sStyleUploadDir = aApplicationValue(4) nStateFlag = aApplicationValue(5) sDetectFromWord = aApplicationValue(6) sInitMode = aApplicationValue(7) sBaseUrl = aApplicationValue(8) sVersion = aApplicationValue(9) sReleaseDate = aApplicationValue(10) sLicense = aApplicationValue(11) sToolBarNormal = aApplicationValue(12) sToolBarFullScreen = aApplicationValue(13) sBaseHref = aApplicationValue(14) sAutoRemote = aApplicationValue(15) sShowBorder = aApplicationValue(16) If sFullScreen = "1" Then sToolBar = sToolBarFullScreen Else sToolBar = sToolBarNormal End If Exit Sub End If Next End If ' 初始化数据库连接 Call DBConnBegin() sSql = "select * from ewebeditor_style where s_name='" & sStyleName & "'" oRs.Open sSql, oConn, 0, 1 If Not oRs.Eof Then sStyleID = oRs("S_ID") sStyleName = oRs("S_Name") sStyleDir = oRs("S_Dir") sStyleCSS = oRs("S_CSS") sStyleUploadDir = oRs("S_UploadDir") nStateFlag = oRs("S_StateFlag") sAutoRemote = CStr(oRs("S_AutoRemote")) sShowBorder = CStr(oRs("S_ShowBorder")) sDetectFromWord = oRs("S_DetectFromWord") sInitMode = oRs("S_InitMode") sBaseUrl = oRs("S_BaseUrl") sBaseHref = oRs("S_BaseHref") Else ShowErr "无效的样式Style参数传入,如果要使用默认值,请留空!" End If oRs.Close ' 取版本号及发布日期 sSql = "select sys_version,sys_releasedate,sys_license from ewebeditor_system" oRs.Open sSql, oConn, 0, 1 sVersion = oRs(0) sReleaseDate = oRs(1) sLicense = oRs(2) oRs.Close ' 取所有按钮 Call InitButtonArray() ' 取样式下的工具栏及按钮 Call InitToolBar() ' 断开数据库连接 Call DBConnEnd() If sFullScreen = "1" Then sToolBar = sToolBarFullScreen Else sToolBar = sToolBarNormal End If n_Application = n_Application + 1 If n_Application = 1 Then Redim aApplicationName(1) Redim aApplicationUrl(1) Else Redim Preserve aApplicationName(n_Application) Redim Preserve aApplicationUrl(n_Application) End If Redim aApplicationValue(16) s_ApplicationName = "eWebEditor" & n_Application aApplicationName(n_Application) = s_ApplicationName aApplicationUrl(n_Application) = s_SelfUrl aApplicationValue(0) = sStyleID aApplicationValue(1) = sStyleName aApplicationValue(2) = sStyleDir aApplicationValue(3) = sStyleCSS aApplicationValue(4) = sStyleUploadDir aApplicationValue(5) = nStateFlag aApplicationValue(6) = sDetectFromWord aApplicationValue(7) = sInitMode aApplicationValue(8) = sBaseUrl aApplicationValue(9) = sVersion aApplicationValue(10) = sReleaseDate aApplicationValue(11) = sLicense aApplicationValue(12) = sToolBarNormal aApplicationValue(13) = sToolBarFullScreen aApplicationValue(14) = sBaseHref aApplicationValue(15) = sAutoRemote aApplicationValue(16) = sShowBorder Application.Lock Application("eWebEditor_ApplicationName") = aApplicationName Application("eWebEditor_ApplicationUrl") = aApplicationUrl Application(s_ApplicationName) = aApplicationValue Application.Unlock End Sub ' 初始化按钮数组 Sub InitButtonArray() Dim i sSql = "select * from ewebeditor_button order by b_order asc" oRs.Open sSql, oConn, 0, 1 i = 0 Do While Not oRs.Eof i = i + 1 Redim Preserve aButtonCode(i) Redim Preserve aButtonHTML(i) aButtonCode(i) = oRs("B_Code") Select Case oRs("B_Type") Case 0 aButtonHTML(i) = "
" Case 1 aButtonHTML(i) = "" Case 2 aButtonHTML(i) = "
" & oRs("B_HTML") & "
" End Select oRs.MoveNext Loop oRs.Close End Sub ' 由按钮代码得到按钮的最终输出 Function Code2HTML(s_Code) Dim i Code2HTML = "" For i = 1 To UBound(aButtonCode) If UCase(aButtonCode(i)) = UCase(s_Code) Then Code2HTML = aButtonHTML(i) Exit Function End If Next End Function ' 初始化工具栏 Sub InitToolBar() Dim aButton, n sSql = "select t_button from ewebeditor_toolbar where s_id=" & sStyleID & " order by t_order asc" oRs.Open sSql, oConn, 0, 1 If Not oRs.Eof Then sToolBarNormal = "" sToolBarFullScreen = "
" Do While Not oRs.Eof sToolBarNormal = sToolBarNormal & "" sToolBarFullScreen = sToolBarFullScreen & "" oRs.MoveNext Loop sToolBarNormal = sToolBarNormal & "
" sToolBarFullScreen = sToolBarFullScreen & "
" aButton = Split(oRs("T_Button"), "|") For n = 0 To UBound(aButton) sToolBarNormal = sToolBarNormal & Code2HTML(aButton(n)) If UCase(aButton(n)) = "MAXIMIZE" Then aButton(n) = "Minimize" End If sToolBarFullScreen = sToolBarFullScreen & Code2HTML(aButton(n)) Next sToolBarNormal = sToolBarNormal & "
" sToolBarFullScreen = sToolBarFullScreen & "" Else ShowErr "对应样式没有设置工具栏!" End If oRs.Close End Sub %>