comparison Agendas/trunk/src/Agendas.Blog/Impl/AgendarReunionPostWriter.cs @ 77:a300394dbabe

cambios minimos en el publicador del blog por la reestructuracion de estados de los eventos
author jorge.rowies
date Tue, 24 May 2011 14:40:23 -0300
parents
children db4b1e2cae49 3027c64344bd
comparison
equal deleted inserted replaced
76:926bd1cdb98f 77:a300394dbabe
1 using System;
2 using System.Globalization;
3 using Agendas.Blog.Properties;
4 using AltNetHispano.Agendas.Domain;
5 using System.Linq;
6
7 namespace Agendas.Blog.Impl
8 {
9 public class AgendarReunionPostWriter : PostWriter
10 {
11 protected override string GetTitle(Evento evento)
12 {
13 return string.Format(CultureInfo.InvariantCulture, Resources.VAN_Realizacion_Title,
14 evento.Ponente.Nombre, //Nombre y apellido del ponente
15 evento.Titulo //Tema a tratar en la reunion
16 );
17 }
18
19 protected override string GetBody(Evento evento)
20 {
21 var fecha = getFechaFormateada(evento.Fecha);
22 return string.Format(CultureInfo.InvariantCulture, Resources.VAN_Realizacion_Body,
23 fecha, //Fecha y hora en GMT+0
24 evento.Ponente.Nombre, //Nombre y apellido del ponente
25 evento.Titulo, //Tema a tratar en la reunion
26 getUrlInvitacion(evento), //Url a la invitacion realizada por el ponente (por lo general es el thread en la lista de correo)
27 GetNombreUsuario(evento) //Usuario que postea en el blog
28 );
29 }
30
31 private string getFechaFormateada(DateTime? fecha)
32 {
33 if (fecha == null)
34 throw new ArgumentNullException("fecha");
35
36 var fechaCast = (DateTime)fecha;
37 var culture = CultureInfo.CreateSpecificCulture("es-ES");
38 var result = fechaCast.ToString("D", culture) + " a las " +
39 fechaCast.ToString("t", culture) + " UTC/GMT";
40
41 return result;
42 }
43
44 private string getUrlInvitacion(Evento evento)
45 {
46 if (!string.IsNullOrEmpty(evento.UrlInvitacion))
47 {
48 return string.Format(CultureInfo.InvariantCulture, Resources.VAN_Realizacion_Body_UrlListaCorreo,
49 evento.UrlInvitacion);
50 }
51
52 return string.Empty;
53 }
54 }
55 }