示例#1
0
        public static string ToFriendlyString(this BoardWriteFormType bwft)
        {
            string r = "";

            switch (bwft)
            {
            case BoardWriteFormType.Write:
                r = "글 쓰기 페이지";
                break;

            case BoardWriteFormType.Modify:
                r = "글 수정 페이지";
                break;

            case BoardWriteFormType.Reply:
                r = "글 답변 페이지";
                break;

            default:
                r = "글 쓰기 페이지";
                break;
            }

            return(r);
        }
示例#2
0
        /// <summary>
        /// 데이터 저장, 수정, 답변 공통 메서드
        /// </summary>
        public int SaveOrUpdate(Note n, BoardWriteFormType formType)
        {
            int r = 0;

            // 파라미터 추가
            var p = new DynamicParameters();

            //[a] 공통
            p.Add("@Name", value: n.Name, dbType: DbType.String);
            p.Add("@Email", value: n.Email, dbType: DbType.String);
            p.Add("@Title", value: n.Title, dbType: DbType.String);
            p.Add("@Content", value: n.Content, dbType: DbType.String);
            p.Add("@Password", value: n.Password, dbType: DbType.String);
            p.Add("@Encoding", value: n.Encoding, dbType: DbType.String);
            p.Add("@Homepage", value: n.Homepage, dbType: DbType.String);
            p.Add("@FileName", value: n.FileName, dbType: DbType.String);
            p.Add("@FileSize", value: n.FileSize, dbType: DbType.Int32);

            p.Add("@Category", value: n.Category, dbType: DbType.String); // 추가

            switch (formType)
            {
            case BoardWriteFormType.Write:
                //[b] 글쓰기 전용
                p.Add("@PostIp", value: n.PostIp, dbType: DbType.String);

                r = con.Execute("WriteNote", p
                                , commandType: CommandType.StoredProcedure);
                break;

            case BoardWriteFormType.Modify:
                //[b] 수정하기 전용
                p.Add("@ModifyIp",
                      value: n.ModifyIp, dbType: DbType.String);
                p.Add("@Id", value: n.Id, dbType: DbType.Int32);

                r = con.Execute("ModifyNote", p,
                                commandType: CommandType.StoredProcedure);
                break;

            case BoardWriteFormType.Reply:
                //[b] 답변쓰기 전용
                p.Add("@PostIp", value: n.PostIp, dbType: DbType.String);
                p.Add("@ParentNum",
                      value: n.ParentNum, dbType: DbType.Int32);

                r = con.Execute("ReplyNote", p,
                                commandType: CommandType.StoredProcedure);
                break;
            }

            return(r);
        }
示例#3
0
        /// <summary>
        /// 데이터 저장, 수정, 답변 공통 메서드
        /// </summary>
        public int SaveOrUpdate(ArticleBase model, BoardWriteFormType formType)
        {
            int r = 0;

            // 파라미터 추가
            var p = new DynamicParameters();

            //[a] 공통
            p.Add("@Name", value: model.Name, dbType: DbType.String);
            p.Add("@Email", value: model.Email, dbType: DbType.String);
            p.Add("@Title", value: model.Title, dbType: DbType.String);
            p.Add("@Content", value: model.Content, dbType: DbType.String);
            p.Add("@Password", value: model.Password, dbType: DbType.String);
            p.Add("@Encoding", value: model.Encoding, dbType: DbType.String);
            p.Add("@Homepage", value: model.Homepage, dbType: DbType.String);
            p.Add("@FileName", value: model.FileName, dbType: DbType.String);
            p.Add("@FileSize", value: model.FileSize, dbType: DbType.Int32);
            p.Add("@Category", value: model.Category, dbType: DbType.String);

            p.Add("@UserName", value: model.UserName, dbType: DbType.String); // 사용자 아이디

            switch (formType)
            {
            case BoardWriteFormType.Write:
                //[b] 글쓰기 전용
                p.Add("@PostIp", value: model.PostIp, dbType: DbType.String);

                r = db.Execute("SupportsWrite", p, commandType: CommandType.StoredProcedure);
                break;

            case BoardWriteFormType.Modify:
                //[b] 수정하기 전용
                p.Add("@ModifyIp", value: model.ModifyIp, dbType: DbType.String);
                p.Add("@Id", value: model.Id, dbType: DbType.Int32);

                r = db.Execute("SupportsModify", p, commandType: CommandType.StoredProcedure);
                break;

            case BoardWriteFormType.Reply:
                //[b] 답변쓰기 전용
                p.Add("@PostIp", value: model.PostIp, dbType: DbType.String);
                p.Add("@ParentNum", value: model.ParentNum, dbType: DbType.Int32);

                r = db.Execute("SupportsReply", p, commandType: CommandType.StoredProcedure);
                break;
            }

            return(r);
        }
