From ccaa8834dcc157a615695792289deb2d2580c35d Mon Sep 17 00:00:00 2001 From: Cayo Puigdefabregas Date: Tue, 11 Feb 2025 17:25:30 +0100 Subject: [PATCH 01/12] fix bug --- did/views.py | 6 +++--- evidence/mixin_parse.py | 2 ++ 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/did/views.py b/did/views.py index e0a59e6..c53d47f 100644 --- a/did/views.py +++ b/did/views.py @@ -106,10 +106,10 @@ class PublicDeviceWebView(TemplateView): 'device': {}, } dev = Build(self.object.last_evidence.doc, None, check=True) - doc = dev.get_phid() + doc = dev.get_doc() data['document'] = json.dumps(doc) - data['device'] = dev.device - data['components'] = dev.components + data['device'] = doc.device + data['components'] = doc.components self.object.get_evidences() last_dpp = Proof.objects.filter( diff --git a/evidence/mixin_parse.py b/evidence/mixin_parse.py index 58351fb..8e99747 100644 --- a/evidence/mixin_parse.py +++ b/evidence/mixin_parse.py @@ -52,6 +52,8 @@ class BuildMix: for c in components: doc.append((c.get("type"), self.get_id_hw_dpp(c))) + return doc + def get_id_hw_dpp(self, d): algorithm = ALGOS.get("ereuse22", []) hid = "" -- 2.30.2 From 0903f53f8b612592e682bf08083d312d7e45e036 Mon Sep 17 00:00:00 2001 From: Cayo Puigdefabregas Date: Wed, 12 Feb 2025 09:20:14 +0100 Subject: [PATCH 02/12] fix get_doc with build.get_doc --- did/views.py | 2 +- dpp/views.py | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/did/views.py b/did/views.py index c53d47f..9294e0b 100644 --- a/did/views.py +++ b/did/views.py @@ -106,7 +106,7 @@ class PublicDeviceWebView(TemplateView): 'device': {}, } dev = Build(self.object.last_evidence.doc, None, check=True) - doc = dev.get_doc() + doc = dev.build.get_doc() data['document'] = json.dumps(doc) data['device'] = doc.device data['components'] = doc.components diff --git a/dpp/views.py b/dpp/views.py index 13753c2..27ca1e6 100644 --- a/dpp/views.py +++ b/dpp/views.py @@ -12,7 +12,7 @@ from dpp.models import Proof class ProofView(View): - + def get(self, request, *args, **kwargs): timestamp = kwargs.get("proof_id") proof = Proof.objects.filter(timestamp=timestamp).first() @@ -22,9 +22,9 @@ class ProofView(View): ev = Evidence(proof.uuid) if not ev.doc: return JsonResponse({}, status=404) - + dev = Build(ev.doc, None, check=True) - doc = dev.get_phid() + doc = dev.build.get_doc() data = { "algorithm": ALGORITHM, -- 2.30.2 From 8d37932aa0b44e44ef90855b4026d8dd9639ea5c Mon Sep 17 00:00:00 2001 From: Cayo Puigdefabregas Date: Wed, 12 Feb 2025 10:18:43 +0100 Subject: [PATCH 03/12] fix document --- did/views.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/did/views.py b/did/views.py index 9294e0b..b5c6365 100644 --- a/did/views.py +++ b/did/views.py @@ -107,9 +107,16 @@ 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'] = doc.device - data['components'] = doc.components + data['device'] = device + data['components'] = components self.object.get_evidences() last_dpp = Proof.objects.filter( -- 2.30.2 From f91818e515997574c7407edcf86d957755e76337 Mon Sep 17 00:00:00 2001 From: Cayo Puigdefabregas Date: Wed, 12 Feb 2025 12:18:30 +0100 Subject: [PATCH 04/12] fix de correct device in document --- did/views.py | 13 +++---------- evidence/legacy_parse.py | 5 +++++ evidence/mixin_parse.py | 2 -- evidence/normal_parse.py | 5 +++++ evidence/old_parse.py | 12 ++++++------ 5 files changed, 19 insertions(+), 18 deletions(-) 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", []) -- 2.30.2 From 74d48c173bd83bde0a71a36ada7bc33fa34bdb20 Mon Sep 17 00:00:00 2001 From: Cayo Puigdefabregas Date: Wed, 12 Feb 2025 17:00:34 +0100 Subject: [PATCH 05/12] fix dev.build --- did/views.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/did/views.py b/did/views.py index 08df519..df31104 100644 --- a/did/views.py +++ b/did/views.py @@ -108,8 +108,8 @@ class PublicDeviceWebView(TemplateView): dev = Build(self.object.last_evidence.doc, None, check=True) doc = dev.build.get_doc() data['document'] = json.dumps(doc) - data['device'] = dev.device - data['components'] = dev.components + data['device'] = dev.build.device + data['components'] = dev.build.components self.object.get_evidences() last_dpp = Proof.objects.filter( -- 2.30.2 From 8edfaa1bc581473abf80b6ba6c65d53707b38a2b Mon Sep 17 00:00:00 2001 From: Cayo Puigdefabregas Date: Thu, 13 Feb 2025 11:43:46 +0100 Subject: [PATCH 06/12] fix get did from chir and add dpp template for details of device --- device/templates/details.html | 2 ++ device/templates/tabs/dpps.html | 18 ++++++++++++++++++ did/views.py | 6 +++--- 3 files changed, 23 insertions(+), 3 deletions(-) create mode 100644 device/templates/tabs/dpps.html diff --git a/device/templates/details.html b/device/templates/details.html index dd64d6f..23ff323 100644 --- a/device/templates/details.html +++ b/device/templates/details.html @@ -103,6 +103,8 @@ {% include 'tabs/evidences.html' %} + {% include 'tabs/dpps.html' %} +