예제 #1
0
        private dynamic AdminView(dynamic arg)
        {
            dynamic model = new ExpandoObject();

            model.Errored         = Request.Query.error.HasValue;
            model.RegisterErrored = Request.Query.repeatError.HasValue;

            //User Information for Navigation
            var currentUser = (UserModel)Context.CurrentUser;

            model.Username    = currentUser.UserName;
            model.UserId      = currentUser.Id;
            model.UserIsAdmin = currentUser.IsAdmin;
            model.UserEmail   = currentUser.Email;

            //has the user admin rights?
            if (currentUser.IsAdmin)
            {
                //get all users
                model.AllUsers = UserSetting.All();
                //get all games
                model.AllGames = GamesSetting.GetAll();
                //permission
                model.permission = true;
            }
            else
            {
                model.permission = false;
            }
            return(View["admin", model]);
        }
예제 #2
0
        private dynamic GetMatchUserView(dynamic arg)
        {
            var     searchTerm  = (string)Request.Query.searchTerm ?? string.Empty;
            dynamic model       = new ExpandoObject();
            var     currentUser = (UserModel)Context.CurrentUser;

            model.MatchUsers = UserSetting.All().Where(user => user.Id != currentUser.Id).Where(user => user.UserName.IndexOf(searchTerm, StringComparison.CurrentCultureIgnoreCase) > -1).ToList();

            return(View["searchMatchUser", model]);
        }
예제 #3
0
        private dynamic AdminState(dynamic arg)
        {
            //refresh view
            dynamic model = new ExpandoObject();

            model.Errored         = Request.Query.error.HasValue;
            model.RegisterErrored = Request.Query.repeatError.HasValue;

            //User Information for Navigation
            var currentUser = (UserModel)Context.CurrentUser;

            model.Username    = currentUser.UserName;
            model.UserId      = currentUser.Id;
            model.UserIsAdmin = currentUser.IsAdmin;
            model.UserEmail   = currentUser.Email;

            //has the user admin rights?
            if (currentUser.IsAdmin)
            {
                // change admin state
                var uidUserToChange = (int)Request.Form.chAdmStateUid;
                UserSetting.ChangeAdminState(uidUserToChange, currentUser.Id);
                //get all users
                model.AllUsers = UserSetting.All();
                //get all games
                model.AllGames = GamesSetting.GetAll();
                //permission
                model.permission = true;

                if (currentUser.Id == uidUserToChange)
                {
                    //affected account is the user himself
                    model.permission    = false;
                    currentUser.IsAdmin = false;
                }
            }
            else
            {
                model.permission = false;
            }
            return(View["admin", model]);
        }
예제 #4
0
        private dynamic AdminDelUser(dynamic arg)
        {
            //refresh view
            dynamic model = new ExpandoObject();

            model.Errored         = Request.Query.error.HasValue;
            model.RegisterErrored = Request.Query.repeatError.HasValue;

            //User Information for Navigation
            var currentUser = (UserModel)Context.CurrentUser;

            model.Username    = currentUser.UserName;
            model.UserId      = currentUser.Id;
            model.UserIsAdmin = currentUser.IsAdmin;
            model.UserEmail   = currentUser.Email;

            //has the user admin rights?
            if (currentUser.IsAdmin)
            {
                //delete user
                var UserToDelete = (int)Request.Form.DeleteUser;
                UserSetting.DeleteAccount(UserToDelete);
                //get all users
                model.AllUsers = UserSetting.All();
                //get all games
                model.AllGames = GamesSetting.GetAll();
                //permission
                model.permission = true;
                if (UserToDelete == currentUser.Id)
                {
                    model.permission = false;
                    return(Context.GetRedirect("~/logout"));
                }
            }
            else
            {
                model.permission = false;
            }
            return(View["admin", model]);
        }