summaryrefslogtreecommitdiff
path: root/rt/share/html/Elements/ValidateCustomFields
diff options
context:
space:
mode:
authorIvan Kohler <ivan@freeside.biz>2014-08-21 00:48:07 -0700
committerIvan Kohler <ivan@freeside.biz>2014-09-15 20:59:00 -0700
commit008524b8e963831999983769f7fec11f55a72f16 (patch)
tree30b22daa59b4c9be3f375d058f0a9c1f034e6ca8 /rt/share/html/Elements/ValidateCustomFields
parentd10fe3d48da3f3bdb423efe42d624e9d1013c958 (diff)
rt 4.0.21 (RT#13852)
Diffstat (limited to 'rt/share/html/Elements/ValidateCustomFields')
-rw-r--r--rt/share/html/Elements/ValidateCustomFields27
1 files changed, 6 insertions, 21 deletions
diff --git a/rt/share/html/Elements/ValidateCustomFields b/rt/share/html/Elements/ValidateCustomFields
index 713885f6f..8b4982842 100644
--- a/rt/share/html/Elements/ValidateCustomFields
+++ b/rt/share/html/Elements/ValidateCustomFields
@@ -83,27 +83,12 @@ while ( my $CF = $CustomFields->Next ) {
for my $value( @values ) {
if ($value) {
- if ( $CF->Type eq 'IPAddress' ) {
- use Regexp::Common qw(RE_net_IPv4);
- my $ip = RT::ObjectCustomFieldValue->ParseIP( $value );
- unless ( $ip ) {
- my $msg =
- loc( "Input can not be parsed as an IP address" );
- $m->notes( ( 'InvalidField-' . $CF->Id ) => $msg );
- push @res, $msg;
- $valid = 0;
- }
- }
- elsif ( $CF->Type eq 'IPAddressRange' ) {
- my ( $start_ip, $end_ip ) =
- RT::ObjectCustomFieldValue->ParseIPRange($value);
- unless ( $start_ip && $end_ip ) {
- my $msg =
- loc( "Input can not be parsed as an IP address range" );
- $m->notes( ( 'InvalidField-' . $CF->Id ) => $msg );
- push @res, $msg;
- $valid = 0;
- }
+ my $ref = { Content => $value };
+ my ($ok, $msg) = $CF->_CanonicalizeValue( $ref );
+ unless ($ok) {
+ $m->notes( ( 'InvalidField-' . $CF->Id ) => $msg );
+ push @res, $msg;
+ $valid = 0;
}
}