def account_events(request):
    try:
        event_data = json.loads(request.BODY)
    except:
        event_data = request.BODY
    event_type = event_data['type'].split('.')[0]
    if event_type != 'account':
        return HttpResponseBadRequest
    try:
        event = Account.get(stripe_id=event_data['id'])
        return {}
    except:
        event = Account(
            event_type=event_data['type'].split('.')[1]
            stripe_id=event_data['id']
            date_received=datetime.now()
            raw_data=event_data
        )
        event.save()
        return {}
def all_events(request):
    try:
        event_data = json.loads(request.BODY)
    except:
        event_data = request.BODY
    event_type = event_data['type'].split('.')[0]
    if event_type == 'account':
        try:
            event = Account.get(stripe_id=event_data['id'])
            return {}
        except:
            event = Account()
    elif event_type == 'balance':
        try:
            event = Balance.get(stripe_id=event_data['id'])
            return {}
        except:
            event = Balance()
    elif event_type == 'bitcoin':
        try:
            event = Bitcoin.get(stripe_id=event_data['id'])
            return {}
        except:
            event = Bitcoin()
    elif event_type == 'charge':
        try:
            event = Charge.get(stripe_id=event_data['id'])
            return {}
        except:
            event = Charge()
    elif event_type == 'coupon':
        try:
            event = Coupon.get(stripe_id=event_data['id'])
            return {}
        except:
            event = Coupon()
    elif event_type == 'customer':
        try:
            event = Customer.get(stripe_id=event_data['id'])
            return {}
        except:
            event = Customer()
    elif event_type == 'invoice':
        try:
            event = Invoice.get(stripe_id=event_data['id'])
            return {}
        except:
            event = Invoice()
    elif event_type == 'invoiceitem':
        try:
            event = InvoiceItem.get(stripe_id=event_data['id'])
            return {}
        except:
            event = InvoiceItem()
    elif event_type == 'plan':
        try:
            event = Plan.get(stripe_id=event_data['id'])
            return {}
        except:
            event = Plan()
    elif event_type == 'recipient':
        try:
            event = Recipient.get(stripe_id=event_data['id'])
            return {}
        except:
            event = Recipient()
    elif event_type == 'transfer':
        try:
            event = Transfer.get(stripe_id=event_data['id'])
            return {}
        except:
            event = Transfer()
    else:
        return HttpResponseBadRequest

    event.event_type = event_data['type'].split('.')[1]
    event.stripe_id = event_data['id']
    event.date_received = datetime.now()
    event.raw_data = event_data
    event.save()
    return {}