示例#1
0
    public void FillPageInfo()
    {
        userID = 0;
        UserInfoMan_Business userInfoMan = new UserInfoMan_Business();

        if (Request[RequestMSG.UsrID] != null)
        {
            userID = Convert.ToInt32(Request[RequestMSG.UsrID]);
            user   = userInfoMan.GetUserFullInfo(userID);
        }
        else
        {
            user = userInfoMan.GetClientFullUserInfo();
        }
        // کد های این قسمت به هندلر منتقل شد
        //txtbName.Text = user.User.Fname;
        //txtbLastName.Text = user.User.Lname;
        //txtbAffiliations.Text = user.User.Affiliations;
        //txtbPhoneNumber.Text = user.User.Phone;
        //txtbFax.Text = user.User.Fax;
        //txtbFieldsOfInterest.Text = user.User.Fields;
        //txtbNationalCode.Text = user.User.Melli;
        //txtbEducation.Text = user.User.Education;
        //txtbEmail.Text = user.User.Email;
        //ViewState[RequestMSG.UserImage] = user.User.Image;
        //if (user.User.Birthdate != null && user.User.Birthdate.Datetime != null)
        //    txtbBirthDate.Text = user.User.Birthdate.Datetime.ToString("yyyy.MM.dd");
        //if (user.User.Sex != null)
        //    ddlGender.SelectedValue = user.User.Sex.ID.ToString();
    }
        public IActionResult MakingAnOrder()
        {
            Cart cart = new Cart();

            cart.GetFromCoockie(HttpContext);
            if ((cart?.OrderLine?.Count() ?? 0) == 0)
            {
                ModelState.AddModelError("", "The shopping cart is empty");
                return(RedirectToAction("ShowCart", "Cart"));
            }
            List <Worker>   workers = _workerServises.Read();
            List <FullUser> users   = new List <FullUser>();

            foreach (var item in workers)
            {
                users.Add(_fullUserServices.Read(item.PassportNumber));
            }

            ViewData["Master"]  = users.Where(x => x.Roles.Count(y => y.Title.Equals("Master")) != 0);
            ViewData["Manager"] = users.Where(x => x.Roles.Count(y => y.Title.Equals("Manager")) != 0);
            ViewData["Client"]  = _clientServices.Read();
            FullUser user = new FullUser();

            user.GetUserFromCookie(HttpContext);
            ViewBag.ManagerId = user.Worker.PassportNumber;

            return(View());
        }
示例#3
0
        /// <summary>
        /// Sends the validation token to the given mail.
        /// </summary>
        /// <param name="mail"></param>
        /// <param name="redirect"></param>
        public void SendMailValidation(FullUser fullUser, string redirect)
        {
            var       guid = Guid.NewGuid();
            MaileCode mc   = new MaileCode(fullUser.finalMailID, guid);

            //check if old request is exist and remove it
            MaileCode existMailCode = _context.MailCodes.SingleOrDefault(mcoode => mcoode.mail == fullUser.finalMailID);

            if (existMailCode != null)
            {
                // remove old request for reset password
                _context.Remove(existMailCode);
            }

            //save new request for reset pass
            _context.MailCodes.Add(mc);
            _context.SaveChanges();



            if (whiteListEmailFilter.IsValid(fullUser.finalMailID))
            {
                SendMsg(redirect, fullUser.finalMailID, guid);
            }
        }
示例#4
0
        public async Task <IHttpActionResult> SetUserDetailsIfNotExists(FullUser user, string token)
        {
            if (string.IsNullOrEmpty(token))
            {
                return(BadRequest("Empty token"));
            }

            if (user == null)
            {
                return(BadRequest("Error, No details were provided."));
            }

            string userId = await VerifyAndDecrypt(token);

            if (string.IsNullOrEmpty(userId))
            {
                return(BadRequest("Token not valid."));
            }

            try
            {
                _identityMng.Get(userId);
            }
            catch (IdentityException e)
            {
                _identityMng.RegisterOrUpdate(userId, user);
            }
            catch (Exception e)
            {
                return(Content(HttpStatusCode.InternalServerError, e.Message));
            }
            return(Ok());
        }
