def get_program_page_context(programpage, request):
""" Get context for the program page"""
from cms.serializers import ProgramPageSerializer
courses_query = (
programpage.program.course_set.all()
)
js_settings = {
"gaTrackingID": settings.GA_TRACKING_ID,
"host": webpack_dev_server_host(request),
"environment": settings.ENVIRONMENT,
"sentry_dsn": sentry.get_public_dsn(),
"release_version": settings.VERSION,
"user": serialize_maybe_user(request.user),
"program": ProgramPageSerializer(programpage).data,
}
username = get_social_username(request.user)
context = super(ProgramPage, programpage).get_context(request)
context["is_staff"] = has_role(request.user, [Staff.ROLE_ID, Instructor.ROLE_ID])
context["is_public"] = True
context["has_zendesk_widget"] = True
context["google_maps_api"] = False
context["authenticated"] = not request.user.is_anonymous()
context["username"] = username
context["js_settings_json"] = json.dumps(js_settings)
context["title"] = programpage.title
context["courses"] = courses_query
context["ga_tracking_id"] = programpage.program.ga_tracking_id
return context
评论列表
文章目录