annotate Agendas/trunk/src/Agendas.Web/DataProviders.cs @ 244:31fb96912d37

Ticket 162: Publicaciones con Nro Orden repetido.
author juanjose.montesdeocaarbos
date Thu, 06 Oct 2011 09:09:37 -0300
parents b43dc14886e3
children da9c295e9fa1
rev   line source
145
e6e6bfb1da9e En la edición de un evento (nuevo, propuesta, modificación), el ponente se selecciona desde un combo.
Nelo@Guinea.neluz.int
parents: 141
diff changeset
1 using System;
e6e6bfb1da9e En la edición de un evento (nuevo, propuesta, modificación), el ponente se selecciona desde un combo.
Nelo@Guinea.neluz.int
parents: 141
diff changeset
2 using System.Collections.Generic;
141
a5ff4de4a1d3 EditorForModel en Nuevo Evento y Proponer
Nelo@Guinea.neluz.int
parents:
diff changeset
3 using System.Linq;
a5ff4de4a1d3 EditorForModel en Nuevo Evento y Proponer
Nelo@Guinea.neluz.int
parents:
diff changeset
4 using System.Web.Mvc;
180
222362c29416 UI para asignación de roles
nelopauselli
parents: 158
diff changeset
5 using AltNetHispano.Agendas.Domain;
145
e6e6bfb1da9e En la edición de un evento (nuevo, propuesta, modificación), el ponente se selecciona desde un combo.
Nelo@Guinea.neluz.int
parents: 141
diff changeset
6 using AltNetHispano.Agendas.Factories;
141
a5ff4de4a1d3 EditorForModel en Nuevo Evento y Proponer
Nelo@Guinea.neluz.int
parents:
diff changeset
7 using AltNetHispano.Agendas.Web.Models;
a5ff4de4a1d3 EditorForModel en Nuevo Evento y Proponer
Nelo@Guinea.neluz.int
parents:
diff changeset
8
a5ff4de4a1d3 EditorForModel en Nuevo Evento y Proponer
Nelo@Guinea.neluz.int
parents:
diff changeset
9 namespace AltNetHispano.Agendas.Web
a5ff4de4a1d3 EditorForModel en Nuevo Evento y Proponer
Nelo@Guinea.neluz.int
parents:
diff changeset
10 {
a5ff4de4a1d3 EditorForModel en Nuevo Evento y Proponer
Nelo@Guinea.neluz.int
parents:
diff changeset
11 public static class DataProviders
a5ff4de4a1d3 EditorForModel en Nuevo Evento y Proponer
Nelo@Guinea.neluz.int
parents:
diff changeset
12 {
a5ff4de4a1d3 EditorForModel en Nuevo Evento y Proponer
Nelo@Guinea.neluz.int
parents:
diff changeset
13 public static IEnumerable<SelectListItem> GetTiposEvento(this HtmlHelper helper)
a5ff4de4a1d3 EditorForModel en Nuevo Evento y Proponer
Nelo@Guinea.neluz.int
parents:
diff changeset
14 {
a5ff4de4a1d3 EditorForModel en Nuevo Evento y Proponer
Nelo@Guinea.neluz.int
parents:
diff changeset
15 return from t in EventoModelHelper.GetTiposEventos()
a5ff4de4a1d3 EditorForModel en Nuevo Evento y Proponer
Nelo@Guinea.neluz.int
parents:
diff changeset
16 select new SelectListItem {Text = t.TipoEventoStr, Value = t.TipoEvento.ToString()};
a5ff4de4a1d3 EditorForModel en Nuevo Evento y Proponer
Nelo@Guinea.neluz.int
parents:
diff changeset
17 }
145
e6e6bfb1da9e En la edición de un evento (nuevo, propuesta, modificación), el ponente se selecciona desde un combo.
Nelo@Guinea.neluz.int
parents: 141
diff changeset
18
238
b43dc14886e3 Quitando ponente principal de la UI
nelopauselli
parents: 231
diff changeset
19 public static IEnumerable<SelectListItem> GetPonentes(this HtmlHelper helper, IEnumerable<Guid> ids)
225
f23ee59ef1bd Otros ponentes
nelopauselli
parents: 180
diff changeset
20 {
f23ee59ef1bd Otros ponentes
nelopauselli
parents: 180
diff changeset
21 var personas = AgendaFactory.GetPersonaService();
f23ee59ef1bd Otros ponentes
nelopauselli
parents: 180
diff changeset
22 if (ids == null || !ids.Any()) return new SelectListItem[] {};
f23ee59ef1bd Otros ponentes
nelopauselli
parents: 180
diff changeset
23
f23ee59ef1bd Otros ponentes
nelopauselli
parents: 180
diff changeset
24 return from p in from id in ids
f23ee59ef1bd Otros ponentes
nelopauselli
parents: 180
diff changeset
25 select personas.GetById(id)
f23ee59ef1bd Otros ponentes
nelopauselli
parents: 180
diff changeset
26 select new SelectListItem { Text = p.Nombre, Value = p.Id.ToString() };
f23ee59ef1bd Otros ponentes
nelopauselli
parents: 180
diff changeset
27 }
f23ee59ef1bd Otros ponentes
nelopauselli
parents: 180
diff changeset
28
f23ee59ef1bd Otros ponentes
nelopauselli
parents: 180
diff changeset
29
238
b43dc14886e3 Quitando ponente principal de la UI
nelopauselli
parents: 231
diff changeset
30 public static IEnumerable<SelectListItem> GetPonentesExcepto(this HtmlHelper helper, IEnumerable<Guid> ids)
225
f23ee59ef1bd Otros ponentes
nelopauselli
parents: 180
diff changeset
31 {
f23ee59ef1bd Otros ponentes
nelopauselli
parents: 180
diff changeset
32 var personas = AgendaFactory.GetPersonaService();
f23ee59ef1bd Otros ponentes
nelopauselli
parents: 180
diff changeset
33
f23ee59ef1bd Otros ponentes
nelopauselli
parents: 180
diff changeset
34 if (ids==null) ids = new List<Guid>();
f23ee59ef1bd Otros ponentes
nelopauselli
parents: 180
diff changeset
35
f23ee59ef1bd Otros ponentes
nelopauselli
parents: 180
diff changeset
36 return from p in personas.GetAll() where !ids.Contains(p.Id)
f23ee59ef1bd Otros ponentes
nelopauselli
parents: 180
diff changeset
37 select new SelectListItem { Text = p.Nombre, Value = p.Id.ToString() };
f23ee59ef1bd Otros ponentes
nelopauselli
parents: 180
diff changeset
38 }
f23ee59ef1bd Otros ponentes
nelopauselli
parents: 180
diff changeset
39
180
222362c29416 UI para asignación de roles
nelopauselli
parents: 158
diff changeset
40 public static IEnumerable<string> GetRoles(this HtmlHelper helper)
222362c29416 UI para asignación de roles
nelopauselli
parents: 158
diff changeset
41 {
222362c29416 UI para asignación de roles
nelopauselli
parents: 158
diff changeset
42 return new[] {Roles.Administrador, Roles.Usuario};
222362c29416 UI para asignación de roles
nelopauselli
parents: 158
diff changeset
43 }
222362c29416 UI para asignación de roles
nelopauselli
parents: 158
diff changeset
44 }
158
734d3f0853bf Manejando configuración de los publicadores con una sección propia en los .config
nelopauselli
parents: 145
diff changeset
45 }