// $Rev$
//
-
-
require_once 'HTML/QuickForm/date.php';
require_once 'Date.php';
require_once 'Validate.php';
function HTML_QuickForm_mdate($elementName=null, $elementLabel=null, $options=array(), $attributes=null)
{
$this->_options = array ('es' => array (
- 'weekdays_short'=> array ('--' => '--', 'Dom', 'Lun', 'Mar', 'Mié', 'Jue', 'Vie', 'Sáb'),
- 'weekdays_long' => array ('--' => '--', 'Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado'),
- 'months_short' => array ('--' => '--', 'Ene', 'Feb', 'Mar', 'Abr', 'May', 'Jun', 'Jul', 'Ago', 'Sep', 'Oct', 'Nov', 'Dic'),
- 'months_long' => array ('--' => '--', 'Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septimbre', 'Octubre', 'Noviembre', 'Diciembre')
+ 'weekdays_short'=> array ('' => '--', 'Dom', 'Lun', 'Mar', 'Mié', 'Jue', 'Vie', 'Sáb'),
+ 'weekdays_long' => array ('' => '--', 'Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado'),
+ 'months_short' => array ('' => '--', 'Ene', 'Feb', 'Mar', 'Abr', 'May', 'Jun', 'Jul', 'Ago', 'Sep', 'Oct', 'Nov', 'Dic'),
+ 'months_long' => array ('' => '--', 'Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septimbre', 'Octubre', 'Noviembre', 'Diciembre')
)
);
- parent::HTML_QuickForm_date($elementName, $elementLabel, $options, $attributes);
+ parent::HTML_QuickForm_date($elementName, $elementLabel,
+ array_merge(array('language'=>'es','format'=>'d F Y'), $options),
+ $attributes);
} //end constructor
// }}}
$options = array();
//TODO
//Verificar que esto este funcionando bien.
- $options['--'] = '--';
+ $options[''] = '--';
//Hasta aca
for ($i = $start; $i <= $end; $i++) {
$options[$i] = sprintf('%02d', $i);
*/
function &getValue()
{
- if ($this->_selectedDate['Y'] != 00) {
+ if ($this->_selectedDate['Y']) {
return new Date (sprintf("%04d-%02d-%02d 00:00:00",$this->_selectedDate['Y'],$this->_selectedDate['F'],$this->_selectedDate['d']));
}
else {
*/
function validate($valor, $nombre, $formato = '')
{
- if ($valor['Y'] != '--' && $valor['d'] != '--' && $valor['F'] != '--') {
- return Validate::date($valor['Y'].'-'.$valor['d'].'-'.$valor['F'], array('format' => '%Y-%m-%d'));
+ // Si viene completamente lleno, se valida con el paquete Validate.
+ if ($valor['Y'] and $valor['d'] and $valor['F']) {
+ $str = sprintf('%4d-%02d-%02d', $valor['Y'], $valor['F'], $valor['d']);
+ return Validate::date($str, array('format' => '%Y-%m-%d'));
+ // Si viene completamente vacio, es valido.
+ } elseif (!$valor['Y'] and !$valor['d'] and !$valor['F']) {
+ return true;
+ // Si viene a medio completar, es invalido.
+ } else {
+ return false;
}
- return true;
} // end func validate
}
?>