3232from vulnerabilities import forms
3333from vulnerabilities import models
3434
35+
3536class PackageSearchView (View ):
3637 template_name = 'packages.html'
3738
3839 def get (self , request ):
3940 context = {'form' : forms .PackageForm ()}
4041
41- if request .GET :
42+ if request .GET :
4243 packages = self .request_to_queryset (request )
4344 context ['packages' ] = packages
4445
@@ -47,25 +48,26 @@ def get(self, request):
4748 @staticmethod
4849 def request_to_queryset (request ):
4950 query = {}
50- if len (request .GET ['name' ]) :
51+ if len (request .GET ['name' ]):
5152 query ['name' ] = request .GET ['name' ]
5253
53- if request .GET ['type' ] and request .GET ['type' ] != '*' :
54+ if request .GET ['type' ] and request .GET ['type' ] != '*' :
5455 query ['type' ] = request .GET ['type' ]
5556
56- if len (request .GET ['version' ]) :
57+ if len (request .GET ['version' ]):
5758 query ['version' ] = request .GET ['version' ]
5859
5960 return models .Package .objects .all ().filter (** query )
6061
62+
6163class VulnerabilitySearchView (View ):
6264
6365 template_name = 'vulnerabilities.html'
6466
6567 def get (self , request ):
66- context = {'form' : forms .VulnerabilitySearchForm () }
68+ context = {'form' : forms .VulnerabilitySearchForm ()}
6769
68- if request .GET :
70+ if request .GET :
6971 vulnerabilities = self .request_to_queryset (request )
7072 context ['vulnerabilities' ] = vulnerabilities
7173
@@ -74,10 +76,11 @@ def get(self, request):
7476 @staticmethod
7577 def request_to_queryset (request ):
7678
77- if request .GET ['vuln_id' ] :
79+ if request .GET ['vuln_id' ]:
7880 vuln_id = request .GET ['vuln_id' ]
7981 return models .Vulnerability .objects .filter (cve_id__contains = vuln_id ).select_related ()
8082
83+
8184class PackageUpdate (UpdateView ):
8285
8386 template_name = 'package_update.html'
@@ -86,38 +89,43 @@ class PackageUpdate(UpdateView):
8689
8790 def get_context_data (self , ** kwargs ):
8891 context = super (PackageUpdate , self ).get_context_data (** kwargs )
89- resolved_vuln , unresolved_vuln = self ._package_vulnerabilities (self .kwargs ['pk' ])
92+ resolved_vuln , unresolved_vuln = self ._package_vulnerabilities (
93+ self .kwargs ['pk' ])
9094 context ['resolved_vuln' ] = resolved_vuln
9195 context ['impacted_vuln' ] = unresolved_vuln
9296
9397 return context
9498
95- def _package_vulnerabilities (self , package_pk ) :
99+ def _package_vulnerabilities (self , package_pk ):
96100
97- ip = models .PackageRelatedVulnerability .objects .filter (package_id = package_pk , is_vulnerable = True ).select_related ()
98- rp = models .PackageRelatedVulnerability .objects .filter (package_id = package_pk , is_vulnerable = False ).select_related ()
101+ ip = models .PackageRelatedVulnerability .objects .filter (
102+ package_id = package_pk , is_vulnerable = True ).select_related ()
103+ rp = models .PackageRelatedVulnerability .objects .filter (
104+ package_id = package_pk , is_vulnerable = False ).select_related ()
99105
100- resolved_vuln = [i .vulnerability for i in rp ]
101- unresolved_vuln = [i .vulnerability for i in ip ]
106+ resolved_vuln = [i .vulnerability for i in rp ]
107+ unresolved_vuln = [i .vulnerability for i in ip ]
102108
103109 return resolved_vuln , unresolved_vuln
104110
105-
106111 def get_success_url (self ):
107112 return ''
108113
114+
109115class VulnerabilityDetails (ListView ):
110116 template_name = 'vulnerability.html'
111117 model = models .VulnerabilityReference
112118
113119 def get_context_data (self , ** kwargs ):
114120 context = super (VulnerabilityDetails , self ).get_context_data (** kwargs )
115- context ['vulnerability' ] = models .Vulnerability .objects .get (id = self .kwargs ['pk' ])
121+ context ['vulnerability' ] = models .Vulnerability .objects .get (
122+ id = self .kwargs ['pk' ])
116123 return context
117124
118125 def get_queryset (self ):
119126 return models .VulnerabilityReference .objects .filter (vulnerability_id = self .kwargs ['pk' ])
120127
128+
121129class VulnerabilityCreate (CreateView ):
122130
123131 template_name = 'vulnerability_create.html'
@@ -126,30 +134,35 @@ class VulnerabilityCreate(CreateView):
126134
127135 def get_success_url (self ):
128136
129- return reverse ('vulnerability_view' , kwargs = {'pk' :self .object .id })
137+ return reverse ('vulnerability_view' , kwargs = {'pk' : self .object .id })
138+
130139
131140class PackageCreate (CreateView ):
132141
133142 template_name = 'package_create.html'
134143 model = models .Package
135- fields = ['name' ,'namespace' ,'type' ,'version' ]
144+ fields = ['name' , 'namespace' , 'type' , 'version' ]
136145
137146 def get_success_url (self ):
138- return reverse ('package_view' , kwargs = {'pk' : self .object .id })
147+ return reverse ('package_view' , kwargs = {'pk' : self .object .id })
139148
140- # TODO : Squash ImpactedPackageDelete ResolvedPackageDelete into one
149+ # TODO : Squash ImpactedPackageDelete ResolvedPackageDelete into one
141150# 'PackageRelatedVulnerablityDelete' view
151+
152+
142153class ResolvedPackageDelete (DeleteView ):
143154
144155 model = models .PackageRelatedVulnerability
145156
146157 def get_object (self ):
147158 package_id = self .kwargs .get ('pid' )
148159 vulnerability_id = self .kwargs .get ('vid' )
149- return models .PackageRelatedVulnerability .objects .get (package_id = package_id , vulnerability_id = vulnerability_id , is_vulnerable = False )
160+ return models .PackageRelatedVulnerability .objects .get (
161+ package_id = package_id , vulnerability_id = vulnerability_id , is_vulnerable = False )
150162
151163 def get_success_url (self ):
152- return reverse ('package_view' , kwargs = {'pk' : self .kwargs .get ('pid' )})
164+ return reverse ('package_view' , kwargs = {'pk' : self .kwargs .get ('pid' )})
165+
153166
154167class ImpactedPackageDelete (DeleteView ):
155168
@@ -158,10 +171,12 @@ class ImpactedPackageDelete(DeleteView):
158171 def get_object (self ):
159172 package_id = self .kwargs .get ('pid' )
160173 vulnerability_id = self .kwargs .get ('vid' )
161- return models .PackageRelatedVulnerability .objects .get (package_id = package_id , vulnerability_id = vulnerability_id , is_vulnerable = True )
174+ return models .PackageRelatedVulnerability .objects .get (
175+ package_id = package_id , vulnerability_id = vulnerability_id , is_vulnerable = True )
162176
163177 def get_success_url (self ):
164- return reverse ('package_view' , kwargs = {'pk' : self .kwargs .get ('pid' )})
178+ return reverse ('package_view' , kwargs = {'pk' : self .kwargs .get ('pid' )})
179+
165180
166181class HomePage (View ):
167182
@@ -170,13 +185,14 @@ class HomePage(View):
170185 def get (self , request ):
171186 return render (request , self .template_name )
172187
173- # TODO : Squash ImpactedPackageCreate ResolvedPackageCreate into one
188+ # TODO : Squash ImpactedPackageCreate ResolvedPackageCreate into one
174189# 'PackageRelatedVulnerablityCreate' view
175190
191+
176192class ImpactedPackageCreate (CreateView ):
177193
178194 template_name = 'impacted_package_create.html'
179- model = models .PackageRelatedVulnerability
195+ model = models .PackageRelatedVulnerability
180196 fields = ['vulnerability' ]
181197
182198 def form_valid (self , form ):
@@ -189,14 +205,14 @@ def form_valid(self, form):
189205 def get_success_url (self ):
190206 return reverse ('package_view' , kwargs = {'pk' : self .kwargs ['pid' ]})
191207
208+
192209class ResolvedPackageCreate (CreateView ):
193210
194211 template_name = 'resolved_package_create.html'
195- model = models .PackageRelatedVulnerability
212+ model = models .PackageRelatedVulnerability
196213 fields = ['vulnerability' ]
197214
198215 def form_valid (self , form ):
199- print (self .request )
200216 package = models .Package .objects .get (id = self .kwargs ['pid' ])
201217 form .instance .package = package
202218 form .instance .is_vulnerable = False
@@ -205,15 +221,17 @@ def form_valid(self, form):
205221 def get_success_url (self ):
206222 return reverse ('package_view' , kwargs = {'pk' : self .kwargs ['pid' ]})
207223
224+
208225class VulnerabilityReferenceCreate (CreateView ):
209226
210227 template_name = 'vulnerability_reference_create.html'
211228 model = models .VulnerabilityReference
212- fields = ['reference_id' ,'url' ]
229+ fields = ['reference_id' , 'url' ]
213230
214231 def form_valid (self , form ):
215- form .instance .vulnerability = models .Vulnerability .objects .get (id = self .kwargs ['vid' ])
232+ form .instance .vulnerability = models .Vulnerability .objects .get (
233+ id = self .kwargs ['vid' ])
216234 return super (VulnerabilityReferenceCreate , self ).form_valid (form )
217-
235+
218236 def get_success_url (self ):
219- return reverse ('vulnerability_view' , kwargs = {'pk' : self .kwargs ['vid' ]})
237+ return reverse ('vulnerability_view' , kwargs = {'pk' : self .kwargs ['vid' ]})
0 commit comments