Back to top

Autore Topic: Reperire i parametri associati ad una voce di menų  (Letto 4112 volte)

Offline dacdam

  • Esploratore
  • **
  • Post: 183
  • Sesso: Maschio
    • Mostra profilo
Reperire i parametri associati ad una voce di menų
« il: 05 Mar 2010, 17:13:33 »
Vorrei reperire un parametro che ho associato ad una voce di menų...
Questo il codice che ho usato e che, naturalmente, non funziona:
Codice: [Seleziona]
$menus = &JSite::getMenu();
$menu  = $menus->getActive();
$itemid = $menu->id;
$params =& $menus->getParams($itemid);
$destinatario = $params->get('infoEmail', '');

Ho eseguito alcuni dump sulle variabili:
- La variabile $menus č valorizzata correttamente, contiene il mio punto di menų il quale ha l'attributo "_active".
- La variabile $menu risulta NULL.... da lė in poi naturalmente anche le seguenti non si valorizzano correttamente.

Qualcuno sā dirmi come si fā ?

Ciao!
« Ultima modifica: 08 Mar 2010, 18:11:44 da dacdam »

mau_develop

  • Visitatore
Re:Reperire i parametri associati ad una voce di menų
« Risposta #1 il: 05 Mar 2010, 18:46:33 »
si ma "reperire" dove? sei all'interno di cosa? plugin, modulo, componente, template?

dove l'hai impostato il parametro?

M.

Offline dacdam

  • Esploratore
  • **
  • Post: 183
  • Sesso: Maschio
    • Mostra profilo
Re:Reperire i parametri associati ad una voce di menų
« Risposta #2 il: 06 Mar 2010, 18:44:35 »
Si tratta di un parametro impostato nel componente al momento della creazione del punto di menų a cui č collegato.
Il reperimento lo faccio all'interno del componente stesso in una routine che serve ad inviare una mail.

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:Reperire i parametri associati ad una voce di menų
« Risposta #3 il: 07 Mar 2010, 17:57:04 »
ciao dacdam,
io la scriverei cosė:

Codice: [Seleziona]
$menus = &JSite::getMenu();
$params =& $menus->getParams( JRequest::getVar('Itemid'));
$destinatario = $params->get('infoEmail', '');     

ciao,
marco
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline dacdam

  • Esploratore
  • **
  • Post: 183
  • Sesso: Maschio
    • Mostra profilo
Re:Reperire i parametri associati ad una voce di menų
« Risposta #4 il: 08 Mar 2010, 14:05:55 »
Ma tra le variabili get e post non ho 'Itemid'....
In effetti, se faccio il dump di
Codice: [Seleziona]
JRequest::getVar('Itemid') ottengo un NULL...

Dici che devo aggiungerlo ai parametri della chiamata ? Ma cosė avrei ancora il problema di reperire il menų attivo nella pagina precedente...

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:Reperire i parametri associati ad una voce di menų
« Risposta #5 il: 08 Mar 2010, 14:36:34 »
itemid č ricostruito dal framework, il fatto che tu non lo abbia e che tu non riesca ad accedere alla voce attiva con getActive, mi fa pensare ad un errore nel menų o nel routing: hai riscritto il router? prova a disabilitare il sef e vedi se funziona.

ciao,
marco
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline dacdam

  • Esploratore
  • **
  • Post: 183
  • Sesso: Maschio
    • Mostra profilo
Re:Reperire i parametri associati ad una voce di menų
« Risposta #6 il: 08 Mar 2010, 16:15:27 »
Ok adesso funziona....
Perō non sō come fare un'altra cosa: ho creato un modulo che richiama lo stesso componente. A questo punto perō non ho un punto di menų corrente, o per lo meno non č detto che sia lo stesso a cui č collegato il componente. Come si fā in quel caso a reperire il parametro dalla configurazione ?

Ciao.

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:Reperire i parametri associati ad una voce di menų
« Risposta #7 il: 08 Mar 2010, 17:34:45 »
Citazione
Ok adesso funziona....
ma come: disabilitando il sef? allora non č una soluzione, in altro modo? spiega per gli altri utenti.

Citazione
... ho creato un modulo che richiama lo stesso componente ...

usa i parametri del modulo.  ;D

ciao,
marco
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline dacdam

  • Esploratore
  • **
  • Post: 183
  • Sesso: Maschio
    • Mostra profilo
