Autore Topic: ChronoConnectivity. Infiniti modi per vedere e gestire i contenuti di Joomla!  (Letto 36283 volte)

Offline nun84

  • Esploratore
  • **
  • Post: 61
    • Mostra profilo
si l'ho fatto con un semplice div, non ricordavo più il tuo esempio. A proposito, ti chiedevo se riusciamo invece a non far resettare i campi dopo che lanciamo una ricerca? anche questo riguarda la sessione?

Offline vales

  • Global Moderator
  • Instancabile
  • ********
  • Post: 7934
  • Sesso: Maschio
    • Mostra profilo
    • Test di Albo Pretorio On LIne e Moduli Scuola On Line per Joomla 3
I campi non vengono resettati fino a che non lanciamo una nuova ricerca o una ricerca con campi nulli.
Download e demo di Albo Pretorio On Line per Joomla 1.5 e Joomla 2.5 e 3
Moduli scuola On Line v1 per Joomla 3
http://valesweb.altervista.org/joomla3/

Offline nun84

  • Esploratore
  • **
  • Post: 61
    • Mostra profilo
si, ok, non vengono resettati grazie alla sessione, io però volevo dire che non li vedo piu all'interno dei campi dopo che avvio la ricerca

Offline joored

  • Esploratore
  • **
  • Post: 128
    • Mostra profilo
Straordinaria guida per chiarezza e completezza, grazie Vales!

Seguendo le tue istruzioni ho realizzato un "Modulo ricerca" per Eventlist.

Il modulo effettua la ricerca su vari campi ( Titolo; Descrizione; Tipologia; Sede; Data inizio; Data fine) della tabella eventi e pare funzionare perfettamente.

Non riesco però a far effettuare la ricerca sui campi Città e Provincia che, in eventlist, si trovano in un'altra tabella.

E' possibile utilizzare ChronoConnectivity per effetture la ricerca sui campi di due distinte tabelle? E Come?

In ChronoConnectivity - General setting posso indicare solo una tabella ?

VEDI IMMAGINE

Grazie per l'aiuto, saluti


[allegato vecchio più di un anno eliminato automaticamente]
« Ultima modifica: 29 Dic 2009, 16:21:37 da joored »
Inseguo chi fugge e fuggo chi mi insegue. I paradossi della vita.

amokve

  • Visitatore
Una Guida preziosissima GRAZIE!!!!
Un'esigenza però molto utile da applicare è far visualizzare e quindi modificare e cancellale i dati relativi solo all'utente che gli ha creati (dunque registrati) cioè ogni utente può agire solo sui propri dati inviati tramite un form e non anche su quelli degli altri.
E' possibile realizzare questo? e come?
GRAZIE e BUON ANNO a TUTTI

Offline vales

  • Global Moderator
  • Instancabile
  • ********
  • Post: 7934
  • Sesso: Maschio
    • Mostra profilo
    • Test di Albo Pretorio On LIne e Moduli Scuola On Line per Joomla 3
@nun84

si, ok, non vengono resettati grazie alla sessione, io però volevo dire che non li vedo piu all'interno dei campi dopo che avvio la ricerca

E' possibile, lo avevo già fatto nelle prove poi l'ho tolto. Basta assegnare ai valori dei campi di ricerca i valori precedentemente inseriti. Che si recuperano così, con PHP, nel campo di inserimento nella sezione header es. campo title:

Codice: [Seleziona]
<input type="text" name="title" value="<?php echo JRequest::getVar('title''' 'post'); ?>"/>
Per gli altri campi si adatta il codice in modo conseguente.
« Ultima modifica: 31 Dic 2009, 18:55:39 da vales »
Download e demo di Albo Pretorio On Line per Joomla 1.5 e Joomla 2.5 e 3
Moduli scuola On Line v1 per Joomla 3
http://valesweb.altervista.org/joomla3/

Offline vales

  • Global Moderator
  • Instancabile
  • ********
  • Post: 7934
  • Sesso: Maschio
    • Mostra profilo
    • Test di Albo Pretorio On LIne e Moduli Scuola On Line per Joomla 3
