view Agendas/trunk/src/Agendas.Google/DetailsEvents/VanGEventDetail.cs @ 130:0ea32a748453

Se termina el publicador via el calendario de google, además se realizan las pruebas unitarias.
author alabra
date Sun, 10 Jul 2011 18:50:11 -0400
parents
children 2d02adb79322
line wrap: on
line source

using System;
using System.Globalization;
using AltNetHispano.Agendas.Domain;

namespace AltNetHispano.Agendas.Google.DetailsEvents
{
    public class VanGEventDetail : IGEventDetail
    {
        private const string TextoVan =
           "La comunidad ALT.NET Hispano (http://altnethispano.org) realizará una VAN sobre [NOMBRE], con [NOMBRE_EXPOSITOR]." +
           "\n\rFecha: [FECHA] a las 18:00 hrs. Hora Internacional (GMT/UTC), con una duración aproximada de 2 horas." +
           "\n\rPueden plantear sus comentarios e inquietudes sobre el tema de la reunión en: [URL_DISCUCION]" +
           "\n\rPara mayor información sobre cómo atender la reunión consulten: http://tinyurl.com/van-hispano" +
           "\n\rPueden vincular el Google Calendar al suyo (http://screenr.com/nr7)";


        public string Title { get; private set; }
        public string Location { get; private set; }
        public string Summary { get; private set; }
        public DateTime StartEvent { get; private set; }
        public DateTime EndEvent { get; private set; }

        public void Generate(Evento evento)
        {
            Title = "VAN sobre " + evento.Titulo;
            Location = "http://snipr.com/virtualaltnet";
            if (evento.Fecha != null)
                StartEvent = new DateTime(evento.Fecha.Value.Year, evento.Fecha.Value.Month, evento.Fecha.Value.Day,
                                          18, 0, 0, DateTimeKind.Utc);
            EndEvent = StartEvent.AddHours(2);

            var cultureInfo = new CultureInfo( "es-ES", false ).DateTimeFormat;

            Summary = TextoVan.Replace("[NOMBRE]", evento.Titulo).
                Replace("[NOMBRE_EXPOSITOR]", evento.Ponente.Nombre).
                Replace("[FECHA]", StartEvent.ToString("D", cultureInfo)).
                Replace("[URL_DISCUCION]", evento.UrlInvitacion);
        }
    }
}