Exemplo n.º 1
0
    def to_representation(self, course_overview):
        course_id = unicode(course_overview.id)
        request = self.context.get('request')
        return {
            # identifiers
            'id': course_id,
            'name': course_overview.display_name,
            'number': course_overview.display_number_with_default,
            'org': course_overview.display_org_with_default,

            # dates
            'start': course_overview.start,
            'start_display': course_overview.start_display,
            'start_type': course_overview.start_type,
            'end': course_overview.end,

            # notification info
            'subscription_id': course_overview.clean_id(padding_char='_'),

            # access info
            'courseware_access': has_access(
                request.user,
                'load_mobile',
                course_overview
            ).to_json(),

            # various URLs
            # course_image is sent in both new and old formats
            # (within media to be compatible with the new Course API)
            'media': {
                'course_image': {
                    'uri': course_overview.course_image_url,
                    'name': 'Course Image',
                }
            },
            'course_image': course_overview.course_image_url,
            'course_about': get_lms_link_for_about_page(CourseKey.from_string(course_id)),
            'course_updates': reverse(
                'course-updates-list',
                kwargs={'course_id': course_id},
                request=request,
            ),
            'course_handouts': reverse(
                'course-handouts-list',
                kwargs={'course_id': course_id},
                request=request,
            ),
            'discussion_url': reverse(
                'discussion_course',
                kwargs={'course_id': course_id},
                request=request,
            ) if course_overview.is_discussion_tab_enabled() else None,

            'video_outline': reverse(
                'video-summary-list',
                kwargs={'course_id': course_id},
                request=request,
            ),
        }
Exemplo n.º 2
0
    def to_representation(self, course_overview):
        course_id = unicode(course_overview.id)
        request = self.context.get('request')
        return {
            # identifiers
            'id':
            course_id,
            'name':
            course_overview.display_name,
            'number':
            course_overview.display_number_with_default,
            'org':
            course_overview.display_org_with_default,

            # dates
            'start':
            course_overview.start,
            'start_display':
            course_overview.start_display,
            'start_type':
            course_overview.start_type,
            'end':
            course_overview.end,

            # notification info
            'subscription_id':
            course_overview.clean_id(padding_char='_'),

            # access info
            'courseware_access':
            has_access(request.user, 'load_mobile', course_overview).to_json(),

            # various URLs
            # course_image is sent in both new and old formats
            # (within media to be compatible with the new Course API)
            'media': {
                'course_image': {
                    'uri': course_overview.course_image_url,
                    'name': 'Course Image',
                }
            },
            'course_image':
            course_overview.course_image_url,
            'course_about':
            get_lms_link_for_about_page(CourseKey.from_string(course_id)),
            'course_updates':
            reverse(
                'course-updates-list',
                kwargs={'course_id': course_id},
                request=request,
            ),
            'course_handouts':
            reverse(
                'course-handouts-list',
                kwargs={'course_id': course_id},
                request=request,
            ),
            'discussion_url':
            reverse(
                'discussion_course',
                kwargs={'course_id': course_id},
                request=request,
            ) if course_overview.is_discussion_tab_enabled() else None,
            'video_outline':
            reverse(
                'video-summary-list',
                kwargs={'course_id': course_id},
                request=request,
            ),
        }
Exemplo n.º 3
0
 def get_about_page_link(self):
     """ create mock course and return the about page link."""
     course_key = SlashSeparatedCourseKey('mitX', '101', 'test')
     return get_lms_link_for_about_page(course_key)
Exemplo n.º 4
0
 def get_about_page_link(self):
     """ create mock course and return the about page link."""
     course_key = SlashSeparatedCourseKey('mitX', '101', 'test')
     return get_lms_link_for_about_page(course_key)