Re:Reperire i parametri associati ad una voce di menų
« Risposta #8 il: 08 Mar 2010, 17:49:34 »
Per quanto riguarda il reperimento dei parametri del componente invece... altra scemata: facevo la getVar per 'itemid' invece di 'Itemid', avevo sorvolato per non coprirmi di ridicolo  ::)

Per quanto riguarda i parametri del modulo invece non capisco come possa funzionare: provo a spiegarti meglio.
Il componente in questione č una galleria per una concessionaria. C'č una lista dei veicoli da cui puoi accedere alla visualizzazione dei dettagli del singolo veicolo da cui puoi accedere al form di richiesta info.
Il modulo semplicemente mostra dei veicoli random con il link alla pagina dei dettagli. A quel punto ormai si č nel componente e, cliccando sul link al form per richiesta info il componente cerca di reperire l'indirizzo a cui spedire la richiesta dai suoi parametri, ma non č possibile perchč, arrivando dal modulo, non č detto che il punto di menų attivo sia quello del componente stesso.... lo sō, a spiegarlo č un casino... ma non č niente di particolare.

Ciao.

Ciao e grazie.
« Ultima modifica: 08 Mar 2010, 18:17:33 da dacdam »

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:Reperire i parametri associati ad una voce di menų
« Risposta #9 il: 08 Mar 2010, 21:17:36 »
Citazione
... a spiegarlo č un casino...

ed infatti non ci ho capito nulla...   ??? ???

stai dicendo che nel menų ci sono pių link a differenti sezioni del componente e che dal modulo non sai quale linkare?

reperisce l'indirizzo a cui spedire la richiesta dai suoi parametri?? quale indirizzo? quale parametri? non mi vorrai dire che hai le mail inserite nell'url e magari in chiaro sulla pagina?  :o

che ne dici di passare l'id della tabella del veicolo e da quello risalire a tutte le info?

ciao,
marco
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline dacdam

  • Esploratore
  • **
  • Post: 183
  • Sesso: Maschio
    • Mostra profilo
Re:Reperire i parametri associati ad una voce di menų
« Risposta #10 il: 09 Mar 2010, 09:35:28 »
No, nessun indirizzo in chiaro nč passato via url...

Il componente ha un form di inserimento del messaggio da spedire alla concessionaria, ed routine che, tramite
Codice: [Seleziona]
$menus->getParams reperisce l'indirizzo a cui spedire la mail e poi la invia.... il modulo ha un link al componente verso la pagina col form di inserimento del messaggio. Tutto qui.

Prova ad immaginare il flusso quando un visitatore del sito clicca sul link nel modulo...

mau_develop

  • Visitatore
Re:Reperire i parametri associati ad una voce di menų
« Risposta #11 il: 09 Mar 2010, 10:04:14 »
Il modulo semplicemente mostra dei veicoli random con il link alla pagina dei dettagli. A quel punto ormai si č nel componente e, cliccando sul link al form per richiesta info il componente cerca di reperire l'indirizzo a cui spedire la richiesta dai suoi parametri, ma non č possibile perchč, arrivando dal modulo, non č detto che il punto di menų attivo sia quello del componente stesso
------------------------------------------------------------
Questo dovrebbe farlo il modulo con una view diversa, che mostri il form

M.

Offline dacdam

  • Esploratore
  • **
  • Post: 183
  • Sesso: Maschio
    • Mostra profilo
Re:Reperire i parametri associati ad una voce di menų
« Risposta #12 il: 09 Mar 2010, 10:47:16 »
Perfetto mau_develop, hai colto nel segno.

Allora non c'č rimedio ?

L'unica soluzione che mi viene in mente č iterare nei menų del sito alla ricerca di uno che sia legato al componente, poi reperire da quell'itemid le opzioni.... perō cosa metto a fare l'indirizzo nei parametri se poi lo reperisco da un menų a caso ? Tanto vale che questo indirizzo lo cablo nel codice del componente.... e per ora sto facendo cosė.

mau_develop

  • Visitatore
Re:Reperire i parametri associati ad una voce di menų
« Risposta #13 il: 09 Mar 2010, 11:43:30 »
non capisco perchč continui a parlare di componente, lascialo perdere, se ti serve non č per qs cosa.

Il modulo ha una view che mostra il form e dei metodi che ne gestiscono il check e l'upload o l'invio o quello che vuoi.

