namespace :db do

namespace :diagrams do

  desc "Generate DB diagrams and convert to PDF with Graphviz and Ghostview"
  task :pdf => 'db:diagrams:ps' do
    ModalDiagrams.parameters.output_tools.each do |cmd|
      in_dir = Rails.root.join("db/diagrams/#{cmd}_ps")
      out_dir = Rails.root.join("db/diagrams/#{cmd}_pdf")
      mkdir_p out_dir
      Dir[in_dir.join('*.ps')].each do |fn|
        fn = Pathname(fn)
        out_fn = out_dir.join(fn.basename.sub_ext('.pdf'))
        `ps2pdf '#{fn}' '#{out_fn}'`
      end
      puts "Output has been generated in #{out_dir}"
    end
  end

end

end