annotate Agendas/trunk/src/Agendas.Web/Controllers/EventoController.cs @ 118:b74734a1a755

Manejo de eventos por estado
author Nelo@Kenia.neluz.int
date Wed, 22 Jun 2011 09:32:59 -0300
parents 7ef7e4bb71f6
children 6f1041301797
rev   line source
25
e8d2be47a6b0 Cambios de nombre en Portal.Web (Agenda x Evento)
nelo@MTEySS.neluz.int
parents:
diff changeset
1 using System;
e8d2be47a6b0 Cambios de nombre en Portal.Web (Agenda x Evento)
nelo@MTEySS.neluz.int
parents:
diff changeset
2 using System.Linq;
e8d2be47a6b0 Cambios de nombre en Portal.Web (Agenda x Evento)
nelo@MTEySS.neluz.int
parents:
diff changeset
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;
25
e8d2be47a6b0 Cambios de nombre en Portal.Web (Agenda x Evento)
nelo@MTEySS.neluz.int
parents:
diff changeset
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
25
e8d2be47a6b0 Cambios de nombre en Portal.Web (Agenda x Evento)
nelo@MTEySS.neluz.int
parents:
diff changeset
9 {
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
10 public class EventoController : Controller
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
11 {
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
12 public ActionResult Index()
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
13 {
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
14 var agenda = AgendaFactory.GetAgenda();
106
80c22175c9b5 agregado de tipo de evento (van, cafe, grupoestudio)
jorge.rowies
parents: 97
diff changeset
15
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
16 var model = new EventoIndexModel
118
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
17 {
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
18 ProximosEventos = from e in agenda.GetEventosActivos()
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
19 orderby e.Fecha
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
20 select new EventoDto
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
21 {
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
22 Id = e.Id.ToString(),
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
23 Titulo = e.Titulo,
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
24 Fecha = e.Fecha.HasValue ? e.Fecha.Value.ToShortDateString() : string.Empty,
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
25 Estado = e.Estado,
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
26 PuedeAgendar = e.GetEstado().PuedePromover(Accion.Agendar),
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
27 PuedeModificar = e.GetEstado().PuedePromover(Accion.Modificar),
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
28 PuedeConfirmar = e.GetEstado().PuedePromover(Accion.Confirmar),
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
29 PuedePublicar = e.GetEstado().PuedePromover(Accion.Publicar)
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
30 }
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
31 };
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
32 return View(model);
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
33 }
25
e8d2be47a6b0 Cambios de nombre en Portal.Web (Agenda x Evento)
nelo@MTEySS.neluz.int
parents:
diff changeset
34
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
35 [Authorize]
118
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
36 public ActionResult Nuevo()
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
37 {
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
38 return View(new EventoNewModel());
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
39 }
25
e8d2be47a6b0 Cambios de nombre en Portal.Web (Agenda x Evento)
nelo@MTEySS.neluz.int
parents:
diff changeset
40
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
41 [HttpPost]
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
42 [Authorize]
118
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
43 public ActionResult Nuevo(EventoNewModel model)
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
44 {
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
45 if (ModelState.IsValid)
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
46 {
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
47 var agenda = AgendaFactory.GetAgenda();
25
e8d2be47a6b0 Cambios de nombre en Portal.Web (Agenda x Evento)
nelo@MTEySS.neluz.int
parents:
diff changeset
48
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
49 var r = agenda.Agendar(model.Titulo, model.Ponente, model.Fecha,
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
50 model.UrlInvitacion, (TipoEvento)model.Tipo);
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
51 if (r.Succeful)
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
52 {
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
53 this.AddNotification("Datos guardados");
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
54 return RedirectToAction("Index");
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
55 }
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
56 ModelState.AddModelError("error", r.ToString());
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
57 }
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
58 return View(model);
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
59 }
25
e8d2be47a6b0 Cambios de nombre en Portal.Web (Agenda x Evento)
nelo@MTEySS.neluz.int
parents:
diff changeset
60
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
61 [Authorize]
118
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
62 public ActionResult Confirmar(string id)
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
63 {
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
64 var agenda = AgendaFactory.GetAgenda();
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
65 agenda.Confirmar(new Guid(id));
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
66
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
67 this.AddNotification("Evento confirmado");
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
68 return RedirectToAction("Index");
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
69 }
116
53bcd338542b acciones de confirmar y publicar desde la UI
Nelo@Kenia.neluz.int
parents: 106
diff changeset
70
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
71 [Authorize]
118
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
72 public ActionResult Publicar(string id)
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
73 {
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
74 var agenda = AgendaFactory.GetAgenda();
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
75 agenda.Publicar(new Guid(id), 0, string.Empty);
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
76
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
77 this.AddNotification("Evento publicado");
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
78 return RedirectToAction("Index");
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
79 }
116
53bcd338542b acciones de confirmar y publicar desde la UI
Nelo@Kenia.neluz.int
parents: 106
diff changeset
80
118
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
81 [Authorize]
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
82 public ActionResult Modificar(string id)
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
83 {
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
84 var agenda = AgendaFactory.GetAgenda();
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
85 var evento = agenda.GetEvento(new Guid(id));
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
86
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
87 var model = new EventoEditModel
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
88 {
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
89 Id = id,
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
90 Titulo = evento.Titulo,
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
91 Ponente = evento.Ponente != null ? evento.Ponente.Nombre : string.Empty,
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
92 Fecha = evento.Fecha,
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
93 UrlInvitacion = evento.UrlInvitacion
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
94 };
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
95 return View(model);
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
96 }
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
97
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
98 [HttpPost]
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
99 [Authorize]
118
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
100 public ActionResult Modificar(EventoEditModel model)
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
101 {
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
102 if (ModelState.IsValid)
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
103 {
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
104 var agenda = AgendaFactory.GetAgenda();
25
e8d2be47a6b0 Cambios de nombre en Portal.Web (Agenda x Evento)
nelo@MTEySS.neluz.int
parents:
diff changeset
105
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
106 var r = agenda.ModificarEvento(new Guid(model.Id), model.Titulo, model.Ponente, model.Fecha.Value, model.UrlInvitacion);
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
107 if (r.Succeful)
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
108 {
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
109 this.AddNotification("datos guardados");
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
110 return RedirectToAction("Index");
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
111 }
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
112 ModelState.AddModelError("error", r.ToString());
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
113 }
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
114 return View(model);
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
115 }
118
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
116
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
117 [Authorize]
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
118 public ActionResult Agendar(string id)
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
119 {
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
120 var agenda = AgendaFactory.GetAgenda();
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
121 var evento = agenda.GetEvento(new Guid(id));
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
122
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
123 var model = new EventoAgendarModel
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
124 {
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
125 Id = id,
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
126 Titulo = evento.Titulo,
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
127 Ponente = evento.Ponente != null ? evento.Ponente.Nombre : string.Empty,
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
128 Fecha = evento.Fecha,
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
129 UrlInvitacion = evento.UrlInvitacion
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
130 };
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
131 return View(model);
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
132 }
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
133
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
134 [HttpPost]
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
135 [Authorize]
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
136 public ActionResult Agendar(EventoAgendarModel model)
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
137 {
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
138 if (ModelState.IsValid)
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
139 {
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
140 var agenda = AgendaFactory.GetAgenda();
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
141
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
142 var r = agenda.ModificarEvento(new Guid(model.Id), model.Titulo, model.Ponente, model.Fecha.Value, model.UrlInvitacion);
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
143 if (r.Succeful)
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
144 {
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
145 this.AddNotification("evento agendado");
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
146 return RedirectToAction("Index");
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
147 }
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
148 ModelState.AddModelError("error", r.ToString());
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
149 }
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
150 return View(model);
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
151 }
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
152
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
153 [Authorize]
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
154 public ActionResult Proponer()
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
155 {
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
156 return View(new PropuestaNewModel());
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
157 }
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
158
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
159 [HttpPost]
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
160 [Authorize]
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
161 public ActionResult Proponer(PropuestaNewModel model)
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
162 {
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
163 if (ModelState.IsValid)
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
164 {
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
165 var agenda = AgendaFactory.GetAgenda();
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
166
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
167 var r = agenda.Proponer(model.Titulo, model.Ponente, model.UrlInvitacion, (TipoEvento)model.Tipo);
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
168 if (r.Succeful)
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
169 return RedirectToAction("Index");
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
170 ModelState.AddModelError("error", r.ToString());
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
171 }
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
172 return View(model);
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
173 }
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
174
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
175 }
25
e8d2be47a6b0 Cambios de nombre en Portal.Web (Agenda x Evento)
nelo@MTEySS.neluz.int
parents:
diff changeset
176 }