override fun isAvailable()

in src/main/kotlin/org/jetbrains/teamcity/github/controllers/EditProjectWebHooksTab.kt [63:78]


    override fun isAvailable(request: HttpServletRequest): Boolean {
        if (!TeamCityProperties.getBooleanOrTrue(TAB_ENABLE_INTERNAL_PROPERTY)) return false

        val superIsAvailable = super.isAvailable(request)
        if (!superIsAvailable) return false
        val project = getProject(request) ?: return false
        val user = SessionUser.getUser(request) ?: return false

        // TODO: Do not calculate full data, just estimate webhooks count
        val webHooksBean = ProjectWebHooksBean(project, webHooksManager, versionedSettingsManager, tokensHelper, user, oAuthConnectionsManager)
        webHooksBean.form.recursive = true
        webHooksBean.applyFilter()

        val num = webHooksBean.getNumberOfAvailableWebHooks()
        return num > 0
    }