Example #1
0
        public GetWidgetsResponse Get(GetWidgetsRequest request)
        {
            request.Data.SetDefaultOrder("Name");

            var query = repository
                        .AsQueryable <Module.Root.Models.Widget>()
                        .Where(widget => widget.Original == null);

            if (!request.Data.IncludeUnpublished)
            {
                query = query.Where(widget => widget.Status == ContentStatus.Published);
            }

            query.ApplyCategoriesFilter(categoryService, request.Data);

            var listResponse = query
                               .Select(widget => new WidgetModel
            {
                Id             = widget.Id,
                Version        = widget.Version,
                CreatedBy      = widget.CreatedByUser,
                CreatedOn      = widget.CreatedOn,
                LastModifiedBy = widget.ModifiedByUser,
                LastModifiedOn = widget.ModifiedOn,

                Name               = widget.Name,
                IsPublished        = widget.Status == ContentStatus.Published,
                PublishedOn        = widget.PublishedOn,
                PublishedByUser    = widget.PublishedByUser,
                OriginalWidgetType = widget.GetType()
            }).ToDataListResponse(request);

            // Set content types
            listResponse.Items.ToList().ForEach(
                item =>
            {
                item.WidgetType = item.OriginalWidgetType.ToContentTypeString();

                item.Categories = (from pagePr in repository.AsQueryable <Module.Root.Models.Widget>()
                                   from category in pagePr.Categories
                                   where pagePr.Id == item.Id && !category.IsDeleted
                                   select new CategoryModel
                {
                    Id = category.Category.Id,
                    Version = category.Version,
                    CreatedBy = category.CreatedByUser,
                    CreatedOn = category.CreatedOn,
                    LastModifiedBy = category.ModifiedByUser,
                    LastModifiedOn = category.ModifiedOn,
                    Name = category.Category.Name
                }).ToList();
            });

            return(new GetWidgetsResponse
            {
                Data = listResponse
            });
        }
Example #2
0
        public GetWidgetsResponse Get(GetWidgetsRequest request)
        {
            request.Data.SetDefaultOrder("Name");

            var query = repository
                .AsQueryable<Module.Root.Models.Widget>()
                .Where(widget => widget.Original == null);

            if (!request.Data.IncludeUnpublished)
            {
                query = query.Where(widget => widget.Status == ContentStatus.Published);
            }

            query.ApplyCategoriesFilter(categoryService, request.Data);

            var listResponse = query
                 .Select(widget => new WidgetModel
                 {
                     Id = widget.Id,
                     Version = widget.Version,
                     CreatedBy = widget.CreatedByUser,
                     CreatedOn = widget.CreatedOn,
                     LastModifiedBy = widget.ModifiedByUser,
                     LastModifiedOn = widget.ModifiedOn,

                     Name = widget.Name,
                     IsPublished = widget.Status == ContentStatus.Published,
                     PublishedOn = widget.PublishedOn,
                     PublishedByUser = widget.PublishedByUser,
                     OriginalWidgetType = widget.GetType()
                 }).ToDataListResponse(request);

            // Set content types
            listResponse.Items.ToList().ForEach(
                item =>
                {
                    item.WidgetType = item.OriginalWidgetType.ToContentTypeString();

                    item.Categories = (from pagePr in repository.AsQueryable<Module.Root.Models.Widget>()
                                       from category in pagePr.Categories
                                       where pagePr.Id == item.Id && !category.IsDeleted
                                       select new CategoryModel
                                       {
                                           Id = category.Category.Id,
                                           Version = category.Version,
                                           CreatedBy = category.CreatedByUser,
                                           CreatedOn = category.CreatedOn,
                                           LastModifiedBy = category.ModifiedByUser,
                                           LastModifiedOn = category.ModifiedOn,
                                           Name = category.Category.Name
                                       }).ToList();
                });

            return new GetWidgetsResponse
                       {
                           Data = listResponse
                       };
        }
 /// <summary>
 /// Gets the widgets.
 /// </summary>
 /// <param name="request">The request.</param>
 /// <returns>
 /// Widget list.
 /// </returns>
 /// <exception cref="CmsApiException">Failed to get widgets.</exception>
 public DataListResponse <Widget> GetWidgets(GetWidgetsRequest request = null)
 {
     try
     {
         return(Repository.ToDataListResponse(request));
     }
     catch (Exception inner)
     {
         var message = string.Format("Failed to get widgets.");
         Logger.Error(message, inner);
         throw new CmsApiException(message, inner);
     }
 }
        public GetWidgetsResponse Get(GetWidgetsRequest request)
        {
            request.Data.SetDefaultOrder("Name");

            var query = repository
                .AsQueryable<Module.Root.Models.Widget>()
                .Where(widget => widget.Original == null);

            if (!request.Data.IncludeUnpublished)
            {
                query = query.Where(widget => widget.Status == ContentStatus.Published);
            }

            var listResponse = query
                 .Select(widget => new WidgetModel
                 {
                     Id = widget.Id,
                     Version = widget.Version,
                     CreatedBy = widget.CreatedByUser,
                     CreatedOn = widget.CreatedOn,
                     LastModifiedBy = widget.ModifiedByUser,
                     LastModifiedOn = widget.ModifiedOn,

                     Name = widget.Name,
                     IsPublished = widget.Status == ContentStatus.Published,
                     PublishedOn = widget.PublishedOn,
                     PublishedByUser = widget.PublishedByUser,
                     CategoryId = widget.Category != null && !widget.Category.IsDeleted ? widget.Category.Id : (Guid?)null,
                     CategoryName = widget.Category != null && !widget.Category.IsDeleted ?  widget.Category.Name : null,
                     OriginalWidgetType = widget.GetType()
                 }).ToDataListResponse(request);

            // Set content types
            listResponse.Items.ToList().ForEach(item => item.WidgetType = item.OriginalWidgetType.ToContentTypeString());

            return new GetWidgetsResponse
                       {
                           Data = listResponse
                       };
        }
