Sha256: ba9524b4efbc3dc4e0888403363fa3434772b9793e751d5c29653f3b7f6cb816

Contents?: true

Size: 1.06 KB

Versions: 25

Compression:

Stored size: 1.06 KB

Contents

Widget = Backbone.Model.extend {
	initialize: ->
		@needRefresh = true
		@setNextFetch()
		@timespanInc = 0

	setStartTime: (@startTime) ->

	setEndTime: (@endTime) ->

	increaseTimespan: (inc) ->
		@timespanInc = @timespanInc + inc
		@forceUpdate()

	resetTimespan: ->
		@timespanInc = 0
		@startTime = null
		@endTime = null
		@forceUpdate()

	timespan: -> @get('timespan') + @timespanInc

	url: ->
		timespan = @timespan()
		url = "#{@collection.url()}/#{@get('id')}?"
		url += "&timespan=#{timespan}" unless _.isNaN(timespan)
		url += "&startTime=#{@startTime}" if @startTime
		url += "&endTime=#{@endTime}" if @endTime
		url

	time: -> (new Date()).getTime()

	setNextFetch: ->
		@nextFetch = @time() + @get('redrawInterval') * 1000

	setRefresh: (needRefresh) ->
		@needRefresh = needRefresh

	needFetch: ->
		interval = @get('redrawInterval')
		@time() > @nextFetch && @needRefresh && interval? && interval > 0

	refetch: ->
		if @needFetch()
			@forceUpdate()
			@setNextFetch()

	forceUpdate: ->
		@fetch {
			success: (model, response) ->
				model.trigger('redraw')
		}

}

Version data entries

25 entries across 25 versions & 2 rubygems

Version Path
pulse_meter_visualizer-0.4.22 lib/pulse_meter/visualize/coffee/models/widget.coffee
pulse_meter_visualizer-0.4.21 lib/pulse_meter/visualize/coffee/models/widget.coffee
pulse_meter_visualizer-0.4.20 lib/pulse_meter/visualize/coffee/models/widget.coffee
pulse_meter_visualizer-0.4.19 lib/pulse_meter/visualize/coffee/models/widget.coffee
pulse_meter_visualizer-0.4.18 lib/pulse_meter/visualize/coffee/models/widget.coffee
pulse_meter_visualizer-0.4.17 lib/pulse_meter/visualize/coffee/models/widget.coffee
pulse_meter_visualizer-0.4.16 lib/pulse_meter/visualize/coffee/models/widget.coffee
pulse_meter_visualizer-0.4.15 lib/pulse_meter/visualize/coffee/models/widget.coffee
pulse_meter_visualizer-0.4.14 lib/pulse_meter/visualize/coffee/models/widget.coffee
pulse_meter_visualizer-0.4.13 lib/pulse_meter/visualize/coffee/models/widget.coffee
pulse_meter_visualizer-0.4.12 lib/pulse_meter/visualize/coffee/models/widget.coffee
pulse_meter_visualizer-0.4.11 lib/pulse_meter/visualize/coffee/models/widget.coffee
pulse-meter-0.4.9 lib/pulse-meter/visualize/coffee/models/widget.coffee
pulse-meter-0.4.8 lib/pulse-meter/visualize/coffee/models/widget.coffee
pulse-meter-0.4.7 lib/pulse-meter/visualize/coffee/models/widget.coffee
pulse-meter-0.4.6 lib/pulse-meter/visualize/coffee/models/widget.coffee
pulse-meter-0.4.5 lib/pulse-meter/visualize/coffee/models/widget.coffee
pulse-meter-0.4.4 lib/pulse-meter/visualize/coffee/models/widget.coffee
pulse-meter-0.4.3 lib/pulse-meter/visualize/coffee/models/widget.coffee
pulse-meter-0.4.2 lib/pulse-meter/visualize/coffee/models/widget.coffee