Ejemplo n.º 1
0
        /// <summary>
        /// Activate member
        /// </summary>
        /// <param name="param">Activate Request Model</param>
        /// <remarks></remarks>
        public ActivateResultModel Activate(ActivateRequestModel param)
        {
            ActivateResultModel result = new ActivateResultModel();

            try
            {
                MemberBL bl = new MemberBL();

                var member = bl.Activate(param);
                var token  = IdentityHelper.GenerateToken(member);

                bl.RegisterToken(token);

                result.AccessToken = token.Token;
                result.Status      = true;
                result.Message     = "Activated!";
            }
            catch (OrgException oex)
            {
                result.Status  = false;
                result.Message = oex.Message;
            }
            catch (Exception ex)
            {
                result.Status  = false;
                result.Message = AppConfigs.InternalErrorMessage;

                if (AppConfigs.DebugInternalMessage)
                {
                    result.InternalMessage = ex.Message;
                }
            }

            return(result);
        }
Ejemplo n.º 2
0
        public MemberModel Activate(ActivateRequestModel model)
        {
            OrgComm.Data.Models.Member member = null;

            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                member = dbc.Members.SingleOrDefault(r => (!r.DelFlag) && r.Id.Equals(model.MemberId));

                if (member == null)
                {
                    throw new OrgException(1, "Invalid profile");
                }

                if (member.MemberStatus != (int)OrgComm.Data.Models.Member.StatusType.New)
                {
                    throw new OrgException(1, "Invalid activation key");
                }

                if (!member.ActivationKey.Equals(model.ActivationKey))
                {
                    throw new OrgException(2, "Invalid activation key");
                }

                member.MemberStatus = (int)OrgComm.Data.Models.Member.StatusType.Activated;

                if (!model.DeviceOSId.HasValue || String.IsNullOrWhiteSpace(model.DeviceToken))
                {
                    throw new OrgException("Invalid device token");
                }

                this.RegisterDevice(member.Id, new DeviceTokenRequestModel
                {
                    OSId  = model.DeviceOSId.Value,
                    Token = model.DeviceToken
                });

                dbc.SaveChanges();
            }

            return(new MemberModel
            {
                Id = member.Id,
                FacebookId = member.FacebookId,
                Email = member.Email,
                FirstName = member.FirstName,
                LastName = member.LastName,
                NickName = member.Nickname,
                DisplayName = member.DisplayName,
                Gender = member.Gender,
                Company = member.Company.Name,
                Department = member.Department.Name,
                Position = member.Position.Name,
                EmployeeId = member.EmployeeId,
                Phone = member.Phone,
                Photo = (member.Photo == null) ? null : MemberBL.PhotoUrlFormatString.Replace("{0}", member.Id.ToString())
            });
        }