lockbox_middleware 1.2.1 → 1.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/lockbox_middleware.rb +1 -1
- data/spec/lib/lockbox_middleware_spec.rb +2 -2
- data/spec/spec_helper.rb +0 -2
- metadata +36 -756
- data/.gitignore +0 -15
- data/Capfile +0 -4
- data/Gemfile +0 -11
- data/Rakefile +0 -12
- data/VERSION +0 -1
- data/app/controllers/admin/partners_controller.rb +0 -14
- data/app/controllers/admin_controller.rb +0 -8
- data/app/controllers/application_controller.rb +0 -32
- data/app/controllers/authentication_controller.rb +0 -58
- data/app/controllers/confirmation_controller.rb +0 -14
- data/app/controllers/fetch_password_controller.rb +0 -44
- data/app/controllers/home_controller.rb +0 -11
- data/app/controllers/partner_sessions_controller.rb +0 -30
- data/app/controllers/partners_controller.rb +0 -58
- data/app/helpers/admin/partners_helper.rb +0 -3
- data/app/helpers/admin_helper.rb +0 -2
- data/app/helpers/application_helper.rb +0 -20
- data/app/helpers/authentication_helper.rb +0 -2
- data/app/helpers/fetch_password_helper.rb +0 -2
- data/app/helpers/home_helper.rb +0 -2
- data/app/helpers/labeled_builder.rb +0 -76
- data/app/helpers/partners_helper.rb +0 -2
- data/app/models/partner.rb +0 -129
- data/app/models/partner_mailer.rb +0 -25
- data/app/models/partner_session.rb +0 -2
- data/app/views/admin/show.html.erb +0 -6
- data/app/views/authentication/four_two_oh.html.erb +0 -4
- data/app/views/fetch_password/index.html.erb +0 -4
- data/app/views/fetch_password/show.html.erb +0 -6
- data/app/views/home/show.html.erb +0 -20
- data/app/views/layouts/admin.html.erb +0 -42
- data/app/views/layouts/application.html.erb +0 -48
- data/app/views/partner_mailer/confirmation.text.html.erb +0 -30
- data/app/views/partner_mailer/confirmation.text.plain.erb +0 -5
- data/app/views/partner_mailer/fetch_password.text.html.erb +0 -32
- data/app/views/partner_mailer/fetch_password.text.plain.erb +0 -5
- data/app/views/partner_sessions/new.html.erb +0 -9
- data/app/views/partners/_form.html.erb +0 -7
- data/app/views/partners/edit.html.erb +0 -5
- data/app/views/partners/index.html.erb +0 -0
- data/app/views/partners/new.html.erb +0 -6
- data/app/views/partners/show.html.erb +0 -48
- data/app/views/shared/_footer.html.erb +0 -0
- data/app/views/shared/_header.html.erb +0 -3
- data/app/views/shared/_logged_in_menu.html.erb +0 -1
- data/app/views/shared/_logged_out_menu.html.erb +0 -2
- data/config/asset_packages.yml +0 -19
- data/config/boot.rb +0 -110
- data/config/database.yml.example +0 -25
- data/config/environment.rb +0 -56
- data/config/environments/development.rb +0 -22
- data/config/environments/production.rb +0 -30
- data/config/environments/test.rb +0 -35
- data/config/initializers/backtrace_silencers.rb +0 -7
- data/config/initializers/inflections.rb +0 -10
- data/config/initializers/mime_types.rb +0 -7
- data/config/initializers/new_rails_defaults.rb +0 -21
- data/config/initializers/session_store.rb +0 -15
- data/config/initializers/settings.rb +0 -1
- data/config/initializers/string.rb +0 -25
- data/config/locales/en.yml +0 -5
- data/config/lockbox.yml.example +0 -12
- data/config/routes.rb +0 -23
- data/db/migrate/20091104170848_create_partners.rb +0 -34
- data/db/migrate/20091106213802_add_index_on_api_key.rb +0 -9
- data/db/migrate/20100507193948_add_partner_slug.rb +0 -11
- data/db/seeds.rb +0 -7
- data/lib/admin_authentication.rb +0 -9
- data/lib/authentication.rb +0 -48
- data/lib/rfc822.rb +0 -18
- data/lib/tasks/jeweler.rake +0 -14
- data/lib/tasks/rspec.rake +0 -144
- data/public/404.html +0 -30
- data/public/422.html +0 -30
- data/public/500.html +0 -30
- data/public/blank.html +0 -33
- data/public/favicon.ico +0 -0
- data/public/images/active_scaffold/DO_NOT_EDIT +0 -2
- data/public/images/active_scaffold/default/add.gif +0 -0
- data/public/images/active_scaffold/default/arrow_down.gif +0 -0
- data/public/images/active_scaffold/default/arrow_up.gif +0 -0
- data/public/images/active_scaffold/default/close.gif +0 -0
- data/public/images/active_scaffold/default/cross.png +0 -0
- data/public/images/active_scaffold/default/indicator-small.gif +0 -0
- data/public/images/active_scaffold/default/indicator.gif +0 -0
- data/public/images/active_scaffold/default/magnifier.png +0 -0
- data/public/images/rails.png +0 -0
- data/public/javascripts/active_scaffold/DO_NOT_EDIT +0 -2
- data/public/javascripts/active_scaffold/default/active_scaffold.js +0 -434
- data/public/javascripts/active_scaffold/default/dhtml_history.js +0 -867
- data/public/javascripts/active_scaffold/default/form_enhancements.js +0 -117
- data/public/javascripts/active_scaffold/default/rico_corner.js +0 -370
- data/public/javascripts/application.js +0 -2
- data/public/javascripts/controls.js +0 -963
- data/public/javascripts/csshover.htc +0 -120
- data/public/javascripts/dragdrop.js +0 -973
- data/public/javascripts/effects.js +0 -1128
- data/public/javascripts/prototype.js +0 -4320
- data/public/robots.txt +0 -5
- data/public/stylesheets/active_scaffold/DO_NOT_EDIT +0 -2
- data/public/stylesheets/active_scaffold/default/stylesheet-ie.css +0 -35
- data/public/stylesheets/active_scaffold/default/stylesheet.css +0 -822
- data/public/stylesheets/application.css +0 -189
- data/public/stylesheets/ie.css +0 -11
- data/public/stylesheets/reset.css +0 -42
- data/public/stylesheets/screen.css +0 -257
- data/script/about +0 -4
- data/script/autospec +0 -6
- data/script/console +0 -3
- data/script/cucumber +0 -17
- data/script/dbconsole +0 -3
- data/script/destroy +0 -3
- data/script/generate +0 -3
- data/script/performance/benchmarker +0 -3
- data/script/performance/profiler +0 -3
- data/script/plugin +0 -3
- data/script/runner +0 -3
- data/script/server +0 -3
- data/script/spec +0 -10
- data/spec/controllers/admin/partners_controller_spec.rb +0 -55
- data/spec/controllers/admin_controller_spec.rb +0 -29
- data/spec/controllers/application_controller_spec.rb +0 -36
- data/spec/controllers/authentication_controller_spec.rb +0 -120
- data/spec/controllers/confirmation_controller_spec.rb +0 -36
- data/spec/controllers/fetch_password_controller_spec.rb +0 -155
- data/spec/controllers/home_controller_spec.rb +0 -15
- data/spec/controllers/partner_sessions_controller_spec.rb +0 -84
- data/spec/controllers/partners_controller_spec.rb +0 -132
- data/spec/factories/partners.rb +0 -14
- data/spec/models/partner_mailer_spec.rb +0 -47
- data/spec/models/partner_spec.rb +0 -155
- data/spec/rcov.opts +0 -1
- data/vendor/gems/authlogic-2.1.3/.gitignore +0 -9
- data/vendor/gems/authlogic-2.1.3/CHANGELOG.rdoc +0 -345
- data/vendor/gems/authlogic-2.1.3/LICENSE +0 -20
- data/vendor/gems/authlogic-2.1.3/README.rdoc +0 -246
- data/vendor/gems/authlogic-2.1.3/Rakefile +0 -42
- data/vendor/gems/authlogic-2.1.3/VERSION.yml +0 -5
- data/vendor/gems/authlogic-2.1.3/authlogic.gemspec +0 -217
- data/vendor/gems/authlogic-2.1.3/generators/session/session_generator.rb +0 -9
- data/vendor/gems/authlogic-2.1.3/generators/session/templates/session.rb +0 -2
- data/vendor/gems/authlogic-2.1.3/init.rb +0 -1
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/acts_as_authentic/base.rb +0 -107
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/acts_as_authentic/email.rb +0 -110
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/acts_as_authentic/logged_in_status.rb +0 -60
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/acts_as_authentic/login.rb +0 -141
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/acts_as_authentic/magic_columns.rb +0 -24
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/acts_as_authentic/password.rb +0 -344
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/acts_as_authentic/perishable_token.rb +0 -105
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/acts_as_authentic/persistence_token.rb +0 -68
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/acts_as_authentic/restful_authentication.rb +0 -61
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/acts_as_authentic/session_maintenance.rb +0 -139
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/acts_as_authentic/single_access_token.rb +0 -65
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/acts_as_authentic/validations_scope.rb +0 -32
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/authenticates_many/association.rb +0 -42
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/authenticates_many/base.rb +0 -55
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/controller_adapters/abstract_adapter.rb +0 -67
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/controller_adapters/merb_adapter.rb +0 -30
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/controller_adapters/rails_adapter.rb +0 -48
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/controller_adapters/sinatra_adapter.rb +0 -61
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/crypto_providers/aes256.rb +0 -43
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/crypto_providers/bcrypt.rb +0 -90
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/crypto_providers/md5.rb +0 -34
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/crypto_providers/sha1.rb +0 -35
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/crypto_providers/sha256.rb +0 -50
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/crypto_providers/sha512.rb +0 -50
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/crypto_providers/wordpress.rb +0 -43
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/i18n/translator.rb +0 -15
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/i18n.rb +0 -83
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/random.rb +0 -33
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/regex.rb +0 -25
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/activation.rb +0 -58
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/active_record_trickery.rb +0 -61
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/base.rb +0 -37
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/brute_force_protection.rb +0 -96
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/callbacks.rb +0 -88
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/cookies.rb +0 -130
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/existence.rb +0 -93
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/foundation.rb +0 -63
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/http_auth.rb +0 -58
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/id.rb +0 -41
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/klass.rb +0 -78
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/magic_columns.rb +0 -95
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/magic_states.rb +0 -59
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/params.rb +0 -101
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/password.rb +0 -240
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/perishable_token.rb +0 -18
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/persistence.rb +0 -70
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/priority_record.rb +0 -34
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/scopes.rb +0 -101
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/session.rb +0 -62
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/timeout.rb +0 -82
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/unauthorized_record.rb +0 -50
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/session/validation.rb +0 -82
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/test_case/mock_controller.rb +0 -45
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/test_case/mock_cookie_jar.rb +0 -14
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/test_case/mock_logger.rb +0 -10
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/test_case/mock_request.rb +0 -19
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/test_case/rails_request_adapter.rb +0 -30
- data/vendor/gems/authlogic-2.1.3/lib/authlogic/test_case.rb +0 -120
- data/vendor/gems/authlogic-2.1.3/lib/authlogic.rb +0 -57
- data/vendor/gems/authlogic-2.1.3/rails/init.rb +0 -1
- data/vendor/gems/authlogic-2.1.3/shoulda_macros/authlogic.rb +0 -69
- data/vendor/gems/authlogic-2.1.3/test/acts_as_authentic_test/base_test.rb +0 -18
- data/vendor/gems/authlogic-2.1.3/test/acts_as_authentic_test/email_test.rb +0 -97
- data/vendor/gems/authlogic-2.1.3/test/acts_as_authentic_test/logged_in_status_test.rb +0 -36
- data/vendor/gems/authlogic-2.1.3/test/acts_as_authentic_test/login_test.rb +0 -109
- data/vendor/gems/authlogic-2.1.3/test/acts_as_authentic_test/magic_columns_test.rb +0 -27
- data/vendor/gems/authlogic-2.1.3/test/acts_as_authentic_test/password_test.rb +0 -236
- data/vendor/gems/authlogic-2.1.3/test/acts_as_authentic_test/perishable_token_test.rb +0 -90
- data/vendor/gems/authlogic-2.1.3/test/acts_as_authentic_test/persistence_token_test.rb +0 -55
- data/vendor/gems/authlogic-2.1.3/test/acts_as_authentic_test/restful_authentication_test.rb +0 -40
- data/vendor/gems/authlogic-2.1.3/test/acts_as_authentic_test/session_maintenance_test.rb +0 -84
- data/vendor/gems/authlogic-2.1.3/test/acts_as_authentic_test/single_access_test.rb +0 -44
- data/vendor/gems/authlogic-2.1.3/test/authenticates_many_test.rb +0 -16
- data/vendor/gems/authlogic-2.1.3/test/crypto_provider_test/aes256_test.rb +0 -14
- data/vendor/gems/authlogic-2.1.3/test/crypto_provider_test/bcrypt_test.rb +0 -14
- data/vendor/gems/authlogic-2.1.3/test/crypto_provider_test/sha1_test.rb +0 -23
- data/vendor/gems/authlogic-2.1.3/test/crypto_provider_test/sha256_test.rb +0 -14
- data/vendor/gems/authlogic-2.1.3/test/crypto_provider_test/sha512_test.rb +0 -14
- data/vendor/gems/authlogic-2.1.3/test/fixtures/companies.yml +0 -5
- data/vendor/gems/authlogic-2.1.3/test/fixtures/employees.yml +0 -17
- data/vendor/gems/authlogic-2.1.3/test/fixtures/projects.yml +0 -3
- data/vendor/gems/authlogic-2.1.3/test/fixtures/users.yml +0 -24
- data/vendor/gems/authlogic-2.1.3/test/i18n_test.rb +0 -33
- data/vendor/gems/authlogic-2.1.3/test/libs/affiliate.rb +0 -7
- data/vendor/gems/authlogic-2.1.3/test/libs/company.rb +0 -6
- data/vendor/gems/authlogic-2.1.3/test/libs/employee.rb +0 -7
- data/vendor/gems/authlogic-2.1.3/test/libs/employee_session.rb +0 -2
- data/vendor/gems/authlogic-2.1.3/test/libs/ldaper.rb +0 -3
- data/vendor/gems/authlogic-2.1.3/test/libs/ordered_hash.rb +0 -9
- data/vendor/gems/authlogic-2.1.3/test/libs/project.rb +0 -3
- data/vendor/gems/authlogic-2.1.3/test/libs/user.rb +0 -5
- data/vendor/gems/authlogic-2.1.3/test/libs/user_session.rb +0 -6
- data/vendor/gems/authlogic-2.1.3/test/random_test.rb +0 -49
- data/vendor/gems/authlogic-2.1.3/test/session_test/activation_test.rb +0 -43
- data/vendor/gems/authlogic-2.1.3/test/session_test/active_record_trickery_test.rb +0 -36
- data/vendor/gems/authlogic-2.1.3/test/session_test/brute_force_protection_test.rb +0 -101
- data/vendor/gems/authlogic-2.1.3/test/session_test/callbacks_test.rb +0 -6
- data/vendor/gems/authlogic-2.1.3/test/session_test/cookies_test.rb +0 -112
- data/vendor/gems/authlogic-2.1.3/test/session_test/credentials_test.rb +0 -0
- data/vendor/gems/authlogic-2.1.3/test/session_test/existence_test.rb +0 -64
- data/vendor/gems/authlogic-2.1.3/test/session_test/http_auth_test.rb +0 -28
- data/vendor/gems/authlogic-2.1.3/test/session_test/id_test.rb +0 -17
- data/vendor/gems/authlogic-2.1.3/test/session_test/klass_test.rb +0 -40
- data/vendor/gems/authlogic-2.1.3/test/session_test/magic_columns_test.rb +0 -62
- data/vendor/gems/authlogic-2.1.3/test/session_test/magic_states_test.rb +0 -60
- data/vendor/gems/authlogic-2.1.3/test/session_test/params_test.rb +0 -53
- data/vendor/gems/authlogic-2.1.3/test/session_test/password_test.rb +0 -106
- data/vendor/gems/authlogic-2.1.3/test/session_test/perishability_test.rb +0 -15
- data/vendor/gems/authlogic-2.1.3/test/session_test/persistence_test.rb +0 -21
- data/vendor/gems/authlogic-2.1.3/test/session_test/scopes_test.rb +0 -60
- data/vendor/gems/authlogic-2.1.3/test/session_test/session_test.rb +0 -59
- data/vendor/gems/authlogic-2.1.3/test/session_test/timeout_test.rb +0 -52
- data/vendor/gems/authlogic-2.1.3/test/session_test/unauthorized_record_test.rb +0 -13
- data/vendor/gems/authlogic-2.1.3/test/session_test/validation_test.rb +0 -23
- data/vendor/gems/authlogic-2.1.3/test/test_helper.rb +0 -182
- data/vendor/gems/factory_girl-1.2.3/.specification +0 -121
- data/vendor/gems/factory_girl-1.2.3/CONTRIBUTION_GUIDELINES.rdoc +0 -9
- data/vendor/gems/factory_girl-1.2.3/Changelog +0 -29
- data/vendor/gems/factory_girl-1.2.3/LICENSE +0 -19
- data/vendor/gems/factory_girl-1.2.3/README.rdoc +0 -228
- data/vendor/gems/factory_girl-1.2.3/Rakefile +0 -81
- data/vendor/gems/factory_girl-1.2.3/lib/factory_girl/aliases.rb +0 -50
- data/vendor/gems/factory_girl-1.2.3/lib/factory_girl/attribute/association.rb +0 -20
- data/vendor/gems/factory_girl-1.2.3/lib/factory_girl/attribute/callback.rb +0 -16
- data/vendor/gems/factory_girl-1.2.3/lib/factory_girl/attribute/dynamic.rb +0 -20
- data/vendor/gems/factory_girl-1.2.3/lib/factory_girl/attribute/static.rb +0 -17
- data/vendor/gems/factory_girl-1.2.3/lib/factory_girl/attribute.rb +0 -29
- data/vendor/gems/factory_girl-1.2.3/lib/factory_girl/factory.rb +0 -395
- data/vendor/gems/factory_girl-1.2.3/lib/factory_girl/proxy/attributes_for.rb +0 -21
- data/vendor/gems/factory_girl-1.2.3/lib/factory_girl/proxy/build.rb +0 -30
- data/vendor/gems/factory_girl-1.2.3/lib/factory_girl/proxy/create.rb +0 -12
- data/vendor/gems/factory_girl-1.2.3/lib/factory_girl/proxy/stub.rb +0 -50
- data/vendor/gems/factory_girl-1.2.3/lib/factory_girl/proxy.rb +0 -79
- data/vendor/gems/factory_girl-1.2.3/lib/factory_girl/sequence.rb +0 -63
- data/vendor/gems/factory_girl-1.2.3/lib/factory_girl/step_definitions.rb +0 -54
- data/vendor/gems/factory_girl-1.2.3/lib/factory_girl/syntax/blueprint.rb +0 -42
- data/vendor/gems/factory_girl-1.2.3/lib/factory_girl/syntax/generate.rb +0 -68
- data/vendor/gems/factory_girl-1.2.3/lib/factory_girl/syntax/make.rb +0 -39
- data/vendor/gems/factory_girl-1.2.3/lib/factory_girl/syntax/sham.rb +0 -42
- data/vendor/gems/factory_girl-1.2.3/lib/factory_girl/syntax.rb +0 -12
- data/vendor/gems/factory_girl-1.2.3/lib/factory_girl.rb +0 -35
- data/vendor/gems/factory_girl-1.2.3/spec/factory_girl/aliases_spec.rb +0 -29
- data/vendor/gems/factory_girl-1.2.3/spec/factory_girl/attribute/association_spec.rb +0 -29
- data/vendor/gems/factory_girl-1.2.3/spec/factory_girl/attribute/callback_spec.rb +0 -23
- data/vendor/gems/factory_girl-1.2.3/spec/factory_girl/attribute/dynamic_spec.rb +0 -49
- data/vendor/gems/factory_girl-1.2.3/spec/factory_girl/attribute/static_spec.rb +0 -29
- data/vendor/gems/factory_girl-1.2.3/spec/factory_girl/attribute_spec.rb +0 -30
- data/vendor/gems/factory_girl-1.2.3/spec/factory_girl/factory_spec.rb +0 -571
- data/vendor/gems/factory_girl-1.2.3/spec/factory_girl/proxy/attributes_for_spec.rb +0 -52
- data/vendor/gems/factory_girl-1.2.3/spec/factory_girl/proxy/build_spec.rb +0 -81
- data/vendor/gems/factory_girl-1.2.3/spec/factory_girl/proxy/create_spec.rb +0 -94
- data/vendor/gems/factory_girl-1.2.3/spec/factory_girl/proxy/stub_spec.rb +0 -79
- data/vendor/gems/factory_girl-1.2.3/spec/factory_girl/proxy_spec.rb +0 -84
- data/vendor/gems/factory_girl-1.2.3/spec/factory_girl/sequence_spec.rb +0 -66
- data/vendor/gems/factory_girl-1.2.3/spec/factory_girl/syntax/blueprint_spec.rb +0 -34
- data/vendor/gems/factory_girl-1.2.3/spec/factory_girl/syntax/generate_spec.rb +0 -57
- data/vendor/gems/factory_girl-1.2.3/spec/factory_girl/syntax/make_spec.rb +0 -35
- data/vendor/gems/factory_girl-1.2.3/spec/factory_girl/syntax/sham_spec.rb +0 -35
- data/vendor/gems/factory_girl-1.2.3/spec/integration_spec.rb +0 -304
- data/vendor/gems/factory_girl-1.2.3/spec/models.rb +0 -43
- data/vendor/gems/factory_girl-1.2.3/spec/spec_helper.rb +0 -18
- data/vendor/gems/paperclip-2.3.1.1/.specification +0 -161
- data/vendor/gems/paperclip-2.3.1.1/LICENSE +0 -26
- data/vendor/gems/paperclip-2.3.1.1/README.rdoc +0 -174
- data/vendor/gems/paperclip-2.3.1.1/Rakefile +0 -103
- data/vendor/gems/paperclip-2.3.1.1/generators/paperclip/USAGE +0 -5
- data/vendor/gems/paperclip-2.3.1.1/generators/paperclip/paperclip_generator.rb +0 -27
- data/vendor/gems/paperclip-2.3.1.1/generators/paperclip/templates/paperclip_migration.rb.erb +0 -19
- data/vendor/gems/paperclip-2.3.1.1/init.rb +0 -1
- data/vendor/gems/paperclip-2.3.1.1/lib/paperclip/attachment.rb +0 -414
- data/vendor/gems/paperclip-2.3.1.1/lib/paperclip/callback_compatability.rb +0 -33
- data/vendor/gems/paperclip-2.3.1.1/lib/paperclip/geometry.rb +0 -115
- data/vendor/gems/paperclip-2.3.1.1/lib/paperclip/interpolations.rb +0 -108
- data/vendor/gems/paperclip-2.3.1.1/lib/paperclip/iostream.rb +0 -58
- data/vendor/gems/paperclip-2.3.1.1/lib/paperclip/matchers/have_attached_file_matcher.rb +0 -49
- data/vendor/gems/paperclip-2.3.1.1/lib/paperclip/matchers/validate_attachment_content_type_matcher.rb +0 -66
- data/vendor/gems/paperclip-2.3.1.1/lib/paperclip/matchers/validate_attachment_presence_matcher.rb +0 -48
- data/vendor/gems/paperclip-2.3.1.1/lib/paperclip/matchers/validate_attachment_size_matcher.rb +0 -83
- data/vendor/gems/paperclip-2.3.1.1/lib/paperclip/matchers.rb +0 -4
- data/vendor/gems/paperclip-2.3.1.1/lib/paperclip/processor.rb +0 -49
- data/vendor/gems/paperclip-2.3.1.1/lib/paperclip/storage.rb +0 -243
- data/vendor/gems/paperclip-2.3.1.1/lib/paperclip/thumbnail.rb +0 -73
- data/vendor/gems/paperclip-2.3.1.1/lib/paperclip/upfile.rb +0 -49
- data/vendor/gems/paperclip-2.3.1.1/lib/paperclip.rb +0 -353
- data/vendor/gems/paperclip-2.3.1.1/shoulda_macros/paperclip.rb +0 -117
- data/vendor/gems/paperclip-2.3.1.1/tasks/paperclip_tasks.rake +0 -79
- data/vendor/gems/paperclip-2.3.1.1/test/attachment_test.rb +0 -780
- data/vendor/gems/paperclip-2.3.1.1/test/database.yml +0 -4
- data/vendor/gems/paperclip-2.3.1.1/test/fixtures/12k.png +0 -0
- data/vendor/gems/paperclip-2.3.1.1/test/fixtures/50x50.png +0 -0
- data/vendor/gems/paperclip-2.3.1.1/test/fixtures/5k.png +0 -0
- data/vendor/gems/paperclip-2.3.1.1/test/fixtures/bad.png +0 -1
- data/vendor/gems/paperclip-2.3.1.1/test/fixtures/s3.yml +0 -8
- data/vendor/gems/paperclip-2.3.1.1/test/fixtures/text.txt +0 -0
- data/vendor/gems/paperclip-2.3.1.1/test/fixtures/twopage.pdf +0 -0
- data/vendor/gems/paperclip-2.3.1.1/test/geometry_test.rb +0 -177
- data/vendor/gems/paperclip-2.3.1.1/test/helper.rb +0 -108
- data/vendor/gems/paperclip-2.3.1.1/test/integration_test.rb +0 -483
- data/vendor/gems/paperclip-2.3.1.1/test/interpolations_test.rb +0 -124
- data/vendor/gems/paperclip-2.3.1.1/test/iostream_test.rb +0 -71
- data/vendor/gems/paperclip-2.3.1.1/test/matchers/have_attached_file_matcher_test.rb +0 -21
- data/vendor/gems/paperclip-2.3.1.1/test/matchers/validate_attachment_content_type_matcher_test.rb +0 -30
- data/vendor/gems/paperclip-2.3.1.1/test/matchers/validate_attachment_presence_matcher_test.rb +0 -21
- data/vendor/gems/paperclip-2.3.1.1/test/matchers/validate_attachment_size_matcher_test.rb +0 -50
- data/vendor/gems/paperclip-2.3.1.1/test/paperclip_test.rb +0 -327
- data/vendor/gems/paperclip-2.3.1.1/test/processor_test.rb +0 -10
- data/vendor/gems/paperclip-2.3.1.1/test/storage_test.rb +0 -303
- data/vendor/gems/paperclip-2.3.1.1/test/thumbnail_test.rb +0 -227
- data/vendor/gems/paperclip-2.3.1.1/test/upfile_test.rb +0 -28
- data/vendor/gems/shoulda-2.10.2/.specification +0 -224
- data/vendor/gems/shoulda-2.10.2/CONTRIBUTION_GUIDELINES.rdoc +0 -10
- data/vendor/gems/shoulda-2.10.2/MIT-LICENSE +0 -22
- data/vendor/gems/shoulda-2.10.2/README.rdoc +0 -171
- data/vendor/gems/shoulda-2.10.2/Rakefile +0 -72
- data/vendor/gems/shoulda-2.10.2/bin/convert_to_should_syntax +0 -42
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/action_controller/macros.rb +0 -240
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/action_controller/matchers/assign_to_matcher.rb +0 -109
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/action_controller/matchers/filter_param_matcher.rb +0 -57
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/action_controller/matchers/render_with_layout_matcher.rb +0 -81
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/action_controller/matchers/respond_with_content_type_matcher.rb +0 -74
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/action_controller/matchers/respond_with_matcher.rb +0 -81
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/action_controller/matchers/route_matcher.rb +0 -93
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/action_controller/matchers/set_session_matcher.rb +0 -87
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/action_controller/matchers/set_the_flash_matcher.rb +0 -85
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/action_controller/matchers.rb +0 -37
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/action_controller.rb +0 -26
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/action_mailer/assertions.rb +0 -38
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/action_mailer.rb +0 -10
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/action_view/macros.rb +0 -61
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/action_view.rb +0 -10
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/active_record/assertions.rb +0 -69
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/active_record/helpers.rb +0 -27
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/active_record/macros.rb +0 -512
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/active_record/matchers/allow_mass_assignment_of_matcher.rb +0 -83
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/active_record/matchers/allow_value_matcher.rb +0 -102
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/active_record/matchers/association_matcher.rb +0 -226
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/active_record/matchers/ensure_inclusion_of_matcher.rb +0 -87
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/active_record/matchers/ensure_length_of_matcher.rb +0 -141
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/active_record/matchers/have_db_column_matcher.rb +0 -169
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/active_record/matchers/have_db_index_matcher.rb +0 -112
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/active_record/matchers/have_named_scope_matcher.rb +0 -128
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/active_record/matchers/have_readonly_attribute_matcher.rb +0 -59
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/active_record/matchers/validate_acceptance_of_matcher.rb +0 -41
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/active_record/matchers/validate_format_of_matcher.rb +0 -67
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/active_record/matchers/validate_numericality_of_matcher.rb +0 -39
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/active_record/matchers/validate_presence_of_matcher.rb +0 -60
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/active_record/matchers/validate_uniqueness_of_matcher.rb +0 -148
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/active_record/matchers/validation_matcher.rb +0 -57
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/active_record/matchers.rb +0 -43
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/active_record.rb +0 -16
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/assertions.rb +0 -71
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/autoload_macros.rb +0 -46
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/context.rb +0 -402
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/helpers.rb +0 -8
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/macros.rb +0 -133
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/private_helpers.rb +0 -13
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/proc_extensions.rb +0 -14
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/rails.rb +0 -13
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/rspec.rb +0 -11
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/tasks/list_tests.rake +0 -29
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/tasks/yaml_to_shoulda.rake +0 -28
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/tasks.rb +0 -3
- data/vendor/gems/shoulda-2.10.2/lib/shoulda/test_unit.rb +0 -22
- data/vendor/gems/shoulda-2.10.2/lib/shoulda.rb +0 -9
- data/vendor/gems/shoulda-2.10.2/rails/init.rb +0 -7
- data/vendor/gems/shoulda-2.10.2/test/README +0 -36
- data/vendor/gems/shoulda-2.10.2/test/fail_macros.rb +0 -39
- data/vendor/gems/shoulda-2.10.2/test/fixtures/addresses.yml +0 -3
- data/vendor/gems/shoulda-2.10.2/test/fixtures/friendships.yml +0 -0
- data/vendor/gems/shoulda-2.10.2/test/fixtures/posts.yml +0 -5
- data/vendor/gems/shoulda-2.10.2/test/fixtures/products.yml +0 -0
- data/vendor/gems/shoulda-2.10.2/test/fixtures/taggings.yml +0 -0
- data/vendor/gems/shoulda-2.10.2/test/fixtures/tags.yml +0 -9
- data/vendor/gems/shoulda-2.10.2/test/fixtures/users.yml +0 -6
- data/vendor/gems/shoulda-2.10.2/test/functional/posts_controller_test.rb +0 -121
- data/vendor/gems/shoulda-2.10.2/test/functional/users_controller_test.rb +0 -19
- data/vendor/gems/shoulda-2.10.2/test/matchers/active_record/allow_mass_assignment_of_matcher_test.rb +0 -68
- data/vendor/gems/shoulda-2.10.2/test/matchers/active_record/allow_value_matcher_test.rb +0 -64
- data/vendor/gems/shoulda-2.10.2/test/matchers/active_record/association_matcher_test.rb +0 -263
- data/vendor/gems/shoulda-2.10.2/test/matchers/active_record/ensure_inclusion_of_matcher_test.rb +0 -80
- data/vendor/gems/shoulda-2.10.2/test/matchers/active_record/ensure_length_of_matcher_test.rb +0 -158
- data/vendor/gems/shoulda-2.10.2/test/matchers/active_record/have_db_column_matcher_test.rb +0 -169
- data/vendor/gems/shoulda-2.10.2/test/matchers/active_record/have_db_index_matcher_test.rb +0 -91
- data/vendor/gems/shoulda-2.10.2/test/matchers/active_record/have_named_scope_matcher_test.rb +0 -65
- data/vendor/gems/shoulda-2.10.2/test/matchers/active_record/have_readonly_attributes_matcher_test.rb +0 -29
- data/vendor/gems/shoulda-2.10.2/test/matchers/active_record/validate_acceptance_of_matcher_test.rb +0 -44
- data/vendor/gems/shoulda-2.10.2/test/matchers/active_record/validate_format_of_matcher_test.rb +0 -39
- data/vendor/gems/shoulda-2.10.2/test/matchers/active_record/validate_numericality_of_matcher_test.rb +0 -52
- data/vendor/gems/shoulda-2.10.2/test/matchers/active_record/validate_presence_of_matcher_test.rb +0 -86
- data/vendor/gems/shoulda-2.10.2/test/matchers/active_record/validate_uniqueness_of_matcher_test.rb +0 -147
- data/vendor/gems/shoulda-2.10.2/test/matchers/controller/assign_to_matcher_test.rb +0 -35
- data/vendor/gems/shoulda-2.10.2/test/matchers/controller/filter_param_matcher_test.rb +0 -32
- data/vendor/gems/shoulda-2.10.2/test/matchers/controller/render_with_layout_matcher_test.rb +0 -33
- data/vendor/gems/shoulda-2.10.2/test/matchers/controller/respond_with_content_type_matcher_test.rb +0 -32
- data/vendor/gems/shoulda-2.10.2/test/matchers/controller/respond_with_matcher_test.rb +0 -106
- data/vendor/gems/shoulda-2.10.2/test/matchers/controller/route_matcher_test.rb +0 -58
- data/vendor/gems/shoulda-2.10.2/test/matchers/controller/set_session_matcher_test.rb +0 -38
- data/vendor/gems/shoulda-2.10.2/test/matchers/controller/set_the_flash_matcher.rb +0 -41
- data/vendor/gems/shoulda-2.10.2/test/model_builder.rb +0 -106
- data/vendor/gems/shoulda-2.10.2/test/other/autoload_macro_test.rb +0 -18
- data/vendor/gems/shoulda-2.10.2/test/other/context_test.rb +0 -189
- data/vendor/gems/shoulda-2.10.2/test/other/convert_to_should_syntax_test.rb +0 -63
- data/vendor/gems/shoulda-2.10.2/test/other/helpers_test.rb +0 -340
- data/vendor/gems/shoulda-2.10.2/test/other/private_helpers_test.rb +0 -32
- data/vendor/gems/shoulda-2.10.2/test/other/should_test.rb +0 -271
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/controllers/application_controller.rb +0 -25
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/controllers/posts_controller.rb +0 -87
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/controllers/users_controller.rb +0 -84
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/helpers/application_helper.rb +0 -3
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/helpers/posts_helper.rb +0 -2
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/helpers/users_helper.rb +0 -2
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/models/address.rb +0 -7
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/models/flea.rb +0 -3
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/models/friendship.rb +0 -4
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/models/pets/cat.rb +0 -7
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/models/pets/dog.rb +0 -10
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/models/post.rb +0 -12
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/models/product.rb +0 -12
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/models/profile.rb +0 -2
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/models/registration.rb +0 -2
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/models/tag.rb +0 -8
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/models/tagging.rb +0 -4
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/models/treat.rb +0 -3
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/models/user.rb +0 -32
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/views/layouts/posts.rhtml +0 -19
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/views/layouts/users.rhtml +0 -17
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/views/layouts/wide.html.erb +0 -1
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/views/posts/edit.rhtml +0 -27
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/views/posts/index.rhtml +0 -25
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/views/posts/new.rhtml +0 -26
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/views/posts/show.rhtml +0 -18
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/views/users/edit.rhtml +0 -22
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/views/users/index.rhtml +0 -22
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/views/users/new.rhtml +0 -21
- data/vendor/gems/shoulda-2.10.2/test/rails_root/app/views/users/show.rhtml +0 -13
- data/vendor/gems/shoulda-2.10.2/test/rails_root/config/boot.rb +0 -110
- data/vendor/gems/shoulda-2.10.2/test/rails_root/config/database.yml +0 -4
- data/vendor/gems/shoulda-2.10.2/test/rails_root/config/environment.rb +0 -18
- data/vendor/gems/shoulda-2.10.2/test/rails_root/config/environments/test.rb +0 -0
- data/vendor/gems/shoulda-2.10.2/test/rails_root/config/initializers/new_rails_defaults.rb +0 -15
- data/vendor/gems/shoulda-2.10.2/test/rails_root/config/initializers/shoulda.rb +0 -8
- data/vendor/gems/shoulda-2.10.2/test/rails_root/config/routes.rb +0 -6
- data/vendor/gems/shoulda-2.10.2/test/rails_root/db/migrate/001_create_users.rb +0 -19
- data/vendor/gems/shoulda-2.10.2/test/rails_root/db/migrate/002_create_posts.rb +0 -13
- data/vendor/gems/shoulda-2.10.2/test/rails_root/db/migrate/003_create_taggings.rb +0 -12
- data/vendor/gems/shoulda-2.10.2/test/rails_root/db/migrate/004_create_tags.rb +0 -11
- data/vendor/gems/shoulda-2.10.2/test/rails_root/db/migrate/005_create_dogs.rb +0 -12
- data/vendor/gems/shoulda-2.10.2/test/rails_root/db/migrate/006_create_addresses.rb +0 -14
- data/vendor/gems/shoulda-2.10.2/test/rails_root/db/migrate/007_create_fleas.rb +0 -11
- data/vendor/gems/shoulda-2.10.2/test/rails_root/db/migrate/008_create_dogs_fleas.rb +0 -12
- data/vendor/gems/shoulda-2.10.2/test/rails_root/db/migrate/009_create_products.rb +0 -17
- data/vendor/gems/shoulda-2.10.2/test/rails_root/db/migrate/010_create_friendships.rb +0 -14
- data/vendor/gems/shoulda-2.10.2/test/rails_root/db/migrate/011_create_treats.rb +0 -12
- data/vendor/gems/shoulda-2.10.2/test/rails_root/db/migrate/20090506203502_create_profiles.rb +0 -12
- data/vendor/gems/shoulda-2.10.2/test/rails_root/db/migrate/20090506203536_create_registrations.rb +0 -14
- data/vendor/gems/shoulda-2.10.2/test/rails_root/db/migrate/20090513104502_create_cats.rb +0 -12
- data/vendor/gems/shoulda-2.10.2/test/rails_root/db/schema.rb +0 -0
- data/vendor/gems/shoulda-2.10.2/test/rails_root/public/404.html +0 -30
- data/vendor/gems/shoulda-2.10.2/test/rails_root/public/422.html +0 -30
- data/vendor/gems/shoulda-2.10.2/test/rails_root/public/500.html +0 -30
- data/vendor/gems/shoulda-2.10.2/test/rails_root/script/console +0 -3
- data/vendor/gems/shoulda-2.10.2/test/rails_root/script/generate +0 -3
- data/vendor/gems/shoulda-2.10.2/test/rails_root/test/shoulda_macros/custom_macro.rb +0 -6
- data/vendor/gems/shoulda-2.10.2/test/rails_root/vendor/gems/gem_with_macro-0.0.1/shoulda_macros/gem_macro.rb +0 -6
- data/vendor/gems/shoulda-2.10.2/test/rails_root/vendor/plugins/plugin_with_macro/shoulda_macros/plugin_macro.rb +0 -6
- data/vendor/gems/shoulda-2.10.2/test/rspec_test.rb +0 -207
- data/vendor/gems/shoulda-2.10.2/test/test_helper.rb +0 -28
- data/vendor/gems/shoulda-2.10.2/test/unit/address_test.rb +0 -10
- data/vendor/gems/shoulda-2.10.2/test/unit/cat_test.rb +0 -7
- data/vendor/gems/shoulda-2.10.2/test/unit/dog_test.rb +0 -9
- data/vendor/gems/shoulda-2.10.2/test/unit/flea_test.rb +0 -6
- data/vendor/gems/shoulda-2.10.2/test/unit/friendship_test.rb +0 -6
- data/vendor/gems/shoulda-2.10.2/test/unit/post_test.rb +0 -19
- data/vendor/gems/shoulda-2.10.2/test/unit/product_test.rb +0 -23
- data/vendor/gems/shoulda-2.10.2/test/unit/tag_test.rb +0 -15
- data/vendor/gems/shoulda-2.10.2/test/unit/tagging_test.rb +0 -6
- data/vendor/gems/shoulda-2.10.2/test/unit/user_test.rb +0 -80
- data/vendor/plugins/active_scaffold/.autotest +0 -27
- data/vendor/plugins/active_scaffold/CHANGELOG +0 -152
- data/vendor/plugins/active_scaffold/MIT-LICENSE +0 -20
- data/vendor/plugins/active_scaffold/README +0 -31
- data/vendor/plugins/active_scaffold/Rakefile +0 -24
- data/vendor/plugins/active_scaffold/environment.rb +0 -17
- data/vendor/plugins/active_scaffold/frontends/default/images/add.gif +0 -0
- data/vendor/plugins/active_scaffold/frontends/default/images/arrow_down.gif +0 -0
- data/vendor/plugins/active_scaffold/frontends/default/images/arrow_up.gif +0 -0
- data/vendor/plugins/active_scaffold/frontends/default/images/close.gif +0 -0
- data/vendor/plugins/active_scaffold/frontends/default/images/cross.png +0 -0
- data/vendor/plugins/active_scaffold/frontends/default/images/indicator-small.gif +0 -0
- data/vendor/plugins/active_scaffold/frontends/default/images/indicator.gif +0 -0
- data/vendor/plugins/active_scaffold/frontends/default/images/magnifier.png +0 -0
- data/vendor/plugins/active_scaffold/frontends/default/javascripts/active_scaffold.js +0 -434
- data/vendor/plugins/active_scaffold/frontends/default/javascripts/dhtml_history.js +0 -867
- data/vendor/plugins/active_scaffold/frontends/default/javascripts/form_enhancements.js +0 -117
- data/vendor/plugins/active_scaffold/frontends/default/javascripts/rico_corner.js +0 -370
- data/vendor/plugins/active_scaffold/frontends/default/stylesheets/stylesheet-ie.css +0 -35
- data/vendor/plugins/active_scaffold/frontends/default/stylesheets/stylesheet.css +0 -822
- data/vendor/plugins/active_scaffold/frontends/default/views/_add_existing_form.html.erb +0 -40
- data/vendor/plugins/active_scaffold/frontends/default/views/_create_form.html.erb +0 -51
- data/vendor/plugins/active_scaffold/frontends/default/views/_create_form_on_list.html.erb +0 -38
- data/vendor/plugins/active_scaffold/frontends/default/views/_field_search.html.erb +0 -45
- data/vendor/plugins/active_scaffold/frontends/default/views/_form.html.erb +0 -18
- data/vendor/plugins/active_scaffold/frontends/default/views/_form_association.html.erb +0 -20
- data/vendor/plugins/active_scaffold/frontends/default/views/_form_association_footer.html.erb +0 -42
- data/vendor/plugins/active_scaffold/frontends/default/views/_form_attribute.html.erb +0 -12
- data/vendor/plugins/active_scaffold/frontends/default/views/_form_hidden_attribute.html.erb +0 -1
- data/vendor/plugins/active_scaffold/frontends/default/views/_form_messages.html.erb +0 -5
- data/vendor/plugins/active_scaffold/frontends/default/views/_horizontal_subform.html.erb +0 -19
- data/vendor/plugins/active_scaffold/frontends/default/views/_horizontal_subform_header.html.erb +0 -10
- data/vendor/plugins/active_scaffold/frontends/default/views/_horizontal_subform_record.html.erb +0 -29
- data/vendor/plugins/active_scaffold/frontends/default/views/_list.html.erb +0 -37
- data/vendor/plugins/active_scaffold/frontends/default/views/_list_actions.html.erb +0 -13
- data/vendor/plugins/active_scaffold/frontends/default/views/_list_calculations.html.erb +0 -22
- data/vendor/plugins/active_scaffold/frontends/default/views/_list_column_headings.html.erb +0 -32
- data/vendor/plugins/active_scaffold/frontends/default/views/_list_header.html.erb +0 -14
- data/vendor/plugins/active_scaffold/frontends/default/views/_list_inline_adapter.html.erb +0 -9
- data/vendor/plugins/active_scaffold/frontends/default/views/_list_pagination_links.html.erb +0 -30
- data/vendor/plugins/active_scaffold/frontends/default/views/_list_record.html.erb +0 -36
- data/vendor/plugins/active_scaffold/frontends/default/views/_live_search.html.erb +0 -23
- data/vendor/plugins/active_scaffold/frontends/default/views/_messages.html.erb +0 -10
- data/vendor/plugins/active_scaffold/frontends/default/views/_nested.html.erb +0 -44
- data/vendor/plugins/active_scaffold/frontends/default/views/_search.html.erb +0 -20
- data/vendor/plugins/active_scaffold/frontends/default/views/_show.html.erb +0 -8
- data/vendor/plugins/active_scaffold/frontends/default/views/_show_columns.html.erb +0 -12
- data/vendor/plugins/active_scaffold/frontends/default/views/_update_actions.html.erb +0 -9
- data/vendor/plugins/active_scaffold/frontends/default/views/_update_form.html.erb +0 -55
- data/vendor/plugins/active_scaffold/frontends/default/views/_vertical_subform.html.erb +0 -12
- data/vendor/plugins/active_scaffold/frontends/default/views/_vertical_subform_record.html.erb +0 -31
- data/vendor/plugins/active_scaffold/frontends/default/views/add_existing.js.rjs +0 -16
- data/vendor/plugins/active_scaffold/frontends/default/views/add_existing_form.html.erb +0 -5
- data/vendor/plugins/active_scaffold/frontends/default/views/create.html.erb +0 -5
- data/vendor/plugins/active_scaffold/frontends/default/views/delete.html.erb +0 -13
- data/vendor/plugins/active_scaffold/frontends/default/views/destroy.js.rjs +0 -10
- data/vendor/plugins/active_scaffold/frontends/default/views/edit_associated.js.rjs +0 -14
- data/vendor/plugins/active_scaffold/frontends/default/views/field_search.html.erb +0 -5
- data/vendor/plugins/active_scaffold/frontends/default/views/form_messages.js.rjs +0 -1
- data/vendor/plugins/active_scaffold/frontends/default/views/form_messages_on_create.js.rjs +0 -2
- data/vendor/plugins/active_scaffold/frontends/default/views/form_messages_on_update.js.rjs +0 -2
- data/vendor/plugins/active_scaffold/frontends/default/views/list.html.erb +0 -48
- data/vendor/plugins/active_scaffold/frontends/default/views/on_create.js.rjs +0 -25
- data/vendor/plugins/active_scaffold/frontends/default/views/on_update.js.rjs +0 -11
- data/vendor/plugins/active_scaffold/frontends/default/views/render_field.js.rjs +0 -9
- data/vendor/plugins/active_scaffold/frontends/default/views/search.html.erb +0 -5
- data/vendor/plugins/active_scaffold/frontends/default/views/show.html.erb +0 -5
- data/vendor/plugins/active_scaffold/frontends/default/views/update.html.erb +0 -8
- data/vendor/plugins/active_scaffold/frontends/default/views/update_column.js.rjs +0 -12
- data/vendor/plugins/active_scaffold/init.rb +0 -18
- data/vendor/plugins/active_scaffold/install.rb +0 -39
- data/vendor/plugins/active_scaffold/install_assets.rb +0 -36
- data/vendor/plugins/active_scaffold/lib/active_record_permissions.rb +0 -128
- data/vendor/plugins/active_scaffold/lib/active_scaffold/actions/core.rb +0 -136
- data/vendor/plugins/active_scaffold/lib/active_scaffold/actions/create.rb +0 -158
- data/vendor/plugins/active_scaffold/lib/active_scaffold/actions/delete.rb +0 -72
- data/vendor/plugins/active_scaffold/lib/active_scaffold/actions/field_search.rb +0 -58
- data/vendor/plugins/active_scaffold/lib/active_scaffold/actions/list.rb +0 -95
- data/vendor/plugins/active_scaffold/lib/active_scaffold/actions/live_search.rb +0 -57
- data/vendor/plugins/active_scaffold/lib/active_scaffold/actions/nested.rb +0 -217
- data/vendor/plugins/active_scaffold/lib/active_scaffold/actions/search.rb +0 -50
- data/vendor/plugins/active_scaffold/lib/active_scaffold/actions/show.rb +0 -54
- data/vendor/plugins/active_scaffold/lib/active_scaffold/actions/subform.rb +0 -17
- data/vendor/plugins/active_scaffold/lib/active_scaffold/actions/update.rb +0 -126
- data/vendor/plugins/active_scaffold/lib/active_scaffold/attribute_params.rb +0 -192
- data/vendor/plugins/active_scaffold/lib/active_scaffold/config/base.rb +0 -45
- data/vendor/plugins/active_scaffold/lib/active_scaffold/config/core.rb +0 -230
- data/vendor/plugins/active_scaffold/lib/active_scaffold/config/create.rb +0 -43
- data/vendor/plugins/active_scaffold/lib/active_scaffold/config/delete.rb +0 -25
- data/vendor/plugins/active_scaffold/lib/active_scaffold/config/field_search.rb +0 -53
- data/vendor/plugins/active_scaffold/lib/active_scaffold/config/form.rb +0 -49
- data/vendor/plugins/active_scaffold/lib/active_scaffold/config/list.rb +0 -134
- data/vendor/plugins/active_scaffold/lib/active_scaffold/config/live_search.rb +0 -52
- data/vendor/plugins/active_scaffold/lib/active_scaffold/config/nested.rb +0 -34
- data/vendor/plugins/active_scaffold/lib/active_scaffold/config/search.rb +0 -52
- data/vendor/plugins/active_scaffold/lib/active_scaffold/config/show.rb +0 -36
- data/vendor/plugins/active_scaffold/lib/active_scaffold/config/subform.rb +0 -36
- data/vendor/plugins/active_scaffold/lib/active_scaffold/config/update.rb +0 -32
- data/vendor/plugins/active_scaffold/lib/active_scaffold/configurable.rb +0 -29
- data/vendor/plugins/active_scaffold/lib/active_scaffold/constraints.rb +0 -181
- data/vendor/plugins/active_scaffold/lib/active_scaffold/data_structures/action_columns.rb +0 -97
- data/vendor/plugins/active_scaffold/lib/active_scaffold/data_structures/action_link.rb +0 -140
- data/vendor/plugins/active_scaffold/lib/active_scaffold/data_structures/action_links.rb +0 -47
- data/vendor/plugins/active_scaffold/lib/active_scaffold/data_structures/actions.rb +0 -45
- data/vendor/plugins/active_scaffold/lib/active_scaffold/data_structures/column.rb +0 -311
- data/vendor/plugins/active_scaffold/lib/active_scaffold/data_structures/columns.rb +0 -75
- data/vendor/plugins/active_scaffold/lib/active_scaffold/data_structures/error_message.rb +0 -24
- data/vendor/plugins/active_scaffold/lib/active_scaffold/data_structures/set.rb +0 -62
- data/vendor/plugins/active_scaffold/lib/active_scaffold/data_structures/sorting.rb +0 -159
- data/vendor/plugins/active_scaffold/lib/active_scaffold/finder.rb +0 -216
- data/vendor/plugins/active_scaffold/lib/active_scaffold/helpers/association_helpers.rb +0 -40
- data/vendor/plugins/active_scaffold/lib/active_scaffold/helpers/controller_helpers.rb +0 -41
- data/vendor/plugins/active_scaffold/lib/active_scaffold/helpers/country_helpers.rb +0 -347
- data/vendor/plugins/active_scaffold/lib/active_scaffold/helpers/form_column_helpers.rb +0 -301
- data/vendor/plugins/active_scaffold/lib/active_scaffold/helpers/id_helpers.rb +0 -129
- data/vendor/plugins/active_scaffold/lib/active_scaffold/helpers/list_column_helpers.rb +0 -234
- data/vendor/plugins/active_scaffold/lib/active_scaffold/helpers/pagination_helpers.rb +0 -39
- data/vendor/plugins/active_scaffold/lib/active_scaffold/helpers/search_column_helpers.rb +0 -172
- data/vendor/plugins/active_scaffold/lib/active_scaffold/helpers/show_column_helpers.rb +0 -46
- data/vendor/plugins/active_scaffold/lib/active_scaffold/helpers/view_helpers.rb +0 -202
- data/vendor/plugins/active_scaffold/lib/active_scaffold/locale/de.rb +0 -67
- data/vendor/plugins/active_scaffold/lib/active_scaffold/locale/en.rb +0 -67
- data/vendor/plugins/active_scaffold/lib/active_scaffold/locale/es.yml +0 -65
- data/vendor/plugins/active_scaffold/lib/active_scaffold/locale/fr.rb +0 -65
- data/vendor/plugins/active_scaffold/lib/active_scaffold/locale/hu.yml +0 -62
- data/vendor/plugins/active_scaffold/lib/active_scaffold/locale/ja.yml +0 -63
- data/vendor/plugins/active_scaffold/lib/active_scaffold/locale/ru.yml +0 -61
- data/vendor/plugins/active_scaffold/lib/active_scaffold.rb +0 -213
- data/vendor/plugins/active_scaffold/lib/bridges/bridge.rb +0 -52
- data/vendor/plugins/active_scaffold/lib/bridges/calendar_date_select/bridge.rb +0 -11
- data/vendor/plugins/active_scaffold/lib/bridges/calendar_date_select/lib/as_cds_bridge.rb +0 -86
- data/vendor/plugins/active_scaffold/lib/bridges/file_column/bridge.rb +0 -12
- data/vendor/plugins/active_scaffold/lib/bridges/file_column/lib/as_file_column_bridge.rb +0 -49
- data/vendor/plugins/active_scaffold/lib/bridges/file_column/lib/file_column_helpers.rb +0 -51
- data/vendor/plugins/active_scaffold/lib/bridges/file_column/lib/form_ui.rb +0 -32
- data/vendor/plugins/active_scaffold/lib/bridges/file_column/lib/list_ui.rb +0 -26
- data/vendor/plugins/active_scaffold/lib/bridges/file_column/test/functional/file_column_keep_test.rb +0 -43
- data/vendor/plugins/active_scaffold/lib/bridges/file_column/test/mock_model.rb +0 -9
- data/vendor/plugins/active_scaffold/lib/bridges/file_column/test/test_helper.rb +0 -15
- data/vendor/plugins/active_scaffold/lib/bridges/tiny_mce/bridge.rb +0 -5
- data/vendor/plugins/active_scaffold/lib/bridges/tiny_mce/lib/tiny_mce_bridge.rb +0 -45
- data/vendor/plugins/active_scaffold/lib/dhtml_confirm.rb +0 -54
- data/vendor/plugins/active_scaffold/lib/extensions/action_controller_rendering.rb +0 -20
- data/vendor/plugins/active_scaffold/lib/extensions/action_view_rendering.rb +0 -88
- data/vendor/plugins/active_scaffold/lib/extensions/array.rb +0 -7
- data/vendor/plugins/active_scaffold/lib/extensions/component_response_with_namespacing.rb +0 -17
- data/vendor/plugins/active_scaffold/lib/extensions/generic_view_paths.rb +0 -33
- data/vendor/plugins/active_scaffold/lib/extensions/localize.rb +0 -10
- data/vendor/plugins/active_scaffold/lib/extensions/name_option_for_datetime.rb +0 -12
- data/vendor/plugins/active_scaffold/lib/extensions/nil_id_in_url_params.rb +0 -7
- data/vendor/plugins/active_scaffold/lib/extensions/resources.rb +0 -27
- data/vendor/plugins/active_scaffold/lib/extensions/reverse_associations.rb +0 -56
- data/vendor/plugins/active_scaffold/lib/extensions/to_label.rb +0 -8
- data/vendor/plugins/active_scaffold/lib/extensions/unsaved_associated.rb +0 -61
- data/vendor/plugins/active_scaffold/lib/extensions/unsaved_record.rb +0 -20
- data/vendor/plugins/active_scaffold/lib/extensions/usa_state.rb +0 -46
- data/vendor/plugins/active_scaffold/lib/paginator.rb +0 -136
- data/vendor/plugins/active_scaffold/lib/responds_to_parent.rb +0 -68
- data/vendor/plugins/active_scaffold/public/blank.html +0 -33
- data/vendor/plugins/active_scaffold/uninstall.rb +0 -13
- data/vendor/plugins/asset_packager/CHANGELOG +0 -122
- data/vendor/plugins/asset_packager/README +0 -178
- data/vendor/plugins/asset_packager/Rakefile +0 -22
- data/vendor/plugins/asset_packager/about.yml +0 -8
- data/vendor/plugins/asset_packager/init.rb +0 -3
- data/vendor/plugins/asset_packager/install.rb +0 -1
- data/vendor/plugins/asset_packager/lib/jsmin.rb +0 -211
- data/vendor/plugins/asset_packager/lib/synthesis/asset_package.rb +0 -210
- data/vendor/plugins/asset_packager/lib/synthesis/asset_package_helper.rb +0 -39
- data/vendor/plugins/asset_packager/lib/tasks/asset_packager_tasks.rake +0 -23
- data/vendor/plugins/asset_packager/test/asset_package_helper_development_test.rb +0 -102
- data/vendor/plugins/asset_packager/test/asset_package_helper_production_test.rb +0 -142
- data/vendor/plugins/asset_packager/test/asset_packager_test.rb +0 -91
- data/vendor/plugins/asset_packager/test/asset_packages.yml +0 -20
- data/vendor/plugins/asset_packager/test/assets/javascripts/application.js +0 -2
- data/vendor/plugins/asset_packager/test/assets/javascripts/bar.js +0 -4
- data/vendor/plugins/asset_packager/test/assets/javascripts/controls.js +0 -815
- data/vendor/plugins/asset_packager/test/assets/javascripts/dragdrop.js +0 -913
- data/vendor/plugins/asset_packager/test/assets/javascripts/effects.js +0 -958
- data/vendor/plugins/asset_packager/test/assets/javascripts/foo.js +0 -4
- data/vendor/plugins/asset_packager/test/assets/javascripts/prototype.js +0 -2006
- data/vendor/plugins/asset_packager/test/assets/stylesheets/bar.css +0 -16
- data/vendor/plugins/asset_packager/test/assets/stylesheets/foo.css +0 -16
- data/vendor/plugins/asset_packager/test/assets/stylesheets/header.css +0 -16
- data/vendor/plugins/asset_packager/test/assets/stylesheets/screen.css +0 -16
- data/vendor/plugins/asset_packager/test/assets/stylesheets/subdir/bar.css +0 -16
- data/vendor/plugins/asset_packager/test/assets/stylesheets/subdir/foo.css +0 -16
- data/vendor/plugins/exception_notification/README +0 -111
- data/vendor/plugins/exception_notification/init.rb +0 -1
- data/vendor/plugins/exception_notification/lib/exception_notifiable.rb +0 -99
- data/vendor/plugins/exception_notification/lib/exception_notifier.rb +0 -66
- data/vendor/plugins/exception_notification/lib/exception_notifier_helper.rb +0 -78
- data/vendor/plugins/exception_notification/test/exception_notifier_helper_test.rb +0 -61
- data/vendor/plugins/exception_notification/test/test_helper.rb +0 -7
- data/vendor/plugins/exception_notification/views/exception_notifier/_backtrace.rhtml +0 -1
- data/vendor/plugins/exception_notification/views/exception_notifier/_environment.rhtml +0 -7
- data/vendor/plugins/exception_notification/views/exception_notifier/_inspect_model.rhtml +0 -16
- data/vendor/plugins/exception_notification/views/exception_notifier/_request.rhtml +0 -4
- data/vendor/plugins/exception_notification/views/exception_notifier/_session.rhtml +0 -2
- data/vendor/plugins/exception_notification/views/exception_notifier/_title.rhtml +0 -3
- data/vendor/plugins/exception_notification/views/exception_notifier/exception_notification.rhtml +0 -6
- data/vendor/plugins/required_attributes/MIT-LICENSE +0 -20
- data/vendor/plugins/required_attributes/README +0 -13
- data/vendor/plugins/required_attributes/Rakefile +0 -22
- data/vendor/plugins/required_attributes/init.rb +0 -1
- data/vendor/plugins/required_attributes/install.rb +0 -1
- data/vendor/plugins/required_attributes/lib/required_attributes.rb +0 -68
- data/vendor/plugins/required_attributes/required_attributes/MIT-LICENSE +0 -20
- data/vendor/plugins/required_attributes/required_attributes/README +0 -13
- data/vendor/plugins/required_attributes/required_attributes/Rakefile +0 -22
- data/vendor/plugins/required_attributes/required_attributes/init.rb +0 -1
- data/vendor/plugins/required_attributes/required_attributes/install.rb +0 -1
- data/vendor/plugins/required_attributes/required_attributes/lib/required_attributes.rb +0 -68
- data/vendor/plugins/required_attributes/required_attributes/tasks/required_attributes_tasks.rake +0 -4
- data/vendor/plugins/required_attributes/required_attributes/uninstall.rb +0 -1
- data/vendor/plugins/required_attributes/tasks/required_attributes_tasks.rake +0 -4
- data/vendor/plugins/required_attributes/uninstall.rb +0 -1
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
module Authlogic
|
|
2
|
-
module Session
|
|
3
|
-
# Between these callsbacks and the configuration, this is the contract between me and you to safely
|
|
4
|
-
# modify Authlogic's behavior. I will do everything I can to make sure these do not change.
|
|
5
|
-
#
|
|
6
|
-
# Check out the sub modules of Authlogic::Session. They are very concise, clear, and to the point. More
|
|
7
|
-
# importantly they use the same API that you would use to extend Authlogic. That being said, they are great
|
|
8
|
-
# examples of how to extend Authlogic and add / modify behavior to Authlogic. These modules could easily be pulled out
|
|
9
|
-
# into their own plugin and become an "add on" without any change.
|
|
10
|
-
#
|
|
11
|
-
# Now to the point of this module. Just like in ActiveRecord you have before_save, before_validation, etc.
|
|
12
|
-
# You have similar callbacks with Authlogic, see the METHODS constant below. The order of execution is as follows:
|
|
13
|
-
#
|
|
14
|
-
# before_persisting
|
|
15
|
-
# persist
|
|
16
|
-
# after_persisting
|
|
17
|
-
# [save record if record.changed?]
|
|
18
|
-
#
|
|
19
|
-
# before_validation
|
|
20
|
-
# before_validation_on_create
|
|
21
|
-
# before_validation_on_update
|
|
22
|
-
# validate
|
|
23
|
-
# after_validation_on_update
|
|
24
|
-
# after_validation_on_create
|
|
25
|
-
# after_validation
|
|
26
|
-
# [save record if record.changed?]
|
|
27
|
-
#
|
|
28
|
-
# before_save
|
|
29
|
-
# before_create
|
|
30
|
-
# before_update
|
|
31
|
-
# after_update
|
|
32
|
-
# after_create
|
|
33
|
-
# after_save
|
|
34
|
-
# [save record if record.changed?]
|
|
35
|
-
#
|
|
36
|
-
# before_destroy
|
|
37
|
-
# [save record if record.changed?]
|
|
38
|
-
# destroy
|
|
39
|
-
# after_destroy
|
|
40
|
-
#
|
|
41
|
-
# Notice the "save record if changed?" lines above. This helps with performance. If you need to make
|
|
42
|
-
# changes to the associated record, there is no need to save the record, Authlogic will do it for you.
|
|
43
|
-
# This allows multiple modules to modify the record and execute as few queries as possible.
|
|
44
|
-
#
|
|
45
|
-
# **WARNING**: unlike ActiveRecord, these callbacks must be set up on the class level:
|
|
46
|
-
#
|
|
47
|
-
# class UserSession < Authlogic::Session::Base
|
|
48
|
-
# before_validation :my_method
|
|
49
|
-
# validate :another_method
|
|
50
|
-
# # ..etc
|
|
51
|
-
# end
|
|
52
|
-
#
|
|
53
|
-
# You can NOT define a "before_validation" method, this is bad practice and does not allow Authlogic
|
|
54
|
-
# to extend properly with multiple extensions. Please ONLY use the method above.
|
|
55
|
-
module Callbacks
|
|
56
|
-
METHODS = [
|
|
57
|
-
"before_persisting", "persist", "after_persisting",
|
|
58
|
-
"before_validation", "before_validation_on_create", "before_validation_on_update", "validate",
|
|
59
|
-
"after_validation_on_update", "after_validation_on_create", "after_validation",
|
|
60
|
-
"before_save", "before_create", "before_update", "after_update", "after_create", "after_save",
|
|
61
|
-
"before_destroy", "after_destroy"
|
|
62
|
-
]
|
|
63
|
-
|
|
64
|
-
def self.included(base) #:nodoc:
|
|
65
|
-
base.send :include, ActiveSupport::Callbacks
|
|
66
|
-
base.define_callbacks *METHODS
|
|
67
|
-
end
|
|
68
|
-
|
|
69
|
-
private
|
|
70
|
-
METHODS.each do |method|
|
|
71
|
-
class_eval <<-"end_eval", __FILE__, __LINE__
|
|
72
|
-
def #{method}
|
|
73
|
-
run_callbacks(:#{method}) { |result, object| result == false }
|
|
74
|
-
end
|
|
75
|
-
end_eval
|
|
76
|
-
end
|
|
77
|
-
|
|
78
|
-
def persist
|
|
79
|
-
run_callbacks(:persist) { |result, object| result == true }
|
|
80
|
-
end
|
|
81
|
-
|
|
82
|
-
def save_record(alternate_record = nil)
|
|
83
|
-
r = alternate_record || record
|
|
84
|
-
r.save_without_session_maintenance(false) if r && r.changed? && !r.readonly?
|
|
85
|
-
end
|
|
86
|
-
end
|
|
87
|
-
end
|
|
88
|
-
end
|
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
module Authlogic
|
|
2
|
-
module Session
|
|
3
|
-
# Handles all authentication that deals with cookies, such as persisting, saving, and destroying.
|
|
4
|
-
module Cookies
|
|
5
|
-
def self.included(klass)
|
|
6
|
-
klass.class_eval do
|
|
7
|
-
extend Config
|
|
8
|
-
include InstanceMethods
|
|
9
|
-
persist :persist_by_cookie
|
|
10
|
-
after_save :save_cookie
|
|
11
|
-
after_destroy :destroy_cookie
|
|
12
|
-
end
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
# Configuration for the cookie feature set.
|
|
16
|
-
module Config
|
|
17
|
-
# The name of the cookie or the key in the cookies hash. Be sure and use a unique name. If you have multiple sessions and they use the same cookie it will cause problems.
|
|
18
|
-
# Also, if a id is set it will be inserted into the beginning of the string. Exmaple:
|
|
19
|
-
#
|
|
20
|
-
# session = UserSession.new
|
|
21
|
-
# session.cookie_key => "user_credentials"
|
|
22
|
-
#
|
|
23
|
-
# session = UserSession.new(:super_high_secret)
|
|
24
|
-
# session.cookie_key => "super_high_secret_user_credentials"
|
|
25
|
-
#
|
|
26
|
-
# * <tt>Default:</tt> "#{guessed_klass_name.underscore}_credentials"
|
|
27
|
-
# * <tt>Accepts:</tt> String
|
|
28
|
-
def cookie_key(value = nil)
|
|
29
|
-
rw_config(:cookie_key, value, "#{guessed_klass_name.underscore}_credentials")
|
|
30
|
-
end
|
|
31
|
-
alias_method :cookie_key=, :cookie_key
|
|
32
|
-
|
|
33
|
-
# If sessions should be remembered by default or not.
|
|
34
|
-
#
|
|
35
|
-
# * <tt>Default:</tt> false
|
|
36
|
-
# * <tt>Accepts:</tt> Boolean
|
|
37
|
-
def remember_me(value = nil)
|
|
38
|
-
rw_config(:remember_me, value, false)
|
|
39
|
-
end
|
|
40
|
-
alias_method :remember_me=, :remember_me
|
|
41
|
-
|
|
42
|
-
# The length of time until the cookie expires.
|
|
43
|
-
#
|
|
44
|
-
# * <tt>Default:</tt> 3.months
|
|
45
|
-
# * <tt>Accepts:</tt> Integer, length of time in seconds, such as 60 or 3.months
|
|
46
|
-
def remember_me_for(value = :_read)
|
|
47
|
-
rw_config(:remember_me_for, value, 3.months, :_read)
|
|
48
|
-
end
|
|
49
|
-
alias_method :remember_me_for=, :remember_me_for
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
# The methods available for an Authlogic::Session::Base object that make up the cookie feature set.
|
|
53
|
-
module InstanceMethods
|
|
54
|
-
# Allows you to set the remember_me option when passing credentials.
|
|
55
|
-
def credentials=(value)
|
|
56
|
-
super
|
|
57
|
-
values = value.is_a?(Array) ? value : [value]
|
|
58
|
-
case values.first
|
|
59
|
-
when Hash
|
|
60
|
-
self.remember_me = values.first.with_indifferent_access[:remember_me] if values.first.with_indifferent_access.key?(:remember_me)
|
|
61
|
-
else
|
|
62
|
-
r = values.find { |value| value.is_a?(TrueClass) || value.is_a?(FalseClass) }
|
|
63
|
-
self.remember_me = r if !r.nil?
|
|
64
|
-
end
|
|
65
|
-
end
|
|
66
|
-
|
|
67
|
-
# Is the cookie going to expire after the session is over, or will it stick around?
|
|
68
|
-
def remember_me
|
|
69
|
-
return @remember_me if defined?(@remember_me)
|
|
70
|
-
@remember_me = self.class.remember_me
|
|
71
|
-
end
|
|
72
|
-
|
|
73
|
-
# Accepts a boolean as a flag to remember the session or not. Basically to expire the cookie at the end of the session or keep it for "remember_me_until".
|
|
74
|
-
def remember_me=(value)
|
|
75
|
-
@remember_me = value
|
|
76
|
-
end
|
|
77
|
-
|
|
78
|
-
# See remember_me
|
|
79
|
-
def remember_me?
|
|
80
|
-
remember_me == true || remember_me == "true" || remember_me == "1"
|
|
81
|
-
end
|
|
82
|
-
|
|
83
|
-
# How long to remember the user if remember_me is true. This is based on the class level configuration: remember_me_for
|
|
84
|
-
def remember_me_for
|
|
85
|
-
return unless remember_me?
|
|
86
|
-
self.class.remember_me_for
|
|
87
|
-
end
|
|
88
|
-
|
|
89
|
-
# When to expire the cookie. See remember_me_for configuration option to change this.
|
|
90
|
-
def remember_me_until
|
|
91
|
-
return unless remember_me?
|
|
92
|
-
remember_me_for.from_now
|
|
93
|
-
end
|
|
94
|
-
|
|
95
|
-
private
|
|
96
|
-
def cookie_key
|
|
97
|
-
build_key(self.class.cookie_key)
|
|
98
|
-
end
|
|
99
|
-
|
|
100
|
-
def cookie_credentials
|
|
101
|
-
controller.cookies[cookie_key] && controller.cookies[cookie_key].split("::")
|
|
102
|
-
end
|
|
103
|
-
|
|
104
|
-
# Tries to validate the session from information in the cookie
|
|
105
|
-
def persist_by_cookie
|
|
106
|
-
persistence_token, record_id = cookie_credentials
|
|
107
|
-
if !persistence_token.nil?
|
|
108
|
-
record = record_id.nil? ? search_for_record("find_by_persistence_token", persistence_token) : search_for_record("find_by_#{klass.primary_key}", record_id)
|
|
109
|
-
self.unauthorized_record = record if record && record.persistence_token == persistence_token
|
|
110
|
-
valid?
|
|
111
|
-
else
|
|
112
|
-
false
|
|
113
|
-
end
|
|
114
|
-
end
|
|
115
|
-
|
|
116
|
-
def save_cookie
|
|
117
|
-
controller.cookies[cookie_key] = {
|
|
118
|
-
:value => "#{record.persistence_token}::#{record.send(record.class.primary_key)}",
|
|
119
|
-
:expires => remember_me_until,
|
|
120
|
-
:domain => controller.cookie_domain
|
|
121
|
-
}
|
|
122
|
-
end
|
|
123
|
-
|
|
124
|
-
def destroy_cookie
|
|
125
|
-
controller.cookies.delete cookie_key, :domain => controller.cookie_domain
|
|
126
|
-
end
|
|
127
|
-
end
|
|
128
|
-
end
|
|
129
|
-
end
|
|
130
|
-
end
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
module Authlogic
|
|
2
|
-
module Session
|
|
3
|
-
# Provides methods to create and destroy objects. Basically controls their "existence".
|
|
4
|
-
module Existence
|
|
5
|
-
class SessionInvalidError < ::StandardError # :nodoc:
|
|
6
|
-
def initialize(session)
|
|
7
|
-
super("Your session is invalid and has the following errors: #{session.errors.full_messages.to_sentence}")
|
|
8
|
-
end
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
def self.included(klass)
|
|
12
|
-
klass.class_eval do
|
|
13
|
-
extend ClassMethods
|
|
14
|
-
include InstanceMethods
|
|
15
|
-
attr_accessor :new_session, :record
|
|
16
|
-
end
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
module ClassMethods
|
|
20
|
-
# A convenince method. The same as:
|
|
21
|
-
#
|
|
22
|
-
# session = UserSession.new(*args)
|
|
23
|
-
# session.save
|
|
24
|
-
#
|
|
25
|
-
# Instead you can do:
|
|
26
|
-
#
|
|
27
|
-
# UserSession.create(*args)
|
|
28
|
-
def create(*args, &block)
|
|
29
|
-
session = new(*args)
|
|
30
|
-
session.save(&block)
|
|
31
|
-
session
|
|
32
|
-
end
|
|
33
|
-
|
|
34
|
-
# Same as create but calls create!, which raises an exception when validation fails.
|
|
35
|
-
def create!(*args)
|
|
36
|
-
session = new(*args)
|
|
37
|
-
session.save!
|
|
38
|
-
session
|
|
39
|
-
end
|
|
40
|
-
end
|
|
41
|
-
|
|
42
|
-
module InstanceMethods
|
|
43
|
-
# Clears all errors and the associated record, you should call this terminate a session, thus requring
|
|
44
|
-
# the user to authenticate again if it is needed.
|
|
45
|
-
def destroy
|
|
46
|
-
before_destroy
|
|
47
|
-
save_record
|
|
48
|
-
errors.clear
|
|
49
|
-
@record = nil
|
|
50
|
-
after_destroy
|
|
51
|
-
true
|
|
52
|
-
end
|
|
53
|
-
|
|
54
|
-
# Returns true if the session is new, meaning no action has been taken on it and a successful save
|
|
55
|
-
# has not taken place.
|
|
56
|
-
def new_session?
|
|
57
|
-
new_session != false
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
# After you have specified all of the details for your session you can try to save it. This will
|
|
61
|
-
# run validation checks and find the associated record, if all validation passes. If validation
|
|
62
|
-
# does not pass, the save will fail and the erorrs will be stored in the errors object.
|
|
63
|
-
def save(&block)
|
|
64
|
-
result = nil
|
|
65
|
-
if valid?
|
|
66
|
-
self.record = attempted_record
|
|
67
|
-
|
|
68
|
-
before_save
|
|
69
|
-
new_session? ? before_create : before_update
|
|
70
|
-
new_session? ? after_create : after_update
|
|
71
|
-
after_save
|
|
72
|
-
|
|
73
|
-
save_record
|
|
74
|
-
self.new_session = false
|
|
75
|
-
result = true
|
|
76
|
-
else
|
|
77
|
-
result = false
|
|
78
|
-
end
|
|
79
|
-
|
|
80
|
-
yield result if block_given?
|
|
81
|
-
result
|
|
82
|
-
end
|
|
83
|
-
|
|
84
|
-
# Same as save but raises an exception of validation errors when validation fails
|
|
85
|
-
def save!
|
|
86
|
-
result = save
|
|
87
|
-
raise SessionInvalidError.new(self) unless result
|
|
88
|
-
result
|
|
89
|
-
end
|
|
90
|
-
end
|
|
91
|
-
end
|
|
92
|
-
end
|
|
93
|
-
end
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
module Authlogic
|
|
2
|
-
module Session
|
|
3
|
-
# Sort of like an interface, it sets the foundation for the class, such as the required methods. This also allows
|
|
4
|
-
# other modules to overwrite methods and call super on them. It's also a place to put "utility" methods used
|
|
5
|
-
# throughout Authlogic.
|
|
6
|
-
module Foundation
|
|
7
|
-
def self.included(klass)
|
|
8
|
-
klass.class_eval do
|
|
9
|
-
extend ClassMethods
|
|
10
|
-
include InstanceMethods
|
|
11
|
-
end
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
module ClassMethods
|
|
15
|
-
private
|
|
16
|
-
def rw_config(key, value, default_value = nil, read_value = nil)
|
|
17
|
-
if value == read_value
|
|
18
|
-
return read_inheritable_attribute(key) if inheritable_attributes.include?(key)
|
|
19
|
-
write_inheritable_attribute(key, default_value)
|
|
20
|
-
else
|
|
21
|
-
write_inheritable_attribute(key, value)
|
|
22
|
-
end
|
|
23
|
-
end
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
module InstanceMethods
|
|
27
|
-
def initialize(*args)
|
|
28
|
-
self.credentials = args
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
# The credentials you passed to create your session. See credentials= for more info.
|
|
32
|
-
def credentials
|
|
33
|
-
[]
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
# Set your credentials before you save your session. You can pass a hash of credentials:
|
|
37
|
-
#
|
|
38
|
-
# session.credentials = {:login => "my login", :password => "my password", :remember_me => true}
|
|
39
|
-
#
|
|
40
|
-
# or you can pass an array of objects:
|
|
41
|
-
#
|
|
42
|
-
# session.credentails = [my_user_object, true]
|
|
43
|
-
#
|
|
44
|
-
# and if you need to set an id, just pass it last. This value need be the last item in the array you pass, since the id is something that
|
|
45
|
-
# you control yourself, it should never be set from a hash or a form. Examples:
|
|
46
|
-
#
|
|
47
|
-
# session.credentials = [{:login => "my login", :password => "my password", :remember_me => true}, :my_id]
|
|
48
|
-
# session.credentials = [my_user_object, true, :my_id]
|
|
49
|
-
def credentials=(values)
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
def inspect
|
|
53
|
-
"#<#{self.class.name}: #{credentials.blank? ? "no credentials provided" : credentials.inspect}>"
|
|
54
|
-
end
|
|
55
|
-
|
|
56
|
-
private
|
|
57
|
-
def build_key(last_part)
|
|
58
|
-
last_part
|
|
59
|
-
end
|
|
60
|
-
end
|
|
61
|
-
end
|
|
62
|
-
end
|
|
63
|
-
end
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
module Authlogic
|
|
2
|
-
module Session
|
|
3
|
-
# Handles all authentication that deals with basic HTTP auth. Which is authentication built into the HTTP protocol:
|
|
4
|
-
#
|
|
5
|
-
# http://username:password@whatever.com
|
|
6
|
-
#
|
|
7
|
-
# Also, if you are not comfortable letting users pass their raw username and password you can always use the single
|
|
8
|
-
# access token. See Authlogic::Session::Params for more info.
|
|
9
|
-
module HttpAuth
|
|
10
|
-
def self.included(klass)
|
|
11
|
-
klass.class_eval do
|
|
12
|
-
extend Config
|
|
13
|
-
include InstanceMethods
|
|
14
|
-
persist :persist_by_http_auth, :if => :persist_by_http_auth?
|
|
15
|
-
end
|
|
16
|
-
end
|
|
17
|
-
|
|
18
|
-
# Configuration for the HTTP basic auth feature of Authlogic.
|
|
19
|
-
module Config
|
|
20
|
-
# Do you want to allow your users to log in via HTTP basic auth?
|
|
21
|
-
#
|
|
22
|
-
# I recommend keeping this enabled. The only time I feel this should be disabled is if you are not comfortable
|
|
23
|
-
# having your users provide their raw username and password. Whatever the reason, you can disable it here.
|
|
24
|
-
#
|
|
25
|
-
# * <tt>Default:</tt> true
|
|
26
|
-
# * <tt>Accepts:</tt> Boolean
|
|
27
|
-
def allow_http_basic_auth(value = nil)
|
|
28
|
-
rw_config(:allow_http_basic_auth, value, true)
|
|
29
|
-
end
|
|
30
|
-
alias_method :allow_http_basic_auth=, :allow_http_basic_auth
|
|
31
|
-
end
|
|
32
|
-
|
|
33
|
-
# Instance methods for the HTTP basic auth feature of authlogic.
|
|
34
|
-
module InstanceMethods
|
|
35
|
-
private
|
|
36
|
-
def persist_by_http_auth?
|
|
37
|
-
allow_http_basic_auth? && login_field && password_field
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
def persist_by_http_auth
|
|
41
|
-
controller.authenticate_with_http_basic do |login, password|
|
|
42
|
-
if !login.blank? && !password.blank?
|
|
43
|
-
send("#{login_field}=", login)
|
|
44
|
-
send("#{password_field}=", password)
|
|
45
|
-
return valid?
|
|
46
|
-
end
|
|
47
|
-
end
|
|
48
|
-
|
|
49
|
-
false
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
def allow_http_basic_auth?
|
|
53
|
-
self.class.allow_http_basic_auth == true
|
|
54
|
-
end
|
|
55
|
-
end
|
|
56
|
-
end
|
|
57
|
-
end
|
|
58
|
-
end
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
module Authlogic
|
|
2
|
-
module Session
|
|
3
|
-
# Allows you to separate sessions with an id, ultimately letting you create multiple sessions for the same user.
|
|
4
|
-
module Id
|
|
5
|
-
def self.included(klass)
|
|
6
|
-
klass.class_eval do
|
|
7
|
-
attr_writer :id
|
|
8
|
-
end
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
# Setting the id if it is passed in the credentials.
|
|
12
|
-
def credentials=(value)
|
|
13
|
-
super
|
|
14
|
-
values = value.is_a?(Array) ? value : [value]
|
|
15
|
-
self.id = values.last if values.last.is_a?(Symbol)
|
|
16
|
-
end
|
|
17
|
-
|
|
18
|
-
# Allows you to set a unique identifier for your session, so that you can have more than 1 session at a time.
|
|
19
|
-
# A good example when this might be needed is when you want to have a normal user session and a "secure" user session.
|
|
20
|
-
# The secure user session would be created only when they want to modify their billing information, or other sensitive
|
|
21
|
-
# information. Similar to me.com. This requires 2 user sessions. Just use an id for the "secure" session and you should be good.
|
|
22
|
-
#
|
|
23
|
-
# You can set the id during initialization (see initialize for more information), or as an attribute:
|
|
24
|
-
#
|
|
25
|
-
# session.id = :my_id
|
|
26
|
-
#
|
|
27
|
-
# Just be sure and set your id before you save your session.
|
|
28
|
-
#
|
|
29
|
-
# Lastly, to retrieve your session with the id check out the find class method.
|
|
30
|
-
def id
|
|
31
|
-
@id
|
|
32
|
-
end
|
|
33
|
-
|
|
34
|
-
private
|
|
35
|
-
# Used for things like cookie_key, session_key, etc.
|
|
36
|
-
def build_key(last_part)
|
|
37
|
-
[id, super].compact.join("_")
|
|
38
|
-
end
|
|
39
|
-
end
|
|
40
|
-
end
|
|
41
|
-
end
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
module Authlogic
|
|
2
|
-
module Session
|
|
3
|
-
# Handles authenticating via a traditional username and password.
|
|
4
|
-
module Klass
|
|
5
|
-
def self.included(klass)
|
|
6
|
-
klass.class_eval do
|
|
7
|
-
extend Config
|
|
8
|
-
include InstanceMethods
|
|
9
|
-
|
|
10
|
-
class << self
|
|
11
|
-
attr_accessor :configured_klass_methods
|
|
12
|
-
end
|
|
13
|
-
end
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
module Config
|
|
17
|
-
# Lets you change which model to use for authentication.
|
|
18
|
-
#
|
|
19
|
-
# * <tt>Default:</tt> inferred from the class name. UserSession would automatically try User
|
|
20
|
-
# * <tt>Accepts:</tt> an ActiveRecord class
|
|
21
|
-
def authenticate_with(klass)
|
|
22
|
-
@klass_name = klass.name
|
|
23
|
-
@klass = klass
|
|
24
|
-
end
|
|
25
|
-
alias_method :authenticate_with=, :authenticate_with
|
|
26
|
-
|
|
27
|
-
# The name of the class that this session is authenticating with. For example, the UserSession class will
|
|
28
|
-
# authenticate with the User class unless you specify otherwise in your configuration. See authenticate_with
|
|
29
|
-
# for information on how to change this value.
|
|
30
|
-
def klass
|
|
31
|
-
@klass ||=
|
|
32
|
-
if klass_name
|
|
33
|
-
klass_name.constantize
|
|
34
|
-
else
|
|
35
|
-
nil
|
|
36
|
-
end
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
# Same as klass, just returns a string instead of the actual constant.
|
|
40
|
-
def klass_name
|
|
41
|
-
@klass_name ||= guessed_klass_name
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
# The string of the model name class guessed from the actual session class name.
|
|
45
|
-
def guessed_klass_name
|
|
46
|
-
guessed_name = name.scan(/(.*)Session/)[0]
|
|
47
|
-
guessed_name[0] if guessed_name
|
|
48
|
-
end
|
|
49
|
-
end
|
|
50
|
-
|
|
51
|
-
module InstanceMethods
|
|
52
|
-
# Creating an alias method for the "record" method based on the klass name, so that we can do:
|
|
53
|
-
#
|
|
54
|
-
# session.user
|
|
55
|
-
#
|
|
56
|
-
# instead of:
|
|
57
|
-
#
|
|
58
|
-
# session.record
|
|
59
|
-
def initialize(*args)
|
|
60
|
-
if !self.class.configured_klass_methods
|
|
61
|
-
self.class.send(:alias_method, klass_name.demodulize.underscore.to_sym, :record)
|
|
62
|
-
self.class.configured_klass_methods = true
|
|
63
|
-
end
|
|
64
|
-
super
|
|
65
|
-
end
|
|
66
|
-
|
|
67
|
-
private
|
|
68
|
-
def klass
|
|
69
|
-
self.class.klass
|
|
70
|
-
end
|
|
71
|
-
|
|
72
|
-
def klass_name
|
|
73
|
-
self.class.klass_name
|
|
74
|
-
end
|
|
75
|
-
end
|
|
76
|
-
end
|
|
77
|
-
end
|
|
78
|
-
end
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
module Authlogic
|
|
2
|
-
module Session
|
|
3
|
-
# Just like ActiveRecord has "magic" columns, such as: created_at and updated_at. Authlogic has its own "magic" columns too:
|
|
4
|
-
#
|
|
5
|
-
# Column name Description
|
|
6
|
-
# login_count Increased every time an explicit login is made. This will *NOT* increase if logging in by a session, cookie, or basic http auth
|
|
7
|
-
# failed_login_count This increases for each consecutive failed login. See Authlogic::Session::BruteForceProtection and the consecutive_failed_logins_limit config option for more details.
|
|
8
|
-
# last_request_at Updates every time the user logs in, either by explicitly logging in, or logging in by cookie, session, or http auth
|
|
9
|
-
# current_login_at Updates with the current time when an explicit login is made.
|
|
10
|
-
# last_login_at Updates with the value of current_login_at before it is reset.
|
|
11
|
-
# current_login_ip Updates with the request remote_ip when an explicit login is made.
|
|
12
|
-
# last_login_ip Updates with the value of current_login_ip before it is reset.
|
|
13
|
-
module MagicColumns
|
|
14
|
-
def self.included(klass)
|
|
15
|
-
klass.class_eval do
|
|
16
|
-
extend Config
|
|
17
|
-
include InstanceMethods
|
|
18
|
-
after_persisting :set_last_request_at, :if => :set_last_request_at?
|
|
19
|
-
validate :increase_failed_login_count
|
|
20
|
-
before_save :update_info
|
|
21
|
-
before_save :set_last_request_at, :if => :set_last_request_at?
|
|
22
|
-
end
|
|
23
|
-
end
|
|
24
|
-
|
|
25
|
-
# Configuration for the magic columns feature.
|
|
26
|
-
module Config
|
|
27
|
-
# Every time a session is found the last_request_at field for that record is updatd with the current time, if that field exists.
|
|
28
|
-
# If you want to limit how frequent that field is updated specify the threshold here. For example, if your user is making a
|
|
29
|
-
# request every 5 seconds, and you feel this is too frequent, and feel a minute is a good threashold. Set this to 1.minute.
|
|
30
|
-
# Once a minute has passed in between requests the field will be updated.
|
|
31
|
-
#
|
|
32
|
-
# * <tt>Default:</tt> 0
|
|
33
|
-
# * <tt>Accepts:</tt> integer representing time in seconds
|
|
34
|
-
def last_request_at_threshold(value = nil)
|
|
35
|
-
rw_config(:last_request_at_threshold, value, 0)
|
|
36
|
-
end
|
|
37
|
-
alias_method :last_request_at_threshold=, :last_request_at_threshold
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
# The methods available for an Authlogic::Session::Base object that make up the magic columns feature.
|
|
41
|
-
module InstanceMethods
|
|
42
|
-
private
|
|
43
|
-
def increase_failed_login_count
|
|
44
|
-
if invalid_password? && attempted_record.respond_to?(:failed_login_count)
|
|
45
|
-
attempted_record.failed_login_count ||= 0
|
|
46
|
-
attempted_record.failed_login_count += 1
|
|
47
|
-
end
|
|
48
|
-
end
|
|
49
|
-
|
|
50
|
-
def update_info
|
|
51
|
-
record.login_count = (record.login_count.blank? ? 1 : record.login_count + 1) if record.respond_to?(:login_count)
|
|
52
|
-
record.failed_login_count = 0 if record.respond_to?(:failed_login_count)
|
|
53
|
-
|
|
54
|
-
if record.respond_to?(:current_login_at)
|
|
55
|
-
record.last_login_at = record.current_login_at if record.respond_to?(:last_login_at)
|
|
56
|
-
record.current_login_at = klass.default_timezone == :utc ? Time.now.utc : Time.now
|
|
57
|
-
end
|
|
58
|
-
|
|
59
|
-
if record.respond_to?(:current_login_ip)
|
|
60
|
-
record.last_login_ip = record.current_login_ip if record.respond_to?(:last_login_ip)
|
|
61
|
-
record.current_login_ip = controller.request.remote_ip
|
|
62
|
-
end
|
|
63
|
-
end
|
|
64
|
-
|
|
65
|
-
# This method lets authlogic know whether it should allow the last_request_at field to be updated
|
|
66
|
-
# with the current time (Time.now). One thing to note here is that it also checks for the existence of a
|
|
67
|
-
# last_request_update_allowed? method in your controller. This allows you to control this method pragmatically
|
|
68
|
-
# in your controller.
|
|
69
|
-
#
|
|
70
|
-
# For example, what if you had a javascript function that polled the server updating how much time is left in their
|
|
71
|
-
# session before it times out. Obviously you would want to ignore this request, because then the user would never time out.
|
|
72
|
-
# So you can do something like this in your controller:
|
|
73
|
-
#
|
|
74
|
-
# def last_request_update_allowed?
|
|
75
|
-
# action_name =! "update_session_time_left"
|
|
76
|
-
# end
|
|
77
|
-
#
|
|
78
|
-
# You can do whatever you want with that method.
|
|
79
|
-
def set_last_request_at? # :doc:
|
|
80
|
-
return false if !record || !klass.column_names.include?("last_request_at")
|
|
81
|
-
return controller.last_request_update_allowed? if controller.responds_to_last_request_update_allowed?
|
|
82
|
-
record.last_request_at.blank? || last_request_at_threshold.to_i.seconds.ago >= record.last_request_at
|
|
83
|
-
end
|
|
84
|
-
|
|
85
|
-
def set_last_request_at
|
|
86
|
-
record.last_request_at = klass.default_timezone == :utc ? Time.now.utc : Time.now
|
|
87
|
-
end
|
|
88
|
-
|
|
89
|
-
def last_request_at_threshold
|
|
90
|
-
self.class.last_request_at_threshold
|
|
91
|
-
end
|
|
92
|
-
end
|
|
93
|
-
end
|
|
94
|
-
end
|
|
95
|
-
end
|