@joored

Straordinaria guida per chiarezza e completezza, grazie Vales!

Seguendo le tue istruzioni ho realizzato un "Modulo ricerca" per Eventlist.

Il modulo effettua la ricerca su vari campi ( Titolo; Descrizione; Tipologia; Sede; Data inizio; Data fine) della tabella eventi e pare funzionare perfettamente.

Non riesco però a far effettuare la ricerca sui campi Città e Provincia che, in eventlist, si trovano in un'altra tabella.

E' possibile utilizzare ChronoConnectivity per effetture la ricerca sui campi di due distinte tabelle? E Come?

In ChronoConnectivity - General setting posso indicare solo una tabella ?

....

Bel lavoro lo farò anch'io su un mio sito. Se posti il codice servirà a tutti.

La tabella principale di eventlist è in relazione con due campi codice con le tabelle provincia e città venues (sedi) e categories. Quindi dovrai inserire nella ricerca due caselle dropdown che si popolano con i valori delle due tabelle provincia e città venues e categories.

Il codice per riempirle non dovrebbe essere troppo diverso da quello usato per riempire la dropdown "articolo" della prima tabella di questo articolo.

http://www.joomla.it/articoli-della-community/3836-from-multi-page-con-chronoforms-1.html

In General setting si può "purtroppo" usare una sola tabella. Dobbiamo arrangiarci con il php per trovare i valori di altre tabelle. Come ho fatto per categorie e sezioni nell'articolo in oggetto. Ma non è un grosso problema.
« Ultima modifica: 02 Gen 2010, 17:47:04 da vales »
Download e demo di Albo Pretorio On Line per Joomla 1.5 e Joomla 2.5 e 3
Moduli scuola On Line v1 per Joomla 3
http://valesweb.altervista.org/joomla3/

Offline vales

  • Global Moderator
  • Instancabile
  • ********
  • Post: 7934
  • Sesso: Maschio
    • Mostra profilo
    • Test di Albo Pretorio On LIne e Moduli Scuola On Line per Joomla 3
@amokve

Una Guida preziosissima GRAZIE!!!!
Un'esigenza però molto utile da applicare è far visualizzare e quindi modificare e cancellale i dati relativi solo all'utente che gli ha creati (dunque registrati) cioè ogni utente può agire solo sui propri dati inviati tramite un form e non anche su quelli degli altri.
E' possibile realizzare questo? e come?
GRAZIE e BUON ANNO a TUTTI

La cosa è possibile va compiuto un confronto fra l'utente registrato e l'autore dell'articolo se l'esito è positivo si va avanti per le modifiche se negativo si blocca la procedura.

Puoi adattare il codice mostrato in questa discussione che gestisce i dati dell'utente per un altro scopo ma il principio è quello:

http://forum.joomla.it/index.php/topic,89480.msg397998.html#new

Per le modifiche e le cancellazioni puoi utilizzare i metodi descritti nella prima guida che in questa non sono utilizzati perchè già illustrati.

Trovi tutto qui.

http://www.joomla.it/articoli-della-community/3796-chronofrms-e-chronoconnectivity-lunione-fa-la-forza.html
Download e demo di Albo Pretorio On Line per Joomla 1.5 e Joomla 2.5 e 3
Moduli scuola On Line v1 per Joomla 3
http://valesweb.altervista.org/joomla3/

Offline joored

  • Esploratore
  • **
  • Post: 128
    • Mostra profilo
Nell'HEADER DI ChronoConnectivity ho inserito questo codice
Codice: [Seleziona]
<?php
 
