Mercury Editor

mercury.js.coffee

Require all the dependencies

= require mercurydependencies/jquery-1.6 = require mercurydependencies/jquery-ui-1.8.13.custom = require mercurydependencies/jquery.additions = require mercurydependencies/liquidmetal = require mercury_dependencies/showdown

Require all mercury files

= requireself = require ./nativeextensions = require ./pageeditor = require ./historybuffer = require ./tableeditor = require ./dialog = require ./palette = require ./select = require ./panel = require ./modal = require ./lightview = require ./statusbar = require ./toolbar = require ./toolbar.button = require ./toolbar.buttongroup = require ./toolbar.expander = require ./tooltip = require ./snippet = require ./snippettoolbar = require ./region = require ./uploader = requiretree ./regions = requiretree ./dialogs = requiretree ./modals

@Mercury ||= {}
jQuery.extend @Mercury, {
  version: '0.1.4'

No IE support yet because it doesn’t follow the W3C standards for HTML5 contentEditable (aka designMode).

  supported: document.getElementById && document.designMode && !jQuery.browser.konqueror && !jQuery.browser.msie

Mercury object namespaces

  Regions: {}
  modalHandlers: {}
  lightviewHandlers: {}
  dialogHandlers: {}
  preloadedViews: {}

Custom event and logging methods

  bind: (eventName, callback) ->
    jQuery(document).bind("mercury:#{eventName}", callback)


  trigger: (eventName, options) ->
    Mercury.log(eventName, options)
    jQuery(document).trigger("mercury:#{eventName}", options)


  log: ->
    if Mercury.debug && console
      return if arguments[0] == 'hide:toolbar' || arguments[0] == 'show:toolbar'
      try console.debug(arguments) catch e

}