Пример #1
0
        public HttpResponseMessage SendEmail(EmailVM email)
        {
            try
            {
                var configService  = _configService.GetAll().FirstOrDefault();
                var companyName    = configService.CompanyName;
                var sendingEmail   = configService.Email;
                var emailPassword  = configService.EmailPassword;
                var emailPort      = configService.EmailPort;
                var emailSignature = configService.EmailSignature;
                var emailFrom      = companyName + "<" + sendingEmail + ">";

                var emailBody = "";
                if (email.Body != null)
                {
                    emailBody = email.Body + "<br /><br />" + emailSignature + "<br /><img src=\"cid:Pic1\">";
                }
                else
                {
                    emailBody = emailSignature + "<img src=\"cid:Pic1\">";
                }

                XMail.Send(sendingEmail, emailPassword, emailPort, emailFrom, email.ToEmail, "", "", email.Subject, emailBody, "");

                var responseMessage = new { message = "Gửi email thành công" };
                return(Request.CreateResponse(HttpStatusCode.OK, responseMessage));
            }
            catch (Exception)
            {
                var responseMessage = new { message = "Gửi email thất bại" };
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, responseMessage));

                throw;
            }
        }
Пример #2
0
 public ActionResult Register(Customer model)
 {
     try
     {
         // upload hinh
         var f = Request.Files["UpPhoto"];
         if (f.ContentLength > 0)
         {
             model.Photo = DateTime.Now.Ticks + "-" + f.FileName;
             var path = "~/images/Customers/" + model.Photo;
             f.SaveAs(Server.MapPath(path));
         }
         else
         {
             model.Photo = "";
         }
         // dawng ky
         db.Customers.Add(model);
         db.SaveChanges();
         //ModelState.AddModelError("", "Register successfully !");
         ViewBag.message = "Đăng ký thành công! Vui lòng truy cập email để kích hoạt tài khoản của bạn.";
         // Send welcome mail
         var    Uri  = Request.Url.AbsoluteUri.Replace("Register", "Activate/" + model.Id.ToBase64());
         String body = "kích hoạt tài khoản của bạn <a href='" + Uri + "'>Kích hoạt</a>";
         XMail.Send(model.Email, "Thư chào mừng", body);
     }
     catch
     {
         ModelState.AddModelError("", "Đăng ký thất bại !");
     }
     return(View());
 }
Пример #3
0
        public ActionResult Register(Customer model)
        {
            try
            {
                // upload hinh
                var f = Request.Files["UpPhoto"];
                if (f.ContentLength > 0)
                {
                    model.Photo = DateTime.Now.Ticks + "-" + f.FileName;
                    var path = "~/images/customers/" + model.Photo;
                    f.SaveAs(Server.MapPath(path));
                }
                else
                {
                    model.Photo = "User.jpg";
                }
                // dawng ky
                db.Customers.Add(model);
                db.SaveChanges();
                ModelState.AddModelError("", "Register successfully !");

                // Send welcome mail
                var    Uri  = Request.Url.AbsoluteUri.Replace("Register", "Activate/" + model.Id.ToBase64());
                String body = "Please click to activate your account. <a href='" + Uri + "'>Activate</a>";
                XMail.Send(model.Email, "Welcome mail", body);
            }
            catch (Exception e)
            {
                ModelState.AddModelError("", e.Message);
            }
            return(View());
        }
Пример #4
0
        public ActionResult Send(string name, string email, string message)

        {
            try
            {
                var from = name + "<" + email + ">";
                XMail.Send(from, "*****@*****.**", "test", message);
            }
            catch
            {
            }
            return(View());
        }
Пример #5
0
        //Sign up
        public bool SignUp(LoginRequest request)
        {
            var emails = _userProfileRepository.GetSingleNoneDeleted(x => x.Email == request.Email);

            if (emails != null)
            {
                return(false);
            }
            //add new
            var newUserProfile = new UserProfile
            {
                UserName     = request.UserName,
                Email        = request.Email,
                Password     = CryptoMd5.Encode(request.Password),
                CreatedBy    = Constants.GetUserId(),
                ModifiedBy   = Constants.GetUserId(),
                CreatedDate  = Constants.GetDateNow(),
                ModifiedDate = Constants.GetDateNow()
            };

            _userProfileRepository.Add(newUserProfile);
            var isOk = _userProfileRepository.Commit();

            if (isOk)
            {
                try
                {
                    //get mail template to send
                    var email = new EmailViewModel
                    {
                        From        = "Web Master <*****@*****.**>",
                        Body        = "inspectionPackFunc.openFormAddNewInspectionLocationDefinition('5133991c-192b-4154-9f26-9ab9cbfb89ad','f459d32e-adfc-460f-b00e-d36703f8f69c')",
                        To          = newUserProfile.Email,
                        Cc          = "*****@*****.**",
                        Subject     = "test mail",
                        Bcc         = "",
                        Attachments = ""
                    };
                    XMail.Send(email);
                }
                catch (Exception)
                {
                    // ignored
                }
            }
            return(isOk);
        }
Пример #6
0
 public static bool SendLog(string usercomment, bool islogattached)
 {
     try
     {
         string mailcontent = usercomment;
         if (islogattached)
         {
             mailcontent += Environment.NewLine + Exceptioner.GetLog();
             //clear the log file
             Exceptioner.ClearLog();
         }
         XMail.SendMail("Bug Report", mailcontent);
         return(true);
     }
     catch {    }
     return(false);
 }
Пример #7
0
 public ActionResult Register(Customer model)
 {
     try
     {
         model.Activated = "false";
         db.Customers.Add(model);
         db.SaveChanges();
         ModelState.AddModelError("", "Đăng kí thành công, vui lòng nhận email kích hoạt tài khoản");
         var url  = Request.Url.AbsoluteUri.Replace("Register", "") + "Activate/" + model.Id;
         var body = "Click vào liên kết để kích hoạt tài khoản:<a href='" + url + "'>Activate</a>";
         XMail.Send(model.Email, "Welcome mail", body);
     }
     catch (Exception)
     {
         ModelState.AddModelError("", "Đăng kí thất bại !");
     }
     return(View());
 }
Пример #8
0
        public ActionResult Forgot(String Id, String Email)
        {
            var user = db.Customers.Find(Id);

            if (user == null)
            {
                ModelState.AddModelError("", "Invalid username");
            }
            else if (Email != user.Email)
            {
                ModelState.AddModelError("", "Invalid email");
            }
            else
            {
                ModelState.AddModelError("", "Your password was sent to your inbox");
                XMail.Send(Email, "Forgot password", "Password:" + user.Password);
            }
            return(View());
        }
Пример #9
0
        public ActionResult Forgot(String Id, String Email)
        {
            var user = db.Customers.Find(Id);

            if (user == null)
            {
                ViewBag.message = "Tên sử dụng không hợp lệ";
                //ModelState.AddModelError("", "Invalid username");
            }
            else if (Email != user.Email)
            {
                ViewBag.message = "Email sử dụng không hợp lệ";
            }
            else
            {
                ViewBag.message = "Mật khẩu của bạn đã được gửi đến hộp thư đến của bạn";

                XMail.Send(Email, "Quên mật khẩu", "Mật khẩu:" + user.Password);
            }
            return(View());
        }
Пример #10
0
        public ActionResult Forgot(String UserName, String Email)
        {
            try
            {
                var cust = db.Customers
                           .Single(c => c.Id == UserName && c.Email == Email);

                var user = UserManager.FindByName(UserName);

                String TokenCode = Guid.NewGuid().ToString();
                UserManager.RemovePassword(user.Id);
                UserManager.AddPassword(user.Id, TokenCode);
                XMail.Send(Email, "Token Code", TokenCode);

                return(View("Reset"));
            }
            catch
            {
                ModelState.AddModelError("", "Sai thông tin user !");
                return(View());
            }
        }
Пример #11
0
        public HttpResponseMessage EmailRegister(string recaptchaResponse, [FromBody] Contact contactModel)
        {
            try
            {
                const string secret = "6Lc1uw4TAAAAAMz5gjeKyy8NkpAl_TdwhZ0Sf3D0"; //Secrect key: 6Lc1uw4TAAAAAMz5gjeKyy8NkpAl_TdwhZ0Sf3D0  Sitekey:6Lc1uw4TAAAAAF1kpJ8cBR6bG1XdIVyALs_HRXZy
                var          client = new WebClient();
                var          reply  = client.DownloadString(
                    string.Format("https://www.google.com/recaptcha/api/siteverify?secret={0}&response={1}", secret,
                                  recaptchaResponse));

                var captchaResponse = JsonConvert.DeserializeObject <CaptchaResponse>(reply);
                if (!captchaResponse.Success)
                {
                    if (captchaResponse.ErrorCodes.Count <= 0)
                    {
                        var responseMessage = new { message = "Thành công" };
                        return(Request.CreateResponse(HttpStatusCode.OK, responseMessage));
                    }
                    var error   = captchaResponse.ErrorCodes[0].ToLower();
                    var message = "";
                    switch (error)
                    {
                    case ("missing-input-secret"):
                        message = "The secret parameter is missing.";
                        break;

                    case ("invalid-input-secret"):
                        message = "The secret parameter is invalid or malformed.";
                        break;

                    case ("missing-input-response"):
                        message = "The response parameter is missing.";
                        break;

                    case ("invalid-input-response"):
                        message = "The response parameter is invalid or malformed.";
                        break;

                    default:
                        message = "Error occured. Please try again";
                        break;
                    }
                    var rpMessage = new { message = message };
                    return(Request.CreateResponse(HttpStatusCode.InternalServerError, rpMessage));
                }
                else
                {
                    if (ModelState.IsValid)
                    {
                        contactModel.Status = true;
                        _contactService.Add(contactModel);

                        var justAddedContactEmail = _contactService.Entities.OrderByDescending(b => b.Id).FirstOrDefault();

                        var configService  = _configService.GetAll().FirstOrDefault();
                        var companyName    = configService.CompanyName;
                        var sendingEmail   = configService.Email;
                        var emailPassword  = configService.EmailPassword;
                        var emailPort      = configService.EmailPort;
                        var emailSignature = configService.EmailSignature;
                        var emailFrom      = companyName + "<" + sendingEmail + ">";
                        var CCEmail        = configService.CCEmail;

                        var emailBody = "Có 1 tin nhắn mới từ Websie! <br />";
                        emailBody += "Họ tên: " + justAddedContactEmail.Name + "<br />";
                        emailBody += "Email: " + justAddedContactEmail.Email + "<br />";
                        emailBody += "Điện thoại: " + justAddedContactEmail.Phone + "<br />";
                        emailBody += "Nội dung: " + justAddedContactEmail.Description + "<br />";
                        emailBody  = emailBody + "<br /><br />" + emailSignature + "<br /><img src=\"cid:Pic1\">";

                        XMail.Send(sendingEmail, emailPassword, emailPort, emailFrom, CCEmail, "", "", "Tin nhắn mới từ Websie!", emailBody, "");

                        var responseMessage = new { message = "Đã gửi tin thành công" };
                        return(Request.CreateResponse(HttpStatusCode.OK, responseMessage));
                    }
                    else
                    {
                        var responseMessage = new { message = "Lỗi! Nội dung nhập không đúng định dạng" };
                        return(Request.CreateResponse(HttpStatusCode.OK, responseMessage));
                    }

                    //var response = new { message = "Thành công" };
                    //return Request.CreateResponse(HttpStatusCode.OK, response);
                }
            }

            catch (Exception)
            {
                var responseMessage = new { message = "Lỗi! Vui lòng thử lại" };
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, responseMessage));
            }
        }
Пример #12
0
        public async System.Threading.Tasks.Task <ActionResult> Checkout(Order model, FormCollection form)
        {
            if (ModelState.IsValid)
            {
                var sms = new SpeedSMSAPI();
                //Validate Cart
                if (cart.Count == 0)
                {
                    Warning(string.Format("<h5>{0}</h4>", "Bạn chưa có sản phẩm nào trong giỏ hàng, Vui lòng chọn sản phẩm trước khi thanh toán."), true);
                    return(RedirectToAction("Index", "Home"));
                }


                var    user = db.Users.Find(model.UserId);
                string em   = form["Email"];
                var    us   = db.Users.Where(o => o.Email == em).FirstOrDefault();
                //Kiểm tra nếu là người dùng mới thì tạo tài khoản
                if (us == null)
                {
                    if (true)
                    {
                        //var password = Xstring.GeneratePassword();
                        //var newUser = new ApplicationUser
                        //{
                        //    UserName = form["Email"],
                        //    Email = form["Email"],
                        //    PhoneNumber = model.ReceivePhone,
                        //    PasswordHash = password,
                        //};

                        //var UserManager = HttpContext.GetOwinContext().GetUserManager<ApplicationUserManager>();

                        //var result = await UserManager.CreateAsync(newUser, password);

                        //if (result.Succeeded)
                        //{
                        //    var SignInManager = HttpContext.GetOwinContext().Get<ApplicationSignInManager>();
                        //    await SignInManager.SignInAsync(newUser, isPersistent: false, rememberBrowser: false);
                        //    model.UserId = newUser.Id;

                        //    //Gửi sms
                        //    string smsAcc = "FashionGo: Tai khoan quan ly don hang cua ban tren FashionGo la: Email:" + form["Email"] + ", mat khau:" + password;
                        //    string sent = sms.sendSMS(model.ReceivePhone, smsAcc, 2, "");

                        //    //Gửi tin nhắn tài khoản cho người dùng.
                        //    var subject = "Tài khoản quản lý đơn hàng tại ZdealVN.!";
                        //    var msg = "Xin chào, " + model.ReceiveName;
                        //    msg += "<br>Tài khoản quản lý đơn hàng của bạn tại <a href='http://FashionGo.vn'>FashionGo.vn</a> là:";
                        //    msg += "<br>-Tên đăng nhập: " + form["Email"];
                        //    msg += "<br>-Mật khẩu của bạn: " + password;
                        //    msg += "<br>Bạn có thể sử dụng tài khoản này đăng nhập trên FashionGo.vn để quản lý đơn hàng và sử dụng các dịch vụ khác do FashionGo cung cấp.!";
                        //    msg += "<br>Cảm ơn bạn đã quan tâm sử dụng dịch vụ của FashionGo. mọi thắc mắc xin liên hệ hotline: 0901.002.822-0965.002.822.";
                        //    msg += "<br>FashionGo Hân hạnh được phục vụ bạn.";
                        //    msg += "<br>Chúc bạn một ngày tốt lành.";
                        //    msg += "<p></p><p></p>-BQT ZdealVN!.</p>";

                        //    XMail.Send(newUser.Email, subject, msg);
                        //}
                        //else
                        //{
                        //    foreach (var error in result.Errors)
                        //    {
                        //        ModelState.AddModelError("", "-" + error);
                        //    }
                        //}
                    }
                    var password = "******";
                    var newUser  = new ApplicationUser
                    {
                        UserName     = form["Email"],
                        Email        = form["Email"],
                        PhoneNumber  = model.ReceivePhone,
                        PasswordHash = password,
                    };

                    var UserManager = HttpContext.GetOwinContext().GetUserManager <ApplicationUserManager>();

                    var result = await UserManager.CreateAsync(newUser, password);

                    if (result.Succeeded)
                    {
                        var SignInManager = HttpContext.GetOwinContext().Get <ApplicationSignInManager>();
                        await SignInManager.SignInAsync(newUser, isPersistent : false, rememberBrowser : false);

                        model.UserId = newUser.Id;

                        //Gửi sms
                        string smsAcc = "FashionGo: Tai khoan quan ly don hang cua ban tren FashionGo la: Email:" + form["Email"] + ", mat khau:" + password;
                        string sent   = sms.sendSMS(model.ReceivePhone, smsAcc, 2, "");

                        //Gửi tin nhắn tài khoản cho người dùng.
                        var subject = "Tài khoản quản lý đơn hàng tại ZdealVN.!";
                        var msg     = "Xin chào, " + model.ReceiveName;
                        msg += "<br>Tài khoản quản lý đơn hàng của bạn tại <a href='http://FashionGo.vn'>FashionGo.vn</a> là:";
                        msg += "<br>-Tên đăng nhập: " + form["Email"];
                        msg += "<br>-Mật khẩu của bạn: " + password;
                        msg += "<br>Bạn có thể sử dụng tài khoản này đăng nhập trên FashionGo.vn để quản lý đơn hàng và sử dụng các dịch vụ khác do FashionGo cung cấp.!";
                        msg += "<br>Cảm ơn bạn đã quan tâm sử dụng dịch vụ của FashionGo. mọi thắc mắc xin liên hệ hotline: 0901.002.822-0965.002.822.";
                        msg += "<br>FashionGo Hân hạnh được phục vụ bạn.";
                        msg += "<br>Chúc bạn một ngày tốt lành.";
                        msg += "<p></p><p></p>-BQT ZdealVN!.</p>";

                        XMail.Send(newUser.Email, subject, msg);
                    }
                    else
                    {
                        foreach (var error in result.Errors)
                        {
                            ModelState.AddModelError("", "-" + error);
                        }
                    }
                    ViewBag.Email = form["Email"];
                }
                // ngược lại thì  gán order cho user tìm được
                else if (us != null)
                {
                    model.UserId = us.Id;
                }

                //Update order info
                model.TotalAmount = cart.Total;
                model.TotalOrder  = cart.OrderTotal;
                if (cart.Transport != null)
                {
                    model.TransportId = cart.Transport.Id;
                }
                model.Coupon    = cart.CouponCode;
                model.Discount  = cart.Discount;
                model.OrderDate = DateTime.Now;
                model.StatusId  = 1;
                // add
                db.Orders.Add(model);
                try
                {
                    foreach (var p in cart.Items)
                    {
                        var d = new OrderDetail
                        {
                            OrderId    = model.Id,
                            ProductId  = p.Id,
                            PriceAfter = p.PriceAfter.Value,
                            Discount   = p.Discount == null ? 0 : p.Discount.Value,
                            // Amount = p.Amount
                            S  = p.S,
                            M  = p.M,
                            L  = p.L,
                            XL = p.XL
                        };
                        //ViewBag.ProductDetail = cart.Items;
                        db.OrderDetails.Add(d);
                        // update thêm đang chờ bán
                        var pending = db.Products.Find(p.Id);
                        pending.Pending = (pending.Pending == null ? pending.Pending = 1 : pending.Pending += 1);
                    }
                    if (db.SaveChanges() > 0)
                    {
                        cart.Clear();

                        Success(string.Format("<b><h5>{0}</h4></b>", "Đặt hàng thành công, chúng tôi sẽ liên hệ lại với bạn để xác nhận đơn hàng trước khi tiến hành giao hàng."), true);

                        //Gửi SMS xác nhận và báo tin cho Sale

                        var customerMsg = "FashionGo: Dat hang thanh cong don hang:#" + model.Id + ", Voi so tien: " + string.Format("{0:0,0}vnđ", model.TotalAmount);
                        var saleSMS     = "FashionGo: Don hang moi #" + model.Id + " tu KH: " + model.ReceiveName + " - " + model.ReceivePhone;
                        //string response = sms.sendSMS(model.ReceivePhone, customerMsg, 2, "");
                        //response = sms.sendSMS("0327835923", saleSMS, 2, "");
                        string subject = "Đơn hàng ";
                        var    msg     = "Xin chào, " + model.ReceiveName;
                        msg += "<br>bạn đã đặt hàng thành công đơn hàng: " + model.Id + ", Voi so tien: " + string.Format("{0:0,0}vnđ", model.TotalAmount);
                        msg += "<br>Chi tiết:";
                        foreach (var item in model.OrderDetails)
                        {
                            msg += "<br>Sản phẩm: " + item.Product.Name;
                            msg += "<br>Số lượng: " + item.SoLuong;
                            msg += "<br>Chú thích: " + item.Note;
                        }
                        msg += "<br>Cảm ơn bạn đã quan tâm sử dụng dịch vụ của FashionGo. mọi thắc mắc xin liên hệ hotline: 0901.002.822-0965.002.822.";
                        msg += "<br>FashionGo Hân hạnh được phục vụ bạn.";
                        msg += "<br>Chúc bạn một ngày tốt lành.";
                        msg += "<p></p><p></p>-BQT NguyenAnhDung!.</p>";
                        bool ok = XMail.Sended(em, subject, msg);
                        // int ok = vnMail.GuiMail(subject, msg, em, "*****@*****.**", "");
                        //if (!ok) {
                        //    ModelState.AddModelError("","Không gửi đc mail");
                        //    Debug.WriteLine("Không gửi đc mail");
                        //}

                        return(RedirectToAction("Detail", new { id = model.Id }));
                    }
                }
                catch (Exception ex)
                {
                    //  Danger(string.Format("-{0}<br>", ex.Message), true);
                    ModelState.AddModelError("", ex.Message);
                    Debug.WriteLine(ex.Message);
                }
            }
            else
            {
                // Validate Email
                if (!Request.IsAuthenticated && String.IsNullOrEmpty(form["Email"]))
                {
                    ModelState.AddModelError("", "-Bạn chưa nhập email nhận đơn hàng!");
                }

                //Check quận huyện
                if (String.IsNullOrEmpty(form["DistrictId"]))
                {
                    ModelState.AddModelError("", "-Bạn chưa chọn quận huyện nơi chuyển hàng tới!");
                }

                //Check phuong thuc van chuyen
                if (String.IsNullOrEmpty(form["TransportId"]))
                {
                    ModelState.AddModelError("", "-Bạn chưa chọn nhà vận chuyển trước khi đặt hàng!");
                }
            }
            var provinceId = form["ProvinceId"];

            ViewBag.ProvinceId = new SelectList(db.Provinces.Select(x => new { ProvinceId = x.ProvinceId, NameFull = x.Type + " " + x.Name }), "ProvinceId", "NameFull", provinceId);
            ViewBag.DistrictId = new SelectList(db.Districts.Where(d => d.ProvinceId == provinceId).Select(x => new { DistrictId = x.DistrictId, NameFull = x.Type + " " + x.Name }), "DistrictId", "NameFull", form["DistrictId"].ToString());

            return(View(model));
        }