Esempio n. 1
0
        /// <summary>
        /// Set the properties of the main grid.
        /// </summary>
        private void InitializeGrid()
        {
            if (_program == null)
            {
                return;
            }

            gStepType.DataKeyNames      = new string[] { "Id" };
            gStepType.Actions.AddClick += gStepType_Add;
            gStepType.GridReorder      += gStepType_GridReorder;
            gStepType.GridRebind       += gStepType_GridRebind;
            gStepType.RowItemText       = "Step Type";
            gStepType.ExportSource      = ExcelExportSource.DataSource;
            gStepType.ExportFilename    = _program.Name;

            // Verify authorization to edit either the block or the parent step program.
            bool canAddEditDelete = IsUserAuthorized(Authorization.EDIT) || _program.IsAuthorized(Authorization.EDIT, this.CurrentPerson);
            bool canAdministrate  = IsUserAuthorized(Authorization.ADMINISTRATE);

            gStepType.Actions.ShowAdd = canAddEditDelete;
            gStepType.IsDeleteEnabled = canAddEditDelete;

            if (canAddEditDelete)
            {
                gStepType.RowSelected += gStepType_Edit;
            }

            var securityField = gStepType.ColumnsOfType <SecurityField>().FirstOrDefault();

            securityField.EntityTypeId = EntityTypeCache.Get(typeof(Rock.Model.StepType)).Id;

            securityField.Visible = canAdministrate;

            this.ConfigureGridFromBlockSettings();
        }
Esempio n. 2
0
        /// <summary>
        /// Set the properties of the main grid.
        /// </summary>
        private void InitializeGrid()
        {
            if (_program == null)
            {
                return;
            }

            gStepType.DataKeyNames      = new string[] { "Id" };
            gStepType.Actions.AddClick += gStepType_Add;
            gStepType.GridReorder      += gStepType_GridReorder;
            gStepType.GridRebind       += gStepType_GridRebind;
            gStepType.RowSelected      += gStepType_Edit;
            gStepType.RowItemText       = "Step Type";
            gStepType.ExportSource      = ExcelExportSource.DataSource;
            gStepType.ExportFilename    = _program.Name;

            // Initialize Grid: Secured actions

            /*
             * SK - 10/28/2021
             *
             * Block Authorization is removed after Step Type parent authority is set to Step Program.
             */
            bool canAddEditDelete = _program.IsAuthorized(Authorization.EDIT, this.CurrentPerson);
            bool canAdministrate  = IsUserAuthorized(Authorization.ADMINISTRATE);

            gStepType.Actions.ShowAdd = canAddEditDelete;
            gStepType.IsDeleteEnabled = canAddEditDelete;

            var reorderField = gStepType.ColumnsOfType <ReorderField>().FirstOrDefault();

            if (reorderField != null)
            {
                reorderField.Visible = canAddEditDelete;
            }

            var securityField = gStepType.ColumnsOfType <SecurityField>().FirstOrDefault();

            if (securityField != null)
            {
                securityField.EntityTypeId = EntityTypeCache.Get(typeof(Rock.Model.StepType)).Id;
                securityField.Visible      = canAdministrate;
            }

            this.ConfigureGridFromBlockSettings();
        }