示例#1
0
 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)
示例#2
0
    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,
        }
示例#3
0
 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)
示例#4
0
 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)
示例#5
0
 def get(self):
     name = request.args.get("name", None)
     return user_service.get_open_projects(name=name)