Small modifications to instance dialogs
[portal/nonrtric-controlpanel.git] / webapp-frontend / src / app / policy-control / policy-instance-dialog.component.ts
index 60ffbd3..3c330e5 100644 (file)
@@ -29,6 +29,7 @@ import { ErrorDialogService } from '../services/ui/error-dialog.service';
 import { NotificationService } from './../services/ui/notification.service';
 import { UiService } from '../services/ui/ui.service';
 import { HttpErrorResponse } from '@angular/common/http';
+import { FormGroup, FormControl, Validators } from '@angular/forms';
 
 
 @Component({
@@ -49,6 +50,8 @@ import { HttpErrorResponse } from '@angular/common/http';
     ],
 })
 export class PolicyInstanceDialogComponent implements OnInit, AfterViewInit {
+    instanceForm: FormGroup;
+
 
     formActive = false;
     isVisible = {
@@ -120,23 +123,19 @@ export class PolicyInstanceDialogComponent implements OnInit, AfterViewInit {
         this.ui.darkModeState.subscribe((isDark) => {
             this.darkMode = isDark;
         });
+        this.instanceForm = new FormGroup({
+            'ricSelector': new FormControl(this.ric, [
+                Validators.required
+            ])
+        });
         if (!this.policyInstanceId) {
             this.fetchRics();
         }
-        if (this.isSchemaEmpty()) {
-            // Empty schema, hide form, show json instead
-            this.isVisible.form = false;
-            this.isVisible.json = true;
-        }
     }
 
     ngAfterViewInit() {
     }
 
-    private isSchemaEmpty(): boolean {
-        return Object.keys(this.jsonSchemaObject).length === 0;
-    }
-
     onSubmit() {
         if (this.policyInstanceId == null) {
             this.policyInstanceId = uuid.v4();
@@ -145,8 +144,9 @@ export class PolicyInstanceDialogComponent implements OnInit, AfterViewInit {
         const self: PolicyInstanceDialogComponent = this;
         this.dataService.putPolicy(this.policyTypeName, this.policyInstanceId, policyJson, this.ric).subscribe(
             {
-                next(value) {
-                    self.notificationService.success('Policy ' + self.policyTypeName + ':' + self.policyInstanceId + ' submitted');
+                next(_) {
+                    self.notificationService.success('Policy ' + self.policyTypeName + ':' + self.policyInstanceId +
+                    ' submitted');
                 },
                 error(error: HttpErrorResponse) {
                     self.errorService.displayError('Submit failed: ' + error.error);
@@ -164,9 +164,6 @@ export class PolicyInstanceDialogComponent implements OnInit, AfterViewInit {
     }
 
     get prettyLiveFormData(): string {
-        if (this.isSchemaEmpty()) {
-            return this.jsonAsString;
-        }
         return JSON.stringify(this.liveFormData, null, 2);
     }