diff --git a/did/views.py b/did/views.py index b5c6365..08df519 100644 --- a/did/views.py +++ b/did/views.py @@ -107,16 +107,9 @@ class PublicDeviceWebView(TemplateView): } dev = Build(self.object.last_evidence.doc, None, check=True) doc = dev.build.get_doc() - components = [x for x in doc if x[0] != "computer"] - device = '' - - for d in doc: - if d[0] == "computer": - device = d[1] - data['document'] = json.dumps(doc) - data['device'] = device - data['components'] = components + data['device'] = dev.device + data['components'] = dev.components self.object.get_evidences() last_dpp = Proof.objects.filter( @@ -142,7 +135,7 @@ class PublicDeviceWebView(TemplateView): for d in self.object.evidences: d.get_doc() dev = Build(d.doc, None, check=True) - doc = dev.get_phid() + doc = dev.build.get_doc() ev = json.dumps(doc) phid = dev.get_signature(doc) dpp = "{}:{}".format(self.pk, phid) diff --git a/evidence/legacy_parse.py b/evidence/legacy_parse.py index 1d9f6a0..6d65786 100644 --- a/evidence/legacy_parse.py +++ b/evidence/legacy_parse.py @@ -66,4 +66,9 @@ class Build(BuildMix): def _get_components(self): data = ParseSnapshot(self.json) + self.device = data.device self.components = data.components + + self.device.pop("actions", None) + for c in self.components: + c.pop("actions", None) diff --git a/evidence/mixin_parse.py b/evidence/mixin_parse.py index 8e99747..5c10022 100644 --- a/evidence/mixin_parse.py +++ b/evidence/mixin_parse.py @@ -41,8 +41,6 @@ class BuildMix: def get_doc(self): self._get_components() - for c in self.components: - c.pop("actions", None) components = sorted(self.components, key=lambda x: x.get("type")) device = self.algorithms.get('ereuse22') diff --git a/evidence/normal_parse.py b/evidence/normal_parse.py index f0a8600..bcf85c8 100644 --- a/evidence/normal_parse.py +++ b/evidence/normal_parse.py @@ -61,4 +61,9 @@ class Build(BuildMix): def _get_components(self): data = ParseSnapshot(self.json) + self.device = data.device self.components = data.components + + self.device.pop("actions", None) + for c in self.components: + c.pop("actions", None) diff --git a/evidence/old_parse.py b/evidence/old_parse.py index 8a3ac29..7af0c5d 100644 --- a/evidence/old_parse.py +++ b/evidence/old_parse.py @@ -11,12 +11,12 @@ class Build(BuildMix): # normaly is worbench 11 def get_details(self): - device = self.json.get('device', {}) - self.manufacturer = device.get("manufacturer", '') - self.model = device.get("model", '') - self.chassis = device.get("chassis", '') - self.serial_number = device.get("serialNumber", '') - self.sku = device.get("sku", '') + self.device = self.json.get('device', {}) + self.manufacturer = self.device.get("manufacturer", '') + self.model = self.device.get("model", '') + self.chassis = self.device.get("chassis", '') + self.serial_number = self.device.get("serialNumber", '') + self.sku = self.device.get("sku", '') def _get_components(self): self.components = self.json.get("components", [])