diff --git a/src/frontend/app/administration/search/search-administration.component.ts b/src/frontend/app/administration/search/search-administration.component.ts
index 8c186b8f9657c7049fc2a18f0f2e936e4049eea7..232aa498a4987a587bcdc9719759da2939a90f5d 100644
--- a/src/frontend/app/administration/search/search-administration.component.ts
+++ b/src/frontend/app/administration/search/search-administration.component.ts
@@ -342,25 +342,26 @@ export class SearchAdministrationComponent implements OnInit {
 
     addData(event: any) {
         const i = this.availableData.map((e: any) => e.value).indexOf(event.option.value.value);
-        if (this.displayedSecondaryData[this.displayedSecondaryData.length - 1].length >= this.selectedTemplateDisplayedSecondaryData) {
+        if ((this.displayedSecondaryData.length === 0) || (this.displayedSecondaryData[this.displayedSecondaryData.length - 1].length >= this.selectedTemplateDisplayedSecondaryData)) {
             this.displayedSecondaryData.push([]);
         }
         this.displayedSecondaryData[this.displayedSecondaryData.length - 1].push(event.option.value);
         this.availableData.splice(i, 1);
+        console.log(this.availableData.indexOf(this.availableData[i]));
         $('#availableData').blur();
         this.dataControl.setValue('');
     }
 
     removeData(rmData: any, i: number, indexDisplayedData) {
         this.availableData.push(rmData);
-        this.displayedSecondaryData[indexDisplayedData].splice(i, 1);
+        this.displayedSecondaryData[indexDisplayedData].splice(i);
         this.dataControl.setValue('');
     }
 
     removeAllData() {
         this.availableData = this.availableData.concat(this.displayedSecondaryData);
-        this.displayedSecondaryData = [];
         this.dataControl.setValue('');
+        this.displayedSecondaryData = [];
     }
 
     drop(event: CdkDragDrop<string[]>) {