-- *****************************************************************
-- FS-WEB-PORTAL-MIB.mib:  FS Web Portal MIB file
--
-- Feb 2010, Panshiyong
--
-- Copyright (c) 2010 by FS.COM Inc..
-- All rights reserved.
-- 
-- *****************************************************************

FS-WEB-PORTAL-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY,
    OBJECT-TYPE
            FROM SNMPv2-SMI
    DisplayString,
    RowStatus
            FROM SNMPv2-TC
    MODULE-COMPLIANCE,
    OBJECT-GROUP,
    NOTIFICATION-GROUP
            FROM SNMPv2-CONF
    fsMgmt
            FROM FS-SMI;

fsWebPortalMIB MODULE-IDENTITY
    LAST-UPDATED "201002020000Z"
    ORGANIZATION "FS.COM Inc.."
    CONTACT-INFO
            " 
            Tel: 400-865-2852 

            E-mail: https://www.fs.com/live_chat_service_mail.html"
    DESCRIPTION
            "This module defines web portal mibs."
    REVISION      "201002020000Z"
    DESCRIPTION
            "Initial version of this MIB module."
    ::= { fsMgmt 69 } 


--***************** define the web portal root nodes ******************
fsWebPortalMIBObjects       OBJECT IDENTIFIER ::= { fsWebPortalMIB 1 }
fsWebPortalGlobalMIBObjects OBJECT IDENTIFIER ::= { fsWebPortalMIBObjects 1 }
fsWebPortalLocalMIBObjects  OBJECT IDENTIFIER ::= { fsWebPortalMIBObjects 2 }

--********************************************************************
--                                                                  **
--                  Global nodes                                    **
--                                                                  **
--********************************************************************

-- global web auth type
fsWebPortalGlbWebAuthType OBJECT-TYPE
    SYNTAX INTEGER {
                 internal(0),
                 customized(1),
                 external(2)   
           }
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
            "The type of global web authentication:
             0 - internal,
             1 - customized,
             2 - external."
    DEFVAL { internal }        
    ::= { fsWebPortalGlobalMIBObjects 1 }

-- global method list 
fsWebPortalGlbMethodList OBJECT-TYPE
    SYNTAX DisplayString (SIZE (1..63)) 
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
            "A human readable string representing the global authentication method-list."
    ::= { fsWebPortalGlobalMIBObjects 2 }  
    
-- global customized page file name
fsWebPortalGlbCustomizedPageName OBJECT-TYPE
    SYNTAX DisplayString (SIZE (1..130)) 
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
            "A human readable string representiong the global customized page file name."
    ::= { fsWebPortalGlobalMIBObjects 3 }  

-- global external web portal URL
fsWebPortalGlbExternalWebPortalURL OBJECT-TYPE
    SYNTAX DisplayString (SIZE (1..130)) 
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
            "A human readable string representiong the global external 
             web portal page URL."
    ::= { fsWebPortalGlobalMIBObjects 4 }      

-- global customized logo name
fsWebPortalGlbCustomizedLogoName OBJECT-TYPE
    SYNTAX  DisplayString(SIZE (1..130))
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
            "A human readable string representiong the global logo picture 
             name of the internal web portal."
    ::= { fsWebPortalGlobalMIBObjects 5 }

-- global echo manufacturer logo 
fsWebPortalGlbEchoManufacturerLogo OBJECT-TYPE
    SYNTAX  INTEGER {
									 disable(0),
                   enable(1)               
               }
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
            "The global flag of display manufacturer logo or not
             0 - disable,
             1 - enable."
    DEFVAL { enable }
    ::= { fsWebPortalGlobalMIBObjects 6 }

-- global welcome message
fsWebPortalGlbWelcomeMsg OBJECT-TYPE
    SYNTAX OCTET STRING(SIZE (1..2047))
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
            "A human readable string representing the global welcome message."
    ::= { fsWebPortalGlobalMIBObjects 7 }

-- global web-page title
fsWebPortalGlbWebPageTitle OBJECT-TYPE
    SYNTAX DisplayString(SIZE (1..130))  
    MAX-ACCESS  read-write
    STATUS  current
    DESCRIPTION
            "A human readable string representing the global web-page title."
    ::= { fsWebPortalGlobalMIBObjects 8 }   
    

--********************************************************************
--                                                                  **
--                  Local nodes                                     **
--                                                                  **
--********************************************************************                

fsWebPortalAuthTable OBJECT-TYPE
    SYNTAX SEQUENCE OF FSWebPortalAuthEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
            "A table of web portal entries."
    ::= { fsWebPortalLocalMIBObjects 1 }
    
fsWebPortalAuthEntry OBJECT-TYPE
    SYNTAX FSWebPortalAuthEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
            "Define all attributes of the web portal."  
    INDEX { fsWebPortalNetMode,
            fsWebPortalNetID }
    ::= { fsWebPortalAuthTable 1 }

FSWebPortalAuthEntry ::= 
    SEQUENCE {
        fsWebPortalNetMode               INTEGER,             
        fsWebPortalNetID                 INTEGER,
        fsWebPortalWebAuthType           INTEGER,
        fsWebPortalUseGlbConfigFlag      INTEGER,
		    fsWebPortalMetholdList           DisplayString,
        fsWebPortalCustomizedPageName    DisplayString,
        fsWebPortalExtWebPortalURL       DisplayString,
        fsWebPortalCustomizedLogoName    DisplayString,
        fsWebPortalEchoManufacturerLogo  INTEGER,
        fsWebPortalWelcomeMsg            OCTET STRING,
        fsWebPortalWebPageTitle          DisplayString,      
        fsWebPortalEntryStatus           RowStatus         
    }

