views.py 1.62 KB
Newer Older
1
"""Learner dashboard views"""
2
from django.contrib.auth.decorators import login_required
3
from django.views.decorators.http import require_GET
4 5

from edxmako.shortcuts import render_to_response
6

7
from lms.djangoapps.learner_dashboard.programs import ProgramsFragmentView, ProgramDetailsFragmentView
8 9 10 11 12
from openedx.core.djangoapps.programs.models import ProgramsApiConfig


@login_required
@require_GET
13 14
def program_listing(request):
    """View a list of programs in which the user is engaged."""
15
    programs_config = ProgramsApiConfig.current()
16
    programs_fragment = ProgramsFragmentView().render_to_fragment(request, programs_config=programs_config)
17

18
    context = {
19
        'disable_courseware_js': True,
20
        'programs_fragment': programs_fragment,
21
        'nav_hidden': True,
22
        'show_dashboard_tabs': True,
23
        'show_program_listing': programs_config.enabled,
24
        'uses_pattern_library': True,
25 26 27
    }

    return render_to_response('learner_dashboard/programs.html', context)
28 29 30 31


@login_required
@require_GET
32
def program_details(request, program_uuid):
33
    """View details about a specific program."""
34
    programs_config = ProgramsApiConfig.current()
35 36 37
    program_fragment = ProgramDetailsFragmentView().render_to_fragment(
        request, program_uuid, programs_config=programs_config
    )
38

39
    context = {
40
        'program_fragment': program_fragment,
41
        'show_program_listing': programs_config.enabled,
42
        'show_dashboard_tabs': True,
43 44
        'nav_hidden': True,
        'disable_courseware_js': True,
45
        'uses_pattern_library': True,
46
    }
47

48
    return render_to_response('learner_dashboard/program_details.html', context)