Ejemplo n.º 1
0
        //public User Create(KidStepsContext dbContext, string firstName, string lastName, string email, string password, Role role, out MembershipCreateStatus status)
        //{
        //    PersonName name = new PersonName() {First = firstName, Last = lastName};
        //    return Create(dbContext, name, email, password, role, out status);
        //}
        //public User Create(KidStepsContext dbContext, PersonName name, string email, string password, Role role, out MembershipCreateStatus status)
        //{
        //    return
        //        Create(
        //            dbContext,
        //            null,
        //            name,
        //            email,
        //            password,
        //            role,
        //            out status);
        //}
        //public MembershipCreateStatus CreateAccountForUser(
        //    KidStepsContext dbContext,
        //    User user,
        //    string email,
        //    string password)
        //{
        //    MembershipCreateStatus createStatus;
        //    Create(
        //        dbContext,
        //        user,
        //        user.Name,
        //        email,
        //        password,
        //        Role.RegisteredMember,
        //        out createStatus);
        //    return createStatus;
        //}
        public User CreateFamilyMember(KidStepsContext context, PersonName name, string email, string password, out MembershipCreateStatus status)
        {
            // create user
            User user = Create(context, name, Role.MemberOfFamily | Role.Registered | Role.FamilyAdmin, email);

            // register user
            status = Register(context, user, password);

            // create family for user
            FamilyRepository familyRepos = new FamilyRepository();
            familyRepos.Create(context, user);

            return user;
        }
Ejemplo n.º 2
0
        //public User Create(KidStepsContext dbContext, string firstName, string lastName, string email, string password, Role role, out MembershipCreateStatus status)
        //{
        //    PersonName name = new PersonName() {First = firstName, Last = lastName};
        //    return Create(dbContext, name, email, password, role, out status);
        //}

        //public User Create(KidStepsContext dbContext, PersonName name, string email, string password, Role role, out MembershipCreateStatus status)
        //{
        //    return
        //        Create(
        //            dbContext,
        //            null,
        //            name,
        //            email,
        //            password,
        //            role,
        //            out status);
        //}

        //public MembershipCreateStatus CreateAccountForUser(
        //    KidStepsContext dbContext,
        //    User user,
        //    string email,
        //    string password)
        //{
        //    MembershipCreateStatus createStatus;
        //    Create(
        //        dbContext,
        //        user,
        //        user.Name,
        //        email,
        //        password,
        //        Role.RegisteredMember,
        //        out createStatus);
        //    return createStatus;
        //}



        public User CreateFamilyMember(KidStepsContext context, PersonName name, string email, string password, out MembershipCreateStatus status)
        {
            // create user
            User user = Create(context, name, Role.MemberOfFamily | Role.Registered | Role.FamilyAdmin, email);

            // register user
            status = Register(context, user, password);

            // create family for user
            FamilyRepository familyRepos = new FamilyRepository();

            familyRepos.Create(context, user);

            return(user);
        }
Ejemplo n.º 3
0
        protected override void Seed(KidStepsContext context)
        {
            //throw new Exception();

            // install/initialize asp.net membership services
            SqlServices.Install(
                "KidSteps",
                SqlFeatures.Membership | SqlFeatures.RoleManager | SqlFeatures.Profile,
                WebConfigurationManager.ConnectionStrings["KidStepsContext"].ConnectionString);
            //foreach (Models.Role role in Enum.GetValues(typeof(Models.Role)))
            //    Roles.CreateRole(role.ToString());

            // todo: unique constraint for email

            // create admin users
            UserRepository         userRepos = new UserRepository();
            MembershipCreateStatus _;
            User pinchas = userRepos.CreateFamilyMember(context, new PersonName("Pinchas", "Friedman"), "*****@*****.**", "admin", out _);

            pinchas.RoleFlags |= Role.SuperUser;
            User moshe = userRepos.CreateFamilyMember(context, new PersonName("Moshe", "Starkman"), "*****@*****.**", "moshe", out _);

            moshe.RoleFlags |= Role.SuperUser;

            // create add admin users' relationships to kids
            FamilyRepository familyRepos = new FamilyRepository();
            User             shalom      = familyRepos.AddFamilyMember(context, pinchas.Family, new PersonName("Shalom", "Friedman"), null, true);

            familyRepos.UpdateRelationship(context, new Relationship()
            {
                SourceUser = pinchas, RelatedUser = shalom, RelatedUserIsSourceUsers = RelationshipType.Child
            });

            User yael = familyRepos.AddFamilyMember(context, pinchas.Family, new PersonName("Yael", "Friedman"), null, false);

            familyRepos.UpdateRelationship(context, new Relationship()
            {
                SourceUser = yael, RelatedUser = shalom, RelatedUserIsSourceUsers = RelationshipType.Child
            });
            familyRepos.UpdateRelationship(context, new Relationship()
            {
                SourceUser = pinchas, RelatedUser = yael, RelatedUserIsSourceUsers = RelationshipType.Spouse
            });

            // add some comments
            FeedItem t1 = new TextPost()
            {
                Owner       = pinchas,
                SubjectUser = pinchas,
                Text        = "Foo"
            };
            FeedItem t2 = new TextPost()
            {
                Owner       = pinchas,
                SubjectUser = pinchas,
                Text        = "Foo2",
                IsReplyTo   = t1
            };
            FeedItem t3 = new TextPost()
            {
                Owner       = pinchas,
                SubjectUser = pinchas,
                Text        = " New Foo"
            };

            context.FeedItems.Add(t1);
            context.FeedItems.Add(t2);
            context.FeedItems.Add(t3);

            context.SaveChanges();
        }