示例#4
0
        private int _FileSize    = 0;  //파일크기

        protected void Page_Load(object sender, EventArgs e)
        {
            _Id = Request["Id"];  // GET / POST 모두 다 받음


            if (!Page.IsPostBack)
            {
                ViewState["Mode"] = Request["Mode"]; // Edit
                if (ViewState["Mode"].ToString() == "Edit")
                {
                    FormType = BoardWriteFormType.Modify;
                }
                else if (ViewState["Mode"].ToString() == "Reply")
                {
                    FormType = BoardWriteFormType.Reply;
                }
                else
                {
                    FormType = BoardWriteFormType.Write;
                }

                switch (FormType)
                {
                case BoardWriteFormType.Write:
                    LblTitleDescription.Text = "글쓰기 - 다음 필드를 입력하세요";
                    break;

                case BoardWriteFormType.Modify:
                    LblTitleDescription.Text = "수정 - 아래 필드를 수정하세요";
                    DisplayDataForModify();
                    break;

                case BoardWriteFormType.Reply:
                    LblTitleDescription.Text = "답변 - 다음 필드를 입력하세요";
                    DisplayDataForReply();
                    break;

                default:
                    break;
                }
            }
        }
        private int _FileSize    = 0;            //파일크기 저장 필드


        protected void Page_Load(object sender, EventArgs e)
        {
            _Id = Request["Id"];

            if (!Page.IsPostBack)                     // 처음 로드할 때만 바인딩
            {
                ViewState["_Mode"] = Request["Mode"]; // Edit
                if (ViewState["_Mode"].ToString() == "Edit")
                {
                    FormType = BoardWriteFormType.Modify;
                }
                else if (ViewState["_Mode"].ToString() == "Reply")
                {
                    FormType = BoardWriteFormType.Reply;
                }
                else
                {
                    FormType = BoardWriteFormType.Write;
                }

                switch (FormType)
                {
                case BoardWriteFormType.Write:
                    LblTitleDes.Text =
                        "글 쓰기 - 다음 필드들을 채워주세요.";
                    break;

                case BoardWriteFormType.Modify:
                    LblTitleDes.Text =
                        "글 수정 - 아래 항목을 수정하세요.";
                    DisplayDataForModify();
                    break;

                case BoardWriteFormType.Reply:
                    LblTitleDes.Text =
                        "글 답변 - 다음 필드들을 채워주세요.";
                    DisplayDataForReply();
                    break;
                }
            }
        }
