SYNOPSIS

  use CGI::Untaint;
  my $handler = CGI::Untaint->new($q->Vars);

  my $date = $handler->extract(-as_date => 'date');

DESCRIPTION

\$1

This Input Handler verifies that it is dealing with a reasonable date. Reasonably means anything that Date::Manip thinks is sensible, so you could use any of (for example):

  \*(L"December 12, 2001\*(R"
  \*(L"12th December, 2001\*(R"
  \*(L"2001-12-12\*(R"
  \*(L"next Tuesday\*(R"
  \*(L"third Wednesday in March\*(R"

See Date::Manip for much more information on what date formats are acceptable.

The resulting date will be a Date::Simple object. Date::Simple for more information on this. By default ambiguous dates of the format 08/09/2001 will be treated as \s-1UK\s0 style (i.e. 8th September rather than 9th August)

If you want to change this, subclass it and override date_format()

WARNING

Date::Manip does not play nicely with taint mode. In order to work around this we locally clobber Date::Manip's 'timezone' code. As we're only interested in dates rather than times, this shouldn't be much of an issue. If it is, then please let me know!

RELATED TO CGI::Untaint::date…

Date::Simple. Date::Manip.

AUTHOR

Tony Bowden

BUGS and QUERIES

Please direct all correspondence regarding this module to:

  [email protected]

COPYRIGHT and LICENSE

Copyright (C) 2001-2005 Tony Bowden. All rights reserved.

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.