diff options
author | mkanat%bugzilla.org <> | 2007-10-24 00:36:51 +0000 |
---|---|---|
committer | mkanat%bugzilla.org <> | 2007-10-24 00:36:51 +0000 |
commit | 16a1c874c190a2726ff8a9e9aadac12a37592023 (patch) | |
tree | 9ea33d5c333ada4c0084a2d0e0871055714a37d4 /Bugzilla/Util.pm | |
parent | 212433f27ac422f79924d03b5d047236f6cdd308 (diff) | |
download | bugs-16a1c874c190a2726ff8a9e9aadac12a37592023.tar bugs-16a1c874c190a2726ff8a9e9aadac12a37592023.tar.gz bugs-16a1c874c190a2726ff8a9e9aadac12a37592023.tar.bz2 bugs-16a1c874c190a2726ff8a9e9aadac12a37592023.tar.xz bugs-16a1c874c190a2726ff8a9e9aadac12a37592023.zip |
Bug 357324: Date/Time Custom Fields
Patch By Max Kanat-Alexander <mkanat@bugzilla.org> r=LpSolit, a=LpSolit
Diffstat (limited to 'Bugzilla/Util.pm')
-rw-r--r-- | Bugzilla/Util.pm | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/Bugzilla/Util.pm b/Bugzilla/Util.pm index 5c68a9092..ffc2af95a 100644 --- a/Bugzilla/Util.pm +++ b/Bugzilla/Util.pm @@ -40,6 +40,7 @@ use base qw(Exporter); diff_arrays diff_strings trim wrap_comment find_wrap_point format_time format_time_decimal validate_date + validate_time file_mod_time is_7bit_clean bz_crypt generate_random_password validate_email_syntax clean_text @@ -457,6 +458,22 @@ sub validate_date { return $ret ? 1 : 0; } +sub validate_time { + my ($time) = @_; + my $time2; + + # $ts is undefined if the parser fails. + my $ts = str2time($time); + if ($ts) { + $time2 = time2str("%H:%M:%S", $ts); + + $time =~ s/(\d+):(\d+?):(\d+?)/$1:$2:$3/; + $time2 =~ s/(\d+):(\d+?):(\d+?)/$1:$2:$3/; + } + my $ret = ($ts && $time eq $time2); + return $ret ? 1 : 0; +} + sub is_7bit_clean { return $_[0] !~ /[^\x20-\x7E\x0A\x0D]/; } |