middleman 2.0.4 → 2.0.5
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +8 -0
- data/lib/middleman.rb +7 -1
- data/lib/middleman/vendor/padrino-core-0.10.0/.document +5 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/.gitignore +22 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/LICENSE +20 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/README.rdoc +294 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/Rakefile +5 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/bin/padrino +9 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core.rb +119 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/application.rb +259 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/application/rendering.rb +228 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/application/routing.rb +821 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/application/showexceptions.rb +18 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/caller.rb +45 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/cli/adapter.rb +24 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/cli/base.rb +152 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/cli/console.rb +20 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/cli/rake.rb +24 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/cli/rake_tasks.rb +59 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/command.rb +27 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/images/404.png +0 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/images/500.png +0 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/loader.rb +182 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/cz.yml +30 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/da.yml +30 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/de.yml +30 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/en.yml +30 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/es.yml +30 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/fr.yml +30 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/hu.yml +30 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/it.yml +37 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/ja.yml +30 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/nl.yml +30 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/no.yml +31 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/pl.yml +30 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/pt_br.yml +37 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/ru.yml +30 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/tr.yml +30 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/uk.yml +30 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/zh_cn.yml +30 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/locale/zh_tw.yml +30 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/logger.rb +344 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/mounter.rb +192 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/reloader.rb +247 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/router.rb +79 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/server.rb +70 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/support_lite.rb +135 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/tasks.rb +23 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/lib/padrino-core/version.rb +15 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/padrino-core.gemspec +38 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/apps/.components +6 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/apps/.gitignore +7 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/apps/complex.rb +27 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/apps/simple.rb +33 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/dependencies/a.rb +9 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/dependencies/b.rb +4 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/dependencies/c.rb +1 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/dependencies/circular/e.rb +13 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/dependencies/circular/f.rb +2 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/dependencies/circular/g.rb +2 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/fixtures/dependencies/d.rb +4 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/helper.rb +101 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/test_application.rb +83 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/test_core.rb +79 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/test_dependencies.rb +44 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/test_filters.rb +266 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/test_logger.rb +91 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/test_mounter.rb +176 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/test_reloader_complex.rb +66 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/test_reloader_simple.rb +97 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/test_rendering.rb +437 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/test_router.rb +146 -0
- data/lib/middleman/vendor/padrino-core-0.10.0/test/test_routing.rb +1491 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/.document +5 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/.gitignore +21 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/LICENSE +20 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/README.rdoc +239 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/Rakefile +5 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers.rb +51 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/asset_tag_helpers.rb +288 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/form_builder/abstract_form_builder.rb +220 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/form_builder/standard_form_builder.rb +43 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/form_helpers.rb +446 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/format_helpers.rb +260 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/cz.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/da.yml +91 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/de.yml +78 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/en.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/es.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/fr.yml +79 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/hu.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/it.yml +85 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/ja.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/nl.yml +78 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/no.yml +91 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/pl.yml +95 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/pt_br.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/ru.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/tr.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/uk.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/zh_cn.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/locale/zh_tw.yml +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/number_helpers.rb +273 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/output_helpers.rb +128 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/output_helpers/abstract_handler.rb +103 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/output_helpers/erb_handler.rb +79 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/output_helpers/haml_handler.rb +64 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/output_helpers/slim_handler.rb +82 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/render_helpers.rb +40 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/tag_helpers.rb +59 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/translation_helpers.rb +21 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/padrino-helpers.gemspec +27 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/app.rb +73 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/capture_concat.erb +14 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/capture_concat.haml +12 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/capture_concat.slim +13 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/content_for.erb +11 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/content_for.haml +9 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/content_for.slim +9 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/content_tag.erb +11 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/content_tag.haml +9 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/content_tag.slim +9 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/current_engine.erb +5 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/current_engine.haml +5 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/current_engine.slim +5 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/fields_for.erb +20 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/fields_for.haml +15 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/fields_for.slim +15 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/form_for.erb +56 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/form_for.haml +47 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/form_for.slim +47 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/form_tag.erb +56 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/form_tag.haml +45 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/form_tag.slim +45 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/link_to.erb +5 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/link_to.haml +4 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/link_to.slim +4 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/mail_to.erb +3 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/mail_to.haml +3 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/mail_to.slim +3 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/meta_tag.erb +3 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/meta_tag.haml +3 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/meta_tag.slim +3 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/partials/_erb.erb +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/partials/_haml.haml +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/partials/_slim.slim +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/simple_partial.erb +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/simple_partial.haml +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/markup_app/views/simple_partial.slim +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/app.rb +45 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/views/current_engine.haml +5 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/views/current_engines/_erb.erb +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/views/current_engines/_haml.haml +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/views/current_engines/_slim.slim +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/views/erb/test.erb +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/views/explicit_engine.haml +5 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/views/haml/test.haml +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/views/template/_user.haml +7 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/views/template/haml_template.haml +1 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/fixtures/render_app/views/template/some_template.haml +2 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/helper.rb +78 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/test_asset_tag_helpers.rb +320 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/test_form_builder.rb +998 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/test_form_helpers.rb +645 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/test_format_helpers.rb +227 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/test_number_helpers.rb +136 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/test_output_helpers.rb +133 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/test_render_helpers.rb +69 -0
- data/lib/middleman/vendor/padrino-helpers-0.10.0/test/test_tag_helpers.rb +100 -0
- data/lib/middleman/version.rb +1 -1
- data/middleman.gemspec +6 -2
- metadata +218 -67
@@ -0,0 +1,103 @@
|
|
1
|
+
module Padrino
|
2
|
+
module Helpers
|
3
|
+
module OutputHelpers
|
4
|
+
##
|
5
|
+
# Returns the list of all available template handlers
|
6
|
+
#
|
7
|
+
# ==== Examples
|
8
|
+
#
|
9
|
+
# OutputHelpers.handlers => [<OutputHelpers::HamlHandler>, <OutputHelpers::ErbHandler>]
|
10
|
+
#
|
11
|
+
def self.handlers
|
12
|
+
@_template_handlers ||= []
|
13
|
+
end
|
14
|
+
|
15
|
+
##
|
16
|
+
# Registers a new handler as available to the output helpers
|
17
|
+
#
|
18
|
+
# ==== Examples
|
19
|
+
#
|
20
|
+
# OutputHelpers.register(OutputHelpers::HamlHandler)
|
21
|
+
#
|
22
|
+
def self.register(handler)
|
23
|
+
handlers << handler
|
24
|
+
end
|
25
|
+
|
26
|
+
class AbstractHandler
|
27
|
+
attr_reader :template
|
28
|
+
|
29
|
+
def initialize(template)
|
30
|
+
@template = template
|
31
|
+
end
|
32
|
+
|
33
|
+
##
|
34
|
+
# Returns extension of the template
|
35
|
+
#
|
36
|
+
# ==== Examples
|
37
|
+
#
|
38
|
+
# @handler.template_extension => "erb"
|
39
|
+
#
|
40
|
+
def template_extension
|
41
|
+
caller.find { |c| c =~ /\/views\// }[/\.([\w]*?)\:/, 1] rescue nil
|
42
|
+
# "/some/path/app/views/posts/foo.html.erb:3:in `evaluate_source'"
|
43
|
+
# => "erb"
|
44
|
+
end
|
45
|
+
|
46
|
+
##
|
47
|
+
# Returns an array of engines used for the template
|
48
|
+
#
|
49
|
+
# ==== Examples
|
50
|
+
#
|
51
|
+
# @handler.engines => [:erb, :erubis]
|
52
|
+
#
|
53
|
+
def engines
|
54
|
+
# Implemented in subclass
|
55
|
+
end
|
56
|
+
|
57
|
+
##
|
58
|
+
# Returns true if the current template type is same as this handlers; false otherwise.
|
59
|
+
#
|
60
|
+
# ==== Examples
|
61
|
+
#
|
62
|
+
# @handler.is_type? => true
|
63
|
+
#
|
64
|
+
def is_type?
|
65
|
+
# Implemented in subclass
|
66
|
+
end
|
67
|
+
|
68
|
+
##
|
69
|
+
# Returns true if the block given is of the handler's template type; false otherwise.
|
70
|
+
#
|
71
|
+
# ==== Examples
|
72
|
+
#
|
73
|
+
# @handler.block_is_type?(block) => true
|
74
|
+
#
|
75
|
+
def block_is_type?(block)
|
76
|
+
# Implemented in subclass
|
77
|
+
end
|
78
|
+
|
79
|
+
##
|
80
|
+
# Captures the html from a block of template code for this handler
|
81
|
+
#
|
82
|
+
# ==== Examples
|
83
|
+
#
|
84
|
+
# @handler.capture_from_template(&block) => "...html..."
|
85
|
+
#
|
86
|
+
def capture_from_template(*args, &block)
|
87
|
+
# Implemented in subclass
|
88
|
+
end
|
89
|
+
|
90
|
+
##
|
91
|
+
# Outputs the given text to the templates buffer directly
|
92
|
+
#
|
93
|
+
# ==== Examples
|
94
|
+
#
|
95
|
+
# @handler.concat_to_template("This will be output to the template buffer")
|
96
|
+
#
|
97
|
+
def concat_to_template(text="")
|
98
|
+
# Implemented in subclass
|
99
|
+
end
|
100
|
+
end # AbstractHandler
|
101
|
+
end # OutputHelpers
|
102
|
+
end # Helpers
|
103
|
+
end # Padrino
|
data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/output_helpers/erb_handler.rb
ADDED
@@ -0,0 +1,79 @@
|
|
1
|
+
module Padrino
|
2
|
+
module Helpers
|
3
|
+
module OutputHelpers
|
4
|
+
class ErbHandler < AbstractHandler
|
5
|
+
attr_reader :output_buffer
|
6
|
+
|
7
|
+
def initialize(template)
|
8
|
+
super
|
9
|
+
@output_buffer = template.instance_variable_get(:@_out_buf)
|
10
|
+
end
|
11
|
+
|
12
|
+
##
|
13
|
+
# Returns true if the current template type is same as this handlers; false otherwise.
|
14
|
+
#
|
15
|
+
# ==== Examples
|
16
|
+
#
|
17
|
+
# @handler.is_type? => true
|
18
|
+
#
|
19
|
+
def is_type?
|
20
|
+
!self.output_buffer.nil?
|
21
|
+
end
|
22
|
+
|
23
|
+
# Captures the html from a block of template code for this handler
|
24
|
+
#
|
25
|
+
# ==== Examples
|
26
|
+
#
|
27
|
+
# @handler.capture_from_template(&block) => "...html..."
|
28
|
+
#
|
29
|
+
def capture_from_template(*args, &block)
|
30
|
+
self.output_buffer, _buf_was = "", self.output_buffer
|
31
|
+
block.call(*args)
|
32
|
+
ret = eval("@_out_buf", block.binding)
|
33
|
+
self.output_buffer = _buf_was
|
34
|
+
ret
|
35
|
+
end
|
36
|
+
|
37
|
+
##
|
38
|
+
# Outputs the given text to the templates buffer directly
|
39
|
+
#
|
40
|
+
# ==== Examples
|
41
|
+
#
|
42
|
+
# @handler.concat_to_template("This will be output to the template buffer")
|
43
|
+
#
|
44
|
+
def concat_to_template(text="")
|
45
|
+
self.output_buffer << text if is_type? && text
|
46
|
+
nil
|
47
|
+
end
|
48
|
+
|
49
|
+
##
|
50
|
+
# Returns true if the block given is of the handler's template type; false otherwise.
|
51
|
+
#
|
52
|
+
# ==== Examples
|
53
|
+
#
|
54
|
+
# @handler.block_is_type?(block) => true
|
55
|
+
#
|
56
|
+
def block_is_type?(block)
|
57
|
+
is_type? || (block && eval('defined?(__in_erb_template)', block.binding))
|
58
|
+
end
|
59
|
+
|
60
|
+
##
|
61
|
+
# Returns an array of engines used for the template
|
62
|
+
#
|
63
|
+
# ==== Examples
|
64
|
+
#
|
65
|
+
# @handler.engines => [:erb, :erubis]
|
66
|
+
#
|
67
|
+
def engines
|
68
|
+
@_engines ||= [:erb, :erubis]
|
69
|
+
end
|
70
|
+
|
71
|
+
protected
|
72
|
+
def output_buffer=(val)
|
73
|
+
template.instance_variable_set(:@_out_buf, val)
|
74
|
+
end
|
75
|
+
end # ErbHandler
|
76
|
+
OutputHelpers.register(ErbHandler)
|
77
|
+
end # OutputHelpers
|
78
|
+
end # Helpers
|
79
|
+
end # Padrino
|
data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/output_helpers/haml_handler.rb
ADDED
@@ -0,0 +1,64 @@
|
|
1
|
+
module Padrino
|
2
|
+
module Helpers
|
3
|
+
module OutputHelpers
|
4
|
+
class HamlHandler < AbstractHandler
|
5
|
+
##
|
6
|
+
# Returns true if the current template type is same as this handlers; false otherwise.
|
7
|
+
#
|
8
|
+
# ==== Examples
|
9
|
+
#
|
10
|
+
# @handler.is_type? => true
|
11
|
+
#
|
12
|
+
def is_type?
|
13
|
+
template.respond_to?(:is_haml?) && template.is_haml?
|
14
|
+
end
|
15
|
+
|
16
|
+
##
|
17
|
+
# Returns true if the block given is of the handler's template type; false otherwise.
|
18
|
+
#
|
19
|
+
# ==== Examples
|
20
|
+
#
|
21
|
+
# @handler.block_is_type?(block) => true
|
22
|
+
#
|
23
|
+
def block_is_type?(block)
|
24
|
+
template.block_is_haml?(block)
|
25
|
+
end
|
26
|
+
|
27
|
+
# Captures the html from a block of template code for this handler
|
28
|
+
#
|
29
|
+
# ==== Examples
|
30
|
+
#
|
31
|
+
# @handler.capture_from_template(&block) => "...html..."
|
32
|
+
#
|
33
|
+
def capture_from_template(*args, &block)
|
34
|
+
eval("_hamlout ||= @haml_buffer", block.binding) # this is for rbx
|
35
|
+
template.capture_haml(*args, &block)
|
36
|
+
end
|
37
|
+
|
38
|
+
##
|
39
|
+
# Outputs the given text to the templates buffer directly
|
40
|
+
#
|
41
|
+
# ==== Examples
|
42
|
+
#
|
43
|
+
# @handler.concat_to_template("This will be output to the template buffer")
|
44
|
+
#
|
45
|
+
def concat_to_template(text="")
|
46
|
+
template.haml_concat(text)
|
47
|
+
nil
|
48
|
+
end
|
49
|
+
|
50
|
+
##
|
51
|
+
# Returns an array of engines used for the template
|
52
|
+
#
|
53
|
+
# ==== Examples
|
54
|
+
#
|
55
|
+
# @handler.engines => [:erb, :erubis]
|
56
|
+
#
|
57
|
+
def engines
|
58
|
+
@_engines ||= [:haml]
|
59
|
+
end
|
60
|
+
end # HamlHandler
|
61
|
+
OutputHelpers.register(HamlHandler)
|
62
|
+
end # OutputHelpers
|
63
|
+
end # Helpers
|
64
|
+
end # Padrino
|
data/lib/middleman/vendor/padrino-helpers-0.10.0/lib/padrino-helpers/output_helpers/slim_handler.rb
ADDED
@@ -0,0 +1,82 @@
|
|
1
|
+
# Make slim works with sinatra/padrino
|
2
|
+
Slim::Engine.set_default_options(:buffer => '@_out_buf', :generator => Temple::Generators::StringBuffer) if defined?(Slim)
|
3
|
+
|
4
|
+
module Padrino
|
5
|
+
module Helpers
|
6
|
+
module OutputHelpers
|
7
|
+
class SlimHandler < AbstractHandler
|
8
|
+
attr_reader :output_buffer
|
9
|
+
|
10
|
+
def initialize(template)
|
11
|
+
super
|
12
|
+
@output_buffer = template.instance_variable_get(:@_out_buf)
|
13
|
+
end
|
14
|
+
|
15
|
+
##
|
16
|
+
# Returns true if the current template type is same as this handlers; false otherwise.
|
17
|
+
#
|
18
|
+
# ==== Examples
|
19
|
+
#
|
20
|
+
# @handler.is_type? => true
|
21
|
+
#
|
22
|
+
def is_type?
|
23
|
+
!self.output_buffer.nil?
|
24
|
+
end
|
25
|
+
|
26
|
+
# Captures the html from a block of template code for this handler
|
27
|
+
#
|
28
|
+
# ==== Examples
|
29
|
+
#
|
30
|
+
# @handler.capture_from_template(&block) => "...html..."
|
31
|
+
#
|
32
|
+
def capture_from_template(*args, &block)
|
33
|
+
self.output_buffer, _buf_was = "", self.output_buffer
|
34
|
+
block.call(*args)
|
35
|
+
ret = eval("@_out_buf", block.binding)
|
36
|
+
self.output_buffer = _buf_was
|
37
|
+
ret
|
38
|
+
end
|
39
|
+
|
40
|
+
##
|
41
|
+
# Outputs the given text to the templates buffer directly
|
42
|
+
#
|
43
|
+
# ==== Examples
|
44
|
+
#
|
45
|
+
# @handler.concat_to_template("This will be output to the template buffer")
|
46
|
+
#
|
47
|
+
def concat_to_template(text="")
|
48
|
+
self.output_buffer << text if is_type? && text
|
49
|
+
nil
|
50
|
+
end
|
51
|
+
|
52
|
+
##
|
53
|
+
# Returns true if the block given is of the handler's template type; false otherwise.
|
54
|
+
#
|
55
|
+
# ==== Examples
|
56
|
+
#
|
57
|
+
# @handler.block_is_type?(block) => true
|
58
|
+
#
|
59
|
+
def block_is_type?(block)
|
60
|
+
is_type? || (block && eval('defined? __in_erb_template', block.binding))
|
61
|
+
end
|
62
|
+
|
63
|
+
##
|
64
|
+
# Returns an array of engines used for the template
|
65
|
+
#
|
66
|
+
# ==== Examples
|
67
|
+
#
|
68
|
+
# @handler.engines => [:erb, :erubis]
|
69
|
+
#
|
70
|
+
def engines
|
71
|
+
@_engines ||= [:slim]
|
72
|
+
end
|
73
|
+
|
74
|
+
protected
|
75
|
+
def output_buffer=(val)
|
76
|
+
template.instance_variable_set(:@_out_buf, val)
|
77
|
+
end
|
78
|
+
end # ErbHandler
|
79
|
+
OutputHelpers.register(SlimHandler)
|
80
|
+
end # OutputHelpers
|
81
|
+
end # Helpers
|
82
|
+
end # Padrino
|
@@ -0,0 +1,40 @@
|
|
1
|
+
module Padrino
|
2
|
+
module Helpers
|
3
|
+
module RenderHelpers
|
4
|
+
##
|
5
|
+
# Partials implementation which includes collections support
|
6
|
+
#
|
7
|
+
# ==== Examples
|
8
|
+
#
|
9
|
+
# partial 'photo/item', :object => @photo
|
10
|
+
# partial 'photo/item', :collection => @photos
|
11
|
+
# partial 'photo/item', :locals => { :foo => :bar }
|
12
|
+
# partial 'photo/item', :engine => :erb
|
13
|
+
#
|
14
|
+
def partial(template, options={})
|
15
|
+
options.reverse_merge!(:locals => {}, :layout => false)
|
16
|
+
path = template.to_s.split(File::SEPARATOR)
|
17
|
+
object_name = path[-1].to_sym
|
18
|
+
path[-1] = "_#{path[-1]}"
|
19
|
+
explicit_engine = options.delete(:engine)
|
20
|
+
template_path = File.join(path).to_sym
|
21
|
+
raise 'Partial collection specified but is nil' if options.has_key?(:collection) && options[:collection].nil?
|
22
|
+
if collection = options.delete(:collection)
|
23
|
+
options.delete(:object)
|
24
|
+
counter = 0
|
25
|
+
collection.map { |member|
|
26
|
+
counter += 1
|
27
|
+
options[:locals].merge!(object_name => member, "#{object_name}_counter".to_sym => counter)
|
28
|
+
render(explicit_engine, template_path, options.dup)
|
29
|
+
}.join("\n")
|
30
|
+
else
|
31
|
+
if member = options.delete(:object)
|
32
|
+
options[:locals].merge!(object_name => member)
|
33
|
+
end
|
34
|
+
render(explicit_engine, template_path, options.dup)
|
35
|
+
end
|
36
|
+
end
|
37
|
+
alias :render_partial :partial
|
38
|
+
end # RenderHelpers
|
39
|
+
end # Helpers
|
40
|
+
end # Padrino
|
@@ -0,0 +1,59 @@
|
|
1
|
+
module Padrino
|
2
|
+
module Helpers
|
3
|
+
module TagHelpers
|
4
|
+
##
|
5
|
+
# Creates an html input field with given type and options
|
6
|
+
#
|
7
|
+
# ==== Examples
|
8
|
+
#
|
9
|
+
# input_tag :text, :class => "test"
|
10
|
+
#
|
11
|
+
def input_tag(type, options = {})
|
12
|
+
options.reverse_merge!(:type => type)
|
13
|
+
tag(:input, options)
|
14
|
+
end
|
15
|
+
|
16
|
+
##
|
17
|
+
# Creates an html tag with given name, content and options
|
18
|
+
#
|
19
|
+
# ==== Examples
|
20
|
+
#
|
21
|
+
# content_tag(:p, "hello", :class => 'light')
|
22
|
+
# content_tag(:p, :class => 'dark') do ... end
|
23
|
+
# content_tag(name, content=nil, options={}, &block)
|
24
|
+
#
|
25
|
+
def content_tag(*args, &block)
|
26
|
+
name = args.first
|
27
|
+
options = args.extract_options!
|
28
|
+
tag_html = block_given? ? capture_html(&block) : args[1]
|
29
|
+
tag_result = tag(name, options.merge(:content => tag_html))
|
30
|
+
block_is_template?(block) ? concat_content(tag_result) : tag_result
|
31
|
+
end
|
32
|
+
|
33
|
+
##
|
34
|
+
# Creates an html tag with the given name and options
|
35
|
+
#
|
36
|
+
# ==== Examples
|
37
|
+
#
|
38
|
+
# tag(:br, :style => 'clear:both')
|
39
|
+
# tag(:p, :content => "hello", :class => 'large')
|
40
|
+
#
|
41
|
+
def tag(name, options={})
|
42
|
+
content, open_tag = options.delete(:content), options.delete(:open)
|
43
|
+
content = content.join("\n") if content.respond_to?(:join)
|
44
|
+
identity_tag_attributes.each { |attr| options[attr] = attr.to_s if options[attr] }
|
45
|
+
html_attrs = options.map { |a, v| v.nil? || v == false ? nil : "#{a}=\"#{v}\"" }.compact.join(" ")
|
46
|
+
base_tag = (html_attrs.present? ? "<#{name} #{html_attrs}" : "<#{name}")
|
47
|
+
base_tag << (open_tag ? ">" : (content ? ">#{content}</#{name}>" : " />"))
|
48
|
+
end
|
49
|
+
|
50
|
+
private
|
51
|
+
##
|
52
|
+
# Returns a list of attributes which can only contain an identity value (i.e selected)
|
53
|
+
#
|
54
|
+
def identity_tag_attributes
|
55
|
+
[:checked, :disabled, :selected, :multiple]
|
56
|
+
end
|
57
|
+
end # TagHelpers
|
58
|
+
end # Helpers
|
59
|
+
end # Padrino
|
@@ -0,0 +1,21 @@
|
|
1
|
+
module Padrino
|
2
|
+
module Helpers
|
3
|
+
module TranslationHelpers
|
4
|
+
##
|
5
|
+
# Delegates to I18n.translate with no additional functionality.
|
6
|
+
#
|
7
|
+
def translate(*args)
|
8
|
+
I18n.translate(*args)
|
9
|
+
end
|
10
|
+
alias :t :translate
|
11
|
+
|
12
|
+
##
|
13
|
+
# Delegates to I18n.localize with no additional functionality.
|
14
|
+
#
|
15
|
+
def localize(*args)
|
16
|
+
I18n.localize(*args)
|
17
|
+
end
|
18
|
+
alias :l :localize
|
19
|
+
end # TranslationHelpers
|
20
|
+
end # Helpers
|
21
|
+
end # Padrino
|