8 changed files with 373 additions and 2 deletions
@ -0,0 +1,46 @@ |
|||||
|
module Admin |
||||
|
class MileageRatesController < Admin::ApplicationController |
||||
|
# Overwrite any of the RESTful controller actions to implement custom behavior |
||||
|
# For example, you may want to send an email after a foo is updated. |
||||
|
# |
||||
|
# def update |
||||
|
# super |
||||
|
# send_foo_updated_email(requested_resource) |
||||
|
# end |
||||
|
|
||||
|
# Override this method to specify custom lookup behavior. |
||||
|
# This will be used to set the resource for the `show`, `edit`, and `update` |
||||
|
# actions. |
||||
|
# |
||||
|
# def find_resource(param) |
||||
|
# Foo.find_by!(slug: param) |
||||
|
# end |
||||
|
|
||||
|
# The result of this lookup will be available as `requested_resource` |
||||
|
|
||||
|
# Override this if you have certain roles that require a subset |
||||
|
# this will be used to set the records shown on the `index` action. |
||||
|
# |
||||
|
# def scoped_resource |
||||
|
# if current_user.super_admin? |
||||
|
# resource_class |
||||
|
# else |
||||
|
# resource_class.with_less_stuff |
||||
|
# end |
||||
|
# end |
||||
|
|
||||
|
# Override `resource_params` if you want to transform the submitted |
||||
|
# data before it's persisted. For example, the following would turn all |
||||
|
# empty values into nil values. It uses other APIs such as `resource_class` |
||||
|
# and `dashboard`: |
||||
|
# |
||||
|
# def resource_params |
||||
|
# params.require(resource_class.model_name.param_key). |
||||
|
# permit(dashboard.permitted_attributes(action_name)). |
||||
|
# transform_values { |value| value == "" ? nil : value } |
||||
|
# end |
||||
|
|
||||
|
# See https://administrate-demo.herokuapp.com/customizing_controller_actions |
||||
|
# for more information |
||||
|
end |
||||
|
end |
||||
@ -0,0 +1,46 @@ |
|||||
|
module Admin |
||||
|
class TrainingWatchHitsController < Admin::ApplicationController |
||||
|
# Overwrite any of the RESTful controller actions to implement custom behavior |
||||
|
# For example, you may want to send an email after a foo is updated. |
||||
|
# |
||||
|
# def update |
||||
|
# super |
||||
|
# send_foo_updated_email(requested_resource) |
||||
|
# end |
||||
|
|
||||
|
# Override this method to specify custom lookup behavior. |
||||
|
# This will be used to set the resource for the `show`, `edit`, and `update` |
||||
|
# actions. |
||||
|
# |
||||
|
# def find_resource(param) |
||||
|
# Foo.find_by!(slug: param) |
||||
|
# end |
||||
|
|
||||
|
# The result of this lookup will be available as `requested_resource` |
||||
|
|
||||
|
# Override this if you have certain roles that require a subset |
||||
|
# this will be used to set the records shown on the `index` action. |
||||
|
# |
||||
|
# def scoped_resource |
||||
|
# if current_user.super_admin? |
||||
|
# resource_class |
||||
|
# else |
||||
|
# resource_class.with_less_stuff |
||||
|
# end |
||||
|
# end |
||||
|
|
||||
|
# Override `resource_params` if you want to transform the submitted |
||||
|
# data before it's persisted. For example, the following would turn all |
||||
|
# empty values into nil values. It uses other APIs such as `resource_class` |
||||
|
# and `dashboard`: |
||||
|
# |
||||
|
# def resource_params |
||||
|
# params.require(resource_class.model_name.param_key). |
||||
|
# permit(dashboard.permitted_attributes(action_name)). |
||||
|
# transform_values { |value| value == "" ? nil : value } |
||||
|
# end |
||||
|
|
||||
|
# See https://administrate-demo.herokuapp.com/customizing_controller_actions |
||||
|
# for more information |
||||
|
end |
||||
|
end |
||||
@ -0,0 +1,46 @@ |
|||||
|
module Admin |
||||
|
class TrainingWatchSourcesController < Admin::ApplicationController |
||||
|
# Overwrite any of the RESTful controller actions to implement custom behavior |
||||
|
# For example, you may want to send an email after a foo is updated. |
||||
|
# |
||||
|
# def update |
||||
|
# super |
||||
|
# send_foo_updated_email(requested_resource) |
||||
|
# end |
||||
|
|
||||
|
# Override this method to specify custom lookup behavior. |
||||
|
# This will be used to set the resource for the `show`, `edit`, and `update` |
||||
|
# actions. |
||||
|
# |
||||
|
# def find_resource(param) |
||||
|
# Foo.find_by!(slug: param) |
||||
|
# end |
||||
|
|
||||
|
# The result of this lookup will be available as `requested_resource` |
||||
|
|
||||
|
# Override this if you have certain roles that require a subset |
||||
|
# this will be used to set the records shown on the `index` action. |
||||
|
# |
||||
|
# def scoped_resource |
||||
|
# if current_user.super_admin? |
||||
|
# resource_class |
||||
|
# else |
||||
|
# resource_class.with_less_stuff |
||||
|
# end |
||||
|
# end |
||||
|
|
||||
|
# Override `resource_params` if you want to transform the submitted |
||||
|
# data before it's persisted. For example, the following would turn all |
||||
|
# empty values into nil values. It uses other APIs such as `resource_class` |
||||
|
# and `dashboard`: |
||||
|
# |
||||
|
# def resource_params |
||||
|
# params.require(resource_class.model_name.param_key). |
||||
|
# permit(dashboard.permitted_attributes(action_name)). |
||||
|
# transform_values { |value| value == "" ? nil : value } |
||||
|
# end |
||||
|
|
||||
|
# See https://administrate-demo.herokuapp.com/customizing_controller_actions |
||||
|
# for more information |
||||
|
end |
||||
|
end |
||||
@ -0,0 +1,66 @@ |
|||||
|
require "administrate/base_dashboard" |
||||
|
|
||||
|
class MileageRateDashboard < Administrate::BaseDashboard |
||||
|
# ATTRIBUTE_TYPES |
||||
|
# a hash that describes the type of each of the model's fields. |
||||
|
# |
||||
|
# Each different type represents an Administrate::Field object, |
||||
|
# which determines how the attribute is displayed |
||||
|
# on pages throughout the dashboard. |
||||
|
ATTRIBUTE_TYPES = { |
||||
|
id: Field::Number, |
||||
|
rate_per_km: Field::String.with_options(searchable: false), |
||||
|
year: Field::Number, |
||||
|
created_at: Field::DateTime, |
||||
|
updated_at: Field::DateTime, |
||||
|
}.freeze |
||||
|
|
||||
|
# COLLECTION_ATTRIBUTES |
||||
|
# an array of attributes that will be displayed on the model's index page. |
||||
|
# |
||||
|
# By default, it's limited to four items to reduce clutter on index pages. |
||||
|
# Feel free to add, remove, or rearrange items. |
||||
|
COLLECTION_ATTRIBUTES = %i[ |
||||
|
id |
||||
|
rate_per_km |
||||
|
year |
||||
|
created_at |
||||
|
].freeze |
||||
|
|
||||
|
# SHOW_PAGE_ATTRIBUTES |
||||
|
# an array of attributes that will be displayed on the model's show page. |
||||
|
SHOW_PAGE_ATTRIBUTES = %i[ |
||||
|
id |
||||
|
rate_per_km |
||||
|
year |
||||
|
created_at |
||||
|
updated_at |
||||
|
].freeze |
||||
|
|
||||
|
# FORM_ATTRIBUTES |
||||
|
# an array of attributes that will be displayed |
||||
|
# on the model's form (`new` and `edit`) pages. |
||||
|
FORM_ATTRIBUTES = %i[ |
||||
|
rate_per_km |
||||
|
year |
||||
|
].freeze |
||||
|
|
||||
|
# COLLECTION_FILTERS |
||||
|
# a hash that defines filters that can be used while searching via the search |
||||
|
# field of the dashboard. |
||||
|
# |
||||
|
# For example to add an option to search for open resources by typing "open:" |
||||
|
# in the search field: |
||||
|
# |
||||
|
# COLLECTION_FILTERS = { |
||||
|
# open: ->(resources) { resources.where(open: true) } |
||||
|
# }.freeze |
||||
|
COLLECTION_FILTERS = {}.freeze |
||||
|
|
||||
|
# Overwrite this method to customize how mileage rates are displayed |
||||
|
# across all pages of the admin dashboard. |
||||
|
# |
||||
|
# def display_resource(mileage_rate) |
||||
|
# "MileageRate ##{mileage_rate.id}" |
||||
|
# end |
||||
|
end |
||||
@ -0,0 +1,78 @@ |
|||||
|
require "administrate/base_dashboard" |
||||
|
|
||||
|
class TrainingWatchHitDashboard < Administrate::BaseDashboard |
||||
|
# ATTRIBUTE_TYPES |
||||
|
# a hash that describes the type of each of the model's fields. |
||||
|
# |
||||
|
# Each different type represents an Administrate::Field object, |
||||
|
# which determines how the attribute is displayed |
||||
|
# on pages throughout the dashboard. |
||||
|
ATTRIBUTE_TYPES = { |
||||
|
id: Field::Number, |
||||
|
fingerprint: Field::String, |
||||
|
hit_url: Field::String, |
||||
|
published_at: Field::DateTime, |
||||
|
snippet: Field::Text, |
||||
|
title: Field::String, |
||||
|
training_watch_source: Field::BelongsTo, |
||||
|
created_at: Field::DateTime, |
||||
|
updated_at: Field::DateTime, |
||||
|
}.freeze |
||||
|
|
||||
|
# COLLECTION_ATTRIBUTES |
||||
|
# an array of attributes that will be displayed on the model's index page. |
||||
|
# |
||||
|
# By default, it's limited to four items to reduce clutter on index pages. |
||||
|
# Feel free to add, remove, or rearrange items. |
||||
|
COLLECTION_ATTRIBUTES = %i[ |
||||
|
id |
||||
|
fingerprint |
||||
|
hit_url |
||||
|
published_at |
||||
|
].freeze |
||||
|
|
||||
|
# SHOW_PAGE_ATTRIBUTES |
||||
|
# an array of attributes that will be displayed on the model's show page. |
||||
|
SHOW_PAGE_ATTRIBUTES = %i[ |
||||
|
id |
||||
|
fingerprint |
||||
|
hit_url |
||||
|
published_at |
||||
|
snippet |
||||
|
title |
||||
|
training_watch_source |
||||
|
created_at |
||||
|
updated_at |
||||
|
].freeze |
||||
|
|
||||
|
# FORM_ATTRIBUTES |
||||
|
# an array of attributes that will be displayed |
||||
|
# on the model's form (`new` and `edit`) pages. |
||||
|
FORM_ATTRIBUTES = %i[ |
||||
|
fingerprint |
||||
|
hit_url |
||||
|
published_at |
||||
|
snippet |
||||
|
title |
||||
|
training_watch_source |
||||
|
].freeze |
||||
|
|
||||
|
# COLLECTION_FILTERS |
||||
|
# a hash that defines filters that can be used while searching via the search |
||||
|
# field of the dashboard. |
||||
|
# |
||||
|
# For example to add an option to search for open resources by typing "open:" |
||||
|
# in the search field: |
||||
|
# |
||||
|
# COLLECTION_FILTERS = { |
||||
|
# open: ->(resources) { resources.where(open: true) } |
||||
|
# }.freeze |
||||
|
COLLECTION_FILTERS = {}.freeze |
||||
|
|
||||
|
# Overwrite this method to customize how training watch hits are displayed |
||||
|
# across all pages of the admin dashboard. |
||||
|
# |
||||
|
# def display_resource(training_watch_hit) |
||||
|
# "TrainingWatchHit ##{training_watch_hit.id}" |
||||
|
# end |
||||
|
end |
||||
@ -0,0 +1,87 @@ |
|||||
|
require "administrate/base_dashboard" |
||||
|
|
||||
|
class TrainingWatchSourceDashboard < Administrate::BaseDashboard |
||||
|
# ATTRIBUTE_TYPES |
||||
|
# a hash that describes the type of each of the model's fields. |
||||
|
# |
||||
|
# Each different type represents an Administrate::Field object, |
||||
|
# which determines how the attribute is displayed |
||||
|
# on pages throughout the dashboard. |
||||
|
ATTRIBUTE_TYPES = { |
||||
|
id: Field::Number, |
||||
|
enabled: Field::Boolean, |
||||
|
kind: Field::String, |
||||
|
last_checked_at: Field::DateTime, |
||||
|
last_etag: Field::String, |
||||
|
last_modified: Field::String, |
||||
|
match_regex: Field::String, |
||||
|
name: Field::String, |
||||
|
training_watch_hits: Field::HasMany, |
||||
|
url: Field::String, |
||||
|
created_at: Field::DateTime, |
||||
|
updated_at: Field::DateTime, |
||||
|
}.freeze |
||||
|
|
||||
|
# COLLECTION_ATTRIBUTES |
||||
|
# an array of attributes that will be displayed on the model's index page. |
||||
|
# |
||||
|
# By default, it's limited to four items to reduce clutter on index pages. |
||||
|
# Feel free to add, remove, or rearrange items. |
||||
|
COLLECTION_ATTRIBUTES = %i[ |
||||
|
id |
||||
|
enabled |
||||
|
kind |
||||
|
last_checked_at |
||||
|
].freeze |
||||
|
|
||||
|
# SHOW_PAGE_ATTRIBUTES |
||||
|
# an array of attributes that will be displayed on the model's show page. |
||||
|
SHOW_PAGE_ATTRIBUTES = %i[ |
||||
|
id |
||||
|
enabled |
||||
|
kind |
||||
|
last_checked_at |
||||
|
last_etag |
||||
|
last_modified |
||||
|
match_regex |
||||
|
name |
||||
|
training_watch_hits |
||||
|
url |
||||
|
created_at |
||||
|
updated_at |
||||
|
].freeze |
||||
|
|
||||
|
# FORM_ATTRIBUTES |
||||
|
# an array of attributes that will be displayed |
||||
|
# on the model's form (`new` and `edit`) pages. |
||||
|
FORM_ATTRIBUTES = %i[ |
||||
|
enabled |
||||
|
kind |
||||
|
last_checked_at |
||||
|
last_etag |
||||
|
last_modified |
||||
|
match_regex |
||||
|
name |
||||
|
training_watch_hits |
||||
|
url |
||||
|
].freeze |
||||
|
|
||||
|
# COLLECTION_FILTERS |
||||
|
# a hash that defines filters that can be used while searching via the search |
||||
|
# field of the dashboard. |
||||
|
# |
||||
|
# For example to add an option to search for open resources by typing "open:" |
||||
|
# in the search field: |
||||
|
# |
||||
|
# COLLECTION_FILTERS = { |
||||
|
# open: ->(resources) { resources.where(open: true) } |
||||
|
# }.freeze |
||||
|
COLLECTION_FILTERS = {}.freeze |
||||
|
|
||||
|
# Overwrite this method to customize how training watch sources are displayed |
||||
|
# across all pages of the admin dashboard. |
||||
|
# |
||||
|
# def display_resource(training_watch_source) |
||||
|
# "TrainingWatchSource ##{training_watch_source.id}" |
||||
|
# end |
||||
|
end |
||||
Loading…
Reference in new issue