/// <summary> /// Handles the TextChanged event of the txtQualificationDescription* controls, used to update the corresponding LeadQualification entity. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param> protected void txtQualificationDescription_TextChanged(object sender, EventArgs e) { TextBox tb = sender as TextBox; if (tb != null) { string Id = tb.Attributes[cQualificationId]; if (!string.IsNullOrEmpty(Id)) { IQualification qualification = EntityFactory.GetById <IQualification>(Id); if (qualification != null) { ILead lead = GetCurrentLead(); if (lead != null) { ILeadQualification lead_qual = GetLeadQualification(lead, qualification); if (lead_qual != null) { lead_qual.Notes = tb.Text; lead_qual.Save(); } else { ILeadQualification new_qual = EntityFactory.Create <ILeadQualification>(); new_qual.Lead = lead; new_qual.Qualification = qualification; new_qual.Notes = tb.Text; new_qual.Save(); } } } } } }
/// <summary> /// Handles the CheckedChanged event of the chkQualificationSelected* controls, used to update the corresponding LeadQualification entity. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param> protected void ChkQualificationSelectedCheckedChanged(object sender, EventArgs e) { CheckBox cb = sender as CheckBox; if (cb != null) { string Id = cb.Attributes[cQualificationId]; if (!string.IsNullOrEmpty(Id)) { IQualification qualification = EntityFactory.GetById <IQualification>(Id); if (qualification != null) { ILead lead = GetCurrentLead(); if (lead != null) { ILeadQualification lead_qual = GetLeadQualification(lead, qualification); if (lead_qual != null) { lead_qual.Checked = cb.Checked; lead_qual.Save(); } else { ILeadQualification new_qual = EntityFactory.Create <ILeadQualification>(); new_qual.Lead = lead; new_qual.Qualification = qualification; new_qual.Checked = cb.Checked; new_qual.Save(); } } } } } }
/// <summary> /// Finds the LeadQualification entity within the LeadQualication collection that matches the Qualification. /// </summary> /// <param name="qualication">The Qualifiation.</param> /// <param name="lead_qualifications">The LeadQualifications.</param> /// <returns></returns> protected static ILeadQualification FindLeadQualification(IQualification qualication, IList <ILeadQualification> lead_qualifications) { ILeadQualification result = null; foreach (ILeadQualification lead_qual in lead_qualifications) { if (lead_qual.Qualification.Equals(qualication)) { result = lead_qual; break; } } return(result); }
/// <summary> /// Gets the LeadQualification entity based on the parameters. /// </summary> /// <param name="lead">The Lead.</param> /// <param name="qualification">The Qualification.</param> /// <returns></returns> protected static ILeadQualification GetLeadQualification(ILead lead, IQualification qualification) { using (new SessionScopeWrapper()) { IRepository <ILeadQualification> rep = EntityFactory.GetRepository <ILeadQualification>(); IQueryable qry = (IQueryable)rep; IExpressionFactory ep = qry.GetExpressionFactory(); ICriteria crt = qry.CreateCriteria(); IJunction all = ep.Conjunction(); all.Add(ep.Eq("Lead", lead)); all.Add(ep.Eq("Qualification", qualification)); crt.Add(all); ILeadQualification result = crt.UniqueResult <ILeadQualification>(); return(result); } }
/// <summary> /// Loads the LeadQualification entities and displays the corresponding data for the current Lead. /// </summary> protected void LoadLeadQualifications() { ILead lead = GetCurrentLead(); IQualificationCategory currentCategory = lead.QualificationCategory; IList <IQualification> qualifications = GetQualifications(currentCategory); IList <ILeadQualification> leadQualifications = GetLeadQualifications(currentCategory, qualifications, lead); for (int i = 0; i < 8; i++) { string strChkStyle; string strTxtStyle; string strNotes; bool bChecked; string qualId; int sortPos; string desc; if (i < qualifications.Count) { IQualification qual = qualifications[i]; bool bVisible = qual.Visible ?? false; if (bVisible) { ILeadQualification leadQual = FindLeadQualification(qual, leadQualifications); bChecked = (leadQual != null) && (leadQual.Checked ?? false); strNotes = (leadQual != null) ? leadQual.Notes : string.Empty; bool bShowNotes = qual.ShowNotes ?? false; strChkStyle = (bVisible) ? string.Empty : cDisplayNone; strTxtStyle = (bShowNotes) ? string.Empty : cDisplayNone; qualId = qual.Id.ToString(); sortPos = qual.SortPosition.Value; desc = qual.Description; HtmlTableRow container = (HtmlTableRow)FindControl("container" + (i + 1)); container.Style[HtmlTextWriterStyle.Display] = "table-row"; } else { HtmlTableRow container = (HtmlTableRow)FindControl("container" + (i + 1)); container.Style[HtmlTextWriterStyle.Display] = "None"; continue; } } else { HtmlTableRow container = (HtmlTableRow)FindControl("container" + (i + 1)); container.Style[HtmlTextWriterStyle.Display] = "None"; continue; } switch (sortPos) { case 1: chkQualificationSelected1.Style.Value = strChkStyle; chkQualificationSelected1.Checked = bChecked; chkQualificationSelected1_lz.Style.Value = strChkStyle; txtQualificationDescription1.Style.Value = strTxtStyle; txtQualificationDescription1.Text = strNotes; chkQualificationSelected1_lz.Text = desc; AddQualficationIdAttributeTo(chkQualificationSelected1, txtQualificationDescription1, qualId); break; case 2: chkQualificationSelected2.Style.Value = strChkStyle; chkQualificationSelected2.Checked = bChecked; chkQualificationSelected2_lz.Style.Value = strChkStyle; txtQualificationDescription2.Style.Value = strTxtStyle; txtQualificationDescription2.Text = strNotes; chkQualificationSelected2_lz.Text = desc; AddQualficationIdAttributeTo(chkQualificationSelected2, txtQualificationDescription2, qualId); break; case 3: chkQualificationSelected3.Style.Value = strChkStyle; chkQualificationSelected3.Checked = bChecked; chkQualificationSelected3_lz.Style.Value = strChkStyle; txtQualificationDescription3.Style.Value = strTxtStyle; txtQualificationDescription3.Text = strNotes; chkQualificationSelected3_lz.Text = desc; AddQualficationIdAttributeTo(chkQualificationSelected3, txtQualificationDescription3, qualId); break; case 4: chkQualificationSelected4.Style.Value = strChkStyle; chkQualificationSelected4.Checked = bChecked; chkQualificationSelected4_lz.Style.Value = strChkStyle; txtQualificationDescription4.Style.Value = strTxtStyle; txtQualificationDescription4.Text = strNotes; chkQualificationSelected4_lz.Text = desc; AddQualficationIdAttributeTo(chkQualificationSelected4, txtQualificationDescription4, qualId); break; case 5: chkQualificationSelected5.Style.Value = strChkStyle; chkQualificationSelected5.Checked = bChecked; chkQualificationSelected5_lz.Style.Value = strChkStyle; txtQualificationDescription5.Style.Value = strTxtStyle; txtQualificationDescription5.Text = strNotes; chkQualificationSelected5_lz.Text = desc; AddQualficationIdAttributeTo(chkQualificationSelected5, txtQualificationDescription5, qualId); break; case 6: chkQualificationSelected6.Style.Value = strChkStyle; chkQualificationSelected6.Checked = bChecked; chkQualificationSelected6_lz.Style.Value = strChkStyle; txtQualificationDescription6.Style.Value = strTxtStyle; txtQualificationDescription6.Text = strNotes; chkQualificationSelected6_lz.Text = desc; AddQualficationIdAttributeTo(chkQualificationSelected6, txtQualificationDescription6, qualId); break; case 7: chkQualificationSelected7.Style.Value = strChkStyle; chkQualificationSelected7.Checked = bChecked; chkQualificationSelected7_lz.Style.Value = strChkStyle; txtQualificationDescription7.Style.Value = strTxtStyle; txtQualificationDescription7.Text = strNotes; chkQualificationSelected7_lz.Text = desc; AddQualficationIdAttributeTo(chkQualificationSelected7, txtQualificationDescription7, qualId); break; case 8: chkQualificationSelected8.Style.Value = strChkStyle; chkQualificationSelected8.Checked = bChecked; chkQualificationSelected8_lz.Style.Value = strChkStyle; txtQualificationDescription8.Style.Value = strTxtStyle; txtQualificationDescription8.Text = strNotes; chkQualificationSelected8_lz.Text = desc; AddQualficationIdAttributeTo(chkQualificationSelected8, txtQualificationDescription8, qualId); break; default: HtmlTableRow container = (HtmlTableRow)FindControl("container" + i); container.Visible = false; break; } } }