Module: Stratus::Resources
- Defined in:
- lib/stratus/resources.rb,
lib/stratus/resources/base.rb,
lib/stratus/resources/layout.rb,
lib/stratus/resources/content.rb,
lib/stratus/resources/hash_db.rb,
lib/stratus/resources/template.rb,
lib/stratus/resources/attachment.rb
Defined Under Namespace
Classes: Attachment, Base, Content, HashDB, Layout, Template
Class Method Summary
collapse
Class Method Details
.all ⇒ Object
5
6
7
|
# File 'lib/stratus/resources.rb', line 5
def all
@all ||= HashDB.new
end
|
.attachments(*args) ⇒ Object
36
37
38
39
|
# File 'lib/stratus/resources.rb', line 36
def attachments(*args)
filter = args..merge! :content_type=>:attachment
all.find((args.first || :all), filter)
end
|
.clear ⇒ Object
63
64
65
|
# File 'lib/stratus/resources.rb', line 63
def clear
all.clear
end
|
.collection_types ⇒ Object
25
26
27
|
# File 'lib/stratus/resources.rb', line 25
def collection_types
@collecton_types ||= []
end
|
.content(*args) ⇒ Object
30
31
32
33
|
# File 'lib/stratus/resources.rb', line 30
def content(*args)
filter = args..merge! :content_type=>:content
all.find((args.first || :all), filter)
end
|
.homepage ⇒ Object
21
22
23
|
# File 'lib/stratus/resources.rb', line 21
def homepage
@all.find(:first, :is_homepage=>true)
end
|
.layouts(*args) ⇒ Object
58
59
60
61
|
# File 'lib/stratus/resources.rb', line 58
def layouts(*args)
filter = args..merge! :content_type=>:layout
all.find((args.first || :all), filter)
end
|
.pages(*args) ⇒ Object
46
47
48
49
|
# File 'lib/stratus/resources.rb', line 46
def pages(*args)
filter = args..merge! :collection_type=>'pages', :content_type=>:content
all.find((args.first || :all), filter)
end
|
.posts(*args) ⇒ Object
41
42
43
44
|
# File 'lib/stratus/resources.rb', line 41
def posts(*args)
filter = args..merge! :collection_type=>'posts', :content_type=>:content
all.find((args.first || :all), filter)
end
|
.register_content(content) ⇒ Object
9
10
11
12
13
14
15
16
17
18
19
|
# File 'lib/stratus/resources.rb', line 9
def register_content(content)
content.fixup_meta
validates, msg = content.validate!
if validates
collection_types << content.collection_type unless collection_types.include?( content.collection_type ) or content.content_type != :content
all << content
else
msg ||= "Failed validation..."
puts " * Skipping '#{content.content_path}': #{msg}"
end
end
|
.templates(*args) ⇒ Object
52
53
54
55
|
# File 'lib/stratus/resources.rb', line 52
def templates(*args)
filter = args..merge! :content_type=>:template
all.find((args.first || :all), filter)
end
|