[SOLUCIONADO]:Widget CJuiDatePicker en español

Hola, como les parece que estoy usando este widget pero cuando agrego la variable ‘language’ para colocarlo en español, entonces ya no me sale la fecha que coloqué en el modelo sino la fecha actual, en cambio si quito la variable ‘language’ para que me salga por defecto en ingles, ahí si me aparece la fecha correcta.

Alguien sabe como solucionar esto?

la verdad yo creo que es porque el español no se coloca como ‘es’ sino que debe ser de otra manera… pero la verdad no se en donde encontrar cual es la nomenclatura correcta del idioma para este widget.




            $this->widget('zii.widgets.jui.CJuiDatePicker', array(

	            'model' => $model,

	            'language' => 'es',

	            'attribute' => 'nws_publish_date',

	            'options' => array(

	            	'showAnim' => 'fold',

	            	'dateFormat' => 'dd-mm-yyyy',

	            ),

            ));



Hasta dondo sé, por lo que veo del código fuente, la forma en la que indicas el languague, está bien:

Extracto del codigo de CJuiDatePicker:




/**

  * @var string the locale ID (e.g. 'fr', 'de') for the language to be used by the date picker.

  * If this property is not set, I18N will not be involved. That is, the date picker will show in English.

  */

  public $language;



Por lo que entiendo que debe ser un bug! Tal vez sebas (parte del team) pueda darte alguna luz sobre esto.

Qué versión de Yii estas usando?

Si es la 1.1.0 te recomiendo que actualices el CJuiDatePicker a la versión 1.1.1 o la del trunk (Aunque siempre es mejor actualizar el framework) porque hice un par de cambios en ese archivo.

Sino te pido que des más inforamción de tu modelo y como estas pasandole la información…

Un problema que pasaba antes (con la versión anterior) es que cuando le dabas un lenguaje sobreescribía el dateFormat y como tu información del modelo es distinta, este dateFormat no era el que funcionaba y daba mal. en tu caso estaría pasando esto ya que para español el dateFormat default es el ‘dd/mm/yyyy’.

Avisá si esto resuelve tu problema.

Saludos,

Hola Sebas, tenias toda la razón, cuando actualicé la versión del Yii a la versión yii-1.1.1.r1907 ya la fecha salió bien.

Muchas gracias a todos.

Hola chicos,

Estoy intentando que el datepicker salga traducido en español, pero siempre me sale en ingles… al parecer la propriedad ‘language’ de la clase no settea la propriedad ‘regional’ del date picker…

He intentado hacerlo tambien a traves del script pero nada.

Alguna idea?

Muchas gracias!

Qué versión estas usando??

Podés subir tu código así lo veo?

Gracias!

Hola Sebas,

Estoy usando la ultima version de Yii, 1.1.3.

Mi codigo:




$this->widget('zii.widgets.jui.CJuiDatePicker', array(

      'model'=>$model,

      'attribute'=>'FechaInicio',

      'options'=>array(

              'showAnim'=>'fold',

              'dateFormat'=>'yy-mm-dd',

              'gotoCurrent' => true,

              'minDate' => '0',

              'language'=> Yii::app()->getLanguage(),

              'onSelect' => 'js:function(selectedDate) {

                       var option = "minDate";

                       var instance = $(this).data("datepicker");

                       var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);

                       $("#Event_FechaFin").datepicker("option", option, date);

               }',

     ),

));



Gracias!

Para que se presente en español, se puede usar estos comandos manualmente:

monthNames,monthNamesShort,dayNames,dayNamesShort tal y como estan descritos en:


jqueryui.c.o.m/demos/datepicker/#option-changeYear

Adjunto el codigo:




<?php    

    $this->widget('zii.widgets.jui.CJuiDatePicker', array(

    'name'=>'publishDate',

    // additional javascript options for the date picker plugin

    'options'=>array(

        'showAnim'=>'fold',

		'changeYear' => 'true',

		'dateFormat' => 'yy/mm/dd',

		'monthNames' => array('Enero,Febrero,Marzo,Abril,Mayo,Junio,Julio,Agosto,Septiembre,Octubre,Noviembre,Diciembre'),

		'monthNamesShort' => array("Ene","Feb","Mar","Abr","May","Jun","Jul","Ago","Sep","Oct","Nov","Dic"),

		'dayNames' => array('Domingo,Lunes,Martes,Miercoles,Jueves,Viernes,Sabado'),

		'dayNamesMin' => array('Do','Lu','Ma','Mi','Ju','Vi','Sa'),

		//'defaultDate' => '-13y',

        //'maxDate' => '-13y',

		'changeMonth' => 'true',

		'language'=> 'es',

		//'language'=> Yii::app()->getLanguage(),

    ),

    'htmlOptions'=>array(

        'style'=>'height:20px;'

    ),

)); 

?>



Claro esta en caso de que efectivamente, no les trabajara la opcion de hacerlo con: ‘language’ => ‘es’,

A mi me sirvió tu respuesta, gracias :)

Me aparece el texto del CJuiDatePicker en chino. Hace unos días funcionaba en español. Y no toque nada de nada. Solo codigo, pero no actualice el yii ni nada por el estilo.


<?php  $this->widget('zii.widgets.jui.CJuiDatePicker', array(

   'language'=>'es',

   'model'=>$model,

   'attribute'=>'fecha',

   'flat'=>false,

   'options'=>array(

    'firstDay'=>6,

    'showOn'=>"both",

    //'buttonImage'=>"images/calendar.gif",

    'buttonImageOnly'=> false,

    //'minDate'=>-31,

    //'maxDate'=>0,

    'constrainInput'=>true,

    'currentText'=>'Now',

    'dateFormat'=>'yyyy/mm/dd',

   ),

   'htmlOptions'=>array(

   ),

  )); ?>