Exemplo n.º 1
0
        public ActionResult SignIn(UserModel user)
        {
            if (ModelState.IsValid)
            {
                DBManager dbm = new DBManager();

                if (dbm.UserManager.IsTheEmailInTheDB(user.UserEmail))
                {
                    return(View());
                }

                ConvalidationUser cu = new ConvalidationUser(user);
                if (!cu.isTheUserHaveValidParametres())
                {
                    return(View());
                }

                AsyncFunctionToUse.SendMailForConvalidation(user);

                // Log
                LogMaster.WriteOnLog("a new user have signin with username " + user.UserName);

                return(Content("Abbiamo inviato un'email di conferma"));
            }

            return(View());
        }
Exemplo n.º 2
0
        public ActionResult Login(UserForLogin ufl)
        {
            DBManager dbm = new DBManager();

            UserModel user = dbm.UserManager.GetUserData(ufl.UserEmailForLogin);

            if (user == null || !user.ConfirmedEmail)
            {
                return(View());
            }

            ConvalidationUser cu = new ConvalidationUser(user);

            if (cu.CheckPasswordIsTheSame(ufl.UserPasswordForLogin, user.UserPassword))
            {
                Session["user_id"]   = user._id.ToString();
                Session["userEmail"] = user.UserEmail;
                Session["userName"]  = user.UserName;
                Session["login"]     = 1;

                // Log
                LogMaster.WriteOnLog("user " + (string)Session["user_id"] + " is logged in");

                return(RedirectToAction("Home", "Home"));
            }

            return(View());
        }
Exemplo n.º 3
0
        public static void SendMailForConvalidation(UserModel user)
        {
            Task sendNewEmail = new Task(() =>
            {
                DBManager dbm        = new DBManager();
                ConvalidationUser cu = new ConvalidationUser(user);

                user.UserPassword = cu.CryptUserPassword(user.UserPassword);

                dbm.UserManager.AddUserToMongoDB(user);

                DefaultBodyText df = new DefaultBodyText(user.UserName, user._id);
                string text        = df.GetNewBodyForEmailSubscription();
                SendMail sm        = new SendMail();
                sm.SendNewEmail(user.UserEmail, text);
            });

            sendNewEmail.Start();
        }