Sha256: 1ec93322b944a31b79d05b5dcf5527ea0fdbe8e44d11c9cf4f0ca204306ca0f1

Contents?: true

Size: 762 Bytes

Versions: 61

Compression:

Stored size: 762 Bytes

Contents

module Awestruct
  module Extensions
    class DataDir

      def initialize(data_dir="_data")
        @data_dir = data_dir
      end

      def watch(watched_dirs)
          watched_dirs << @data_dir
      end

      def execute(site)
        Dir[ "#{site.dir}/#{@data_dir}/*" ].each do |entry|
          if ( File.directory?( entry ) )
            data_key = File.basename( entry )
            data_map = {}
            Dir[ "#{entry}/*" ].each do |chunk|
              File.basename( chunk ) =~ /^([^\.]+)/
              key = $1.to_sym
              chunk_page = site.engine.load_page( chunk )
              data_map[ key ] = chunk_page
            end
            site.send( "#{data_key}=", data_map )
          end
        end
      end

    end
  end
end

Version data entries

61 entries across 61 versions & 2 rubygems

Version Path
awestruct-0.6.2 lib/awestruct/extensions/data_dir.rb
awestruct-0.6.1 lib/awestruct/extensions/data_dir.rb
awestruct-0.6.0 lib/awestruct/extensions/data_dir.rb
awestruct-0.6.0.RC1 lib/awestruct/extensions/data_dir.rb
awestruct-0.6.0.alpha4 lib/awestruct/extensions/data_dir.rb
awestruct-0.6.0.alpha3 lib/awestruct/extensions/data_dir.rb
awestruct-0.6.0.alpha1 lib/awestruct/extensions/data_dir.rb
awestruct-0.5.7 lib/awestruct/extensions/data_dir.rb
awestruct-0.5.7.RC2 lib/awestruct/extensions/data_dir.rb
awestruct-0.5.7.RC1 lib/awestruct/extensions/data_dir.rb
awestruct-0.5.6 lib/awestruct/extensions/data_dir.rb
awestruct-0.5.6.beta9 lib/awestruct/extensions/data_dir.rb
awestruct-0.5.6.beta8 lib/awestruct/extensions/data_dir.rb
awestruct-0.5.6.beta7 lib/awestruct/extensions/data_dir.rb
awestruct-0.5.6.beta6 lib/awestruct/extensions/data_dir.rb
awestruct-0.5.6.beta5 lib/awestruct/extensions/data_dir.rb
awestruct-0.5.6.beta4 lib/awestruct/extensions/data_dir.rb
awestruct-0.5.6.beta3 lib/awestruct/extensions/data_dir.rb
awestruct-0.5.6.beta2 lib/awestruct/extensions/data_dir.rb
awestruct-0.5.6.beta lib/awestruct/extensions/data_dir.rb