Project

General

Profile

« Previous | Next » 

Revision 47340

Removed modal for loading in Search Pages and added an alert message (while loading all forms, inputs, buttons are disabled)

View differences:

modules/uoa-services-portal/trunk/portal-2/src/app/searchPages/advanced/advancedSearchPeople.component.ts
19 19
                 [(searchUtils)] = "searchUtils"
20 20
                 [(fieldIds)]="fieldIds" [(fieldIdsMap)]="fieldIdsMap"   [(selectedFields)]="selectedFields"
21 21
                 (queryChange)="queryChanged($event)"
22
                 [csvParams]="csvParams" csvPath="resources" simpleSearchLink="/search/find/people">
22
                 [csvParams]="csvParams" csvPath="resources" simpleSearchLink="/search/find/people"
23
                 [disableForms]="disableForms">
23 24
    </advanced-search-page>
24 25

  
25 26
    `
......
40 41
  @ViewChild (AdvancedSearchPageComponent) searchPage : AdvancedSearchPageComponent ;
41 42
  public resourcesQuery = "(oaftype exact person)";
42 43
  public csvParams: string;
44
  public disableForms: boolean = false;
43 45

  
44 46
  constructor (private route: ActivatedRoute, private _searchPeopleService: SearchPeopleService ) {
45 47

  
......
79 81

  
80 82
    var errorCodes:ErrorCodes = new ErrorCodes();
81 83
    this.searchUtils.status = errorCodes.LOADING;
82
    this.searchPage.openLoading();
84
    //this.searchPage.openLoading();
85
    this.disableForms = true;
86
    this.results = [];
87
    this.searchUtils.totalResults = 0;
83 88

  
84 89
    console.info("Advanced Search People: Execute search query "+parameters);
85 90
     this._searchPeopleService.advancedSearchPeople(parameters, page, size).subscribe(
......
93 98
            if(this.searchUtils.totalResults == 0 ){
94 99
              this.searchUtils.status = errorCodes.NONE;
95 100
            }
96
            this.searchPage.closeLoading();
101
            //this.searchPage.closeLoading();
102
            this.disableForms = false;
97 103

  
98 104
        },
99 105
        err => {
......
105 111
            // }
106 112
            var errorCodes:ErrorCodes = new ErrorCodes();
107 113
            this.searchUtils.status = errorCodes.NOT_AVAILABLE;
108
            this.searchPage.closeLoading();
109

  
114
            //this.searchPage.closeLoading();
115
            this.disableForms = false;
110 116
        }
111 117
    );
112 118
  }
modules/uoa-services-portal/trunk/portal-2/src/app/searchPages/advanced/advancedSearchOrganizations.component.ts
19 19
                 [(searchUtils)] = "searchUtils"
20 20
                 [(fieldIds)]="fieldIds" [(fieldIdsMap)]="fieldIdsMap"   [(selectedFields)]="selectedFields"
21 21
                 (queryChange)="queryChanged($event)"
22
                 [csvParams]="csvParams" csvPath="resources" simpleSearchLink="/search/find/organizations">
22
                 [csvParams]="csvParams" csvPath="resources" simpleSearchLink="/search/find/organizations"
23
                 [disableForms]="disableForms">
23 24
    </advanced-search-page>
24 25

  
25 26
    `
......
35 36
  public fieldIdsMap  = this.searchFields.ORGANIZATION_FIELDS;
36 37
  public selectedFields:AdvancedField[] =  [];
37 38
  public csvParams: string;
39
  public disableForms: boolean = false;
38 40

  
39 41
  @ViewChild (AdvancedSearchPageComponent) searchPage : AdvancedSearchPageComponent ;
40 42

  
......
78 80

  
79 81
    var errorCodes:ErrorCodes = new ErrorCodes();
80 82
    this.searchUtils.status = errorCodes.LOADING;
81
    this.searchPage.openLoading();
83
    //this.searchPage.openLoading();
84
    this.disableForms = true;
85
    this.results = [];
86
    this.searchUtils.totalResults = 0;
82 87

  
83 88
    console.info("Advanced Search Organizations: Execute search query "+parameters);
84 89
     this._searchOrganizationsService.advancedSearchOrganizations(parameters, page, size).subscribe(
......
92 97
            if(this.searchUtils.totalResults == 0 ){
93 98
              this.searchUtils.status = errorCodes.NONE;
94 99
            }
95
            this.searchPage.closeLoading();
100
            //this.searchPage.closeLoading();
101
            this.disableForms = false;
96 102

  
97 103
        },
98 104
        err => {
......
104 110
            // }
105 111
            var errorCodes:ErrorCodes = new ErrorCodes();
106 112
            this.searchUtils.status = errorCodes.NOT_AVAILABLE;
107
            this.searchPage.closeLoading();
108

  
113
            //this.searchPage.closeLoading();
114
            this.disableForms = false;
109 115
        }
110 116
    );
111 117
  }
modules/uoa-services-portal/trunk/portal-2/src/app/searchPages/advanced/advancedSearchProjects.component.ts
18 18
                 [(searchUtils)] = "searchUtils"
19 19
                 [(fieldIds)]="fieldIds" [(fieldIdsMap)]="fieldIdsMap"   [(selectedFields)]="selectedFields"
20 20
                 (queryChange)="queryChanged($event)"
21
                 [csvParams]="csvParams" csvPath="resources" simpleSearchLink="/search/find/projects">
