From 3e2ed58b079d256ec8306996858aeab64cdd9d05 Mon Sep 17 00:00:00 2001 From: Cayo Puigdefabregas Date: Wed, 29 Jun 2022 13:40:00 +0200 Subject: [PATCH] add number of devices to be created --- ereuse_devicehub/inventory/forms.py | 14 +++++++++++--- ereuse_devicehub/static/js/create_device.js | 13 ++++++++++++- .../templates/inventory/device_create.html | 2 +- 3 files changed, 24 insertions(+), 5 deletions(-) diff --git a/ereuse_devicehub/inventory/forms.py b/ereuse_devicehub/inventory/forms.py index 2857f34a..f5420e73 100644 --- a/ereuse_devicehub/inventory/forms.py +++ b/ereuse_devicehub/inventory/forms.py @@ -403,7 +403,7 @@ class NewDeviceForm(FlaskForm): self.meid.errors = error is_valid = False - if self.phid.data: + if self.phid.data and self.amount.data == 1: dev = Device.query.filter_by( hid=self.phid.data, owner=g.user, active=True ).first() @@ -427,6 +427,16 @@ class NewDeviceForm(FlaskForm): return True def save(self, commit=True): + if self.amount.data > 1: + self.phid.data = None + + for n in range(self.amount.data): + self.create_device() + + if commit: + db.session.commit() + + def create_device(self): json_snapshot = { 'type': 'Snapshot', @@ -494,8 +504,6 @@ class NewDeviceForm(FlaskForm): snapshot.device.resolution = self.resolution.data snapshot.device.screen = self.screen.data - if commit: - db.session.commit() return snapshot def get_placeholder(self): diff --git a/ereuse_devicehub/static/js/create_device.js b/ereuse_devicehub/static/js/create_device.js index 53d77dfa..54bd1d0c 100644 --- a/ereuse_devicehub/static/js/create_device.js +++ b/ereuse_devicehub/static/js/create_device.js @@ -1,6 +1,8 @@ $(document).ready(() => { $("#type").on("change", deviceInputs); + $("#amount").on("change", amountInputs); deviceInputs(); + amountInputs(); }) function deviceInputs() { @@ -19,5 +21,14 @@ function deviceInputs() { $("#resolution").hide(); $("#imei").hide(); $("#meid").hide(); - } + }; + amountInputs(); +} + +function amountInputs() { + if ($("#amount").val() > 1) { + $("#Phid").hide(); + } else { + $("#Phid").show(); + }; } diff --git a/ereuse_devicehub/templates/inventory/device_create.html b/ereuse_devicehub/templates/inventory/device_create.html index c36e2e79..abd45cdb 100644 --- a/ereuse_devicehub/templates/inventory/device_create.html +++ b/ereuse_devicehub/templates/inventory/device_create.html @@ -90,7 +90,7 @@ {% endif %} -
+
{{ form.phid(class_="form-control") }} Label that you want link to this device