goat 0.3.41 → 0.3.42
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/goat.gemspec +1 -1
- data/lib/goat.rb +14 -2
- data/lib/views/plain_layout.erb +1 -0
- metadata +4 -4
data/goat.gemspec
CHANGED
data/lib/goat.rb
CHANGED
@@ -771,7 +771,7 @@ module Goat
|
|
771
771
|
|
772
772
|
def self.handle_request(app)
|
773
773
|
pg = self.new(app)
|
774
|
-
|
774
|
+
|
775
775
|
raise "Page #{pg} has no id: did you forget to call super()?" unless pg.id
|
776
776
|
|
777
777
|
pg.response
|
@@ -822,6 +822,8 @@ module Goat
|
|
822
822
|
canvas.style << distiller.style
|
823
823
|
canvas.script << distiller.script
|
824
824
|
|
825
|
+
distiller.all_component_classes.each {|c| canvas.script_files += c.script_files}
|
826
|
+
|
825
827
|
EM.next_tick { register_page(distiller) }
|
826
828
|
end
|
827
829
|
|
@@ -868,15 +870,20 @@ module Goat
|
|
868
870
|
end
|
869
871
|
|
870
872
|
class PageCanvas
|
871
|
-
attr_accessor :title, :script, :style, :html
|
873
|
+
attr_accessor :title, :script, :style, :html, :script_files
|
872
874
|
|
873
875
|
def initialize
|
874
876
|
@script = []
|
875
877
|
@style = []
|
878
|
+
@script_files = []
|
876
879
|
end
|
877
880
|
|
878
881
|
def flattened_style; @style.join; end
|
879
882
|
def flattened_script; @script.join; end
|
883
|
+
|
884
|
+
def additional_script_tags
|
885
|
+
@script_files.map {|file| "<script for=\"goat\" src=\"#{file}\"></script>"}
|
886
|
+
end
|
880
887
|
end
|
881
888
|
|
882
889
|
class JustRerenderError < RuntimeError; end
|
@@ -1276,9 +1283,14 @@ module Goat
|
|
1276
1283
|
|
1277
1284
|
def self.script(script); @script = AutoBind.process(script); end
|
1278
1285
|
def script(script); @script = AutoBind.process(script); end
|
1286
|
+
|
1287
|
+
# the above are actually *setters*; these are the (internal-use-only) getters
|
1279
1288
|
def self.__script; @script; end
|
1280
1289
|
def __script; @script; end
|
1281
1290
|
|
1291
|
+
def self.script_files; @script_files ||= []; end
|
1292
|
+
def self.script_file(f); script_files << f; end
|
1293
|
+
|
1282
1294
|
def wire_script
|
1283
1295
|
"Goat.wireComponent('#{id}', #{clientside_instance})"
|
1284
1296
|
end
|
data/lib/views/plain_layout.erb
CHANGED
@@ -6,6 +6,7 @@
|
|
6
6
|
<%= yield %>
|
7
7
|
<script src="/static/jquery.js"></script>
|
8
8
|
<script src="/static/goat.js"></script>
|
9
|
+
<%= canvas.additional_script_tags %>
|
9
10
|
<script><%= canvas.script %></script>
|
10
11
|
<% if page.class.live_updates_enabled? %><script>Goat.page_id = '<%= page.id %>'</script><% end %>
|
11
12
|
</body></html>
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: goat
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 71
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 3
|
9
|
-
-
|
10
|
-
version: 0.3.
|
9
|
+
- 42
|
10
|
+
version: 0.3.42
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Patrick Collison
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2011-02-
|
18
|
+
date: 2011-02-15 00:00:00 +00:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|