Example #1
0
def __get_contact(request):

    contact_id = request.POST.get('contact')
    if not contact_id:
        return {'code': 400, 'error': 'No contact provided (contact=XXXXXX)'}
    contact_id = normalize(contact_id)
    if contact_id is None:
        return {'code': 400, 'error': 'Invalid contact value [contact=XXXXXX]'}
    return {'contact': contact_id, 'code': 200}
Example #2
0
def __get_contact(request):

    contact_id = request.POST.get('contact')
    if not contact_id:
        return {'code': 400, 'error': 'No contact provided (contact=XXXXXX)'}
    contact_id = normalize(contact_id)
    if contact_id is None:
        return {'code': 400, 'error': 'Invalid contact value [contact=XXXXXX]'}
    return {'contact': contact_id, 'code': 200}
Example #3
0
def handle_contact(request, contact_id):

    if not contact_id:
        return Response({'error': 'No contact_id provided (contact_id=XXXXXX)'}, 400)
    contact_id = normalize(contact_id)
    if contact_id is None:
        return Response({'error': 'Invalid contact_id value [contact_id=XXXXXX]'}, 400)

    if request.method == 'PATCH':
        return __update_contact(request, contact_id)
    if request.method == 'DELETE':
        return __remove_contact(request, contact_id)
    return __list_contact(request, contact_id)
Example #4
0
def register_code(request):
    code = str(request.POST.get('code'))
    if not code:
        return Response({'error': 'No code provided [code=<code received from SMS>]'}, 400)

    code = normalize(code)
    if not code or not code.isdigit():
        return Response({'error':'Invalid account number [code=<code received from SMS>]'}, 400)

    controller = account.Account(request.account)
    result = controller.register_code(code)
    status_code = int(result.pop('code'))
    return Response(result, status_code)
Example #5
0
def unblock(request, contact_id):

    if not contact_id:
        return Response({'error': 'No contact_id provided (contact_id=XXXXXX)'}, 400)
    contact_id = normalize(contact_id)
    if contact_id is None:
        return Response({'error': 'Invalid contact_id value [contact_id=XXXXXX]'}, 400)

    controller = contacts_controller.Contacts(request.account)

    result = controller.unblock(contact_id)

    status_code = int(result.pop('code'))

    return Response(result, status_code)
Example #6
0
def photo_history_urls(request, contact_id):

    if not contact_id:
        return Response({'error': 'No contact_id provided (contact_id=XXXXXX)'}, 400)
    contact_id = normalize(contact_id)
    if contact_id is None:
        return Response({'error': 'Invalid contact_id value [contact_id=XXXXXX]'}, 400)

    controller = contacts_controller.Contacts(request.account)

    result = controller.photo_history_urls(contact_id, preview=False)

    status_code = int(result.pop('code'))

    return Response(result, status_code)
Example #7
0
def create_account(request):
    number = str(request.POST.get('account'))
    if not number:
        return Response({'error':'No account number provided [account=<account number>]'}, 400)

    number = normalize(number)
    if not number or not number.isdigit():
        return Response ({'error':'Invalid account number [number=<account number>]'}, 400)

    nickname = request.POST.get('nickname')
    user = request.resource_owner
    result = account.Account.create_account(number, nickname, user)
    status_code = int(result.pop('code'))
    if status_code == 200:                # Return 'Created' if success
        status_code = 201
    return Response(result, status_code)
Example #8
0
def register_code(request):
    code = str(request.POST.get('code'))
    if not code:
        return Response(
            {'error': 'No code provided [code=<code received from SMS>]'}, 400)

    code = normalize(code)
    if not code or not code.isdigit():
        return Response(
            {
                'error':
                'Invalid account number [code=<code received from SMS>]'
            }, 400)

    controller = account.Account(request.account)
    result = controller.register_code(code)
    status_code = int(result.pop('code'))
    return Response(result, status_code)
Example #9
0
def create_account(request):
    number = str(request.POST.get('account'))
    if not number:
        return Response(
            {'error': 'No account number provided [account=<account number>]'},
            400)

    number = normalize(number)
    if not number or not number.isdigit():
        return Response(
            {'error': 'Invalid account number [number=<account number>]'}, 400)

    nickname = request.POST.get('nickname')
    user = request.resource_owner
    result = account.Account.create_account(number, nickname, user)
    status_code = int(result.pop('code'))
    if status_code == 200:  # Return 'Created' if success
        status_code = 201
    return Response(result, status_code)
Example #10
0
def photo_url(request, contact_id):

    if not contact_id:
        return Response({'error': 'No contact_id provided (contact_id=XXXXXX)'}, 400)
    contact_id = normalize(contact_id)
    if contact_id is None:
        return Response({'error': 'Invalid contact_id value [contact_id=XXXXXX]'}, 400)

    controller = contacts_controller.Contacts(request.account)

    result = controller.photo(contact_id, preview=False, url=True)

    status_code = result.pop('code')
    if status_code is None or status_code[0] == '5':
        return Response(result, int(status_code))

    response = {'photo_url': result['photo_url'],
                'photo_status': status_code }

    return Response(response)
Example #11
0
def photo(request, contact_id):

    if not contact_id:
        return Response({'error': 'No contact_id provided (contact_id=XXXXXX)'}, 400)
    contact_id = normalize(contact_id)
    if contact_id is None:
        return Response({'error': 'Invalid contact_id value [contact_id=XXXXXX]'}, 400)

    controller = contacts_controller.Contacts(request.account)

    result = controller.photo(contact_id, preview=False, url=False)

    status_code = int(result.pop('code'))

    if status_code != 200:
        return Response(result, status_code)

    picture_data = result['picture_data']
    mime_type = result['mime_type']
    return HttpResponse (picture_data, mime_type)
Example #12
0
def add_contact(request):

    contact_id = str(request.POST.get('contact_id'))
    if not contact_id:
        return Response({'error': 'No contact_id provided (contact_id=XXXXXX)'}, 400)
    contact_id = normalize(contact_id)
    if contact_id is None:
        return Response({'error': 'Invalid contact_id value [contact_id=XXXXXX]'}, 400)

    first_name = request.POST.get('first_name')
    last_name = request.POST.get('last_name')

    controller = contacts_controller.Contacts(request.account)

    result = controller.add_contact(contact_id, first_name, last_name)

    status_code = int(result.pop('code'))

    if status_code == 200:                # Return 'Created' if success
        status_code = 201
    return Response(result, status_code)