Sha256: aa2edfb3f9aa492ae4153a1249b61a2f75d916b9c0b9e5c910368dc238100633

Contents?: true

Size: 1.03 KB

Versions: 1

Compression:

Stored size: 1.03 KB

Contents

"use strict";

/**
 * Allows users to sort menu items and assign them to parent items by dragging
 * them.
 *
 * @since 2012-02-09
 */
window.addEvent('domready', function()
{
    var container = $('menu_items');

    // NestedSortables triggers events whenever all child elements of a list are
    // clicked. This prevents that from happening which in turn leads to fewer
    // async calls to the server.
    $$('.menu_item input, .menu_item a').addEvent('mousedown', function(e)
    {
        e.stopPropagation();
    });

    if ( container && container.get('data-editable') !== 'false' )
    {
        var tree = new NestedSortables('menu_items',
        {
            ghostOffset: {x: 0, y: 0},
            handleClass: 'menu_item',
            onComplete:  function()
            {
                new Request(
                {
                    url:    '/admin/menu-items/tree',
                    method: 'POST',
                    data:   {menu_items: tree.serializeArray()}
                }).send();
            }
        });
    }
});

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
zen-0.4.3 lib/zen/package/menus/lib/menus/public/admin/menus/js/menu_items.js