enterprise_feature_service.py 880 B

1234567891011121314151617181920212223242526272829
  1. from flask import current_app
  2. from pydantic import BaseModel
  3. from services.enterprise.enterprise_service import EnterpriseService
  4. class EnterpriseFeatureModel(BaseModel):
  5. sso_enforced_for_signin: bool = False
  6. sso_enforced_for_signin_protocol: str = ''
  7. class EnterpriseFeatureService:
  8. @classmethod
  9. def get_enterprise_features(cls) -> EnterpriseFeatureModel:
  10. features = EnterpriseFeatureModel()
  11. if current_app.config['ENTERPRISE_ENABLED']:
  12. cls._fulfill_params_from_enterprise(features)
  13. return features
  14. @classmethod
  15. def _fulfill_params_from_enterprise(cls, features):
  16. enterprise_info = EnterpriseService.get_info()
  17. features.sso_enforced_for_signin = enterprise_info['sso_enforced_for_signin']
  18. features.sso_enforced_for_signin_protocol = enterprise_info['sso_enforced_for_signin_protocol']