using Microsoft.EntityFrameworkCore; using System.ComponentModel.DataAnnotations; using System.ComponentModel; using System.ComponentModel.DataAnnotations.Schema; namespace bitforum.Models.BBS { [Table("CommentMeta")] public class CommentMeta() { [ForeignKey("BoardID")] public Board Board { get; set; } = null!; [Key] [DatabaseGenerated(DatabaseGeneratedOption.Identity)] [DisplayName("PK")] [Comment("PK")] public int ID { get; set; } [Required] [DisplayName("게시판 ID")] [Comment("게시판 ID")] public int BoardID { get; set; } [DisplayName("댓글 사용")] [Comment("댓글 사용")] public bool EnableComment { get; set; } = false; [DisplayName("목록 표시")] [Comment("목록 표시")] public ushort PerPage { get; set; } = 0; [DisplayName("댓글 공감 사용")] [Comment("댓글 공감 사용")] public bool AllowLike { get; set; } = false; [DisplayName("댓글 비공감 사용")] [Comment("댓글 비공감 사용")] public bool AllowDisLike { get; set; } = false; [DisplayName("회원 사진 공개")] [Comment("회원 사진 공개")] public bool ShowMemberPhoto { get; set; } = false; [DisplayName("회원 아이콘 공개")] [Comment("회원 아이콘 공개")] public bool ShowMemberIcon { get; set; } = false; [DisplayName("안내 문구")] [Comment("안내 문구")] [StringLength(1000)] public string? ContentPlaceholder { get; set; } = null; [DisplayName("최소 입력 글자")] [Comment("최소 입력 글자")] public ushort MinContentLength { get; set; } = 0; [DisplayName("최대 입력 글자")] [Comment("최대 입력 글자")] public ushort MaxContentLength { get; set; } = 0; [DisplayName("웹 에디터 사용")] [Comment("웹 에디터 사용")] public bool EnableEditor { get; set; } = false; [DisplayName("비밀글 사용")] [Comment("비밀글 사용")] public bool AllowSecret { get; set; } = false; [DisplayName("댓글 신고 시 숨김")] [Comment("댓글 신고 시 숨김")] public ushort BlameHideCount { get; set; } = 0; [DisplayName("댓글 삭제 금지 기간")] [Comment("댓글 삭제 금지 기간")] public ushort DeleteProtectionDays { get; set; } = 0; [DisplayName("댓글 수정 금지 기간")] [Comment("댓글 수정 금지 기간")] public ushort UpdateProtectionDays { get; set; } = 0; [DisplayName("댓글 보호 기능 (삭제 시)")] [Comment("댓글 보호 기능 (삭제 시)")] public bool AllowDeleteProtection { get; set; } = false; [DisplayName("댓글 보호 기능 (수정 시)")] [Comment("댓글 보호 기능 (수정 시)")] public bool AllowUpdateProtection { get; set; } = false; [DisplayName("댓글 변경 기록")] [Comment("댓글 변경 기록")] public bool EnableCommentUpdateLog { get; set; } = false; } }