Example #5
0
        public GetWidgetsResponse Get(GetWidgetsRequest request)
        {
            request.Data.SetDefaultOrder("Name");

            var query = repository
                        .AsQueryable <Module.Root.Models.Widget>()
                        .Where(widget => widget.Original == null);

            if (!request.Data.IncludeUnpublished)
            {
                query = query.Where(widget => widget.Status == ContentStatus.Published);
            }

            var listResponse = query
                               .Select(widget => new WidgetModel
            {
                Id             = widget.Id,
                Version        = widget.Version,
                CreatedBy      = widget.CreatedByUser,
                CreatedOn      = widget.CreatedOn,
                LastModifiedBy = widget.ModifiedByUser,
                LastModifiedOn = widget.ModifiedOn,

                Name               = widget.Name,
                IsPublished        = widget.Status == ContentStatus.Published,
                PublishedOn        = widget.PublishedOn,
                PublishedByUser    = widget.PublishedByUser,
                CategoryId         = widget.Category != null && !widget.Category.IsDeleted ? widget.Category.Id : (Guid?)null,
                CategoryName       = widget.Category != null && !widget.Category.IsDeleted ?  widget.Category.Name : null,
                OriginalWidgetType = widget.GetType()
            }).ToDataListResponse(request);

            // Set content types
            listResponse.Items.ToList().ForEach(item => item.WidgetType = item.OriginalWidgetType.ToContentTypeString());

            return(new GetWidgetsResponse
            {
                Data = listResponse
            });
        }
 /// <summary>
 /// Gets the widgets.
 /// </summary>
 /// <param name="request">The request.</param>
 /// <returns>
 /// Widget list.
 /// </returns>
 /// <exception cref="CmsApiException">Failed to get widgets.</exception>
 public DataListResponse<Widget> GetWidgets(GetWidgetsRequest request = null)
 {
     try
     {
         return Repository.ToDataListResponse(request);
     }
     catch (Exception inner)
     {
         var message = string.Format("Failed to get widgets.");
         Logger.Error(message, inner);
         throw new CmsApiException(message, inner);
     }
 }