23 changed files with 1055 additions and 9 deletions
			
			
		@ -0,0 +1,28 @@ | 
				
			|||||||
 | 
					ActiveAdmin.register AdminUser do | 
				
			||||||
 | 
					  permit_params :email, :password, :password_confirmation | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  index do | 
				
			||||||
 | 
					    selectable_column | 
				
			||||||
 | 
					    id_column | 
				
			||||||
 | 
					    column :email | 
				
			||||||
 | 
					    column :current_sign_in_at | 
				
			||||||
 | 
					    column :sign_in_count | 
				
			||||||
 | 
					    column :created_at | 
				
			||||||
 | 
					    actions | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  filter :email | 
				
			||||||
 | 
					  filter :current_sign_in_at | 
				
			||||||
 | 
					  filter :sign_in_count | 
				
			||||||
 | 
					  filter :created_at | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  form do |f| | 
				
			||||||
 | 
					    f.inputs do | 
				
			||||||
 | 
					      f.input :email | 
				
			||||||
 | 
					      f.input :password | 
				
			||||||
 | 
					      f.input :password_confirmation | 
				
			||||||
 | 
					    end | 
				
			||||||
 | 
					    f.actions | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,32 @@ | 
				
			|||||||
 | 
					ActiveAdmin.register_page "Dashboard" do | 
				
			||||||
 | 
					  menu priority: 1, label: proc { I18n.t("active_admin.dashboard") } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  content title: proc { I18n.t("active_admin.dashboard") } do | 
				
			||||||
 | 
					    div class: "blank_slate_container", id: "dashboard_default_message" do | 
				
			||||||
 | 
					      span class: "blank_slate" do | 
				
			||||||
 | 
					        span I18n.t("active_admin.dashboard_welcome.welcome") | 
				
			||||||
 | 
					        small I18n.t("active_admin.dashboard_welcome.call_to_action") | 
				
			||||||
 | 
					      end | 
				
			||||||
 | 
					    end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Here is an example of a simple dashboard with columns and panels. | 
				
			||||||
 | 
					    # | 
				
			||||||
 | 
					    # columns do | 
				
			||||||
 | 
					    #   column do | 
				
			||||||
 | 
					    #     panel "Recent Posts" do | 
				
			||||||
 | 
					    #       ul do | 
				
			||||||
 | 
					    #         Post.recent(5).map do |post| | 
				
			||||||
 | 
					    #           li link_to(post.title, admin_post_path(post)) | 
				
			||||||
 | 
					    #         end | 
				
			||||||
 | 
					    #       end | 
				
			||||||
 | 
					    #     end | 
				
			||||||
 | 
					    #   end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    #   column do | 
				
			||||||
 | 
					    #     panel "Info" do | 
				
			||||||
 | 
					    #       para "Welcome to ActiveAdmin." | 
				
			||||||
 | 
					    #     end | 
				
			||||||
 | 
					    #   end | 
				
			||||||
 | 
					    # end | 
				
			||||||
 | 
					  end # content | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,18 @@ | 
				
			|||||||
 | 
					ActiveAdmin.register IncomeRange do | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # See permitted parameters documentation: | 
				
			||||||
 | 
					  # https://github.com/activeadmin/activeadmin/blob/master/docs/2-resource-customization.md#setting-up-strong-parameters | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Uncomment all parameters which should be permitted for assignment | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # permit_params :economic_status, :soft_min, :soft_max, :hard_min, :hard_max | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # or | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # permit_params do | 
				
			||||||
 | 
					  #   permitted = [:economic_status, :soft_min, :soft_max, :hard_min, :hard_max] | 
				
			||||||
 | 
					  #   permitted << :other if params[:action] == 'create' && current_user.admin? | 
				
			||||||
 | 
					  #   permitted | 
				
			||||||
 | 
					  # end | 
				
			||||||
 | 
					   | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,5 @@ | 
				
			|||||||
 | 
					// Load Active Admin's styles into Webpacker,
 | 
				
			||||||
 | 
					// see `active_admin.scss` for customization.
 | 
				
			||||||
 | 
					import "../stylesheets/active_admin"; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import "@activeadmin/activeadmin"; | 
				
			||||||
@ -0,0 +1,2 @@ | 
				
			|||||||
 | 
					/* Active Admin Print Stylesheet */ | 
				
			||||||
 | 
					@import "~@activeadmin/activeadmin/src/scss/print"; | 
				
			||||||
@ -0,0 +1,17 @@ | 
				
			|||||||
 | 
					// Sass variable overrides must be declared before loading up Active Admin's styles. | 
				
			||||||
 | 
					// | 
				
			||||||
 | 
					// To view the variables that Active Admin provides, take a look at | 
				
			||||||
 | 
					// `app/assets/stylesheets/active_admin/mixins/_variables.scss` in the | 
				
			||||||
 | 
					// Active Admin source. | 
				
			||||||
 | 
					// | 
				
			||||||
 | 
					// For example, to change the sidebar width: | 
				
			||||||
 | 
					// $sidebar-width: 242px; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Active Admin's got SASS! | 
				
			||||||
 | 
					@import "~@activeadmin/activeadmin/src/scss/mixins"; | 
				
			||||||
 | 
					@import "~@activeadmin/activeadmin/src/scss/base"; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Overriding any non-variable Sass must be done after the fact. | 
				
			||||||
 | 
					// For example, to change the default status-tag color: | 
				
			||||||
 | 
					// | 
				
			||||||
 | 
					//   .status_tag { background: #6090DB; } | 
				
			||||||
