Ejemplo n.º 1
0
        public ActionResult ForgotPassword(string EmailID)
        {
            //Verify Email ID
            //Generate Reset password link
            //Send Email
            string message = "";


            using (DataquadEntities dc = new DataquadEntities())
            {
                var account = dc.userDetails.Where(a => a.emailId == EmailID).FirstOrDefault();
                if (account != null)
                {
                    //Send email for reset password
                    string resetCode = Guid.NewGuid().ToString();
                    SendVerificationLinkEmail(account.emailId, resetCode, "ResetPassword");
                    account.resetPasswordCode = resetCode;
                    //This line I have added here to avoid confirm password not match issue , as we had added a confirm password property
                    //in our model class in part 1
                    dc.Configuration.ValidateOnSaveEnabled = false;
                    dc.SaveChanges();
                    message = "Reset password link has been sent to your email id.";
                }
                else
                {
                    message = "Account not found";
                }
            }
            ViewBag.Message = message;
            return(View());
        }
Ejemplo n.º 2
0
        public ActionResult CreateProfile(int id)
        {
            TempData["id"] = id;
            userPersonalDetails newUser = new userPersonalDetails();

            newUser.id = id;

            newUser.GenderList.Add(new SelectListItem {
                Text = "Male", Value = "Male"
            });
            newUser.GenderList.Add(new SelectListItem {
                Text = "Female", Value = "Female"
            });
            newUser.GenderList.Add(new SelectListItem {
                Text = "Other", Value = "Other"
            });
            newUser.GenderList.Add(new SelectListItem {
                Text = "Don't want to specify", Value = "Don't want to specify"
            });
            using (DataquadEntities db = new DataquadEntities())
            {
                var races = db.Races.ToList();
                foreach (var race in races)
                {
                    newUser.RaceList.Add(new SelectListItem
                    {
                        Text  = race.raceName,
                        Value = race.raceId.ToString()
                    });
                }
            }

            return(View(newUser));
        }
Ejemplo n.º 3
0
        // GET: Account
        //public ActionResult Index()
        //{
        //    return View();
        //}

        //[HttpPost]
        //public ActionResult Index(userLoginDetails input)
        //{
        //    using (DataquadEntities db = new DataquadEntities())
        //    {
        //        var userDetails = db.userLoginDetails.Where(x => x.userName == input.userName && x.password == input.password).FirstOrDefault();

        //        if (userDetails == null)
        //        {
        //            input.ErrorMessage = "Invalid username or password";
        //            return View("Index", input);
        //        }
        //        else
        //        {
        //            var xyz = db.userPersonalDetails.Where(x => x.id == userDetails.userId).FirstOrDefault();
        //            if (xyz != null)
        //            {
        //                return RedirectToAction("LogOn", "Account", new { ID = xyz.id });
        //            }
        //            else
        //            {
        //                return RedirectToAction("CreateProfile", new { id = userDetails.userId });
        //            }
        //        }
        //    }
        //}

        public ActionResult DisplayImages(int?id)
        {
            DataquadEntities  db         = new DataquadEntities();
            userProfileImages userImages = new userProfileImages();

            return(View("LogOn", id));
        }
Ejemplo n.º 4
0
        public ActionResult ResetPassword(ResetPasswordModel model)
        {
            var message = "";

            if (ModelState.IsValid)
            {
                using (DataquadEntities dc = new DataquadEntities())
                {
                    var user = dc.userDetails.Where(a => a.resetPasswordCode == model.ResetCode).FirstOrDefault();
                    if (user != null)
                    {
                        user.password          = Crypto.Hash(model.NewPassword);
                        user.resetPasswordCode = "";
                        dc.Configuration.ValidateOnSaveEnabled = false;
                        dc.SaveChanges();
                        message = "New password updated successfully";
                    }
                }
            }
            else
            {
                message = "Something invalid";
            }
            ViewBag.Message = message;
            return(View(model));
        }
Ejemplo n.º 5
0
        public ActionResult ResetPassword(string id)
        {
            //Verify the reset password link
            //Find account associated with this link
            //redirect to reset password page
            if (string.IsNullOrWhiteSpace(id))
            {
                return(HttpNotFound());
            }

            using (DataquadEntities dc = new DataquadEntities())
            {
                var user = dc.userDetails.Where(a => a.resetPasswordCode == id).FirstOrDefault();
                if (user != null)
                {
                    ResetPasswordModel model = new ResetPasswordModel();
                    model.ResetCode = id;
                    return(View(model));
                }
                else
                {
                    return(HttpNotFound());
                }
            }
        }
