Sha256: fb18384aff2d8903dfce1b95ecc4206f0f37c40000e0367e910c05742f7fb14a

Contents?: true

Size: 1.46 KB

Versions: 62

Compression:

Stored size: 1.46 KB

Contents

/**
 * @namespace WORKAREA.toggleButtons
 */
WORKAREA.registerModule('toggleButtons', (function () {
    'use strict';

    var toggleElements = function ($radio, positive) {
            var $container = $radio.closest('[data-toggle-button]'),
                $elements = $('.toggle-button__more', $container),
                reverseSwitch = positive ? 'negative' : 'positive',
                selector = '[data-toggle-button-' + reverseSwitch + '-element]';

            $elements.removeClass('toggle-button__more--active');

            $elements
                .not(selector)
                .addClass('toggle-button__more--active');
        },

        determineState = function ($radio) {
            if ($radio.is('.toggle-button__input--positive')) {
                toggleElements($radio, true);
            } else {
                toggleElements($radio, false);
            }
        },

        getCheckedRadio = function (event) {
            determineState($(event.currentTarget));
        },

        getInitialState = function (index, button) {
            determineState($('.toggle-button__input:checked', button));
        },

        /**
         * @method
         * @name init
         * @memberof WORKAREA.toggleButtons
         */
        init = function ($scope) {
            $('[data-toggle-button]', $scope)
            .on('change', '.toggle-button__input', getCheckedRadio)
            .each(getInitialState);
        };

    return {
        init: init
    };
}()));

Version data entries

62 entries across 62 versions & 1 rubygems

Version Path
workarea-admin-3.5.15 app/assets/javascripts/workarea/admin/modules/toggle_buttons.js
workarea-admin-3.4.36 app/assets/javascripts/workarea/admin/modules/toggle_buttons.js
workarea-admin-3.5.14 app/assets/javascripts/workarea/admin/modules/toggle_buttons.js
workarea-admin-3.4.35 app/assets/javascripts/workarea/admin/modules/toggle_buttons.js
workarea-admin-3.5.13 app/assets/javascripts/workarea/admin/modules/toggle_buttons.js
workarea-admin-3.4.34 app/assets/javascripts/workarea/admin/modules/toggle_buttons.js
workarea-admin-3.5.12 app/assets/javascripts/workarea/admin/modules/toggle_buttons.js
workarea-admin-3.4.33 app/assets/javascripts/workarea/admin/modules/toggle_buttons.js
workarea-admin-3.5.11 app/assets/javascripts/workarea/admin/modules/toggle_buttons.js
workarea-admin-3.5.10 app/assets/javascripts/workarea/admin/modules/toggle_buttons.js
workarea-admin-3.4.32 app/assets/javascripts/workarea/admin/modules/toggle_buttons.js
workarea-admin-3.5.9 app/assets/javascripts/workarea/admin/modules/toggle_buttons.js
workarea-admin-3.4.31 app/assets/javascripts/workarea/admin/modules/toggle_buttons.js
workarea-admin-3.5.8 app/assets/javascripts/workarea/admin/modules/toggle_buttons.js
workarea-admin-3.4.30 app/assets/javascripts/workarea/admin/modules/toggle_buttons.js
workarea-admin-3.5.7 app/assets/javascripts/workarea/admin/modules/toggle_buttons.js
workarea-admin-3.4.29 app/assets/javascripts/workarea/admin/modules/toggle_buttons.js
workarea-admin-3.5.6 app/assets/javascripts/workarea/admin/modules/toggle_buttons.js
workarea-admin-3.4.28 app/assets/javascripts/workarea/admin/modules/toggle_buttons.js
workarea-admin-3.5.5 app/assets/javascripts/workarea/admin/modules/toggle_buttons.js