protected void Page_Load(object sender, EventArgs e) { intProfile = Int32.Parse(Request.Cookies["profileid"].Value); oRequest = new Requests(intProfile, dsn); oService = new Services(intProfile, dsn); oServiceRequest = new ServiceRequests(intProfile, dsn); oEnhancement = new Enhancements(intProfile, dsn); oPage = new Pages(intProfile, dsn); oResourceRequest = new ResourceRequest(intProfile, dsn); oStatusLevel = new StatusLevels(); oUser = new Users(intProfile, dsn); oCustomized = new Customized(intProfile, dsn); oFunction = new Functions(intProfile, dsn, intEnvironment); oVariable = new Variables(intEnvironment); if (Request.QueryString["applicationid"] != null && Request.QueryString["applicationid"] != "") { intApplication = Int32.Parse(Request.QueryString["applicationid"]); } if (Request.QueryString["pageid"] != null && Request.QueryString["pageid"] != "") { intPage = Int32.Parse(Request.QueryString["pageid"]); } if (Request.Cookies["application"] != null && Request.Cookies["application"].Value != "") { intApplication = Int32.Parse(Request.Cookies["application"].Value); } if (Request.QueryString["id"] != null && Request.QueryString["id"] != "") { intID = Int32.Parse(Request.QueryString["id"]); } if (Request.QueryString["old"] != null && Request.QueryString["old"] != "") { intIDold = Int32.Parse(Request.QueryString["old"]); } if (!IsPostBack) { LoadLists(); } int intMenuTab = 0; if (Request.QueryString["menu_tab"] != null && Request.QueryString["menu_tab"] != "") { intMenuTab = Int32.Parse(Request.QueryString["menu_tab"]); } Tab oTab = new Tab("", intMenuTab, "divMenu1", true, false); oTab.AddTab("Enhancement Details", ""); if (intID > 0) { panEnhancement.Visible = true; DataSet ds = oEnhancement.Get(intID); if (ds.Tables[0].Rows.Count > 0) { panNew.Visible = true; trStatus.Visible = true; lblTitle.Text = "Edit Enhancement"; DataSet dsMessages = oEnhancement.GetMessages(intID); if (!IsPostBack) { txtTitle.Text = ds.Tables[0].Rows[0]["title"].ToString(); txtDescription.Text = ds.Tables[0].Rows[0]["description"].ToString(); ddlUsers.SelectedValue = ds.Tables[0].Rows[0]["users"].ToString(); txtURL.Text = ds.Tables[0].Rows[0]["url"].ToString(); if (ds.Tables[0].Rows[0]["url"].ToString() != "") { hypURL.Visible = true; hypURL.NavigateUrl = ds.Tables[0].Rows[0]["url"].ToString(); } if (ds.Tables[0].Rows[0]["screenshot"].ToString() != "") { panUploaded.Visible = true; hypUpload.NavigateUrl = ds.Tables[0].Rows[0]["screenshot"].ToString(); } else { panUpload.Visible = true; hypUpload.Visible = false; } radRelease1.SelectedValue = ds.Tables[0].Rows[0]["release1"].ToString(); radRelease2.SelectedValue = ds.Tables[0].Rows[0]["release2"].ToString(); int intStatus = Int32.Parse(ds.Tables[0].Rows[0]["status"].ToString()); lblStatus.Text = oEnhancement.Status(intID); int intRR = Int32.Parse(ds.Tables[0].Rows[0]["rrid"].ToString()); //foreach (DataRow drStep in dsSteps.Tables[0].Rows) //{ // if (drStep["requires_approval"].ToString() == "1" && drStep["approved"].ToString() == "") // boolApproved = false; // if (drStep["step"].ToString() == "1") // boolFunctionalReq = true; //} if (intStatus != (int)EnhancementStatus.Cancelled && intStatus != (int)EnhancementStatus.Completed && intStatus != (int)EnhancementStatus.Denied && intStatus != (int)EnhancementStatus.Duplicate) { trSave1.Visible = true; trSave2.Visible = true; btnCancel.Visible = true; btnUpdate.Visible = true; btnCancel.CommandArgument = intRR.ToString(); if (intStatus == (int)EnhancementStatus.UnderReview) { // Request is active but not yet assigned, so nobody is working on it yet. } else { btnUpdate.Enabled = false; trLocked.Visible = true; btnDeleteAttachment.Enabled = false; oTab.AddTab("Functional Requirements", ""); DataSet dsSteps = oEnhancement.GetSteps(intID, 1, 0); if (dsSteps.Tables[0].Rows.Count == 1 && dsSteps.Tables[0].Rows[0]["completed"].ToString() != "") { DataSet dsDocuments = oEnhancement.GetDocuments(intID); hypFunctionalRequirements.NavigateUrl = dsDocuments.Tables[0].Rows[0]["path"].ToString(); lblDays.Text = dsDocuments.Tables[0].Rows[0]["days"].ToString(); lblRelease.Text = DateTime.Parse(dsDocuments.Tables[0].Rows[0]["release"].ToString()).ToShortDateString(); if (dsSteps.Tables[0].Rows[0]["approved"].ToString() == "" && dsSteps.Tables[0].Rows[0]["rejected"].ToString() == "") { trFunctionalRequirementsDocument.Visible = true; btnFunctionalApproving.Enabled = true; btnFunctionalRejecting.Enabled = true; btnFunctionalRejecting.Attributes.Add("onclick", "ShowHideDiv('" + trFunctionalReject.ClientID + "','inline');ShowHideDiv('" + trFunctionalButtons.ClientID + "','none');return false;"); btnFunctionalCancelReject.Attributes.Add("onclick", "ShowHideDiv('" + trFunctionalReject.ClientID + "','none');ShowHideDiv('" + trFunctionalButtons.ClientID + "','inline');return false;"); btnFunctionalApproving.Attributes.Add("onclick", "ShowHideDiv('" + trFunctionalApprove.ClientID + "','inline');ShowHideDiv('" + trFunctionalButtons.ClientID + "','none');return false;"); btnFunctionalCancelApprove.Attributes.Add("onclick", "ShowHideDiv('" + trFunctionalApprove.ClientID + "','none');ShowHideDiv('" + trFunctionalButtons.ClientID + "','inline');return false;"); btnFunctionalReject.Attributes.Add("onclick", "return ValidateText('" + txtFunctionalReject.ClientID + "','Specify why you are rejecting the functional requirements') && confirm('Rejecting the functional requirements document will cause delays in this enhancement being released.\\n\\nAre you sure you want to reject the functional requirements document?') && ProcessButton(this) && LoadWait();"); btnFunctionalApprove.Attributes.Add("onclick", "return ValidateCheck('" + chkApprove.ClientID + "','You must accept the acknowledgement to approve the functional requirements') && ProcessButton(this) && LoadWait();"); } else { trFunctionalButtons.Visible = false; trFunctionalStatus.Visible = true; if (dsSteps.Tables[0].Rows[0]["approved"].ToString() != "") { imgFunctionalStatus.ImageUrl = "/images/bigCheckBox.gif"; lblFunctionalStatus.Text = "Approved on " + dsSteps.Tables[0].Rows[0]["approved"].ToString(); } if (dsSteps.Tables[0].Rows[0]["rejected"].ToString() != "") { imgFunctionalStatus.ImageUrl = "/images/bigError2.gif"; lblFunctionalStatus.Text = "Rejected on " + dsSteps.Tables[0].Rows[0]["rejected"].ToString(); } } } oTab.AddTab("Message Thread (" + dsMessages.Tables[0].Rows.Count.ToString() + ")", ""); oTab.AddTab("Log (" + oEnhancement.LoadLog(intID, rptLog, lblLog) + ")", ""); } btnMessageReplyImage.Attributes.Add("onclick", "ShowHideDiv2('" + divMessageReply.ClientID + "');return false;"); } else { btnDeleteAttachment.Visible = false; btnMessageReplyImage.Attributes.Add("onclick", "alert('You can only post a message to an ACTIVE thread.\\n\\nSince this thread is no longer active, additional posts have been disabled');return false;"); btnMessageReply.Enabled = false; if (ds.Tables[0].Rows[0]["reason"].ToString() != "") { trComments.Visible = true; lblComments.Text = ds.Tables[0].Rows[0]["reason"].ToString(); } } lblRequestBy.Text = oUser.GetFullName(intProfile); lblRequestOn.Text = DateTime.Parse(ds.Tables[0].Rows[0]["created"].ToString()).ToString(); } strMessages = oEnhancement.GetMessages(intID, false, "#E1FFE1"); } } else if (intIDold > 0) { // OLD ENHANCEMENT (Read Only) panEnhancement.Visible = true; DataSet ds = oCustomized.GetEnhancementByID(intIDold); if (ds.Tables[0].Rows.Count > 0) { panOld.Visible = true; lblTitle.Text = "Edit Enhancement"; lblOldTitle.Text = ds.Tables[0].Rows[0]["title"].ToString(); lblOldDescription.Text = ds.Tables[0].Rows[0]["description"].ToString(); lblOldModule.Text = oPage.Get(Int32.Parse(ds.Tables[0].Rows[0]["pageid"].ToString()), "title"); lblOldNumUsers.Text = ds.Tables[0].Rows[0]["num_users"].ToString(); if (ds.Tables[0].Rows[0]["url"].ToString() != "") { hypOldURL.NavigateUrl = ds.Tables[0].Rows[0]["url"].ToString(); } else { hypOldURL.Visible = false; } if (ds.Tables[0].Rows[0]["path"].ToString() != "") { hypOldAttach.NavigateUrl = ds.Tables[0].Rows[0]["path"].ToString(); } else { hypOldAttach.Visible = false; } lblOldStart.Text = DateTime.Parse(ds.Tables[0].Rows[0]["startdate"].ToString()).ToShortDateString(); lblOldEnd.Text = DateTime.Parse(ds.Tables[0].Rows[0]["enddate"].ToString()).ToShortDateString(); lblOldStatus.Text = oStatusLevel.HTMLSupport(Int32.Parse(ds.Tables[0].Rows[0]["status"].ToString())); int intRelease = 0; if (Int32.TryParse(ds.Tables[0].Rows[0]["release"].ToString(), out intRelease) == true && intRelease > 0) { lblOldRelease.Text = DateTime.Parse(oEnhancement.GetVersion(intRelease, "release")).ToLongDateString(); } else { lblOldRelease.Text = "To Be Determined"; } lblOldRequestedBy.Text = oUser.GetFullName(intProfile); lblOldRequestedOn.Text = DateTime.Parse(ds.Tables[0].Rows[0]["created"].ToString()).ToString(); intRequest = Int32.Parse(ds.Tables[0].Rows[0]["requestid"].ToString()); oCustomized.UpdateEnhancementNew(intRequest, 0); panMessage.Visible = (oCustomized.GetMessages(intRequest, 0).Tables[0].Rows.Count > 0); strMessages = oCustomized.GetMessages(intRequest, false, "#E1FFE1"); if (ds.Tables[0].Rows[0]["status"].ToString() == "2" || ds.Tables[0].Rows[0]["status"].ToString() == "7") { btnMessage.Attributes.Add("onclick", "ShowHideDiv2('" + divMessage.ClientID + "');return false;"); } else { btnMessage.Attributes.Add("onclick", "alert('You can only post a message to an ACTIVE thread.\\n\\nSince this thread is no longer active, additional posts have been disabled');return false;"); } } } else { //panNoEnhancement.Visible = true; panEnhancement.Visible = true; hypCommunity.NavigateUrl = oVariable.Community(); panUpload.Visible = true; lblRequestBy.Text = oUser.GetFullName(intProfile); lblRequestOn.Text = DateTime.Now.ToString(); lblTitle.Text = oPage.Get(intPage, "title"); btnSave.Visible = true; trSave1.Visible = true; trSave2.Visible = true; panNew.Visible = true; } strMenuTab1 = oTab.GetTabs(); btnSave.Attributes.Add("onclick", "return ValidateText('" + txtTitle.ClientID + "','Please enter a title')" + " && ValidateText('" + txtDescription.ClientID + "','Please enter a description')" + " && ValidateDropDown('" + ddlUsers.ClientID + "','Please make a selection for the number of users benefited')" + " && ValidateRadioList('" + radRelease1.ClientID + "','Please make a selection for your preferred release date')" + " && ValidateRadioList('" + radRelease2.ClientID + "','Please make a selection for your alternative release date')" + " && ProcessButton(this) && LoadWait()" + ";"); btnUpdate.Attributes.Add("onclick", "return ValidateText('" + txtTitle.ClientID + "','Please enter a title')" + " && ValidateText('" + txtDescription.ClientID + "','Please enter a description')" + " && ValidateDropDown('" + ddlUsers.ClientID + "','Please make a selection for the number of users benefited')" + " && ValidateRadioList('" + radRelease1.ClientID + "','Please make a selection for your preferred release date')" + " && ValidateRadioList('" + radRelease2.ClientID + "','Please make a selection for your alternative release date')" + " && ProcessButton(this) && LoadWait()" + ";"); btnCancel.Attributes.Add("onclick", "return confirm('WARNING: Any changes related to this enhancement and the ClearView system will be removed.\\n\\nAre you sure you want to cancel this enhancement?') && ProcessButton(this) && LoadWait();"); btnResponse.Attributes.Add("onclick", "return ValidateText('" + txtResponse.ClientID + "','Please enter a response') && ProcessButton(this) && LoadWait();;"); btnMessageReply.Attributes.Add("onclick", "return ValidateText('" + txtMessageReply.ClientID + "','Please enter a response') && ProcessButton(this) && LoadWait();;"); btnDeleteAttachment.Attributes.Add("onclick", "return confirm('Are you sure you want to delete this file?') && ProcessButton(this) && LoadWait();;"); }
private void LoadInformation(int _request) { lblView.Text = oEnhancement.GetBody(intID, intEnvironment); if (intProject > 0) { lblName.Text = oProject.Get(intProject, "name"); lblNumber.Text = oProject.Get(intProject, "number"); lblType.Text = "Project"; } else { lblName.Text = oResourceRequest.GetWorkflow(_request, "name"); lblNumber.Text = "CVT" + intRequest.ToString(); lblType.Text = "Task"; } int intMenuTab = 0; if (Request.QueryString["menu_tab"] != null && Request.QueryString["menu_tab"] != "") { intMenuTab = Int32.Parse(Request.QueryString["menu_tab"]); } Tab oTab = new Tab(hdnTab.ClientID, intMenuTab, "divMenu1", true, false); oTab.AddTab("Enhancement Details", ""); oTab.AddTab("Execution", ""); int intStep = 1; DataSet dsSteps = oEnhancement.GetSteps(intID, 0, 0); if (dsSteps.Tables[0].Rows.Count > 0) { intStep = Int32.Parse(dsSteps.Tables[0].Rows[0]["step"].ToString()); } intStep = LoadStep(1, intStep, img1, null, tr1, tr1Done, lbl1, dsSteps); intStep = LoadStep(2, intStep, img2, tr2Wait, tr2, tr2Done, lbl2, dsSteps); intStep = LoadStep(3, intStep, img3, tr3Wait, tr3, tr3Done, lbl3, dsSteps); intStep = LoadStep(4, intStep, img4, tr4Wait, tr4, tr4Done, lbl4, dsSteps); intStep = LoadStep(5, intStep, img5, tr5Wait, tr5, tr5Done, lbl5, dsSteps); intStep = LoadStep(6, intStep, img6, tr6Wait, tr6, tr6Done, lbl6, dsSteps); DataSet dsDocuments = oEnhancement.GetDocuments(intID); // Step # 1 switch (intStep) { case 1: btnSave.Attributes.Add("onclick", "return (document.getElementById('" + chk1.ClientID + "').checked == true)" + " || (document.getElementById('" + chk1.ClientID + "').checked == false" + " && ValidateText('" + filFunctional.ClientID + "','Select a functional requirement document')" + " && ValidateNumber0('" + txtDays.ClientID + "','Enter a valid number for the estimated date range')" + " && ValidateRadioList('" + radEstimate.ClientID + "','Make a selection for your estimated release date')" + ") && ProcessControlButton() && LoadWait()" + ";"); break; case 2: rptApprovers.DataSource = oEnhancement.GetApprovalResults(intID, intStep); rptApprovers.DataBind(); lblApprovers.Visible = (rptApprovers.Items.Count == 0); btnApprovalGroup.Attributes.Add("onclick", "return OpenWindow('ENHANCEMENT_APPROVAL_GROUPS','?enhancementid=" + intID.ToString() + "&step=" + intStep.ToString() + "');"); break; case 3: if (dsDocuments.Tables[0].Rows.Count > 0) { lblEstimate.Text = dsDocuments.Tables[0].Rows[0]["release"].ToString(); } ; radEstimateYes.Attributes.Add("onclick", "ShowHideDiv('" + divEstimate.ClientID + "','none');"); radEstimateNo.Attributes.Add("onclick", "ShowHideDiv('" + divEstimate.ClientID + "','inline');"); btnSave.Attributes.Add("onclick", "return ValidateRadioButtons('" + radEstimateYes.ClientID + "','" + radEstimateNo.ClientID + "','Select whether or not the estimated release date is OK')" + " && (document.getElementById('" + radEstimateYes.ClientID + "').checked == true || (document.getElementById('" + radEstimateNo.ClientID + "').checked == true && ValidateRadioList('" + radRelease.ClientID + "','Make a selection for your estimated release date')))" + " && ProcessControlButton() && LoadWait()" + ";"); break; } strMessages = oEnhancement.GetMessages(intID, false, "#E1FFE1"); oTab.AddTab("Message Thread (" + oEnhancement.GetMessages(intID).Tables[0].Rows.Count.ToString() + ")", ""); rptDocuments.DataSource = dsDocuments; rptDocuments.DataBind(); lblDocuments.Visible = (rptDocuments.Items.Count == 0); foreach (RepeaterItem ri in rptDocuments.Items) { LinkButton _delete = (LinkButton)ri.FindControl("btnDeleteDocument"); _delete.Attributes.Add("onclick", "return confirm('Are you sure you want to delete this document?');"); } oTab.AddTab("Functional Requirements Documentation (" + rptDocuments.Items.Count.ToString() + ")", ""); oTab.AddTab("Log (" + oEnhancement.LoadLog(intID, rptLog, lblLog) + ")", ""); oTab.AddTab("Release Notes", ""); strMenuTab1 = oTab.GetTabs(); }