Ejemplo n.º 6
0
        public ActionResult Upload(userProfileImages image)
        {
            if (image.File != null)
            {
                if (image.File.ContentLength > (8 * 1024 * 1024))
                {
                    ModelState.AddModelError("CustomError", "File size must be less than 8 MB");
                    return(View());
                }
                if (!(image.File.ContentType == "image/jpeg" || image.File.ContentType == "image/gif"))
                {
                    ModelState.AddModelError("CustomError", "File type allowed : jpeg and gif");
                    return(View());
                }

                //Images image = new Images();
                image.FileName  = image.File.FileName;
                image.ImageSize = image.File.ContentLength;

                byte[] data = new byte[image.File.ContentLength];
                image.File.InputStream.Read(data, 0, image.File.ContentLength);

                image.ImageData = data;

                // image.UserId = userId;
                if (ModelState.IsValid)
                {
                    using (DataquadEntities db = new DataquadEntities())
                    {
                        var recordFromDB = db.userProfileImages.Where(x => x.UserId == image.UserId).FirstOrDefault();
                        if (recordFromDB == null)
                        {
                            db.userProfileImages.Add(image);
                            db.SaveChanges();
                            return(RedirectToAction("ViewProfile", new { id = image.UserId }));
                        }
                        else
                        {
                            recordFromDB.FileName  = image.FileName;
                            recordFromDB.ImageData = data;
                            recordFromDB.ImageSize = image.ImageSize;
                            recordFromDB.UserId    = image.UserId;
                            db.SaveChanges();
                            return(RedirectToAction("ViewProfile", new { id = recordFromDB.UserId }));
                        }
                    }
                }
                return(RedirectToAction("Home", "Home", new { id = image.UserId }));
            }
            else
            {
                ModelState.AddModelError("FileName", "Please select an image to upload");
                DataquadEntities  db  = new DataquadEntities();
                userProfileImages abc = new userProfileImages();
                //image.UserId = userId;
                ViewBag.userImages = db.userProfileImages.Where(x => x.UserId == image.UserId).FirstOrDefault();
                return(View(image));
            }
        }
Ejemplo n.º 7
0
 public bool IsEmailExist(string emailID)
 {
     using (DataquadEntities dc = new DataquadEntities())
     {
         var v = dc.userDetails.Where(a => a.emailId == emailID).FirstOrDefault();
         return(v != null);
     }
 }
 //To present a view to rename a file
 public ActionResult RenameFile(int?fileId)
 {
     using (DataquadEntities db = new DataquadEntities())
     {
         var file = GetFileById(fileId);
         return(View("Test", file));
     }
 }
 //To get the File using the FileId
 private static userFilesCollection GetFileById(int?fileId)
 {
     using (DataquadEntities db = new DataquadEntities())
     {
         var fileFromDB = db.userFilesCollections.Where(x => x.FileId == fileId).FirstOrDefault();
         return(fileFromDB);
     }
 }
 //AboutUs Action Method
 public ActionResult AboutUs(int?id)
 {
     using (DataquadEntities db = new DataquadEntities())
     {
         var userDetails = db.userPersonalDetails.Where(x => x.userId == id).FirstOrDefault();
         return(View(userDetails));
     }
 }
