|
20 | 20 | # VulnerableCode is a free software code scanning tool from nexB Inc. and others. |
21 | 21 | # Visit https://github.com/nexB/vulnerablecode/ for support and download. |
22 | 22 |
|
| 23 | +from django.core.paginator import Paginator |
23 | 24 | from django.shortcuts import render |
24 | 25 | from django.urls import reverse |
25 | 26 | from django.views.generic.list import ListView |
@@ -66,19 +67,21 @@ class VulnerabilitySearchView(View): |
66 | 67 |
|
67 | 68 | def get(self, request): |
68 | 69 | context = {"form": forms.VulnerabilitySearchForm()} |
69 | | - |
| 70 | + print(request.GET) |
70 | 71 | if request.GET: |
71 | 72 | vulnerabilities = self.request_to_queryset(request) |
| 73 | + pages = Paginator(vulnerabilities, 50) |
| 74 | + vulnerabilities = pages.get_page(int(self.request.GET.get('page', 1))) |
72 | 75 | context["vulnerabilities"] = vulnerabilities |
| 76 | + context["searched_for"] = request.GET.get("vuln_id") |
73 | 77 |
|
74 | 78 | return render(request, self.template_name, context) |
75 | 79 |
|
76 | 80 | @staticmethod |
77 | 81 | def request_to_queryset(request): |
78 | | - |
79 | 82 | if request.GET["vuln_id"]: |
80 | 83 | vuln_id = request.GET["vuln_id"] |
81 | | - return models.Vulnerability.objects.filter(cve_id__contains=vuln_id).select_related() |
| 84 | + return models.Vulnerability.objects.filter(cve_id__contains=vuln_id) |
82 | 85 |
|
83 | 86 |
|
84 | 87 | class PackageUpdate(UpdateView): |
@@ -183,7 +186,6 @@ def get_form(self, *args, **kwargs): |
183 | 186 | return form |
184 | 187 |
|
185 | 188 | def form_valid(self, form): |
186 | | - |
187 | 189 | is_vulnerable = "impacted" in self.request.headers["Referer"] |
188 | 190 | package = models.Package.objects.get(id=self.kwargs["pid"]) |
189 | 191 | form.instance.package = package |
|
0 commit comments