middleman-core 3.2.0 → 3.2.1
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.
- checksums.yaml +4 -4
- data/.yardopts +10 -0
- data/features/helpers_auto_javascript_include_tag.feature +21 -0
- data/features/helpers_auto_stylesheet_link_tag.feature +21 -0
- data/features/i18n_builder.feature +23 -13
- data/features/i18n_preview.feature +9 -9
- data/features/markdown_kramdown.feature +1 -1
- data/fixtures/i18n-test-app/source/{layout.erb → layouts/layout.erb} +0 -0
- data/fixtures/i18n-test-app/source/{morning.en.html.erb → localizable/morning.en.html.erb} +0 -0
- data/fixtures/i18n-test-app/source/{morning.es.html.erb → localizable/morning.es.html.erb} +0 -0
- data/fixtures/i18n-test-app/source/{one.en.md → localizable/one.en.md} +0 -0
- data/fixtures/i18n-test-app/source/{one.es.md → localizable/one.es.md} +0 -0
- data/lib/middleman-core/application.rb +4 -0
- data/lib/middleman-core/cli/build.rb +14 -2
- data/lib/middleman-core/cli/init.rb +1 -0
- data/lib/middleman-core/core_extensions.rb +6 -1
- data/lib/middleman-core/core_extensions/file_watcher.rb +1 -0
- data/lib/middleman-core/core_extensions/request.rb +2 -4
- data/lib/middleman-core/extensions.rb +13 -5
- data/lib/middleman-core/meta_pages.rb +25 -11
- data/lib/middleman-core/meta_pages/sitemap_resource.rb +2 -2
- data/lib/middleman-core/meta_pages/templates/config.html.erb +7 -9
- data/lib/middleman-core/meta_pages/templates/index.html.erb +3 -3
- data/lib/middleman-core/meta_pages/templates/sitemap.html.erb +6 -6
- data/lib/middleman-core/sitemap/extensions/redirects.rb +1 -2
- data/lib/middleman-core/sitemap/extensions/request_endpoints.rb +2 -3
- data/lib/middleman-core/sitemap/resource.rb +7 -13
- data/lib/middleman-core/util.rb +2 -3
- data/lib/middleman-core/version.rb +1 -1
- data/lib/middleman-more/core_extensions/default_helpers.rb +9 -5
- data/lib/middleman-more/core_extensions/i18n.rb +17 -10
- data/lib/middleman-more/extensions/{automatic-alt-tags.rb → automatic_alt_tags.rb} +0 -0
- data/lib/middleman-more/extensions/gzip.rb +29 -6
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/.document +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/.gitignore +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/.yardopts +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/LICENSE.txt +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/README.rdoc +5 -5
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/Rakefile +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/bin/padrino +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core.rb +4 -10
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/application.rb +39 -35
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/application/flash.rb +7 -7
- data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/application/rendering.rb +317 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/application/rendering/extensions/erubis.rb +15 -6
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/application/rendering/extensions/haml.rb +2 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/application/rendering/extensions/slim.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/application/routing.rb +406 -368
- data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/application/showexceptions.rb +21 -0
- data/lib/vendored-middleman-deps/padrino-core-0.11.4/lib/padrino-core/caller.rb +53 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/cli/adapter.rb +4 -4
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/cli/base.rb +40 -39
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/cli/console.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/cli/rake.rb +2 -2
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/cli/rake_tasks.rb +2 -4
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/command.rb +2 -2
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/images/404.png +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/images/500.png +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/loader.rb +14 -15
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/cs.yml +0 -1
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/da.yml +0 -1
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/de.yml +0 -1
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/en.yml +0 -1
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/es.yml +1 -2
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/fr.yml +2 -3
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/hu.yml +1 -2
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/it.yml +0 -1
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/ja.yml +1 -2
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/lv.yml +0 -1
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/nl.yml +0 -1
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/no.yml +0 -2
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/pl.yml +0 -1
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/pt_br.yml +0 -1
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/ro.yml +0 -1
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/ru.yml +0 -1
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/sv.yml +0 -1
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/tr.yml +0 -1
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/uk.yml +0 -1
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/zh_cn.yml +0 -1
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/locale/zh_tw.yml +0 -1
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/logger.rb +30 -36
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/module.rb +3 -3
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/mounter.rb +59 -59
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/reloader.rb +23 -23
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/router.rb +10 -13
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/server.rb +17 -19
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/support_lite.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/tasks.rb +3 -3
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/lib/padrino-core/version.rb +1 -1
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/padrino-core.gemspec +2 -2
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/fixtures/app_gem/Gemfile +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/fixtures/app_gem/app/app.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/fixtures/app_gem/app_gem.gemspec +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/fixtures/app_gem/lib/app_gem.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/fixtures/app_gem/lib/app_gem/version.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/fixtures/apps/.components +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/fixtures/apps/.gitignore +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/fixtures/apps/complex.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/fixtures/apps/simple.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/fixtures/dependencies/a.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/fixtures/dependencies/b.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/fixtures/dependencies/c.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/fixtures/dependencies/circular/e.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/fixtures/dependencies/circular/f.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/fixtures/dependencies/circular/g.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/fixtures/dependencies/d.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/helper.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/mini_shoulda.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/test_application.rb +7 -7
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/test_core.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/test_csrf_protection.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/test_dependencies.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/test_filters.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/test_flash.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/test_locale.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/test_logger.rb +29 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/test_mounter.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/test_reloader_complex.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/test_reloader_simple.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/test_rendering.rb +15 -2
- data/lib/vendored-middleman-deps/padrino-core-0.11.4/test/test_rendering_extensions.rb +14 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/test_restful_routing.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/test_router.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/test_routing.rb +69 -11
- data/lib/vendored-middleman-deps/{padrino-core-0.11.2 → padrino-core-0.11.4}/test/test_support_lite.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/.document +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/.gitignore +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/.yardopts +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/LICENSE.txt +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/README.rdoc +1 -1
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/Rakefile +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers.rb +3 -6
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/asset_tag_helpers.rb +34 -42
- data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/lib/padrino-helpers/breadcrumb_helpers.rb +183 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/form_builder/abstract_form_builder.rb +126 -118
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/form_builder/standard_form_builder.rb +6 -9
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/form_helpers.rb +252 -195
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/format_helpers.rb +29 -42
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/cs.yml +14 -14
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/da.yml +1 -1
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/de.yml +1 -1
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/en.yml +16 -16
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/es.yml +16 -16
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/fr.yml +1 -2
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/hu.yml +16 -16
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/it.yml +2 -2
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/ja.yml +16 -16
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/lv.yml +16 -16
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/nl.yml +1 -1
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/no.yml +1 -1
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/pl.yml +7 -7
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/pt_br.yml +16 -16
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/ro.yml +16 -16
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/ru.yml +16 -16
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/sv.yml +16 -16
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/tr.yml +16 -16
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/uk.yml +16 -16
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/zh_cn.yml +16 -16
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/locale/zh_tw.yml +16 -16
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/number_helpers.rb +10 -15
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/output_helpers.rb +50 -58
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/output_helpers/abstract_handler.rb +16 -18
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/output_helpers/erb_handler.rb +11 -12
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/output_helpers/haml_handler.rb +9 -9
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/output_helpers/slim_handler.rb +11 -13
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/render_helpers.rb +5 -6
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/tag_helpers.rb +26 -22
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/lib/padrino-helpers/translation_helpers.rb +4 -6
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/padrino-helpers.gemspec +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/app.rb +7 -3
- data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/button_to.erb +8 -0
- data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/button_to.haml +5 -0
- data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/fixtures/markup_app/views/button_to.slim +6 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/capture_concat.erb +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/capture_concat.haml +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/capture_concat.slim +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/content_for.erb +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/content_for.haml +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/content_for.slim +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/content_tag.erb +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/content_tag.haml +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/content_tag.slim +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/current_engine.erb +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/current_engine.haml +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/current_engine.slim +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/fields_for.erb +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/fields_for.haml +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/fields_for.slim +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/form_for.erb +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/form_for.haml +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/form_for.slim +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/form_tag.erb +9 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/form_tag.haml +8 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/form_tag.slim +9 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/link_to.erb +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/link_to.haml +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/link_to.slim +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/mail_to.erb +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/mail_to.haml +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/mail_to.slim +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/meta_tag.erb +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/meta_tag.haml +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/meta_tag.slim +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/partials/_erb.erb +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/partials/_haml.haml +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/partials/_slim.slim +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/simple_partial.erb +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/simple_partial.haml +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/markup_app/views/simple_partial.slim +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/render_app/app.rb +1 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/render_app/views/current_engine.haml +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/render_app/views/current_engines/_erb.erb +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/render_app/views/current_engines/_haml.haml +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/render_app/views/current_engines/_slim.slim +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/render_app/views/double_capture_erb.erb +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/render_app/views/double_capture_haml.haml +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/render_app/views/double_capture_slim.slim +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/render_app/views/erb/test.erb +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/render_app/views/explicit_engine.haml +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/render_app/views/haml/test.haml +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/render_app/views/template/_user.haml +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/render_app/views/template/haml_template.haml +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/fixtures/render_app/views/template/some_template.haml +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/helper.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/test_asset_tag_helpers.rb +9 -3
- data/lib/vendored-middleman-deps/padrino-helpers-0.11.4/test/test_breadcrumb_helpers.rb +134 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/test_form_builder.rb +38 -6
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/test_form_helpers.rb +230 -12
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/test_format_helpers.rb +3 -3
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/test_locale.rb +0 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/test_number_helpers.rb +4 -0
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/test_output_helpers.rb +1 -1
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/test_render_helpers.rb +1 -1
- data/lib/vendored-middleman-deps/{padrino-helpers-0.11.2 → padrino-helpers-0.11.4}/test/test_tag_helpers.rb +3 -3
- data/middleman-core.gemspec +7 -8
- data/spec/spec_helper.rb +1 -1
- metadata +220 -215
- data/lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/application/rendering.rb +0 -320
- data/lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/application/showexceptions.rb +0 -20
- data/lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/caller.rb +0 -53
- data/lib/vendored-middleman-deps/padrino-helpers-0.11.2/lib/padrino-helpers/breadcrumb_helpers.rb +0 -171
data/lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/application/rendering.rb
DELETED
|
@@ -1,320 +0,0 @@
|
|
|
1
|
-
require 'padrino-core/support_lite' unless defined?(SupportLite)
|
|
2
|
-
|
|
3
|
-
module Padrino
|
|
4
|
-
##
|
|
5
|
-
# Padrino enhances the Sinatra 'render' method to have support for
|
|
6
|
-
# automatic template engine detection, enhanced layout functionality,
|
|
7
|
-
# locale enabled rendering, among other features.
|
|
8
|
-
#
|
|
9
|
-
module Rendering
|
|
10
|
-
##
|
|
11
|
-
# A SafeTemplate assumes that its output is safe.
|
|
12
|
-
#
|
|
13
|
-
# @api private
|
|
14
|
-
module SafeTemplate
|
|
15
|
-
def render(*)
|
|
16
|
-
super.html_safe
|
|
17
|
-
end
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
##
|
|
21
|
-
# Exception responsible for when an expected template did not exist.
|
|
22
|
-
#
|
|
23
|
-
class TemplateNotFound < RuntimeError
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
##
|
|
27
|
-
# This is an array of file patterns to ignore. If your editor add a
|
|
28
|
-
# suffix during editing to your files please add it like:
|
|
29
|
-
#
|
|
30
|
-
# @example
|
|
31
|
-
# Padrino::Rendering::IGNORE_FILE_PATTERN << /~$/
|
|
32
|
-
#
|
|
33
|
-
IGNORE_FILE_PATTERN = [
|
|
34
|
-
/~$/ # This is for Gedit
|
|
35
|
-
] unless defined?(IGNORE_FILE_PATTERN)
|
|
36
|
-
|
|
37
|
-
##
|
|
38
|
-
# Default options used in the #resolve_template-method.
|
|
39
|
-
#
|
|
40
|
-
DEFAULT_RENDERING_OPTIONS = { :strict_format => false, :raise_exceptions => true } unless defined?(DEFAULT_RENDERING_OPTIONS)
|
|
41
|
-
|
|
42
|
-
class << self
|
|
43
|
-
##
|
|
44
|
-
# Default engine configurations for Padrino::Rendering
|
|
45
|
-
#
|
|
46
|
-
# @return {Hash<Symbol,Hash>}
|
|
47
|
-
# The configurations, keyed by engine.
|
|
48
|
-
def engine_configurations
|
|
49
|
-
@engine_configurations ||= {}
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
##
|
|
53
|
-
# Main class that register this extension.
|
|
54
|
-
#
|
|
55
|
-
def registered(app)
|
|
56
|
-
included(app)
|
|
57
|
-
engine_configurations.each do |engine, configs|
|
|
58
|
-
app.set engine, configs
|
|
59
|
-
end
|
|
60
|
-
end
|
|
61
|
-
|
|
62
|
-
def included(base)
|
|
63
|
-
base.send(:include, InstanceMethods)
|
|
64
|
-
base.extend(ClassMethods)
|
|
65
|
-
end
|
|
66
|
-
end
|
|
67
|
-
|
|
68
|
-
##
|
|
69
|
-
# Class methods responsible for rendering templates as part of a request.
|
|
70
|
-
#
|
|
71
|
-
module ClassMethods
|
|
72
|
-
##
|
|
73
|
-
# Use layout like rails does or if a block given then like sinatra.
|
|
74
|
-
# If used without a block, sets the current layout for the route.
|
|
75
|
-
#
|
|
76
|
-
# By default, searches in your:
|
|
77
|
-
#
|
|
78
|
-
# +app+/+views+/+layouts+/+application+.(+haml+|+erb+|+xxx+)
|
|
79
|
-
# +app+/+views+/+layout_name+.(+haml+|+erb+|+xxx+)
|
|
80
|
-
#
|
|
81
|
-
# If you define +layout+ :+custom+ then searches for your layouts in
|
|
82
|
-
# +app+/+views+/+layouts+/+custom+.(+haml+|+erb+|+xxx+)
|
|
83
|
-
# +app+/+views+/+custom+.(+haml+|+erb+|+xxx+)
|
|
84
|
-
#
|
|
85
|
-
# @param [Symbol] name (:layout)
|
|
86
|
-
# The layout to use.
|
|
87
|
-
#
|
|
88
|
-
# @yield []
|
|
89
|
-
#
|
|
90
|
-
def layout(name=:layout, &block)
|
|
91
|
-
return super(name, &block) if block_given?
|
|
92
|
-
@layout = name
|
|
93
|
-
end
|
|
94
|
-
|
|
95
|
-
##
|
|
96
|
-
# Returns the cached template file to render for a given url, content_type and locale.
|
|
97
|
-
#
|
|
98
|
-
# @param [Array<template_path, content_type, locale>] render_options
|
|
99
|
-
#
|
|
100
|
-
def fetch_template_file(render_options)
|
|
101
|
-
(@_cached_templates ||= {})[render_options]
|
|
102
|
-
end
|
|
103
|
-
|
|
104
|
-
##
|
|
105
|
-
# Caches the template file for the given rendering options
|
|
106
|
-
#
|
|
107
|
-
# @param [String] template_file
|
|
108
|
-
# The path of the template file.
|
|
109
|
-
#
|
|
110
|
-
# @param [Array<template_path, content_type, locale>] render_options
|
|
111
|
-
#
|
|
112
|
-
def cache_template_file!(template_file, render_options)
|
|
113
|
-
(@_cached_templates ||= {})[render_options] = template_file || []
|
|
114
|
-
end
|
|
115
|
-
|
|
116
|
-
##
|
|
117
|
-
# Returns the cached layout path.
|
|
118
|
-
#
|
|
119
|
-
# @param [Symbol, nil] given_layout
|
|
120
|
-
# The requested layout.
|
|
121
|
-
#
|
|
122
|
-
def fetch_layout_path(given_layout=nil)
|
|
123
|
-
layout_name = given_layout || @layout || :application
|
|
124
|
-
@_cached_layout ||= {}
|
|
125
|
-
cached_layout_path = @_cached_layout[layout_name]
|
|
126
|
-
return cached_layout_path if cached_layout_path
|
|
127
|
-
has_layout_at_root = Dir["#{views}/#{layout_name}.*"].any?
|
|
128
|
-
layout_path = has_layout_at_root ? layout_name.to_sym : File.join('layouts', layout_name.to_s).to_sym
|
|
129
|
-
@_cached_layout[layout_name] = layout_path unless reload_templates?
|
|
130
|
-
layout_path
|
|
131
|
-
end
|
|
132
|
-
end
|
|
133
|
-
|
|
134
|
-
# Instance methods that allow enhanced rendering to function properly in Padrino.
|
|
135
|
-
module InstanceMethods
|
|
136
|
-
attr_reader :current_engine
|
|
137
|
-
|
|
138
|
-
##
|
|
139
|
-
# Get/Set the content_type
|
|
140
|
-
#
|
|
141
|
-
# @param [String, nil] type
|
|
142
|
-
# The Content-Type to use.
|
|
143
|
-
#
|
|
144
|
-
# @param [Symbol, nil] type.
|
|
145
|
-
# Look and parse the given symbol to the matched Content-Type.
|
|
146
|
-
#
|
|
147
|
-
# @param [Hash] params
|
|
148
|
-
# Additional params to append to the Content-Type.
|
|
149
|
-
#
|
|
150
|
-
# @example
|
|
151
|
-
# case content_type
|
|
152
|
-
# when :js then do_some
|
|
153
|
-
# when :css then do_another
|
|
154
|
-
# end
|
|
155
|
-
#
|
|
156
|
-
# content_type :js
|
|
157
|
-
# # => set the response with 'application/javascript' Content-Type
|
|
158
|
-
# content_type 'text/html'
|
|
159
|
-
#
|
|
160
|
-
# # => set directly the Content-Type to 'text/html'
|
|
161
|
-
#
|
|
162
|
-
def content_type(type=nil, params={})
|
|
163
|
-
unless type.nil?
|
|
164
|
-
super(type, params)
|
|
165
|
-
@_content_type = type
|
|
166
|
-
end
|
|
167
|
-
@_content_type
|
|
168
|
-
end
|
|
169
|
-
|
|
170
|
-
private
|
|
171
|
-
##
|
|
172
|
-
# Enhancing Sinatra render functionality for:
|
|
173
|
-
#
|
|
174
|
-
# * Using layout similar to rails
|
|
175
|
-
# * Use render 'path/to/my/template' (without symbols)
|
|
176
|
-
# * Use render 'path/to/my/template' (with engine lookup)
|
|
177
|
-
# * Use render 'path/to/template.haml' (with explicit engine lookup)
|
|
178
|
-
# * Use render 'path/to/template', :layout => false
|
|
179
|
-
# * Use render 'path/to/template', :layout => false, :engine => 'haml'
|
|
180
|
-
#
|
|
181
|
-
def render(engine, data=nil, options={}, locals={}, &block)
|
|
182
|
-
|
|
183
|
-
# If engine is nil, ignore engine parameter and shift up all arguments
|
|
184
|
-
# render nil, "index", { :layout => true }, { :localvar => "foo" }
|
|
185
|
-
engine, data, options = data, options, locals if engine.nil? && data
|
|
186
|
-
|
|
187
|
-
# Data is a hash of options when no engine isn't explicit
|
|
188
|
-
# render "index", { :layout => true }, { :localvar => "foo" }
|
|
189
|
-
# Data is options, and options is locals in this case
|
|
190
|
-
data, options, locals = nil, data, options if data.is_a?(Hash)
|
|
191
|
-
|
|
192
|
-
# If data is unassigned then this is a likely a template to be resolved
|
|
193
|
-
# This means that no engine was explicitly defined
|
|
194
|
-
data, engine = *resolve_template(engine, options.dup) if data.nil?
|
|
195
|
-
|
|
196
|
-
# Setup root
|
|
197
|
-
root = settings.respond_to?(:root) ? settings.root : ""
|
|
198
|
-
|
|
199
|
-
# Use @layout if it exists
|
|
200
|
-
layout_was = options[:layout]
|
|
201
|
-
options[:layout] = @layout if options[:layout].nil? || options[:layout] == true
|
|
202
|
-
# Resolve layouts similar to in Rails
|
|
203
|
-
if options[:layout].nil? && !settings.templates.has_key?(:layout)
|
|
204
|
-
layout_path, layout_engine = *resolved_layout
|
|
205
|
-
options[:layout] = layout_path || false # We need to force layout false so sinatra don't try to render it
|
|
206
|
-
options[:layout] = false unless layout_engine == engine # TODO allow different layout engine
|
|
207
|
-
options[:layout_engine] = layout_engine || engine if options[:layout]
|
|
208
|
-
elsif options[:layout].present?
|
|
209
|
-
options[:layout] = settings.fetch_layout_path(options[:layout] || @layout)
|
|
210
|
-
end
|
|
211
|
-
# Default to original layout value if none found
|
|
212
|
-
options[:layout] ||= layout_was
|
|
213
|
-
|
|
214
|
-
# Cleanup the template
|
|
215
|
-
@current_engine, engine_was = engine, @current_engine
|
|
216
|
-
@_out_buf, _buf_was = ActiveSupport::SafeBuffer.new, @_out_buf
|
|
217
|
-
|
|
218
|
-
# Pass arguments to Sinatra render method
|
|
219
|
-
super(engine, data, options.dup, locals, &block)
|
|
220
|
-
ensure
|
|
221
|
-
@current_engine = engine_was
|
|
222
|
-
@_out_buf = _buf_was
|
|
223
|
-
end
|
|
224
|
-
|
|
225
|
-
##
|
|
226
|
-
# Returns the located layout tuple to be used for the rendered template
|
|
227
|
-
# (if available).
|
|
228
|
-
#
|
|
229
|
-
# @example
|
|
230
|
-
# resolve_layout
|
|
231
|
-
# # => ["/layouts/custom", :erb]
|
|
232
|
-
# # => [nil, nil]
|
|
233
|
-
#
|
|
234
|
-
def resolved_layout
|
|
235
|
-
located_layout = resolve_template(settings.fetch_layout_path, :raise_exceptions => false, :strict_format => true)
|
|
236
|
-
located_layout ? located_layout : [nil, nil]
|
|
237
|
-
end
|
|
238
|
-
|
|
239
|
-
##
|
|
240
|
-
# Returns the template path and engine that match content_type (if present),
|
|
241
|
-
# I18n.locale.
|
|
242
|
-
#
|
|
243
|
-
# @param [String] template_path
|
|
244
|
-
# The path of the template.
|
|
245
|
-
#
|
|
246
|
-
# @param [Hash] options
|
|
247
|
-
# Additional options.
|
|
248
|
-
#
|
|
249
|
-
# @option options [Boolean] :strict_format (false)
|
|
250
|
-
# The resolved template must match the content_type of the request.
|
|
251
|
-
#
|
|
252
|
-
# @option options [Boolean] :raise_exceptions (false)
|
|
253
|
-
# Raises a {TemplateNotFound} exception if the template cannot be located.
|
|
254
|
-
#
|
|
255
|
-
# @return [Array<Symbol, Symbol>]
|
|
256
|
-
# The path and format of the template.
|
|
257
|
-
#
|
|
258
|
-
# @raise [TemplateNotFound]
|
|
259
|
-
# The template could not be found.
|
|
260
|
-
#
|
|
261
|
-
# @example
|
|
262
|
-
# get "/foo", :provides => [:html, :js] do; render 'path/to/foo'; end
|
|
263
|
-
# # If you request "/foo.js" with I18n.locale == :ru => [:"/path/to/foo.ru.js", :erb]
|
|
264
|
-
# # If you request "/foo" with I18n.locale == :de => [:"/path/to/foo.de.haml", :haml]
|
|
265
|
-
#
|
|
266
|
-
def resolve_template(template_path, options={})
|
|
267
|
-
began_at = Time.now
|
|
268
|
-
# Fetch cached template for rendering options
|
|
269
|
-
template_path = template_path.to_s[0] == ?/ ? template_path.to_s : "/#{template_path}"
|
|
270
|
-
rendering_options = [template_path, content_type, locale]
|
|
271
|
-
cached_template = settings.fetch_template_file(rendering_options)
|
|
272
|
-
if cached_template
|
|
273
|
-
logger.debug :cached, began_at, cached_template[0] if settings.logging? && defined?(logger)
|
|
274
|
-
return cached_template
|
|
275
|
-
end
|
|
276
|
-
|
|
277
|
-
# Resolve view path and options
|
|
278
|
-
options.reverse_merge!(DEFAULT_RENDERING_OPTIONS)
|
|
279
|
-
view_path = options.delete(:views) || settings.views || "./views"
|
|
280
|
-
target_extension = File.extname(template_path)[1..-1] || "none" # explicit template extension
|
|
281
|
-
template_path = template_path.chomp(".#{target_extension}")
|
|
282
|
-
|
|
283
|
-
# Generate potential template candidates
|
|
284
|
-
templates = Dir[File.join(view_path, template_path) + ".*"].map do |file|
|
|
285
|
-
template_engine = File.extname(file)[1..-1].to_sym # retrieves engine extension
|
|
286
|
-
template_file = file.sub(view_path, '').chomp(".#{template_engine}").to_sym # retrieves template filename
|
|
287
|
-
[template_file, template_engine] unless IGNORE_FILE_PATTERN.any? { |pattern| template_engine.to_s =~ pattern }
|
|
288
|
-
end
|
|
289
|
-
|
|
290
|
-
# Check if we have a simple content type
|
|
291
|
-
simple_content_type = [:html, :plain].include?(content_type)
|
|
292
|
-
|
|
293
|
-
# Resolve final template to render
|
|
294
|
-
located_template =
|
|
295
|
-
templates.find { |file, e| file.to_s == "#{template_path}.#{locale}.#{content_type}" } ||
|
|
296
|
-
templates.find { |file, e| file.to_s == "#{template_path}.#{locale}" && simple_content_type } ||
|
|
297
|
-
templates.find { |file, e| File.extname(file.to_s) == ".#{target_extension}" or e.to_s == target_extension.to_s } ||
|
|
298
|
-
templates.find { |file, e| file.to_s == "#{template_path}.#{content_type}" } ||
|
|
299
|
-
templates.find { |file, e| file.to_s == "#{template_path}" && simple_content_type } ||
|
|
300
|
-
(!options[:strict_format] && templates.first) # If not strict, fall back to the first located template
|
|
301
|
-
|
|
302
|
-
raise TemplateNotFound, "Template '#{template_path}' not found in '#{view_path}'!" if !located_template && options[:raise_exceptions]
|
|
303
|
-
settings.cache_template_file!(located_template, rendering_options) unless settings.reload_templates?
|
|
304
|
-
logger.debug :template, began_at, located_template[0] if located_template && settings.logging? && defined?(logger)
|
|
305
|
-
located_template
|
|
306
|
-
end
|
|
307
|
-
|
|
308
|
-
##
|
|
309
|
-
# Return the I18n.locale if I18n is defined.
|
|
310
|
-
#
|
|
311
|
-
def locale
|
|
312
|
-
I18n.locale if defined?(I18n)
|
|
313
|
-
end
|
|
314
|
-
end # InstanceMethods
|
|
315
|
-
end # Rendering
|
|
316
|
-
end # Padrino
|
|
317
|
-
|
|
318
|
-
require 'padrino-core/application/rendering/extensions/haml'
|
|
319
|
-
require 'padrino-core/application/rendering/extensions/erubis'
|
|
320
|
-
require 'padrino-core/application/rendering/extensions/slim'
|
data/lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/application/showexceptions.rb
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
module Padrino
|
|
2
|
-
##
|
|
3
|
-
# This module extend Sinatra::ShowExceptions adding Padrino as "Framework".
|
|
4
|
-
#
|
|
5
|
-
# @private
|
|
6
|
-
class ShowExceptions < Sinatra::ShowExceptions
|
|
7
|
-
private
|
|
8
|
-
def frame_class(frame)
|
|
9
|
-
if frame.filename =~ /lib\/sinatra.*\.rb|lib\/padrino.*\.rb/
|
|
10
|
-
"framework"
|
|
11
|
-
elsif (defined?(Gem) && frame.filename.include?(Gem.dir)) ||
|
|
12
|
-
frame.filename =~ /\/bin\/(\w+)$/ ||
|
|
13
|
-
frame.filename =~ /Ruby\/Gems/
|
|
14
|
-
"system"
|
|
15
|
-
else
|
|
16
|
-
"app"
|
|
17
|
-
end
|
|
18
|
-
end
|
|
19
|
-
end # ShowExceptions
|
|
20
|
-
end # Padrino
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
module Padrino
|
|
2
|
-
|
|
3
|
-
# List of callers in a Padrino application that should be ignored as part of a stack trace.
|
|
4
|
-
PADRINO_IGNORE_CALLERS = [
|
|
5
|
-
%r{lib/padrino-.*$}, # all padrino code
|
|
6
|
-
%r{/padrino-.*/(lib|bin)}, # all padrino code
|
|
7
|
-
%r{/bin/padrino$}, # all padrino code
|
|
8
|
-
%r{/sinatra(/(base|main|showexceptions))?\.rb$}, # all sinatra code
|
|
9
|
-
%r{lib/tilt.*\.rb$}, # all tilt code
|
|
10
|
-
%r{lib/rack.*\.rb$}, # all rack code
|
|
11
|
-
%r{lib/mongrel.*\.rb$}, # all mongrel code
|
|
12
|
-
%r{lib/shotgun.*\.rb$}, # all shotgun lib
|
|
13
|
-
%r{bin/shotgun$}, # shotgun binary
|
|
14
|
-
%r{\(.*\)}, # generated code
|
|
15
|
-
%r{shoulda/context\.rb$}, # shoulda hacks
|
|
16
|
-
%r{mocha/integration}, # mocha hacks
|
|
17
|
-
%r{test/unit}, # test unit hacks
|
|
18
|
-
%r{rake_test_loader\.rb}, # rake hacks
|
|
19
|
-
%r{custom_require\.rb$}, # rubygems require hacks
|
|
20
|
-
%r{active_support}, # active_support require hacks
|
|
21
|
-
%r{/thor} # thor require hacks
|
|
22
|
-
] unless defined?(PADRINO_IGNORE_CALLERS)
|
|
23
|
-
|
|
24
|
-
##
|
|
25
|
-
# Add rubinius (and hopefully other VM implementations) ignore patterns ...
|
|
26
|
-
#
|
|
27
|
-
PADRINO_IGNORE_CALLERS.concat(RUBY_IGNORE_CALLERS) if defined?(RUBY_IGNORE_CALLERS)
|
|
28
|
-
|
|
29
|
-
private
|
|
30
|
-
##
|
|
31
|
-
# The filename for the file that is the direct caller (first caller).
|
|
32
|
-
#
|
|
33
|
-
# @return [String]
|
|
34
|
-
# The file the caller method exists in.
|
|
35
|
-
#
|
|
36
|
-
def self.first_caller
|
|
37
|
-
caller_files.first
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
#
|
|
41
|
-
# Like +Kernel#caller+ but excluding certain magic entries and without
|
|
42
|
-
# line / method information; the resulting array contains filenames only.
|
|
43
|
-
#
|
|
44
|
-
# @return [Array<String>]
|
|
45
|
-
# The files of the calling methods.
|
|
46
|
-
#
|
|
47
|
-
def self.caller_files
|
|
48
|
-
caller(1).
|
|
49
|
-
map { |line| line.split(/:(?=\d|in )/)[0,2] }.
|
|
50
|
-
reject { |file,line| PADRINO_IGNORE_CALLERS.any? { |pattern| file =~ pattern } }.
|
|
51
|
-
map { |file,line| file }
|
|
52
|
-
end
|
|
53
|
-
end # Padrino
|
data/lib/vendored-middleman-deps/padrino-helpers-0.11.2/lib/padrino-helpers/breadcrumb_helpers.rb
DELETED
|
@@ -1,171 +0,0 @@
|
|
|
1
|
-
module Padrino
|
|
2
|
-
module Helpers
|
|
3
|
-
class Breadcrumb
|
|
4
|
-
|
|
5
|
-
attr_accessor :home
|
|
6
|
-
attr_accessor :items
|
|
7
|
-
|
|
8
|
-
DEFAULT_URL = "/"
|
|
9
|
-
DEFAULT_CAPTION ="Home Page"
|
|
10
|
-
|
|
11
|
-
##
|
|
12
|
-
# initialize breadcrumbs with default value
|
|
13
|
-
#
|
|
14
|
-
# @example
|
|
15
|
-
# before do
|
|
16
|
-
# @breadcrumbs = breadcrumbs.new
|
|
17
|
-
# end
|
|
18
|
-
#
|
|
19
|
-
# @api public
|
|
20
|
-
def initialize
|
|
21
|
-
self.home = { :url => DEFAULT_URL, :caption => DEFAULT_CAPTION, :name => :home }
|
|
22
|
-
reset
|
|
23
|
-
end
|
|
24
|
-
|
|
25
|
-
##
|
|
26
|
-
# Set the custom home (Parent) link
|
|
27
|
-
#
|
|
28
|
-
# @param [String] url
|
|
29
|
-
# The url href
|
|
30
|
-
#
|
|
31
|
-
# @param [String] caption
|
|
32
|
-
# The text caption.
|
|
33
|
-
#
|
|
34
|
-
# @example
|
|
35
|
-
# breadcrumbs.set_home "/HomeFoo", "Foo Home"
|
|
36
|
-
#
|
|
37
|
-
#
|
|
38
|
-
# @api public
|
|
39
|
-
def set_home(url, caption)
|
|
40
|
-
self.home = { :url => url, :caption => caption.to_s.humanize.html_safe, :name => :home }
|
|
41
|
-
reset
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
##
|
|
45
|
-
# Reset breadcrumbs to default or personal home
|
|
46
|
-
#
|
|
47
|
-
# @example
|
|
48
|
-
# breadcrumbs.reset
|
|
49
|
-
#
|
|
50
|
-
# @api public
|
|
51
|
-
def reset
|
|
52
|
-
self.items=[]
|
|
53
|
-
self.items << home
|
|
54
|
-
end
|
|
55
|
-
|
|
56
|
-
##
|
|
57
|
-
# Reset breadcrumbs to default home
|
|
58
|
-
#
|
|
59
|
-
# @example
|
|
60
|
-
# breadcrumbs.reset!
|
|
61
|
-
#
|
|
62
|
-
# @api public
|
|
63
|
-
def reset!
|
|
64
|
-
self.home = { :url => DEFAULT_URL, :caption => DEFAULT_CAPTION, :name => :home }
|
|
65
|
-
reset
|
|
66
|
-
end
|
|
67
|
-
|
|
68
|
-
##
|
|
69
|
-
# Add a new breadcrumbs
|
|
70
|
-
#
|
|
71
|
-
# @param [String] name
|
|
72
|
-
# The name of resource
|
|
73
|
-
# @param [Symbol] name
|
|
74
|
-
# The name of resource
|
|
75
|
-
#
|
|
76
|
-
# @param [String] url
|
|
77
|
-
# The url href.
|
|
78
|
-
#
|
|
79
|
-
# @param [String] caption
|
|
80
|
-
# The text caption
|
|
81
|
-
#
|
|
82
|
-
# @example
|
|
83
|
-
# breadcrumbs.add "foo", "/foo", "Foo Link"
|
|
84
|
-
# breadcrumbs.add :foo, "/foo", "Foo Link"
|
|
85
|
-
#
|
|
86
|
-
# @api public
|
|
87
|
-
def add(name, url, caption)
|
|
88
|
-
items << { :name => name, :url => url.to_s, :caption => caption.to_s.humanize.html_safe }
|
|
89
|
-
end
|
|
90
|
-
|
|
91
|
-
alias :<< :add
|
|
92
|
-
|
|
93
|
-
##
|
|
94
|
-
# Remove a Breadcrumbs
|
|
95
|
-
#
|
|
96
|
-
# @param [String] name
|
|
97
|
-
# The name of resource to delete from breadcrumbs list
|
|
98
|
-
#
|
|
99
|
-
# @param [Symbol] name
|
|
100
|
-
# The name of resource to delete from breadcrumbs list
|
|
101
|
-
#
|
|
102
|
-
# @example
|
|
103
|
-
# breadcrumbs.del "foo"
|
|
104
|
-
# breadcrumbs.del :foo
|
|
105
|
-
#
|
|
106
|
-
# @api public
|
|
107
|
-
def del(name)
|
|
108
|
-
items.delete_if { |item| item[:name] == name.to_sym }
|
|
109
|
-
end
|
|
110
|
-
|
|
111
|
-
end # Breadcrumb
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
module Breadcrumbs
|
|
115
|
-
|
|
116
|
-
# Render breadcrumbs to view
|
|
117
|
-
#
|
|
118
|
-
# @param [Breadcrumbs] breadcrumbs
|
|
119
|
-
# The breadcrumbs to render into view
|
|
120
|
-
#
|
|
121
|
-
# @param [Boolean] bootstrap
|
|
122
|
-
# If true, render separation (usefull with Twitter Bootstrap)
|
|
123
|
-
#
|
|
124
|
-
# @param [String] active
|
|
125
|
-
# Css class style set to active breadcrumb
|
|
126
|
-
#
|
|
127
|
-
# @return [String] Unordered list with breadcrumbs
|
|
128
|
-
#
|
|
129
|
-
# @example
|
|
130
|
-
# = breadcrumbs @breacrumbs
|
|
131
|
-
# # Generates:
|
|
132
|
-
# # <ul>
|
|
133
|
-
# # <li><a herf="/foo" >Foo Link</a></li>
|
|
134
|
-
# # <li class="active" ><a herf="/bar">Bar Link</a></li>
|
|
135
|
-
# # </ul>
|
|
136
|
-
#
|
|
137
|
-
#
|
|
138
|
-
# @api public
|
|
139
|
-
def breadcrumbs(breadcrumbs, bootstrap=false, active="active")
|
|
140
|
-
content=""
|
|
141
|
-
breadcrumbs.items[0..-2].each do |item|
|
|
142
|
-
content << render_item(item, bootstrap)
|
|
143
|
-
end
|
|
144
|
-
last = link_to(breadcrumbs.items.last[:caption], breadcrumbs.items.last[:url])
|
|
145
|
-
content << safe_content_tag(:li, last, :class => active)
|
|
146
|
-
safe_content_tag(:ul, content, :class => "breadcrumb" )
|
|
147
|
-
end
|
|
148
|
-
|
|
149
|
-
private
|
|
150
|
-
##
|
|
151
|
-
# Private method to return list item
|
|
152
|
-
#
|
|
153
|
-
# @param [Hash] item
|
|
154
|
-
# The breadcrumb item
|
|
155
|
-
#
|
|
156
|
-
# @param [Boolean] bootstrap
|
|
157
|
-
# If true, render separation (usefull with Twitter Bootstrap)
|
|
158
|
-
#
|
|
159
|
-
# @return [String] List item with breacrumb
|
|
160
|
-
#
|
|
161
|
-
# @api public
|
|
162
|
-
def render_item(item, bootstrap)
|
|
163
|
-
content = ""
|
|
164
|
-
content << link_to(item[:caption], item[:url])
|
|
165
|
-
content << safe_content_tag(:span, "/", :class => "divider") if bootstrap
|
|
166
|
-
safe_content_tag(:li, content )
|
|
167
|
-
end
|
|
168
|
-
|
|
169
|
-
end # Breadcrumb
|
|
170
|
-
end # Helpers
|
|
171
|
-
end # Padrino
|