| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 | (function($) {  $(document).bind('cobalt-load', function(evt, cobalt) {    var plugin = {      'version': 0,      'catalogs': {},      'handlers': []    };    plugin['catalogs']['menu'] = {      'update': function(last_update, callback) {        $.getJSON(Drupal.settings.basePath + 'cobalt/data/menu_json', {}, function (data) {         cobalt.emptyCatalog('menu');          for (var id in data) {            cobalt.addEntry({id:id, name:data[id][1], extra:data[id][0], information: data[id][0], catalog:'menu', classname:'url_data'});          }          callback(false);        });      },      'install': function() {      },      'uninstall': function() {      },      'item_formatter': function(item) {        return item.name + ' <small>' + item.information + '</small>';      },      'update_rate': 60000    };    var uri_from_item = function(item, omitDestination) {      var path = item.information;      var destination = Drupal.settings.cobalt.path;      if (typeof(path) == 'object') {        destination = path.destination;        path = path.path;      }      if (path=='<front>') {        path = '';      }      if (destination && !omitDestination) {        path = path + '?destination=' + destination;      }      return Drupal.settings.basePath + path;    };    plugin['handlers'].push({      'id': 'menu_goto',      'name': Drupal.t('Go to and return'),      'data_class': 'url_data',      'handler': function(text, item) {        window.location.href = uri_from_item(item);      }    });    plugin['handlers'].push({      'id': 'menu_goto_stay',      'name': Drupal.t('Go to'),      'data_class': 'url_data',      'handler': function(text, item) {        window.location.href = uri_from_item(item, true);      }    });    plugin['handlers'].push({      'id': 'menu_open_in_new_window',      'name': Drupal.t('Open in new window'),      'data_class': 'url_data',      'handler': function(text, item) {        var form = document.createElement("form");        $(form).attr({          'method': 'GET',          'action': uri_from_item(item),          'target': '_blank'        }).appendTo('body');        try {          form.submit();        }        catch(e) {          var message = $('<div></div>');          message.append('<h1>' + Drupal.t('Could not open window') + '</h1>');          message.append('<p>' + Drupal.t('You might be using a popup blocker, which stopped Cobalt from opening a new window.') + '</p>');          cobalt.showHtml(message);        }        $(form).remove();      }    });    cobalt.registerPlugin('cobalt_menu', plugin);  });})(jQuery);
 |