Ejemplo n.º 1
0
        public ActionResult PasswordLost(string email)
        {
            if (Session[imHere_Password] == null)
            {
                return RedirectToAction("PasswordLost");
            }

            if (!string.IsNullOrEmpty(email))
            {

                using (Account account = new Account(database))
                {

                    if (account.EmailExist(email))
                    {

                        User user = account.GetUser(email);

                        if (user != null)
                        {
                            string sbody = "<p>You are receiving this message because you asked to remember your password.</p>" +
                            "<p>Please use the information below to log into your kartessian account where you will be able to change your password.</p>" +
                            "<p>E-mail: " + email + "</p><p>Password: "******"</p>";

                            Helpers.SendEmail(email, "kartessian password recovery", sbody);

                            ViewBag.result = "OK";
                            Session.Remove(imHere_Password);
                        }
                    }
                    else
                    {

                        ViewBag.result = "NO";

                    }
                }
            }

            return View();
        }
Ejemplo n.º 2
0
        public ActionResult Register(string email, string[] password, string name)
        {
            ViewBag.email = email;
            ViewBag.name = name;

            if (Session[imHere_Register] == null)
            {
                return RedirectToAction("Register");
            }

            if (!string.IsNullOrEmpty(email) && password != null && !string.IsNullOrEmpty(name))
            {

                if (password.Length == 2)
                {
                    if (password[0] != password[1])
                    {
                        ViewBag.error = "The passwords entered do not match!";
                        return View();
                    }
                }
                else
                {
                    ViewBag.error = "The passwords entered do not match!";
                    return View();
                }

                using (Account account = new Account(database))
                {

                    try
                    {

                        database.BeginTransaction();

                        if (account.EmailExist(email))
                        {
                            ViewBag.error = "The email already exist. Did you forget your password?";
                            return View();
                        }

                        account.CreateUser(email, name, password[0], RequestIP());

                        string sbody = "<p>Thanks for signing up!</p>" +
                            "<p>Your account is ready now, and you can log in and start creating awesome maps.<p>" +
                            "<p>Your login details are:</p>" +
                            "<p>Email: " + email + "</p>" +
                            "<p>Password: "******"</p><br/><br/><p>Contact us at [email protected] if you have any question.</p>" +
                            "<p>Kind Regards,<br/>Kartessian</p>";

                        Helpers.SendEmail(email, "Welcome to Kartessian, " + name + "!", sbody);

                        ViewBag.error = "Your account have been created. We've sent you an email with your login details.";
                        database.Commit();

                        Session.Remove(imHere_Register);
                    }
                    catch
                    {
                        ViewBag.error = "An error occurred creating your account. Check your details.";
                        database.RollBack();
                    }
                }

            }

            return View();
        }