trabajo-afectivo/app/helpers/knowledge_base_visibility_class_helper.rb

34 lines
872 B
Ruby
Raw Normal View History

2019-06-04 03:40:48 +00:00
module KnowledgeBaseVisibilityClassHelper
def visibility_class_name(object)
return if !current_user&.permissions?('knowledge_base.editor')
suffix = case object
when CanBePublished
visiblity_class_suffix_can_be_published(object)
when KnowledgeBase::Category
visiblity_class_suffix_category(object)
end
"kb-item--#{suffix}" if suffix
end
def visiblity_class_suffix_can_be_published(object)
state_suffix_map = {
internal: 'internal',
archived: 'archived',
draft: 'not-published',
}
state_suffix_map[object.can_be_published_aasm.current_state]
2019-06-04 03:40:48 +00:00
end
def visiblity_class_suffix_category(object)
return if object.public_content?
if object.self_with_children_answers.only_internal.any?
'internal'
else
'empty'
end
end
end