elucid-rails_admin 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Gemfile +54 -0
- data/LICENSE.md +20 -0
- data/README.md +1334 -0
- data/Rakefile +14 -0
- data/app/assets/images/rails_admin/aristo/images/bg_fallback.png +0 -0
- data/app/assets/images/rails_admin/aristo/images/icon_sprite.png +0 -0
- data/app/assets/images/rails_admin/aristo/images/progress_bar.gif +0 -0
- data/app/assets/images/rails_admin/aristo/images/slider_handles.png +0 -0
- data/app/assets/images/rails_admin/aristo/images/ui-icons_222222_256x240.png +0 -0
- data/app/assets/images/rails_admin/aristo/images/ui-icons_454545_256x240.png +0 -0
- data/app/assets/images/rails_admin/bullet_black.png +0 -0
- data/app/assets/images/rails_admin/bullet_white.png +0 -0
- data/app/assets/images/rails_admin/calendar.png +0 -0
- data/app/assets/images/rails_admin/clock.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/colorpicker_background.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/colorpicker_hex.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/colorpicker_hsb_b.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/colorpicker_hsb_h.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/colorpicker_hsb_s.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/colorpicker_indic.gif +0 -0
- data/app/assets/images/rails_admin/colorpicker/colorpicker_overlay.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/colorpicker_rgb_b.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/colorpicker_rgb_g.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/colorpicker_rgb_r.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/colorpicker_select.gif +0 -0
- data/app/assets/images/rails_admin/colorpicker/colorpicker_submit.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/custom_background.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/custom_hex.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/custom_hsb_b.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/custom_hsb_h.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/custom_hsb_s.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/custom_indic.gif +0 -0
- data/app/assets/images/rails_admin/colorpicker/custom_rgb_b.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/custom_rgb_g.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/custom_rgb_r.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/custom_submit.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/select.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/select2.png +0 -0
- data/app/assets/images/rails_admin/colorpicker/slider.png +0 -0
- data/app/assets/images/rails_admin/logo.png +0 -0
- data/app/assets/images/rails_admin/magnifier.png +0 -0
- data/app/assets/images/rails_admin/multiselect/icon_sprite.png +0 -0
- data/app/assets/images/rails_admin/multiselect/ui-icon-circle-triangle-n-dark.png +0 -0
- data/app/assets/images/rails_admin/multiselect/ui-icon-circle-triangle-n-light.png +0 -0
- data/app/assets/images/rails_admin/multiselect/ui-icon-circle-triangle-s-dark.png +0 -0
- data/app/assets/images/rails_admin/multiselect/ui-icon-circle-triangle-s-light.png +0 -0
- data/app/assets/javascripts/rails_admin/custom/ui.js +1 -0
- data/app/assets/javascripts/rails_admin/jquery-ui-1.8.16.custom.js +5019 -0
- data/app/assets/javascripts/rails_admin/jquery.colorpicker.js +484 -0
- data/app/assets/javascripts/rails_admin/jquery.ui.timepicker.js +1219 -0
- data/app/assets/javascripts/rails_admin/ra.datetimepicker.js +67 -0
- data/app/assets/javascripts/rails_admin/ra.filter-box.js +119 -0
- data/app/assets/javascripts/rails_admin/ra.filtering-multiselect.js +280 -0
- data/app/assets/javascripts/rails_admin/ra.filtering-select.js +181 -0
- data/app/assets/javascripts/rails_admin/ra.remote-form.js +147 -0
- data/app/assets/javascripts/rails_admin/rails_admin.js.erb +17 -0
- data/app/assets/javascripts/rails_admin/themes/default/ui.js +1 -0
- data/app/assets/javascripts/rails_admin/ui.js.coffee +30 -0
- data/app/assets/stylesheets/rails_admin/aristo/images/bg_fallback.png +0 -0
- data/app/assets/stylesheets/rails_admin/aristo/images/icon_sprite.png +0 -0
- data/app/assets/stylesheets/rails_admin/aristo/images/progress_bar.gif +0 -0
- data/app/assets/stylesheets/rails_admin/aristo/images/slider_handles.png +0 -0
- data/app/assets/stylesheets/rails_admin/aristo/images/ui-icons_222222_256x240.png +0 -0
- data/app/assets/stylesheets/rails_admin/aristo/images/ui-icons_454545_256x240.png +0 -0
- data/app/assets/stylesheets/rails_admin/aristo/jquery-ui-1.8.7.custom.css.scss +733 -0
- data/app/assets/stylesheets/rails_admin/base/README +2 -0
- data/app/assets/stylesheets/rails_admin/base/mixins.css.scss +1 -0
- data/app/assets/stylesheets/rails_admin/base/theming.css.scss +102 -0
- data/app/assets/stylesheets/rails_admin/base/variables.css.scss +1 -0
- data/app/assets/stylesheets/rails_admin/custom/README +3 -0
- data/app/assets/stylesheets/rails_admin/custom/mixins.css.scss +9 -0
- data/app/assets/stylesheets/rails_admin/custom/theming.css.scss +11 -0
- data/app/assets/stylesheets/rails_admin/custom/variables.css.scss +11 -0
- data/app/assets/stylesheets/rails_admin/imports.css.scss.erb +51 -0
- data/app/assets/stylesheets/rails_admin/jquery.colorpicker.css.scss +180 -0
- data/app/assets/stylesheets/rails_admin/jquery.ui.timepicker.css.scss +53 -0
- data/app/assets/stylesheets/rails_admin/ra.calendar-additions.css.scss +25 -0
- data/app/assets/stylesheets/rails_admin/ra.filtering-multiselect.css.scss +85 -0
- data/app/assets/stylesheets/rails_admin/rails_admin.css +4 -0
- data/app/assets/stylesheets/rails_admin/themes/README +11 -0
- data/app/assets/stylesheets/rails_admin/themes/default/mixins.css.scss +1 -0
- data/app/assets/stylesheets/rails_admin/themes/default/theming.css.scss +1 -0
- data/app/assets/stylesheets/rails_admin/themes/default/variables.css.scss +1 -0
- data/app/controllers/rails_admin/application_controller.rb +62 -0
- data/app/controllers/rails_admin/history_controller.rb +26 -0
- data/app/controllers/rails_admin/main_controller.rb +371 -0
- data/app/helpers/rails_admin/application_helper.rb +65 -0
- data/app/helpers/rails_admin/form_builder.rb +52 -0
- data/app/helpers/rails_admin/main_helper.rb +100 -0
- data/app/models/rails_admin/history.rb +64 -0
- data/app/views/kaminari/twitter-bootstrap/_gap.html.haml +2 -0
- data/app/views/kaminari/twitter-bootstrap/_next_page.html.haml +4 -0
- data/app/views/kaminari/twitter-bootstrap/_page.html.haml +4 -0
- data/app/views/kaminari/twitter-bootstrap/_paginator.html.haml +10 -0
- data/app/views/kaminari/twitter-bootstrap/_prev_page.html.haml +4 -0
- data/app/views/layouts/rails_admin/_navigation.html.haml +19 -0
- data/app/views/layouts/rails_admin/_secondary_navigation.html.haml +9 -0
- data/app/views/layouts/rails_admin/application.html.haml +41 -0
- data/app/views/rails_admin/history/_dashboard.html.haml +10 -0
- data/app/views/rails_admin/history/show.html.haml +42 -0
- data/app/views/rails_admin/main/_delete_notice.html.haml +19 -0
- data/app/views/rails_admin/main/_form_colorpicker.html.haml +26 -0
- data/app/views/rails_admin/main/_form_datetime.html.haml +7 -0
- data/app/views/rails_admin/main/_form_enumeration.html.haml +5 -0
- data/app/views/rails_admin/main/_form_field.html.haml +1 -0
- data/app/views/rails_admin/main/_form_file_upload.html.haml +19 -0
- data/app/views/rails_admin/main/_form_filtering_multiselect.html.haml +57 -0
- data/app/views/rails_admin/main/_form_filtering_select.html.haml +47 -0
- data/app/views/rails_admin/main/_form_polymorphic_association.html.haml +36 -0
- data/app/views/rails_admin/main/_form_text.html.haml +13 -0
- data/app/views/rails_admin/main/_models_links.html.haml +31 -0
- data/app/views/rails_admin/main/_object_links.html.haml +23 -0
- data/app/views/rails_admin/main/_submit_buttons.html.haml +12 -0
- data/app/views/rails_admin/main/bulk_delete.html.haml +6 -0
- data/app/views/rails_admin/main/dashboard.html.haml +31 -0
- data/app/views/rails_admin/main/delete.html.haml +13 -0
- data/app/views/rails_admin/main/edit.html.haml +2 -0
- data/app/views/rails_admin/main/export.html.haml +70 -0
- data/app/views/rails_admin/main/index.html.haml +98 -0
- data/app/views/rails_admin/main/new.html.haml +2 -0
- data/app/views/rails_admin/main/show.html.haml +14 -0
- data/config/initializers/active_record_extensions.rb +19 -0
- data/config/initializers/devise_patch.rb +9 -0
- data/config/initializers/haml.rb +3 -0
- data/config/locales/devise.bg.yml +42 -0
- data/config/locales/devise.de.yml +39 -0
- data/config/locales/devise.en.yml +39 -0
- data/config/locales/devise.es.yml +39 -0
- data/config/locales/devise.fi.yml +39 -0
- data/config/locales/devise.fr.yml +78 -0
- data/config/locales/devise.hr.yml +49 -0
- data/config/locales/devise.it.yml +39 -0
- data/config/locales/devise.lt.yml +39 -0
- data/config/locales/devise.mn.yml +39 -0
- data/config/locales/devise.nb.yml +43 -0
- data/config/locales/devise.pt-BR.yml +39 -0
- data/config/locales/devise.pt-PT.yml +39 -0
- data/config/locales/devise.ro.yml +46 -0
- data/config/locales/devise.ru.yml +39 -0
- data/config/locales/devise.sv.yml +39 -0
- data/config/locales/devise.tr.yml +39 -0
- data/config/locales/devise.uk.yml +39 -0
- data/config/locales/devise.zh-CN.yml +39 -0
- data/config/locales/devise.zh_cn.yml +39 -0
- data/config/locales/rails_admin.bg.yml +104 -0
- data/config/locales/rails_admin.da.yml +99 -0
- data/config/locales/rails_admin.de.yml +110 -0
- data/config/locales/rails_admin.en.yml +114 -0
- data/config/locales/rails_admin.es.yml +112 -0
- data/config/locales/rails_admin.fi.yml +107 -0
- data/config/locales/rails_admin.fr.yml +110 -0
- data/config/locales/rails_admin.hr.yml +81 -0
- data/config/locales/rails_admin.it.yml +109 -0
- data/config/locales/rails_admin.ja.yml +110 -0
- data/config/locales/rails_admin.lt.yml +102 -0
- data/config/locales/rails_admin.lv.yml +100 -0
- data/config/locales/rails_admin.mn.yml +103 -0
- data/config/locales/rails_admin.nb.yml +110 -0
- data/config/locales/rails_admin.nl.yml +135 -0
- data/config/locales/rails_admin.pl.yml +111 -0
- data/config/locales/rails_admin.pt-BR.yml +109 -0
- data/config/locales/rails_admin.pt-PT.yml +109 -0
- data/config/locales/rails_admin.ro.yml +113 -0
- data/config/locales/rails_admin.ru.yml +109 -0
- data/config/locales/rails_admin.sv.yml +103 -0
- data/config/locales/rails_admin.tr.yml +103 -0
- data/config/locales/rails_admin.uk.yml +100 -0
- data/config/locales/rails_admin.zh-CN.yml +114 -0
- data/config/locales/rails_admin.zh_cn.yml +107 -0
- data/config/routes.rb +28 -0
- data/lib/generators/rails_admin/install_generator.rb +83 -0
- data/lib/generators/rails_admin/templates/drop.rb +18 -0
- data/lib/generators/rails_admin/templates/initializer.erb +150 -0
- data/lib/generators/rails_admin/templates/migration.rb +18 -0
- data/lib/generators/rails_admin/uninstall_generator.rb +22 -0
- data/lib/generators/rails_admin/utils.rb +30 -0
- data/lib/rails_admin.rb +57 -0
- data/lib/rails_admin/abstract_model.rb +73 -0
- data/lib/rails_admin/abstract_object.rb +28 -0
- data/lib/rails_admin/adapters/active_record.rb +359 -0
- data/lib/rails_admin/config.rb +287 -0
- data/lib/rails_admin/config/base.rb +111 -0
- data/lib/rails_admin/config/fields.rb +99 -0
- data/lib/rails_admin/config/fields/association.rb +101 -0
- data/lib/rails_admin/config/fields/base.rb +273 -0
- data/lib/rails_admin/config/fields/factories/carrierwave.rb +16 -0
- data/lib/rails_admin/config/fields/factories/devise.rb +31 -0
- data/lib/rails_admin/config/fields/factories/dragonfly.rb +20 -0
- data/lib/rails_admin/config/fields/factories/enum.rb +11 -0
- data/lib/rails_admin/config/fields/factories/paperclip.rb +26 -0
- data/lib/rails_admin/config/fields/factories/password.rb +17 -0
- data/lib/rails_admin/config/fields/group.rb +63 -0
- data/lib/rails_admin/config/fields/groupable.rb +25 -0
- data/lib/rails_admin/config/fields/types.rb +26 -0
- data/lib/rails_admin/config/fields/types/all.rb +22 -0
- data/lib/rails_admin/config/fields/types/belongs_to_association.rb +51 -0
- data/lib/rails_admin/config/fields/types/boolean.rb +29 -0
- data/lib/rails_admin/config/fields/types/carrierwave.rb +32 -0
- data/lib/rails_admin/config/fields/types/color.rb +37 -0
- data/lib/rails_admin/config/fields/types/date.rb +24 -0
- data/lib/rails_admin/config/fields/types/datetime.rb +160 -0
- data/lib/rails_admin/config/fields/types/decimal.rb +14 -0
- data/lib/rails_admin/config/fields/types/dragonfly.rb +51 -0
- data/lib/rails_admin/config/fields/types/enum.rb +35 -0
- data/lib/rails_admin/config/fields/types/file_upload.rb +54 -0
- data/lib/rails_admin/config/fields/types/float.rb +14 -0
- data/lib/rails_admin/config/fields/types/has_and_belongs_to_many_association.rb +14 -0
- data/lib/rails_admin/config/fields/types/has_many_association.rb +42 -0
- data/lib/rails_admin/config/fields/types/has_one_association.rb +31 -0
- data/lib/rails_admin/config/fields/types/integer.rb +24 -0
- data/lib/rails_admin/config/fields/types/paperclip.rb +38 -0
- data/lib/rails_admin/config/fields/types/password.rb +41 -0
- data/lib/rails_admin/config/fields/types/polymorphic_association.rb +78 -0
- data/lib/rails_admin/config/fields/types/string.rb +34 -0
- data/lib/rails_admin/config/fields/types/text.rb +39 -0
- data/lib/rails_admin/config/fields/types/time.rb +31 -0
- data/lib/rails_admin/config/fields/types/timestamp.rb +18 -0
- data/lib/rails_admin/config/has_fields.rb +112 -0
- data/lib/rails_admin/config/has_groups.rb +39 -0
- data/lib/rails_admin/config/hideable.rb +28 -0
- data/lib/rails_admin/config/model.rb +89 -0
- data/lib/rails_admin/config/proxy.rb +40 -0
- data/lib/rails_admin/config/sections.rb +51 -0
- data/lib/rails_admin/config/sections/create.rb +11 -0
- data/lib/rails_admin/config/sections/export.rb +18 -0
- data/lib/rails_admin/config/sections/list.rb +55 -0
- data/lib/rails_admin/config/sections/navigation.rb +21 -0
- data/lib/rails_admin/config/sections/show.rb +50 -0
- data/lib/rails_admin/config/sections/update.rb +11 -0
- data/lib/rails_admin/engine.rb +15 -0
- data/lib/rails_admin/extension.rb +23 -0
- data/lib/rails_admin/extensions/cancan.rb +5 -0
- data/lib/rails_admin/extensions/cancan/authorization_adapter.rb +71 -0
- data/lib/rails_admin/generic_support.rb +15 -0
- data/lib/rails_admin/i18n_support.rb +43 -0
- data/lib/rails_admin/support/core_extensions.rb +44 -0
- data/lib/rails_admin/support/csv_converter.rb +109 -0
- data/lib/rails_admin/version.rb +6 -0
- data/lib/tasks/prepare_ci_env.rake +27 -0
- data/lib/tasks/rails_admin.rake +18 -0
- data/spec/ci.sh +2 -0
- data/spec/controllers/application_controller_spec.rb +30 -0
- data/spec/controllers/main_controller_spec.rb +86 -0
- data/spec/database_helpers.rb +15 -0
- data/spec/dummy_app/Gemfile +52 -0
- data/spec/dummy_app/README +256 -0
- data/spec/dummy_app/Rakefile +7 -0
- data/spec/dummy_app/app/controllers/application_controller.rb +3 -0
- data/spec/dummy_app/app/helpers/application_helper.rb +2 -0
- data/spec/dummy_app/app/locales/models.en.yml +8 -0
- data/spec/dummy_app/app/models/abstract.rb +5 -0
- data/spec/dummy_app/app/models/ball.rb +8 -0
- data/spec/dummy_app/app/models/cms.rb +5 -0
- data/spec/dummy_app/app/models/cms/basic_page.rb +7 -0
- data/spec/dummy_app/app/models/cms/unscoped_page.rb +3 -0
- data/spec/dummy_app/app/models/comment.rb +3 -0
- data/spec/dummy_app/app/models/division.rb +8 -0
- data/spec/dummy_app/app/models/draft.rb +11 -0
- data/spec/dummy_app/app/models/fan.rb +5 -0
- data/spec/dummy_app/app/models/field_test.rb +13 -0
- data/spec/dummy_app/app/models/league.rb +10 -0
- data/spec/dummy_app/app/models/player.rb +15 -0
- data/spec/dummy_app/app/models/rel_test.rb +6 -0
- data/spec/dummy_app/app/models/team.rb +25 -0
- data/spec/dummy_app/app/models/user.rb +21 -0
- data/spec/dummy_app/app/uploaders/carrierwave_uploader.rb +53 -0
- data/spec/dummy_app/app/views/layouts/application.html.erb +13 -0
- data/spec/dummy_app/config.ru +4 -0
- data/spec/dummy_app/config/application.rb +47 -0
- data/spec/dummy_app/config/boot.rb +6 -0
- data/spec/dummy_app/config/database.yml +22 -0
- data/spec/dummy_app/config/environment.rb +5 -0
- data/spec/dummy_app/config/environments/development.rb +27 -0
- data/spec/dummy_app/config/environments/production.rb +51 -0
- data/spec/dummy_app/config/environments/test.rb +39 -0
- data/spec/dummy_app/config/initializers/backtrace_silencers.rb +7 -0
- data/spec/dummy_app/config/initializers/devise.rb +142 -0
- data/spec/dummy_app/config/initializers/inflections.rb +10 -0
- data/spec/dummy_app/config/initializers/mime_types.rb +5 -0
- data/spec/dummy_app/config/initializers/quiet_assets.rb +10 -0
- data/spec/dummy_app/config/initializers/rails_admin.rb +10 -0
- data/spec/dummy_app/config/initializers/secret_token.rb +7 -0
- data/spec/dummy_app/config/initializers/session_store.rb +8 -0
- data/spec/dummy_app/config/routes.rb +8 -0
- data/spec/dummy_app/db/migrate/00000000000001_create_divisions_migration.rb +13 -0
- data/spec/dummy_app/db/migrate/00000000000002_create_drafts_migration.rb +19 -0
- data/spec/dummy_app/db/migrate/00000000000003_create_leagues_migration.rb +12 -0
- data/spec/dummy_app/db/migrate/00000000000004_create_players_migration.rb +20 -0
- data/spec/dummy_app/db/migrate/00000000000005_create_teams_migration.rb +22 -0
- data/spec/dummy_app/db/migrate/00000000000006_devise_create_users.rb +19 -0
- data/spec/dummy_app/db/migrate/00000000000007_create_histories_table.rb +16 -0
- data/spec/dummy_app/db/migrate/00000000000008_create_fans_migration.rb +12 -0
- data/spec/dummy_app/db/migrate/00000000000009_create_fans_teams_migration.rb +11 -0
- data/spec/dummy_app/db/migrate/00000000000010_add_revenue_to_team_migration.rb +9 -0
- data/spec/dummy_app/db/migrate/00000000000011_add_suspended_to_player_migration.rb +9 -0
- data/spec/dummy_app/db/migrate/00000000000012_add_avatar_columns_to_user.rb +16 -0
- data/spec/dummy_app/db/migrate/00000000000013_add_roles_to_user.rb +9 -0
- data/spec/dummy_app/db/migrate/00000000000014_add_color_to_team_migration.rb +9 -0
- data/spec/dummy_app/db/migrate/20101223222233_create_rel_tests.rb +15 -0
- data/spec/dummy_app/db/migrate/20110103205808_create_comments.rb +15 -0
- data/spec/dummy_app/db/migrate/20110123042530_rename_histories_to_rails_admin_histories.rb +9 -0
- data/spec/dummy_app/db/migrate/20110224184303_create_field_tests.rb +22 -0
- data/spec/dummy_app/db/migrate/20110328193014_create_cms_basic_pages.rb +14 -0
- data/spec/dummy_app/db/migrate/20110329183136_remove_league_id_from_teams.rb +9 -0
- data/spec/dummy_app/db/migrate/20110607152842_add_format_to_field_test.rb +9 -0
- data/spec/dummy_app/db/migrate/20110714095433_create_balls.rb +12 -0
- data/spec/dummy_app/db/migrate/20110831090841_add_protected_field_and_restricted_field_to_field_tests.rb +6 -0
- data/spec/dummy_app/db/migrate/20110901131551_change_division_primary_key.rb +19 -0
- data/spec/dummy_app/db/migrate/20110901142530_rename_league_id_foreign_key_on_divisions.rb +5 -0
- data/spec/dummy_app/db/migrate/20110901150912_set_primary_key_not_null_for_divisions.rb +21 -0
- data/spec/dummy_app/db/migrate/20110901154834_change_length_for_rails_admin_histories.rb +9 -0
- data/spec/dummy_app/db/migrate/20111103174459_create_unscoped_pages.rb +9 -0
- data/spec/dummy_app/db/migrate/20111108143642_add_dragonfly_and_carrierwave_to_field_tests.rb +7 -0
- data/spec/dummy_app/db/seeds.rb +18 -0
- data/spec/dummy_app/doc/README_FOR_APP +2 -0
- data/spec/dummy_app/public/404.html +0 -0
- data/spec/dummy_app/public/favicon.ico +0 -0
- data/spec/dummy_app/script/rails +6 -0
- data/spec/factories.rb +62 -0
- data/spec/generator_helpers.rb +30 -0
- data/spec/generators/install_generator_spec.rb +85 -0
- data/spec/generators/uninstall_generator_spec.rb +35 -0
- data/spec/lib/abstract_object_spec.rb +119 -0
- data/spec/lib/rails_admin_spec.rb +153 -0
- data/spec/requests/authorization/cancan_spec.rb +260 -0
- data/spec/requests/basic/bulk_action/rails_admin_basic_bulk_action_spec.rb +25 -0
- data/spec/requests/basic/bulk_destroy/rails_admin_basic_bulk_destroy_spec.rb +55 -0
- data/spec/requests/basic/create/rails_admin_basic_create_spec.rb +143 -0
- data/spec/requests/basic/create/rails_admin_namespaced_model_create_spec.rb +24 -0
- data/spec/requests/basic/delete/rails_admin_basic_delete_spec.rb +35 -0
- data/spec/requests/basic/destroy/rails_admin_basic_destroy_spec.rb +56 -0
- data/spec/requests/basic/edit/rails_admin_basic_edit_spec.rb +98 -0
- data/spec/requests/basic/export/rails_admin_basic_export_spec.rb +84 -0
- data/spec/requests/basic/list/rails_admin_basic_list_spec.rb +401 -0
- data/spec/requests/basic/new/rails_admin_basic_new_spec.rb +74 -0
- data/spec/requests/basic/new/rails_admin_namespaced_model_new_spec.rb +31 -0
- data/spec/requests/basic/show/rails_admin_basic_show_spec.rb +83 -0
- data/spec/requests/basic/update/rails_admin_basic_update_spec.rb +169 -0
- data/spec/requests/config/edit/rails_admin_config_edit_spec.rb +744 -0
- data/spec/requests/config/list/rails_admin_config_list_spec.rb +549 -0
- data/spec/requests/config/navigation/rails_admin_config_navigation_spec.rb +107 -0
- data/spec/requests/config/rails_admin_config_spec.rb +180 -0
- data/spec/requests/config/show/rails_admin_config_show_spec.rb +275 -0
- data/spec/requests/history/rails_admin_history_spec.rb +57 -0
- data/spec/requests/rails_admin_spec.rb +103 -0
- data/spec/requests/relation_spec.rb +26 -0
- data/spec/spec_helper.rb +88 -0
- metadata +717 -0
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
require 'rails_admin/config/fields/base'
|
|
2
|
+
|
|
3
|
+
module RailsAdmin
|
|
4
|
+
module Config
|
|
5
|
+
module Fields
|
|
6
|
+
module Types
|
|
7
|
+
class String < RailsAdmin::Config::Fields::Base
|
|
8
|
+
|
|
9
|
+
RailsAdmin::Config::Fields::Types::register(self)
|
|
10
|
+
|
|
11
|
+
@view_helper = :text_field
|
|
12
|
+
|
|
13
|
+
register_instance_option(:html_attributes) do
|
|
14
|
+
{
|
|
15
|
+
:class => css_class,
|
|
16
|
+
:maxlength => length,
|
|
17
|
+
:size => [50, length.to_i].min
|
|
18
|
+
}
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
register_instance_option(:help) do
|
|
22
|
+
text = (required? ? I18n.translate("admin.new.required") : I18n.translate("admin.new.optional")) + '. '
|
|
23
|
+
text += "#{length} #{length == 1 ? I18n.translate("admin.new.one_char") : I18n.translate("admin.new.many_chars")}." if length.present?
|
|
24
|
+
text
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
register_instance_option(:partial) do
|
|
28
|
+
:form_field
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
require 'rails_admin/config/fields/base'
|
|
2
|
+
|
|
3
|
+
module RailsAdmin
|
|
4
|
+
module Config
|
|
5
|
+
module Fields
|
|
6
|
+
module Types
|
|
7
|
+
class Text < RailsAdmin::Config::Fields::Base
|
|
8
|
+
# Register field type for the type loader
|
|
9
|
+
RailsAdmin::Config::Fields::Types::register(self)
|
|
10
|
+
|
|
11
|
+
@view_helper = :text_area
|
|
12
|
+
|
|
13
|
+
# CKEditor is disabled by default
|
|
14
|
+
register_instance_option(:ckeditor) do
|
|
15
|
+
false
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
# If you want to have a different toolbar configuration for CKEditor
|
|
19
|
+
# create your own custom config.js and override this configuration
|
|
20
|
+
register_instance_option(:ckeditor_config_js) do
|
|
21
|
+
"/javascripts/ckeditor/config.js"
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
register_instance_option(:html_attributes) do
|
|
25
|
+
{
|
|
26
|
+
:class => css_class,
|
|
27
|
+
:cols => "48",
|
|
28
|
+
:rows => "3"
|
|
29
|
+
}
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
register_instance_option(:partial) do
|
|
33
|
+
:form_text
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
require 'rails_admin/config/fields/types/datetime'
|
|
2
|
+
|
|
3
|
+
module RailsAdmin
|
|
4
|
+
module Config
|
|
5
|
+
module Fields
|
|
6
|
+
module Types
|
|
7
|
+
class Time < RailsAdmin::Config::Fields::Types::Datetime
|
|
8
|
+
# Register field type for the type loader
|
|
9
|
+
RailsAdmin::Config::Fields::Types::register(self)
|
|
10
|
+
|
|
11
|
+
@format = :short
|
|
12
|
+
@i18n_scope = [:time, :formats]
|
|
13
|
+
@js_plugin_options = {
|
|
14
|
+
"showDate" => false,
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
# Register field type for the type loader
|
|
18
|
+
RailsAdmin::Config::Fields::Types::register(self)
|
|
19
|
+
|
|
20
|
+
def parse_input(params)
|
|
21
|
+
params[name] = self.class.normalize(params[name], localized_time_format) if params[name]
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
register_instance_option(:strftime_format) do
|
|
25
|
+
(localized_format.include? "%p") ? "%I:%M %p" : "%H:%M"
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
require 'rails_admin/config/fields/types/datetime'
|
|
2
|
+
|
|
3
|
+
module RailsAdmin
|
|
4
|
+
module Config
|
|
5
|
+
module Fields
|
|
6
|
+
module Types
|
|
7
|
+
class Timestamp < RailsAdmin::Config::Fields::Types::Datetime
|
|
8
|
+
# Register field type for the type loader
|
|
9
|
+
RailsAdmin::Config::Fields::Types::register(self)
|
|
10
|
+
|
|
11
|
+
@format = :long
|
|
12
|
+
@i18n_scope = [:time, :formats]
|
|
13
|
+
@js_plugin_options = {}
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
module RailsAdmin
|
|
2
|
+
module Config
|
|
3
|
+
# Provides accessors and autoregistering of model's fields.
|
|
4
|
+
module HasFields
|
|
5
|
+
# Defines a configuration for a field.
|
|
6
|
+
def field(name, type = nil, &block)
|
|
7
|
+
field = @fields.find {|f| name == f.name }
|
|
8
|
+
|
|
9
|
+
# some fields are hidden by default (belongs_to keys, has_many associations in list views.)
|
|
10
|
+
# unhide them if config specifically defines them
|
|
11
|
+
field.show if field.try(:hidden?)
|
|
12
|
+
|
|
13
|
+
# Specify field as virtual if type is not specifically set and field was not
|
|
14
|
+
# found in default stack
|
|
15
|
+
if field.nil? && type.nil?
|
|
16
|
+
field = (@fields << RailsAdmin::Config::Fields::Types.load(:string).new(self, name, {})).last
|
|
17
|
+
|
|
18
|
+
# Register a custom field type if one is provided and it is different from
|
|
19
|
+
# one found in default stack
|
|
20
|
+
elsif !type.nil? && type != (field.nil? ? nil : field.type)
|
|
21
|
+
@fields.delete(field) unless field.nil?
|
|
22
|
+
properties = parent.abstract_model.properties.find {|p| name == p[:name] }
|
|
23
|
+
field = (@fields << RailsAdmin::Config::Fields::Types.load(type).new(self, name, properties)).last
|
|
24
|
+
end
|
|
25
|
+
# If field has not been yet defined add some default properties
|
|
26
|
+
unless field.defined
|
|
27
|
+
field.defined = true
|
|
28
|
+
field.order = @fields.select(&:defined).length
|
|
29
|
+
end
|
|
30
|
+
# If a block has been given evaluate it and sort fields after that
|
|
31
|
+
if block
|
|
32
|
+
field.instance_eval &block
|
|
33
|
+
@fields.sort! {|a, b| a.order <=> b.order }
|
|
34
|
+
end
|
|
35
|
+
field
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# include fields by name and apply an optionnal block to each (through a call to fields),
|
|
39
|
+
# or include fields by conditions if no field names
|
|
40
|
+
def include_fields(*field_names, &block)
|
|
41
|
+
if field_names.empty?
|
|
42
|
+
@fields.select {|f| f.instance_eval &block }.each do |f|
|
|
43
|
+
unless f.defined
|
|
44
|
+
f.defined = true
|
|
45
|
+
f.order = @fields.select(&:defined).length
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
else
|
|
49
|
+
fields(*field_names, &block)
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
# exclude fields by name or by condition (block)
|
|
54
|
+
def exclude_fields(*field_names, &block)
|
|
55
|
+
block ||= lambda { |f| field_names.include?(f.name) }
|
|
56
|
+
@fields.each {|f| f.defined = true } if @fields.select(&:defined).empty?
|
|
57
|
+
@fields.select {|f| f.instance_eval &block }.each {|f| f.defined = false }
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
# API candy
|
|
61
|
+
alias :exclude_fields_if :exclude_fields
|
|
62
|
+
alias :include_fields_if :include_fields
|
|
63
|
+
|
|
64
|
+
# does pretty much what it says in the can
|
|
65
|
+
def include_all_fields
|
|
66
|
+
include_fields_if() { true }
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
# Returns all field configurations for the model configuration instance. If no fields
|
|
70
|
+
# have been defined returns all fields. Defined fields are sorted to match their
|
|
71
|
+
# order property. If order was not specified it will match the order in which fields
|
|
72
|
+
# were defined.
|
|
73
|
+
#
|
|
74
|
+
# If a block is passed it will be evaluated in the context of each field
|
|
75
|
+
def fields(*field_names,&block)
|
|
76
|
+
if field_names.empty?
|
|
77
|
+
defined = @fields.select {|f| f.defined }
|
|
78
|
+
defined.sort! {|a, b| a.order <=> b.order }
|
|
79
|
+
defined = @fields if defined.empty?
|
|
80
|
+
if block
|
|
81
|
+
defined.each {|f| f.instance_eval &block }
|
|
82
|
+
end
|
|
83
|
+
defined
|
|
84
|
+
else
|
|
85
|
+
defined = field_names.map{|field_name| @fields.find {|f| f.name == field_name } }
|
|
86
|
+
defined.map do |f|
|
|
87
|
+
unless f.defined
|
|
88
|
+
f.defined = true
|
|
89
|
+
f.order = @fields.select(&:defined).length
|
|
90
|
+
end
|
|
91
|
+
f.instance_eval(&block) if block
|
|
92
|
+
f
|
|
93
|
+
end
|
|
94
|
+
end
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
# Defines configuration for fields by their type.
|
|
98
|
+
def fields_of_type(type, &block)
|
|
99
|
+
selected = @fields.select {|f| type == f.type }
|
|
100
|
+
if block
|
|
101
|
+
selected.each {|f| f.instance_eval &block }
|
|
102
|
+
end
|
|
103
|
+
selected
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
# Get all fields defined as visible.
|
|
107
|
+
def visible_fields
|
|
108
|
+
fields.select {|f| f.with(bindings).visible? }.map{|f| f.with(bindings)}
|
|
109
|
+
end
|
|
110
|
+
end
|
|
111
|
+
end
|
|
112
|
+
end
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
require 'rails_admin/config/fields/group'
|
|
2
|
+
|
|
3
|
+
module RailsAdmin
|
|
4
|
+
module Config
|
|
5
|
+
module HasGroups
|
|
6
|
+
# Access fields by their group
|
|
7
|
+
def fields_of_group(group, &block)
|
|
8
|
+
selected = @fields.select {|f| group == f.group }
|
|
9
|
+
if block
|
|
10
|
+
selected.each {|f| f.instance_eval &block }
|
|
11
|
+
end
|
|
12
|
+
selected
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
# Accessor for a group
|
|
16
|
+
#
|
|
17
|
+
# If group with given name does not yet exist it will be created. If a
|
|
18
|
+
# block is passed it will be evaluated in the context of the group
|
|
19
|
+
def group(name, &block)
|
|
20
|
+
group = @groups.find {|g| name == g.name }
|
|
21
|
+
if group.nil?
|
|
22
|
+
group = (@groups << RailsAdmin::Config::Fields::Group.new(self, name)).last
|
|
23
|
+
end
|
|
24
|
+
group.instance_eval &block if block
|
|
25
|
+
group
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
# Reader for groups
|
|
29
|
+
def groups
|
|
30
|
+
@groups
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
# Reader for groups that are marked as visible
|
|
34
|
+
def visible_groups
|
|
35
|
+
groups.select {|g| g.visible? }
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
module RailsAdmin
|
|
2
|
+
module Config
|
|
3
|
+
# Defines a visibility configuration
|
|
4
|
+
module Hideable
|
|
5
|
+
# Visibility defaults to true.
|
|
6
|
+
def self.included(klass)
|
|
7
|
+
klass.register_instance_option(:visible?) do
|
|
8
|
+
!root.excluded?
|
|
9
|
+
end
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
# Reader whether field is hidden.
|
|
13
|
+
def hidden?
|
|
14
|
+
not visible
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# Writer to hide field.
|
|
18
|
+
def hide(&block)
|
|
19
|
+
visible block ? proc { false == (instance_eval &block) } : false
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
# Writer to show field.
|
|
23
|
+
def show(&block)
|
|
24
|
+
visible block || true
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
require 'rails_admin/config'
|
|
2
|
+
require 'rails_admin/config/base'
|
|
3
|
+
require 'rails_admin/config/sections'
|
|
4
|
+
|
|
5
|
+
module RailsAdmin
|
|
6
|
+
module Config
|
|
7
|
+
# Model specific configuration object.
|
|
8
|
+
class Model < RailsAdmin::Config::Base
|
|
9
|
+
include RailsAdmin::Config::Hideable
|
|
10
|
+
include RailsAdmin::Config::Sections
|
|
11
|
+
|
|
12
|
+
def initialize(entity)
|
|
13
|
+
@abstract_model = begin
|
|
14
|
+
if entity.kind_of?(RailsAdmin::AbstractModel)
|
|
15
|
+
entity
|
|
16
|
+
elsif entity.kind_of?(Class) || entity.kind_of?(String) || entity.kind_of?(Symbol)
|
|
17
|
+
RailsAdmin::AbstractModel.new(entity)
|
|
18
|
+
else
|
|
19
|
+
RailsAdmin::AbstractModel.new(entity.class)
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
@bindings = {}
|
|
23
|
+
@parent = nil
|
|
24
|
+
@root = self
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def excluded?
|
|
28
|
+
@excluded ||= !RailsAdmin::AbstractModel.all.map(&:model).include?(abstract_model.model)
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
# Configure create and update views as a bulk operation with given block
|
|
32
|
+
# or get update view's configuration if no block is given
|
|
33
|
+
def edit(&block)
|
|
34
|
+
return send(:update) unless block_given?
|
|
35
|
+
[:create, :update].each do |s|
|
|
36
|
+
send(s, &block)
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def object_label
|
|
41
|
+
bindings[:object].send object_label_method
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
# The display for a model instance (i.e. a single database record).
|
|
45
|
+
# Unless configured in a model config block, it'll try to use :name followed by :title methods, then
|
|
46
|
+
# any methods that may have been added to the label_methods array via Configuration.
|
|
47
|
+
# Failing all of these, it'll return the class name followed by the model's id.
|
|
48
|
+
register_instance_option(:object_label_method) do
|
|
49
|
+
@object_label_method ||= Config.label_methods.find { |method| (@dummy_object ||= abstract_model.model.new).respond_to? method } || :rails_admin_default_object_label_method
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
register_instance_option(:label) do
|
|
53
|
+
@label ||= abstract_model.model.model_name.human(:default => abstract_model.model.model_name.demodulize.underscore.humanize)
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
register_instance_option(:label_plural) do
|
|
57
|
+
@label_plural ||= abstract_model.model.model_name.human(:count => 2, :default => label.pluralize)
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
register_instance_option(:weight) do
|
|
61
|
+
0
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
register_instance_option(:parent) do
|
|
65
|
+
:root
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
register_deprecated_instance_option(:dropdown, :navigation_label) # same API, deprecated 2011-07-21
|
|
69
|
+
|
|
70
|
+
register_instance_option(:navigation_label) do
|
|
71
|
+
false
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
# Act as a proxy for the section configurations that actually
|
|
75
|
+
# store the configurations.
|
|
76
|
+
def method_missing(m, *args, &block)
|
|
77
|
+
responded_to = false
|
|
78
|
+
[:create, :list, :show, :navigation, :update, :export].each do |s|
|
|
79
|
+
section = send(s)
|
|
80
|
+
if section.respond_to?(m)
|
|
81
|
+
responded_to = true
|
|
82
|
+
section.send(m, *args, &block)
|
|
83
|
+
end
|
|
84
|
+
end
|
|
85
|
+
raise NoMethodError.new("#{self} has no method #{m}") unless responded_to
|
|
86
|
+
end
|
|
87
|
+
end
|
|
88
|
+
end
|
|
89
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
module RailsAdmin
|
|
2
|
+
module Config
|
|
3
|
+
class Proxy
|
|
4
|
+
|
|
5
|
+
instance_methods.each {|m| undef_method m unless m =~ /^(__|instance_eval|object_id)/ }
|
|
6
|
+
|
|
7
|
+
attr_reader :bindings
|
|
8
|
+
|
|
9
|
+
def initialize(object, bindings = {})
|
|
10
|
+
@object = object
|
|
11
|
+
@bindings = bindings
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# Bind variables to be used by the configuration options
|
|
15
|
+
def bind(key, value = nil)
|
|
16
|
+
if key.kind_of?(Hash)
|
|
17
|
+
@bindings = key
|
|
18
|
+
else
|
|
19
|
+
@bindings[key] = value
|
|
20
|
+
end
|
|
21
|
+
self
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def method_missing(name, *args, &block)
|
|
25
|
+
if @object.respond_to?(name)
|
|
26
|
+
reset = @object.instance_variable_get("@bindings")
|
|
27
|
+
begin
|
|
28
|
+
@object.instance_variable_set("@bindings", @bindings)
|
|
29
|
+
response = @object.__send__(name, *args, &block)
|
|
30
|
+
ensure
|
|
31
|
+
@object.instance_variable_set("@bindings", @reset)
|
|
32
|
+
end
|
|
33
|
+
response
|
|
34
|
+
else
|
|
35
|
+
super(name, *args, &block)
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
require 'active_support/core_ext/string/inflections'
|
|
2
|
+
require 'rails_admin/config/sections/create'
|
|
3
|
+
require 'rails_admin/config/sections/list'
|
|
4
|
+
require 'rails_admin/config/sections/navigation'
|
|
5
|
+
require 'rails_admin/config/sections/update'
|
|
6
|
+
require 'rails_admin/config/sections/export'
|
|
7
|
+
require 'rails_admin/config/sections/show'
|
|
8
|
+
|
|
9
|
+
module RailsAdmin
|
|
10
|
+
module Config
|
|
11
|
+
# Sections describe different views in the RailsAdmin engine. Configurable sections are
|
|
12
|
+
# list and navigation.
|
|
13
|
+
#
|
|
14
|
+
# Each section's class object can store generic configuration about that section (such as the
|
|
15
|
+
# number of visible tabs in the main navigation), while the instances (accessed via model
|
|
16
|
+
# configuration objects) store model specific configuration (such as the visibility of the
|
|
17
|
+
# model).
|
|
18
|
+
module Sections
|
|
19
|
+
def self.included(klass)
|
|
20
|
+
# Register accessors for all the sections in this namespace
|
|
21
|
+
constants.each do |name|
|
|
22
|
+
section = "RailsAdmin::Config::Sections::#{name}".constantize
|
|
23
|
+
name = name.to_s.downcase.to_sym
|
|
24
|
+
klass.send(:define_method, name) do |&block|
|
|
25
|
+
@sections = {} unless @sections
|
|
26
|
+
unless @sections[name]
|
|
27
|
+
@sections[name] = section.new(self)
|
|
28
|
+
end
|
|
29
|
+
@sections[name].instance_eval &block if block
|
|
30
|
+
@sections[name]
|
|
31
|
+
end
|
|
32
|
+
# Register a shortcut to define the model's label for each section.
|
|
33
|
+
klass.send(:define_method, "label_for_#{name}") do
|
|
34
|
+
# TODO: Remove this warning in the next release, after people have updated their applications
|
|
35
|
+
$stderr.puts("WARNING: label_for_#{name} has been removed. This configuration will be ignored. Model names can be configured with 'label' and section-specific names are no longer supported. See README for details.")
|
|
36
|
+
end
|
|
37
|
+
# Register a shortcut to hide the model for each section.
|
|
38
|
+
klass.send(:define_method, "hide_from_#{name}") do |&block|
|
|
39
|
+
# TODO: Remove this warning in the next release, after people have updated their applications
|
|
40
|
+
$stderr.puts("WARNING: hide_from_#{name} has been removed. This configuration will be ignored. Model visibility can be configured with 'hide', 'show' and 'visibility'. Section-specific visibility is no longer supported. See README for details.")
|
|
41
|
+
end
|
|
42
|
+
# Register a shortcut to show the model for each section.
|
|
43
|
+
klass.send(:define_method, "show_in_#{name}") do |&block|
|
|
44
|
+
# TODO: Remove this warning in the next release, after people have updated their applications
|
|
45
|
+
$stderr.puts("WARNING: show_in_#{name} has been removed. This configuration will be ignored. Model visibility can be configured with 'hide', 'show' and 'visibility'. Section-specific visibility is no longer supported. See README for details.")
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
end
|