Chamilo is a learning management system focused on ease of use and accessibility
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
chamilo-lms/main/inc/lib/formvalidator/Element/DatePicker.php

73 lines
1.5 KiB

<?php
/* For licensing terms, see /license.txt */
/**
* Form element to select a date.
*
* Class DatePicker
*/
class DatePicker extends HTML_QuickForm_text
{
/**
* @param string $elementName
* @param string $elementLabel
* @param array $attributes
*/
public function DatePicker($elementName = null, $elementLabel = null, $attributes = null)
{
if (!isset($attributes['id'])) {
$attributes['id'] = $elementName;
}
$attributes['class'] = 'form-control';
parent::__construct($elementName, $elementLabel, $attributes);
$this->_appendName = true;
$this->_type = 'date_picker';
}
/**
* HTML code to display this datepicker
*
* @return string
*/
public function toHtml()
{
$js = $this->getElementJS();
return $js.parent::toHtml();
}
/**
* @param string $value
*/
public function setValue($value)
{
$value = substr($value, 0, 16);
$this->updateAttributes(
array(
'value' => $value
)
);
}
/**
* Get the necessary javascript for this datepicker
* @return string
*/
private function getElementJS()
{
$js = null;
$id = $this->getAttribute('id');
$js .= "<script>
$(function() {
$('#$id').datepicker({
dateFormat: 'yy-mm-dd'
});
});
</script>";
return $js;
}
}