rails_admin 0.4.9 → 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of rails_admin might be problematic. Click here for more details.
- data.tar.gz.sig +0 -0
- data/Gemfile +10 -9
- data/README.md +9 -0
- data/app/assets/javascripts/rails_admin/ra.filtering-select.js +3 -3
- data/app/assets/javascripts/rails_admin/ra.nested-form-hooks.coffee +1 -1
- data/app/assets/javascripts/rails_admin/ra.remote-form.js +1 -1
- data/app/assets/javascripts/rails_admin/ra.widgets.coffee +28 -26
- data/app/helpers/rails_admin/application_helper.rb +2 -2
- data/app/views/rails_admin/main/_form_ck_editor.html.haml +10 -0
- data/app/views/rails_admin/main/_form_code_mirror.html.haml +9 -0
- data/app/views/rails_admin/main/_form_text.html.haml +1 -31
- data/app/views/rails_admin/main/_form_wysihtml5.html.haml +8 -0
- data/lib/generators/rails_admin/install_generator.rb +40 -31
- data/lib/generators/rails_admin/templates/initializer.erb +2 -2
- data/lib/rails_admin/abstract_model.rb +1 -1
- data/lib/rails_admin/adapters/active_record.rb +21 -17
- data/lib/rails_admin/adapters/active_record/abstract_object.rb +1 -1
- data/lib/rails_admin/adapters/mongoid.rb +1 -0
- data/lib/rails_admin/config.rb +2 -2
- data/lib/rails_admin/config/configurable.rb +13 -5
- data/lib/rails_admin/config/fields/base.rb +1 -25
- data/lib/rails_admin/config/fields/factories/enum.rb +8 -1
- data/lib/rails_admin/config/fields/types/all.rb +4 -1
- data/lib/rails_admin/config/fields/types/ck_editor.rb +45 -0
- data/lib/rails_admin/config/fields/types/code_mirror.rb +55 -0
- data/lib/rails_admin/config/fields/types/serialized.rb +1 -1
- data/lib/rails_admin/config/fields/types/text.rb +12 -66
- data/lib/rails_admin/config/fields/types/wysihtml5.rb +44 -0
- data/lib/rails_admin/config/model.rb +1 -1
- data/lib/rails_admin/extensions/history/history.rb +4 -2
- data/lib/rails_admin/version.rb +2 -2
- data/spec/controllers/rails_admin/main_controller_spec.rb +21 -0
- data/spec/dummy_app/Gemfile +11 -10
- data/spec/dummy_app/app/active_record/another_field_test.rb +0 -1
- data/spec/dummy_app/app/active_record/ball.rb +0 -2
- data/spec/dummy_app/app/active_record/category.rb +0 -2
- data/spec/dummy_app/app/active_record/cms/basic_page.rb +0 -2
- data/spec/dummy_app/app/active_record/comment.rb +0 -2
- data/spec/dummy_app/app/active_record/comment/confirmed.rb +1 -1
- data/spec/dummy_app/app/active_record/division.rb +0 -2
- data/spec/dummy_app/app/active_record/draft.rb +0 -2
- data/spec/dummy_app/app/active_record/fan.rb +0 -2
- data/spec/dummy_app/app/active_record/field_test.rb +0 -5
- data/spec/dummy_app/app/active_record/image.rb +0 -2
- data/spec/dummy_app/app/active_record/league.rb +1 -3
- data/spec/dummy_app/app/active_record/nested_field_test.rb +0 -2
- data/spec/dummy_app/app/active_record/player.rb +0 -3
- data/spec/dummy_app/app/active_record/team.rb +1 -4
- data/spec/dummy_app/app/active_record/user.rb +0 -4
- data/spec/dummy_app/app/mongoid/another_field_test.rb +0 -1
- data/spec/dummy_app/app/mongoid/ball.rb +0 -2
- data/spec/dummy_app/app/mongoid/category.rb +0 -2
- data/spec/dummy_app/app/mongoid/cms/basic_page.rb +0 -2
- data/spec/dummy_app/app/mongoid/comment.rb +0 -2
- data/spec/dummy_app/app/mongoid/division.rb +0 -2
- data/spec/dummy_app/app/mongoid/draft.rb +0 -2
- data/spec/dummy_app/app/mongoid/fan.rb +0 -2
- data/spec/dummy_app/app/mongoid/field_test.rb +1 -5
- data/spec/dummy_app/app/mongoid/image.rb +0 -2
- data/spec/dummy_app/app/mongoid/league.rb +0 -2
- data/spec/dummy_app/app/mongoid/nested_field_test.rb +0 -2
- data/spec/dummy_app/app/mongoid/player.rb +1 -3
- data/spec/dummy_app/app/mongoid/team.rb +0 -2
- data/spec/dummy_app/app/mongoid/user.rb +1 -2
- data/spec/dummy_app/config/application.rb +0 -7
- data/spec/dummy_app/config/environments/development.rb +1 -7
- data/spec/dummy_app/config/environments/test.rb +2 -4
- data/spec/dummy_app/config/initializers/secret_token.rb +1 -0
- data/spec/dummy_app/config/routes.rb +2 -2
- data/spec/dummy_app/db/test.sqlite3 +0 -0
- data/spec/dummy_app/db/test.sqlite3-journal +0 -0
- data/spec/dummy_app/log/test.log +1423 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/0759f2828afb668a39de3ede4887b369780cdb28/jquery-ui-1.8.7.custom.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/1de49575831c79805eaa5ca759c4aae181c38254/mixins.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/1de49575831c79805eaa5ca759c4aae181c38254/theming.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/1de49575831c79805eaa5ca759c4aae181c38254/variables.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/50e4466efc3255401f37f709f5f338668408ef71/mixins.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/50e4466efc3255401f37f709f5f338668408ef71/theming.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/50e4466efc3255401f37f709f5f338668408ef71/variables.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/60ddb7b14935cbd11f83ec188b4bb1d618ec996f/jquery.colorpicker.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/60ddb7b14935cbd11f83ec188b4bb1d618ec996f/jquery.ui.timepicker.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/60ddb7b14935cbd11f83ec188b4bb1d618ec996f/ra.calendar-additions.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/60ddb7b14935cbd11f83ec188b4bb1d618ec996f/ra.filtering-multiselect.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/60ddb7b14935cbd11f83ec188b4bb1d618ec996f/ra.widgets.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/60ddb7b14935cbd11f83ec188b4bb1d618ec996f/rails_admin.scss.erbc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_accordion.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_alerts.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_breadcrumbs.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_button-groups.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_buttons.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_carousel.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_close.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_component-animations.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_dropdowns.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_forms.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_grid.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_hero-unit.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_labels-badges.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_layouts.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_mixins.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_modals.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_navbar.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_navs.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_pager.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_pagination.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_popovers.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_progress-bars.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_reset.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_scaffolding.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_tables.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_thumbnails.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_tooltip.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_type.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_utilities.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_variables.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/6f29b1fe98624195dbac940d9b40236b6dc877d3/_wells.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/7e38bdfe3aa21a76da53ed64003686502baf8110/font-awesome.css.erbc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/e307626ae1f1da10c3b3073e0db008ce0a7bb251/mixins.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/e307626ae1f1da10c3b3073e0db008ce0a7bb251/theming.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sass/e307626ae1f1da10c3b3073e0db008ce0a7bb251/variables.scssc +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/039a5bf66d220fc450725c31951c0003 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/04fc3904edb99236187355cbb911f89e +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/0602c18d49d9162a4115f24689044530 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/07a77b4186e7385aa93ee9817d30976d +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/09b197beb54130b951fd00df7b3e2ebb +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/0c53bdcb904e01bc3006dea06a984620 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/0cf66ef0545ef4a25158b64a8a63acc0 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/0dcf1b67fc7a00043acda5614e28621a +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/0ed5cf232eb4a060d90fa60242ec82eb +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/104cf49747acce2cd760bde221916757 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/11336ccd98408f1d60bc4f137dd6d513 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/129ab684736012c224b424a9202c4077 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/13c5851787eee7ea1dbb6771daf38754 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/148bf2b1fa2b1c501e534d8019e35550 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/17805e3468eb563f81855f6ac93ac7de +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/196f8e4aff622708f7a2060b98fa730a +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/1a1d73dd5f0ac320b3a8952b0e6669f5 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/1a5c2589d7a73ca326745770ec8c3a68 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/1b1d3f4fa8e1243fb66271b20233d01b +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/1ca1a15643004e8daee77e762149bfe6 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/1cb0bbe35ef01a226fef698f0a9277d2 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/1d635e9b0475899eec5bce058b6d48b4 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/1e097efcd1115a58473612106f20aad2 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/2047e1449cbcbd8331c15e05c33f006a +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/2740e776eb74b1103220f4a3bf76e55d +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/281a64929dab11d3635bdd9ff39fe31c +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/28549a2080576826cd4de9ce7ed8d69f +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/2e1c59996da5739b76e5ed290e16e4b8 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/308e53bfc20ae7fe1c148e8cd4795184 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/30d3cccc8e819bfc42faebbae2132106 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/349b83b5f7fc156a7865362b50c8a747 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/352b668d5a833880cd46e68e87b61f83 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/3a44eeaaf1973955ec1385900f16e9b0 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/3b9145cad8e6cc05febf5b7ebfdc09b5 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/3ba0f5b2e3e94b6513f5136fa20e5a24 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/3bb982191028c492bec814ca36dda349 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/3e529508d6168a92db8f1706328dbd6b +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/3fea6c96d559fd56c796222c89bf4a55 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/410492703e63dffa68a29af838226cc6 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/433362a2fd8b9b7a80331d20cdfd84b6 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/445343e680a88785242a2aa99d907216 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/4499a6f31ad672fb69537267becff285 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/455dc61be5289cb0a50fc650c4a27b01 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/4563ab77d6c769264c70b904c4ca2b37 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/4c501e79458ca87b9b7964a3656cad68 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/4f49294c06a799e1c063a1ccf100860c +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/4fd99da81590fb27074904dd2d4b0afe +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/54a5de7c79d8407342c31af3d5eb31f6 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/5507d3ba3736f304240090662413733a +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/585bed8595e5e9d8e5e1a680ac20f005 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/5c0be9a39a450f2b191275d281ff50d8 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/5eab397d2a4b6ca7b0084107e4acc0d9 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/5eae694e8713be9376531ee73716b107 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/6012dbf768041ff3d9566cd00e6ad0e6 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/61077cb42651197ce0d00d267f8cb157 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/627a45561b3d1ecbd1a1f4850208503a +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/642ea63365a0f33fb982cde355dbd952 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/67c296751ce247c30402dd43b035c05b +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/689332efdfbf2cfa06d02d26a47d4332 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/694afe79cc6e42a3e5436d282997ea79 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/6c5729b427f229cad24067bfec82441d +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/6f0a4a833a1ce47d77ebbd71ae021a4d +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/702016a19f9bf693eec6930878077e4e +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/724ce3ff0aeb1174d3a8fddfe1335a79 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/726abc48daa7878021ee1c34360918af +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/749c6e08a7826fd22d279405af87aaf1 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/77ad5664cd45382abab39f19d032133d +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/785692dac9a319d2706bd96d7fb5999c +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/7cfceeccc9c61c03ad54298ce2472f45 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/7e73c94fd43e4f8b82acfa085d8d5476 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/801e4f782d10f5498b68113e6b2ac139 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/822dbfd89b2b1243844e7c3a0ba001a7 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/842ea8c5f8b0fdb4ef7472b189a76174 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/84a6a7978131f4f8c46fe9c480634aab +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/84cb05237234ff279ad6c78ef3e8e823 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/84f51912f02a7a1ff255ae491b3cc711 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/8605a56363a1d23fad98fbc6d9b3b047 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/86120a9bdcdfa970f8dadae131a2e95e +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/88c829469780275b9c1714e2166e1ba4 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/89ffe73975976a0200a923aa2e1e42fb +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/8b0a8bf59842e1d4aaa787eff38e207f +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/8b78cef60b108a16787f32ea26a792d0 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/8ddbd7ab77689f8ebb25c59de8152b5e +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/8f9bc2d4514893616bed6d6bf75dded1 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/91cb85d19bf8e4ebba27ccf6ea318d9f +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/922df3fedca77782061a6d4a6029e7f1 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/9509bd192a75365a34a00b01e04b5ab4 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/97cd44fc8e2b4f6acb0d912be738c90f +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/98a7dfb33d5879f166f1bf20c031e836 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/98d49f7e1c1d73b97ac2937069e8f312 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/99c1629b9f2827a9840fe8d230e2c5df +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/9a451dac641c38ce41d5c1b73fb8de2a +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/9ba5e11e725ed4a76f73bc3c43070fc9 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/9c332bf94ad0e3614abadfaf3aaf60b2 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/9cf969e4845d5a4d718d2e8bfd77101d +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/9f9d40e0ca625e92215807c7d36eeb45 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/a0d2eb8c9feccca7df34d40b8614a939 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/a1657b7bdf73ec95be9f0514ee2254a2 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/a1c38b062b4789cba43cfce569d89a4e +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/a2346449005dbaa9093d8ba7ed2a5d47 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/a86a829dee3d408be1e17d970ee388fa +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/ab554675ca375fa03f104b42bd948fe5 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/aded07271baf96cd6d24924ad93ec73d +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/ae325bc4588e222725187e5daf205589 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/af529b87b946c6e64306fcce7453083e +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/b4760047e80466e8355e67301426c1d1 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/b845c9c605c0ac49de3fbbb504e230f7 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/b85362aec4168f3dc8d2a98060ee48eb +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/bab7336757583f60e7daf1487188ed18 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/bd0a6ea6e12c15771e7f2523a3aadc63 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/be49600855e45c34cba5d2d6746e2358 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/be9c7f67a4c4bccb12ebfde75deadf78 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/bff19a6530ebd8793f533e767a24e36e +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/c3be8bc6957ae7e95fb42e95b69a28c4 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/c5787e2ae92280dbccc527e55b11635e +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/c5d9cd7fa2cb7bfe369963b0196f7ff4 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/cfbcfcb1da5d394fb109e81d39e78159 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/d07f5793bd18b01f933ddca0fe37250e +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/d0a719959de8c62c5bd015cce560bc8a +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/d4c23978dcf23280699067752b4d380d +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/d4e3f96df2204b35a7e8350ecc41cdc7 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/d5d70fe44f0d681894cd75826cdaea12 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/d6a6297cee0fca1e5e0838f582d80ab2 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/d9266b8e42d3f777dc223da809274b31 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/db583f90e8ee3ef1d2f254872519e9c6 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/e4cc8214b21af79b430cd379aafeb4ce +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/e4e7c80687aa50a6e2e4b7c79a145a0c +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/e53e14c5fb50eb16744db14274a7eda8 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/e600b47ff99e3ad76cb108e6c312c5b5 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/e8f7215dd1531e59847951a7383271c5 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/eb6ed96d57beb3fd8059dc280a7c2cd7 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/ed5e8a35a505b86b4bf715b78391a870 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/ee5e4d214ffc908f50e0a637eed3b7b1 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/ef0431217a4bac4852ecc9987fd2629e +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/f28c745f4469bda7feb0e7b30c6a49ae +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/f43162a23f1a30e5baf49f543f72487d +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/f62c80206996d477a114b40987636c55 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/f72d29b2f2b71e9f9f690a806f572e21 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/fa8aef4c90e0b7f97618ed51c78eb38a +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/fb7856209a606e83084889ae67f02673 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/fb7a84e10813b0033c09263a0abf0fa3 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/fb94af8a31614a8efe49c2714a8f894e +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/fea0b3135fde8d44c3aaf052a21d28f8 +0 -0
- data/spec/dummy_app/tmp/cache/assets/test/sprockets/ff4c93f7f26410e737809fc8772ddc5c +0 -0
- data/spec/integration/authorization/cancan_spec.rb +8 -16
- data/spec/integration/basic/export/rails_admin_basic_export_spec.rb +1 -1
- data/spec/integration/config/edit/rails_admin_config_edit_spec.rb +9 -34
- data/spec/integration/config/show/rails_admin_config_show_spec.rb +1 -1
- data/spec/integration/rails_admin_spec.rb +2 -2
- data/spec/rails_admin/abstract_model_spec.rb +1 -1
- data/spec/rails_admin/adapters/active_record/abstract_object_spec.rb +5 -5
- data/spec/rails_admin/adapters/active_record_spec.rb +11 -9
- data/spec/rails_admin/adapters/mongoid_spec.rb +1 -1
- data/spec/rails_admin/config/fields/base_spec.rb +1 -48
- data/spec/rails_admin/config/fields/types/{text_spec.rb → ck_editor_spec.rb} +6 -3
- metadata +418 -46
- metadata.gz.sig +3 -2
- data/spec/dummy_app/app/active_record/cms/unscoped_page.rb +0 -3
- data/spec/dummy_app/app/mongoid/cms/unscoped_page.rb +0 -5
- data/spec/dummy_app/config/initializers/strong_parameters.rb +0 -2
- data/spec/dummy_app/db/migrate/20111103174459_create_unscoped_pages.rb +0 -9
@@ -12,7 +12,7 @@ RailsAdmin.config do |config|
|
|
12
12
|
# config.main_app_name = Proc.new { |controller| [Rails.application.engine_name.titleize, controller.params['action'].titleize] }
|
13
13
|
|
14
14
|
# RailsAdmin may need a way to know who the current user is]
|
15
|
-
config.current_user_method {
|
15
|
+
config.current_user_method { <%= @current_user_method %> } # auto-generated
|
16
16
|
|
17
17
|
# If you want to track changes on your models:
|
18
18
|
# config.audit_with :history, '<%= @model_name.classify %>'
|
@@ -57,7 +57,7 @@ RailsAdmin.config do |config|
|
|
57
57
|
|
58
58
|
# config.model '<%= abstract_model.model.model_name %>' do
|
59
59
|
|
60
|
-
# # You can copy this to a 'rails_admin do ... end' block inside your <%= abstract_model.model.model_name.underscore %>.rb model definition
|
60
|
+
# # You can copy this to a 'rails_admin do ... end' block inside your <%= abstract_model.model.model_name.to_s.underscore %>.rb model definition
|
61
61
|
|
62
62
|
# # Found associations:
|
63
63
|
|
@@ -28,7 +28,7 @@ module RailsAdmin
|
|
28
28
|
end
|
29
29
|
|
30
30
|
def scoped
|
31
|
-
model.
|
31
|
+
model.all
|
32
32
|
end
|
33
33
|
|
34
34
|
def first(options = {}, scope = nil)
|
@@ -40,8 +40,8 @@ module RailsAdmin
|
|
40
40
|
scope = scope.includes(options[:include]) if options[:include]
|
41
41
|
scope = scope.limit(options[:limit]) if options[:limit]
|
42
42
|
scope = scope.where(model.primary_key => options[:bulk_ids]) if options[:bulk_ids]
|
43
|
-
scope = scope
|
44
|
-
scope = scope
|
43
|
+
scope = query_scope(scope, options[:query]) if options[:query]
|
44
|
+
scope = filter_scope(scope, options[:filters]) if options[:filters]
|
45
45
|
if options[:page] && options[:per]
|
46
46
|
scope = scope.send(Kaminari.config.page_method_name, options[:page]).per(options[:per])
|
47
47
|
end
|
@@ -117,9 +117,10 @@ module RailsAdmin
|
|
117
117
|
|
118
118
|
private
|
119
119
|
|
120
|
-
def
|
120
|
+
def query_scope(scope, query, fields = config.list.fields.select(&:queryable?))
|
121
121
|
statements = []
|
122
122
|
values = []
|
123
|
+
tables = []
|
123
124
|
|
124
125
|
fields.each do |field|
|
125
126
|
field.searchable_columns.flatten.each do |column_infos|
|
@@ -127,32 +128,33 @@ module RailsAdmin
|
|
127
128
|
statements << statement if statement
|
128
129
|
values << value1 unless value1.nil?
|
129
130
|
values << value2 unless value2.nil?
|
131
|
+
table, column = column_infos[:column].split('.')
|
132
|
+
tables.push(table) if column
|
130
133
|
end
|
131
134
|
end
|
132
|
-
|
133
|
-
[statements.join(' OR '), *values]
|
135
|
+
scope.where(statements.join(' OR '), *values).references(*(tables.uniq))
|
134
136
|
end
|
135
137
|
|
136
138
|
# filters example => {"string_field"=>{"0055"=>{"o"=>"like", "v"=>"test_value"}}, ...}
|
137
139
|
# "0055" is the filter index, no use here. o is the operator, v the value
|
138
|
-
def
|
139
|
-
statements = []
|
140
|
-
values = []
|
141
|
-
|
140
|
+
def filter_scope(scope, filters, fields = config.list.fields.select(&:filterable?))
|
142
141
|
filters.each_pair do |field_name, filters_dump|
|
143
142
|
filters_dump.each do |filter_index, filter_dump|
|
144
|
-
|
143
|
+
statements = []
|
144
|
+
values = []
|
145
|
+
tables = []
|
145
146
|
fields.find{|f| f.name.to_s == field_name}.searchable_columns.each do |column_infos|
|
146
147
|
statement, value1, value2 = build_statement(column_infos[:column], column_infos[:type], filter_dump[:v], (filter_dump[:o] || 'default'))
|
147
|
-
|
148
|
+
statements << statement if statement.present?
|
148
149
|
values << value1 unless value1.nil?
|
149
150
|
values << value2 unless value2.nil?
|
151
|
+
table, column = column_infos[:column].split('.')
|
152
|
+
tables.push(table) if column
|
150
153
|
end
|
151
|
-
|
154
|
+
scope = scope.where(statements.join(' OR '), *values).references(*(tables.uniq))
|
152
155
|
end
|
153
156
|
end
|
154
|
-
|
155
|
-
[statements.join(' AND '), *values]
|
157
|
+
scope
|
156
158
|
end
|
157
159
|
|
158
160
|
def build_statement(column, type, value, operator)
|
@@ -262,7 +264,7 @@ module RailsAdmin
|
|
262
264
|
|
263
265
|
def association_model_lookup(association)
|
264
266
|
if association.options[:polymorphic]
|
265
|
-
RailsAdmin::AbstractModel.polymorphic_parents(:active_record, self.model.model_name, association.name) || []
|
267
|
+
RailsAdmin::AbstractModel.polymorphic_parents(:active_record, self.model.model_name.to_s, association.name) || []
|
266
268
|
else
|
267
269
|
association.klass
|
268
270
|
end
|
@@ -295,7 +297,9 @@ module RailsAdmin
|
|
295
297
|
end
|
296
298
|
|
297
299
|
def association_read_only_lookup(association)
|
298
|
-
association.
|
300
|
+
if association.scope.is_a? Proc
|
301
|
+
association.klass.all.instance_eval(&association.scope).readonly_value
|
302
|
+
end
|
299
303
|
end
|
300
304
|
|
301
305
|
def association_foreign_key_lookup(association)
|
@@ -278,6 +278,7 @@ module RailsAdmin
|
|
278
278
|
{
|
279
279
|
"Array" => { :type => :serialized },
|
280
280
|
"BigDecimal" => { :type => :decimal },
|
281
|
+
"Mongoid::Boolean" => { :type => :boolean },
|
281
282
|
"Boolean" => { :type => :boolean },
|
282
283
|
"BSON::ObjectId" => { :type => :bson_object_id, :serial? => (name == primary_key) },
|
283
284
|
"Moped::BSON::ObjectId" => { :type => :bson_object_id, :serial? => (name == primary_key) },
|
data/lib/rails_admin/config.rb
CHANGED
@@ -203,8 +203,8 @@ module RailsAdmin
|
|
203
203
|
possible =
|
204
204
|
included_models.map(&:to_s).presence || (
|
205
205
|
@@system_models ||= # memoization for tests
|
206
|
-
([Rails.application] + Rails::
|
207
|
-
(app.paths['app/models'] + app.config.autoload_paths).map do |load_path|
|
206
|
+
([Rails.application] + Rails::Engine::Railties.engines).map do |app|
|
207
|
+
(app.paths['app/models'].to_a + app.config.autoload_paths).map do |load_path|
|
208
208
|
Dir.glob(app.root.join(load_path)).map do |load_dir|
|
209
209
|
Dir.glob(load_dir + "/**/*.rb").map do |filename|
|
210
210
|
# app/models/module/class.rb => module/class.rb => module/class => Module::Class
|
@@ -18,9 +18,9 @@ module RailsAdmin
|
|
18
18
|
self.class.register_instance_option(option_name, scope, &default)
|
19
19
|
end
|
20
20
|
|
21
|
-
def register_deprecated_instance_option(option_name, replacement_option_name)
|
21
|
+
def register_deprecated_instance_option(option_name, replacement_option_name=nil, &custom_error)
|
22
22
|
scope = class << self; self; end;
|
23
|
-
self.class.register_deprecated_instance_option(option_name, replacement_option_name, scope)
|
23
|
+
self.class.register_deprecated_instance_option(option_name, replacement_option_name, scope, &custom_error)
|
24
24
|
end
|
25
25
|
|
26
26
|
module ClassMethods
|
@@ -72,10 +72,18 @@ module RailsAdmin
|
|
72
72
|
end
|
73
73
|
end
|
74
74
|
|
75
|
-
def register_deprecated_instance_option(option_name, replacement_option_name, scope = self)
|
75
|
+
def register_deprecated_instance_option(option_name, replacement_option_name=nil, scope = self)
|
76
76
|
scope.send(:define_method, option_name) do |*args, &block|
|
77
|
-
|
78
|
-
|
77
|
+
if replacement_option_name
|
78
|
+
ActiveSupport::Deprecation.warn("The #{option_name} configuration option is deprecated, please use #{replacement_option_name}.")
|
79
|
+
send(replacement_option_name, *args, &block)
|
80
|
+
else
|
81
|
+
if block_given?
|
82
|
+
yield
|
83
|
+
else
|
84
|
+
raise "The #{option_name} configuration option is removed without replacement."
|
85
|
+
end
|
86
|
+
end
|
79
87
|
end
|
80
88
|
end
|
81
89
|
|
@@ -214,31 +214,7 @@ module RailsAdmin
|
|
214
214
|
end
|
215
215
|
|
216
216
|
def editable?
|
217
|
-
|
218
|
-
role = bindings[:view].controller.send(:_attr_accessible_role)
|
219
|
-
active_model_attr_accessible = !bindings[:object].class.active_authorizer[role].deny?(self.method_name)
|
220
|
-
|
221
|
-
return true if active_model_attr_accessible
|
222
|
-
if RailsAdmin::Config.yell_for_non_accessible_fields
|
223
|
-
accessible = "attr_accessible :#{self.method_name}#{role == :default ? '' : ", :as => :#{role}"}"
|
224
|
-
|
225
|
-
Rails.logger.debug <<-MESSAGE.strip_heredoc
|
226
|
-
|
227
|
-
|
228
|
-
[RailsAdmin] Please add '#{accessible}' in your '#{bindings[:object].class}' model definition if you want to make it editable.
|
229
|
-
You can also explicitely mark this field as read-only:
|
230
|
-
|
231
|
-
config.model #{bindings[:object].class} do
|
232
|
-
field :#{self.name} do
|
233
|
-
read_only true
|
234
|
-
end
|
235
|
-
end
|
236
|
-
|
237
|
-
Add 'config.yell_for_non_accessible_fields = false' in your 'rails_admin.rb' initializer if you do not want to see these warnings
|
238
|
-
|
239
|
-
MESSAGE
|
240
|
-
end
|
241
|
-
false
|
217
|
+
!(@properties && @properties[:read_only])
|
242
218
|
end
|
243
219
|
|
244
220
|
# Is this an association
|
@@ -2,7 +2,14 @@ require 'rails_admin/config/fields'
|
|
2
2
|
require 'rails_admin/config/fields/types/enum'
|
3
3
|
|
4
4
|
RailsAdmin::Config::Fields.register_factory do |parent, properties, fields|
|
5
|
-
|
5
|
+
|
6
|
+
_model = parent.abstract_model.model
|
7
|
+
_method_name = "#{properties[:name]}_enum"
|
8
|
+
|
9
|
+
#NOTICE: _method_name could be `to_enum` and this method defined in Object.
|
10
|
+
if !Object.respond_to?(_method_name) && \
|
11
|
+
(_model.respond_to?(_method_name) || \
|
12
|
+
_model.method_defined?(_method_name))
|
6
13
|
fields << RailsAdmin::Config::Fields::Types::Enum.new(parent, properties[:name], properties)
|
7
14
|
true
|
8
15
|
else
|
@@ -4,10 +4,10 @@ require 'rails_admin/config/fields/types/bson_object_id'
|
|
4
4
|
require 'rails_admin/config/fields/types/date'
|
5
5
|
require 'rails_admin/config/fields/types/datetime'
|
6
6
|
require 'rails_admin/config/fields/types/decimal'
|
7
|
+
require 'rails_admin/config/fields/types/dragonfly'
|
7
8
|
require 'rails_admin/config/fields/types/enum'
|
8
9
|
require 'rails_admin/config/fields/types/file_upload'
|
9
10
|
require 'rails_admin/config/fields/types/paperclip'
|
10
|
-
require 'rails_admin/config/fields/types/dragonfly'
|
11
11
|
require 'rails_admin/config/fields/types/carrierwave'
|
12
12
|
require 'rails_admin/config/fields/types/float'
|
13
13
|
require 'rails_admin/config/fields/types/has_and_belongs_to_many_association'
|
@@ -23,3 +23,6 @@ require 'rails_admin/config/fields/types/serialized'
|
|
23
23
|
require 'rails_admin/config/fields/types/time'
|
24
24
|
require 'rails_admin/config/fields/types/timestamp'
|
25
25
|
require 'rails_admin/config/fields/types/color'
|
26
|
+
require 'rails_admin/config/fields/types/ck_editor'
|
27
|
+
require 'rails_admin/config/fields/types/code_mirror'
|
28
|
+
require 'rails_admin/config/fields/types/wysihtml5'
|
@@ -0,0 +1,45 @@
|
|
1
|
+
require 'rails_admin/config/fields/base'
|
2
|
+
|
3
|
+
module RailsAdmin
|
4
|
+
module Config
|
5
|
+
module Fields
|
6
|
+
module Types
|
7
|
+
class CKEditor < RailsAdmin::Config::Fields::Types::Text
|
8
|
+
# Register field type for the type loader
|
9
|
+
RailsAdmin::Config::Fields::Types::register(self)
|
10
|
+
|
11
|
+
# If you want to have a different toolbar configuration for CKEditor
|
12
|
+
# create your own custom config.js and override this configuration
|
13
|
+
register_instance_option :config_js do
|
14
|
+
nil
|
15
|
+
end
|
16
|
+
|
17
|
+
#Use this if you want to point to a cloud instances of CKeditor
|
18
|
+
register_instance_option :location do
|
19
|
+
nil
|
20
|
+
end
|
21
|
+
|
22
|
+
#Use this if you want to point to a cloud instances of the base CKeditor
|
23
|
+
register_instance_option :base_location do
|
24
|
+
"#{Rails.application.config.assets.prefix}/ckeditor/"
|
25
|
+
end
|
26
|
+
|
27
|
+
register_instance_option :html_attributes do
|
28
|
+
{
|
29
|
+
:cols => '48',
|
30
|
+
:rows => '3'
|
31
|
+
}
|
32
|
+
end
|
33
|
+
|
34
|
+
register_instance_option :partial do
|
35
|
+
:form_ck_editor
|
36
|
+
end
|
37
|
+
|
38
|
+
[:base_location, :config_js, :location].each do |key|
|
39
|
+
register_deprecated_instance_option :"ckeditor_#{key}", key
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
@@ -0,0 +1,55 @@
|
|
1
|
+
require 'rails_admin/config/fields/base'
|
2
|
+
|
3
|
+
module RailsAdmin
|
4
|
+
module Config
|
5
|
+
module Fields
|
6
|
+
module Types
|
7
|
+
class CodeMirror < RailsAdmin::Config::Fields::Types::Text
|
8
|
+
# Register field type for the type loader
|
9
|
+
RailsAdmin::Config::Fields::Types::register(self)
|
10
|
+
|
11
|
+
#Pass the theme and mode for Codemirror
|
12
|
+
register_instance_option :config do
|
13
|
+
{
|
14
|
+
:mode => 'css',
|
15
|
+
:theme => 'night'
|
16
|
+
}
|
17
|
+
end
|
18
|
+
|
19
|
+
#Pass the location of the theme and mode for Codemirror
|
20
|
+
register_instance_option :assets do
|
21
|
+
{
|
22
|
+
:mode => '/assets/codemirror/modes/css.js',
|
23
|
+
:theme => '/assets/codemirror/themes/night.css'
|
24
|
+
}
|
25
|
+
end
|
26
|
+
|
27
|
+
#Use this if you want to point to a cloud instances of CodeMirror
|
28
|
+
register_instance_option :js_location do
|
29
|
+
'/assets/codemirror.js'
|
30
|
+
end
|
31
|
+
|
32
|
+
#Use this if you want to point to a cloud instances of CodeMirror
|
33
|
+
register_instance_option :css_location do
|
34
|
+
'/assets/codemirror.css'
|
35
|
+
end
|
36
|
+
|
37
|
+
register_instance_option :html_attributes do
|
38
|
+
{
|
39
|
+
:cols => '48',
|
40
|
+
:rows => '3'
|
41
|
+
}
|
42
|
+
end
|
43
|
+
|
44
|
+
register_instance_option :partial do
|
45
|
+
:form_code_mirror
|
46
|
+
end
|
47
|
+
|
48
|
+
[:assets, :config, :css_location, :js_location].each do |key|
|
49
|
+
register_deprecated_instance_option :"codemirror_#{key}", key
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
@@ -8,76 +8,22 @@ module RailsAdmin
|
|
8
8
|
# Register field type for the type loader
|
9
9
|
RailsAdmin::Config::Fields::Types::register(self)
|
10
10
|
|
11
|
-
|
12
|
-
|
13
|
-
|
11
|
+
[:ckeditor, :ckeditor_base_location, :ckeditor_config_js, :ckeditor_location].each do |key|
|
12
|
+
register_deprecated_instance_option key do
|
13
|
+
raise "The 'field(:foo){ ckeditor true }' style DSL is deprecated. Please use 'field :foo, :ck_editor' instead."
|
14
|
+
end
|
14
15
|
end
|
15
16
|
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
17
|
+
[:codemirror, :codemirror_assets, :codemirror_config, :codemirror_css_location, :codemirror_js_location].each do |key|
|
18
|
+
register_deprecated_instance_option key do
|
19
|
+
raise "The 'field(:foo){ codemirror true }' style DSL is deprecated. Please use 'field :foo, :code_mirror' instead."
|
20
|
+
end
|
20
21
|
end
|
21
22
|
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
#Use this if you want to point to a cloud instances of the base CKeditor
|
28
|
-
register_instance_option :ckeditor_base_location do
|
29
|
-
"#{Rails.application.config.assets.prefix}/ckeditor/"
|
30
|
-
end
|
31
|
-
|
32
|
-
# Codemirror is disabled by default and CKEditor takes precedence
|
33
|
-
register_instance_option :codemirror do
|
34
|
-
false
|
35
|
-
end
|
36
|
-
|
37
|
-
#Pass the theme and mode for Codemirror
|
38
|
-
register_instance_option :codemirror_config do
|
39
|
-
{
|
40
|
-
:mode => 'css',
|
41
|
-
:theme => 'night'
|
42
|
-
}
|
43
|
-
end
|
44
|
-
|
45
|
-
#Pass the location of the theme and mode for Codemirror
|
46
|
-
register_instance_option :codemirror_assets do
|
47
|
-
{
|
48
|
-
:mode => '/assets/codemirror/modes/css.js',
|
49
|
-
:theme => '/assets/codemirror/themes/night.css'
|
50
|
-
}
|
51
|
-
end
|
52
|
-
|
53
|
-
#Use this if you want to point to a cloud instances of CodeMirror
|
54
|
-
register_instance_option :codemirror_js_location do
|
55
|
-
'/assets/codemirror.js'
|
56
|
-
end
|
57
|
-
|
58
|
-
#Use this if you want to point to a cloud instances of CodeMirror
|
59
|
-
register_instance_option :codemirror_css_location do
|
60
|
-
'/assets/codemirror.css'
|
61
|
-
end
|
62
|
-
|
63
|
-
# bootstrap_wysihtml5
|
64
|
-
register_instance_option :bootstrap_wysihtml5 do
|
65
|
-
false
|
66
|
-
end
|
67
|
-
|
68
|
-
# If you want to have a different toolbar configuration for wysihtml5
|
69
|
-
# you can use a Ruby hash to configure these options:
|
70
|
-
# https://github.com/jhollingworth/bootstrap-wysihtml5/#advanced
|
71
|
-
register_instance_option :bootstrap_wysihtml5_config_options do
|
72
|
-
nil
|
73
|
-
end
|
74
|
-
|
75
|
-
register_instance_option :bootstrap_wysihtml5_css_location do
|
76
|
-
'/assets/bootstrap-wysihtml5.css'
|
77
|
-
end
|
78
|
-
|
79
|
-
register_instance_option :bootstrap_wysihtml5_js_location do
|
80
|
-
'/assets/bootstrap-wysihtml5.js'
|
23
|
+
[:bootstrap_wysihtml5, :bootstrap_wysihtml5_config_options, :bootstrap_wysihtml5_css_location, :bootstrap_wysihtml5_js_location].each do |key|
|
24
|
+
register_deprecated_instance_option key do
|
25
|
+
raise "The 'field(:foo){ bootstrap_wysihtml5 true }' style DSL is deprecated. Please use 'field :foo, :wysihtml5' instead."
|
26
|
+
end
|
81
27
|
end
|
82
28
|
|
83
29
|
register_instance_option :html_attributes do
|