Esempio n. 1
0
    def test_get_all(self):
        from pyramid_signup.models import UserGroup
        from pyramid_signup.models import User
        from pyramid_signup.managers import UserGroupManager

        user = User(username='******', password='******')
        self.session.add(user)

        group = UserGroup('admin', 'group for admins')
        group.users.append(user)
        self.session.add(group)
        self.session.commit()

        request = testing.DummyRequest()
        mgr = UserGroupManager(request)

        groups = mgr.get_all()

        assert len(groups) == 1
Esempio n. 2
0
def choices_widget(node, kw):
    request = kw.get('request')

    if request.context:
        is_admin = has_permission('group:admin', request.context, request)
        mgr = UserGroupManager(request)

        groups = mgr.get_all()

        if is_admin:
            choices = [
                ('', '- None -'),
            ]

            for group in groups:
                choices.append((str(group.pk), group.name))

            return deform.widget.SelectWidget(values=choices)

    return deform.widget.HiddenWidget()