permissions.js 2.17 KB
/*
 * ADOBE CONFIDENTIAL
 *
 * Copyright 2015 Adobe Systems Incorporated
 * All Rights Reserved.
 *
 * NOTICE:  All information contained herein is, and remains
 * the property of Adobe Systems Incorporated and its suppliers,
 * if any.  The intellectual and technical concepts contained
 * herein are proprietary to Adobe Systems Incorporated and its
 * suppliers and may be covered by U.S. and Foreign Patents,
 * patents in process, and are protected by trade secret or copyright law.
 * Dissemination of this information or reproduction of this material
 * is strictly forbidden unless prior written permission is obtained
 * from Adobe Systems Incorporated.
 */
(function(window, document, $, Granite) {
    'use strict';

    var toggleActionButtons = function(target) {
        return function() {
            var $tabPanel = $(target).closest('coral-tabview');

            var $actionBar = $('coral-actionbar');

            if ($tabPanel.find('.cq-siteadmin-admin-properties-blueprint:visible').length > 0) {
                $actionBar.find('.cq-siteadmin-admin-properties-actions-blueprint').removeClass('hide');
            } else {
                $actionBar.find('.cq-siteadmin-admin-properties-actions-blueprint').addClass('hide');
            }

            if ($tabPanel.find('.cq-siteadmin-admin-properties-livecopy:visible').length > 0) {
                $actionBar.find('.cq-siteadmin-admin-properties-actions-livecopy').removeClass('hide');
            } else {
                $actionBar.find('.cq-siteadmin-admin-properties-actions-livecopy').addClass('hide');
            }

            if ($tabPanel.find('.js-cq-sites-PermissionsProperties:visible').length > 0) {
                $actionBar.find('.js-cq-sites-PermissionsProperties-action').removeClass('hide');
            } else {
                $actionBar.find('.js-cq-sites-PermissionsProperties-action').addClass('hide');
            }
        };
    };

    /**
     * Handler to show/hide the MSM action buttons according to the selected tab.
     */
    $(document).on('click', '.screens-Properties coral-tabview', function(e) {
        window.setTimeout(toggleActionButtons(e.target), 0);
    });

}(window, document, Granite.$, Granite));