Revision f8f86e83

b/snf-astakos-app/astakos/im/models.py
71 71
from astakos.im import auth_providers
72 72
from astakos.im.endpoints.aquarium.producer import report_user_event
73 73
from astakos.im.functions import send_invitation
74
from astakos.im.tasks import propagate_groupmembers_quota
74
#from astakos.im.tasks import propagate_groupmembers_quota
75 75

  
76 76
import astakos.im.messages as astakos_messages
77 77

  
......
223 223
        self.approval_date = datetime.now()
224 224
        self.save()
225 225
        quota_disturbed.send(sender=self, users=self.approved_members)
226
        propagate_groupmembers_quota.apply_async(
227
            args=[self], eta=self.issue_date)
228
        propagate_groupmembers_quota.apply_async(
229
            args=[self], eta=self.expiration_date)
226
        #propagate_groupmembers_quota.apply_async(
227
        #    args=[self], eta=self.issue_date)
228
        #propagate_groupmembers_quota.apply_async(
229
        #    args=[self], eta=self.expiration_date)
230 230

  
231 231
    def disable(self):
232 232
        if self.is_disabled:
b/snf-astakos-app/astakos/im/views.py
84 84
from astakos.im.endpoints.qh import timeline_charge
85 85
from astakos.im.settings import (COOKIE_DOMAIN, LOGOUT_NEXT,
86 86
                                 LOGGING_LEVEL, PAGINATE_BY, RESOURCES_PRESENTATION_DATA, PAGINATE_BY_ALL)
87
from astakos.im.tasks import request_billing
87
#from astakos.im.tasks import request_billing
88 88
from astakos.im.api.callpoint import AstakosCallpoint
89 89

  
90 90
import astakos.im.messages as astakos_messages
......
1319 1319
        context_instance=get_context(request),)
1320 1320

  
1321 1321

  
1322
#@require_http_methods(["GET"])
1323
@require_http_methods(["POST", "GET"])
1324
@signed_terms_required
1325
@login_required
1326
def billing(request):
1327

  
1328
    today = datetime.today()
1329
    month_last_day = calendar.monthrange(today.year, today.month)[1]
1330
    start = request.POST.get('datefrom', None)
1331
    if start:
1332
        today = datetime.fromtimestamp(int(start))
1333
        month_last_day = calendar.monthrange(today.year, today.month)[1]
1334

  
1335
    start = datetime(today.year, today.month, 1).strftime("%s")
1336
    end = datetime(today.year, today.month, month_last_day).strftime("%s")
1337
    r = request_billing.apply(args=('pgerakios@grnet.gr',
1338
                                    int(start) * 1000,
1339
                                    int(end) * 1000))
1340
    data = {}
1341

  
1342
    try:
1343
        status, data = r.result
1344
        data = _clear_billing_data(data)
1345
        if status != 200:
1346
            messages.error(request, _(astakos_messages.BILLING_ERROR) % status)
1347
    except:
1348
        messages.error(request, r.result)
1349

  
1350
    return render_response(
1351
        template='im/billing.html',
1352
        context_instance=get_context(request),
1353
        data=data,
1354
        zerodate=datetime(month=1, year=1970, day=1),
1355
        today=today,
1356
        start=int(start),
1357
        month_last_day=month_last_day)
1358

  
1359

  
1360
def _clear_billing_data(data):
1361

  
1362
    # remove addcredits entries
1363
    def isnotcredit(e):
1364
        return e['serviceName'] != "addcredits"
1365

  
1366
    # separate services
1367
    def servicefilter(service_name):
1368
        service = service_name
1369

  
1370
        def fltr(e):
1371
            return e['serviceName'] == service
1372
        return fltr
1322
##@require_http_methods(["GET"])
1323
#@require_http_methods(["POST", "GET"])
1324
#@signed_terms_required
1325
#@login_required
1326
#def billing(request):
1327
#
1328
#    today = datetime.today()
1329
#    month_last_day = calendar.monthrange(today.year, today.month)[1]
1330
#    start = request.POST.get('datefrom', None)
1331
#    if start:
1332
#        today = datetime.fromtimestamp(int(start))
1333
#        month_last_day = calendar.monthrange(today.year, today.month)[1]
1334
#
1335
#    start = datetime(today.year, today.month, 1).strftime("%s")
1336
#    end = datetime(today.year, today.month, month_last_day).strftime("%s")
1337
#    r = request_billing.apply(args=('pgerakios@grnet.gr',
1338
#                                    int(start) * 1000,
1339
#                                    int(end) * 1000))
1340
#    data = {}
1341
#
1342
#    try:
1343
#        status, data = r.result
1344
#        data = _clear_billing_data(data)
1345
#        if status != 200:
1346
#            messages.error(request, _(astakos_messages.BILLING_ERROR) % status)
1347
#    except:
1348
#        messages.error(request, r.result)
1349
#
1350
#    return render_response(
1351
#        template='im/billing.html',
1352
#        context_instance=get_context(request),
1353
#        data=data,
1354
#        zerodate=datetime(month=1, year=1970, day=1),
1355
#        today=today,
1356
#        start=int(start),
1357
#        month_last_day=month_last_day)
1373 1358

  
1374
    data['bill_nocredits'] = filter(isnotcredit, data['bill'])
1375
    data['bill_vmtime'] = filter(servicefilter('vmtime'), data['bill'])
1376
    data['bill_diskspace'] = filter(servicefilter('diskspace'), data['bill'])
1377
    data['bill_addcredits'] = filter(servicefilter('addcredits'), data['bill'])
1378 1359

  
1379
    return data
1360
#def _clear_billing_data(data):
1361
#
1362
#    # remove addcredits entries
1363
#    def isnotcredit(e):
1364
#        return e['serviceName'] != "addcredits"
1365
#
1366
#    # separate services
1367
#    def servicefilter(service_name):
1368
#        service = service_name
1369
#
1370
#        def fltr(e):
1371
#            return e['serviceName'] == service
1372
#        return fltr
1373
#
1374
#    data['bill_nocredits'] = filter(isnotcredit, data['bill'])
1375
#    data['bill_vmtime'] = filter(servicefilter('vmtime'), data['bill'])
1376
#    data['bill_diskspace'] = filter(servicefilter('diskspace'), data['bill'])
1377
#    data['bill_addcredits'] = filter(servicefilter('addcredits'), data['bill'])
1378
#
1379
#    return data
1380 1380

  
1381 1381

  
1382 1382
#@require_http_methods(["GET"])

Also available in: Unified diff