Exemple #1
0
    def get_context_data(self, **kwargs):
        context = super().get_context_data(**kwargs)
        exchanges = self.get_queryset()
        page = self.request.GET.get('page')
        paginator = Paginator(exchanges, self.paginate_by)
        context['exchanges'] = get_pagination_data(paginator, page)

        client = self.request.GET.get('client')
        email_client = self.request.GET.get('email')
        email_member = self.request.GET.get('email-member')
        if email_client:
            self.additional_params += f"&email={email_client}"
            if client == "hacker":
                try:
                    hacker = Hacker.objects.get(email=email_client)
                except Hacker.DoesNotExist:
                    pass
                else:
                    self.additional_params += '&client=hacker'
                    context['hacker'] = hacker
            elif client == "startup":
                try:
                    startup = Startup.objects.get(email=email_client)
                except Startup.DoesNotExist:
                    pass
                else:
                    self.additional_params += '&client=startup'
                    context['startup'] = startup
        if email_member:
            self.additional_params += f"&email-member={email_member}"
        context['additional_params'] = self.additional_params
        context['result_filter'] = self.result_filter
        return context
Exemple #2
0
 def get_context_data(self, **kwargs):
     context = super(JobPositionListView, self).get_context_data(**kwargs)
     job_positions = self.get_queryset()
     page = self.request.GET.get('page')
     paginator = Paginator(job_positions, self.paginate_by)
     context['job_positions'] = get_pagination_data(paginator, page)
     return context
Exemple #3
0
 def get_context_data(self, **kwargs):
     context = super(StartupListView, self).get_context_data(**kwargs)
     startups = self.get_queryset()
     page = self.request.GET.get('page')
     paginator = Paginator(startups, self.paginate_by)
     context['startups'] = get_pagination_data(paginator, page)
     return context
Exemple #4
0
    def get_context_data(self, **kwargs):
        context = super(HackerListView, self).get_context_data(**kwargs)
        hackers = self.get_queryset()
        page = self.request.GET.get('page')
        paginator = Paginator(hackers, self.paginate_by)

        position_id = self.request.GET.get('position')
        if position_id:
            context['additional_params'] = f"&position={position_id}"
            context['position'] = JobPosition.objects.get(pk=position_id)

        context['hackers'] = get_pagination_data(paginator, page)
        return context
Exemple #5
0
def client_index(request):
    page = request.GET.get('page')
    client_type = request.GET.get('client-type')
    search_text = request.GET.get('search-text', '')
    paginate_by = 15

    if client_type == "hackers":
        hackers = Hacker.objects.all()
        if search_text:
            hackers = hackers.filter(
                Q(email__icontains=search_text)
                | Q(first_name__icontains=search_text)
                | Q(last_name__icontains=search_text))
        paginator = Paginator(hackers, paginate_by)
        client_count = Hacker.objects.count()

    else:
        startups = Startup.objects.all()
        if search_text:
            startups = startups.filter(
                Q(email__icontains=search_text)
                | Q(name__icontains=search_text)
                | Q(country__icontains=search_text))
        paginator = Paginator(startups, paginate_by)
        client_type = "startups"
        client_count = Startup.objects.count()

    pagination_values = get_pagination_data(paginator, page)

    context = {
        'client_type': client_type,
        'paginator': paginator,
        'client_count': client_count,
        'search_text': search_text,
        client_type: pagination_values
    }

    return render(request, 'clients/client_index.html', context)