gitlab-org--gitlab-foss/app/assets/javascripts/pager.js.coffee
2016-06-09 14:38:24 -05:00

44 lines
995 B
CoffeeScript

@Pager =
init: (@limit = 0, preload, @disable = false, @callback = $.noop) ->
@loading = $('.loading').first()
if preload
@offset = 0
@getOld()
else
@offset = @limit
@initLoadMore()
getOld: ->
@loading.show()
$.ajax
type: "GET"
url: $(".content_list").data('href') || location.href
data: "limit=" + @limit + "&offset=" + @offset
complete: =>
@loading.hide()
success: (data) ->
Pager.append(data.count, data.html)
Pager.callback()
dataType: "json"
append: (count, html) ->
$(".content_list").append html
if count > 0
@offset += count
else
@disable = true
initLoadMore: ->
$(document).unbind('scroll')
$(document).endlessScroll
bottomPixels: 400
fireDelay: 1000
fireOnce: true
ceaseFire: ->
Pager.disable
callback: (i) =>
unless @loading.is(':visible')
@loading.show()
Pager.getOld()