Thomas Bruederli
2014-06-05 99cdca46b7bcc46fe6affd9e9f9f60a546b2e5b8
plugins/zipdownload/zipdownload.js
@@ -1,5 +1,18 @@
/**
 * ZipDownload plugin script
 *
 * @licstart  The following is the entire license notice for the
 * JavaScript code in this file.
 *
 * Copyright (c) 2013-2014, The Roundcube Dev Team
 *
 * The JavaScript code in this page is free software: you can redistribute it
 * and/or modify it under the terms of the GNU General Public License
 * as published by the Free Software Foundation, either version 3 of
 * the License, or (at your option) any later version.
 *
 * @licend  The above is the entire license notice
 * for the JavaScript code in this file.
 */
window.rcmail && rcmail.addEventListener('init', function(evt) {
@@ -30,21 +43,10 @@
            link.html('').append(span);
        }
        span.addClass('folder-selector-link').text(rcmail.gettext('zipdownload.download'));
        span.text(rcmail.gettext('zipdownload.download'));
        rcmail.env.download_link = link;
    });
    // hide menu on click out of menu element
    var fn = function(e) {
        var menu = $('#zipdownload-menu');
        if (e.target != menu.get(0))
            menu.hide();
    };
    $(document.body).on('mouseup', fn);
    $('iframe').contents().on('mouseup', fn)
        .load(function(e) { try { $(this).contents().on('mouseup', fn); } catch(e) {}; });
});
  });
function rcmail_zipdownload(mode)
@@ -87,14 +89,10 @@
}
// display download options menu
function rcmail_zipdownload_menu()
function rcmail_zipdownload_menu(e)
{
    // fix menu style and display menu
    var z_index = rcmail.env.download_link.parents('.popupmenu').css('z-index'),
        menu = $('#zipdownload-menu').css({'max-height': 'none', 'z-index': z_index + 1}).show();
    // position menu on the screen
    rcmail.element_position(menu, rcmail.env.download_link);
    // show (sub)menu for download selection
    rcmail.command('menu-open', 'zipdownload-menu', e && e.target ? e.target : rcmail.env.download_link, e);
    // abort default download action
    return false;