assign    = require 'lodash/assign'
View      = require '../../view/View'
ViewModel = require '../../view/ViewModel'
Navigator = require '../../nav/Navigator'
template  = require './test.template'

class TestView extends View
  constructor: (init) ->
    super assign init, {template, context: new ViewModel}

navigator = new Navigator base: '/nav/'

navigator.on 'navigate', (e) ->
  console.log e

navigator.on 'navigate:external', (e) ->
  if e.data is 'http://aol.com/' then e.cancelNavigation()

document.addEventListener 'DOMContentLoaded', ->

  tvm = new TestView
    parentEl: '.internal-nav'

  tvm.on 'tap:anchor', (e) ->
    console.log e
    navigator.goto e.data

  tvm.render()
