Newer
Older
class Communication::Block::Template::Partner < Communication::Block::Template::Base
organizations.each do |organization|
add_dependency organization.active_storage_blobs
end
@partners ||= elements.map { |element|
partner(element)
}.compact
def active_storage_blobs
@active_storage_blobs ||= partners.map { |partner|
partner.blob
}.compact
@organizations ||= partners.map { |partner|
partner.organization
}.compact
def partner(element)
# Init to have easy tests in the views and dependencies
element['organization'] = nil
element['blob'] = nil
if element['id']
organization = university.organizations.find_by id: element['id']
if organization
element['organization'] = organization
element['name'] = organization.to_s
element['url'] = organization.url
element['blob'] = organization.logo&.blob