lib/runeblog.rb in runeblog-0.1.48 vs lib/runeblog.rb in runeblog-0.1.49

- old
+ new

@@ -32,11 +32,11 @@ end attr_reader :root, :views, :sequence, :editor attr_accessor :view # overridden - attr_accessor :post_views, :post_tags + attr_accessor :post_views, :post_tags, :dirty_views include Helpers def self.create_new_blog(dir = ".blog/data") raise ArgumentError unless dir.is_a?(String) && ! dir.empty? @@ -213,10 +213,12 @@ write_config(x, ConfigFile) self.view = view # error checking? end def process_post(file) +sleep 3 + puts " process_post #{file.inspect} pwd = #{Dir.pwd}" debug "=== process_post #{file.inspect} pwd = #{Dir.pwd}" raise ArgumentError unless file.is_a?(String) path = @root + "/src/#{file}" raise FileNotFound(path) unless File.exist?(path) num = file.to_i # e.g. 0098-this-is-a-title @@ -228,11 +230,12 @@ error(err) getch end def generate_index(view) - debug "=== generate_index view = #{view.inspect}" + puts " generate_index view = #{view.to_s}" + debug "=== generate_index view = #{view.to_s}" raise ArgumentError unless view.is_a?(String) || view.is_a?(RuneBlog::View) # Gather all posts, create list vdir = "#@root/views/#{view}" posts = Dir.entries(vdir).grep /^\d{4}/ posts = posts.sort.reverse @@ -296,10 +299,13 @@ def rebuild_post(file) debug "Called rebuild_post(#{file.inspect})" raise ArgumentError unless file.is_a?(String) meta = process_post(file) - self.views.each {|view| generate_index(view) } # All views for now? + @views_dirty ||= [] + @views_dirty << meta.views + @views_dirty.flatten! + @views_dirty.uniq! rescue => err error(err) getch end