"use client" import { useState } from "react" import { SettingsCard, SettingsCheckboxRow, SettingsField, SettingsGrid, } from "@/components/settings/settings-kit" import { Button } from "@/components/ui/button" import { Input } from "@/components/ui/input" import { Badge } from "@/components/ui/badge" import { useAdminDriveOrgMountMutations, useAdminDriveOrgMounts, } from "@/lib/api/hooks/use-admin-drive-queries" function mountStatusLabel(status: string) { switch (status) { case "active": return "Actif" case "error": return "Erreur" case "pending": return "En attente" default: return status } } export function DriveOrgWebDAVSection({ embedded = false }: { embedded?: boolean }) { const mounts = useAdminDriveOrgMounts() const { create, remove } = useAdminDriveOrgMountMutations() const [orgSlug, setOrgSlug] = useState("") const [displayName, setDisplayName] = useState("") const [host, setHost] = useState("") const [root, setRoot] = useState("/") const [userName, setUserName] = useState("") const [password, setPassword] = useState("") const [secure, setSecure] = useState(true) const canCreate = orgSlug.trim() && displayName.trim() && host.trim() && userName.trim() && password.trim() const content = ( <>
Le slug d'organisation sert au rattachement administratif. Le volume est monté globalement dans Nextcloud et apparaît dans UltiDrive pour tous les utilisateurs.
{mount.display_name}
{mount.org_slug ?? "—"} · WebDAV · {mount.mount_point}
{mount.last_error ? ({mount.last_error}
) : null}