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