from flask import Blueprint, flash, redirect, render_template, request, url_for
from flask_login import login_required

from app.helpers import copropriete_required, ensure_copropriete_access_by_public_id
from app.models import db

bp = Blueprint("coproprietes", __name__, url_prefix="/coproprietes")


@bp.route("/<uuid:copro_id>/edit", methods=["GET", "POST"])
@login_required
@copropriete_required
def edit(copropriete, copro_id):
    copro = ensure_copropriete_access_by_public_id(copro_id)
    if request.method == "POST":
        copro.nom = request.form.get("nom", "").strip() or copro.nom
        copro.adresse = request.form.get("adresse", "").strip()
        copro.notes = request.form.get("notes", "").strip()
        db.session.commit()
        flash("Copropriété mise à jour.", "success")
        return redirect(url_for("main.dashboard"))
    return render_template("coproprietes/edit.html", copro=copro)