fsWebPortalNetMode OBJECT-TYPE
        SYNTAX INTEGER {
                    wlan(1),
                    ethernet(2),
                    vlan(3)
               }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The net mode of web portal, the value is as fallow:
             1 - wlan,
             2 - ethernet,
             3 - vlan."
        ::= { fsWebPortalAuthEntry  1 }

fsWebPortalNetID OBJECT-TYPE
        SYNTAX INTEGER(1..4095)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The net NO. of web portal."
        ::= { fsWebPortalAuthEntry  2 }

fsWebPortalWebAuthType OBJECT-TYPE
        SYNTAX INTEGER {
                   internal(0),
                   customized(1),
                   external(2)   
               }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "The type of web authentication:
             0 - internal,
             1 - customized,
             2 - external."
        DEFVAL { internal }    
        ::= { fsWebPortalAuthEntry  3 }

fsWebPortalUseGlbConfigFlag OBJECT-TYPE
        SYNTAX INTEGER {
                   disable(0),
                   enable(1)                   
               }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "The flag of use global web authentication configure info or not:
             0 - disable,
             1 - enable."
        DEFVAL { enable }
        ::= { fsWebPortalAuthEntry  4 }

fsWebPortalMetholdList OBJECT-TYPE
        SYNTAX DisplayString(SIZE (1..64))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "A human readable string representing the AAA authentication methold list 
             of web portal."
        ::= { fsWebPortalAuthEntry  5 }

fsWebPortalCustomizedPageName OBJECT-TYPE
        SYNTAX DisplayString(SIZE (1..130)) 
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "A human readable string representiong the name of customized 
             page file name."
        ::= { fsWebPortalAuthEntry  6 }

fsWebPortalExtWebPortalURL OBJECT-TYPE
        SYNTAX DisplayString(SIZE (1..130))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "A human readable string representiong the URL of 
             the external web portal page."
        ::= { fsWebPortalAuthEntry  7 }

fsWebPortalCustomizedLogoName OBJECT-TYPE
        SYNTAX DisplayString(SIZE (1..130))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "A human readable string representing the customized logo picture name 
             of the internal web portal."
        ::= { fsWebPortalAuthEntry  8 }

fsWebPortalEchoManufacturerLogo OBJECT-TYPE
        SYNTAX INTEGER {
                   disable(0),
                   enable(1)                   
               }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "The flag of display the manufacturer logo or not:
             0 - disable,
             1 - enable."
        DEFVAL { enable }
        ::= { fsWebPortalAuthEntry  9 }

fsWebPortalWelcomeMsg OBJECT-TYPE
        SYNTAX OCTET STRING(SIZE (1..2047))
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "A human readable string representing the welcome message of 
             the internal web portal."
        ::= { fsWebPortalAuthEntry  10 }

fsWebPortalWebPageTitle OBJECT-TYPE
        SYNTAX DisplayString(SIZE (1..130)) 
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "A human readable string representing the web-page title of
             the internel web portal."
        ::= { fsWebPortalAuthEntry  11 }

fsWebPortalEntryStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "The status of this conceptual row.

            To create a row in this table, a manager must
            set this object to either createAndGo(4) or
            createAndWait(5).

            Until instances of all corresponding columns are
            appropriately configured, the value of the webPortalEntryStatus
            corresponding instance of the column is 'notReady'.

            In particular, a newly created row cannot be made
            active until the corresponding instance of
            webPortalEntryStatus has been set.
            "
        ::= { fsWebPortalAuthEntry  12 }
 

--*************************** conformance information *****************************************
fsWebPortalMIBConformance OBJECT IDENTIFIER ::= { fsWebPortalMIB 2 }
fsWebPortalMIBCompliances OBJECT IDENTIFIER ::= { fsWebPortalMIBConformance 1 }
fsWebPortalMIBGroups      OBJECT IDENTIFIER ::= { fsWebPortalMIBConformance 2 }

-- compliance statements

fsWebPortalMIBCompliance MODULE-COMPLIANCE
        STATUS  current
        DESCRIPTION
            "The compliance statement for entities which implement
             the FS Web Portal MIB
            "
        MODULE  -- this module
            MANDATORY-GROUPS { fsWebPortalMIBGroup }
        ::= { fsWebPortalMIBCompliances 1 }
        
        
-- units of conformance

fsWebPortalMIBGroup OBJECT-GROUP
        OBJECTS {
            fsWebPortalGlbWebAuthType,
            fsWebPortalGlbMethodList,
            fsWebPortalGlbCustomizedPageName,
            fsWebPortalGlbExternalWebPortalURL,            
            fsWebPortalGlbCustomizedLogoName,
            fsWebPortalGlbEchoManufacturerLogo,
            fsWebPortalGlbWelcomeMsg,
            fsWebPortalGlbWebPageTitle,
            fsWebPortalNetMode,             
            fsWebPortalNetID,
            fsWebPortalWebAuthType,
            fsWebPortalUseGlbConfigFlag,
		        fsWebPortalMetholdList,
            fsWebPortalCustomizedPageName,
            fsWebPortalExtWebPortalURL,
            fsWebPortalCustomizedLogoName,
            fsWebPortalEchoManufacturerLogo,
            fsWebPortalWelcomeMsg,
            fsWebPortalWebPageTitle,      
            fsWebPortalEntryStatus         
        }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing web portal (echo) ability to a
                 FS agent.
                "
        ::= { fsWebPortalMIBGroups 1 }        
        
END            
