📄 job_clsmain.asp
字号:
End If
Main_Style = Split(Main_Style,"@@@")
mainhtml = Split(Main_Style(0),"|||")
lanstr = Split(Main_Style(1),"|||")
mainpic = Split(Main_Style(2),"|||")
mainsetting = Split(mainhtml(0),"||")
If hascss Then
If Application(CacheName & "_csslist").documentElement.selectSingleNode("css[@id='"& CssID &"' and tid='"& SkinID &"']/@filename").text = "" Then
Forum_CSS="<style type=""text/css"">" & Application(CacheName & "_csslist").documentElement.selectSingleNode("css[@id='"& CssID &"' and tid='"& SkinID &"']/cssdata").text &"</style>"
Forum_CSS = Replace(Forum_CSS,"{$width}",mainsetting(0))
Forum_CSS = Replace(Forum_CSS,"{$PicUrl}",Forum_PicUrl)
Else
Forum_CSS="<link rel=""stylesheet"" type=""text/css"" href="""& cssfilepath & Application(CacheName & "_csslist").documentElement.selectSingleNode("css[@id='"& CssID &"' and tid='"& SkinID &"']/@filename").text &".css"" />"
End If
Else
Forum_CSS="<link rel=""stylesheet"" type=""text/css"" href="""& cssfilepath & Application(CacheName & "_csslist").documentElement.selectSingleNode("css[@id='"& CssID &"']/@filename").text &".css"" />"
End If
End Sub
Rem 判断发言是否来自外部
Public Function ChkPost()
Dim server_v1,server_v2
Chkpost=False
server_v1=Cstr(Request.ServerVariables("HTTP_REFERER"))
server_v2=Cstr(Request.ServerVariables("SERVER_NAME"))
If Mid(server_v1,8,len(server_v2))=server_v2 Then Chkpost=True
End Function
Public Sub ReloadSetupCache(MyValue,N)'更新总设置表部分缓存数组,入口:更新内容、数组位置
CacheData(N,0) = MyValue
Name="setup"
value=CacheData
End Sub
Public Sub NeedUpdateList(username,act)'更新用户资料缓存(缓存用户名,是否需要添加)[0=不添加,只作清理,1=需要添加]
Dim Tmpstr,TmpUsername
Name="NeedToUpdate"
If ObjIsEmpty() Then Value=""
Tmpstr=Value
TmpUsername=","&username&","
Tmpstr=Replace(Tmpstr,TmpUsername,",")
Tmpstr=Replace(Tmpstr,",,",",")
If act=1 Then
If IsONline(username,0) Then
If Tmpstr="" Then
Tmpstr=TmpUsername
Else
Tmpstr=Tmpstr&TmpUsername
End If
End If
End If
Tmpstr=Replace(Tmpstr,",,",",")
Value=Tmpstr
End Sub
Public Sub LetGuestSession()'写入客人session
Dim StatUserID,UserSessionID
StatUserID = checkStr(Trim(Request.Cookies(Forum_sn)("StatUserID")))
If IsNumeric(StatUserID) = 0 or StatUserID = "" Then
StatUserID = Replace(UserTrueIP,".","")
UserSessionID = Replace(Startime,".","")
If IsNumeric(StatUserID) = 0 or StatUserID = "" Then StatUserID = 0
StatUserID = Ccur(StatUserID) + Ccur(UserSessionID)
End If
StatUserID = Ccur(StatUserID)
Response.Cookies(Forum_sn).Expires=DateAdd("s",3600,Now())
Response.Cookies(Forum_sn).path=cookiepath
Response.Cookies(Forum_sn)("StatUserID") = StatUserID
Set UserSession=Application(FRHRcms.CacheName&"_info_guest").cloneNode(True)
UserSession.documentElement.selectSingleNode("userinfo/@statuserid").text=StatUserID
UserSession.documentElement.selectSingleNode("userinfo/@cometime").text=Now()
UserSession.documentElement.selectSingleNode("userinfo/@activetime").text=DateAdd("s",-3600,Now())
UserSession.documentElement.selectSingleNode("userinfo/@boardid").text=boardid
Dim BS
Set Bs=GetBrowser()
UserSession.documentElement.appendChild(Bs.documentElement)
If EnabledSession Then
Session(CacheName & "UserID")=UserSession.xml
End If
End Sub
'根据页面来判断是否需要执行TrueCheckUserLogin
Public Function NeedChecklongin()
NeedChecklongin=True
If UserID > 0 Then
If InStr(ScriptName,"admin_")>0 Then Exit Function
Dim pagelist
pagelist=",post.asp,usermanager.asp,mymodify.asp,modifypsw.asp,modifyadd.asp,usersms.asp,"
pagelist=pagelist & "friendlist.asp,favlist.asp,myfile.asp,friendlist.asp,recycle.asp,"
pagelist=pagelist & "fileshow.asp,bbseven.asp,dispuser.asp,savepost.asp,plus_tools_pay.asp,joinvipgroup.asp,plus_tools_center.asp"
If InStr(pagelist,","&ScriptName&",")>0 Then Exit Function
End If
NeedChecklongin=False
End Function
'验证用户登陆
Public Sub CheckUserLogin()
If EnabledSession Then
Set UserSession=Server.CreateObject("msxml2.FreeThreadedDOMDocument"& MsxmlVersion)
If Not UserSession.loadxml(Session(CacheName & "UserID")&"") Then
If UserID > 0 Then
TrueCheckUserLogin
Else
Call LetGuestSession()
End If
Else
If UserID >0 Or UserSession.documentElement.selectSingleNode("userinfo/@userid").text<>"0" Then
Dim NeedToUpdate,toupdate
toupdate=False
Name="NeedToUpdate"
If Not ObjIsEmpty() Then
NeedToUpdate=","&Value&","
If InStr(NeedToUpdate,","&MemberName&",")>0 Then
Call NeedUpdateList(MemberName,0)
toupdate=True
End If
End If
If NeedChecklongin Or toupdate Then TrueCheckUserLogin
Else
End If
End If
Else
If UserID > 0 Then
TrueCheckUserLogin
Else
Call LetGuestSession()
End If
End If
UserID=CLng(UserSession.documentElement.selectSingleNode("userinfo/@userid").text)
UserGroupID=CLng(UserSession.documentElement.selectSingleNode("userinfo/@usergroupid").text)
If UserID > 0 Then
GetCacheUserInfo
Else
UserGroupID = 7
Lastlogin = Now()
End If
Browser=Checkstr(UserSession.documentElement.selectSingleNode("agent/@browser").text)
version=replace(Checkstr(UserSession.documentElement.selectSingleNode("agent/@version").text),"--","")
platform=Checkstr(UserSession.documentElement.selectSingleNode("agent/@platform").text)
If (Browser="unknown" And version="unknown" And platform="unknown") Or Request("IsSearch")="1" Then
If IsWebSearch Then
IsSearch = True
Else
IsSearch = False
End If
If Request("IsSearch") = "1" Then IsSearch = True
Cls_IsSearch = True
End If
'IP锁定
If UserSession.documentElement.selectSingleNode("agent/@lockip").text="1" Then
If Not Page_Admin Then Set FRHRcms=Nothing:Response.Redirect "showerr.asp?action=iplock"
'If Not Page_Admin Then Session(CacheName & "UserID")=empty:Response.Status = "302 Object Moved"
End If
GetGroupSetting
End Sub
Rem xmlroot跟节点名称 row记录行节点名称
Public Function RecordsetToxml(Recordset,row,xmlroot)
Dim i,node,rs,j,DataArray
If xmlroot="" Then xmlroot="xml"
If row="" Then row="row"
Set RecordsetToxml=Server.CreateObject("msxml2.FreeThreadedDOMDocument"& MsxmlVersion)
RecordsetToxml.appendChild(RecordsetToxml.createElement(xmlroot))
If Not Recordset.EOF Then
DataArray=Recordset.GetRows(-1)
For i=0 To UBound(DataArray,2)
Set Node=RecordsetToxml.createNode(1,row,"")
j=0
For Each rs in Recordset.Fields
node.attributes.setNamedItem(RecordsetToxml.createNode(2,LCase(rs.name),"")).text= DataArray(j,i)& ""
j=j+1
Next
RecordsetToxml.documentElement.appendChild(Node)
Next
End If
DataArray=Null
End Function
Public Function ArrayToxml(DataArray,Recordset,row,xmlroot)
Dim i,node,rs,j
If xmlroot="" Then xmlroot="xml"
Set ArrayToxml=Server.CreateObject("msxml2.FreeThreadedDOMDocument"& MsxmlVersion)
ArrayToxml.appendChild(ArrayToxml.createElement(xmlroot))
If row="" Then row="row"
For i=0 To UBound(DataArray,2)
Set Node=ArrayToxml.createNode(1,row,"")
j=0
For Each rs in Recordset.Fields
node.attributes.setNamedItem(ArrayToxml.createNode(2,LCase(rs.name),"")).text= DataArray(j,i)& ""
j=j+1
Next
ArrayToxml.documentElement.appendChild(Node)
Next
End Function
Public Function Createpass()'系统分配随机密码
Dim Ran,i,LengthNum
LengthNum=16
Createpass=""
For i=1 To LengthNum
Randomize
Ran = CInt(Rnd * 2)
Randomize
If Ran = 0 Then
Ran = CInt(Rnd * 25) + 97
Createpass =Createpass& UCase(Chr(Ran))
ElseIf Ran = 1 Then
Ran = CInt(Rnd * 9)
Createpass = Createpass & Ran
ElseIf Ran = 2 Then
Ran = CInt(Rnd * 25) + 97
Createpass =Createpass& Chr(Ran)
End If
Next
End Function
Public Sub NewPassword()'更新用户验证密码
If UserID=0 Then Exit Sub
Response.Write "<iframe style=""border:0px;width:0px;height:0px;"" src=""newpass.asp"" name=""Dvnewpass""></iframe>"
End Sub
Public Sub TrueCheckUserLogin()
Dim Rs,SQL,FoundMyGroupID
FoundMyGroupID = 0
Sql="Select UserID,UserName,UserPassword,UserEmail,UserPost,UserTopic,UserSex,UserFace,UserWidth,UserHeight,JoinDate,LastLogin as cometime ,LastLogin,LastLogin as activetime,UserLogins,Lockuser,Userclass,UserGroupID,UserGroup,userWealth,userEP,userCP,UserPower,UserBirthday,UserLastIP,UserDel,UserIsBest,UserHidden,UserMsg,IsChallenge,UserMobile,TitlePic,UserTitle,TruePassWord,UserToday,UserMoney,UserTicket,FollowMsgID,Vip_StarTime,Vip_EndTime,userid as boardid"
Sql=Sql & " From [Dv_User] Where UserID = " & UserID
Set Rs = Execute(Sql)
If Rs.EOF Then
UserID = 0:LetGuestSession():Exit Sub
Else
If Not (LCase(Rs("UserName"))=LCase(Membername) and Rs("TruePassWord")=Memberword) Then
If EnabledSession Then
Set UserSession=Server.CreateObject("msxml2.FreeThreadedDOMDocument"& MsxmlVersion)
If UserSession.loadxml(Session(CacheName & "UserID")&"") Then
If UserSession.documentElement.selectSingleNode("userinfo/@username") Is Nothing Or UserSession.documentElement.selectSingleNode("userinfo/@userpassword") Is Nothing Then
UserID = 0:LetGuestSession():Exit Sub
Else
If Not (LCase(Rs("UserName"))=LCase(UserSession.documentElement.selectSingleNode("userinfo/@username").text) and Rs("UserPassword")=UserSession.documentElement.selectSingleNode("userinfo/@userpassword").text) Then
UserID = 0:LetGuestSession():Exit Sub
End If
End If
Else
UserID = 0:LetGuestSession():Exit Sub
End If
Else
UserID = 0:LetGuestSession():Exit Sub
End If
End If
If Rs("LockUser")=1 Then
UserID = 0:LetGuestSession():Exit Sub
End if
End If
Set UserSession=RecordsetToxml(rs,"userinfo","xml")
UserSession.documentElement.selectSingleNode("userinfo/@cometime").text=Now()
UserSession.documentElement.selectSingleNode("userinfo/@activetime").text=DateAdd("s",-3600,Now())
UserSession.documentElement.selectSingleNode("userinfo/@boardid").text=boardid
UserSession.documentElement.selectSingleNode("userinfo").attributes.setNamedItem(UserSession.createNode(2,"isuserpermissionall","")).text=FoundUserPermission_All()
If Not (UserSession.documentElement.selectSingleNode("userinfo/@usergroupid2") is Nothing ) Then
FoundMyGroupID = CLng(UserSession.documentElement.selectSingleNode("userinfo/@usergroupid2").text)
End If
If FoundMyGroupID > 0 Then
UserSession.documentElement.selectSingleNode("userinfo").attributes.setNamedItem(UserSession.createNode(2,"usergroupid2","")).text=FoundMyGroupID
End If
Dim BS
Set Bs=GetBrowser()
UserSession.documentElement.appendChild(Bs.documentElement)
If EnabledSession Then
Session(CacheName & "UserID")= UserSession.xml
End If
Set Rs=Nothing
GetCacheUserInfo()
End Sub
Public Sub GetCacheUserInfo() '用户登录成功后,采用本函数读取用户数组并判断一些常用信息
UserID = Clng(UserSession.documentElement.selectSingleNode("userinfo/@userid").text)
MemberName = UserSession.documentElement.selectSingleNode("userinfo/@username").text
Lastlogin = UserSession.documentElement.selectSingleNode("userinfo/@lastlogin").text
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -