bloggers bloggers

Marco Napolitano
Messaggi: 79
Stelle: 0
Data: 17/02/22
Jader Jed Francia
Messaggi: 63
Stelle: 0
Data: 18/02/21
Paolo Gambetti
Messaggi: 2
Stelle: 0
Data: 11/11/19
Katia Pazzi
Messaggi: 1
Stelle: 0
Data: 27/06/19
Ezio Lombardi
Messaggi: 11
Stelle: 0
Data: 10/04/18
Chiara Mambretti
Messaggi: 25
Stelle: 0
Data: 27/02/17
Serena Traversi
Messaggi: 3
Stelle: 0
Data: 21/07/16
Francesco Falanga
Messaggi: 8
Stelle: 0
Data: 14/06/16
Antonio Musarra
Messaggi: 2
Stelle: 0
Data: 18/11/13
Simone Celli Marchi
Messaggi: 6
Stelle: 0
Data: 09/07/13
Indietro

Gestire la data di nascita con Liferay

Spesso capita di dover visualizzare in pagina la data di nascita e questo normalmente non è una cosa estremamente difficoltosa se usiamo le taglib di Alloy; tuttavia ci sono alcuni requisiti funzionali da tenere in considerazione per la data di nascita:

  • l'anno non può essere futuro
  • l'orario non è necessario

Per implementare questi requisiti è sufficiente configurare opportunamente i model hints associati alla nostra entity.

Innanzitutto, ovviamente, all'interno del file service.xml saremo andati a censire la nostra entity dotandola di un campo "nascita" di tipo Date.

Questo fa sì che in pagina, sfruttando le taglib di Alloy e la combinazione di:

  • <aui:model-context />
  • <aui:input name="nascita" />

venga visualizzato il classico widget di selezione delle date. Tale widget però include l'ora e non rispetta i requisiti visti sopra.

Vediamo quindi come fare.

Come prima cosa apriamo il file portlet-model-hints.xml ed andiamo a censire la collezione di regole che rappresenterà la tipologia data di nascita.

Inseriamo quindi in testa al file il seguente blocco di codice:

<hint-collection name="BIRTHDAY">
<hint name="year-range-delta">90</hint>
<hint name="year-range-future">false</hint>
<hint name="show-time">false</hint>
</hint-collection>

Cosa abbiamo fatto?

Abbiamo semplicemente dichiarato una regola che stabilisce un intervallo di 90 anni a partire dall'anno corrente, senza poter usare gli anni futuri e senza mostra l'orario.

A questo punto, è sufficiente identificare la riga del campo "nascita" ed associare la regola:

<field name="nascita" type="Date">
<hint-collection name="BIRTHDAY" />
</field>

Ora ricarichiamo la JSP e... voilà!

Enjoy!

Precedente
Commenti
Nessun commento. Vuoi essere il primo.