21
                 [csvParams]="csvParams" csvPath="resources" simpleSearchLink="/search/find/projects"
22
                 [disableForms]="disableForms">
22 23
    </advanced-search-page>
23 24

  
24 25
    `
......
39 40
  @ViewChild (AdvancedSearchPageComponent) searchPage : AdvancedSearchPageComponent ;
40 41
  public resourcesQuery = "(oaftype exact project)";
41 42
  public csvParams: string;
43
  public disableForms: boolean = false;
42 44

  
43 45
  constructor (private route: ActivatedRoute, private _searchProjectsService: SearchProjectsService ) {
44 46

  
......
78 80

  
79 81
    var errorCodes:ErrorCodes = new ErrorCodes();
80 82
    this.searchUtils.status = errorCodes.LOADING;
81
    this.searchPage.openLoading();
83
    //this.searchPage.openLoading();
84
    this.disableForms = true;
85
    this.results = [];
86
    this.searchUtils.totalResults = 0;
82 87

  
83 88
    console.info("Advanced Search Publications: Execute search query "+parameters);
84 89
     this._searchProjectsService.advancedSearchProjects(parameters,  page, size).subscribe(
......
92 97
            if(this.searchUtils.totalResults == 0 ){
93 98
              this.searchUtils.status = errorCodes.NONE;
94 99
            }
95
            this.searchPage.closeLoading();
100
            //this.searchPage.closeLoading();
101
            this.disableForms = false;
96 102

  
97 103
        },
98 104
        err => {
......
104 110
            // }
105 111
            var errorCodes:ErrorCodes = new ErrorCodes();
106 112
            this.searchUtils.status = errorCodes.NOT_AVAILABLE;
107
            this.searchPage.closeLoading();
113
            //this.searchPage.closeLoading();
114
            this.disableForms = false;
108 115

  
109 116
        }
110 117
    );
modules/uoa-services-portal/trunk/portal-2/src/app/searchPages/advanced/advancedSearchPublications.component.ts
19 19
                 [(searchUtils)] = "searchUtils"
20 20
                 [(fieldIds)]="fieldIds" [(fieldIdsMap)]="fieldIdsMap"   [(selectedFields)]="selectedFields"
21 21
                 (queryChange)="queryChanged($event)"
22
                 [csvParams]="csvParams" csvPath="resources" simpleSearchLink="/search/find/publications">
22
                 [csvParams]="csvParams" csvPath="resources" simpleSearchLink="/search/find/publications"
23
                 [disableForms]="disableForms">
23 24
    </advanced-search-page>
24 25
    `
25 26
 })
......
36 37
   public selectedFields:AdvancedField[] =  [];
37 38
   public resourcesQuery = "((oaftype exact result) and (resulttypeid exact publication))";
38 39
   public csvParams: string;
40
   public disableForms: boolean = false;
39 41

  
40 42
  @ViewChild (AdvancedSearchPageComponent) searchPage : AdvancedSearchPageComponent ;
41 43

  
......
79 81

  
80 82
    var errorCodes:ErrorCodes = new ErrorCodes();
81 83
    this.searchUtils.status = errorCodes.LOADING;
82
    this.searchPage.openLoading();
84
    //this.searchPage.openLoading();
85
    this.disableForms = true;
86
    this.results = [];
87
    this.searchUtils.totalResults = 0;
83 88

  
84 89
    console.info("Advanced Search Publications: Execute search query "+parameters);
85 90
     this._searchPublicationsService.advancedSearchPublications(parameters, page, size).subscribe(
......
93 98
            if(this.searchUtils.totalResults == 0 ){
94 99
              this.searchUtils.status = errorCodes.NONE;
95 100
            }
96
            this.searchPage.closeLoading();
101
            //this.searchPage.closeLoading();
102
            this.disableForms = false;
97 103

  
98 104
        },
99 105
        err => {
......
105 111
            // }
106 112
            var errorCodes:ErrorCodes = new ErrorCodes();
107 113
            this.searchUtils.status = errorCodes.NOT_AVAILABLE;
108
            this.searchPage.closeLoading();
114
            //this.searchPage.closeLoading();
115
            this.disableForms = false;
109 116

  
110 117
        }
111 118
    );
modules/uoa-services-portal/trunk/portal-2/src/app/searchPages/advanced/advancedSearchDataProviders.component.ts
20 20
                 [(fieldIds)]="fieldIds" [(fieldIdsMap)]="fieldIdsMap"   [(selectedFields)]="selectedFields"
21 21
                  [(searchUtils)] = "searchUtils"
22 22
                 (queryChange)="queryChanged($event)"
23
                 [csvParams]="csvParams" csvPath="resources" simpleSearchLink="/search/find/dataproviders">
23
                 [csvParams]="csvParams" csvPath="resources" simpleSearchLink="/search/find/dataproviders"
24
                 [disableForms]="disableForms">
24 25
    </advanced-search-page>
