dai che facciamo la 1.3

ho dato un'occhiata veloce poichè oggi e domani sono un po' preso dietro il mio gestionale, ci sono ancora un po' di cose che possono essere migliorate. Sostanzialmente va bene, c'è da rivedere un po' la logica e il codice ridondante.
Se vuoi essere al massimo aderente all'mvc, tutto ciò che fai nel default dovresti in realtà farlo nella view, se non nel model.
E' abbastanza illogico non mischiare il codice fino alla fine per poi farlo nel template, ti pare? .. piuttosto usane due.
Cioè, usare un if non è correttissimo anche se lo fanno tutti (estension di J comprese) ... è sempre codice, ...potrebbe avere il suo senso solo se usato per collassare colonne se i dati nn son presenti.... ma usare japplication... è un po' troppo

Preciso ancora... tutto "in my opinion".
Partiamo proprio dal template, facendo il percorso dei dati inseriti.
Tu, come dicevo, hai fatto if e messagi errore, io avrei (seguendo il tuo modo) tirato fuori l'errore nella view passandolo al template (è $this, lo puoi fare) e lì avrei fatto l'if tra form e risultato: se errore empty -> c'è il risultato altrimenti -> form.
O piu corretto ancora nel controller, usando il model per fare e verificare tutto e a seconda del risultato ->switch del template.
Ho molta più libertà di "espansione" se faccio così... potrei addirittura decidere che se inserisci una parolaccia faccio un set redirect e ti mando in home (es stupido).
Il controller ha proprio il compito, avvalendosi del model e dei suoi metodi, di scegliere che view associare o se non associarne.
<!-- search view -->
<?php if (!$_GET['code']){ ?>
------------------------------------------------------
nì... sia per il get sia perchè sei arrivato fin quì per vedere se hai nella get qs valore.... lo devi fare nel controller e assegnare la var alla view
<form name="input" action="<?php echo JRoute::_('index.php?option=com_jtracking');?>" method="get">
Codice: <input type="text" name="code" />
<input type="submit" value="Avvia ricerca..." />
</form>
----------------------------------------------------------------
nì anche questo.... method get, no , meglio post
perchè non metti tutti i parametri nell'input? size e maxlenght (la seconda ti fa già un filtro)
inserirei anche un campo hidden con la task da eseguire così da usare un tuo metodo nel controller che fa quanto detto sopra.
M.
EDIT:
Notice: Undefined index: code in /var/www/sites/safetymanager/components/com_jtracking/views/jtracking/tmpl/default.php on line 17
-------------------------------------------------------------------------
è vero che è un notice, ma a livello di programmazione è un errore non dichiarare una variabile prima di usarla, poichè nel caso non ci fosse non sa più da che parte recuperare quel namespace. Esiste solo dopo il click anche se è vuota infatti se clikki vuoto non da più l'errore
E' comunque contenuta nella parte già da modificare.... ne approfitto per un po' di didattica