示例#5
0
        public async Task <IHttpActionResult> GetOtherUserName(string token, string otherUserId)
        {
            if (string.IsNullOrEmpty(token) || string.IsNullOrEmpty(otherUserId))
            {
                return(BadRequest("Token or other user id empty."));
            }

            string userId = await VerifyAndDecrypt(token);

            if (string.IsNullOrEmpty(userId))
            {
                return(BadRequest("Token not valid."));
            }

            try
            {
                FullUser user = _identityMng.Get(otherUserId);
                if (user == null)
                {
                    return(BadRequest("Faild get user from db."));
                }
                return(Ok(user.FullName));
            }
            catch (IdentityException e)
            {
                return(BadRequest(e.Message));
            }
            catch (Exception e)
            {
                return(Content(HttpStatusCode.InternalServerError, e.Message));
            }
        }
示例#6
0
    public void FillPageInfo()
    {
        int userID = Convert.ToInt32(Request[RequestMSG.UsrID]);
        UserInfoMan_Business userInfoMan = new UserInfoMan_Business();
        FullUser             user        = userInfoMan.GetUserFullInfo(userID);

        //
        txtbName.Text                   = user.User.Fname;
        txtbLastName.Text               = user.User.Lname;
        txtbAffiliations.Text           = user.User.Affiliations;
        txtbPhoneNumber.Text            = user.User.Phone;
        txtbFax.Text                    = user.User.Fax;
        txtbFieldsOfInterest.Text       = user.User.Fields;
        txtbNationalCode.Text           = user.User.Melli;
        txtbEducation.Text              = user.User.Education;
        txtbEmail.Text                  = user.User.Email;
        ViewState[RequestMSG.UserImage] = user.User.Image;
        if (user.User.Birthdate != null && user.User.Birthdate.Datetime != null)
        {
            txtbBirthDate.Text = user.User.Birthdate.Datetime.ToString("yyyy.MM.dd");
        }
        if (user.User.Sex != null)
        {
            ddlGender.SelectedValue = user.User.Sex.ID.ToString();
        }
    }
示例#7
0
        public static FullUser ConvertToOrdinarFullUser(this FullUserThatAllowsChanges sorse, List <Role> exsistingRoles)
        {
            FullUser result = new FullUser();

            Worker worker = new Worker()
            {
                PassportNumber = sorse.WorkerId, PersonalData = sorse.WorkerFio
            };

            if (sorse.HasAnAccount)
            {
                result.User = new User {
                    Login = sorse.Login, Password = sorse.Password, WorkerId = sorse.WorkerId, Id = sorse.UserId
                };
                result.Roles        = new List <Role>();
                sorse.ExistingRoles = exsistingRoles;
                int length = sorse.ExistingRoles.Count();
                for (int i = 0; i < length; i++)
                {
                    if (sorse.ActivatedRoles[i] == true)
                    {
                        result.Roles.Add(sorse.ExistingRoles[i]);
                    }
                }
            }
            else
            {
                result.User = null;
            }
            result.Worker = worker;
            return(result);
        }
