Example #1
0
        /// <summary>
        /// Gets the data source.
        /// </summary>
        protected override void GetDataSource()
        {
            if (!this.Page.IsPostBack)
            {
                using (ResourceDataAccess resourceAccess = new ResourceDataAccess(base.CreateContext()))
                {
                    switch (BrowseBy)
                    {
                    case BrowseByCriteria.BrowseByYear:
                        if (!IsSecurityAwareControl)
                        {
                            this._yearRange = resourceAccess.GetYear(null);
                        }
                        else if (this.AuthenticatedToken != null)
                        {
                            this._yearRange = resourceAccess.GetYear(this.AuthenticatedToken);
                        }

                        break;

                    case BrowseByCriteria.BrowseByAuthors:
                        if (!IsSecurityAwareControl)
                        {
                            this._authorList = resourceAccess.GetAuthors(null).ToList();
                        }
                        else if (this.AuthenticatedToken != null)
                        {
                            this._authorList = resourceAccess.GetAuthors(this.AuthenticatedToken).ToList();
                        }
                        break;

                    case BrowseByCriteria.BrowseByResourceType:
                        this._resTypeList = resourceAccess.GetResourceTypes().ToList();
                        _resTypeList      = CoreHelper.FilterSecurityResourceTypes(_resTypeList).ToList();
                        break;

                    case BrowseByCriteria.BrowseByCategoryHierarchy:
                        PopulateRootNodeDropDown();
                        if (!string.IsNullOrEmpty(RootNodeDropDown.SelectedValue))
                        {
                            this._rootCategoryNode = resourceAccess.GetCategoryNodeWithHierarchy(
                                new Guid(RootNodeDropDown.SelectedValue));
                            if (IsSecurityAwareControl && _rootCategoryNode != null)
                            {
                                _authorizedCategoryNodeIds = GetAuthorizedCategoryNodes(AuthenticatedToken, _rootCategoryNode, resourceAccess);
                            }
                        }
                        break;
                    }
                }
            }
        }
Example #2
0
        private TableRow CreateResourceTypeRow()
        {
            TableRow  row  = new TableRow();
            TableCell cell = new TableCell();

            cell.HorizontalAlign = HorizontalAlign.Left;
            cell.Controls.Add(ResourceTypeLabel);
            row.Cells.Add(cell);
            cell = new TableCell();
            cell.HorizontalAlign = HorizontalAlign.Left;

            if (!this.DesignMode)
            {
                using (ResourceDataAccess resourceDAL = new ResourceDataAccess(CreateContext()))
                {
                    List <ResourceType> resourceInfoList = resourceDAL.GetResourceTypeList(EntityType)
                                                           .OrderBy(tuple => tuple.Name).ToList();

                    resourceInfoList = CoreHelper.FilterSecurityResourceTypes(resourceInfoList).ToList();

                    if (resourceInfoList.Count > 1)
                    {
                        ResourceType parentResourceType = resourceInfoList
                                                          .Where(tuple => tuple.Name.Equals(EntityType, StringComparison.OrdinalIgnoreCase))
                                                          .First();

                        ResourceTypeList.Items.Add(new ListItem(GlobalResource.All, parentResourceType.FullName));
                    }

                    foreach (var item in resourceInfoList)
                    {
                        ResourceTypeList.Items.Add(new ListItem(item.Name, item.FullName));
                    }
                    if (ResourceTypeList.Items.Count > 0)
                    {
                        using (ResourceDataAccess dataAccess = new ResourceDataAccess(base.CreateContext()))
                        {
                            FilterCriteriaGrid.EntityType = ResourceTypeList.SelectedValue;
                        }
                    }
                }
            }
            cell.Controls.Add(ResourceTypeList);
            row.Cells.Add(cell);
            return(row);
        }