25 26

  
26 27
    `
......
39 40
  @ViewChild (AdvancedSearchPageComponent) searchPage : AdvancedSearchPageComponent ;
40 41
  public resourcesQuery = "(oaftype exact datasource)";
41 42
  public csvParams: string;
43
  public disableForms: boolean = false;
42 44

  
43 45
  constructor (private route: ActivatedRoute, private _searchDataProvidersService: SearchDataprovidersService ) {
44 46

  
......
75 77

  
76 78
    var errorCodes:ErrorCodes = new ErrorCodes();
77 79
    this.searchUtils.status = errorCodes.LOADING;
78
    this.searchPage.openLoading();
80
    //this.searchPage.openLoading();
81
    this.disableForms = true;
82
    this.results = [];
83
    this.searchUtils.totalResults = 0;
79 84

  
80 85
    console.info("Advanced Search Publications: Execute search query "+parameters);
81 86
     this._searchDataProvidersService.advancedSearchDataproviders(parameters,  page, size).subscribe(
......
89 94
            if(this.searchUtils.totalResults == 0 ){
90 95
              this.searchUtils.status = errorCodes.NONE;
91 96
            }
92
            this.searchPage.closeLoading();
93

  
97
            //this.searchPage.closeLoading();
98
            this.disableForms = false;
94 99
        },
95 100
        err => {
96 101
            console.log(err);
......
101 106
            // }
102 107
            var errorCodes:ErrorCodes = new ErrorCodes();
103 108
            this.searchUtils.status = errorCodes.NOT_AVAILABLE;
104
            this.searchPage.closeLoading();
105

  
109
            //this.searchPage.closeLoading();
110
            this.disableForms = false;
106 111
        }
107 112
    );
108 113
  }
modules/uoa-services-portal/trunk/portal-2/src/app/searchPages/advanced/advancedSearchDatasets.component.ts
19 19
                 [(searchUtils)] = "searchUtils"
20 20
                 [(fieldIds)]="fieldIds" [(fieldIdsMap)]="fieldIdsMap"   [(selectedFields)]="selectedFields"
21 21
                 (queryChange)="queryChanged($event)"
22
                 [csvParams]="csvParams" csvPath="resources" simpleSearchLink="/search/find/datasets">
22
                 [csvParams]="csvParams" csvPath="resources" simpleSearchLink="/search/find/datasets"
23
                 [disableForms]="disableForms">
23 24
    </advanced-search-page>
24 25

  
25 26
    `
......
41 42
  @ViewChild (AdvancedSearchPageComponent) searchPage : AdvancedSearchPageComponent ;
42 43
  public resourcesQuery = "( (oaftype exact result) and (resulttypeid exact dataset)  )";
43 44
  public csvParams: string;
45
  public disableForms: boolean = false;
44 46

  
45 47
  constructor (private route: ActivatedRoute, private _searchDatasetsService: SearchDatasetsService ) {
46 48

  
......
80 82

  
81 83
    var errorCodes:ErrorCodes = new ErrorCodes();
82 84
    this.searchUtils.status = errorCodes.LOADING;
83
    this.searchPage.openLoading();
85
    //this.searchPage.openLoading();
86
    this.disableForms = true;
87
    this.results = [];
88
    this.searchUtils.totalResults = 0;
84 89

  
85 90
    console.info("Advanced Search Datasets: Execute search query "+parameters);
86 91
     this._searchDatasetsService.advancedSearchDatasets(parameters, page, size).subscribe(
......
94 99
            if(this.searchUtils.totalResults == 0 ){
95 100
              this.searchUtils.status = errorCodes.NONE;
96 101
            }
97
            this.searchPage.closeLoading();
98

  
102
            //this.searchPage.closeLoading();
103
            this.disableForms = false;
99 104
        },
100 105
        err => {
101 106
            console.log(err);
......
106 111
            // }
107 112
            var errorCodes:ErrorCodes = new ErrorCodes();
108 113
            this.searchUtils.status = errorCodes.NOT_AVAILABLE;
109
            this.searchPage.closeLoading();
110

  
114
            //this.searchPage.closeLoading();
115
            this.disableForms = false;
111 116
        }
112 117
    );
113 118
  }
