diff options
author | 2021-12-27 15:58:27 +0100 | |
---|---|---|
committer | 2021-12-27 15:58:27 +0100 | |
commit | bd13286d87e6273db0f55e8fd95ba3730171def4 (patch) | |
tree | e577625a7afbe553925c8c99e2c50ae302a32362 /search | |
download | website-bd13286d87e6273db0f55e8fd95ba3730171def4.tar.gz website-bd13286d87e6273db0f55e8fd95ba3730171def4.zip |
Initial commit
Diffstat (limited to 'search')
-rw-r--r-- | search/.htaccess | 9 | ||||
-rwxr-xr-x | search/index.cgi | 49 | ||||
-rw-r--r-- | search/index.rhtml | 11 | ||||
-rw-r--r-- | search/index.rhtml.config | 1 |
4 files changed, 70 insertions, 0 deletions
diff --git a/search/.htaccess b/search/.htaccess new file mode 100644 index 0000000..0807852 --- /dev/null +++ b/search/.htaccess @@ -0,0 +1,9 @@ +AddHandler cgi-script .cgi +Options +ExecCGI +DirectoryIndex index.cgi + +#AuthType Basic +#AuthName "Accesso ad area riservata" +#AuthUserFile /home/jbazwqye/public_html/search/.htpasswd +#AuthUserFile /home/alessandro/devel/website/search/.htpasswd +#Require valid-user diff --git a/search/index.cgi b/search/index.cgi new file mode 100755 index 0000000..86df972 --- /dev/null +++ b/search/index.cgi @@ -0,0 +1,49 @@ +#!/bin/sh + +printf "Content-Type: text/html\n\n" + +IFS='&' + +for arg in $QUERY_STRING; do + case $arg in + q=*) + WORDS=`echo $arg | sed 's/q=//'` + ;; + esac +done + +RETURN=$( +find ../ -name "*.html" -not -path "../search/*" | + while read i; do + RESULTS=`grep "$WORDS" $i` + if [ ! -z "$RESULTS" ]; then + TITLE=`grep "<title>.*</title>" $i | sed 's/<[^>]*>//g' | sed 's/[ ]*//'` + echo $i | sed -E 's/[\.\/]*(.*)/<a href="\/\1"><h4>'$TITLE'<\/h4><\/a>/g' + echo "<ul>" + grep "$WORDS" $i \ + | sed -E 's/<[^>]*>//g' \ + | sed -E 's/[ ]*(.*)/<li>\1<\/li>/g' \ + | sed -E 's/('$WORDS')/<span style="background: yellow">\1<\/span>/g' + echo "</ul>" + fi + done + ) + +while read -r line; do + if [ $line == '<!-- DELIMITER -->' ]; then + if [ -z $RETURN ]; then + echo "<p>Nessun risultato</p>" + else + echo $RETURN + fi + else + echo $line + fi +done < index.html + +#grep -r "$WORDS" ../ --exclude-dir=search --exclude-dir=assets +# | sed -E 's/รจ/\è/g' \ +# | sed -E 's/<[^>]*>//g' \ +# | sed -E 's/[\.\/]*([^:]*):[ ]*(.*)/\/\1:\2/g' \ +# | sed -E 's/([^:]*):(.*)/<li><a href="\1">\2<\/a><\/li>/g' + diff --git a/search/index.rhtml b/search/index.rhtml new file mode 100644 index 0000000..e7cebee --- /dev/null +++ b/search/index.rhtml @@ -0,0 +1,11 @@ +<h1>Risultati della ricerca</h1> + +<!-- DELIMITER --> + +<script> + window.addEventListener("load", function() { + var url = new URL(window.location); + var q = url.searchParams.get("q"); + document.getElementsByTagName('input')[0].value = q; + }, false); +</script> diff --git a/search/index.rhtml.config b/search/index.rhtml.config new file mode 100644 index 0000000..3c92471 --- /dev/null +++ b/search/index.rhtml.config @@ -0,0 +1 @@ +title = "Cerca"
\ No newline at end of file |