import face_recognition
import os
import sys

# ===== PATHS =====
UPLOAD_PATH = "/home/onestore/public_html/uploads"
TEMP_IMAGE = "/home/onestore/public_html/face_api/temp.jpg"

# ===== LOAD UNKNOWN IMAGE =====
try:
    unknown_img = face_recognition.load_image_file(TEMP_IMAGE)
except:
    print("")
    sys.exit()

unknown_encodings = face_recognition.face_encodings(unknown_img)

# No face detected
if len(unknown_encodings) == 0:
    print("")
    sys.exit()

unknown_enc = unknown_encodings[0]

# ===== MATCH LOOP (FAST) =====
for file in os.listdir(UPLOAD_PATH):

    if not file.lower().endswith(".jpg"):
        continue

    path = os.path.join(UPLOAD_PATH, file)

    try:
        known_img = face_recognition.load_image_file(path)
        known_encodings = face_recognition.face_encodings(known_img)
    except:
        continue

    if len(known_encodings) == 0:
        continue

    # ⚡ FAST MATCH (early exit)
    if face_recognition.compare_faces([known_encodings[0]], unknown_enc, tolerance=0.6)[0]:
        print(file.split("_")[1])  # extract user ID
        sys.exit()

# ===== NO MATCH =====
print("")