protected void treeList_NodeDeleting(object sender, ASPxDataDeletingEventArgs e) { if (ChecklistTemplateItems.CanDelete(decimal.Parse(e.Keys[0].ToString()), 0)) { ChecklistTemplateItems.DeleteChecklistItemHard(decimal.Parse(e.Keys[0].ToString())); BindChecklistTree(); } e.Cancel = true; }
public bool CanRestore(string parm) { if (ChecklistTemplateItems.CanRestore(decimal.Parse(parm))) { return(true); } else { return(false); } }
protected void treeList_NodeInserting(object sender, ASPxDataInsertingEventArgs e) { if (e.NewValues["VisibleText"] == null) { e.Cancel = true; treeList.CancelEdit(); return; } string testval = e.NewValues["VisibleText"].ToString(); ASPxDropDownEdit edtInline = (ASPxDropDownEdit)treeList.FindEditCellTemplateControl((TreeListDataColumn)treeList. Columns["Notes"], "ASPxDropDownEdit1"); testval = edtInline.Text; DropDownList itemtypelist = (DropDownList)treeList.FindEditCellTemplateControl((TreeListDataColumn)treeList.Columns["ItemType"], "ItemTypeList"); if (itemtypelist.SelectedValue == "") { e.Cancel = true; treeList.CancelEdit(); return; } int type = int.Parse(itemtypelist.SelectedValue); DropDownList requiredlist = (DropDownList)treeList.FindEditCellTemplateControl((TreeListDataColumn)treeList.Columns["Required"], "RequiredList"); if (requiredlist.SelectedValue == "") { e.Cancel = true; treeList.CancelEdit(); return; } bool required = bool.Parse(requiredlist.SelectedValue == "Yes" ? "True" : "False"); e.Cancel = true; string parentKey = e.NewValues[treeList.ParentFieldName].ToString(); // treeList.FocusedNode.ParentNode.Key; string checklistckey = ddChecklists.SelectedValue; List <ChecklistTemplateVersion> versions = ChecklistTemplateVersion.GetChecklistTemplateVersions(decimal.Parse(checklistckey)); decimal versionckey = versions[0].ChecklistTemplateVersionCKey; int sortorder = ChecklistTemplateItems.GetSortOrder(decimal.Parse(parentKey)); BindChecklistTree(); treeList.CancelEdit(); }
public string GetVisibleText(string parm) { parm = parm.Replace("*", ""); DataTable dt = ChecklistTemplateItems.GetCheckListItem(decimal.Parse(parm), 1, 1); string retval = ""; if (dt.Rows.Count > 0) { retval = dt.Rows[0]["VisibleText"].ToString(); } return(retval); }
public void Update(ChecklistItem item) { try { ChecklistTemplateItems.UpdateChecklistItemEx(decimal.Parse(item.CKey), item.VisibleText, item.ItemType, item.SelectionDisablesChildren, item.SelectionDisablesSiblings, item.AnswerUnit, decimal.Parse(item.ProtocolVersionCKey), item.NoteCKeys, item.Condition, item.MustImplement, item.MustAnswer, item.ReportOption, item.RequiredStatus, item.Comments); } catch (Exception ex) { var resp = new HttpResponseMessage(HttpStatusCode.ExpectationFailed) { ReasonPhrase = ex.Message }; throw new HttpResponseException(resp); } }
protected bool IsDeleteImageVisible(object obj) { TreeListDataCellTemplateContainer container = (TreeListDataCellTemplateContainer)obj; string nodekey = container.NodeKey.Replace("*", ""); if (nodekey.Length > 0) { if (ChecklistTemplateItems.CanDelete(decimal.Parse(nodekey), 0)) { return(true); } else { return(false); } } else { return(false); } }
public bool CanDelete(string parm) { if (parm.StartsWith("*")) { parm = parm.Replace("*", ""); } decimal ckey = 0; decimal.TryParse(parm, out ckey); if (ckey == 0) { return(false); } if (ChecklistTemplateItems.CanDelete(decimal.Parse(parm), 0)) { return(true); } else { return(false); } }
protected void treeList_ProcessDragNode(object sender, TreeListNodeDragEventArgs e) { bool isDragNodeExpanded = e.Node.Expanded; bool isDropNodeExpanded = e.NewParentNode.Expanded; if (e.NewParentNode.Key == "*") { ChecklistTemplateItems.DeleteChecklistItem(decimal.Parse(e.Node.Key)); //soft delete status = status | 4 } else { decimal parentckey = decimal.Parse(e.NewParentNode.Key.Replace("*", "")); decimal nodekey = decimal.Parse(e.Node.Key); string checklistckey = ddChecklists.SelectedValue; List <ChecklistTemplateVersion> versions = ChecklistTemplateVersion.GetChecklistTemplateVersions(decimal.Parse(checklistckey)); decimal versionckey = versions[0].ChecklistTemplateVersionCKey; ChecklistTemplateItems.DragDropItem(versionckey.ToString(), nodekey.ToString(), parentckey.ToString()); if (e.Node.Key == e.NewParentNode.Key) { } else { } } //e.Node.Expanded = isDragNodeExpanded; //e.NewParentNode.Expanded = false; //isDropNodeExpanded; e.Handled = true; LoadChecklists(); BindChecklists(); LoadChecklistItems(); BindChecklistTree(); }
public ChecklistItem GetChecklistItem(string ItemCKey, int Mode, decimal DraftVersion) { try { ChecklistItem item = new ChecklistItem(); item.CKey = ""; item.ItemType = 0; item.VisibleText = ""; item.AnswerUnit = 0; item.MustAnswer = 0; item.MustImplement = 0; item.SelectionDisablesChildren = 0; item.SelectionDisablesSiblings = 0; item.Notes = ""; item.NotesHyperlinked = ""; item.NoteCKeys = ""; item.ReportOption = 2; item.Comments = ""; item.Condition = ""; if (ItemCKey == "null" || ItemCKey == "*" || ItemCKey == "" || ItemCKey == null) { return(item); } ItemCKey = ItemCKey.Replace("*", ""); DataTable dt = ChecklistTemplateItems.GetCheckListItem(decimal.Parse(ItemCKey), Mode, DraftVersion); if (dt.Rows.Count > 0) { DataRow dr = dt.Rows[0]; item.CKey = dr["ChecklistTemplateItemCkey"].ToString(); //comboboxnote (26) to note (12) as users don't want to distinguish between the two if (int.Parse(dr["ItemTypeKey"].ToString()) != 26) { item.ItemType = int.Parse(dr["ItemTypeKey"].ToString()); } else { item.ItemType = 12; } item.VisibleText = dr["VisibleText"].ToString(); item.AnswerUnit = int.Parse(dr["AnswerUnits_Id"].ToString()); item.MustAnswer = int.Parse(dr["MustAnswer"].ToString()); item.MustImplement = int.Parse(dr["MustImplement"].ToString()); item.SelectionDisablesChildren = int.Parse(dr["SelectionDisablesChildren"].ToString()); item.SelectionDisablesSiblings = int.Parse(dr["SelectionDisablesSiblings"].ToString()); item.Notes = dr["NotesAlt"].ToString(); item.NotesHyperlinked = dr["Notes"].ToString(); item.NoteCKeys = dr["NoteCKeys"].ToString(); item.RequiredStatus = dr["Authorityrequired"] == System.DBNull.Value ? 1 : int.Parse(dr["Authorityrequired"].ToString()); item.ReportOption = dr["showInReport_Id"] == System.DBNull.Value ? 2 : int.Parse(dr["showInReport_Id"].ToString()); item.Comments = dr["comments"] == System.DBNull.Value ? "" : dr["comments"].ToString(); item.Condition = dr["condition"].ToString(); } return(item); } catch (Exception ex) { var resp = new HttpResponseMessage(HttpStatusCode.ExpectationFailed) { ReasonPhrase = ex.Message }; throw new HttpResponseException(resp); } }
public void LoadChecklistItems() { string checklistckey = ddChecklists.SelectedValue; List <ChecklistTemplateVersion> versions = ChecklistTemplateVersion.GetChecklistTemplateVersions(decimal.Parse(checklistckey)); //item at the top is the most recent version DataTable checklisttable = ChecklistTemplateItems.GetAllChecklistItems(versions[0].ChecklistTemplateVersionCKey); checklisttable.Columns.Add("NotesAlt"); //update notes foreach (DataRow drcheck in checklisttable.Rows) { string notes = drcheck["Notes"].ToString(); drcheck["NotesAlt"] = notes; string[] note = notes.Split(';'); notes = ""; foreach (string test in note) { if (test.Length > 0) { if (notes == "") { notes = "<a onclick=OnNoteClick('" + test.Substring(5, 1) + "')>" + test + "</a>"; } else { notes = notes + ", <a onclick=OnNoteClick('" + test.Substring(5, 1) + "')>" + test + "</a>"; } } } if (notes.Length > 0) { drcheck["Notes"] = notes; } if (drcheck["Required"].ToString() == "1") { drcheck["Required"] = "Yes"; } else if (drcheck["Required"].ToString() == "0") { drcheck["Required"] = "No"; } else { drcheck["Required"] = "Conditional"; } } DataRow dr = checklisttable.NewRow(); //node for the Trash icon dr["ParentItemCKey"] = 0; dr["ChecklistTemplateItemCkey"] = "*"; dr["visibletext"] = "-Deleted-"; checklisttable.Rows.Add(dr); //add deleted items DataTable dtDeleted = ChecklistTemplateItems.GetDeletedChecklistItems(versions[0].ChecklistTemplateVersionCKey); foreach (DataRow drDeleted in dtDeleted.Rows) { var desRow = checklisttable.NewRow(); var sourceRow = drDeleted; string key = drDeleted["ChecklistTemplateItemCkey"].ToString(); desRow.ItemArray = sourceRow.ItemArray.Clone() as object[]; decimal test = ChecklistTemplateItems.GetFirstAncestor(decimal.Parse(key), true); string notes = drDeleted["Notes"].ToString(); desRow["NotesAlt"] = notes; string[] note = notes.Split(';'); notes = ""; foreach (string anote in note) { if (anote.Length > 0) { if (notes == "") { notes = "<a onclick=OnNoteClick('" + anote.Substring(5, 1) + "')>" + anote + "</a>"; } else { notes = notes + ", <a onclick=OnNoteClick('" + anote.Substring(5, 1) + "')>" + anote + "</a>"; } } } desRow["Notes"] = notes; if (desRow["Required"].ToString() == "1") { desRow["Required"] = "Yes"; } else if (desRow["Required"].ToString() == "0") { desRow["Required"] = "No"; } else { desRow["Required"] = "Conditional"; } if (sourceRow["ParentItemCKey"] == System.DBNull.Value || (test == decimal.Parse(key))) { desRow["ParentItemCKey"] = "*"; } else { desRow["ParentItemCkey"] = "*" + sourceRow["ParentItemCkey"]; } desRow["ChecklistTemplateItemCkey"] = "*" + sourceRow["ChecklistTemplateItemCkey"]; checklisttable.Rows.Add(desRow); } Session.Add("checklisttable", checklisttable); }
protected void treeList_CustomCallback(object sender, TreeListCustomCallbackEventArgs e) { string ckey = e.Argument; string[] arguments = e.Argument.Split('|'); if (arguments[0] == "INSERT") { string vistext = arguments[1]; string type = arguments[2]; string required = arguments[3]; string notes = arguments[4]; string parent = arguments[5]; string condition = arguments[6]; string checklistckey = ddChecklists.SelectedValue; List <ChecklistTemplateVersion> versions = ChecklistTemplateVersion.GetChecklistTemplateVersions(decimal.Parse(checklistckey)); decimal templateversionckey = versions[0].ChecklistTemplateVersionCKey; DropDownList Protocols = (DropDownList)Master.FindControl("ContentPlaceHolder_Menu").FindControl("protocols"); decimal protocolversion = decimal.Parse(txtProtocolVersion.Text); int sortorder = 0; //current item is the parent of new item; sort order of new item is 1 larger than that of parent, so that it becomes the first child when ordered if (parent == "") { sortorder = 9999999; //large number so that it goes to the bottom } else { sortorder = ChecklistTemplateItems.GetSortOrder(decimal.Parse(parent)); } if (parent == "") { ChecklistTemplateItems.AddChecklistItem(templateversionckey, protocolversion, null, vistext, null, null, null, null, int.Parse(type), int.Parse(required), condition, false, false, false, false, sortorder + 1, notes); } else { ChecklistTemplateItems.AddChecklistItem(templateversionckey, protocolversion, decimal.Parse(parent), vistext, null, null, null, null, int.Parse(type), int.Parse(required), condition, false, false, false, false, sortorder + 1, notes); } } else if (arguments[0] == "RESTORE") { string retval = ChecklistTemplateItems.RestoreChecklistItem(decimal.Parse(arguments[1])); } else if (arguments[0] == "DELETE") { string key = arguments[1]; if (ChecklistTemplateItems.CanDelete(decimal.Parse(key), 0)) { ChecklistTemplateItems.DeleteChecklistItemHard(decimal.Parse(key)); } } else if (arguments[0] == "SETIMAGE") { TreeListNode node = treeList.FindNodeByKeyValue(arguments[1]); } LoadChecklists(); BindChecklists(); LoadChecklistItems(); BindChecklistTree(); }
protected void treeList_NodeUpdating(object sender, ASPxDataUpdatingEventArgs e) { ASPxTextBox txt = (ASPxTextBox)treeList.FindEditCellTemplateControl((TreeListDataColumn)treeList.Columns["VisibleText"], "VisibleTextbox"); ASPxTextBox ConditionText = (ASPxTextBox)treeList.FindEditCellTemplateControl((TreeListDataColumn)treeList.Columns["Condition"], "ConditionText"); string ckey = e.Keys[0].ToString(); string parentckey = treeList.FocusedNode.ParentNode.Key; string vistext = txt.Value.ToString(); string condition = ""; if (ConditionText == null) { condition = ""; } else { condition = ConditionText.Value == null ? "" : ConditionText.Value.ToString(); } DropDownList itemtypelist = (DropDownList)treeList.FindEditCellTemplateControl((TreeListDataColumn)treeList.Columns["ItemType"], "ItemTypeList"); int type = int.Parse(itemtypelist.SelectedValue); DropDownList requiredlist = (DropDownList)treeList.FindEditCellTemplateControl((TreeListDataColumn)treeList.Columns["Required"], "RequiredList"); string required = requiredlist.SelectedValue; int iRequired = 0; if (required == "Yes") { iRequired = 1; } else if (required == "No") { iRequired = 0; } else if (required == "Conditional") { iRequired = 2; } ASPxDropDownEdit edtInline = (ASPxDropDownEdit)treeList.FindEditCellTemplateControl((TreeListDataColumn)treeList. Columns["Notes"], "ASPxDropDownEdit1"); string notes = edtInline.Text; bool isDirty = true; if (isDirty) { ChecklistTemplateItems.UpdateChecklistItem( decimal.Parse(ckey), vistext, type, iRequired, decimal.Parse(txtProtocolVersion.Text), notes, condition ); } e.Cancel = true; LoadChecklists(); BindChecklists(); LoadChecklistItems(); BindChecklistTree(); treeList.CancelEdit(); }