nagasurendra commited on
Commit
42a3b7a
·
verified ·
1 Parent(s): 6ee643a

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +9 -13
app.py CHANGED
@@ -131,7 +131,7 @@ def menu():
131
  def cart():
132
  email = session.get('user_email') # Get logged-in user's email
133
  if not email:
134
- return redirect(url_for("login")) # Redirect to login if not logged in
135
 
136
  try:
137
  # Query cart items
@@ -141,20 +141,13 @@ def cart():
141
  WHERE Customer_Email__c = '{email}'
142
  """)
143
  cart_items = result.get("records", [])
144
-
145
- # Calculate the subtotal, including add-ons prices
146
  subtotal = sum(item['Price__c'] * item['Quantity__c'] for item in cart_items)
147
 
148
- # Ensure add-ons are processed properly
149
- for item in cart_items:
150
- item['Add_Ons__c'] = item.get('Add_Ons__c', "None") # Default to "None" if no add-ons
151
-
152
  except Exception as e:
153
  print(f"Error fetching cart items: {e}")
154
- cart_items = []
155
- subtotal = 0
156
 
157
- return render_template("cart.html", cart_items=cart_items, subtotal=subtotal)
158
 
159
 
160
  @app.route('/cart/add', methods=['POST'])
@@ -263,18 +256,21 @@ def get_addons():
263
  except Exception as e:
264
  print(f"Error fetching add-ons: {e}")
265
  return jsonify({"success": False, "error": "Unable to fetch add-ons. Please try again later."})
266
-
267
  @app.route("/cart/update_quantity", methods=["POST"])
268
  def update_quantity():
269
- data = request.json # Extract JSON data from the request
 
 
270
  email = data.get('email') # Customer email
271
  item_name = data.get('item_name') # Item name
272
  quantity = data.get('quantity') # New quantity
273
 
274
- # Validate inputs
275
  if not email or not item_name or quantity is None:
276
  return jsonify({"success": False, "error": "Email, item name, and quantity are required."}), 400
277
 
 
 
 
278
  try:
279
  # Query the cart item in Salesforce
280
  cart_items = sf.query(
 
131
  def cart():
132
  email = session.get('user_email') # Get logged-in user's email
133
  if not email:
134
+ return redirect(url_for("login"))
135
 
136
  try:
137
  # Query cart items
 
141
  WHERE Customer_Email__c = '{email}'
142
  """)
143
  cart_items = result.get("records", [])
 
 
144
  subtotal = sum(item['Price__c'] * item['Quantity__c'] for item in cart_items)
145
 
146
+ return render_template("cart.html", cart_items=cart_items, subtotal=subtotal, customer_email=email)
 
 
 
147
  except Exception as e:
148
  print(f"Error fetching cart items: {e}")
149
+ return render_template("cart.html", cart_items=[], subtotal=0)
 
150
 
 
151
 
152
 
153
  @app.route('/cart/add', methods=['POST'])
 
256
  except Exception as e:
257
  print(f"Error fetching add-ons: {e}")
258
  return jsonify({"success": False, "error": "Unable to fetch add-ons. Please try again later."})
 
259
  @app.route("/cart/update_quantity", methods=["POST"])
260
  def update_quantity():
261
+ data = request.json
262
+ print(f"Incoming request data: {data}") # Debug log
263
+
264
  email = data.get('email') # Customer email
265
  item_name = data.get('item_name') # Item name
266
  quantity = data.get('quantity') # New quantity
267
 
 
268
  if not email or not item_name or quantity is None:
269
  return jsonify({"success": False, "error": "Email, item name, and quantity are required."}), 400
270
 
271
+ # The rest of the logic remains the same
272
+
273
+
274
  try:
275
  # Query the cart item in Salesforce
276
  cart_items = sf.query(