From 6a8ad40b057e6a7f0d3343ec06dbe487b352fe47 Mon Sep 17 00:00:00 2001 From: Nicholas Smith Date: Fri, 11 Jun 2021 22:40:30 +1000 Subject: [PATCH] luci-proto-3g: add APN and PIN validation Signed-off-by: Nicholas Smith [squash commits, fix whitespace] Signed-off-by: Jo-Philipp Wich --- .../htdocs/luci-static/resources/protocol/3g.js | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/protocols/luci-proto-3g/htdocs/luci-static/resources/protocol/3g.js b/protocols/luci-proto-3g/htdocs/luci-static/resources/protocol/3g.js index ee4927a027..d0d8b4a677 100644 --- a/protocols/luci-proto-3g/htdocs/luci-static/resources/protocol/3g.js +++ b/protocols/luci-proto-3g/htdocs/luci-static/resources/protocol/3g.js @@ -92,8 +92,17 @@ return network.registerProtocol('3g', { o.value('gprs_only', _('GPRS only')); o.value('evdo', 'CDMA/EV-DO'); - s.taboption('general', form.Value, 'apn', _('APN')); - s.taboption('general', form.Value, 'pincode', _('PIN')); + o = s.taboption('general', form.Value, 'apn', _('APN')); + o.validate = function(section_id, value) { + if (!/^[a-zA-Z0-9\-.]*[a-zA-Z0-9]$/.test(value)) + return _('Invalid APN provided'); + + return true; + }; + + o = s.taboption('general', form.Value, 'pincode', _('PIN')); + o.datatype = 'and(uinteger,minlength(4),maxlength(8))'; + s.taboption('general', form.Value, 'username', _('PAP/CHAP username')); o = s.taboption('general', form.Value, 'password', _('PAP/CHAP password')); -- 2.30.2