stasis 0.1.22 → 0.1.23

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -3,8 +3,6 @@ Stasis
3
3
 
4
4
  Stasis is a dynamic framework for static sites.
5
5
 
6
- [![Build Status](https://secure.travis-ci.org/winton/stasis.png)](http://travis-ci.org/winton/stasis)
7
-
8
6
  Install
9
7
  -------
10
8
 
@@ -71,6 +71,9 @@ class Stasis
71
71
  # `String` -- the root path passed to `Stasis.new`.
72
72
  attr_accessor :root
73
73
 
74
+ # `String` -- the view output from Tilt.
75
+ attr_accessor :output
76
+
74
77
  def initialize(root, *args)
75
78
  @options = {}
76
79
  @options = args.pop if args.last.is_a?(::Hash)
@@ -206,7 +209,7 @@ class Stasis
206
209
  # If a layout was specified via the `layout` method...
207
210
  if @action._layout
208
211
  # Render the layout with a block for the layout to `yield` to.
209
- @action.render(@action._layout) { output }
212
+ @action.render(@action._layout, render_opts) { output }
210
213
  # If a layout was not specified...
211
214
  else
212
215
  output
@@ -217,6 +220,9 @@ class Stasis
217
220
  @action._render
218
221
  end
219
222
 
223
+ # Set @output instance variable for manipulation from within plugins
224
+ @output = view
225
+
220
226
  # Trigger all plugin `after_render` events.
221
227
  trigger(:after_render)
222
228
 
@@ -241,16 +247,16 @@ class Stasis
241
247
  end
242
248
 
243
249
  # If markup was rendered...
244
- if view
250
+ if @output
245
251
  # Write the rendered markup to the destination.
246
252
  if render_options[:write] != false
247
253
  File.open(dest, 'w') do |f|
248
- f.write(view)
254
+ f.write(@output)
249
255
  end
250
256
  end
251
257
  # Collect render output.
252
258
  if render_options[:collect]
253
- collect[relative[1..-1]] = view
259
+ collect[relative[1..-1]] = @output
254
260
  end
255
261
  # If markup was not rendered and the path exists...
256
262
  elsif File.exists?(@path)
@@ -259,13 +265,16 @@ class Stasis
259
265
  FileUtils.cp(@path, dest)
260
266
  end
261
267
  end
268
+
269
+ # Trigger all plugin `after_write` events. Only fires if view was created.
270
+ trigger(:after_write)
262
271
  end
263
272
 
264
273
  # Trigger all plugin `after_all` events, passing the `Stasis` instance.
265
274
  trigger(:after_all)
266
275
 
267
276
  # Unset class-level instance variables.
268
- @action, @path = nil, nil
277
+ @action, @path, @output = nil, nil, nil
269
278
 
270
279
  # Respond with collected render output if `collect` option given.
271
280
  collect if render_options[:collect]
@@ -25,6 +25,7 @@ class Stasis
25
25
  action_method
26
26
  after_all
27
27
  after_render
28
+ after_write
28
29
  before_all
29
30
  before_render
30
31
  controller_method
@@ -16,9 +16,26 @@
16
16
  %img{ :src => 'stasis.png' }>
17
17
  stasis
18
18
  %img.reverse{ :src => 'stasis.png' }>
19
- #tm Static Sites Made Powerful
19
+ #share
20
+ %br/
21
+ %iframe{ :src => "http://markdotto.github.com/github-buttons/github-btn.html?user=winton&repo=stasis&type=watch&count=true", :allowtransparency => "true", :frameborder => "0", :scrolling => "0", :width => "110px", :height => "20px" }
22
+ %a{ :href => "https://twitter.com/wintonius", :class => "twitter-follow-button", 'data-show-count' => "false" } Follow @wintonius
23
+ #tm
24
+ Static Sites Made Powerful
20
25
  #body
21
26
  ~ @readme
22
27
  .clear
28
+ %h3
29
+ %a{ :name => "thanks", :href => "#thanks" } Thanks
30
+ %p
31
+ Please follow the project on Github:
32
+ %br/
33
+ %iframe{ :src => "http://markdotto.github.com/github-buttons/github-btn.html?user=winton&repo=stasis&type=watch&count=true", :allowtransparency => "true", :frameborder => "0", :scrolling => "0", :width => "110px", :height => "20px" }
34
+ %br/
35
+ Follow Winton Welsh on Twitter for updates:
36
+ %br/
37
+ %a{ :href => "https://twitter.com/wintonius", :class => "twitter-follow-button", 'data-show-count' => "false" } Follow @wintonius
23
38
  %script{ :src => "https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js", :type => "text/javascript" }
24
- %script{ :src => "stasis.js", :type => "text/javascript" }
39
+ %script{ :src => "stasis.js", :type => "text/javascript" }
40
+ :javascript
41
+ !function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
@@ -90,6 +90,25 @@ ul {
90
90
  }
91
91
  }
92
92
 
93
+ #share {
94
+ margin-top: -20px;
95
+ text-align: center;
96
+
97
+ a, iframe {
98
+ margin-top: 20px;
99
+ opacity: 0.6;
100
+ }
101
+
102
+ a:hover, iframe:hover {
103
+ opacity: 1;
104
+ }
105
+
106
+ iframe {
107
+ margin-left: 4px;
108
+ margin-right: 5px;
109
+ }
110
+ }
111
+
93
112
  #tm {
