Exemplo n.º 1
0
        public AppModule()
        {
            Get["/"] = _parameters =>
            {
                return(View["index.sshtml"]);
            };

            Get["/dev/BuildDB"] = _parameters =>
            {
                bool devMode = Config.GetBooleanValue("DevMode", false);

                if (devMode)
                {
                    OpenFormGraphStructureManager structureManager = new OpenFormGraphStructureManager();
                    structureManager.BuildDB();

                    return(View["dev_dbbuildresult.sshtml"]);
                }

                return(null);
            };

            Get["/dev/BuildAdminUser"] = _parameters =>
            {
                bool devMode = Config.GetBooleanValue("DevMode", false);

                if (devMode)
                {
                    OpenFormGraphManager manager = new OpenFormGraphManager();

                    TGUser user = manager.GetUser("OFGAdmin");
                    if (user == null)
                    {
                        user = new TGUser {
                            Username = "******", GivenName = "Admin", FamilyName = "User"
                        };
                        manager.Persist(user);

                        string password = RandomString.GetRandomString(10);

                        TGUserPassword tgPassword = TGUserPassword.GetNew(user.Guid, user.Username, password);
                        manager.Persist(tgPassword);

                        TGUserRole userAdminRole = new TGUserRole
                        {
                            Active     = true,
                            Name       = UserRoles.UserAdmin,
                            ParentGuid = user.Guid
                        };
                        manager.Persist(userAdminRole);

                        TGUserRole dataAdminRole = new TGUserRole
                        {
                            Active     = true,
                            Name       = UserRoles.DataAdmin,
                            ParentGuid = user.Guid
                        };
                        manager.Persist(dataAdminRole);

                        JsonObjects.NewUser jNewUser = new NewUser(user, password);

                        return(View["dev_buildadminuserresult.sshtml", jNewUser]);
                    }
                }

                return(null);
            };
        }
Exemplo n.º 2
0
        public string HandleUserAddPost(DynamicDictionary _parameters)
        {
            OpenFormGraphManager manager = new OpenFormGraphManager();
            BaseResult           result  = new BaseResult();

            User jUser = AuthHelper.ValidateToken(manager, Request);

            if (jUser != null && jUser.IsUserAdmin)
            {
                string  json     = ReadBody();
                NewUser jNewUser = JsonConvert.DeserializeObject <NewUser>(json);

                if (jNewUser != null)
                {
                    jNewUser.Guid = Guid.NewGuid();

                    TGUser testUser = manager.GetUser(jNewUser.Username);
                    if (testUser == null)
                    {
                        TGUser newUser = new TGUser
                        {
                            FamilyName   = jNewUser.LastName,
                            GivenName    = jNewUser.FirstName,
                            EmailAddress = jNewUser.EmailAddress,
                            IsVerified   = true,
                            DisplayName  = jNewUser.Username,
                            Username     = jNewUser.Username
                        };
                        manager.Persist(newUser);

                        TGUserPassword userPassword = TGUserPassword.GetNew(newUser.Guid, newUser.Username,
                                                                            jNewUser.Password);
                        manager.Persist(userPassword);

                        //Add Admin Roles as required
                        if (jNewUser.IsUserAdmin)
                        {
                            TGUserRole userAdminRole = new TGUserRole
                            {
                                Active     = true,
                                ParentGuid = newUser.Guid,
                                Name       = UserRoles.UserAdmin
                            };
                            manager.Persist(userAdminRole);
                        }

                        if (jNewUser.IsDataAdmin)
                        {
                            TGUserRole dataAdminRole = new TGUserRole
                            {
                                Active     = true,
                                ParentGuid = newUser.Guid,
                                Name       = UserRoles.DataAdmin
                            };
                            manager.Persist(dataAdminRole);
                        }

                        result.Result = "Success";
                    }
                    else
                    {
                        result.Result = "UsernameNotAvailable";
                    }
                }
            }

            return(JsonConvert.SerializeObject(result));
        }
Exemplo n.º 3
0
        public void Persist(TGUserRole _userRole)
        {
            TGUserRoleDAO dao = new TGUserRoleDAO(MongoDB);

            dao.Persist(_userRole);
        }