From 34f2e61ff3dbde18d2141ad3a197ef0b5e3a17ff Mon Sep 17 00:00:00 2001
From: Amit Sharma <coutamit.s19@gmail.com>
Date: Thu, 9 Mar 2023 12:31:07 +0000
Subject: [PATCH] Added env based odk from files

---
 .../src/components/GenericForm/index.js       | 19 +++++++-----
 .../components/GenericForm/index.module.css   | 30 ++++++++++++++++++-
 apps/wrapper/src/workflow_first.json          |  6 ++--
 packages/form-manager/src/app.controller.ts   |  8 ++---
 4 files changed, 48 insertions(+), 15 deletions(-)

diff --git a/apps/wrapper/src/components/GenericForm/index.js b/apps/wrapper/src/components/GenericForm/index.js
index 122b8ee..025013c 100644
--- a/apps/wrapper/src/components/GenericForm/index.js
+++ b/apps/wrapper/src/components/GenericForm/index.js
@@ -1,6 +1,8 @@
 import React, { useState, useEffect } from 'react';
 import styles from './index.module.css';
 
+const GITPOD_URL = process.env.GITPOD_WORKSPACE_URL
+
 const GenericForm = (props) => {
   const { selectedFlow } = props;
   const formSpec = require(`../../${selectedFlow.config}`);
@@ -12,21 +14,21 @@ const GenericForm = (props) => {
 
   const getFormURI = (form, ofsd, prefillSpec) => {
     console.log(form, ofsd, prefillSpec);
-    return encodeURIComponent(`https://enketo-manager-ratings-tech.samagra.io/?form=${form}&onFormSuccessData=${encodeFunction(ofsd)}&prefillSpec=${encodeFunction(prefillSpec)}`);
+    return encodeURIComponent(`${GITPOD_URL.slice(0, GITPOD_URL.indexOf('/') + 2) + "3006-" + GITPOD_URL.slice(GITPOD_URL.indexOf('/') + 2)}/prefill?form=${form}&onFormSuccessData=${encodeFunction(ofsd)}&prefillSpec=${encodeFunction(prefillSpec)}`);
   }
 
-  const startingForm = formSpec.start;
+  const startingForm = formSpec.startingForm;
   const [formId, setFormId] = useState(startingForm);
   const [encodedFormSpec, setEncodedFormSpec] = useState(encodeURI(JSON.stringify(formSpec.forms[formId])));
   const [onFormSuccessData, setOnFormSuccessData] = useState(undefined);
   const [onFormFailureData, setOnFormFailureData] = useState(undefined);
-  const [encodedFormURI, setEncodedFormURI] = useState(getFormURI(formId, formSpec.forms[formId].onSuccess, formSpec.forms[formId].prefill));
+  const [encodedFormURI, setEncodedFormURI] = useState(getFormURI(formId, formSpec.forms[formId].onFormSuccess, formSpec.forms[formId].prefill));
 
   useEffect(() => {
     // Manage onNext
     window.addEventListener('message', function (e) {
       const data = e.data;
-      
+
       try {
         /* message = {
           nextForm: "formID",
@@ -54,11 +56,14 @@ const GenericForm = (props) => {
 
   return (
     <div className={styles.container}>
-      <div>ODK FORM</div>
+      <div className={styles.header}>
+        <div>Go back</div>
+        <div>{selectedFlow.name}</div>
+      </div>
       <iframe title='current-form'
-        style={{ height: "100vh", width: "100vw" }}
+        className={styles.odkForm}
         src={
-          `http://localhost:8005/preview?formSpec=${encodedFormSpec}&xform=${encodedFormURI}`
+          `${GITPOD_URL.slice(0, GITPOD_URL.indexOf('/') + 2) + "8065-" + GITPOD_URL.slice(GITPOD_URL.indexOf('/') + 2)}/preview?formSpec=${encodedFormSpec}&xform=${encodedFormURI}`
         }
       />
     </div>
diff --git a/apps/wrapper/src/components/GenericForm/index.module.css b/apps/wrapper/src/components/GenericForm/index.module.css
index cc1237d..57d95a0 100644
--- a/apps/wrapper/src/components/GenericForm/index.module.css
+++ b/apps/wrapper/src/components/GenericForm/index.module.css
@@ -1,3 +1,31 @@
 .container {
-    
+    height: 100vh;
+    display: flex;
+    flex-direction: column;
+    gap: 1rem;
+    align-items: center;
+    width: 40vw;
+    padding-bottom: 2rem;
+}
+
+.header {
+    display: flex;
+    flex-direction: row;
+    width: 100%;
+    justify-content: space-between;
+}
+
+.header:nth-child(1) {
+    font-size: 1rem;
+    color: #ffc119;
+}
+
+.header:nth-child(2) {
+    font-size: 3rem;
+    color: #ffc119;
+}
+
+.odkForm {
+    height: 90%;
+    width: 100%;
 }
\ No newline at end of file
diff --git a/apps/wrapper/src/workflow_first.json b/apps/wrapper/src/workflow_first.json
index 23cf8cc..064ced6 100644
--- a/apps/wrapper/src/workflow_first.json
+++ b/apps/wrapper/src/workflow_first.json
@@ -1,9 +1,9 @@
 {
   "forms": {
-    "test": {
+    "nursing": {
       "skipOnSuccessMessage": true,
       "submissionURL": "http://esamwad.samagra.io/api/v4/form/submit",
-      "name": "Test Form",
+      "name": "Nursing Test Form",
       "isSuccess": "async (formData) => { console.log('From isSuccess', formData.getElementsByTagName('reg_no')[0].textContent); return formData.getElementsByTagName('reg_no')[0].textContent === 'registration123'; }",
       "messageOnFailure": "Form submission failed",
       "messageOnSuccess": "Form submitted successfully or Maybe you are already registered",
@@ -44,6 +44,6 @@
       }
     }
   },
-  "startingForm": "test",
+  "startingForm": "nursing",
   "metaData": {}
 }
\ No newline at end of file
diff --git a/packages/form-manager/src/app.controller.ts b/packages/form-manager/src/app.controller.ts
index 6885700..b88643e 100644
--- a/packages/form-manager/src/app.controller.ts
+++ b/packages/form-manager/src/app.controller.ts
@@ -129,10 +129,10 @@ export class AppController {
     }
   };
 
-  @Get()
-  getHello(): string {
-    return this.appService.getHello();
-  }
+  // @Get()
+  // getHello(): string {
+  //   return this.appService.getHello();
+  // }
 
   @Post('prefill')
   getPrefill(@Body() prefillDto: PrefillDto): string {
-- 
GitLab