Ejemplo n.º 1
0
        public ActionResult EditUser(int?id)
        {
            User user = new User();

            if (id.HasValue)
            {
                user = (User)this.repository.GetUserById(id.Value);
            }
            else if (User != null)
            {
                user = (User)this.repository.GetUserById(User.UserID);
            }
            else
            {
                return(HttpNotFound()); // change to some reasonable error
            }
            var model = new UserEditUserViewModel
            {
                UserID    = user.UserID,
                FirstName = user.FirstName,
                LastName  = user.LastName,
                Email     = user.Email,
                AcademyID = user.AcademyID,
                Username  = user.Username
            };

            ViewBag.AcademyID = new SelectList(repository.GetAllAcademies(), "AcademyID", "AcademyName", user.AcademyID);
            return(View(model));
        }
Ejemplo n.º 2
0
 public bool UserEditUser(UserEditUserViewModel model)
 {
     try
     {
         var user = db.Users.Find(model.UserID);
         user.AcademyID       = model.AcademyID;
         user.Email           = model.Email;
         user.FirstName       = model.FirstName;
         user.LastName        = model.LastName;
         user.Username        = model.Username;
         db.Entry(user).State = EntityState.Modified;
         db.SaveChanges();
     }
     catch (Exception)
     {
         return(false);
     }
     return(true);
 }
Ejemplo n.º 3
0
        public async Task <ActionResult> EditUser(UserEditUserViewModel model, HttpPostedFileBase file)
        {
            // ModelState.AddModelError(string.Empty, "An image file must be chosen.");

            if (ModelState.IsValid)
            {
                if (file != null)
                {
                    string fileName = Path.GetFileName(file.FileName);
                    // Upload the file to Azure Blob Storage
                    bool savedComplete = await Task.Run(
                        () =>
                    {
                        var userid          = User.UserID;
                        var user            = repository.GetUserById(userid);
                        byte[] resizedImage = new byte[0];
                        var jpeg            = new byte[] { 255, 216, 255, 224 }; // jpeg
                        if (file.ContentLength > 0)
                        {
                            var filename = Path.GetFileName(file.FileName);
                            try
                            {
                                System.Drawing.Image sourceimage =
                                    System.Drawing.Image.FromStream(file.InputStream);
                                var BitmapResizedImage = ProjectTools.ResizeImage(sourceimage, 256, 256);
                                resizedImage           = ProjectTools.imageToByteArray(BitmapResizedImage);
                            }
                            catch (Exception ex)
                            {
                                ViewBag.ErrorMessage = ex.Message;
                                ModelState.AddModelError(string.Empty, "An image file must be chosen.");
                                return(false);
                            }
                        }

                        repository.DeleteAllAvatarsFromUser(userid);

                        if (file != null && file.ContentLength > 0)
                        {
                            var avatar = new Picture
                            {
                                User        = user,
                                PictureName = System.IO.Path.GetFileName(file.FileName),
                                Type        = FileType.Avatar,
                                ContentType = file.ContentType
                            };
                            avatar.Content = resizedImage;
                            repository.SavePicture(avatar, userid);
                        }
                        return(true);
                    });
                }
                if (User == null)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
                }
                repository.UserEditUser(model);
                User.FirstName = model.FirstName;
                User.LastName  = model.LastName;
                return(RedirectToAction("Index"));
            }
            ViewBag.AcademyID = new SelectList(repository.GetAllAcademies(), "AcademyID", "AcademyName", model.AcademyID);
            return(View(model));
        }