public IEnumerable <SelectListItem> Organizations2()
        {
            int divId  = (TargetDivId == 0) ? SourceDivId : TargetDivId;
            var member = MemberTypeCode.Member;
            var roles  = CurrentDatabase.CurrentRoles();
            var q      = from o in CurrentDatabase.Organizations
                         where o.LimitToRole == null || roles.Contains(o.LimitToRole)
                         where o.DivOrgs.Any(di => di.DivId == divId)
                         where o.OrganizationStatusId == OrgStatusCode.Active
                         orderby o.OrganizationName
                         let sctime = o.OrgSchedules.Count() == 1 ? " " + CurrentDatabase.GetScheduleDesc(o.OrgSchedules.First().MeetingTime) : ""
                                      let cmales = o.OrganizationMembers.Count(m => m.Person.GenderId == 1 && m.MemberTypeId == member)
                                                   let cfemales = o.OrganizationMembers.Count(m => m.Person.GenderId == 2 && m.MemberTypeId == member)
                                                                  select new SelectListItem
            {
                Value = o.OrganizationId.ToString(),
                Text  = o.OrganizationName + sctime + " (" + cmales + "+" + cfemales + "=" + (cmales + cfemales) + ")"
            };
            var list = q.ToList();

            list.Insert(0, new SelectListItem {
                Value = "0", Text = "(not specified)"
            });
            return(list);
        }
Exemple #2
0
        public IEnumerable <SelectListItem> ScheduleIds()
        {
            var q = from sc in CurrentDatabase.OrgSchedules
                    group sc by new { sc.ScheduleId, sc.MeetingTime }
            into g
            orderby g.Key.ScheduleId
            where g.Key.ScheduleId != null
                select new SelectListItem
            {
                Value = g.Key.ScheduleId.Value.ToString(),
                Text  = CurrentDatabase.GetScheduleDesc(g.Key.MeetingTime)
            };
            var list = q.ToList();

            list.Insert(0, new SelectListItem
            {
                Value = "-1",
                Text  = "(None)"
            });
            list.Insert(0, new SelectListItem
            {
                Value = "0",
                Text  = "(not specified)"
            });
            return(list);
        }
        public IEnumerable <SelectListItem> Organizations()
        {
            var roles = CurrentDatabase.CurrentRoles();
            var q     = from o in CurrentDatabase.Organizations
                        where o.LimitToRole == null || roles.Contains(o.LimitToRole)
                        where o.DivOrgs.Any(di => di.DivId == SourceDivId)
                        where o.OrganizationStatusId == OrgStatusCode.Active
                        orderby o.OrganizationName
                        let sctime = o.OrgSchedules.Count() == 1 ? " " + CurrentDatabase.GetScheduleDesc(o.OrgSchedules.First().MeetingTime) : ""
                                     select new SelectListItem
            {
                Value = o.OrganizationId.ToString(),
                Text  = o.OrganizationName + sctime
            };
            var list = q.ToList();

            list.Insert(0, new SelectListItem {
                Value = "0", Text = "(not specified)"
            });
            return(list);
        }