示例#8
0
        public FullUser Read(int workerNumber)
        {
            List <Worker> workers = _workerServices.Read(minPassportNumber: workerNumber, maxPassportNumber: workerNumber);
            List <User>   users   = _userServices.Read(workerId: workerNumber);

            if (users.Count == 0)
            {
                return(new FullUser {
                    Worker = workers[0], User = null, Roles = new List <Role>()
                });
            }
            else
            {
                List <UserRole> userRoles = _userRoleServices.Read(minUserId: users[0].Id, maxUserId: users[0].Id);
                List <Role>     roles     = new List <Role>();
                foreach (UserRole item in userRoles)
                {
                    var roleList = _roleServices.Read(minId: item.RoleId, maxId: item.RoleId);
                    roles.Add(roleList[0]);
                }
                FullUser result = new FullUser {
                    User = users[0], Worker = workers[0], Roles = roles
                };
                return(result);
            }
        }
 public void FillPageInfo()
 {
     userID = 0;
     UserInfoMan_Business userInfoMan = new UserInfoMan_Business();
     if (Request[RequestMSG.UsrID] != null)
     {
         userID = Convert.ToInt32(Request[RequestMSG.UsrID]);
         user = userInfoMan.GetUserFullInfo(userID);
     }
     else
         user = userInfoMan.GetClientFullUserInfo();
     // کد های این قسمت به هندلر منتقل شد
     //txtbName.Text = user.User.Fname;
     //txtbLastName.Text = user.User.Lname;
     //txtbAffiliations.Text = user.User.Affiliations;
     //txtbPhoneNumber.Text = user.User.Phone;
     //txtbFax.Text = user.User.Fax;
     //txtbFieldsOfInterest.Text = user.User.Fields;
     //txtbNationalCode.Text = user.User.Melli;
     //txtbEducation.Text = user.User.Education;
     //txtbEmail.Text = user.User.Email;
     //ViewState[RequestMSG.UserImage] = user.User.Image;
     //if (user.User.Birthdate != null && user.User.Birthdate.Datetime != null)
     //    txtbBirthDate.Text = user.User.Birthdate.Datetime.ToString("yyyy.MM.dd");
     //if (user.User.Sex != null)
     //    ddlGender.SelectedValue = user.User.Sex.ID.ToString();
 }
示例#10
0
        public FullUser Read(string login, string password)
        {
            if (login == null || password == null)
            {
                login    = "";
                password = "";
            }
            List <User> users = _userServices.Read(login: login, password: password);

            if (users.Count == 0)
            {
                throw new ArgumentException();
            }
            List <Worker>   workers   = _workerServices.Read(minPassportNumber: users[0].WorkerId, maxPassportNumber: users[0].WorkerId);
            List <UserRole> userRoles = _userRoleServices.Read(minUserId: users[0].Id, maxUserId: users[0].Id);
            List <Role>     roles     = new List <Role>();

            foreach (UserRole item in userRoles)
            {
                var roleList = _roleServices.Read(minId: item.RoleId, maxId: item.RoleId);
                roles.Add(roleList[0]);
            }
            FullUser result = new FullUser {
                User = users[0], Worker = workers[0], Roles = roles
            };

            return(result);
        }
示例#11
0
        public void Create(FullUser fullUser)
        {
            if (
                fullUser.IsValid() &&
                fullUser.Worker.IsValid(_workerServices.Read().Select(x => x.PassportNumber).ToList()) &&
                (fullUser?.User?.IsValid(_userServices.Read().Select(y => y.Login).ToList()) ?? true)
                )
            {
                try
                {
                    _workerServices.Create(fullUser.Worker);
                }
                catch (Exception)
                {
                    throw;
                }
                if (fullUser.User != null)
                {
                    fullUser.User = _userServices.Create(fullUser.User);

                    foreach (var item in fullUser.Roles)
                    {
                        _userRoleServices.Create(new UserRole()
                        {
                            UserId = fullUser.User.Id, RoleId = item.Id
                        });
                    }
                }
            }
        }
示例#12
0
        public int AddUser(FullUser fullUser)
        {
            User user = new User();

            user.Id       = fullUser.user.Id;
            user.Forename = fullUser.user.Forename;
            user.Email    = fullUser.user.Email;
            user.Password = fullUser.user.Password;
            user.Surname  = fullUser.user.Surname;
            user.Username = fullUser.user.Username;
            db.Users.AddOrUpdate(user);
            db.SaveChanges();

            User     userInDb = db.Users.Where(x => x.Username == fullUser.user.Username).First();
            UserRole userRole = new UserRole();

            userRole.Id     = userInDb.Id;
            userRole.UserId = userInDb.Id;
            userRole.RoleId = fullUser.role.Id;

            db.UserRoles.AddOrUpdate(userRole);
            db.SaveChanges();

            return(userInDb.Id);
        }
