#!/usr/bin/env bash

CAVE_LIST_COMPLETE_FILE=$1

if [ "$CAVE_LIST_COMPLETE_FILE" = "" ]; then
    echo "Usage: $0 <complete cave list file>"
    exit 5
fi

CONVERT_LEVELS_LOG_FILE="convert_levels.log"

CODES_COMPLETE_FILE_TMP=".codes-complete.tmp"
CODES_CONVERTED_FILE_TMP=".codes-converted.tmp"
CODES_MISSING_FILE_TMP=".codes-missing.tmp"

DATESTAMP=`date +%Y%m%d`

CAVE_LIST_CONVERTED_FILE="packaged_caves-$DATESTAMP-1.txt"
CAVE_LIST_MISSING_FILE="missing_caves-$DATESTAMP-1.txt"

cat "$CAVE_LIST_COMPLETE_FILE"			\
    | grep -v "^$"				\
    | grep -v "^# "				\
    | awk '{ print $2 }'			\
    | sort					\
    > "$CODES_COMPLETE_FILE_TMP"

cat "$CONVERT_LEVELS_LOG_FILE"			\
    | grep " o Converting "			\
    | awk -F\. '{ print $2 }'			\
    | sort					\
    > "$CODES_CONVERTED_FILE_TMP"

diff -u "$CODES_COMPLETE_FILE_TMP" "$CODES_CONVERTED_FILE_TMP"	\
    | grep "^-[A-Za-z0-9]"					\
    | sed -e "s/^-//"						\
    > "$CODES_MISSING_FILE_TMP"

./select_caves_from_list.pl "$CAVE_LIST_COMPLETE_FILE" "$CODES_CONVERTED_FILE_TMP"	\
    > "$CAVE_LIST_CONVERTED_FILE"

./select_caves_from_list.pl "$CAVE_LIST_COMPLETE_FILE" "$CODES_MISSING_FILE_TMP"	\
    > "$CAVE_LIST_MISSING_FILE"

exit 0