modules/uoa-services-portal/trunk/portal-2/src/app/searchPages/searchUtils/searchForm.component.ts
4 4
@Component({
5 5
    selector: 'search-form',
6 6
    template: `
7
        <form class = " uk-margin uk-text-center uk-margin-top">
7
        <form [class]="(isDisabled)?'uk-margin uk-text-center uk-margin-top uk-disabled':'uk-margin uk-text-center uk-margin-top'">
8 8
                 <input type="text" class="uk-input  uk-width-1-2" placeholder="Type keywords..." aria-describedby="sizing-addon2"  [(ngModel)]="keyword"  name="keyword" >
9 9
                    <button (click)="keywordChanged()"  type="submit" class=" uk-button uk-button-default">Search</button>
10 10
        </form>
......
12 12
})
13 13

  
14 14
export class SearchFormComponent {
15
    @Input() isDisabled: boolean = false;
15 16
    @Input() keyword: string = '';
16 17

  
17 18
    @Output() keywordChange  = new EventEmitter();
modules/uoa-services-portal/trunk/portal-2/src/app/searchPages/searchUtils/searchPage.component.ts
22 22
      <div>
23 23
        <div *ngIf="showRefine"  >
24 24
          <div  class="uk-width-1-1  uk-margin uk-padding uk-panel  uk-background-muted">
25
              <search-form [(keyword)]="searchUtils.keyword" (keywordChange)="keywordChanged($event)"></search-form>
25
              <search-form [isDisabled]="disableForms" [(keyword)]="searchUtils.keyword" (keywordChange)="keywordChanged($event)"></search-form>
26 26
              <div *ngIf="isFiltered()" class = " uk-text-center ">
27
                <span *ngIf = "searchUtils.keyword.length > 0">Keywords: <span>{{searchUtils.keyword}}<a (click) = "clearKeywords() " class="uk-icon-button" ><span class=" clickable " aria-hidden="true"><span uk-icon="icon: close"></span></span></a></span>
27
                <span *ngIf = "searchUtils.keyword.length > 0">Keywords: <span>{{searchUtils.keyword}}<a (click) = "clearKeywords() " [class]="(disableForms)?'uk-icon-button uk-disabled':'uk-icon-button'"><span class=" clickable " aria-hidden="true"><span uk-icon="icon: close"></span></span></a></span>
28 28
                </span>
29 29
                <span *ngFor="let filter of filters " >
30 30
                  <span *ngIf = "filter.countSelectedValues > 0"> {{filter.title}}:
31
                    <span *ngFor="let value of getSelectedValues(filter); let i = index;  let end = last; " >{{value.name}}<a (click) = "removeFilter(value, filter) " class="uk-icon-button"><span class=" clickable" aria-hidden="true"><span uk-icon="icon: close"></span></span></a>
31
                    <span *ngFor="let value of getSelectedValues(filter); let i = index;  let end = last; " >{{value.name}}<a (click) = "removeFilter(value, filter) " [class]="(disableForms)?'uk-icon-button uk-disabled':'uk-icon-button'"><span class=" clickable" aria-hidden="true"><span uk-icon="icon: close"></span></span></a>
32 32
                     <span *ngIf="!end">, </span>
33 33
                    </span>
34 34
                  </span>
......
36 36
                <!--span>
37 37
                 Clear All
38 38
                <a  (click)="clearFilters()"  class="uk-icon-button uk-text-right"><span uk-icon="icon: close"></span></a></span-->
39
                <a (click)="clearFilters()">
39
                <a (click)="clearFilters()" [class]="(disableForms)?'uk-disabled uk-link-muted':''">
40 40
                 Clear All
41 41
                </a>
42 42
              </div>
43
              <a *ngIf = "advancedSearchLink && advancedSearchLink.length > 0" routerLinkActive="router-link-active" class="uk-float-right" [routerLink]=advancedSearchLink >More search options <span uk-icon="icon: chevron-right"></span></a>
43
              <a *ngIf = "advancedSearchLink && advancedSearchLink.length > 0" routerLinkActive="router-link-active" [class]="(disableForms)?'uk-float-right uk-disabled uk-link-muted':'uk-float-right'" [routerLink]=advancedSearchLink >More search options <span uk-icon="icon: chevron-right"></span></a>
44 44
          </div>
45 45
          <div  class="uk-grid uk-width-1-1 uk-margin">
46 46
            <div class=" search-filters uk-width-1-4@l  uk-width-1-4@m  uk-width-1-1@s ">
47
               <search-filter  *ngFor="let filter of filters " [filter]="filter"  [showResultCount]=showResultCount (change)="filterChanged($event)" (toggleModal)="toggleModal($event)"></search-filter>
47
               <search-filter  *ngFor="let filter of filters " [isDisabled]="disableForms" [filter]="filter"  [showResultCount]=showResultCount (change)="filterChanged($event)" (toggleModal)="toggleModal($event)"></search-filter>
48 48
            </div>
49 49

  
50 50
            <div class="uk-width-3-4@m  uk-width-3-4@l  uk-width-1-1@s uk-first-column" >
......
52 52
              <search-download [type]="csvPath" [csvParams]="csvParams" [totalResults]="searchUtils.totalResults" (downloadClick)="downloadClicked($event)"></search-download>
53 53
              <search-result    [results]="results"
54 54
                                [status]=searchUtils.status
55
                                [type]="entityType" [urlParam]="urlParam">
55
                                [type]="entityType" [urlParam]="urlParam"
56
                                [showLoading]="true">
56 57
              </search-result>
57 58
            </div>
58 59

  
......
62 63

  
63 64

  
64 65
        <div *ngIf="!showRefine" >
65
            <search-form [(keyword)]="searchUtils.keyword" (keywordChange)="keywordChanged($event)"></search-form>
66
            <search-form [isDisabled]="disableForms" [(keyword)]="searchUtils.keyword" (keywordChange)="keywordChanged($event)"></search-form>
66 67
            <search-paging [type]="type" [(searchUtils)] = "searchUtils"  [(results)] = "results"   [(baseUrl)] = "baseUrl"  [(parameterNames)] = "parameterNames" [(parameterValues)] = "parameterValues"></search-paging>
67 68
            <search-download [type]="csvPath" [csvParams]="csvParams" [totalResults]="searchUtils.totalResults" (downloadClick)="downloadClicked($event)"></search-download>
68 69
            <search-result  [results]="results"
69 70
                            [status]=searchUtils.status
70
                            [type]="entityType" [urlParam]="urlParam">
71
                            [type]="entityType" [urlParam]="urlParam"
72
                            [showLoading]="true">
71 73
            </search-result>
72 74
        </div>
73 75
      </div>
74 76
    </div>
75 77

  
76
    <modal-loading [message]= "'Loading results...'"></modal-loading>
78
    <!--modal-loading [message]= "'Loading results...'"></modal-loading-->
77 79

  
78
    <modal-search-filter [filter]="currentFilter" (modalChange)="filterChanged($event)"></modal-search-filter>
80
    <modal-search-filter [filter]="currentFilter" [showResultCount]=showResultCount (modalChange)="filterChanged($event)"></modal-search-filter>
79 81

  
80 82
    `
81 83
})
......
95 97
  @Input() csvParams: string;