Ejemplo n.º 11
0
        public ActionResult Login(userLogin login, string ReturnUrl = "")
        {
            string message = "";

            using (DataquadEntities dc = new DataquadEntities())
            {
                var v = dc.userDetails.Where(a => a.emailId == login.emailId).FirstOrDefault();
                if (v != null)
                {
                    if (!v.isEmailVerified)
                    {
                        ViewBag.Message = "Please verify your email first";
                        return(View());
                    }
                    if (string.Compare(Crypto.Hash(login.password), v.password) == 0)
                    {
                        int    timeout   = login.RememberMe ? 525600 : 20; // 525600 min = 1 year
                        var    ticket    = new FormsAuthenticationTicket(login.emailId, login.RememberMe, timeout);
                        string encrypted = FormsAuthentication.Encrypt(ticket);
                        var    cookie    = new HttpCookie(FormsAuthentication.FormsCookieName, encrypted);
                        cookie.Expires  = DateTime.Now.AddMinutes(timeout);
                        cookie.HttpOnly = true;
                        Response.Cookies.Add(cookie);


                        if (Url.IsLocalUrl(ReturnUrl))
                        {
                            return(Redirect(ReturnUrl));
                        }
                        else
                        {
                            using (DataquadEntities db = new DataquadEntities())
                            {
                                var xyz = db.userPersonalDetails.Where(x => x.userId == v.userId).FirstOrDefault();
                                if (xyz != null)
                                {
                                    return(RedirectToAction("LogOn", "Account", new { ID = xyz.userId }));
                                }
                                else
                                {
                                    return(RedirectToAction("CreateProfile", "Account", new { id = v.userId }));
                                }
                            }
                        }
                    }
                    else
                    {
                        message = "Invalid credential provided";
                    }
                }
                else
                {
                    message = "Invalid credential provided";
                }
            }
            ViewBag.Message = message;
            return(View());
        }
Ejemplo n.º 12
0
        public ActionResult Upload(int?id)
        {
            DataquadEntities  db    = new DataquadEntities();
            userProfileImages image = new userProfileImages();

            image.UserId       = id;
            ViewBag.userImages = db.userProfileImages.Where(x => x.UserId == id).FirstOrDefault();
            return(View(image));
        }
 //To rename a file
 public ActionResult RenameFile(userFilesCollection file)
 {
     using (DataquadEntities db = new DataquadEntities())
     {
         var fileFromDB = db.userFilesCollections.Where(x => x.FileId == file.FileId).FirstOrDefault();
         fileFromDB.FileName = file.FileName;
         db.SaveChanges();
         return(RedirectToAction("ViewProfile", "Account", new { id = fileFromDB.UserId }));
     }
 }
Ejemplo n.º 14
0
        public async Task <ActionResult> ViewProfile(int id)
        {
            using (DataquadEntities db = new DataquadEntities())
            {
                var userPersonalDetails = db.userPersonalDetails.Where(x => x.userId == id).FirstOrDefault();
                ViewBag.userImages = db.userProfileImages.Where(x => x.UserId == id).FirstOrDefault();
                ViewBag.files      = await GetAllFiles.GetAllFilesByUserId(id);

                ViewBag.userId = id;
                return(View(userPersonalDetails));
            }
        }
 //To delete a file
 public ActionResult Delete(userFilesCollection deleteFile)
 {
     //int id = Convert.ToInt32(TempData["Id"]);
     using (DataquadEntities db = new DataquadEntities())
     {
         var recordFromDb = db.userFilesCollections.Find(deleteFile.FileId);
         var userId       = recordFromDb.UserId;
         db.userFilesCollections.Remove(recordFromDb);
         db.SaveChanges();
         return(RedirectToAction("ViewProfile", "Account", new { id = userId }));
     }
 }
 public ActionResult Home(int id)
 {
     using (DataquadEntities db = new DataquadEntities())
     {
         ViewBag.userImages = db.userProfileImages.Where(x => x.UserId == id).FirstOrDefault();
         ViewData["UserId"] = id;
         var userPersonalDetails = db.userPersonalDetails.Where(x => x.userId == id).FirstOrDefault();
         ViewBag.userId = userPersonalDetails.userId;
         ViewBag.id     = id;
         ViewBag.email  = db.userDetails.Where(x => x.userId == id).Select(y => y.emailId).Single();
         return(View(userPersonalDetails));
     }
 }
        //To download a file
        public FileResult DownloadFile(int?fileId)
        {
            byte[] bytes;
            string fileName, contentType;

            using (DataquadEntities db = new DataquadEntities())
            {
                var file = GetFileById(fileId);
                bytes       = file.FileData;
                contentType = file.FileContentType;
                fileName    = file.FileName + "." + file.FileExtension;
            }
            return(File(bytes, contentType, fileName));
        }
        //To present a view to upload files
        public async Task <ActionResult> UploadFiles(int?id)
        {
            userFilesCollection uploadFileCollection = new userFilesCollection();

            uploadFileCollection.UserId = id;
            using (DataquadEntities db = new DataquadEntities())
            {
                var watch = new Stopwatch();
                var files = await GetAllFiles.GetAllFilesByUserId(id);

                ViewBag.files      = files;
                ViewBag.userImages = ImageFiles(files);
            }
            return(View(uploadFileCollection));
        }
