示例#1
0
        public ActionResult SaveData(UserDetails userDetails)
        {
            ScryptEncoder      encode  = new ScryptEncoder();
            UserDetailsContext context = new UserDetailsContext();

            if (!ModelState.IsValid)
            {
                return(View("Index", userDetails));
            }

            UserDetails userExistence = context.UserDetails.SingleOrDefault(x => x.Email == userDetails.Email);



            if (userExistence == null)
            {
                ViewBag.UserAlreadyExists = "User Does Not Exists";
                return(View("Index"));
            }
            else if (!encode.Compare(userDetails.Password, userExistence.Password))
            {
                ViewBag.UserAlreadyExists = "Incorrect Password";
                return(View("Index"));
            }
            else if (encode.Compare(userDetails.Password, userExistence.Password))
            {
                Session["UserId"]   = userExistence.Id;
                Session["Email"]    = userExistence.Email;
                Session["UserName"] = userExistence.UserName;
                ViewBag.msg         = userExistence.UserName;
                return(RedirectToAction("Main", "Home"));
            }
            return(View("Index"));
        }
示例#2
0
        public ActionResult Main()
        {
            UserDetailsContext context = new UserDetailsContext();

            if (Session["UserId"] != null)
            {
                var userId    = Convert.ToInt32(Session["UserId"]);
                var existence = context.UserProfileDetails.SingleOrDefault(x => x.UserId == userId);
                if (existence == null)
                {
                    ViewBag.NoUserProfile = "Please Create a UserName to Continue";
                    return(View("Edit"));
                }
                else
                {
                    ViewBag.Msg = Session["UserName"];
                    var post = context.Posts.Include("Comments").OrderByDescending(x => x.PostDateTime).ToList();
                    var like = context.LikesDetails.Where(x => x.UserId == userId).ToList();
                    ProfilepageViewModel profilepageViewModel = new ProfilepageViewModel
                    {
                        Posts        = post,
                        LikesDetails = like
                    };
                    return(View(profilepageViewModel));
                }
            }
            else
            {
                return(RedirectToAction("Index", "Home"));
            }
        }
示例#3
0
        public ActionResult Register(RegisterViewModel registerViewModel)
        {
            ScryptEncoder      encode  = new ScryptEncoder();
            UserDetailsContext context = new UserDetailsContext();

            if (!ModelState.IsValid)
            {
                return(View("SignUp", registerViewModel));
            }

            var userExistence = context.UserDetails.SingleOrDefault(x => x.Email == registerViewModel.UserDetails.Email);

            if (userExistence != null)
            {
                ViewBag.UserAlreadyExists = "User Already Exists";
                return(View("SignUp", registerViewModel));
            }
            if (registerViewModel.ConfirmPassword != registerViewModel.UserDetails.Password)
            {
                ViewBag.UserAlreadyExists = "Password And Confirm Password Mismatch";
                return(View("SignUp", registerViewModel));
            }
            registerViewModel.UserDetails.Password = encode.Encode(registerViewModel.UserDetails.Password);
            registerViewModel.UserDetails.UserName = "******";
            context.UserDetails.Add(registerViewModel.UserDetails);
            context.SaveChanges();
            // @ViewBag.success = "Account Created Succesfully Login to continue";
            this.AddNotification("Account Created Succesfully Login to continue", NotificationType.SUCCESS);
            return(View("SignUp"));
        }
示例#4
0
        public ActionResult Comments(int id)
        {
            UserDetailsContext context = new UserDetailsContext();
            var comment = context.Comments.Include("UserDetailss").Where(x => x.PostId == id).ToList();

            return(PartialView("_Comments", comment));
        }
