#!/bin/sh
# currently unused (batch-unzip.c is used instead)
if [ "$1" = "--" ]
then
	shift
fi
	
if [ -z "$1" ]
then
	echo "Usage: batch-unzip <file.zip> [<file.zip> ...]" >&2
	exit 1
fi

status=0

base="$1"
base="`/usr/bin/basename \"${base}\"`"
base2="${base%.zip}"
base2="${base2%.cbz}"

while [ ! -z "$1" ]
do

	directory="$1"
	directory="${directory%.zip}"
	directory="${directory%.cbz}"
	if [ "${directory}" = "$1" ]
	then
		directory="${directory}.d"
	fi

	/usr/bin/unzip -o -q -d "${directory}" "$1"
	sub_status="$?"
       	if [ "${sub_status}" -eq "0" ]
	then # ok
		/bin/rm -f "$1"
		# not on maemo /usr/bin/unlink "$1" # TODO trash
	else
		status="${sub_status}"
	fi

	/usr/bin/unzip -qqql "$1" | /bin/grep -v -- "^${base2}/" >/dev/null || {
		# found an entry that doesn't starts with ${base} *inside* the archive
		
		# remove the extra useless subdirectory
		# not on maemo /bin/mv --target-directory="${directory}" -- "${directory}/${base}/"*
		if [ -d "${directory}/${base2}" ]
		then
			/bin/mv -- "${directory}/${base2}/"* "${directory}"
			/bin/rmdir -- "${directory}/${base2}"
		fi
	}

	shift
done
exit "${status}"
