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