@ -0,0 +1,6 @@ | 
				
			|||||||
 | 
					class AdminUser < ApplicationRecord | 
				
			||||||
 | 
					  # Include default devise modules. Others available are: | 
				
			||||||
 | 
					  # :confirmable, :lockable, :timeoutable, :trackable and :omniauthable | 
				
			||||||
 | 
					  devise :database_authenticatable,  | 
				
			||||||
 | 
					         :recoverable, :rememberable, :validatable | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,3 @@ | 
				
			|||||||
 | 
					class IncomeRange < ApplicationRecord | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,335 @@ | 
				
			|||||||
 | 
					ActiveAdmin.setup do |config| | 
				
			||||||
 | 
					  # == Site Title | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Set the title that is displayed on the main layout | 
				
			||||||
 | 
					  # for each of the active admin pages. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  config.site_title = "DLUHC CORE" | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Set the link url for the title. For example, to take | 
				
			||||||
 | 
					  # users to your main site. Defaults to no link. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # config.site_title_link = "/" | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Set an optional image to be displayed for the header | 
				
			||||||
 | 
					  # instead of a string (overrides :site_title) | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Note: Aim for an image that's 21px high so it fits in the header. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # config.site_title_image = "logo.png" | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Default Namespace | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Set the default namespace each administration resource | 
				
			||||||
 | 
					  # will be added to. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # eg: | 
				
			||||||
 | 
					  #   config.default_namespace = :hello_world | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # This will create resources in the HelloWorld module and | 
				
			||||||
 | 
					  # will namespace routes to /hello_world/* | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # To set no namespace by default, use: | 
				
			||||||
 | 
					  #   config.default_namespace = false | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Default: | 
				
			||||||
 | 
					  # config.default_namespace = :admin | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # You can customize the settings for each namespace by using | 
				
			||||||
 | 
					  # a namespace block. For example, to change the site title | 
				
			||||||
 | 
					  # within a namespace: | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  #   config.namespace :admin do |admin| | 
				
			||||||
 | 
					  #     admin.site_title = "Custom Admin Title" | 
				
			||||||
 | 
					  #   end | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # This will ONLY change the title for the admin section. Other | 
				
			||||||
 | 
					  # namespaces will continue to use the main "site_title" configuration. | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == User Authentication | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Active Admin will automatically call an authentication | 
				
			||||||
 | 
					  # method in a before filter of all controller actions to | 
				
			||||||
 | 
					  # ensure that there is a currently logged in admin user. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # This setting changes the method which Active Admin calls | 
				
			||||||
 | 
					  # within the application controller. | 
				
			||||||
 | 
					  config.authentication_method = :authenticate_admin_user! | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == User Authorization | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Active Admin will automatically call an authorization | 
				
			||||||
 | 
					  # method in a before filter of all controller actions to | 
				
			||||||
 | 
					  # ensure that there is a user with proper rights. You can use | 
				
			||||||
 | 
					  # CanCanAdapter or make your own. Please refer to documentation. | 
				
			||||||
 | 
					  # config.authorization_adapter = ActiveAdmin::CanCanAdapter | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # In case you prefer Pundit over other solutions you can here pass | 
				
			||||||
 | 
					  # the name of default policy class. This policy will be used in every | 
				
			||||||
 | 
					  # case when Pundit is unable to find suitable policy. | 
				
			||||||
 | 
					  # config.pundit_default_policy = "MyDefaultPunditPolicy" | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # If you wish to maintain a separate set of Pundit policies for admin | 
				
			||||||
 | 
					  # resources, you may set a namespace here that Pundit will search | 
				
			||||||
 | 
					  # within when looking for a resource's policy. | 
				
			||||||
 | 
					  # config.pundit_policy_namespace = :admin | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # You can customize your CanCan Ability class name here. | 
				
			||||||
 | 
					  # config.cancan_ability_class = "Ability" | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # You can specify a method to be called on unauthorized access. | 
				
			||||||
 | 
					  # This is necessary in order to prevent a redirect loop which happens | 
				
			||||||
 | 
					  # because, by default, user gets redirected to Dashboard. If user | 
				
			||||||
 | 
					  # doesn't have access to Dashboard, he'll end up in a redirect loop. | 
				
			||||||
 | 
					  # Method provided here should be defined in application_controller.rb. | 
				
			||||||
 | 
					  # config.on_unauthorized_access = :access_denied | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Current User | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Active Admin will associate actions with the current | 
				
			||||||
 | 
					  # user performing them. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # This setting changes the method which Active Admin calls | 
				
			||||||
 | 
					  # (within the application controller) to return the currently logged in user. | 
				
			||||||
 | 
					  config.current_user_method = :current_admin_user | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Logging Out | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Active Admin displays a logout link on each screen. These | 
				
			||||||
 | 
					  # settings configure the location and method used for the link. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # This setting changes the path where the link points to. If it's | 
				
			||||||
 | 
					  # a string, the strings is used as the path. If it's a Symbol, we | 
				
			||||||
 | 
					  # will call the method to return the path. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Default: | 
				
			||||||
 | 
					  config.logout_link_path = :destroy_admin_user_session_path | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # This setting changes the http method used when rendering the | 
				
			||||||
 | 
					  # link. For example :get, :delete, :put, etc.. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Default: | 
				
			||||||
 | 
					  # config.logout_link_method = :get | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Root | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Set the action to call for the root path. You can set different | 
				
			||||||
 | 
					  # roots for each namespace. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Default: | 
				
			||||||
 | 
					  # config.root_to = 'dashboard#index' | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Admin Comments | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # This allows your users to comment on any resource registered with Active Admin. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # You can completely disable comments: | 
				
			||||||
 | 
					  # config.comments = false | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # You can change the name under which comments are registered: | 
				
			||||||
 | 
					  # config.comments_registration_name = 'AdminComment' | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # You can change the order for the comments and you can change the column | 
				
			||||||
 | 
					  # to be used for ordering: | 
				
			||||||
 | 
					  # config.comments_order = 'created_at ASC' | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # You can disable the menu item for the comments index page: | 
				
			||||||
 | 
					  # config.comments_menu = false | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # You can customize the comment menu: | 
				
			||||||
 | 
					  # config.comments_menu = { parent: 'Admin', priority: 1 } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Batch Actions | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Enable and disable Batch Actions | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  config.batch_actions = true | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Controller Filters | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # You can add before, after and around filters to all of your | 
				
			||||||
 | 
					  # Active Admin resources and pages from here. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # config.before_action :do_something_awesome | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Attribute Filters | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # You can exclude possibly sensitive model attributes from being displayed, | 
				
			||||||
 | 
					  # added to forms, or exported by default by ActiveAdmin | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  config.filter_attributes = [:encrypted_password, :password, :password_confirmation] | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Localize Date/Time Format | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Set the localize format to display dates and times. | 
				
			||||||
 | 
					  # To understand how to localize your app with I18n, read more at | 
				
			||||||
 | 
					  # https://guides.rubyonrails.org/i18n.html | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # You can run `bin/rails runner 'puts I18n.t("date.formats")'` to see the | 
				
			||||||
 | 
					  # available formats in your application. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  config.localize_format = :long | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Setting a Favicon | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # config.favicon = 'favicon.ico' | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Meta Tags | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Add additional meta tags to the head element of active admin pages. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Add tags to all pages logged in users see: | 
				
			||||||
 | 
					  #   config.meta_tags = { author: 'My Company' } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # By default, sign up/sign in/recover password pages are excluded | 
				
			||||||
 | 
					  # from showing up in search engine results by adding a robots meta | 
				
			||||||
 | 
					  # tag. You can reset the hash of meta tags included in logged out | 
				
			||||||
 | 
					  # pages: | 
				
			||||||
 | 
					  #   config.meta_tags_for_logged_out_pages = {} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Removing Breadcrumbs | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Breadcrumbs are enabled by default. You can customize them for individual | 
				
			||||||
 | 
					  # resources or you can disable them globally from here. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # config.breadcrumb = false | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Create Another Checkbox | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Create another checkbox is disabled by default. You can customize it for individual | 
				
			||||||
 | 
					  # resources or you can enable them globally from here. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # config.create_another = true | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Register Stylesheets & Javascripts | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # We recommend using the built in Active Admin layout and loading | 
				
			||||||
 | 
					  # up your own stylesheets / javascripts to customize the look | 
				
			||||||
 | 
					  # and feel. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # To load a stylesheet: | 
				
			||||||
 | 
					  #   config.register_stylesheet 'my_stylesheet.css' | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # You can provide an options hash for more control, which is passed along to stylesheet_link_tag(): | 
				
			||||||
 | 
					  #   config.register_stylesheet 'my_print_stylesheet.css', media: :print | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # To load a javascript file: | 
				
			||||||
 | 
					  #   config.register_javascript 'my_javascript.js' | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == CSV options | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Set the CSV builder separator | 
				
			||||||
 | 
					  # config.csv_options = { col_sep: ';' } | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Force the use of quotes | 
				
			||||||
 | 
					  # config.csv_options = { force_quotes: true } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Menu System | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # You can add a navigation menu to be used in your application, or configure a provided menu | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # To change the default utility navigation to show a link to your website & a logout btn | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  #   config.namespace :admin do |admin| | 
				
			||||||
 | 
					  #     admin.build_menu :utility_navigation do |menu| | 
				
			||||||
 | 
					  #       menu.add label: "My Great Website", url: "http://www.mygreatwebsite.com", html_options: { target: :blank } | 
				
			||||||
 | 
					  #       admin.add_logout_button_to_menu menu | 
				
			||||||
 | 
					  #     end | 
				
			||||||
 | 
					  #   end | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # If you wanted to add a static menu item to the default menu provided: | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  #   config.namespace :admin do |admin| | 
				
			||||||
 | 
					  #     admin.build_menu :default do |menu| | 
				
			||||||
 | 
					  #       menu.add label: "My Great Website", url: "http://www.mygreatwebsite.com", html_options: { target: :blank } | 
				
			||||||
 | 
					  #     end | 
				
			||||||
 | 
					  #   end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Download Links | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # You can disable download links on resource listing pages, | 
				
			||||||
 | 
					  # or customize the formats shown per namespace/globally | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # To disable/customize for the :admin namespace: | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  #   config.namespace :admin do |admin| | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  #     # Disable the links entirely | 
				
			||||||
 | 
					  #     admin.download_links = false | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  #     # Only show XML & PDF options | 
				
			||||||
 | 
					  #     admin.download_links = [:xml, :pdf] | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  #     # Enable/disable the links based on block | 
				
			||||||
 | 
					  #     #   (for example, with cancan) | 
				
			||||||
 | 
					  #     admin.download_links = proc { can?(:view_download_links) } | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  #   end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Pagination | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Pagination is enabled by default for all resources. | 
				
			||||||
 | 
					  # You can control the default per page count for all resources here. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # config.default_per_page = 30 | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # You can control the max per page count too. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # config.max_per_page = 10_000 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Filters | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # By default the index screen includes a "Filters" sidebar on the right | 
				
			||||||
 | 
					  # hand side with a filter for each attribute of the registered model. | 
				
			||||||
 | 
					  # You can enable or disable them for all resources here. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # config.filters = true | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # By default the filters include associations in a select, which means | 
				
			||||||
 | 
					  # that every record will be loaded for each association (up | 
				
			||||||
 | 
					  # to the value of config.maximum_association_filter_arity). | 
				
			||||||
 | 
					  # You can enabled or disable the inclusion | 
				
			||||||
 | 
					  # of those filters by default here. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # config.include_default_association_filters = true | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # config.maximum_association_filter_arity = 256 # default value of :unlimited will change to 256 in a future version | 
				
			||||||
 | 
					  # config.filter_columns_for_large_association = [ | 
				
			||||||
 | 
					  #    :display_name, | 
				
			||||||
 | 
					  #    :full_name, | 
				
			||||||
 | 
					  #    :name, | 
				
			||||||
 | 
					  #    :username, | 
				
			||||||
 | 
					  #    :login, | 
				
			||||||
 | 
					  #    :title, | 
				
			||||||
 | 
					  #    :email, | 
				
			||||||
 | 
					  #  ] | 
				
			||||||
 | 
					  # config.filter_method_for_large_association = '_starts_with' | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Head | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # You can add your own content to the site head like analytics. Make sure | 
				
			||||||
 | 
					  # you only pass content you trust. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # config.head = ''.html_safe | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Footer | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # By default, the footer shows the current Active Admin version. You can | 
				
			||||||
 | 
					  # override the content of the footer here. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # config.footer = 'my custom footer text' | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Sorting | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # By default ActiveAdmin::OrderClause is used for sorting logic | 
				
			||||||
 | 
					  # You can inherit it with own class and inject it for all resources | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # config.order_clause = MyOrderClause | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # == Webpacker | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # By default, Active Admin uses Sprocket's asset pipeline. | 
				
			||||||
 | 
					  # You can switch to using Webpacker here. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  config.use_webpacker = true | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,311 @@ | 
				
			|||||||
 | 
					# frozen_string_literal: true | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Assuming you have not yet modified this file, each configuration option below | 
				
			||||||
 | 
					# is set to its default value. Note that some are commented out while others | 
				
			||||||
 | 
					# are not: uncommented lines are intended to protect your configuration from | 
				
			||||||
 | 
					# breaking changes in upgrades (i.e., in the event that future versions of | 
				
			||||||
 | 
					# Devise change the default values for those options). | 
				
			||||||
 | 
					# | 
				
			||||||
 | 
					# Use this hook to configure devise mailer, warden hooks and so forth. | 
				
			||||||
 | 
					# Many of these configuration options can be set straight in your model. | 
				
			||||||
 | 
					Devise.setup do |config| | 
				
			||||||
 | 
					  # The secret key used by Devise. Devise uses this key to generate | 
				
			||||||
 | 
					  # random tokens. Changing this key will render invalid all existing | 
				
			||||||
 | 
					  # confirmation, reset password and unlock tokens in the database. | 
				
			||||||
 | 
					  # Devise will use the `secret_key_base` as its `secret_key` | 
				
			||||||
 | 
					  # by default. You can change it below and use your own secret key. | 
				
			||||||
 | 
					  # config.secret_key = '38963532d88a2af58fe764dd1a449a771838bc61222c4654eb1737f05e488a557444859da1cca93c2307554b43b4991d65ff46a3f50234eb36fdf1d62a95b804' | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # ==> Controller configuration | 
				
			||||||
 | 
					  # Configure the parent class to the devise controllers. | 
				
			||||||
 | 
					  # config.parent_controller = 'DeviseController' | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # ==> Mailer Configuration | 
				
			||||||
 | 
					  # Configure the e-mail address which will be shown in Devise::Mailer, | 
				
			||||||
 | 
					  # note that it will be overwritten if you use your own mailer class | 
				
			||||||
 | 
					  # with default "from" parameter. | 
				
			||||||
 | 
					  config.mailer_sender = 'please-change-me-at-config-initializers-devise@example.com' | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Configure the class responsible to send e-mails. | 
				
			||||||
 | 
					  # config.mailer = 'Devise::Mailer' | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Configure the parent class responsible to send e-mails. | 
				
			||||||
 | 
					  # config.parent_mailer = 'ActionMailer::Base' | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # ==> ORM configuration | 
				
			||||||
 | 
					  # Load and configure the ORM. Supports :active_record (default) and | 
				
			||||||
 | 
					  # :mongoid (bson_ext recommended) by default. Other ORMs may be | 
				
			||||||
 | 
					  # available as additional gems. | 
				
			||||||
 | 
					  require 'devise/orm/active_record' | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # ==> Configuration for any authentication mechanism | 
				
			||||||
 | 
					  # Configure which keys are used when authenticating a user. The default is | 
				
			||||||
 | 
					  # just :email. You can configure it to use [:username, :subdomain], so for | 
				
			||||||
 | 
					  # authenticating a user, both parameters are required. Remember that those | 
				
			||||||
 | 
					  # parameters are used only when authenticating and not when retrieving from | 
				
			||||||
 | 
					  # session. If you need permissions, you should implement that in a before filter. | 
				
			||||||
 | 
					  # You can also supply a hash where the value is a boolean determining whether | 
				
			||||||
 | 
					  # or not authentication should be aborted when the value is not present. | 
				
			||||||
 | 
					  # config.authentication_keys = [:email] | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Configure parameters from the request object used for authentication. Each entry | 
				
			||||||
 | 
					  # given should be a request method and it will automatically be passed to the | 
				
			||||||
 | 
					  # find_for_authentication method and considered in your model lookup. For instance, | 
				
			||||||
 | 
					  # if you set :request_keys to [:subdomain], :subdomain will be used on authentication. | 
				
			||||||
 | 
					  # The same considerations mentioned for authentication_keys also apply to request_keys. | 
				
			||||||
 | 
					  # config.request_keys = [] | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Configure which authentication keys should be case-insensitive. | 
				
			||||||
 | 
					  # These keys will be downcased upon creating or modifying a user and when used | 
				
			||||||
 | 
					  # to authenticate or find a user. Default is :email. | 
				
			||||||
 | 
					  config.case_insensitive_keys = [:email] | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Configure which authentication keys should have whitespace stripped. | 
				
			||||||
 | 
					  # These keys will have whitespace before and after removed upon creating or | 
				
			||||||
 | 
					  # modifying a user and when used to authenticate or find a user. Default is :email. | 
				
			||||||
 | 
					  config.strip_whitespace_keys = [:email] | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Tell if authentication through request.params is enabled. True by default. | 
				
			||||||
 | 
					  # It can be set to an array that will enable params authentication only for the | 
				
			||||||
 | 
					  # given strategies, for example, `config.params_authenticatable = [:database]` will | 
				
			||||||
 | 
					  # enable it only for database (email + password) authentication. | 
				
			||||||
 | 
					  # config.params_authenticatable = true | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Tell if authentication through HTTP Auth is enabled. False by default. | 
				
			||||||
 | 
					  # It can be set to an array that will enable http authentication only for the | 
				
			||||||
 | 
					  # given strategies, for example, `config.http_authenticatable = [:database]` will | 
				
			||||||
 | 
					  # enable it only for database authentication. | 
				
			||||||
 | 
					  # For API-only applications to support authentication "out-of-the-box", you will likely want to | 
				
			||||||
 | 
					  # enable this with :database unless you are using a custom strategy. | 
				
			||||||
 | 
					  # The supported strategies are: | 
				
			||||||
 | 
					  # :database      = Support basic authentication with authentication key + password | 
				
			||||||
 | 
					  # config.http_authenticatable = false | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # If 401 status code should be returned for AJAX requests. True by default. | 
				
			||||||
 | 
					  # config.http_authenticatable_on_xhr = true | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # The realm used in Http Basic Authentication. 'Application' by default. | 
				
			||||||
 | 
					  # config.http_authentication_realm = 'Application' | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # It will change confirmation, password recovery and other workflows | 
				
			||||||
 | 
					  # to behave the same regardless if the e-mail provided was right or wrong. | 
				
			||||||
 | 
					  # Does not affect registerable. | 
				
			||||||
 | 
					  # config.paranoid = true | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # By default Devise will store the user in session. You can skip storage for | 
				
			||||||
 | 
					  # particular strategies by setting this option. | 
				
			||||||
 | 
					  # Notice that if you are skipping storage for all authentication paths, you | 
				
			||||||
 | 
					  # may want to disable generating routes to Devise's sessions controller by | 
				
			||||||
 | 
					  # passing skip: :sessions to `devise_for` in your config/routes.rb | 
				
			||||||
 | 
					  config.skip_session_storage = [:http_auth] | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # By default, Devise cleans up the CSRF token on authentication to | 
				
			||||||
 | 
					  # avoid CSRF token fixation attacks. This means that, when using AJAX | 
				
			||||||
 | 
					  # requests for sign in and sign up, you need to get a new CSRF token | 
				
			||||||
 | 
					  # from the server. You can disable this option at your own risk. | 
				
			||||||
 | 
					  # config.clean_up_csrf_token_on_authentication = true | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # When false, Devise will not attempt to reload routes on eager load. | 
				
			||||||
 | 
					  # This can reduce the time taken to boot the app but if your application | 
				
			||||||
 | 
					  # requires the Devise mappings to be loaded during boot time the application | 
				
			||||||
 | 
					  # won't boot properly. | 
				
			||||||
 | 
					  # config.reload_routes = true | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # ==> Configuration for :database_authenticatable | 
				
			||||||
 | 
					  # For bcrypt, this is the cost for hashing the password and defaults to 12. If | 
				
			||||||
 | 
					  # using other algorithms, it sets how many times you want the password to be hashed. | 
				
			||||||
 | 
					  # The number of stretches used for generating the hashed password are stored | 
				
			||||||
 | 
					  # with the hashed password. This allows you to change the stretches without | 
				
			||||||
 | 
					  # invalidating existing passwords. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Limiting the stretches to just one in testing will increase the performance of | 
				
			||||||
 | 
					  # your test suite dramatically. However, it is STRONGLY RECOMMENDED to not use | 
				
			||||||
 | 
					  # a value less than 10 in other environments. Note that, for bcrypt (the default | 
				
			||||||
 | 
					  # algorithm), the cost increases exponentially with the number of stretches (e.g. | 
				
			||||||
 | 
					  # a value of 20 is already extremely slow: approx. 60 seconds for 1 calculation). | 
				
			||||||
 | 
					  config.stretches = Rails.env.test? ? 1 : 12 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Set up a pepper to generate the hashed password. | 
				
			||||||
 | 
					  # config.pepper = 'ea8d0964a2efaf3e37e444d5539399c3177246e228f173296767636ec2dc12a7f8ee7c5f291c2ff5886495b424d7c70216ccb8caf58162b1a284c51bf1705368' | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Send a notification to the original email when the user's email is changed. | 
				
			||||||
 | 
					  # config.send_email_changed_notification = false | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Send a notification email when the user's password is changed. | 
				
			||||||
 | 
					  # config.send_password_change_notification = false | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # ==> Configuration for :confirmable | 
				
			||||||
 | 
					  # A period that the user is allowed to access the website even without | 
				
			||||||
 | 
					  # confirming their account. For instance, if set to 2.days, the user will be | 
				
			||||||
 | 
					  # able to access the website for two days without confirming their account, | 
				
			||||||
 | 
					  # access will be blocked just in the third day. | 
				
			||||||
 | 
					  # You can also set it to nil, which will allow the user to access the website | 
				
			||||||
 | 
					  # without confirming their account. | 
				
			||||||
 | 
					  # Default is 0.days, meaning the user cannot access the website without | 
				
			||||||
 | 
					  # confirming their account. | 
				
			||||||
 | 
					  # config.allow_unconfirmed_access_for = 2.days | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # A period that the user is allowed to confirm their account before their | 
				
			||||||
 | 
					  # token becomes invalid. For example, if set to 3.days, the user can confirm | 
				
			||||||
 | 
					  # their account within 3 days after the mail was sent, but on the fourth day | 
				
			||||||
 | 
					  # their account can't be confirmed with the token any more. | 
				
			||||||
 | 
					  # Default is nil, meaning there is no restriction on how long a user can take | 
				
			||||||
 | 
					  # before confirming their account. | 
				
			||||||
 | 
					  # config.confirm_within = 3.days | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # If true, requires any email changes to be confirmed (exactly the same way as | 
				
			||||||
 | 
					  # initial account confirmation) to be applied. Requires additional unconfirmed_email | 
				
			||||||
 | 
					  # db field (see migrations). Until confirmed, new email is stored in | 
				
			||||||
 | 
					  # unconfirmed_email column, and copied to email column on successful confirmation. | 
				
			||||||
 | 
					  config.reconfirmable = true | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Defines which key will be used when confirming an account | 
				
			||||||
 | 
					  # config.confirmation_keys = [:email] | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # ==> Configuration for :rememberable | 
				
			||||||
 | 
					  # The time the user will be remembered without asking for credentials again. | 
				
			||||||
 | 
					  # config.remember_for = 2.weeks | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Invalidates all the remember me tokens when the user signs out. | 
				
			||||||
 | 
					  config.expire_all_remember_me_on_sign_out = true | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # If true, extends the user's remember period when remembered via cookie. | 
				
			||||||
 | 
					  # config.extend_remember_period = false | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Options to be passed to the created cookie. For instance, you can set | 
				
			||||||
 | 
					  # secure: true in order to force SSL only cookies. | 
				
			||||||
 | 
					  # config.rememberable_options = {} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # ==> Configuration for :validatable | 
				
			||||||
 | 
					  # Range for password length. | 
				
			||||||
 | 
					  config.password_length = 6..128 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Email regex used to validate email formats. It simply asserts that | 
				
			||||||
 | 
					  # one (and only one) @ exists in the given string. This is mainly | 
				
			||||||
 | 
					  # to give user feedback and not to assert the e-mail validity. | 
				
			||||||
 | 
					  config.email_regexp = /\A[^@\s]+@[^@\s]+\z/ | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # ==> Configuration for :timeoutable | 
				
			||||||
 | 
					  # The time you want to timeout the user session without activity. After this | 
				
			||||||
 | 
					  # time the user will be asked for credentials again. Default is 30 minutes. | 
				
			||||||
 | 
					  # config.timeout_in = 30.minutes | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # ==> Configuration for :lockable | 
				
			||||||
 | 
					  # Defines which strategy will be used to lock an account. | 
				
			||||||
 | 
					  # :failed_attempts = Locks an account after a number of failed attempts to sign in. | 
				
			||||||
 | 
					  # :none            = No lock strategy. You should handle locking by yourself. | 
				
			||||||
 | 
					  # config.lock_strategy = :failed_attempts | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Defines which key will be used when locking and unlocking an account | 
				
			||||||
 | 
					  # config.unlock_keys = [:email] | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Defines which strategy will be used to unlock an account. | 
				
			||||||
 | 
					  # :email = Sends an unlock link to the user email | 
				
			||||||
 | 
					  # :time  = Re-enables login after a certain amount of time (see :unlock_in below) | 
				
			||||||
 | 
					  # :both  = Enables both strategies | 
				
			||||||
 | 
					  # :none  = No unlock strategy. You should handle unlocking by yourself. | 
				
			||||||
 | 
					  # config.unlock_strategy = :both | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Number of authentication tries before locking an account if lock_strategy | 
				
			||||||
 | 
					  # is failed attempts. | 
				
			||||||
 | 
					  # config.maximum_attempts = 20 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Time interval to unlock the account if :time is enabled as unlock_strategy. | 
				
			||||||
 | 
					  # config.unlock_in = 1.hour | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Warn on the last attempt before the account is locked. | 
				
			||||||
 | 
					  # config.last_attempt_warning = true | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # ==> Configuration for :recoverable | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Defines which key will be used when recovering the password for an account | 
				
			||||||
 | 
					  # config.reset_password_keys = [:email] | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Time interval you can reset your password with a reset password key. | 
				
			||||||
 | 
					  # Don't put a too small interval or your users won't have the time to | 
				
			||||||
 | 
					  # change their passwords. | 
				
			||||||
 | 
					  config.reset_password_within = 6.hours | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # When set to false, does not sign a user in automatically after their password is | 
				
			||||||
 | 
					  # reset. Defaults to true, so a user is signed in automatically after a reset. | 
				
			||||||
 | 
					  # config.sign_in_after_reset_password = true | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # ==> Configuration for :encryptable | 
				
			||||||
 | 
					  # Allow you to use another hashing or encryption algorithm besides bcrypt (default). | 
				
			||||||
 | 
					  # You can use :sha1, :sha512 or algorithms from others authentication tools as | 
				
			||||||
 | 
					  # :clearance_sha1, :authlogic_sha512 (then you should set stretches above to 20 | 
				
			||||||
 | 
					  # for default behavior) and :restful_authentication_sha1 (then you should set | 
				
			||||||
 | 
					  # stretches to 10, and copy REST_AUTH_SITE_KEY to pepper). | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # Require the `devise-encryptable` gem when using anything other than bcrypt | 
				
			||||||
 | 
					  # config.encryptor = :sha512 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # ==> Scopes configuration | 
				
			||||||
 | 
					  # Turn scoped views on. Before rendering "sessions/new", it will first check for | 
				
			||||||
 | 
					  # "users/sessions/new". It's turned off by default because it's slower if you | 
				
			||||||
 | 
					  # are using only default views. | 
				
			||||||
 | 
					  # config.scoped_views = false | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Configure the default scope given to Warden. By default it's the first | 
				
			||||||
 | 
					  # devise role declared in your routes (usually :user). | 
				
			||||||
 | 
					  # config.default_scope = :user | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # Set this configuration to false if you want /users/sign_out to sign out | 
				
			||||||
 | 
					  # only the current scope. By default, Devise signs out all scopes. | 
				
			||||||
 | 
					  # config.sign_out_all_scopes = true | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # ==> Navigation configuration | 
				
			||||||
 | 
					  # Lists the formats that should be treated as navigational. Formats like | 
				
			||||||
 | 
					  # :html, should redirect to the sign in page when the user does not have | 
				
			||||||
 | 
					  # access, but formats like :xml or :json, should return 401. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # If you have any extra navigational formats, like :iphone or :mobile, you | 
				
			||||||
 | 
					  # should add them to the navigational formats lists. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # The "*/*" below is required to match Internet Explorer requests. | 
				
			||||||
 | 
					  # config.navigational_formats = ['*/*', :html] | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # The default HTTP method used to sign out a resource. Default is :delete. | 
				
			||||||
 | 
					  config.sign_out_via = :delete | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # ==> OmniAuth | 
				
			||||||
 | 
					  # Add a new OmniAuth provider. Check the wiki for more information on setting | 
				
			||||||
 | 
					  # up on your models and hooks. | 
				
			||||||
 | 
					  # config.omniauth :github, 'APP_ID', 'APP_SECRET', scope: 'user,public_repo' | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # ==> Warden configuration | 
				
			||||||
 | 
					  # If you want to use other strategies, that are not supported by Devise, or | 
				
			||||||
 | 
					  # change the failure app, you can configure them inside the config.warden block. | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # config.warden do |manager| | 
				
			||||||
 | 
					  #   manager.intercept_401 = false | 
				
			||||||
 | 
					  #   manager.default_strategies(scope: :user).unshift :some_external_strategy | 
				
			||||||
 | 
					  # end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # ==> Mountable engine configurations | 
				
			||||||
 | 
					  # When using Devise inside an engine, let's call it `MyEngine`, and this engine | 
				
			||||||
 | 
					  # is mountable, there are some extra configurations to be taken into account. | 
				
			||||||
 | 
					  # The following options are available, assuming the engine is mounted as: | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  #     mount MyEngine, at: '/my_engine' | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # The router that invoked `devise_for`, in the example above, would be: | 
				
			||||||
 | 
					  # config.router_name = :my_engine | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # When using OmniAuth, Devise cannot automatically set OmniAuth path, | 
				
			||||||
 | 
					  # so you need to do it manually. For the users scope, it would be: | 
				
			||||||
 | 
					  # config.omniauth_path_prefix = '/my_engine/users/auth' | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # ==> Turbolinks configuration | 
				
			||||||
 | 
					  # If your app is using Turbolinks, Turbolinks::Controller needs to be included to make redirection work correctly: | 
				
			||||||
 | 
					  # | 
				
			||||||
 | 
					  # ActiveSupport.on_load(:devise_failure_app) do | 
				
			||||||
 | 
					  #   include Turbolinks::Controller | 
				
			||||||
 | 
					  # end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # ==> Configuration for :registerable | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # When set to false, does not sign a user in automatically after their password is | 
				
			||||||
 | 
					  # changed. Defaults to true, so a user is signed in automatically after changing a password. | 
				
			||||||
 | 
					  # config.sign_in_after_change_password = true | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,65 @@ | 
				
			|||||||
 | 
					# Additional translations at https://github.com/heartcombo/devise/wiki/I18n | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					en: | 
				
			||||||
 | 
					  devise: | 
				
			||||||
 | 
					    confirmations: | 
				
			||||||
 | 
					      confirmed: "Your email address has been successfully confirmed." | 
				
			||||||
 | 
					      send_instructions: "You will receive an email with instructions for how to confirm your email address in a few minutes." | 
				
			||||||
 | 
					      send_paranoid_instructions: "If your email address exists in our database, you will receive an email with instructions for how to confirm your email address in a few minutes." | 
				
			||||||
 | 
					    failure: | 
				
			||||||
 | 
					      already_authenticated: "You are already signed in." | 
				
			||||||
 | 
					      inactive: "Your account is not activated yet." | 
				
			||||||
 | 
					      invalid: "Invalid %{authentication_keys} or password." | 
				
			||||||
 | 
					      locked: "Your account is locked." | 
				
			||||||
 | 
					      last_attempt: "You have one more attempt before your account is locked." | 
				
			||||||
 | 
					      not_found_in_database: "Invalid %{authentication_keys} or password." | 
				
			||||||
 | 
					      timeout: "Your session expired. Please sign in again to continue." | 
				
			||||||
 | 
					      unauthenticated: "You need to sign in or sign up before continuing." | 
				
			||||||
 | 
					      unconfirmed: "You have to confirm your email address before continuing." | 
				
			||||||
 | 
					    mailer: | 
				
			||||||
 | 
					      confirmation_instructions: | 
				
			||||||
 | 
					        subject: "Confirmation instructions" | 
				
			||||||
 | 
					      reset_password_instructions: | 
				
			||||||
 | 
					        subject: "Reset password instructions" | 
				
			||||||
 | 
					      unlock_instructions: | 
				
			||||||
 | 
					        subject: "Unlock instructions" | 
				
			||||||
 | 
					      email_changed: | 
				
			||||||
 | 
					        subject: "Email Changed" | 
				
			||||||
 | 
					      password_change: | 
				
			||||||
 | 
					        subject: "Password Changed" | 
				
			||||||
 | 
					    omniauth_callbacks: | 
				
			||||||
 | 
					      failure: "Could not authenticate you from %{kind} because \"%{reason}\"." | 
				
			||||||
 | 
					      success: "Successfully authenticated from %{kind} account." | 
				
			||||||
 | 
					    passwords: | 
				
			||||||
 | 
					      no_token: "You can't access this page without coming from a password reset email. If you do come from a password reset email, please make sure you used the full URL provided." | 
				
			||||||
 | 
					      send_instructions: "You will receive an email with instructions on how to reset your password in a few minutes." | 
				
			||||||
 | 
					      send_paranoid_instructions: "If your email address exists in our database, you will receive a password recovery link at your email address in a few minutes." | 
				
			||||||
 | 
					      updated: "Your password has been changed successfully. You are now signed in." | 
				
			||||||
 | 
					      updated_not_active: "Your password has been changed successfully." | 
				
			||||||
 | 
					    registrations: | 
				
			||||||
 | 
					      destroyed: "Bye! Your account has been successfully cancelled. We hope to see you again soon." | 
				
			||||||
 | 
					      signed_up: "Welcome! You have signed up successfully." | 
				
			||||||
 | 
					      signed_up_but_inactive: "You have signed up successfully. However, we could not sign you in because your account is not yet activated." | 
				
			||||||
 | 
					      signed_up_but_locked: "You have signed up successfully. However, we could not sign you in because your account is locked." | 
				
			||||||
 | 
					      signed_up_but_unconfirmed: "A message with a confirmation link has been sent to your email address. Please follow the link to activate your account." | 
				
			||||||
 | 
					      update_needs_confirmation: "You updated your account successfully, but we need to verify your new email address. Please check your email and follow the confirmation link to confirm your new email address." | 
				
			||||||
 | 
					      updated: "Your account has been updated successfully." | 
				
			||||||
 | 
					      updated_but_not_signed_in: "Your account has been updated successfully, but since your password was changed, you need to sign in again." | 
				
			||||||
 | 
					    sessions: | 
				
			||||||
 | 
					      signed_in: "Signed in successfully." | 
				
			||||||
 | 
					      signed_out: "Signed out successfully." | 
				
			||||||
 | 
					      already_signed_out: "Signed out successfully." | 
				
			||||||
 | 
					    unlocks: | 
				
			||||||
 | 
					      send_instructions: "You will receive an email with instructions for how to unlock your account in a few minutes." | 
				
			||||||
 | 
					      send_paranoid_instructions: "If your account exists, you will receive an email with instructions for how to unlock it in a few minutes." | 
				
			||||||
 | 
					      unlocked: "Your account has been unlocked successfully. Please sign in to continue." | 
				
			||||||
 | 
					  errors: | 
				
			||||||
 | 
					    messages: | 
				
			||||||
 | 
					      already_confirmed: "was already confirmed, please try signing in" | 
				
			||||||
 | 
					      confirmation_period_expired: "needs to be confirmed within %{period}, please request a new one" | 
				
			||||||
 | 
					      expired: "has expired, please request a new one" | 
				
			||||||
 | 
					      not_found: "not found" | 
				
			||||||
 | 
					      not_locked: "was not locked" | 
				
			||||||
 | 
					      not_saved: | 
				
			||||||
 | 
					        one: "1 error prohibited this %{resource} from being saved:" | 
				
			||||||
 | 
					        other: "%{count} errors prohibited this %{resource} from being saved:" | 
				
			||||||
