view Agendas/trunk/src/Agendas.Web/Controllers/PersonaApiController.cs @ 279:1e889a2e45c5

#125: ABM de patrocinadores.
author juanjose.montesdeocaarbos
date Thu, 22 Dec 2011 10:04:08 -0300
parents b9850b647a4e
children
line wrap: on
line source

using System;
using System.Web.Mvc;
using AltNetHispano.Agendas.Domain;
using AltNetHispano.Agendas.Factories;
using AltNetHispano.Agendas.Web.Models;

namespace AltNetHispano.Agendas.Web.Controllers
{
	public class PersonaApiController : Controller
	{
		[CustomAuthorize(Roles = Roles.Administrador)]
		public PartialViewResult Nueva()
		{
			var model = new PersonaNewModel();
			return PartialView(model);
		}

		[HttpPost]
		[CustomAuthorize(Roles = Roles.Administrador)]
		public JsonResult Nueva(PersonaNewModel model)
		{
			if (ModelState.IsValid)
			{
				var personas = AgendaFactory.GetPersonaService();
				var r = personas.Add(model.Nombre, model.Twitter, model.EMail, model.Blog, model.Roles);
				return Json(r);
			}

			return Json(new Resultado(false, string.Join(",", ModelState.Values)));
		}
	}
}