Mercurial > altnet-hispano
annotate Agendas/trunk/src/Agendas.Web/Controllers/PropuestaController.cs @ 71:902de1d006c2
estados actualizados
author | nelopauselli |
---|---|
date | Sun, 22 May 2011 15:32:59 -0300 |
parents | 3059a5f8930f |
children | 96d7609f2e08 |
rev | line source |
---|---|
26 | 1 using System; |
2 using System.Linq; | |
3 using System.Web.Mvc; | |
34
475be11edf56
Ajuste en los nombre de los assemblies y namespaces
nelo@MTEySS.neluz.int
parents:
27
diff
changeset
|
4 using AltNetHispano.Agendas.Factories; |
475be11edf56
Ajuste en los nombre de los assemblies y namespaces
nelo@MTEySS.neluz.int
parents:
27
diff
changeset
|
5 using AltNetHispano.Agendas.Web.Models; |
26 | 6 |
34
475be11edf56
Ajuste en los nombre de los assemblies y namespaces
nelo@MTEySS.neluz.int
parents:
27
diff
changeset
|
7 namespace AltNetHispano.Agendas.Web.Controllers |
26 | 8 { |
9 public class PropuestaController : Controller | |
10 { | |
11 public ActionResult Index() | |
12 { | |
13 var agenda = AgendaFactory.GetAgenda(); | |
14 | |
27 | 15 var model = new PropuestaIndexModel |
16 { | |
17 Propuestas = from e in agenda.GetEventosPropuestos() | |
18 select new PropuestaDto { Id = e.Id.ToString(), Titulo = e.Titulo, Ponente = e.Ponente.Nombre } | |
19 }; | |
20 | |
21 return View(model); | |
26 | 22 } |
23 | |
24 [Authorize] | |
25 public ActionResult New() | |
26 { | |
27 return View(); | |
28 } | |
29 | |
30 [HttpPost] | |
31 [Authorize] | |
32 public ActionResult New(PropuestaNewModel model) | |
33 { | |
34 if (ModelState.IsValid) | |
35 { | |
36 var agenda = AgendaFactory.GetAgenda(); | |
37 | |
53
d149bfea3892
Tratamos las validaciones como resultados y no como excepciones, dejamos las
nelopauselli
parents:
34
diff
changeset
|
38 var r = agenda.Proponer(model.Titulo, model.Ponente); |
d149bfea3892
Tratamos las validaciones como resultados y no como excepciones, dejamos las
nelopauselli
parents:
34
diff
changeset
|
39 if (r.Succeful) |
27 | 40 return RedirectToAction("Index"); |
53
d149bfea3892
Tratamos las validaciones como resultados y no como excepciones, dejamos las
nelopauselli
parents:
34
diff
changeset
|
41 ModelState.AddModelError("error", r.ToString()); |
26 | 42 } |
43 return View(model); | |
44 } | |
45 | |
46 [Authorize] | |
47 public ActionResult Edit(string id) | |
48 { | |
49 var agenda = AgendaFactory.GetAgenda(); | |
50 var propuesta = agenda.GetEvento(new Guid(id)); | |
51 if (propuesta != null) | |
52 { | |
53 var model = new PropuestaEditModel | |
54 { | |
55 Id = id, | |
56 Titulo = propuesta.Titulo, | |
57 Ponente = propuesta.Ponente != null ? propuesta.Ponente.Nombre : string.Empty | |
58 }; | |
59 return View(model); | |
60 } | |
61 ModelState.AddModelError("error", "No se encontró el Propuesta que quiere modificar"); | |
62 return View(); | |
63 } | |
64 | |
65 [HttpPost] | |
66 [Authorize] | |
67 public ActionResult Edit(PropuestaEditModel model) | |
68 { | |
69 if (ModelState.IsValid) | |
70 { | |
71 var agenda = AgendaFactory.GetAgenda(); | |
72 | |
53
d149bfea3892
Tratamos las validaciones como resultados y no como excepciones, dejamos las
nelopauselli
parents:
34
diff
changeset
|
73 var r = agenda.ModificarPropuesta(new Guid(model.Id), model.Titulo, model.Ponente); |
d149bfea3892
Tratamos las validaciones como resultados y no como excepciones, dejamos las
nelopauselli
parents:
34
diff
changeset
|
74 if (r.Succeful) |
27 | 75 return RedirectToAction("Index"); |
53
d149bfea3892
Tratamos las validaciones como resultados y no como excepciones, dejamos las
nelopauselli
parents:
34
diff
changeset
|
76 ModelState.AddModelError("error", r.ToString()); |
26 | 77 } |
78 return View(model); | |
79 } | |
80 } | |
81 } |