from flask import Blueprint, request, jsonify, render_template
import requests
import os
from config import (
    TEMPLATE_FILE_ID,
    USER_DOCS_FOLDER_ID,
    REVIEW_DOCS_FOLDER_ID,
    FINAL_VERSIONS_FOLDER_ID,
    SHARED_DRIVE_ID,
    FORM_NAME
)
from modules.utils import generate_filename

public_bp = Blueprint("public_bp", __name__)
staff_bp = Blueprint("staff_bp", __name__)

@public_bp.route('/public-entry', methods=['GET'])
def public_entry():
    return render_template('landing.html')

@public_bp.route('/create-working-copy', methods=['POST'])
def create_working_copy():
    user_name = request.form.get("user")

    url = os.getenv("WA_PHASE1_URL")
    payload = { "user": user_name }

    response = requests.post(url, data=payload)
    result = response.json()

    file_id = result["fileId"]

    # Now open the WorkingCopy for the user
    return render_template("working_copy.html", file_id=file_id)

@public_bp.route('/submit-to-review', methods=['POST'])
def submit_to_review():
    file_id = request.form.get("file_id")
    user_name = request.form.get("user")

    url = os.getenv("WA_PHASE2A_URL")
    payload = { "file_id": file_id, "user": user_name }

    response = requests.post(url, data=payload)
    result = response.json()

    review_file_id = result["reviewFileId"]

    return render_template("review_copy.html", file_id=review_file_id)

@staff_bp.route('/staff-dashboard', methods=['GET'])
def staff_dashboard():
    return render_template('staff_dashboard.html')