Exemple #1
0
        //metodo per il controllo dei contatti già presenti
        public bool ContactControls(long?TidContact)
        {
            RubricaEntita TrubEnt = Session["EntSession"] as RubricaEntita;

            if (!string.IsNullOrEmpty(Convert.ToString(TidContact))) //nel caso di update
            {
                var lCont = TrubEnt.Contatti.Where(x => x.IdContact != TidContact);

                if (lCont.Any(x => x.Mail == (ContactsFormView.FindControl("TextMail") as TextBox).Text) && (ContactsFormView.FindControl("TextMail") as TextBox).Text != string.Empty)
                {
                    ((BasePage)this.Page).info.AddMessage("Operazione impossibile: Email già presente nei contatti", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.ERROR);
                    return(false);
                }

                if (lCont.Any(x => x.Telefono == (ContactsFormView.FindControl("TextTelefono") as TextBox).Text) && (ContactsFormView.FindControl("TextTelefono") as TextBox).Text != string.Empty)
                {
                    ((BasePage)this.Page).info.AddMessage("Operazione impossibile: Telefono già presente nei contatti", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.ERROR);
                    return(false);
                }

                if (lCont.Any(x => x.Fax == (ContactsFormView.FindControl("TextFax") as TextBox).Text) && (ContactsFormView.FindControl("TextFax") as TextBox).Text != string.Empty)
                {
                    ((BasePage)this.Page).info.AddMessage("Operazione impossibile: Fax già presente nei contatti", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.ERROR);
                    return(false);
                }
            }

            else  //nel caso di insert
            {
                if (TrubEnt.Contatti.Exists(x => x.Mail == (ContactsFormView.FindControl("TextMail") as TextBox).Text) && (ContactsFormView.FindControl("TextMail") as TextBox).Text != string.Empty)
                {
                    ((BasePage)this.Page).info.AddMessage("Operazione impossibile: Email già presente nei contatti", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.ERROR);
                    return(false);
                }

                if (TrubEnt.Contatti.Exists(x => x.Telefono == (ContactsFormView.FindControl("TextTelefono") as TextBox).Text) && (ContactsFormView.FindControl("TextTelefono") as TextBox).Text != string.Empty)
                {
                    ((BasePage)this.Page).info.AddMessage("Operazione impossibile: Telefono già presente nei contatti", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.ERROR);
                    return(false);
                }

                if (TrubEnt.Contatti.Exists(x => x.Fax == (ContactsFormView.FindControl("TextFax") as TextBox).Text) && (ContactsFormView.FindControl("TextFax") as TextBox).Text != string.Empty)
                {
                    ((BasePage)this.Page).info.AddMessage("Operazione impossibile: Fax già presente nei contatti", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.ERROR);
                    return(false);
                }
            }
            return(true);
        }
Exemple #2
0
 protected void ContactsFormView_DataBound(object sender, EventArgs e)
 {
     if (((FormView)sender).CurrentMode == FormViewMode.Insert)
     {
         if (hidInsertType.Value.Equals("Insert_u"))
         {
             ((Panel)ContactsFormView.FindControl("panelGrp")).Visible = false;
             ((Panel)ContactsFormView.FindControl("panelUff")).Visible = true;
             ((Panel)ContactsFormView.FindControl("panelCon")).Visible = false;
         }
         else if (hidInsertType.Value.Equals("Insert_g"))
         {
             ((Panel)ContactsFormView.FindControl("panelGrp")).Visible = true;
             ((Panel)ContactsFormView.FindControl("panelUff")).Visible = false;
             ((Panel)ContactsFormView.FindControl("panelCon")).Visible = false;
         }
         else
         {
             ((Panel)ContactsFormView.FindControl("panelGrp")).Visible = false;
             ((Panel)ContactsFormView.FindControl("panelUff")).Visible = false;
             ((Panel)ContactsFormView.FindControl("panelCon")).Visible = true;
         }
     }
 }
