Esempio n. 1
0
        public async Task <IActionResult> PutLogout([FromHeader] string token, [FromHeader] string email, [FromHeader] bool isUser)
        {
            // if user and not authenticated
            if (isUser && !await _userRepository.Authenticated(token, email))
            {
                return(Unauthorized());
            }
            // is safewalker and not authenticated
            else if (!isUser && !await _safewalkerRepository.Authenticated(token, email))
            {
                return(Unauthorized());
            }

            if (isUser)
            {
                var user = await _userRepository.Get(email);

                user.WithoutTempAuth();
                await _userRepository.Update(user);
            }
            else
            {
                var walker = await _safewalkerRepository.Get(email);

                walker.WithoutTempAuth();
                await _safewalkerRepository.Update(walker);
            }

            return(Ok());
        }
        public async Task <ActionResult <Safewalker> > GetSafewalker([FromHeader] string token, [FromHeader] string email, [FromRoute] string walkerEmail, [FromHeader] bool isUser)
        {
            // if user and not authenticated
            if (isUser && !await _userRepository.Authenticated(token, email))
            {
                return(Unauthorized());
            }
            // is safewalker and not authenticated
            else if (!isUser && !await _safewalkerRepository.Authenticated(token, email))
            {
                return(Unauthorized());
            }

            var walker = await _safewalkerRepository.Get(walkerEmail);

            var copyWalker = walker.DeepClone().WithoutPrivateInfo();

            return(Ok(copyWalker));
        }
Esempio n. 3
0
        public async Task <IActionResult> VerifyPassword([FromRoute] string email, [FromHeader] string password, [FromHeader] bool isUser)
        {
            if (isUser)
            {
                var user = await _userRepository.Get(email);

                if (user == null || user.Password != password)
                {
                    return(Unauthorized());
                }
                return(Ok());
            }
            else
            {
                var safewalker = await _safewalkerRepository.Get(email);

                if (safewalker == null || safewalker.Password != password)
                {
                    return(Unauthorized());
                }
                return(Ok());
            }
        }