示例#5
0
        public async Task <bool> InsertUserDetailsAsync(InsertUserRequest UserDetails)
        {
            try
            {
                var context         = new UserDetailsContext();
                var UserInformation = new UserDetail();
                UserInformation.UserEmail   = UserDetails.UserEmail;
                UserInformation.FirstName   = UserDetails.FirstName;
                UserInformation.LastName    = UserDetails.LastName;
                UserInformation.PhoneNumber = UserDetails.PhoneNumber;
                UserInformation.UserTypeId  = (int)Enum.Parse(typeof(UserAccessType), UserDetails.UserStatus) + 1;
                var result = await context.AddAsync(UserInformation);

                await context.SaveChangesAsync();

                Debug.Write(result);
                return(true);

                /*string connectionstring =
                 * "Data Source=DESKTOP-02T0GUH\\SQLEXPRESS;Initial Catalog = UserDetails; User ID = DESKTOP-02T0GUH\\sonij; Password='';Integrated Security=true;";
                 * SqlConnection conn = new SqlConnection(connectionstring);
                 * string query = "INSERT INTO UserDetails (FirstName,LastName,UserEmail,UserTypeId,PhoneNumber) VALUES (@firstname,@lastname,@useremail,@userTypeId,@phonenumber)";
                 * using (SqlCommand cmd = new SqlCommand(query, conn))
                 * {
                 *  //@phonenumber
                 *  cmd.CommandType = CommandType.Text;
                 *  conn.Open();
                 *
                 *  cmd.Parameters.AddWithValue("@userTypeId", (int)Enum.Parse(typeof(UserAccessType), UserDetails.UserStatus) + 1);
                 *  cmd.Parameters.AddWithValue("@firstname", UserDetails.FirstName.ToString());
                 *  cmd.Parameters.AddWithValue("@lastname", UserDetails.LastName.ToString());
                 *  cmd.Parameters.AddWithValue("@useremail", UserDetails.UserEmail.ToString());
                 *  cmd.Parameters.AddWithValue("@phonenumber", UserDetails.PhoneNumber.ToString());
                 *  try
                 *  {
                 *      var reader = await cmd.ExecuteNonQueryAsync();
                 *      conn.Close();
                 *      return true;
                 *      //return false;
                 *  }
                 *  catch (Exception e)
                 *  {
                 *      Debug.WriteLine(e);
                 *      conn.Close();
                 *      return false;
                 *  }
                 * }*/
            }
            catch (Exception e)
            {
                Debug.Write(e);
                return(false);
            }
        }
示例#6
0
        public ActionResult DeletePost(int id)
        {
            UserDetailsContext context = new UserDetailsContext();
            var post  = context.Posts.SingleOrDefault(x => x.PostId == id);
            var postC = context.Comments.Where(x => x.PostId == id).ToList();;

            context.Comments.RemoveRange(postC);
            context.SaveChanges();
            context.Posts.Remove(post);
            context.SaveChanges();
            return(RedirectToAction("ProfilePage", "Home"));
        }
示例#7
0
        public ActionResult Dislike(int id)
        {
            UserDetailsContext context = new UserDetailsContext();
            var userId = Convert.ToInt32(Session["UserId"]);
            var post   = context.LikesDetails.SingleOrDefault(x => x.PostId == id && x.UserId == userId);

            context.LikesDetails.Remove(post);
            context.SaveChanges();
            var like = context.Posts.Find(id);

            like.Like -= 1;
            context.SaveChanges();
            return(RedirectToAction("Main", "Home"));
        }
示例#8
0
        public ActionResult ProfileP(int id)
        {
            UserDetailsContext context = new UserDetailsContext();

            ViewBag.msg = Session["UserName"];
            var details = context.UserProfileDetails.Include("UserDetailss").SingleOrDefault(x => x.UserId == id);
            var posts   = context.Posts.Where(x => x.UserId == id).OrderByDescending(x => x.PostDateTime).ToList();
            ProfilepageViewModel profilepageViewModel = new ProfilepageViewModel
            {
                UserProfileDetails = details,
                Posts = posts
            };

            return(View("ProfilePage", profilepageViewModel));
        }
示例#9
0
        public ActionResult SavePost(Posts posts)
        {
            UserDetailsContext context = new UserDetailsContext();

            posts.UserId = Convert.ToInt32(Session["UserId"]);
            if (!ModelState.IsValid)
            {
                return(View("AddPost", posts));
            }
            posts.UserName     = Session["UserName"].ToString();
            posts.PostDateTime = DateTime.Now;
            context.Posts.Add(posts);
            context.SaveChanges();
            this.AddNotification("Post Successfully Uploaded", NotificationType.SUCCESS);
            return(RedirectToAction("Main", "Home"));
        }
示例#10
0
        public ActionResult AddComment(ProfilepageViewModel profilepageViewModel, string buttonvalue)
        {
            var userId = Session["UserId"];
            var postId = buttonvalue;
            UserDetailsContext context  = new UserDetailsContext();
            Comments           comments = new Comments
            {
                PostId  = Convert.ToInt32(postId),
                UserId  = Convert.ToInt32(userId),
                Comment = profilepageViewModel.UserComment
            };

            context.Comments.Add(comments);
            context.SaveChanges();
            return(RedirectToAction("Main", "Home"));
        }
