def get(self): """Handles GET requests.""" learner_progress_in_topics_and_stories = ( learner_progress_services.get_topics_and_stories_progress( self.user_id)[0]) all_topic_summary_dicts = ( learner_progress_services.get_displayable_topic_summary_dicts( self.user_id, learner_progress_in_topics_and_stories.all_topic_summaries)) completed_chapters_count = 0 for topic in all_topic_summary_dicts: for story in topic['canonical_story_summary_dict']: completed_chapters_count += (len( story_fetchers.get_completed_nodes_in_story( self.user_id, story['id']))) self.render_json({ 'completed_chapters_count': completed_chapters_count, })
def get(self): """Handles GET requests.""" (learner_progress, number_of_nonexistent_activities) = ( learner_progress_services.get_activity_progress(self.user_id)) completed_exp_summary_dicts = ( summary_services.get_displayable_exp_summary_dicts( learner_progress.completed_exp_summaries)) incomplete_exp_summary_dicts = ( summary_services.get_displayable_exp_summary_dicts( learner_progress.incomplete_exp_summaries)) completed_collection_summary_dicts = ( learner_progress_services.get_collection_summary_dicts( learner_progress.completed_collection_summaries)) incomplete_collection_summary_dicts = ( learner_progress_services.get_collection_summary_dicts( learner_progress.incomplete_collection_summaries)) completed_story_summary_dicts = ( learner_progress_services.get_displayable_story_summary_dicts( self.user_id, learner_progress.completed_story_summaries)) learnt_topic_summary_dicts = ( learner_progress_services.get_displayable_topic_summary_dicts( self.user_id, learner_progress.learnt_topic_summaries)) partially_learnt_topic_summary_dicts = ( learner_progress_services.get_displayable_topic_summary_dicts( self.user_id, learner_progress.partially_learnt_topic_summaries)) exploration_playlist_summary_dicts = ( summary_services.get_displayable_exp_summary_dicts( learner_progress.exploration_playlist_summaries)) collection_playlist_summary_dicts = ( learner_progress_services.get_collection_summary_dicts( learner_progress.collection_playlist_summaries)) topics_to_learn_summary_dicts = ( learner_progress_services.get_displayable_topic_summary_dicts( self.user_id, learner_progress.topics_to_learn_summaries)) all_topic_summary_dicts = ( learner_progress_services.get_displayable_topic_summary_dicts( self.user_id, learner_progress.all_topic_summaries)) untracked_topic_summary_dicts = ( learner_progress_services. get_displayable_untracked_topic_summary_dicts( self.user_id, learner_progress.untracked_topic_summaries)) full_thread_ids = subscription_services.get_all_threads_subscribed_to( self.user_id) if len(full_thread_ids) > 0: thread_summaries, number_of_unread_threads = ( feedback_services.get_exp_thread_summaries( self.user_id, full_thread_ids)) else: thread_summaries, number_of_unread_threads = [], 0 creators_subscribed_to = ( subscription_services.get_all_creators_subscribed_to(self.user_id)) creators_settings = user_services.get_users_settings( creators_subscribed_to) subscription_list = [] for index, creator_settings in enumerate(creators_settings): subscription_summary = { 'creator_picture_data_url': (creator_settings.profile_picture_data_url), 'creator_username': creator_settings.username, 'creator_impact': (user_services.get_user_impact_score( creators_subscribed_to[index])) } subscription_list.append(subscription_summary) self.values.update({ 'completed_explorations_list': completed_exp_summary_dicts, 'completed_collections_list': completed_collection_summary_dicts, 'completed_stories_list': completed_story_summary_dicts, 'learnt_topics_list': learnt_topic_summary_dicts, 'incomplete_explorations_list': incomplete_exp_summary_dicts, 'incomplete_collections_list': incomplete_collection_summary_dicts, 'partially_learnt_topics_list': (partially_learnt_topic_summary_dicts), 'exploration_playlist': exploration_playlist_summary_dicts, 'collection_playlist': collection_playlist_summary_dicts, 'topics_to_learn_list': topics_to_learn_summary_dicts, 'all_topics_list': all_topic_summary_dicts, 'untracked_topics': untracked_topic_summary_dicts, 'number_of_nonexistent_activities': (number_of_nonexistent_activities), 'completed_to_incomplete_collections': (learner_progress.completed_to_incomplete_collections), 'completed_to_incomplete_stories': (learner_progress.completed_to_incomplete_stories), 'learnt_to_partially_learnt_topics': (learner_progress.learnt_to_partially_learnt_topics), 'thread_summaries': [s.to_dict() for s in thread_summaries], 'number_of_unread_threads': number_of_unread_threads, 'subscription_list': subscription_list }) self.render_json(self.values)
def get(self): """Handles GET requests.""" (learner_progress_in_topics_and_stories, number_of_nonexistent_topics_and_stories) = ( learner_progress_services.get_topics_and_stories_progress( self.user_id)) completed_story_sumamries = ( learner_progress_in_topics_and_stories.completed_story_summaries) completed_story_summary_dicts = ( learner_progress_services.get_displayable_story_summary_dicts( self.user_id, completed_story_sumamries)) learnt_topic_summary_dicts = ( learner_progress_services.get_displayable_topic_summary_dicts( self.user_id, learner_progress_in_topics_and_stories.learnt_topic_summaries)) partially_learnt_topic_summaries = ( learner_progress_in_topics_and_stories. partially_learnt_topic_summaries # pylint: disable=line-too-long ) partially_learnt_topic_summary_dicts = ( learner_progress_services.get_displayable_topic_summary_dicts( self.user_id, partially_learnt_topic_summaries)) topics_to_learn_summaries = ( learner_progress_in_topics_and_stories.topics_to_learn_summaries) topics_to_learn_summary_dicts = ( learner_progress_services.get_displayable_topic_summary_dicts( self.user_id, topics_to_learn_summaries)) all_topic_summary_dicts = ( learner_progress_services.get_displayable_topic_summary_dicts( self.user_id, learner_progress_in_topics_and_stories.all_topic_summaries)) untracked_topic_sumamries = ( learner_progress_in_topics_and_stories.untracked_topic_summaries) untracked_topic_summary_dicts = ( learner_progress_services. get_displayable_untracked_topic_summary_dicts( self.user_id, untracked_topic_sumamries)) completed_to_incomplete_stories = ( learner_progress_in_topics_and_stories. completed_to_incomplete_stories # pylint: disable=line-too-long ) learnt_to_partially_learnt_topics = ( learner_progress_in_topics_and_stories. learnt_to_partially_learnt_topics # pylint: disable=line-too-long ) self.values.update({ 'completed_stories_list': completed_story_summary_dicts, 'learnt_topics_list': learnt_topic_summary_dicts, 'partially_learnt_topics_list': (partially_learnt_topic_summary_dicts), 'topics_to_learn_list': topics_to_learn_summary_dicts, 'all_topics_list': all_topic_summary_dicts, 'untracked_topics': untracked_topic_summary_dicts, 'number_of_nonexistent_topics_and_stories': (number_of_nonexistent_topics_and_stories), 'completed_to_incomplete_stories': completed_to_incomplete_stories, 'learnt_to_partially_learnt_topics': (learnt_to_partially_learnt_topics), }) self.render_json(self.values)