@ -1,3 +1,5 @@ | 
				
			|||||||
const { environment } = require('@rails/webpacker') | 
					const { environment } = require('@rails/webpacker') | 
				
			||||||
 | 
					const jquery = require('./plugins/jquery') | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					environment.plugins.prepend('jquery', jquery) | 
				
			||||||
module.exports = environment | 
					module.exports = environment | 
				
			||||||
 | 
				
			|||||||
@ -0,0 +1,7 @@ | 
				
			|||||||
 | 
					const webpack = require('webpack') | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					module.exports = new webpack.ProvidePlugin({ | 
				
			||||||
 | 
					  "$":"jquery", | 
				
			||||||
 | 
					  "jQuery":"jquery", | 
				
			||||||
 | 
					  "window.jQuery":"jquery" | 
				
			||||||
 | 
					}); | 
				
			||||||
@ -0,0 +1,12 @@ | 
				
			|||||||
 | 
					class CreateIncomeRanges < ActiveRecord::Migration[6.1] | 
				
			||||||
 | 
					  def change | 
				
			||||||
 | 
					    create_table :income_ranges do |t| | 
				
			||||||
 | 
					      t.string :economic_status | 
				
			||||||
 | 
					      t.integer :soft_min | 
				
			||||||
 | 
					      t.integer :soft_max | 
				
			||||||
 | 
					      t.integer :hard_min | 
				
			||||||
 | 
					      t.integer :hard_max | 
				
			||||||
 | 
					      t.timestamps | 
				
			||||||
 | 
					    end | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,44 @@ | 
				
			|||||||
 | 
					# frozen_string_literal: true | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class DeviseCreateAdminUsers < ActiveRecord::Migration[6.1] | 
				
			||||||
 | 
					  def change | 
				
			||||||
 | 
					    create_table :admin_users do |t| | 
				
			||||||
 | 
					      ## Database authenticatable | 
				
			||||||
 | 
					      t.string :email,              null: false, default: "" | 
				
			||||||
 | 
					      t.string :encrypted_password, null: false, default: "" | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      ## Recoverable | 
				
			||||||
 | 
					      t.string   :reset_password_token | 
				
			||||||
 | 
					      t.datetime :reset_password_sent_at | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      ## Rememberable | 
				
			||||||
 | 
					      t.datetime :remember_created_at | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      ## Trackable | 
				
			||||||
 | 
					      # t.integer  :sign_in_count, default: 0, null: false | 
				
			||||||
 | 
					      # t.datetime :current_sign_in_at | 
				
			||||||
 | 
					      # t.datetime :last_sign_in_at | 
				
			||||||
 | 
					      # t.string   :current_sign_in_ip | 
				
			||||||
 | 
					      # t.string   :last_sign_in_ip | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      ## Confirmable | 
				
			||||||
 | 
					      # t.string   :confirmation_token | 
				
			||||||
 | 
					      # t.datetime :confirmed_at | 
				
			||||||
 | 
					      # t.datetime :confirmation_sent_at | 
				
			||||||
 | 
					      # t.string   :unconfirmed_email # Only if using reconfirmable | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      ## Lockable | 
				
			||||||
 | 
					      # t.integer  :failed_attempts, default: 0, null: false # Only if lock strategy is :failed_attempts | 
				
			||||||
 | 
					      # t.string   :unlock_token # Only if unlock strategy is :email or :both | 
				
			||||||
 | 
					      # t.datetime :locked_at | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      t.timestamps null: false | 
				
			||||||
 | 
					    end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    add_index :admin_users, :email,                unique: true | 
				
			||||||
 | 
					    add_index :admin_users, :reset_password_token, unique: true | 
				
			||||||
 | 
					    # add_index :admin_users, :confirmation_token,   unique: true | 
				
			||||||
 | 
					    # add_index :admin_users, :unlock_token,         unique: true | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
@ -0,0 +1,16 @@ | 
				
			|||||||
 | 
					class CreateActiveAdminComments < ActiveRecord::Migration[6.1] | 
				
			||||||
 | 
					  def self.up | 
				
			||||||
 | 
					    create_table :active_admin_comments do |t| | 
				
			||||||
 | 
					      t.string :namespace | 
				
			||||||
 | 
					      t.text   :body | 
				
			||||||
 | 
					      t.references :resource, polymorphic: true | 
				
			||||||
 | 
					      t.references :author, polymorphic: true | 
				
			||||||
 | 
					      t.timestamps | 
				
			||||||
 | 
					    end | 
				
			||||||
 | 
					    add_index :active_admin_comments, [:namespace] | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  def self.down | 
				
			||||||
 | 
					    drop_table :active_admin_comments | 
				
			||||||
 | 
					  end | 
				
			||||||
 | 
					end | 
				
			||||||
					Loading…
					
					
				
		Reference in new issue