X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=WEB-INF%2Flib%2Fcommon.lib.php;h=b19feacdc4e5109214b6801d4f9dc50d6dafe601;hb=cdd27c2b163122cb6e2169851019721b3382abd7;hp=747f3e016d63a09f271754e3a1c5313e5c854b78;hpb=ed41335d63e71a11d30e92f4367106e9398adf9d;p=timetracker.git diff --git a/WEB-INF/lib/common.lib.php b/WEB-INF/lib/common.lib.php index 747f3e01..b19feacd 100644 --- a/WEB-INF/lib/common.lib.php +++ b/WEB-INF/lib/common.lib.php @@ -349,6 +349,23 @@ function ttValidIP($val, $emptyValid = false) return true; } +// ttValidHolidays is used to check user input to validate holidays spec. +// To keep things simple, the format is a comma-separated list of dates: +// ****-01-01,****-12-31,2019-04-20 +// The above means Jan 1 and Dec 31 are holidays in all years, while Apr 20 is only in 2019. +function ttValidHolidays($val) +{ + $val = trim($val); + if (strlen($val) == 0) return true; + + $dates = explode(',', $val); + foreach ($dates as $date) { + if (!preg_match('/^[\d*]{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$/', $date)) + return false; + } + return true; +} + // ttAccessAllowed checks whether user is allowed access to a particular page. // It is used as an initial check on all publicly available pages // (except login.php, register.php, and others where we don't have to check).