Creare e gestire calendari

:bookmark: Questa guida spiega come creare e gestire calendari in Discourse utilizzando il plugin Calendar (and Event).

:person_raising_hand: Livello utente richiesto: Tutti gli utenti

I calendari sono una potente funzionalità di Discourse che ti consente di organizzare e visualizzare eventi all’interno della tua community. Questa guida ti accompagnerà attraverso il processo di creazione di calendari, aggiunta di eventi e gestione efficace degli stessi.

Sommario

  • Abilita il plugin Calendar
  • Crea un calendario in un argomento o categoria
  • Aggiungi eventi al tuo calendario
  • Gestisci opzioni e impostazioni del calendario
  • Utilizza la funzionalità del calendario delle festività

Abilitazione del plugin Calendar

Prima di poter creare calendari, assicurati che il plugin “Calendar (and Event)” sia abilitato sulla tua istanza Discourse. Per maggiori dettagli sull’abilitazione del plugin e sulle sue impostazioni correlate, consulta la documentazione del plugin Discourse Calendar and Event.

Creazione di un calendario

Calendario per argomento

Per incorporare un calendario in un argomento:

  1. Crea un nuovo argomento o modifica il primo post di un argomento esistente

  2. Aggiungi il seguente codice su righe separate:

    [calendar]
    [/calendar]
    
  3. Pubblica o aggiorna il post


:information_source: Il lunedì è considerato il primo giorno della settimana nei calendari di Discourse, indipendentemente dalle impostazioni locali dell’utente. Attualmente non è configurabile.

Calendario per categoria

Per creare un calendario a livello di categoria:

  1. Vai su /admin/site_settings/category/discourse_calendar?filter=plugin=discourse-calendar

  2. Nell’impostazione “calendar categories”, aggiungi una voce con il seguente formato:

    categoryId=123;postId=4949;tzPicker;defaultView=month
    
    • Sostituisci 123 con l’ID della tua categoria (trovato nell’URL quando visualizzi la categoria)
    • Sostituisci 4949 con l’ID del post della descrizione della categoria (trovato aggiungendo .json all’URL dell’argomento “Informazioni sulla categoria”)
  3. Aggiungi l’ID della categoria all’impostazione “events calendar categories”

  4. Facoltativamente, imposta “discourse post event allowed on groups” per controllare quali gruppi possono aggiungere eventi

Aggiunta di elementi a un calendario

Calendario per argomento

Per aggiungere un evento a un calendario di argomento:

  1. Rispondi all’argomento contenente il calendario
  2. Utilizza la funzione “Inserisci data / ora” nel menu della composizione \u003ckbd\u003e+\u003c/kbd\u003e per aggiungere una data o un intervallo di date
  3. Aggiungi una descrizione sopra la data
  4. Invia la risposta

L’evento apparirà nel calendario dopo aver ricaricato l’argomento.

Calendario per categoria

Per aggiungere un evento a un calendario di categoria:

  1. Crea un nuovo argomento nella categoria
  2. Fai clic sul pulsante a forma di ingranaggio e seleziona “Crea evento”
  3. Compila i dettagli dell’evento e pubblica

L’evento apparirà nel calendario della categoria.

Opzioni del calendario

Puoi personalizzare il tuo calendario utilizzando varie opzioni:

Opzione Esempio Descrizione
Nascondi weekend weekends="false" Nasconde sabato e domenica
Nascondi giorni specifici hiddenDays="1,2" Nasconde lunedì e martedì (usa 0-6 per domenica-sabato)
Imposta vista predefinita defaultView="basicWeek" Opzioni: month, basicWeek, listNextYear
Ignora fusi orari fullDay="true" Tratta tutti gli eventi come eventi di un’intera giornata

Esempio di utilizzo:

[calendar weekends="false" hiddenDays="1,2" defaultView="basicWeek" fullDay="true"]
[/calendar]

Rimozione di elementi del calendario

Gli elementi del calendario possono essere rimossi nei seguenti modi:

  • Gli elementi scaduti del calendario possono essere rimossi automaticamente utilizzando l’impostazione “delete expired event posts after”
  • Utilizza i timer degli argomenti per eliminare automaticamente i post
  • Elimina manualmente i post secondo necessità

Calendario delle festività

Il calendario delle festività è una funzionalità speciale per la gestione delle ferie del personale del sito:

  1. Crea un argomento con un calendario nel primo post
  2. Imposta “holiday calendar topic id” sull’ID di questo argomento
  3. Le risposte a questo argomento saranno trattate come tempo di vacanza per l’utente che pubblica
  4. Le voci di vacanza vengono colorate automaticamente e in modo casuale
  5. Un’emoji (predefinita: :date:) appare accanto ai nomi degli utenti in ferie nelle schede utente e nelle @menzioni
  6. Facoltativamente, includi le festività specifiche della località per gli utenti abilitando “calendar automatic holidays enabled”

Domande frequenti

D: Perché alcuni eventi sembrano durare più giorni?
R: Il calendario è sempre in UTC. Utilizza le impostazioni “all day event start time” e “all day event end time” per regolare le differenze di fuso orario.

D: Posso controllare i colori delle voci del calendario delle festività?
R: Attualmente, non è possibile controllare i colori delle voci del calendario delle festività o ottenere voci colorate nei calendari normali.

D: Come visualizzo gli eventi passati in una vista elenco?
R: Attualmente c’è un bug quando si utilizza defaultView=listNextYear che causa la visualizzazione iniziale vuota. Come soluzione alternativa, gli utenti devono passare alla vista mensile, tornare indietro di un mese e quindi tornare alla vista elenco per vedere gli eventi passati.