94
113
  font-size: 19.4px;
95
114
  font-weight: 700;
@@ -6,7 +6,7 @@ $:.unshift lib unless $:.include?(lib)
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "stasis"
9
- s.version = '0.1.22'
9
+ s.version = '0.1.23'
10
10
  s.platform = Gem::Platform::RUBY
11
11
  s.authors = [ 'Winton Welsh' ]
12
12
  s.email = [ 'mail@wintoni.us' ]
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stasis
3
3
  version: !ruby/object:Gem::Version
4
- hash: 55
4
+ hash: 53
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 22
10
- version: 0.1.22
9
+ - 23
10
+ version: 0.1.23
11
11
  platform: ruby
12
12
  authors:
13
13
  - Winton Welsh
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-04-01 00:00:00 Z
18
+ date: 2012-05-21 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  version_requirements: &id001 !ruby/object:Gem::Requirement
@@ -27,10 +27,10 @@ dependencies:
27
27
  segments:
28
28
  - 0
29
29
  version: "0"
30
- requirement: *id001
31
30
  prerelease: false
32
- name: albino
33
31
  type: :development
32
+ name: albino
33
+ requirement: *id001
34
34
  - !ruby/object:Gem::Dependency
35
35
  version_requirements: &id002 !ruby/object:Gem::Requirement
36
36
  none: false
@@ -41,10 +41,10 @@ dependencies:
41
41
  segments:
42
42
  - 0
43
43
  version: "0"
44
- requirement: *id002
45
44
  prerelease: false
46
- name: coffee-script
47
45
  type: :development
46
+ name: coffee-script
47
+ requirement: *id002
48
48
  - !ruby/object:Gem::Dependency
49
49
  version_requirements: &id003 !ruby/object:Gem::Requirement
50
50
  none: false
@@ -55,10 +55,10 @@ dependencies:
55
55
  segments:
56
56
  - 0
57
57
  version: "0"
58
- requirement: *id003
59
58
  prerelease: false
60
- name: haml
61
59
  type: :development
60
+ name: haml
61
+ requirement: *id003
62
62
  - !ruby/object:Gem::Dependency
63
63
  version_requirements: &id004 !ruby/object:Gem::Requirement
64
64
  none: false
@@ -69,10 +69,10 @@ dependencies:
69
69
  segments:
70
70
  - 0
71
71
  version: "0"
72
- requirement: *id004
73
72
  prerelease: false
74
- name: nokogiri
75
73
  type: :development
74
+ name: nokogiri
75
+ requirement: *id004
76
76
  - !ruby/object:Gem::Dependency
