diff --git a/e107_core/templates/header_default.php b/e107_core/templates/header_default.php index d39ba8869..fe019be03 100644 --- a/e107_core/templates/header_default.php +++ b/e107_core/templates/header_default.php @@ -23,9 +23,11 @@ $sql = e107::getDb(); $sql->db_Mark_Time('(Header Top)'); +e107::css('core', 'bootstrap-datetimepicker/css/datetimepicker.css', 'jquery'); +e107::js('core', 'bootstrap-datetimepicker/js/bootstrap-datetimepicker.min.js', 'jquery', 2); -e107::js('core','bootstrap/js/bootstrap-tooltip.js','jquery'); -e107::css('core','bootstrap/css/tooltip.css','jquery'); +e107::js('core', 'bootstrap/js/bootstrap-tooltip.js','jquery'); +e107::css('core', 'bootstrap/css/tooltip.css','jquery'); // ------------------ diff --git a/e107_handlers/form_handler.php b/e107_handlers/form_handler.php index 01d057879..e37e51825 100644 --- a/e107_handlers/form_handler.php +++ b/e107_handlers/form_handler.php @@ -612,57 +612,40 @@ class e_form * @example $frm->datepicker('my_field',time(),'type=date'); * @example $frm->datepicker('my_field',time(),'type=datetime&inline=1'); * @example $frm->datepicker('my_field',time(),'type=date&format=yyyy-mm-dd'); + * @example $frm->datepicker('my_field',time(),'type=datetime&format=MM, dd, yyyy hh:ii'); * * @url http://trentrichardson.com/examples/timepicker/ */ function datepicker($name, $datestamp = false, $options = null) { + if(vartrue($options) && is_string($options)) { parse_str($options,$options); } - $type = varset($options['type']) ? trim($options['type']) : "date"; // 'datetime' + $type = varset($options['type']) ? trim($options['type']) : "date"; // OR 'datetime' $dateFormat = varset($options['format']) ? trim($options['format']) :e107::getPref('inputdate', '%Y-%m-%d'); - // $timeFormat = varset($options['timeformat']) ? trim($options['timeformat']) :e107::getPref('inputtime', '%H:%M:%S'); - - - + $ampm = (preg_match("/%l|%I|%p|%P/",$dateFormat)) ? 'true' : 'false'; + if($type == 'datetime' && !varset($options['format'])) { $dateFormat .= " ".e107::getPref('inputtime', '%H:%M:%S'); } - - // echo "TYPE=".$type; - - $ampm = (preg_match("/%l|%I|%p|%P/",$dateFormat)) ? 'true' : 'false'; $dformat = e107::getDate()->toMask($dateFormat); - // $tformat = e107::getDate()->toMask($timeFormat); $id = $this->name2id($name); - $classes = array( - 'date' => 'e-date', - // 'time' => 'e-time', - 'datetime' => 'e-datetime' - ); - - $def = array( - 'date' => $dateFormat, - // 'time' => $timeFormat, - 'datetime' => $dateFormat // ." ".$timeFormat - ); - - $defdisp = (isset($def[$type])) ? $def[$type] : $def['date']; + $classes = array('date' => 'e-date', 'datetime' => 'e-datetime'); if ($datestamp) { - $value = is_numeric($datestamp) ? e107::getDate()->convert_date($datestamp, $defdisp) : $datestamp; //date("d/m/Y H:i:s", $datestamp); + $value = is_numeric($datestamp) ? e107::getDate()->convert_date($datestamp, $dateFormat) : $datestamp; //date("d/m/Y H:i:s", $datestamp); } $text = ""; - // $text .= 'dformat='.$dformat.' defdisp='.$defdisp; + // $text .= 'dformat='.$dformat.' defdisp='.$dateFormat; $class = (isset($classes[$type])) ? $classes[$type] : "tbox e-date"; $size = vartrue($options['size']) ? intval($options['size']) : 40; @@ -676,25 +659,12 @@ class e_form "; } else - { - // http://tarruda.github.com/bootstrap-datetimepicker/ - //XXX Problem -doesn't support non-numerical date formats. eg. 2 February, 2013 - /* - $text .= " -