preroll_template = require('./preroll.temple')
dispatcher = require('../../common/js/dispatcher')
cookies = require('../../common/js/cookies.coffee')
metrics = require('../../common/js/metrics.coffee')
delegate = require('dom-delegate')
utils = require('../../common/js/utils.coffee')
animations = require('../../common/js/animations.coffee')
marker = require('../../common/js/marker.coffee')
temple_utils = require('temple-wat')
pool = temple_utils.pool(preroll_template)
google_tag_manager = require('../google/tag_manager.coffee')
_ = require('lodash')

module.exports = (element)->

  view =
    marker: marker.get()

  model =
    params: {}
    city_distance: 0

  [preroll_el, preroll_obj] = pool.get('preroll', view)

  element.appendChild(preroll_el)

  reload_banner = _.after(2, ->
    display_preroll_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
    display_preroll_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_preroll_banner = ->
    google_tag_manager.setup_tag("/68258039/AS-300x500-new", model.params, model.city_distance, 'preroll-timur',
      [300, 500], google_tag_manager.on_banner_rendered)
