protected void btnAddCategory_Click(object sender, EventArgs e) { lblCategoryName.Attributes.Remove("class"); lblCategoryName.Attributes.Add("class", "input"); if (String.IsNullOrEmpty(txtCategoryName.Value)) { lblCategoryName.Attributes.Remove("class"); lblCategoryName.Attributes.Add("class", "input state-error"); var errorMessageDiv = new HtmlGenericControl("div"); errorMessageDiv.Attributes.Add("class", "note note-error"); errorMessageDiv.InnerText = "Please enter a category name"; lblCategoryName.Controls.Add(errorMessageDiv); RenderGrids(); return; } if (Regex.Matches(txtCategoryName.Value, @"[a-zA-Z ']").Count < txtCategoryName.Value.Length) { lblCategoryName.Attributes.Remove("class"); lblCategoryName.Attributes.Add("class", "input state-error"); var errorMessageDiv = new HtmlGenericControl("div"); errorMessageDiv.Attributes.Add("class", "note note-error"); errorMessageDiv.InnerText = "Category name contains invalid characters (Enter A-Z, a-z)"; lblCategoryName.Controls.Add(errorMessageDiv); RenderGrids(); return; } // Ensure unique if (!IsCategoryUnique(txtCategoryName.Value, 0)) { lblCategoryName.Attributes.Remove("class"); lblCategoryName.Attributes.Add("class", "input state-error"); var errorMessageDiv = new HtmlGenericControl("div"); errorMessageDiv.Attributes.Add("class", "note note-error"); errorMessageDiv.InnerText = "Duplicate category name. Please specity again."; lblCategoryName.Controls.Add(errorMessageDiv); RenderGrids(); return; } var encodedName = System.Web.Security.AntiXss.AntiXssEncoder.HtmlEncode(txtCategoryName.Value, false); // Save category var cat = new DatasetCategory { CategoryOrder = (short)GetNextCategoryOrder(), Dataset = _dataset, DatasetCategoryName = encodedName }; UnitOfWork.Repository <DatasetCategory>().Save(cat); UnitOfWork.Complete(); RenderGrids(); }
private void SetRequiredCategory() { var reqCat = UnitOfWork.Repository <DatasetCategory>().Queryable().SingleOrDefault(dc => dc.Dataset.Id == _dataset.Id && dc.DatasetCategoryName == "Required Information"); if (reqCat == null) { // Save category reqCat = new DatasetCategory { CategoryOrder = 0, Dataset = _dataset, DatasetCategoryName = "Required Information", FriendlyName = "Required Information", Public = false, System = true, Acute = false, Chronic = false }; foreach (DatasetCategory idc in _dataset.DatasetCategories) { foreach (DatasetCategoryElement idce in idc.DatasetCategoryElements.Where(i => i.DatasetElement.Field.Mandatory)) { var catEle = new DatasetCategoryElement() { Acute = false, Chronic = false, DatasetCategory = reqCat, DatasetElement = idce.DatasetElement, }; reqCat.DatasetCategoryElements.Add(catEle); } } UnitOfWork.Repository <DatasetCategory>().Save(reqCat); } }
public DatasetCategoryItem([CanBeNull] DatasetCategory datasetCategory) { IsNull = datasetCategory == null; Name = datasetCategory == null ? "<other>" : datasetCategory.Name; }
private bool ShouldCategoryBeDisplayed(Encounter encounter, DatasetCategory datasetCategory) { if (datasetCategory.Chronic) { if (!encounter.Patient.HasCondition(datasetCategory.DatasetCategoryConditions.Select(c => c.Condition).ToList())) { return(false); } } return(true); }
private int GetNextElementOrder(DatasetCategory cat) { int order = 0; if (cat.DatasetCategoryElements.Count == 0) { return(1); } else { return(cat.DatasetCategoryElements.OrderByDescending(de => de.FieldOrder).First().FieldOrder + 1); } }
public IList <Dataset> Get(DatasetCategory datasetCategory) { Assert.ArgumentNotNull(datasetCategory, nameof(datasetCategory)); if (!datasetCategory.IsPersistent) { return(new List <Dataset>()); } using (ISession session = OpenSession(true)) { return(session.CreateQuery( "from Dataset ds " + "where ds.DatasetCategory = :datasetCategory") .SetEntity("datasetCategory", datasetCategory) .List <Dataset>()); } }