summaryrefslogtreecommitdiff
path: root/lib/email-template/table
diff options
context:
space:
mode:
Diffstat (limited to 'lib/email-template/table')
-rw-r--r--lib/email-template/table/template-table-columns.tsx14
-rw-r--r--lib/email-template/table/update-template-sheet.tsx26
2 files changed, 25 insertions, 15 deletions
diff --git a/lib/email-template/table/template-table-columns.tsx b/lib/email-template/table/template-table-columns.tsx
index d20739cc..a678a20a 100644
--- a/lib/email-template/table/template-table-columns.tsx
+++ b/lib/email-template/table/template-table-columns.tsx
@@ -248,20 +248,20 @@ export function getColumns({ setRowAction }: GetColumnsProps): ColumnDef<Templat
</DropdownMenuTrigger>
<DropdownMenuContent align="end" className="w-40">
<DropdownMenuItem asChild>
- <Link href={`/evcp/templates/${template.slug}`}>
+ <Link href={`/evcp/email-template/${template.slug}`}>
<Eye className="mr-2 size-4" aria-hidden="true" />
- 보기
+ 상세 보기
</Link>
</DropdownMenuItem>
- <DropdownMenuItem
+ {/* <DropdownMenuItem
onClick={() => {
setRowAction({ type: "update", row })
}}
>
<Edit className="mr-2 size-4" aria-hidden="true" />
- 수정
- </DropdownMenuItem>
+ 업데이트
+ </DropdownMenuItem> */}
<DropdownMenuItem
onClick={() => {
@@ -269,7 +269,7 @@ export function getColumns({ setRowAction }: GetColumnsProps): ColumnDef<Templat
}}
>
<Copy className="mr-2 size-4" aria-hidden="true" />
- 복제
+ 복제하기
</DropdownMenuItem>
<DropdownMenuSeparator />
@@ -281,7 +281,7 @@ export function getColumns({ setRowAction }: GetColumnsProps): ColumnDef<Templat
className="text-destructive focus:text-destructive"
>
<Trash className="mr-2 size-4" aria-hidden="true" />
- 삭제
+ 삭제하기
</DropdownMenuItem>
</DropdownMenuContent>
</DropdownMenu>
diff --git a/lib/email-template/table/update-template-sheet.tsx b/lib/email-template/table/update-template-sheet.tsx
index 58da0626..d3df93f0 100644
--- a/lib/email-template/table/update-template-sheet.tsx
+++ b/lib/email-template/table/update-template-sheet.tsx
@@ -7,6 +7,7 @@ import { Loader } from "lucide-react"
import { useForm } from "react-hook-form"
import { toast } from "sonner"
import { z } from "zod"
+import { useSession } from "next-auth/react"
import { Button } from "@/components/ui/button"
import {
@@ -55,6 +56,13 @@ interface UpdateTemplateSheetProps
export function UpdateTemplateSheet({ template, ...props }: UpdateTemplateSheetProps) {
const [isUpdatePending, startUpdateTransition] = React.useTransition()
+ const { data: session } = useSession();
+
+ // 또는 더 안전하게
+ if (!session?.user?.id) {
+ toast.error("로그인이 필요합니다")
+ return
+ }
const form = useForm<UpdateTemplateSchema>({
resolver: zodResolver(updateTemplateSchema),
@@ -85,8 +93,10 @@ export function UpdateTemplateSheet({ template, ...props }: UpdateTemplateSheetP
const { error } = await updateTemplateAction(template.slug, {
name: input.name,
description: input.description || undefined,
+ category: input.category === "none" ? undefined : input.category, // 여기서 변환
+
// category는 일반적으로 수정하지 않는 것이 좋지만, 필요시 포함
- updatedBy: currentUserId,
+ updatedBy: Number(session.user.id),
})
if (error) {
@@ -165,13 +175,13 @@ export function UpdateTemplateSheet({ template, ...props }: UpdateTemplateSheetP
</SelectTrigger>
</FormControl>
<SelectContent>
- <SelectItem value="">카테고리 없음</SelectItem>
- {TEMPLATE_CATEGORY_OPTIONS.map((option) => (
- <SelectItem key={option.value} value={option.value}>
- {option.label}
- </SelectItem>
- ))}
- </SelectContent>
+ <SelectItem value="none">카테고리 없음</SelectItem>
+ {TEMPLATE_CATEGORY_OPTIONS.map((option) => (
+ <SelectItem key={option.value} value={option.value}>
+ {option.label}
+ </SelectItem>
+ ))}
+</SelectContent>
</Select>
<FormMessage />
</FormItem>