Chronforms, Chronoconnectivity & C sono componenti particolari che si differenziano dai normali componenti.
Un componente normale in genere compie un funzione ben precisa: una galleria di media, un gestore eventi, un gestore di documenti e così via.
Chronoforms aiuta a creare form questa è la sua funzione, ed anche questa è una cosa precisa. Ma la differenza la da il contenuto dei form e come i form possono interagire fra loro. Un form di invio dati e magari l'archiviazione di essi o il loro invio per email è una cosa semplice che ha anche essa un uso ben definito.
Ma se cominciamo a pensare ad un sistema di form che si passano i dati raccolti gli elaborano, gli archiviano e mostrano i risultati, allora le cose cambiano e salgono ad un altro livello.
Da questo punto di vista le cose che può fare sono quindi infinite. Dipende dalla cosa che vogliamo fare e se quella cosa si presta ad essere fatta con questi strumenti.
Chronoconnectivity, invece ,consente di gestire i dati delle tabelle del database e di visualizzarli filtrati come vogliamo. Se pensiamo, quindi, ai dati raccolti con i form detti sopra allora l'interazione fra questi due componenti scatena una potenza formidabile.
Personalmente credo di aver utilizzato questa cosa in un modo interessante con la creazione dell'applicazione
Albo Pretorio On Line, che qui sul forum sta avendo un discreto spazio. La cosa nuova è che è stato prossibile poi installare l'applicazione creata quasi fosse un componente di joomla. In realtà non lo è, perche non ci sono i classici files dei componenti, quelli che si sono, sono finalizzati solo all'installazione. Tutto il codice non sta in file ma nei campi delle tabelle del database che vengono create.
Attualmente essa utilizza 18 form e 11 connessioni con chronoconnectivity. Prevede una gestione pubblica ed una riservata come fosse un backend, consente di abilitare utenti a determinate attivita, ecc..
Un'altra differenza fondamentale è che il codice dell'applicazione è direttamente modificabile dal backend di joomla, configurando i settaggi e gestendo i vari campi che chronoform mette a disposizione per ogni singolo form. Ed anche qui il mondo è vario, è possibile elaborare il codice, prima dell'invio, durante l'inserimento dei dati, dopo l'invio, inserire javascripts, css e tante altre cose.
La cosa che mi ha aiutato in questo è stata considerare il form come un contenitore, che può contenere si le classiche cose del form, ma anche non contenerle, e contenere invece del codice puro finalizzato a compiere azioni di vario tipo utili all'applicazione. Esempio la finestra di avvio di Albo Pretorio è un form senza bottoni di invio ma che contiene i link a tutti gli altri form che fanno vivere l'applicazione. Questo passare da un form all'altro da una connessione all'altra consente di dare l'effetto applicazione.
Questo è attualmente lo stato dell'arte. Il limite onestamente non lo conosco sicuramente dipende dalla fantasia di chi lo usa e dalla sua conoscenza del linguaggio php, css, javascript e delle funzioni (API) che joomla stesso mette a disposizione.
Chissa poi se qualche mago dell'MVC come marco (mmleoni) e altri mettono gli occhi in questa cosa possa aprirsi un orizzonte ancora più interessante.