carnival 0.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +15 -0
- data/MIT-LICENSE +20 -0
- data/Rakefile +34 -0
- data/app/assets/images/carnival/avatar.png +0 -0
- data/app/assets/images/carnival/bg_button.png +0 -0
- data/app/assets/images/carnival/cal.png +0 -0
- data/app/assets/images/carnival/chosen-sprite.png +0 -0
- data/app/assets/images/carnival/chosen-sprite@2x.png +0 -0
- data/app/assets/images/carnival/datatables-loading.gif +0 -0
- data/app/assets/images/carnival/fonts/opensans-regular-webfont.eot +0 -0
- data/app/assets/images/carnival/fonts/opensans-regular-webfont.svg +252 -0
- data/app/assets/images/carnival/fonts/opensans-regular-webfont.ttf +0 -0
- data/app/assets/images/carnival/fonts/opensans-regular-webfont.woff +0 -0
- data/app/assets/images/carnival/fonts/opensans-semibold-webfont.eot +0 -0
- data/app/assets/images/carnival/fonts/opensans-semibold-webfont.svg +251 -0
- data/app/assets/images/carnival/fonts/opensans-semibold-webfont.ttf +0 -0
- data/app/assets/images/carnival/fonts/opensans-semibold-webfont.woff +0 -0
- data/app/assets/images/carnival/fonts/up-not.png +0 -0
- data/app/assets/images/carnival/header-bg.png +0 -0
- data/app/assets/images/carnival/novo.png +0 -0
- data/app/assets/images/carnival/overlay.png +0 -0
- data/app/assets/images/carnival/search-button.png +0 -0
- data/app/assets/images/carnival/search.png +0 -0
- data/app/assets/images/carnival/sort_asc.png +0 -0
- data/app/assets/images/carnival/sort_asc_disabled.png +0 -0
- data/app/assets/images/carnival/sort_both.png +0 -0
- data/app/assets/images/carnival/sort_desc.png +0 -0
- data/app/assets/images/carnival/sort_desc_disabled.png +0 -0
- data/app/assets/images/carnival/sprite.png +0 -0
- data/app/assets/images/carnival/sprites-active.png +0 -0
- data/app/assets/images/carnival/sprites.png +0 -0
- data/app/assets/images/carnival/up-not.png +0 -0
- data/app/assets/images/carnival/voltar.png +0 -0
- data/app/assets/javascripts/carnival/admin.js +10 -0
- data/app/assets/javascripts/carnival/advanced_search.js +40 -0
- data/app/assets/javascripts/carnival/data_tables_functions.js +75 -0
- data/app/assets/javascripts/carnival/external/chosen.jquery.js +1239 -0
- data/app/assets/javascripts/carnival/external/jquery-ui-1.9.1.custom.min.js +6 -0
- data/app/assets/javascripts/carnival/external/jquery.colorbox-min.js +7 -0
- data/app/assets/javascripts/carnival/external/jquery.dataTables.min.js +156 -0
- data/app/assets/javascripts/carnival/external/jquery.maskedinput.js +7 -0
- data/app/assets/javascripts/carnival/external/jquery.noty.js +560 -0
- data/app/assets/javascripts/carnival/external/jquery.noty.layout.bottom.js +34 -0
- data/app/assets/javascripts/carnival/external/jquery.noty.theme.default.js +156 -0
- data/app/assets/javascripts/carnival/external/perfect-scrollbar-0.4.6.min.js +4 -0
- data/app/assets/javascripts/carnival/external/perfect-scrollbar-0.4.6.with-mousewheel.min.js +4 -0
- data/app/assets/javascripts/carnival/vizir_admin.js +137 -0
- data/app/assets/stylesheets/carnival/admin.css +13 -0
- data/app/assets/stylesheets/carnival/admin_users.css +4 -0
- data/app/assets/stylesheets/carnival/chosen.css +435 -0
- data/app/assets/stylesheets/carnival/colorbox.css +69 -0
- data/app/assets/stylesheets/carnival/datatable.css +131 -0
- data/app/assets/stylesheets/carnival/formframe.css +407 -0
- data/app/assets/stylesheets/carnival/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
- data/app/assets/stylesheets/carnival/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
- data/app/assets/stylesheets/carnival/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
- data/app/assets/stylesheets/carnival/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/app/assets/stylesheets/carnival/images/ui-bg_glass_75_dadada_1x400.png +0 -0
- data/app/assets/stylesheets/carnival/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
- data/app/assets/stylesheets/carnival/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
- data/app/assets/stylesheets/carnival/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
- data/app/assets/stylesheets/carnival/images/ui-icons_222222_256x240.png +0 -0
- data/app/assets/stylesheets/carnival/images/ui-icons_2e83ff_256x240.png +0 -0
- data/app/assets/stylesheets/carnival/images/ui-icons_454545_256x240.png +0 -0
- data/app/assets/stylesheets/carnival/images/ui-icons_888888_256x240.png +0 -0
- data/app/assets/stylesheets/carnival/images/ui-icons_cd0a0a_256x240.png +0 -0
- data/app/assets/stylesheets/carnival/jquery-ui-1.8.11.custom.css +573 -0
- data/app/assets/stylesheets/carnival/jquery.noty.css +104 -0
- data/app/assets/stylesheets/carnival/main.css +2223 -0
- data/app/assets/stylesheets/carnival/noty_theme_default.css +185 -0
- data/app/assets/stylesheets/carnival/perfect-scrollbar-0.4.6.min.css +5 -0
- data/app/assets/stylesheets/carnival/vizir-grid.css +663 -0
- data/app/controllers/carnival/admin_user_notifications_controller.rb +19 -0
- data/app/controllers/carnival/admin_users_controller.rb +10 -0
- data/app/controllers/carnival/base_admin_controller.rb +103 -0
- data/app/controllers/carnival/omniauth_callbacks_controller.rb +26 -0
- data/app/controllers/carnival/sessions_controller.rb +23 -0
- data/app/datatable/carnival/generic_datatable.rb +179 -0
- data/app/helpers/carnival/admin_users_helper.rb +4 -0
- data/app/helpers/carnival/base_admin_helper.rb +75 -0
- data/app/inputs/admin_base_input.rb +8 -0
- data/app/inputs/admin_currency_input.rb +12 -0
- data/app/inputs/admin_date_input.rb +11 -0
- data/app/inputs/admin_enum_input.rb +13 -0
- data/app/inputs/admin_relationship_select_input.rb +13 -0
- data/app/inputs/admin_text_input.rb +7 -0
- data/app/models/carnival/action.rb +51 -0
- data/app/models/carnival/admin_user.rb +40 -0
- data/app/models/carnival/admin_user_notification.rb +20 -0
- data/app/models/carnival/field.rb +102 -0
- data/app/models/carnival/form.rb +83 -0
- data/app/models/carnival/notification.rb +5 -0
- data/app/models/carnival/scope.rb +16 -0
- data/app/presenters/carnival/admin_user_notification_presenter.rb +61 -0
- data/app/presenters/carnival/admin_user_presenter.rb +53 -0
- data/app/presenters/carnival/base_admin_presenter.rb +336 -0
- data/app/views/carnival/admin_users/_form.html.haml +21 -0
- data/app/views/carnival/admin_users/edit.html.haml +3 -0
- data/app/views/carnival/admin_users/new.html.haml +4 -0
- data/app/views/carnival/admin_users/show.html.haml +14 -0
- data/app/views/carnival/index.html.haml +93 -0
- data/app/views/carnival/index.pdf.haml +5 -0
- data/app/views/carnival/login.html.haml +20 -0
- data/app/views/carnival/shared/_action_default.html.haml +1 -0
- data/app/views/carnival/shared/_action_delete.html.haml +1 -0
- data/app/views/carnival/shared/_add_button.html.haml +2 -0
- data/app/views/carnival/shared/_advanced_search.html.haml +26 -0
- data/app/views/carnival/shared/_advanced_search_field.html.haml +10 -0
- data/app/views/carnival/shared/_application_popup_partial.html.haml +12 -0
- data/app/views/carnival/shared/_batch_operation_checkbox.html.haml +4 -0
- data/app/views/carnival/shared/_delete.html.haml +1 -0
- data/app/views/carnival/shared/_edit_delete.html.haml +6 -0
- data/app/views/carnival/shared/_extra.html.haml +3 -0
- data/app/views/carnival/shared/_extra_item.html.haml +21 -0
- data/app/views/carnival/shared/_filter_bar.html.haml +3 -0
- data/app/views/carnival/shared/_header.pdf.haml +13 -0
- data/app/views/carnival/shared/_item_buttons.html.haml +3 -0
- data/app/views/carnival/shared/_link_fields.html.haml +6 -0
- data/app/views/carnival/shared/_list_cel.html.haml +9 -0
- data/app/views/carnival/shared/_list_cel.pdf.haml +9 -0
- data/app/views/carnival/shared/_period_filter.html.haml +54 -0
- data/app/views/carnival/shared/_report.pdf.haml +21 -0
- data/app/views/carnival/shared/_scope.html.haml +75 -0
- data/app/views/carnival/shared/_special_scope.html.haml +1 -0
- data/app/views/carnival/shared/form/_edit.html.haml +1 -0
- data/app/views/carnival/shared/form/_field.html.haml +8 -0
- data/app/views/carnival/shared/form/_form.html.haml +13 -0
- data/app/views/carnival/shared/form/edit.html.haml +6 -0
- data/app/views/carnival/shared/form/new.html.haml +7 -0
- data/app/views/carnival/shared/form/show.html.haml +16 -0
- data/app/views/carnival/shared/render_popup.js.erb +2 -0
- data/app/views/devise/confirmations/new.html.erb +12 -0
- data/app/views/devise/mailer/confirmation_instructions.html.erb +5 -0
- data/app/views/devise/mailer/reset_password_instructions.html.erb +8 -0
- data/app/views/devise/mailer/unlock_instructions.html.erb +7 -0
- data/app/views/devise/passwords/edit.html.erb +16 -0
- data/app/views/devise/passwords/new.html.erb +12 -0
- data/app/views/devise/registrations/edit.html.erb +29 -0
- data/app/views/devise/registrations/new.html.erb +18 -0
- data/app/views/devise/sessions/new.html.erb +19 -0
- data/app/views/devise/shared/_links.erb +25 -0
- data/app/views/devise/unlocks/new.html.erb +12 -0
- data/app/views/layouts/carnival/_menu.html.haml +30 -0
- data/app/views/layouts/carnival/_notifications_list.html.haml +27 -0
- data/app/views/layouts/carnival/admin.html.haml +51 -0
- data/config/initializers/carnival_initializer.rb +41 -0
- data/config/initializers/devise.rb +258 -0
- data/config/initializers/simple_form.rb +3 -0
- data/config/locales/carnival.en.yml +1 -0
- data/config/locales/carnival.pt.yml +228 -0
- data/config/locales/devise.en.yml +59 -0
- data/config/locales/devise.pt.yml +59 -0
- data/config/routes.rb +8 -0
- data/db/migrate/20140129211859_devise_create_admin_users.rb +43 -0
- data/db/migrate/20140129213216_create_notifications.rb +10 -0
- data/db/migrate/20140129223355_create_admin_user_notifications.rb +10 -0
- data/db/migrate/20140206144730_add_columns_to_admin_users.rb +7 -0
- data/lib/carnival.rb +13 -0
- data/lib/carnival/config.rb +10 -0
- data/lib/carnival/engine.rb +5 -0
- data/lib/carnival/routes.rb +13 -0
- data/lib/carnival/version.rb +3 -0
- data/lib/generators/carnival/install_generator.rb +18 -0
- data/lib/generators/carnival/templates/carnival_initializer.rb +41 -0
- data/lib/tasks/carnival_tasks.rake +4 -0
- data/test/carnival_test.rb +7 -0
- data/test/dummy/README.rdoc +28 -0
- data/test/dummy/Rakefile +6 -0
- data/test/dummy/app/assets/javascripts/application.js +13 -0
- data/test/dummy/app/assets/stylesheets/application.css +13 -0
- data/test/dummy/app/controllers/admin/cities_controller.rb +9 -0
- data/test/dummy/app/controllers/admin/countries_controller.rb +9 -0
- data/test/dummy/app/controllers/admin/people_controller.rb +9 -0
- data/test/dummy/app/controllers/admin/states_controller.rb +9 -0
- data/test/dummy/app/controllers/admin/testes_controller.rb +9 -0
- data/test/dummy/app/controllers/application_controller.rb +5 -0
- data/test/dummy/app/helpers/application_helper.rb +2 -0
- data/test/dummy/app/models/admin.rb +5 -0
- data/test/dummy/app/models/admin/association_common.rb +23 -0
- data/test/dummy/app/models/admin/city.rb +11 -0
- data/test/dummy/app/models/admin/company.rb +14 -0
- data/test/dummy/app/models/admin/country.rb +9 -0
- data/test/dummy/app/models/admin/job.rb +10 -0
- data/test/dummy/app/models/admin/person.rb +17 -0
- data/test/dummy/app/models/admin/professional_experience.rb +14 -0
- data/test/dummy/app/models/admin/state.rb +12 -0
- data/test/dummy/app/models/job.rb +8 -0
- data/test/dummy/app/presenters/admin/city_presenter.rb +42 -0
- data/test/dummy/app/presenters/admin/country_presenter.rb +28 -0
- data/test/dummy/app/presenters/admin/person_presenter.rb +60 -0
- data/test/dummy/app/presenters/admin/state_presenter.rb +35 -0
- data/test/dummy/app/views/admin/testes/_form.html.haml +17 -0
- data/test/dummy/app/views/admin/testes/edit.html.haml +3 -0
- data/test/dummy/app/views/admin/testes/new.html.haml +4 -0
- data/test/dummy/app/views/admin/testes/show.html.haml +14 -0
- data/test/dummy/app/views/layouts/application.html.erb +14 -0
- data/test/dummy/bin/bundle +3 -0
- data/test/dummy/bin/rails +4 -0
- data/test/dummy/bin/rake +4 -0
- data/test/dummy/config.ru +4 -0
- data/test/dummy/config/application.rb +22 -0
- data/test/dummy/config/boot.rb +5 -0
- data/test/dummy/config/database.yml +25 -0
- data/test/dummy/config/environment.rb +5 -0
- data/test/dummy/config/environments/development.rb +47 -0
- data/test/dummy/config/environments/production.rb +80 -0
- data/test/dummy/config/environments/test.rb +36 -0
- data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
- data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
- data/test/dummy/config/initializers/inflections.rb +16 -0
- data/test/dummy/config/initializers/mime_types.rb +5 -0
- data/test/dummy/config/initializers/secret_token.rb +12 -0
- data/test/dummy/config/initializers/session_store.rb +3 -0
- data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
- data/test/dummy/config/locales/en.yml +23 -0
- data/test/dummy/config/routes.rb +15 -0
- data/test/dummy/db/development.sqlite3 +0 -0
- data/test/dummy/db/migrate/20140206211804_create_admin_companies.rb +16 -0
- data/test/dummy/db/migrate/20140206211829_create_admin_countries.rb +10 -0
- data/test/dummy/db/migrate/20140206211850_create_admin_states.rb +12 -0
- data/test/dummy/db/migrate/20140206211923_create_admin_cities.rb +11 -0
- data/test/dummy/db/migrate/20140206212128_create_admin_people.rb +19 -0
- data/test/dummy/db/migrate/20140309013000_create_jobs.rb +9 -0
- data/test/dummy/db/migrate/20140309013019_create_professional_experiences.rb +14 -0
- data/test/dummy/db/migrate/20140323020642_devise_create_admin_users.carnival_engine.rb +44 -0
- data/test/dummy/db/migrate/20140323020643_create_notifications.carnival_engine.rb +11 -0
- data/test/dummy/db/migrate/20140323020644_create_admin_user_notifications.carnival_engine.rb +11 -0
- data/test/dummy/db/migrate/20140323020645_add_columns_to_admin_users.carnival_engine.rb +8 -0
- data/test/dummy/db/schema.rb +143 -0
- data/test/dummy/db/test.sqlite3 +0 -0
- data/test/dummy/log/bullet.log +0 -0
- data/test/dummy/log/development.log +6933 -0
- data/test/dummy/public/404.html +58 -0
- data/test/dummy/public/422.html +58 -0
- data/test/dummy/public/500.html +57 -0
- data/test/dummy/public/favicon.ico +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/01c1d1cbb942f60130f0aa01d50c98d2 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/049c6f2079e2e93f96fd228df8c265ba +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/0d9971c4a3b5017a7d2122508b66bb12 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/147e4215ac96fd8b8d373567ae00ed47 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/1634e1287a9914e738e710919b7cd6e4 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/16c6027bc506317d8266573d0ae1b510 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/16e4094498947b5f36bfbb490b94d025 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/197f549b9c46ec6679bddac8e4065948 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/2109e2acf993625dc0a3f05e7e0af523 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/22e50c67b95bf23b653e7a6768d38749 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/2684dad966b304ec2aee0149dc77c657 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/2908a36318747c72030e94441a2579c4 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/2a4d4d7ea99972ea41453ec4e6bad058 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/30c8c2e6ca355103a267133f6b45b0ce +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/31177aaa32db75be241353c5819450b4 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/31a6581dfe5a788b2b450403959a97c5 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/32daf8a3bfd9da8ab261f5002f66389f +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/33dfbc7bdde795abfd1031ceaa315dc8 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/3636240cbc1f10d05a7e27f44c330bf9 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/39d34c0caaa6f36d684fac1898a7f88f +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/3ac0f4fad0d3e6d3d13d4ed2189dcabe +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/3d8100b6e405407290dcf994ef05e0b7 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/3fd8a2a00bb4ebd69a3ecac257dbe536 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/3fdb709b3417757576eff80c0ec26b75 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/4423cb4765f66f187ffcb3be911c3600 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/45b86c586ed942b09cec2190b3c45c5a +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/47ce692a80d5b075614c2489d7e3a142 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/4a7a4dcd9fea9bd2e287771c51f96631 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/4bd7e9214a07840040d269fdbf523e97 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/4c36f4196d9df171251bea6f3b587fe3 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/4e4b1f24c5e69f2f305f6d6483a1605c +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/5090d7ea741c7f63994eb7b62e757f8f +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/565023fdd3960225e817ec043b2d9474 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/5a4d2d875f1d8ab987ab653f896d1c39 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/5c8a4c90b3525681a2173b93b9d55293 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/5e7998a2046d512312e432aef40d3e22 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/5eacf8d05b2a79f57d54ee047a51e223 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/662125e0a3b8f685abafe02e03c6f442 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/6808736d34ec24fb10203097ff009a4d +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/6c257cb7126b2e5bda4c42d414e39786 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/6ce5945ed85a31ec875a9973b5a3d3bc +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/6d806eaa317f200bbf2832a0abf1c1cc +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/6f6ec88ead28d25410be2a6f62ec79b1 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/706dcf8ec253808fea35ae06a4b408b1 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/7cfe3fa955d677396ed9e22193559a64 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/7e154ca951644e8aa1a2c6221f08db4f +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/822d6436044fe88b0b3fbc6f3458ff88 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/84e6a879569ca7546a93558488a6ff70 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/8576d7c22dbd8222ab27a6c47f56a65c +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/88144c375f9e329812d0302be96e0eab +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/8a4b32386b5d8554473df478badd6ef9 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/8bc60f31f479cd0263d897aa45b88750 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/8e22d55d0b7b958a3904e7428269df65 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/918ab452d9c4634682ff94ffbd89e16f +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/9455de99a5c68705427bbec9e50865ce +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/958dd41e5252627471b2b65116401512 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/996ac001c901711cabb64b7e1940c54a +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/9aec27b5fa2afdfa28068452ece0e6f0 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/9db7e75f3fa621ef08ade7ffda96e39f +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/9dc853d92b5d774afadacc451965059c +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/a125dd8e84a82fc90705bd3710fb93c2 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/a1c5386d742fb4d01bea977ed28f4a96 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/a30288f737d428b0feb2a78b3aab9c69 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/a40d723f9a6ad5b541009b8f05ce6533 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/a908448dd851cae431aa2b4bde9b5a98 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/aa5708f6fbe7528d49c127a7f89a2511 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/aaf9dac7bb02577a8005e39ca9225482 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/ad7b50123ad008ac0730bbbdf76a6bfe +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/b271e3537645a42480b3ba7bca2342f4 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/ba891185d4fda83f4c16e6bb8139359b +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/c72101732682999b6ca050f007fc6467 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/c8927e934e7960fc7907b6fc02ea7f08 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/c980544b5828a643ecaa8e784897c2c2 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/ca0e1997bc6c40f955a42ee777299750 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/cc2c3f8b87c5b787305412a3076058db +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/d16461dfcae4b782f721ebd81e4f8740 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/d3b5d5784361e5eb827fbcdb0332258f +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/d81122f6f2520c8f0785425936756e20 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/dbf160a6439a8d0b792ff46cf0a612f6 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/dc829340258cc36c0df423725df54649 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/dd326f3f4fd1c7fd075b58d6cb623a25 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/de060f82711b4b5c465f17b140eb2a61 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/e0352d0f97751491adbe6a94832772af +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/e1d6efce94e71965434d2dde64fd8410 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/e4298973f799acdce289752c24bfddf2 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/e9c81ca91323dab8977ffd8a459cab06 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/eccab0d41d08e156ccd2f36f85949356 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/eed84a44f4e3915a39ea98ce25dc2570 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/f1e75c209067b23f5c0c7bf2006c43d0 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/f31e05a23db2e9dfc9207658cda7b799 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/f5c9348795319821f3309d4e03bb9fdb +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/f631443b06d6b36e666344dbaf0b64f0 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/f7ab949c8c6b7ef3f2b743ebd98f9f59 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/fc4b3bb94f52c27dfb87395841a7cb62 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/fc79e1609ba401a4408c71182ef89b3e +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/fd1e0a44b82fc47f26c7adec9d918911 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/fe9a0ccc2a407c74780c85e66882e888 +0 -0
- data/test/dummy/tmp/cache/assets/development/sprockets/ff3b0a569330823bd5599af14ee70cc8 +0 -0
- data/test/dummy/tmp/pids/server.pid +1 -0
- data/test/fixtures/notifications.yml +11 -0
- data/test/integration/navigation_test.rb +10 -0
- data/test/models/notification_test.rb +7 -0
- data/test/test_helper.rb +15 -0
- metadata +739 -0
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
module AdminBaseInput
|
|
2
|
+
def merge_options(default_input_html_options, input_html_options)
|
|
3
|
+
input_html_options[:class].push(default_input_html_options[:class])
|
|
4
|
+
input_html_options[:class] = input_html_options[:class].uniq
|
|
5
|
+
input_html_options[:value] = default_input_html_options[:value]
|
|
6
|
+
return input_html_options
|
|
7
|
+
end
|
|
8
|
+
end
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
class AdminCurrencyInput < SimpleForm::Inputs::Base
|
|
2
|
+
|
|
3
|
+
include ActionView::Helpers::NumberHelper
|
|
4
|
+
include AdminBaseInput
|
|
5
|
+
|
|
6
|
+
def input
|
|
7
|
+
default_input_html_options = {class: 'money',
|
|
8
|
+
value: number_with_precision(@builder.object.send(attribute_name), separator: ",", precision: 2) }
|
|
9
|
+
options = merge_options(default_input_html_options, input_html_options)
|
|
10
|
+
return "#{@builder.text_field(attribute_name, options)}".html_safe
|
|
11
|
+
end
|
|
12
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
class AdminDateInput < SimpleForm::Inputs::Base
|
|
2
|
+
|
|
3
|
+
include AdminBaseInput
|
|
4
|
+
|
|
5
|
+
def input
|
|
6
|
+
default_input_html_options = {class: 'datepicker',
|
|
7
|
+
value: @builder.object.send(attribute_name).nil? ? "" : @builder.object.send(attribute_name).strftime('%d/%m/%Y')}
|
|
8
|
+
options = merge_options(default_input_html_options, input_html_options)
|
|
9
|
+
return "#{@builder.text_field(attribute_name, options)}".html_safe
|
|
10
|
+
end
|
|
11
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
class AdminEnumInput < SimpleForm::Inputs::CollectionSelectInput
|
|
2
|
+
def input
|
|
3
|
+
super
|
|
4
|
+
@builder.collection_select(
|
|
5
|
+
attribute_name, @builder.object.class.const_get(attribute_name.to_s.upcase),
|
|
6
|
+
:first, :last,
|
|
7
|
+
prompt: I18n.t("#{@builder.object.class.to_s.gsub(/^.*::/, '').downcase}.lista_#{attribute_name}.selecione",
|
|
8
|
+
default: I18n.t("messages.select")),
|
|
9
|
+
input_html: {:class=> 'chosen'}
|
|
10
|
+
)
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
class AdminRelationshipSelectInput < SimpleForm::Inputs::CollectionSelectInput
|
|
2
|
+
def input
|
|
3
|
+
super
|
|
4
|
+
@builder.collection_select(
|
|
5
|
+
"#{attribute_name}_id",
|
|
6
|
+
@builder.object.class.name.constantize.reflect_on_association(attribute_name.to_sym).klass.name.constantize.list_for_select,
|
|
7
|
+
:first, :last,
|
|
8
|
+
prompt: I18n.t("#{@builder.object.class.to_s.gsub(/^.*::/, '').downcase}.lista_#{attribute_name}.selecione",
|
|
9
|
+
default: I18n.t("messages.select")),
|
|
10
|
+
input_html: {:class=> 'chosen'}
|
|
11
|
+
)
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
module Carnival
|
|
2
|
+
class Action
|
|
3
|
+
include Rails.application.routes.url_helpers
|
|
4
|
+
PARTIAL_DEFAULT = "/carnival/shared/action_default"
|
|
5
|
+
PARTIAL_DELETE = "/carnival/shared/action_delete"
|
|
6
|
+
PARTIAL_REMOTE = "/carnival/shared/action_remote"
|
|
7
|
+
|
|
8
|
+
def initialize(presenter, name, params={})
|
|
9
|
+
@presenter = presenter
|
|
10
|
+
@name = name
|
|
11
|
+
@params = params
|
|
12
|
+
@partial = default_partial
|
|
13
|
+
@path = params[:path] if params[:path].present?
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def path(extra_params={})
|
|
17
|
+
if @path.nil?
|
|
18
|
+
params = {controller: @presenter.controller_name, action: @name}
|
|
19
|
+
params = params.merge(extra_params) if extra_params.present?
|
|
20
|
+
params = params.merge(:only_path => true)
|
|
21
|
+
url_for(params)
|
|
22
|
+
else
|
|
23
|
+
@path
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def partial
|
|
28
|
+
@partial
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
def name
|
|
32
|
+
@name
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def target
|
|
36
|
+
@params[:target]
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
def default_partial()
|
|
40
|
+
if [:new, :edit, :show].include?(@name)
|
|
41
|
+
PARTIAL_DEFAULT
|
|
42
|
+
elsif @name == :destroy
|
|
43
|
+
PARTIAL_DELETE
|
|
44
|
+
elsif @params[:remote]
|
|
45
|
+
PARTIAL_REMOTE
|
|
46
|
+
else
|
|
47
|
+
PARTIAL_DEFAULT
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
module Carnival
|
|
2
|
+
class AdminUser < ActiveRecord::Base
|
|
3
|
+
# Include default devise modules. Others available are:
|
|
4
|
+
# :confirmable, :lockable, :timeoutable and :omniauthable
|
|
5
|
+
devise :database_authenticatable, :registerable,
|
|
6
|
+
:recoverable, :rememberable, :trackable, :validatable,
|
|
7
|
+
:omniauthable, :omniauth_providers => [:facebook, :google_oauth2]
|
|
8
|
+
|
|
9
|
+
has_many :admin_user_notifications
|
|
10
|
+
|
|
11
|
+
def unread_notifications
|
|
12
|
+
self.admin_user_notifications.where(:read => false).to_a
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def self.new_with_session(params, session)
|
|
16
|
+
super.tap do |user|
|
|
17
|
+
if data = session["devise.facebook_data"] && session["devise.facebook_data"]["extra"]["raw_info"]
|
|
18
|
+
user.email = data["email"] if user.email.blank?
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def self.find_for_omni_auth(auth)
|
|
24
|
+
if user = AdminUser.where(email: auth.info.email).first
|
|
25
|
+
user.provider = auth.provider
|
|
26
|
+
user.uid = auth.uid
|
|
27
|
+
user
|
|
28
|
+
else
|
|
29
|
+
where(auth.slice(:provider, :uid)).first_or_create do |user|
|
|
30
|
+
user.provider = auth.provider
|
|
31
|
+
user.uid = auth.uid
|
|
32
|
+
user.name = auth.info.name
|
|
33
|
+
user.email = auth.info.email
|
|
34
|
+
user.avatar = auth.info.image
|
|
35
|
+
user.password = Devise.friendly_token[0,20]
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
module Carnival
|
|
2
|
+
class AdminUserNotification < ActiveRecord::Base
|
|
3
|
+
include ActionView::Helpers::UrlHelper
|
|
4
|
+
belongs_to :admin_user
|
|
5
|
+
belongs_to :notification
|
|
6
|
+
|
|
7
|
+
scope :unread, -> {where('read = ?', false)}
|
|
8
|
+
|
|
9
|
+
def message_link
|
|
10
|
+
link_to(self.notification.message, Rails.application.routes.url_helpers.admin_read_admin_user_notification_path(self))
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def mark_as_read_and_get_link
|
|
14
|
+
self.read = true
|
|
15
|
+
self.save
|
|
16
|
+
self.notification.link
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
module Carnival
|
|
2
|
+
class Field
|
|
3
|
+
|
|
4
|
+
attr_accessor :size, :column, :line, :name, :params
|
|
5
|
+
|
|
6
|
+
def initialize(name, params={})
|
|
7
|
+
@params = params
|
|
8
|
+
@name = name
|
|
9
|
+
set_position_by_params
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def name
|
|
13
|
+
@name.to_s
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def css_class
|
|
17
|
+
if @params[:css_class]
|
|
18
|
+
return @params[:css_class]
|
|
19
|
+
else
|
|
20
|
+
return ""
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def date_filter?
|
|
25
|
+
@params[:date_filter]
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def default_date_filter
|
|
29
|
+
if @params[:date_filter_default]
|
|
30
|
+
@params[:date_filter_default]
|
|
31
|
+
else
|
|
32
|
+
date_filter_periods.first.first
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
def date_filter_periods
|
|
37
|
+
if @params[:date_filter_periods]
|
|
38
|
+
@params[:date_filter_periods]
|
|
39
|
+
else
|
|
40
|
+
{:today => ["#{Date.today}", "#{Date.today}"],
|
|
41
|
+
:yesterday => ["#{Date.today - 1.day}", "#{Date.today - 1.day}"],
|
|
42
|
+
:this_week => ["#{Date.today.beginning_of_week}", "#{Date.today.end_of_week}"],
|
|
43
|
+
:last_week => ["#{(Date.today - 1.week).beginning_of_week}", "#{(Date.today - 1.week).end_of_week}"],
|
|
44
|
+
:this_month => ["#{Date.today.beginning_of_month}", "#{Date.today.end_of_month}"],
|
|
45
|
+
:last_month => ["#{(Date.today - 1.month).beginning_of_month}", "#{(Date.today - 1.month).end_of_month}"],
|
|
46
|
+
:this_year => ["#{Date.today.beginning_of_year}", "#{Date.today.end_of_year}"],
|
|
47
|
+
:last_year => ["#{(Date.today - 1.year).beginning_of_year}", "#{(Date.today - 1.year).end_of_year}"]
|
|
48
|
+
}
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
def default_sortable?
|
|
52
|
+
@params[:sortable] && @params[:sortable].class == Hash && @params[:sortable][:default] == true
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
def default_sort_direction
|
|
56
|
+
if default_sortable?
|
|
57
|
+
if @params[:sortable][:direction]
|
|
58
|
+
return @params[:sortable][:direction]
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
return :asc
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
def sortable?
|
|
65
|
+
@params[:sortable]
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
def searchable?
|
|
69
|
+
@params[:searchable]
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
def advanced_searchable?
|
|
73
|
+
@params[:advanced_search]
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
def advanced_search_operator
|
|
77
|
+
return @params[:advanced_search][:operator] if advanced_searchable? and @params[:advanced_search][:operator].present?
|
|
78
|
+
:like
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
def valid_for_action?(action)
|
|
82
|
+
@params[:actions].include?(action)
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
def as
|
|
86
|
+
@params[:as]
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
def widget
|
|
90
|
+
@params[:widget].present? ? @params[:widget] : :input
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
private
|
|
94
|
+
def set_position_by_params
|
|
95
|
+
if @params[:position].present?
|
|
96
|
+
@line = @params[:position][:line]
|
|
97
|
+
@column = @params[:position][:column]
|
|
98
|
+
@size = @params[:position][:size]
|
|
99
|
+
end
|
|
100
|
+
end
|
|
101
|
+
end
|
|
102
|
+
end
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
module Carnival
|
|
2
|
+
class Form
|
|
3
|
+
|
|
4
|
+
attr_accessor :action,:params,:fields
|
|
5
|
+
|
|
6
|
+
def initialize(action, params={})
|
|
7
|
+
@params = params
|
|
8
|
+
@action = action
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def fields=(fields)
|
|
12
|
+
@fields = fields
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def lines
|
|
16
|
+
ordered_lines
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
private
|
|
20
|
+
|
|
21
|
+
def ordered_lines
|
|
22
|
+
put_line_in_fields
|
|
23
|
+
sort_columns(to_line_array)
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def to_line_array
|
|
27
|
+
lines = @fields.sort_by { |k, v| v.line }
|
|
28
|
+
final_lines = []
|
|
29
|
+
line_temp = []
|
|
30
|
+
current_line = lines.first[1].line if lines.size > 0
|
|
31
|
+
lines.each do |k,field|
|
|
32
|
+
if current_line != field.line
|
|
33
|
+
#Nova Linha
|
|
34
|
+
final_lines << line_temp if line_temp.size > 0
|
|
35
|
+
line_temp = []
|
|
36
|
+
current_line = field.line
|
|
37
|
+
end
|
|
38
|
+
line_temp << field
|
|
39
|
+
end
|
|
40
|
+
final_lines << line_temp if line_temp.size > 0
|
|
41
|
+
final_lines
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
def sort_columns (lines)
|
|
45
|
+
lines.each do | line|
|
|
46
|
+
line = line.sort_by{|x| x.column}
|
|
47
|
+
check_size line
|
|
48
|
+
end
|
|
49
|
+
lines
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
def check_size (line)
|
|
53
|
+
line_size = 0
|
|
54
|
+
nil_values = 0
|
|
55
|
+
line.each do |column|
|
|
56
|
+
if column.size.present?
|
|
57
|
+
line_size += column.size
|
|
58
|
+
else
|
|
59
|
+
nil_values += 1
|
|
60
|
+
end
|
|
61
|
+
end
|
|
62
|
+
if nil_values > 0
|
|
63
|
+
nil_column_size = 12 - (line_size / nil_values)
|
|
64
|
+
puts nil_column_size
|
|
65
|
+
line.each do |column|
|
|
66
|
+
column.size = nil_column_size if not column.size.present?
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
def put_line_in_fields
|
|
72
|
+
default_line = 999
|
|
73
|
+
@fields.each do |key,field|
|
|
74
|
+
if field.params[:position].blank? or field.params[:position][:line].blank?
|
|
75
|
+
field.line = default_line
|
|
76
|
+
default_line += 1
|
|
77
|
+
end
|
|
78
|
+
end
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
end
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# -*- encoding : utf-8 -*-
|
|
2
|
+
module Carnival
|
|
3
|
+
class AdminUserNotificationPresenter < Carnival::BaseAdminPresenter
|
|
4
|
+
def listagem(tipo = nil)
|
|
5
|
+
[:notification__title, :message_link, :created_at]
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
def _listagem_botoes_extras
|
|
9
|
+
[
|
|
10
|
+
{
|
|
11
|
+
:link => 'admin_mark_notification_as_read',
|
|
12
|
+
:nome => "#{I18n.t('notification.mark_as_read')}",
|
|
13
|
+
:remote => true,
|
|
14
|
+
:success => 'markAsReadCallback',
|
|
15
|
+
:error => 'errorCallback',
|
|
16
|
+
:method => 'POST',
|
|
17
|
+
:campo => :mark_as_read_button
|
|
18
|
+
}
|
|
19
|
+
]
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def remoto?
|
|
23
|
+
true
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def listagem_botoes
|
|
27
|
+
{:novo => false, :editar=> false, :apagar => false}
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def busca_remoto?
|
|
31
|
+
true
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
def ordenacao_remoto
|
|
35
|
+
[:id]
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
def escopo
|
|
39
|
+
[:all, :unread]
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
def filtro_data
|
|
43
|
+
nil
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
def escopo_padrao
|
|
47
|
+
:unread
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
def busca_remoto
|
|
51
|
+
[:title, :message]
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
def advanced_search
|
|
55
|
+
{
|
|
56
|
+
:notification__title => [:field, :like],
|
|
57
|
+
:notification__message => [:field, :like]
|
|
58
|
+
}
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
end
|