#!/bin/bash
# servscilab - lanzador
# uso: servscilab [proyectil|estadistica|/ruta/a/mi/app]

BASE=/usr/local/share/servscilab

show_help() {
    echo "uso: servscilab [proyectil|estadistica|/ruta/app]"
    echo ""
    echo "  servscilab proyectil    ejemplo de simulacion de proyectil"
    echo "  servscilab estadistica  ejemplo de estadistica descriptiva"
    echo "  servscilab /mi/app      aplicacion propia"
    echo ""
    echo "El directorio debe contener formulario.html y calcular.sce."
    echo "servidor.py se copia automaticamente si no esta."
}

case "${1:-}" in
    ""|-h|--help)
        show_help
        exit 0
        ;;
    proyectil)
        DIR=$(mktemp -d)
        cp $BASE/proyectil/formulario.html $DIR/formulario.html
        cp $BASE/proyectil/calcular.sce    $DIR/calcular.sce
        cp $BASE/servidor.py               $DIR/servidor.py
        ;;
    estadistica)
        DIR=$(mktemp -d)
        cp $BASE/estadistica/formulario.html $DIR/formulario.html
        cp $BASE/estadistica/calcular.sce    $DIR/calcular.sce
        cp $BASE/servidor.py                 $DIR/servidor.py
        ;;
    /*)
        DIR="$1"
        if [ ! -f "$DIR/formulario.html" ]; then
            echo "Error: no se encontro $DIR/formulario.html"
            exit 1
        fi
        if [ ! -f "$DIR/calcular.sce" ]; then
            echo "Error: no se encontro $DIR/calcular.sce"
            exit 1
        fi
        if [ ! -f "$DIR/servidor.py" ]; then
            cp $BASE/servidor.py "$DIR/servidor.py"
            echo "copiado servidor.py a $DIR/"
        fi
        ;;
    *)
        echo "Error: argumento desconocido: $1"
        show_help
        exit 1
        ;;
esac

echo "servscilab: directorio $DIR"
echo "servscilab: abriendo http://localhost:8080"
cd "$DIR"
python3 servidor.py
