   processData: -> return
 
   updateTemperatureUnits: ->
-    @getUrl()
+    @getLocation()
+      .then @cacheLocation
+      .then @createUrlFromLocation
       .then @getWeather
       .then JSON.parse
       .then (data) =>

      else
        navigator.geolocation.getCurrentPosition (location) ->
          log 'got location', location
          localStorage.setItem 'locationCache', JSON.stringify location
          resolve location
        , reject, config.location

  getWeather: (url) ->
    new Promise (resolve, reject) ->

    @$el = $ '.weather'
    @apikey = 'e35c4324fb7999ba5788fbba8c901d11'

  update: (data) =>
    @data = data
    @processData()
    if not @initialized and data.displayWeather isnt off
