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