def home(request, **kwargs):
     
    template_name = kwargs.get("template_name", "cancellations/index.html")

    request_location = geolocate_request(request, 10)
    location = request_location.location
    distance = request_location.nearby_distance
    
    geo_form = GeolocationDistanceForm(initial={
        'geo': request_location.zip_code, 'dist': distance})
    (places, current, upcoming) = get_cancellations(location, distance)
                    
    paginator = Paginator(current, 50)
    
    try:
        page = int(request.GET.get('page', '1'))
    except ValueError:
        page = 1
        
    try:
        ncan = paginator.page(page)
    except (EmptyPage, InvalidPage):
        ncan = paginator.page(paginator.num_pages)
            
    return render(request, template_name, {
        'upcoming_cancellations': upcoming, 
        'ncan': ncan,
        'geo_form': geo_form,
        'distance':distance,
        'geo':request_location.zip_code,
    })
    def render(self, context):
        
        try:
            request = context['request']
            zip_code = get_current_site(request).profile.zip_code
        except KeyError:
            zip_code = settings.DEFAULT_ZIP_CODE
        location = geocode(zip_code).location
        
        (places, current, upcoming) = get_cancellations(location, 80)

        context[self.var_name] = len(current) + len(upcoming)
        return ''