view Agendas/trunk/src/Agendas.Web/Models/EventoModel.cs @ 133:6f1041301797

Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146. Falta solucionar problema con flujo, ver más información en el ticket de assembla. http://www.assembla.com/spaces/altnet-hispano/tickets/146-implementar-estado-descartar-y-cancelar-de-eventos
author alabra
date Sun, 10 Jul 2011 23:59:19 -0400
parents 8fa58a79656a
children a5ff4de4a1d3
line wrap: on
line source

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Web.Mvc;
using DataAnnotationsExtensions;

namespace AltNetHispano.Agendas.Web.Models
{
	public class EventoIndexModel
	{
		public IEnumerable<EventoDto> ProximosEventos { get; set; }
	}

	public class EventoNewModel
	{
		public EventoNewModel()
		{
			Tipos = EventoModelHelper.GetTiposEventos();
		}

		[Required]
		public int Tipo { get; set; }

		[Required]
		public string Titulo { get; set; }

		[Required]
		public string Ponente { get; set; }

		[Required]
		public DateTime Fecha { get; set; }

		[Url]
		public string UrlInvitacion { get; set; }

		public IEnumerable<TipoEventoModel> Tipos { get; private set; }
	}

	public class TipoEventoModel
	{
		public int TipoEvento { get; set; }
		public string TipoEventoStr { get; set; }
	}

	public class EventoEditModel
	{
		[HiddenInput(DisplayValue = false)]
		public string Id { get; set; }

		[Required]
		public string Titulo { get; set; }

		[Required]
		public string Ponente { get; set; }

		[Required]
		public DateTime? Fecha { get; set; }

		[Url]
		public string UrlInvitacion { get; set; }
	}

	public class EventoAgendarModel
	{
		[HiddenInput(DisplayValue = false)]
		public string Id { get; set; }

		[Required]
		public string Titulo { get; set; }

		[Required]
		public string Ponente { get; set; }

		[Required]
		public DateTime? Fecha { get; set; }

		[Url]
		public string UrlInvitacion { get; set; }
	}

	public class EventoDto
	{
		public string Id { get; set; }
		public string Titulo { get; set; }
		public string Estado { get; set; }
		public string Fecha { get; set; }

		public bool PuedeAgendar { get; set; }
		public bool PuedeModificar { get; set; }
		public bool PuedeConfirmar { get; set; }
		public bool PuedePublicar { get; set; }
        public bool PuedeCancelar { get; set; }
        public bool PuedeDescartar { get; set; }
        public bool PuedeReAgendar { get; set; }
        public bool PuedeReProponer { get; set; }
	}
}