| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- "use client";
- import React from "react";
- import { UserPlus } from "lucide-react";
- import {
- Dialog,
- DialogContent,
- DialogDescription,
- DialogHeader,
- DialogTitle,
- DialogTrigger,
- } from "@/components/ui/dialog";
- import { Button } from "@/components/ui/button";
- import CreateUserForm from "@/components/admin/users/create-user/CreateUserForm";
- import { useCreateUserDialog } from "@/components/admin/users/create-user/useCreateUserDialog";
- export default function CreateUserDialog({ disabled = false, onCreated }) {
- const {
- open,
- setOpen,
- form,
- setPatch,
- error,
- policyLines,
- isSubmitting,
- effectiveDisabled,
- handleSubmit,
- handleOpenChange,
- } = useCreateUserDialog({ disabled, onCreated });
- return (
- <Dialog open={open} onOpenChange={handleOpenChange}>
- <DialogTrigger asChild>
- <Button type="button" disabled={disabled} title="Benutzer anlegen">
- <UserPlus className="h-4 w-4" />
- Benutzer anlegen
- </Button>
- </DialogTrigger>
- <DialogContent className="sm:max-w-xl">
- <DialogHeader>
- <DialogTitle>Benutzer anlegen</DialogTitle>
- <DialogDescription>
- Neues Benutzerkonto erstellen. Der Benutzer muss das Passwort beim
- ersten Login ändern.
- </DialogDescription>
- </DialogHeader>
- <CreateUserForm
- form={form}
- setPatch={setPatch}
- error={error}
- policyLines={policyLines}
- isSubmitting={isSubmitting}
- disabled={effectiveDisabled}
- onCancel={() => setOpen(false)}
- onSubmit={handleSubmit}
- />
- </DialogContent>
- </Dialog>
- );
- }
|