From bf07c706e5742b98974780bb74cdd5d118fbd667 Mon Sep 17 00:00:00 2001 From: utchoang Date: Tue, 1 Sep 2020 19:00:30 +0700 Subject: [PATCH 1/4] vm wizard: add MAC Address validator --- src/locales/en.json | 2 + .../compute/wizard/NetworkConfiguration.vue | 51 +++++++++++++++---- 2 files changed, 44 insertions(+), 9 deletions(-) diff --git a/src/locales/en.json b/src/locales/en.json index def524e15..66ad43b7e 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -1252,6 +1252,7 @@ "label.lun.number": "LUN #", "label.lxcnetworklabel": "LXC Traffic Label", "label.macaddress": "MAC Address", +"label.macaddress.example": "The MAC Address. Example: 01:23:45:67:89:ab", "label.macaddresschanges": "MAC Address Changes", "label.macos": "MacOS", "label.make.project.owner": "Make account project owner", @@ -2755,6 +2756,7 @@ "message.error.limit.value": "The value must not be less than", "message.error.loading.setting": "There was an error loading these settings.", "message.error.lun": "Please enter LUN #", +"message.error.macaddress": "Please enter a valid MAC Address.", "message.error.name": "Please enter name", "message.error.netmask": "Please enter Netmask", "message.error.network.domain": "Please enter Network domain", diff --git a/src/views/compute/wizard/NetworkConfiguration.vue b/src/views/compute/wizard/NetworkConfiguration.vue index 823f1b1f3..c856e0a4c 100644 --- a/src/views/compute/wizard/NetworkConfiguration.vue +++ b/src/views/compute/wizard/NetworkConfiguration.vue @@ -26,16 +26,30 @@ :scroll="{ y: 225 }" > @@ -80,7 +94,8 @@ export default { } ], selectedRowKeys: [], - dataItems: [] + dataItems: [], + macRegex: /^([0-9A-F]{2}[:-]){5}([0-9A-F]{2})$/i } }, beforeCreate () { @@ -150,6 +165,15 @@ export default { this.$emit('select-default-network-item', this.dataItems[0].id) } } + }, + validatorMacAddress (rule, value, callback) { + if (!value || value === '') { + callback() + } else if (!this.macRegex.test(value)) { + callback(this.$t('message.error.macaddress')) + } else { + callback() + } } } } @@ -159,4 +183,13 @@ export default { .ant-table-wrapper { margin: 2rem 0; } + + /deep/.ant-table-tbody > tr td { + vertical-align: baseline; + } + + .ant-form .ant-form-item { + margin-bottom: 0; + padding-bottom: 0; + } From 2d5b77f2842065da1f7f19d65872ef5f5a3f1b5f Mon Sep 17 00:00:00 2001 From: utchoang Date: Thu, 3 Sep 2020 09:15:50 +0700 Subject: [PATCH 2/4] show IP range and check valid IP range --- src/locales/en.json | 1 + .../compute/wizard/NetworkConfiguration.vue | 51 +++++++++++++++++-- 2 files changed, 49 insertions(+), 3 deletions(-) diff --git a/src/locales/en.json b/src/locales/en.json index 66ad43b7e..59d5c1059 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -2742,6 +2742,7 @@ "message.error.internallb.name": "Please specify a name for the Internal LB", "message.error.internallb.source.port": "Please specify a Source Port", "message.error.invalid.range": "Please enter values from {min} to {max}", +"message.error.ip.range": "Please enter valid range", "message.error.ipv4.address": "Please enter a valid IPv4 address", "message.error.ipv4.dns1": "Please enter IpV4 DNS 1", "message.error.ipv4.dns2": "Please enter IpV4 DNS 2", diff --git a/src/views/compute/wizard/NetworkConfiguration.vue b/src/views/compute/wizard/NetworkConfiguration.vue index c856e0a4c..3b8a1954b 100644 --- a/src/views/compute/wizard/NetworkConfiguration.vue +++ b/src/views/compute/wizard/NetworkConfiguration.vue @@ -29,9 +29,19 @@ + @change="($event) => updateNetworkData('ipAddress', record.id, $event.target.value)"> + + + +