2727from events .models import Event
2828from events .serializers import EventsListSerializer
2929from partner_programs .models import PartnerProgram
30- from partner_programs .serializers import UserProgramsSerializer
30+ from partner_programs .serializers import (
31+ UserProgramsSerializer ,
32+ PartnerProgramListSerializer ,
33+ )
3134from projects .serializers import ProjectListSerializer
3235from users .helpers import (
3336 reset_email ,
@@ -129,7 +132,7 @@ def patch(self, request, pk):
129132 return super ().patch (request , pk )
130133
131134
132- class CurrentUserPrograms (RetrieveAPIView ):
135+ class CurrentUserProgramsTags (RetrieveAPIView ):
133136 queryset = PartnerProgram .objects .all ()
134137 permission_classes = [IsAuthenticated ]
135138 serializer_class = UserProgramsSerializer
@@ -144,6 +147,21 @@ def get(self, request, *args, **kwargs):
144147 return Response (serializer .data , status = status .HTTP_200_OK )
145148
146149
150+ class CurrentUserPrograms (RetrieveAPIView ):
151+ queryset = PartnerProgram .objects .all ()
152+ permission_classes = [IsAuthenticated ]
153+ serializer_class = PartnerProgramListSerializer
154+
155+ def get (self , request , * args , ** kwargs ):
156+ user = User .objects .get (id = request .user .id )
157+ # fixme: mb hide finished programs
158+ programs = [
159+ profile .partner_program for profile in user .partner_program_profiles .all ()
160+ ]
161+ serializer = self .get_serializer (programs , many = True )
162+ return Response (serializer .data , status = status .HTTP_200_OK )
163+
164+
147165class CurrentUser (GenericAPIView ):
148166 queryset = User .objects .get_users_for_detail_view ()
149167 permission_classes = [IsAuthenticated ]
0 commit comments