#!/bin/bash
echo "Content-Type: application/json"
echo ""

# Suchbegriff aus der QUERY_STRING-Variable extrahieren (z.B. search=missing.*in.*action)
# sed dekodiert URL-Sonderzeichen und entfernt gefährliche Zeichen
SEARCH_TERM=$(echo "$QUERY_STRING" | sed -n 's/^.*search=\([^&]*\).*$/\1/p' | sed 's/%20/ /g; s/%2A/*/g; s/[^a-zA-Z0-9.* _-]//g')

# Falls kein Suchbegriff übergeben wurde, brich ab
if [ -z "$SEARCH_TERM" ]; then
    echo "{\"error\": \"Kein Suchbegriff übergeben\"}"
    exit 0
fi

# Ausführung des optimierten AWK-Befehls mit dem dynamischen Suchbegriff

#RESULT=$(awk -F'\t' -v pattern="$SEARCH_TERM" '{ line = tolower($0) } line ~ pattern { count[$1]++ } END { for (id in count) if (count[id] > max) { max = count[id]; best = id }; print best }' /home/obi/Schreibtisch/imdb/title.akas.tsv)

#RESULT=$(cat /var/www/openaaf/imdb/title.akas.tsv | tr 'A-Z' 'a-z' | grep -E 'add.*astra' | sed 's/\t/|/g' | cut -d'|' -f1 | sort | uniq -c | sort -rn | head -n1 | awk '{print $2}')

RESULT=$(time cat /var/www/openaaf/imdb/title.akas.tsv | tr 'A-Z' 'a-z' | grep -E "$SEARCH_TERM" | sed 's/\t/|/g' | cut -d'|' -f1 | sort | uniq -c | sort -rn | head -n1 | awk '{print $2}')



# Ergebnis als JSON zurückgeben
echo "{\"id\": \"$RESULT\"}"