Risorse aggiuntive

11 Mi Piace

Ho difficoltà a capire come creare un calendario in modo che venga visualizzato in una categoria e cosa fare per compilarlo una volta che è lì. Per gli argomenti è abbastanza semplice, ma il caso della categoria è più oscuro. Qualcuno può fornire un esempio?

Crea un calendario per categoria

La differenza tra un calendario per argomento e un calendario per categoria è che il primo utilizza add date da una risposta di argomento specifica e visualizza il calendario nell’argomento stesso, mentre il secondo utilizza create event in qualsiasi argomento della categoria configurata e visualizza il calendario degli eventi nella categoria.

1. Abilita il plugin del calendario

In /admin/site_settings/category/discourse_calendar?filter=plugin%3Adiscourse-calendarcalendar categories:
Vuoi qualcosa come: categoryId=123;postId=4949;tzPicker;defaultView=month

  • categoryId è facile da trovare: è il numero nell’URL quando fai clic su #category

  • postId si trova così: vai alla descrizione della categoria (l’argomento fissato “Informazioni sulla categoria”) e aggiungi .json all’URL: il postId si trova all’inizio del file JSON.

  • Rivedi la documentazione di discourse-calendar per opzioni disponibili.

  • Aggiungi la categoria (numerata 123 nel nostro esempio) a events calendar categories
    Potresti voler impostare discourse post event allowed on groups per includere i gruppi a cui vuoi consentire l’aggiunta di eventi.

2. Crea un evento

Puoi creare un nuovo argomento nella categoria 123 e create event (dal pulsante a forma di ingranaggio).
L’evento apparirà quindi sul calendario della categoria.

:tada:

2 Mi Piace

C’è un modo per visualizzare non gli eventi imminenti, ma quelli dell’anno passato? Vorremmo utilizzare il plugin per la nostra sezione journal e elencare tutte le voci passate nel primo post.

Quando si utilizza lo snippet seguente, l’elenco degli eventi è inizialmente vuoto. Solo tornando alla vista mensile, tornando indietro di un mese e tornando alla vista elenco, funziona

[calendar defaultView=listNextYear fullDay=true]
[/calendar]

Vedi il bug in azione:
CleanShot 2024-05-07 at 14.08.49 2

6 Mi Piace

Sono interessato anche a questa funzione.

Mi chiedo se potrebbero esserci anche degli script per l’esplorazione dei dati che accompagnino la ricerca nel calendario.

3 Mi Piace

Quando qualcuno nella mia community pubblica un evento del calendario, poi un amministratore modifica tale evento, perché l’autore originale non può più modificarlo?

Questo è un problema enorme che colpisce centinaia di persone.

Rendi chiaro che per ora solo il calendario dell’argomento inizia di lunedì e che il calendario della categoria inizia invece di domenica.

Mi piacerebbe che questo fosse configurabile dall’amministratore, poiché ora ognuno mostra il calendario in modo diverso…

3 Mi Piace

Uh-huh. Ha senso, perché non avevo capito–

Affinché le festività siano visibili nel calendario delle festività, vale la pena menzionare che la risposta deve contenere un timestamp che aggiungi dal menu dell’editor.
Inoltre, come precedentemente indicato, l’ID del post si trova aggiungendo .json all’URL del post. Penso che questo dovrebbe essere aggiunto alla documentazione qui, poiché se le categorie hanno il loro ID nell’URL, l’ID dell’URL dell’argomento confonderà le persone poiché il suo numero potrebbe essere vicino ma non simile al vero ID dell’argomento.

Grazie comunque per questa guida, c’è molto da coprire perché ci sono molte funzionalità, il che è fantastico, ottimo lavoro agli sviluppatori!

Ah, la riscrittura dell’IA ha aggiunto una terminologia di “evento”. Idealmente, questo termine dovrebbe essere evitato nella metà “Calendario” della documentazione per non creare ambiguità con la funzionalità aggiuntiva “Evento” del plugin.

1 Mi Piace

Voglio chiedere che il mio discourse non abbia il calendario e il pulsante dell’ingranaggio dopo aver abilitato il plugin, c’è qualcosa che non va?

1 Mi Piace

L’icona dell’ingranaggio è stata cambiata in un po’ di tempo fa. Penso che inserisci data sia stato spostato in quel menu più (penso che ora utilizzi anche l’icona ).

Decisamente un ottimo punto. Sembra che questa documentazione necessiti di un aggiornamento (e probabilmente ci sono anche altri argomenti che fanno ancora riferimento all’icona dell’ingranaggio).

1 Mi Piace

Grazie per la risposta, e poi mi sono reso conto di un altro errore correlato a questo. Ho questa icona, ma è più grande e nel posto sbagliato, bloccando, come puoi vedere. È normale sul telefono, ma non sul desktop. A proposito, nessun calendario ma eventi nella lista. Cosa posso fare :pleading_face:

La modalità sicura corregge la posizione dell’icona più?

Quale pulsante del calendario ti aspetti?

Quello ora è

Ho questo pulsante di inserimento, poi come posso pubblicare un calendario? Ho provato il codice [calendar], che funziona, ma data/ora include il calendario?

Per il pulsante grande, ho provato la modalità sicura, ed è ancora così. La ricostruzione dell’app non funziona, posso sperare che il prossimo aggiornamento della versione risolva questo problema?:relieved_face: O c’è qualcosa che posso fare, a parte rifare tutto da capo :rofl: