[evolvis-commits] r17407: [#1754] parse date+time-of-day, too

mirabilos at evolvis.org mirabilos at evolvis.org
Thu Jul 14 14:27:25 CEST 2011


Author: mirabilos
Date: 2011-07-14 14:27:25 +0200 (Thu, 14 Jul 2011)
New Revision: 17407

Modified:
   trunk/gforge_base/evolvisforge/gforge/common/include/datepick.php
Log:
[#1754] parse date+time-of-day, too


Modified: trunk/gforge_base/evolvisforge/gforge/common/include/datepick.php
===================================================================
--- trunk/gforge_base/evolvisforge/gforge/common/include/datepick.php	2011-07-14 12:14:26 UTC (rev 17406)
+++ trunk/gforge_base/evolvisforge/gforge/common/include/datepick.php	2011-07-14 12:27:25 UTC (rev 17407)
@@ -97,9 +97,17 @@
 	    array('type' => $type, 'usetime' => $usetime);
 }
 
-/* parse y-m-d or d.m.y or m/d/y format into time_t (int) */
+/* parse y-m-d [h:m] or d.m.y [h:m] or m/d/y [h:m] format into time_t (int) */
 function datepick_parse($text) {
 	$text = trim($text);
+	$hmin = "";
+
+	if (preg_match('#^[0-9/.-]{5,10} [0-9]{1,2}:[0-9]{1,2}$#', $text)) {
+		$a = explode(' ', $text);
+		$text = trim($a[0]);
+		$hmin = " " . trim($a[1]);
+	}
+
 	if (preg_match('#^[0-9]{1,4}-[0-9]{1,2}-[0-9]{1,2}$#', $text)) {
 		/* ISO 8601 */
 		$a = explode('-', $text);
@@ -120,7 +128,7 @@
 		$d = $a[1];
 	} else
 		return false;
-	return strtotime($y."-".$m."-".$d);
+	return strtotime($y."-".$m."-".$d.$hmin);
 }
 
 /* internal function */



More information about the evolvis-commits mailing list