diff Agendas/trunk/src/Agendas.Blog/Impl/AgendarReunionPostWriter.cs @ 106:80c22175c9b5

agregado de tipo de evento (van, cafe, grupoestudio) agregado de tipo de evento en el alta de evento y en el alta de propuestas desde la app web algunas correcciones en el publicador del blog agregado de textos para publicar en el blog eventos de tipo alt.net cafe
author jorge.rowies
date Mon, 06 Jun 2011 14:07:12 -0300
parents 1d820f17fc75
children 2d02adb79322
line wrap: on
line diff
--- a/Agendas/trunk/src/Agendas.Blog/Impl/AgendarReunionPostWriter.cs	Mon Jun 06 09:12:52 2011 -0300
+++ b/Agendas/trunk/src/Agendas.Blog/Impl/AgendarReunionPostWriter.cs	Mon Jun 06 14:07:12 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;
@@ -13,17 +14,34 @@
 	  }
 
     protected override string GetTitle(Track track)
-		{
-			return string.Format(CultureInfo.InvariantCulture, Resources.VAN_Realizacion_Title,
+    {
+      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
 				);
-		}
+    }
 
-    protected override string GetBody(Track track)
+	  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)
 		{
+      string resourceName = getBodyResourceName(track);
+
 			var fecha = getFechaFormateada(track.Evento.Fecha);
-			return string.Format(CultureInfo.InvariantCulture, Resources.VAN_Realizacion_Body,
+      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
@@ -32,6 +50,19 @@
 				);
 		}
 
+    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)
 		{
 			if (fecha == null)
@@ -49,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); 
 			}