Revision 367f2916

b/snf-cyclades-app/synnefo/ui/views.py
242 242
        # astakos client backwards compatibility
243 243
        get_user(request, settings.ASTAKOS_URL)
244 244

  
245
    vms_limit_for_user = \
246
        settings.VMS_USER_QUOTA.get(request.user_uniq,
247
                settings.MAX_VMS_PER_USER)
248

  
249
    networks_limit_for_user = \
250
        settings.NETWORKS_USER_QUOTA.get(request.user_uniq,
251
                settings.MAX_NETWORKS_PER_USER)
252

  
253 245
    if request.user and 'usage' in request.user:
254
        quota = dict(zip([q['name'] for q in request.user['usage']],
255
                         request.user['usage']))
256

  
257
        # TODO: is it ok to use hardcoded resource name ???
258
        if 'cyclades.vm' in quota:
259
            vms_limit_for_user = quota['cyclades.vm']['maxValue']
260
        if 'cyclades.network.private' in quota:
261
            networks_limit_for_user = quota['cyclades.network.private']['maxValue']
262

  
263
    return HttpResponse('{"vms_quota":%d, "networks_quota":%d}' % (vms_limit_for_user,
264
                                                               networks_limit_for_user),
265
                        mimetype="application/json")
246
        response = json.dumps(request.user['usage'])
247
    else:
248
        # hmmm, old astakos ???
249
        # try to mimic astakos response using cyclades quota settings
250
        networks_limit_for_user = \
251
            settings.NETWORKS_USER_QUOTA.get(request.user_uniq,
252
                    settings.MAX_NETWORKS_PER_USER)
253
        vms_limit_for_user = \
254
            settings.VMS_USER_QUOTA.get(request.user_uniq,
255
                    settings.MAX_NETWORKS_PER_USER)
256
        usage = [{'name':'cyclades.vm',
257
                  'maxValue': vms_limit_for_user
258
                 },
259
                 {'name':'cyclades.network.private',
260
                  'maxValue': networks_limit_for_user
261
                 }]
262
        response = json.dumps(usage);
263

  
264
    return HttpResponse(response, mimetype="application/json")
266 265

  
267 266
def js_tests(request):
268 267
    return template('tests', request, {})

Also available in: Unified diff