#!/usr/bin/env bash

# cc-0

tmpdir=$(mktemp --directory /tmp/"$( basename ${0} ).XXXXXX" )
base="https://hackerpublicradio.org"
reportfile="${tmpdir}/report.txt"
echo "Checking feeds"
#for feed in comments.rss comments_rss.php hpr_mp3.rss hpr_mp3_rss.php hpr_mp3_rss.php?series=47 hpr_ogg.rss hpr_ogg_rss.php hpr_ogg_rss.php?series=47 hpr_opus_rss.php hpr_opus_rss.php?series=47 hpr_rss_mp3.php hpr_rss.php hpr_spx.rss hpr.sql.rss hpr_total_mp3.rss hpr_total_ogg.rss hpr_total_ogg_rss.php hpr_total_opus_rss.php hpr_total_rss.php hpr_total_spx.rss rss-ccdnv1.php rss-future.php rss.php 
for feed in comments.rss comments_rss.php hpr_mp3_rss.php hpr_mp3_rss.php?series=47 hpr_ogg_rss.php hpr_ogg_rss.php?series=47 hpr_opus_rss.php hpr_opus_rss.php?series=47 hpr_rss_mp3.php hpr_rss.php hpr_total_ogg_rss.php hpr_total_opus_rss.php hpr_total_rss.php rss-ccdnv1.php rss-future.php rss.php 
do
  tmpfile="${tmpdir}/${feed}"
  wget --quiet "${base}/${feed}" --output-document="${tmpfile}"
  if [[ ! -s "${tmpfile}" || -z "${tmpfile}" ]]
  then
    echo "The \"${tmpfile}\" variable/file is missing."
    continue
  fi
  if [ "$( file --brief --mime-type "${tmpfile}" | grep --count 'xml' )" -ne "1" ]
  then
    echo "The \"${tmpfile}\" variable has not a valid \"text/xml\" mime type."
    continue
  fi
  xmllint --format "${tmpfile}" >/dev/null 2>&1
  if [ $? -ne 0 ]
  then
    echo "✗ The feed \"${base}/${feed}\" is not valid xml."
    echo "Check file \"${tmpfile}\""
  else
    rm "${tmpfile}"
  fi
done
echo "Finished Checking feeds"
# check_urls_in_file.bash

# read -p "Remove the feeds ? (Y|n) ? " -n 1 -r
# echo    # (optional) move to a new line
# if [[ ! $REPLY =~ ^[Yy]$ ]]
# then
#   echo "The files are available in \"${tmpdir}\"."
# else
#   rm -v "${tmpdir}/*.*"
# fi
