Beispiel #1
0
def add_business(request):
    try:
        user = authenticate_api_request(request)
        authorize_user(user, request, "add")
        bus = Business()
        name=get_json_post_or_error('businessName', request)
        addr=get_json_post_or_error('streetAddr', request)
        city = get_json_post_or_error('businessCity', request)
        state = get_json_post_or_error('businessState', request)
        phone =  get_json_post_or_error('businessPhone', request)
        
        #already exists
        if Business.objects.filter(name=name,address=addr,city=city,state=state).count() ==  0:
            bus = Business(name=name,address=addr,city=city,state=state)
            bus.save()
        elif Business.objects.filter(name=name,address=addr,city=city,state=state).count() > 1: #too many
            Business.objects.filter(name=name,address=addr,city=city,state=state).delete()
            Business.objects.create(name=name,address=addr,city=city,state=state,phone=phone)
        else:
            bus = Business.objects.get(name=name,address=addr,city=city,state=state)                    
    except ReadJSONError as e:
        return server_error(e.value)
    except (AuthenticationFailed, AuthorizationError) as e:
        return server_error(e.value) 
    bus.dist = distance.distance(user.current_location,(bus.lat,bus.lon)).miles
    bus_data = get_single_bus_data_ios(bus,user)
    return server_data(bus_data)