diff Agendas/trunk/src/Agendas.Web/Controllers/EventoController.cs @ 117:7ef7e4bb71f6

manejo de mensajes al usuario
author Nelo@Kenia.neluz.int
date Sun, 19 Jun 2011 13:35:34 -0300
parents 53bcd338542b
children b74734a1a755
line wrap: on
line diff
--- a/Agendas/trunk/src/Agendas.Web/Controllers/EventoController.cs	Sun Jun 19 13:00:02 2011 -0300
+++ b/Agendas/trunk/src/Agendas.Web/Controllers/EventoController.cs	Sun Jun 19 13:35:34 2011 -0300
@@ -7,100 +7,109 @@
 
 namespace AltNetHispano.Agendas.Web.Controllers
 {
-  public class EventoController : Controller
-  {
-    public ActionResult Index()
-    {
-      var agenda = AgendaFactory.GetAgenda();
+	public class EventoController : Controller
+	{
+		public ActionResult Index()
+		{
+			var agenda = AgendaFactory.GetAgenda();
 
-	  var model = new EventoIndexModel
-	  {
-		  ProximosEventos = from e in agenda.GetEventosAgendados()
-							orderby e.Fecha
-							select new EventoDto
+			var model = new EventoIndexModel
 							{
-								Id = e.Id.ToString(),
-								Titulo = e.Titulo,
-								Fecha = e.Fecha.Value,
-								PuedeModificar = e.GetEstado().PuedePromover(Accion.Modificar),
-								PuedeConfirmar = e.GetEstado().PuedePromover(Accion.Confirmar),
-								PuedePublicar = e.GetEstado().PuedePromover(Accion.Publicar)
-							}
-	  };
+								ProximosEventos = from e in agenda.GetEventosAgendados()
+												  orderby e.Fecha
+												  select new EventoDto
+															{
+																Id = e.Id.ToString(),
+																Titulo = e.Titulo,
+																Fecha = e.Fecha.Value,
+																PuedeModificar = e.GetEstado().PuedePromover(Accion.Modificar),
+																PuedeConfirmar = e.GetEstado().PuedePromover(Accion.Confirmar),
+																PuedePublicar = e.GetEstado().PuedePromover(Accion.Publicar)
+															}
+							};
+			return View(model);
+		}
 
-      return View(model);
-    }
-
-    [Authorize]
-    public ActionResult New()
-    {
-      return View(new EventoNewModel());
-    }
+		[Authorize]
+		public ActionResult New()
+		{
+			return View(new EventoNewModel());
+		}
 
-    [HttpPost]
-    [Authorize]
-    public ActionResult New(EventoNewModel model)
-    {
-      if (ModelState.IsValid)
-      {
-        var agenda = AgendaFactory.GetAgenda();
+		[HttpPost]
+		[Authorize]
+		public ActionResult New(EventoNewModel model)
+		{
+			if (ModelState.IsValid)
+			{
+				var agenda = AgendaFactory.GetAgenda();
 
-        var r = agenda.Agendar(model.Titulo, model.Ponente, model.Fecha,
-          model.UrlInvitacion, (TipoEvento)model.Tipo);
-        if (r.Succeful)
-          return RedirectToAction("Index");
-        ModelState.AddModelError("error", r.ToString());
-      }
-      return View(model);
-    }
+				var r = agenda.Agendar(model.Titulo, model.Ponente, model.Fecha,
+				  model.UrlInvitacion, (TipoEvento)model.Tipo);
+				if (r.Succeful)
+				{
+					this.AddNotification("Datos guardados");
+					return RedirectToAction("Index");
+				}
+				ModelState.AddModelError("error", r.ToString());
+			}
+			return View(model);
+		}
 
-    [Authorize]
-    public ActionResult Edit(string id)
-    {
-      var agenda = AgendaFactory.GetAgenda();
-      var evento = agenda.GetEvento(new Guid(id));
+		[Authorize]
+		public ActionResult Edit(string id)
+		{
+			var agenda = AgendaFactory.GetAgenda();
+			var evento = agenda.GetEvento(new Guid(id));
 
-      var model = new EventoEditModel
-                    {
-                      Id = id,
-                      Titulo = evento.Titulo,
-                      Ponente = evento.Ponente != null ? evento.Ponente.Nombre : string.Empty,
-                      Fecha = evento.Fecha,
-                      UrlInvitacion = evento.UrlInvitacion
-                    };
-      return View(model);
-    }
+			var model = new EventoEditModel
+						  {
+							  Id = id,
+							  Titulo = evento.Titulo,
+							  Ponente = evento.Ponente != null ? evento.Ponente.Nombre : string.Empty,
+							  Fecha = evento.Fecha,
+							  UrlInvitacion = evento.UrlInvitacion
+						  };
+			return View(model);
+		}
 
-	[Authorize]
-	public ActionResult Confirm(string id)
-	{
-		var agenda = AgendaFactory.GetAgenda();
-		agenda.Confirmar(new Guid(id));
-		return RedirectToAction("Index");
-	}
+		[Authorize]
+		public ActionResult Confirm(string id)
+		{
+			var agenda = AgendaFactory.GetAgenda();
+			agenda.Confirmar(new Guid(id));
+
+			this.AddNotification("Evento confirmado");
+			return RedirectToAction("Index");
+		}
 
-	[Authorize]
-	public ActionResult Publish(string id)
-	{
-		var agenda = AgendaFactory.GetAgenda();
-		agenda.Publicar(new Guid(id), 0, string.Empty);
-		return RedirectToAction("Index");
-	}
+		[Authorize]
+		public ActionResult Publish(string id)
+		{
+			var agenda = AgendaFactory.GetAgenda();
+			agenda.Publicar(new Guid(id), 0, string.Empty);
+
+			this.AddNotification("Evento publicado");
+			return RedirectToAction("Index");
+		}
 
-    [HttpPost]
-    [Authorize]
-    public ActionResult Edit(EventoEditModel model)
-    {
-      if (ModelState.IsValid)
-      {
-        var agenda = AgendaFactory.GetAgenda();
+		[HttpPost]
+		[Authorize]
+		public ActionResult Edit(EventoEditModel model)
+		{
+			if (ModelState.IsValid)
+			{
+				var agenda = AgendaFactory.GetAgenda();
 
-        var r = agenda.ModificarEvento(new Guid(model.Id), model.Titulo, model.Ponente, model.Fecha.Value, model.UrlInvitacion);
-        if (r.Succeful)
-          return RedirectToAction("Index");
-        ModelState.AddModelError("error", r.ToString());
-      }
-      return View(model);
-    }
-  }
+				var r = agenda.ModificarEvento(new Guid(model.Id), model.Titulo, model.Ponente, model.Fecha.Value, model.UrlInvitacion);
+				if (r.Succeful)
+				{
+					this.AddNotification("datos guardados");
+					return RedirectToAction("Index");
+				}
+				ModelState.AddModelError("error", r.ToString());
+			}
+			return View(model);
+		}
+	}
 }