示例#13
0
        public object createUser(FullUser user)
        {
            WebOperationContext.Current.OutgoingResponse.StatusCode = System.Net.HttpStatusCode.Conflict;
            if (user.UserName.Length > 50)
            {
                return(new Status(true, "Zbyt długa nazwa użytkownika."));
            }
            if (user.Password.Length > 50)
            {
                return(new Status(true, "Zbyt długie hasło."));
            }
            if (user.Mail.Length > 50)
            {
                return(new Status(true, "Zbyt długi adres e-mail."));
            }
            if (DBUtils.userNameExists(sqlConnection, user.UserName))
            {
                return(new Status(true, "Użytkownik z taką nazwą już istnieje."));
            }
            if (DBUtils.userMailExists(sqlConnection, user.Mail))
            {
                return(new Status(true, "Użytkownik z takim adresem e-mail już istnieje."));
            }

            int id = DBUtils.addUser(sqlConnection, user);

            WebOperationContext.Current.OutgoingResponse.StatusCode = System.Net.HttpStatusCode.OK;
            return(new Status(false, "Dodano do bazy."));
        }
示例#14
0
        public static FullUser getSimpleUser(SqlConnection sqlConnection, int id)
        {
            sqlConnection.Close();

            SqlCommand cmd = new SqlCommand(DBUtils.getUserCommand, sqlConnection);

            cmd.Parameters.AddWithValue(nameWithAt(USERS_COLUMN_ID), id);
            sqlConnection.Open();

            FullUser user = null;

            using (SqlDataReader reader = cmd.ExecuteReader())
            {
                if (reader.Read())
                {
                    user          = new FullUser();
                    user.Id       = reader.GetInt32(0);
                    user.UserName = reader.GetString(1);
                    user.Mail     = reader.GetString(3);
                    if (!reader.IsDBNull(4))
                    {
                        user.City = reader.GetString(4);
                    }
                }
            }
            sqlConnection.Close();

            return(user);
        }
示例#15
0
        public void POST_user()
        {
            string         url            = string.Format(API_URL, "/user");
            HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create(url);

            httpWebRequest.Method      = WebRequestMethods.Http.Post;
            httpWebRequest.ContentType = "application/json; charset=utf-8";

            string   username = "******" + DateTime.Now.ToUnixTimeStampUTC().ToString();
            FullUser user     = new FullUser()
            {
                City         = "Rzeszów",
                Id           = 0,
                Mail         = username + "@example.com",
                Password     = "******",
                UserName     = username,
                VehicleMake  = "Opel",
                VehicleModel = "Astra",
                Birthdate    = "1992-08-09"
            };

            string       postJson = objectToJsonNew <FullUser>(user);
            StreamWriter writer   = new StreamWriter(httpWebRequest.GetRequestStream());

            writer.Write(postJson);
            writer.Close();

            HttpWebResponse httpWebResponse = (HttpWebResponse)httpWebRequest.GetResponse();
            string          jsonString      = streamToString(httpWebResponse);

            object obj = jsonToObject <FullUser>(jsonString);

            Assert.IsInstanceOfType(obj, typeof(FullUser));
        }
示例#16
0
        public void GetTwoChats()
        {
            Server.Server server = new Server.Server();
            server.startServer(2020);
            TcpClient client = new TcpClient("127.0.0.1", 2020);

            User     user     = new User(0, "Kotovasya");
            FullUser fullUser = new FullUser(user, "228");

            server.BaseManager.add(0, fullUser);
            server.OnlineManager.add(client, user);

            server.ChatManager.newChat("Test1", user);
            server.ChatManager.newChat("Test2", user);

            List <Chat> testChats = new List <Chat>()
            {
                new Chat(1, "Test1"), new Chat(2, "Test2")
            };
            List <Chat> chats = new List <Chat>();

            foreach (KeyValuePair <int, FullChat> chat in server.ChatManager.List)
            {
                chats.Add(chat.Value.ToChat());
            }

            Assert.IsTrue(chats.Equals(testChats), "Полученные чаты не совпадают с ожидаемыми");
        }
