Project

General

Profile

1
import { Pipe, PipeTransform} from '@angular/core'
2

    
3

    
4
@Pipe({
5
  name: 'claimsDatatable'
6
})
7
export class ClaimsDatatablePipe implements PipeTransform  {
8

    
9
  transform(array: any[], args: any[]): any {
10
    let query: string = args[0];
11
    let counter:any = args[1];
12
    let active: any = args[2];
13

    
14
    active.page = 1;
15

    
16
    if (query) {
17
      var result = array.filter(row=>this.filterAll(row, query));
18
      counter.count = result.length;
19
      return result;
20
    }
21
    return array;
22
  }
23

    
24
  filterAll(row: any, query: string) {
25
    if(row.userMail.indexOf(query) > -1) {
26
      return true;
27
    }
28
    if(row.targetType != 'project' && row.target.title.indexOf(query) > -1) {
29
      return true;
30
    }
31
    if(row.sourceType != 'project' && row.source.title.indexOf(query) > -1) {
32
      return true;
33
    }
34
    if(row.date.indexOf(query) > -1) {
35
      return true;
36
    }
37

    
38
    if(row.curatedBy != null && row.curatedBy.indexOf(query) > -1) {
39
      return true;
40
    }
41

    
42
    if(row.curationDate != null && row.curationDate.indexOf(query) > -1) {
43
      return true;
44
    }
45

    
46
    return false;
47
  }
48
}
(1-1/3)