diff --git a/getdistorted/getdistorted.rb b/getdistorted/getdistorted.rb index 1fc7910..6ef6c18 100755 --- a/getdistorted/getdistorted.rb +++ b/getdistorted/getdistorted.rb @@ -24,6 +24,7 @@ require 'uri' require 'rexml/document' require 'date' require 'getoptlong' +require 'yaml' @debug=false @@ -178,11 +179,16 @@ def getenclosure(podcast, item) filename = cast.dup filename.sub!(/^.*\//, "") if @podcasts[podcast]["rename"] - replacement = @podcasts[podcast]["rename"][1].dup - if replacement.match(/%%DATE%%/) - replacement.gsub!(/%%DATE%%/, date) + renames = Array.new + @podcasts[podcast]["rename"].collect{|x| renames.push(x.dup)} + while renames.length > 0 + pattern = renames.shift + replacement = renames.shift + if replacement.match(/%%DATE%%/) + replacement.gsub!(/%%DATE%%/, date) + end + filename.gsub!(pattern, replacement) end - filename.gsub!(@podcasts[podcast]["rename"][0], replacement) end @filelist[filename] = true if ! File.exists?("#{@podcasts[podcast]["savedir"]}/#{filename}") @@ -199,7 +205,7 @@ def getenclosure(podcast, item) rescue Timeout::Error, Errno::EHOSTUNREACH, Errno::ECONNREFUSED, Errno::ECONNRESET, Errno::ETIMEDOUT, Net::HTTPFatalError puts " error #{$!} fetching, skipping" rescue - puts "WTF" + puts "WTF: #{$!}" end else return "#{@podcasts[podcast]["savedir"]}/#{filename}"