#!/bin/bash

FICHFUNCS="/usr/bin/vx-funcs-bash"
[ -f "${FICHFUNCS}" ] && . "${FICHFUNCS}"

if [[ -z "${1}" ]] || ! [[ -f "${1}" ]] ; then
    TITULO="Error en la Llamada al Programa"
    # MimeTypes=image/bmp;image/gif;image/jpeg;image/png;image/svg+xml;image/tiff
    TEXTO="Debes Introducir al menos un parámetro: la ruta de un  Archivo"
    vx-mensaje_y_salir "${TITULO}" "${TEXTO}" "1" "info" "salir"
fi

ICONO="vitalinux"
IMAGEN="image-icon"

# Obtenemos el número de parámetros recibidos: %F son el número de rutas absolutas de los archivos seleccionados
NUMPARAM=$#
# Creamos una lista con los parámetros recibidos $@.  El primer parametro es el ${PARAM[0]} ...  ${PARAM[*]} sería todos
# La mitad de los parametros recibidos son las rutas absolutas de los archivos, y la otra mitad son sus extensiones
declare -a PARAM
PARAM=($@)
RESULTADO=""
#yad --text "Se han seleccionado $# archivos y sus rutas son $*"
INCREMENTO=$(echo 100/$NUMPARAM | bc)
CONTADOR=0

if ELECCION=$(yad \
    --title "Conversor de Formato de Imágenes" \
    --image "${IMAGEN}" --window-icon "${ICONO}" \
    --text-align center --text "  Indica el <b>Formato de conversión</b> deseado:  " \
    --list --radiolist \
    --column "Selección" --column "Formato de Conversión" \
    FALSE JPG TRUE PNG FALSE TIFF FALSE BMP FALSE PDF FALSE GIF \
    --width 420 --height 250 --center \
    --button="Convertir Imágenes:0" --button="Salir:1") ; then
    
    EXTENSION=$(echo $ELECCION | cut -d"|" -f2 | tr [:upper:] [:lower:])
    (
        echo "#Va a empezar a convertirse los archivos seleccionados ..."
        until [ -z "$1" ] ; do
            
            #if echo $1 | grep "[.][pP][nN][gG]" &> /dev/null ; then
            ARCHIVO="$(echo $1 | awk -F'/' '{ print $NF }')"
            NOMBRE=$(basename -s .$(echo $1 | awk -F'.' '{ print $NF }') "$1")
            DIRECTORIOBASE=$(dirname "$1")
            
            echo "#Convirtiendo la imágen: $ARCHIVO ...\nLa imágen resultante se llamará $NOMBRE.$EXTENSION ..."
            
            # dpkg -S convert | grep /usr/bin/convert : imagemagick (se requiere ese paquete para esta utilidad)
            if convert "$1" "$DIRECTORIOBASE/$NOMBRE.$EXTENSION" ; then
                RESULTADO="$RESULTADO\n$ARCHIVO --> $NOMBRE.$EXTENSION"
            fi
            CONTADOR=$(expr $CONTADOR + $INCREMENTO)
            echo $CONTADOR
            shift
        done
        echo "#Ok!!! Ya se ha terminado de convertir las Imágenes. \nComo Resultado: \n$RESULTADO"
        echo "100"
    ) | yad --title "Herramienta de conversión de Imágenes" \
    --window-icon "${ICONO}" \
    --image "${IMAGEN}" \
    --width 600 \
    --center \
    --progress --percentage=0 --button="Cerrar":0
    
fi
exit 0