96 98
  @Input() csvPath: string;
97 99
  @Input() advancedSearchLink: string = "";
100
  @Input() disableForms:boolean = false;
101

  
98 102
  @ViewChild (ModalLoading) loading : ModalLoading ;
99 103
  public fieldIdsMap;//:  { [key:string]:{ name:string, operator:string, type:string, indexField:string, equalityOperator:string  }};
100 104
  private searchFieldsHelper:SearchFields = new SearchFields();
......
109 113
  @ViewChild (SearchFilterModalComponent) searchFilterModal : SearchFilterModalComponent ;
110 114
  public currentFilter: Filter;
111 115

  
112

  
113 116
  constructor (private location: Location , private _meta: Meta) {
114 117
   }
115 118

  
modules/uoa-services-portal/trunk/portal-2/src/app/searchPages/searchUtils/searchFilter.component.ts
16 16
            <div *ngFor = "let value of getSelectedValues(filter)"  class = "uk-animation-fade filterItem">
17 17

  
18 18
               <span class="filterName"><div title = "{{value.name}}">
19
               <input [(ngModel)]="value.selected" type="checkbox" (ngModelChange)="filterChange(value.selected)" />
19
               <input [disabled]="isDisabled" [(ngModel)]="value.selected" type="checkbox" (ngModelChange)="filterChange(value.selected)" />
20 20
               {{_formatName(value)}} </div></span><span class="filterNumber" *ngIf = "showResultCount === true" >  ({{value.number}})</span>
21 21
            </div>
22 22
            <!--div class="uk-grid-divider uk-margin-remove"></div-->
23 23
            <hr *ngIf="getSelectedValues(filter).length > 0 && getNotSelectedValues(filter).length > 0" class="uk-grid-divider uk-margin-remove">
24 24
            <div *ngFor = "let value of getNotSelectedValues(filter).slice(0,5-getSelectedValues(filter).length)" class = "uk-animation-fade filterItem">
25 25

  
26
               <span class="filterName"><div title = "{{value.name}}"> <input [(ngModel)]="value.selected" type="checkbox" (ngModelChange)="filterChange(value.selected)" />
26
               <span class="filterName"><div title = "{{value.name}}"> <input [disabled]="isDisabled" [(ngModel)]="value.selected" type="checkbox" (ngModelChange)="filterChange(value.selected)" />
27 27
               {{_formatName(value)}} </div></span><span class="filterNumber" *ngIf = "showResultCount === true" >  ({{value.number}})</span>
28 28
            </div>
29 29

  
30
            <a *ngIf="(getSelectedValues(filter).length + getNotSelectedValues(filter).length) > 5" (click)="toggle()">Show More</a>
30
            <a *ngIf="(getSelectedValues(filter).length + getNotSelectedValues(filter).length) > 5" (click)="toggle()" [class]="(isDisabled)?'uk-disabled uk-link-muted':''">Show More</a>
31
            <!--button *ngIf="(getSelectedValues(filter).length + getNotSelectedValues(filter).length) > 5"
32
                    class="uk-button uk-button-link" (click)="toggle()" [disabled]="isDisabled">
33
                    Show More
34
            </button-->
31 35
       </div>
32 36
      </div>
33 37
    </li>
