<commit_before>doctype html

div.wrapper.roles(ng-controller="RolesController as ctrl",
                        ng-init="section='admin'", tg-roles)
    sidebar.menu-secondary.sidebar(tg-admin-navigation="roles")
        include ../includes/modules/admin-menu
    sidebar.menu-tertiary.sidebar
        include ../includes/modules/admin-submenu-roles

    section.main.admin-roles.admin-common
        header.header-with-actions
            include ../includes/components/mainTitle
            .action-buttons(ng-if="!role.external_user")
                a.button-red.delete-role(href="", title="{{'COMMON.DELETE' | translate}}", ng-click="ctrl.delete()")
                    span(translate="COMMON.DELETE")


        div(ng-if="!role.external_user")
            div(tg-edit-role)
                .edit-role
                    input(type="text", value="{{ role.name }}")
                    a.save.icon.icon-floppy(href="", title="{{'COMMON.SAVE' | translate}}")

                p.total
                    span.role-name(title="{{'ADMIN.ROLES.COUNT_MEMBERS' | translate}}") {{ role.name }}
                    a.edit-value.icon.icon-edit

            div.any-computable-role(ng-hide="anyComputableRole", translate="ADMIN.ROLES.WARNING_NO_ROLE")

            div.general-category(translate="ADMIN.ROLES.HELP_ROLE_ENABLED")
                div.check
                    input(type="checkbox", ng-model="role.computable", ng-change="ctrl.setComputable()")
                    div
                    span.check-text.check-yes(translate="COMMON.YES")
                    span.check-text.check-no(translate="COMMON.NO")

        div(ng-if="role.external_user")
            p.total
                span.role-name {{ role.name }}

        div(tg-role-permissions, ng-model="role")<commit_msg>Fixing no roles can estimate errors<commit_after>doctype html

div.wrapper.roles(ng-controller="RolesController as ctrl",
                        ng-init="section='admin'", tg-roles)
    sidebar.menu-secondary.sidebar(tg-admin-navigation="roles")
        include ../includes/modules/admin-menu
    sidebar.menu-tertiary.sidebar
        include ../includes/modules/admin-submenu-roles

    section.main.admin-roles.admin-common
        header.header-with-actions
            include ../includes/components/mainTitle
            .action-buttons(ng-if="!role.external_user")
                a.button-red.delete-role(href="", title="{{'COMMON.DELETE' | translate}}", ng-click="ctrl.delete()")
                    span(translate="COMMON.DELETE")


        div(ng-if="!role.external_user")
            div(tg-edit-role)
                .edit-role
                    input(type="text", value="{{ role.name }}")
                    a.save.icon.icon-floppy(href="", title="{{'COMMON.SAVE' | translate}}")

                p.total
                    span.role-name(title="{{'ADMIN.ROLES.COUNT_MEMBERS' | translate}}") {{ role.name }}
                    a.edit-value.icon.icon-edit

            div.any-computable-role(ng-hide="anyComputableRole", translate="ADMIN.ROLES.WARNING_NO_ROLE")

            div.general-category
                span(translate="ADMIN.ROLES.HELP_ROLE_ENABLED")
                div.check
                    input(type="checkbox", ng-model="role.computable", ng-change="ctrl.setComputable()")
                    div
                    span.check-text.check-yes(translate="COMMON.YES")
                    span.check-text.check-no(translate="COMMON.NO")

        div(ng-if="role.external_user")
            p.total
                span.role-name {{ role.name }}

        div(tg-role-permissions, ng-model="role")
{'fraction_non_alphanumeric': 0.1487420514238319, 'fraction_numerical': 0.0, 'mean_word_length': 1.9925558312655087, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6326176', 'n_tokens_mistral': 1085, 'n_tokens_neox': 1033, 'n_words': 111}