示例#17
0
        public ServiceResult <string> Add(FullUser user)
        {
            if (user == null || user.Login == null)
            {
                return(ServiceResult <string> .Failed(string.Empty, check_user_empty_data));
            }
            RepositoryResult <IEnumerable <User> > queryResult = userRepository.Query(ux => ux.Login == user.Login);

            if (!queryResult.IsSuccess)
            {
                return(ServiceResult <string> .Failed(string.Empty, check_user_error));//tutaj error powinien przyjsc z repo
            }
            if (queryResult.Payload.Any())
            {
                return(ServiceResult <string> .Failed(string.Empty, check_user_failed));
            }

            RepositoryResult <User> result = userRepository.Add(user.ConverToUserRepository());

            if (!result.IsSuccess)
            {
                return(ServiceResult <string> .Failed(string.Empty, string.Empty)); //kod od repo
            }
            return(ServiceResult <string> .Success("success", string.Empty));       //kod z repo o dodaniu użytkownika
        }
示例#18
0
        public async Task <ActionResult> ChangeDetails(ChangeDetailsViewModel model)
        {
            if (!(await Authorized()))
            {
                return(AccountLogin());
            }

            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            FullUser user   = new FullUser(model.FullName, model.BirthDate, model.City, model.WorkPlace);
            var      result = await AccountManager.ChangeUserDetailsAsync(UserToken, user);

            if (result.Success)
            {
                DisplayUserInfo = user;
                return(RedirectToAction("Index", new { Message = ManageMessageId.ChangeDetailsSuccess }));
            }
            else
            {
                AddError(result.UserErrorMessage);
                return(View(new { Message = ManageMessageId.Error }));
            }
        }
        public async Task <IActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var userProfile = await _context.UserProfile.FirstOrDefaultAsync(m => m.IdUser == id);

            if (userProfile == null)
            {
                return(NotFound());
            }

            PortfolioContext db = new PortfolioContext();
            var img             = db.ImgUser.Where(m => m.IdUser == id);
            var educationUser   = await _context.Education.FirstOrDefaultAsync(m => m.IdUser == id);

            var userServices = await _context.UserServices.FirstOrDefaultAsync(m => m.IdUser == id);

            var userWorkplace = await _context.UserWorkplace.FirstOrDefaultAsync(m => m.IdUser == id);

            var userBiography = await _context.UserBiography.FirstOrDefaultAsync(m => m.IdUser == id);

            FullUser model = new FullUser();

            model.OneUser       = userProfile;
            model.Image         = img;
            model.EducationUser = educationUser;
            model.ServicesUser  = userServices;
            model.WorkplaceUser = userWorkplace;
            model.BiographyUser = userBiography;
            return(View(model));
        }
        public ActionResult UploadImage()
        {
            int    idCookie       = 0;
            string statusPassword = "";

            if (Request.Cookies.ContainsKey("IdUser") && Request.Cookies.ContainsKey("UserPassword"))
            {
                idCookie       = int.Parse(Request.Cookies["IdUser"]);
                statusPassword = Request.Cookies["UserPassword"];
            }

            if (statusPassword == "true" && idCookie > 0)
            {
                var img = _context.ImgUser.Where(m => m.IdUser == idCookie);
                if (img != null)
                {
                    FullUser model = new FullUser();
                    model.Image = img.ToList();
                    return(PartialView(model));
                }
                ViewBag.Message = "Это частичное представление";
                return(PartialView());
            }
            else
            {
                return(Redirect("/UserAuthorization/Index"));
            }
        }
 private static bool IsValid(this FullUser user, List <int> codesOfWorkers, List <string> logins)
 {
     if (codesOfWorkers.Any(x => x == user.Worker.PassportNumber))
     {
         throw new ValidationException(Messages.ExsistingWorkerId);
     }
     if ((user.Worker?.PersonalData?.Length ?? 0) < 3 || user.Worker.PersonalData.Length > 100)
     {
         throw new ValidationException(Messages.WrongFIOLength);
     }
     if (user.User != null)
     {
         if ((user?.User?.Login?.Length ?? 0) < 3 || user.User.Login.Length > 25)
         {
             throw new ValidationException(Messages.WrongLoginLength);
         }
         if ((user?.User?.Password?.Length ?? 0) < 3 || user.User.Password.Length > 25)
         {
             throw new ValidationException(Messages.WrongPasswordLength);
         }
         if (logins.Any(x => x == user.User.Login))
         {
             throw new ValidationException(Messages.ExsistingLogin);
         }
         if (user.Roles.Count == 0)
         {
             throw new ValidationException(Messages.NoRoleSelected);
         }
         return(true);
     }
     throw new ValidationException(Messages.ObjectNotCreatedMessage);
 }
