Mercurial > altnet-hispano
diff Agendas/trunk/src/Agendas.Blog/Impl/AgendarReunionPostWriter.cs @ 109:6bd9be78caa0
Merge
author | Nelo@Kenia.neluz.int |
---|---|
date | Tue, 07 Jun 2011 23:21:07 -0300 |
parents | 80c22175c9b5 |
children | 2d02adb79322 |
line wrap: on
line diff
--- a/Agendas/trunk/src/Agendas.Blog/Impl/AgendarReunionPostWriter.cs Tue Jun 07 23:07:06 2011 -0300 +++ b/Agendas/trunk/src/Agendas.Blog/Impl/AgendarReunionPostWriter.cs Tue Jun 07 23:21:07 2011 -0300 @@ -1,5 +1,6 @@ using System; using System.Globalization; +using Agendas.Blog.Exceptions; using Agendas.Blog.Properties; using AltNetHispano.Agendas.Domain; using System.Linq; @@ -8,25 +9,59 @@ { public class AgendarReunionPostWriter : PostWriter { - protected override string GetTitle(Evento evento) + public AgendarReunionPostWriter(IPostWriterWebService postWriterWebService) : base(postWriterWebService) + { + } + + protected override string GetTitle(Track track) + { + string resourceName = getTitleResourceName(track); + + return string.Format(CultureInfo.InvariantCulture, resourceName, + track.Evento.Ponente.Nombre, //Nombre y apellido del ponente + track.Evento.Titulo //Tema a tratar en la reunion + ); + } + + private string getTitleResourceName(Track track) + { + string resourceName; + if (track.Evento.Tipo == TipoEvento.Van) + resourceName = Resources.VAN_Agendar_Title; + else if (track.Evento.Tipo == TipoEvento.Cafe) + resourceName = Resources.Cafe_Agendar_Title; + else + throw new TipoEventoNoSoportadoException(track.Evento.Tipo.ToString()); + + return resourceName; + } + + protected override string GetBody(Track track) { - return string.Format(CultureInfo.InvariantCulture, Resources.VAN_Realizacion_Title, - evento.Ponente.Nombre, //Nombre y apellido del ponente - evento.Titulo //Tema a tratar en la reunion + string resourceName = getBodyResourceName(track); + + var fecha = getFechaFormateada(track.Evento.Fecha); + return string.Format(CultureInfo.InvariantCulture, resourceName, + fecha, //Fecha y hora en GMT+0 + track.Evento.Ponente.Nombre, //Nombre y apellido del ponente + track.Evento.Titulo, //Tema a tratar en la reunion + getUrlInvitacion(track.Evento), //Url a la invitacion realizada por el ponente (por lo general es el thread en la lista de correo) + GetNombreUsuario(track) //Usuario que postea en el blog ); } - protected override string GetBody(Evento evento) - { - var fecha = getFechaFormateada(evento.Fecha); - return string.Format(CultureInfo.InvariantCulture, Resources.VAN_Realizacion_Body, - fecha, //Fecha y hora en GMT+0 - evento.Ponente.Nombre, //Nombre y apellido del ponente - evento.Titulo, //Tema a tratar en la reunion - getUrlInvitacion(evento), //Url a la invitacion realizada por el ponente (por lo general es el thread en la lista de correo) - GetNombreUsuario(evento) //Usuario que postea en el blog - ); - } + private string getBodyResourceName(Track track) + { + string resourceName; + if (track.Evento.Tipo == TipoEvento.Van) + resourceName = Resources.VAN_Agendar_Body; + else if (track.Evento.Tipo == TipoEvento.Cafe) + resourceName = Resources.Cafe_Agendar_Body; + else + throw new TipoEventoNoSoportadoException(track.Evento.Tipo.ToString()); + + return resourceName; + } private string getFechaFormateada(DateTime? fecha) { @@ -45,7 +80,7 @@ { if (!string.IsNullOrEmpty(evento.UrlInvitacion)) { - return string.Format(CultureInfo.InvariantCulture, Resources.VAN_Realizacion_Body_UrlListaCorreo, + return string.Format(CultureInfo.InvariantCulture, Resources.Reunion_Agendar_Body_UrlListaCorreo, evento.UrlInvitacion); }