Update app.py
Browse files
app.py
CHANGED
|
@@ -9,6 +9,7 @@ from process_data import parse_survey_stack_parameters, parse_survey_stack_data,
|
|
| 9 |
|
| 10 |
global parsed_input_data
|
| 11 |
global original_outputs, yaml_outputs
|
|
|
|
| 12 |
|
| 13 |
def process_survey(button_type, submission_id):
|
| 14 |
if button_type == 'data':
|
|
@@ -68,6 +69,12 @@ def display_parameter_survey():
|
|
| 68 |
|
| 69 |
iframe_html = f'<iframe src="{survey_url}" width="100%" height="600px"></iframe>'
|
| 70 |
return iframe_html
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 71 |
|
| 72 |
def display_data_survey():
|
| 73 |
base_url = "https://app.surveystack.io/groups/"
|
|
@@ -88,13 +95,10 @@ def display_data_survey():
|
|
| 88 |
// Listen for messages from the iframe
|
| 89 |
window.addEventListener("message", (event) => {{
|
| 90 |
console.log("Received message from iframe:", event.data);
|
| 91 |
-
|
| 92 |
-
|
| 93 |
-
document.getElementById('submissionData').innerText = submissionData;
|
| 94 |
-
window.parent.updateSubmission(submissionData);
|
| 95 |
}});
|
| 96 |
</script>
|
| 97 |
-
<div id="submissionData" style="display:none;"></div>
|
| 98 |
"""
|
| 99 |
return iframe_html
|
| 100 |
|
|
@@ -122,9 +126,9 @@ with gr.Blocks() as app:
|
|
| 122 |
with gr.Row():
|
| 123 |
data_survey_output = gr.HTML(value=display_data_survey())
|
| 124 |
|
| 125 |
-
survey_submission_ID = gr.Textbox(label="Before submitting your surveystack survey, PLEASE record your submission ID. Type it here.")
|
| 126 |
|
| 127 |
-
data_submit_button = gr.Button("Parse Data")
|
| 128 |
|
| 129 |
get_survey_back = gr.Textbox(label="Data from SurveyStack")
|
| 130 |
|
|
@@ -157,5 +161,6 @@ with gr.Blocks() as app:
|
|
| 157 |
inputs=[survey_submission_ID],
|
| 158 |
outputs=[get_survey_back, parameter_survey_output, data_survey_output, survey_submission_ID, data_submit_button, survey2_submission_ID, param_submit_button]
|
| 159 |
)
|
|
|
|
| 160 |
|
| 161 |
app.launch()
|
|
|
|
| 9 |
|
| 10 |
global parsed_input_data
|
| 11 |
global original_outputs, yaml_outputs
|
| 12 |
+
global survey_submission_ID
|
| 13 |
|
| 14 |
def process_survey(button_type, submission_id):
|
| 15 |
if button_type == 'data':
|
|
|
|
| 69 |
|
| 70 |
iframe_html = f'<iframe src="{survey_url}" width="100%" height="600px"></iframe>'
|
| 71 |
return iframe_html
|
| 72 |
+
|
| 73 |
+
def process_submission():
|
| 74 |
+
global survey_submission_ID
|
| 75 |
+
submission_id = window.parent.gradio_app_submissionId
|
| 76 |
+
print("Submission ID from parent window:", submission_id)
|
| 77 |
+
survey_submission_ID = submission_id
|
| 78 |
|
| 79 |
def display_data_survey():
|
| 80 |
base_url = "https://app.surveystack.io/groups/"
|
|
|
|
| 95 |
// Listen for messages from the iframe
|
| 96 |
window.addEventListener("message", (event) => {{
|
| 97 |
console.log("Received message from iframe:", event.data);
|
| 98 |
+
const submissionData = event.data.payload.submissionId;
|
| 99 |
+
window.parent.gradio_app_submissionId = submissionId;
|
|
|
|
|
|
|
| 100 |
}});
|
| 101 |
</script>
|
|
|
|
| 102 |
"""
|
| 103 |
return iframe_html
|
| 104 |
|
|
|
|
| 126 |
with gr.Row():
|
| 127 |
data_survey_output = gr.HTML(value=display_data_survey())
|
| 128 |
|
| 129 |
+
#survey_submission_ID = gr.Textbox(label="Before submitting your surveystack survey, PLEASE record your submission ID. Type it here.")
|
| 130 |
|
| 131 |
+
data_submit_button = gr.Button(label="Parse Data", fn=process_submission)
|
| 132 |
|
| 133 |
get_survey_back = gr.Textbox(label="Data from SurveyStack")
|
| 134 |
|
|
|
|
| 161 |
inputs=[survey_submission_ID],
|
| 162 |
outputs=[get_survey_back, parameter_survey_output, data_survey_output, survey_submission_ID, data_submit_button, survey2_submission_ID, param_submit_button]
|
| 163 |
)
|
| 164 |
+
|
| 165 |
|
| 166 |
app.launch()
|