2016-06-07 01:10:47 +00:00
|
|
|
((w) ->
|
|
|
|
|
|
|
|
w.gl or= {}
|
|
|
|
w.gl.utils or= {}
|
|
|
|
|
2016-06-09 01:21:50 +00:00
|
|
|
w.gl.utils.isInGroupsPage = ->
|
|
|
|
|
|
|
|
return $('body').data('page').split(':')[0] is 'groups'
|
|
|
|
|
|
|
|
|
|
|
|
w.gl.utils.isInProjectPage = ->
|
|
|
|
|
|
|
|
return $('body').data('page').split(':')[0] is 'projects'
|
|
|
|
|
|
|
|
|
2016-06-07 01:10:47 +00:00
|
|
|
w.gl.utils.getProjectSlug = ->
|
|
|
|
|
2016-06-09 01:21:50 +00:00
|
|
|
return if @isInProjectPage() then $('body').data 'project' else null
|
|
|
|
|
|
|
|
|
|
|
|
w.gl.utils.getGroupSlug = ->
|
|
|
|
|
|
|
|
return if @isInGroupsPage() then $('body').data 'group' else null
|
2016-06-07 01:10:47 +00:00
|
|
|
|
|
|
|
|
2016-06-15 12:14:53 +00:00
|
|
|
|
|
|
|
gl.utils.updateTooltipTitle = ($tooltipEl, newTitle) ->
|
|
|
|
|
|
|
|
$tooltipEl
|
|
|
|
.tooltip 'destroy'
|
|
|
|
.attr 'title', newTitle
|
|
|
|
.tooltip 'fixTitle'
|
|
|
|
|
2016-06-15 23:04:09 +00:00
|
|
|
|
2016-06-14 21:15:46 +00:00
|
|
|
gl.utils.preventDisabledButtons = ->
|
|
|
|
|
|
|
|
$('.btn').click (e) ->
|
|
|
|
if $(this).hasClass 'disabled'
|
|
|
|
e.preventDefault()
|
|
|
|
e.stopImmediatePropagation()
|
|
|
|
return false
|
2016-06-15 12:14:53 +00:00
|
|
|
|
2016-06-15 23:04:09 +00:00
|
|
|
|
2016-06-02 21:00:48 +00:00
|
|
|
jQuery.timefor = (time, suffix, expiredLabel) ->
|
|
|
|
|
|
|
|
return '' unless time
|
|
|
|
|
|
|
|
suffix or= 'remaining'
|
2016-06-08 15:41:03 +00:00
|
|
|
expiredLabel or= 'Past due'
|
2016-06-02 21:00:48 +00:00
|
|
|
|
|
|
|
jQuery.timeago.settings.allowFuture = yes
|
|
|
|
|
|
|
|
{ suffixFromNow } = jQuery.timeago.settings.strings
|
|
|
|
jQuery.timeago.settings.strings.suffixFromNow = suffix
|
|
|
|
|
|
|
|
timefor = $.timeago time
|
|
|
|
|
|
|
|
if timefor.indexOf('ago') > -1
|
|
|
|
timefor = expiredLabel
|
|
|
|
|
|
|
|
jQuery.timeago.settings.strings.suffixFromNow = suffixFromNow
|
|
|
|
|
|
|
|
return timefor
|
|
|
|
|
2016-06-07 01:10:47 +00:00
|
|
|
) window
|