stasis 0.1.8 → 0.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/config/gemspec.yml +1 -1
- data/lib/stasis.rb +4 -2
- data/lib/stasis/options.rb +21 -0
- data/lib/stasis/plugins/render.rb +3 -2
- metadata +17 -16
data/config/gemspec.yml
CHANGED
data/lib/stasis.rb
CHANGED
|
@@ -32,6 +32,7 @@ $:.unshift File.dirname(__FILE__)
|
|
|
32
32
|
# Require all Stasis library files.
|
|
33
33
|
|
|
34
34
|
require 'stasis/dev_mode'
|
|
35
|
+
require 'stasis/options'
|
|
35
36
|
require 'stasis/plugin'
|
|
36
37
|
require 'stasis/server'
|
|
37
38
|
|
|
@@ -186,7 +187,8 @@ class Stasis
|
|
|
186
187
|
# path, receive output from `@action._render`.
|
|
187
188
|
#
|
|
188
189
|
# Otherwise, render the file located at `@path`.
|
|
189
|
-
|
|
190
|
+
render_opts = {:callback => false}.merge(:template => Options.get_template_option(ext))
|
|
191
|
+
output = @action._render || @action.render(@path, render_opts)
|
|
190
192
|
|
|
191
193
|
# If a layout was specified via the `layout` method...
|
|
192
194
|
if @action._layout
|
|
@@ -291,4 +293,4 @@ class Stasis
|
|
|
291
293
|
end
|
|
292
294
|
plugins
|
|
293
295
|
end
|
|
294
|
-
end
|
|
296
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
class Stasis
|
|
2
|
+
class Options
|
|
3
|
+
|
|
4
|
+
@@template_options = Hash.new
|
|
5
|
+
|
|
6
|
+
# Set template engine options.
|
|
7
|
+
#
|
|
8
|
+
# type: string, template extension, e.g 'haml'
|
|
9
|
+
# opts: hash, template options
|
|
10
|
+
def self.set_template_option(type, opts={})
|
|
11
|
+
@@template_options[type] = opts
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# Retrieve template engine options if available.
|
|
15
|
+
# Returns empty hash if no options set.
|
|
16
|
+
def self.get_template_option(type)
|
|
17
|
+
@@template_options[type] || {}
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -22,6 +22,7 @@ class Stasis
|
|
|
22
22
|
path = options[:path]
|
|
23
23
|
scope = options[:scope]
|
|
24
24
|
text = options[:text]
|
|
25
|
+
template_options = options[:template]
|
|
25
26
|
|
|
26
27
|
if @stasis.controller
|
|
27
28
|
path = @stasis.controller._resolve(path)
|
|
@@ -41,7 +42,7 @@ class Stasis
|
|
|
41
42
|
output =
|
|
42
43
|
if Tilt.mappings.keys.include?(File.extname(path)[1..-1])
|
|
43
44
|
scope = options[:scope] ||= @stasis.action
|
|
44
|
-
Tilt.new(path).render(scope, locals, &block)
|
|
45
|
+
Tilt.new(path, nil, template_options).render(scope, locals, &block)
|
|
45
46
|
else
|
|
46
47
|
File.read(path)
|
|
47
48
|
end
|
|
@@ -68,4 +69,4 @@ class Stasis
|
|
|
68
69
|
@stasis.path = old_path
|
|
69
70
|
end
|
|
70
71
|
end
|
|
71
|
-
end
|
|
72
|
+
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: stasis
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.9
|
|
5
5
|
prerelease:
|
|
6
6
|
platform: ruby
|
|
7
7
|
authors:
|
|
@@ -9,11 +9,11 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2011-09-
|
|
12
|
+
date: 2011-09-14 00:00:00.000000000Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: directory_watcher
|
|
16
|
-
requirement: &
|
|
16
|
+
requirement: &70138389573200 !ruby/object:Gem::Requirement
|
|
17
17
|
none: false
|
|
18
18
|
requirements:
|
|
19
19
|
- - ~>
|
|
@@ -21,10 +21,10 @@ dependencies:
|
|
|
21
21
|
version: 1.4.0
|
|
22
22
|
type: :runtime
|
|
23
23
|
prerelease: false
|
|
24
|
-
version_requirements: *
|
|
24
|
+
version_requirements: *70138389573200
|
|
25
25
|
- !ruby/object:Gem::Dependency
|
|
26
26
|
name: redis
|
|
27
|
-
requirement: &
|
|
27
|
+
requirement: &70138389572740 !ruby/object:Gem::Requirement
|
|
28
28
|
none: false
|
|
29
29
|
requirements:
|
|
30
30
|
- - ~>
|
|
@@ -32,10 +32,10 @@ dependencies:
|
|
|
32
32
|
version: 2.2.1
|
|
33
33
|
type: :runtime
|
|
34
34
|
prerelease: false
|
|
35
|
-
version_requirements: *
|
|
35
|
+
version_requirements: *70138389572740
|
|
36
36
|
- !ruby/object:Gem::Dependency
|
|
37
37
|
name: slop
|
|
38
|
-
requirement: &
|
|
38
|
+
requirement: &70138389572300 !ruby/object:Gem::Requirement
|
|
39
39
|
none: false
|
|
40
40
|
requirements:
|
|
41
41
|
- - ~>
|
|
@@ -43,10 +43,10 @@ dependencies:
|
|
|
43
43
|
version: 2.1.0
|
|
44
44
|
type: :runtime
|
|
45
45
|
prerelease: false
|
|
46
|
-
version_requirements: *
|
|
46
|
+
version_requirements: *70138389572300
|
|
47
47
|
- !ruby/object:Gem::Dependency
|
|
48
48
|
name: tilt
|
|
49
|
-
requirement: &
|
|
49
|
+
requirement: &70138389571860 !ruby/object:Gem::Requirement
|
|
50
50
|
none: false
|
|
51
51
|
requirements:
|
|
52
52
|
- - ~>
|
|
@@ -54,10 +54,10 @@ dependencies:
|
|
|
54
54
|
version: '1.3'
|
|
55
55
|
type: :runtime
|
|
56
56
|
prerelease: false
|
|
57
|
-
version_requirements: *
|
|
57
|
+
version_requirements: *70138389571860
|
|
58
58
|
- !ruby/object:Gem::Dependency
|
|
59
59
|
name: yajl-ruby
|
|
60
|
-
requirement: &
|
|
60
|
+
requirement: &70138389571420 !ruby/object:Gem::Requirement
|
|
61
61
|
none: false
|
|
62
62
|
requirements:
|
|
63
63
|
- - ~>
|
|
@@ -65,10 +65,10 @@ dependencies:
|
|
|
65
65
|
version: 0.8.2
|
|
66
66
|
type: :runtime
|
|
67
67
|
prerelease: false
|
|
68
|
-
version_requirements: *
|
|
68
|
+
version_requirements: *70138389571420
|
|
69
69
|
- !ruby/object:Gem::Dependency
|
|
70
70
|
name: rake
|
|
71
|
-
requirement: &
|
|
71
|
+
requirement: &70138389570840 !ruby/object:Gem::Requirement
|
|
72
72
|
none: false
|
|
73
73
|
requirements:
|
|
74
74
|
- - ! '>='
|
|
@@ -76,10 +76,10 @@ dependencies:
|
|
|
76
76
|
version: 0.8.7
|
|
77
77
|
type: :development
|
|
78
78
|
prerelease: false
|
|
79
|
-
version_requirements: *
|
|
79
|
+
version_requirements: *70138389570840
|
|
80
80
|
- !ruby/object:Gem::Dependency
|
|
81
81
|
name: rspec
|
|
82
|
-
requirement: &
|
|
82
|
+
requirement: &70138389570400 !ruby/object:Gem::Requirement
|
|
83
83
|
none: false
|
|
84
84
|
requirements:
|
|
85
85
|
- - ~>
|
|
@@ -87,7 +87,7 @@ dependencies:
|
|
|
87
87
|
version: '1.0'
|
|
88
88
|
type: :development
|
|
89
89
|
prerelease: false
|
|
90
|
-
version_requirements: *
|
|
90
|
+
version_requirements: *70138389570400
|
|
91
91
|
description: Stasis is a dynamic framework for static sites.
|
|
92
92
|
email: mail@wintoni.us
|
|
93
93
|
executables:
|
|
@@ -105,6 +105,7 @@ files:
|
|
|
105
105
|
- lib/stasis.rb
|
|
106
106
|
- lib/stasis/dev_mode.rb
|
|
107
107
|
- lib/stasis/gems.rb
|
|
108
|
+
- lib/stasis/options.rb
|
|
108
109
|
- lib/stasis/plugin.rb
|
|
109
110
|
- lib/stasis/plugins/before.rb
|
|
110
111
|
- lib/stasis/plugins/helpers.rb
|