Calendario da tipologia di campo
From Joomla! Documentation
Il calendario da tipologia di campo genera una casella di testo in cui può essere inserita una data. Un icona vicino alla casella di testo rimanda a un link per un calendario pop-up, il quale può anche essere usato per inserire il valore data. Se il campo ha un valore salvato questo viene mostrato nella casella di testo. Altrimenti il valore default, se c'è, viene scritto sul display.
- type (obbligatorio) deve essere "calendario".
- name (obbligatorio) è il nome unico del campo.
- label (obbligatorio) (traducibile) è il titolo descrittivo del campo.
- default(opzionale) è la data default. Questa deve essere inserita nello stesso formato specificato dal formato dell'argomento. Puoi inserire "NOW" per avere la data corrente o l'informazione della data nel formato scelto. Puoi anche usare [JDate arguments] ('now +1 month', 'now +2 months +7 days +12 hours', ...)
- description (opzionale)(traducibile) è il testo che verrà mostrato come strumento quando l'user poggerà la freccia del mouse sulla casella di testo.
- readonly(opzionale) è l'impostazione che detta se la casella di testo sia di sola lettura ("true" or "false"). Se la casella di testo è in modalità sola lettura, la data non sarà modificabile, ma potrà essere selezionata e copiata. Nessun icona calendario verrà mostrata.
- disabled(opzionale) definisce se la casella di testo è disabilitata ("true" o "false"). Se la casella di testo non è attiva, la data non può essere copiata, selezionata o modificata.
- class(opzionale) è una class name CSS per il campo di forma HTML. E' consigliato usare "Bootstrap2 Relatives sizing" (vedi l'esempio di codice riportato di sotto).
- format (opzionale) è il formato data da usare. Questo è nel formato usato da PHP per specificare le stringe dati formati (vedi sotto). Se nessun argomento formato viene specificato, '%Y-%m-%d' viene utilizzato (risulta in date del tipo '2017-05-15'). Se
showtime
è true allora bisognerà includere dei campi orari, del tipo, '%Y-%m-%d %H:%M:%S'. - filter (opzionale) è il fuso orario utilizzato. CI sono due valori; server_utc e user_utc. Il primo è la zona orario del server e la seconda è la zona oraria dell'user come configurata nella configurazione globale e nelle informazioni dell'user.
- translateformat (opzionale). Se impostato su true, il calendario userà la
DATE_FORMAT_CALENDAR_DATE
language key (seshowtime
è true) oppureDATE_FORMAT_CALENDAR_DATETIME
(seshowtime
è false) per determinare il formato. Ilformat
attribuito viene ignorato. Se false, ilformat
attribuito è utilizzato (stessa maniera per le versione precedenti a 3.7.0) ma notare che laformat
stringa deve includere i campi data affinchè la data venga registrata. Il valore default è false. - showtime(opzionale): Se impostato su ture e
translateformat
è true, la language keyDATE_FORMAT_CALENDAR_DATETIME
viene usata, altrimentiDATE_FORMAT_CALENDAR_DATE
. (partendo dalla 3.7.0). false è default.
- timeformat (opzionale): può essere impostato a 12 o 24 (a partire dalla 3.7.0). Se portato su 12, un ulteriore selezione è a disposizione dell'utente, ovvero scegliere tra AM e PM. Questo non influisce su come la data viene salvata. 24 è deafult.
- singleheader(opzionale): se false, la selezione di anno e mese sarà effettuata su due linee separate, con selezione indipendente (a partire dalla 3.7.0). false è default.
- todaybutton(opzionale): se impostato su true, un bottone si aggiunge in basso al selezionatore di data per poter selezionare la data corrente (a partire dalla 3.7.0). true è default.
- weeknumbers(opzionale): Se portato su true, una colonna è aggiunta a sinistra del selezionatore di data in modo da mostrare il numero di settimane nell'anno corrente(a partire dalla 3.7.0). ture è default.
- filltable(opzionale): se impostato true, le date del mese precedente sono aggiunte in basso e in alto al mese corrente per riempire la griglia (a partire dalla 3.7.0). true è default.
- minyear(opzionale); imposta un numero intero associato a un numero di anni (-10, -2, 0, 7, 12, ...) per definire il limite minimo relativo di anni selezionabili. L'user non può scegliere un anno precedente al limite (a partire dalla 3.7.0). Se 0, dato default, non ci sono limiti.
- maxyear(opzionale): imposta un valore intero per un numero di anni (-10, -2, 0, 7, 12, ...) per definire il limite massimo di anni selezionabili. L'user non può selezionare un anno successivo al dato limite (a partire dalla 3.7.0). Se 0, dato default, non ci sono limiti.
Esempio di definizione di campo XML per un DatePicker leggero:
<field name="mycalendar" type="calendar" default="2017-05-15" label="Seleziona una data" description=""
class="input-small" required="true" filter="user_utc"
showtime="false" todaybutton="false" filltable="false" translateformat="true" />
Esempio di una definizione di campo complessa per un DatePicker XML:
<field name="mycalendar" type="calendar" default="2017-05-15" label="Seleziona una data" description=""
class="input-medium" required="true" filter="user_utc" format="%Y-%m-%d %H:%M:%S"
singleheader="true" showtime="true" timeformat="12" todaybutton="true" weeknumbers="true"
filltable="true" minyear="-3" maxyear="5" />
Il formato attribuito specifica che la stringa data verrà salvata. E' anche il formato in cui le date inserite manualmente devono essere registrate, ignorando i caratteri punteggiatura. Lo schema di codice usato per specificare i formati data è un formato personalizzato per la libreria javascript nel datepicker, di cui i dettagli completi possono essere trovati su Joomla's Github. Le seguenti sono alcune delle più frequenti stringhe data di codice usate:
Carattere | Descrizione | Esempio |
---|---|---|
d | Giorno del mese, 2 cifre con lo zero avanti | 01 a 31 |
a | Una rappresentazione testuale del giorno, tre lettere | Lun a Dom |
e | Giorno del mese senza zero davanti | 1 a 31 |
A | Una rappresentazione testuale del giorno della settimana | Lunedì a Domenica |
w | Rappresentazione numerica del giorno della settimana | 0 (per Domenica) a 6 (per Sabato) |
j | Il giorno dell'anno (partendo da 0) | 001 a 366 |
B | Una rappresentazione testuale completa del mese | Gennaio a Dicembre |
m | Rappresentazione numerica del mese, con zero avanti | 01 a 12 |
b | Una rappresentazione abbreviata del mese, tre lettere | Gen a Dic |
Y | Una completa rappresentazione dell'anno, 4 cifre | 1999 o 2003 |
y | Una rappresentazione a due cifre dell'anno | 99 o 03 |
P | Ante Meridiem o Post Meridiem in carattere minuscolo | am o pm |
p | Ante Meridiem o Post Meridiem in carattere maisucolo | AM o PM |
Nota: Il formato in cui le date sono registrate nel file params.ini è quello specificato dal formato argomento. Dato che ci possono essere elementi dipendenti dalla lingua in quel formato (ad esempio l'indicatore '%A'), bisogna stare attenti a non utilizzare tali elementi se c'è la possibilità che la lingua di backend e frontend sia diversa.
Nota: Il calendario da tipo di campo non supporta calendari non Gregoriani. Se c'è bisogno di supporto per tali calendari, bisognerà creare una personalizzazione dal tipo di campo per supportare il suddetto calendario.
Filtri associati standard
- user_utc-Calcola lo specificato valore orario di Greenwich, secondo l'impostazione fuso orario dell'user.