comparison Agendas/trunk/src/Agendas.Domain/Agenda.cs @ 29:016b9b9b8d3a

Cuando se publica una van con el mismo titulo que una propuesta, se utiliza esta Ășltima promoviendola a evento publicado.
author nelo@MTEySS.neluz.int
date Wed, 16 Mar 2011 08:25:02 -0300
parents 71b02443450a
children 65bbf1ab2b24
comparison
equal deleted inserted replaced
28:18bb9fe40517 29:016b9b9b8d3a
24 24
25 public void Publicar(string titulo, string ponenteNombre, DateTime? fecha) 25 public void Publicar(string titulo, string ponenteNombre, DateTime? fecha)
26 { 26 {
27 var ponente = GetPonente(ponenteNombre); 27 var ponente = GetPonente(ponenteNombre);
28 28
29 var evento = new Evento{Titulo=titulo, Ponente = ponente, Fecha = fecha};
30 29
31 if (!evento.Fecha.HasValue) 30 var evento = _eventosRepository.GetPropuestaByTitulo(titulo) ?? new Evento {Titulo = titulo};
32 throw new ValidationException(); 31 evento.Ponente = ponente;
33 if (NoEstaAutenticado(_seguridad)) 32 evento.Fecha = fecha;
34 throw new UsuarioNoAutenticadoException();
35 if (string.IsNullOrWhiteSpace(evento.Ponente.Nombre))
36 throw new ValidationException();
37 33
38 if (_publicador != null) 34
39 _publicador.Publicar(evento); 35 if (!evento.Fecha.HasValue)
40 _eventosRepository.Save(evento); 36 throw new ValidationException();
41 _ponenteRepository.Save(ponente); 37 if (NoEstaAutenticado(_seguridad))
42 } 38 throw new UsuarioNoAutenticadoException();
39 if (string.IsNullOrWhiteSpace(evento.Ponente.Nombre))
40 throw new ValidationException();
41
42 if (_publicador != null)
43 _publicador.Publicar(evento);
44 _eventosRepository.Save(evento);
45 _ponenteRepository.Save(ponente);
46 }
43 47
44 public void Recordar(Guid eventoId) 48 public void Recordar(Guid eventoId)
45 { 49 {
46 var evento = _eventosRepository.Get(eventoId); 50 var evento = _eventosRepository.Get(eventoId);
47 if (_recordador != null) 51 if (_recordador != null)