From c062b58b3f4e19dfef9a31252cb7eff73e4e4efd Mon Sep 17 00:00:00 2001
From: Erik Kimmel <erik.kimmel@inra.fr>
Date: Tue, 9 Jul 2019 15:19:14 +0200
Subject: [PATCH 1/3] feat: add orderURL field in the holding section.
 GNP-5096.

---
 .../app/germplasm-card/germplasm-card.component.html  | 11 +++++++++++
 frontend/src/app/models/gnpis.model.ts                |  1 +
 2 files changed, 12 insertions(+)

diff --git a/frontend/src/app/germplasm-card/germplasm-card.component.html b/frontend/src/app/germplasm-card/germplasm-card.component.html
index 7d8b923b..24bf509b 100644
--- a/frontend/src/app/germplasm-card/germplasm-card.component.html
+++ b/frontend/src/app/germplasm-card/germplasm-card.component.html
@@ -345,6 +345,17 @@
           [value]="germplasmGnpis.presenceStatus">
         </faidare-card-row>
 
+        <faidare-card-row
+          label="Order"
+          [value]="germplasmGnpis.orderURL">
+          <ng-template *ngIf="germplasmGnpis.orderURL.startsWith('See conditions')">
+            {{germplasmGnpis.orderURL}}
+          </ng-template>
+          <ng-template *ngIf="!germplasmGnpis.orderURL.startsWith('See conditions')">
+            <a [href]="germplasmGnpis.orderURL" target="_blank">Order link</a>
+          </ng-template>
+        </faidare-card-row>
+
       </div>
     </ng-template>
   </faidare-card-section>