Ejemplo n.º 19
0
        public ActionResult CreateProfile(userPersonalDetails newUserDetails)
        {
            if (ModelState.IsValid)
            {
                using (DataquadEntities db = new DataquadEntities())
                {
                    //userPersonalDetails newUser = new userPersonalDetails();
                    newUserDetails.Gender = newUserDetails.selectedGender;
                    newUserDetails.Race   = newUserDetails.selectedRaceName;
                    newUserDetails.userId = newUserDetails.id;
                    db.userPersonalDetails.Add(newUserDetails);

                    db.SaveChanges();
                    return(RedirectToAction("LogOn", new { ID = newUserDetails.userId }));
                }
            }
            return(View(newUserDetails));
        }
Ejemplo n.º 20
0
 public ActionResult LogOn(int?ID)
 {
     if (ID == null)
     {
         return(RedirectToAction("Index", "Home"));
     }
     else
     {
         using (DataquadEntities db = new DataquadEntities())
         {
             ViewBag.userImages = db.userProfileImages.Where(x => x.UserId == ID).FirstOrDefault();
             ViewData["UserId"] = ID;
             var userPersonalDetails = db.userPersonalDetails.Where(x => x.userId == ID).FirstOrDefault();
             ViewBag.firstName = db.userDetails.Where(x => x.userId == ID).Select(y => y.FirstName).FirstOrDefault();
             ViewBag.userId    = userPersonalDetails.userId;
             return(View(userPersonalDetails));
         }
     }
 }
Ejemplo n.º 21
0
        public ActionResult EditProfile(userPersonalDetails newEditedDetails, int?id)
        {
            if (ModelState.IsValid)
            {
                using (DataquadEntities db = new DataquadEntities())
                {
                    var userFromDB = db.userPersonalDetails.Where(x => x.userId == id).FirstOrDefault();
                    userFromDB.Gender = newEditedDetails.selectedGender;
                    userFromDB.Race   = newEditedDetails.selectedRaceName;
                    userFromDB.TechnologyIntersted = newEditedDetails.TechnologyIntersted;
                    userFromDB.Ethnicity           = newEditedDetails.Ethnicity;

                    db.SaveChanges();
                    return(RedirectToAction("ViewProfile", new { id = userFromDB.userId }));
                }
            }

            return(View(newEditedDetails));
        }
        //Upload files
        public async Task <ActionResult> UploadFiles(userFilesCollection uploadedFiles, int?userId)
        {
            string fileNameString, fileExtensionString;
            userFilesCollection uploadFileCollection = new userFilesCollection();

            if (uploadedFiles.Files[0] != null)
            {
                foreach (var file in uploadedFiles.Files)
                {
                    //Images image = new Images();
                    fileNameString                       = (file.FileName.Split('.'))[0];
                    fileExtensionString                  = (file.FileName.Split('.'))[1];
                    uploadFileCollection.FileName        = fileNameString;
                    uploadFileCollection.FileExtension   = fileExtensionString;
                    uploadFileCollection.FileSize        = file.ContentLength;
                    uploadFileCollection.FileContentType = file.ContentType;
                    byte[] data = new byte[file.ContentLength];
                    file.InputStream.Read(data, 0, file.ContentLength);
                    uploadFileCollection.FileData = data;
                    uploadFileCollection.UserId   = userId;
                    DataquadEntities db = new DataquadEntities();
                    db.userFilesCollections.Add(uploadFileCollection);
                    db.SaveChanges();
                }
                return(RedirectToAction("ViewProfile", "Account", new { id = userId }));
            }
            else
            {
                ModelState.AddModelError("FileName", "Please select atleast one file to upload");
                userFilesCollection uploadFile = new userFilesCollection();
                uploadFileCollection.UserId = uploadedFiles.UserId;
                using (DataquadEntities db = new DataquadEntities())
                {
                    var files = await GetAllFiles.GetAllFilesByUserId(uploadedFiles.UserId);

                    ViewBag.files = files;

                    ViewBag.userImages = ImageFiles(files);
                }
                return(View("UploadFiles", uploadFileCollection));
            }
        }