77
77
  version_requirements: &id005 !ruby/object:Gem::Requirement
78
78
  none: false
@@ -83,10 +83,10 @@ dependencies:
83
83
  segments:
84
84
  - 0
85
85
  version: "0"
86
- requirement: *id005
87
86
  prerelease: false
88
- name: rake
89
87
  type: :development
88
+ name: rake
89
+ requirement: *id005
90
90
  - !ruby/object:Gem::Dependency
91
91
  version_requirements: &id006 !ruby/object:Gem::Requirement
92
92
  none: false
@@ -97,10 +97,10 @@ dependencies:
97
97
  segments:
98
98
  - 0
99
99
  version: "0"
100
- requirement: *id006
101
100
  prerelease: false
102
- name: rocco
103
101
  type: :development
102
+ name: rocco
103
+ requirement: *id006
104
104
  - !ruby/object:Gem::Dependency
105
105
  version_requirements: &id007 !ruby/object:Gem::Requirement
106
106
  none: false
@@ -112,10 +112,10 @@ dependencies:
112
112
  - 1
113
113
  - 0
114
114
  version: "1.0"
115
- requirement: *id007
116
115
  prerelease: false
117
- name: rspec
118
116
  type: :development
117
+ name: rspec
118
+ requirement: *id007
119
119
  - !ruby/object:Gem::Dependency
120
120
  version_requirements: &id008 !ruby/object:Gem::Requirement
121
121
  none: false
@@ -128,10 +128,10 @@ dependencies:
128
128
  - 4
129
129
  - 1
130
130
  version: 1.4.1
131
- requirement: *id008
132
131
  prerelease: false
133
- name: directory_watcher
134
132
  type: :runtime
133
+ name: directory_watcher
134
+ requirement: *id008
135
135
  - !ruby/object:Gem::Dependency
136
136
  version_requirements: &id009 !ruby/object:Gem::Requirement
137
137
  none: false
@@ -144,10 +144,10 @@ dependencies:
144
144
  - 2
145
145
  - 2
146
146
  version: 2.2.2
147
- requirement: *id009
148
147
  prerelease: false
149
- name: redis
150
148
  type: :runtime
149
+ name: redis
150
+ requirement: *id009
151
151
  - !ruby/object:Gem::Dependency
152
152
  version_requirements: &id010 !ruby/object:Gem::Requirement
153
153
  none: false
@@ -160,10 +160,10 @@ dependencies:
160
160
  - 1
161
161
  - 0
162
162
  version: 2.1.0
163
- requirement: *id010
164
163
  prerelease: false
165
- name: slop
166
164
  type: :runtime
165
+ name: slop
166
+ requirement: *id010
167
167
  - !ruby/object:Gem::Dependency
168
168
  version_requirements: &id011 !ruby/object:Gem::Requirement
169
169
  none: false
@@ -176,10 +176,10 @@ dependencies:
176
176
  - 3
177
177
  - 3
178
178
  version: 1.3.3
179
- requirement: *id011
180
179
  prerelease: false
181
- name: tilt
182
180
  type: :runtime
181
+ name: tilt
182
+ requirement: *id011
183
183
  - !ruby/object:Gem::Dependency
184
184
  version_requirements: &id012 !ruby/object:Gem::Requirement
185
185
  none: false
@@ -192,10 +192,10 @@ dependencies:
192
192
  - 0
193
193
  - 0
194
194
  version: 1.0.0
195
- requirement: *id012
196
195
  prerelease: false
197
- name: yajl-ruby
198
196
  type: :runtime
197
+ name: yajl-ruby
198
+ requirement: *id012
199
199
  description: Stasis is a dynamic framework for static sites.
200
200
  email:
201
201
  - mail@wintoni.us
@@ -305,7 +305,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
305
305
  requirements: []
306
306
 
307
307
  rubyforge_project:
308
- rubygems_version: 1.8.10
308
+ rubygems_version: 1.8.24
309
309
  signing_key:
310
310
  specification_version: 3
311
311
  summary: Static sites made powerful