Iniciare con el conocido sfWidgetFormJQueryDate, el cual nos da una interfaz para el datepicker de Jquery UI, la documentacion esta bien... pero yo queria el calendario en español, inline (que se mostrara sin necesidad de hacer click en una imagen o un input) y con limite de fechas a escoger:

Para conseguirlo utilice el siguiente codigo en la forma:
'start' => new sfWidgetFormJQueryDate(array('culture'=>'es',
'config' => "{minDate: -1, maxDate: '+1M +1D'}",));
Se podria incluso tomar los valores de minDate y maxDate del app.yaml.
Para cambiar la forma en que el calendario se muestra lo que hice fue editar directamente la clase sfWidgetFormJQueryDate.class.php del plugin sfFormExtraPlugin y cambiar en la funcion render el renderTag de input a div:
Para cambiar la forma en que el calendario se muestra lo que hice fue editar directamente la clase sfWidgetFormJQueryDate.class.php del plugin sfFormExtraPlugin y cambiar en la funcion render el renderTag de input a div:
$this->renderTag('div', array('type' => 'hidden',
'size' => 10,'id' => $id = $this->generateId($name).'_jquery_control',
'disabled' => 'disabled')
Probablemente mañana con menos sueño agregue el codigo necesario para parametrizar el inline del sfWidgetFormJQueryDate... por hoy es todo.
3 comments:
Gracias! He utilizado tu guía y me ha funcionado. Sin embargo, preferí crear una nueva clase dentro del plug in: "sfWidgetFormJQueryCustomDate" y realizar ahí los cambios.
Algo que me gustaría hacer es quitar los input para elegir el día, mes y año de forma individual. Ya veré como lo hago.
Gracias! He seguido tus pasos y lo he logrado, aunque creé una nueva clase sfWidgetFormJQueryCustomDate para no tocar la original del plugin. En mi caso, me gustaría incluso quitar los input del día, mes y año, aunque no he averiguado como.
Un saludo!
el problema de quitarlos pudiera ser que si no tiene JS no veria absolutamente nada, al menos con los inputs puedes aun usar la pagina si no tienes habilitado JS...
Post a Comment