Ejemplo n.º 23
0
        //public static List<userFilesCollection> GetAllFiles(int userId)
        //{
        //    List<userFilesCollection> files = new List<userFilesCollection>();
        //    using (DataquadEntities db = new DataquadEntities())
        //    {
        //        files = db.userFilesCollections.Where(x => x.UserId == userId).ToList();
        //    }
        //    return files;
        //}

        public ActionResult EditProfile(int?id)
        {
            using (DataquadEntities db = new DataquadEntities())
            {
                var userDetails = db.userPersonalDetails.Where(x => x.userId == id).FirstOrDefault();
                if (userDetails == null)
                {
                    return(RedirectToAction("CreateProfile", "Account", new { id = id }));
                }
                else
                {
                    ViewBag.userId = id;
                    userDetails.GenderList.Add(new SelectListItem {
                        Text = "Male", Value = "Male"
                    });
                    userDetails.GenderList.Add(new SelectListItem {
                        Text = "Female", Value = "Female"
                    });
                    userDetails.GenderList.Add(new SelectListItem {
                        Text = "Other", Value = "Other"
                    });
                    userDetails.GenderList.Add(new SelectListItem {
                        Text = "Don't want to specify", Value = "Don't want to specify"
                    });
                    //userDetails.GenderList = new SelectList(genderList, "Value");
                    var races = db.Races.ToList();
                    foreach (var race in races)
                    {
                        userDetails.RaceList.Add(new SelectListItem
                        {
                            Text     = race.raceName,
                            Value    = race.raceId.ToString(),
                            Selected = race.raceName == userDetails.Race ? true : false
                        });
                    }

                    return(View(userDetails));
                }
            }
        }
Ejemplo n.º 24
0
        public ActionResult VerifyAccount(string id)
        {
            bool Status = false;

            using (DataquadEntities dc = new DataquadEntities())
            {
                dc.Configuration.ValidateOnSaveEnabled = false; // This line I have added here to avoid
                                                                // Confirm password does not match issue on save changes
                var v = dc.userDetails.Where(a => a.activationCode == new Guid(id)).FirstOrDefault();
                if (v != null)
                {
                    v.isEmailVerified = true;
                    dc.SaveChanges();
                    Status = true;
                }
                else
                {
                    ViewBag.Message = "Invalid Request";
                }
            }
            ViewBag.Status = Status;
            return(View());
        }
Ejemplo n.º 25
0
 public DataQuadService(DataquadEntities _db)
 {
     db = _db;
 }
Ejemplo n.º 26
0
        public ActionResult Registration([Bind(Exclude = "isEmailVerified,activationCode,ConfirmPassword")] DataQuadService.userDetailsModel user)
        {
            bool   Status  = false;
            string message = "";

            // Model Validation
            if (ModelState.IsValid)
            {
                #region //Email is already Exist
                var isExist = IsEmailExist(user.emailId);
                if (isExist)
                {
                    ModelState.AddModelError("EmailExist", "Email already exist");
                    return(View(user));
                }
                #endregion

                #region Generate Activation Code
                user.activationCode = Guid.NewGuid();
                #endregion

                #region  Password Hashing
                user.password = Crypto.Hash(user.password);
                //user.ConfirmPassword = Crypto.Hash(user.ConfirmPassword); //
                #endregion
                user.isEmailVerified = false;

                #region Save to Database
                using (DataquadEntities dc = new DataquadEntities())
                {
                    //WCFService.userDetails WCFuser = new WCFService.userDetails();
                    //WCFuser.activationCode = user.activationCode;
                    //WCFuser.dateOfBirth= user.dateOfBirth;
                    //WCFuser.emailId = user.emailId;
                    //WCFuser.FirstName = user.FirstName;
                    //WCFuser.LastName = user.LastName;
                    //WCFuser.password = user.password;

                    //client.RegisterUser(WCFuser);

                    // dc.userDetails.Add(user);
                    //dc.SaveChanges();
                    if (client.RegisterUser(user))
                    {
                        //Send Email to User
                        SendVerificationLinkEmail(user.emailId, user.activationCode.ToString());
                        message = "Registration successfully done. Account activation link " +
                                  " has been sent to your email id:" + user.emailId;
                        Status = true;
                    }
                    else
                    {
                        message = "Invalid Request";
                    }
                }
                #endregion
            }
            else
            {
                message = "Invalid Request";
            }

            ViewBag.Message = message;
            ViewBag.Status  = Status;

            return(View(user));
        }