Example #1
0
def handle_best_quote2_drop_stop(request,parms,browserAnalysis,__air_id__,__apiMap__):
    d = {}
    try:
        count = int(django_utils.get_from_session(request,s_additional_stops_in_transit_count,0))
        for k,v in request.POST.iteritems():
            value = django_utils.get_from_session(request,v,None)
            if (value is not None):
                del request.session[v]
                count -= 1
                django_utils.put_into_session(request,s_additional_stops_in_transit_count,count)
                break
        d = get_best_quote2_stops(request)
    except:
        d[__error_symbol] = 'WARNING: Cannot perform the delete stop function at this time.'
    json = dict_to_json(d)
    return HttpResponse(content=json,mimetype=__jsonMimetype)
Example #2
0
def handle_best_quote2_add_stop(request,parms,browserAnalysis,__air_id__,__apiMap__):
    d = {}
    try:
        _d_ = get_best_quote2_stops(request)
        count = len(_d_)
        composite_select = []
        composite_value = []
        composite_key = []
        for t in __tokens:
            for k,v in request.POST.iteritems():
                if (str(k).endswith(t)):
                    composite_select.append(v)
                    composite_value.append(k)
                    composite_key.append(str(k).replace(t,'').split('_'))
                    break
        criteria = lambda r,k:any([(k.find(_additional_stops_in_transit_key) == -1) and (k.find(_origin_from_location_driver_assist_load_key) == -1) and (k.find(_destination_to_location_driver_assist_unload_key) == -1) and (k.find('_%s'%(t)) > -1) for t in __tokens])
        session_keys = django_utils.collect_from_session_using(request,criteria)
        criteria_origin = lambda r,k:any([(k.find(_origin_from_location_driver_assist_load_key) > -1) and (k.find('_%s'%(t)) > -1) for t in __tokens])
        session_keys_origin = django_utils.collect_from_session_using(request,criteria_origin)
        criteria_destination = lambda r,k:any([(k.find(_destination_to_location_driver_assist_unload_key) > -1) and (k.find('_%s'%(t)) > -1) for t in __tokens])
        session_keys_destination = django_utils.collect_from_session_using(request,criteria_destination)
        num = 0
        cnt_key0 = '0'
        cnt_keyO = 'O'
        cnt_keyD = 'D'
        cnt_keyS = 'S'
        cnt = {cnt_key0:0,cnt_keyO:0,cnt_keyD:0,cnt_keyS:0}
        for t in __locale_tokens:
            tKey = '_%s' % (t)
            try:
                aKey = [k for k in session_keys if (k.find(tKey) > -1)][0]
            except:
                aKey = None
            try:
                aKeyO = [k for k in session_keys_origin if (k.find(tKey) > -1)][0]
            except:
                aKeyO = None
            try:
                aKeyD = [k for k in session_keys_destination if (k.find(tKey) > -1)][0]
            except:
                aKeyD = None
            if (aKey is not None) or (aKeyO is not None) or (aKeyD is not None):
                value = django_utils.get_from_session(request,aKey,None)
                valueO = django_utils.get_from_session(request,aKeyO,None)
                valueD = django_utils.get_from_session(request,aKeyD,None)
                val = composite_select[num]
                if (value == val):
                    cnt[cnt_key0] += 1
                elif (valueO == val):
                    cnt[cnt_keyO] += 1
                elif (valueD == val):
                    cnt[cnt_keyD] += 1
                else:
                    for k,v in _d_.iteritems():
                        tokens = v.split(',')
                        try:
                            value = tokens[num]
                        except:
                            value = None
                        if (value == val):
                            cnt[cnt_keyS] += 1
            num += 1
        shortest = 2**16
        final_composite_key = []
        for a_composite_key in composite_key:
            shortest = min(len(a_composite_key),shortest)
        for a_composite_key in composite_key:
            if (len(a_composite_key) == shortest):
                final_composite_key = a_composite_key
                break
        # check to see if the values that may go into the session are not already in the session...
        _final_composite_key = 'select_%s'%('_'.join(final_composite_key))
        s_final_composite_select = ','.join(composite_select)
        num = 1
        is_found_using0 = (cnt[cnt_key0] == len(__locale_tokens))
        is_found_usingO = (cnt[cnt_keyO] == len(__locale_tokens))
        is_found_usingD = (cnt[cnt_keyD] == len(__locale_tokens))
        is_found_usingS = (cnt[cnt_keyS] == len(__locale_tokens))
        is_found = (is_found_using0) or (is_found_usingO) or (is_found_usingD) or (is_found_usingS)
        if (not is_found):
            while (1):
                key = '%s%d'%(_final_composite_key,num)
                value = django_utils.get_from_session(request,key,None)
                if (value is None) or (value == s_final_composite_select):
                    if (value == s_final_composite_select):
                        is_found = True
                    break
                num += 1
            if (not is_found):
                count = num
                s_final_composite_key = '%s%d'%(_final_composite_key,count)
                django_utils.put_into_session(request,s_final_composite_key,s_final_composite_select)
                django_utils.put_into_session(request,s_additional_stops_in_transit_count,count)
        elif (is_found_using0) or (is_found_usingS):
            d[__error_symbol] = 'WARNING: Cannot specify an existing destination because it has already been specified as an additional stop.'
        elif (is_found_usingO):
            d[__error_symbol] = 'WARNING: Cannot specify an existing destination because it has already been specified as the origin.'
        elif (is_found_usingD):
            d[__error_symbol] = 'WARNING: Cannot specify an existing destination because it has already been specified as the destination.'
        else:
            d[__error_symbol] = 'WARNING: Cannot process your request at this time due to some kind of system problem.'
        dd = get_best_quote2_stops(request)
        for k,v in dd.iteritems():
            d[k] = v
    except:
        d[__error_symbol] = 'WARNING: Cannot specify an existing destination due to some kind of processing fault.'
    json = dict_to_json(d)
    return HttpResponse(content=json,mimetype=__jsonMimetype)
Example #3
0
def handle_best_quote2(request,parms,browserAnalysis,__air_id__,__apiMap__):
    d = {}
    for k,v in request.POST.iteritems():
        django_utils.put_into_session(request,k,v)
    json = dict_to_json(d)
    return HttpResponse(content=json,mimetype=__jsonMimetype)
Example #4
0
            else:
                value = django_utils.get_from_session(request,key,None)
                if (value):
                    toks = value.split(',')
                    toks_len = len(toks) - 2
                    aKey1 = ','.join(toks[0:toks_len])
                    aKey2 = ','.join(toks[0:toks_len-1])
                    if (not dd.has_key(aKey1)) and (not dd.has_key(aKey2)):
                        dd[aKey1] = value
                        dd[aKey2] = value
                        d[key] = value
            num += 1
    except Exception, e:
        d[__error_symbol] = 'WARNING: Cannot retrieve the stops at this time. ('+_utils.formattedException(e)+')'
    cnt = len([k for k in d.keys() if (k != __error_symbol)])
    django_utils.put_into_session(request,s_additional_stops_in_transit_count,cnt)
    return d

def handle_best_quote2_drop_stop(request,parms,browserAnalysis,__air_id__,__apiMap__):
    d = {}
    try:
        count = int(django_utils.get_from_session(request,s_additional_stops_in_transit_count,0))
        for k,v in request.POST.iteritems():
            value = django_utils.get_from_session(request,v,None)
            if (value is not None):
                del request.session[v]
                count -= 1
                django_utils.put_into_session(request,s_additional_stops_in_transit_count,count)
                break
        d = get_best_quote2_stops(request)
    except: