public void CreatelistQuestion(ListQuestion listQuestion)
 {
     using (SqlConnection connection = base.GetConnection())
     {
         SqlCommand command = new SqlCommand("_UpdateListQuestion", connection) {
             CommandType = CommandType.StoredProcedure
         };
         command.Parameters.AddWithValue("@Question_ID", 0);
         command.Parameters.AddWithValue("@Question_ParentID", listQuestion.Question_ParentID);
         command.Parameters.AddWithValue("@Question_Title", listQuestion.Question_Title);
         command.Parameters.AddWithValue("@Question_Content", listQuestion.Question_Content);
         command.Parameters.AddWithValue("@Question_FileAttach", listQuestion.Question_FileAttach);
         command.Parameters.AddWithValue("@Question_Image", listQuestion.Question_Image);
         command.Parameters.AddWithValue("@CreateUserName", listQuestion.CreateUserName);
         command.Parameters.AddWithValue("@CreateDate", listQuestion.CreateDate);
         command.Parameters.AddWithValue("@IsApproval", listQuestion.IsApproval);
         command.Parameters.AddWithValue("@ApprovalUserName", listQuestion.ApprovalUserName);
         command.Parameters.AddWithValue("@ApprovalDate", listQuestion.ApprovalDate);
         command.Parameters.AddWithValue("@CateNewsID", listQuestion.CateNewsID);
         command.Parameters.AddWithValue("@QuestionStatus", listQuestion.QuestionStatus);
         command.Parameters.AddWithValue("@Status", 0);
         connection.Open();
         if (command.ExecuteNonQuery() <= 0)
         {
             throw new DataAccessException("Khong them moi duoc listquestion");
         }
         command.Dispose();
     }
 }
 private void initControl(int Id)
 {
     AdminBSO adminBSO = new AdminBSO();
     ETO.Admin admin = new ETO.Admin();
     if (Id > 0)
     {
         //if (!Session["Admin_UserName"].ToString().Equals("administrator"))
         //{
         //    ddlCateNews.Enabled = false;
         //}
         ListQuestion listQuestion = new ListQuestion();
         ListQuestionBSO listQuestionBSO = new ListQuestionBSO();
         listQuestion = listQuestionBSO.GetListQuestionByID(Id);
         txtTitle.Text = listQuestion.Question_Title;
         HiddenField_FileAttach.Value = listQuestion.Question_FileAttach;
         HiddenField_ImageAttach.Value = listQuestion.Question_Image;
         HiddenField_QuestionID.Value = Id.ToString();
         HiddenField_QuestionStatus.Value = listQuestion.QuestionStatus.ToString();
         HiddenField_CreateUserName.Value = listQuestion.CreateUserName;
         HiddenField_CreateDate.Value = listQuestion.CreateDate.ToString();
         txtRadShort.Html = listQuestion.Question_Content;
         ddlCateNews.SelectedValue = Convert.ToString(listQuestion.CateNewsID);
     }
 }
        private ListQuestion ReceiveHtml_()
        {
            ConfigBSO configBSO = new ConfigBSO();
            Config config = configBSO.GetAllConfig(Language.language);
            int thumb_w = Convert.ToInt32(config.New_large_w);
            int thumb_h = Convert.ToInt32(config.New_large_h);

            commonBSO commonBSO = new commonBSO();
            string path_thumb = Request.PhysicalApplicationPath.Replace(@"\", "/") + "/Upload/Question/Images/";
            string image_thumb = commonBSO.UploadImage(image_Attach, path_thumb, thumb_w, thumb_h);

            string path = Request.PhysicalApplicationPath.Replace(@"\", "/") + "/Upload/Question/Files/";
            string file_upload = commonBSO.UploadFile(file_Attach, path, 18000000000);

            ListQuestion listQuestion = new ListQuestion();

            //Cau hoi moi
            listQuestion.CateNewsID = Convert.ToInt32(ddlCateNews.SelectedValue);
            listQuestion.Question_Title = txtTitle.Text.Trim();
            listQuestion.Question_Content = txtRadShort.Html;
            listQuestion.CreateUserName = Session["Admin_UserName"].ToString();
            listQuestion.Question_FileAttach = (file_upload != "") ? file_upload : HiddenField_FileAttach.Value;
            listQuestion.Question_Image = (image_thumb != "") ? image_thumb : HiddenField_ImageAttach.Value;
            listQuestion.CreateDate = DateTime.Now;
            listQuestion.IsApproval = false; //Chua duoc duyet
            listQuestion.ApprovalUserName = "";
            listQuestion.QuestionStatus = 0;
            listQuestion.ApprovalDate = DateTime.Now;

            if (Page.RouteData.Values["Id"] != null)
            {
                listQuestion.Question_ID = Convert.ToInt32(HiddenField_QuestionID.Value);
                listQuestion.QuestionStatus = int.Parse(HiddenField_QuestionStatus.Value);
                listQuestion.CreateDate = DateTime.Parse(HiddenField_CreateDate.Value);
                listQuestion.CreateUserName = HiddenField_CreateUserName.Value;
            }

            return listQuestion;
        }
        private void sendMailToUser(ListQuestion lstQuestion)
        {
            /* ------------- Gui email den nguoi gui cau hoi --*/
            string strObj = "Yeu cau cua ban da duoc gui thanh cong den trang Support EVNIT. Ngay gui: " + DateTime.Now.ToString("dd/MM/yyyy");
            string strBody = "Câu hỏi đã được gửi thành công tới người Quản lý sản phẩm";
            strBody += "<br><i>Tiêu đề : </i><strong>" + lstQuestion.Question_Title + "</strong><br/>";
            strBody += "<span><i>Nội dung:</i><br /></span>";
            strBody += "<div style='margin-left: 20px; font-size: 11pt; border-left: 3px solid green; padding: 5px;'>";
            strBody += lstQuestion.Question_Content;
            strBody += "</div><p style='font-size: 10pt;'><b>Để xem danh sách các câu hỏi đã gửi và câu trả lời xin thực hiện theo các bước:</b>";
            strBody += "<br>Đăng nhập vào trang http://support.evn.com.vn -> truy cập mục Quản trị.";
            strBody += "</p>";
            strBody += "<div style='border-bottom: 1px dashed red; width: 500px; height: 20px;'/>";
            strBody += "<p>Trang hỗ trợ sản phẩm dịch vụ EVNIT <strong>http://support.evn.com.vn</strong></p>";

            ETO.Admin adminUser = new ETO.Admin();
            AdminBSO adminBSO = new AdminBSO();
            adminUser = adminBSO.GetAdminById(Session["Admin_UserName"].ToString());

            MailBSO mailBSO = new MailBSO();
            ConfigBSO configBSO = new ConfigBSO();
            Config config = configBSO.GetAllConfig(Language.language);
            mailBSO.EmailFrom = config.Email_from;
            mailBSO.SendMail(adminUser.AdminEmail, strObj, strBody);
        }
        private void sendMailToGroup(ListQuestion lstQuestion)
        {
            /* ------------- Gui email den nguoi co trach nhiem tra loi cau hoi --*/
            string strObj = "Ban nhan duoc yeu cau ho tro tu khach hang cua EVNIT. Ngay gui: " + DateTime.Now.ToString("dd/MM/yyyy");
            string strBody = "Khách hàng có gửi cho bạn một yêu cầu hỗ trợ.<br /><br/>";
            strBody += "<i>Tiêu đề : </i><strong>" + lstQuestion.Question_Title + "</strong><br/>";
            strBody += "<span><i>Nội dung:</i><br /></span>";
            strBody += "<div style='margin-left: 20px; font-size: 11pt; border-left: 3px solid green; padding: 5px;'>";
            strBody += lstQuestion.Question_Content;
            strBody += "</div>";
            strBody += "<div style='border-bottom: 1px dashed red; width: 500px; height: 20px;'/>";
            strBody += "<p>Trang hỗ trợ sản phẩm dịch vụ EVNIT <strong>http://support.evn.com.vn</strong></p>";


            MailBSO mailBSO = new MailBSO();
            ConfigBSO configBSO = new ConfigBSO();
            Config config = configBSO.GetAllConfig(Language.language);
            mailBSO.EmailFrom = config.Email_from;

            CateNewsBSO cateNewsBSO = new CateNewsBSO();
            CateNews cateNews = new CateNews();
            cateNews = cateNewsBSO.GetCateNewsById(int.Parse(ddlCateNews.SelectedValue.ToString())); //list user of product           

            //Get list email
            AdminBSO adminBSO = new AdminBSO();
            DataTable dtUser = new DataTable();
            dtUser = adminBSO.GetAllAdmin();
            if (dtUser.Rows.Count > 0)
            {
                DataView view1 = new DataView(dtUser);
                string strUser = cateNews.Roles;
                strUser = strUser.Remove(strUser.LastIndexOf(",")).Replace(",", "','");
                view1.RowFilter = "Admin_UserName in('" + strUser + "')";
                dtUser = view1.ToTable();

                for (int i = 0; i < dtUser.Rows.Count; i++)
                {
                    //clientview.Text += dtUser.Rows[i]["Admin_Email"].ToString();
                    mailBSO.SendMail(dtUser.Rows[i]["Admin_Email"].ToString(), strObj, strBody);
                    //sendMailToGroup(dtUser.Rows[i]["Admin_Email"].ToString().Trim()); //Gui mai den nhom support cua san pham                
                }
            }
            /* ------------- End Gui email den nguoi co trach nhiem tra loi cau hoi --*/
        }
 public void CreateListQuestion(ListQuestion listQuestion)
 {
     new ListQuestionDAO().CreatelistQuestion(listQuestion);
 }
 public void UpdatelistQuestion(ListQuestion listQuestion)
 {
     new ListQuestionDAO().UpdatelistQuestion(listQuestion);
 }
        private void sendMailToUser(ListQuestion lstQuestion)
        {
            /* ------------- Gui email den nguoi gui cau hoi --*/
            string strObj = "Ban nhan duoc cau tra loi tu trang ho tro khach hang cua EVNIT (" + DateTime.Now.ToString("dd/MM/yyyy") + ")";
            string strBody = "";
            strBody += "<i>Tiêu đề : </i><strong>" + lstQuestion.Question_Title + "</strong><br/>";
            strBody += "<span><i>Nội dung: </i><br /></span>";
            strBody += "<div style='margin-left: 20px; font-size: 11pt; border-left: 3px solid green; padding: 5px;'>";
            strBody += lstQuestion.Question_Content;
            //strBody += "<br/><br/><b>Để việc trao đổi giữa chúng tôi và quý khách được nhanh chóng và chính xác, vui lòng phản hồi theo cách sau:</b>";
            //strBody += "<br>Sử dụng tài khoản đã đăng ký để đăng nhập vào trang http://support.evn.com.vn, truy cập vào mục quản trị và quản lý danh sách các câu hỏi của quý khách ";
            strBody += "</div>";
            strBody += "<div style='border-bottom: 1px dashed red; width: 500px; height: 20px;'/>";
            strBody += "<p>Trang hỗ trợ sản phẩm dịch vụ EVNIT <strong>http://support.evn.com.vn</strong></p>";


            AdminBSO adminBSO = new AdminBSO();
            ETO.Admin adminUser = new ETO.Admin();
            adminUser = adminBSO.GetAdminById(HiddenField_CreateUserName.Value.ToString());

            MailBSO mailBSO = new MailBSO();
            ConfigBSO configBSO = new ConfigBSO();
            Config config = configBSO.GetAllConfig(Language.language);
            mailBSO.EmailFrom = config.Email_from;
            mailBSO.SendMail(adminUser.AdminEmail, strObj, strBody);
        }
        protected void btnSend_Click(object sender, EventArgs e)
        {

            if (!string.IsNullOrEmpty(Page.RouteData.Values["subid"].ToString())) //Update record
            {
                ListQuestionBSO listQuestionBSO = new ListQuestionBSO();
                if (!string.IsNullOrEmpty(txtRadShort.Html))
                {
                    ConfigBSO configBSO = new ConfigBSO();
                    Config config = configBSO.GetAllConfig(Language.language);
                    int thumb_w = Convert.ToInt32(config.New_thumb_w);
                    int thumb_h = Convert.ToInt32(config.New_thumb_h);
                    ListQuestion listQuestionUpdate = new ListQuestion();

                    commonBSO commonBSO = new commonBSO();
                    string path_thumb = Request.PhysicalApplicationPath.Replace(@"\", "/") + "/Upload/Question/Images/";
                    string image_thumb = commonBSO.UploadImage(image_Attach, path_thumb, thumb_w, thumb_h);

                    string path = Request.PhysicalApplicationPath.Replace(@"\", "/") + "/Upload/Question/Files/";
                    string file_upload = commonBSO.UploadFile(file_Attach, path, 18000000000);
                    string strFile = (file_upload != "") ? file_upload : HiddenField_FileAttach.Value;
                    string strImage = (image_thumb != "") ? image_thumb : HiddenField_ImageAttach.Value;

                    listQuestionBSO.UpdateSubQuestion(Convert.ToInt32(Page.RouteData.Values["subid"]), txtRadShort.Html, strImage, strFile);
                    txtRadShort.Html = "";
                    //clientview.Text = strFile;
                }
                clientview.Text = String.Format(Resources.StringAdmin.AddNewsSuccessful);
                Response.Redirect("~/Admin/listdetailquestion/" + HiddenField_QuestionID.Value.ToString() + "/Default.aspx");
                //initControl(Id);
            }
            else //Addnew record
            {
                ListQuestion listQuestion = ReceiveHtml_();
                ListQuestionBSO listQuestionBSO = new ListQuestionBSO();
                if (!string.IsNullOrEmpty(listQuestion.Question_Content))
                {
                    listQuestionBSO.CreateListQuestion(listQuestion);
                }
                else
                {
                    //hien thong bao yeu cau nhap noi dung
                }
                //clientview.Text = String.Format(Resources.StringAdmin.AddNewsSuccessful);         

                string strID = HiddenField_QuestionID.Value.ToString() + ",";
                //Cap nhat lai trang thai cau hoi doi voi cau hoi parent
                //Kiem tra user_Name login ? user_name CreateQuestion
                if (Session["Admin_UserName"].ToString() != HiddenField_CreateUserName.Value)
                {
                    //Cap nhat status = 2: Da xu ly
                    listQuestionBSO.UpdateQuestionStatus(strID, 2);
                    //----Gui mail thong bao den khach hang khi co cau tra loi
                    //------Lay userName
                    sendMailToUser(listQuestion);
                }
                else
                {
                    //Cap nhat status = 0: cau hoi moi
                    listQuestionBSO.UpdateQuestionStatus(strID, 0);
                    //Gui mail den nhom support khi khach hang reply
                    sendMailToGroup(listQuestion);
                    //------------ Gui email thong bao den nhom nhom support cua tung san pham              
                }
                Response.Redirect("~/Admin/listdetailquestion/" + HiddenField_QuestionID.Value.ToString() + "/Default.aspx");
            }

        }
        private ListQuestion ReceiveHtml_()
        {
            ConfigBSO configBSO = new ConfigBSO();
            Config config = configBSO.GetAllConfig(Language.language);
            int thumb_w = Convert.ToInt32(config.New_thumb_w);
            int thumb_h = Convert.ToInt32(config.New_thumb_h);

            commonBSO commonBSO = new commonBSO();
            string path_thumb = Request.PhysicalApplicationPath.Replace(@"\", "/") + "/Upload/Question/Images/";
            string image_thumb = commonBSO.UploadImage(image_Attach, path_thumb, thumb_w, thumb_h);

            string path = Request.PhysicalApplicationPath.Replace(@"\", "/") + "/Upload/Question/Files/";
            string file_upload = commonBSO.UploadFile(file_Attach, path, 18000000000);

            ListQuestion listQuestion = new ListQuestion();

            //Cau hoi moi: Co lay thong tin tu cau hoi parent        
            listQuestion.Question_ParentID = Convert.ToInt32(Page.RouteData.Values["Id"]);
            listQuestion.CateNewsID = int.Parse(HiddenField_CateNewsID.Value.ToString());
            listQuestion.Question_Title = "Trả lời: " + HiddenField_Question_Title.Value.ToString();
            listQuestion.CreateDate = DateTime.Parse(HiddenField_CreateDate.Value.ToString());
            listQuestion.CreateUserName = HiddenField_CreateUserName.Value.ToString();

            //-------------Noi dung lay tu form        
            listQuestion.Question_Content = txtRadShort.Html;
            listQuestion.Question_FileAttach = (file_upload != "") ? file_upload : HiddenField_FileAttach.Value;
            listQuestion.Question_Image = (image_thumb != "") ? image_thumb : HiddenField_ImageAttach.Value;

            listQuestion.IsApproval = false; //Chua duoc duyet
            listQuestion.ApprovalUserName = Session["Admin_UserName"].ToString();
            listQuestion.QuestionStatus = 2; //Cau hoi da tra loi
            listQuestion.ApprovalDate = DateTime.Now; //Ngay phe duyet

            if (Page.RouteData.Values["Id"] != null) //Truong hop edit cau hoi, nhung thong tin duoc fix
            {
                //listQuestion.Question_ID = Id;
                //listQuestion.QuestionStatus = int.Parse(HiddenField_QuestionStatus.Value);
                //listQuestion.CreateDate = DateTime.Parse(HiddenField_CreateDate.Value);
                //listQuestion.CreateUserName = HiddenField_CreateUserName.Value;
            }
            return listQuestion;
        }