Spaces:
Build error
Build error
Update templates/index.html
Browse files- templates/index.html +68 -38
templates/index.html
CHANGED
|
@@ -14,6 +14,10 @@
|
|
| 14 |
text-align: center;
|
| 15 |
color: #333;
|
| 16 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
| 17 |
.container {
|
| 18 |
max-width: 800px;
|
| 19 |
margin: 0 auto;
|
|
@@ -22,16 +26,33 @@
|
|
| 22 |
border-radius: 8px;
|
| 23 |
box-shadow: 0 0 10px rgba(0,0,0,0.1);
|
| 24 |
}
|
| 25 |
-
.
|
| 26 |
-
|
|
|
|
|
|
|
| 27 |
}
|
| 28 |
-
.
|
| 29 |
-
|
| 30 |
-
|
| 31 |
-
padding-bottom: 5px;
|
| 32 |
}
|
| 33 |
-
.
|
| 34 |
-
margin:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 35 |
}
|
| 36 |
.output {
|
| 37 |
margin-top: 20px;
|
|
@@ -44,45 +65,54 @@
|
|
| 44 |
content: "No data available";
|
| 45 |
color: #888;
|
| 46 |
}
|
| 47 |
-
.error {
|
| 48 |
-
color: red;
|
| 49 |
-
margin-top: 10px;
|
| 50 |
-
text-align: center;
|
| 51 |
-
}
|
| 52 |
</style>
|
| 53 |
</head>
|
| 54 |
<body>
|
| 55 |
<div class="container">
|
| 56 |
<h1>Construction Supervisor AI Coach</h1>
|
| 57 |
|
| 58 |
-
|
| 59 |
-
<div class="
|
| 60 |
-
|
| 61 |
-
|
| 62 |
-
|
| 63 |
-
<h2>Input Data from Salesforce</h2>
|
| 64 |
-
<p><strong>Supervisor ID:</strong> {{ form_data.supervisor_id | default('') }}</p>
|
| 65 |
-
<p><strong>Role:</strong> {{ form_data.role | default('') }}</p>
|
| 66 |
-
<p><strong>Project ID:</strong> {{ form_data.project_id | default('') }}</p>
|
| 67 |
-
<p><strong>Weather:</strong> {{ form_data.weather | default('') }}</p>
|
| 68 |
-
<p><strong>Milestones:</strong> {{ form_data.milestones | join(', ') | default('') }}</p>
|
| 69 |
-
<p><strong>Reflection:</strong> {{ form_data.reflection | default('') }}</p>
|
| 70 |
-
</div>
|
| 71 |
-
|
| 72 |
-
<div class="section">
|
| 73 |
-
<h2>Generated Output</h2>
|
| 74 |
-
<div class="output">
|
| 75 |
-
<h3>Checklist</h3>
|
| 76 |
-
<p>{{ output.checklist | join('<br>') | default('') | safe }}</p>
|
| 77 |
</div>
|
| 78 |
-
<div
|
| 79 |
-
<
|
| 80 |
-
<
|
| 81 |
</div>
|
| 82 |
-
|
| 83 |
-
|
| 84 |
-
|
|
|
|
|
|
|
| 85 |
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 86 |
</div>
|
| 87 |
</div>
|
| 88 |
</body>
|
|
|
|
| 14 |
text-align: center;
|
| 15 |
color: #333;
|
| 16 |
}
|
| 17 |
+
h2 {
|
| 18 |
+
color: #555;
|
| 19 |
+
margin-top: 30px;
|
| 20 |
+
}
|
| 21 |
.container {
|
| 22 |
max-width: 800px;
|
| 23 |
margin: 0 auto;
|
|
|
|
| 26 |
border-radius: 8px;
|
| 27 |
box-shadow: 0 0 10px rgba(0,0,0,0.1);
|
| 28 |
}
|
| 29 |
+
.row {
|
| 30 |
+
display: flex;
|
| 31 |
+
justify-content: space-between;
|
| 32 |
+
margin-bottom: 15px;
|
| 33 |
}
|
| 34 |
+
.row div {
|
| 35 |
+
flex: 1;
|
| 36 |
+
margin-right: 10px;
|
|
|
|
| 37 |
}
|
| 38 |
+
.row div:last-child {
|
| 39 |
+
margin-right: 0;
|
| 40 |
+
}
|
| 41 |
+
label {
|
| 42 |
+
display: block;
|
| 43 |
+
margin-bottom: 5px;
|
| 44 |
+
font-weight: bold;
|
| 45 |
+
}
|
| 46 |
+
select, input[type="text"], textarea {
|
| 47 |
+
width: 100%;
|
| 48 |
+
padding: 8px;
|
| 49 |
+
border: 1px solid #ccc;
|
| 50 |
+
border-radius: 4px;
|
| 51 |
+
box-sizing: border-box;
|
| 52 |
+
}
|
| 53 |
+
textarea {
|
| 54 |
+
height: 80px;
|
| 55 |
+
resize: vertical;
|
| 56 |
}
|
| 57 |
.output {
|
| 58 |
margin-top: 20px;
|
|
|
|
| 65 |
content: "No data available";
|
| 66 |
color: #888;
|
| 67 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 68 |
</style>
|
| 69 |
</head>
|
| 70 |
<body>
|
| 71 |
<div class="container">
|
| 72 |
<h1>Construction Supervisor AI Coach</h1>
|
| 73 |
|
| 74 |
+
<h2>Input from Salesforce</h2>
|
| 75 |
+
<div class="row">
|
| 76 |
+
<div>
|
| 77 |
+
<label for="supervisor_id">Supervisor ID</label>
|
| 78 |
+
<input type="text" name="supervisor_id" id="supervisor_id" value="{{ form_data.supervisor_id | default('') }}" readonly>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 79 |
</div>
|
| 80 |
+
<div>
|
| 81 |
+
<label for="role">Role</label>
|
| 82 |
+
<input type="text" name="role" id="role" value="{{ form_data.role | default('') }}" readonly>
|
| 83 |
</div>
|
| 84 |
+
</div>
|
| 85 |
+
<div class="row">
|
| 86 |
+
<div>
|
| 87 |
+
<label for="project_id">Project ID</label>
|
| 88 |
+
<input type="text" name="project_id" id="project_id" value="{{ form_data.project_id | default('') }}" readonly>
|
| 89 |
</div>
|
| 90 |
+
<div>
|
| 91 |
+
<label for="weather">Weather</label>
|
| 92 |
+
<input type="text" name="weather" id="weather" value="{{ form_data.weather | default('') }}" readonly>
|
| 93 |
+
</div>
|
| 94 |
+
</div>
|
| 95 |
+
<div>
|
| 96 |
+
<label for="milestones">Milestones (comma-separated)</label>
|
| 97 |
+
<input type="text" name="milestones" id="milestones" value="{{ form_data.milestones | default('') }}" readonly>
|
| 98 |
+
</div>
|
| 99 |
+
<div>
|
| 100 |
+
<label for="reflection">Reflection</label>
|
| 101 |
+
<textarea name="reflection" id="reflection" readonly>{{ form_data.reflection | default('') }}</textarea>
|
| 102 |
+
</div>
|
| 103 |
+
|
| 104 |
+
<h2>Generated Output (Saved to Salesforce)</h2>
|
| 105 |
+
<div class="output">
|
| 106 |
+
<h3>Checklist</h3>
|
| 107 |
+
<p>{{ output.checklist | join('<br>') | default('') | safe }}</p>
|
| 108 |
+
</div>
|
| 109 |
+
<div class="output">
|
| 110 |
+
<h3>Suggestions</h3>
|
| 111 |
+
<p>{{ output.tips | join('<br>') | default('') | safe }}</p>
|
| 112 |
+
</div>
|
| 113 |
+
<div class="output">
|
| 114 |
+
<h3>Quote</h3>
|
| 115 |
+
<p>{{ output.quote | default('') }}</p>
|
| 116 |
</div>
|
| 117 |
</div>
|
| 118 |
</body>
|