34 lines
893 B
TypeScript
34 lines
893 B
TypeScript
import { Button } from "@/components/ui/button";
|
|
|
|
interface AdminButtonProps {
|
|
user: any;
|
|
}
|
|
|
|
/**
|
|
* 관리자 버튼 컴포넌트
|
|
*/
|
|
export function AdminButton({ user }: AdminButtonProps) {
|
|
// 디버깅용 로그
|
|
console.log("=== AdminButton 디버깅 ===");
|
|
console.log("user:", user);
|
|
console.log("user?.userType:", user?.userType);
|
|
console.log("user?.isAdmin:", user?.isAdmin);
|
|
|
|
// 관리자 권한이 있는 사용자만 Admin 버튼 표시
|
|
if (!user || (!user.isAdmin && user.userType !== "admin")) {
|
|
return null;
|
|
}
|
|
|
|
const handleAdminClick = () => {
|
|
// 새 탭으로 관리자 페이지 열기 (토큰 공유를 위해)
|
|
const adminUrl = `${window.location.origin}/admin`;
|
|
window.open(adminUrl, "_blank");
|
|
};
|
|
|
|
return (
|
|
<Button variant="outline" size="sm" className="cursor-pointer" onClick={handleAdminClick}>
|
|
Admin
|
|
</Button>
|
|
);
|
|
}
|