Agenda allenamenti usando Date e Calendar

16 contenuti / 0 new
Ultimo contenuto
Agenda allenamenti usando Date e Calendar

Ciao a tutti, sto realizzando un sito per la mia squadra di nuoto ed ora dovrei inserire un sistema che permetta agli utenti registrati di visualizzare l'allenamento, una specie di agenda, solo che ci sono diverse difficoltà.

La squadra è composta da 3 gruppi che si allenano in 3 piscine diverse con 3 allenatori ed allenamenti diversi.

Ho creato 3 ruoli diversi per distinguere gli utenti, che al momento della registrazione verranno inseriti nel gruppo di appartenenza.

Ora dovrei fare un sistema che mi permetta di inserire gli allenamenti, questo compito verrà svolto dai 3 allenatori ognuno per il proprio gruppo, l'idea è quella di creare un form di inserimento dati che abbia solo 2 campi, un campo data dell'allenamento e una text area per il testo dell'allenamento. Per fare questo ho creato un nuovo tipo di contenuto, allenamento, ed ho aggiunto il campo data grazie al modulo Date, ma non riesco ad escludere i campi di default di drupal, le persone che si occuperanno dell'inserimento non sono molto ferrate in informatica quindi vorrei creare una struttura base con solo i campi che vi ho descritto prima.

Ho cercato un po' in giro e credo che per poter realizzare quello che mi occorre dovrei usare i moduli CCK, VIEWS, DATE e CALENDAR. Mi potreste dire se sto andando nella direzione giusta? Oppure se sono completamente fuori ragionameno?

E' possibile creare un contenuto che abbia solo i campi che occorrono a me? O devo installare qualche altro modulo?

Ciao e grazie per l'aiuto

Dal contenuto puoi togliere il campo body semplicemente lasciando vuota l'"Etichetta del campo corpo:" che trovi in /admin/content/node-type/TuoTipo (con, ovviamente, al posto di TuoTipo il nome che hai dato al tipo di contenuto che hai creato). Per far sparire il campo titolo io uso il modulo Automatic NodeTitle in combinazione con Token. Puoi per esempio fare in modo che il titolo diventi la data dell'allenamento senza che qualcuno lo inserisca a mano ogni volta. Per i moduli che citi, direi che CCK e Views sono un must per ogni sito Drupal. Date già lo usi e Calendar serve proprio per quello che devi fare... quindi sì, stai andando nella direzione giusta.

Forse è più complicato di quanto pensavo

Il body non lo devo togliere, lo uso come campo di testo per l'inserimento dell'allenamento

deovrei togliere:

Titolo                         Node module form.
Impostazioni del menù          Menu module form.
Informazione sulla revisione   Node module form.
Impostazioni commento          Comment module form.
Path settings                  Path module form.

Non posso creare un form di inserimento dati tramite le views? visualizzando solo i campi che mi servono?

Spero di non dire una fesseria, ma per il campo titolo puoi usare il suggerimento sopra inserito. Poi mi sembra, settando i permessi giusti ai vari ruoli, che gli altri campi non vengono visualizzati se l'utente loggato non ha i permessi!

Passione per Drupal
http://retialternative.it

Credo che Override Node Options ti risolverà una buona parte di questi requisiti...

Più imparo, più dubito.

E' come hai detto tu, lo posso gestire con i permessi, la fesseria l'ho detta io :) ora devo fare la modifica sul campo titolo che mi ha suggerito Balbo.

Ora dovrei capire come far riconoscere l'utente al sistema, mi spiego meglio, il coach01 inserisce l'allenamento per la squadra01, questa procedura dovrebbe essere fatta in automatico a seconda dell'utente che sta inserendo l'allenamento.
Pensavo di poterlo gestire con un "if" ma nel settaggio del tipo di contenuto non mi da la possibilità di inserire codice, lo posso fare solo nella creazione del contenuto, ma questa operazione verrà svolta dall'allenatore. Qualche consiglio in merito?

mi viene una soluzione più semplice, non come la vuoi tu ma risparmia fatica e mal di testa: un bel campo tipo radio o menù a tendina con i nomi delle squadre? così l'utente deve solo scegliere la squadra...!

Passione per Drupal
http://retialternative.it

enrik4drupal wrote:
menù a tendina con i nomi delle squadre? così l'utente deve solo scegliere la squadra...!

Ci avevo già pensato ma nono mi soddisfa come soluzione perchè se uno sbaglia ad inserire il gruppo diventa un casino, e prima o poi succede ne sono sicuro. L'unico modo è quello di farlo fare in automatico al sistema, solo che non so come fare :(

l'altra soluzione che mi viene in mente è scaricare il modulo content template che di permette di modificare il codice dei tipi di contenuto che crei, su cosa scrivere a livello di codice però non saprei aiutarti (ignorante in merito)!

Passione per Drupal
http://retialternative.it

Sempre più difficile, non so come risolvere questa cosa.

Ho cercato moduli che mi potessero aiutare, ma l'unica soluzione sembrerebbe quella di usare Organic Group, ma ho paura di infilarmi in un casino ancora maggiore visto la quantità di moduli esistenti per OG.

