def get(self): """Handles GET requests.""" topic_summaries = topic_services.get_all_topic_summaries() topic_summary_dicts = [ summary.to_dict() for summary in topic_summaries ] skill_summaries = skill_services.get_all_skill_summaries() skill_summary_dicts = [ summary.to_dict() for summary in skill_summaries ] skill_ids_assigned_to_some_topic = ( topic_services.get_all_skill_ids_assigned_to_some_topic()) merged_skill_ids = (skill_services.get_merged_skill_ids()) topic_rights_dict = topic_services.get_all_topic_rights() for topic_summary in topic_summary_dicts: if topic_rights_dict[topic_summary['id']]: topic_rights = topic_rights_dict[topic_summary['id']] if topic_rights: topic_summary['is_published'] = ( topic_rights.topic_is_published) topic_summary['can_edit_topic'] = ( topic_services.check_can_edit_topic( self.user, topic_rights)) untriaged_skill_summary_dicts = [] mergeable_skill_summary_dicts = [] for skill_summary_dict in skill_summary_dicts: skill_id = skill_summary_dict['id'] if (skill_id not in skill_ids_assigned_to_some_topic) and ( skill_id not in merged_skill_ids): untriaged_skill_summary_dicts.append(skill_summary_dict) if (skill_id in skill_ids_assigned_to_some_topic) and ( skill_id not in merged_skill_ids): mergeable_skill_summary_dicts.append(skill_summary_dict) can_delete_topic = (role_services.ACTION_DELETE_TOPIC in self.user.actions) can_create_topic = (role_services.ACTION_CREATE_NEW_TOPIC in self.user.actions) can_delete_skill = (role_services.ACTION_DELETE_ANY_SKILL in self.user.actions) can_create_skill = (role_services.ACTION_CREATE_NEW_SKILL in self.user.actions) self.values.update({ 'untriaged_skill_summary_dicts': untriaged_skill_summary_dicts, 'mergeable_skill_summary_dicts': mergeable_skill_summary_dicts, 'topic_summary_dicts': topic_summary_dicts, 'can_delete_topic': can_delete_topic, 'can_create_topic': can_create_topic, 'can_delete_skill': can_delete_skill, 'can_create_skill': can_create_skill }) self.render_json(self.values)
def get(self): """Handles GET requests.""" topic_summaries = topic_services.get_all_topic_summaries() topic_summary_dicts = [ summary.to_dict() for summary in topic_summaries ] skill_summaries = skill_services.get_all_skill_summaries() skill_summary_dicts = [ summary.to_dict() for summary in skill_summaries ] topic_rights_dict = topic_services.get_all_topic_rights() for topic_summary in topic_summary_dicts: topic_rights = topic_rights_dict[topic_summary['id']] if topic_rights: topic_summary['is_published'] = ( topic_rights.topic_is_published) can_delete_topic = (role_services.ACTION_DELETE_TOPIC in self.user.actions) can_create_topic = (role_services.ACTION_CREATE_NEW_TOPIC in self.user.actions) self.values.update({ 'skill_summary_dicts': skill_summary_dicts, 'topic_summary_dicts': topic_summary_dicts, 'can_delete_topic': can_delete_topic, 'can_create_topic': can_create_topic }) self.render_json(self.values)
def get(self): """Handles GET requests.""" topic_summaries = topic_services.get_all_topic_summaries() topic_summary_dicts = [ summary.to_dict() for summary in topic_summaries] skill_summaries = skill_services.get_all_skill_summaries() skill_summary_dicts = [ summary.to_dict() for summary in skill_summaries] topic_rights_dict = topic_services.get_all_topic_rights() for topic_summary in topic_summary_dicts: topic_rights = topic_rights_dict[topic_summary['id']] if topic_rights: topic_summary['topic_is_published'] = ( topic_rights.topic_is_published) self.values.update({ 'skill_summary_dicts': skill_summary_dicts, 'topic_summary_dicts': topic_summary_dicts }) self.render_json(self.values)
def get(self): """Handles GET requests.""" topic_summaries = topic_services.get_all_topic_summaries() topic_summary_dicts = [ summary.to_dict() for summary in topic_summaries] skill_summaries = skill_services.get_all_skill_summaries() skill_summary_dicts = [ summary.to_dict() for summary in skill_summaries] skill_ids_assigned_to_some_topic = ( topic_services.get_all_skill_ids_assigned_to_some_topic()) merged_skill_ids = ( skill_services.get_merged_skill_ids()) topic_rights_dict = topic_services.get_all_topic_rights() for topic_summary in topic_summary_dicts: if topic_rights_dict[topic_summary['id']]: topic_rights = topic_rights_dict[topic_summary['id']] if topic_rights: topic_summary['is_published'] = ( topic_rights.topic_is_published) topic_summary['can_edit_topic'] = ( topic_services.check_can_edit_topic( self.user, topic_rights) ) all_classrooms_dict = config_domain.TOPIC_IDS_FOR_CLASSROOM_PAGES.value all_classroom_names = [ classroom['name'] for classroom in all_classrooms_dict] for topic_summary_dict in topic_summary_dicts: topic_summary_dict['classroom'] = None for classroom in all_classrooms_dict: if topic_summary_dict['id'] in classroom['topic_ids']: topic_summary_dict['classroom'] = classroom['name'] break untriaged_skill_summary_dicts = [] mergeable_skill_summary_dicts = [] categorized_skills_dict = {} topics = topic_fetchers.get_all_topics() for topic in topics: subtopics = topic.subtopics categorized_skills_dict[topic.name] = {} uncategorized_skills = ( skill_services.get_descriptions_of_skills( topic.uncategorized_skill_ids)[0]) skills_list = [] for skill_id in topic.uncategorized_skill_ids: skill_dict = { 'skill_id': skill_id, 'skill_description': uncategorized_skills[skill_id] } skills_list.append(skill_dict) categorized_skills_dict[topic.name]['uncategorized'] = ( skills_list) for subtopic in subtopics: skills = (skill_services.get_descriptions_of_skills( subtopic.skill_ids))[0] skills_list = [] for skill_id in subtopic.skill_ids: skill_dict = { 'skill_id': skill_id, 'skill_description': skills[skill_id] } skills_list.append(skill_dict) categorized_skills_dict[topic.name][ subtopic.title] = skills_list categorized_skills_dict['untriaged_skills'] = [] for skill_summary_dict in skill_summary_dicts: skill_id = skill_summary_dict['id'] if (skill_id not in skill_ids_assigned_to_some_topic) and ( skill_id not in merged_skill_ids): untriaged_skill_summary_dicts.append(skill_summary_dict) categorized_skills_dict['untriaged_skills'].append({ 'skill_id': skill_id, 'skill_description': skill_summary_dict['description'] }) if (skill_id in skill_ids_assigned_to_some_topic) and ( skill_id not in merged_skill_ids): mergeable_skill_summary_dicts.append(skill_summary_dict) can_delete_topic = ( role_services.ACTION_DELETE_TOPIC in self.user.actions) can_create_topic = ( role_services.ACTION_CREATE_NEW_TOPIC in self.user.actions) can_delete_skill = ( role_services.ACTION_DELETE_ANY_SKILL in self.user.actions) can_create_skill = ( role_services.ACTION_CREATE_NEW_SKILL in self.user.actions) self.values.update({ 'untriaged_skill_summary_dicts': untriaged_skill_summary_dicts, 'mergeable_skill_summary_dicts': mergeable_skill_summary_dicts, 'topic_summary_dicts': topic_summary_dicts, 'all_classroom_names': all_classroom_names, 'can_delete_topic': can_delete_topic, 'can_create_topic': can_create_topic, 'can_delete_skill': can_delete_skill, 'can_create_skill': can_create_skill, 'categorized_skills_dict': categorized_skills_dict }) self.render_json(self.values)
def get(self): """Handles GET requests.""" topic_summaries = topic_services.get_all_topic_summaries() topic_summary_dicts = [ summary.to_dict() for summary in topic_summaries ] skill_summaries = skill_services.get_all_skill_summaries() skill_summary_dicts = [ summary.to_dict() for summary in skill_summaries ] skill_ids_assigned_to_some_topic = ( topic_services.get_all_skill_ids_assigned_to_some_topic()) topic_rights_dict = topic_services.get_all_topic_rights() for topic_summary in topic_summary_dicts: if topic_rights_dict[topic_summary['id']]: topic_rights = topic_rights_dict[topic_summary['id']] if topic_rights: topic_summary['is_published'] = ( topic_rights.topic_is_published) topic_summary['can_edit_topic'] = ( topic_services.check_can_edit_topic( self.user, topic_rights)) skill_ids_for_private_skills_by_user = [ skill_rights.id for skill_rights in ( skill_services.get_unpublished_skill_rights_by_creator( self.user_id)) ] skill_ids_for_unpublished_skills = [ skill_rights.id for skill_rights in ( skill_services.get_all_unpublished_skill_rights()) ] untriaged_skill_summary_dicts = [] for skill_summary_dict in skill_summary_dicts: skill_id = skill_summary_dict['id'] if (skill_id not in skill_ids_assigned_to_some_topic) and ( skill_id not in skill_ids_for_unpublished_skills): untriaged_skill_summary_dicts.append(skill_summary_dict) unpublished_skill_summary_dicts = [ summary.to_dict() for summary in (skill_services.get_multi_skill_summaries( skill_ids_for_private_skills_by_user)) ] can_delete_topic = (role_services.ACTION_DELETE_TOPIC in self.user.actions) can_create_topic = (role_services.ACTION_CREATE_NEW_TOPIC in self.user.actions) can_create_skill = (role_services.ACTION_CREATE_NEW_SKILL in self.user.actions) self.values.update({ 'untriaged_skill_summary_dicts': untriaged_skill_summary_dicts, 'unpublished_skill_summary_dicts': unpublished_skill_summary_dicts, 'topic_summary_dicts': topic_summary_dicts, 'can_delete_topic': can_delete_topic, 'can_create_topic': can_create_topic, 'can_create_skill': can_create_skill }) self.render_json(self.values)