protected void lnkBtnReturn_Click(object sender, EventArgs e) { bool lb_complete = true; woApprovalBLL apprvLogic = new woApprovalBLL(); WorkOrder.WOapprovalDataTable aprvDT = apprvLogic.GetWOApprovalDataByWOandProj(li_wonum, ls_proj); foreach (WorkOrder.WOapprovalRow aprvDR in aprvDT) { lb_complete = true; if (Convert.ToBoolean(aprvDR["wapr_required"]) && !Convert.ToBoolean(aprvDR["wapr_AprvCode"])) { lb_complete = false; break; } } if (lb_complete) { woPhaseBLL woPhaseLogic = new woPhaseBLL(); int PhaseNum = woPhaseLogic.InsertPhaseRecord(li_wonum, ls_proj, 0, DateTime.Now, "GONG", 1, Convert.ToInt32(User.Identity.Name.Substring(User.Identity.Name.IndexOf("\\") + 1))); if (PhaseNum > 0) { PhaseNum = woPhaseLogic.InsertPhaseRecord(li_wonum, ls_proj, 0, DateTime.Now, "IMPL", 0, Convert.ToInt32(User.Identity.Name.Substring(User.Identity.Name.IndexOf("\\") + 1))); WorkOrderBLL woLogic = new WorkOrderBLL(); WorkOrder.WorkOrderDataTable WrkOrds = woLogic.GetWorkOrdersByWOnumProj(li_wonum, ls_proj); WorkOrder.WorkOrderRow WrkOrd = WrkOrds[0]; bool lb_rtn; WrkOrd.word_Status = "IMPL"; WrkOrd.word_statFlag = 0; WrkOrd.word_StatNum = PhaseNum; lb_rtn = woLogic.UpdateWorkOrder(WrkOrd.word_WOnum, WrkOrd.word_Proj, WrkOrd.word_StatNum, WrkOrd.word_Status, WrkOrd.word_statFlag, WrkOrd.word_Date, WrkOrd.word_Author, WrkOrd.word_Title, "", "", WrkOrd.word_Priority, WrkOrd.word_Descr, WrkOrd.word_Justify, WrkOrd.word_Cmnts, WrkOrd.word_PMorSME, WrkOrd.word_BusnOwner, WrkOrd.word_reqDueDate, WrkOrd.word_WOnum, WrkOrd.word_Proj); } } string ls_response = "~/WorkOrder/EditWO.aspx?word_WOnum=" + li_wonum.ToString() + "&word_Proj=" + ls_proj; Response.Redirect(ls_response); }
protected void FormView2_ItemInserted(object sender, FormViewInsertedEventArgs e) { int li_r2r; string ls_cmnts, ls_to, ls_title, ls_val2, ls_val3, ls_val4; if (FormView2.DataItemCount > 0) { DataRowView rowView = (DataRowView)FormView2.DataItem; string ls_val = rowView["wrsp_uid"].ToString(); int li_respNum = Convert.ToInt32(rowView["wrsp_RespNum"]); li_r2r = Convert.ToInt32(rowView["wrsp_RespToResp"]); if (li_r2r == null) { li_r2r = 0; } WorkOrderBLL WOlogic = new WorkOrderBLL(); WorkOrder.WorkOrderDataTable WOdt = WOlogic.GetWorkOrdersByWOnumProj(li_wonum, ls_proj); DataRow woRow = ((DataRow)(WOdt.Rows[0])); ls_title = woRow["word_Title"].ToString(); if ((User.Identity.Name.Substring(User.Identity.Name.IndexOf("\\") + 1)).ToString() == woRow["word_BusnOwner"].ToString()) { ls_to = woRow["word_BusnOwner"].ToString(); } else { ls_to = woRow["word_PMorSME"].ToString(); } ls_val2 = woRow["wrsp_Results"].ToString(); ls_val3 = woRow["wrsp_Consider"].ToString(); ls_val4 = woRow["wrsp_Risks"].ToString(); if (string.IsNullOrEmpty(ls_val2)) { ls_val2 = ""; } if (string.IsNullOrEmpty(ls_val3)) { ls_val2 = ""; } if (string.IsNullOrEmpty(ls_val4)) { ls_val2 = ""; } SmtpEmail mailMessage = new SmtpEmail(); bool lb_rtn = mailMessage.Send(User.Identity.Name.Substring(User.Identity.Name.IndexOf("\\") + 1), ls_to, "Work Order Response - " + ls_proj + " WO# " + ls_num + " - " + ls_title, "WO# " + ls_num + " - " + ls_title + " requires your attention." + " Log into the EBS Work Order Module for details. Please do not respond to this email." + Environment.NewLine + "http://www.google.com" + Environment.NewLine + Environment.NewLine + "The most recent comment on this work order is as follows:" + Environment.NewLine + Environment.NewLine + "Results:" + Environment.NewLine + Environment.NewLine + ls_val2 + Environment.NewLine + Environment.NewLine + "Considerations:" + Environment.NewLine + Environment.NewLine + ls_val3 + Environment.NewLine + Environment.NewLine + "Risks:" + Environment.NewLine + Environment.NewLine + ls_val4, li_wonum, li_respNum, ls_proj); } //WorkOrderTableAdapters.WOresponseTableAdapter WOrespAdapter = new WorkOrderTableAdapters.WOresponseTableAdapter(); //WorkOrder.WOresponseDataTable Responses = WOrespAdapter.GetMaxWOresponseByWOnum(Convert.ToInt32(Request.QueryString["word_WOnum"]),Convert.ToString(Request.QueryString["word_Proj"])); //if (Responses.Count > 0) //{ // FormView2.ChangeMode(FormViewMode.ReadOnly); // woUsersBLL userLogic = new woUsersBLL(); // string ls_usr = userLogic.GetFullNameByID(Convert.ToInt32(Responses[0].wrsp_uid)); // ((Label)(FormView2.FindControl("UIDlabel"))).Text = ls_usr; //} FormView2.ChangeMode(FormViewMode.ReadOnly); }
protected void FormView1_ItemInserted(object sender, FormViewInsertedEventArgs e) { int rws = e.AffectedRows; woPhaseBLL woPhaseLogic = new woPhaseBLL(); WorkOrderBLL woLogic = new WorkOrderBLL(); int wonum = (woLogic.GetMaxWOnum(e.Values[3].ToString()) - 1); bool lb_rtn; //SmtpEmail mailMessage = new SmtpEmail(); //bool lb_rtn = mailMessage.Send(e.Values["word_Author"].ToString(), e.Values["word_PMorSME"].ToString(), "Work Order Creation - " + e.Values[3].ToString() // + " WO# " + wonum + " - " + e.Values["word_Title"].ToString(), // "WO# " + wonum + " - " + e.Values["word_Title"].ToString() + " requires your attention." + // " Log into the EBS Work Order Module for details. Please do not respond to this email.", wonum, 0, e.Values["word_Proj"].ToString()); // Insert a WOphase record, update the WOrole table and update the WorkOrder table record as well. WorkOrder.WorkOrderDataTable WrkOrds = woLogic.GetWorkOrdersByWOnumProj(wonum, e.Values["word_Proj"].ToString()); WorkOrder.WorkOrderRow WrkOrd = WrkOrds[0]; int PhaseNum = woPhaseLogic.InsertPhaseRecord(wonum, WrkOrd.word_Proj, 0, DateTime.Now, "IWOR", 0, Convert.ToInt32(User.Identity.Name.Substring(User.Identity.Name.IndexOf("\\") + 1))); RolesBLL roleLogic = new RolesBLL(); lb_rtn = roleLogic.InsertWOroles(wonum, Convert.ToInt32(WrkOrd.word_Author), WrkOrd.word_Proj, "AUTH", false, true); lb_rtn = roleLogic.InsertWOroles(wonum, Convert.ToInt32(WrkOrd.word_BusnOwner), WrkOrd.word_Proj, "BOWN", false, true); lb_rtn = roleLogic.InsertWOroles(wonum, Convert.ToInt32(WrkOrd.word_PMorSME), WrkOrd.word_Proj, "PM", false, true); DataView dv = (DataView)ObjectDataSource1.Select(); DataRow dr = (DataRow)dv.Table.Rows[0]; FormView fv = sender as FormView; if (fv.CurrentMode == FormViewMode.Insert) { DropDownList DropDownListPhaseStat = (DropDownList)fv.Row.FindControl("DropDownListPhaseStat"); int PhaseStat = Convert.ToInt32(DropDownListPhaseStat.SelectedValue); if (PhaseStat == 1) { int PhaseNumb = woPhaseLogic.InsertPhaseRecord(wonum, WrkOrd.word_Proj, 0, DateTime.Now, "WORA", 0, Convert.ToInt32(User.Identity.Name.Substring(User.Identity.Name.IndexOf("\\") + 1))); WrkOrd.word_Status = "WORA"; WrkOrd.word_statFlag = 0; WrkOrd.word_StatNum = PhaseNumb; //DateTimePicker DTimePicker = (DateTimePicker)fv.Row.FindControl("CalendarExtender1"); //string ls_val = DTimePicker.Value.ToString(); //TextBox TxtBxReqDate = (TextBox)fv.Row.FindControl("word_reqDueDateTextBox"); //TxtBxReqDate.Text = ls_val; //WrkOrd.word_reqDueDate = Convert.ToDateTime(DTimePicker.Value.ToString()); lb_rtn = woLogic.UpdateWorkOrder(WrkOrd.word_WOnum, WrkOrd.word_Proj, WrkOrd.word_StatNum, WrkOrd.word_Status, WrkOrd.word_statFlag, WrkOrd.word_Date, WrkOrd.word_Author, WrkOrd.word_Title, WrkOrd.word_Doc.ToString(), WrkOrd.word_DocVer.ToString(), WrkOrd.word_Priority, WrkOrd.word_Descr, WrkOrd.word_Justify, WrkOrd.word_Cmnts, WrkOrd.word_PMorSME, WrkOrd.word_BusnOwner, WrkOrd.word_reqDueDate, WrkOrd.word_WOnum, WrkOrd.word_Proj); } } Response.Redirect("~/WorkOrder/Default.aspx?word_Proj=" + WrkOrd.word_Proj.ToString()); }
protected void btnUpdate_Click(object sender, EventArgs e) { // First check their LDAP Password . . . ldapAuthentication ldapAuth = new ldapAuthentication(); try { ldapAuth.AuthenticateUser(User.Identity.Name.Substring(User.Identity.Name.IndexOf("\\") + 1).ToString(), txtBxPassword.Text); } catch (Exception ex) { lblText = Label1.Text; Label1.Text = ex.Message.ToString();//"Your LDAP UID and/or password did not authenticate. Please try again."; return; } lblText = Label1.Text;// = "Your LDAP UID and/or password did not authenticate. Please try again."; DataView dv = (DataView)ObjectDataSource1.Select(); //string ls_val; //string ls_val2; woApprovalBLL apprvLogic = new woApprovalBLL(); bool lb_rtn = false; foreach (DataRow dr in dv.Table.Rows) { if (Convert.ToInt32(dr["wapr_Approver"]) == Convert.ToInt32(User.Identity.Name.Substring(User.Identity.Name.IndexOf("\\") + 1))) { int li_val = Convert.ToInt32(dr["wapr_AprvNum"]); int li_val1 = li_wonum; string ls_val = ls_proj; DateTime ldt_val = Convert.ToDateTime(dr["wapr_AprvDate"].ToString()); int li_val2 = Convert.ToInt32(dr["wapr_Approver"]); bool lb_val = chkBxApproval.Checked; //Convert.ToBoolean(dr["wapr_AprvCode"]); DateTime ldt_val2 = DateTime.Now; string ls_val2 = txtBxComments.Text; // dr["wapr_comments"].ToString(); bool lb_val2 = Convert.ToBoolean(dr["wapr_required"]); bool lb_val3 = Convert.ToBoolean(dr["wapr_emailFlag"]); lb_rtn = apprvLogic.UpdateWOAprvlRecord(li_val, li_val1, ls_val, ldt_val, li_val2, lb_val, ldt_val2, ls_val2, lb_val2, lb_val3, li_val); GridView1.DataBind(); btnUpdate.Visible = false; btnApprove.Visible = false; lnkBtnReturn.Visible = true; Label2.Visible = false; Label3.Visible = false; Label4.Visible = false; Label5.Visible = false; chkBxApproval.Visible = false; txtBxPassword.Visible = false; txtBxComments.Visible = false; txtBxUser.Visible = false; Label1.Text = "Update was successful."; } } WorkOrderBLL woLogic = new WorkOrderBLL(); WorkOrder.WorkOrderDataTable WrkOrds = woLogic.GetWorkOrdersByWOnumProj(li_wonum, ls_proj); WorkOrder.WorkOrderRow WrkOrd = WrkOrds[0]; string host = Request.ServerVariables["SERVER_NAME"]; //HttpContext.Current.Request.Url.Host; SmtpEmail mailMessage = new SmtpEmail(); string ls_to = ""; RolesBLL WOroleLogic = new RolesBLL(); WorkOrder.WOroleTextDisplayDataTable woRoleDT; woRoleDT = WOroleLogic.GetWOrolesByWOnumProj(li_wonum, ls_proj); foreach (WorkOrder.WOroleTextDisplayRow roleRow in woRoleDT) { if (Convert.ToBoolean(roleRow["worl_aprvl"]) == true) { ls_to = ls_to + "," + roleRow["worl_uid"].ToString(); } } ldapClient userObject = new ldapClient(); UserRecord ud; ud = userObject.SearchUser(User.Identity.Name.Substring(User.Identity.Name.IndexOf("\\") + 1)); lb_rtn = mailMessage.Send(User.Identity.Name.Substring(User.Identity.Name.IndexOf("\\") + 1), ls_to, "GO/NoGO ACTION - " + WrkOrd.word_Proj.ToString() + " WO# " + li_wonum + " - " + WrkOrd.word_Title.ToString(), "WO# " + li_wonum + " - " + WrkOrd.word_Title.ToString() + " has received a Go/NoGo action from " + ud.FirstName.ToUpper() + " " + ud.LastName.ToUpper() + "." + " Log into the EBS Work Order Module for details." + Environment.NewLine + Environment.NewLine + "http://" + host + "/WorkOrder/EditWO.aspx?word_WOnum=" + li_wonum.ToString() + "&word_Proj=" + WrkOrd.word_Proj.ToString() + Environment.NewLine + Environment.NewLine + "The comment left on this Go/NoGo action is as follows:" + Environment.NewLine + Environment.NewLine + (Convert.ToBoolean(chkBxApproval.Checked) ? "GO! " : "NO Go! ") + Environment.NewLine + Environment.NewLine + txtBxComments.Text + Environment.NewLine + Environment.NewLine + Environment.NewLine + Environment.NewLine + "PLEASE DO NOT RESPOND TO THIS EMAIL!" , li_wonum, 0, WrkOrd.word_Proj.ToString()); }
protected void Page_Load(object sender, EventArgs e) { ScriptManager SM = ((ScriptManager)(Master.FindControl("ScriptManager1"))); SM.RegisterAsyncPostBackControl(btnAddParticipant); SM.RegisterAsyncPostBackControl(FormView2); WorkOrderBLL woLogic = new WorkOrderBLL(); WorkOrder.WorkOrderDataTable WrkOrds = woLogic.GetWorkOrdersByWOnumProj(Convert.ToInt32(Request.QueryString["word_WOnum"]), Request.QueryString["word_Proj"].ToString()); WorkOrder.WorkOrderRow WrkOrd = WrkOrds[0]; ls_proj = Request.QueryString["word_Proj"]; li_wonum = Convert.ToInt32(Request.QueryString["word_WOnum"]); RolesBLL roleLogic = new RolesBLL(); if (!IsPostBack) { if ((WrkOrd.word_Status == "IMPL" && WrkOrd.word_statFlag == 1) || (WrkOrd.word_Status == "GONG")) // && { if (!(WrkOrd.word_Status == "GONG" && roleLogic.IsUserApprover(Convert.ToInt32(User.Identity.Name.Substring(User.Identity.Name.IndexOf("\\") + 1)), li_wonum, ls_proj))) // AND IsUserPMorUp?RoleBLL { FormView1.DefaultMode = FormViewMode.ReadOnly; FormView1.DataSourceID = ObjectDataSource2.ID; FormView1.DataBind(); ddlParticipant.Enabled = false; ddlParticipant.Visible = false; ddlRole.Enabled = false; ddlRole.Visible = false; btnAddParticipant.Visible = false; lblParticipant.Visible = false; lblRole.Visible = false; GridView2.Enabled = false; GridView2.Visible = false; ((LinkButton)(FormView1.FindControl("RespondButton"))).Visible = false; } else { ((LinkButton)(FormView1.FindControl("Approvals"))).Visible = true; } } bool lb_rtn = false; WorkOrderTableAdapters.WOroleTableAdapter roleAdapter = new WorkOrderTableAdapters.WOroleTableAdapter(); WorkOrder.WOroleDataTable roleDT = roleAdapter.GetWOroleByWOproj(li_wonum, ls_proj); foreach (DataRow roleRow in roleDT) { if (roleRow["worl_uid"].ToString() == WrkOrd.word_Author.ToString()) { lb_rtn = true; break; } } if (!lb_rtn) { lb_rtn = roleLogic.InsertWOroles(li_wonum, Convert.ToInt32(WrkOrd.word_Author), ls_proj, "AUTH", false, true); } lb_rtn = false; foreach (DataRow roleRow in roleDT) { if (roleRow["worl_uid"].ToString() == WrkOrd.word_BusnOwner.ToString()) { lb_rtn = true; break; } } if (!lb_rtn) { lb_rtn = roleLogic.InsertWOroles(li_wonum, Convert.ToInt32(WrkOrd.word_BusnOwner), ls_proj, "BOWN", false, true); } lb_rtn = false; foreach (DataRow roleRow in roleDT) { if (roleRow["worl_uid"].ToString() == WrkOrd.word_PMorSME.ToString()) { lb_rtn = true; break; } } if (!lb_rtn) { lb_rtn = roleLogic.InsertWOroles(li_wonum, Convert.ToInt32(WrkOrd.word_PMorSME), ls_proj, "PM", false, true); } lb_rtn = false; //GridView2.DataBind(); } woResponseBLL responseLogic = new woResponseBLL(); if (responseLogic.GetWOresponseCountByWOandProj(li_wonum, ls_proj) > 0) { FormView2.Visible = true; } else { FormView2.Visible = false; } }
protected void FormView1_ItemUpdated(object sender, FormViewUpdatedEventArgs e) { int statflag; int rws = e.AffectedRows; woPhaseBLL woPhaseLogic = new woPhaseBLL(); // If Phase changed (or PhaseStat is 'Completed') then a new row is needed in Phase table and WO updated with new Phase/PhaseNumber if (!e.NewValues["word_Status"].ToString().Equals(e.OldValues["word_Status"].ToString()) || (!e.NewValues["word_statFlag"].ToString().Equals(e.OldValues["word_statFlag"].ToString()) && e.NewValues["word_statFlag"].ToString().Equals("1"))) { int PhaseNum = woPhaseLogic.InsertPhaseRecord(li_wonum, ls_proj, 0, DateTime.Now, e.NewValues["word_Status"].ToString(), Convert.ToInt32(e.NewValues["word_statFlag"].ToString()), Convert.ToInt32(User.Identity.Name.Substring(User.Identity.Name.IndexOf("\\") + 1))); } WorkOrderBLL woLogic = new WorkOrderBLL(); WorkOrder.WorkOrderDataTable WrkOrds = woLogic.GetWorkOrdersByWOnumProj(li_wonum, ls_proj); WorkOrder.WorkOrderRow WrkOrd = WrkOrds[0]; //If Phase Status is 'Completed' insert a new row in Phase and update WO with new Phase/Status/PhaseNumber if (Convert.ToUInt32(e.NewValues["word_statFlag"]) == 1) { statflag = 0; string NewPhase = ""; switch (e.NewValues["word_Status"].ToString()) { case "IWOR": NewPhase = "WORA"; break; case "WORA": NewPhase = "WORD"; break; case "WORM": NewPhase = "WORA"; break; case "WORD": NewPhase = "WOTS"; break; case "WOTS": NewPhase = "WDEV"; break; case "WDEV": NewPhase = "WTST"; break; case "WTST": NewPhase = "GONG"; break; case "GONG": NewPhase = "IMPL"; break; case "IMPL": NewPhase = "IMPL"; statflag = 1; break; default: break; } int PhaseNum = woPhaseLogic.InsertPhaseRecord(li_wonum, ls_proj, 0, DateTime.Now, NewPhase, statflag, Convert.ToInt32(User.Identity.Name.Substring(User.Identity.Name.IndexOf("\\") + 1))); WrkOrd.word_Status = NewPhase; WrkOrd.word_statFlag = statflag; WrkOrd.word_StatNum = PhaseNum; bool lb_rtn; lb_rtn = woLogic.UpdateWorkOrder(WrkOrd.word_WOnum, WrkOrd.word_Proj, WrkOrd.word_StatNum, WrkOrd.word_Status, WrkOrd.word_statFlag, WrkOrd.word_Date, WrkOrd.word_Author, WrkOrd.word_Title, "", "", WrkOrd.word_Priority, WrkOrd.word_Descr, WrkOrd.word_Justify, WrkOrd.word_Cmnts, WrkOrd.word_PMorSME, WrkOrd.word_BusnOwner, WrkOrd.word_reqDueDate, WrkOrd.word_WOnum, WrkOrd.word_Proj); string ls_to; if (Convert.ToString(User.Identity.Name.Substring(User.Identity.Name.IndexOf("\\") + 1)) == WrkOrd.word_PMorSME.ToString()) { ls_to = WrkOrd.word_BusnOwner.ToString(); } else { ls_to = WrkOrd.word_PMorSME.ToString(); } string host = Request.ServerVariables["SERVER_NAME"]; //HttpContext.Current.Request.Url.Host; SmtpEmail mailMessage = new SmtpEmail(); switch (NewPhase) // This logic makes sure that the authorizers get emails during GO/NoGO phase. { case "GONG": RolesBLL WOroleLogic = new RolesBLL(); WorkOrder.WOroleTextDisplayDataTable woRoleDT; woRoleDT = WOroleLogic.GetWOrolesByWOnumProj(li_wonum, ls_proj); //woApprovalBLL apprvLogic = new woApprovalBLL(); //WorkOrder.WOapprovalDataTable apprvlDT; //apprvlDT = apprvLogic.GetWOApprovalDataByWOandProj(li_wonum, ls_proj); // this code ensures that every approval record is created foreach (WorkOrder.WOroleTextDisplayRow roleRow in woRoleDT) { if (Convert.ToBoolean(roleRow["worl_aprvl"]) == true) { ls_to = ls_to + "," + roleRow["worl_uid"].ToString(); } } lb_rtn = mailMessage.Send(User.Identity.Name.Substring(User.Identity.Name.IndexOf("\\") + 1), ls_to, "Work Order Approval - " + WrkOrd.word_Proj.ToString() + " WO# " + li_wonum + " - " + WrkOrd.word_Title.ToString(), "WO# " + li_wonum + " - " + WrkOrd.word_Title.ToString() + " requires your Go/NoGo action." + " Log into the EBS Work Order Module for details. Please do not respond to this email." + Environment.NewLine + Environment.NewLine + "http://" + host + "/WorkOrder/Approvals.aspx?word_WOnum=" + li_wonum.ToString() + "&word_Proj=" + WrkOrd.word_Proj.ToString() + Environment.NewLine + Environment.NewLine + "The most recent comment on this work order is as follows:" + Environment.NewLine + Environment.NewLine + WrkOrd.word_Cmnts.ToString(), li_wonum, 0, WrkOrd.word_Proj.ToString()); break; default: lb_rtn = mailMessage.Send(User.Identity.Name.Substring(User.Identity.Name.IndexOf("\\") + 1), ls_to, "Work Order Modification - " + WrkOrd.word_Proj.ToString() + " WO# " + li_wonum + " - " + WrkOrd.word_Title.ToString(), "WO# " + li_wonum + " - " + WrkOrd.word_Title.ToString() + " requires your attention." + " Log into the EBS Work Order Module for details. Please do not respond to this email." + Environment.NewLine + Environment.NewLine + "http://" + host + "/WorkOrder/EditWO.aspx?word_WOnum=" + li_wonum.ToString() + "&word_Proj=" + WrkOrd.word_Proj.ToString() + Environment.NewLine + Environment.NewLine + "The most recent comment on this work order is as follows:" + Environment.NewLine + Environment.NewLine + WrkOrd.word_Cmnts.ToString(), li_wonum, 0, WrkOrd.word_Proj.ToString()); break; } } if (!e.NewValues["word_PMorSME"].ToString().Equals(e.OldValues["word_PMorSME"].ToString()) || !e.NewValues["word_BusnOwner"].ToString().Equals(e.OldValues["word_BusnOwner"].ToString())) { string ls_to, ls_msg; if (Convert.ToString(User.Identity.Name.Substring(User.Identity.Name.IndexOf("\\") + 1)) == WrkOrd.word_PMorSME.ToString()) { ls_to = WrkOrd.word_BusnOwner.ToString(); } else { ls_to = WrkOrd.word_PMorSME.ToString(); } if (!e.NewValues["word_PMorSME"].ToString().Equals(e.OldValues["word_PMorSME"].ToString())) { ls_msg = " The Business Owner of this work order has changed."; } else { ls_msg = " The Project manager for this work order has changed. "; } string host = Request.ServerVariables["SERVER_NAME"]; //HttpContext.Current.Request.Url.Host; SmtpEmail mailMessage = new SmtpEmail(); bool lb_rtn = mailMessage.Send(User.Identity.Name.Substring(User.Identity.Name.IndexOf("\\") + 1), ls_to, "Work Order Modification - " + WrkOrd.word_Proj.ToString() + " WO# " + li_wonum + " - " + WrkOrd.word_Title.ToString(), "WO# " + li_wonum + " - " + WrkOrd.word_Title.ToString() + " requires your attention." + ls_msg + " Log into the EBS Work Order Module for details. Please do not respond to this email." + Environment.NewLine + Environment.NewLine + "http://" + host + "/WorkOrder/EditWO.aspx?word_WOnum=" + li_wonum.ToString() + "&word_Proj=" + WrkOrd.word_Proj.ToString() + Environment.NewLine + Environment.NewLine + //"http://www.google.com" "The most recent comment on this work order is as follows:" + Environment.NewLine + Environment.NewLine + WrkOrd.word_Cmnts.ToString(), li_wonum, 0, WrkOrd.word_Proj.ToString()); } Response.Redirect("~/WorkOrder/Default.aspx?word_Proj=" + ls_proj); }