$nome_selected 
JRequest::getInt('locid''''post');
$db =& JFactory::getDBO();
 
$query "
 
SELECT `id`, `locid`, `dates`
 FROM `#__eventlist_events`
 ORDER BY `locid`
"
;
$db->setQuery($query);
$nomes $db->loadAssocList();
$nome_options "";
foreach ( 
$nomes as $v ) {
 if ( 
$nome_selected == $v['locid'] ) {
 
$selected "selected='selected'";
 } else {
 
$selected '';
 }
 
 
$nome_options .= "<option value='".$v['locid']."' $selected >".$v['locid']."</option>";
 
}
?>



<div style="float:left; width: 100%; ">
<table width="100%" cellpadding="0" cellspacing="0">
 <tr>
   <td colspan="2"><img src="bordo_superiore.gif"></td>
 </tr>
 <tr bgcolor="#003366">
   <TD WIDTH=15%><b>Titolo</b>: </td>
   <TD WIDTH=35%><input type="text" name="title" /></td>
   <TD WIDTH=15%><b>Descrizione</b>: </td>
   <TD WIDTH=35%><input type="text" name="datdescription" /></td>
 </tr>
 <tr bgcolor="#003366">
   <TD WIDTH=15%><b>Sede</b>: </td>
   <TD WIDTH=35%><select name="locid" class="form">
   <option value="">Seleziona una Sede</option>
   <?php echo $nome_options?>

</select></td>
   <TD WIDTH=15%><b>Tipologia</b>: </td>
   <TD WIDTH=35%><select name="catsid" class="form">
<option value="0">--- Scegli la tipologia</option>
<option value='1'>Feste popolari e religiose</option>
<option value='2'>Sagre</option>
</select></td>
 </tr>
 <tr>
   <TD WIDTH=15%><b>data inizio</b>: </td>
   <TD WIDTH=35%><input type="text" name="dates" /></td>
   <TD WIDTH=15%><b>data fine</b>: </td>
   <TD WIDTH=35%><input type="text" name="enddates" /></td>
 </tr>
 <tr>
   <td colspan="2"><img src="bordo_inferiore.gif"></td>
 </tr>
</table>

<p style="text-align:center;">
<input type="submit" value="Trova" name="submit" style='width:80px;
color:#cccccc; background-color:#135cae; cursor:pointer;' />
<input type="reset" name="reset" value="Reset" style='width:80px;
color:#cccccc; background-color:#135cae; cursor:pointer;' /></p>
<p style="text-align:center;"><b>Per resettare la ricerca lanciarla con campi vuoti</b></p>
</div>
<br/>
<br/>

e il risultato è che la casella DropDown Sede
VEDI IMMAGINE ALLEGATA
presenta vari problemi:
1) ripete più volte lo stesso id; (Se ci fossero 100 eventi di una sede con ID 1 la casella mi visualizzerebbe 100 volte l'1 ...  :o)
2) mostra l'ID ma non il valore; (il campo contiene solo l'ID ma non il valore che viene memorizzato da eventlist in un'altra tabella)
3) il risultato della ricerca/filtro non viene ordinata sempre allo stesso modo (il risultato della ricerca è corretto ma gli eventi non vengono visualizzati secondo un ordine specifico)

come rimediare?

E inoltre, per applicare lo stesso procedimento alla casella DropDown Tipologia (che va collegata al campo "catid") quale sarebbe la soluzione migliore?

I dubbi sono tanti  :)

[allegato vecchio più di un anno eliminato automaticamente]
« Ultima modifica: 31 Dic 2009, 23:42:14 da joored »
Inseguo chi fugge e fuggo chi mi insegue. I paradossi della vita.

Offline vales

  • Global Moderator
  • Instancabile
  • ********
  • Post: 7934
  • Sesso: Maschio
    • Mostra profilo
    • Test di Albo Pretorio On LIne e Moduli Scuola On Line per Joomla 3
la query non la devi fare su quella tabella ma una sulla tabella  provincia e una sulla tabella città
Download e demo di Albo Pretorio On Line per Joomla 1.5 e Joomla 2.5 e 3
Moduli scuola On Line v1 per Joomla 3
http://valesweb.altervista.org/joomla3/

Offline joored

  • Esploratore
  • **
  • Post: 128
    • Mostra profilo
Eh! ma in quella tabella c'è il campo "titolo", "descrizione", "data inizio" e "data fine".
Come faccio a riunire il tutto?

Vales fai questo miracolo di fine anno  :)
« Ultima modifica: 31 Dic 2009, 23:50:26 da joored »
Inseguo chi fugge e fuggo chi mi insegue. I paradossi della vita.

Offline vales

  • Global Moderator
  • Instancabile
  • ********
  • Post: 7934
  • Sesso: Maschio
    • Mostra profilo
    • Test di Albo Pretorio On LIne e Moduli Scuola On Line per Joomla 3
Io mi riferisco alle query per le dropdown.

Quella che usi tu va bene per mostrare i dati dell'evento ma contiene solo i codici delle altre due tabelle.
Download e demo di Albo Pretorio On Line per Joomla 1.5 e Joomla 2.5 e 3
Moduli scuola On Line v1 per Joomla 3
http://valesweb.altervista.org/joomla3/

Offline joored

  • Esploratore
  • **
  • Post: 128
    • Mostra profilo
Si ma avendo due dropdown:
1) Sede
2) Tipologia
cosa fare? Perdona la mia ignoranza!
Probabilmente la soluzione è banale ma al momento non riesco a districarmi.
« Ultima modifica: 01 Gen 2010, 00:02:13 da joored »
Inseguo chi fugge e fuggo chi mi insegue. I paradossi della vita.

Offline joored

  • Esploratore
  • **
  • Post: 128
    • Mostra profilo
Usando ChronoConnectivity, seguendo la guida di Vales ed i consigli di cui sopra, ho abbozzato un modulo di ricerca/filtro per Eventlist.
Nell'IMMAGINE ALLEGATA potete vedere come appare il modulo.

I campi di ricerca-filtro sono: Titolo, Descrizione, Sede, Tipologia, Provincia, Città, Data inizio, Data fine.
Segue il pulsante Trova (che lancia la query) e il pulsante Reset (che dovrebbe!! resettare tutti i campi).
Le quattro Dropdown prelevano i dati da due distinte tabelle di eventlist (categories e Venues)

Il risultato non è soddisfacente perché funziona solo in parte e presenta i seguenti problemi:

1) Se si effettua la ricerca su uno solo dei campi (qualsiasi esso sia) la query funziona a dovere e mostra i risultati corretti.
Se invece si effettua la ricerca su due campi non sempre funziona, es.:
- funziona la ricerca associata Titolo + Descrizione;
- non funziona la ricerca associata Tipologia + Città (in quanto in questo caso il valore tipologia viene ignotrato e vengono mostrati tutti gli eventi di quella città indipendentemente dalla tipologia) lo stesso accade quando si associano i campi Provincia + Città

2) Dopo aver lanciato la query le dropdown non si resettano correttamente ma mostrano il valore dell'ultima opzione presente nell'elenco delle dropdown.

3) Il pulsante Reset funziona solo sui campi Titolo-Descrizione-Data inizio e Data fine  ma non funziona sulle dropdown.

4) nei campi data occorre inserire la data nel formato Anno/Mese/Giorno.

Non so se il metodo che sto seguendo è idoneo a creare un modulo di ricerca, comunque, posto di seguito il codice affinché qualcuno, se lo ritiene, può suggerire qualche correzione o qualche idea alternativa.

Il codice che segue va inserito in ChronoConnectivity - General - Connection View Settings - Header:
In WHERE SQL: e in BODY: va inserito il codice indicato da Vales nell'articolo
...e, ovviamente, occorre aver installato eventlist  :)

Codice: [Seleziona]
<?php
 
$nome_selected 
JRequest::getInt('venue''''post');
$db =& JFactory::getDBO();
 