示例#11
0
        public ActionResult Edit()
        {
            UserDetailsContext context = new UserDetailsContext();

            var userId        = Convert.ToInt32(Session["UserId"]);
            var userExistence = context.UserProfileDetails.SingleOrDefault(x => x.UserId == userId);

            if (userExistence == null)
            {
                return(View());
            }
            UserProfileDetails UserProfileDetails = new UserProfileDetails
            {
                UserName = userExistence.UserName,
                Bio      = userExistence.Bio
            };

            //  return Content(UserProfileDetails.UserName);
            return(View(UserProfileDetails));
        }
示例#12
0
        public ActionResult Like(int id)
        {
            UserDetailsContext context = new UserDetailsContext();
            var userId = Convert.ToInt32(Session["UserId"]);

            LikesDetails likesDetails = new LikesDetails
            {
                PostId = id,
                UserId = userId
            };

            context.LikesDetails.Add(likesDetails);
            context.SaveChanges();
            var count = context.LikesDetails.Where(x => x.PostId == id).Count();
            var post  = context.Posts.Find(id);

            post.Like = count;
            context.SaveChanges();
            return(RedirectToAction("Main", "Home"));
        }
 public async Task <GetUserDetailsResponse> GetUserInformationAsync(GetUserDetailsRequest userDetails)
 {
     try
     {
         var context         = new UserDetailsContext();
         var userInformation = context.UserDetails.Where(user => user.UserEmail == userDetails.UserEmail).SingleOrDefault();
         GetUserDetailsResponse userResponse = new GetUserDetailsResponse();
         userResponse.FirstName   = userInformation.FirstName;
         userResponse.LastName    = userInformation.LastName;
         userResponse.PhoneNumber = userInformation.PhoneNumber;
         userResponse.UserEmail   = userInformation.UserEmail;
         userResponse.UserType    = ((UserAccessType)userInformation.UserTypeId).ToString();
         return(userResponse);
     }
     catch (Exception e)
     {
         throw;
         return(null);
     }
 }
示例#14
0
        public ActionResult SaveEdit(UserProfileDetails userProfileDetails)
        {
            UserDetailsContext context     = new UserDetailsContext();
            UserDetailsContext contextt    = new UserDetailsContext();
            UserDetailsContext contexttt   = new UserDetailsContext();
            UserDetails        userDetails = new UserDetails();

            if (!ModelState.IsValid)
            {
                return(View("Edit", userProfileDetails));
            }

            var userId              = Convert.ToInt32(Session["UserId"]);
            var userExistence       = context.UserProfileDetails.SingleOrDefault(x => x.UserId == userId);
            var userExistenceInMain = contextt.UserDetails.SingleOrDefault(x => x.Id == userId);

            if (contexttt.UserProfileDetails.Any(x => x.UserName == userProfileDetails.UserName && x.UserId != userId))
            {
                ViewBag.error = "UserName already Exists . Try With other name";
                return(View("Edit"));
            }
            if (userExistence == null)
            {
                userProfileDetails.UserId = userId;
                context.UserProfileDetails.Add(userProfileDetails);
                context.SaveChanges();

                userExistenceInMain.UserName = userProfileDetails.UserName;
                contextt.SaveChanges();
                return(RedirectToAction("ProfilePage", "Home"));
            }

            userExistence.UserName = userProfileDetails.UserName;
            userExistence.Bio      = userProfileDetails.Bio;
            context.SaveChanges();
            userExistenceInMain.UserName = userProfileDetails.UserName;
            contextt.SaveChanges();

            return(RedirectToAction("ProfilePage", "Home"));
        }
示例#15
0
        public ActionResult ProfilePage()
        {
            UserDetailsContext context = new UserDetailsContext();

            if (Session["UserId"] != null)
            {
                var UserId = Convert.ToInt32(Session["UserId"]);
                ViewBag.msg = Session["UserName"];

                var details = context.UserProfileDetails.Include("UserDetailss").SingleOrDefault(x => x.UserId == UserId);
                var posts   = context.Posts.Where(x => x.UserId == UserId).OrderByDescending(x => x.PostDateTime).ToList();
                ProfilepageViewModel profilepageViewModel = new ProfilepageViewModel
                {
                    UserProfileDetails = details,
                    Posts = posts
                };
                return(View(profilepageViewModel));
            }
            else
            {
                return(RedirectToAction("Index", "Home"));
            }
        }
 public UserDetailsController(UserDetailsContext context)
 {
     _context = context;
 }
 public TestPageController(UserDetailsContext user)
 {
     _Users = user;
 }
 public AddUserDetailsHandler(UserDetailsContext context)
 {
     _context = context;
 }
示例#19
0
 public UserDetailsService(UserDetailsContext context)
 {
     _context = context;
 }