# Variables locales.  local ARGS ARG TARGETDIR TARGETFILE



# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
    ogr Help "$FUNCNAME" "$FUNCNAME [str_REPOSITORY] [int_ndisk int_npart] Relative_path_file" \
           "$FUNCNAME 1 1 /aula1/winxp" \
           "$FUNCNAME REPO /aula1/winxp" \
           "$FUNCNAME /mnt/sda2/winxp"


    return
fi

# Comprobamos que existe Cache
`ogr FindCache > /dev/null` || ogr RaiseError $OG_ERR_NOTFOUND "CACHE" || return $?

ARGS="$*"
case "$1" in
    /*)     # Camino completo.          */ (Comentrio Doxygen)
    TARGETDIR=$(ogr GetParentPath "$1")
        ARG=1
		;;
    [1-9]*) # ndisco npartición.
    TARGETDIR=$(ogr GetParentPath "$1" "$2" "$3")
        ARG=3
        ;;
    *)      # Otros: repo, cache, cdrom (no se permiten caminos relativos).
    TARGETDIR=$(ogr GetParentPath "$1" "$2")
        ARG=2
        ;;
esac
#echo $TARGETDIR

# Error si no se reciben los argumentos ARG necesarios según la opcion.
[ "$#" -ne "$ARG" ] && ogr RaiseError $OG_ERR_FORMAT && return $?

#obtenemos el nombre del fichero a descargar.
TARGETFILE=`basename ${!ARG}`
CACHE=`ogr MountCache`

# Error si no existe el fichero torrent
[ -r $TARGETDIR/$TARGETFILE.img.torrent ] || ogr RaiseError $OG_ERR_NOTFOUND || return $?
[ -d ${CACHE}/$OGIMG ] || ogr RaiseError $OG_ERR_NOTFOUND || return $?

TimeToWaitForCloseAfterDownload=20  # tiempo que deseamos que el cliente este como semilla, despues de la descarga.

# Si el fichero ya se ha bajado antes de iniciar el ctorrent no se ejecuta el comando kill, siguen encendido siempre
# Comprobamos si se ha descargado antes, si es asi nos salimos
Total=`ctorrent -s ${CACHE}/$OGIMG/${TARGETFILE}.img -c $TARGETDIR/$TARGETFILE.img.torrent|tail -n1|cut -f2 -d\(`
[ $Total == "100%)" ] &&  return 0

echo "ctorrent -X 'sleep $TimeToWaitForCloseAfterDownload; kill -9 \$(pidof ctorrent)' $TARGETDIR/$TARGETFILE.img.torrent -s ${CACHE}/$OGIMG/${TARGETFILE}.img -b ${CACHE}/$OGIMG/$TARGETFILE.bf -C 100"
ctorrent -X "sleep $TimeToWaitForCloseAfterDownload; kill -9 \$(pidof ctorrent)" $TARGETDIR/$TARGETFILE.img.torrent -s ${CACHE}/$OGIMG/${TARGETFILE}.img -b ${CACHE}/$OGIMG/$TARGETFILE.bf -C 100

[ -r ${CACHE}/$OGIMG/$TARGETFILE.bf ] && rm ${CACHE}/$OGIMG/$TARGETFILE.bf
