⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tkl_sysproedomclass.asp

📁 TSYS网站管理系统 TSYS网站管理系统 TSYS网站管理系统
💻 ASP
字号:
<%
'////////////////////////////////////////////////////////////
'//资源系统管理员信息类(TklMilk Boy9732@msn.com)
'//用途:对管理员的信息读取,权限判断进行规范,统一操作
'//调用实例:
'//Dim SysAdmin
'//Set SysAdmin=New SYSProedom_Class
'//Set SysAdmin=Nothing
'//属性:
'//------------属性名-------------返回类型------------------简介-----
'//         .Logined             Bool                管理员是否登录
'//         .AdminTitle          String              管理员帐户名称
'//         .AdminNickName       String              管理员昵称
'//         .AdminRoleTitle      String              管理员所属角色名称
'//         更多请详见其它代码注解...
'////////////////////////////////////////////////////////////

Class SYSProedom_Class

    Private PopedomList
	Private ClassPopedomList

    Private Podm_ChagePWD
    Private Podm_ChageClass
    Private Podm_ChageFrom
    Private Podm_ChageAuthor
    Private Podm_ChageTopAndCpr
    Private Podm_ChageNews
    Private Podm_ChageDustbin
    Private Podm_ManageFiles
    Private Podm_ConfigSite
    Private Podm_ChangeAdminList
    Private Podm_ChangeRole
    Private Podm_ChangeCommentList
    Private Podm_MoveNews
    Private Podm_Speciality
    Private Podm_CommentList
    Private Podm_NewsTemplate
    Private Podm_SysConfig
    Private Podm_ManageDataBase
    Private Podm_UpdatePage
    Private Podm_InsertSYS
    Private Podm_CreateNewsFile

'////////////////////////////////////////
'  在这里添加您的权限变量定义
'////////////////////////////////////////

    Private Sub Class_Initialize
        '初始化权限项目唯一标识
        Podm_ChagePWD=1
        Podm_ChageClass=2
        Podm_ChageFrom=3
        Podm_ChageAuthor=4
        Podm_ChageTopAndCpr=5
        Podm_ChageNews=6
        Podm_ManageFiles=7
        Podm_ChageDustbin=8
        Podm_ConfigSite=10
        Podm_ChangeAdminList=11
        Podm_ChangeRole=12
        Podm_ChangeCommentList=13
        Podm_MoveNews=14
        Podm_Speciality=15
        Podm_CommentList=16
        Podm_NewsTemplate=17
        Podm_SysConfig=18
        Podm_ManageDataBase=19
        Podm_UpdatePage=20
        Podm_InsertSYS=21
        Podm_CreateNewsFile=22

