rango 0.0.3 → 0.0.4
Sign up to get free protection for your applications and to get access to all the features.
- data/CONTRIBUTORS +2 -0
- data/README.textile +9 -10
- data/benchmarks/ab.rb +6 -0
- data/benchmarks/bm/boot.rb +20 -0
- data/{lib/rango/helpers/spec/fixture/app/views/foo/bar.html.erb → benchmarks/bm/callbacks.rb} +0 -0
- data/benchmarks/bm/request.rb +4 -0
- data/benchmarks/bm/routers.rb +22 -0
- data/benchmarks/bm/stack.rb +19 -0
- data/{spec/rango/auth/core/authenticated_helper_spec.rb → benchmarks/bm/templates.rb} +0 -0
- data/benchmarks/helper.rb +7 -0
- data/benchmarks/stubs/merb-app/Rakefile +35 -0
- data/benchmarks/stubs/merb-app/app/controllers/application.rb +4 -0
- data/benchmarks/stubs/merb-app/app/controllers/exceptions.rb +15 -0
- data/benchmarks/stubs/merb-app/app/helpers/global_helpers.rb +7 -0
- data/benchmarks/stubs/merb-app/app/models/user.rb +19 -0
- data/benchmarks/stubs/merb-app/app/views/exceptions/not_acceptable.html.erb +63 -0
- data/benchmarks/stubs/merb-app/app/views/exceptions/not_found.html.erb +47 -0
- data/benchmarks/stubs/merb-app/app/views/layout/application.html.erb +12 -0
- data/benchmarks/stubs/merb-app/autotest/discover.rb +4 -0
- data/benchmarks/stubs/merb-app/autotest/merb.rb +154 -0
- data/benchmarks/stubs/merb-app/autotest/merb_rspec.rb +167 -0
- data/benchmarks/stubs/merb-app/config/database.yml +33 -0
- data/benchmarks/stubs/merb-app/config/dependencies.rb +36 -0
- data/benchmarks/stubs/merb-app/config/environments/development.rb +17 -0
- data/benchmarks/stubs/merb-app/config/environments/production.rb +12 -0
- data/benchmarks/stubs/merb-app/config/environments/rake.rb +13 -0
- data/benchmarks/stubs/merb-app/config/environments/staging.rb +12 -0
- data/benchmarks/stubs/merb-app/config/environments/test.rb +14 -0
- data/benchmarks/stubs/merb-app/config/init.rb +26 -0
- data/benchmarks/stubs/merb-app/config/rack.rb +13 -0
- data/benchmarks/stubs/merb-app/config/router.rb +46 -0
- data/benchmarks/stubs/merb-app/doc/rdoc/generators/merb_generator.rb +1364 -0
- data/benchmarks/stubs/merb-app/doc/rdoc/generators/template/merb/api_grease.js +640 -0
- data/benchmarks/stubs/merb-app/doc/rdoc/generators/template/merb/index.html.erb +37 -0
- data/benchmarks/stubs/merb-app/doc/rdoc/generators/template/merb/merb.css +252 -0
- data/benchmarks/stubs/merb-app/doc/rdoc/generators/template/merb/merb.rb +353 -0
- data/benchmarks/stubs/merb-app/doc/rdoc/generators/template/merb/merb_doc_styles.css +492 -0
- data/benchmarks/stubs/merb-app/doc/rdoc/generators/template/merb/prototype.js +2515 -0
- data/benchmarks/stubs/merb-app/merb/merb-auth/setup.rb +46 -0
- data/benchmarks/stubs/merb-app/merb/merb-auth/strategies.rb +13 -0
- data/benchmarks/stubs/merb-app/merb/session/session.rb +11 -0
- data/benchmarks/stubs/merb-app/public/favicon.ico +0 -0
- data/benchmarks/stubs/merb-app/public/images/merb.jpg +0 -0
- data/benchmarks/stubs/merb-app/public/javascripts/application.js +1 -0
- data/benchmarks/stubs/merb-app/public/javascripts/jquery.js +19 -0
- data/benchmarks/stubs/merb-app/public/merb.fcgi +22 -0
- data/benchmarks/stubs/merb-app/public/robots.txt +5 -0
- data/benchmarks/stubs/merb-app/public/stylesheets/master.css +119 -0
- data/{spec/rango/auth/core/authentication_spec.rb → benchmarks/stubs/merb-app/spec/spec.opts} +0 -0
- data/benchmarks/stubs/merb-app/spec/spec_helper.rb +27 -0
- data/benchmarks/stubs/merb-app/tasks/doc.thor +151 -0
- data/benchmarks/stubs/merb-app/tasks/merb.thor/app_script.rb +33 -0
- data/benchmarks/stubs/merb-app/tasks/merb.thor/common.rb +70 -0
- data/benchmarks/stubs/merb-app/tasks/merb.thor/gem_ext.rb +127 -0
- data/benchmarks/stubs/merb-app/tasks/merb.thor/main.thor +152 -0
- data/benchmarks/stubs/merb-app/tasks/merb.thor/ops.rb +95 -0
- data/benchmarks/stubs/merb-app/tasks/merb.thor/utils.rb +42 -0
- data/benchmarks/stubs/merb-core/Rakefile +35 -0
- data/benchmarks/stubs/merb-core/app/controllers/application.rb +4 -0
- data/benchmarks/stubs/merb-core/app/controllers/exceptions.rb +15 -0
- data/benchmarks/stubs/merb-core/app/helpers/global_helpers.rb +7 -0
- data/benchmarks/stubs/merb-core/app/views/exceptions/not_acceptable.html.erb +63 -0
- data/benchmarks/stubs/merb-core/app/views/exceptions/not_found.html.erb +47 -0
- data/benchmarks/stubs/merb-core/app/views/layout/application.html.erb +12 -0
- data/benchmarks/stubs/merb-core/autotest/discover.rb +1 -0
- data/benchmarks/stubs/merb-core/autotest/merb.rb +151 -0
- data/benchmarks/stubs/merb-core/autotest/merb_rspec.rb +167 -0
- data/benchmarks/stubs/merb-core/config/environments/development.rb +17 -0
- data/benchmarks/stubs/merb-core/config/environments/production.rb +12 -0
- data/benchmarks/stubs/merb-core/config/environments/rake.rb +13 -0
- data/benchmarks/stubs/merb-core/config/environments/staging.rb +12 -0
- data/benchmarks/stubs/merb-core/config/environments/test.rb +14 -0
- data/benchmarks/stubs/merb-core/config/init.rb +27 -0
- data/benchmarks/stubs/merb-core/config/rack.rb +13 -0
- data/benchmarks/stubs/merb-core/config/router.rb +43 -0
- data/benchmarks/stubs/merb-core/doc/rdoc/generators/merb_generator.rb +1364 -0
- data/benchmarks/stubs/merb-core/doc/rdoc/generators/template/merb/api_grease.js +640 -0
- data/benchmarks/stubs/merb-core/doc/rdoc/generators/template/merb/index.html.erb +37 -0
- data/benchmarks/stubs/merb-core/doc/rdoc/generators/template/merb/merb.css +252 -0
- data/benchmarks/stubs/merb-core/doc/rdoc/generators/template/merb/merb.rb +353 -0
- data/benchmarks/stubs/merb-core/doc/rdoc/generators/template/merb/merb_doc_styles.css +492 -0
- data/benchmarks/stubs/merb-core/doc/rdoc/generators/template/merb/prototype.js +2515 -0
- data/benchmarks/stubs/merb-core/public/favicon.ico +0 -0
- data/benchmarks/stubs/merb-core/public/images/merb.jpg +0 -0
- data/benchmarks/stubs/merb-core/public/javascripts/application.js +1 -0
- data/benchmarks/stubs/merb-core/public/merb.fcgi +22 -0
- data/benchmarks/stubs/merb-core/public/robots.txt +5 -0
- data/benchmarks/stubs/merb-core/public/stylesheets/master.css +119 -0
- data/{spec/rango/auth/core/callbacks_spec.rb → benchmarks/stubs/merb-core/spec/spec.opts} +0 -0
- data/benchmarks/stubs/merb-core/spec/spec_helper.rb +22 -0
- data/benchmarks/stubs/merb-core/tasks/merb.thor/app_script.rb +33 -0
- data/benchmarks/stubs/merb-core/tasks/merb.thor/common.rb +70 -0
- data/benchmarks/stubs/merb-core/tasks/merb.thor/gem_ext.rb +127 -0
- data/benchmarks/stubs/merb-core/tasks/merb.thor/main.thor +152 -0
- data/benchmarks/stubs/merb-core/tasks/merb.thor/ops.rb +95 -0
- data/benchmarks/stubs/merb-core/tasks/merb.thor/utils.rb +42 -0
- data/benchmarks/stubs/merb-flat/README.txt +10 -0
- data/benchmarks/stubs/merb-flat/Rakefile +35 -0
- data/benchmarks/stubs/merb-flat/application.rb +17 -0
- data/benchmarks/stubs/merb-flat/config/framework.rb +9 -0
- data/benchmarks/stubs/merb-flat/config/init.rb +42 -0
- data/benchmarks/stubs/merb-flat/spec/spec_helper.rb +26 -0
- data/benchmarks/stubs/merb-flat/tasks/merb.thor/app_script.rb +33 -0
- data/benchmarks/stubs/merb-flat/tasks/merb.thor/common.rb +70 -0
- data/benchmarks/stubs/merb-flat/tasks/merb.thor/gem_ext.rb +127 -0
- data/benchmarks/stubs/merb-flat/tasks/merb.thor/main.thor +152 -0
- data/benchmarks/stubs/merb-flat/tasks/merb.thor/ops.rb +95 -0
- data/benchmarks/stubs/merb-flat/tasks/merb.thor/utils.rb +42 -0
- data/benchmarks/stubs/merb-flat/views/foo.html.erb +3 -0
- data/benchmarks/stubs/merb-very-flat/Rakefile +35 -0
- data/benchmarks/stubs/merb-very-flat/merb-very-flat.rb +61 -0
- data/benchmarks/stubs/merb-very-flat/spec/spec_helper.rb +26 -0
- data/benchmarks/stubs/merb-very-flat/tasks/merb.thor/app_script.rb +33 -0
- data/benchmarks/stubs/merb-very-flat/tasks/merb.thor/common.rb +70 -0
- data/benchmarks/stubs/merb-very-flat/tasks/merb.thor/gem_ext.rb +127 -0
- data/benchmarks/stubs/merb-very-flat/tasks/merb.thor/main.thor +152 -0
- data/benchmarks/stubs/merb-very-flat/tasks/merb.thor/ops.rb +95 -0
- data/benchmarks/stubs/merb-very-flat/tasks/merb.thor/utils.rb +42 -0
- data/benchmarks/stubs/rails/README +243 -0
- data/benchmarks/stubs/rails/Rakefile +10 -0
- data/benchmarks/stubs/rails/app/controllers/application_controller.rb +12 -0
- data/benchmarks/stubs/rails/app/helpers/application_helper.rb +5 -0
- data/benchmarks/stubs/rails/config/boot.rb +112 -0
- data/benchmarks/stubs/rails/config/database.yml +22 -0
- data/benchmarks/stubs/rails/config/environment.rb +43 -0
- data/benchmarks/stubs/rails/config/environments/development.rb +19 -0
- data/benchmarks/stubs/rails/config/environments/production.rb +30 -0
- data/benchmarks/stubs/rails/config/environments/test.rb +30 -0
- data/benchmarks/stubs/rails/config/initializers/backtrace_silencers.rb +9 -0
- data/benchmarks/stubs/rails/config/initializers/inflections.rb +12 -0
- data/benchmarks/stubs/rails/config/initializers/mime_types.rb +7 -0
- data/benchmarks/stubs/rails/config/initializers/new_rails_defaults.rb +21 -0
- data/benchmarks/stubs/rails/config/initializers/session_store.rb +17 -0
- data/benchmarks/stubs/rails/config/locales/en.yml +5 -0
- data/benchmarks/stubs/rails/config/routes.rb +45 -0
- data/benchmarks/stubs/rails/doc/README_FOR_APP +2 -0
- data/{spec/rango/auth/core/errors_spec.rb → benchmarks/stubs/rails/log/development.log} +0 -0
- data/{spec/rango/auth/core/responses_spec.rb → benchmarks/stubs/rails/log/production.log} +0 -0
- data/{spec/rango/auth/core/session_mixin_spec.rb → benchmarks/stubs/rails/log/server.log} +0 -0
- data/{spec/rango/auth/core/spec/helpers/authentication_helper_spec_spec.rb → benchmarks/stubs/rails/log/test.log} +0 -0
- data/benchmarks/stubs/rails/public/404.html +30 -0
- data/benchmarks/stubs/rails/public/422.html +30 -0
- data/benchmarks/stubs/rails/public/500.html +30 -0
- data/{spec/rango/auth/core/spec/merb-auth-core/activation_fixture_spec.rb → benchmarks/stubs/rails/public/favicon.ico} +0 -0
- data/benchmarks/stubs/rails/public/images/rails.png +0 -0
- data/benchmarks/stubs/rails/public/index.html +275 -0
- data/benchmarks/stubs/rails/public/javascripts/application.js +2 -0
- data/benchmarks/stubs/rails/public/javascripts/controls.js +963 -0
- data/benchmarks/stubs/rails/public/javascripts/dragdrop.js +973 -0
- data/benchmarks/stubs/rails/public/javascripts/effects.js +1128 -0
- data/benchmarks/stubs/rails/public/javascripts/prototype.js +4320 -0
- data/benchmarks/stubs/rails/public/robots.txt +5 -0
- data/benchmarks/stubs/rails/script/about +4 -0
- data/benchmarks/stubs/rails/script/console +3 -0
- data/benchmarks/stubs/rails/script/dbconsole +3 -0
- data/benchmarks/stubs/rails/script/destroy +3 -0
- data/benchmarks/stubs/rails/script/generate +3 -0
- data/benchmarks/stubs/rails/script/performance/benchmarker +3 -0
- data/benchmarks/stubs/rails/script/performance/profiler +3 -0
- data/benchmarks/stubs/rails/script/plugin +3 -0
- data/benchmarks/stubs/rails/script/runner +3 -0
- data/benchmarks/stubs/rails/script/server +3 -0
- data/benchmarks/stubs/rails/test/performance/browsing_test.rb +11 -0
- data/benchmarks/stubs/rails/test/test_helper.rb +40 -0
- data/{spec/rango/auth/core/spec/merb-auth-core/authentication_spec_spec.rb → benchmarks/stubs/ramaze.rb} +0 -0
- data/benchmarks/stubs/sinatra.rb +11 -0
- data/bin/rango +10 -9
- data/cucumber.yml +1 -0
- data/doc/0.0.3/Array.html +354 -0
- data/doc/0.0.3/AttributeMixin.html +697 -0
- data/doc/0.0.3/Class.html +102 -0
- data/doc/0.0.3/ColoredString.html +476 -0
- data/doc/0.0.3/Enumerable.html +256 -0
- data/doc/0.0.3/File.html +909 -0
- data/doc/0.0.3/Hash.html +1586 -0
- data/doc/0.0.3/Kernel.html +956 -0
- data/doc/0.0.3/OS.html +740 -0
- data/doc/0.0.3/Object.html +466 -0
- data/doc/0.0.3/ObjectSpace.html +184 -0
- data/doc/0.0.3/Path.html +2499 -0
- data/doc/0.0.3/Range.html +190 -0
- data/doc/0.0.3/Rango.html +379 -0
- data/doc/0.0.3/Rango/ApplicationMixin.html +396 -0
- data/doc/0.0.3/Rango/Bundling.html +23 -0
- data/doc/0.0.3/Rango/Bundling/RequireStrategy.html +283 -0
- data/doc/0.0.3/Rango/Bundling/Strategy.html +703 -0
- data/doc/0.0.3/Rango/CLI.html +23 -0
- data/doc/0.0.3/Rango/CLI/Generator.html +762 -0
- data/doc/0.0.3/Rango/CLI/Templater.html +258 -0
- data/doc/0.0.3/Rango/CallableStrategy.html +300 -0
- data/doc/0.0.3/Rango/Chainable.html +181 -0
- data/doc/0.0.3/Rango/Configurable.html +199 -0
- data/doc/0.0.3/Rango/Controller.html +962 -0
- data/doc/0.0.3/Rango/ControllerMixin.html +860 -0
- data/doc/0.0.3/Rango/ControllerStrategy.html +264 -0
- data/doc/0.0.3/Rango/DependencyStrategy.html +116 -0
- data/doc/0.0.3/Rango/Dispatcher.html +305 -0
- data/doc/0.0.3/Rango/Form.html +162 -0
- data/doc/0.0.3/Rango/GemDependencyStrategy.html +210 -0
- data/doc/0.0.3/Rango/Generator.html +93 -0
- data/doc/0.0.3/Rango/GenericViews.html +128 -0
- data/doc/0.0.3/Rango/GitDependencyStrategy.html +224 -0
- data/doc/0.0.3/Rango/GithubDependencyStrategy.html +118 -0
- data/doc/0.0.3/Rango/Handler.html +474 -0
- data/doc/0.0.3/Rango/Helpers.html +1335 -0
- data/doc/0.0.3/Rango/Hookable.html +202 -0
- data/doc/0.0.3/Rango/ImportMixin.html +755 -0
- data/doc/0.0.3/Rango/Logger.html +920 -0
- data/doc/0.0.3/Rango/Mini.html +117 -0
- data/doc/0.0.3/Rango/ModelForm.html +42 -0
- data/doc/0.0.3/Rango/Project.html +516 -0
- data/doc/0.0.3/Rango/RenderMixin.html +23 -0
- data/doc/0.0.3/Rango/Request.html +1177 -0
- data/doc/0.0.3/Rango/Route.html +751 -0
- data/doc/0.0.3/Rango/Router.html +42 -0
- data/doc/0.0.3/Rango/Router/Dispatcher.html +311 -0
- data/doc/0.0.3/Rango/RouterStrategy.html +258 -0
- data/doc/0.0.3/Rango/Session.html +23 -0
- data/doc/0.0.3/Rango/Settings.html +23 -0
- data/doc/0.0.3/Rango/Settings/Erubis.html +23 -0
- data/doc/0.0.3/Rango/Settings/Framework.html +254 -0
- data/doc/0.0.3/Rango/Settings/Haml.html +23 -0
- data/doc/0.0.3/Rango/Settings/Template.html +23 -0
- data/doc/0.0.3/Rango/SimpleTemplate.html +187 -0
- data/doc/0.0.3/Rango/StrategyMixin.html +261 -0
- data/doc/0.0.3/Rango/Tasks.html +219 -0
- data/doc/0.0.3/Rango/Template.html +95 -0
- data/doc/0.0.3/Rango/Template/Adapter.html +90 -0
- data/doc/0.0.3/Rango/Templates.html +116 -0
- data/doc/0.0.3/Rango/Templates/Adapter.html +128 -0
- data/doc/0.0.3/Rango/Templates/Template.html +636 -0
- data/doc/0.0.3/Rango/Templates/TemplateHelpers.html +328 -0
- data/doc/0.0.3/RangoThor.html +205 -0
- data/doc/0.0.3/String.html +307 -0
- data/doc/0.0.3/Time.html +193 -0
- data/doc/0.0.3/TimeDSL.html +601 -0
- data/doc/0.0.3/all-methods.html +1908 -0
- data/doc/0.0.3/all-namespaces.html +114 -0
- data/doc/0.0.3/app.js +18 -0
- data/doc/0.0.3/head/Array.html +354 -0
- data/doc/0.0.3/head/AttributeMixin.html +697 -0
- data/doc/0.0.3/head/Class.html +102 -0
- data/doc/0.0.3/head/ColoredString.html +476 -0
- data/doc/0.0.3/head/Enumerable.html +256 -0
- data/doc/0.0.3/head/File.html +909 -0
- data/doc/0.0.3/head/Hash.html +1586 -0
- data/doc/0.0.3/head/Kernel.html +956 -0
- data/doc/0.0.3/head/OS.html +740 -0
- data/doc/0.0.3/head/Object.html +466 -0
- data/doc/0.0.3/head/ObjectSpace.html +184 -0
- data/doc/0.0.3/head/Path.html +2499 -0
- data/doc/0.0.3/head/Range.html +190 -0
- data/doc/0.0.3/head/Rango.html +379 -0
- data/doc/0.0.3/head/Rango/ApplicationMixin.html +396 -0
- data/doc/0.0.3/head/Rango/Bundling.html +23 -0
- data/doc/0.0.3/head/Rango/Bundling/RequireStrategy.html +283 -0
- data/doc/0.0.3/head/Rango/Bundling/Strategy.html +703 -0
- data/doc/0.0.3/head/Rango/CLI.html +23 -0
- data/doc/0.0.3/head/Rango/CLI/Generator.html +762 -0
- data/doc/0.0.3/head/Rango/CLI/Templater.html +258 -0
- data/doc/0.0.3/head/Rango/CallableStrategy.html +300 -0
- data/doc/0.0.3/head/Rango/Chainable.html +181 -0
- data/doc/0.0.3/head/Rango/Configurable.html +199 -0
- data/doc/0.0.3/head/Rango/Controller.html +962 -0
- data/doc/0.0.3/head/Rango/ControllerMixin.html +860 -0
- data/doc/0.0.3/head/Rango/ControllerStrategy.html +264 -0
- data/doc/0.0.3/head/Rango/DependencyStrategy.html +116 -0
- data/doc/0.0.3/head/Rango/Dispatcher.html +305 -0
- data/doc/0.0.3/head/Rango/Form.html +162 -0
- data/doc/0.0.3/head/Rango/GemDependencyStrategy.html +210 -0
- data/doc/0.0.3/head/Rango/Generator.html +93 -0
- data/doc/0.0.3/head/Rango/GenericViews.html +128 -0
- data/doc/0.0.3/head/Rango/GitDependencyStrategy.html +224 -0
- data/doc/0.0.3/head/Rango/GithubDependencyStrategy.html +118 -0
- data/doc/0.0.3/head/Rango/Handler.html +474 -0
- data/doc/0.0.3/head/Rango/Helpers.html +1335 -0
- data/doc/0.0.3/head/Rango/Hookable.html +202 -0
- data/doc/0.0.3/head/Rango/ImportMixin.html +755 -0
- data/doc/0.0.3/head/Rango/Logger.html +920 -0
- data/doc/0.0.3/head/Rango/Mini.html +117 -0
- data/doc/0.0.3/head/Rango/ModelForm.html +42 -0
- data/doc/0.0.3/head/Rango/Project.html +516 -0
- data/doc/0.0.3/head/Rango/RenderMixin.html +23 -0
- data/doc/0.0.3/head/Rango/Request.html +1177 -0
- data/doc/0.0.3/head/Rango/Route.html +751 -0
- data/doc/0.0.3/head/Rango/Router.html +42 -0
- data/doc/0.0.3/head/Rango/Router/Dispatcher.html +311 -0
- data/doc/0.0.3/head/Rango/RouterStrategy.html +258 -0
- data/doc/0.0.3/head/Rango/Session.html +23 -0
- data/doc/0.0.3/head/Rango/Settings.html +23 -0
- data/doc/0.0.3/head/Rango/Settings/Erubis.html +23 -0
- data/doc/0.0.3/head/Rango/Settings/Framework.html +254 -0
- data/doc/0.0.3/head/Rango/Settings/Haml.html +23 -0
- data/doc/0.0.3/head/Rango/Settings/Template.html +23 -0
- data/doc/0.0.3/head/Rango/SimpleTemplate.html +187 -0
- data/doc/0.0.3/head/Rango/StrategyMixin.html +261 -0
- data/doc/0.0.3/head/Rango/Tasks.html +219 -0
- data/doc/0.0.3/head/Rango/Template.html +95 -0
- data/doc/0.0.3/head/Rango/Template/Adapter.html +90 -0
- data/doc/0.0.3/head/Rango/Templates.html +116 -0
- data/doc/0.0.3/head/Rango/Templates/Adapter.html +128 -0
- data/doc/0.0.3/head/Rango/Templates/Template.html +636 -0
- data/doc/0.0.3/head/Rango/Templates/TemplateHelpers.html +328 -0
- data/doc/0.0.3/head/RangoThor.html +205 -0
- data/doc/0.0.3/head/String.html +307 -0
- data/doc/0.0.3/head/Time.html +193 -0
- data/doc/0.0.3/head/TimeDSL.html +601 -0
- data/doc/0.0.3/head/all-methods.html +1908 -0
- data/doc/0.0.3/head/all-namespaces.html +114 -0
- data/doc/0.0.3/head/app.js +18 -0
- data/doc/0.0.3/head/index.html +18 -0
- data/doc/0.0.3/head/jquery.js +11 -0
- data/doc/0.0.3/head/readme.html +36 -0
- data/doc/0.0.3/head/style.css +68 -0
- data/doc/0.0.3/head/syntax_highlight.css +21 -0
- data/doc/0.0.3/index.html +18 -0
- data/doc/0.0.3/jquery.js +11 -0
- data/doc/0.0.3/readme.html +36 -0
- data/doc/0.0.3/style.css +68 -0
- data/doc/0.0.3/syntax_highlight.css +21 -0
- data/doc/0.0.4/Array.html +354 -0
- data/doc/0.0.4/AttributeMixin.html +697 -0
- data/doc/0.0.4/Class.html +102 -0
- data/doc/0.0.4/ColoredString.html +476 -0
- data/doc/0.0.4/Enumerable.html +256 -0
- data/doc/0.0.4/File.html +909 -0
- data/doc/0.0.4/Hash.html +1586 -0
- data/doc/0.0.4/Kernel.html +956 -0
- data/doc/0.0.4/OS.html +740 -0
- data/doc/0.0.4/Object.html +466 -0
- data/doc/0.0.4/ObjectSpace.html +184 -0
- data/doc/0.0.4/Path.html +2499 -0
- data/doc/0.0.4/Range.html +190 -0
- data/doc/0.0.4/Rango.html +379 -0
- data/doc/0.0.4/Rango/ApplicationMixin.html +396 -0
- data/doc/0.0.4/Rango/Bundling.html +23 -0
- data/doc/0.0.4/Rango/Bundling/RequireStrategy.html +283 -0
- data/doc/0.0.4/Rango/Bundling/Strategy.html +703 -0
- data/doc/0.0.4/Rango/CLI.html +23 -0
- data/doc/0.0.4/Rango/CLI/Generator.html +762 -0
- data/doc/0.0.4/Rango/CLI/Templater.html +258 -0
- data/doc/0.0.4/Rango/CallableStrategy.html +300 -0
- data/doc/0.0.4/Rango/Chainable.html +181 -0
- data/doc/0.0.4/Rango/Configurable.html +199 -0
- data/doc/0.0.4/Rango/Controller.html +962 -0
- data/doc/0.0.4/Rango/ControllerMixin.html +860 -0
- data/doc/0.0.4/Rango/ControllerStrategy.html +264 -0
- data/doc/0.0.4/Rango/DependencyStrategy.html +116 -0
- data/doc/0.0.4/Rango/Dispatcher.html +305 -0
- data/doc/0.0.4/Rango/Form.html +162 -0
- data/doc/0.0.4/Rango/GemDependencyStrategy.html +210 -0
- data/doc/0.0.4/Rango/Generator.html +93 -0
- data/doc/0.0.4/Rango/GenericViews.html +128 -0
- data/doc/0.0.4/Rango/GitDependencyStrategy.html +224 -0
- data/doc/0.0.4/Rango/GithubDependencyStrategy.html +118 -0
- data/doc/0.0.4/Rango/Handler.html +474 -0
- data/doc/0.0.4/Rango/Helpers.html +1335 -0
- data/doc/0.0.4/Rango/Hookable.html +202 -0
- data/doc/0.0.4/Rango/ImportMixin.html +755 -0
- data/doc/0.0.4/Rango/Logger.html +920 -0
- data/doc/0.0.4/Rango/Mini.html +117 -0
- data/doc/0.0.4/Rango/ModelForm.html +42 -0
- data/doc/0.0.4/Rango/Project.html +516 -0
- data/doc/0.0.4/Rango/RenderMixin.html +23 -0
- data/doc/0.0.4/Rango/Request.html +1177 -0
- data/doc/0.0.4/Rango/Route.html +751 -0
- data/doc/0.0.4/Rango/Router.html +42 -0
- data/doc/0.0.4/Rango/Router/Dispatcher.html +311 -0
- data/doc/0.0.4/Rango/RouterStrategy.html +258 -0
- data/doc/0.0.4/Rango/Session.html +23 -0
- data/doc/0.0.4/Rango/Settings.html +23 -0
- data/doc/0.0.4/Rango/Settings/Erubis.html +23 -0
- data/doc/0.0.4/Rango/Settings/Framework.html +254 -0
- data/doc/0.0.4/Rango/Settings/Haml.html +23 -0
- data/doc/0.0.4/Rango/Settings/Template.html +23 -0
- data/doc/0.0.4/Rango/SimpleTemplate.html +187 -0
- data/doc/0.0.4/Rango/StrategyMixin.html +261 -0
- data/doc/0.0.4/Rango/Tasks.html +219 -0
- data/doc/0.0.4/Rango/Template.html +95 -0
- data/doc/0.0.4/Rango/Template/Adapter.html +90 -0
- data/doc/0.0.4/Rango/Templates.html +116 -0
- data/doc/0.0.4/Rango/Templates/Adapter.html +128 -0
- data/doc/0.0.4/Rango/Templates/Template.html +636 -0
- data/doc/0.0.4/Rango/Templates/TemplateHelpers.html +328 -0
- data/doc/0.0.4/RangoThor.html +205 -0
- data/doc/0.0.4/String.html +307 -0
- data/doc/0.0.4/Time.html +193 -0
- data/doc/0.0.4/TimeDSL.html +601 -0
- data/doc/0.0.4/all-methods.html +1908 -0
- data/doc/0.0.4/all-namespaces.html +114 -0
- data/doc/0.0.4/app.js +18 -0
- data/doc/0.0.4/head/Array.html +354 -0
- data/doc/0.0.4/head/AttributeMixin.html +697 -0
- data/doc/0.0.4/head/Class.html +102 -0
- data/doc/0.0.4/head/ColoredString.html +476 -0
- data/doc/0.0.4/head/Enumerable.html +256 -0
- data/doc/0.0.4/head/File.html +909 -0
- data/doc/0.0.4/head/Hash.html +1586 -0
- data/doc/0.0.4/head/Kernel.html +956 -0
- data/doc/0.0.4/head/OS.html +740 -0
- data/doc/0.0.4/head/Object.html +466 -0
- data/doc/0.0.4/head/ObjectSpace.html +184 -0
- data/doc/0.0.4/head/Path.html +2499 -0
- data/doc/0.0.4/head/Range.html +190 -0
- data/doc/0.0.4/head/Rango.html +379 -0
- data/doc/0.0.4/head/Rango/ApplicationMixin.html +396 -0
- data/doc/0.0.4/head/Rango/Bundling.html +23 -0
- data/doc/0.0.4/head/Rango/Bundling/RequireStrategy.html +283 -0
- data/doc/0.0.4/head/Rango/Bundling/Strategy.html +703 -0
- data/doc/0.0.4/head/Rango/CLI.html +23 -0
- data/doc/0.0.4/head/Rango/CLI/Generator.html +762 -0
- data/doc/0.0.4/head/Rango/CLI/Templater.html +258 -0
- data/doc/0.0.4/head/Rango/CallableStrategy.html +300 -0
- data/doc/0.0.4/head/Rango/Chainable.html +181 -0
- data/doc/0.0.4/head/Rango/Configurable.html +199 -0
- data/doc/0.0.4/head/Rango/Controller.html +962 -0
- data/doc/0.0.4/head/Rango/ControllerMixin.html +860 -0
- data/doc/0.0.4/head/Rango/ControllerStrategy.html +264 -0
- data/doc/0.0.4/head/Rango/DependencyStrategy.html +116 -0
- data/doc/0.0.4/head/Rango/Dispatcher.html +305 -0
- data/doc/0.0.4/head/Rango/Form.html +162 -0
- data/doc/0.0.4/head/Rango/GemDependencyStrategy.html +210 -0
- data/doc/0.0.4/head/Rango/Generator.html +93 -0
- data/doc/0.0.4/head/Rango/GenericViews.html +128 -0
- data/doc/0.0.4/head/Rango/GitDependencyStrategy.html +224 -0
- data/doc/0.0.4/head/Rango/GithubDependencyStrategy.html +118 -0
- data/doc/0.0.4/head/Rango/Handler.html +474 -0
- data/doc/0.0.4/head/Rango/Helpers.html +1335 -0
- data/doc/0.0.4/head/Rango/Hookable.html +202 -0
- data/doc/0.0.4/head/Rango/ImportMixin.html +755 -0
- data/doc/0.0.4/head/Rango/Logger.html +920 -0
- data/doc/0.0.4/head/Rango/Mini.html +117 -0
- data/doc/0.0.4/head/Rango/ModelForm.html +42 -0
- data/doc/0.0.4/head/Rango/Project.html +516 -0
- data/doc/0.0.4/head/Rango/RenderMixin.html +23 -0
- data/doc/0.0.4/head/Rango/Request.html +1177 -0
- data/doc/0.0.4/head/Rango/Route.html +751 -0
- data/doc/0.0.4/head/Rango/Router.html +42 -0
- data/doc/0.0.4/head/Rango/Router/Dispatcher.html +311 -0
- data/doc/0.0.4/head/Rango/RouterStrategy.html +258 -0
- data/doc/0.0.4/head/Rango/Session.html +23 -0
- data/doc/0.0.4/head/Rango/Settings.html +23 -0
- data/doc/0.0.4/head/Rango/Settings/Erubis.html +23 -0
- data/doc/0.0.4/head/Rango/Settings/Framework.html +254 -0
- data/doc/0.0.4/head/Rango/Settings/Haml.html +23 -0
- data/doc/0.0.4/head/Rango/Settings/Template.html +23 -0
- data/doc/0.0.4/head/Rango/SimpleTemplate.html +187 -0
- data/doc/0.0.4/head/Rango/StrategyMixin.html +261 -0
- data/doc/0.0.4/head/Rango/Tasks.html +219 -0
- data/doc/0.0.4/head/Rango/Template.html +95 -0
- data/doc/0.0.4/head/Rango/Template/Adapter.html +90 -0
- data/doc/0.0.4/head/Rango/Templates.html +116 -0
- data/doc/0.0.4/head/Rango/Templates/Adapter.html +128 -0
- data/doc/0.0.4/head/Rango/Templates/Template.html +636 -0
- data/doc/0.0.4/head/Rango/Templates/TemplateHelpers.html +328 -0
- data/doc/0.0.4/head/RangoThor.html +205 -0
- data/doc/0.0.4/head/String.html +307 -0
- data/doc/0.0.4/head/Time.html +193 -0
- data/doc/0.0.4/head/TimeDSL.html +601 -0
- data/doc/0.0.4/head/all-methods.html +1908 -0
- data/doc/0.0.4/head/all-namespaces.html +114 -0
- data/doc/0.0.4/head/app.js +18 -0
- data/doc/0.0.4/head/index.html +18 -0
- data/doc/0.0.4/head/jquery.js +11 -0
- data/doc/0.0.4/head/readme.html +36 -0
- data/doc/0.0.4/head/style.css +68 -0
- data/doc/0.0.4/head/syntax_highlight.css +21 -0
- data/doc/0.0.4/index.html +18 -0
- data/doc/0.0.4/jquery.js +11 -0
- data/doc/0.0.4/readme.html +36 -0
- data/doc/0.0.4/style.css +68 -0
- data/doc/0.0.4/syntax_highlight.css +21 -0
- data/doc/head/Array.html +247 -7
- data/doc/head/AttributeMixin.html +127 -43
- data/doc/head/ColoredString.html +1 -1
- data/doc/head/Enumerable.html +256 -0
- data/doc/head/File.html +909 -0
- data/doc/head/Hash.html +1043 -100
- data/doc/head/Kernel.html +378 -63
- data/doc/head/OS.html +740 -0
- data/doc/head/Object.html +363 -37
- data/doc/head/ObjectSpace.html +94 -13
- data/doc/head/Range.html +87 -6
- data/doc/head/Rango.html +21 -39
- data/doc/head/Rango/ApplicationMixin.html +4 -4
- data/doc/head/Rango/Bundling/RequireStrategy.html +1 -1
- data/doc/head/Rango/Bundling/Strategy.html +1 -1
- data/doc/head/Rango/CLI.html +23 -0
- data/doc/head/Rango/CLI/Generator.html +762 -0
- data/doc/head/Rango/CLI/Templater.html +258 -0
- data/doc/head/Rango/Chainable.html +14 -14
- data/doc/head/Rango/ControllerMixin.html +36 -36
- data/doc/head/Rango/Form.html +1 -1
- data/doc/head/Rango/Helpers.html +89 -25
- data/doc/head/Rango/Hookable.html +3 -3
- data/doc/head/Rango/Mini.html +117 -0
- data/doc/head/Rango/ModelForm.html +1 -1
- data/doc/head/Rango/Router.html +1 -1
- data/doc/head/Rango/Settings/Framework.html +64 -8
- data/doc/head/Rango/Settings/Template.html +23 -0
- data/doc/head/Rango/Tasks.html +10 -42
- data/doc/head/Rango/Templates/Adapter.html +1 -1
- data/doc/head/Rango/Templates/Template.html +21 -21
- data/doc/head/Rango/Templates/TemplateHelpers.html +12 -12
- data/doc/head/String.html +152 -8
- data/doc/head/Time.html +193 -0
- data/doc/head/TimeDSL.html +28 -39
- data/doc/head/all-methods.html +236 -340
- data/doc/head/all-namespaces.html +21 -21
- data/doc/head/readme.html +14 -12
- data/examples/README.textile +13 -0
- data/{spec/rango/auth/core/spec/merb-auth-core/callbacks_spec_spec.rb → examples/TODO} +0 -0
- data/examples/flat/basic.ru +31 -0
- data/examples/flat/generic_views.ru +16 -0
- data/examples/flat/info.ru +18 -0
- data/examples/flat/simple_controller.ru +1 -0
- data/examples/flat/templates/about/author.html.haml +1 -0
- data/{spec/rango/auth/core/spec/merb-auth-core/customizations_spec_spec.rb → examples/flat/templates/about/contact.html.haml} +0 -0
- data/{spec/rango/auth/core/spec/merb-auth-core/errors_spec_spec.rb → examples/flat/templates/base.html.haml} +0 -0
- data/examples/flat/templates/info.html.haml +25 -0
- data/examples/twitter/Thorfile +12 -0
- data/examples/twitter/config.ru +48 -0
- data/examples/twitter/development.db +0 -0
- data/examples/twitter/factories.rb +19 -0
- data/examples/twitter/init.rb +15 -0
- data/{spec/rango/auth/core/spec/merb-auth-core/failed_login_spec_spec.rb → examples/twitter/media/hello-static.txt} +0 -0
- data/examples/twitter/models.rb +13 -0
- data/examples/twitter/run.rb +8 -0
- data/examples/twitter/settings.rb +5 -0
- data/examples/twitter/settings_local.rb +6 -0
- data/examples/twitter/templates/base.html.haml +9 -0
- data/examples/twitter/templates/index.html.haml +4 -0
- data/examples/twitter/templates/show.html.haml +4 -0
- data/examples/twitter/templates/timeline.html.haml +10 -0
- data/examples/twitter/views.rb +40 -0
- data/features/TODO.txt +5 -0
- data/{spec/rango/auth/core/spec/merb-auth-core/merb-auth-core_spec_spec.rb → features/auth/warden.feature} +0 -0
- data/features/generators/app.feature +11 -0
- data/{spec/rango/auth/core/spec/merb-auth-core/router_helper_spec_spec.rb → features/generators/bigapp.feature} +0 -0
- data/{spec/rango/auth/core/spec/merb-auth-core/strategy_spec_spec.rb → features/generators/features.feature} +0 -0
- data/{spec/rango/auth/core/spec/spec_helper_spec.rb → features/generators/flat.feature} +0 -0
- data/{spec/rango/auth/core/strategy_spec.rb → features/generators/project.feature} +0 -0
- data/{spec/rango/auth/core_spec.rb → features/generators/pupu.feature} +0 -0
- data/{spec/rango/auth/more/mixins/redirect_back_spec.rb → features/generators/stub.feature} +0 -0
- data/features/generators_steps.rb +26 -0
- data/{spec/rango/auth/more/mixins/salted_user/ar_salted_user_spec.rb → features/routers/rack-router.feature} +0 -0
- data/{spec/rango/auth/more/mixins/salted_user/dm_salted_user_spec.rb → features/routers/rack.feature} +0 -0
- data/{spec/rango/auth/more/mixins/salted_user/relaxdb_salted_user_spec.rb → features/routers/urlmap.feature} +0 -0
- data/features/shared/given_steps.rb +1 -0
- data/features/shared/then_steps.rb +1 -0
- data/features/shared/when_steps.rb +1 -0
- data/features/support/env.rb +64 -0
- data/lib/rango.rb +15 -6
- data/lib/rango/boot.rb +36 -25
- data/lib/rango/bundling/dependency.rb +3 -7
- data/lib/rango/bundling/strategies/copy.rb +2 -2
- data/lib/rango/bundling/strategies/gem.rb +2 -2
- data/lib/rango/bundling/strategies/git.rb +2 -2
- data/lib/rango/bundling/strategies/hg.rb +2 -2
- data/lib/rango/bundling/strategy.rb +2 -2
- data/lib/rango/cli/generator.rb +119 -12
- data/lib/rango/cli/templater.rb +89 -0
- data/lib/rango/contrib/pagination.rb +5 -3
- data/lib/rango/contrib/pagination/adapters/datamapper.rb +2 -0
- data/lib/rango/contrib/pagination/helpers.rb +3 -1
- data/lib/rango/contrib/pagination/page.rb +2 -0
- data/lib/rango/contrib/pagination/strategies.rb +2 -2
- data/lib/rango/contrib/syndication.rb +1 -1
- data/lib/rango/controller.rb +151 -0
- data/lib/rango/exceptions.rb +90 -241
- data/lib/rango/ext.rb +85 -14
- data/lib/rango/ext/array.rb +20 -0
- data/lib/rango/ext/attribute.rb +14 -2
- data/lib/rango/ext/colored_string.rb +1 -1
- data/lib/rango/ext/enumerable.rb +30 -0
- data/lib/rango/ext/file.rb +84 -0
- data/lib/rango/ext/hash.rb +127 -1
- data/lib/rango/ext/kernel.rb +41 -24
- data/lib/rango/ext/object.rb +56 -0
- data/lib/rango/ext/object_space.rb +10 -5
- data/lib/rango/ext/os.rb +89 -0
- data/lib/rango/ext/platform.rb +27 -0
- data/lib/rango/ext/random.rb +11 -8
- data/lib/rango/ext/string.rb +17 -3
- data/lib/rango/ext/thor.rb +12 -12
- data/lib/rango/ext/time.rb +15 -0
- data/lib/rango/ext/time_dsl.rb +2 -3
- data/lib/rango/ext/unique_array.rb +16 -0
- data/lib/rango/forms/form.rb +2 -2
- data/lib/rango/generic_views.rb +18 -0
- data/lib/rango/helpers.rb +2 -2
- data/lib/rango/helpers/assets.rb +2 -2
- data/lib/rango/helpers/general.rb +13 -2
- data/lib/rango/helpers/merb-helpers.rb +2 -39
- data/lib/rango/helpers/merb-helpers/core_ext.rb +1 -1
- data/lib/rango/helpers/merb-helpers/core_ext/numeric.rb +2 -2
- data/lib/rango/helpers/merb-helpers/date_time_formatting.rb +1 -1
- data/lib/rango/helpers/merb-helpers/date_time_helpers.rb +2 -2
- data/lib/rango/helpers/merb-helpers/form/builder.rb +1 -1
- data/lib/rango/helpers/merb-helpers/form/helpers.rb +1 -1
- data/lib/rango/helpers/merb-helpers/form_helpers.rb +4 -4
- data/lib/rango/helpers/merb-helpers/tag_helpers.rb +2 -2
- data/lib/rango/helpers/merb-helpers/text_helpers.rb +1 -1
- data/lib/rango/helpers/syntax.rb +2 -2
- data/lib/rango/loggers/fireruby.rb +1 -1
- data/lib/rango/loggers/logger.rb +2 -2
- data/lib/rango/mixins/application.rb +2 -2
- data/lib/rango/mixins/chainable.rb +68 -0
- data/lib/rango/mixins/configurable.rb +2 -2
- data/lib/rango/mixins/controller.rb +4 -3
- data/lib/rango/mixins/hookable.rb +32 -0
- data/lib/rango/mixins/import.rb +2 -2
- data/lib/rango/mixins/mini.rb +29 -0
- data/lib/rango/mixins/strategy.rb +2 -2
- data/lib/rango/orm/adapters/datamapper/fields.rb +1 -1
- data/lib/rango/orm/adapters/datamapper/setup.rb +1 -1
- data/lib/rango/orm/adapters/datamapper/support.rb +3 -3
- data/lib/rango/orm/adapters/datamapper/tasks.thor +1 -1
- data/lib/rango/orm/adapters/datamapper/types/unicode_string.rb +1 -1
- data/{spec/rango/auth/more/mixins/salted_user/sq_salted_user_spec.rb → lib/rango/orm/adapters/sequel/tasks.thor} +0 -0
- data/lib/rango/project.rb +2 -2
- data/lib/rango/rack/middlewares/basic.rb +46 -0
- data/lib/rango/rack/middlewares/email_obfuscator.rb +25 -0
- data/lib/rango/rack/middlewares/encoding.rb +2 -2
- data/lib/rango/rack/middlewares/static.rb +41 -37
- data/lib/rango/rack/request.rb +2 -2
- data/lib/rango/rango.rb +34 -21
- data/lib/rango/router.rb +17 -0
- data/lib/rango/router/adapters/rack_router.rb +8 -0
- data/lib/rango/router/adapters/urlmap.rb +10 -0
- data/lib/rango/router/adapters/usher.rb +8 -0
- data/lib/rango/router/specification.txt +1 -6
- data/lib/rango/settings.rb +2 -2
- data/lib/rango/settings/erubis.rb +2 -2
- data/lib/rango/settings/framework.rb +7 -3
- data/lib/rango/settings/haml.rb +3 -3
- data/lib/rango/settings/template.rb +17 -0
- data/lib/rango/support/cucumber/steps/given_steps.rb +1 -1
- data/lib/rango/support/cucumber/steps/then_steps.rb +1 -1
- data/lib/rango/support/cucumber/steps/when_steps.rb +1 -1
- data/lib/rango/tasks/bundle.thor +1 -1
- data/lib/rango/tasks/stats.thor +1 -0
- data/lib/rango/templates/adapter.rb +3 -3
- data/lib/rango/templates/adapters/erb.rb +23 -5
- data/lib/rango/templates/adapters/erubis.rb +41 -36
- data/lib/rango/templates/adapters/haml.rb +13 -4
- data/lib/rango/templates/template.rb +3 -1
- data/rango.gemspec +32 -24
- data/rango.gemspec.erb +43 -0
- data/spec/factories.rb +3 -2
- data/spec/rango/boot_spec.rb +2 -6
- data/spec/rango/{auth/more/mixins/salted_user_spec.rb → bundling/strategies/copy_spec.rb} +0 -0
- data/spec/rango/{auth/more/spec/merb-auth-more_spec_spec.rb → bundling/strategies/gem_spec.rb} +0 -0
- data/spec/rango/{auth/more/spec/mixins/redirect_back_spec_spec.rb → bundling/strategies/git_spec.rb} +0 -0
- data/spec/rango/{auth/more/spec/mixins/salted_user_spec_spec.rb → bundling/strategies/hg_spec.rb} +0 -0
- data/spec/rango/{auth/more/spec/spec_helper_spec.rb → bundling/strategy_spec.rb} +0 -0
- data/spec/rango/{auth/more/strategies/abstract_password_spec.rb → cli/generator_spec.rb} +0 -0
- data/spec/rango/{auth/more/strategies/basic/basic_auth_spec.rb → cli/templater_spec.rb} +0 -0
- data/spec/rango/{auth/more/strategies/basic/openid_spec.rb → contrib/pagination/adapters/datamapper_spec.rb} +0 -0
- data/spec/rango/contrib/pagination/page_spec.rb +2 -2
- data/spec/rango/controller_spec.rb +24 -0
- data/spec/rango/exceptions_spec.rb +74 -0
- data/spec/rango/ext/array_spec.rb +19 -0
- data/spec/rango/ext/attribute_spec.rb +37 -0
- data/spec/rango/ext/colored_string_spec.rb +9 -0
- data/spec/rango/ext/enumerable_spec.rb +52 -0
- data/spec/rango/ext/file_spec.rb +78 -0
- data/spec/rango/ext/hash_spec.rb +91 -0
- data/spec/rango/ext/kernel_spec.rb +9 -0
- data/spec/rango/ext/object_space_spec.rb +17 -0
- data/spec/rango/ext/object_spec.rb +57 -0
- data/spec/rango/ext/os_spec.rb +121 -0
- data/spec/rango/ext/random_spec.rb +31 -0
- data/spec/rango/ext/string_spec.rb +23 -0
- data/spec/rango/ext/thor_spec.rb +26 -0
- data/spec/rango/ext/time_dsl_spec.rb +86 -0
- data/spec/rango/ext/time_spec.rb +11 -0
- data/spec/rango/ext_spec.rb +182 -0
- data/spec/rango/{auth/more/strategies/basic/password_form_spec.rb → generic_views_spec.rb} +0 -0
- data/spec/rango/helpers/merb-helpers/core_ext_spec.rb +21 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/application.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/bound_check_box.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/bound_file_field.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/bound_hidden_field.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/bound_option_tag.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/bound_password_field.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/bound_radio_button.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/bound_radio_group.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/bound_select.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/bound_text_area.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/bound_text_field.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/button.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/check_box.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/custom_builder.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/delete_button.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/exceptions.rb +25 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/field_set.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/fields_for.rb +3 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/file_field.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/foo.rb +23 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/form.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/form_for.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/hacker.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/hidden_field.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/label.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/numeric_ext.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/option_tag.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/password_field.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/radio_button.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/radio_group.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/relative_date.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/relative_date_span.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/select.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/specs_controller.rb +13 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/submit.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/tag_helper.rb +23 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/text_area.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/controllers/text_field.rb +4 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/helpers/global_helpers.rb +7 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/models/fake_dm_model.rb +27 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/models/first_generic_fake_model.rb +59 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/models/hacker_generic_model.rb +7 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/models/second_generic_fake_model.rb +20 -0
- data/spec/rango/helpers/merb-helpers/fixture/app/models/third_generic_fake_model.rb +5 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_check_box_specs/basic.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_check_box_specs/basic_unchecked.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_check_box_specs/checked.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_check_box_specs/errors.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_check_box_specs/label.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_check_box_specs/on_and_off.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_check_box_specs/raise_value_error.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_file_field_specs/additional_attributes.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_file_field_specs/takes_string.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_file_field_specs/with_label.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_hidden_field_specs/basic.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_hidden_field_specs/errors.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_hidden_field_specs/hidden_error.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_hidden_field_specs/label.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_option_tag_specs/grouped.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_option_tag_specs/nested.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_option_tag_specs/text_and_value.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_password_field_specs/attributes.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_password_field_specs/basic.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_password_field_specs/label.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_radio_button_specs/basic.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_radio_group_specs/basic.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_radio_group_specs/hashes.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_radio_group_specs/mixed.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_radio_group_specs/override_id.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_select_specs/basic.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_select_specs/blank.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_select_specs/label.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_select_specs/multiple.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_select_specs/prompt.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_select_specs/with_options.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_select_specs/with_options_with_blank.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_text_area_specs/basic.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_text_area_specs/label.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/bound_text_field_specs/basic.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/button_specs/button_with_label.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/button_specs/button_with_values.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/button_specs/disabled_button.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/check_box_specs/basic.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/check_box_specs/boolean.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/check_box_specs/disabled.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/check_box_specs/label.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/check_box_specs/on_off_is_boolean.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/check_box_specs/raise_unless_both_on_and_off.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/check_box_specs/raises_error_if_not_boolean.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/check_box_specs/raises_error_if_on_off_and_boolean_false.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/check_box_specs/simple.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/check_box_specs/to_string.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/check_box_specs/unchecked.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/custom_builder_specs/everything.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/delete_button_specs/delete_with_explicit_url.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/delete_button_specs/delete_with_extra_params.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/delete_button_specs/delete_with_label.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/delete_button_specs/simple_delete.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/exeptions/client_error.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/exeptions/internal_server_error.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/exeptions/not_acceptable.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/exeptions/not_found.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/fields_for_specs/basic.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/fields_for_specs/midstream.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/fields_for_specs/nil.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/fieldset_specs/legend.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/file_field_specs/disabled.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/file_field_specs/makes_multipart.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/file_field_specs/with_label.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/file_field_specs/with_values.html.erb +0 -0
- data/spec/rango/{auth/more_spec.rb → helpers/merb-helpers/fixture/app/views/foo/bar.html.erb} +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/form_for_specs/basic.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/form_specs/create_a_form.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/form_specs/create_a_multipart_form.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/form_specs/fake_delete_if_set.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/form_specs/fake_put_if_set.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/form_specs/get_if_set.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/form_specs/post_by_default.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/form_specs/resourceful_form.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/hacker/file_field.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/hacker/hidden_field.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/hacker/option_tag.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/hacker/password_field.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/hacker/radio_button.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/hacker/radio_group.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/hacker/text_area.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/hacker/text_field.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/hidden_field_specs/basic.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/hidden_field_specs/disabled.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/hidden_field_specs/label.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/label_specs/basic.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/label_specs/basic_with_attributes.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/label_specs/basic_with_class.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/layout/application.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/numeric_ext_specs/minutes_to_hours.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/numeric_ext_specs/to_concurrency_default.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/numeric_ext_specs/two_digits.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/option_tag_specs/array.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/option_tag_specs/clean.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/option_tag_specs/collection.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/option_tag_specs/multiple_selects.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/option_tag_specs/no_extra_attributes.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/option_tag_specs/optgroups.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/option_tag_specs/selected.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/option_tag_specs/with_blank.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/option_tag_specs/with_prompt.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/password_field_specs/basic.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/password_field_specs/disabled.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/radio_button_specs/basic.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/radio_button_specs/checked.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/radio_button_specs/disabled.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/radio_button_specs/label.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/radio_button_specs/unchecked.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/radio_group_specs/attributes.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/radio_group_specs/basic.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/radio_group_specs/checked.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/radio_group_specs/hash.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/radio_group_specs/specific_attributes.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/relative_date_span_specs/date_span_on_same_day.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/relative_date_span_specs/date_span_on_same_day_on_different_year.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/relative_date_specs/relative_date_with_year.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/relative_date_specs/relative_date_without_year.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/relative_date_specs/relative_today.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/relative_date_specs/relative_tomorrow.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/relative_date_specs/relative_yesterday.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/select_specs/basic.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/select_specs/blank.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/select_specs/multiple.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/select_specs/selected.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/submit_specs/disabled_submit.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/submit_specs/submit_with_label.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/submit_specs/submit_with_values.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/tag_helper/nested_tags.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/tag_helper/tag_with_attributes.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/tag_helper/tag_with_content.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/tag_helper/tag_with_content_in_the_block.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/text_area_specs/basic.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/text_area_specs/disabled.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/text_area_specs/label.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/text_area_specs/nil.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/text_field_specs/basic.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/text_field_specs/class.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/text_field_specs/disabled.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/text_field_specs/label.html.erb +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/app/views/text_field_specs/symbolized_name.html.erb +0 -0
- data/spec/rango/helpers/merb-helpers/fixture/config/environments/development.rb +8 -0
- data/spec/rango/helpers/merb-helpers/fixture/config/environments/production.rb +7 -0
- data/spec/rango/helpers/merb-helpers/fixture/config/environments/test.rb +8 -0
- data/spec/rango/helpers/merb-helpers/fixture/config/init.rb +48 -0
- data/spec/rango/helpers/merb-helpers/fixture/config/rack.rb +13 -0
- data/spec/rango/helpers/merb-helpers/fixture/config/router.rb +40 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/public/images/merb.jpg +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/public/merb.fcgi +0 -0
- data/{lib/rango/helpers/spec → spec/rango/helpers/merb-helpers}/fixture/public/stylesheets/master.css +0 -0
- data/spec/rango/helpers/merb-helpers/merb_helpers_config_spec.rb +84 -0
- data/spec/rango/helpers/merb-helpers/merb_helpers_date_time_spec.rb +268 -0
- data/spec/rango/helpers/merb-helpers/merb_helpers_form_spec.rb +1370 -0
- data/spec/rango/helpers/merb-helpers/merb_helpers_tag_helper_spec.rb +42 -0
- data/spec/rango/helpers/merb-helpers/merb_helpers_text_spec.rb +69 -0
- data/spec/rango/helpers/merb-helpers/numeric_extlib_spec.rb +137 -0
- data/spec/rango/helpers/merb-helpers/ordinalize_spec.rb +53 -0
- data/spec/rango/{auth/slice/exceptions_spec.rb → mixins/configurable_spec.rb} +0 -0
- data/spec/rango/{auth/slice/merb-auth-slice-password_spec.rb → mixins/mini_spec.rb} +0 -0
- data/spec/rango/{auth/slice/sessions_spec.rb → mixins/strategy_spec.rb} +0 -0
- data/spec/rango/orm/adapters/{dm → datamapper}/fields_spec.rb +0 -0
- data/spec/rango/orm/adapters/{dm → datamapper}/setup_spec.rb +0 -0
- data/spec/rango/{auth/slice/spec_helper_spec.rb → orm/adapters/datamapper/support_spec.rb} +0 -0
- data/spec/rango/{auth/slice/xsessions_spec.rb → orm/adapters/datamapper/types/unicode_string_spec.rb} +0 -0
- data/spec/rango/project_spec.rb +3 -3
- data/spec/rango/{bundling/strategies_spec.rb → rack/middlewares/basic_spec.rb} +0 -0
- data/spec/rango/{cli/project_spec.rb → rack/middlewares/email_obfuscator_spec.rb} +0 -0
- data/spec/rango/{contrib/pagination/adapters/dm_spec.rb → rack/middlewares/encoding_spec.rb} +0 -0
- data/spec/rango/rack/request_spec.rb +3 -3
- data/spec/rango/{ext/core_ext_spec.rb → router/adapters/basic_spec.rb} +0 -0
- data/spec/rango/{ext/path_spec.rb → router/adapters/rack-router_spec.rb} +0 -0
- data/spec/rango/{rack → router}/dispatcher_spec.rb +0 -0
- data/spec/rango/{generators_spec.rb → settings/erubis_spec.rb} +0 -0
- data/spec/rango/{generic_views/static_spec.rb → settings/framework_spec.rb} +0 -0
- data/spec/rango/{helpers/merb-helpers/core_ext/numeric_spec.rb → settings/haml_spec.rb} +0 -0
- data/spec/rango/{helpers/merb-helpers/date_time_formatting_spec.rb → settings/template_spec.rb} +0 -0
- data/spec/rango/settings_spec.rb +3 -3
- data/spec/rango/{helpers/merb-helpers/date_time_helpers_spec.rb → support/cucumber/steps/given_steps_spec.rb} +0 -0
- data/spec/rango/{helpers/merb-helpers/form/builder_spec.rb → support/cucumber/steps/then_steps_spec.rb} +0 -0
- data/spec/rango/{helpers/merb-helpers/form/helpers_spec.rb → support/cucumber/steps/when_steps_spec.rb} +0 -0
- data/spec/rango/templates/adapters/erubis_spec.rb +117 -0
- data/spec/rango/templates/adapters/template_helpers.rb +38 -0
- data/spec/rango_spec.rb +4 -3
- data/spec/spec_helper.rb +27 -5
- data/spec/{rango/helpers/merb-helpers/form_helpers_spec.rb → stubs/acqs/dir/lib.rb} +0 -0
- data/spec/{rango/helpers/merb-helpers/tag_helpers_spec.rb → stubs/acqs/dir/lib_spec.rb} +0 -0
- data/spec/{rango/helpers/merb-helpers/text_helpers_spec.rb → stubs/acqs/lib.rb} +0 -0
- data/spec/{rango/helpers/merb-helpers/time_dsl_spec.rb → stubs/acqs/tasks.thor} +0 -0
- data/spec/stubs/flat.rb +1 -0
- data/spec/stubs/templates/basic.html.erb +6 -0
- data/spec/stubs/templates/capture.html.erb +11 -0
- data/spec/stubs/templates/context.html.erb +6 -0
- data/spec/stubs/templates/exception.html.erb +1 -0
- data/stubs/app/content/init.rb.rbt +2 -2
- data/stubs/app/content/models.rb.rbt +2 -2
- data/stubs/app/content/views.rb.rbt +3 -3
- data/stubs/app/metadata.yml +4 -0
- data/stubs/app/preprocess.rb +7 -6
- data/stubs/bigapp/metadata.yml +4 -0
- data/stubs/bigapp/preprocess.rb +2 -2
- data/stubs/features/content/env.rb +1 -1
- data/stubs/features/metadata.yml +4 -0
- data/stubs/flat/content/flat.ru.rbt +5 -4
- data/stubs/flat/metadata.yml +4 -0
- data/stubs/flat/preprocess.rb +2 -2
- data/stubs/project/content/Thorfile +1 -1
- data/stubs/project/content/config.ru +4 -5
- data/stubs/project/content/init.rb +11 -1
- data/stubs/project/content/settings.rb.rbt +1 -1
- data/stubs/project/content/settings_local.rb.rbt +1 -1
- data/stubs/project/metadata.yml +4 -0
- data/stubs/project/postprocess.rb +8 -0
- data/{spec/rango/mvc/strategies_spec.rb → stubs/pupu/content/CHANGELOG} +0 -0
- data/stubs/pupu/content/LICENSE.rbt +20 -0
- data/stubs/pupu/content/README.textile.rbt +7 -0
- data/stubs/pupu/content/TODO +5 -0
- data/stubs/pupu/content/Thorfile.rbt +21 -0
- data/stubs/pupu/content/config.rb.rbt +14 -0
- data/{spec/rango/rack/middlewares/emails_spec.rb → stubs/pupu/content/initializers/%name%.css} +0 -0
- data/stubs/pupu/content/initializers/%name%.js +3 -0
- data/{spec/rango/router/route_spec.rb → stubs/pupu/content/javascripts/%name%.js} +0 -0
- data/{spec/rango/router/router_spec.rb → stubs/pupu/content/stylesheets/%name%.css} +0 -0
- data/stubs/pupu/metadata.yml +4 -0
- data/stubs/pupu/preprocess.rb +4 -2
- data/stubs/stub/content/metadata.yml +3 -1
- data/stubs/stub/content/postprocess.rb +2 -4
- data/stubs/stub/content/preprocess.rb +2 -2
- data/stubs/stub/metadata.yml +4 -0
- data/tasks/benchmark.thor +15 -0
- data/tasks/hooks.thor +2 -2
- data/tasks/package.thor +20 -7
- data/tasks/release.thor +14 -12
- data/tasks/repair.thor +14 -25
- data/tasks/spec.thor +2 -1
- data/tasks/stats.thor +19 -3
- data/tasks/yardoc.thor +1 -1
- data/templates.txt +39 -0
- metadata +1059 -362
- data/lib/rango/cli/project.rb +0 -87
- data/lib/rango/cli/simple_template.rb +0 -47
- data/lib/rango/ext/class.rb +0 -99
- data/lib/rango/ext/core_ext.rb +0 -52
- data/lib/rango/ext/path.rb +0 -222
- data/lib/rango/ext/try.rb +0 -30
- data/lib/rango/generic_views/static.rb +0 -7
- data/lib/rango/helpers/merb-helpers/time_dsl.rb +0 -61
- data/lib/rango/helpers/spec/core_ext_spec.rb +0 -21
- data/lib/rango/helpers/spec/fixture/app/controllers/application.rb +0 -4
- data/lib/rango/helpers/spec/fixture/app/controllers/bound_check_box.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/bound_file_field.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/bound_hidden_field.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/bound_option_tag.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/bound_password_field.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/bound_radio_button.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/bound_radio_group.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/bound_select.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/bound_text_area.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/bound_text_field.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/button.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/check_box.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/custom_builder.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/delete_button.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/exceptions.rb +0 -25
- data/lib/rango/helpers/spec/fixture/app/controllers/field_set.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/fields_for.rb +0 -3
- data/lib/rango/helpers/spec/fixture/app/controllers/file_field.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/foo.rb +0 -23
- data/lib/rango/helpers/spec/fixture/app/controllers/form.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/form_for.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/hacker.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/hidden_field.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/label.rb +0 -3
- data/lib/rango/helpers/spec/fixture/app/controllers/numeric_ext.rb +0 -3
- data/lib/rango/helpers/spec/fixture/app/controllers/option_tag.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/password_field.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/radio_button.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/radio_group.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/relative_date.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/relative_date_span.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/select.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/specs_controller.rb +0 -11
- data/lib/rango/helpers/spec/fixture/app/controllers/submit.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/tag_helper.rb +0 -21
- data/lib/rango/helpers/spec/fixture/app/controllers/text_area.rb +0 -2
- data/lib/rango/helpers/spec/fixture/app/controllers/text_field.rb +0 -3
- data/lib/rango/helpers/spec/fixture/app/helpers/global_helpers.rb +0 -8
- data/lib/rango/helpers/spec/fixture/app/models/fake_dm_model.rb +0 -25
- data/lib/rango/helpers/spec/fixture/app/models/first_generic_fake_model.rb +0 -57
- data/lib/rango/helpers/spec/fixture/app/models/hacker_generic_model.rb +0 -5
- data/lib/rango/helpers/spec/fixture/app/models/second_generic_fake_model.rb +0 -18
- data/lib/rango/helpers/spec/fixture/app/models/third_generic_fake_model.rb +0 -3
- data/lib/rango/helpers/spec/fixture/config/environments/development.rb +0 -6
- data/lib/rango/helpers/spec/fixture/config/environments/production.rb +0 -5
- data/lib/rango/helpers/spec/fixture/config/environments/test.rb +0 -6
- data/lib/rango/helpers/spec/fixture/config/init.rb +0 -46
- data/lib/rango/helpers/spec/fixture/config/rack.rb +0 -11
- data/lib/rango/helpers/spec/fixture/config/router.rb +0 -38
- data/lib/rango/helpers/spec/merb_helpers_config_spec.rb +0 -84
- data/lib/rango/helpers/spec/merb_helpers_date_time_spec.rb +0 -270
- data/lib/rango/helpers/spec/merb_helpers_form_spec.rb +0 -1371
- data/lib/rango/helpers/spec/merb_helpers_tag_helper_spec.rb +0 -42
- data/lib/rango/helpers/spec/merb_helpers_text_spec.rb +0 -69
- data/lib/rango/helpers/spec/numeric_extlib_spec.rb +0 -137
- data/lib/rango/helpers/spec/ordinalize_spec.rb +0 -53
- data/lib/rango/helpers/spec/spec_helper.rb +0 -160
- data/lib/rango/helpers/spec/time_dsl_spec.rb +0 -45
- data/lib/rango/mvc/controller.rb +0 -139
- data/lib/rango/mvc/strategies.rb +0 -6
- data/lib/rango/rack/dispatcher.rb +0 -61
- data/lib/rango/rack/middlewares/emails.rb +0 -7
- data/lib/rango/router/adapters/basic.rb +0 -21
- data/lib/rango/router/adapters/rack-router.rb +0 -18
- data/lib/rango/router/dispatcher.rb +0 -29
- data/spec/rango/mvc/controller_spec.rb +0 -24
- data/spec/rango/router/strategies_spec.rb +0 -0
- data/spec/rango/spec/cucumber_spec.rb +0 -0
- data/spec/rango/spec/rspec_spec.rb +0 -0
- data/stubs/project/preprocess.rb +0 -5
- data/stubs/stub/preprocess.rb +0 -5
- data/templates/errors/404.html.erb +0 -52
- data/templates/errors/406.html.erb +0 -1
- data/templates/errors/500.html.erb +0 -48
@@ -0,0 +1,46 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
# This file is specifically setup for use with the merb-auth plugin.
|
4
|
+
# This file should be used to setup and configure your authentication stack.
|
5
|
+
# It is not required and may safely be deleted.
|
6
|
+
#
|
7
|
+
# To change the parameter names for the password or login field you may set either of these two options
|
8
|
+
#
|
9
|
+
# Merb::Plugins.config[:"merb-auth"][:login_param] = :email
|
10
|
+
# Merb::Plugins.config[:"merb-auth"][:password_param] = :my_password_field_name
|
11
|
+
|
12
|
+
begin
|
13
|
+
# Sets the default class ofr authentication. This is primarily used for
|
14
|
+
# Plugins and the default strategies
|
15
|
+
Merb::Authentication.user_class = User
|
16
|
+
|
17
|
+
|
18
|
+
# Mixin the salted user mixin
|
19
|
+
require 'merb-auth-more/mixins/salted_user'
|
20
|
+
Merb::Authentication.user_class.class_eval{ include Merb::Authentication::Mixins::SaltedUser }
|
21
|
+
|
22
|
+
# Setup the session serialization
|
23
|
+
class Merb::Authentication
|
24
|
+
|
25
|
+
def fetch_user(session_user_id)
|
26
|
+
Merb::Authentication.user_class.get(session_user_id)
|
27
|
+
end
|
28
|
+
|
29
|
+
def store_user(user)
|
30
|
+
user.nil? ? user : user.id
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
rescue
|
35
|
+
Merb.logger.error <<-TEXT
|
36
|
+
|
37
|
+
You need to setup some kind of user class with merb-auth.
|
38
|
+
Merb::Authentication.user_class = User
|
39
|
+
|
40
|
+
If you want to fully customize your authentication you should use merb-core directly.
|
41
|
+
|
42
|
+
See merb/merb-auth/setup.rb and strategies.rb to customize your setup
|
43
|
+
|
44
|
+
TEXT
|
45
|
+
end
|
46
|
+
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
# This file is specifically for you to define your strategies
|
4
|
+
#
|
5
|
+
# You should declare you strategies directly and/or use
|
6
|
+
# Merb::Authentication.activate!(:label_of_strategy)
|
7
|
+
#
|
8
|
+
# To load and set the order of strategy processing
|
9
|
+
|
10
|
+
Merb::Slices::config[:"merb-auth-slice-password"][:no_default_strategies] = true
|
11
|
+
|
12
|
+
Merb::Authentication.activate!(:default_password_form)
|
13
|
+
Merb::Authentication.activate!(:default_basic_auth)
|
@@ -0,0 +1,11 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
module Merb
|
4
|
+
module Session
|
5
|
+
|
6
|
+
# The Merb::Session module gets mixed into Merb::SessionContainer to allow
|
7
|
+
# app-level functionality; it will be included and methods will be available
|
8
|
+
# through request.session as instance methods.
|
9
|
+
|
10
|
+
end
|
11
|
+
end
|
Binary file
|
Binary file
|
@@ -0,0 +1 @@
|
|
1
|
+
// Common JavaScript code across your application goes here.
|
@@ -0,0 +1,19 @@
|
|
1
|
+
/*
|
2
|
+
* jQuery JavaScript Library v1.3
|
3
|
+
* http://jquery.com/
|
4
|
+
*
|
5
|
+
* Copyright (c) 2009 John Resig
|
6
|
+
* Dual licensed under the MIT and GPL licenses.
|
7
|
+
* http://docs.jquery.com/License
|
8
|
+
*
|
9
|
+
* Date: 2009-01-13 12:50:31 -0500 (Tue, 13 Jan 2009)
|
10
|
+
* Revision: 6104
|
11
|
+
*/
|
12
|
+
(function(){var l=this,g,x=l.jQuery,o=l.$,n=l.jQuery=l.$=function(D,E){return new n.fn.init(D,E)},C=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;n.fn=n.prototype={init:function(D,G){D=D||document;if(D.nodeType){this[0]=D;this.length=1;this.context=D;return this}if(typeof D==="string"){var F=C.exec(D);if(F&&(F[1]||!G)){if(F[1]){D=n.clean([F[1]],G)}else{var H=document.getElementById(F[3]);if(H){if(H.id!=F[3]){return n().find(D)}var E=n(H);E.context=document;E.selector=D;return E}D=[]}}else{return n(G).find(D)}}else{if(n.isFunction(D)){return n(document).ready(D)}}if(D.selector&&D.context){this.selector=D.selector;this.context=D.context}return this.setArray(n.makeArray(D))},selector:"",jquery:"1.3",size:function(){return this.length},get:function(D){return D===g?n.makeArray(this):this[D]},pushStack:function(E,G,D){var F=n(E);F.prevObject=this;F.context=this.context;if(G==="find"){F.selector=this.selector+(this.selector?" ":"")+D}else{if(G){F.selector=this.selector+"."+G+"("+D+")"}}return F},setArray:function(D){this.length=0;Array.prototype.push.apply(this,D);return this},each:function(E,D){return n.each(this,E,D)},index:function(D){return n.inArray(D&&D.jquery?D[0]:D,this)},attr:function(E,G,F){var D=E;if(typeof E==="string"){if(G===g){return this[0]&&n[F||"attr"](this[0],E)}else{D={};D[E]=G}}return this.each(function(H){for(E in D){n.attr(F?this.style:this,E,n.prop(this,D[E],F,H,E))}})},css:function(D,E){if((D=="width"||D=="height")&&parseFloat(E)<0){E=g}return this.attr(D,E,"curCSS")},text:function(E){if(typeof E!=="object"&&E!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(E))}var D="";n.each(E||this,function(){n.each(this.childNodes,function(){if(this.nodeType!=8){D+=this.nodeType!=1?this.nodeValue:n.fn.text([this])}})});return D},wrapAll:function(D){if(this[0]){var E=n(D,this[0].ownerDocument).clone();if(this[0].parentNode){E.insertBefore(this[0])}E.map(function(){var F=this;while(F.firstChild){F=F.firstChild}return F}).append(this)}return this},wrapInner:function(D){return this.each(function(){n(this).contents().wrapAll(D)})},wrap:function(D){return this.each(function(){n(this).wrapAll(D)})},append:function(){return this.domManip(arguments,true,function(D){if(this.nodeType==1){this.appendChild(D)}})},prepend:function(){return this.domManip(arguments,true,function(D){if(this.nodeType==1){this.insertBefore(D,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(D){this.parentNode.insertBefore(D,this)})},after:function(){return this.domManip(arguments,false,function(D){this.parentNode.insertBefore(D,this.nextSibling)})},end:function(){return this.prevObject||n([])},push:[].push,find:function(D){if(this.length===1&&!/,/.test(D)){var F=this.pushStack([],"find",D);F.length=0;n.find(D,this[0],F);return F}else{var E=n.map(this,function(G){return n.find(D,G)});return this.pushStack(/[^+>] [^+>]/.test(D)?n.unique(E):E,"find",D)}},clone:function(E){var D=this.map(function(){if(!n.support.noCloneEvent&&!n.isXMLDoc(this)){var H=this.cloneNode(true),G=document.createElement("div");G.appendChild(H);return n.clean([G.innerHTML])[0]}else{return this.cloneNode(true)}});var F=D.find("*").andSelf().each(function(){if(this[h]!==g){this[h]=null}});if(E===true){this.find("*").andSelf().each(function(H){if(this.nodeType==3){return}var G=n.data(this,"events");for(var J in G){for(var I in G[J]){n.event.add(F[H],J,G[J][I],G[J][I].data)}}})}return D},filter:function(D){return this.pushStack(n.isFunction(D)&&n.grep(this,function(F,E){return D.call(F,E)})||n.multiFilter(D,n.grep(this,function(E){return E.nodeType===1})),"filter",D)},closest:function(D){var E=n.expr.match.POS.test(D)?n(D):null;return this.map(function(){var F=this;while(F&&F.ownerDocument){if(E?E.index(F)>-1:n(F).is(D)){return F}F=F.parentNode}})},not:function(D){if(typeof D==="string"){if(f.test(D)){return this.pushStack(n.multiFilter(D,this,true),"not",D)}else{D=n.multiFilter(D,this)}}var E=D.length&&D[D.length-1]!==g&&!D.nodeType;return this.filter(function(){return E?n.inArray(this,D)<0:this!=D})},add:function(D){return this.pushStack(n.unique(n.merge(this.get(),typeof D==="string"?n(D):n.makeArray(D))))},is:function(D){return !!D&&n.multiFilter(D,this).length>0},hasClass:function(D){return !!D&&this.is("."+D)},val:function(J){if(J===g){var D=this[0];if(D){if(n.nodeName(D,"option")){return(D.attributes.value||{}).specified?D.value:D.text}if(n.nodeName(D,"select")){var H=D.selectedIndex,K=[],L=D.options,G=D.type=="select-one";if(H<0){return null}for(var E=G?H:0,I=G?H+1:L.length;E<I;E++){var F=L[E];if(F.selected){J=n(F).val();if(G){return J}K.push(J)}}return K}return(D.value||"").replace(/\r/g,"")}return g}if(typeof J==="number"){J+=""}return this.each(function(){if(this.nodeType!=1){return}if(n.isArray(J)&&/radio|checkbox/.test(this.type)){this.checked=(n.inArray(this.value,J)>=0||n.inArray(this.name,J)>=0)}else{if(n.nodeName(this,"select")){var M=n.makeArray(J);n("option",this).each(function(){this.selected=(n.inArray(this.value,M)>=0||n.inArray(this.text,M)>=0)});if(!M.length){this.selectedIndex=-1}}else{this.value=J}}})},html:function(D){return D===g?(this[0]?this[0].innerHTML:null):this.empty().append(D)},replaceWith:function(D){return this.after(D).remove()},eq:function(D){return this.slice(D,+D+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(D){return this.pushStack(n.map(this,function(F,E){return D.call(F,E,F)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=n.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild,D=this.length>1?I.cloneNode(true):I;if(H){for(var G=0,E=this.length;G<E;G++){L.call(K(this[G],H),G>0?D.cloneNode(true):I)}}if(F){n.each(F,y)}}return this;function K(N,O){return M&&n.nodeName(N,"table")&&n.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};n.fn.init.prototype=n.fn;function y(D,E){if(E.src){n.ajax({url:E.src,async:false,dataType:"script"})}else{n.globalEval(E.text||E.textContent||E.innerHTML||"")}if(E.parentNode){E.parentNode.removeChild(E)}}function e(){return +new Date}n.extend=n.fn.extend=function(){var I=arguments[0]||{},G=1,H=arguments.length,D=false,F;if(typeof I==="boolean"){D=I;I=arguments[1]||{};G=2}if(typeof I!=="object"&&!n.isFunction(I)){I={}}if(H==G){I=this;--G}for(;G<H;G++){if((F=arguments[G])!=null){for(var E in F){var J=I[E],K=F[E];if(I===K){continue}if(D&&K&&typeof K==="object"&&!K.nodeType){I[E]=n.extend(D,J||(K.length!=null?[]:{}),K)}else{if(K!==g){I[E]=K}}}}}return I};var b=/z-?index|font-?weight|opacity|zoom|line-?height/i,p=document.defaultView||{},r=Object.prototype.toString;n.extend({noConflict:function(D){l.$=o;if(D){l.jQuery=x}return n},isFunction:function(D){return r.call(D)==="[object Function]"},isArray:function(D){return r.call(D)==="[object Array]"},isXMLDoc:function(D){return D.documentElement&&!D.body||D.tagName&&D.ownerDocument&&!D.ownerDocument.body},globalEval:function(F){F=n.trim(F);if(F){var E=document.getElementsByTagName("head")[0]||document.documentElement,D=document.createElement("script");D.type="text/javascript";if(n.support.scriptEval){D.appendChild(document.createTextNode(F))}else{D.text=F}E.insertBefore(D,E.firstChild);E.removeChild(D)}},nodeName:function(E,D){return E.nodeName&&E.nodeName.toUpperCase()==D.toUpperCase()},each:function(F,J,E){var D,G=0,H=F.length;if(E){if(H===g){for(D in F){if(J.apply(F[D],E)===false){break}}}else{for(;G<H;){if(J.apply(F[G++],E)===false){break}}}}else{if(H===g){for(D in F){if(J.call(F[D],D,F[D])===false){break}}}else{for(var I=F[0];G<H&&J.call(I,G,I)!==false;I=F[++G]){}}}return F},prop:function(G,H,F,E,D){if(n.isFunction(H)){H=H.call(G,E)}return typeof H==="number"&&F=="curCSS"&&!b.test(D)?H+"px":H},className:{add:function(D,E){n.each((E||"").split(/\s+/),function(F,G){if(D.nodeType==1&&!n.className.has(D.className,G)){D.className+=(D.className?" ":"")+G}})},remove:function(D,E){if(D.nodeType==1){D.className=E!==g?n.grep(D.className.split(/\s+/),function(F){return !n.className.has(E,F)}).join(" "):""}},has:function(E,D){return n.inArray(D,(E.className||E).toString().split(/\s+/))>-1}},swap:function(G,F,H){var D={};for(var E in F){D[E]=G.style[E];G.style[E]=F[E]}H.call(G);for(var E in F){G.style[E]=D[E]}},css:function(F,D,H){if(D=="width"||D=="height"){var J,E={position:"absolute",visibility:"hidden",display:"block"},I=D=="width"?["Left","Right"]:["Top","Bottom"];function G(){J=D=="width"?F.offsetWidth:F.offsetHeight;var L=0,K=0;n.each(I,function(){L+=parseFloat(n.curCSS(F,"padding"+this,true))||0;K+=parseFloat(n.curCSS(F,"border"+this+"Width",true))||0});J-=Math.round(L+K)}if(n(F).is(":visible")){G()}else{n.swap(F,E,G)}return Math.max(0,J)}return n.curCSS(F,D,H)},curCSS:function(H,E,F){var K,D=H.style;if(E=="opacity"&&!n.support.opacity){K=n.attr(D,"opacity");return K==""?"1":K}if(E.match(/float/i)){E=v}if(!F&&D&&D[E]){K=D[E]}else{if(p.getComputedStyle){if(E.match(/float/i)){E="float"}E=E.replace(/([A-Z])/g,"-$1").toLowerCase();var L=p.getComputedStyle(H,null);if(L){K=L.getPropertyValue(E)}if(E=="opacity"&&K==""){K="1"}}else{if(H.currentStyle){var I=E.replace(/\-(\w)/g,function(M,N){return N.toUpperCase()});K=H.currentStyle[E]||H.currentStyle[I];if(!/^\d+(px)?$/i.test(K)&&/^\d/.test(K)){var G=D.left,J=H.runtimeStyle.left;H.runtimeStyle.left=H.currentStyle.left;D.left=K||0;K=D.pixelLeft+"px";D.left=G;H.runtimeStyle.left=J}}}}return K},clean:function(E,J,H){J=J||document;if(typeof J.createElement==="undefined"){J=J.ownerDocument||J[0]&&J[0].ownerDocument||document}if(!H&&E.length===1&&typeof E[0]==="string"){var G=/^<(\w+)\s*\/?>$/.exec(E[0]);if(G){return[J.createElement(G[1])]}}var F=[],D=[],K=J.createElement("div");n.each(E,function(O,Q){if(typeof Q==="number"){Q+=""}if(!Q){return}if(typeof Q==="string"){Q=Q.replace(/(<(\w+)[^>]*?)\/>/g,function(S,T,R){return R.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?S:T+"></"+R+">"});var N=n.trim(Q).toLowerCase();var P=!N.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!N.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||N.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!N.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!N.indexOf("<td")||!N.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!N.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!n.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];K.innerHTML=P[1]+Q+P[2];while(P[0]--){K=K.lastChild}if(!n.support.tbody){var M=!N.indexOf("<table")&&N.indexOf("<tbody")<0?K.firstChild&&K.firstChild.childNodes:P[1]=="<table>"&&N.indexOf("<tbody")<0?K.childNodes:[];for(var L=M.length-1;L>=0;--L){if(n.nodeName(M[L],"tbody")&&!M[L].childNodes.length){M[L].parentNode.removeChild(M[L])}}}if(!n.support.leadingWhitespace&&/^\s/.test(Q)){K.insertBefore(J.createTextNode(Q.match(/^\s*/)[0]),K.firstChild)}Q=n.makeArray(K.childNodes)}if(Q.nodeType){F.push(Q)}else{F=n.merge(F,Q)}});if(H){for(var I=0;F[I];I++){if(n.nodeName(F[I],"script")&&(!F[I].type||F[I].type.toLowerCase()==="text/javascript")){D.push(F[I].parentNode?F[I].parentNode.removeChild(F[I]):F[I])}else{if(F[I].nodeType===1){F.splice.apply(F,[I+1,0].concat(n.makeArray(F[I].getElementsByTagName("script"))))}H.appendChild(F[I])}}return D}return F},attr:function(I,F,J){if(!I||I.nodeType==3||I.nodeType==8){return g}var G=!n.isXMLDoc(I),K=J!==g;F=G&&n.props[F]||F;if(I.tagName){var E=/href|src|style/.test(F);if(F=="selected"&&I.parentNode){I.parentNode.selectedIndex}if(F in I&&G&&!E){if(K){if(F=="type"&&n.nodeName(I,"input")&&I.parentNode){throw"type property can't be changed"}I[F]=J}if(n.nodeName(I,"form")&&I.getAttributeNode(F)){return I.getAttributeNode(F).nodeValue}if(F=="tabIndex"){var H=I.getAttributeNode("tabIndex");return H&&H.specified?H.value:I.nodeName.match(/^(a|area|button|input|object|select|textarea)$/i)?0:g}return I[F]}if(!n.support.style&&G&&F=="style"){return n.attr(I.style,"cssText",J)}if(K){I.setAttribute(F,""+J)}var D=!n.support.hrefNormalized&&G&&E?I.getAttribute(F,2):I.getAttribute(F);return D===null?g:D}if(!n.support.opacity&&F=="opacity"){if(K){I.zoom=1;I.filter=(I.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(J)+""=="NaN"?"":"alpha(opacity="+J*100+")")}return I.filter&&I.filter.indexOf("opacity=")>=0?(parseFloat(I.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}F=F.replace(/-([a-z])/ig,function(L,M){return M.toUpperCase()});if(K){I[F]=J}return I[F]},trim:function(D){return(D||"").replace(/^\s+|\s+$/g,"")},makeArray:function(F){var D=[];if(F!=null){var E=F.length;if(E==null||typeof F==="string"||n.isFunction(F)||F.setInterval){D[0]=F}else{while(E){D[--E]=F[E]}}}return D},inArray:function(F,G){for(var D=0,E=G.length;D<E;D++){if(G[D]===F){return D}}return -1},merge:function(G,D){var E=0,F,H=G.length;if(!n.support.getAll){while((F=D[E++])!=null){if(F.nodeType!=8){G[H++]=F}}}else{while((F=D[E++])!=null){G[H++]=F}}return G},unique:function(J){var E=[],D={};try{for(var F=0,G=J.length;F<G;F++){var I=n.data(J[F]);if(!D[I]){D[I]=true;E.push(J[F])}}}catch(H){E=J}return E},grep:function(E,I,D){var F=[];for(var G=0,H=E.length;G<H;G++){if(!D!=!I(E[G],G)){F.push(E[G])}}return F},map:function(D,I){var E=[];for(var F=0,G=D.length;F<G;F++){var H=I(D[F],F);if(H!=null){E[E.length]=H}}return E.concat.apply([],E)}});var B=navigator.userAgent.toLowerCase();n.browser={version:(B.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1],safari:/webkit/.test(B),opera:/opera/.test(B),msie:/msie/.test(B)&&!/opera/.test(B),mozilla:/mozilla/.test(B)&&!/(compatible|webkit)/.test(B)};n.each({parent:function(D){return D.parentNode},parents:function(D){return n.dir(D,"parentNode")},next:function(D){return n.nth(D,2,"nextSibling")},prev:function(D){return n.nth(D,2,"previousSibling")},nextAll:function(D){return n.dir(D,"nextSibling")},prevAll:function(D){return n.dir(D,"previousSibling")},siblings:function(D){return n.sibling(D.parentNode.firstChild,D)},children:function(D){return n.sibling(D.firstChild)},contents:function(D){return n.nodeName(D,"iframe")?D.contentDocument||D.contentWindow.document:n.makeArray(D.childNodes)}},function(D,E){n.fn[D]=function(F){var G=n.map(this,E);if(F&&typeof F=="string"){G=n.multiFilter(F,G)}return this.pushStack(n.unique(G),D,F)}});n.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(D,E){n.fn[D]=function(){var F=arguments;return this.each(function(){for(var G=0,H=F.length;G<H;G++){n(F[G])[E](this)}})}});n.each({removeAttr:function(D){n.attr(this,D,"");if(this.nodeType==1){this.removeAttribute(D)}},addClass:function(D){n.className.add(this,D)},removeClass:function(D){n.className.remove(this,D)},toggleClass:function(E,D){if(typeof D!=="boolean"){D=!n.className.has(this,E)}n.className[D?"add":"remove"](this,E)},remove:function(D){if(!D||n.filter(D,[this]).length){n("*",this).add([this]).each(function(){n.event.remove(this);n.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){n(">*",this).remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(D,E){n.fn[D]=function(){return this.each(E,arguments)}});function j(D,E){return D[0]&&parseInt(n.curCSS(D[0],E,true),10)||0}var h="jQuery"+e(),u=0,z={};n.extend({cache:{},data:function(E,D,F){E=E==l?z:E;var G=E[h];if(!G){G=E[h]=++u}if(D&&!n.cache[G]){n.cache[G]={}}if(F!==g){n.cache[G][D]=F}return D?n.cache[G][D]:G},removeData:function(E,D){E=E==l?z:E;var G=E[h];if(D){if(n.cache[G]){delete n.cache[G][D];D="";for(D in n.cache[G]){break}if(!D){n.removeData(E)}}}else{try{delete E[h]}catch(F){if(E.removeAttribute){E.removeAttribute(h)}}delete n.cache[G]}},queue:function(E,D,G){if(E){D=(D||"fx")+"queue";var F=n.data(E,D);if(!F||n.isArray(G)){F=n.data(E,D,n.makeArray(G))}else{if(G){F.push(G)}}}return F},dequeue:function(G,F){var D=n.queue(G,F),E=D.shift();if(!F||F==="fx"){E=D[0]}if(E!==g){E.call(G)}}});n.fn.extend({data:function(D,F){var G=D.split(".");G[1]=G[1]?"."+G[1]:"";if(F===g){var E=this.triggerHandler("getData"+G[1]+"!",[G[0]]);if(E===g&&this.length){E=n.data(this[0],D)}return E===g&&G[1]?this.data(G[0]):E}else{return this.trigger("setData"+G[1]+"!",[G[0],F]).each(function(){n.data(this,D,F)})}},removeData:function(D){return this.each(function(){n.removeData(this,D)})},queue:function(D,E){if(typeof D!=="string"){E=D;D="fx"}if(E===g){return n.queue(this[0],D)}return this.each(function(){var F=n.queue(this,D,E);if(D=="fx"&&F.length==1){F[0].call(this)}})},dequeue:function(D){return this.each(function(){n.dequeue(this,D)})}});
|
13
|
+
/*
|
14
|
+
* Sizzle CSS Selector Engine - v0.9.1
|
15
|
+
* Copyright 2009, The Dojo Foundation
|
16
|
+
* Released under the MIT, BSD, and GPL Licenses.
|
17
|
+
* More information: http://sizzlejs.com/
|
18
|
+
*/
|
19
|
+
(function(){var N=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|[^[\]]+)+\]|\\.|[^ >+~,(\[]+)+|[>+~])(\s*,\s*)?/g,I=0,F=Object.prototype.toString;var E=function(ae,S,aa,V){aa=aa||[];S=S||document;if(S.nodeType!==1&&S.nodeType!==9){return[]}if(!ae||typeof ae!=="string"){return aa}var ab=[],ac,Y,ah,ag,Z,R,Q=true;N.lastIndex=0;while((ac=N.exec(ae))!==null){ab.push(ac[1]);if(ac[2]){R=RegExp.rightContext;break}}if(ab.length>1&&G.match.POS.exec(ae)){if(ab.length===2&&G.relative[ab[0]]){var U="",X;while((X=G.match.POS.exec(ae))){U+=X[0];ae=ae.replace(G.match.POS,"")}Y=E.filter(U,E(/\s$/.test(ae)?ae+"*":ae,S))}else{Y=G.relative[ab[0]]?[S]:E(ab.shift(),S);while(ab.length){var P=[];ae=ab.shift();if(G.relative[ae]){ae+=ab.shift()}for(var af=0,ad=Y.length;af<ad;af++){E(ae,Y[af],P)}Y=P}}}else{var ai=V?{expr:ab.pop(),set:D(V)}:E.find(ab.pop(),ab.length===1&&S.parentNode?S.parentNode:S);Y=E.filter(ai.expr,ai.set);if(ab.length>0){ah=D(Y)}else{Q=false}while(ab.length){var T=ab.pop(),W=T;if(!G.relative[T]){T=""}else{W=ab.pop()}if(W==null){W=S}G.relative[T](ah,W,M(S))}}if(!ah){ah=Y}if(!ah){throw"Syntax error, unrecognized expression: "+(T||ae)}if(F.call(ah)==="[object Array]"){if(!Q){aa.push.apply(aa,ah)}else{if(S.nodeType===1){for(var af=0;ah[af]!=null;af++){if(ah[af]&&(ah[af]===true||ah[af].nodeType===1&&H(S,ah[af]))){aa.push(Y[af])}}}else{for(var af=0;ah[af]!=null;af++){if(ah[af]&&ah[af].nodeType===1){aa.push(Y[af])}}}}}else{D(ah,aa)}if(R){E(R,S,aa,V)}return aa};E.matches=function(P,Q){return E(P,null,null,Q)};E.find=function(V,S){var W,Q;if(!V){return[]}for(var R=0,P=G.order.length;R<P;R++){var T=G.order[R],Q;if((Q=G.match[T].exec(V))){var U=RegExp.leftContext;if(U.substr(U.length-1)!=="\\"){Q[1]=(Q[1]||"").replace(/\\/g,"");W=G.find[T](Q,S);if(W!=null){V=V.replace(G.match[T],"");break}}}}if(!W){W=S.getElementsByTagName("*")}return{set:W,expr:V}};E.filter=function(S,ac,ad,T){var Q=S,Y=[],ah=ac,V,ab;while(S&&ac.length){for(var U in G.filter){if((V=G.match[U].exec(S))!=null){var Z=G.filter[U],R=null,X=0,aa,ag;ab=false;if(ah==Y){Y=[]}if(G.preFilter[U]){V=G.preFilter[U](V,ah,ad,Y,T);if(!V){ab=aa=true}else{if(V===true){continue}else{if(V[0]===true){R=[];var W=null,af;for(var ae=0;(af=ah[ae])!==g;ae++){if(af&&W!==af){R.push(af);W=af}}}}}}if(V){for(var ae=0;(ag=ah[ae])!==g;ae++){if(ag){if(R&&ag!=R[X]){X++}aa=Z(ag,V,X,R);var P=T^!!aa;if(ad&&aa!=null){if(P){ab=true}else{ah[ae]=false}}else{if(P){Y.push(ag);ab=true}}}}}if(aa!==g){if(!ad){ah=Y}S=S.replace(G.match[U],"");if(!ab){return[]}break}}}S=S.replace(/\s*,\s*/,"");if(S==Q){if(ab==null){throw"Syntax error, unrecognized expression: "+S}else{break}}Q=S}return ah};var G=E.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(P){return P.getAttribute("href")}},relative:{"+":function(T,Q){for(var R=0,P=T.length;R<P;R++){var S=T[R];if(S){var U=S.previousSibling;while(U&&U.nodeType!==1){U=U.previousSibling}T[R]=typeof Q==="string"?U||false:U===Q}}if(typeof Q==="string"){E.filter(Q,T,true)}},">":function(U,Q,V){if(typeof Q==="string"&&!/\W/.test(Q)){Q=V?Q:Q.toUpperCase();for(var R=0,P=U.length;R<P;R++){var T=U[R];if(T){var S=T.parentNode;U[R]=S.nodeName===Q?S:false}}}else{for(var R=0,P=U.length;R<P;R++){var T=U[R];if(T){U[R]=typeof Q==="string"?T.parentNode:T.parentNode===Q}}if(typeof Q==="string"){E.filter(Q,U,true)}}},"":function(S,Q,U){var R="done"+(I++),P=O;if(!Q.match(/\W/)){var T=Q=U?Q:Q.toUpperCase();P=L}P("parentNode",Q,R,S,T,U)},"~":function(S,Q,U){var R="done"+(I++),P=O;if(typeof Q==="string"&&!Q.match(/\W/)){var T=Q=U?Q:Q.toUpperCase();P=L}P("previousSibling",Q,R,S,T,U)}},find:{ID:function(Q,R){if(R.getElementById){var P=R.getElementById(Q[1]);return P?[P]:[]}},NAME:function(P,Q){return Q.getElementsByName?Q.getElementsByName(P[1]):null},TAG:function(P,Q){return Q.getElementsByTagName(P[1])}},preFilter:{CLASS:function(S,Q,R,P,U){S=" "+S[1].replace(/\\/g,"")+" ";for(var T=0;Q[T];T++){if(U^(" "+Q[T].className+" ").indexOf(S)>=0){if(!R){P.push(Q[T])}}else{if(R){Q[T]=false}}}return false},ID:function(P){return P[1].replace(/\\/g,"")},TAG:function(Q,P){for(var R=0;!P[R];R++){}return M(P[R])?Q[1]:Q[1].toUpperCase()},CHILD:function(P){if(P[1]=="nth"){var Q=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(P[2]=="even"&&"2n"||P[2]=="odd"&&"2n+1"||!/\D/.test(P[2])&&"0n+"+P[2]||P[2]);P[2]=(Q[1]+(Q[2]||1))-0;P[3]=Q[3]-0}P[0]="done"+(I++);return P},ATTR:function(Q){var P=Q[1];if(G.attrMap[P]){Q[1]=G.attrMap[P]}if(Q[2]==="~="){Q[4]=" "+Q[4]+" "}return Q},PSEUDO:function(T,Q,R,P,U){if(T[1]==="not"){if(T[3].match(N).length>1){T[3]=E(T[3],null,null,Q)}else{var S=E.filter(T[3],Q,R,true^U);if(!R){P.push.apply(P,S)}return false}}else{if(G.match.POS.test(T[0])){return true}}return T},POS:function(P){P.unshift(true);return P}},filters:{enabled:function(P){return P.disabled===false&&P.type!=="hidden"},disabled:function(P){return P.disabled===true},checked:function(P){return P.checked===true},selected:function(P){P.parentNode.selectedIndex;return P.selected===true},parent:function(P){return !!P.firstChild},empty:function(P){return !P.firstChild},has:function(R,Q,P){return !!E(P[3],R).length},header:function(P){return/h\d/i.test(P.nodeName)},text:function(P){return"text"===P.type},radio:function(P){return"radio"===P.type},checkbox:function(P){return"checkbox"===P.type},file:function(P){return"file"===P.type},password:function(P){return"password"===P.type},submit:function(P){return"submit"===P.type},image:function(P){return"image"===P.type},reset:function(P){return"reset"===P.type},button:function(P){return"button"===P.type||P.nodeName.toUpperCase()==="BUTTON"},input:function(P){return/input|select|textarea|button/i.test(P.nodeName)}},setFilters:{first:function(Q,P){return P===0},last:function(R,Q,P,S){return Q===S.length-1},even:function(Q,P){return P%2===0},odd:function(Q,P){return P%2===1},lt:function(R,Q,P){return Q<P[3]-0},gt:function(R,Q,P){return Q>P[3]-0},nth:function(R,Q,P){return P[3]-0==Q},eq:function(R,Q,P){return P[3]-0==Q}},filter:{CHILD:function(P,S){var V=S[1],W=P.parentNode;var U="child"+W.childNodes.length;if(W&&(!W[U]||!P.nodeIndex)){var T=1;for(var Q=W.firstChild;Q;Q=Q.nextSibling){if(Q.nodeType==1){Q.nodeIndex=T++}}W[U]=T-1}if(V=="first"){return P.nodeIndex==1}else{if(V=="last"){return P.nodeIndex==W[U]}else{if(V=="only"){return W[U]==1}else{if(V=="nth"){var Y=false,R=S[2],X=S[3];if(R==1&&X==0){return true}if(R==0){if(P.nodeIndex==X){Y=true}}else{if((P.nodeIndex-X)%R==0&&(P.nodeIndex-X)/R>=0){Y=true}}return Y}}}}},PSEUDO:function(V,R,S,W){var Q=R[1],T=G.filters[Q];if(T){return T(V,S,R,W)}else{if(Q==="contains"){return(V.textContent||V.innerText||"").indexOf(R[3])>=0}else{if(Q==="not"){var U=R[3];for(var S=0,P=U.length;S<P;S++){if(U[S]===V){return false}}return true}}}},ID:function(Q,P){return Q.nodeType===1&&Q.getAttribute("id")===P},TAG:function(Q,P){return(P==="*"&&Q.nodeType===1)||Q.nodeName===P},CLASS:function(Q,P){return P.test(Q.className)},ATTR:function(T,R){var P=G.attrHandle[R[1]]?G.attrHandle[R[1]](T):T[R[1]]||T.getAttribute(R[1]),U=P+"",S=R[2],Q=R[4];return P==null?false:S==="="?U===Q:S==="*="?U.indexOf(Q)>=0:S==="~="?(" "+U+" ").indexOf(Q)>=0:!R[4]?P:S==="!="?U!=Q:S==="^="?U.indexOf(Q)===0:S==="$="?U.substr(U.length-Q.length)===Q:S==="|="?U===Q||U.substr(0,Q.length+1)===Q+"-":false},POS:function(T,Q,R,U){var P=Q[2],S=G.setFilters[P];if(S){return S(T,R,Q,U)}}}};for(var K in G.match){G.match[K]=RegExp(G.match[K].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var D=function(Q,P){Q=Array.prototype.slice.call(Q);if(P){P.push.apply(P,Q);return P}return Q};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(J){D=function(T,S){var Q=S||[];if(F.call(T)==="[object Array]"){Array.prototype.push.apply(Q,T)}else{if(typeof T.length==="number"){for(var R=0,P=T.length;R<P;R++){Q.push(T[R])}}else{for(var R=0;T[R];R++){Q.push(T[R])}}}return Q}}(function(){var Q=document.createElement("form"),R="script"+(new Date).getTime();Q.innerHTML="<input name='"+R+"'/>";var P=document.documentElement;P.insertBefore(Q,P.firstChild);if(!!document.getElementById(R)){G.find.ID=function(T,U){if(U.getElementById){var S=U.getElementById(T[1]);return S?S.id===T[1]||S.getAttributeNode&&S.getAttributeNode("id").nodeValue===T[1]?[S]:g:[]}};G.filter.ID=function(U,S){var T=U.getAttributeNode&&U.getAttributeNode("id");return U.nodeType===1&&T&&T.nodeValue===S}}P.removeChild(Q)})();(function(){var P=document.createElement("div");P.appendChild(document.createComment(""));if(P.getElementsByTagName("*").length>0){G.find.TAG=function(Q,U){var T=U.getElementsByTagName(Q[1]);if(Q[1]==="*"){var S=[];for(var R=0;T[R];R++){if(T[R].nodeType===1){S.push(T[R])}}T=S}return T}}P.innerHTML="<a href='#'></a>";if(P.firstChild.getAttribute("href")!=="#"){G.attrHandle.href=function(Q){return Q.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var P=E;E=function(T,S,Q,R){S=S||document;if(!R&&S.nodeType===9){try{return D(S.querySelectorAll(T),Q)}catch(U){}}return P(T,S,Q,R)};E.find=P.find;E.filter=P.filter;E.selectors=P.selectors;E.matches=P.matches})()}if(document.documentElement.getElementsByClassName){G.order.splice(1,0,"CLASS");G.find.CLASS=function(P,Q){return Q.getElementsByClassName(P[1])}}function L(Q,W,V,Z,X,Y){for(var T=0,R=Z.length;T<R;T++){var P=Z[T];if(P){P=P[Q];var U=false;while(P&&P.nodeType){var S=P[V];if(S){U=Z[S];break}if(P.nodeType===1&&!Y){P[V]=T}if(P.nodeName===W){U=P;break}P=P[Q]}Z[T]=U}}}function O(Q,V,U,Y,W,X){for(var S=0,R=Y.length;S<R;S++){var P=Y[S];if(P){P=P[Q];var T=false;while(P&&P.nodeType){if(P[U]){T=Y[P[U]];break}if(P.nodeType===1){if(!X){P[U]=S}if(typeof V!=="string"){if(P===V){T=true;break}}else{if(E.filter(V,[P]).length>0){T=P;break}}}P=P[Q]}Y[S]=T}}}var H=document.compareDocumentPosition?function(Q,P){return Q.compareDocumentPosition(P)&16}:function(Q,P){return Q!==P&&(Q.contains?Q.contains(P):true)};var M=function(P){return P.documentElement&&!P.body||P.tagName&&P.ownerDocument&&!P.ownerDocument.body};n.find=E;n.filter=E.filter;n.expr=E.selectors;n.expr[":"]=n.expr.filters;E.selectors.filters.hidden=function(P){return"hidden"===P.type||n.css(P,"display")==="none"||n.css(P,"visibility")==="hidden"};E.selectors.filters.visible=function(P){return"hidden"!==P.type&&n.css(P,"display")!=="none"&&n.css(P,"visibility")!=="hidden"};E.selectors.filters.animated=function(P){return n.grep(n.timers,function(Q){return P===Q.elem}).length};n.multiFilter=function(R,P,Q){if(Q){R=":not("+R+")"}return E.matches(R,P)};n.dir=function(R,Q){var P=[],S=R[Q];while(S&&S!=document){if(S.nodeType==1){P.push(S)}S=S[Q]}return P};n.nth=function(T,P,R,S){P=P||1;var Q=0;for(;T;T=T[R]){if(T.nodeType==1&&++Q==P){break}}return T};n.sibling=function(R,Q){var P=[];for(;R;R=R.nextSibling){if(R.nodeType==1&&R!=Q){P.push(R)}}return P};return;l.Sizzle=E})();n.event={add:function(H,E,G,J){if(H.nodeType==3||H.nodeType==8){return}if(H.setInterval&&H!=l){H=l}if(!G.guid){G.guid=this.guid++}if(J!==g){var F=G;G=this.proxy(F);G.data=J}var D=n.data(H,"events")||n.data(H,"events",{}),I=n.data(H,"handle")||n.data(H,"handle",function(){return typeof n!=="undefined"&&!n.event.triggered?n.event.handle.apply(arguments.callee.elem,arguments):g});I.elem=H;n.each(E.split(/\s+/),function(L,M){var N=M.split(".");M=N.shift();G.type=N.slice().sort().join(".");var K=D[M];if(n.event.specialAll[M]){n.event.specialAll[M].setup.call(H,J,N)}if(!K){K=D[M]={};if(!n.event.special[M]||n.event.special[M].setup.call(H,J,N)===false){if(H.addEventListener){H.addEventListener(M,I,false)}else{if(H.attachEvent){H.attachEvent("on"+M,I)}}}}K[G.guid]=G;n.event.global[M]=true});H=null},guid:1,global:{},remove:function(J,G,I){if(J.nodeType==3||J.nodeType==8){return}var F=n.data(J,"events"),E,D;if(F){if(G===g||(typeof G==="string"&&G.charAt(0)==".")){for(var H in F){this.remove(J,H+(G||""))}}else{if(G.type){I=G.handler;G=G.type}n.each(G.split(/\s+/),function(L,N){var P=N.split(".");N=P.shift();var M=RegExp("(^|\\.)"+P.slice().sort().join(".*\\.")+"(\\.|$)");if(F[N]){if(I){delete F[N][I.guid]}else{for(var O in F[N]){if(M.test(F[N][O].type)){delete F[N][O]}}}if(n.event.specialAll[N]){n.event.specialAll[N].teardown.call(J,P)}for(E in F[N]){break}if(!E){if(!n.event.special[N]||n.event.special[N].teardown.call(J,P)===false){if(J.removeEventListener){J.removeEventListener(N,n.data(J,"handle"),false)}else{if(J.detachEvent){J.detachEvent("on"+N,n.data(J,"handle"))}}}E=null;delete F[N]}}})}for(E in F){break}if(!E){var K=n.data(J,"handle");if(K){K.elem=null}n.removeData(J,"events");n.removeData(J,"handle")}}},trigger:function(H,J,G,D){var F=H.type||H;if(!D){H=typeof H==="object"?H[h]?H:n.extend(n.Event(F),H):n.Event(F);if(F.indexOf("!")>=0){H.type=F=F.slice(0,-1);H.exclusive=true}if(!G){H.stopPropagation();if(this.global[F]){n.each(n.cache,function(){if(this.events&&this.events[F]){n.event.trigger(H,J,this.handle.elem)}})}}if(!G||G.nodeType==3||G.nodeType==8){return g}H.result=g;H.target=G;J=n.makeArray(J);J.unshift(H)}H.currentTarget=G;var I=n.data(G,"handle");if(I){I.apply(G,J)}if((!G[F]||(n.nodeName(G,"a")&&F=="click"))&&G["on"+F]&&G["on"+F].apply(G,J)===false){H.result=false}if(!D&&G[F]&&!H.isDefaultPrevented()&&!(n.nodeName(G,"a")&&F=="click")){this.triggered=true;try{G[F]()}catch(K){}}this.triggered=false;if(!H.isPropagationStopped()){var E=G.parentNode||G.ownerDocument;if(E){n.event.trigger(H,J,E,true)}}},handle:function(J){var I,D;J=arguments[0]=n.event.fix(J||l.event);var K=J.type.split(".");J.type=K.shift();I=!K.length&&!J.exclusive;var H=RegExp("(^|\\.)"+K.slice().sort().join(".*\\.")+"(\\.|$)");D=(n.data(this,"events")||{})[J.type];for(var F in D){var G=D[F];if(I||H.test(G.type)){J.handler=G;J.data=G.data;var E=G.apply(this,arguments);if(E!==g){J.result=E;if(E===false){J.preventDefault();J.stopPropagation()}}if(J.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(G){if(G[h]){return G}var E=G;G=n.Event(E);for(var F=this.props.length,I;F;){I=this.props[--F];G[I]=E[I]}if(!G.target){G.target=G.srcElement||document}if(G.target.nodeType==3){G.target=G.target.parentNode}if(!G.relatedTarget&&G.fromElement){G.relatedTarget=G.fromElement==G.target?G.toElement:G.fromElement}if(G.pageX==null&&G.clientX!=null){var H=document.documentElement,D=document.body;G.pageX=G.clientX+(H&&H.scrollLeft||D&&D.scrollLeft||0)-(H.clientLeft||0);G.pageY=G.clientY+(H&&H.scrollTop||D&&D.scrollTop||0)-(H.clientTop||0)}if(!G.which&&((G.charCode||G.charCode===0)?G.charCode:G.keyCode)){G.which=G.charCode||G.keyCode}if(!G.metaKey&&G.ctrlKey){G.metaKey=G.ctrlKey}if(!G.which&&G.button){G.which=(G.button&1?1:(G.button&2?3:(G.button&4?2:0)))}return G},proxy:function(E,D){D=D||function(){return E.apply(this,arguments)};D.guid=E.guid=E.guid||D.guid||this.guid++;return D},special:{ready:{setup:A,teardown:function(){}}},specialAll:{live:{setup:function(D,E){n.event.add(this,E[0],c)},teardown:function(F){if(F.length){var D=0,E=RegExp("(^|\\.)"+F[0]+"(\\.|$)");n.each((n.data(this,"events").live||{}),function(){if(E.test(this.type)){D++}});if(D<1){n.event.remove(this,F[0],c)}}}}}};n.Event=function(D){if(!this.preventDefault){return new n.Event(D)}if(D&&D.type){this.originalEvent=D;this.type=D.type;this.timeStamp=D.timeStamp}else{this.type=D}if(!this.timeStamp){this.timeStamp=e()}this[h]=true};function k(){return false}function t(){return true}n.Event.prototype={preventDefault:function(){this.isDefaultPrevented=t;var D=this.originalEvent;if(!D){return}if(D.preventDefault){D.preventDefault()}D.returnValue=false},stopPropagation:function(){this.isPropagationStopped=t;var D=this.originalEvent;if(!D){return}if(D.stopPropagation){D.stopPropagation()}D.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=t;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(E){var D=E.relatedTarget;while(D&&D!=this){try{D=D.parentNode}catch(F){D=this}}if(D!=this){E.type=E.data;n.event.handle.apply(this,arguments)}};n.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(E,D){n.event.special[D]={setup:function(){n.event.add(this,E,a,D)},teardown:function(){n.event.remove(this,E,a)}}});n.fn.extend({bind:function(E,F,D){return E=="unload"?this.one(E,F,D):this.each(function(){n.event.add(this,E,D||F,D&&F)})},one:function(F,G,E){var D=n.event.proxy(E||G,function(H){n(this).unbind(H,D);return(E||G).apply(this,arguments)});return this.each(function(){n.event.add(this,F,D,E&&G)})},unbind:function(E,D){return this.each(function(){n.event.remove(this,E,D)})},trigger:function(D,E){return this.each(function(){n.event.trigger(D,E,this)})},triggerHandler:function(D,F){if(this[0]){var E=n.Event(D);E.preventDefault();E.stopPropagation();n.event.trigger(E,F,this[0]);return E.result}},toggle:function(F){var D=arguments,E=1;while(E<D.length){n.event.proxy(F,D[E++])}return this.click(n.event.proxy(F,function(G){this.lastToggle=(this.lastToggle||0)%E;G.preventDefault();return D[this.lastToggle++].apply(this,arguments)||false}))},hover:function(D,E){return this.mouseenter(D).mouseleave(E)},ready:function(D){A();if(n.isReady){D.call(document,n)}else{n.readyList.push(D)}return this},live:function(F,E){var D=n.event.proxy(E);D.guid+=this.selector+F;n(document).bind(i(F,this.selector),this.selector,D);return this},die:function(E,D){n(document).unbind(i(E,this.selector),D?{guid:D.guid+this.selector+E}:null);return this}});function c(G){var D=RegExp("(^|\\.)"+G.type+"(\\.|$)"),F=true,E=[];n.each(n.data(this,"events").live||[],function(H,I){if(D.test(I.type)){var J=n(G.target).closest(I.data)[0];if(J){E.push({elem:J,fn:I})}}});n.each(E,function(){if(!G.isImmediatePropagationStopped()&&this.fn.call(this.elem,G,this.fn.data)===false){F=false}});return F}function i(E,D){return["live",E,D.replace(/\./g,"`").replace(/ /g,"|")].join(".")}n.extend({isReady:false,readyList:[],ready:function(){if(!n.isReady){n.isReady=true;if(n.readyList){n.each(n.readyList,function(){this.call(document,n)});n.readyList=null}n(document).triggerHandler("ready")}}});var w=false;function A(){if(w){return}w=true;if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);n.ready()},false)}else{if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);n.ready()}});if(document.documentElement.doScroll&&!l.frameElement){(function(){if(n.isReady){return}try{document.documentElement.doScroll("left")}catch(D){setTimeout(arguments.callee,0);return}n.ready()})()}}}n.event.add(l,"load",n.ready)}n.each(("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,error").split(","),function(E,D){n.fn[D]=function(F){return F?this.bind(D,F):this.trigger(D)}});n(l).bind("unload",function(){for(var D in n.cache){if(D!=1&&n.cache[D].handle){n.event.remove(n.cache[D].handle.elem)}}});(function(){n.support={};var E=document.documentElement,F=document.createElement("script"),J=document.createElement("div"),I="script"+(new Date).getTime();J.style.display="none";J.innerHTML=' <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';var G=J.getElementsByTagName("*"),D=J.getElementsByTagName("a")[0];if(!G||!G.length||!D){return}n.support={leadingWhitespace:J.firstChild.nodeType==3,tbody:!J.getElementsByTagName("tbody").length,objectAll:!!J.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!J.getElementsByTagName("link").length,style:/red/.test(D.getAttribute("style")),hrefNormalized:D.getAttribute("href")==="/a",opacity:D.style.opacity==="0.5",cssFloat:!!D.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};F.type="text/javascript";try{F.appendChild(document.createTextNode("window."+I+"=1;"))}catch(H){}E.insertBefore(F,E.firstChild);if(l[I]){n.support.scriptEval=true;delete l[I]}E.removeChild(F);if(J.attachEvent&&J.fireEvent){J.attachEvent("onclick",function(){n.support.noCloneEvent=false;J.detachEvent("onclick",arguments.callee)});J.cloneNode(true).fireEvent("onclick")}n(function(){var K=document.createElement("div");K.style.width="1px";K.style.paddingLeft="1px";document.body.appendChild(K);n.boxModel=n.support.boxModel=K.offsetWidth===2;document.body.removeChild(K)})})();var v=n.support.cssFloat?"cssFloat":"styleFloat";n.props={"for":"htmlFor","class":"className","float":v,cssFloat:v,styleFloat:v,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};n.fn.extend({_load:n.fn.load,load:function(F,I,J){if(typeof F!=="string"){return this._load(F)}var H=F.indexOf(" ");if(H>=0){var D=F.slice(H,F.length);F=F.slice(0,H)}var G="GET";if(I){if(n.isFunction(I)){J=I;I=null}else{if(typeof I==="object"){I=n.param(I);G="POST"}}}var E=this;n.ajax({url:F,type:G,dataType:"html",data:I,complete:function(L,K){if(K=="success"||K=="notmodified"){E.html(D?n("<div/>").append(L.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(D):L.responseText)}if(J){E.each(J,[L.responseText,K,L])}}});return this},serialize:function(){return n.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?n.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password/i.test(this.type))}).map(function(D,E){var F=n(this).val();return F==null?null:n.isArray(F)?n.map(F,function(H,G){return{name:E.name,value:H}}):{name:E.name,value:F}}).get()}});n.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(D,E){n.fn[E]=function(F){return this.bind(E,F)}});var q=e();n.extend({get:function(D,F,G,E){if(n.isFunction(F)){G=F;F=null}return n.ajax({type:"GET",url:D,data:F,success:G,dataType:E})},getScript:function(D,E){return n.get(D,null,E,"script")},getJSON:function(D,E,F){return n.get(D,E,F,"json")},post:function(D,F,G,E){if(n.isFunction(F)){G=F;F={}}return n.ajax({type:"POST",url:D,data:F,success:G,dataType:E})},ajaxSetup:function(D){n.extend(n.ajaxSettings,D)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(L){L=n.extend(true,L,n.extend(true,{},n.ajaxSettings,L));var V,E=/=\?(&|$)/g,Q,U,F=L.type.toUpperCase();if(L.data&&L.processData&&typeof L.data!=="string"){L.data=n.param(L.data)}if(L.dataType=="jsonp"){if(F=="GET"){if(!L.url.match(E)){L.url+=(L.url.match(/\?/)?"&":"?")+(L.jsonp||"callback")+"=?"}}else{if(!L.data||!L.data.match(E)){L.data=(L.data?L.data+"&":"")+(L.jsonp||"callback")+"=?"}}L.dataType="json"}if(L.dataType=="json"&&(L.data&&L.data.match(E)||L.url.match(E))){V="jsonp"+q++;if(L.data){L.data=(L.data+"").replace(E,"="+V+"$1")}L.url=L.url.replace(E,"="+V+"$1");L.dataType="script";l[V]=function(W){U=W;H();K();l[V]=g;try{delete l[V]}catch(X){}if(G){G.removeChild(S)}}}if(L.dataType=="script"&&L.cache==null){L.cache=false}if(L.cache===false&&F=="GET"){var D=e();var T=L.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+D+"$2");L.url=T+((T==L.url)?(L.url.match(/\?/)?"&":"?")+"_="+D:"")}if(L.data&&F=="GET"){L.url+=(L.url.match(/\?/)?"&":"?")+L.data;L.data=null}if(L.global&&!n.active++){n.event.trigger("ajaxStart")}var P=/^(\w+:)?\/\/([^\/?#]+)/.exec(L.url);if(L.dataType=="script"&&F=="GET"&&P&&(P[1]&&P[1]!=location.protocol||P[2]!=location.host)){var G=document.getElementsByTagName("head")[0];var S=document.createElement("script");S.src=L.url;if(L.scriptCharset){S.charset=L.scriptCharset}if(!V){var N=false;S.onload=S.onreadystatechange=function(){if(!N&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){N=true;H();K();G.removeChild(S)}}}G.appendChild(S);return g}var J=false;var I=L.xhr();if(L.username){I.open(F,L.url,L.async,L.username,L.password)}else{I.open(F,L.url,L.async)}try{if(L.data){I.setRequestHeader("Content-Type",L.contentType)}if(L.ifModified){I.setRequestHeader("If-Modified-Since",n.lastModified[L.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}I.setRequestHeader("X-Requested-With","XMLHttpRequest");I.setRequestHeader("Accept",L.dataType&&L.accepts[L.dataType]?L.accepts[L.dataType]+", */*":L.accepts._default)}catch(R){}if(L.beforeSend&&L.beforeSend(I,L)===false){if(L.global&&!--n.active){n.event.trigger("ajaxStop")}I.abort();return false}if(L.global){n.event.trigger("ajaxSend",[I,L])}var M=function(W){if(I.readyState==0){if(O){clearInterval(O);O=null;if(L.global&&!--n.active){n.event.trigger("ajaxStop")}}}else{if(!J&&I&&(I.readyState==4||W=="timeout")){J=true;if(O){clearInterval(O);O=null}Q=W=="timeout"?"timeout":!n.httpSuccess(I)?"error":L.ifModified&&n.httpNotModified(I,L.url)?"notmodified":"success";if(Q=="success"){try{U=n.httpData(I,L.dataType,L)}catch(Y){Q="parsererror"}}if(Q=="success"){var X;try{X=I.getResponseHeader("Last-Modified")}catch(Y){}if(L.ifModified&&X){n.lastModified[L.url]=X}if(!V){H()}}else{n.handleError(L,I,Q)}K();if(L.async){I=null}}}};if(L.async){var O=setInterval(M,13);if(L.timeout>0){setTimeout(function(){if(I){if(!J){M("timeout")}if(I){I.abort()}}},L.timeout)}}try{I.send(L.data)}catch(R){n.handleError(L,I,null,R)}if(!L.async){M()}function H(){if(L.success){L.success(U,Q)}if(L.global){n.event.trigger("ajaxSuccess",[I,L])}}function K(){if(L.complete){L.complete(I,Q)}if(L.global){n.event.trigger("ajaxComplete",[I,L])}if(L.global&&!--n.active){n.event.trigger("ajaxStop")}}return I},handleError:function(E,G,D,F){if(E.error){E.error(G,D,F)}if(E.global){n.event.trigger("ajaxError",[G,E,F])}},active:0,httpSuccess:function(E){try{return !E.status&&location.protocol=="file:"||(E.status>=200&&E.status<300)||E.status==304||E.status==1223}catch(D){}return false},httpNotModified:function(F,D){try{var G=F.getResponseHeader("Last-Modified");return F.status==304||G==n.lastModified[D]}catch(E){}return false},httpData:function(I,G,F){var E=I.getResponseHeader("content-type"),D=G=="xml"||!G&&E&&E.indexOf("xml")>=0,H=D?I.responseXML:I.responseText;if(D&&H.documentElement.tagName=="parsererror"){throw"parsererror"}if(F&&F.dataFilter){H=F.dataFilter(H,G)}if(typeof H==="string"){if(G=="script"){n.globalEval(H)}if(G=="json"){H=l["eval"]("("+H+")")}}return H},param:function(D){var F=[];function G(H,I){F[F.length]=encodeURIComponent(H)+"="+encodeURIComponent(I)}if(n.isArray(D)||D.jquery){n.each(D,function(){G(this.name,this.value)})}else{for(var E in D){if(n.isArray(D[E])){n.each(D[E],function(){G(E,this)})}else{G(E,n.isFunction(D[E])?D[E]():D[E])}}}return F.join("&").replace(/%20/g,"+")}});var m={},d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function s(E,D){var F={};n.each(d.concat.apply([],d.slice(0,D)),function(){F[this]=E});return F}n.fn.extend({show:function(I,K){if(I){return this.animate(s("show",3),I,K)}else{for(var G=0,E=this.length;G<E;G++){var D=n.data(this[G],"olddisplay");this[G].style.display=D||"";if(n.css(this[G],"display")==="none"){var F=this[G].tagName,J;if(m[F]){J=m[F]}else{var H=n("<"+F+" />").appendTo("body");J=H.css("display");if(J==="none"){J="block"}H.remove();m[F]=J}this[G].style.display=n.data(this[G],"olddisplay",J)}}return this}},hide:function(G,H){if(G){return this.animate(s("hide",3),G,H)}else{for(var F=0,E=this.length;F<E;F++){var D=n.data(this[F],"olddisplay");if(!D&&D!=="none"){n.data(this[F],"olddisplay",n.css(this[F],"display"))}this[F].style.display="none"}return this}},_toggle:n.fn.toggle,toggle:function(F,E){var D=typeof F==="boolean";return n.isFunction(F)&&n.isFunction(E)?this._toggle.apply(this,arguments):F==null||D?this.each(function(){var G=D?F:n(this).is(":hidden");n(this)[G?"show":"hide"]()}):this.animate(s("toggle",3),F,E)},fadeTo:function(D,F,E){return this.animate({opacity:F},D,E)},animate:function(H,E,G,F){var D=n.speed(E,G,F);return this[D.queue===false?"each":"queue"](function(){var J=n.extend({},D),L,K=this.nodeType==1&&n(this).is(":hidden"),I=this;for(L in H){if(H[L]=="hide"&&K||H[L]=="show"&&!K){return J.complete.call(this)}if((L=="height"||L=="width")&&this.style){J.display=n.css(this,"display");J.overflow=this.style.overflow}}if(J.overflow!=null){this.style.overflow="hidden"}J.curAnim=n.extend({},H);n.each(H,function(N,R){var Q=new n.fx(I,J,N);if(/toggle|show|hide/.test(R)){Q[R=="toggle"?K?"show":"hide":R](H)}else{var P=R.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),S=Q.cur(true)||0;if(P){var M=parseFloat(P[2]),O=P[3]||"px";if(O!="px"){I.style[N]=(M||1)+O;S=((M||1)/Q.cur(true))*S;I.style[N]=S+O}if(P[1]){M=((P[1]=="-="?-1:1)*M)+S}Q.custom(S,M,O)}else{Q.custom(S,R,"")}}});return true})},stop:function(E,D){var F=n.timers;if(E){this.queue([])}this.each(function(){for(var G=F.length-1;G>=0;G--){if(F[G].elem==this){if(D){F[G](true)}F.splice(G,1)}}});if(!D){this.dequeue()}return this}});n.each({slideDown:s("show",1),slideUp:s("hide",1),slideToggle:s("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(D,E){n.fn[D]=function(F,G){return this.animate(E,F,G)}});n.extend({speed:function(F,G,E){var D=typeof F==="object"?F:{complete:E||!E&&G||n.isFunction(F)&&F,duration:F,easing:E&&G||G&&!n.isFunction(G)&&G};D.duration=n.fx.off?0:typeof D.duration==="number"?D.duration:n.fx.speeds[D.duration]||n.fx.speeds._default;D.old=D.complete;D.complete=function(){if(D.queue!==false){n(this).dequeue()}if(n.isFunction(D.old)){D.old.call(this)}};return D},easing:{linear:function(F,G,D,E){return D+E*F},swing:function(F,G,D,E){return((-Math.cos(F*Math.PI)/2)+0.5)*E+D}},timers:[],timerId:null,fx:function(E,D,F){this.options=D;this.elem=E;this.prop=F;if(!D.orig){D.orig={}}}});n.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(n.fx.step[this.prop]||n.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(E){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var D=parseFloat(n.css(this.elem,this.prop,E));return D&&D>-10000?D:parseFloat(n.curCSS(this.elem,this.prop))||0},custom:function(H,G,F){this.startTime=e();this.start=H;this.end=G;this.unit=F||this.unit||"px";this.now=this.start;this.pos=this.state=0;var D=this;function E(I){return D.step(I)}E.elem=this.elem;n.timers.push(E);if(E()&&n.timerId==null){n.timerId=setInterval(function(){var J=n.timers;for(var I=0;I<J.length;I++){if(!J[I]()){J.splice(I--,1)}}if(!J.length){clearInterval(n.timerId);n.timerId=null}},13)}},show:function(){this.options.orig[this.prop]=n.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());n(this.elem).show()},hide:function(){this.options.orig[this.prop]=n.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(G){var F=e();if(G||F>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var D=true;for(var E in this.options.curAnim){if(this.options.curAnim[E]!==true){D=false}}if(D){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(n.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){n(this.elem).hide()}if(this.options.hide||this.options.show){for(var H in this.options.curAnim){n.attr(this.elem.style,H,this.options.orig[H])}}}if(D){this.options.complete.call(this.elem)}return false}else{var I=F-this.startTime;this.state=I/this.options.duration;this.pos=n.easing[this.options.easing||(n.easing.swing?"swing":"linear")](this.state,I,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};n.extend(n.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(D){n.attr(D.elem.style,"opacity",D.now)},_default:function(D){if(D.elem.style&&D.elem.style[D.prop]!=null){D.elem.style[D.prop]=D.now+D.unit}else{D.elem[D.prop]=D.now}}}});if(document.documentElement.getBoundingClientRect){n.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return n.offset.bodyOffset(this[0])}var F=this[0].getBoundingClientRect(),I=this[0].ownerDocument,E=I.body,D=I.documentElement,K=D.clientTop||E.clientTop||0,J=D.clientLeft||E.clientLeft||0,H=F.top+(self.pageYOffset||n.boxModel&&D.scrollTop||E.scrollTop)-K,G=F.left+(self.pageXOffset||n.boxModel&&D.scrollLeft||E.scrollLeft)-J;return{top:H,left:G}}}else{n.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return n.offset.bodyOffset(this[0])}n.offset.initialized||n.offset.initialize();var I=this[0],F=I.offsetParent,E=I,N=I.ownerDocument,L,G=N.documentElement,J=N.body,K=N.defaultView,D=K.getComputedStyle(I,null),M=I.offsetTop,H=I.offsetLeft;while((I=I.parentNode)&&I!==J&&I!==G){L=K.getComputedStyle(I,null);M-=I.scrollTop,H-=I.scrollLeft;if(I===F){M+=I.offsetTop,H+=I.offsetLeft;if(n.offset.doesNotAddBorder&&!(n.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(I.tagName))){M+=parseInt(L.borderTopWidth,10)||0,H+=parseInt(L.borderLeftWidth,10)||0}E=F,F=I.offsetParent}if(n.offset.subtractsBorderForOverflowNotVisible&&L.overflow!=="visible"){M+=parseInt(L.borderTopWidth,10)||0,H+=parseInt(L.borderLeftWidth,10)||0}D=L}if(D.position==="relative"||D.position==="static"){M+=J.offsetTop,H+=J.offsetLeft}if(D.position==="fixed"){M+=Math.max(G.scrollTop,J.scrollTop),H+=Math.max(G.scrollLeft,J.scrollLeft)}return{top:M,left:H}}}n.offset={initialize:function(){if(this.initialized){return}var K=document.body,E=document.createElement("div"),G,F,M,H,L,D,I=K.style.marginTop,J='<div style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"><div></div></div><table style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"cellpadding="0"cellspacing="0"><tr><td></td></tr></table>';L={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(D in L){E.style[D]=L[D]}E.innerHTML=J;K.insertBefore(E,K.firstChild);G=E.firstChild,F=G.firstChild,H=G.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(F.offsetTop!==5);this.doesAddBorderForTableAndCells=(H.offsetTop===5);G.style.overflow="hidden",G.style.position="relative";this.subtractsBorderForOverflowNotVisible=(F.offsetTop===-5);K.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(K.offsetTop===0);K.style.marginTop=I;K.removeChild(E);this.initialized=true},bodyOffset:function(D){n.offset.initialized||n.offset.initialize();var F=D.offsetTop,E=D.offsetLeft;if(n.offset.doesNotIncludeMarginInBodyOffset){F+=parseInt(n.curCSS(D,"marginTop",true),10)||0,E+=parseInt(n.curCSS(D,"marginLeft",true),10)||0}return{top:F,left:E}}};n.fn.extend({position:function(){var H=0,G=0,E;if(this[0]){var F=this.offsetParent(),I=this.offset(),D=/^body|html$/i.test(F[0].tagName)?{top:0,left:0}:F.offset();I.top-=j(this,"marginTop");I.left-=j(this,"marginLeft");D.top+=j(F,"borderTopWidth");D.left+=j(F,"borderLeftWidth");E={top:I.top-D.top,left:I.left-D.left}}return E},offsetParent:function(){var D=this[0].offsetParent||document.body;while(D&&(!/^body|html$/i.test(D.tagName)&&n.css(D,"position")=="static")){D=D.offsetParent}return n(D)}});n.each(["Left","Top"],function(E,D){var F="scroll"+D;n.fn[F]=function(G){if(!this[0]){return null}return G!==g?this.each(function(){this==l||this==document?l.scrollTo(!E?G:n(l).scrollLeft(),E?G:n(l).scrollTop()):this[F]=G}):this[0]==l||this[0]==document?self[E?"pageYOffset":"pageXOffset"]||n.boxModel&&document.documentElement[F]||document.body[F]:this[0][F]}});n.each(["Height","Width"],function(G,E){var D=G?"Left":"Top",F=G?"Right":"Bottom";n.fn["inner"+E]=function(){return this[E.toLowerCase()]()+j(this,"padding"+D)+j(this,"padding"+F)};n.fn["outer"+E]=function(I){return this["inner"+E]()+j(this,"border"+D+"Width")+j(this,"border"+F+"Width")+(I?j(this,"margin"+D)+j(this,"margin"+F):0)};var H=E.toLowerCase();n.fn[H]=function(I){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+E]||document.body["client"+E]:this[0]==document?Math.max(document.documentElement["client"+E],document.body["scroll"+E],document.documentElement["scroll"+E],document.body["offset"+E],document.documentElement["offset"+E]):I===g?(this.length?n.css(this[0],H):null):this.css(H,typeof I==="string"?I:I+"px")}})})();
|
@@ -0,0 +1,22 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'rubygems'
|
4
|
+
require 'merb-core'
|
5
|
+
|
6
|
+
# this is Merb.root, change this if you have some funky setup.
|
7
|
+
merb_root = File.expand_path(File.dirname(__FILE__) / '../')
|
8
|
+
|
9
|
+
# If the fcgi process runs as apache, make sure
|
10
|
+
# we have an inlinedir set for Rubyinline action-args to work
|
11
|
+
unless ENV["INLINEDIR"] || ENV["HOME"]
|
12
|
+
tmpdir = merb_root / "tmp"
|
13
|
+
unless File.directory?(tmpdir)
|
14
|
+
Dir.mkdir(tmpdir)
|
15
|
+
end
|
16
|
+
ENV["INLINEDIR"] = tmpdir
|
17
|
+
end
|
18
|
+
|
19
|
+
# start merb with the fcgi adapter, add options or change the log dir here
|
20
|
+
Merb.start(:adapter => 'fcgi',
|
21
|
+
:merb_root => merb_root,
|
22
|
+
:log_file => merb_root /'log'/'merb.log')
|
@@ -0,0 +1,119 @@
|
|
1
|
+
body {
|
2
|
+
font-family: Arial, Verdana, sans-serif;
|
3
|
+
font-size: 12px;
|
4
|
+
background-color: #fff;
|
5
|
+
}
|
6
|
+
* {
|
7
|
+
margin: 0px;
|
8
|
+
padding: 0px;
|
9
|
+
text-decoration: none;
|
10
|
+
}
|
11
|
+
html {
|
12
|
+
height: 100%;
|
13
|
+
margin-bottom: 1px;
|
14
|
+
}
|
15
|
+
#container {
|
16
|
+
width: 80%;
|
17
|
+
text-align: left;
|
18
|
+
background-color: #fff;
|
19
|
+
margin-right: auto;
|
20
|
+
margin-left: auto;
|
21
|
+
}
|
22
|
+
#header-container {
|
23
|
+
width: 100%;
|
24
|
+
padding-top: 15px;
|
25
|
+
}
|
26
|
+
#header-container h1, #header-container h2 {
|
27
|
+
margin-left: 6px;
|
28
|
+
margin-bottom: 6px;
|
29
|
+
}
|
30
|
+
.spacer {
|
31
|
+
width: 100%;
|
32
|
+
height: 15px;
|
33
|
+
}
|
34
|
+
hr {
|
35
|
+
border: 0px;
|
36
|
+
color: #ccc;
|
37
|
+
background-color: #cdcdcd;
|
38
|
+
height: 1px;
|
39
|
+
width: 100%;
|
40
|
+
text-align: left;
|
41
|
+
}
|
42
|
+
h1 {
|
43
|
+
font-size: 28px;
|
44
|
+
color: #c55;
|
45
|
+
background-color: #fff;
|
46
|
+
font-family: Arial, Verdana, sans-serif;
|
47
|
+
font-weight: 300;
|
48
|
+
}
|
49
|
+
h2 {
|
50
|
+
font-size: 15px;
|
51
|
+
color: #999;
|
52
|
+
font-family: Arial, Verdana, sans-serif;
|
53
|
+
font-weight: 300;
|
54
|
+
background-color: #fff;
|
55
|
+
}
|
56
|
+
h3 {
|
57
|
+
color: #4d9b12;
|
58
|
+
font-size: 15px;
|
59
|
+
text-align: left;
|
60
|
+
font-weight: 300;
|
61
|
+
padding: 5px;
|
62
|
+
margin-top: 5px;
|
63
|
+
}
|
64
|
+
|
65
|
+
#left-container {
|
66
|
+
float: left;
|
67
|
+
width: 250px;
|
68
|
+
background-color: #FFFFFF;
|
69
|
+
color: black;
|
70
|
+
}
|
71
|
+
|
72
|
+
#left-container h3 {
|
73
|
+
color: #c55;
|
74
|
+
}
|
75
|
+
|
76
|
+
#main-container {
|
77
|
+
margin: 5px 5px 5px 260px;
|
78
|
+
padding: 15px;
|
79
|
+
border-left: 1px solid silver;
|
80
|
+
min-height: 400px;
|
81
|
+
}
|
82
|
+
p {
|
83
|
+
color: #000;
|
84
|
+
background-color: #fff;
|
85
|
+
line-height: 20px;
|
86
|
+
padding: 5px;
|
87
|
+
}
|
88
|
+
a {
|
89
|
+
color: #4d9b12;
|
90
|
+
background-color: #fff;
|
91
|
+
text-decoration: none;
|
92
|
+
}
|
93
|
+
a:hover {
|
94
|
+
color: #4d9b12;
|
95
|
+
background-color: #fff;
|
96
|
+
text-decoration: underline;
|
97
|
+
}
|
98
|
+
#footer-container {
|
99
|
+
clear: both;
|
100
|
+
font-size: 12px;
|
101
|
+
font-family: Verdana, Arial, sans-serif;
|
102
|
+
}
|
103
|
+
.right {
|
104
|
+
float: right;
|
105
|
+
font-size: 100%;
|
106
|
+
margin-top: 5px;
|
107
|
+
color: #999;
|
108
|
+
background-color: #fff;
|
109
|
+
}
|
110
|
+
.left {
|
111
|
+
float: left;
|
112
|
+
font-size: 100%;
|
113
|
+
margin-top: 5px;
|
114
|
+
color: #999;
|
115
|
+
background-color: #fff;
|
116
|
+
}
|
117
|
+
#main-container ul {
|
118
|
+
margin-left: 3.0em;
|
119
|
+
}
|
data/{spec/rango/auth/core/authentication_spec.rb → benchmarks/stubs/merb-app/spec/spec.opts}
RENAMED
File without changes
|
@@ -0,0 +1,27 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require "rubygems"
|
4
|
+
|
5
|
+
# Add the local gems dir if found within the app root; any dependencies loaded
|
6
|
+
# hereafter will try to load from the local gems before loading system gems.
|
7
|
+
if (local_gem_dir = File.join(File.dirname(__FILE__), '..', 'gems')) && $BUNDLE.nil?
|
8
|
+
$BUNDLE = true; Gem.clear_paths; Gem.path.unshift(local_gem_dir)
|
9
|
+
end
|
10
|
+
|
11
|
+
require "merb-core"
|
12
|
+
require "spec" # Satisfies Autotest and anyone else not using the Rake tasks
|
13
|
+
|
14
|
+
# this loads all plugins required in your init file so don't add them
|
15
|
+
# here again, Merb will do it for you
|
16
|
+
Merb.start_environment(:testing => true, :adapter => 'runner', :environment => ENV['MERB_ENV'] || 'test')
|
17
|
+
|
18
|
+
Spec::Runner.configure do |config|
|
19
|
+
config.include(Merb::Test::ViewHelper)
|
20
|
+
config.include(Merb::Test::RouteHelper)
|
21
|
+
config.include(Merb::Test::ControllerHelper)
|
22
|
+
|
23
|
+
config.before(:all) do
|
24
|
+
DataMapper.auto_migrate! if Merb.orm == :datamapper
|
25
|
+
end
|
26
|
+
|
27
|
+
end
|
@@ -0,0 +1,151 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
$: << File.join("doc")
|
4
|
+
require 'rubygems'
|
5
|
+
require 'rdoc/rdoc'
|
6
|
+
require 'fileutils'
|
7
|
+
require 'erb'
|
8
|
+
|
9
|
+
module Merb
|
10
|
+
|
11
|
+
class GemNotFoundException < Exception
|
12
|
+
end
|
13
|
+
|
14
|
+
module DocMethods
|
15
|
+
def setup_gem_path
|
16
|
+
if File.directory?(gems_dir = File.join(File.dirname(__FILE__), 'gems'))
|
17
|
+
$BUNDLE = true; Gem.clear_paths; Gem.path.unshift(gems_dir)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
def get_more
|
22
|
+
libs = []
|
23
|
+
more_library = find_library("merb-more")
|
24
|
+
File.open("#{more_library}/lib/merb-more.rb").read.each_line do |line|
|
25
|
+
if line['require']
|
26
|
+
libs << line.gsub("require '", '').gsub("'\n", '')
|
27
|
+
end
|
28
|
+
end
|
29
|
+
return libs
|
30
|
+
end
|
31
|
+
|
32
|
+
def generate_documentation(file_list, destination, arguments = [])
|
33
|
+
output_dir = File.join("/../doc", "rdoc", destination)
|
34
|
+
FileUtils.rm_rf(output_dir)
|
35
|
+
|
36
|
+
arguments += [
|
37
|
+
"--fmt", "merb",
|
38
|
+
"--op", output_dir
|
39
|
+
]
|
40
|
+
RDoc::RDoc.new.document(arguments + file_list)
|
41
|
+
AdvancedDoc.new.index
|
42
|
+
end
|
43
|
+
|
44
|
+
def find_library(directory_snippet)
|
45
|
+
gem_dir = nil
|
46
|
+
Gem.path.find do |path|
|
47
|
+
dir = Dir.glob("#{path}/gems/#{directory_snippet}*")
|
48
|
+
dir.empty? ? false : gem_dir = dir.last
|
49
|
+
end
|
50
|
+
raise GemNotFoundException if gem_dir.nil?
|
51
|
+
return gem_dir
|
52
|
+
end
|
53
|
+
|
54
|
+
def get_file_list(directory_snippet)
|
55
|
+
gem_dir = find_library(directory_snippet)
|
56
|
+
files = Dir.glob("#{gem_dir}/**/lib/**/*.rb")
|
57
|
+
files += ["#{gem_dir}/README"] if File.exists?("#{gem_dir}/README")
|
58
|
+
return files
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
class AdvancedDoc < Thor
|
63
|
+
|
64
|
+
group 'core'
|
65
|
+
include DocMethods
|
66
|
+
|
67
|
+
def initialize
|
68
|
+
super
|
69
|
+
setup_gem_path
|
70
|
+
end
|
71
|
+
|
72
|
+
desc 'index', "Regenerate the index file for your framework documentation"
|
73
|
+
def index
|
74
|
+
@directories = Dir.entries(File.join(File.dirname(__FILE__) + "/../", "doc", "rdoc"))
|
75
|
+
@directories.delete(".")
|
76
|
+
@directories.delete("..")
|
77
|
+
@directories.delete("generators")
|
78
|
+
@directories.delete("index.html")
|
79
|
+
index_template = File.read(File.join("doc", "rdoc", "generators", "template", "merb", "index.html.erb"))
|
80
|
+
|
81
|
+
File.open(File.join("doc", "rdoc", "index.html"), "w") do |file|
|
82
|
+
file.write(ERB.new(index_template).result(binding))
|
83
|
+
end
|
84
|
+
end
|
85
|
+
|
86
|
+
desc 'plugins', 'Generate the rdoc for each merb-plugins seperatly'
|
87
|
+
def plugins
|
88
|
+
libs = ["merb_activerecord", "merb_builder", "merb_jquery", "merb_laszlo", "merb_parts", "merb_screw_unit", "merb_sequel", "merb_stories", "merb_test_unit"]
|
89
|
+
|
90
|
+
libs.each do |lib|
|
91
|
+
options[:gem] = lib
|
92
|
+
gem
|
93
|
+
end
|
94
|
+
end
|
95
|
+
|
96
|
+
desc 'more', 'Generate the rdoc for each merb-more gem seperatly'
|
97
|
+
def more
|
98
|
+
libs = get_more
|
99
|
+
libs.each do |lib|
|
100
|
+
options[:gem] = lib
|
101
|
+
gem
|
102
|
+
end
|
103
|
+
end
|
104
|
+
|
105
|
+
desc 'core', 'Generate the rdoc for merb-core'
|
106
|
+
def core
|
107
|
+
options[:gem] = "merb-core"
|
108
|
+
gem
|
109
|
+
end
|
110
|
+
|
111
|
+
desc 'gem', 'Generate the rdoc for a specific gem'
|
112
|
+
method_options "--gem" => :required
|
113
|
+
def gem
|
114
|
+
file_list = get_file_list(options[:gem])
|
115
|
+
readme = File.join(find_library("merb-core"), "README")
|
116
|
+
generate_documentation(file_list, options[:gem], ["-m", readme])
|
117
|
+
rescue GemNotFoundException
|
118
|
+
puts "Can not find the gem in the gem path #{options[:gem]}"
|
119
|
+
end
|
120
|
+
|
121
|
+
end
|
122
|
+
|
123
|
+
class Doc < Thor
|
124
|
+
|
125
|
+
include DocMethods
|
126
|
+
|
127
|
+
def initialize
|
128
|
+
super
|
129
|
+
setup_gem_path
|
130
|
+
|
131
|
+
end
|
132
|
+
|
133
|
+
desc 'stack', 'Generate the rdoc for merb-core, merb-more merged together'
|
134
|
+
def stack
|
135
|
+
libs = ["merb"]
|
136
|
+
|
137
|
+
file_list = []
|
138
|
+
libs.each do |gem_name|
|
139
|
+
begin
|
140
|
+
file_list += get_file_list(gem_name)
|
141
|
+
rescue GemNotFoundException
|
142
|
+
puts "Could not find #{gem_name} in #{Gem.path}. Continuing with out it."
|
143
|
+
end
|
144
|
+
end
|
145
|
+
readme = File.join(find_library("merb"), "README")
|
146
|
+
generate_documentation(file_list, "stack", ["-m", readme])
|
147
|
+
end
|
148
|
+
|
149
|
+
end
|
150
|
+
|
151
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
#!/usr/bin/env ruby
|
4
|
+
|
5
|
+
# This was added by Merb's bundler
|
6
|
+
|
7
|
+
require "rubygems"
|
8
|
+
require File.join(File.dirname(__FILE__), "common")
|
9
|
+
|
10
|
+
gems_dir = File.join(File.dirname(__FILE__), '..', 'gems')
|
11
|
+
|
12
|
+
if File.directory?(gems_dir)
|
13
|
+
$BUNDLE = true
|
14
|
+
Gem.clear_paths
|
15
|
+
Gem.path.replace([File.expand_path(gems_dir)])
|
16
|
+
ENV["PATH"] = "#{File.dirname(__FILE__)}:#{ENV["PATH"]}"
|
17
|
+
|
18
|
+
gem_file = File.join(gems_dir, "specifications", "<%= spec.name %>-*.gemspec")
|
19
|
+
|
20
|
+
if local_gem = Dir[gem_file].last
|
21
|
+
version = File.basename(local_gem)[/-([\.\d]+)\.gemspec$/, 1]
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
version ||= "<%= Gem::Requirement.default %>"
|
26
|
+
|
27
|
+
if ARGV.first =~ /^_(.*)_$/ and Gem::Version.correct? $1 then
|
28
|
+
version = $1
|
29
|
+
ARGV.shift
|
30
|
+
end
|
31
|
+
|
32
|
+
gem '<%= @spec.name %>', version
|
33
|
+
load '<%= bin_file_name %>'
|