@@ -3578,36 +3578,44 @@ public function filterHolds(array $allHolds, array $selectedUsers, $selectedHold
3578
3578
3579
3579
$ allUsersSelected = in_array ("" , $ selectedUsers );
3580
3580
3581
- foreach (['available ' , 'unavailable ' ] as $ type ) {
3582
- foreach ($ allHolds [$ type ] as $ key => $ hold ) {
3583
- $ includeHold = false ;
3581
+ foreach ($ allHolds ['available ' ] as $ key => $ hold ) {
3582
+ $ includeHold = false ;
3584
3583
3585
- if ($ allUsersSelected || empty ($ selectedUsers ) || in_array ($ hold ->userId , $ selectedUsers )) {
3586
- $ includeHold = true ;
3587
- }
3584
+ if ($ allUsersSelected || empty ($ selectedUsers ) || in_array ($ hold ->userId , $ selectedUsers )) {
3585
+ $ includeHold = true ;
3586
+ }
3588
3587
3589
- if (!empty ($ selectedHolds )) {
3590
- $ matchFound = false ;
3591
- foreach ($ selectedHolds as $ selectedHold ) {
3588
+ if ($ includeHold ) {
3589
+ $ filteredHolds ['available ' ][$ key ] = $ hold ;
3590
+ }
3591
+ }
3592
3592
3593
- $ holdRecordId = intval (trim ($ hold ->recordId ));
3594
- $ selectedHoldRecordId = intval (trim ($ selectedHold ['recordId ' ]));
3595
- $ holdUserId = intval (trim ($ hold ->userId ));
3596
- $ selectedHoldUserId = intval (trim ($ selectedHold ['userId ' ]));
3597
- if ($ holdRecordId == $ selectedHoldRecordId && $ holdUserId == $ selectedHoldUserId ){
3598
- $ matchFound = true ;
3599
- break ;
3600
- }
3601
- }
3602
- if (!$ matchFound ) {
3603
- $ includeHold = false ;
3593
+ foreach ($ allHolds ['unavailable ' ] as $ key => $ hold ) {
3594
+ $ includeHold = false ;
3595
+
3596
+ if ($ allUsersSelected || empty ($ selectedUsers ) || in_array ($ hold ->userId , $ selectedUsers )) {
3597
+ $ includeHold = true ;
3598
+ }
3599
+ if (!empty ($ selectedHolds )) {
3600
+ $ matchFound = false ;
3601
+ foreach ($ selectedHolds as $ selectedHold ) {
3602
+ $ holdRecordId = intval (trim ($ hold ->recordId ));
3603
+ $ selectedHoldRecordId = intval (trim ($ selectedHold ['recordId ' ]));
3604
+ $ holdUserId = intval (trim ($ hold ->userId ));
3605
+ $ selectedHoldUserId = intval (trim ($ selectedHold ['userId ' ]));
3606
+ if ($ holdRecordId == $ selectedHoldRecordId && $ holdUserId == $ selectedHoldUserId ){
3607
+ $ matchFound = true ;
3608
+ break ;
3604
3609
}
3605
3610
}
3606
-
3607
- if ($ includeHold ) {
3608
- $ filteredHolds [$ type ][$ key ] = $ hold ;
3611
+ if (!$ matchFound ) {
3612
+ $ includeHold = false ;
3609
3613
}
3610
3614
}
3615
+
3616
+ if ($ includeHold ) {
3617
+ $ filteredHolds ['unavailable ' ][$ key ] = $ hold ;
3618
+ }
3611
3619
}
3612
3620
return $ filteredHolds ;
3613
3621
}
@@ -3737,6 +3745,9 @@ public function getHolds(): array {
3737
3745
if (!$ offlineMode ) {
3738
3746
if ($ user ) {
3739
3747
$ allHolds = $ this ->filterHolds ($ user ->getHolds (true , $ selectedUnavailableSortOption , $ selectedAvailableSortOption , $ source ), $ selectedUsers , $ selectedHolds );
3748
+ error_log ('Available Holds: ' . print_r ($ allHolds ['available ' ], true ));
3749
+ error_log ('Unavailable Holds: ' . print_r ($ allHolds ['unavailable ' ], true ));
3750
+
3740
3751
$ interface ->assign ('recordList ' , $ allHolds );
3741
3752
}
3742
3753
}
0 commit comments