Un'altra possibilità è quella di scrivere un mio metodo, ma speravo di risolvere con qualcosa già realizzata.

Altri consigli in merito?

Ma se Coach01 può inserire gli allenamenti solo di Squadra01 a che pro avere Squadra01?
se invece di avere un allenamento che fa riferimento ad una squadra che fa riferimento ad un allenatore, conviene avere un allenamento che fa riferimento direttamente all'allenatore, tanto poi per la visualizzazione filtri su coachxx e vedi gli allenamenti di una squadra.

hrs wrote:
Ma se Coach01 può inserire gli allenamenti solo di Squadra01 a che pro avere Squadra01?
se invece di avere un allenamento che fa riferimento ad una squadra che fa riferimento ad un allenatore, conviene avere un allenamento che fa riferimento direttamente all'allenatore, tanto poi per la visualizzazione filtri su coachxx e vedi gli allenamenti di una squadra.

coach01 avrà i permessi per poter inserire gli allenamenti, invece gli atleti di squadra01 potranno solo vederli.

Credo che mi servano 2 tipi di profilo diverso perchè coach01 sarà tipo un moderatore per un forum, mentre gli altri saranno solo utenti

Scusa mi rendo conto che sono necessarie delle informazioni:
coach01 inserisce gli allenamenti... dove? un calendario, tipo di contenuto...?Prova a spiegare meglio che cosa devi fare.
poi: tu conosci un pò di php? perchè con la soluzione da me sopra descritta (modulo content template) puoi inserire del codice utilizzando i fields creati, ma se la cosa ti sembra complicata forse devi optare per una soluzione più semplice... forse un bel menù a tendina, appunto.
Moduli in merito che possano risolvere il tuo quesito non me ne vengono in mente (non che ne conosca tanti, eh, ma così a freddo... no)

Passione per Drupal
http://retialternative.it

Al momento in un tipo di contenuto chiamato allenamento, ma non credo che sia corretto, sarebbe forse meglio in un calendario. So come creare un nuovo contenuto ma non so come fare un calendario.

Si conosco php, ho provate a fare delle modifiche dopo aver installato "content template" ma non hanno funzionato.

Stavo cercando di capire come creare un modulo che mi permetta di realizzare questo progetto ma anche in questo caso la cosa mi sembra complicata!

Nel vecchio sito che avevo realizzato "tutto in php" avevo fatto un form dove l'allenatore inseriva la data dell'allenamento in un campo textfield e poi in una textarea inseriva l'allenamento. Gli utenti una volta loggati potevano vedere l'allenamento facendo una semplice ricerca per data.

Ora la squadra si è ingrandita ed ho la necessita di ricreare questo sistema per i 3 gruppi che formano la squadra.

Per quanto riguarda la visualizzazione si dovrebbe realizzare facilmente con le views, mentre per l'inserimento continuo ad avere problemi nella costruzione della form, e con il riconoscimento in automatico dell'allenatore

spero di aver spiegato un po' meglio il problema :)

ha ragione @erik4drupal: se è sempre 1 squadra = 1 allenatore e vuoi tutto in automatico, puoi raggruppare i nodi allenamento in base all'utente che li ha creati. Per rendere un po' più robusta la cosa però, inserirei comunque un campo user reference per l'allenatore (che dovrebbe in questo caso selezionare il proprio nome).
Se installi calendar e cloni la vista calendar_view puoi inserire i vari allenamenti nel calendario raggruppati per utente (o user reference)

per quanto riguarda i ruoli diversi per coach procederei così:
-ruolo1: coach -> crea allenamenti
-ruolo2: moderatore -> modera il forum

l'utente "coach01" appartiene a ruolo1 E ruolo2
gli altri solo al ruolo1

Quote:
Se installi calendar e cloni la vista calendar_view puoi inserire i vari allenamenti nel calendario raggruppati per utente (o user reference)

Ho fatto come mi hai consigliato, ho clonato la vista calendar_view e come visualizzazione sarebbe perfetta, però non riesco a modificare i nodi che deve visualizzare e la data per l'ordine della visualizzazione. Mi spiego meglio.
La vista calendar_view usa come data di riferimento la data di inserimento del nodo, io invece dovrei fargli usare la data che inserisce il coach nel campo Contenuto: Data (field_data) creato da me, ho provato a modificare il Sort criteria inserendo questo campo ma non ha funzionato, poi ho provato a togliere i riferimenti al campo data sia nei Campi che negli Argomenti ma nulla da fare. Mi puoi aiutare a effettuare questa modifica?

Quote:
ha ragione @erik4drupal: se è sempre 1 squadra = 1 allenatore e vuoi tutto in automatico, puoi raggruppare i nodi allenamento in base all'utente che li ha creati. Per rendere un po' più robusta la cosa però, inserirei comunque un campo user reference per l'allenatore (che dovrebbe in questo caso selezionare il proprio nome).

questa parte non mi è molto chiara, ma va anche detto che al momento mi sto occupando della visualizzazione dei nodi quindi non mi ci ho ragionato molto su questo punto :)