public bool RemoveContentPermissions(ContentTreeViewModel model)
        {
            try
            {
                var permissionsModel = new PermissionsModel
                {
                    PageId = model.PageId,
                    UserId = model.UserId,
                };

                var success = _umbracoService.RemoveContentPermissions(permissionsModel);

                if (!success)
                {
                    return(false);
                }

                //_databaseService.RemoveUserPermissions(permissionsModel);

                return(true);
            }
            catch (Exception ex)
            {
                ex.ToExceptionless().Submit();

                throw;
            }
        }
        public bool SetContentPermissions(ContentTreeViewModel model)
        {
            try
            {
                var user = _userControlService.LookupUserById(model.UserId);

                var permissionsModel = new PermissionsModel
                {
                    PageId       = model.PageId,
                    UserId       = model.UserId,
                    Created      = DateTime.Now,
                    FullName     = user.FullName,
                    PageName     = model.PageName,
                    EmailAddress = user.EmailAddress
                };

                var success = _umbracoService.SetContentPermissions(permissionsModel);

                if (!success)
                {
                    return(false);
                }

                //_databaseService.AddUserPermissions(permissionsModel);

                return(true);
            }
            catch (Exception ex)
            {
                ex.ToExceptionless().Submit();

                throw;
            }
        }
        public void UmbracoUserControlTestSetup()
        {
            passWordResetModel    = new PasswordResetModel();
            passWordResetModelOut = new PasswordResetModel();

            umbracoUserModel        = new UmbracoUserModel();
            umbracoUserModelListOut = new List <UmbracoUserModel>();

            findUserModel = new FindUserModel();

            contentTreeViewModel        = new ContentTreeViewModel();
            contentTreeViewModelListOut = new List <ContentTreeViewModel>();

            permissionsModel         = new PermissionsModel();
            permissionsModelsListOut = new List <PermissionsModel>();

            mockPermissionsControlService = new Mock <IPermissionsControlService>().Object;
            mockEmailService = new Mock <IEmailService>().Object;

            var userControlServiceMock = new Mock <IUserControlService>();

            userControlServiceMock.Setup(x => x.LookupUserById(2))
            .Returns(contentTreeViewModel);

            mockUserControlService = userControlServiceMock.Object;

            var umbracoServiceMock = new Mock <IUmbracoService>();

            umbracoServiceMock.Setup(x => x.GetAllUsersByEmail("Email"))
            .Returns(umbracoUserModelListOut);
            umbracoServiceMock.Setup(x => x.GetAllUsersByUsername("Username"))
            .Returns(umbracoUserModelListOut);
            umbracoServiceMock.Setup(x => x.GetContentRoot())
            .Returns(contentTreeViewModelListOut);
            umbracoServiceMock.Setup(x => x.GetContentChild(1))
            .Returns(contentTreeViewModelListOut);
            umbracoServiceMock.Setup(x => x.SetContentPermissions(permissionsModel))
            .Returns(true);

            mockUmbracoService = umbracoServiceMock.Object;

            var databaseServiceMock = new Mock <IDatabaseService>();

            databaseServiceMock.Setup(x => x.GetResetDetails(passWordResetModel))
            .Returns(passWordResetModelOut);
            //databaseServiceMock.Setup(x => x.CheckUserPermissions(1))
            //    .Returns(permissionsModelsListOut);

            mockDatabaseService = databaseServiceMock.Object;

            timelimit = DateTime.Now;

            //umbracoService = new UmbracoService();
            //databaseService = new DatabaseService();
            //emailService = new EmailService(mockDatabaseService);
            //userControlService = new UserControlService(mockDatabaseService, mockUmbracoService, mockEmailService);
            //permissionsControlService = new PermissionsControlService(mockDatabaseService, mockUmbracoService, mockUserControlService);
        }
Example #4
0
        public ActionResult ContentTreeAsync()
        {
            var treeModel = _contentTreeService.BuildTree();

            var viewModel = new ContentTreeViewModel
            {
                Tree = _contentTreeService.Display(treeModel)
            };

            return(PartialView("ContentTreePartial", viewModel));
        }
        public IList <ContentTreeViewModel> GetContentRoot(ContentTreeViewModel contentModel)
        {
            try
            {
                var modelList = _umbracoService.GetContentRoot(contentModel.UserId);
                //var modelList = _umbracoService.GetContentRoot();
                //var pageCheckList = _databaseService.CheckUserPermissions(contentModel.UserId);
                //var permissionsModels = pageCheckList as IList<PermissionsModel> ?? pageCheckList.ToList();

                foreach (var model in modelList)
                {
                    model.key    = model.PageId;
                    model.title  = model.PageName;
                    model.folder = true;
                    model.lazy   = true;
                    model.UserId = contentModel.UserId;

                    // GS Start
                    // if no permissions at all, then there will be only one element which will contain a "-"
                    // If only the default permission then there will only be one element which will contain "F" (Browse Node)
                    if (model.UserPermissions.Count() > 1 || (model.UserPermissions.ElementAt(0)[0] != "-" && model.UserPermissions.ElementAt(0)[0] != "F"))
                    {
                        model.selected = true;
                    }
                    // GS End

                    //if (permissionsModels.IsNullOrEmpty()) continue;

                    //if (UserHasPermissions(permissionsModels, model.PageId))
                    //{
                    //    model.selected = true;
                    //}
                }

                return(modelList);
            }
            catch (Exception ex)
            {
                ex.ToExceptionless().Submit();

                throw;
            }
        }
Example #6
0
        public JsonResult ChangePermissionsResult(ContentTreeViewModel model)
        {
            if (model.selected)
            {
                var success = _permissionsControlService.SetContentPermissions(model);

                if (success)
                {
                    return(Json(true, JsonRequestBehavior.AllowGet));
                }
            }
            else
            {
                var success = _permissionsControlService.RemoveContentPermissions(model);

                if (success)
                {
                    return(Json(true, JsonRequestBehavior.AllowGet));
                }
            }

            return(Json(false, JsonRequestBehavior.AllowGet));
        }
Example #7
0
        public JsonResult PopTreeChildResult(ContentTreeViewModel model)
        {
            IList <ContentTreeViewModel> modelList = _permissionsControlService.GetContentChild(model);

            return(Json(modelList, JsonRequestBehavior.AllowGet));
        }
Example #8
0
        public JsonResult PopTreeRootResult(ContentTreeViewModel model)
        {
            var modelList = _permissionsControlService.GetContentRoot(model);

            return(Json(modelList, JsonRequestBehavior.AllowGet));
        }
Example #9
0
 public ActionResult LookupContentTree(ContentTreeViewModel model)
 {
     return(PartialView("ContentTree", model));
 }