def get(self): name = request.args.get("name", None) try: permissions.check_admin_permissions() return projects_service.open_projects(name=name) except permissions.PermissionDenied: return user_service.get_open_projects(name=name)
def post(self): """ Search for resource --- tags: - Search parameters: - in: query name: query required: True schema: type: string example: name of asset responses: 200: description: Resource """ args = self.get_args([("query", "", True)]) query = args.get("query") if len(query) < 3: return {"assets": []} if permissions.has_admin_permissions(): projects = projects_service.open_projects() else: projects = user_service.get_open_projects() persons = index_service.search_persons(query) open_project_ids = [project["id"] for project in projects] return { "assets": index_service.search_assets(query, open_project_ids), "persons": persons, }
def get(self): """ Return open projects for which the user has at least one task assigned. --- tags: - User responses: 200: description: Open projects for which the user has at least one task assigned """ name = request.args.get("name", None) return user_service.get_open_projects(name=name)
def get(self): """ Return the list of projects currently running. --- tags: - Projects description: Most of the time, past projects are not needed. responses: 200: description: All running projects """ name = request.args.get("name", None) try: permissions.check_admin_permissions() for_client = permissions.has_client_permissions() return projects_service.open_projects(name=name, for_client=for_client) except permissions.PermissionDenied: return user_service.get_open_projects(name=name)
def get(self): name = request.args.get("name", None) return user_service.get_open_projects(name=name)