clarion/app/helpers/application_helper.rb

89 lines
2.3 KiB
Ruby
Raw Permalink Normal View History

2014-07-28 12:34:18 +03:00
module ApplicationHelper
2015-08-15 04:33:02 +03:00
def locale_collection
I18n.available_locales.map do |locale|
[t("locales.#{locale}"), locale]
end
end
2015-10-15 19:06:41 +03:00
def proposition_status_class(status)
{
"undecided" => "default",
"approved" => "info",
"rejected" => "danger",
2019-04-28 21:10:54 +03:00
"backup" => "warning",
2015-10-15 19:06:41 +03:00
}.with_indifferent_access[status]
end
def proposition_status_glyph(status)
{
"undecided" => "question",
"approved" => "thumbs-up",
"rejected" => "thumbs-down",
2019-04-28 21:10:54 +03:00
"backup" => "refresh",
2015-10-15 19:06:41 +03:00
}.with_indifferent_access[status]
end
def proposition_status_icon(status)
icon(proposition_status_glyph(status))
end
def action_buttons(conference, record, actions = [:index, :show, :edit, :destroy])
2015-07-14 21:00:02 +03:00
klass = record.class
2019-04-28 21:10:54 +03:00
output = ""
2015-07-14 21:00:02 +03:00
if actions.include? :index
output += link_to(icon(:list), [:management, conference, klass], {
2019-04-28 21:10:54 +03:00
title: t("actions.index.button", models: klass.model_name.human(count: 2)),
class: "btn btn-info",
2015-07-14 21:00:02 +03:00
})
end
if actions.include? :show
output += link_to(icon(:eye), [:management, conference, record], {
2019-04-28 21:10:54 +03:00
title: t("actions.view.button", model: klass.model_name.human),
class: "btn btn-info",
2015-07-14 21:00:02 +03:00
})
end
if actions.include? :edit
2019-04-28 21:10:54 +03:00
output += link_to(icon(:edit), [:edit, :management, conference, record], {
title: t("actions.edit.button", model: klass.model_name.human),
class: "btn btn-warning",
})
2015-07-14 21:00:02 +03:00
end
if actions.include? :destroy
2019-04-28 21:10:54 +03:00
output += link_to(icon(:trash), [:management, conference, record], {
method: :delete,
data: {confirm: t("actions.are_you_sure")},
title: t("actions.destroy.button", model: klass.model_name.human),
class: "btn btn-danger",
})
2015-07-14 21:00:02 +03:00
end
output.html_safe
end
2019-04-29 13:39:02 +03:00
def rating_label_color(rating)
2019-04-30 01:07:48 +03:00
return nil if rating.nil?
2019-04-29 13:39:02 +03:00
case rating.round
when (0...3) then 'primary'
when 3 then 'danger'
when 4 then 'warning'
when 5 then 'info'
2019-04-29 13:39:02 +03:00
when 6 then 'success'
end
end
def human_rating(rating)
2019-04-30 01:07:48 +03:00
return nil if rating.nil?
2019-04-29 13:39:02 +03:00
case rating.round
when (0...3) then t('ratings.poor')
when 3 then t('ratings.average')
when 4 then t('ratings.good')
when 5 then t('ratings.very_good')
when 6 then t('ratings.excellent')
end
end
2014-07-28 12:34:18 +03:00
end