@@ -3,33 +3,33 @@ let bulkSelectDivs = document.querySelectorAll('.bulk-select');
3
3
bulkSelectDivs . forEach ( div => {
4
4
div . addEventListener ( 'click' , function ( event ) {
5
5
let form = this . nextElementSibling ;
6
- let showMoreLink = form . querySelector ( 'a' ) ;
7
6
let checkboxes = form . querySelectorAll ( 'input[type="checkbox"]' ) ;
8
7
9
8
if ( event . target . checked === true ) {
10
- checkboxes . forEach ( ( checkbox , index ) => {
9
+ checkboxes . forEach ( ( checkbox ) => {
11
10
checkbox . checked = true ;
12
- if ( index > 4 ) {
13
- checkbox . parentElement . style . display = checkbox . parentElement . style . display === 'none' ? 'block' : null ;
14
- }
15
11
} )
16
- if ( showMoreLink ) {
17
- showMoreLink . innerText = 'Show less...' ;
18
- }
19
12
} else if ( event . target . checked === false ) {
20
- checkboxes . forEach ( ( checkbox , index ) => {
13
+ checkboxes . forEach ( ( checkbox ) => {
21
14
checkbox . checked = false
22
- if ( index > 4 ) {
23
- checkbox . parentElement . style . display = checkbox . parentElement . style . display === 'block' ? 'none' : null ;
24
- }
25
15
} ) ;
26
- if ( showMoreLink ) {
27
- showMoreLink . innerText = 'Show more...' ;
28
- }
29
16
}
30
17
} ) ;
31
18
} ) ;
32
19
20
+ function checkBulkSelect ( ) {
21
+ bulkSelectDivs . forEach ( ( div ) => {
22
+ let form = div . nextElementSibling ;
23
+ let checkboxes = form . querySelectorAll ( "input[type='checkbox']" ) ;
24
+ let allChecked = Array . from ( checkboxes ) . every ( cb => cb . checked ) ;
25
+ if ( allChecked ) {
26
+ div . querySelector ( '#select-all' ) . checked = true ;
27
+ }
28
+ } ) ;
29
+ }
30
+
31
+ checkBulkSelect ( ) ;
32
+
33
33
function showLoader ( ) {
34
34
document . getElementById ( 'loaderOverlay' ) . style . display = 'flex' ;
35
35
document . querySelector ( '.table-container' ) . classList . add ( 'faded' ) ;
0 commit comments