     # CALLBACK
 
     if type.function(fn) then fn(
+      null,
       @user.exportModel(LIST)
       @user.exportModel(TASK)
       @user.exportModel(PREF)


class GuestSocket extends Socket

  # Websocket events
  events:
    user: ['auth']

  constructor: (socket) ->
    super
    log 'A new guest has connected'
    @authenticated = false
    @authTimeout = setTimeout @timeout, TIMEOUT_AUTH

  user_auth: (@userId, token, fn) =>
    clearTimeout @authTimeout

  task_update: (model, time, fn) =>
    model = @sync.update TASK, model, time
    if model then @broadcast 'task.update', model
    if type.function(fn) then fn(null)

  list_update: (model, time, fn) =>
    model = @sync.update LIST, model, time
    if model then @broadcast 'list.update', model
    if type.function(fn) then fn(null)

  pref_update: (model, time, fn) =>
    model = @sync.update PREF, model, time
    if model then @broadcast 'pref.update', model
    if type.function(fn) then fn(null)


  ###
