public ActionResult RegistrateUser(RegistrationModel registrationModel, HttpPostedFileBase imageUpload)
 {
     Culture culture = DefineLanguage(HttpContext);
     ProcessResult result = DataManager.Users.RegistrateUser(HttpContext, registrationModel, Server, imageUpload,culture);
     if (!result.Succeeded)
         return RedirectToAction("Registration", "User", new { result = result.Id });
     ViewBag.Culture = culture;
     return View();
 }
        public ProcessResult RegistrateUser(HttpContextBase context, RegistrationModel registrationModel, HttpServerUtilityBase server, HttpPostedFileBase imageUpload,Culture culture =Culture.En)
        {
            User existingUser = Find(registrationModel.Email,false);
            if (existingUser != null)
                return ProcessResults.UserWithSuchEmailExists;

            var user = new User
            {
                Name = registrationModel.Name,
                LastName = registrationModel.LastName,
                Email = registrationModel.Email,
                Password = SecurityManager.GetHashString(registrationModel.Password),
                RegistrationDate = DateTime.Now.Date,
                Status = (short)UserStatus.Unconfirmed.Id
            };

            try
            {
                Data.Users.Add(user);
                Data.SaveChanges();
                if (imageUpload != null)
                {
                    if (imageUpload.ContentLength <= 0 || !SecurityManager.IsImage(imageUpload))
                    {
                        return ProcessResults.InvalidImageFormat;
                    }
                    user.Image = SaveImage(user.Id, StaticSettings.AvatarsUploadFolderPath, imageUpload, server);
                    Data.SaveChanges();
                }
                SendConfirmationMail(context, user,culture);
            }

            catch(Exception)
            {
                Data.Users.Remove(user);
                return ProcessResults.RegistrationError;
            }

            return ProcessResults.UserRegistered;
        }