luulinh90s commited on
Commit
48b2398
·
1 Parent(s): 506c033
Files changed (1) hide show
  1. app.py +15 -0
app.py CHANGED
@@ -4,6 +4,7 @@ import random
4
  import os
5
  import string
6
  import logging
 
7
 
8
  # Set up logging
9
  logging.basicConfig(level=logging.INFO,
@@ -16,6 +17,9 @@ logger = logging.getLogger(__name__)
16
 
17
  app = Flask(__name__)
18
  app.config['SECRET_KEY'] = 'supersecretkey' # Change this to a random secret key
 
 
 
19
 
20
  # Directories for visualizations
21
  VISUALIZATION_DIRS_PLAN_OF_SQLS = {
@@ -105,6 +109,9 @@ def index():
105
  session['username'] = username # Store the username for later use
106
  session['selected_samples'] = selected_samples # Store selected samples in session
107
  session['method'] = method # Store the method in session
 
 
 
108
 
109
  return redirect(url_for('experiment', username=username, sample_index=0, seed=seed, filename=filename))
110
  except Exception as e:
@@ -118,6 +125,13 @@ def experiment(username, sample_index, seed, filename):
118
  selected_samples = session.get('selected_samples', [])
119
  method = session.get('method')
120
 
 
 
 
 
 
 
 
121
  if sample_index >= len(selected_samples):
122
  return redirect(url_for('completed', filename=filename))
123
 
@@ -154,6 +168,7 @@ def experiment(username, sample_index, seed, filename):
154
  logger.exception(f"An error occurred in the experiment route: {e}")
155
  return "An error occurred", 500
156
 
 
157
  @app.route('/feedback', methods=['POST'])
158
  def feedback():
159
  try:
 
4
  import os
5
  import string
6
  import logging
7
+ from flask_session import Session # Add this import
8
 
9
  # Set up logging
10
  logging.basicConfig(level=logging.INFO,
 
17
 
18
  app = Flask(__name__)
19
  app.config['SECRET_KEY'] = 'supersecretkey' # Change this to a random secret key
20
+ app.config['SESSION_TYPE'] = 'filesystem' # Use filesystem-based session
21
+ Session(app) # Initialize the session extension
22
+
23
 
24
  # Directories for visualizations
25
  VISUALIZATION_DIRS_PLAN_OF_SQLS = {
 
109
  session['username'] = username # Store the username for later use
110
  session['selected_samples'] = selected_samples # Store selected samples in session
111
  session['method'] = method # Store the method in session
112
+ session['filename'] = filename # Store the filename in session
113
+
114
+ logger.info(f"Session data set: {session}") # Log session data
115
 
116
  return redirect(url_for('experiment', username=username, sample_index=0, seed=seed, filename=filename))
117
  except Exception as e:
 
125
  selected_samples = session.get('selected_samples', [])
126
  method = session.get('method')
127
 
128
+ logger.info(f"Experiment route - Session data: {session}") # Log session data
129
+ logger.info(f"Selected samples: {selected_samples}") # Log selected samples
130
+
131
+ if not selected_samples:
132
+ logger.error("No samples in session. Redirecting to index.")
133
+ return redirect(url_for('index'))
134
+
135
  if sample_index >= len(selected_samples):
136
  return redirect(url_for('completed', filename=filename))
137
 
 
168
  logger.exception(f"An error occurred in the experiment route: {e}")
169
  return "An error occurred", 500
170
 
171
+
172
  @app.route('/feedback', methods=['POST'])
173
  def feedback():
174
  try: