Ejemplo n.º 1
0
        public async Task <MemberReadModel> CreateMember(Guid memoryBookUniverseId, string firstName, string middleName, string lastName, string commonName)
        {
            Contract.RequiresNotNullOrWhitespace(firstName, nameof(firstName));
            Contract.RequiresNotNullOrWhitespace(lastName, nameof(lastName));
            Contract.RequiresNotNullOrWhitespace(commonName, nameof(commonName));

            MemberCreateModel memberCreateModel = new MemberCreateModel
            {
                FirstName  = firstName,
                MiddleName = middleName,
                LastName   = lastName,
                CommonName = commonName
            };

            var id = await this.memberCommandManager.CreateMembers(memoryBookUniverseId, memberCreateModel)
                     .ConfigureAwait(false);

            if (id == null || id.Count == 0)
            {
                return(null);
            }

            var memberReadModel = await this.memberQueryManager.GetMembers(memoryBookUniverseId, id)
                                  .ConfigureAwait(false);

            return(memberReadModel.FirstOrDefault());
        }
Ejemplo n.º 2
0
        public ActionResult MemberCreate(MemberCreateModel fc)
        {
            try
            {
                MEMBER newMember = new MEMBER();
                newMember.FNAME     = fc.FName;
                newMember.LNAME     = fc.LName;
                newMember.AGENCY_ID = fc.Agency_ID;
                newMember.PHONE     = fc.Phone;
                newMember.EMAIL     = fc.Email;
                newMember.RSSFEED   = fc.RSS_Feed;
                newMember.EMERGENCY_CONTACT_NAME  = fc.Emergency_ContactName;
                newMember.EMERGENCY_CONTACT_PHONE = fc.Emergency_ContactPhone;
                newMember.ROLE_ID  = fc.Role_ID;
                newMember.USERNAME = fc.UserName;

                STNServiceCaller serviceCaller = STNServiceCaller.Instance;
                var request = new RestRequest(Method.POST);
                request.Resource = "Members/{pass}/addMember";
                request.AddParameter("pass", fc.Password, ParameterType.UrlSegment);
                request.RequestFormat = DataFormat.Xml;
                request.AddHeader("Content-Type", "application/xml");
                STNWebSerializer serializer = new STNWebSerializer();
                request.AddParameter("application/xml", serializer.Serialize <MEMBER>(newMember), ParameterType.RequestBody);

                MEMBER createdMember = serviceCaller.Execute <MEMBER>(request);

                return(RedirectToAction("MemberDE", new { id = createdMember.MEMBER_ID }));
            }
            catch (Exception e)
            {
                return(View("../Shared/Error", e));
            }
        }
Ejemplo n.º 3
0
        public IActionResult CreateAccount(string returnUrl)
        {
            var model = new MemberCreateModel()
            {
                ReturnUrl = returnUrl
            };

            return(View(model));
        }
Ejemplo n.º 4
0
 private static Member CreateEntity(Guid memoryBookUniverseId, MemberCreateModel model)
 {
     return(new Member
     {
         FirstName = model.FirstName,
         MiddleName = model.MiddleName,
         LastName = model.LastName,
         CommonName = model.CommonName,
         MemoryBookUniverseId = memoryBookUniverseId
     });
 }
Ejemplo n.º 5
0
        public async Task <IActionResult> CreateAccount([Bind("EmailAddress", "FirstName", "LastName", "Password", "ReturnUrl")] MemberCreateModel createModel)
        {
            if (!ModelState.IsValid)
            {
                return(View());
            }


            Member member = new Member();

            member.EmailAddress = createModel.EmailAddress;
            member.FirstName    = createModel.FirstName;
            member.LastName     = createModel.LastName;
            member.SetPassword(createModel.Password);


            _work.Members.Insert(member);
            await _work.Save();


            Dictionary <string, string> tags = new Dictionary <string, string>();

            tags.Add("FIRST_NAME", member.FirstName);
            tags.Add("EMAIL_ADDRESS", member.EmailAddress);

            await _mailer.SendMail("welcome", member.EmailAddress, member.FullName, tags);

            _work.Logger.Log($"Sign In for {member.EmailAddress}");

            await DoSignIn(member);

            if (!string.IsNullOrEmpty(createModel.ReturnUrl))
            {
                return(Redirect(createModel.ReturnUrl));
            }

            return(RedirectToAction("Index", "Home"));
        }