CREATE OR REPLACE FUNCTION public.fn_admin_update_email_template(p_template_key character varying, p_language character varying, p_subject character varying, p_body_html text, p_body_text text)
 RETURNS jsonb
 LANGUAGE plpgsql
AS $function$
BEGIN
    UPDATE public.email_templates
    SET subject    = p_subject,
        body_html  = p_body_html,
        body_text  = p_body_text,
        updated_at = NOW()
    WHERE template_key = p_template_key
      AND language     = p_language;

    IF NOT FOUND THEN
        RETURN jsonb_build_object('error', 'Plantilla no encontrada.');
    END IF;

    RETURN jsonb_build_object('success', true);
END;
$function$
;