$query "
 
SELECT `id`, `venue`
 FROM `#__eventlist_venues`
 ORDER BY `venue`
"
;
$db->setQuery($query);
$nomes $db->loadAssocList();
$nome_options "";
foreach ( 
$nomes as $v ) {
 if ( 
$nome_selected == $v['venue'] ) {
 
$selected "selected='selected'";
 } else {
 
$selected '';
 }
 
 
$nome_options .= "<option value='".$v['id']."' $selected >".$v['venue']."</option>";
 
}
?>


<?php
 
$nome_selected 
JRequest::getInt('catname''''post');
$db =& JFactory::getDBO();
 
$query "
 
SELECT `id`, `catname`
 FROM `#__eventlist_categories`
 ORDER BY `catname`
"
;
$db->setQuery($query);
$nomes $db->loadAssocList();
$nome_options2 "";
foreach ( 
$nomes as $v ) {
 if ( 
$nome_selected == $v['catname'] ) {
 
$selected "selected='selected'";
 } else {
 
$selected '';
 }
 
 
$nome_options2 .= "<option value='".$v['id']."' $selected >".$v['catname']."</option>";
 
}
?>


<?php
 
$nome_selected 
JRequest::getInt('state''''post');
$db =& JFactory::getDBO();
 
$query "
 