Exemple #3
0
        //click sul bottone della formview dei contatti: gestisce update ed inserimento
        protected void ContactsFormView_ItemCommand(object sender, FormViewCommandEventArgs e)
        {
            RubricaEntita        rubEnt      = Session["EntSession"] as RubricaEntita;
            RubricaContatti      contact     = new RubricaContatti();
            RubricaEntitaService rubrService = new RubricaEntitaService();


            #region "Gestione Inseret/update contatto"
            if (e.CommandName.Equals("Update"))
            {
                int idCnt = Int32.Parse(((HiddenField)ContactsFormView.FindControl("hfIdContact")).Value);
                contact = rubEnt.Contatti.SingleOrDefault(x => x.IdContact == idCnt);
            }


            if ((e.CommandName.Equals("Insert") && hidInsertType.Value.Equals("Insert_c")) || e.CommandName.Equals("Update"))
            {
                if ((e.CommandName.Equals("Insert")))
                {
                    contact.RefIdReferral = rubEnt.IdReferral;
                }

                //funzione per il controllo di inserimento di contatti già inseriti
                if (contact != null && ContactControls(contact.IdContact) == false) //caso in cui non supera i controlli
                {
                    if (e.CommandName == "Update")                                  //ricarico i dati precedenti in caso di update
                    {
                        DataContactView(Int32.Parse(((HiddenField)ContactsFormView.FindControl("hfIdContact")).Value));
                    }
                    else //svuoto i campi in caso di insert
                    {
                        (ContactsFormView.FindControl("TextMail") as TextBox).Text     = "";
                        (ContactsFormView.FindControl("TextTelefono") as TextBox).Text = "";
                        (ContactsFormView.FindControl("TextFax") as TextBox).Text      = "";
                    }
                    return;
                }

                try
                {
                    contact.Telefono   = ((TextBox)ContactsFormView.FindControl("TextTelefono")).Text;
                    contact.Mail       = ((TextBox)ContactsFormView.FindControl("TextMail")).Text;
                    contact.Fax        = ((TextBox)ContactsFormView.FindControl("TextFax")).Text;
                    contact.ContactRef = ((TextBox)ContactsFormView.FindControl("TextRef")).Text;
                    contact.Note       = ((TextBox)ContactsFormView.FindControl("TextNote")).Text;
                    contact.IsPec      = ((CheckBox)ContactsFormView.FindControl("chkPec")).Checked;
                    contact.AffIPA     = 0;
                    if (contact.IsPec == false)
                    {
                        foreach (MailPecForCheck val in Enum.GetValues(typeof(MailPecForCheck)))
                        {
                            if (contact.Mail.Contains("@" + val.ToString() + "."))
                            {
                                contact.IsPec = true;
                            }
                        }
                    }
                }
                catch
                {
                    ((BasePage)this.Page).info.AddMessage("Attenzione: si è verificato un errore", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.ERROR);
                    return;
                }

                if (contact.Telefono == "" && contact.Mail == "" && contact.Fax == "")
                {
                    ((BasePage)this.Page).info.AddMessage("Inserire almeno un parametro", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.ERROR);
                    return;
                }

                if (contact.Mail == "" && contact.IsPec == true)
                {
                    ((BasePage)this.Page).info.AddMessage("Inserire indirizzo email valido", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.ERROR);
                    contact.IsPec = false;
                    return;
                }

                if (contact.Telefono == "")
                {
                    contact.Telefono = null;
                }
                if (contact.Mail == "")
                {
                    contact.Mail = null;
                }
                if (contact.Fax == "")
                {
                    contact.Fax = null;
                }
                if (contact.ContactRef == "")
                {
                    contact.ContactRef = null;
                }
                if (contact.Note == "")
                {
                    contact.Note = null;
                }

                if (e.CommandName == "Update")
                {
                    try
                    {
                        //metodo per l'update
                        ContattoService contattoService = new ContattoService();
                        contattoService.UpdateRubrContatti(contact, false);
                    }
                    catch (Exception)
                    {
                        ((BasePage)this.Page).info.AddMessage("Aggiornamento non riuscito: Errore in banca dati", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.ERROR);
                        return;
                    }
                    ((BasePage)this.Page).info.AddMessage("Contatto modificato", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.INFO);
                }
                else if (e.CommandName == "Insert")
                {
                    try
                    {
                        //metodo per l'insert
                        ContattoService contattoService = new ContattoService();
                        contattoService.InsertRubrContatti(contact, false);
                    }
                    catch (Exception ex)
                    {
                        ((BasePage)this.Page).info.AddMessage("Inserimento non riuscito: Errore in banca dati dettagli: " + ex.Message, Com.Delta.Messaging.MapperMessages.LivelloMessaggio.ERROR);
                        return;
                    }
                    ((BasePage)this.Page).info.AddMessage("Contatto inserito", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.INFO);
                }
            }
            #endregion


            #region "Insert di un nuovo gruppo o di un nuovo ufficio"

            if ((e.CommandName.Equals("Insert") && hidInsertType.Value.Equals("Insert_u")))
            {
                RubricaEntita newEnt = new RubricaEntita();
                newEnt.Ufficio = ((TextBox)ContactsFormView.FindControl("TextUfficio")).Text;
                newEnt.IdPadre = rubEnt.IdReferral;
                newEnt.RefOrg  = (rubEnt.RefOrg == null ? rubEnt.IdReferral : rubEnt.RefOrg);
                if (rubEnt.ReferralType.ToString().StartsWith("PA"))
                {
                    newEnt.ReferralType = EntitaType.PA_UFF;
                }
                else if (rubEnt.ReferralType.ToString().StartsWith("AZ"))
                {
                    newEnt.ReferralType = EntitaType.AZ_UFF;
                }
                try
                {
                    //metodo per l'insert
                    rubrService.Insert(newEnt);
                }
                catch (Exception e0)
                {
                    ((BasePage)this.Page).info.AddMessage("Inserimento non riuscito: " + e0.Message, Com.Delta.Messaging.MapperMessages.LivelloMessaggio.ERROR);
                    return;
                }
                ((BasePage)this.Page).info.AddMessage("Gruppo inserito", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.INFO);
                ScriptManager.RegisterClientScriptBlock(this.Page, this.GetType(), "reload_local_tree", "ShowTree(config.tree);", true);
            }
            else if ((e.CommandName.Equals("Insert") && hidInsertType.Value.Equals("Insert_g")))
            {
                RubricaEntita newEnt = new RubricaEntita();

                newEnt.Ufficio = ((TextBox)ContactsFormView.FindControl("TextGruppo")).Text;
                newEnt.IdPadre = rubEnt.IdReferral;
                newEnt.RefOrg  = (rubEnt.RefOrg == null ? rubEnt.IdReferral : rubEnt.RefOrg);
                if (rubEnt.ReferralType.ToString().StartsWith("PA"))
                {
                    newEnt.ReferralType = EntitaType.PA_GRP;
                }
                else if (rubEnt.ReferralType.ToString().StartsWith("AZ"))
                {
                    newEnt.ReferralType = EntitaType.AZ_GRP;
                }
                try
                {
                    //metodo per l'insert
                    rubrService.Insert(newEnt);
                }
                catch (Exception e1)
                {
                    ((BasePage)this.Page).info.AddMessage("Inserimento non riuscito: " + e1.Message, Com.Delta.Messaging.MapperMessages.LivelloMessaggio.ERROR);
                    return;
                }
                ((BasePage)this.Page).info.AddMessage("Ufficio inserito", Com.Delta.Messaging.MapperMessages.LivelloMessaggio.INFO);
                ScriptManager.RegisterClientScriptBlock(this.Page, this.GetType(), "reload_local_tree", "ShowTree();", true);
            }


            #endregion
            hfCurrentID = contact.IdContact ?? -1;
            long idEntita = long.Parse((EntFormView.FindControl("hfIdEntita") as HiddenField).Value);
            EntFormViewDataSource = rubrService.GetRubricaEntitaCompleteById(idEntita);
            rubEnt = EntFormViewDataSource;
            switch (rubEnt.Contatti.Count)
            {
            case 0:
                gvContacts.Visible = true;
                gvContacts.DataBind();
                ContactsFormView.DataBind();
                break;

            default:
                if (hfCurrentID == -1)
                {
                    OnContactsPagerIndexChanged("", 0);
                }
                else
                {
                    int index = rubEnt.Contatti.IndexOf(rubEnt.Contatti.First(x => x.IdContact == hfCurrentID));
                    OnContactsPagerIndexChanged("", index / PagerSize);
                }
                if (rubEnt.Contatti.Count <= PagerSize)
                {
                    gvContacts.BottomPagerRow.Visible = false;
                }
                break;
            }
            ContactsFormView.Visible = false;
        }