@@ -18,6 +18,13 @@ import { Team } from '../../admin-teams/team';
1818import pLimit from 'p-limit' ;
1919import { AdminBreadcrumb } from '../../admin-breadcrumb/admin-breadcrumb.model' ;
2020
21+ type UserFilter = {
22+ limit ?: number ;
23+ page ?: number ;
24+ enabled ?: boolean ;
25+ active ?: boolean ;
26+ } ;
27+
2128@Component ( {
2229 selector : 'admin-users' ,
2330 templateUrl : './user-dashboard.component.html' ,
@@ -145,6 +152,25 @@ export class UserDashboardComponent implements OnInit {
145152 } ) ;
146153 }
147154
155+ getFilter ( ) : UserFilter {
156+ const filterObject : UserFilter = { } ;
157+
158+ filterObject . limit = this . pageSize ;
159+ filterObject . page = this . pageIndex ;
160+ if ( this . userStatusFilter === 'all' ) return filterObject ;
161+
162+ if ( this . userStatusFilter === 'disabled' ) {
163+ filterObject . active = true ;
164+ filterObject . enabled = false ;
165+ } else if ( this . userStatusFilter === 'active' ) {
166+ filterObject . active = true ;
167+ } else {
168+ filterObject . active = false ;
169+ }
170+
171+ return filterObject ;
172+ }
173+
148174 /**
149175 * Refreshes the paginated list of users.
150176 */
@@ -154,32 +180,10 @@ export class UserDashboardComponent implements OnInit {
154180 state . pageSize = this . pageSize ;
155181 state . pageIndex = this . pageIndex ;
156182
157- state . userFilter = state . userFilter || { } ;
158- state . userFilter . limit = this . pageSize ;
159- state . userFilter . page = this . pageIndex ;
160-
161- switch ( this . userStatusFilter ) {
162- case 'active' :
163- delete state . userFilter . enabled ;
164- state . userFilter . active = true ;
165- break ;
166- case 'inactive' :
167- delete state . userFilter . enabled ;
168- state . userFilter . active = false ;
169- break ;
170- case 'disabled' :
171- delete state . userFilter . active ;
172- state . userFilter . enabled = false ;
173- break ;
174- default :
175- delete state . userFilter . active ;
176- delete state . userFilter . enabled ;
177- break ;
178- }
183+ state . userFilter = this . getFilter ( ) ;
179184
180185 return this . userPagingService . refresh ( this . stateAndData ) . then ( ( ) => {
181186 const users = this . userPagingService . users ( state ) ;
182- console . log ( users , 'Take Two GirliePop' ) ;
183187 this . dataSource = users ;
184188 this . totalUsers = state . pageInfo . totalCount || 0 ;
185189 } ) ;
@@ -207,24 +211,8 @@ export class UserDashboardComponent implements OnInit {
207211 * Executes a search query on the user list.
208212 */
209213 search ( ) : void {
210- switch ( this . userStatusFilter ) {
211- case 'active' :
212- delete this . stateAndData [ 'all' ] . userFilter . enabled ;
213- this . stateAndData [ 'all' ] . userFilter . active = true ;
214- break ;
215- case 'inactive' :
216- delete this . stateAndData [ 'all' ] . userFilter . enabled ;
217- this . stateAndData [ 'all' ] . userFilter . active = false ;
218- break ;
219- case 'disabled' :
220- delete this . stateAndData [ 'all' ] . userFilter . active ;
221- this . stateAndData [ 'all' ] . userFilter . enabled = false ;
222- break ;
223- default :
224- delete this . stateAndData [ 'all' ] . userFilter . active ;
225- delete this . stateAndData [ 'all' ] . userFilter . enabled ;
226- break ;
227- }
214+ this . stateAndData [ 'all' ] . userFilter . active = this . getFilter ( ) ;
215+
228216 this . userPagingService
229217 . search ( this . stateAndData [ 'all' ] , this . userSearch )
230218 . then ( ( users ) => {
0 commit comments