Mercurial > hg > isophonics-drupal-site
annotate core/modules/user/user.permissions.js @ 0:4c8ae668cc8c
Initial import (non-working)
author | Chris Cannam |
---|---|
date | Wed, 29 Nov 2017 16:09:58 +0000 |
parents | |
children |
rev | line source |
---|---|
Chris@0 | 1 /** |
Chris@0 | 2 * DO NOT EDIT THIS FILE. |
Chris@0 | 3 * See the following change record for more information, |
Chris@0 | 4 * https://www.drupal.org/node/2815083 |
Chris@0 | 5 * @preserve |
Chris@0 | 6 **/ |
Chris@0 | 7 |
Chris@0 | 8 (function ($, Drupal) { |
Chris@0 | 9 Drupal.behaviors.permissions = { |
Chris@0 | 10 attach: function attach(context) { |
Chris@0 | 11 var self = this; |
Chris@0 | 12 $('table#permissions').once('permissions').each(function () { |
Chris@0 | 13 var $table = $(this); |
Chris@0 | 14 var $ancestor = void 0; |
Chris@0 | 15 var method = void 0; |
Chris@0 | 16 if ($table.prev().length) { |
Chris@0 | 17 $ancestor = $table.prev(); |
Chris@0 | 18 method = 'after'; |
Chris@0 | 19 } else { |
Chris@0 | 20 $ancestor = $table.parent(); |
Chris@0 | 21 method = 'append'; |
Chris@0 | 22 } |
Chris@0 | 23 $table.detach(); |
Chris@0 | 24 |
Chris@0 | 25 var $dummy = $('<input type="checkbox" class="dummy-checkbox js-dummy-checkbox" disabled="disabled" checked="checked" />').attr('title', Drupal.t('This permission is inherited from the authenticated user role.')).hide(); |
Chris@0 | 26 |
Chris@0 | 27 $table.find('input[type="checkbox"]').not('.js-rid-anonymous, .js-rid-authenticated').addClass('real-checkbox js-real-checkbox').after($dummy); |
Chris@0 | 28 |
Chris@0 | 29 $table.find('input[type=checkbox].js-rid-authenticated').on('click.permissions', self.toggle).each(self.toggle); |
Chris@0 | 30 |
Chris@0 | 31 $ancestor[method]($table); |
Chris@0 | 32 }); |
Chris@0 | 33 }, |
Chris@0 | 34 toggle: function toggle() { |
Chris@0 | 35 var authCheckbox = this; |
Chris@0 | 36 var $row = $(this).closest('tr'); |
Chris@0 | 37 |
Chris@0 | 38 $row.find('.js-real-checkbox').each(function () { |
Chris@0 | 39 this.style.display = authCheckbox.checked ? 'none' : ''; |
Chris@0 | 40 }); |
Chris@0 | 41 $row.find('.js-dummy-checkbox').each(function () { |
Chris@0 | 42 this.style.display = authCheckbox.checked ? '' : 'none'; |
Chris@0 | 43 }); |
Chris@0 | 44 } |
Chris@0 | 45 }; |
Chris@0 | 46 })(jQuery, Drupal); |