Mercurial > altnet-hispano
annotate Agendas/trunk/src/Agendas.Web/Controllers/PropuestaController.cs @ 106:80c22175c9b5
agregado de tipo de evento (van, cafe, grupoestudio)
agregado de tipo de evento en el alta de evento y en el alta de propuestas desde la app web
algunas correcciones en el publicador del blog
agregado de textos para publicar en el blog eventos de tipo alt.net cafe
author | jorge.rowies |
---|---|
date | Mon, 06 Jun 2011 14:07:12 -0300 |
parents | 2434c2323f3d |
children |
rev | line source |
---|---|
26 | 1 using System; |
2 using System.Linq; | |
3 using System.Web.Mvc; | |
106
80c22175c9b5
agregado de tipo de evento (van, cafe, grupoestudio)
jorge.rowies
parents:
97
diff
changeset
|
4 using AltNetHispano.Agendas.Domain; |
34
475be11edf56
Ajuste en los nombre de los assemblies y namespaces
nelo@MTEySS.neluz.int
parents:
27
diff
changeset
|
5 using AltNetHispano.Agendas.Factories; |
475be11edf56
Ajuste en los nombre de los assemblies y namespaces
nelo@MTEySS.neluz.int
parents:
27
diff
changeset
|
6 using AltNetHispano.Agendas.Web.Models; |
26 | 7 |
34
475be11edf56
Ajuste en los nombre de los assemblies y namespaces
nelo@MTEySS.neluz.int
parents:
27
diff
changeset
|
8 namespace AltNetHispano.Agendas.Web.Controllers |
26 | 9 { |
10 public class PropuestaController : Controller | |
11 { | |
12 public ActionResult Index() | |
13 { | |
14 var agenda = AgendaFactory.GetAgenda(); | |
15 | |
27 | 16 var model = new PropuestaIndexModel |
75 | 17 { |
18 Propuestas = from e in agenda.GetEventosPropuestos() | |
19 select | |
20 new PropuestaDto | |
21 { | |
22 Id = e.Id.ToString(), | |
23 Titulo = e.Titulo, | |
97
2434c2323f3d
En el evento, volvemos a llamar Ponente a la persona que está a cargo de la presentación
Nelo@Kenia.neluz.int
parents:
94
diff
changeset
|
24 Ponente = e.Ponente != null ? e.Ponente.Nombre : string.Empty |
75 | 25 } |
26 }; | |
27 | 27 |
28 return View(model); | |
26 | 29 } |
30 | |
31 [Authorize] | |
32 public ActionResult New() | |
33 { | |
106
80c22175c9b5
agregado de tipo de evento (van, cafe, grupoestudio)
jorge.rowies
parents:
97
diff
changeset
|
34 return View(new PropuestaNewModel()); |
26 | 35 } |
36 | |
37 [HttpPost] | |
38 [Authorize] | |
39 public ActionResult New(PropuestaNewModel model) | |
40 { | |
41 if (ModelState.IsValid) | |
42 { | |
43 var agenda = AgendaFactory.GetAgenda(); | |
44 | |
106
80c22175c9b5
agregado de tipo de evento (van, cafe, grupoestudio)
jorge.rowies
parents:
97
diff
changeset
|
45 var r = agenda.Proponer(model.Titulo, model.Ponente, model.UrlInvitacion, (TipoEvento)model.Tipo); |
53
d149bfea3892
Tratamos las validaciones como resultados y no como excepciones, dejamos las
nelopauselli
parents:
34
diff
changeset
|
46 if (r.Succeful) |
27 | 47 return RedirectToAction("Index"); |
53
d149bfea3892
Tratamos las validaciones como resultados y no como excepciones, dejamos las
nelopauselli
parents:
34
diff
changeset
|
48 ModelState.AddModelError("error", r.ToString()); |
26 | 49 } |
50 return View(model); | |
51 } | |
52 | |
53 [Authorize] | |
54 public ActionResult Edit(string id) | |
55 { | |
56 var agenda = AgendaFactory.GetAgenda(); | |
57 var propuesta = agenda.GetEvento(new Guid(id)); | |
82 | 58 |
59 var model = new PropuestaEditModel | |
60 { | |
61 Id = id, | |
62 Titulo = propuesta.Titulo, | |
97
2434c2323f3d
En el evento, volvemos a llamar Ponente a la persona que está a cargo de la presentación
Nelo@Kenia.neluz.int
parents:
94
diff
changeset
|
63 Ponente = propuesta.Ponente != null ? propuesta.Ponente.Nombre : string.Empty, |
82 | 64 UrlInvitacion = propuesta.UrlInvitacion |
65 }; | |
66 return View(model); | |
26 | 67 } |
68 | |
69 [HttpPost] | |
70 [Authorize] | |
71 public ActionResult Edit(PropuestaEditModel model) | |
72 { | |
73 if (ModelState.IsValid) | |
74 { | |
75 var agenda = AgendaFactory.GetAgenda(); | |
76 | |
75 | 77 var r = agenda.ModificarPropuesta(new Guid(model.Id), model.Titulo, model.Ponente, model.UrlInvitacion); |
53
d149bfea3892
Tratamos las validaciones como resultados y no como excepciones, dejamos las
nelopauselli
parents:
34
diff
changeset
|
78 if (r.Succeful) |
27 | 79 return RedirectToAction("Index"); |
53
d149bfea3892
Tratamos las validaciones como resultados y no como excepciones, dejamos las
nelopauselli
parents:
34
diff
changeset
|
80 ModelState.AddModelError("error", r.ToString()); |
26 | 81 } |
82 return View(model); | |
83 } | |
84 } | |
85 } |