# HG changeset patch # User Nelo@Guinea.neluz.int # Date 1312494318 10800 # Node ID f17252543cbf4fff1f8b2b24d246a202d10e00dc # Parent 6e554de521aaf7160694908fc9e58a925609996f Agregando la url del blog a los datos de la persona diff -r 6e554de521aa -r f17252543cbf Agendas/trunk/src/Agendas.Domain/Persona.cs --- a/Agendas/trunk/src/Agendas.Domain/Persona.cs Thu Aug 04 18:44:57 2011 -0300 +++ b/Agendas/trunk/src/Agendas.Domain/Persona.cs Thu Aug 04 18:45:18 2011 -0300 @@ -31,7 +31,7 @@ public virtual string Twitter { get; set; } - public virtual string Blog { get; private set; } + public virtual string Blog { get; set; } public virtual IEnumerable Cuentas { diff -r 6e554de521aa -r f17252543cbf Agendas/trunk/src/Agendas.Domain/Services/PersonaService.cs --- a/Agendas/trunk/src/Agendas.Domain/Services/PersonaService.cs Thu Aug 04 18:44:57 2011 -0300 +++ b/Agendas/trunk/src/Agendas.Domain/Services/PersonaService.cs Thu Aug 04 18:45:18 2011 -0300 @@ -63,15 +63,15 @@ return _personaRepository.Get(id); } - public Resultado Add(string nombre, string twitter, string mail) + public Resultado Add(string nombre, string twitter, string mail, string blog) { - var persona = new Persona(nombre) {Twitter = twitter, Mail = mail}; + var persona = new Persona(nombre) {Twitter = twitter, Mail = mail, Blog = blog}; _personaRepository.Save(persona); return new Resultado(true); } - public Resultado Update(Guid id, string nombre, string twitter, string mail) + public Resultado Update(Guid id, string nombre, string twitter, string mail, string blog) { var persona = _personaRepository.Get(id); if (persona == null) @@ -81,6 +81,9 @@ persona.Nombre = nombre; persona.Twitter = twitter; persona.Mail = mail; + persona.Blog = blog; + + //TODO: ¿que hacemos con la cuenta de twitter asociada? return new Resultado(true); } diff -r 6e554de521aa -r f17252543cbf Agendas/trunk/src/Agendas.Tests/PersonaServiceTests.cs --- a/Agendas/trunk/src/Agendas.Tests/PersonaServiceTests.cs Thu Aug 04 18:44:57 2011 -0300 +++ b/Agendas/trunk/src/Agendas.Tests/PersonaServiceTests.cs Thu Aug 04 18:45:18 2011 -0300 @@ -66,7 +66,7 @@ var personaRepository = DefaultPersonaRepository; var personaService = new PersonaService(personaRepository); - var r = personaService.Add("Mariano Pauselli", "marianopauselli", string.Empty); + var r = personaService.Add("Mariano Pauselli", "marianopauselli", string.Empty, string.Empty); Assert.IsTrue(r.Succeful); var todas = personaService.GetAll(); @@ -81,7 +81,7 @@ Assert.AreEqual(p1, p2); Assert.AreSame(p1, p2); - personaService.Update(personaId, p1.Nombre, p1.Twitter, "marianopauselli@gmail.com"); + personaService.Update(personaId, p1.Nombre, p1.Twitter, "marianopauselli@gmail.com", string.Empty); var p3 = personaService.GetById(personaId); Assert.IsNotNull(p3); diff -r 6e554de521aa -r f17252543cbf Agendas/trunk/src/Agendas.Web/Controllers/PersonaController.cs --- a/Agendas/trunk/src/Agendas.Web/Controllers/PersonaController.cs Thu Aug 04 18:44:57 2011 -0300 +++ b/Agendas/trunk/src/Agendas.Web/Controllers/PersonaController.cs Thu Aug 04 18:45:18 2011 -0300 @@ -29,14 +29,13 @@ if (ModelState.IsValid) { var personas = AgendaFactory.GetPersonaService(); - var r = personas.Add(model.Nombre, model.Twitter, model.EMail); + var r = personas.Add(model.Nombre, model.Twitter, model.EMail,model.Blog); if (r.Succeful) { this.AddNotification("Los datos fueron guardados"); return RedirectToAction("Index"); } - else - this.AddError(r.Message); + this.AddError(r.Message); } return View("Defaulteditor", model); @@ -53,8 +52,14 @@ return RedirectToAction("Index"); } - var model = new PersonaEditModel - {Id = persona.Id.ToString(), Nombre = persona.Nombre, Twitter = persona.Twitter, EMail = persona.Mail}; + var model = new PersonaEditModel + { + Id = persona.Id.ToString(), + Nombre = persona.Nombre, + Twitter = persona.Twitter, + EMail = persona.Mail, + Blog = persona.Blog + }; return View("Defaulteditor", model); } @@ -65,14 +70,13 @@ if (ModelState.IsValid) { var personas = AgendaFactory.GetPersonaService(); - var r = personas.Update(new Guid(model.Id), model.Nombre, model.Twitter, model.EMail); + var r = personas.Update(new Guid(model.Id), model.Nombre, model.Twitter, model.EMail, model.Blog); if (r.Succeful) { this.AddNotification("Los datos fueron guardados"); return RedirectToAction("Index"); } - else - this.AddError(r.Message); + this.AddError(r.Message); } return View("Defaulteditor", model); diff -r 6e554de521aa -r f17252543cbf Agendas/trunk/src/Agendas.Web/Models/PersonaModel.cs --- a/Agendas/trunk/src/Agendas.Web/Models/PersonaModel.cs Thu Aug 04 18:44:57 2011 -0300 +++ b/Agendas/trunk/src/Agendas.Web/Models/PersonaModel.cs Thu Aug 04 18:45:18 2011 -0300 @@ -19,6 +19,9 @@ [Required] public string EMail { get; set; } + + [DataType(DataType.Url)] + public string Blog { get; set; } } public class PersonaEditModel @@ -35,6 +38,9 @@ [Required] public string EMail { get; set; } + + [DataType(DataType.Url)] + public string Blog { get; set; } } public class PersonaDto