Ejemplo n.º 1
0
        public JediViewModel(ServiceReference.JediWS jedi)
        {
            if (jedi != null)
            {
                this.Id     = jedi.Id;
                this.Nom    = jedi.Nom;
                this.IsSith = jedi.IsSith;

                List <CaracteristiqueViewModel> tmpList = new List <CaracteristiqueViewModel>();
                foreach (var car in jedi.Caracteristiques)
                {
                    tmpList.Add(new CaracteristiqueViewModel(car));
                }
                this.Caracteristiques = new CaracteristiqueCollection(tmpList);
            }
        }
Ejemplo n.º 2
0
        public ActionResult Edit(int id, FormCollection collection)
        {
            try {
                ServiceReference.JediWS  jedi      = null;
                List <CaracteristiqueWS> caracList = new List <CaracteristiqueWS>();

                using (ServiceReference.ServiceClient service = new ServiceClient()) {
                    jedi = service.getJedis().First(x => x.Id == id);
                    service.getCaracteristiques().ForEach(x => {
                        if (x.Type == ServiceReference.ETypeCaracteristiqueWS.Jedi)
                        {
                            caracList.Add(x);
                        }
                    });

                    if (jedi == null)
                    {
                        return(HttpNotFound());
                    }

                    /* Item1. sur le champs du jedi parce que on a un tuple */
                    jedi.Nom              = Convert.ToString(collection.Get("Item1.Nom"));
                    jedi.IsSith           = Convert.ToBoolean(collection.Get("Item1.IsSith") != "false");
                    jedi.Caracteristiques = new List <CaracteristiqueWS>();                    // Pour RAZ

                    string[] checkboxes = collection.GetValues("caracteristiques");
                    if (checkboxes != null)
                    {
                        foreach (string s in checkboxes)
                        {
                            // On a que les ids des box selected, on ajoute les caracteristiques
                            Int32 caracId = Convert.ToInt32(s);
                            jedi.Caracteristiques.Add(caracList.First(x => x.Id == caracId));
                        }
                    }

                    service.updateJedi(jedi);
                }

                return(RedirectToAction("Index"));
            } catch {
                return(View());
            }
        }
Ejemplo n.º 3
0
        // GET: Jedi/Edit/5
        public ActionResult Edit(int id)
        {
            ServiceReference.JediWS         jedi      = null;
            List <CaracteristiqueViewModel> caracList = new List <CaracteristiqueViewModel>();

            using (ServiceReference.ServiceClient service = new ServiceClient()) {
                jedi = service.getJedis().First(x => x.Id == id);

                if (jedi == null)
                {
                    return(HttpNotFound());
                }

                /* Selectionne toutes les caracteristiques Jedi qui ne sont pas deja dans le jedi */
                caracList = (from carac in service.getCaracteristiques()
                             where !(jedi.Caracteristiques.Exists(x => x.Id == carac.Id)) &&
                             carac.Type == ServiceReference.ETypeCaracteristiqueWS.Jedi
                             select new CaracteristiqueViewModel(carac)).ToList();
            }

            /* Tuple de vues parce qu'il faut le jedi et les autres caracteristiques */

            return(View(Tuple.Create(new JediViewModel(jedi), new CaracteristiqueCollection(caracList))));
        }