awestruct 0.0.8 → 0.0.9

Sign up to get free protection for your applications and to get access to all the features.
@@ -20,6 +20,7 @@ require 'awestruct/context_helper'
20
20
  require 'awestruct/extensions/pipeline'
21
21
  require 'awestruct/extensions/posts'
22
22
  require 'awestruct/extensions/indexifier'
23
+ require 'awestruct/extensions/data_dir'
23
24
  require 'awestruct/extensions/paginator'
24
25
  require 'awestruct/extensions/atomizer'
25
26
  require 'awestruct/extensions/tagger'
@@ -0,0 +1,33 @@
1
+
2
+ module Awestruct
3
+ module Extensions
4
+
5
+ class DataDir
6
+
7
+ def initialize(data_dir="_data")
8
+ @data_dir = data_dir
9
+ end
10
+
11
+
12
+ def execute(site)
13
+
14
+ Dir[ "#{site.dir}/#{@data_dir}/*" ].each do |entry|
15
+ if ( File.directory?( entry ) )
16
+ data_key = File.basename( entry )
17
+ data_map = {}
18
+ Dir[ "#{entry}/*" ].each do |chunk|
19
+ File.basename( chunk ) =~ /^([^\.]+)/
20
+ key = $1.to_sym
21
+ chunk_page = site.engine.load_page( chunk )
22
+ data_map[ key ] = chunk_page
23
+ end
24
+ site.send( "#{data_key}=", data_map )
25
+ end
26
+ end
27
+
28
+ end
29
+
30
+ end
31
+
32
+ end
33
+ end
@@ -29,7 +29,7 @@ module Awestruct
29
29
  end
30
30
  end
31
31
 
32
- posts = posts.sort_by{|each| [each.date, File.mtime( each.source_path ), each.slug ] }.reverse
32
+ posts = posts.sort_by{|each| [each.date, each.sequence || 0, File.mtime( each.source_path ), each.slug ] }.reverse
33
33
 
34
34
  last = nil
35
35
  singular = @assign_to.to_s.singularize
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: awestruct
3
3
  version: !ruby/object:Gem::Version
4
- hash: 15
4
+ hash: 13
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 8
10
- version: 0.0.8
9
+ - 9
10
+ version: 0.0.9
11
11
  platform: ruby
12
12
  authors:
13
13
  - Bob McWhirter
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-08-30 00:00:00 -04:00
18
+ date: 2010-09-15 00:00:00 -04:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -138,6 +138,7 @@ files:
138
138
  - lib/awestruct/erb_file.rb
139
139
  - lib/awestruct/erbable.rb
140
140
  - lib/awestruct/extensions/atomizer.rb
141
+ - lib/awestruct/extensions/data_dir.rb
141
142
  - lib/awestruct/extensions/google_analytics.rb
142
143
  - lib/awestruct/extensions/indexifier.rb
143
144
  - lib/awestruct/extensions/intense_debate.rb