public ActionResult Login(PhotoUpload.Customer cus, string ReturnUrl = "")
        {
            string message = "";

            using (AssignmentContext db = new AssignmentContext())
            {
                var v = db.Customers.Where(a => a.email == cus.email).FirstOrDefault();
                if (v != null)
                {
                    if (!v.IsEmailVerified)
                    {
                        ViewBag.Message = "Please verify your email first";
                        return(View());
                    }
                    if (string.Compare(HashPassword.CreateMD5(cus.password, v.salt), v.password) == 0)
                    {
                        if (v.status == 1)
                        {
                            var    ticket    = new FormsAuthenticationTicket(cus.email, true, 525600);
                            string encrypted = FormsAuthentication.Encrypt(ticket);
                            var    cookie    = new HttpCookie(FormsAuthentication.FormsCookieName, encrypted);
                            cookie.Expires  = DateTime.Now.AddMinutes(525600);
                            cookie.HttpOnly = true;
                            Response.Cookies.Add(cookie);

                            if (Url.IsLocalUrl(ReturnUrl))
                            {
                                return(Redirect(ReturnUrl));
                            }
                            else
                            {
                                return(RedirectToAction("Index", "Login"));
                            }
                        }
                        else if (v.status == 0 && v.IsEmailVerified == false)
                        {
                            message = "Your account can't active. Please active it.";
                        }
                        else if (v.status == -1)
                        {
                            message = "Your account has been ban.";
                        }
                    }
                    else
                    {
                        message = "Invalid credential provided";
                    }
                }
                else
                {
                    message = "Invalid credential provided";
                }
            }
            ViewBag.Message = message;
            return(View());
        }
 public HttpResponseMessage Get(string email)
 {
     using (AssignmentContext db = new AssignmentContext())
     {
         var v = db.Customers.Where(cus => cus.email == email).FirstOrDefault();
         if (v == null)
         {
             throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotAcceptable,
                                                                    "Invalid Request!"));
         }
         cus = v;
         return(Request.CreateResponse(HttpStatusCode.OK, cus));
     }
 }
Example #3
0
 // GET: Customer/Image
 public ActionResult Index()
 {
     PhotoUpload.Customer currentCus = CurrentCustomerController.cus;
     using (AssignmentContext db = new AssignmentContext())
     {
         if (db.Images.Where(a => a.Customer_id == currentCus.id).ToList() == null)
         {
             ViewBag.Message = "Library Empty";
             return(View());
         }
         else
         {
             return(View(db.Images.Where(a => a.Customer_id == currentCus.id).ToList()));
         }
     }
 }
        public ActionResult Register([Bind(Exclude = "IsEmailVerified,ActivationCode")] PhotoUpload.Customer cus)
        {
            bool   Status  = false;
            string message = "";

            if (ModelState.IsValid)
            {
                #region //Email is already Exist

                var isExistEmail    = IsEmailExist(cus.email);
                var isExistUsername = IsUsernameExist(cus.username);
                if (isExistEmail)
                {
                    ModelState.AddModelError(cus.email, "Email already exist");
                    return(View(cus));
                }
                else if (isExistUsername)
                {
                    ModelState.AddModelError(cus.username, "Username already exist");
                    return(View(cus));
                }
                #endregion

                #region Generate Activation Code

                cus.ActivationCode = Guid.NewGuid();

                #endregion

                #region  Password Hashing

                cus.salt     = GenerateSalt.saltStr(10);
                cus.password = HashPassword.CreateMD5(cus.password, cus.salt);

                #endregion

                cus.IsEmailVerified = false;

                #region Save to Database

                using (AssignmentContext db = new AssignmentContext())
                {
                    db.Customers.Add(cus);
                    db.SaveChanges();
                }

                //Send Email to User
                SendVerificationLinkEmail(cus.email, cus.ActivationCode.ToString());
                message = "Registration successfully done. Account activation link " +
                          " has been sent to your email id:" + cus.email;
                Status = true;

                #endregion
            }
            else
            {
                message = "Invalid Request";
            }

            ViewBag.Message = message;
            ViewBag.Status  = Status;
            return(View(cus));
        }