This repository has been archived by the owner on Mar 15, 2018. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 235
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
add vulnerabilitystatus to blocklist (bug 778365)
- Loading branch information
Showing
6 changed files
with
78 additions
and
4 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
from django import forms | ||
|
||
from .models import BlocklistPlugin | ||
|
||
|
||
class BlocklistPluginForm(forms.ModelForm): | ||
class Meta: | ||
model = BlocklistPlugin | ||
|
||
def clean(self): | ||
severity = self.cleaned_data.get('severity') | ||
vulnerability = self.cleaned_data.get('vulnerability_status') | ||
|
||
if severity and vulnerability: | ||
raise forms.ValidationError( | ||
'Vulnerability status must be blank if Severity is non zero') | ||
|
||
return self.cleaned_data |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -91,6 +91,10 @@ class BlocklistPlugin(BlocklistBase, amo.models.ModelBase): | |
description = models.CharField(max_length=255, blank=True, null=True) | ||
filename = models.CharField(max_length=255, blank=True, null=True) | ||
severity = models.SmallIntegerField(blank=True, null=True) | ||
vulnerability_status = models.SmallIntegerField(blank=True, null=True, | ||
choices= | ||
((1, 'update available'), | ||
(2, 'update unavailable'))) | ||
details = models.OneToOneField(BlocklistDetail, null=True) | ||
|
||
class Meta(amo.models.ModelBase.Meta): | ||
|
@@ -100,6 +104,16 @@ def __unicode__(self): | |
return '%s: %s - %s' % (self.name or self.guid or self.filename, | ||
self.min, self.max) | ||
|
||
@property | ||
def get_vulnerability_status(self): | ||
"""Returns vulnerability status per bug 778365 | ||
Returns None when criteria aren't met so jinja2 excludes it from when | ||
using the attrs filter. | ||
""" | ||
if self.severity == 0 and self.vulnerability_status in (1,2): | ||
This comment has been minimized.
Sorry, something went wrong.
This comment has been minimized.
Sorry, something went wrong.
wraithan
Author
Contributor
|
||
return self.vulnerability_status | ||
|
||
def flush_urls(self): | ||
return ['/blocklist*'] # no lang/app | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
alter table blplugins add column vulnerability_status tinyint(1) unsigned default null; |
the
in (1,2)
seems superfluous