'////////////////////////////////////////
'  在这里初始化您的权限常量
'////////////////////////////////////////

        '初始化权限列表
        PopedomList=Podm_ChagePWD&",修改密码,"&_
                    Podm_ChageClass&",修改栏目,"&_
                    Podm_ChageFrom&",修改来源,"&_
                    Podm_ChageAuthor&",修改作者,"&_
                    Podm_ChageNews&",管理所有资源,"&_
                    Podm_ChageDustbin&",回收站管理,"&_
                    Podm_ChangeCommentList&",评论管理,"&_
                    Podm_ManageFiles&",文件系统管理,"&_
                    Podm_UpdatePage&",站点页面更新,"&_
                    Podm_InsertSYS&",站点内容替换,"&_
                    Podm_CreateNewsFile&",生成资源,"&_
                    Podm_MoveNews&",移动资源,"&_
                    Podm_Speciality&",资源特性,"&_
                    Podm_CommentList&",评论管理,"&_
                    Podm_NewsTemplate&",资源模版,"&_
                    Podm_ChangeAdminList&",用户管理,"&_
                    Podm_ChangeRole&",角色操作,"&_
                    Podm_SysConfig&",系统设置,"&_
                    Podm_ManageDataBase&",数据库管理,"&_
                    ""
    End Sub

    Public Property Get defPopedomList()
        defPopedomList=PopedomList
    End Property

    '默认的系统超级管理员的名称,该用户不可被删除和修改
    Public Property Get defAdminUserTitle()
        defAdminUserTitle="Admin"
    End Property

    '名称AdminRoleTitle的角色不可被删除,和修改
    Public Property Get defAdminRoleTitle()
        defAdminRoleTitle="超级管理员"
    End Property

    '栏目权限类型,低
    Public Property Get defClassPopedomType_Low()
        defClassPopedomType_Low=0
    End Property
    '栏目权限类型,中
    Public Property Get defClassPopedomType_Mid()
        defClassPopedomType_Mid=1
    End Property
    '栏目权限类型,高
    Public Property Get defClassPopedomType_Hig()
        defClassPopedomType_Hig=2
    End Property

    '管理员是否登录,返回bool
    Public Property Get Logined()
        If Session("AdminLogined")="TRUE" And Trim(Session("AdminTitle"))<>"" Then
            Logined=true
        Else
            Logined=false
        End If
    End Property
    '管理员退出
    Public Sub LogOut()
        Session.Abandon
    End Sub

    '////////////////////////////////////////////////////////
    '//判断mItem是否在stritemList列表中,此列表由splitStr为分隔符
    '例:3 是否 1,2,3,4,5
    Private Function ItemInList(mItem,strItemList,splitStr)
        Dim I
        Dim ItemList
        ItemInList=false
        If splitStr="" Then
            splitStr=","
        End If
        mItem=Trim(CStr(mItem))
        If mItem<>"" And strItemList<>"" then
            ItemList=Split(strItemList,splitStr,-1,1)
            For I=0 To UBound(ItemList)
                If Trim(CStr(ItemList(I)))=mItem Then
                    ItemInList=True
                    Exit For
                End If
            Next
        End If
    End Function

    '////////////////////////////////////////////////////////
    '//获得指定分类的的操作权值,
    '//返回:若有则返回权值;无权限则返回-1
    Public Function EnoughClassPopedom(ClassId)
        If ChageNews() Then
            EnoughClassPopedom=defClassPopedomType_Hig
            Exit Function
        End If
        EnoughClassPopedom=-1
        Dim arrPopedomList
            arrPopedomList=Split(AdminClassPopedom,vbCrLf,-1,1)
        Dim arrPopedomItem
        Dim I
        For I=0 To UBound(arrPopedomList)
            arrPopedomItem=Split(arrPopedomList(I),",",-1,1)
            If CLng(arrPopedomItem(0))=CLng(ClassId) Then
                EnoughClassPopedom=CLng(arrPopedomItem(1))
                Exit For
            End If
        Next
    End Function

    '//////////////////////////////////////////////////////////////////
    '//判断指定pID功能的操作权限是否在用户的权限列表当中
    '//返回:Flase/True
    Private Function EnoughPopedom(pId)
        EnoughPopedom = ItemInList(pId,Session("AdminPopedom"),",")
    End Function


    '//////////////////////////////////////////////////////////////////
    '//当前帐户的各项信息属性    
    Public Property Get AdminLogined()                               '帐户是否登录
        AdminLogined=Session("AdminLogined")
    End Property
    Public Property Let AdminLogined(byval val)
        Session("AdminLogined")=val
    End Property

    Public Property Get AdminTitle()                                '帐户名称
        AdminTitle=Session("AdminTitle")
    End Property
    Public Property Let AdminTitle(byval val)
        Session("AdminTitle")=val
    End Property

    Public Property Get AdminPopedom()                                '权限列表
        AdminPopedom=Session("AdminPopedom")
    End Property
    Public Property Let AdminPopedom(byval val)
        Session("AdminPopedom")=val
    End Property

    Public Property Get AdminClassPopedom()                         '权限列表
        AdminClassPopedom=Session("AdminClassPopedom")
    End Property
    Public Property Let AdminClassPopedom(byval val)
        Session("AdminClassPopedom")=val
    End Property

    Public Property Get AdminRoleTitle()                          '所属角色名称
        AdminRoleTitle=Session("AdminRoleTitle")
    End Property
    Public Property Let AdminRoleTitle(byval val)
        Session("AdminRoleTitle")=val
    End Property

    Public Property Get AdminNickName()                           '帐户昵称(用于再任编辑)
        AdminNickName=Session("AdminNickName")
    End Property
    Public Property Let AdminNickName(byval val)
        Session("AdminNickName")=val
    End Property

    Public Property Get AdminTopClassId()                           '管理员仅可查看的分类
        AdminTopClassId=CLng(Session("AdminTopClassId"))
    End Property
    Public Property Let AdminTopClassId(byval val)
        Session("AdminTopClassId")=val
    End Property

    Public Property Get AdminFileSysRoot()                          '当前管理员的绑定目录
        If AdminRoleTitle=defAdminRoleTitle Then
            AdminFileSysRoot=""
        Else
            AdminFileSysRoot=Session("AdminFileSysRoot")
        End If
    End Property
    Public Property Let AdminFileSysRoot(byval val)
        Session("AdminFileSysRoot")=val
    End Property

    '//////////////////////////////////////////////////////////////////
    '//以下是判断当前帐户的所拥用的权限属性,均返回Bool型

    '是否有更改密码的权限
    Public Property Get ChagePWD()
        '如果当前帐户是超级管理员角色,则所有所有权限,无需判断
        If AdminRoleTitle=defAdminRoleTitle Then
            ChagePWD=True
            Exit Property
        End If
        ChagePWD=EnoughPopedom(Podm_ChagePWD)
    End Property

    '是否有修改类别的权限
    Public Property Get ChageClass()
        If AdminRoleTitle=defAdminRoleTitle Then
            ChageClass=True
            Exit Property
        End If
        ChageClass=EnoughPopedom(Podm_ChageClass)
    End Property

    '是否有修资源来源的权限
    Public Property Get ChageFrom()
        If AdminRoleTitle=defAdminRoleTitle Then
            ChageFrom=True
            Exit Property
        End If
        ChageFrom=EnoughPopedom(Podm_ChageFrom)
    End Property

    '是否有修资源作者的权限
    Public Property Get ChageAuthor()
        If AdminRoleTitle=defAdminRoleTitle Then
            ChageAuthor=True
            Exit Property
        End If
        ChageAuthor=EnoughPopedom(Podm_ChageAuthor)
    End Property

    '是否有修所有资源的权限
    Public Property Get ChageNews()
        If AdminRoleTitle=defAdminRoleTitle Then
            ChageNews=True
            Exit Property
        End If
        ChageNews=EnoughPopedom(Podm_ChageNews)
    End Property

    '是否有清空回收站的权限
    Public Property Get ChageDustbin()
        If AdminRoleTitle=defAdminRoleTitle Then
            ChageDustbin=True
            Exit Property
        End If
        ChageDustbin=EnoughPopedom(Podm_ChageDustbin)
    End Property

   '是否管理文件系统的权限
    Public Property Get ManageFiles()
        If AdminRoleTitle=defAdminRoleTitle Then
            ManageFiles=True
            Exit Property
        End If
        ManageFiles=EnoughPopedom(Podm_ManageFiles)
    End Property

    '是否有管理所有帐户的权限
    Public Property Get ChangeAdminList()
        If AdminRoleTitle=defAdminRoleTitle Then
            ChangeAdminList=True
            Exit Property
        End If
        ChangeAdminList=EnoughPopedom(Podm_ChangeAdminList)
    End Property

    '是否有管理帐户角色的权限
    Public Property Get ChangeRole()
        If AdminRoleTitle=defAdminRoleTitle Then
            ChangeRole=True
            Exit Property
        End If
        ChangeRole=EnoughPopedom(Podm_ChangeRole)
    End Property

    '是否有更新站点页面的权限    
    Public Property Get UpdatePage()
        If AdminRoleTitle=defAdminRoleTitle Then
            UpdatePage=True
            Exit Property
        End If
        UpdatePage=EnoughPopedom(Podm_UpdatePage)
    End Property

    '是否有站点内容替换的权限
    Public Property Get InsertSYS()
        If AdminRoleTitle=defAdminRoleTitle Then
            InsertSYS=True
            Exit Property
        End If
        InsertSYS=EnoughPopedom(Podm_InsertSYS)
    End Property

    '是否具有生成资源文件的权限
    Public Property Get CreateNewsFile()
        If AdminRoleTitle=defAdminRoleTitle Then
            CreateNewsFile=True
            Exit Property
        End If
        CreateNewsFile=EnoughPopedom(Podm_CreateNewsFile)
    End Property

    '是否有移动资源的权限
    Public Property Get MoveNews()
        If AdminRoleTitle=defAdminRoleTitle Then
            MoveNews=True
            Exit Property
        End If
        MoveNews=EnoughPopedom(Podm_MoveNews)
    End Property

    '是否有修资源特性的权限
    Public Property Get ChangeSpeciality()
        If AdminRoleTitle=defAdminRoleTitle Then
            ChangeSpeciality=True
            Exit Property
        End If
        ChangeSpeciality=EnoughPopedom(Podm_Speciality)
    End Property

    '是否有评论管理的权限
    Public Property Get ChangeCommentList()
        If AdminRoleTitle=defAdminRoleTitle Then
            ChangeCommentList=True
            Exit Property
        End If
        ChangeCommentList=EnoughPopedom(Podm_CommentList)
    End Property

    '是否有管理资源模板的权限
    Public Property Get ChangeNewsTemplate()
        If AdminRoleTitle=defAdminRoleTitle Then
            ChangeNewsTemplate=True
            Exit Property
        End If
        ChangeNewsTemplate=EnoughPopedom(Podm_NewsTemplate)
    End Property

    '是否有配制系统的权限
    Public Property Get ChangeSysConfig()
        If AdminRoleTitle=defAdminRoleTitle Then
            ChangeSysConfig=True
            Exit Property
        End If
        ChangeSysConfig=EnoughPopedom(Podm_SysConfig)
    End Property

    '是否有数据库的权限
    Public Property Get ManageDataBase()
        If AdminRoleTitle=defAdminRoleTitle Then
            ManageDataBase=True
            Exit Property
        End If
        ManageDataBase=EnoughPopedom(Podm_ManageDataBase)
    End Property

'////////////////////////////////////////
'  在这里添加您的权限属性
'////////////////////////////////////////

End Class
%>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -