old_contents: from flask_login import current_user
  from flask import has_request_context, request, abort
  from notifications_python_client.base import BaseAPIClient
  from notifications_python_client.version import __version__
  
  
  def _attach_current_user(data):
      return dict(
          created_by=current_user.id,
          **data
      )
  
  
  class NotifyAdminAPIClient(BaseAPIClient):
      def generate_headers(self, api_token):
          headers = {
              "Content-type": "application/json",
              "Authorization": "Bearer {}".format(api_token),
              "User-agent": "NOTIFY-API-PYTHON-CLIENT/{}".format(__version__)
          }
          return self._add_request_id_header(headers)
  
      @staticmethod
      def _add_request_id_header(headers):
          if not has_request_context():
              return headers
          headers['NotifyRequestID'] = request.request_id
          return headers
  
      def check_inactive_service(self):
          # this file is imported in app/__init__.py before current_service is initialised, so need to import later
          # to prevent cyclical imports
          from app import current_service
  
          # if the current service is inactive and the user isn't a platform admin, we should block them from making any
          # stateful modifications to that service
          if current_service and not current_service['active'] and not current_user.platform_admin:
              abort(403)
  
      def post(self, *args, **kwargs):
          self.check_inactive_service()
          return super().post(*args, **kwargs)
  
      def put(self, *args, **kwargs):
          self.check_inactive_service()
          return super().put(*args, **kwargs)
  
      def delete(self, *args, **kwargs):
          self.check_inactive_service()
          return super().delete(*args, **kwargs)
  
new_contents: from flask_login import current_user
  from flask import has_request_context, request, abort
  from notifications_python_client.base import BaseAPIClient
  from notifications_python_client import __version__
  
  
  def _attach_current_user(data):
      return dict(
          created_by=current_user.id,
          **data
      )
  
  
  class NotifyAdminAPIClient(BaseAPIClient):
      def generate_headers(self, api_token):
          headers = {
              "Content-type": "application/json",
              "Authorization": "Bearer {}".format(api_token),
              "User-agent": "NOTIFY-API-PYTHON-CLIENT/{}".format(__version__)
          }
          return self._add_request_id_header(headers)
  
      @staticmethod
      def _add_request_id_header(headers):
          if not has_request_context():
              return headers
          headers['NotifyRequestID'] = request.request_id
          return headers
  
      def check_inactive_service(self):
          # this file is imported in app/__init__.py before current_service is initialised, so need to import later
          # to prevent cyclical imports
          from app import current_service
  
          # if the current service is inactive and the user isn't a platform admin, we should block them from making any
          # stateful modifications to that service
          if current_service and not current_service['active'] and not current_user.platform_admin:
              abort(403)
  
      def post(self, *args, **kwargs):
          self.check_inactive_service()
          return super().post(*args, **kwargs)
  
      def put(self, *args, **kwargs):
          self.check_inactive_service()
          return super().put(*args, **kwargs)
  
      def delete(self, *args, **kwargs):
          self.check_inactive_service()
          return super().delete(*args, **kwargs)
  
subject: fix notifications-python-client version import