                     m_opts.errorCount ?= 0
                     m_opts.errorCount += 1
 
-                msgText = @_getMessage(r=old(resp...), m_opts[type + 'Message'])
+                responseOpts = @_getHandlerResponse(old(resp...), m_opts[type + 'Message'])
+                if _.isString responseOpts
+                    responseOpts = {message: responseOpts}
 
                 if type is 'error' and (xhr?.status == 0 or reason == 'abort')
                     # The request was aborted

                # Restore ajax
                $.ajax = _old_ajax

    _getMessage: (returnVal, def) ->
        if returnVal == false
            return false

        if returnVal == true or not returnVal? or typeof returnVal != 'string'
            return def

        return returnVal

                    do msg.hide
                    return

                defaultOpts =
                    type: type
                    events: events[type] ? {}

                    hideOnNavigate: type == 'success'

                msgOpts = $.extend {}, m_opts, defaultOpts, responseOpts

                if typeof msgOpts.retry?.allow is 'number'
                    msgOpts.retry.allow--
