2023-01-05 12:18:27 +01:00
|
|
|
class Champs::CheckboxChamp < Champs::BooleanChamp
|
2024-04-02 17:05:44 +02:00
|
|
|
def for_export(path = :value)
|
2019-01-29 14:37:57 +01:00
|
|
|
true? ? 'on' : 'off'
|
2018-12-28 18:05:10 +01:00
|
|
|
end
|
2022-09-27 21:56:51 +02:00
|
|
|
|
2022-10-17 10:38:23 +02:00
|
|
|
def mandatory_blank?
|
2022-09-27 21:56:51 +02:00
|
|
|
mandatory? && (blank? || !true?)
|
|
|
|
end
|
2023-01-05 12:18:27 +01:00
|
|
|
|
2023-08-17 17:26:49 +02:00
|
|
|
def legend_label?
|
|
|
|
false
|
2023-01-05 12:18:27 +01:00
|
|
|
end
|
|
|
|
|
2023-10-04 14:57:28 +02:00
|
|
|
def self.options
|
|
|
|
[[I18n.t('activerecord.attributes.type_de_champ.type_champs.checkbox_true'), true], [I18n.t('activerecord.attributes.type_de_champ.type_champs.checkbox_false'), false]]
|
|
|
|
end
|
|
|
|
|
2023-08-21 16:18:31 +02:00
|
|
|
# TODO remove when normalize_checkbox_values is over
|
|
|
|
def true?
|
|
|
|
value_with_legacy == TRUE_VALUE
|
|
|
|
end
|
|
|
|
|
2023-07-10 14:48:33 +02:00
|
|
|
def html_label?
|
|
|
|
false
|
|
|
|
end
|
|
|
|
|
|
|
|
def single_checkbox?
|
|
|
|
true
|
|
|
|
end
|
2023-08-21 16:18:31 +02:00
|
|
|
|
|
|
|
private
|
|
|
|
|
|
|
|
# TODO remove when normalize_checkbox_values is over
|
|
|
|
def value_with_legacy
|
|
|
|
value == 'on' ? TRUE_VALUE : value
|
|
|
|
end
|
2018-02-13 18:18:20 +01:00
|
|
|
end
|