class UtmGenerator

Attributes

url[RW]
utm_campaign[RW]
utm_content[RW]
utm_medium[RW]
utm_source[RW]
utm_term[RW]

Public Instance Methods

generate_url() click to toggle source
# File lib/utm_generator.rb, line 8
def generate_url
  if valid?
    uri = URI(url)
    params = []
    params << [:utm_source, utm_source]
    params << [:utm_medium, utm_medium] unless utm_medium.blank?
    params << [:utm_campaign, utm_campaign] unless utm_campaign.blank?
    params << [:utm_term, utm_term] unless utm_term.blank?
    params << [:utm_content, utm_content] unless utm_content.blank?
    uri.query = URI.encode_www_form(params)
    uri.to_s
  end
end