......
37 41
})
38 42

  
39 43
export class SearchFilterComponent {
40
  
44

  
41 45
    @Input() filter:Filter;
42 46
    @Input() showResultCount:boolean = true;
47
    @Input() isDisabled:boolean = false;
43 48
    public showAll:boolean = false;
44 49
    public _maxCharacters:number =28;
45 50

  
modules/uoa-services-portal/trunk/portal-2/src/app/searchPages/searchUtils/advancedSearchForm.component.ts
9 9
@Component({
10 10
    selector: 'advanced-search-form',
11 11
    template: `
12
        <form class="">
12
        <form [class]="(isDisabled)?'uk-disabled':''">
13 13
        <table   >
14 14
            <tr *ngFor="let selectedField of selectedFields; let i = index" class="-row  ">
15 15
                    <td *ngIf ="i==0 " class="">Search for:</td>
......
72 72
  @Input() fieldIds:  string[];
73 73
  @Input() fieldIdsMap;
74 74
  @Input() selectedFields:AdvancedField[];
75
  @Input() isDisabled: boolean = false;
76

  
75 77
  @Output() queryChange  = new EventEmitter();
76 78
  newFieldId:string;
77 79
  newFieldName:string;
modules/uoa-services-portal/trunk/portal-2/src/app/searchPages/searchUtils/searchFilterModal.component.ts
41 41
  */
42 42
export class SearchFilterModalComponent{
43 43
  @Input() filter: Filter;
44
  @Input() showResultCount:boolean = true;
44 45
  @Output() modalChange = new EventEmitter();
45 46

  
46 47
  public isOpen:boolean=false;
modules/uoa-services-portal/trunk/portal-2/src/app/searchPages/searchUtils/advancedSearchPage.component.ts
19 19
            <h1>{{pageTitle}}</h1>
20 20
        </div>
21 21
        <div>
22
                  <a  *ngIf = "simpleSearchLink && simpleSearchLink.length > 0" routerLinkActive="router-link-active" [routerLink]=simpleSearchLink  class="uk-float-right" >Simple search <span uk-icon="icon: chevron-right"></span></a>
22
                  <a  *ngIf = "simpleSearchLink && simpleSearchLink.length > 0" routerLinkActive="router-link-active" [routerLink]=simpleSearchLink  [class]="(disableForms)?'uk-float-right uk-disabled uk-link-muted':'uk-float-right'" >Simple search <span uk-icon="icon: chevron-right"></span></a>
23 23
                    <advanced-search-form
24 24
                     [entityType] = "entityType"
25 25
                     [(fieldIds)]="fieldIds"
26 26
                     [(fieldIdsMap)]="fieldIdsMap"
27 27
                     [(selectedFields)]="selectedFields"
28
                                          (queryChange)="queryChanged($event)">
28
                     (queryChange)="queryChanged($event)"
29
                     [isDisabled]="disableForms">
29 30
                    </advanced-search-form>
30 31
                        <search-paging [type]="type" [(searchUtils)] = "searchUtils"  [(results)] = "results" [(baseUrl)] = "searchUtils.baseUrl"  [(parameterNames)] = "parameterNames" [(parameterValues)] = "parameterValues"   ></search-paging>
31 32
                        <search-download [type]="csvPath" [csvParams]="csvParams" [totalResults]="searchUtils.totalResults" ></search-download>
......
33 34
                    <div>
34 35
                        <search-result  [results]="results"
35 36
                                        [status]=searchUtils.status
36
                                        [type]="entityType" [urlParam]="urlParam">
37
                                        [type]="entityType" [urlParam]="urlParam"
38
                                        [showLoading]="true">
37 39
                        </search-result>
38 40
                    </div>
39 41

  
40 42
        </div>
41 43
    </div>
42
    <modal-loading [message]= "'Loading results...'"></modal-loading>
44
    <!--modal-loading [message]= "'Loading results...'"></modal-loading-->
43 45

  
44 46
    `
45 47
})
......
57 59
  @Input() csvParams: string;
58 60
  @Input() csvPath: string;
59 61
  @Input() simpleSearchLink: string = "";
62
  @Input() disableForms:boolean = false;
60 63

  
61

  
62

  
63 64
  public parameterNames:string[] =[];
64 65
  public parameterValues:string[] =[];
65 66

  
modules/uoa-services-portal/trunk/portal-2/src/app/searchPages/simple/searchDataproviders.component.ts
17 17
    <search-page pageTitle="Search Dataproviders"
18 18
                 type="data providers" entityType="dataprovider" [(filters)] = "filters"
19 19
                 [(results)] = "results"   [(searchUtils)] = "searchUtils" [baseUrl] = "baseUrl"
20
				 (queryChange)="queryChanged($event)"  (downloadClick)="downloadClicked($event)"
21
                 [csvParams]="csvParams" csvPath="datasources" advancedSearchLink="/search/advanced/dataproviders">
20
				         (queryChange)="queryChanged($event)"  (downloadClick)="downloadClicked($event)"
21
                 [csvParams]="csvParams" csvPath="datasources" advancedSearchLink="/search/advanced/dataproviders"
22
                 [disableForms]="disableForms">
22 23
    </search-page>
23 24

  
24 25
    `
......
40 41
  public CSVDownloaded = false;
41 42
  public csvParams: string;
42 43

  
44
  public disableForms: boolean = false;
45

  
43 46
  @ViewChild (SearchPageComponent) searchPage : SearchPageComponent ;
44 47

  
45 48
  constructor (private route: ActivatedRoute, private _searchDataprovidersService: SearchDataprovidersService ) {
......
231 234
    var errorCodes:ErrorCodes = new ErrorCodes();
232 235
    this.searchUtils.status = errorCodes.LOADING;
233 236

  
234
    this.searchPage.openLoading();
237
    //this.searchPage.openLoading();
238
    this.disableForms = true;
239
    this.results = [];
240
    this.searchUtils.totalResults = 0;
235 241

  
236 242
    this.subResults = this._searchDataprovidersService.searchDataproviders(parameters,(refine)?this.searchPage.getRefineFieldsQuery():null, page, size, this.searchPage.getFields()).subscribe(
237 243
        data => {
......
249 255
            if(this.searchUtils.totalResults == 0 ){
250 256
              this.searchUtils.status = errorCodes.NONE;
251 257
            }
252
            this.searchPage.closeLoading();
258
            //this.searchPage.closeLoading();
259
            this.disableForms = false;
253 260
        },
254 261
        err => {
255 262
            console.log(err);
......
259 266
            // }
260 267
            var errorCodes:ErrorCodes = new ErrorCodes();
261 268
            this.searchUtils.status = errorCodes.ERROR;
262
            this.searchPage.closeLoading();
269
            //this.searchPage.closeLoading();
270
            this.disableForms = false;
263 271
        }
264 272
    );
265 273
  }
modules/uoa-services-portal/trunk/portal-2/src/app/searchPages/simple/searchDatasets.component.ts
19 19
                 type="datasets" entityType="dataset" [(filters)] = "filters"
20 20
                 [(results)] = "results"   [(searchUtils)] = "searchUtils"
21 21
                 [baseUrl] = "baseUrl" (queryChange)="queryChanged($event)"
22
                 [csvParams]="csvParams" csvPath="datasets" advancedSearchLink="/search/advanced/datasets">
22
                 [csvParams]="csvParams" csvPath="datasets" advancedSearchLink="/search/advanced/datasets"
23
                 [disableForms]="disableForms">
23 24
    </search-page>
24 25
    `
25 26
})
......
39 40
  private urlParams : Map<string, string>;
