def open_or_close_discussion(user, discussion_id): try: discussion = Discussion.discussion.get(id=discussion_id) '''Verrificar a permissão de quem está deletando a publicação''' if users_in_same_group(user, discussion.author): discussion.close(not discussion.is_closed) return discussion else: return False except Discussion.DoesNotExist: return None
def remove_discussion(user, discussion_id): try: discussion = Discussion.discussion.get(id=discussion_id) '''Verrificar a permissão de quem está deletando a publicação''' if users_in_same_group(user, discussion.author): discussion.remove(True) return discussion else: return False except Discussion.DoesNotExist: return None
def edit_theme_discussion(discussion_id, user, title, description, is_public): '''Verificar a permissão de quem está editando''' try: discussion = Discussion.discussion.get(id=discussion_id) if (users_in_same_group(discussion.author, user) or user == discussion.author) and not(discussion.is_closed and discussion.is_removed): discussion.edit_theme_discussion(title, description, is_public) return discussion else: return False except Discussion.DoesNotExist: return None
def edit_discussion(discussion_id, user, title, description, diagnosis, treatment, is_public): '''Verificar a permissão de edição do usuário, para uma edição o usuário deve ser dono da publicação ou fazer parte da dupla ou grupo''' try: discussion = Discussion.discussion.get(id=discussion_id) if (users_in_same_group(discussion.author, user) or user == discussion.author) and not(discussion.is_closed and discussion.is_removed): discussion.edit_discussion(title, description, diagnosis, treatment, is_public) return discussion else: return False except Discussion.DoesNotExist: return None