Skip to content
Snippets Groups Projects
call_to_action.rb 1.52 KiB
Newer Older
Arnaud Levy's avatar
Arnaud Levy committed
class Communication::Block::Template::CallToAction < Communication::Block::Template::Base
Sébastien Gaya's avatar
Sébastien Gaya committed
  def sanitized_data
    {
      "text" => Osuny::Sanitizer.sanitize(text),
      "button" => Osuny::Sanitizer.sanitize(button, 'string'),
      "button_secondary" => Osuny::Sanitizer.sanitize(button_secondary, 'string'),
      "button_tertiary" => Osuny::Sanitizer.sanitize(button_tertiary, 'string'),
Arnaud Levy's avatar
Arnaud Levy committed
      "url" => url,
      "url_secondary" => url_secondary,
      "url_tertiary" => url_tertiary,
      "target_blank" => target_blank,
      "target_blank_secondary" => target_blank_secondary,
      "target_blank_tertiary" => target_blank_tertiary,
Sébastien Gaya's avatar
Sébastien Gaya committed
      "image" => data['image'],
      "image_alt" => Osuny::Sanitizer.sanitize(data['image_alt'], 'string'),
      "image_credit" => Osuny::Sanitizer.sanitize(data['image_credit'], 'string')
    }
  end

alexisben's avatar
alexisben committed
  def build_git_dependencies
Sébastien Gaya's avatar
Sébastien Gaya committed
    add_dependency image&.blob
alexisben's avatar
alexisben committed
  end

  def text
    "#{data['text']}"
  end

  def url
    "#{data['url']}"
  end

  def button
    "#{data['button']}"
  end

Arnaud Levy's avatar
Arnaud Levy committed
  def target_blank
    data['target_blank'] == true
  end

alexisben's avatar
alexisben committed
  def url_secondary
    "#{data['url_secondary']}"
  end

  def button_secondary
    "#{data['button_secondary']}"
  end

Arnaud Levy's avatar
Arnaud Levy committed
  def target_blank_secondary
    data['target_blank_secondary'] == true
  end

Arnaud Levy's avatar
Arnaud Levy committed
  def url_tertiary
    "#{data['url_tertiary']}"
  end

Arnaud Levy's avatar
Arnaud Levy committed
  def target_blank_tertiary
    data['target_blank_tertiary'] == true
  end

Arnaud Levy's avatar
Arnaud Levy committed
  def button_tertiary
    "#{data['button_tertiary']}"
  end

alexisben's avatar
alexisben committed
  def image
Arnaud Levy's avatar
Arnaud Levy committed
    extract_image_alt_and_credit data, 'image'
alexisben's avatar
alexisben committed
  end
end