Il componente andrā a pescarsi i dati dal db, a meno che non ti servano metodi o espansioni di classi che hai costruito nel componente e che obbligatoriamente devono stare lė, magari perchč usate anche dal backend,... ma guarda che Marco č molto pių bravo di me, ... nn so se approva la mia logica,... sentiamo :)

M.

Offline dacdam

  • Esploratore
  • **
  • Post: 183
  • Sesso: Maschio
    • Mostra profilo
Re:Reperire i parametri associati ad una voce di menų
« Risposta #14 il: 09 Mar 2010, 13:46:06 »
Forse il fulcro del discorso č che non ho implementato una view con il form per il modulo... il modulo ha una sola view che emette un riquadro con alcuni dettagli del veicolo + un link alla view del componente che mostra i dettagli per esteso, foto ed il famigerato link alla view (sempre del componente) con il form di richiesta informazioni.
Provo a mettere in allegato uno schema che rappresenti meglio la situazione

[allegato vecchio pių di un anno eliminato automaticamente]

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:Reperire i parametri associati ad una voce di menų
« Risposta #15 il: 09 Mar 2010, 15:56:19 »
... ma guarda che Marco č molto pių bravo di me...

ehhh, esssaggerato  ;D ;D ;D ;D

fammi capire dacdam,

1.
hai un componente che visualizza macchine e permette di inviare una richiesta di informazioni. si tratta di un unico componente o di due componenti?

2.
gli indirizzi cui inviare la richiesta variano a seconda del veicolo scelto? se sė allora dall'id del veicolo DEVI poter risalire al destinatario. altrimenti ti basta leggere i parametri del componente (vedi http://docs.joomla.org/Component_parameters) o quelli di qualsiasi voce di menų (vedi quanto giā detto).

3.
per il modulo che visualizza le macchine e linka al componente usa JHTML::_('link',...) per creare il link al componente e passagli lo id della macchina a questo punto sei al punto 2.

mi hai fatto venire mal di testa ;)

ciao,
marco
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline dacdam

  • Esploratore
  • **
  • Post: 183
  • Sesso: Maschio
    • Mostra profilo
Re:Reperire i parametri associati ad una voce di menų
« Risposta #16 il: 09 Mar 2010, 16:30:31 »
L'indirizzo č uno solo ed č scritto nei parametri del componente, che č uno solo e gestisce dalla lista alla richiesta di info. Nel processo attraverso il componente non ci sono problemi, come mi avete detto becco l'id dalla richiesta ed accedo ai parametri.
Ma passando dal modulo (come hai descritto al punto 3), come prendo i parametri ? L'Itemid non č affidabile: il modulo č visualizzato in tutti i menų!

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:Reperire i parametri associati ad una voce di menų
« Risposta #17 il: 10 Mar 2010, 09:59:14 »
 ??? ???
mi spiace, ma io rinuncio a capire che vuoi fare....

ma e che ti servono i parametri del componente nel modulo??

secondo me stai sbagliando il progetto...

ciao,
marco
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

Offline dacdam

  • Esploratore
  • **
  • Post: 183
  • Sesso: Maschio
    • Mostra profilo
Re:Reperire i parametri associati ad una voce di menų
« Risposta #18 il: 10 Mar 2010, 12:22:04 »
Ok, non preoccuparti. Per il momento ho trovato una soluzione momentanea, ci penserō pių avanti.

Comunque, solo per chiarezza, vorrei precisare che non voglio che il modulo legga i parametri del componente (giā dal primo intervento ho notato che tu la pensi cosė).... anche a me quella sembrerebbe una castroneria! Qui si tratta del fatto che il componente viene richiamato dall'esterno (in questo caso il mio modulo) e quindi il punto di menų attivo non č quello dove sono reperibili i suoi parametri.
Secondo me aveva capito bene mau_develop:
Citazione
Il modulo semplicemente mostra dei veicoli random con il link alla pagina dei dettagli. A quel punto ormai si č nel componente e, cliccando sul link al form per richiesta info il componente cerca di reperire l'indirizzo a cui spedire la richiesta dai suoi parametri, ma non č possibile perchč, arrivando dal modulo, non č detto che il punto di menų attivo sia quello del componente stesso

Ad ogni modo grazie mille per l'aiuto, sei stato fin troppo paziente.

 



Web Design Bolzano Kreatif