dispatcher = require('../../common/js/dispatcher')
google_tag_manager = require('../google/tag_manager.coffee')
_ = require('lodash')

get_banner_size = (as_array = true)->
  size = [160, 600]
  size = [120, 600] if window.innerWidth < 1320
  return if as_array then size else size.join('x')

module.exports = (banner) ->

  model =
    params: {}
    city_distance: 0

  reload_banner = _.after(2, ->
    display_left_banner()
  )
  dispatcher.on 'start_search', (event, {request_id, params}) ->
    model.params = _.clone(params)
    reload_banner()

  dispatcher.on 'places_restored', (event, params) ->
    model.params?.segments = params.segments
    reload_banner()

  dispatcher.on 'segments_updated', (event, {request_id, segments}) ->
    model.params?.segments = segments

  dispatcher.on 'city_distance_updated', (event, {request_id, city_distance}) ->
    model.city_distance = city_distance

  display_left_banner = ->
    google_tag_manager.setup_tag("/68258039/#{get_banner_size(false)}-AS", model.params, model.city_distance,
      'left-col-rek', get_banner_size(), google_tag_manager.on_banner_rendered)
