annotate Agendas/trunk/src/Agendas.Web/Controllers/EventoController.cs @ 141:a5ff4de4a1d3

EditorForModel en Nuevo Evento y Proponer
author Nelo@Guinea.neluz.int
date Mon, 01 Aug 2011 00:10:20 -0300
parents 3639803112c6
children a2b14da4902f
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,
140
3639803112c6 Refactoring de la relación entre Evento y Estado
nelopauselli
parents: 133
diff changeset
25 Estado = e.Estado.Descripcion,
3639803112c6 Refactoring de la relación entre Evento y Estado
nelopauselli
parents: 133
diff changeset
26 PuedeAgendar = e.Estado.PuedePromover(Accion.Agendar),
3639803112c6 Refactoring de la relación entre Evento y Estado
nelopauselli
parents: 133
diff changeset
27 PuedeModificar = e.Estado.PuedePromover(Accion.Modificar),
3639803112c6 Refactoring de la relación entre Evento y Estado
nelopauselli
parents: 133
diff changeset
28 PuedeConfirmar = e.Estado.PuedePromover(Accion.Confirmar),
3639803112c6 Refactoring de la relación entre Evento y Estado
nelopauselli
parents: 133
diff changeset
29 PuedePublicar = e.Estado.PuedePromover(Accion.Publicar),
3639803112c6 Refactoring de la relación entre Evento y Estado
nelopauselli
parents: 133
diff changeset
30 PuedeCancelar = e.Estado.PuedePromover(Accion.Cancelar),
3639803112c6 Refactoring de la relación entre Evento y Estado
nelopauselli
parents: 133
diff changeset
31 PuedeDescartar = e.Estado.PuedePromover(Accion.Descartar),
3639803112c6 Refactoring de la relación entre Evento y Estado
nelopauselli
parents: 133
diff changeset
32 PuedeReAgendar = e.Estado.PuedePromover(Accion.ReAgendar),
3639803112c6 Refactoring de la relación entre Evento y Estado
nelopauselli
parents: 133
diff changeset
33 PuedeReProponer = e.Estado.PuedePromover(Accion.ReProponer)
118
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
34 }
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
35 };
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
36 return View(model);
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
37 }
25
e8d2be47a6b0 Cambios de nombre en Portal.Web (Agenda x Evento)
nelo@MTEySS.neluz.int
parents:
diff changeset
38
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
39 [Authorize]
118
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
40 public ActionResult Nuevo()
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
41 {
133
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
42 var eventoModel = new EventoNewModel {Fecha = DateTime.Now};
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
43 return View(eventoModel);
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
44 }
25
e8d2be47a6b0 Cambios de nombre en Portal.Web (Agenda x Evento)
nelo@MTEySS.neluz.int
parents:
diff changeset
45
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
46 [HttpPost]
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
47 [Authorize]
118
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
48 public ActionResult Nuevo(EventoNewModel model)
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
49 {
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
50 if (ModelState.IsValid)
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
51 {
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
52 var agenda = AgendaFactory.GetAgenda();
25
e8d2be47a6b0 Cambios de nombre en Portal.Web (Agenda x Evento)
nelo@MTEySS.neluz.int
parents:
diff changeset
53
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
54 var r = agenda.Agendar(model.Titulo, model.Ponente, model.Fecha,
141
a5ff4de4a1d3 EditorForModel en Nuevo Evento y Proponer
Nelo@Guinea.neluz.int
parents: 140
diff changeset
55 model.UrlInvitacion, (TipoEvento)model.TipoEvento);
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
56 if (r.Succeful)
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 this.AddNotification("Datos guardados");
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
59 return RedirectToAction("Index");
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
60 }
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
61 ModelState.AddModelError("error", r.ToString());
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
62 }
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
63 return View(model);
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
64 }
25
e8d2be47a6b0 Cambios de nombre en Portal.Web (Agenda x Evento)
nelo@MTEySS.neluz.int
parents:
diff changeset
65
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
66 [Authorize]
118
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
67 public ActionResult Confirmar(string id)
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
68 {
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
69 var agenda = AgendaFactory.GetAgenda();
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
70 agenda.Confirmar(new Guid(id));
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
71
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
72 this.AddNotification("Evento confirmado");
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
73 return RedirectToAction("Index");
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
74 }
116
53bcd338542b acciones de confirmar y publicar desde la UI
Nelo@Kenia.neluz.int
parents: 106
diff changeset
75
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
76 [Authorize]
118
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
77 public ActionResult Publicar(string id)
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
78 {
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
79 var agenda = AgendaFactory.GetAgenda();
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
80 agenda.Publicar(new Guid(id), 0, string.Empty);
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
81
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
82 this.AddNotification("Evento publicado");
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
83 return RedirectToAction("Index");
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
84 }
116
53bcd338542b acciones de confirmar y publicar desde la UI
Nelo@Kenia.neluz.int
parents: 106
diff changeset
85
118
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
86 [Authorize]
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
87 public ActionResult Modificar(string id)
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 var agenda = AgendaFactory.GetAgenda();
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
90 var evento = agenda.GetEvento(new Guid(id));
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
91
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
92 var model = new EventoEditModel
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
93 {
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
94 Id = id,
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
95 Titulo = evento.Titulo,
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
96 Ponente = evento.Ponente != null ? evento.Ponente.Nombre : string.Empty,
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
97 Fecha = evento.Fecha,
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
98 UrlInvitacion = evento.UrlInvitacion
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
99 };
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
100 return View(model);
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
101 }
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
102
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
103 [HttpPost]
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
104 [Authorize]
118
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
105 public ActionResult Modificar(EventoEditModel model)
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
106 {
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
107 if (ModelState.IsValid)
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 var agenda = AgendaFactory.GetAgenda();
25
e8d2be47a6b0 Cambios de nombre en Portal.Web (Agenda x Evento)
nelo@MTEySS.neluz.int
parents:
diff changeset
110
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
111 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
112 if (r.Succeful)
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 this.AddNotification("datos guardados");
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
115 return RedirectToAction("Index");
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
116 }
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
117 ModelState.AddModelError("error", r.ToString());
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
118 }
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
119 return View(model);
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
120 }
118
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
121
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
122 [Authorize]
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
123 public ActionResult Agendar(string id)
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 var agenda = AgendaFactory.GetAgenda();
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
126 var evento = agenda.GetEvento(new Guid(id));
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
127
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
128 var model = new EventoAgendarModel
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
129 {
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
130 Id = id,
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
131 Titulo = evento.Titulo,
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
132 Ponente = evento.Ponente != null ? evento.Ponente.Nombre : string.Empty,
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
133 Fecha = evento.Fecha,
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
134 UrlInvitacion = evento.UrlInvitacion
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
135 };
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
136 return View(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
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
139 [HttpPost]
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
140 [Authorize]
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
141 public ActionResult Agendar(EventoAgendarModel model)
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
142 {
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
143 if (ModelState.IsValid)
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 var agenda = AgendaFactory.GetAgenda();
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
146
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
147 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
148 if (r.Succeful)
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 this.AddNotification("evento agendado");
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
151 return RedirectToAction("Index");
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 ModelState.AddModelError("error", r.ToString());
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
154 }
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
155 return View(model);
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
156 }
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 [Authorize]
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
159 public ActionResult Proponer()
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
160 {
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
161 return View(new PropuestaNewModel());
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
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
164 [HttpPost]
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
165 [Authorize]
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
166 public ActionResult Proponer(PropuestaNewModel model)
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
167 {
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
168 if (ModelState.IsValid)
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
169 {
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
170 var agenda = AgendaFactory.GetAgenda();
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
171
141
a5ff4de4a1d3 EditorForModel en Nuevo Evento y Proponer
Nelo@Guinea.neluz.int
parents: 140
diff changeset
172 var r = agenda.Proponer(model.Titulo, model.Ponente, model.UrlInvitacion, (TipoEvento)model.TipoEvento);
118
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
173 if (r.Succeful)
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
174 return RedirectToAction("Index");
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
175 ModelState.AddModelError("error", r.ToString());
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
176 }
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
177 return View(model);
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
178 }
133
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
179
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
180 [Authorize]
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
181 public ActionResult Cancelar(string id)
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
182 {
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
183 var agenda = AgendaFactory.GetAgenda();
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
184 agenda.Cancelar(new Guid(id));
118
b74734a1a755 Manejo de eventos por estado
Nelo@Kenia.neluz.int
parents: 117
diff changeset
185
133
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
186 this.AddNotification("Evento cancelado");
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
187 return RedirectToAction("Index");
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
188 }
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
189
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
190 [Authorize]
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
191 public ActionResult Descartar(string id)
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
192 {
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
193 var agenda = AgendaFactory.GetAgenda();
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
194 agenda.Descartar(new Guid(id));
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
195
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
196 this.AddNotification("Evento descartado");
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
197 return RedirectToAction("Index");
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
198 }
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
199
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
200 [Authorize]
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
201 public ActionResult ReAgendar(string id)
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
202 {
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
203 var agenda = AgendaFactory.GetAgenda();
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
204 agenda.ReAgendar(new Guid(id));
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
205
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
206 this.AddNotification("Evento re-agendado");
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
207 return RedirectToAction("Index");
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
208 }
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
209
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
210 [Authorize]
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
211 public ActionResult ReProponer(string id)
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
212 {
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
213 var agenda = AgendaFactory.GetAgenda();
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
214 agenda.ReProponer(new Guid(id));
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
215
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
216 this.AddNotification("Evento re-propuesto");
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
217 return RedirectToAction("Index");
6f1041301797 Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146.
alabra
parents: 118
diff changeset
218 }
117
7ef7e4bb71f6 manejo de mensajes al usuario
Nelo@Kenia.neluz.int
parents: 116
diff changeset
219 }
25
e8d2be47a6b0 Cambios de nombre en Portal.Web (Agenda x Evento)
nelo@MTEySS.neluz.int
parents:
diff changeset
220 }