Esempio n. 1
0
def credit_save(request):
    """Save credit"""
    from decimal import Decimal
    phoneuser_id = int(request.POST.get("data[phoneuser_id]", "0"))
    recharge = request.POST.get('data[recharge]', "0")
    reason = request.POST.get('data[reason]', "")

    recharge = recharge.replace(",", ".")

    credit = Credit()

    credit.phoneuser_id = phoneuser_id
    credit.recharge = Decimal(recharge)
    credit.reason = reason

    try:
        #credit.save(user_id=request.user.id, phoneuser_id=phoneuser_id)
        credit.save()
        phoneuser = PhoneUser.objects.get(pk=phoneuser_id)
        # eliminiamo eventuali valori residui negativi
        if phoneuser.balance > 0:
            phoneuser.balance += Decimal(recharge)
        else:
            phoneuser.balance = Decimal(recharge)
        phoneuser.save()
        audit = Audit()
        audit.log(user=request.user,
            what="Effettuata ricarica di importo %s a favore di %s" % (credit.recharge, 
                credit.phoneuser))
        return credit_items(request, phoneuser_id)
    except Exception as e:
        return HttpResponse(status=400, content=json.dumps({'err_msg': format(e)}), content_type='application/json')
Esempio n. 2
0
def phoneuser_save(request):
    """Save or update user"""
    phoneuser_id = int(request.POST.get("data[phoneuser_id]", "0"))
    enabled = int(request.POST.get("data[enabled]", "0"))
    first_name = request.POST.get("data[first_name]", "")
    last_name = request.POST.get("data[last_name]", "")
    serial_no = request.POST.get("data[serial_no]", "")
    pincode = request.POST.get("data[pincode]", "")
    four_bis_limited = int(request.POST.get("data[four_bis_limited]", "0"))
    listening_enabled = int(request.POST.get("data[listening_enabled]", "0"))
    recording_enabled = int(request.POST.get("data[recording_enabled]", "0"))
    language = request.POST.get("data[language]", "")
    vipaccount = int(request.POST.get("data[vipaccount]", "0"))

    variables = Acl.get_permissions_for_user(request.user.id, request.user.is_staff)
    is_new = False
    action = "Creazione"
    try:
        if phoneuser_id:
            phoneuser = PhoneUser.objects.get(pk=phoneuser_id)
            action = "Modifica"
        else:
            phoneuser = PhoneUser()
            is_new = True

        phoneuser.enabled = enabled
        phoneuser.first_name = first_name.title()
        phoneuser.last_name = last_name.title()
        phoneuser.serial_no = serial_no
        phoneuser.pincode = pincode
        phoneuser.four_bis_limited = four_bis_limited
        phoneuser.listening_enabled = listening_enabled
        phoneuser.recording_enabled = recording_enabled
        phoneuser.language = language
        phoneuser.vipaccount = vipaccount

        phoneuser.save()

        # log azione
        audit = Audit()
        audit.log(user=request.user,
            what="%s anagrafica: %s" % (action, phoneuser))
        
        if is_new:
            return phoneuser_items(request)
        variables['phoneuser'] = phoneuser
        return render_to_response(
            'phoneusers/phoneuser_data.html', RequestContext(request, variables))
    except Exception as e:
        return HttpResponse(status=400, content=json.dumps({'err_msg': format(e)}), content_type='application/json')
Esempio n. 3
0
def whitelist_remove(request):
    whitelist_id = int(request.POST.get("data[whitelist_id]", "0"))
    phoneuser_id = int(request.POST.get("data[phoneuser_id]", "0"))

    if(whitelist_id):
        try:
            phoneuser = PhoneUser.objects.get(pk=phoneuser_id)
            Whitelist.objects.get(pk=whitelist_id).delete()
            # log azione
            audit = Audit()
            audit.log(user=request.user,
                what="Rimozione autorizzazione: %s" % phoneuser)
            return whitelist_items(request, phoneuser_id)
            
        except Exception as e:
            return HttpResponse(status=400, content=json.dumps({'err_msg': format(e)}), content_type='application/json')
    else:
        raise Http404
Esempio n. 4
0
def phoneuser_change_status(request):
    phoneuser_id = int(request.POST.get("data[phoneuser_id]", "0"))
    newstatus = request.POST.get("data[newstatus]", "")
    ret = newstatus

    action = "Disattivazione"
    if int(newstatus):
        action = "Attivazione"

    try:
        phoneuser = PhoneUser.objects.get(pk=phoneuser_id)
        phoneuser.enabled = int(newstatus)
        phoneuser.save()

        # log azione
        audit = Audit()
        audit.log(user=request.user,
            what="%s scheda anagrafica: %s" % (action, phoneuser))
        return phoneuser_data(request, phoneuser_id)
    except Exception as e:
        return HttpResponse(status=400, content=json.dumps({'err_msg': format(e)}), content_type='application/json')
