// -----------------------------------
        // Costruttore per la modalità di creazione nuovo indagato
        public SetDatiIndagato()
        {
            InitializeComponent();

            nuova_iscrizione_data = (NuovaIscrizione)Application.Current.Properties["nuova_iscrizione"];

            Model.persona p = new Model.persona();
            Model.indagato i = new Model.indagato();
            i.persona = p;
            p.indagato = i;
            p.Ruolo = "indagato";
            p.Sesso = "M";
            p.NumeroEscussioni = 0;

            persona_indagata_binding_source = p;
            indagato_binding_source = i;

            difensore1 = new Model.difensore();
            difensore2 = new Model.difensore();
            difensore1.persona = new Model.persona();
            difensore2.persona = new Model.persona();
            difensore1.persona.Ruolo = "Difensore";
            difensore2.persona.Ruolo = "Difensore";

            modalità_modifica = false;
        }
 public DatiIndagatoEventArgs(Model.persona nuova_persona_indagata)
 {
     this.nuova_persona_indagata = nuova_persona_indagata;
 }
 public DatiIndagatoEventArgs(Model.persona nuova_persona_indagata, Model.persona persona_indagata_originale)
 {
     this.nuova_persona_indagata = nuova_persona_indagata;
     this.persona_indagata_originale = persona_indagata_originale;
 }
        // ------------------------------------
        // Costruttore per la creazione di un nuovo indagato
        public SetDatiIndagato()
        {
            InitializeComponent();

            Model.persona p = new Model.persona();
            Model.indagato i = new Model.indagato();
            i.persona = p;
            p.indagato = i;
            p.Ruolo = "indagato";
            p.Sesso = "M";
            p.NumeroEscussioni = 0;

            p_binding_source = p;
            i_binding_source = i;

            difensore1 = new Model.difensore();
            difensore1.persona = new Model.persona();
            difensore1.persona.Ruolo = "Difensore";

            modalità_modifica = false;
        }
        // Costruttore per la modalità modifica di un indagato già esistente
        public SetDatiIndagato(Model.persona persona_indagata)
        {
            InitializeComponent();

            nuova_iscrizione_data = (NuovaIscrizione)Application.Current.Properties["nuova_iscrizione"];
            this.indagato_originale = persona_indagata.indagato;

            Model.persona p = new Model.persona(persona_indagata);
            Model.indagato i = new Model.indagato(persona_indagata.indagato);
            i.persona = p;
            p.indagato = i;

            if (p.Sesso == "M") sessoMRadioButton.IsChecked = true;
            else sessoFRadioButton.IsChecked = true;
            statoComboBox.Text = i.Stato;
            precedenti_penaliComboBox.Text = i.PrecedentiPenali;

            persona_indagata_binding_source = p;
            indagato_binding_source = i;

            difensore1 = new Model.difensore();
            difensore2 = new Model.difensore();
            if (persona_indagata.indagato.difensore != null)
                difensore1.persona = new Model.persona(persona_indagata.indagato.difensore.persona);
            else
            {
                difensore1.persona = new Model.persona();
                difensore1.persona.Ruolo = "Difensore";
            }

            if (persona_indagata.indagato.difensore3 != null)
                difensore2.persona = new Model.persona(persona_indagata.indagato.difensore3.persona);
            else
            {
                difensore2.persona = new Model.persona();
                difensore2.persona.Ruolo = "Difensore";
            }

            modalità_modifica = true;
        }
        // Costruttore per la modifica di un indagato
        public SetDatiIndagato(Model.persona p)
        {
            InitializeComponent();
            this.p_originale = p;

            if (p_originale.indagato.difensore == null)
            {
                difensore1 = new Model.difensore();
                difensore1.persona = new Model.persona();
                difensore1.persona.Ruolo = "Difensore";
            }

            modalità_modifica = true;
        }
        private void SetDatiIndagato_Loaded(object sender, RoutedEventArgs e)
        {
            reati_binding_source = new List<PersonaReati>();
            db_connection = new Model.novus_daedalus_dbEntities();
            if (modalità_modifica)
            {
                // Si recuperano i dati dal db
                p_binding_source = db_connection.persona.Find(p_originale.Id);
                i_binding_source = db_connection.indagato.Find(p_originale.indagato.Id);
                statoComboBox.Text = p_originale.indagato.Stato;
                precedenti_penaliComboBox.Text = p_originale.indagato.PrecedentiPenali;
                if (p_binding_source.Sesso == "M") sessoMRadioButton.IsChecked = true;
                else sessoFRadioButton.IsChecked = true;
            }
            scheda = db_connection.scheda.Find((int)Application.Current.Properties["Scheda"]);
            if(i_binding_source.difensore != null)
            {
                difensore1 = i_binding_source.difensore;
            }
            difensore1.persona.IdScheda = scheda.Id;

            DatiPersona_Grid.DataContext = p_binding_source;
            Dati_Indagato_Grid.DataContext = i_binding_source;
            Dif1_Grid.DataContext = difensore1.persona;

            if (modalità_modifica == false)
                p_binding_source.scheda = scheda;

            // Si ottengono le associazioni della persona con i reati
            foreach (Model.reato r in scheda.reato)
            {
                PersonaReati pr = new PersonaReati();
                pr.Reato = r;
                if (modalità_modifica == true
                    && p_binding_source.PersonaReato.Any(item => item.IdPersona == p_binding_source.Id && item.IdReato == r.Id && item.IdScheda == scheda.Id) == true)
                    pr.IsSelected = true;
                else
                    pr.IsSelected = false;
                reati_binding_source.Add(pr);
            }
            if (reati_binding_source.Count == 0)
                chkAllReati.IsChecked = false;
            else
                chkAllReati.IsChecked = true;
            foreach (PersonaReati pr in reati_binding_source)
            {
                if (pr.IsSelected == false)
                    chkAllReati.IsChecked = false;
            }
            Persona_Reati_List_View.DataContext = reati_binding_source;
        }
 public DatiPEventArgs(Model.persona nuova_persona)
 {
     this.nuova_persona = nuova_persona;
 }
 public DatiPEventArgs(Model.persona nuova_persona, Model.persona persona_originale)
 {
     this.nuova_persona = nuova_persona;
     this.persona_originale = persona_originale;
 }
        // Costruttore per la modifica di una persona
        public SetDatiPersona(Model.persona p)
        {
            InitializeComponent();
            this.p_originale = p;

            modalità_modifica = true;
        }
        private void SetDatiPersona_Loaded(object sender, RoutedEventArgs e)
        {
            if (modalità_modifica == false)
            {
                Model.persona p = new Model.persona();
                p.Ruolo = Ruolo;
                if (Ruolo == "Persona offesa")
                {
                    Model.persona_offesa i = new Model.persona_offesa();
                    i.persona = p;
                    p.persona_offesa = i;
                    p.Ruolo = "persona offesa";
                    p.persona_offesa.AvvisoArchiviazione = false;
                }
                if (Ruolo == "Persona informata")
                {
                    Model.persona_informata i = new Model.persona_informata();
                    i.persona = p;
                    p.persona_informata = i;
                    p.Ruolo = "persona informata";
                }

                p.Sesso = "M";
                p.NumeroEscussioni = 0;

                p_binding_source = p;
            }

            reati_binding_source = new List<PersonaReati>();
            db_connection = new Model.novus_daedalus_dbEntities();
            if (modalità_modifica)
            {
                p_binding_source = db_connection.persona.Find(p_originale.Id);
                if (p_binding_source.Sesso == "M") sessoMRadioButton.IsChecked = true;
                else sessoFRadioButton.IsChecked = true;
            }

            DatiPersona_Grid.DataContext = p_binding_source;

            scheda = db_connection.scheda.Find((int)Application.Current.Properties["Scheda"]);
            if (modalità_modifica == false)
                p_binding_source.scheda = scheda;

            // Si recuperano le associazioni tra la persona e i reati
            foreach (Model.reato r in scheda.reato)
            {
                PersonaReati pr = new PersonaReati();
                pr.Reato = r;
                if (modalità_modifica == true
                    && p_binding_source.PersonaReato.Any(item => item.IdPersona == p_binding_source.Id && item.IdReato == r.Id && item.IdScheda == scheda.Id) == true)
                    pr.IsSelected = true;
                else
                    pr.IsSelected = false;
                reati_binding_source.Add(pr);
            }
            if (reati_binding_source.Count == 0)
                chkAllReati.IsChecked = false;
            else
                chkAllReati.IsChecked = true;
            foreach (PersonaReati pr in reati_binding_source)
            {
                if (pr.IsSelected == false)
                    chkAllReati.IsChecked = false;
            }
            Persona_Reati_List_View.DataContext = reati_binding_source;
        }
 public MostraPersona(Model.persona p)
 {
     InitializeComponent();
     this.p = p;
 }
        // Costruttore per la modalità di creazione nuova persona offesa
        public SetDatiPO()
        {
            InitializeComponent();

            nuova_iscrizione_data = (NuovaIscrizione)Application.Current.Properties["nuova_iscrizione"];

            Model.persona p = new Model.persona();
            Model.persona_offesa i = new Model.persona_offesa();
            i.persona = p;
            p.persona_offesa = i;
            p.Ruolo = "persona offesa";
            p.Sesso = "M";
            p.NumeroEscussioni = 0;
            p.persona_offesa.AvvisoArchiviazione = false;

            po_binding_source = p;
            modalità_modifica = false;
        }
 public DatiPOEventArgs(Model.persona nuova_persona_offesa)
 {
     this.nuova_persona_offesa = nuova_persona_offesa;
 }
        // Costruttore per la modalità modifica di un indagato già esistente
        public SetDatiPO(Model.persona persona_offesa)
        {
            InitializeComponent();

            nuova_iscrizione_data = (NuovaIscrizione)Application.Current.Properties["nuova_iscrizione"];
            this.po_originale = persona_offesa;

            Model.persona p = new Model.persona(persona_offesa);
            Model.persona_offesa i = new Model.persona_offesa(persona_offesa.persona_offesa);
            i.persona = p;
            p.persona_offesa = i;

            if (p.Sesso == "M") sessoMRadioButton.IsChecked = true;
            else sessoFRadioButton.IsChecked = true;

            po_binding_source = p;
            modalità_modifica = true;
        }
 public MostraIndagato(Model.persona p)
 {
     InitializeComponent();
     this.p = p;
 }