import frappe import json from frappe.auth import LoginManager @frappe.whitelist(allow_guest=True) def customer_login(): """ Handles customer signin by validating user credentials. """ form_data = json.loads(frappe.request.data) login_manager = LoginManager() login_manager.authenticate(form_data.get("email"), form_data.get("password")) login_manager.post_login() if frappe.response["message"] == "Logged In": user = login_manager.user user_details = frappe.get_doc("User", user) frappe.response["user_details"] = { "api_key" : user_details.api_key, "api_secret" : user_details.get_password("api_secret") } else: return False @frappe.whitelist(allow_guest=True) def forgot_password(): # Get the form data from the request form_data = json.loads(frappe.request.data) if not frappe.db.exists("User", form_data.get("email")): return {"error": "User with this email does not exist"} if send_login_link(form_data.get("email")): return {"data": "Password reset link sent to your email."}