From 42e7cb16e4d7f51b6c4c48681680cd581c039708 Mon Sep 17 00:00:00 2001 From: Andy Miller Date: Tue, 8 Sep 2015 14:58:31 -0600 Subject: [PATCH] php->kendo js date conversion --- classes/admin.php | 61 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) diff --git a/classes/admin.php b/classes/admin.php index 26b8e2ce..4b858add 100644 --- a/classes/admin.php +++ b/classes/admin.php @@ -758,4 +758,65 @@ class Admin return $lookup; } + + function dateformat2Kendo($php_format) + { + $SYMBOLS_MATCHING = array( + // Day + 'd' => 'dd', + 'D' => 'ddd', + 'j' => 'd', + 'l' => 'dddd', + 'N' => '', + 'S' => '', + 'w' => '', + 'z' => '', + // Week + 'W' => '', + // Month + 'F' => 'MMMM', + 'm' => 'MM', + 'M' => 'MMM', + 'n' => 'M', + 't' => '', + // Year + 'L' => '', + 'o' => '', + 'Y' => 'yyyy', + 'y' => 'yy', + // Time + 'a' => 'tt', + 'A' => 'tt', + 'B' => '', + 'g' => 'h', + 'G' => 'H', + 'h' => 'hh', + 'H' => 'HH', + 'i' => 'mm', + 's' => 'ss', + 'u' => '' + ); + $js_format = ""; + $escaping = false; + for($i = 0; $i < strlen($php_format); $i++) + { + $char = $php_format[$i]; + if($char === '\\') // PHP date format escaping character + { + $i++; + if($escaping) $js_format .= $php_format[$i]; + else $js_format .= '\'' . $php_format[$i]; + $escaping = true; + } + else + { + if($escaping) { $js_format .= "'"; $escaping = false; } + if(isset($SYMBOLS_MATCHING[$char])) + $js_format .= $SYMBOLS_MATCHING[$char]; + else + $js_format .= $char; + } + } + return $js_format; + } }