diff --git a/frontend/src/app/models/gnpis.model.ts b/frontend/src/app/models/gnpis.model.ts
index edee6ddf..047c178c 100644
--- a/frontend/src/app/models/gnpis.model.ts
+++ b/frontend/src/app/models/gnpis.model.ts
@@ -23,6 +23,7 @@ export interface Germplasm extends BrapiGermplasm {
     panel: GermplasmSet[];
     collection: GermplasmSet[];
     population: GermplasmSet[];
+    orderURL: string;
 }
 
 export interface Site {
-- 
GitLab


From 9673e86530e3e468de631c20235b78da5772a5f8 Mon Sep 17 00:00:00 2001
From: Erik Kimmel <erik.kimmel@inra.fr>
Date: Tue, 9 Jul 2019 15:51:53 +0200
Subject: [PATCH 2/3] test: fix failing tests. GNP-5096.

---
 frontend/src/app/brapi.service.spec.ts                         | 3 ++-
 .../src/app/germplasm-card/germplasm-card.component.spec.ts    | 3 ++-
 frontend/src/app/models/gnpis.model.ts                         | 2 +-
 3 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/frontend/src/app/brapi.service.spec.ts b/frontend/src/app/brapi.service.spec.ts
index 58330188..56238ce8 100644
--- a/frontend/src/app/brapi.service.spec.ts
+++ b/frontend/src/app/brapi.service.spec.ts
@@ -299,7 +299,8 @@ describe('BrapiService', () => {
         distributors: [origin],
         panel: [germplasmSet],
         collection: [germplasmSet],
-        population: [germplasmSet]
+        population: [germplasmSet],
+        orderURL: 'test'
     };
 
     let brapiService: BrapiService;
diff --git a/frontend/src/app/germplasm-card/germplasm-card.component.spec.ts b/frontend/src/app/germplasm-card/germplasm-card.component.spec.ts
index 04735dd5..6030db16 100644
--- a/frontend/src/app/germplasm-card/germplasm-card.component.spec.ts
+++ b/frontend/src/app/germplasm-card/germplasm-card.component.spec.ts
@@ -186,7 +186,8 @@ describe('GermplasmCardComponent', () => {
         panel: [gnpisGermplasmSet],
         collection: [gnpisGermplasmSet],
         population: [gnpisGermplasmSet],
-        'schema:includedInDataCatalog': source
+        'schema:includedInDataCatalog': source,
+        orderURL: ''
     };
 
     const gnpisService = jasmine.createSpyObj(
diff --git a/frontend/src/app/models/gnpis.model.ts b/frontend/src/app/models/gnpis.model.ts
index 047c178c..2f454276 100644
--- a/frontend/src/app/models/gnpis.model.ts
+++ b/frontend/src/app/models/gnpis.model.ts
@@ -23,7 +23,7 @@ export interface Germplasm extends BrapiGermplasm {
     panel: GermplasmSet[];
     collection: GermplasmSet[];
     population: GermplasmSet[];
-    orderURL: string;
+    orderURL?: string;
 }
 
 export interface Site {
-- 
GitLab


From 659d7e0da9713314052d08112d8ab2d5cadc2252 Mon Sep 17 00:00:00 2001
From: Erik Kimmel <erik.kimmel@inra.fr>
Date: Fri, 12 Jul 2019 14:54:16 +0200
Subject: [PATCH 3/3] Split orderURL field in two distinct fields, one
 (orderURL) used to store only real URL and the other one (orderText) to store
 strings. GNP-5426.

---
 frontend/src/app/brapi.service.spec.ts              |  3 ++-
 .../germplasm-card/germplasm-card.component.html    | 13 +++++++++----
 .../germplasm-card/germplasm-card.component.spec.ts |  3 ++-
 frontend/src/app/models/gnpis.model.ts              |  1 +
 4 files changed, 14 insertions(+), 6 deletions(-)

diff --git a/frontend/src/app/brapi.service.spec.ts b/frontend/src/app/brapi.service.spec.ts
index 56238ce8..84a396a7 100644
--- a/frontend/src/app/brapi.service.spec.ts
+++ b/frontend/src/app/brapi.service.spec.ts
@@ -300,7 +300,8 @@ describe('BrapiService', () => {
         panel: [germplasmSet],
         collection: [germplasmSet],
         population: [germplasmSet],
-        orderURL: 'test'
+        orderURL: 'test',
+        orderText: 'test'
     };
 
     let brapiService: BrapiService;
diff --git a/frontend/src/app/germplasm-card/germplasm-card.component.html b/frontend/src/app/germplasm-card/germplasm-card.component.html
index 24bf509b..9f71f02b 100644
--- a/frontend/src/app/germplasm-card/germplasm-card.component.html
+++ b/frontend/src/app/germplasm-card/germplasm-card.component.html
@@ -348,14 +348,19 @@
         <faidare-card-row
           label="Order"
           [value]="germplasmGnpis.orderURL">
-          <ng-template *ngIf="germplasmGnpis.orderURL.startsWith('See conditions')">
-            {{germplasmGnpis.orderURL}}
-          </ng-template>
-          <ng-template *ngIf="!germplasmGnpis.orderURL.startsWith('See conditions')">
+          <ng-template>
             <a [href]="germplasmGnpis.orderURL" target="_blank">Order link</a>
           </ng-template>
         </faidare-card-row>
 
+        <faidare-card-row
+          label="Order"
+          [value]="germplasmGnpis.orderText">
+          <ng-template>
+            {{ germplasmGnpis.orderText }}
+          </ng-template>
+        </faidare-card-row>
+
       </div>
     </ng-template>
   </faidare-card-section>
diff --git a/frontend/src/app/germplasm-card/germplasm-card.component.spec.ts b/frontend/src/app/germplasm-card/germplasm-card.component.spec.ts
index 6030db16..74e6da58 100644
--- a/frontend/src/app/germplasm-card/germplasm-card.component.spec.ts
+++ b/frontend/src/app/germplasm-card/germplasm-card.component.spec.ts
@@ -187,7 +187,8 @@ describe('GermplasmCardComponent', () => {
         collection: [gnpisGermplasmSet],
         population: [gnpisGermplasmSet],
         'schema:includedInDataCatalog': source,
-        orderURL: ''
+        orderURL: '',
+        orderText: ''
     };
 
     const gnpisService = jasmine.createSpyObj(
diff --git a/frontend/src/app/models/gnpis.model.ts b/frontend/src/app/models/gnpis.model.ts
index 2f454276..8b4510ba 100644
--- a/frontend/src/app/models/gnpis.model.ts
+++ b/frontend/src/app/models/gnpis.model.ts
@@ -24,6 +24,7 @@ export interface Germplasm extends BrapiGermplasm {
     collection: GermplasmSet[];
     population: GermplasmSet[];
     orderURL?: string;
+    orderText?: string;
 }
 
 export interface Site {
-- 
GitLab