mirror of
https://github.com/inventree/InvenTree
synced 2024-08-30 18:33:04 +00:00
Remove client-side length validation in form inputs (#3911)
* Remove client-side length validation in form inputs - Let the server throw an error (so the user sees it) * Update instances of models.URLField to InvenTreeURLField
This commit is contained in:
parent
fb77158496
commit
57a20be5c3
@ -38,10 +38,8 @@ class InvenTreeURLField(models.URLField):
|
||||
def __init__(self, **kwargs):
|
||||
"""Initialization method for InvenTreeURLField"""
|
||||
|
||||
# Max length for InvenTreeURLField defaults to 200
|
||||
if 'max_length' not in kwargs:
|
||||
kwargs['max_length'] = 200
|
||||
|
||||
# Max length for InvenTreeURLField is set to 200
|
||||
kwargs['max_length'] = 200
|
||||
super().__init__(**kwargs)
|
||||
|
||||
|
||||
|
@ -21,7 +21,7 @@ from rest_framework.serializers import DecimalField
|
||||
from rest_framework.utils import model_meta
|
||||
|
||||
from common.models import InvenTreeSetting
|
||||
from InvenTree.fields import InvenTreeRestURLField
|
||||
from InvenTree.fields import InvenTreeRestURLField, InvenTreeURLField
|
||||
from InvenTree.helpers import download_image_from_url
|
||||
|
||||
|
||||
@ -73,6 +73,7 @@ class InvenTreeModelSerializer(serializers.ModelSerializer):
|
||||
serializer_field_mapping = {
|
||||
**serializers.ModelSerializer.serializer_field_mapping,
|
||||
models.URLField: InvenTreeRestURLField,
|
||||
InvenTreeURLField: InvenTreeRestURLField,
|
||||
}
|
||||
|
||||
def __init__(self, instance=None, data=empty, **kwargs):
|
||||
|
19
InvenTree/company/migrations/0050_alter_company_website.py
Normal file
19
InvenTree/company/migrations/0050_alter_company_website.py
Normal file
@ -0,0 +1,19 @@
|
||||
# Generated by Django 3.2.16 on 2022-11-10 01:08
|
||||
|
||||
import InvenTree.fields
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('company', '0049_company_metadata'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='company',
|
||||
name='website',
|
||||
field=InvenTree.fields.InvenTreeURLField(blank=True, help_text='Company website URL', verbose_name='Website'),
|
||||
),
|
||||
]
|
@ -101,7 +101,7 @@ class Company(MetadataMixin, models.Model):
|
||||
blank=True,
|
||||
)
|
||||
|
||||
website = models.URLField(
|
||||
website = InvenTreeURLField(
|
||||
blank=True,
|
||||
verbose_name=_('Website'),
|
||||
help_text=_('Company website URL')
|
||||
|
29
InvenTree/order/migrations/0075_auto_20221110_0108.py
Normal file
29
InvenTree/order/migrations/0075_auto_20221110_0108.py
Normal file
@ -0,0 +1,29 @@
|
||||
# Generated by Django 3.2.16 on 2022-11-10 01:08
|
||||
|
||||
import InvenTree.fields
|
||||
from django.db import migrations
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('order', '0074_auto_20220709_0108'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='purchaseorder',
|
||||
name='link',
|
||||
field=InvenTree.fields.InvenTreeURLField(blank=True, help_text='Link to external page', verbose_name='Link'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='salesorder',
|
||||
name='link',
|
||||
field=InvenTree.fields.InvenTreeURLField(blank=True, help_text='Link to external page', verbose_name='Link'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='salesordershipment',
|
||||
name='link',
|
||||
field=InvenTree.fields.InvenTreeURLField(blank=True, help_text='Link to external page', verbose_name='Link'),
|
||||
),
|
||||
]
|
@ -30,7 +30,7 @@ from common.settings import currency_code_default
|
||||
from company.models import Company, SupplierPart
|
||||
from InvenTree.exceptions import log_error
|
||||
from InvenTree.fields import (InvenTreeModelMoneyField, InvenTreeNotesField,
|
||||
RoundingDecimalField)
|
||||
InvenTreeURLField, RoundingDecimalField)
|
||||
from InvenTree.helpers import decimal2string, getSetting, notify_responsible
|
||||
from InvenTree.models import InvenTreeAttachment, ReferenceIndexingMixin
|
||||
from InvenTree.status_codes import (PurchaseOrderStatus, SalesOrderStatus,
|
||||
@ -81,7 +81,7 @@ class Order(MetadataMixin, ReferenceIndexingMixin):
|
||||
|
||||
description = models.CharField(max_length=250, verbose_name=_('Description'), help_text=_('Order description'))
|
||||
|
||||
link = models.URLField(blank=True, verbose_name=_('Link'), help_text=_('Link to external page'))
|
||||
link = InvenTreeURLField(blank=True, verbose_name=_('Link'), help_text=_('Link to external page'))
|
||||
|
||||
creation_date = models.DateField(blank=True, null=True, verbose_name=_('Creation Date'))
|
||||
|
||||
@ -1254,7 +1254,7 @@ class SalesOrderShipment(models.Model):
|
||||
help_text=_('Reference number for associated invoice'),
|
||||
)
|
||||
|
||||
link = models.URLField(
|
||||
link = InvenTreeURLField(
|
||||
blank=True,
|
||||
verbose_name=_('Link'),
|
||||
help_text=_('Link to external page')
|
||||
|
@ -656,7 +656,7 @@ class StockItem(InvenTreeBarcodeMixin, MetadataMixin, MPTTModel):
|
||||
|
||||
link = InvenTreeURLField(
|
||||
verbose_name=_('External Link'),
|
||||
blank=True, max_length=200,
|
||||
blank=True,
|
||||
help_text=_("Link to external URL")
|
||||
)
|
||||
|
||||
|
@ -2330,16 +2330,6 @@ function constructInputOptions(name, classes, type, parameters, options={}) {
|
||||
opts.push(`value='${parameters.default}'`);
|
||||
}
|
||||
|
||||
// Maximum input length
|
||||
if (parameters.max_length != null) {
|
||||
opts.push(`maxlength='${parameters.max_length}'`);
|
||||
}
|
||||
|
||||
// Minimum input length
|
||||
if (parameters.min_length != null) {
|
||||
opts.push(`minlength='${parameters.min_length}'`);
|
||||
}
|
||||
|
||||
// Maximum value
|
||||
if (parameters.max_value != null) {
|
||||
opts.push(`max='${parameters.max_value}'`);
|
||||
|
Loading…
Reference in New Issue
Block a user