def author_view(self): resource_html = ResourceHTML() current_role = ClassGroupPermissions.get_permission_level( self.resource.classgroup, self.resource, "change_resource") resource_html.add_html( render_to_string( self.resource_author_template, { 'content': self.render_module_author(), 'resource_id': self.resource_id, 'js_class_name': self.author_js_class_name, 'resource_type': self.resource_type, 'class_name': self.class_name, 'roles': [ ClassGroupPermissions.student, ClassGroupPermissions.teacher ], 'current_role': current_role, })) for js in self.author_js: resource_html.add_js(js) for css in self.author_css: resource_html.add_css(css) return resource_html
def child_user_views(self): """ Gets the user views for the children of this module. Used when rendering a vertical. """ child_views = [] children = self.get_children() # Store data to prevent descriptor overwrite by children. self.module.store_data() for child in children: child_access_level = ClassGroupPermissions.get_permission_level( child.classgroup, child, "change_resource") user_access_level = ClassGroupPermissions.access_level( child.classgroup, self.user) if ClassGroupPermissions.PERMISSION_LEVELS[ user_access_level] >= ClassGroupPermissions.PERMISSION_LEVELS[ child_access_level]: user_state, created = UserResourceState.objects.get_or_create( user=self.user, resource=child) renderer = ResourceRenderer(child, user_resource_state=user_state, static_data=self.static_data, user=self.user) child_views.append(renderer.user_view()) # Read data back in. self.module.read_data() return child_views
def author_view(self): resource_html = ResourceHTML() current_role = ClassGroupPermissions.get_permission_level(self.resource.classgroup, self.resource, "change_resource") resource_html.add_html(render_to_string(self.resource_author_template, { 'content': self.render_module_author(), 'resource_id': self.resource_id, 'js_class_name': self.author_js_class_name, 'resource_type': self.resource_type, 'class_name': self.class_name, 'roles': [ClassGroupPermissions.student, ClassGroupPermissions.teacher], 'current_role': current_role, })) for js in self.author_js: resource_html.add_js(js) for css in self.author_css: resource_html.add_css(css) return resource_html
def child_user_views(self): """ Gets the user views for the children of this module. Used when rendering a vertical. """ child_views = [] children = self.get_children() # Store data to prevent descriptor overwrite by children. self.module.store_data() for child in children: child_access_level = ClassGroupPermissions.get_permission_level(child.classgroup, child, "change_resource") user_access_level = ClassGroupPermissions.access_level(child.classgroup, self.user) if ClassGroupPermissions.PERMISSION_LEVELS[user_access_level] >= ClassGroupPermissions.PERMISSION_LEVELS[child_access_level]: user_state, created = UserResourceState.objects.get_or_create( user=self.user, resource=child ) renderer = ResourceRenderer(child, user_resource_state=user_state, static_data=self.static_data, user=self.user) child_views.append(renderer.user_view()) # Read data back in. self.module.read_data() return child_views