示例#6
0
        private int _FileSize    = 0;                                                       //파일사이즈
        protected void Page_Load(object sender, EventArgs e)
        {
            _Id = Request["Id"];//GET/POST 모두 다 받음
            if (!Page.IsPostBack)
            {
                ViewState["Mode"] = Request["Mode"];//Edit
                if (ViewState["Mode"].ToString() == "Edit")
                {
                    Formtype = BoardWriteFormType.Modify;
                }
                else if (ViewState["Mode"].ToString() == "Reply")
                {
                    Formtype = BoardWriteFormType.Reply;
                }
                else
                {
                    Formtype = BoardWriteFormType.Write;
                }

                switch (Formtype)
                {
                case BoardWriteFormType.Write:
                    LblTitleDescription.Text = "글쓰기 - 다음 필드들을 입력하세요.";
                    break;

                case BoardWriteFormType.Modify:
                    LblTitleDescription.Text = "글 수정 - 아래 필드들을 수정하세요.";
                    DisplaydataForReply();
                    break;

                case BoardWriteFormType.Reply:
                    LblTitleDescription.Text = "글 수정 - 다음 필드들을 입력하세요.";
                    DisplaydataForReply();
                    break;
                }
            }
            else
            {
                lblError.Text = "보안코드가 틀립니다. 다시 입력하세요";
            }
        }
        //private string _Mode; //뷰에서 넘겨주는 모드값// edit, reply
        protected void Page_Load(object sender, EventArgs e)
        {
            _Id = Request["Id"];//get post 모두 받음
            //_Mode = Request["Mode"]; //edit

            if (!Page.IsPostBack)
            {
                ViewState["Mode"] = Request["Mode"];
                if (ViewState["Mode"].ToString() == "Edit")
                {
                    FormType = BoardWriteFormType.Modify;
                }
                else if (ViewState["Mode"].ToString() == "Reply")
                {
                    FormType = BoardWriteFormType.Reply;
                }
                else
                {
                    FormType = BoardWriteFormType.Write;
                }


                switch (FormType)
                {
                case BoardWriteFormType.Write:
                    LblTitleDescription.Text = "글 쓰기 - 다음 필드들을 입력하세요";
                    break;

                case BoardWriteFormType.Modify:
                    LblTitleDescription.Text = "글 수정 - 다음 필드들을 입력하세요";
                    DisplayDataForModify();
                    break;

                case BoardWriteFormType.Reply:
                    LblTitleDescription.Text = "글 답변 - 다음 필드들을 입력하세요";
                    DisplayDataForReply();
                    break;
                }
            }
        }
示例#8
0
        protected void btnWrite_Click(object sender, EventArgs e)
        {
            if (IsImageTextcorrect())//보안코드가 맞는지 안맞는지 확인 절차
            {
                if (ViewState["Mode"].ToString() == "Edit")
                {
                    FormType = BoardWriteFormType.Modify;
                }
                else if (ViewState["Mode"].ToString() == "Reply")
                {
                    FormType = BoardWriteFormType.Reply;
                }
                else
                {
                    FormType = BoardWriteFormType.Write;
                }

                //TODO : 파일업로드
                UploadFile();
                Note note = new Note();
                note.Id       = Convert.ToInt32(_Id); //없으면 0
                note.Name     = txtName.Text;         //필수
                note.Email    = txtEmail.Text;        //필수
                note.Title    = txtTitle.Text;        //필수
                note.Homepage = txtHomepage.Text;
                note.Content  = txtContent.Text;      //필수
                note.FileName = _FileName;
                note.FileSize = _FileSize;
                note.Password = txtPassword.Text;
                note.PostIp   = Request.UserHostAddress;
                note.Encoding = rdoEncoding.SelectedValue; // text, Html, Mixed

                DbRepository repo = new DbRepository();

                switch (FormType)
                {
                case BoardWriteFormType.Write:
                    repo.Add(note);
                    Response.Redirect("BoardList.aspx");
                    break;

                case BoardWriteFormType.Modify:
                    note.ModifyIp = Request.UserHostAddress;
                    // TODO : file 처리
                    note.FileName = ViewState["FileName"].ToString();
                    note.FileSize = Convert.ToInt32(ViewState["FileSize"]);
                    if (repo.UpdateNote(note) > 0)
                    {
                        Response.Redirect($"BoardView.aspx?Id={_Id}");
                    }
                    else
                    {
                        lblError.Text = "업데이트 실패, 암호를 확인하세요.";
                    }
                    break;

                case BoardWriteFormType.Reply:
                    note.ParentNum = Convert.ToInt32(_Id);
                    repo.ReplyNote(note);
                    Response.Redirect("BoardList.aspx");
                    break;

                default:
                    repo.Add(note);
                    Response.Redirect("BoardList.aspx");
                    break;
                }
            }
            else
            {
                lblError.Text = "보안코드가 틀립니다. 다시 입력하세요.";
            }
        }
示例#9
0
 public int SaveOrUpdate(Answer n, BoardWriteFormType formType)
 {
     throw new NotImplementedException();
 }