diff --git a/services/web/app/coffee/infrastructure/Features.coffee b/services/web/app/coffee/infrastructure/Features.coffee new file mode 100644 index 0000000000..e4a8fefbe8 --- /dev/null +++ b/services/web/app/coffee/infrastructure/Features.coffee @@ -0,0 +1,12 @@ +Settings = require 'settings-sharelatex' + +module.exports = Features = + externalAuthenticationSystemUsed: -> + Settings.ldap? or Settings.saml? or Settings.overleaf?.oauth? + + hasFeature: (feature) -> + switch feature + when 'registration' + return not Features.externalAuthenticationSystemUsed() + else + throw new Error("unknown feature: #{feature}")