#!/bin/bash
#
# mkhtm : Fabrique une table html pour un moteur
#
#
# D'abord quelques petites fonctions:
#
# Fonction trimurl
# ################
#
# Pour raccourcir les Urls afin de ne pas avoir des tables trop larges..
#
# $1 : string. Si string > 12 coupe avec ...
#
trimurl () {
    local mx=$2
    if [ ${#1} -ge $mx ]; then
    echo "${1:0:${mx}}..."
    else
    echo $1
    fi
}
#
# Fonction table3col
# ##################
#
# crée 3 cellules de ligne d'une table à 3 colonnes = < urls , path fichier local , path fichier nettoyé >
# avec les références qui vont bien.
#
# $1 : path d'un fichier d' urls :
# $2 : expression recherchée
# $3 : moteur
#
# Ex : table3col /mnt/memory_card/inalco/ProgrammationEtProjetEncadre/projet/AleksEtYAnn/pages/google/barrage-hydraulique/urls barrage-hydraulique google

table3col () {

urls=$1
motcle=$2
moteur=$3

templatecell='__1<br/>'
templatehref='<a href="__1">__2</a>'
echo '<td>'
for url in `cat $urls`; do

    url1=$url
    txtu1=$(trimurl $url 70)
    fld1=$(echo $templatehref | sed -e "s!__1!$url1!g" -e "s!__2!$txtu1!g" )
    echo $templatecell | sed -e "s!__1!$fld1!g"

done
echo '</td><td>'
for url in `cat $urls`; do

    url2="../pages/${moteur}/${motcle}/$(basename $url)"
    txtu2=$(trimurl $(basename $url) 15)
    fld2=$(echo $templatehref | sed -e "s!__1!$url2!g" -e "s!__2!$txtu2!g" )
    echo $templatecell | sed -e "s!__1!$fld2!g"

done
echo '</td><td>'
for url in `cat $urls`; do

    url3="../result/${moteur}/${motcle}/$(basename $url)"
    txtu3=$(trimurl $(basename $url) 15)
    fld3=$(echo $templatehref | sed -e "s!__1!$url3!g" -e "s!__2!$txtu3!g" )
    echo $templatecell | sed -e "s!__1!$fld3!g"

done
echo '</td>'
}
#
# crée une table relative à un moteur.
# pour obtenir la liste des mots clés , on boucle sur le répertoire associé au moteur
#
# $1 : full path du répertoire du moteur sous le répertoire pages
# ex : /mnt/memory_card/inalco/ProgrammationEtProjetEncadre/projet/AleksEtYAnn/pages/google
#
tablemoteur () {
    local droot=$1
    local moteur=$(basename $droot)
    local th='<tr><td align="center">__1</td><td align="center">__2</td><td align="center">__3</td><td align="center">__4</td></tr>'
    echo '<html><body>'
    echo '<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2"><tbody>'
    echo '<tr>''<th style="text-align: center;" colspan="4" rowspan="1">'$moteur'</th>''</tr>'
    echo $th | sed -e "s!__1!Mots recherchés!g" -e "s!__2!Urls retenues!g" -e "s!__3!Fichier local!g" -e "s!__4!Après traitement!g"
    for d in $(ls -1 $droot) ; do
    echo '<tr>'
    echo '<td align="center">'$d'</td>'
    echo $(table3col $1/$d/urls $d $moteur)
    echo '</tr>'
    done
    echo '</tbody></table></body></html>'
}
# Ca commence ici
#
tablemoteur $1 > $2
echo "Table $2 crée."
exit