2022-01-19 12:40:40 +00:00
{% extends "ereuse_devicehub/base_site.html" %}
{% block main %}
< div class = "pagetitle" >
2022-02-02 11:21:30 +00:00
< h1 > {{ page_title }}< / h1 >
2022-01-19 12:40:40 +00:00
< nav >
< ol class = "breadcrumb" >
2022-03-15 13:33:27 +00:00
< li class = "breadcrumb-item" > < a href = "{{ url_for('inventory.devicelist')}}" > Inventory< / a > < / li >
2022-02-02 11:21:30 +00:00
< li class = "breadcrumb-item" > {{ page_title }}< / li >
2022-01-19 12:40:40 +00:00
< / ol >
< / nav >
< / div > <!-- End Page Title -->
< section class = "section profile" >
< div class = "row" >
< div class = "col-xl-8" >
< div class = "card" >
< div class = "card-body" >
< div class = "pt-4 pb-2" >
{% if form.form_errors %}
< p class = "text-danger" >
{% for error in form.form_errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
< / div >
< form method = "post" class = "row g-3 needs-validation" novalidate >
{{ form.csrf_token }}
2022-03-04 17:50:47 +00:00
< div >
2022-01-19 12:40:40 +00:00
< div class = "form-group has-validation mb-2" >
< label for = "name" class = "form-label" > Type *< / label >
2022-07-05 16:09:47 +00:00
< select id = "type" class = "form-control" name = "type" required = "" { % if form . type . render_kw . disabled % } disabled = "disabled" { % endif % } >
2022-01-19 12:40:40 +00:00
< option value = "" > Select one Type< / option >
2022-06-29 09:51:03 +00:00
< optgroup label = "Computer" >
< option value = "Laptop"
{% if form.type.data == 'Laptop' %} selected="selected"{% endif %}>Laptop< / option >
< option value = "Desktop"
{% if form.type.data == 'Desktop' %} selected="selected"{% endif %}>Desktop< / option >
< option value = "Server"
{% if form.type.data == 'Server' %} selected="selected"{% endif %}>Server< / option >
< / optgroup >
2022-05-16 10:40:14 +00:00
< optgroup label = "Monitor" >
< option value = "ComputerMonitor"
2022-11-22 14:44:44 +00:00
{% if form.type.data == 'ComputerMonitor' %} selected="selected"{% endif %}>Computer Monitor< / option >
< option value = "Monitor"
{% if form.type.data == 'Monitor' %} selected="selected"{% endif %}>Monitor< / option >
< option value = "TelevisionSet"
{% if form.type.data == 'TelevisionSet' %} selected="selected"{% endif %}>TelevisionSet< / option >
< option value = "Projector"
{% if form.type.data == 'Projector' %} selected="selected"{% endif %}>Projector< / option >
2022-01-19 12:40:40 +00:00
< / optgroup >
< optgroup label = "Mobile" >
2022-01-24 12:48:16 +00:00
< option value = "Smartphone"
{% if form.type.data == 'Smartphone' %} selected="selected"{% endif %}>Smartphone< / option >
< option value = "Tablet"
{% if form.type.data == 'Tablet' %} selected="selected"{% endif %}>Tablet< / option >
< option value = "Cellphone"
{% if form.type.data == 'Cellphone' %} selected="selected"{% endif %}>Cellphone< / option >
2022-01-19 12:40:40 +00:00
< / optgroup >
2023-06-09 16:17:06 +00:00
< optgroup label = "Data Storage" >
< option value = "HardDrive"
{% if form.type.data == 'HardDrive' %} selected="selected"{% endif %}>HardDrive< / option >
< option value = "SolidStateDrive"
{% if form.type.data == 'SolidStateDrive' %} selected="selected"{% endif %}>SolidStateDrive< / option >
< / optgroup >
2022-01-19 12:40:40 +00:00
< optgroup label = "Computer Accessory" >
2022-01-24 12:48:16 +00:00
< option value = "Mouse"
{% if form.type.data == 'Mouse' %} selected="selected"{% endif %}>Mouse< / option >
< option value = "MemoryCardReader"
{% if form.type.data == 'MemoryCardReader' %} selected="selected"{% endif %}>Memory card reader< / option >
< option value = "SAI"
{% if form.type.data == 'SAI' %} selected="selected"{% endif %}>SAI< / option >
< option value = "Keyboard"
{% if form.type.data == 'Keyboard' %} selected="selected"{% endif %}>Keyboard< / option >
2022-01-19 12:40:40 +00:00
< / optgroup >
2022-11-29 15:49:23 +00:00
< optgroup label = "Other Type of Device" >
< option value = "Other"
{% if form.type.data == 'Other' %} selected="selected"{% endif %}>Other< / option >
< / optgroup >
2022-01-19 12:40:40 +00:00
< / select >
< small class = "text-muted form-text" > Type of devices< / small >
2022-01-20 12:13:20 +00:00
{% if form.type.errors %}
< p class = "text-danger" >
{% for error in form.type.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
2022-01-19 12:40:40 +00:00
< / div >
< div class = "form-group mb-2" >
2022-06-28 15:38:31 +00:00
< label for = "label" class = "form-label" > {{ form.amount.label }} *< / label >
{{ form.amount(class_="form-control") }}
< small class = "text-muted form-text" > Number of devices you want to create of this type< / small >
{% if form.amount.errors %}
< p class = "text-danger" >
{% for error in form.amount.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
< / div >
2022-10-05 07:18:42 +00:00
< div class = "form-group mb-2" id = "Id_device_supplier" >
< label for = "label" class = "form-label" > {{ form.id_device_supplier.label }}< / label >
{{ form.id_device_supplier(class_="form-control") }}
< small class = "text-muted form-text" > Identity of device for the Supplier< / small >
{% if form.id_device_supplier.errors %}
2022-06-28 15:38:31 +00:00
< p class = "text-danger" >
2022-10-05 07:18:42 +00:00
{% for error in form.id_device_supplier.errors %}
2022-06-28 15:38:31 +00:00
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
< / div >
2022-10-05 07:18:42 +00:00
< div class = "form-group mb-2" id = "Id_device_internal" >
< label for = "label" class = "form-label" > {{ form.id_device_internal.label }}< / label >
{{ form.id_device_internal(class_="form-control") }}
< small class = "text-muted form-text" > Identity of device for the internal< / small >
{% if form.id_device_internal.errors %}
2022-06-28 15:38:31 +00:00
< p class = "text-danger" >
2022-10-05 07:18:42 +00:00
{% for error in form.id_device_internal.errors %}
2022-06-28 15:38:31 +00:00
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
< / div >
< div class = "form-group mb-2" >
< label for = "label" class = "form-label" > {{ form.pallet.label }}< / label >
{{ form.pallet(class_="form-control") }}
< small class = "text-muted form-text" > Identity of pallet< / small >
{% if form.pallet.errors %}
< p class = "text-danger" >
{% for error in form.pallet.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
< / div >
< div class = "form-group mb-2" >
< label for = "label" class = "form-label" > {{ form.info.label }}< / label >
{{ form.info(class_="form-control") }}
< small class = "text-muted form-text" > Info extra< / small >
{% if form.info.errors %}
2022-01-20 12:13:20 +00:00
< p class = "text-danger" >
2022-06-28 15:38:31 +00:00
{% for error in form.info.errors %}
2022-01-20 12:13:20 +00:00
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
2022-01-19 12:40:40 +00:00
< / div >
2023-06-09 16:17:06 +00:00
< div id = "components2" class = "from-group mb-2" >
2022-08-09 08:49:56 +00:00
< label for = "label" class = "form-label" > {{ form.components.label }}< / label >
{{ form.components(class_="form-control") }}
< small class = "text-muted form-text" > Description of components< / small >
{% if form.components.errors %}
< p class = "text-danger" >
{% for error in form.components.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
< / div >
2022-09-13 16:15:50 +00:00
< div class = "from-group has-validation mb-2" id = "Part_number" >
< label for = "partNumber" class = "form-label" > {{ form.part_number.label }}< / label >
{{ form.part_number(class_="form-control") }}
< small class = "text-muted form-text" > Part number of this device< / small >
{% if form.part_number.errors %}
< p class = "text-danger" >
{% for error in form.part_number.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
< / div >
2022-06-29 15:31:54 +00:00
< div class = "from-group has-validation mb-2" id = "Serial_number" >
2022-06-28 15:38:31 +00:00
< label for = "serialNumber" class = "form-label" > {{ form.serial_number.label }}< / label >
2022-01-19 12:40:40 +00:00
{{ form.serial_number(class_="form-control") }}
< small class = "text-muted form-text" > Serial number of this device< / small >
2022-01-20 12:13:20 +00:00
{% if form.serial_number.errors %}
< p class = "text-danger" >
{% for error in form.serial_number.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
2022-01-19 12:40:40 +00:00
< / div >
< div class = "from-group has-validation mb-2" >
2022-06-28 15:38:31 +00:00
< label for = "model" class = "form-label" > {{ form.model.label }}< / label >
2022-01-19 12:40:40 +00:00
{{ form.model(class_="form-control") }}
< small class = "text-muted form-text" > Name of model< / small >
2022-01-20 12:13:20 +00:00
{% if form.model.errors %}
< p class = "text-danger" >
{% for error in form.model.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
2022-01-19 12:40:40 +00:00
< / div >
< div class = "from-group has-validation mb-2" >
2022-06-28 15:38:31 +00:00
< label for = "model" class = "form-label" > {{ form.manufacturer.label }}< / label >
2022-01-19 12:40:40 +00:00
{{ form.manufacturer(class_="form-control") }}
< small class = "text-muted form-text" > Name of manufacturer< / small >
2022-01-20 12:13:20 +00:00
{% if form.manufacturer.errors %}
< p class = "text-danger" >
{% for error in form.manufacturer.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
2022-01-19 12:40:40 +00:00
< / div >
< div class = "from-group has-validation mb-2" >
< label for = "model" class = "form-label" > {{ form.appearance.label }}< / label >
< div class = "form-check" >
2022-07-05 16:09:47 +00:00
< input class = "form-check-input" type = "radio" name = "appearance" value = "Z"
{% if form.appearance.data == 'Z' %}checked="cheked"{% endif %}>
2022-01-19 12:40:40 +00:00
< label class = "form-check-label" > 0. The device is new.< / label >
< / div >
< div class = "form-check" >
2022-07-05 16:09:47 +00:00
< input class = "form-check-input" type = "radio" name = "appearance" value = "A"
{% if form.appearance.data == 'A' %}checked="checked"{% endif %}>
2022-01-19 12:40:40 +00:00
< label class = "form-check-label" > A. Like new (no visual damage))< / label >
< / div >
< div class = "form-check" >
2022-07-05 16:09:47 +00:00
< input class = "form-check-input" type = "radio" name = "appearance" value = "B"
{% if form.appearance.data == 'B' %}checked="checked"{% endif %}>
2022-01-19 12:40:40 +00:00
< label class = "form-check-label" > B. In very good condition (small visual damage to hard-to-detect parts)< / label >
< / div >
< div class = "form-check" >
2022-07-05 16:09:47 +00:00
< input class = "form-check-input" type = "radio" name = "appearance" value = "C"
{% if form.appearance.data == 'C' %}checked="checked"{% endif %}>
2022-01-19 12:40:40 +00:00
< label class = "form-check-label" > C. In good condition (small visual damage to easy-to-detect parts, not the screen))< / label >
< / div >
< div class = "form-check" >
2022-07-05 16:09:47 +00:00
< input class = "form-check-input" type = "radio" name = "appearance" value = "D"
{% if form.appearance.data == 'D' %}checked="checked"{% endif %}>
2022-01-19 12:40:40 +00:00
< label class = "form-check-label" > D. It is acceptable (visual damage to visible parts, not on the screen)< / label >
< / div >
< div class = "form-check" >
2022-07-05 16:09:47 +00:00
< input class = "form-check-input" type = "radio" name = "appearance" value = "E"
{% if form.appearance.data == 'E' %}checked="checked"{% endif %}>
2022-01-19 12:40:40 +00:00
< label class = "form-check-label" > E. It is unacceptable (substantial visual damage that may affect use)< / label >
< / div >
< small class = "text-muted form-text" > Rate the imperfections that affect the device aesthetically, but not its use.< / small >
2022-01-20 12:13:20 +00:00
{% if form.appearance.errors %}
< p class = "text-danger" >
{% for error in form.appearance.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
2022-01-19 12:40:40 +00:00
< / div >
< div class = "from-group has-validation mb-2" >
< label for = "model" class = "form-label" > {{ form.functionality.label }}< / label >
< div class = "form-check" >
2022-07-05 16:09:47 +00:00
< input class = "form-check-input" type = "radio" name = "functionality" value = "A"
{% if form.functionality.data == 'A' %}checked="checked"{% endif %}>
2022-01-19 12:40:40 +00:00
< label class = "form-check-label" > A. Everything works perfectly (buttons, and no scratches on the screen)< / label >
< / div >
< div class = "form-check" >
2022-07-05 16:09:47 +00:00
< input class = "form-check-input" type = "radio" name = "functionality" value = "B"
{% if form.functionality.data == 'B' %}checked="checked"{% endif %}>
2022-01-19 12:40:40 +00:00
< label class = "form-check-label" > B. There is a hard to press button or small scratches on the corners of the screen< / label >
< / div >
< div class = "form-check" >
2022-07-05 16:09:47 +00:00
< input class = "form-check-input" type = "radio" name = "functionality" value = "C"
{% if form.functionality.data == 'C' %}checked="checked"{% endif %}>
2022-01-19 12:40:40 +00:00
< label class = "form-check-label" > C. A non-essential button does not work; the screen has multiple scratches on the corners< / label >
< / div >
< div class = "form-check" >
2022-07-05 16:09:47 +00:00
< input class = "form-check-input" type = "radio" name = "functionality" value = "D"
{% if form.functionality.data == 'D' %}checked="checked"{% endif %}>
2022-01-19 12:40:40 +00:00
< label class = "form-check-label" > D. Multiple buttons do not work properly; the screen has severe damage that may affect use< / label >
< / div >
< small class = "text-muted form-text" > It qualifies the defects of a device that affect its use.< / small >
2022-01-20 12:13:20 +00:00
{% if form.functionality.errors %}
< p class = "text-danger" >
{% for error in form.functionality.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
2022-01-19 12:40:40 +00:00
< / div >
< div class = "from-group has-validation mb-2" >
< label for = "model" class = "form-label" > {{ form.brand.label }}< / label >
{{ form.brand(class_="form-control") }}
< small class = "text-muted form-text" > A naming for consumers. This field can represent several models, so it can be ambiguous, and it is not used to identify the product.< / small >
2022-01-20 12:13:20 +00:00
{% if form.brand.errors %}
< p class = "text-danger" >
{% for error in form.brand.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
2022-01-19 12:40:40 +00:00
< / div >
< div class = "from-group has-validation mb-2" >
< label for = "model" class = "form-label" > {{ form.version.label }}< / label >
{{ form.version(class_="form-control") }}
< small class = "text-muted form-text" > The version code o fthis device, like 'v1' or 'A001'.< / small >
2022-01-20 12:13:20 +00:00
{% if form.version.errors %}
< p class = "text-danger" >
{% for error in form.version.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
2022-01-19 12:40:40 +00:00
< / div >
< div class = "from-group has-validation mb-2" >
2022-06-28 15:38:31 +00:00
< label for = "model" class = "form-label" > {{ form.weight.label }}< / label >
2022-01-19 12:40:40 +00:00
{{ form.weight(class_="form-control") }}
< small class = "text-muted form-text" > The weight of the device in Kg.< / small >
2022-01-20 12:13:20 +00:00
{% if form.weight.errors %}
< p class = "text-danger" >
{% for error in form.weight.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
2022-01-19 12:40:40 +00:00
< / div >
< div class = "from-group has-validation mb-2" >
2022-06-28 15:38:31 +00:00
< label for = "model" class = "form-label" > {{ form.width.label }}< / label >
2022-01-19 12:40:40 +00:00
{{ form.width(class_="form-control") }}
< small class = "text-muted form-text" > The width of the device in meters.< / small >
2022-01-20 12:13:20 +00:00
{% if form.width.errors %}
< p class = "text-danger" >
{% for error in form.width.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
2022-01-19 12:40:40 +00:00
< / div >
< div class = "from-group has-validation mb-2" >
2022-06-28 15:38:31 +00:00
< label for = "model" class = "form-label" > {{ form.height.label }}< / label >
2022-01-19 12:40:40 +00:00
{{ form.height(class_="form-control") }}
< small class = "text-muted form-text" > The height of the device in meters.< / small >
2022-01-20 12:13:20 +00:00
{% if form.height.errors %}
< p class = "text-danger" >
{% for error in form.height.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
2022-01-19 12:40:40 +00:00
< / div >
< div class = "from-group has-validation mb-2" >
2022-06-28 15:38:31 +00:00
< label for = "model" class = "form-label" > {{ form.depth.label }}< / label >
2022-01-19 12:40:40 +00:00
{{ form.depth(class_="form-control") }}
< small class = "text-muted form-text" > The depth of the device in meters.< / small >
2022-01-20 12:13:20 +00:00
{% if form.depth.errors %}
< p class = "text-danger" >
{% for error in form.depth.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
2022-01-19 12:40:40 +00:00
< / div >
< div class = "from-group has-validation mb-2" >
< label for = "model" class = "form-label" > {{ form.variant.label }}< / label >
{{ form.variant(class_="form-control") }}
< small class = "text-muted form-text" > A variant or sub-model of the device.< / small >
2022-01-20 12:13:20 +00:00
{% if form.variant.errors %}
< p class = "text-danger" >
{% for error in form.variant.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
2022-01-19 12:40:40 +00:00
< / div >
2022-06-29 15:31:54 +00:00
< div class = "from-group has-validation mb-2" id = "Sku" >
2022-01-19 12:40:40 +00:00
< label for = "model" class = "form-label" > {{ form.sku.label }}< / label >
{{ form.sku(class_="form-control") }}
< small class = "text-muted form-text" > The Stock Keeping Unit (SKU), i.e. a merchant-specific identifier for a product or service.< / small >
2022-01-20 12:13:20 +00:00
{% if form.sku.errors %}
< p class = "text-danger" >
{% for error in form.sku.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
2022-01-19 12:40:40 +00:00
< / div >
< div class = "from-group has-validation mb-2" >
< label for = "image" class = "form-label" > {{ form.image.label }}< / label >
{{ form.image(class_="form-control") }}
< small class = "text-muted form-text" > An URL containing an image of the device.< / small >
2022-01-20 12:13:20 +00:00
{% if form.image.errors %}
< p class = "text-danger" >
{% for error in form.image.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
2022-01-19 12:40:40 +00:00
< / div >
< div id = "imei" class = "from-group has-validation mb-2" >
< label for = "imei" class = "form-label" > {{ form.imei.label }}< / label >
{{ form.imei(class_="form-control") }}
< small class = "text-muted form-text" > A number from 14 to 16 digits.< / small >
2022-01-20 12:13:20 +00:00
{% if form.imei.errors %}
< p class = "text-danger" >
{% for error in form.imei.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
2022-01-19 12:40:40 +00:00
< / div >
< div id = "meid" class = "from-group has-validation mb-2" >
< label for = "meid" class = "form-label" > {{ form.meid.label }}< / label >
{{ form.meid(class_="form-control") }}
< small class = "text-muted form-text" > 14 hexadecimal digits.< / small >
2022-01-20 12:13:20 +00:00
{% if form.meid.errors %}
< p class = "text-danger" >
{% for error in form.meid.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
2022-01-19 12:40:40 +00:00
< / div >
2023-06-09 16:17:06 +00:00
< div id = "data_storage_size" class = "from-group mb-2" >
< label for = "data_storage_size" class = "form-label" > {{ form.data_storage_size.label }}< / label >
{{ form.data_storage_size(class_="form-control") }}
< small class = "text-muted form-text" > Size in GB.< / small >
{% if form.data_storage_size.errors %}
< p class = "text-danger" >
{% for error in form.data_storage_size.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
< / div >
2022-01-19 12:40:40 +00:00
< div id = "resolution" class = "from-group has-validation mb-2" >
< label for = "resolution" class = "form-label" > {{ form.resolution.label }}< / label >
{{ form.resolution(class_="form-control") }}
< small class = "text-muted form-text" > The resolution width of the screen.< / small >
2022-01-20 12:13:20 +00:00
{% if form.resolution.errors %}
< p class = "text-danger" >
{% for error in form.resolution.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
2022-01-19 12:40:40 +00:00
< / div >
< div id = "screen" class = "from-group has-validation mb-2" >
< label for = "screen" class = "form-label" > {{ form.screen.label }}< / label >
{{ form.screen(class_="form-control") }}
< small class = "text-muted form-text" > The size of the screen.< / small >
2022-01-20 12:13:20 +00:00
{% if form.screen.errors %}
< p class = "text-danger" >
{% for error in form.screen.errors %}
{{ error }}< br / >
{% endfor %}
< / p >
{% endif %}
2022-01-19 12:40:40 +00:00
< / div >
< / div >
2022-03-04 17:50:47 +00:00
< div >
2022-03-08 16:43:15 +00:00
{% if lot_id %}
2022-03-15 13:33:27 +00:00
< a href = "{{ url_for('inventory.lotdevicelist', lot_id=lot_id) }}" class = "btn btn-danger" > Cancel< / a >
2022-03-08 16:43:15 +00:00
{% else %}
2022-03-15 13:33:27 +00:00
< a href = "{{ url_for('inventory.devicelist') }}" class = "btn btn-danger" > Cancel< / a >
2022-03-08 16:43:15 +00:00
{% endif %}
2022-01-19 12:40:40 +00:00
< button class = "btn btn-primary" type = "submit" > Save< / button >
< / div >
< / form >
< / div >
< / div >
< / div >
< div class = "col-xl-8" >
< / div >
< / div >
< / section >
< script src = "{{ url_for('static', filename='js/create_device.js') }}" > < / script >
{% endblock main %}