示例#22
0
        public ActionResult EditWorkersInformation()
        {
            FullUser      user    = HttpContext.Session.GetJson <FullUser>("user");
            List <Worker> workers = _workerServises.Read().Where(x => x.Equals(user.Worker) == false).ToList();

            return(View("WorkersList", workers));
        }
示例#23
0
        public ServiceResult <FullUser> Update(FullUser user)
        {
            RepositoryResult <User> updateResult = userRepository.Update(user.ConverToUserRepository());

            return(updateResult.IsSuccess ?
                   ServiceResult <FullUser> .Success(updateResult.Payload.ConverToFullUser(), updateResult.Code) :
                   ServiceResult <FullUser> .Failed(null, updateResult.Code));
        }
 public static bool IsValid(this FullUser user)
 {
     if (user.Roles != null && user.Roles.Count == 0 && user.User != null)
     {
         throw new ValidationException(Messages.NoRoleSelected);
     }
     return(true);
 }
        public ActionResult StartMenu()
        {
            FullUser user = new FullUser();

            user.GetUserFromCookie(HttpContext);
            ViewBag.Data = user.Worker.PassportNumber;
            return(View("StartMenu"));
        }
示例#26
0
        public ActionResult TypeTest(string mail, int num_Of_WriitenWords, int correct_Words, float Accuracy, int num_Of_Entry_Errors, decimal time)
        {
            FullUser user = _context.FullUsers.SingleOrDefault(fu => fu.finalMailID == mail);

            user.needTest = false;
            AvgRes res_avg = _context.AvgReses.SingleOrDefault(ra => ra.mail == mail);

            // first time doing test
            if (res_avg == null)
            {
                res_avg      = new AvgRes();
                res_avg.mail = mail;
                _context.AvgReses.Add(res_avg);
                _context.SaveChanges();
            }

            res_avg.current_count++;
            if (res_avg.current_count == 1)
            {
                res_avg.current_correctWords      = correct_Words;
                res_avg.current_numOfWriitenWords = num_Of_WriitenWords;
                res_avg.current_accuracy          = Accuracy;
                res_avg.current_numOfEntryErrors  = num_Of_Entry_Errors;
                res_avg.current_time = time;

                res_avg.previous_correctWords      = 0;
                res_avg.previous_numOfWriitenWords = 0;
                res_avg.previous_accuracy          = 0;
                res_avg.previous_numOfEntryErrors  = 0;
                res_avg.previous_time = 0;
            }

            else
            {
                res_avg.previous_correctWords      = res_avg.current_correctWords;
                res_avg.previous_numOfWriitenWords = res_avg.current_numOfWriitenWords;
                res_avg.previous_accuracy          = res_avg.current_accuracy;
                res_avg.previous_numOfEntryErrors  = res_avg.current_numOfEntryErrors;
                res_avg.previous_time = res_avg.current_time;

                res_avg.current_correctWords      = ((res_avg.current_correctWords * (res_avg.previous_count)) + correct_Words) / res_avg.current_count;
                res_avg.current_numOfWriitenWords = ((res_avg.current_numOfWriitenWords * (res_avg.previous_count)) + num_Of_WriitenWords) / res_avg.current_count;
                res_avg.current_accuracy          = ((res_avg.current_accuracy * (res_avg.previous_count)) + Accuracy) / res_avg.current_count;
                res_avg.current_numOfEntryErrors  = ((res_avg.current_numOfEntryErrors * (res_avg.previous_count)) + num_Of_Entry_Errors) / res_avg.current_count;
                res_avg.current_time = ((res_avg.current_time * (res_avg.previous_count)) + time) / res_avg.current_count;
            }

            res_avg.previous_count++;
            _context.Update(res_avg);
            user.resAvgID = res_avg.ID;
            _context.Update(user);
            _context.SaveChanges();
            AvgRes   model = _context.AvgReses.SingleOrDefault(ra => ra.mail == mail);
            UserInfo users = _context.UserInfoes.SingleOrDefault(ua => ua.mailId == mail);

            ViewBag.Message = users.message;
            return(View("Thanks", model));
        }
