implement set default view button
authorGalen Charlton <gmc@equinoxinitiative.org>
Fri, 17 Apr 2020 20:29:36 +0000 (16:29 -0400)
committerGalen Charlton <gmc@equinoxinitiative.org>
Fri, 17 Apr 2020 20:29:36 +0000 (16:29 -0400)
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Open-ILS/src/eg2/src/app/staff/acq/provider/acq-provider.component.html
Open-ILS/src/eg2/src/app/staff/acq/provider/acq-provider.component.ts

index 6a5d0d2..1c319d3 100644 (file)
     <ngb-tabset #acqProviderTabs [activeId]="activeTab" (tabChange)="onTabChange($event)">
       <ngb-tab title="Provider" i18n-title id="details" [disabled]="!id">
         <ng-template ngbTabContent>
+          <div class="row mt-3">
+            <div class="col-lg-12 text-right">
+              <button class="btn btn-secondary btn-sm" [disabled]="activeTab == defaultTabType"
+                (click)="setDefaultTab()" i18n>Set Default View</button>
+            </div>
+          </div>
           <eg-provider-details #providerDetails (desireSummarize)="onDesireSummarize($event, true)"></eg-provider-details>
         </ng-template>
       </ngb-tab>
       <ngb-tab title="Addresses" i18n-title id="addresses" [disabled]="!id">
         <ng-template ngbTabContent>
+          <div class="row mt-3">
+            <div class="col-lg-12 text-right">
+              <button class="btn btn-secondary btn-sm" [disabled]="activeTab == defaultTabType"
+                (click)="setDefaultTab()" i18n>Set Default View</button>
+            </div>
+          </div>
           <eg-provider-addresses></eg-provider-addresses>
         </ng-template>
       </ngb-tab>
       <ngb-tab title="Contacts" i18n-title id="contacts" [disabled]="!id">
         <ng-template ngbTabContent>
+          <div class="row mt-3">
+            <div class="col-lg-12 text-right">
+              <button class="btn btn-secondary btn-sm" [disabled]="activeTab == defaultTabType"
+                (click)="setDefaultTab()" i18n>Set Default View</button>
+            </div>
+          </div>
           <eg-provider-contacts (desireSummarize)="onDesireSummarize($event, true)"></eg-provider-contacts>
         </ng-template>
       </ngb-tab>
       <ngb-tab title="Attribute Definitions" i18n-title id="attributes" [disabled]="!id">
         <ng-template ngbTabContent>
+          <div class="row mt-3">
+            <div class="col-lg-12 text-right">
+              <button class="btn btn-secondary btn-sm" [disabled]="activeTab == defaultTabType"
+                (click)="setDefaultTab()" i18n>Set Default View</button>
+            </div>
+          </div>
           <eg-provider-attributes></eg-provider-attributes>
         </ng-template>
       </ngb-tab>
       <ngb-tab title="Holdings Definitions" i18n-title id="holdings" [disabled]="!id">
         <ng-template ngbTabContent>
+          <div class="row mt-3">
+            <div class="col-lg-12 text-right">
+              <button class="btn btn-secondary btn-sm" [disabled]="activeTab == defaultTabType"
+                (click)="setDefaultTab()" i18n>Set Default View</button>
+            </div>
+          </div>
           <eg-provider-holdings></eg-provider-holdings>
         </ng-template>
       </ngb-tab>
       <ngb-tab title="EDI" i18n-title id="edi_accounts" [disabled]="!id">
         <ng-template ngbTabContent>
+          <div class="row mt-3">
+            <div class="col-lg-12 text-right">
+              <button class="btn btn-secondary btn-sm" [disabled]="activeTab == defaultTabType"
+                (click)="setDefaultTab()" i18n>Set Default View</button>
+            </div>
+          </div>
           <eg-provider-edi-accounts (desireSummarize)="onDesireSummarize($event, true)"></eg-provider-edi-accounts>
         </ng-template>
       </ngb-tab>
       <ngb-tab title="Invoices" i18n-title id="invoices" [disabled]="!id">
         <ng-template ngbTabContent>
+          <div class="row mt-3">
+            <div class="col-lg-12 text-right">
+              <button class="btn btn-secondary btn-sm" [disabled]="activeTab == defaultTabType"
+                (click)="setDefaultTab()" i18n>Set Default View</button>
+            </div>
+          </div>
           <eg-provider-invoices></eg-provider-invoices>
         </ng-template>
       </ngb-tab>
       <ngb-tab title="POs" i18n-title id="purchase_orders" [disabled]="!id">
         <ng-template ngbTabContent>
+          <div class="row mt-3">
+            <div class="col-lg-12 text-right">
+              <button class="btn btn-secondary btn-sm" [disabled]="activeTab == defaultTabType"
+                (click)="setDefaultTab()" i18n>Set Default View</button>
+            </div>
+          </div>
           <eg-provider-purchase-orders></eg-provider-purchase-orders>
         </ng-template>
       </ngb-tab>
index 4dcadbe..06ef1cb 100644 (file)
@@ -11,6 +11,7 @@ import {FmRecordEditorComponent} from '@eg/share/fm-editor/fm-editor.component';
 import {StringComponent} from '@eg/share/string/string.component';
 import {ToastService} from '@eg/share/toast/toast.service';
 import {AuthService} from '@eg/core/auth.service';
+import {StoreService} from '@eg/core/store.service';
 
 @Component({
   templateUrl: './acq-provider.component.html'
@@ -42,6 +43,7 @@ export class AcqProviderComponent implements OnInit, AfterViewInit {
         private idl: IdlService,
         private providerRecord: ProviderRecordService,
         private toast: ToastService,
+        private store: StoreService
     ) {
     }
 
@@ -51,6 +53,9 @@ export class AcqProviderComponent implements OnInit, AfterViewInit {
         const tabTypeParam = this.route.snapshot.paramMap.get('tab');
         const idParam = this.route.snapshot.paramMap.get('id');
 
+        this.defaultTabType =
+            this.store.getLocalItem('eg.acq.provider.default_tab') || 'details';
+
         if (idParam) {
             this.showSearchForm = false;
             this.id = idParam;
@@ -103,6 +108,11 @@ export class AcqProviderComponent implements OnInit, AfterViewInit {
 
     ngAfterViewInit() {}
 
+    setDefaultTab() {
+        this.defaultTabType = this.activeTab;
+        this.store.setLocalItem('eg.acq.provider.default_tab', this.recordTab);
+    }
+
     createNew() {
         this.createDialog.mode = 'create';
         const provider = this.idl.create('acqpro');