Revision 1b27f8a2

b/snf-astakos-app/astakos/im/management/commands/quota.py
113 113
        if user_ident is not None:
114 114
            users = [self.get_user(user_ident)]
115 115
        else:
116
            users = AstakosUser.objects.verified()
116
            users = AstakosUser.objects.moderated()
117 117

  
118 118
        if list_only:
119 119
            qh_quotas, astakos_i = list_user_quotas(users)
......
150 150
        else:
151 151
            raise CommandError('Please specify user by uuid or email')
152 152

  
153
        if not user.email_verified:
154
            raise CommandError('%s is not a verified user.\n' % user.uuid)
153
        if not user.moderated:
154
            raise CommandError('%s is not an accepted user.\n' % user.uuid)
155 155

  
156 156
        return user
157 157

  
b/snf-astakos-app/astakos/im/management/commands/reconcile-resources-astakos.py
82 82
        qh_holdings = service_get_quotas(astakos, query)
83 83

  
84 84
        if userid is None:
85
            users = AstakosUser.objects.verified()
85
            users = AstakosUser.objects.moderated()
86 86
        else:
87 87
            try:
88 88
                users = [AstakosUser.objects.get(uuid=userid)]
b/snf-astakos-app/astakos/im/models.py
315 315
    def verified(self):
316 316
        return self.filter(email_verified=True)
317 317

  
318
    def moderated(self):
319
        return self.filter(moderated=True)
320

  
318 321
    def uuid_catalog(self, l=None):
319 322
        """
320 323
        Returns a uuid to username mapping for the uuids appearing in l.
b/snf-astakos-app/astakos/im/quotas.py
316 316

  
317 317

  
318 318
def qh_add_resource_limit(resource, diff):
319
    objs = AstakosUser.forupdate.filter(Q(email_verified=True) &
319
    objs = AstakosUser.forupdate.filter(Q(moderated=True) &
320 320
                                        ~Q(policy=resource))
321 321
    users = objs.order_by('id').select_for_update()
322 322
    uuids = [u.uuid for u in users]
......
326 326

  
327 327
def qh_sync_new_resource(resource, limit):
328 328
    users = AstakosUser.forupdate.filter(
329
        email_verified=True).order_by('id').select_for_update()
329
        moderated=True).order_by('id').select_for_update()
330 330

  
331 331
    resource_name = resource.name
332 332
    data = []
b/snf-astakos-app/astakos/im/tests/api.py
51 51
class QuotaAPITest(TestCase):
52 52
    def test_0(self):
53 53
        client = Client()
54
        backend = activation_backends.get_backend()
54 55

  
55 56
        component1 = Component.objects.create(name="comp1")
56 57
        register.add_service(component1, "service1", "type1", [])
......
72 73

  
73 74
        # create user
74 75
        user = get_local_user('test@grnet.gr')
75
        quotas.qh_sync_user(user)
76
        backend.accept_user(user)
77
        non_moderated_user = get_local_user('nonmon@example.com')
76 78

  
77 79
        component2 = Component.objects.create(name="comp2")
78 80
        register.add_service(component2, "service2", "type2", [])
......
108 110
        for name in resource_names:
109 111
            assertIn(name, system_quota)
110 112

  
113
        nmheaders = {'HTTP_X_AUTH_TOKEN': non_moderated_user.auth_token}
114
        r = client.get(u('quotas/'), **nmheaders)
115
        self.assertEqual(r.status_code, 200)
116
        body = json.loads(r.content)
117
        self.assertEqual(body, {})
118

  
111 119
        r = client.get(u('service_quotas'))
112 120
        self.assertEqual(r.status_code, 401)
113 121

  

Also available in: Unified diff