1212from search .selectors import controled_list , RETURN_VALUES
1313from search .selectors import RETURN_VALUES as return_values
1414from itertools import chain
15+ from config .services import legacy_api_converter
1516
1617class SearchObjectsAPI (APIView ):
1718 """
@@ -108,6 +109,30 @@ def get(self, request) -> Response:
108109 return_bco = viewable_bcos .filter (query )
109110 bco_data = chain (return_bco .values (* return_values ))
110111 return Response (status = status .HTTP_200_OK , data = bco_data )
112+
113+ def post (self , request ) -> Response :
114+ """This POST method is deprecated. Please use GET instead."""
115+
116+ viewable_bcos = controled_list (request .user )
117+ data = legacy_api_converter (request .data )
118+ query = Q ()
119+ for object in data :
120+ if object ["type" ] == "mine" :
121+ field_query = Q ()
122+ field_query |= Q (** {'owner' : request .user })
123+ query &= field_query
124+ if object ["type" ] == "prefix" :
125+ field_query = Q ()
126+ field_query |= Q (** {"prefix" : object ["search" ]})
127+ query &= field_query
128+ if object ["type" ] == "bco_id" :
129+ field_query = Q ()
130+ field_query |= Q (** {"object_id" : object ["search" ]})
131+ query &= field_query
132+
133+ return_bco = viewable_bcos .filter (query )
134+ bco_data = chain (return_bco .values (* return_values ))
135+ return Response (status = status .HTTP_200_OK , data = bco_data )
111136
112137class DepreciatedSearchObjectsAPI (SearchObjectsAPI ):
113138 swagger_schema = None
0 commit comments