class RSSPub::Assemble

Public Class Methods

create_directories() click to toggle source

Create directories for file storage.

# File lib/RSSPub.rb, line 9
def self.create_directories
  system("mkdir feed; mkdir date; mkdir article; mkdir documents")

  system("cd feed; touch old_feed.txt; cd -> /dev/null/; cd article; touch input.txt; cd -> /dev/null/;")
end
create_issue() click to toggle source
# File lib/RSSPub.rb, line 20
    def self.create_issue
      old_output = File.read("feed/old_feed.txt")

      # Get the date.
      system("date > date/date.txt")

      # Immutables
      date             = File.read("date/date.txt").strip
      date_title       = date.tr " ", "_"

      aspi_description = File.read("article/input.txt").strip

      open("documents/#{date_title}.txt", "w") { |f|
        f.puts aspi_description
      }

      new_output = "
  <item>
    <title>#{date}</title>
    <link>http://localhost:8000/documents/#{date_title}.txt</link>
    <description><![CDATA[#{aspi_description}]]></description>
  </item>
      "

      open("feed/old_feed.txt", "w") { |f|
        f.puts new_output
      }

      generate_xml = "<?xml version='1.0' encoding='UTF-8' ?>
<rss version='2.0'>

<channel>
  <title>Personal Blog</title>
  <link>http://localhost:8000/feed.xml</link>
  <description>Local Feed for ASPI output.</description>

  #{new_output}
  #{old_output}
</channel>

</rss>"

      open("feed/feed.xml", "w") { |f|
        f.puts generate_xml
      }
    end
write_article() click to toggle source

Write new article.

# File lib/RSSPub.rb, line 16
def self.write_article
  system("nano article/input.md; markdown article/input.md > article/input.txt")
end