Пример #1
0
def home(request, template="home/home_var.html"):
    colleges = list
    selected = None
    if request.LANGUAGE_CODE == 'en':
        translation = English_Dict
        ranks = RANKS
    else:
        translation = Chinese_Dict
        ranks = C_RANKS
    if request.method == "POST":
        form = HomeListSearchForm(request.POST, request.FILES)
        if form.is_valid():
            sorter = form.cleaned_data['sorter']
            colleges = search(sorter=sorter, num=5)
            selected = form.cleaned_data['sorter']
        else:
            ids = str.split(str(form.cleaned_data['prev_list'][:-1]), ':')
            for id in ids:
                colleges.append(College2.objects.get(id=int(id)))
    else:
        form = HomeListSearchForm()
        colleges = search(sorter='rank', num=5)

    #if in chinese, make states show the chinese values.
    states = [(st[-2:], state) for st,state in STATES]
    settings = ['#setting_nopref', '#setting_city', '#setting_suburb', '#setting_town', '#setting_rural']
    vals = dict(home=True, translation=translation, colleges=colleges, form=form, ranks = ranks, selected=selected, states=states, settings=settings)
    context = RequestContext(request, vals)

    return render_to_response(template, context)
Пример #2
0
def getranks(request):
    if request.is_ajax():
        category = request.POST.get('category', False)
        if category == 'rank' or category == 'rank_liberal':
            num = 40
#        elif category == 'cee' or category == 'cos' or category == 'ele' or category == 'mae':
#            num = 6
#        elif category == 'bio' or category == 'psy':
#            num = 8
        else:
            num = 10
#        num=10

        link_start = "<a target='_blank' href='http://"
        link_middle = "'>"
        link_end = "</a>"

        colleges = search(sorter=category, num=num)
        html = "<div id='rank_list'><table><th></th><tbody>"
        for i in range(0, num):
            html += "<tr><td class='college_table_slot'><span class='college_table_rank_rank'>" + str(i + 1) + ")</span></td><td><div class='college_table_entry_rank'>" + link_start + colleges[i].website + link_middle + colleges[i].name + link_end + "</div></td></tr>"
        html += "</tbody></table></div>"
        return HttpResponse(html)
    else:
        return HttpResponse('error')
Пример #3
0
def search_view(request, template='counselors/list.html'):
    if request.LANGUAGE_CODE == 'en':
        translation = English_Dict
    else:
        translation = Chinese_Dict


    results=list()
    prompt = 'Enter your f*****g search.'

    form = SearchForm()

    if request.method == 'POST':
        form = SearchForm(request.POST, request.FILES)
        if form.is_valid():
            name = form.cleaned_data['name']
            state = form.cleaned_data['state']
            city = form.cleaned_data['city']
            num = form.cleaned_data['num']
            type = form.cleaned_data['type']
            sorter = form.cleaned_data['sorter']
            setting = form.cleaned_data['setting']
            minsize = form.cleaned_data['minsize']
            maxsize = form.cleaned_data['maxsize']
            minsat = form.cleaned_data['minsat']
            maxsat = form.cleaned_data['maxsat']
            mintuit = form.cleaned_data['mintuit']
            maxtuit = form.cleaned_data['maxtuit']

            if not num:
                num = 50

            results=list(search(name=name, state=state, city=city, num=num, type=type, setting=setting, sorter = sorter,
            minsize=minsize, maxsize=maxsize, minsat=minsat, maxsat=maxsat,
            mintuition=mintuit, maxtuition=maxtuit))

            if not len(results):
                prompt = 'No colleges match your f*****g search criteria...'
            else:
                prompt = 'Here are your f*****g results...'

    vals = dict(form=form, layout='horizontal', results=results, prompt=prompt, translation=translation)
    return render_to_response(template, RequestContext(request, vals))
Пример #4
0
def getpersonal(request):
    if request.is_ajax():
        if request.LANGUAGE_CODE == 'en':
            labels = ['Good Fit', 'Reach', 'Safety']
            no_match = 'No Match'
        else:
            labels = [u'分数达标', u'需要努力', u'保底学校']
            no_match = u'没有结果'
        state = request.POST.get('state', False)
        setting = setting_map[request.POST.get('setting', False)]
        math = float(request.POST.get('math', False))
        reading = float(request.POST.get('reading', False))
        writing = float(request.POST.get('writing', False))
        num = 5

        table_styling = "<span class='rank_table_style'>"
        table_styling_end = "</span>"

        #add a header to the top of the list specifying the search.

        sat_total = math + reading + writing
        sat_mr = math + reading

        colleges1 = search(sorter='sat', state=state, setting=setting, num=num, p=True, s=sat_total, bracket=1)
        colleges2 = search(sorter='sat', state=state, setting=setting, num=num, p=True, s=sat_total, bracket=2)
        colleges3 = search(sorter='sat', state=state, setting=setting, num=num, p=True, s=sat_total, bracket=3)

        len1 = len(colleges1)
        len2 = len(colleges2)
        len3 = len(colleges3)
        number = len1 + len2 + len3
        link_start = "<a target='_blank' href='http://"
        link_middle = "'>"
        link_end = "</a>"
        if not number:
            html = "<div id='personal_list'><h5 class='no_res'>" + no_match + "</h5></div>"
        else:
            html = "<div id='personal_list'>"
            html += "<h4 class='rank_list_header'>" + labels[0] + "</h4>"
            if len2 > 0:
                html += "<table><th></th><tbody>"
                for i in range(0, len2):
                    html += "<tr><td class='college_table_slot'><span class='college_table_rank'>" + table_styling + str(i + 1) + ")" + table_styling_end + "</span></td><td><div class='college_table_entry'>" + link_start + colleges2[i].website + link_middle + table_styling + colleges2[i].name + table_styling_end + link_end + "</div></td></tr>"
                html += "</tbody></table>"
            else:
                html += "<h5 class='no_res'>" + no_match + "</h5>"
            html += "<h4 class='rank_list_header'>" + labels[1] + "</h4>"
            if len1 > 0:
                html += "<table><th></th><tbody>"
                for i in range(0, len1):
                    html += "<tr><td class='college_table_slot'><span class='college_table_rank'>" + table_styling + str(i + 1) + ")" + table_styling_end + "</span></td><td><div class='college_table_entry'>" + link_start + colleges1[i].website + link_middle + table_styling + colleges1[i].name + table_styling_end + link_end + "</div></td></tr>"
                html += "</tbody></table>"
            else:
                html += "<h5 class='no_res'>" + no_match + "</h5>"
            html += "<h4 class='rank_list_header'>" + labels[2] + "</h4>"
            if len3 > 0:
                html += "<table><th></th><tbody>"
                for i in range(0, len3):
                    html += "<tr><td class='college_table_slot'><span class='college_table_rank'>" + table_styling + str(i + 1) + ")" + table_styling_end + "</span></td><td><div class='college_table_entry'>" + link_start + colleges3[i].website + link_middle + table_styling + colleges3[i].name + table_styling_end + link_end + "</div></td></tr>"
                html += "</tbody></table>"
            else:
                html += "<h5 class='no_res'>" + no_match + "</h5>"
            html += "</div>"


        return HttpResponse(html)
    else:
        return HttpResponse('error')