Esempio n. 5
0
def whitelist_save(request):
    """Save or update whitelist"""
    whitelist_id = int(request.POST.get("data[whitelist_id]", "0"))
    phoneuser_id = int(request.POST.get("data[phoneuser_id]", "0"))
    label = request.POST.get("data[label]", "")
    phonenumber = request.POST.get("data[phonenumber]", "")
    duration = int(request.POST.get("data[duration]", "0"))
    frequency = int(request.POST.get("data[frequency]", "0"))
    real_mobile = int(request.POST.get("data[real_mobile]", "0"))

    # la maschera consente di inserire i minuti
    duration = duration * 60
    action = "Creazione"
    try:
        if whitelist_id:
            whitelist = Whitelist.objects.get(pk=whitelist_id)
            action = "Modifica"
        else:
            whitelist = Whitelist()
            if frequency == 0:
                whitelist.enabled = True

        whitelist.phoneuser_id = phoneuser_id
        whitelist.label = label
        whitelist.phonenumber = phonenumber
        whitelist.duration = duration
        whitelist.frequency = frequency
        whitelist.real_mobile = real_mobile

        whitelist.save()

        # log azione
        audit = Audit()
        audit.log(user=request.user,
            what="%s autorizzazione: %s" % (action, whitelist.phoneuser))
        return whitelist_items(request, phoneuser_id)
    except Exception as e:
        return HttpResponse(status=400, content=json.dumps({'err_msg': format(e)}), content_type='application/json')
Esempio n. 6
0
def whitelist_change_ordinary(request):
    whitelist_id = int(request.POST.get("data[whitelist_id]", "0"))
    phoneuser_id = int(request.POST.get("data[phoneuser_id]", "0"))
    newstatus = int(request.POST.get("data[newstatus]", "0"))

    ret = newstatus

    action = "Abilitazione ordinaria"
    if int(newstatus):
        action = "Abilitazione straordinaria"

    if(whitelist_id):
        try:
            whitelist = Whitelist.objects.get(pk=whitelist_id)
            whitelist.extraordinary = newstatus
            whitelist.save()
            audit = Audit()
            audit.log(user=request.user,
                what="%s autorizzazione: %s" % (action, whitelist.phoneuser))
            return whitelist_items(request, phoneuser_id)
        except Exception as e:
            return HttpResponse(status=400, content=json.dumps({'err_msg': format(e)}), content_type='application/json')
    else:
        raise Http404
Esempio n. 7
0
def profile_save(request):
    """Save or update user"""
    user_id = int(request.POST.get("data[profile_id]", "0"))
    first_name = request.POST.get("data[first_name]", "")
    last_name = request.POST.get("data[last_name]", "")
    username = request.POST.get("data[username]", "")
    password = request.POST.get("data[password]", "")
    is_admin = request.POST.get("data[is_admin]", "0") == "1"

    priv_anagrafica = int(request.POST.get("data[priv_anagrafica]", "1"))
    priv_whitelist = int(request.POST.get("data[priv_whitelist]", "0"))
    priv_credit = int(request.POST.get("data[priv_credit]", "0"))
    priv_cdr = int(request.POST.get("data[priv_cdr]", "0"))
    priv_record = int(request.POST.get("data[priv_record]", "0"))

    action = "Creazione"
    try:
        if user_id:
            user = User.objects.get(pk=user_id)
            user.first_name = first_name.title()
            user.last_name = last_name.title()
            user.username = username
            if password:
                user.set_password(password)
            action = "Modifica"
        else:
            user = User.objects.create_user(username=username,
                first_name=first_name,
                last_name=last_name,
                password=password)

        user.is_staff = is_admin
        user.save()
        # log azione
        audit = Audit()
        audit.log(user=request.user,
            what="%s utente: %s" % (action, user.get_full_name()))

        if not user.is_staff:
            # cancelliamo tutte le acl utente e
            # (ri)creiamo le acl corrispondenti
            Acl.objects.filter(user_id=user.id).delete()
            # userid function permission
            Acl.objects.create(
                user_id=user.id, function=0, permission=priv_anagrafica)
            if priv_whitelist:
                Acl.objects.create(
                    user_id=user.id, function=1, permission=priv_whitelist)
            if priv_credit:
                Acl.objects.create(
                    user_id=user.id, function=2, permission=priv_credit)
            if priv_cdr:
                Acl.objects.create(
                    user_id=user.id, function=3, permission=priv_cdr)
            if priv_record:
                Acl.objects.create(
                    user_id=user.id, function=4, permission=priv_record)

        return profile_items(request)
    except Exception as e:
        return HttpResponse(status=400, content=json.dumps({'err_msg': format(e)}), content_type='application/json')