       @set 'value', ''
       @set 'candidate', value
   
-  load: ->
-    #value = @get 'value'
-    #if value
-    #  @set 'candidate', value
-    #  @set 'value', ''
-    #@set 'options', []
+  load: (parentChanged)->
+    #clear auto-update timer
+    clearTimeout @_timeout if @_timeout
+    @_timeout = null
+    
+    #reset data befor update
+    value = @get 'value'
+    if value
+      @set 'candidate', value
+    if parentChanged
+      @set 'value', ''
+      @set 'options', []
 
   _autoSelect: (() ->
     options = @get 'options'

        @get('parentUrl')+"/"+@get('parentValue')
      ).property('parentValue', 'parentUrl')

      load: ((cb)->
        @_super()
        parentValue = @get 'parentValue'
        if parentValue
          $.getJSON @get('databaseurl')+"/"+name+"s", cb

  selected: (->
    @get('cache')[@get 'value']
  ).property 'value'
  load: ((parentChanged)->  
    @_super parentChanged, (data) =>
      k = keys data
      k.sort()
      k.reverse()
      if not k.compareArrays(@get 'options')
        @set 'options', k
        @set 'cache', data
      @_timeout = setTimeout (=> @load(false)), 60*1000#1 min
  )
  _load: (-> @load true).observes 'parentValue'
}

Weathermaps.current = Ember.Object.create {
