Esempio n. 1
0
        private void _cmsi_Assessments_Delete_Click(object sender, EventArgs e)
        {
            if (_grid_Assessments.ActiveRow != null && _grid_Assessments.ActiveRow.IsDataRow)
            {
                string policyName = _grid_Assessments.ActiveRow.Cells[colHeaderName].Text;

                int policyId     = (int)_grid_Assessments.ActiveRow.Cells[colHeaderHiddenPolicyId].Value;
                int assessmentId = (int)_grid_Assessments.ActiveRow.Cells[colHeaderHiddenAssessmentId].Value;

                Repository.AssessmentList assessments = Program.gController.Repository.Policies.Find(policyId).Assessments;
                Policy p = assessments.Find(assessmentId);

                DeletePolicy(p);
            }
        }
Esempio n. 2
0
        private void _grid_Assessments_AfterRowActivate(object sender, EventArgs e)
        {
            bool enabled = false;

            if (_grid_Assessments.ActiveRow != null && _grid_Assessments.ActiveRow.IsDataRow)
            {
                int policyId = (int)_grid_Assessments.ActiveRow.Cells[colHeaderHiddenPolicyId].Value;
                Program.gController.Repository.RefreshPolicies();
                int assessmentId = (int)_grid_Assessments.ActiveRow.Cells[colHeaderHiddenAssessmentId].Value;
                Repository.AssessmentList assessments = Program.gController.Repository.Policies.Find(policyId).Assessments;
                Policy p = assessments.Find(assessmentId);
                if (!p.IsApprovedAssessment && !p.IsCurrentAssessment)
                {
                    enabled = true;
                }
            }
            _cmsi_Assessments_Delete.Enabled    = enabled;
            _cmsi_Assessments_Configure.Enabled = enabled;
        }
Esempio n. 3
0
        private void loadAssessmentsDataSource(int policyId, bool bUpdate)
        {
            _dt_Assessments.Clear();
            try
            {
                // Retrieve policy information.
                Repository.AssessmentList assessments = Program.gController.Repository.Policies.Find(policyId).Assessments;

                foreach (Sql.Policy p in assessments)
                {
                    if (!p.IsAssessment)
                    {
                        continue;
                    }

                    DataRow newRow = _dt_Assessments.NewRow();

                    newRow[colHeaderName]               = p.AssessmentName;
                    newRow[colHeaderDate]               = p.AssessmentDate.Value.ToLocalTime().ToString(Utility.Constants.DATETIME_FORMAT);
                    newRow[colHeaderConfiguredHigh]     = p.MetricCountHigh;
                    newRow[colHeaderConfiguredMedium]   = p.MetricCountMedium;
                    newRow[colHeaderConfiguredLow]      = p.MetricCountLow;
                    newRow[colHeaderRiskHigh]           = p.FindingCountHigh;
                    newRow[colHeaderRiskMedium]         = p.FindingCountMedium;
                    newRow[colHeaderRiskLow]            = p.FindingCountLow;
                    newRow[colHeaderDescription]        = p.AssessmentDescription;
                    newRow[colHeaderHiddenPolicyId]     = p.PolicyId;
                    newRow[colHeaderHiddenAssessmentId] = p.AssessmentId;
                    newRow[colHeaderState]              = p.AssessmentStateName;

                    if (p.FindingCountHigh > 0)
                    {
                        newRow[colHeaderStatus] = Utility.Policy.SeverityExplained.High;
                    }
                    else if (p.FindingCountMedium > 0)
                    {
                        newRow[colHeaderStatus] = Utility.Policy.SeverityExplained.Medium;
                    }
                    else if (p.FindingCountLow > 0)
                    {
                        newRow[colHeaderStatus] = Utility.Policy.SeverityExplained.Low;
                    }
                    else if (p.FindingCountHighExplained > 0)
                    {
                        newRow[colHeaderStatus] = Utility.Policy.SeverityExplained.HighExplained;
                    }
                    else if (p.FindingCountMediumExplained > 0)
                    {
                        newRow[colHeaderStatus] = Utility.Policy.SeverityExplained.MediumExplained;
                    }
                    else if (p.FindingCountLowExplained > 0)
                    {
                        newRow[colHeaderStatus] = Utility.Policy.SeverityExplained.LowExplained;
                    }
                    else
                    {
                        newRow[colHeaderStatus] = Utility.Policy.SeverityExplained.Ok;
                    }

                    _dt_Assessments.Rows.Add(newRow);
                }
            }
            catch (Exception ex)
            {
                logX.loggerX.Error(@"Error - Unable to retrieve Assessments", ex);
                Utility.MsgBox.ShowError(Utility.ErrorMsgs.CantGetLoginsCaption, ex);
            }

            this._grid_Assessments.BeginUpdate();
            this._grid_Assessments.DataSource = _dt_Assessments;
            this._grid_Assessments.DataMember = "";
            if (bUpdate)
            {
                this._grid_Assessments.EndUpdate();
            }

            Policy policy = Program.gController.Repository.GetPolicy(policyId);

            _label_Assessments.Text = string.Format(AssessmentsHeaderDisplay, policy.PolicyName, _grid_Assessments.Rows.Count.ToString());

            if (_grid_Assessments.Rows.Count == 0)
            {
                _label_NoAssessments.Visible = true;
                _grid_Assessments.Visible    = false;
            }
            else
            {
                _label_NoAssessments.Visible = false;
                _grid_Assessments.Visible    = true;
            }
        }