#!/bin/bash
shopt -s nocaseglob

BASEDIR="/mnt/usb0/mp3/podCast"
FEEDS="${BASEDIR}/feeds.lst"

function getmp3() {
   echo "Channel: "$CHANNEL
   echo "Title:   "$TITLE
   echo "Link:    "$LINK
   echo "Date:    "$DATE
   echo "ENCL:    "$ENCL
   echo "HREF:    "$HREF
   echo ""
}

while read URL ; do
   CHANNEL=""
   while read LINE; do
      TAG=$(echo ${LINE}|sed -n 's/<\([^>\ ]*\).*/\1/p')
      if [[ "${CHANNEL}" = "" ]] && [[ "${TAG}" =~ "title" ]]; then
         CHANNEL=$(echo ${LINE} | sed -n -e 's/<title>\([^<]*\)<\/title>/\1/pi'|sed -e 's/[\r\n]//')
      fi
      case "${TAG}" in
         'title')     TITLE=$(echo "${LINE}" | sed -n 's/<title>\([^<]*\)<\/title>/\1/pi') ;;
         'link')      LINK=$(echo "${LINE}" | sed -n 's/.*<link>\([^<]*\)<\/link>/\1/pi') ;;
         'pubDate')   DATE=$(echo "${LINE}" | sed -n 's/.*<pubDate>\([^<]*\)<\/pubDate>/\1/pi') ;;
         'enclosure') ENCL=$(echo "${LINE}" | sed -n 's/.*<enclosure url=["'\'']\([^"'\'']*\)["'\''].*/\1/pi') ;;
         '/item')     getmp3 ;;
      esac
      if [[ "${LINE}" =~ 'href=["'\''][^"'\'']*[\.]mp3["'\'']' ]] ; then
         HREF=$(echo "${LINE}" | sed -n 's/.*href=["'\'']\([^"'\'']*\).mp3["'\''].*/\1.mp3/pi')
      fi
   done < <(wget -q -O - $URL) 
done < <(grep -v -e '^[;#]' -e '^$' $FEEDS)

