Skip to content

Instantly share code, notes, and snippets.

@ryancheung
Last active December 21, 2015 04:18
Show Gist options
  • Save ryancheung/6247985 to your computer and use it in GitHub Desktop.
Save ryancheung/6247985 to your computer and use it in GitHub Desktop.
Simple pubsub implementation in coffee
window.ActiveAdminSortableEvent = do ->
eventToListeners = {}
return {
add: (event, callback) ->
if not eventToListeners.hasOwnProperty(event)
eventToListeners[event] = []
eventToListeners[event].push(callback)
trigger: (event, args) ->
if eventToListeners.hasOwnProperty(event)
for callback in eventToListeners[event]
try
callback.call(null, args)
catch e
console.error(e) if console and console.error
}
ActiveAdminSortableEvent.add 'ajaxDone', ->
alert('Done')
ActiveAdminSortableEvent.trigger('ajaxDone')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment