diff Agendas/trunk/src/Agendas.Domain/Agenda.cs @ 26:71b02443450a

UI de Propuestas de VANs
author nelo@MTEySS.neluz.int
date Tue, 15 Mar 2011 08:45:00 -0300
parents 41b283d27e3e
children 016b9b9b8d3a
line wrap: on
line diff
--- a/Agendas/trunk/src/Agendas.Domain/Agenda.cs	Tue Mar 15 08:24:18 2011 -0300
+++ b/Agendas/trunk/src/Agendas.Domain/Agenda.cs	Tue Mar 15 08:45:00 2011 -0300
@@ -48,15 +48,17 @@
 				_recordador.Recordar(evento);
 		}
 
-		public void Proponer(string titulo)
+		public void Proponer(string titulo, string ponenteNombre)
 		{
-			var evento = new Evento {Titulo = titulo};
+			var ponente = GetPonente(ponenteNombre);
+			var evento = new Evento {Titulo = titulo, Ponente = ponente};
 
 			if (string.IsNullOrWhiteSpace(evento.Titulo))
 				throw new ValidationException();
             if (NoEstaAutenticado(_seguridad))
                 throw new UsuarioNoAutenticadoException();
 			_eventosRepository.Save(evento);
+			_ponenteRepository.Save(ponente);
 		}
 
         public IList<Evento> GetEventosPropuestos()
@@ -88,7 +90,7 @@
 			evento.Fecha = fecha;
 		}
 
-		public Evento GetEventoPublicado(Guid id)
+		public Evento GetEvento(Guid id)
 		{
 			return _eventosRepository.Get(id);
 		}
@@ -104,6 +106,10 @@
 			return _ponenteRepository.GetByNombre(nombre) ?? new Ponente { Nombre = nombre };
 		}
 
+		public void ModificarPropuesta(Guid id, string titulo, string ponenteNombre)
+		{
+			ModificarEvento(id, titulo, ponenteNombre, null);
+		}
 	}
 
 	public class EventoNotFoundException : Exception