ramaze 0.3.9.1 → 2023.01.06
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 +7 -0
- data/Gemfile +3 -0
- data/README.md +125 -0
- data/Rakefile +13 -186
- data/bin/ramaze +4 -149
- data/examples/app/auth/layout/auth.xhtml +25 -0
- data/examples/app/auth/start.rb +25 -0
- data/examples/app/auth/view/index.xhtml +4 -0
- data/examples/app/auth/view/login.xhtml +20 -0
- data/examples/app/auth/view/secret.xhtml +1 -0
- data/examples/app/blog/app.rb +23 -0
- data/examples/app/blog/config.ru +19 -0
- data/examples/app/blog/controller/init.rb +30 -0
- data/examples/app/blog/controller/posts.rb +223 -0
- data/examples/app/blog/controller/users.rb +152 -0
- data/examples/app/blog/layout/default.xhtml +61 -0
- data/examples/app/blog/migrations/01_create_schema.rb +50 -0
- data/examples/app/blog/model/comment.rb +42 -0
- data/examples/app/blog/model/init.rb +44 -0
- data/examples/app/blog/model/post.rb +33 -0
- data/examples/app/blog/model/user.rb +100 -0
- data/examples/app/blog/public/css/grid.css +107 -0
- data/examples/app/blog/public/css/layout.css +203 -0
- data/examples/app/blog/public/css/reset.css +123 -0
- data/examples/app/blog/public/css/text.css +109 -0
- data/examples/app/blog/public/dispatch.fcgi +11 -0
- data/examples/app/blog/public/favicon.ico +0 -0
- data/examples/app/blog/public/images/bg.png +0 -0
- data/examples/app/blog/start.rb +20 -0
- data/examples/app/blog/view/feed.xhtml +23 -0
- data/examples/app/blog/view/form.xhtml +11 -0
- data/examples/app/blog/view/index.xhtml +44 -0
- data/examples/app/blog/view/users/form.xhtml +12 -0
- data/examples/app/blog/view/users/index.xhtml +30 -0
- data/examples/app/blog/view/users/login.xhtml +8 -0
- data/examples/app/blog/view/view.xhtml +68 -0
- data/examples/app/chat/layout/default.xhtml +13 -0
- data/examples/app/chat/model/history.rb +38 -0
- data/examples/app/chat/model/message.rb +7 -0
- data/examples/app/chat/public/css/chat.css +9 -0
- data/examples/app/chat/public/js/chat.js +28 -0
- data/{lib/proto → examples/app/chat}/public/js/jquery.js +75 -15
- data/examples/app/chat/start.rb +39 -0
- data/examples/app/chat/view/chat.xhtml +9 -0
- data/examples/app/chat/view/index.xhtml +7 -0
- data/examples/app/localization/locale/de.yaml +5 -0
- data/examples/app/localization/locale/en.yaml +5 -0
- data/examples/app/localization/locale/ja.yaml +5 -0
- data/examples/app/localization/start.rb +48 -0
- data/examples/app/todolist/controller/init.rb +11 -0
- data/examples/app/todolist/controller/task.rb +39 -0
- data/examples/app/todolist/layout/default.xhtml +14 -0
- data/examples/app/todolist/model/init.rb +14 -0
- data/examples/app/todolist/model/task.rb +39 -0
- data/examples/app/todolist/public/css/screen.css +63 -0
- data/examples/app/todolist/start.rb +7 -0
- data/examples/app/todolist/view/index.xhtml +29 -0
- data/examples/{upload → app/upload}/start.rb +7 -3
- data/examples/app/whywiki/spec/whywiki.rb +56 -0
- data/examples/{whywiki → app/whywiki}/start.rb +10 -9
- data/examples/{whywiki/template → app/whywiki/view}/edit.xhtml +2 -2
- data/examples/app/whywiki/view/show.xhtml +20 -0
- data/examples/{wikore → app/wikore}/spec/wikore.rb +7 -9
- data/examples/{wikore → app/wikore}/src/controller.rb +9 -11
- data/examples/{wikore → app/wikore}/src/model.rb +11 -13
- data/examples/app/wikore/start.rb +9 -0
- data/examples/{wiktacular/template/html_layout.xhtml → app/wiktacular/layout/application.xhtml} +1 -1
- data/examples/{wiktacular → app/wiktacular}/mkd/main/2007-07-20_19-21-12.mkd +1 -1
- data/examples/app/wiktacular/mkd/main/2007-07-20_19-23-10.mkd +2 -0
- data/examples/app/wiktacular/mkd/main/2007-07-20_19-45-07.mkd +2 -0
- data/examples/app/wiktacular/mkd/main/current.mkd +2 -0
- data/examples/{wiktacular → app/wiktacular}/mkd/markdown/current.mkd +2 -2
- data/examples/app/wiktacular/mkd/testing/2007-07-20_16-43-46.mkd +2 -0
- data/examples/{wiktacular → app/wiktacular}/mkd/testing/2007-07-20_19-43-50.mkd +2 -2
- data/examples/{wiktacular → app/wiktacular}/mkd/testing/2007-07-21_18-46-01.mkd +11 -11
- data/examples/{wiktacular → app/wiktacular}/mkd/testing/2007-07-21_18-46-32.mkd +12 -12
- data/examples/{wiktacular → app/wiktacular}/mkd/testing/2007-07-21_18-47-08.mkd +16 -16
- data/examples/{wiktacular → app/wiktacular}/mkd/testing/2007-07-21_18-47-54.mkd +16 -16
- data/examples/{wiktacular → app/wiktacular}/mkd/testing/current.mkd +16 -16
- data/examples/{wiktacular → app/wiktacular}/spec/wiktacular.rb +39 -40
- data/examples/{wiktacular → app/wiktacular}/src/controller.rb +18 -18
- data/examples/{wiktacular → app/wiktacular}/src/model.rb +30 -14
- data/examples/{wiktacular → app/wiktacular}/start.rb +1 -1
- data/examples/{wiktacular/template → app/wiktacular/view}/edit.xhtml +2 -2
- data/examples/{wiktacular/template → app/wiktacular/view}/new.xhtml +1 -1
- data/examples/{element.rb → basic/element.rb} +5 -3
- data/examples/basic/gestalt.rb +26 -0
- data/examples/basic/hello.rb +14 -0
- data/examples/{layout.rb → basic/layout.rb} +2 -2
- data/examples/basic/linking.rb +29 -0
- data/examples/basic/partial.rb +26 -0
- data/examples/{simple.rb → basic/simple.rb} +9 -12
- data/examples/{caching.rb → helpers/cache.rb} +9 -7
- data/examples/helpers/paginate.rb +71 -0
- data/examples/helpers/rest.rb +28 -0
- data/examples/helpers/simple_captcha.rb +29 -0
- data/examples/{css.rb → misc/css.rb} +6 -12
- data/examples/misc/memleak_detector.rb +37 -0
- data/examples/misc/nagoro_element.rb +43 -0
- data/examples/{ramaise.rb → misc/ramaise.rb} +2 -2
- data/examples/misc/rapp.rb +56 -0
- data/examples/misc/sequel_scaffolding.rb +45 -0
- data/examples/misc/serve_directory.rb +6 -0
- data/examples/templates/template_erubis.rb +9 -10
- data/examples/templates/template_ezamar.rb +8 -7
- data/examples/templates/template_haml.rb +7 -8
- data/examples/templates/template_liquid.rb +20 -19
- data/examples/templates/template_markaby.rb +6 -7
- data/examples/templates/template_mustache.rb +70 -0
- data/examples/templates/template_nagoro.rb +6 -7
- data/examples/templates/template_redcloth.rb +8 -9
- data/examples/templates/template_remarkably.rb +8 -9
- data/examples/templates/template_tenjin.rb +10 -15
- data/examples/templates/{template → view}/external.haml +4 -4
- data/examples/templates/{template → view}/external.mab +4 -4
- data/examples/templates/view/external.mt +29 -0
- data/examples/templates/{template → view}/external.nag +4 -4
- data/examples/templates/{template → view}/external.redcloth +4 -4
- data/examples/templates/{template → view}/external.rem +4 -4
- data/examples/templates/{template → view}/external.rhtml +6 -6
- data/examples/templates/{template → view}/external.tenjin +4 -4
- data/examples/templates/{template → view}/external.zmr +6 -6
- data/guide/AUTHORS +80 -0
- data/guide/CHANGELOG +20210 -0
- data/guide/LICENSE +19 -0
- data/guide/_static/logo.png +0 -0
- data/guide/_static/logo.svg +49 -0
- data/guide/css/common.css +20 -0
- data/guide/general/cache.md +168 -0
- data/guide/general/configuration.md +169 -0
- data/guide/general/contributing.md +182 -0
- data/guide/general/controllers.md +210 -0
- data/guide/general/helpers.md +89 -0
- data/guide/general/installation.md +59 -0
- data/guide/general/logging.md +96 -0
- data/guide/general/middlewares.md +111 -0
- data/guide/general/models.md +79 -0
- data/{doc/readme_chunks/principles.txt → guide/general/principles.md} +15 -17
- data/guide/general/ramaze_command.md +110 -0
- data/guide/general/routes.md +82 -0
- data/guide/general/sessions.md +210 -0
- data/guide/general/special_thanks.md +69 -0
- data/guide/general/testing.md +228 -0
- data/guide/general/upgrading.md +85 -0
- data/guide/general/views.md +335 -0
- data/lib/proto/Gemfile +4 -0
- data/lib/proto/README.md +35 -0
- data/lib/proto/Rakefile +1 -0
- data/lib/proto/app.rb +9 -0
- data/lib/proto/config.ru +19 -0
- data/lib/proto/controller/init.rb +18 -0
- data/lib/proto/controller/main.rb +13 -10
- data/lib/proto/layout/default.xhtml +57 -0
- data/lib/proto/public/css/grid.css +107 -0
- data/lib/proto/public/css/layout.css +81 -0
- data/lib/proto/public/css/reset.css +123 -0
- data/lib/proto/public/css/text.css +109 -0
- data/lib/proto/public/favicon.ico +0 -0
- data/lib/proto/public/images/bg.png +0 -0
- data/lib/proto/spec/helper.rb +39 -0
- data/lib/proto/task/ramaze.rake +57 -0
- data/lib/proto/view/index.xhtml +36 -25
- data/lib/ramaze/app.rb +198 -0
- data/lib/ramaze/bin/create.rb +92 -0
- data/lib/ramaze/bin/runner.rb +127 -0
- data/lib/ramaze/cache/lru.rb +88 -0
- data/lib/ramaze/cache/memcache.rb +219 -0
- data/lib/ramaze/cache/moneta.rb +143 -0
- data/lib/ramaze/cache/redis.rb +163 -0
- data/lib/ramaze/cache/sequel.rb +373 -0
- data/lib/ramaze/cache.rb +42 -82
- data/lib/ramaze/controller/default.rb +25 -0
- data/lib/ramaze/controller.rb +184 -224
- data/lib/ramaze/current.rb +17 -68
- data/lib/ramaze/default_middleware.rb +24 -0
- data/lib/ramaze/files.rb +59 -0
- data/lib/ramaze/gestalt.rb +95 -63
- data/lib/ramaze/helper/auth.rb +107 -107
- data/lib/ramaze/helper/bench.rb +51 -0
- data/lib/ramaze/helper/blue_form.rb +683 -0
- data/lib/ramaze/helper/cache.rb +108 -130
- data/lib/ramaze/helper/csrf.rb +191 -0
- data/lib/ramaze/helper/email.rb +116 -0
- data/lib/ramaze/helper/erector.rb +113 -0
- data/lib/ramaze/helper/flash.rb +42 -39
- data/lib/ramaze/helper/formatting.rb +200 -35
- data/lib/ramaze/helper/gestalt.rb +49 -0
- data/lib/ramaze/helper/gravatar.rb +75 -0
- data/lib/ramaze/helper/identity.rb +93 -68
- data/lib/ramaze/helper/layout.rb +128 -0
- data/lib/ramaze/helper/link.rb +52 -119
- data/lib/ramaze/helper/localize.rb +143 -0
- data/lib/ramaze/helper/markaby.rb +26 -24
- data/lib/ramaze/helper/maruku.rb +15 -6
- data/lib/ramaze/helper/paginate.rb +315 -0
- data/lib/ramaze/helper/remarkably.rb +14 -0
- data/lib/ramaze/helper/request_accessor.rb +20 -0
- data/lib/ramaze/helper/send_file.rb +34 -0
- data/lib/ramaze/helper/simple_captcha.rb +61 -0
- data/lib/ramaze/helper/stack.rb +72 -62
- data/lib/ramaze/helper/tagz.rb +13 -12
- data/lib/ramaze/helper/thread.rb +25 -0
- data/lib/ramaze/helper/upload.rb +525 -0
- data/lib/ramaze/helper/user.rb +260 -39
- data/lib/ramaze/helper/xhtml.rb +122 -0
- data/lib/ramaze/helper.rb +8 -79
- data/lib/ramaze/log/hub.rb +41 -32
- data/lib/ramaze/log/informer.rb +128 -104
- data/lib/ramaze/log/logger.rb +25 -15
- data/lib/ramaze/log/logging.rb +46 -27
- data/lib/ramaze/log/rotatinginformer.rb +237 -0
- data/lib/ramaze/log/syslog.rb +57 -31
- data/lib/ramaze/log.rb +16 -15
- data/lib/ramaze/reloader/watch_inotify.rb +84 -0
- data/lib/ramaze/reloader/watch_stat.rb +58 -0
- data/lib/ramaze/reloader.rb +212 -0
- data/lib/ramaze/request.rb +126 -0
- data/lib/ramaze/response.rb +67 -0
- data/lib/ramaze/snippets/object/__dir__.rb +25 -0
- data/lib/ramaze/snippets/ramaze/deprecated.rb +23 -0
- data/lib/ramaze/snippets/string/camel_case.rb +17 -14
- data/lib/ramaze/snippets/string/color.rb +27 -24
- data/lib/ramaze/snippets/string/esc.rb +25 -25
- data/lib/ramaze/snippets/string/snake_case.rb +16 -13
- data/lib/ramaze/snippets/string/unindent.rb +24 -11
- data/lib/ramaze/snippets.rb +21 -6
- data/lib/ramaze/spec/bacon.rb +44 -0
- data/lib/ramaze/spec/helper/bacon.rb +4 -4
- data/lib/ramaze/spec/helper/pretty_output.rb +9 -1
- data/lib/ramaze/spec/helper/snippets.rb +11 -1
- data/lib/ramaze/spec/helper/template_examples.rb +22 -0
- data/lib/ramaze/version.rb +4 -13
- data/lib/ramaze/view/erector.rb +116 -0
- data/lib/ramaze/view/erubis.rb +26 -0
- data/lib/ramaze/view/ezamar.rb +27 -0
- data/lib/ramaze/view/gestalt.rb +20 -0
- data/lib/ramaze/view/haml.rb +27 -0
- data/lib/ramaze/view/liquid.rb +99 -0
- data/lib/ramaze/view/lokar.rb +18 -0
- data/lib/ramaze/view/mustache.rb +46 -0
- data/lib/ramaze/view/nagoro/render_partial.rb +32 -0
- data/lib/ramaze/view/nagoro.rb +44 -0
- data/lib/ramaze/view/remarkably.rb +22 -0
- data/lib/ramaze/view/sass.rb +22 -0
- data/lib/ramaze/view/slim.rb +43 -0
- data/lib/ramaze/view/slippers.rb +51 -0
- data/lib/ramaze/view/tagz.rb +67 -0
- data/lib/ramaze/view/tenjin.rb +32 -0
- data/lib/ramaze/view.rb +35 -0
- data/lib/ramaze.rb +60 -100
- data/lib/vendor/route_exceptions.rb +42 -0
- data/ramaze.gemspec +61 -0
- data/spec/examples/caching.rb +5 -8
- data/spec/examples/css.rb +3 -4
- data/spec/examples/element.rb +4 -4
- data/spec/examples/hello.rb +4 -5
- data/spec/examples/linking.rb +3 -4
- data/spec/examples/misc/sequel_scaffolding.rb +18 -0
- data/spec/examples/simple.rb +3 -8
- data/spec/examples/templates/template_erubis.rb +8 -18
- data/spec/examples/templates/template_ezamar.rb +9 -19
- data/spec/examples/templates/template_haml.rb +8 -20
- data/spec/examples/templates/template_liquid.rb +8 -24
- data/spec/examples/templates/template_markaby.rb +10 -19
- data/spec/examples/templates/template_mustache.rb +13 -0
- data/spec/examples/templates/template_nagoro.rb +13 -0
- data/spec/examples/templates/template_remarkably.rb +8 -18
- data/spec/examples/templates/template_tenjin.rb +8 -23
- data/spec/examples/todolist.rb +33 -0
- data/spec/helper.rb +14 -3
- data/spec/ramaze/action/render.rb +9 -17
- data/spec/ramaze/action/view/other_wrapper.erb +1 -0
- data/spec/ramaze/action/view/sub/sub_wrapper.xhtml +1 -0
- data/spec/ramaze/app/location.rb +43 -0
- data/spec/ramaze/app.rb +50 -0
- data/spec/ramaze/bin/app/config.ru +11 -0
- data/spec/ramaze/bin/create.rb +28 -0
- data/spec/ramaze/bin/runner.rb +30 -0
- data/spec/ramaze/cache/lru.rb +48 -0
- data/spec/ramaze/cache/memcache.rb +69 -0
- data/spec/ramaze/cache/moneta.rb +53 -0
- data/spec/ramaze/cache/redis.rb +58 -0
- data/spec/ramaze/cache/sequel.rb +60 -0
- data/spec/ramaze/controller/actionless_templates.rb +16 -12
- data/spec/ramaze/controller/lonely_mapping.rb +18 -0
- data/spec/ramaze/controller/mapping.rb +63 -0
- data/spec/ramaze/controller/provide_inheritance.rb +40 -0
- data/spec/ramaze/controller/resolve.rb +9 -11
- data/spec/ramaze/controller/subclass.rb +22 -7
- data/spec/ramaze/controller/template_resolving.rb +23 -61
- data/spec/ramaze/controller/view/bar.xhtml +1 -0
- data/spec/ramaze/controller/view/base/another.xhtml +1 -0
- data/spec/ramaze/dispatcher/directory.rb +61 -33
- data/spec/ramaze/dispatcher/file.rb +65 -47
- data/spec/ramaze/error.rb +54 -64
- data/spec/ramaze/files/public_1/plain.txt +1 -0
- data/spec/ramaze/files/public_2/rich.txt +1 -0
- data/spec/ramaze/files.rb +30 -0
- data/spec/ramaze/gestalt.rb +28 -21
- data/spec/ramaze/helper/auth.rb +47 -29
- data/spec/ramaze/helper/bench.rb +21 -0
- data/spec/ramaze/helper/blue_form.rb +807 -0
- data/spec/ramaze/helper/cache.rb +65 -84
- data/spec/ramaze/helper/csrf.rb +64 -0
- data/spec/ramaze/helper/email.rb +69 -0
- data/spec/ramaze/helper/flash.rb +22 -101
- data/spec/ramaze/helper/formatting.rb +100 -6
- data/spec/ramaze/helper/gestalt.rb +18 -0
- data/spec/ramaze/helper/gravatar.rb +43 -0
- data/spec/ramaze/helper/layout/alternative.xhtml +5 -0
- data/spec/ramaze/helper/layout/default.xhtml +5 -0
- data/spec/ramaze/helper/layout.rb +109 -0
- data/spec/ramaze/helper/link.rb +48 -102
- data/spec/ramaze/helper/localize.rb +65 -0
- data/spec/ramaze/helper/maruku.rb +22 -0
- data/spec/ramaze/helper/paginate.rb +304 -0
- data/spec/ramaze/helper/request_accessor.rb +22 -0
- data/spec/ramaze/helper/simple_captcha.rb +45 -0
- data/spec/ramaze/helper/stack.rb +54 -41
- data/spec/ramaze/helper/upload.rb +150 -0
- data/spec/ramaze/helper/uploads/text_1.txt +1 -0
- data/spec/ramaze/helper/uploads/text_2.txt +1 -0
- data/spec/ramaze/helper/user.rb +63 -20
- data/spec/ramaze/helper/xhtml.rb +54 -0
- data/spec/ramaze/log/informer.rb +30 -28
- data/spec/ramaze/log/logging.rb +66 -0
- data/spec/ramaze/log/syslog.rb +89 -4
- data/spec/ramaze/params.rb +12 -16
- data/spec/ramaze/request.rb +51 -160
- data/spec/ramaze/rewrite/file.css +1 -0
- data/spec/ramaze/session/lru.rb +58 -0
- data/spec/ramaze/session/memcache.rb +66 -0
- data/spec/ramaze/session/redis.rb +63 -0
- data/spec/ramaze/session/sequel.rb +62 -0
- data/spec/ramaze/view/erector/external_view.erector +5 -0
- data/spec/ramaze/view/erector/index.erector +5 -0
- data/spec/ramaze/view/erector/layout.erector +13 -0
- data/spec/ramaze/view/erector/tables.erector +23 -0
- data/spec/ramaze/view/erector/view.erector +6 -0
- data/spec/ramaze/view/erector.rb +68 -0
- data/spec/ramaze/view/erubis/external.rhtml +8 -0
- data/spec/ramaze/view/erubis/sum.rhtml +1 -0
- data/spec/ramaze/view/erubis.rb +73 -0
- data/spec/ramaze/view/ezamar/external.zmr +8 -0
- data/spec/ramaze/view/ezamar/sum.zmr +1 -0
- data/spec/ramaze/view/ezamar.rb +73 -0
- data/spec/ramaze/view/gestalt/external.ges +8 -0
- data/spec/ramaze/view/gestalt.rb +94 -0
- data/spec/ramaze/view/haml/external.haml +5 -0
- data/spec/ramaze/view/haml/sum.haml +2 -0
- data/spec/ramaze/view/haml.rb +114 -0
- data/spec/ramaze/view/liquid/external.liquid +8 -0
- data/spec/ramaze/view/liquid/sum.liquid +1 -0
- data/spec/ramaze/view/liquid.rb +73 -0
- data/spec/ramaze/view/lokar/external.lok +8 -0
- data/spec/ramaze/view/lokar/sum.lok +1 -0
- data/spec/ramaze/view/lokar.rb +78 -0
- data/spec/ramaze/view/mustache/external.mt +8 -0
- data/spec/ramaze/view/mustache/sum.mt +1 -0
- data/spec/ramaze/view/mustache.rb +77 -0
- data/spec/ramaze/view/nagoro/external.nag +8 -0
- data/spec/ramaze/view/nagoro/sum.nag +1 -0
- data/spec/ramaze/view/nagoro.rb +78 -0
- data/spec/ramaze/view/remarkably.rb +49 -0
- data/spec/ramaze/view/sass.rb +73 -0
- data/spec/ramaze/view/slim/external.slim +5 -0
- data/spec/ramaze/view/slim/external_vars.slim +5 -0
- data/spec/ramaze/view/slim.rb +49 -0
- data/spec/ramaze/view/slippers/external.st +8 -0
- data/spec/ramaze/view/slippers/sum.st +1 -0
- data/spec/ramaze/view/slippers.rb +49 -0
- data/spec/ramaze/{template → view}/tagz.rb +20 -31
- data/spec/ramaze/view/tenjin/external.rbhtml +8 -0
- data/spec/ramaze/view/tenjin/sum.rbhtml +1 -0
- data/spec/ramaze/view/tenjin.rb +57 -0
- data/spec/ramaze/view.rb +36 -0
- data/spec/snippets/object/__dir__.rb +17 -0
- data/spec/snippets/ramaze/lru_hash.rb +88 -0
- data/spec/snippets/string/camel_case.rb +4 -1
- data/spec/snippets/string/color.rb +4 -1
- data/spec/snippets/string/snake_case.rb +4 -1
- data/spec/snippets/string/unindent.rb +10 -1
- data/tasks/authors.rake +17 -0
- data/tasks/bacon.rake +81 -0
- data/tasks/changelog.rake +20 -0
- data/tasks/gems.rake +15 -0
- data/tasks/release.rake +38 -0
- data/tasks/todo.rake +31 -0
- data/tasks/yard.rake +13 -0
- metadata +813 -714
- data/doc/AUTHORS +0 -25
- data/doc/CHANGELOG +0 -5757
- data/doc/COPYING +0 -56
- data/doc/FAQ +0 -92
- data/doc/GPL +0 -339
- data/doc/INSTALL +0 -34
- data/doc/LEGAL +0 -26
- data/doc/ProjectInfo +0 -53
- data/doc/README +0 -435
- data/doc/TODO +0 -29
- data/doc/meta/announcement.txt +0 -126
- data/doc/meta/configuration.txt +0 -162
- data/doc/meta/internals.txt +0 -278
- data/doc/meta/users.kml +0 -64
- data/doc/migrate/1110_to_1111.txt +0 -131
- data/doc/readme_chunks/appendix.txt +0 -10
- data/doc/readme_chunks/examples.txt +0 -38
- data/doc/readme_chunks/features.txt +0 -148
- data/doc/readme_chunks/getting_help.txt +0 -5
- data/doc/readme_chunks/getting_started.txt +0 -18
- data/doc/readme_chunks/installing.txt +0 -46
- data/doc/readme_chunks/introduction.txt +0 -18
- data/doc/readme_chunks/thanks.txt +0 -59
- data/doc/tutorial/todolist.html +0 -816
- data/doc/tutorial/todolist.mkd +0 -736
- data/examples/auth/auth.rb +0 -54
- data/examples/auth/template/layout.haml +0 -20
- data/examples/auth/template/login.haml +0 -16
- data/examples/blog/README +0 -3
- data/examples/blog/controller/main.rb +0 -29
- data/examples/blog/model/entry.rb +0 -30
- data/examples/blog/public/styles/blog.css +0 -132
- data/examples/blog/spec/blog.rb +0 -87
- data/examples/blog/start.rb +0 -7
- data/examples/blog/view/edit.xhtml +0 -17
- data/examples/blog/view/index.xhtml +0 -17
- data/examples/blog/view/layout.xhtml +0 -11
- data/examples/blog/view/new.xhtml +0 -16
- data/examples/hello.rb +0 -15
- data/examples/linking.rb +0 -29
- data/examples/memleak_detector.rb +0 -32
- data/examples/nitro_form.rb +0 -23
- data/examples/rammit/spec/rammit.rb +0 -30
- data/examples/rammit/src/controller/main.rb +0 -3
- data/examples/rammit/src/controller/page.rb +0 -16
- data/examples/rammit/src/model.rb +0 -33
- data/examples/rammit/start.rb +0 -8
- data/examples/rammit/template/index.xhtml +0 -14
- data/examples/rammit/template/page/view.xhtml +0 -4
- data/examples/rapaste/Rakefile +0 -35
- data/examples/rapaste/controller/paste.rb +0 -94
- data/examples/rapaste/model/paste.rb +0 -55
- data/examples/rapaste/public/css/active4d.css +0 -114
- data/examples/rapaste/public/css/all_hallows_eve.css +0 -72
- data/examples/rapaste/public/css/amy.css +0 -147
- data/examples/rapaste/public/css/blackboard.css +0 -88
- data/examples/rapaste/public/css/brilliance_black.css +0 -605
- data/examples/rapaste/public/css/brilliance_dull.css +0 -599
- data/examples/rapaste/public/css/cobalt.css +0 -149
- data/examples/rapaste/public/css/dawn.css +0 -121
- data/examples/rapaste/public/css/display.css +0 -197
- data/examples/rapaste/public/css/eiffel.css +0 -121
- data/examples/rapaste/public/css/espresso_libre.css +0 -109
- data/examples/rapaste/public/css/idle.css +0 -62
- data/examples/rapaste/public/css/iplastic.css +0 -80
- data/examples/rapaste/public/css/lazy.css +0 -73
- data/examples/rapaste/public/css/mac_classic.css +0 -123
- data/examples/rapaste/public/css/magicwb_amiga.css +0 -104
- data/examples/rapaste/public/css/pastels_on_dark.css +0 -188
- data/examples/rapaste/public/css/slush_poppies.css +0 -85
- data/examples/rapaste/public/css/spacecadet.css +0 -51
- data/examples/rapaste/public/css/sunburst.css +0 -180
- data/examples/rapaste/public/css/twilight.css +0 -137
- data/examples/rapaste/public/css/zenburnesque.css +0 -91
- data/examples/rapaste/public/js/jquery.js +0 -11
- data/examples/rapaste/spec/rapaste.rb +0 -49
- data/examples/rapaste/start.rb +0 -24
- data/examples/rapaste/view/copy.xhtml +0 -10
- data/examples/rapaste/view/index.xhtml +0 -9
- data/examples/rapaste/view/layout.xhtml +0 -25
- data/examples/rapaste/view/list.xhtml +0 -29
- data/examples/rapaste/view/search.xhtml +0 -41
- data/examples/rapaste/view/view.xhtml +0 -37
- data/examples/simple_auth.rb +0 -23
- data/examples/sourceview/public/coderay.css +0 -104
- data/examples/sourceview/public/images/file.gif +0 -0
- data/examples/sourceview/public/images/folder.gif +0 -0
- data/examples/sourceview/public/images/tv-collapsable-last.gif +0 -0
- data/examples/sourceview/public/images/tv-collapsable.gif +0 -0
- data/examples/sourceview/public/images/tv-expandable-last.gif +0 -0
- data/examples/sourceview/public/images/tv-expandable.gif +0 -0
- data/examples/sourceview/public/images/tv-item-last.gif +0 -0
- data/examples/sourceview/public/images/tv-item.gif +0 -0
- data/examples/sourceview/public/jquery.js +0 -11
- data/examples/sourceview/public/jquery.treeview.css +0 -48
- data/examples/sourceview/public/jquery.treeview.js +0 -223
- data/examples/sourceview/public/sourceview.js +0 -52
- data/examples/sourceview/sourceview.rb +0 -77
- data/examples/sourceview/template/index.haml +0 -59
- data/examples/templates/template/external.amrita +0 -19
- data/examples/templates/template/external.xsl +0 -57
- data/examples/templates/template_amrita2.rb +0 -74
- data/examples/templates/template_xslt.rb +0 -49
- data/examples/todolist/README +0 -1
- data/examples/todolist/public/js/jquery.js +0 -1923
- data/examples/todolist/public/ramaze.png +0 -0
- data/examples/todolist/spec/todolist.rb +0 -132
- data/examples/todolist/src/controller/main.rb +0 -70
- data/examples/todolist/src/element/page.rb +0 -31
- data/examples/todolist/src/model.rb +0 -14
- data/examples/todolist/start.rb +0 -11
- data/examples/todolist/template/index.xhtml +0 -17
- data/examples/todolist/template/new.xhtml +0 -7
- data/examples/whywiki/spec/whywiki.rb +0 -58
- data/examples/whywiki/template/show.xhtml +0 -18
- data/examples/wikore/start.rb +0 -9
- data/examples/wiktacular/mkd/main/2007-07-20_19-23-10.mkd +0 -2
- data/examples/wiktacular/mkd/main/2007-07-20_19-45-07.mkd +0 -2
- data/examples/wiktacular/mkd/main/current.mkd +0 -2
- data/examples/wiktacular/mkd/testing/2007-07-20_16-43-46.mkd +0 -2
- data/lib/proto/public/css/ramaze_error.css +0 -90
- data/lib/proto/public/dispatch.fcgi +0 -11
- data/lib/proto/public/ramaze.png +0 -0
- data/lib/proto/spec/main.rb +0 -24
- data/lib/proto/start.rb +0 -8
- data/lib/proto/start.ru +0 -8
- data/lib/proto/view/error.xhtml +0 -64
- data/lib/proto/view/page.xhtml +0 -15
- data/lib/ramaze/action/render.rb +0 -163
- data/lib/ramaze/action.rb +0 -136
- data/lib/ramaze/adapter/base.rb +0 -59
- data/lib/ramaze/adapter/cgi.rb +0 -24
- data/lib/ramaze/adapter/ebb.rb +0 -32
- data/lib/ramaze/adapter/evented_mongrel.rb +0 -7
- data/lib/ramaze/adapter/fcgi.rb +0 -24
- data/lib/ramaze/adapter/lsws.rb +0 -23
- data/lib/ramaze/adapter/mongrel.rb +0 -25
- data/lib/ramaze/adapter/scgi.rb +0 -22
- data/lib/ramaze/adapter/swiftiplied_mongrel.rb +0 -7
- data/lib/ramaze/adapter/thin.rb +0 -22
- data/lib/ramaze/adapter/webrick.rb +0 -52
- data/lib/ramaze/adapter.rb +0 -101
- data/lib/ramaze/cache/memcached.rb +0 -70
- data/lib/ramaze/cache/memory.rb +0 -6
- data/lib/ramaze/cache/yaml_store.rb +0 -68
- data/lib/ramaze/contrib/auto_params/get_args.rb +0 -57
- data/lib/ramaze/contrib/auto_params.rb +0 -135
- data/lib/ramaze/contrib/email.rb +0 -84
- data/lib/ramaze/contrib/facebook/facebook.rb +0 -171
- data/lib/ramaze/contrib/facebook.rb +0 -23
- data/lib/ramaze/contrib/file_cache.rb +0 -65
- data/lib/ramaze/contrib/gettext/mo.rb +0 -155
- data/lib/ramaze/contrib/gettext/parser.rb +0 -46
- data/lib/ramaze/contrib/gettext/po.rb +0 -109
- data/lib/ramaze/contrib/gettext.rb +0 -113
- data/lib/ramaze/contrib/gzip_filter.rb +0 -56
- data/lib/ramaze/contrib/profiling.rb +0 -36
- data/lib/ramaze/contrib/route.rb +0 -22
- data/lib/ramaze/contrib/sequel/fill.rb +0 -12
- data/lib/ramaze/contrib/sequel_cache.rb +0 -92
- data/lib/ramaze/contrib.rb +0 -82
- data/lib/ramaze/controller/error.rb +0 -46
- data/lib/ramaze/controller/main.rb +0 -2
- data/lib/ramaze/controller/resolve.rb +0 -234
- data/lib/ramaze/current/request.rb +0 -181
- data/lib/ramaze/current/response.rb +0 -19
- data/lib/ramaze/current/session/flash.rb +0 -67
- data/lib/ramaze/current/session/hash.rb +0 -65
- data/lib/ramaze/current/session.rb +0 -153
- data/lib/ramaze/dispatcher/action.rb +0 -40
- data/lib/ramaze/dispatcher/directory.rb +0 -116
- data/lib/ramaze/dispatcher/error.rb +0 -108
- data/lib/ramaze/dispatcher/file.rb +0 -87
- data/lib/ramaze/dispatcher.rb +0 -124
- data/lib/ramaze/error.rb +0 -24
- data/lib/ramaze/global/dsl.rb +0 -39
- data/lib/ramaze/global/globalstruct.rb +0 -147
- data/lib/ramaze/global.rb +0 -116
- data/lib/ramaze/helper/aspect.rb +0 -100
- data/lib/ramaze/helper/cgi.rb +0 -43
- data/lib/ramaze/helper/inform.rb +0 -40
- data/lib/ramaze/helper/nitroform.rb +0 -14
- data/lib/ramaze/helper/pager.rb +0 -366
- data/lib/ramaze/helper/partial.rb +0 -96
- data/lib/ramaze/helper/redirect.rb +0 -73
- data/lib/ramaze/helper/sendfile.rb +0 -18
- data/lib/ramaze/helper/sequel.rb +0 -52
- data/lib/ramaze/inform.rb +0 -4
- data/lib/ramaze/log/analogger.rb +0 -37
- data/lib/ramaze/log/growl.rb +0 -35
- data/lib/ramaze/log/knotify.rb +0 -25
- data/lib/ramaze/log/xosd.rb +0 -88
- data/lib/ramaze/route.rb +0 -84
- data/lib/ramaze/snippets/array/put_within.rb +0 -37
- data/lib/ramaze/snippets/binding/locals.rb +0 -13
- data/lib/ramaze/snippets/dictionary.rb +0 -504
- data/lib/ramaze/snippets/divide.rb +0 -20
- data/lib/ramaze/snippets/kernel/__dir__.rb +0 -23
- data/lib/ramaze/snippets/kernel/acquire.rb +0 -39
- data/lib/ramaze/snippets/kernel/aquire.rb +0 -1
- data/lib/ramaze/snippets/kernel/constant.rb +0 -26
- data/lib/ramaze/snippets/kernel/pretty_inspect.rb +0 -15
- data/lib/ramaze/snippets/metaid.rb +0 -17
- data/lib/ramaze/snippets/numeric/filesize_format.rb +0 -19
- data/lib/ramaze/snippets/object/pretty.rb +0 -6
- data/lib/ramaze/snippets/object/scope.rb +0 -11
- data/lib/ramaze/snippets/object/thread_accessor.rb +0 -5
- data/lib/ramaze/snippets/object/traits.rb +0 -76
- data/lib/ramaze/snippets/ordered_set.rb +0 -36
- data/lib/ramaze/snippets/proc/locals.rb +0 -11
- data/lib/ramaze/snippets/ramaze/caller_info.rb +0 -30
- data/lib/ramaze/snippets/ramaze/caller_lines.rb +0 -51
- data/lib/ramaze/snippets/ramaze/thread_accessor.rb +0 -44
- data/lib/ramaze/snippets/string/each.rb +0 -8
- data/lib/ramaze/snippets/string/ord.rb +0 -15
- data/lib/ramaze/snippets/string/start_with.rb +0 -7
- data/lib/ramaze/snippets/struct/fill.rb +0 -23
- data/lib/ramaze/snippets/struct/values_at.rb +0 -23
- data/lib/ramaze/snippets/symbol/to_proc.rb +0 -24
- data/lib/ramaze/snippets/thread/into.rb +0 -18
- data/lib/ramaze/sourcereload.rb +0 -169
- data/lib/ramaze/spec/helper/browser.rb +0 -88
- data/lib/ramaze/spec/helper/mock_http.rb +0 -69
- data/lib/ramaze/spec/helper/requester.rb +0 -49
- data/lib/ramaze/spec/helper/simple_http.rb +0 -434
- data/lib/ramaze/spec/helper.rb +0 -122
- data/lib/ramaze/spec.rb +0 -1
- data/lib/ramaze/store/default.rb +0 -109
- data/lib/ramaze/template/amrita2.rb +0 -44
- data/lib/ramaze/template/builder.rb +0 -28
- data/lib/ramaze/template/erubis.rb +0 -35
- data/lib/ramaze/template/ezamar/element.rb +0 -169
- data/lib/ramaze/template/ezamar/engine.rb +0 -76
- data/lib/ramaze/template/ezamar/morpher.rb +0 -135
- data/lib/ramaze/template/ezamar/render_partial.rb +0 -31
- data/lib/ramaze/template/ezamar.rb +0 -42
- data/lib/ramaze/template/haml.rb +0 -37
- data/lib/ramaze/template/liquid.rb +0 -36
- data/lib/ramaze/template/markaby.rb +0 -52
- data/lib/ramaze/template/nagoro.rb +0 -51
- data/lib/ramaze/template/none.rb +0 -14
- data/lib/ramaze/template/redcloth.rb +0 -24
- data/lib/ramaze/template/remarkably.rb +0 -38
- data/lib/ramaze/template/sass.rb +0 -37
- data/lib/ramaze/template/tagz.rb +0 -79
- data/lib/ramaze/template/tenjin.rb +0 -34
- data/lib/ramaze/template/xslt.rb +0 -96
- data/lib/ramaze/template.rb +0 -81
- data/lib/ramaze/tool/create.rb +0 -74
- data/lib/ramaze/tool/localize.rb +0 -162
- data/lib/ramaze/tool/mime.rb +0 -25
- data/lib/ramaze/tool/mime_types.yaml +0 -615
- data/lib/ramaze/tool/record.rb +0 -6
- data/lib/ramaze/tool.rb +0 -9
- data/lib/ramaze/trinity.rb +0 -13
- data/lib/vendor/bacon.rb +0 -323
- data/rake_tasks/conf.rake +0 -73
- data/rake_tasks/coverage.rake +0 -46
- data/rake_tasks/darcs.rake +0 -5
- data/rake_tasks/gem.rake +0 -43
- data/rake_tasks/maintenance.rake +0 -384
- data/rake_tasks/spec.rake +0 -62
- data/spec/contrib/auto_params.rb +0 -121
- data/spec/contrib/profiling.rb +0 -26
- data/spec/contrib/route.rb +0 -36
- data/spec/contrib/sequel/fill.rb +0 -47
- data/spec/examples/simple_auth.rb +0 -32
- data/spec/examples/templates/template_amrita2.rb +0 -16
- data/spec/examples/templates/template_redcloth.rb +0 -28
- data/spec/ramaze/action/basics.rb +0 -36
- data/spec/ramaze/action/cache.rb +0 -43
- data/spec/ramaze/action/layout.rb +0 -190
- data/spec/ramaze/adapter/mongrel.rb +0 -12
- data/spec/ramaze/adapter/record.rb +0 -31
- data/spec/ramaze/adapter/webrick.rb +0 -12
- data/spec/ramaze/adapter.rb +0 -22
- data/spec/ramaze/cache.rb +0 -73
- data/spec/ramaze/controller.rb +0 -177
- data/spec/ramaze/current/request.rb +0 -30
- data/spec/ramaze/current/session.rb +0 -97
- data/spec/ramaze/dispatcher.rb +0 -31
- data/spec/ramaze/element.rb +0 -107
- data/spec/ramaze/helper/aspect.rb +0 -92
- data/spec/ramaze/helper/cgi.rb +0 -43
- data/spec/ramaze/helper/file.rb +0 -18
- data/spec/ramaze/helper/pager.rb +0 -99
- data/spec/ramaze/helper/partial.rb +0 -76
- data/spec/ramaze/helper/redirect.rb +0 -112
- data/spec/ramaze/localize.rb +0 -67
- data/spec/ramaze/morpher.rb +0 -111
- data/spec/ramaze/public/error404.xhtml +0 -1
- data/spec/ramaze/request/mongrel.rb +0 -9
- data/spec/ramaze/request/thin.rb +0 -9
- data/spec/ramaze/request/webrick.rb +0 -5
- data/spec/ramaze/route.rb +0 -130
- data/spec/ramaze/session.rb +0 -94
- data/spec/ramaze/store/default.rb +0 -71
- data/spec/ramaze/template/amrita2/external.amrita +0 -6
- data/spec/ramaze/template/amrita2/sum.amrita +0 -1
- data/spec/ramaze/template/amrita2.rb +0 -50
- data/spec/ramaze/template/builder/external.rxml +0 -3
- data/spec/ramaze/template/builder.rb +0 -55
- data/spec/ramaze/template/erubis/sum.rhtml +0 -1
- data/spec/ramaze/template/erubis.rb +0 -41
- data/spec/ramaze/template/ezamar/another/long/action.zmr +0 -1
- data/spec/ramaze/template/ezamar/combined.zmr +0 -1
- data/spec/ramaze/template/ezamar/file_only.zmr +0 -1
- data/spec/ramaze/template/ezamar/index.zmr +0 -1
- data/spec/ramaze/template/ezamar/nested.zmr +0 -1
- data/spec/ramaze/template/ezamar/other__index.xhtml +0 -1
- data/spec/ramaze/template/ezamar/some__long__action.zmr +0 -1
- data/spec/ramaze/template/ezamar/sum.zmr +0 -1
- data/spec/ramaze/template/ezamar.rb +0 -63
- data/spec/ramaze/template/haml/index.haml +0 -5
- data/spec/ramaze/template/haml/locals.haml +0 -2
- data/spec/ramaze/template/haml/with_vars.haml +0 -4
- data/spec/ramaze/template/haml.rb +0 -66
- data/spec/ramaze/template/liquid/index.liquid +0 -1
- data/spec/ramaze/template/liquid/products.liquid +0 -45
- data/spec/ramaze/template/liquid.rb +0 -99
- data/spec/ramaze/template/markaby/external.mab +0 -8
- data/spec/ramaze/template/markaby/sum.mab +0 -1
- data/spec/ramaze/template/markaby.rb +0 -61
- data/spec/ramaze/template/nagoro/another/long/action.nag +0 -1
- data/spec/ramaze/template/nagoro/combined.nag +0 -1
- data/spec/ramaze/template/nagoro/file_only.nag +0 -1
- data/spec/ramaze/template/nagoro/index.nag +0 -1
- data/spec/ramaze/template/nagoro/nested.nag +0 -1
- data/spec/ramaze/template/nagoro/some__long__action.nag +0 -1
- data/spec/ramaze/template/nagoro/sum.nag +0 -1
- data/spec/ramaze/template/nagoro.rb +0 -64
- data/spec/ramaze/template/redcloth/external.redcloth +0 -1
- data/spec/ramaze/template/redcloth.rb +0 -38
- data/spec/ramaze/template/remarkably.rb +0 -58
- data/spec/ramaze/template/sass.rb +0 -69
- data/spec/ramaze/template/tenjin/external.tenjin +0 -1
- data/spec/ramaze/template/tenjin.rb +0 -49
- data/spec/ramaze/template/xslt/concat_words.xsl +0 -16
- data/spec/ramaze/template/xslt/index.xsl +0 -14
- data/spec/ramaze/template/xslt/products.xsl +0 -32
- data/spec/ramaze/template/xslt/ruby_version.xsl +0 -14
- data/spec/ramaze/template/xslt.rb +0 -90
- data/spec/ramaze/template.rb +0 -128
- data/spec/snippets/array/put_within.rb +0 -33
- data/spec/snippets/divide.rb +0 -19
- data/spec/snippets/kernel/__dir__.rb +0 -8
- data/spec/snippets/kernel/acquire.rb +0 -71
- data/spec/snippets/kernel/constant.rb +0 -23
- data/spec/snippets/numeric/filesize_format.rb +0 -12
- data/spec/snippets/ordered_set.rb +0 -63
- data/spec/snippets/ramaze/caller_info.rb +0 -39
- data/spec/snippets/ramaze/caller_lines.rb +0 -30
- data/spec/snippets/struct/fill.rb +0 -26
- data/spec/snippets/struct/values_at.rb +0 -44
- data/spec/snippets/symbol/to_proc.rb +0 -13
- data/spec/snippets/thread/into.rb +0 -20
- /data/examples/{todolist → app/todolist}/public/favicon.ico +0 -0
- /data/examples/{upload → app/upload}/view/index.xhtml +0 -0
- /data/examples/{wikore/template → app/wikore/view}/index.xhtml +0 -0
- /data/examples/{wiktacular → app/wiktacular}/README +0 -0
- /data/examples/{wiktacular → app/wiktacular}/mkd/link/2007-07-20_19-45-51.mkd +0 -0
- /data/examples/{wiktacular → app/wiktacular}/mkd/link/current.mkd +0 -0
- /data/examples/{wiktacular → app/wiktacular}/mkd/main/2007-07-20_16-31-33.mkd +0 -0
- /data/examples/{wiktacular → app/wiktacular}/public/favicon.ico +0 -0
- /data/examples/{wiktacular → app/wiktacular}/public/screen.css +0 -0
- /data/examples/{wiktacular/template → app/wiktacular/view}/index.xhtml +0 -0
- /data/examples/{identity.rb → helpers/identity.rb} +0 -0
- /data/examples/{facebook.rb → misc/facebook.rb} +0 -0
- /data/examples/templates/{template → view}/external.liquid +0 -0
- /data/spec/ramaze/action/{template → view}/bar.xhtml +0 -0
- /data/spec/ramaze/action/{template → view}/instancevars/layout.xhtml +0 -0
- /data/spec/ramaze/action/{template → view}/other_wrapper.xhtml +0 -0
- /data/spec/ramaze/action/{template → view}/single_wrapper.xhtml +0 -0
- /data/spec/ramaze/action/{template/sub/sub_wrapper.xhtml → view/sub/sub_wrapper.erb} +0 -0
- /data/spec/ramaze/controller/{template → view}/greet.xhtml +0 -0
- /data/spec/ramaze/controller/{template → view}/list.xhtml +0 -0
- /data/spec/ramaze/controller/{template → view}/other/greet/other.xhtml +0 -0
- /data/spec/ramaze/controller/{template → view}/other_wrapper.xhtml +0 -0
- /data/spec/ramaze/helper/{template → view}/locals.xhtml +0 -0
- /data/spec/ramaze/helper/{template → view}/loop.xhtml +0 -0
- /data/spec/ramaze/helper/{template → view}/num.xhtml +0 -0
- /data/spec/ramaze/helper/{template → view}/partial.xhtml +0 -0
- /data/spec/ramaze/helper/{template → view}/recursive.xhtml +0 -0
- /data/spec/ramaze/helper/{template → view}/recursive_local_ivars.xhtml +0 -0
- /data/spec/ramaze/helper/{template → view}/recursive_locals.xhtml +0 -0
- /data/spec/ramaze/helper/{template → view}/test_template.xhtml +0 -0
- /data/spec/ramaze/{template → view}/remarkably/external.rem +0 -0
- /data/spec/ramaze/{template → view}/remarkably/sum.rem +0 -0
- /data/spec/ramaze/{template → view}/sass/file.css.sass +0 -0
- /data/spec/ramaze/{template → view}/tagz/external.tagz +0 -0
- /data/spec/ramaze/{template → view}/tagz/sum.tagz +0 -0
@@ -0,0 +1,25 @@
|
|
1
|
+
# Copyright (c) 2008 Michael Fellinger m.fellinger@gmail.com
|
2
|
+
# All files in this distribution are subject to the terms of the MIT license.
|
3
|
+
|
4
|
+
module Ramaze
|
5
|
+
module CoreExtensions
|
6
|
+
# Extensions for Object
|
7
|
+
module Object
|
8
|
+
unless defined?(__DIR__)
|
9
|
+
|
10
|
+
# This is similar to +__FILE__+ and +__LINE__+, and returns a String
|
11
|
+
# representing the directory of the current file is.
|
12
|
+
# Unlike +__FILE__+ the path returned is absolute.
|
13
|
+
#
|
14
|
+
# This method is convenience for the
|
15
|
+
# File.expand_path(File.dirname(__FILE__))
|
16
|
+
# idiom.
|
17
|
+
def __DIR__(*args)
|
18
|
+
filename = caller[0][/^(.*):/, 1]
|
19
|
+
dir = File.expand_path(File.dirname(filename))
|
20
|
+
::File.expand_path(::File.join(dir, *args.map{|a| a.to_s}))
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end # Object
|
24
|
+
end # CoreExtensions
|
25
|
+
end # Ramaze
|
@@ -0,0 +1,23 @@
|
|
1
|
+
module Ramaze
|
2
|
+
DEPRECATED_CONSTANTS = {
|
3
|
+
:BASEDIR => :ROOT,
|
4
|
+
:Template => :View,
|
5
|
+
:Optional => :Optioned,
|
6
|
+
}
|
7
|
+
|
8
|
+
def self.deprecated(from, to = nil)
|
9
|
+
message = "%s is deprecated"
|
10
|
+
message << ", use %s instead" unless to.nil?
|
11
|
+
message << " - from: %p"
|
12
|
+
Log.warn(message % [from, to, caller[1]])
|
13
|
+
end
|
14
|
+
|
15
|
+
def self.const_missing(name)
|
16
|
+
if to = DEPRECATED_CONSTANTS[name]
|
17
|
+
Log.warn "Ramaze::#{name} is deprecated, use #{to} instead"
|
18
|
+
constant(to)
|
19
|
+
else
|
20
|
+
super
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end # Ramaze
|
@@ -1,16 +1,19 @@
|
|
1
1
|
# Copyright (c) 2008 Michael Fellinger m.fellinger@gmail.com
|
2
|
-
# All files in this distribution are subject to the terms of the
|
3
|
-
|
4
|
-
# Extensions for String
|
5
|
-
|
6
|
-
class String
|
7
|
-
|
8
|
-
# simple transformation to CamelCase from snake_case
|
9
|
-
#
|
10
|
-
# 'foo_bar'.camel_case # => 'FooBar'
|
11
|
-
|
12
|
-
def camel_case
|
13
|
-
split('_').map{|e| e.capitalize}.join
|
14
|
-
end
|
15
|
-
end
|
2
|
+
# All files in this distribution are subject to the terms of the MIT license.
|
16
3
|
|
4
|
+
module Ramaze
|
5
|
+
module CoreExtensions
|
6
|
+
# Extensions for String
|
7
|
+
module String
|
8
|
+
##
|
9
|
+
# Simple transformation to CamelCase from snake_case
|
10
|
+
#
|
11
|
+
# @example
|
12
|
+
# 'foo_bar'.camel_case # => 'FooBar'
|
13
|
+
#
|
14
|
+
def camel_case
|
15
|
+
split('_').map{|e| e.capitalize}.join
|
16
|
+
end
|
17
|
+
end # String
|
18
|
+
end # CoreExtensions
|
19
|
+
end # Ramaze
|
@@ -1,27 +1,30 @@
|
|
1
1
|
# Copyright (c) 2008 Michael Fellinger m.fellinger@gmail.com
|
2
|
-
# All files in this distribution are subject to the terms of the
|
2
|
+
# All files in this distribution are subject to the terms of the MIT license.
|
3
3
|
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
{ :reset => 0,
|
8
|
-
:bold => 1,
|
9
|
-
:dark => 2,
|
10
|
-
:underline => 4,
|
11
|
-
:blink => 5,
|
12
|
-
:negative => 7,
|
13
|
-
:black => 30,
|
14
|
-
:red => 31,
|
15
|
-
:green => 32,
|
16
|
-
:yellow => 33,
|
17
|
-
:blue => 34,
|
18
|
-
:magenta => 35,
|
19
|
-
:cyan => 36,
|
20
|
-
:white => 37,
|
21
|
-
}.each do |key, value|
|
22
|
-
define_method key do
|
23
|
-
"\e[#{value}m" + self + "\e[0m"
|
24
|
-
end
|
25
|
-
end
|
26
|
-
end
|
4
|
+
module Ramaze
|
5
|
+
module CoreExtensions
|
6
|
+
# Extensions for String
|
27
7
|
|
8
|
+
module String
|
9
|
+
{ :reset => 0,
|
10
|
+
:bold => 1,
|
11
|
+
:dark => 2,
|
12
|
+
:underline => 4,
|
13
|
+
:blink => 5,
|
14
|
+
:negative => 7,
|
15
|
+
:black => 30,
|
16
|
+
:red => 31,
|
17
|
+
:green => 32,
|
18
|
+
:yellow => 33,
|
19
|
+
:blue => 34,
|
20
|
+
:magenta => 35,
|
21
|
+
:cyan => 36,
|
22
|
+
:white => 37,
|
23
|
+
}.each do |key, value|
|
24
|
+
define_method key do
|
25
|
+
"\e[#{value}m" + self + "\e[0m"
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end # String
|
29
|
+
end # CoreExtensions
|
30
|
+
end # Ramaze
|
@@ -1,29 +1,29 @@
|
|
1
1
|
require 'cgi'
|
2
2
|
require 'uri'
|
3
3
|
|
4
|
-
|
4
|
+
module Ramaze
|
5
|
+
module CoreExtensions
|
6
|
+
# Extensions for String
|
7
|
+
module String
|
8
|
+
# String#escape is an extensible escaping mechanism for string. currently
|
9
|
+
# it suports
|
10
|
+
# '<div>foo bar</div>'.esc(:html)
|
11
|
+
# 'foo bar'.esc(:uri)
|
12
|
+
# 'foo bar'.esc(:cgi)
|
13
|
+
def escape which = :html
|
14
|
+
case which
|
15
|
+
when :html
|
16
|
+
Rack::Utils.escape_html(self)
|
17
|
+
when :cgi
|
18
|
+
Rack::Utils.escape(self)
|
19
|
+
when :uri
|
20
|
+
::URI.escape(self)
|
21
|
+
else
|
22
|
+
raise ArgumentError, "do not know how to escape '#{ which }'"
|
23
|
+
end
|
24
|
+
end
|
5
25
|
|
6
|
-
|
7
|
-
|
8
|
-
#
|
9
|
-
|
10
|
-
# 'foo bar'.esc(:cgi)
|
11
|
-
# "foo 'bar'".esc(:sql)
|
12
|
-
|
13
|
-
def escape which = :html
|
14
|
-
case which
|
15
|
-
when :html
|
16
|
-
::CGI.escapeHTML(self)
|
17
|
-
when :cgi
|
18
|
-
::CGI.escape(self)
|
19
|
-
when :uri
|
20
|
-
::URI.escape(self)
|
21
|
-
when :sql # TODO - leverage DBI or something
|
22
|
-
gsub(%r/'/, "''")
|
23
|
-
else
|
24
|
-
raise ArgumentError, "do not know how to escape '#{ which }'"
|
25
|
-
end
|
26
|
-
end
|
27
|
-
|
28
|
-
alias_method 'esc', 'escape'
|
29
|
-
end
|
26
|
+
alias_method 'esc', 'escape'
|
27
|
+
end # String
|
28
|
+
end # CoreExtensions
|
29
|
+
end # Ramaze
|
@@ -1,15 +1,18 @@
|
|
1
1
|
# Copyright (c) 2008 Michael Fellinger m.fellinger@gmail.com
|
2
|
-
# All files in this distribution are subject to the terms of the
|
2
|
+
# All files in this distribution are subject to the terms of the MIT license.
|
3
3
|
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
end
|
4
|
+
module Ramaze
|
5
|
+
module CoreExtensions
|
6
|
+
# Extensions for String
|
7
|
+
module String
|
8
|
+
# convert to snake_case from CamelCase
|
9
|
+
#
|
10
|
+
# @example
|
11
|
+
# 'FooBar'.snake_case # => 'foo_bar'
|
12
|
+
#
|
13
|
+
def snake_case
|
14
|
+
gsub(/\B[A-Z][^A-Z]/, '_\&').downcase.gsub(' ', '_')
|
15
|
+
end
|
16
|
+
end # String
|
17
|
+
end # CoreExtensions
|
18
|
+
end # Ramaze
|
@@ -1,12 +1,25 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
1
|
+
module Ramaze
|
2
|
+
module CoreExtensions
|
3
|
+
# Extensions for String
|
4
|
+
module String
|
5
|
+
# Useful for writing indented String and unindent on demand, based on the
|
6
|
+
# first line with indentation.
|
7
|
+
def unindent
|
8
|
+
find_indent = proc{ |l| l.find{|l| !l.strip.empty?}.to_s[/^(\s+)/, 1] }
|
7
9
|
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
10
|
+
lines = self.split("\n")
|
11
|
+
space = find_indent[lines]
|
12
|
+
space = find_indent[lines.reverse] unless space
|
13
|
+
|
14
|
+
strip.gsub(/^#{space}/, '')
|
15
|
+
end
|
16
|
+
alias ui unindent
|
17
|
+
|
18
|
+
# Destructive variant of undindent, replacing the String
|
19
|
+
def unindent!
|
20
|
+
self.replace unindent
|
21
|
+
end
|
22
|
+
alias ui! unindent!
|
23
|
+
end # String
|
24
|
+
end # CoreExtensions
|
25
|
+
end # Ramaze
|
data/lib/ramaze/snippets.rb
CHANGED
@@ -1,9 +1,24 @@
|
|
1
|
-
# Copyright (c)
|
2
|
-
# All files in this distribution are subject to the terms of the
|
1
|
+
# Copyright (c) 2009 Michael Fellinger m.fellinger@gmail.com
|
2
|
+
# All files in this distribution are subject to the terms of the MIT license.
|
3
3
|
|
4
|
-
|
5
|
-
|
4
|
+
require 'ramaze/snippets/blankslate'
|
5
|
+
require 'ramaze/snippets/object/__dir__'
|
6
|
+
require 'ramaze/snippets/ramaze/deprecated'
|
7
|
+
require 'ramaze/snippets/string/camel_case'
|
8
|
+
require 'ramaze/snippets/string/color'
|
9
|
+
require 'ramaze/snippets/string/esc'
|
10
|
+
require 'ramaze/snippets/string/snake_case'
|
11
|
+
require 'ramaze/snippets/string/unindent'
|
6
12
|
|
7
|
-
|
8
|
-
|
13
|
+
Ramaze::CoreExtensions.constants.each do |const|
|
14
|
+
ext = Ramaze::CoreExtensions.const_get(const)
|
15
|
+
into = Module.const_get(const)
|
16
|
+
|
17
|
+
collisions = ext.instance_methods & into.instance_methods
|
18
|
+
|
19
|
+
if collisions.empty?
|
20
|
+
into.__send__(:include, ext)
|
21
|
+
else
|
22
|
+
warn "Won't include %p with %p, %p exists" % [into, ext, collisions]
|
23
|
+
end
|
9
24
|
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
require File.expand_path('../../../ramaze', __FILE__)
|
2
|
+
require 'bacon'
|
3
|
+
require 'innate/spec/bacon'
|
4
|
+
|
5
|
+
Ramaze.middleware(:spec) { run Ramaze.core }
|
6
|
+
|
7
|
+
def spec_requires(*libs)
|
8
|
+
spec_precondition 'require' do
|
9
|
+
libs.each { |lib| require(lib) }
|
10
|
+
end
|
11
|
+
end
|
12
|
+
alias spec_require spec_requires
|
13
|
+
|
14
|
+
def spec_precondition(name)
|
15
|
+
yield
|
16
|
+
rescue LoadError => ex
|
17
|
+
puts "Spec require: %p failed: %p" % [name, ex.message]
|
18
|
+
exit 0
|
19
|
+
rescue Exception => ex
|
20
|
+
puts "Spec precondition: %p failed: %p" % [name, ex.message]
|
21
|
+
exit 0
|
22
|
+
end
|
23
|
+
|
24
|
+
shared :rack_test do
|
25
|
+
Ramaze.setup_dependencies
|
26
|
+
|
27
|
+
extend Rack::Test::Methods
|
28
|
+
|
29
|
+
def app; Ramaze; end
|
30
|
+
end
|
31
|
+
|
32
|
+
shared :webrat do
|
33
|
+
behaves_like :rack_test
|
34
|
+
|
35
|
+
require 'webrat'
|
36
|
+
|
37
|
+
Webrat.configure { |config| config.mode = :rack }
|
38
|
+
|
39
|
+
extend Webrat::Methods
|
40
|
+
extend Webrat::Matchers
|
41
|
+
end
|
42
|
+
|
43
|
+
# Ignore log messages
|
44
|
+
Ramaze::Log.level = Logger::ERROR
|
@@ -1,7 +1,7 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
require '
|
1
|
+
require File.expand_path(File.join(File.dirname(__FILE__), '../../../ramaze'))
|
2
|
+
|
3
|
+
require 'bacon'
|
4
4
|
require 'ramaze/spec/helper/pretty_output'
|
5
|
+
|
5
6
|
Bacon.extend Bacon::PrettyOutput
|
6
|
-
# Bacon.extend Bacon::TestUnitOutput
|
7
7
|
Bacon.summary_on_exit
|
@@ -2,6 +2,7 @@ module Bacon
|
|
2
2
|
module PrettyOutput
|
3
3
|
NAME = ''
|
4
4
|
|
5
|
+
# store name and run
|
5
6
|
def handle_specification(name)
|
6
7
|
NAME.replace name
|
7
8
|
puts NAME
|
@@ -9,6 +10,7 @@ module Bacon
|
|
9
10
|
puts
|
10
11
|
end
|
11
12
|
|
13
|
+
# Core, yields the requirement and outputs problems
|
12
14
|
def handle_requirement(description)
|
13
15
|
print "- #{description}\n"
|
14
16
|
error = yield
|
@@ -16,7 +18,7 @@ module Bacon
|
|
16
18
|
unless error.empty?
|
17
19
|
if defined?(Ramaze::Logging)
|
18
20
|
puts '', " #{NAME} -- #{description} [FAILED]".center(70, '-'), ''
|
19
|
-
colors = Ramaze::Informer::COLORS
|
21
|
+
colors = Ramaze::Logger::Informer::COLORS
|
20
22
|
|
21
23
|
until RamazeLogger.history.empty?
|
22
24
|
tag, line = RamazeLogger.history.shift
|
@@ -29,6 +31,7 @@ module Bacon
|
|
29
31
|
end
|
30
32
|
end
|
31
33
|
|
34
|
+
# Show nicer output on error
|
32
35
|
def general_error
|
33
36
|
puts "", ErrorLog
|
34
37
|
ErrorLog.scan(/^\s*(.*?):(\d+): #{NAME} - (.*?)$/) do
|
@@ -37,6 +40,7 @@ module Bacon
|
|
37
40
|
ErrorLog.replace ''
|
38
41
|
end
|
39
42
|
|
43
|
+
# output summary
|
40
44
|
def handle_summary
|
41
45
|
puts
|
42
46
|
puts "%d tests, %d assertions, %d failures, %d errors" %
|
@@ -47,20 +51,24 @@ end
|
|
47
51
|
|
48
52
|
if defined?(Ramaze::Logging)
|
49
53
|
module Ramaze
|
54
|
+
# Special Logger, stores everything in its history
|
50
55
|
class SpecLogger
|
51
56
|
include Ramaze::Logging
|
52
57
|
include Enumerable
|
53
58
|
|
54
59
|
attr_accessor :history
|
55
60
|
|
61
|
+
# Create new history
|
56
62
|
def initialize
|
57
63
|
@history = []
|
58
64
|
end
|
59
65
|
|
66
|
+
# Yield the history
|
60
67
|
def each
|
61
68
|
@history.each{|e| yield(e) }
|
62
69
|
end
|
63
70
|
|
71
|
+
# general log
|
64
72
|
def log(tag, str)
|
65
73
|
@history << [tag, str]
|
66
74
|
end
|
@@ -1,6 +1,16 @@
|
|
1
1
|
if caller
|
2
2
|
snippet = caller.grep(%r!spec/snippets/!).first.split(':').first
|
3
3
|
require File.expand_path(snippet).gsub('/spec/', '/lib/ramaze/')
|
4
|
+
|
5
|
+
if defined?(Ramaze::CoreExtensions)
|
6
|
+
Ramaze::CoreExtensions.constants.each do |const|
|
7
|
+
ext = Ramaze::CoreExtensions.const_get(const)
|
8
|
+
into = Module.const_get(const)
|
9
|
+
into.__send__(:include, ext)
|
10
|
+
end
|
11
|
+
end
|
4
12
|
end
|
5
13
|
|
6
|
-
require '
|
14
|
+
require 'bacon'
|
15
|
+
|
16
|
+
Bacon.summary_on_exit
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# Copyright (c) 2009 Michael Fellinger m.fellinger@gmail.com
|
2
|
+
# All files in this distribution are subject to the terms of the MIT license.
|
3
|
+
|
4
|
+
shared :template_spec do
|
5
|
+
behaves_like :rack_test
|
6
|
+
|
7
|
+
def spec_template(spec_engine)
|
8
|
+
it 'works on /' do
|
9
|
+
get('/').body.strip.
|
10
|
+
should =~ %r{<a href\s*=\s*"/">Home</a>\s+\|\s+<a href\s*=\s*"/internal">internal</a>\s+\|\s+<a href\s*=\s*"/external">external</a>}
|
11
|
+
end
|
12
|
+
|
13
|
+
%w[/internal /external].each do |url|
|
14
|
+
it "works on #{url}" do
|
15
|
+
html = get(url).body
|
16
|
+
html.should.not == nil
|
17
|
+
html.should =~ %r{<title>Template::#{spec_engine} (internal|external)</title>}
|
18
|
+
html.should =~ %r{<h1>The (internal|external) Template for #{spec_engine}</h1>}
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
data/lib/ramaze/version.rb
CHANGED
@@ -1,14 +1,5 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
module Version #:nodoc:
|
6
|
-
MAJOR = 0
|
7
|
-
MINOR = 3
|
8
|
-
TINY = 9.1
|
9
|
-
|
10
|
-
STRING = [MAJOR, MINOR, TINY].join('.')
|
11
|
-
end
|
12
|
-
|
13
|
-
VERSION = Version::STRING
|
1
|
+
module Ramaze
|
2
|
+
VERSION = Gem::Specification.load(
|
3
|
+
File.expand_path('../../../ramaze.gemspec', __FILE__)
|
4
|
+
).version.to_s
|
14
5
|
end
|
@@ -0,0 +1,116 @@
|
|
1
|
+
require 'erector'
|
2
|
+
|
3
|
+
module Ramaze
|
4
|
+
module View
|
5
|
+
##
|
6
|
+
# Adapter for Erector. Erector is a view engine that works a bit like
|
7
|
+
# Markably but offers a much more pleasant way of building your views. By
|
8
|
+
# creating classes in plain ruby you can generate layouts and views without
|
9
|
+
# having to write a single line of HTML.
|
10
|
+
#
|
11
|
+
# Each layout or view is a simple class that matches the filename. A layout
|
12
|
+
# named "default.erector" would result in a class with the name "Default".
|
13
|
+
# It's *very* important to know that you should ALWAYS extend
|
14
|
+
# Ramaze::View::Erector. Without extending this class you won't be able to
|
15
|
+
# use Erector at all.
|
16
|
+
#
|
17
|
+
# When working with the Erector adapter there are a few things you'll need
|
18
|
+
# to know. First all your views and layouts should be classes as explained
|
19
|
+
# earlier on. Each class should have at least a single method named
|
20
|
+
# "content". This method is executed by Erector and the HTML it produces
|
21
|
+
# will either be stored in the @content instance variable (if it's a view)
|
22
|
+
# or sent to the browser if it's a layout. The @content variable can be
|
23
|
+
# displayed by calling the rawtext() method and passing the variable as it's
|
24
|
+
# parameter.
|
25
|
+
#
|
26
|
+
# Using helper methods, such as the render_* methods is also possible
|
27
|
+
# although slightly different than you're used to. Due to the way the
|
28
|
+
# Erector adapter works it isn't possible to directly call a helper method.
|
29
|
+
# As a workaround you can access these methods from the "@controller"
|
30
|
+
# instance variable. Don't forget to render the output of these helpers
|
31
|
+
# using rawtext(). Feel free to submit any patches if you think you have a
|
32
|
+
# better solution so that developers don't have to use the @controller
|
33
|
+
# instance variable.
|
34
|
+
#
|
35
|
+
# @example
|
36
|
+
# # This is the code for the layout
|
37
|
+
# class Default < Erector::Widget
|
38
|
+
# html do
|
39
|
+
# head do
|
40
|
+
# title 'Erector Layout'
|
41
|
+
# end
|
42
|
+
#
|
43
|
+
# body do
|
44
|
+
# rawtext @content
|
45
|
+
# end
|
46
|
+
#
|
47
|
+
# end
|
48
|
+
# end
|
49
|
+
#
|
50
|
+
# # And here's the view
|
51
|
+
# class Index < Erector::Widget
|
52
|
+
# def content
|
53
|
+
# h2 'This is the view'
|
54
|
+
# end
|
55
|
+
# end
|
56
|
+
#
|
57
|
+
# # Render an extra view
|
58
|
+
# class ExtraView < Erector::Widget
|
59
|
+
# def content
|
60
|
+
# rawtext @controller.render_view :some_extra_view
|
61
|
+
# end
|
62
|
+
# end
|
63
|
+
#
|
64
|
+
# @author Yorick Peterse
|
65
|
+
#
|
66
|
+
module Erector
|
67
|
+
# Include the Erector gem. By doing this Erector views can extend the
|
68
|
+
# Erector gem without causing any namespace errors.
|
69
|
+
include ::Erector
|
70
|
+
|
71
|
+
##
|
72
|
+
# The call method is called whenever a view is loaded. A view can either
|
73
|
+
# be a layout or an actual view since they're treated the same way. First
|
74
|
+
# the view is loaded, followed by the layout.
|
75
|
+
#
|
76
|
+
# @author Yorick Peterse
|
77
|
+
# @param [Object] action Object containing a copy of the current Action
|
78
|
+
# class data.
|
79
|
+
# @param [String] string The content of the currently loaded layout. This
|
80
|
+
# variable isn't used by the Erector adapter but is required since Ramaze
|
81
|
+
# expects 2 parameters. Usually this string is used to inline load (or
|
82
|
+
# evaluate) the content of a view.
|
83
|
+
# @return [String] The generated HTML.
|
84
|
+
#
|
85
|
+
def self.call action, string
|
86
|
+
# Return the contents unless a view has been defined
|
87
|
+
return string, 'text/html' unless action.view
|
88
|
+
|
89
|
+
# Evaluate the class so we can use it. The content of "string"
|
90
|
+
# is a full blown class that should always have a "content" method.
|
91
|
+
#eval string, action.binding
|
92
|
+
eval string
|
93
|
+
|
94
|
+
# Generate the class name based on the filename.
|
95
|
+
# Class names are a CamelCased version of the filename (without the
|
96
|
+
# extension).
|
97
|
+
klass = File.basename action.view, '.erector'
|
98
|
+
klass = klass.camel_case
|
99
|
+
view_obj = self.const_get(klass)
|
100
|
+
|
101
|
+
# Synchronize the methods of action.instance with the view. These
|
102
|
+
# methods can be accessed by calling @controller.METHOD
|
103
|
+
action.variables[:controller] = action.instance
|
104
|
+
|
105
|
+
# Now that we have all the data we can start rendering the HTML.
|
106
|
+
# Note that we pass the action.variables hash to the new() method. This
|
107
|
+
# is done to give the view access to all existing (instance) variables.
|
108
|
+
# Syncing them using action.copy_variables didn't seem to do the trick.
|
109
|
+
html = view_obj.new(action.variables).to_html
|
110
|
+
|
111
|
+
# All done
|
112
|
+
return html, 'text/html'
|
113
|
+
end
|
114
|
+
end # Erector
|
115
|
+
end # View
|
116
|
+
end # Ramaze
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# Copyright (c) 2009 Michael Fellinger m.fellinger@gmail.com
|
2
|
+
# All files in this distribution are subject to the terms of the MIT license.
|
3
|
+
require 'erubis'
|
4
|
+
|
5
|
+
module Ramaze
|
6
|
+
module View
|
7
|
+
##
|
8
|
+
# View adapter for the Erubis template engine. More information about Erubis
|
9
|
+
# can be found here: http://www.kuwata-lab.com/erubis/
|
10
|
+
#
|
11
|
+
module Erubis
|
12
|
+
OPTIONS = { :engine => ::Erubis::Eruby }
|
13
|
+
|
14
|
+
def self.call(action, string)
|
15
|
+
options = OPTIONS.dup
|
16
|
+
engine = options.delete(:engine)
|
17
|
+
|
18
|
+
eruby = View.compile(string){|s| engine.new(s, options) }
|
19
|
+
eruby.init_evaluator(:filename => (action.view || __FILE__))
|
20
|
+
html = eruby.evaluate(action.instance)
|
21
|
+
|
22
|
+
return html, 'text/html'
|
23
|
+
end
|
24
|
+
end # Erubis
|
25
|
+
end # View
|
26
|
+
end # Ramaze
|
@@ -0,0 +1,27 @@
|
|
1
|
+
require 'ezamar'
|
2
|
+
|
3
|
+
module Ramaze
|
4
|
+
module View
|
5
|
+
##
|
6
|
+
# View adapter for the Ezamar template engine. More information about this
|
7
|
+
# engine can be found here: https://github.com/manveru/ezamar
|
8
|
+
#
|
9
|
+
module Ezamar
|
10
|
+
TRANSFORM_PIPELINE = [ ::Ezamar::Element ]
|
11
|
+
|
12
|
+
def self.call(action, string)
|
13
|
+
ezamar = View.compile(string){|s| compile(action, s) }
|
14
|
+
html = ezamar.result(action.binding)
|
15
|
+
return html, 'text/html'
|
16
|
+
end
|
17
|
+
|
18
|
+
def self.compile(action, template)
|
19
|
+
file = action.view || __FILE__
|
20
|
+
|
21
|
+
TRANSFORM_PIPELINE.each{|tp| template = tp.transform(template) }
|
22
|
+
|
23
|
+
::Ezamar::Template.new(template, :file => file)
|
24
|
+
end
|
25
|
+
end # Ezamar
|
26
|
+
end # View
|
27
|
+
end # Ramaze
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require 'ramaze/gestalt'
|
2
|
+
|
3
|
+
module Ramaze
|
4
|
+
module View
|
5
|
+
##
|
6
|
+
# View adapter that allows you to use Ramaze::Gestalt in your views. See the
|
7
|
+
# documentation of Ramaze::Gestalt for more information.
|
8
|
+
#
|
9
|
+
# @see Ramaze::Gestalt
|
10
|
+
#
|
11
|
+
module Gestalt
|
12
|
+
def self.call(action, string)
|
13
|
+
string = action.instance.instance_eval(string) if action.view
|
14
|
+
html = [string].join
|
15
|
+
|
16
|
+
return html, 'text/html'
|
17
|
+
end
|
18
|
+
end # Gestalt
|
19
|
+
end # View
|
20
|
+
end # Ramaze
|