public HttpResponseMessage SetDefaultOrganisation(int id)
        {
            var token = TokenBase.ReadToken(HttpContext.Current);

            if (_validation.IsTokenValid(token))
            {
                if (!_validation.VolunteerHasAccessToThisOrg(id, token.Email))
                {
                    return(Messages.ReturnUnauthorized());
                }

                var generateTokenModel = new GenerateTokenModel
                {
                    VolunterId     = token.VolunteerId,
                    Email          = token.Email,
                    OrganisationId = id,
                    Audience       = ConfigurationManager.AppSettings["Audience"],
                    Issuer         = ConfigurationManager.AppSettings["Issuer"],
                    Key            = ConfigurationManager.AppSettings["Key"]
                };

                var jwtSecurityToken = _tokenManager.GenerateToken(generateTokenModel);

                _tokenManager.MakeTokenInvalid(token.TokenId);

                return(Messages.ReturnOk(new
                {
                    token = jwtSecurityToken
                }));
            }

            return(Messages.ReturnUnauthorized());
        }
        public HttpResponseMessage Logout()
        {
            var token = TokenBase.ReadToken(HttpContext.Current);

            if (_validation.IsTokenValid(token))
            {
                _tokenManager.DeleteAllVolunteerTokens(token.VolunteerId);
                return(Messages.ReturnOk(new { message = "10029" }));
            }

            return(Messages.ReturnUnauthorized());
        }
Exemple #3
0
        public HttpResponseMessage GetVolunteer(int id)
        {
            var token = TokenBase.ReadToken(HttpContext.Current);

            if (_validation.IsTokenAndOrganisationValid(token))
            {
                var volunteer = _volunteerManager.GetVolunteerToDisplay(id);

                if (volunteer != null)
                {
                    return(Messages.ReturnOk(volunteer));
                }

                return(Messages.ReturnBadRequestWithLabelErrors("10028"));
            }

            return(Messages.ReturnUnauthorized());
        }
Exemple #4
0
        public HttpResponseMessage Get()
        {
            var token = TokenBase.ReadToken(HttpContext.Current);

            if (_validation.IsTokenAndOrganisationValid(token))
            {
                var volunteerList = _volunteerManager.GetAllVolunteerOfOrganisation(token.OrganisationId);

                if (volunteerList.Any())
                {
                    return(Messages.ReturnOk(volunteerList));
                }

                return(Messages.ReturnBadRequestWithLabelErrors("10028"));
            }

            return(Messages.ReturnUnauthorized());
        }
        public HttpResponseMessage Organisation()
        {
            var token = TokenBase.ReadToken(HttpContext.Current);

            if (_validation.IsTokenValid(token))
            {
                var orgList = _organisationManager.GetOrganisationListForCurrentUser(token.Email);

                if (orgList.Any())
                {
                    return(Messages.ReturnOk(orgList));
                }

                return(Messages.ReturnBadRequestWithLabelErrors("10028"));
            }

            return(Messages.ReturnUnauthorized());
        }
Exemple #6
0
        public HttpResponseMessage Put([FromBody] EditVolunteerViewModel editVolunteer)
        {
            if (!ModelState.IsValid)
            {
                var errors = ModelState.Values
                             .SelectMany(v => v.Errors)
                             .Select(e => e.ErrorMessage).ToList();

                return(Messages.ReturnBadRequestWithLabelErrors(errors));
            }

            var token = TokenBase.ReadToken(HttpContext.Current);

            if (_validation.IsTokenAndOrganisationValid(token))
            {
                var volunteer = PrepereVolunteerToUpdate(editVolunteer, token.VolunteerId);

                if (volunteer == null)
                {
                    var response = new ResultObject();
                    response.Success = false;
                    response.Errors.Add("10028");
                    return(Messages.ReturnUnauthorized(response));
                }

                var resultUpdate = _volunteerManager.UpdateVolunteer(volunteer, token.VolunteerId);

                if (resultUpdate.Success)
                {
                    _volunteerManager.ProcessCallbackAsync(token.OrganisationId, JsonConvert.SerializeObject(editVolunteer));
                    return(Messages.ReturnOk(resultUpdate));
                }

                return(Messages.ReturnUnauthorized(resultUpdate));
            }

            return(Messages.ReturnUnauthorized());
        }
Exemple #7
0
        public HttpResponseMessage Post([FromBody] InviteViewModel invite)
        {
            if (!ModelState.IsValid)
            {
                var errors = ModelState.Values
                             .SelectMany(v => v.Errors)
                             .Select(e => e.ErrorMessage).ToList();

                return(Messages.ReturnBadRequestWithLabelErrors(errors));
            }

            var token = TokenBase.ReadToken(HttpContext.Current);

            if (_validation.IsTokenAndOrganisationValid(token))
            {
                var volunteer = new Volunteer
                {
                    Organisation_ID = invite.OrganisationId,
                    FirstName_VC    = invite.FirstName,
                    Surname_VC      = invite.Surname,
                    Email_VC        = invite.Email,
                    InvitedBy_ID    = token.VolunteerId
                };

                var resultInvite = _volunteerManager.Invite(volunteer, token.Email);

                if (resultInvite.Success)
                {
                    return(Messages.ReturnOk(resultInvite));
                }

                return(Messages.ReturnUnauthorized(resultInvite));
            }

            return(Messages.ReturnUnauthorized());
        }