1
0
mirror of https://github.com/bitwarden/browser.git synced 2024-08-29 23:49:50 +02:00

Ensure we only select all visible users (#1025)

This commit is contained in:
Oscar Hinton 2021-06-10 16:36:30 +02:00 committed by GitHub
parent fd683e9d71
commit 5939d590e3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 11 additions and 5 deletions

View File

@ -481,7 +481,7 @@ registerLocaleData(localeZhTw, 'zh-TW');
TwoFactorYubiKeyComponent,
UpdateKeyComponent,
],
providers: [DatePipe],
providers: [DatePipe, SearchPipe],
bootstrap: [AppComponent],
})
export class AppModule { }

View File

@ -37,6 +37,8 @@ import { OrganizationUserStatusType } from 'jslib-common/enums/organizationUserS
import { OrganizationUserType } from 'jslib-common/enums/organizationUserType';
import { PolicyType } from 'jslib-common/enums/policyType';
import { SearchPipe } from 'jslib-angular/pipes/search.pipe';
import { Utils } from 'jslib-common/misc/utils';
import { ModalComponent } from '../../modal.component';
@ -95,7 +97,8 @@ export class PeopleComponent implements OnInit {
private platformUtilsService: PlatformUtilsService, private toasterService: ToasterService,
private cryptoService: CryptoService, private userService: UserService, private router: Router,
private storageService: StorageService, private searchService: SearchService,
private validationService: ValidationService, private policyService: PolicyService) { }
private validationService: ValidationService, private policyService: PolicyService,
private searchPipe: SearchPipe) { }
async ngOnInit() {
this.route.parent.parent.params.subscribe(async params => {
@ -545,11 +548,14 @@ export class PeopleComponent implements OnInit {
if (select) {
this.selectAll(false);
}
const selectCount = select && this.users.length > MaxCheckedCount
const filteredUsers = this.searchPipe.transform(this.users, this.searchText, 'name', 'email', 'id');
const selectCount = select && filteredUsers.length > MaxCheckedCount
? MaxCheckedCount
: this.users.length;
: filteredUsers.length;
for (let i = 0; i < selectCount; i++) {
this.checkUser(this.users[i], select);
this.checkUser(filteredUsers[i], select);
}
}