40 41
  private _location:Location;
41 42
  public csvParams: string;
43
  public disableForms: boolean = false;
42 44

  
43 45
  @ViewChild (SearchPageComponent) searchPage : SearchPageComponent ;
44 46
  constructor (private route: ActivatedRoute, private _searchDatasetsService: SearchDatasetsService ) {
......
175 177
  // }
176 178
  var errorCodes:ErrorCodes = new ErrorCodes();
177 179
  this.searchUtils.status = errorCodes.LOADING;
178
  this.searchPage.openLoading();
180
  //this.searchPage.openLoading();
181
  this.disableForms = true;
182
  this.results = [];
183
  this.searchUtils.totalResults = 0;
179 184

  
180 185
  this.subResults = this._searchDatasetsService.searchDatasets(parameters,(refine)?this.searchPage.getRefineFieldsQuery():null, page, size, this.searchPage.getFields()).subscribe(
181 186
      data => {
......
192 197
          if(this.searchUtils.totalResults == 0 ){
193 198
            this.searchUtils.status = errorCodes.NONE;
194 199
          }
195
          this.searchPage.closeLoading();
200
          //this.searchPage.closeLoading();
201
          this.disableForms = false;
196 202
      },
197 203
      err => {
198 204
          console.log(err);
......
202 208
          // }
203 209
          var errorCodes:ErrorCodes = new ErrorCodes();
204 210
          this.searchUtils.status = errorCodes.ERROR;
205
          this.searchPage.closeLoading();
211
          //this.searchPage.closeLoading();
212
          this.disableForms = false;
206 213
      }
207 214
  );
208 215
}
modules/uoa-services-portal/trunk/portal-2/src/app/searchPages/simple/searchPeople.component.ts
19 19
                 type="people" entityType="person" [(filters)] = "filters"
20 20
                 [(results)] = "results" [(searchUtils)] = "searchUtils"
21 21
                 [baseUrl] = "baseUrl" (queryChange)="queryChanged($event)" [showRefine]=false
22
                 [csvParams]="csvParams" csvPath="people" advancedSearchLink="/search/advanced/people">
22
                 [csvParams]="csvParams" csvPath="people" advancedSearchLink="/search/advanced/people"
23
                 [disableForms]="disableForms">
23 24
    </search-page>
24 25

  
25 26
    `
......
35 36
  public searchFields:SearchFields = new SearchFields();
36 37
  public refineFields = this.searchFields.PERSON_REFINE_FIELDS;
37 38
  public csvParams: string;
39
  public disableForms: boolean = false;
38 40

  
39 41
  @ViewChild (SearchPageComponent) searchPage : SearchPageComponent ;
40 42

  
......
78 80

  
79 81
  var errorCodes:ErrorCodes = new ErrorCodes();
80 82
  this.searchUtils.status = errorCodes.LOADING;
81
  this.searchPage.openLoading();
83
  //this.searchPage.openLoading();
84
  this.disableForms = true;
85
  this.results = [];
86
  this.searchUtils.totalResults = 0;
82 87

  
83 88
  this._searchPeopleService.searchPeople(parameters,(refine)?this.searchPage.getRefineFieldsQuery():null, page, size, this.searchPage.getFields()).subscribe(
84 89
      data => {
......
92 97
          if(this.searchUtils.totalResults == 0 ){
93 98
            this.searchUtils.status = errorCodes.NONE;
94 99
          }
95
          this.searchPage.closeLoading();
100
          //this.searchPage.closeLoading();
101
          this.disableForms = false;
96 102
      },
97 103
      err => {
98 104
          console.log(err);
......
102 108
          // }
103 109
          var errorCodes:ErrorCodes = new ErrorCodes();
104 110
          this.searchUtils.status = errorCodes.ERROR;
105
          this.searchPage.closeLoading();
111
          //this.searchPage.closeLoading();
112
          this.disableForms = false;
106 113
      }
107 114
  );
108 115
}
modules/uoa-services-portal/trunk/portal-2/src/app/searchPages/simple/searchOrganizations.component.ts
17 17
                 type="organizations" entityType="organization" [(filters)] = "filters"
18 18
                 [(results)] = "results"  [(searchUtils)] = "searchUtils"
19 19
                 [baseUrl] = "baseUrl" (queryChange)="queryChanged($event)"
20
                 [csvParams]="csvParams" csvPath="organizations" advancedSearchLink="/search/advanced/organizations">
20
                 [csvParams]="csvParams" csvPath="organizations" advancedSearchLink="/search/advanced/organizations"
21
                 [disableForms]="disableForms">
21 22
    </search-page>
22 23

  
23 24
    `
......
36 37
  public urlParams : Map<string, string>;
37 38
  public _location:Location;
38 39
  public csvParams: string;
40
  public disableForms: boolean = false;
39 41

  
40 42
  @ViewChild (SearchPageComponent) searchPage : SearchPageComponent ;
41 43

  
......
92 94
      // }
93 95
      var errorCodes:ErrorCodes = new ErrorCodes();
94 96
      this.searchUtils.status = errorCodes.LOADING;
95
      this.searchPage.openLoading();
97
      //this.searchPage.openLoading();
98
      this.disableForms = true;
99
      this.results = [];
100
      this.searchUtils.totalResults = 0;
