rejetto forum

File list search

0 Members and 1 Guest are viewing this topic.

Offline FRENCH CAN CAN

  • Tireless poster
  • ****
    • Posts: 681
    • View Profile
Ciao rejetto, ti segnalo un BUG sul template originale di HFS beta, nella pagina dei risultati di ricerca se si clicca su "File list" si visualizza la lista dei files dell'intero sito HFS invece della lista files trovati nei risultati di ricerca, si può risolvere sostituendo sul template originale la seguente stringa:

{.get|url|tpl=list|folders-filter=\|recursive.}

con questa stringa:

~files.lst?recursive&{.substring|?||%url%|include=none.}

in questo modo la lista con URLs dei files trovati viene restituita correttamente.

Vedi tu se fare la modifica nella prossima build, ciao, French. ;)


Hello Rejetto, you report a bug on the original template of HFS beta, the results page search if you click on "File list" displays the list of files instead of the entire site HFS list of files found in search results, you can solve by replacing the template Original the following string:

{.get|url|tpl=list|folders-filter=\|recursive.}

with this string:

~files.lst?recursive&{.substring|?||%url%|include=none.}

In this way the list of files with URLs found is returned correctly.

See if you make a change in the next build, hello, French. ;)

(google translated).


Offline rejetto

  • Administrator
  • Tireless poster
  • *****
    • Posts: 13510
    • View Profile
grazie per la segnalazione French ;)
anche se la tua soluzione funziona, siccome in un futuro lontano conto di dismettere tutte le URL speciali che cominciano con ~, ho preferito una soluzione che non l'usasse, appunto

{.get|url|tpl=list{.if not|{.?search.}|{:|folders-filter=\|recursive:}.}.}


fixed in next release


Offline FRENCH CAN CAN

  • Tireless poster
  • ****
    • Posts: 681
    • View Profile
Vedi se ti va bene questa soluzione, risolve il problema e la lista dei files con URLs viene visualizzata correttamente sia nelle cartelle che nei risultati di ricerca, inoltre non viene visualizzato "File list" quando non viene trovato nessun file.

Ho modificato in "hfs 250 corretto" la stringa originale con:

{.if|{.and|{.get|can recursive.}|{.or|%number%|.}.}|
       <li class="last"><a href="{.get|url|tpl=list|folders-filter=|recursive|{.substring|?||%url%|include=none.}|.}">File list</a></li> .}

Ti allego il Template originale già pronto in 2 versioni, ciao, French. ;)
« Last Edit: January 16, 2010, 09:43:04 PM by FRENCH CAN CAN »


Offline FRENCH CAN CAN

  • Tireless poster
  • ****
    • Posts: 681
    • View Profile
Ciao rejetto, quando troverai il tempo x leggere questo post vedi se puoi farmi sapere se va bene la soluzione del template "hfs 250 corretto", io intanto ho modificato il template "Vista Themes Full" con una soluzione similare e funziona bene. ;)


Offline rejetto

  • Administrator
  • Tireless poster
  • *****
    • Posts: 13510
    • View Profile
ciao french ;)
preferisco non utilizzare {.substring.} con {.get|url.}
anche se magari funziona bene, è concettualmente sbagliato, visto che get|url già di suo riprende la vecchia url (e la trasforma).
e a sto punto preferisco l'altra soluzione, che funziona altrettanto.

sono curioso di sapere se {.or|%number%|.} è un errore, o se c'è un motivo per cui non hai scritto semplicemente %number%.

per l'idea di non mostrarlo proprio quando la lista è vuota, mi sembra abbastanza giusto, lo farò.


Offline FRENCH CAN CAN

  • Tireless poster
  • ****
    • Posts: 681
    • View Profile
sono curioso di sapere se {.or|%number%|.} è un errore, o se c'è un motivo per cui non hai scritto semplicemente %number%.
Ciao rejetto, scrivo "or" perchè anche se concettualmente sbagliato (dovrei scrivere "not") funziona facendo in modo che quando non viene trovato nessun file "%number%" non può essere presente, sul template vista non occorre inserire {.or|%number%|.} ma questo credo sia dovuto al fatto che sul tuo template non è presente la sezione "[nofiles]" concepita alla vecchia maniera, stranamente la negazione "not" non funziona in maniera corretta su questa stringa: "{.if|{.and|{.?search.}|{.or|%number%|.}.}|" ma non so dirti il motivo, sembra che la macro "or" funziona in maniera contraria per come è stata concepita, comunque come hai visto anche il primo template "hfs" funziona bene, penso che probabilmente da come dici sceglierai questo per la prossima build quindi essendo funzionante la stringa non mi pongo il problema, se hai notizie in proposito sono in ascolto.


Offline rejetto

  • Administrator
  • Tireless poster
  • *****
    • Posts: 13510
    • View Profile
per come lo usi tu non credo sia possibile che si comporti come un "not".
a sto punto mi dilungo un po' a spiegarne il funzionamento, visto che tu sei spesso interessato ai dettagli tecnici. ;)
{.or.} serve a funzionare principalmente come l'operatore logico OR
http://it.wikipedia.org/wiki/Algebra_di_Boole#OR
e fin qui.....
però in alcuni linguaggi, e anche in HFS, è qualcosa di più (pur continuando a essere compatibile con la sua funzione principale):
restituisce l'ultimo valore che sia considerato "true".
o se proprio non ce ne stanno di valori "true", restituisce l'ultimo valore.

nel momento in cui tu l'usi come {.or|%number%|.} sarà sempre uguale a %number% tranne nel caso in cui è zero. In tale caso  invece di dare zero, dà la stringa vuota (che è l'ultimo parametro, visto che tu hai messo un "|" finale.

ora, fatto sta che tutta sta dicussione sull'uso speciale di {.or.} vale poco o niente in questo caso.
per quanto ne so, se tu cambi {.or|%number%|.} in un semplice %number% tutto continuerà a funzionare ugualmente.
se così non fosse, o c'è un bug, o mi sto scemendo io :D
« Last Edit: January 18, 2010, 11:21:37 PM by rejetto »


Offline FRENCH CAN CAN

  • Tireless poster
  • ****
    • Posts: 681
    • View Profile
Funziona se modifico la stringa in questo modo:

{.if|{.and|{.?search.}|{.|%number%|.}.}|

Non funziona se modifico la stringa come dici tu:

{.if|{.and|{.?search.}|{.%number%.}.}|

Il valore %number% dovrebbe essere 0 nei risultati di ricerca quando non viene trovato nessun file, non dovrebbe essere preceduto da un "not" cioè da una negazione per funzionare correttamente?


Offline rejetto

  • Administrator
  • Tireless poster
  • *****
    • Posts: 13510
    • View Profile
io intendevo così
{.if|{.and|{.?search.}|%number%.}|

nel primo caso tu stai richiamando un comando senza nome; nel secondo caso il comando ha come nome il valore di %number%, quindi se %number% è 5, stai cercando di richiamare il comando "5" (che non esiste).

se abiliti debug > macros.log vedrai in che modo vengono valutati i comandi. certo, non è chiarissimo, però può aiutare.


il not devi mettercelo a secondo di quello che vuoi fare.
se ce lo metti, allora vuol dire che tu vuoi che le operazioni avvengano quando l'utente STA cercando ma NON ci sono risultati.
senza il not invece tu dici che ci devono essere risultati.
siccome stai mostrando il link alla lista, immagino che tu richieda almeno qualche risultato, e quindi il not non ci va.
« Last Edit: January 19, 2010, 10:18:13 AM by rejetto »