def get_reviewable_suggestions(user_id, suggestion_type): """Returns a list of suggestions of given suggestion_type which the user can review. Args: user_id: str. The ID of the user. suggestion_type: str. The type of the suggestion. Returns: list(Suggestion). A list of suggestions which the given user is allowed to review. """ all_suggestions = ([ get_suggestion_from_model(s) for s in (suggestion_models.GeneralSuggestionModel. get_in_review_suggestions_of_suggestion_type( suggestion_type, user_id)) ]) user_review_rights = user_services.get_user_contribution_rights(user_id) if suggestion_type == feconf.SUGGESTION_TYPE_TRANSLATE_CONTENT: language_codes = ( user_review_rights.can_review_translation_for_language_codes) return [ suggestion for suggestion in all_suggestions if suggestion.change.language_code in language_codes ] return all_suggestions
def get(self): """Handles GET requests.""" contribution_rights = None if self.username: contribution_rights = user_services.get_user_contribution_rights( self.user_id) self.render_json({ 'can_review_translation_for_language_codes': (contribution_rights.can_review_translation_for_language_codes if contribution_rights else []), 'can_review_voiceover_for_language_codes': (contribution_rights.can_review_voiceover_for_language_codes if contribution_rights else []), 'can_review_questions': (contribution_rights.can_review_questions if contribution_rights else False) })
def get(self): username = self.request.get('username', None) if username is None: raise self.InvalidInputException('Missing username param') user_id = user_services.get_user_id_from_username(username) if user_id is None: raise self.InvalidInputException('Invalid username: %s' % username) user_rights = (user_services.get_user_contribution_rights(user_id)) self.render_json({ 'can_review_translation_for_language_codes': (user_rights.can_review_translation_for_language_codes), 'can_review_voiceover_for_language_codes': (user_rights.can_review_voiceover_for_language_codes), 'can_review_questions': user_rights.can_review_questions })
def get(self): """Handles GET requests.""" contribution_rights = None if self.username: contribution_rights = user_services.get_user_contribution_rights( self.user_id) self.render_json({ 'can_review_translation_for_language_codes': (contribution_rights.can_review_translation_for_language_codes if contribution_rights else []), 'can_review_voiceover_for_language_codes': (contribution_rights.can_review_voiceover_for_language_codes if contribution_rights else []), 'can_review_questions': (contribution_rights.can_review_questions if contribution_rights else False), 'can_suggest_questions': (config_domain.CONTRIBUTOR_CAN_SUGGEST_QUESTIONS.value) })
def get(self): username = self.normalized_request.get('username', None) user_id = user_services.get_user_id_from_username(username) if user_id is None: raise self.InvalidInputException('Invalid username: %s' % username) user_rights = (user_services.get_user_contribution_rights(user_id)) response = {} if feconf.ROLE_ID_TRANSLATION_ADMIN in self.roles: response = { 'can_review_translation_for_language_codes': (user_rights.can_review_translation_for_language_codes) } if feconf.ROLE_ID_QUESTION_ADMIN in self.roles: response.update({ 'can_review_questions': user_rights.can_review_questions, 'can_submit_questions': user_rights.can_submit_questions }) self.render_json(response)