Exemple #1
0
def help_center(request, extra_context = None):
    context = {}
    tutorials = Tutorial.objects.filter(display=True)
    if request.user.is_anonymous or request.user.is_recruiter:
        recruiter_audience = [core_enums.ALL, core_enums.AUTHENTICATED, core_enums.ANONYMOUS_AND_EMPLOYERS, core_enums.EMPLOYER, core_enums.CAMPUS_ORGS_AND_EMPLOYERS]
        try:
            context['recruiter_student_discovery_tutorials'] = tutorials.filter(audience__in = recruiter_audience, topic=Topic.objects.get(name="Student Discovery")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
        try:
            context['recruiter_subscription_tutorials'] = tutorials.filter(audience__in = recruiter_audience, topic=Topic.objects.get(name="Subscriptions")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
        try:
            context['recruiter_event_and_deadline_tutorials'] = tutorials.filter(audience__in = recruiter_audience, topic=Topic.objects.get(name="Events & Deadlines")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
        try:
            context['recruiter_account_management_tutorials'] = tutorials.filter(audience__in = recruiter_audience, topic=Topic.objects.get(name="Account Management")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
    if request.user.is_anonymous or request.user.is_student:
        student_audience = [core_enums.ALL, core_enums.AUTHENTICATED, core_enums.ANONYMOUS_AND_STUDENTS, core_enums.STUDENT]
        try:
            context['student_student_discovery_tutorials'] = tutorials.filter(audience__in = student_audience, topic=Topic.objects.get(name="Student Discovery")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
        try:
            context['student_subscription_tutorials'] = tutorials.filter(audience__in = student_audience, topic=Topic.objects.get(name="Subscriptions")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
        try:
            context['student_event_and_deadline_tutorials'] = tutorials.filter(audience__in = student_audience, topic=Topic.objects.get(name="Events & Deadlines")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
        try:
            context['student_account_management_tutorials'] = tutorials.filter(audience__in = student_audience, topic=Topic.objects.get(name="Account Management")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
    if request.user.is_anonymous or request.user.is_campus_org:
        campus_org_audience = [core_enums.ALL, core_enums.AUTHENTICATED, core_enums.ANONYMOUS_AND_CAMPUS_ORGS, core_enums.CAMPUS_ORG, core_enums.CAMPUS_ORGS_AND_EMPLOYERS]
        try:
            context['campus_org_student_discovery_tutorials'] = tutorials.filter(audience__in = campus_org_audience, topic=Topic.objects.get(name="Student Discovery")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
        try:
            context['campus_org_subscription_tutorials'] = tutorials.filter(audience__in = campus_org_audience, topic=Topic.objects.get(name="Subscriptions")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
        try:
            context['campus_org_event_and_deadline_tutorials'] = tutorials.filter(audience__in = campus_org_audience, topic=Topic.objects.get(name="Events & Deadlines")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
        try:
            context['campus_org_account_management_tutorials'] = tutorials.filter(audience__in = campus_org_audience, topic=Topic.objects.get(name="Account Management")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
    context['top_questions'] = filter_faq_questions(request.user, Question.objects.visible()).order_by("-click_count")[:s.TOP_QUESTIONS_NUM]
    context.update(extra_context or {})
    return context
Exemple #2
0
def faq(request, extra_context = None):
    if request.method == "POST":
        if not request.POST.has_key("question_id"):
            raise Http400("Request POST is missing 'question_id'.")
        q = Question.objects.get(id=request.POST["question_id"])
        q.click_count += 1
        q.save()
        return HttpResponse()
    else:
        context = {'topics':[]}
        for topic in Topic.objects.all():
            questions = filter_faq_questions(request.user, topic.question_set.visible())
            if questions:
                context['topics'].append({'name': topic, 'questions':questions})
        context.update(extra_context or {})  
        return context
Exemple #3
0
def faq(request, extra_context=None):
    if request.method == "POST":
        if not request.POST.has_key("question_id"):
            raise Http400("Request POST is missing 'question_id'.")
        q = Question.objects.get(id=request.POST["question_id"])
        q.click_count += 1
        q.save()
        return HttpResponse()
    else:
        context = {'topics': []}
        for topic in Topic.objects.all():
            questions = filter_faq_questions(request.user,
                                             topic.question_set.visible())
            if questions:
                context['topics'].append({
                    'name': topic,
                    'questions': questions
                })
        context.update(extra_context or {})
        return context
Exemple #4
0
def help_center(request, extra_context=None):
    context = {}
    tutorials = Tutorial.objects.filter(display=True)
    if request.user.is_anonymous or request.user.is_recruiter:
        recruiter_audience = [
            core_enums.ALL, core_enums.AUTHENTICATED,
            core_enums.ANONYMOUS_AND_EMPLOYERS, core_enums.EMPLOYER,
            core_enums.CAMPUS_ORGS_AND_EMPLOYERS
        ]
        try:
            context[
                'recruiter_student_discovery_tutorials'] = tutorials.filter(
                    audience__in=recruiter_audience,
                    topic=Topic.objects.get(
                        name="Student Discovery")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
        try:
            context['recruiter_subscription_tutorials'] = tutorials.filter(
                audience__in=recruiter_audience,
                topic=Topic.objects.get(
                    name="Subscriptions")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
        try:
            context[
                'recruiter_event_and_deadline_tutorials'] = tutorials.filter(
                    audience__in=recruiter_audience,
                    topic=Topic.objects.get(
                        name="Events & Deadlines")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
        try:
            context[
                'recruiter_account_management_tutorials'] = tutorials.filter(
                    audience__in=recruiter_audience,
                    topic=Topic.objects.get(
                        name="Account Management")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
    if request.user.is_anonymous or request.user.is_student:
        student_audience = [
            core_enums.ALL, core_enums.AUTHENTICATED,
            core_enums.ANONYMOUS_AND_STUDENTS, core_enums.STUDENT
        ]
        try:
            context['student_student_discovery_tutorials'] = tutorials.filter(
                audience__in=student_audience,
                topic=Topic.objects.get(
                    name="Student Discovery")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
        try:
            context['student_subscription_tutorials'] = tutorials.filter(
                audience__in=student_audience,
                topic=Topic.objects.get(
                    name="Subscriptions")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
        try:
            context['student_event_and_deadline_tutorials'] = tutorials.filter(
                audience__in=student_audience,
                topic=Topic.objects.get(
                    name="Events & Deadlines")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
        try:
            context['student_account_management_tutorials'] = tutorials.filter(
                audience__in=student_audience,
                topic=Topic.objects.get(
                    name="Account Management")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
    if request.user.is_anonymous or request.user.is_campus_org:
        campus_org_audience = [
            core_enums.ALL, core_enums.AUTHENTICATED,
            core_enums.ANONYMOUS_AND_CAMPUS_ORGS, core_enums.CAMPUS_ORG,
            core_enums.CAMPUS_ORGS_AND_EMPLOYERS
        ]
        try:
            context[
                'campus_org_student_discovery_tutorials'] = tutorials.filter(
                    audience__in=campus_org_audience,
                    topic=Topic.objects.get(
                        name="Student Discovery")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
        try:
            context['campus_org_subscription_tutorials'] = tutorials.filter(
                audience__in=campus_org_audience,
                topic=Topic.objects.get(
                    name="Subscriptions")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
        try:
            context[
                'campus_org_event_and_deadline_tutorials'] = tutorials.filter(
                    audience__in=campus_org_audience,
                    topic=Topic.objects.get(
                        name="Events & Deadlines")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
        try:
            context[
                'campus_org_account_management_tutorials'] = tutorials.filter(
                    audience__in=campus_org_audience,
                    topic=Topic.objects.get(
                        name="Account Management")).order_by("sort_order")
        except Topic.DoesNotExist:
            pass
    context['top_questions'] = filter_faq_questions(
        request.user, Question.objects.visible()).order_by(
            "-click_count")[:s.TOP_QUESTIONS_NUM]
    context.update(extra_context or {})
    return context