} // GetQuotas()

        public bool SaveQuotas(string inQuotas)
        {
            JObject inQuotasJson = JObject.Parse(inQuotas);

            if (_CanEditQuotas)
            {
                foreach (JObject JObjClass in inQuotasJson["objectclasses"].Children().Values())
                {
                    Int32 ObjectClassId       = CswConvert.ToInt32(JObjClass["objectclassid"]);
                    Int32 NewOCQuota          = CswConvert.ToInt32(JObjClass["quota"]);
                    bool  ExcludeInQuotaBarOC = CswConvert.ToBoolean(JObjClass["excludeinquotabar"]);
                    _CswNbtActQuotas.SetQuotaForObjectClass(ObjectClassId, NewOCQuota, ExcludeInQuotaBarOC);

                    foreach (JObject JNodeType in JObjClass["nodetypes"].Children().Values())
                    {
                        Int32 NodeTypeId          = CswConvert.ToInt32(JNodeType["nodetypeid"]);
                        Int32 NewNTQuota          = CswConvert.ToInt32(JNodeType["quota"]);
                        bool  ExcludeInQuotaBarNT = CswConvert.ToBoolean(JNodeType["excludeinquotabar"]);
                        _CswNbtActQuotas.SetQuotaForNodeType(NodeTypeId, NewNTQuota, ExcludeInQuotaBarNT);
                    } // foreach( DataRow OCRow in OCTable.Rows )
                }     // foreach( DataRow OCRow in OCTable.Rows )
                return(true);
            }         // if( CanEditQuotas )
            else
            {
                return(false);
            }
        } // SaveQuotas()
        protected override void OnEnable()
        {
            CswNbtMetaDataNodeType siteNT = _CswNbtResources.MetaData.getNodeType("Site");

            if (null != siteNT)
            {
                CswNbtActQuotas QuotasAct = new CswNbtActQuotas(_CswNbtResources);
                QuotasAct.SetQuotaForNodeType(siteNT.NodeTypeId, Int32.MinValue, false);
            }
        }
        protected override void OnDisable()
        {
            CswNbtMetaDataNodeType siteNT = _CswNbtResources.MetaData.getNodeType("Site");

            if (null != siteNT)
            {
                CswNbtActQuotas QuotasAct = new CswNbtActQuotas(_CswNbtResources);

                CswNbtView sitesView = new CswNbtView(_CswNbtResources);
                sitesView.AddViewRelationship(siteNT, false);
                ICswNbtTree sitesTree  = _CswNbtResources.Trees.getTreeFromView(sitesView, false, true, true);
                int         SitesCount = sitesTree.getChildNodeCount();
                if (SitesCount > 1 && false == _CswNbtResources.CurrentNbtUser is CswNbtSystemUser)
                {
                    throw new CswDniException(CswEnumErrorType.Warning, "Cannot disable the MultiSite Module when multiple Sites exist", SitesCount + " Site nodes exist, cannot disable the MultiSite module");
                }
                else
                {
                    QuotasAct.SetQuotaForNodeType(siteNT.NodeTypeId, 1, true);
                }
            }
        } // OnDisable()