示例#27
0
        public static FullUser MapFullUser(User user,
                                           AuthorizationGroupMembers groupMembers)
        {
            var fullUser = FullUser.FromGraphUser(user);

            fullUser.IsCampusLead = groupMembers.CampusLeads.Any(cl => cl == fullUser.Id);
            fullUser.IsHubLead    = groupMembers.HubLeads.Any(hl => hl == fullUser.Id);
            fullUser.IsAdmin      = groupMembers.Admins.Any(a => a == fullUser.Id);
            return(fullUser);
        }
        public void RegisterOrUpdate(string userId, FullUser user)
        {
            if (string.IsNullOrEmpty(userId) || user == null)
            {
                throw new IncorrectDetailsException("User details or user id missing.");
            }

            user.UserId = userId;
            _fullUserService.AddOrUpdate(user);
        }
示例#29
0
 public int?AddUser(string sessionId, FullUser user)
 {
     if (userRepository.CanManageUsers(sessionId))
     {
         return(userRepository.AddUser(user));
     }
     else
     {
         return(null);
     }
 }
        public static void GetUserFromCookie(this FullUser user, HttpContext context)
        {
            FullUser fullUser = GetFullUser(context);

            if (fullUser != null)
            {
                user.Worker = fullUser.Worker;
                user.Roles  = fullUser.Roles;
                user.User   = fullUser.User;
            }
        }
示例#31
0
        public ActionResult SignUp(SignUpStep signUpStep, string allpass, string allmail)
        {
            if (ModelState.IsValid)
            {
                // Checking if the user isn't in the system yet.
                var user = _context.FullUsers.SingleOrDefault(fu => fu.finalMailID == signUpStep.Mail);

                if (user == null)
                {
                    FullUser newUser = new FullUser();
                    newUser.finalMailID = signUpStep.Mail;
                    newUser.finalPass   = signUpStep.Pass;
                    newUser.isVerifyed  = false;
                    newUser.allMail    += allmail;
                    _context.FullUsers.Add(newUser);
                    _context.SaveChanges();


                    string host = Url.Action("validate", "Login", new { id = 5 }, Request.Scheme);
                    host  = host.Substring(0, host.Length - 2);
                    host += "?";
                    EmailValidationHelper emailValidationHelper = new EmailValidationHelper(_context);
                    emailValidationHelper.SendMailValidation(newUser, host);

                    return(RedirectToAction("ValidationMailSent", "Index"));
                }
                else
                {
                    ViewBag.Message = "המשתמש כבר קיים במערכת";
                    ViewBag.back    = 1;
                    return(View("SignUp", signUpStep));
                }
            }
            else
            {
                if (!string.IsNullOrWhiteSpace(signUpStep.Mail))
                {
                    var user = _context.FullUsers.SingleOrDefault(su => su.finalMailID == signUpStep.Mail);   //ElasticsearchUtils.Search(signUpStep.Mail);
                    if (user != null)
                    {
                        ViewBag.back    = 1;
                        ViewBag.Message = "המשתמש כבר קיים במערכת";
                        return(View("SignUp", signUpStep));
                    }
                }
            }

            signUpStep.Pass        = "";
            signUpStep.ConfirmPass = "";

            return(View("SignUp", signUpStep));
        }