-- Migration: Forcer le rafraîchissement de is_member_of_org
-- Date: 2025-11-28
-- Description: Recréer is_member_of_org pour s'assurer qu'elle utilise la version mise à jour de is_staff()

-- D'abord, supprimer la fonction existante
DROP FUNCTION IF EXISTS public.is_member_of_org(uuid);

-- Recréer la fonction avec la bonne logique
CREATE OR REPLACE FUNCTION public.is_member_of_org(target_org uuid)
RETURNS boolean
LANGUAGE sql
STABLE
AS $function$
  select public.is_staff() -- bypass total pour le staff
      or exists (
        select 1
        from public.organization_members om
        where om.org_id = target_org
          and om.user_id = auth.uid()
      );
$function$;

-- Commentaire
COMMENT ON FUNCTION public.is_member_of_org(uuid) IS 
'Vérifie si l''utilisateur est staff (is_staff = true) OU membre de l''organisation';

-- Tester immédiatement
SELECT 
  public.is_staff() as is_staff_result,
  public.is_member_of_org('fba4ad7b-bac7-4ce3-8707-05d220280fb1') as can_access_via_arte;
