diff Agendas/trunk/src/Agendas.Domain/Agenda.cs @ 274:72a96459f910

Ticket #123: Patrocinadores de las vans.
author juanjose.montesdeocaarbos
date Wed, 30 Nov 2011 08:56:01 -0300
parents 31fb96912d37
children 1caba33bd0b7
line wrap: on
line diff
--- a/Agendas/trunk/src/Agendas.Domain/Agenda.cs	Tue Nov 29 07:56:23 2011 -0300
+++ b/Agendas/trunk/src/Agendas.Domain/Agenda.cs	Wed Nov 30 08:56:01 2011 -0300
@@ -10,15 +10,15 @@
     {
         private readonly IEventoRepository _eventosRepository;
         private readonly IPersonaRepository _personaRepository;
-        //private readonly IPatrocinadorRepository _patrocinadorRepository;
+		private readonly IPatrocinadorRepository _patrocinadorRepository;
 
         private readonly IPublicador _publicador;
 
         public Agenda(IPublicador publicador, IEventoRepository eventosRepository,
-                      IPersonaRepository personaRepository)
+					  IPersonaRepository personaRepository, IPatrocinadorRepository patrocinadorRepository)
         {
             _publicador = publicador;
-            //_patrocinadorRepository = patrocinadorRepository;
+			_patrocinadorRepository = patrocinadorRepository;
             _personaRepository = personaRepository;
             _eventosRepository = eventosRepository;
         }
@@ -260,34 +260,34 @@
 			return new EventoResultado(true,"Evento re-agendado", warnings);
 		}
 
-		//public void IndicarPatrocinadores(Guid eventoId, IEnumerable<Guid> patrocinadores)
-		//{
-		//    var evento = GetEvento(eventoId);
+		public void IndicarPatrocinadores(Guid eventoId, IEnumerable<Guid> patrocinadores)
+		{
+			var evento = GetEvento(eventoId);
 
-		//    var agregar = new List<Patrocinador>();
-		//    var quitar = new List<Patrocinador>();
+			var agregar = new List<Patrocinador>();
+			var quitar = new List<Patrocinador>();
 
-		//    foreach (var patrocinadorId in patrocinadores)
-		//    {
-		//        if (!evento.Patrocinadores.Any(p => p.Id == patrocinadorId))
-		//        {
-		//            var patrocinador = _patrocinadorRepository.Get(patrocinadorId);
-		//            agregar.Add(patrocinador);
-		//        }
-		//    }
+			foreach (var patrocinadorId in patrocinadores)
+			{
+				if (!evento.Patrocinadores.Any(p => p.Id == patrocinadorId))
+				{
+					var patrocinador = _patrocinadorRepository.Get(patrocinadorId);
+					agregar.Add(patrocinador);
+				}
+			}
 
-		//    foreach (var patrocinador in evento.Patrocinadores)
-		//    {
-		//        if (!patrocinadores.Any(p => p == patrocinador.Id))
-		//            quitar.Add(patrocinador);
-		//    }
+			foreach (var patrocinador in evento.Patrocinadores)
+			{
+				if (!patrocinadores.Any(p => p == patrocinador.Id))
+					quitar.Add(patrocinador);
+			}
 
-		//    foreach (var patrocinador in agregar)
-		//        evento.AddPatrocinador(patrocinador);
+			foreach (var patrocinador in agregar)
+				evento.AddPatrocinador(patrocinador);
 
-		//    foreach (var patrocinador in quitar)
-		//        evento.RemovePatrocinador(patrocinador);
-		//}
+			foreach (var patrocinador in quitar)
+				evento.RemovePatrocinador(patrocinador);
+		}
 
 		private void Notify(Evento evento)
 		{