96 101

  
97 102
      this.subResults = this._searchOrganizationsService.searchOrganizations(parameters,(refine)?this.searchPage.getRefineFieldsQuery():null, page, size, this.searchPage.getFields()).subscribe(
98 103
          data => {
......
109 114
              if(this.searchUtils.totalResults == 0 ){
110 115
                this.searchUtils.status = errorCodes.NONE;
111 116
              }
112
              this.searchPage.closeLoading();
117
              //this.searchPage.closeLoading();
118
              this.disableForms = false;
113 119
          },
114 120
          err => {
115 121
              console.log(err);
......
119 125
              // }
120 126
              var errorCodes:ErrorCodes = new ErrorCodes();
121 127
              this.searchUtils.status = errorCodes.ERROR;
122
              this.searchPage.closeLoading();
128
              //this.searchPage.closeLoading();
129
              this.disableForms = false;
123 130
          }
124 131
      );
125 132
    }
modules/uoa-services-portal/trunk/portal-2/src/app/searchPages/simple/searchProjects.component.ts
17 17
                 type="projects" entityType="project" [(filters)] = "filters"
18 18
                 [(results)] = "results" [(searchUtils)] = "searchUtils"
19 19
                 [baseUrl] = "baseUrl" (queryChange)="queryChanged($event)"
20
                 [csvParams]="csvParams" csvPath="projects" advancedSearchLink="/search/advanced/projects">
20
                 [csvParams]="csvParams" csvPath="projects" advancedSearchLink="/search/advanced/projects"
21
                 [disableForms]="disableForms">
21 22
    </search-page>
22 23
     `
23 24

  
......
35 36
  public urlParams : Map<string, string>;
36 37
  public _location:Location;
37 38
  public csvParams: string;
39
  public disableForms: boolean = false;
38 40

  
39 41
  @ViewChild (SearchPageComponent) searchPage : SearchPageComponent ;
40 42

  
......
96 98

  
97 99
    var errorCodes:ErrorCodes = new ErrorCodes();
98 100
    this.searchUtils.status = errorCodes.LOADING;
99
    this.searchPage.openLoading();
101
    //this.searchPage.openLoading();
102
    this.disableForms = true;
103
    this.results = [];
104
    this.searchUtils.totalResults = 0;
100 105

  
101 106
  this.subResults = this._searchProjectsService.searchProjects(parameters,(refine)?this.searchPage.getRefineFieldsQuery():null, page, size, this.searchPage.getFields()).subscribe(
102 107
        data => {
......
114 119
            if(this.searchUtils.totalResults == 0 ){
115 120
              this.searchUtils.status = errorCodes.NONE;
116 121
            }
117
            this.searchPage.closeLoading();
122
            //this.searchPage.closeLoading();
123
            this.disableForms = false;
118 124
        },
119 125
        err => {
120 126
            console.log(err);
......
124 130
            // }
125 131
            var errorCodes:ErrorCodes = new ErrorCodes();
126 132
            this.searchUtils.status = errorCodes.ERROR;
127
            this.searchPage.closeLoading();
133
            //this.searchPage.closeLoading();
134
            this.disableForms = false;
128 135
        }
129 136
    );
130 137
  }
modules/uoa-services-portal/trunk/portal-2/src/app/searchPages/simple/searchPublications.component.ts
22 22
                 [(filters)] = "filters" [(results)] = "results"
23 23
                 [(searchUtils)] = "searchUtils"   [(baseUrl)] = baseUrl
24 24
                 (queryChange)="queryChanged($event)" (downloadClick)="downloadClicked($event)"
25
                 [csvParams]="csvParams" csvPath="publications" advancedSearchLink="/search/advanced/publications">
25
                 [csvParams]="csvParams" csvPath="publications" advancedSearchLink="/search/advanced/publications"
26
                 [disableForms]="disableForms">
26 27
    </search-page>
27 28

  
28 29
    `
......
50 51
                  };
51 52
  public CSVDownloaded = false;
52 53
  public csvParams: string;
54
  public disableForms: boolean = false;
53 55

  
54 56
  constructor (private route: ActivatedRoute, private _searchPublicationsService: SearchPublicationsService ) {
55 57
    var errorCodes:ErrorCodes = new ErrorCodes();
......
185 187

  
186 188
  var errorCodes:ErrorCodes = new ErrorCodes();
187 189
  this.searchUtils.status = errorCodes.LOADING;
188
  this.searchPage.openLoading();
190
  //this.searchPage.openLoading();
191
  this.disableForms = true;
192
  this.results = [];
193
  this.searchUtils.totalResults = 0;
189 194

  
190 195
  this.subResults = this._searchPublicationsService.searchPublications(parameters,(refine)?this.searchPage.getRefineFieldsQuery():null, page, size, this.searchPage.getFields()).subscribe(
191 196
      data => {
......
202 207
          if(this.searchUtils.totalResults == 0 ){
203 208
            this.searchUtils.status = errorCodes.NONE;
204 209
          }
205
          this.searchPage.closeLoading();
210
          //this.searchPage.closeLoading();
211
          this.disableForms = false;
206 212
      },
207 213
      err => {
208 214
          console.log(err);
......
212 218
          // }
213 219
          var errorCodes:ErrorCodes = new ErrorCodes();
214 220
          this.searchUtils.status = errorCodes.ERROR;
215
          this.searchPage.closeLoading();
221
          //this.searchPage.closeLoading();
222
          this.disableForms = false;
216 223

  
217 224
      }
218 225
  );

Also available in: Unified diff