SELECT `id`, `state`
 FROM `#__eventlist_venues`
 ORDER BY `state`
"
;
$db->setQuery($query);
$nomes $db->loadAssocList();
$nome_options3 "";
foreach ( 
$nomes as $v ) {
 if ( 
$nome_selected == $v['state'] ) {
 
$selected "selected='selected'";
 } else {
 
$selected '';
 }
 
 
$nome_options3 .= "<option value='".$v['id']."' $selected >".$v['state']."</option>";
 
}
?>


<?php
 
$nome_selected 
JRequest::getInt('city''''post');
$db =& JFactory::getDBO();
 
$query "
 
SELECT `id`, `city`
 FROM `#__eventlist_venues`
 ORDER BY `city`
"
;
$db->setQuery($query);
$nomes $db->loadAssocList();
$nome_options4 "";
foreach ( 
$nomes as $v ) {
 if ( 
$nome_selected == $v['city'] ) {
 
$selected "selected='selected'";
 } else {
 
$selected '';
 }
 
 
$nome_options4 .= "<option value='".$v['id']."' $selected >".$v['city']."</option>";
 
}
?>



<div style="float:left; width: 100%; ">
<table width="100%" cellpadding="0" cellspacing="0">
 <tr>
   <td colspan="2"><img src="bordo_superiore.gif"></td>
 </tr>
 <tr bgcolor="#003366">
   <TD WIDTH=15%><b>Titolo</b>: </td>
   <TD WIDTH=35%><input type="text" name="title" /></td>
   <TD WIDTH=15%><b>Descrizione</b>: </td>
   <TD WIDTH=35%><input type="text" name="datdescription" /></td>
 </tr>
 <tr bgcolor="#003366">
   <TD WIDTH=15%><b>Sede</b>: </td>
   <TD WIDTH=35%><select name="locid" class="form">
   <option value="">Seleziona la Sede</option>
   <?php echo $nome_options?>
</select></td>

   <TD WIDTH=15%><b>Tipologia</b>: </td>
   <TD WIDTH=35%><select name="catsid" class="form">
   <option value="0">Seleziona la tipologia</option>
   <?php echo $nome_options2?>
</select></td>
 </tr>

 <tr bgcolor="#003366">
   <TD WIDTH=15%><b>Provincia</b>: </td>
   <TD WIDTH=35%><select name="locid" class="form">
   <option value="">Seleziona la Provincia</option>
   <?php echo $nome_options3?>
   </select></td>

   <TD WIDTH=15%><b>Città</b>: </td>
   <TD WIDTH=35%><select name="catsid" class="form">
   <option value="0">Seleziona la Città</option>
   <?php echo $nome_options4?>
   </select></td>
 </tr>

 <tr>
   <TD WIDTH=15%><b>data inizio</b>: </td>
   <TD WIDTH=35%><input type="text" name="dates" /></td>
   <TD WIDTH=15%><b>data fine</b>: </td>
   <TD WIDTH=35%><input type="text" name="enddates" /></td>
 </tr>
 <tr>
   <td colspan="2"><img src="bordo_inferiore.gif"></td>
 </tr>
</table>

<p style="text-align:center;">
<input type="submit" value="Trova" name="submit" style='width:80px;
color:#cccccc; background-color:#135cae; cursor:pointer;' />
<input type="reset" name="reset" value="Reset" style='width:80px;
color:#cccccc; background-color:#135cae; cursor:pointer;' /></p>
<p style="text-align:center;"><b>Per resettare la ricerca lanciarla con campi vuoti</b></p>
</div>
<br/>
<br/>

[allegato vecchio più di un anno eliminato automaticamente]
« Ultima modifica: 01 Gen 2010, 21:13:16 da joored »
Inseguo chi fugge e fuggo chi mi insegue. I paradossi della vita.

Offline joored

  • Esploratore
  • **
  • Post: 128
    • Mostra profilo
Vales serve il tuo aiuto.
Inseguo chi fugge e fuggo chi mi insegue. I paradossi della vita.

Offline vales

  • Global Moderator
  • Instancabile
  • ********
  • Post: 7934
  • Sesso: Maschio
    • Mostra profilo
    • Test di Albo Pretorio On LIne e Moduli Scuola On Line per Joomla 3
Ho iniziato a fare lo stesso lavoro.
Ora prendo pari pari il tuo codice e vediamo dove si arriva.
Download e demo di Albo Pretorio On Line per Joomla 1.5 e Joomla 2.5 e 3
Moduli scuola On Line v1 per Joomla 3
http://valesweb.altervista.org/joomla3/

Offline vales

  • Global Moderator
  • Instancabile
  • ********
  • Post: 7934
  • Sesso: Maschio
    • Mostra profilo
    • Test di Albo Pretorio On LIne e Moduli Scuola On Line per Joomla 3
Ci sono dei problemi.

I campi venue, city, state sono sulla stessa tabella e potrebbero essere anzi non sono unici, forse di può salvare venue. Le dropdown vengono popolate con valori ripetuti. Quindi dobbiamo trovare un altro modo per fare la ricerca.

Anche la ricerca per data contenuta in un intervallo di tempo va fatta in un altro modo.

A mio modo di vedere le tabelle di eventlist non sono il massimo della razionalità. Infatti City e State sono ripetuti in più records.
Download e demo di Albo Pretorio On Line per Joomla 1.5 e Joomla 2.5 e 3
Moduli scuola On Line v1 per Joomla 3
http://valesweb.altervista.org/joomla3/

Offline joored

  • Esploratore
  • **
  • Post: 128
    • Mostra profilo
Ciao Vales,
sono contento che tu abbia messo mano a questo lavoro perché è un qualcosa che manca proprio a eventlist.
Penso che tu possa riuscire a fare qualcosa di buono.

Effettivamente eventlist non è il colmo della razionalità ma ritengo che sia il migliore componente per la gestione degli eventi.

Tra l'altro penso che tu lo conosca abbastanza perché ho notato che sul sito che curi hai creato due nuove VISTE: "eventi della settimana" e "eventi del mese". Mi piacerebbe capire come hai fatto.

« Ultima modifica: 01 Gen 2010, 23:58:33 da joored »
Inseguo chi fugge e fuggo chi mi insegue. I paradossi della vita.

Offline vales

  • Global Moderator
  • Instancabile
  • ********
  • Post: 7934
  • Sesso: Maschio
    • Mostra profilo
    • Test di Albo Pretorio On LIne e Moduli Scuola On Line per Joomla 3
E' per questo che nel mio sito sto ancora usando la vecchia versione con un modulo modificato che mi da gli eventi per settimana, mese ed altre possibilità.

Ora vedo se posso recuperare del codice per questa cosa che da tempo volevo affrontare.
Download e demo di Albo Pretorio On Line per Joomla 1.5 e Joomla 2.5 e 3
Moduli scuola On Line v1 per Joomla 3
http://valesweb.altervista.org/joomla3/

Offline joored

  • Esploratore
  • **
  • Post: 128
    • Mostra profilo
Io ho provato ad installare quel modulo che ho conosciuto tramite il tuo sito ... ma mi da errore
Inseguo chi fugge e fuggo chi mi insegue. I paradossi della vita.

 

Torna su